require('./sourcemap-register.js');module.exports =
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ 94822:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __importStar(__webpack_require__(42186));
const model_1 = __webpack_require__(41359);
function run() {
    return __awaiter(this, void 0, void 0, function* () {
        try {
            model_1.Action.checkCompatibility();
            model_1.Cache.verify();
            const { dockerfile, workspace, actionFolder } = model_1.Action;
            const buildParameters = yield model_1.BuildParameters.create();
            const baseImage = new model_1.ImageTag(buildParameters);
            let builtImage;
            switch (buildParameters.remoteBuildCluster) {
                case 'k8s':
                    core.info('Building with Kubernetes');
                    yield model_1.Kubernetes.runBuildJob(buildParameters, baseImage);
                    break;
                case 'aws':
                    core.info('Building with AWS');
                    yield model_1.AWS.runBuildJob(buildParameters, baseImage);
                    break;
                // default and local case
                default:
                    core.info('Building locally');
                    builtImage = yield model_1.Docker.build({ path: actionFolder, dockerfile, baseImage });
                    yield model_1.Docker.run(builtImage, Object.assign({ workspace }, buildParameters));
                    break;
            }
            // Set output
            yield model_1.Output.setBuildVersion(buildParameters.buildVersion);
        }
        catch (error) {
            core.setFailed(error.message);
        }
    });
}
run();


/***/ }),

/***/ 89088:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const path_1 = __importDefault(__webpack_require__(85622));
class Action {
    static get supportedPlatforms() {
        return ['linux'];
    }
    static get isRunningLocally() {
        return process.env.RUNNER_WORKSPACE === undefined;
    }
    static get isRunningFromSource() {
        return path_1.default.basename(__dirname) === 'model';
    }
    static get canonicalName() {
        return 'unity-builder';
    }
    static get rootFolder() {
        if (Action.isRunningFromSource) {
            return path_1.default.dirname(path_1.default.dirname(path_1.default.dirname(__filename)));
        }
        return path_1.default.dirname(path_1.default.dirname(__filename));
    }
    static get actionFolder() {
        return `${Action.rootFolder}/dist`;
    }
    static get dockerfile() {
        return `${Action.actionFolder}/Dockerfile`;
    }
    static get workspace() {
        return process.env.GITHUB_WORKSPACE;
    }
    static checkCompatibility() {
        const currentPlatform = process.platform;
        if (!Action.supportedPlatforms.includes(currentPlatform)) {
            throw new Error(`Currently ${currentPlatform}-platform is not supported`);
        }
    }
}
exports.default = Action;


/***/ }),

/***/ 43059:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __importStar(__webpack_require__(42186));
const semver = __importStar(__webpack_require__(11383));
class AndroidVersioning {
    static determineVersionCode(version, inputVersionCode) {
        if (!inputVersionCode) {
            return AndroidVersioning.versionToVersionCode(version);
        }
        return inputVersionCode;
    }
    static versionToVersionCode(version) {
        const parsedVersion = semver.parse(version);
        if (!parsedVersion) {
            core.warning(`Could not parse "${version}" to semver, defaulting android version code to 1`);
            return 1;
        }
        // The greatest value Google Plays allows is 2100000000.
        // Allow for 3 patch digits, 3 minor digits and 3 major digits.
        const versionCode = parsedVersion.major * 1000000 + parsedVersion.minor * 1000 + parsedVersion.patch;
        if (versionCode >= 1000000000) {
            throw new Error(`Generated versionCode ${versionCode} is dangerously close to the maximum allowed number 2100000000. Consider a different versioning scheme to be able to continue updating your application.`);
        }
        core.info(`Using android versionCode ${versionCode}`);
        return versionCode;
    }
}
exports.default = AndroidVersioning;


/***/ }),

/***/ 80787:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const android_versioning_1 = __importDefault(__webpack_require__(43059));
const input_1 = __importDefault(__webpack_require__(91933));
const platform_1 = __importDefault(__webpack_require__(9707));
const unity_versioning_1 = __importDefault(__webpack_require__(17146));
const versioning_1 = __importDefault(__webpack_require__(88729));
class BuildParameters {
    static create() {
        return __awaiter(this, void 0, void 0, function* () {
            const buildFile = this.parseBuildFile(input_1.default.buildName, input_1.default.targetPlatform, input_1.default.androidAppBundle);
            const unityVersion = unity_versioning_1.default.determineUnityVersion(input_1.default.projectPath, input_1.default.unityVersion);
            const buildVersion = yield versioning_1.default.determineVersion(input_1.default.versioningStrategy, input_1.default.specifiedVersion);
            const androidVersionCode = android_versioning_1.default.determineVersionCode(buildVersion, input_1.default.androidVersionCode);
            return {
                version: unityVersion,
                customImage: input_1.default.customImage,
                runnerTempPath: process.env.RUNNER_TEMP,
                platform: input_1.default.targetPlatform,
                projectPath: input_1.default.projectPath,
                buildName: input_1.default.buildName,
                buildPath: `${input_1.default.buildsPath}/${input_1.default.targetPlatform}`,
                buildFile,
                buildMethod: input_1.default.buildMethod,
                buildVersion,
                androidVersionCode,
                androidKeystoreName: input_1.default.androidKeystoreName,
                androidKeystoreBase64: input_1.default.androidKeystoreBase64,
                androidKeystorePass: input_1.default.androidKeystorePass,
                androidKeyaliasName: input_1.default.androidKeyaliasName,
                androidKeyaliasPass: input_1.default.androidKeyaliasPass,
                customParameters: input_1.default.customParameters,
                remoteBuildCluster: input_1.default.remoteBuildCluster,
                awsStackName: input_1.default.awsStackName,
                kubeConfig: input_1.default.kubeConfig,
                githubToken: input_1.default.githubToken,
                remoteBuildMemory: input_1.default.remoteBuildMemory,
                remoteBuildCpu: input_1.default.remoteBuildCpu,
                kubeVolumeSize: input_1.default.kubeVolumeSize,
                kubeVolume: input_1.default.kubeVolume,
            };
        });
    }
    static parseBuildFile(filename, platform, androidAppBundle) {
        if (platform_1.default.isWindows(platform)) {
            return `${filename}.exe`;
        }
        if (platform_1.default.isAndroid(platform)) {
            return androidAppBundle ? `${filename}.aab` : `${filename}.apk`;
        }
        return filename;
    }
}
exports.default = BuildParameters;


/***/ }),

/***/ 97134:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __importStar(__webpack_require__(42186));
const fs_1 = __importDefault(__webpack_require__(35747));
const action_1 = __importDefault(__webpack_require__(89088));
const project_1 = __importDefault(__webpack_require__(88666));
class Cache {
    static verify() {
        if (!fs_1.default.existsSync(project_1.default.libraryFolder)) {
            this.notifyAboutCachingPossibility();
        }
    }
    static notifyAboutCachingPossibility() {
        if (action_1.default.isRunningLocally) {
            return;
        }
        core.warning(`
      Library folder does not exist.
      Consider setting up caching to speed up your workflow,
      if this is not your first build.
    `);
    }
}
exports.default = Cache;


/***/ }),

/***/ 16934:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const exec_1 = __webpack_require__(71514);
const image_tag_1 = __importDefault(__webpack_require__(57648));
class Docker {
    static build(buildParameters, silent = false) {
        return __awaiter(this, void 0, void 0, function* () {
            const { path, dockerfile, baseImage } = buildParameters;
            const { version, platform } = baseImage;
            const tag = new image_tag_1.default({ repository: '', name: 'unity-builder', version, platform });
            const command = `docker build ${path} \
      --file ${dockerfile} \
      --build-arg IMAGE=${baseImage} \
      --tag ${tag}`;
            yield exec_1.exec(command, undefined, { silent });
            return tag;
        });
    }
    static run(image, parameters, silent = false) {
        return __awaiter(this, void 0, void 0, function* () {
            const { version, workspace, runnerTempPath, platform, projectPath, buildName, buildPath, buildFile, buildMethod, buildVersion, androidVersionCode, androidKeystoreName, androidKeystoreBase64, androidKeystorePass, androidKeyaliasName, androidKeyaliasPass, customParameters, } = parameters;
            const command = `docker run \
        --workdir /github/workspace \
        --rm \
        --env UNITY_LICENSE \
        --env UNITY_LICENSE_FILE \
        --env UNITY_EMAIL \
        --env UNITY_PASSWORD \
        --env UNITY_SERIAL \
        --env UNITY_VERSION="${version}" \
        --env USYM_UPLOAD_AUTH_TOKEN \
        --env PROJECT_PATH="${projectPath}" \
        --env BUILD_TARGET="${platform}" \
        --env BUILD_NAME="${buildName}" \
        --env BUILD_PATH="${buildPath}" \
        --env BUILD_FILE="${buildFile}" \
        --env BUILD_METHOD="${buildMethod}" \
        --env VERSION="${buildVersion}" \
        --env ANDROID_VERSION_CODE="${androidVersionCode}" \
        --env ANDROID_KEYSTORE_NAME="${androidKeystoreName}" \
        --env ANDROID_KEYSTORE_BASE64="${androidKeystoreBase64}" \
        --env ANDROID_KEYSTORE_PASS="${androidKeystorePass}" \
        --env ANDROID_KEYALIAS_NAME="${androidKeyaliasName}" \
        --env ANDROID_KEYALIAS_PASS="${androidKeyaliasPass}" \
        --env CUSTOM_PARAMETERS="${customParameters}" \
        --env GITHUB_REF \
        --env GITHUB_SHA \
        --env GITHUB_REPOSITORY \
        --env GITHUB_ACTOR \
        --env GITHUB_WORKFLOW \
        --env GITHUB_HEAD_REF \
        --env GITHUB_BASE_REF \
        --env GITHUB_EVENT_NAME \
        --env GITHUB_WORKSPACE=/github/workspace \
        --env GITHUB_ACTION \
        --env GITHUB_EVENT_PATH \
        --env RUNNER_OS \
        --env RUNNER_TOOL_CACHE \
        --env RUNNER_TEMP \
        --env RUNNER_WORKSPACE \
        --volume "/var/run/docker.sock":"/var/run/docker.sock" \
        --volume "${runnerTempPath}/_github_home":"/root" \
        --volume "${runnerTempPath}/_github_workflow":"/github/workflow" \
        --volume "${workspace}":"/github/workspace" \
        ${image}`;
            yield exec_1.exec(command, undefined, { silent });
        });
    }
}
exports.default = Docker;


/***/ }),

/***/ 26574:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
class NotImplementedException extends Error {
    constructor(message = '') {
        super(message);
        this.name = 'NotImplementedException';
    }
}
exports.default = NotImplementedException;


/***/ }),

/***/ 97266:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
class ValidationError extends Error {
    constructor(message = '') {
        super(message);
        this.name = 'ValidationError';
    }
}
exports.default = ValidationError;


/***/ }),

/***/ 57648:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const platform_1 = __importDefault(__webpack_require__(9707));
class ImageTag {
    constructor(imageProperties) {
        const { repository = 'unityci', name = 'editor', version = '2019.2.11f1', platform, customImage } = imageProperties;
        if (!ImageTag.versionPattern.test(version)) {
            throw new Error(`Invalid version "${version}".`);
        }
        const builderPlatform = ImageTag.getTargetPlatformToImageSuffixMap(platform, version);
        this.repository = repository;
        this.name = name;
        this.version = version;
        this.platform = platform;
        this.builderPlatform = builderPlatform;
        this.customImage = customImage;
    }
    static get versionPattern() {
        return /^20\d{2}\.\d\.\w{3,4}|3$/;
    }
    static get imageSuffixes() {
        return {
            generic: '',
            webgl: 'webgl',
            mac: 'mac-mono',
            windows: 'windows-mono',
            linux: 'base',
            linuxIl2cpp: 'linux-il2cpp',
            android: 'android',
            ios: 'ios',
            facebook: 'facebook',
        };
    }
    static getTargetPlatformToImageSuffixMap(platform, version) {
        const { generic, webgl, mac, windows, linux, linuxIl2cpp, android, ios, facebook } = ImageTag.imageSuffixes;
        const [major, minor] = version.split('.').map((digit) => Number(digit));
        // @see: https://docs.unity3d.com/ScriptReference/BuildTarget.html
        switch (platform) {
            case platform_1.default.types.StandaloneOSX:
                return mac;
            case platform_1.default.types.StandaloneWindows:
                return windows;
            case platform_1.default.types.StandaloneWindows64:
                return windows;
            case platform_1.default.types.StandaloneLinux64: {
                // Unity versions before 2019.3 do not support il2cpp
                if (major >= 2020 || (major === 2019 && minor >= 3)) {
                    return linuxIl2cpp;
                }
                return linux;
            }
            case platform_1.default.types.iOS:
                return ios;
            case platform_1.default.types.Android:
                return android;
            case platform_1.default.types.WebGL:
                return webgl;
            case platform_1.default.types.WSAPlayer:
                return windows;
            case platform_1.default.types.PS4:
                return windows;
            case platform_1.default.types.XboxOne:
                return windows;
            case platform_1.default.types.tvOS:
                return windows;
            case platform_1.default.types.Switch:
                return windows;
            // Unsupported
            case platform_1.default.types.Lumin:
                return windows;
            case platform_1.default.types.BJM:
                return windows;
            case platform_1.default.types.Stadia:
                return windows;
            case platform_1.default.types.Facebook:
                return facebook;
            case platform_1.default.types.NoTarget:
                return generic;
            // Test specific
            case platform_1.default.types.Test:
                return generic;
            default:
                throw new Error(`
          Platform must be one of the ones described in the documentation.
          "${platform}" is currently not supported.`);
        }
    }
    get tag() {
        return `${this.version}-${this.builderPlatform}`.replace(/-+$/, '');
    }
    get image() {
        return `${this.repository}/${this.name}`.replace(/^\/+/, '');
    }
    toString() {
        const { image, tag, customImage } = this;
        if (customImage && customImage !== '') {
            return customImage;
        }
        return `${image}:${tag}-0`; // '0' here represents the docker repo version
    }
}
exports.default = ImageTag;


/***/ }),

/***/ 41359:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.AWS = exports.Kubernetes = exports.Versioning = exports.Unity = exports.Project = exports.Platform = exports.Output = exports.ImageTag = exports.Input = exports.Docker = exports.Cache = exports.BuildParameters = exports.Action = void 0;
const action_1 = __importDefault(__webpack_require__(89088));
exports.Action = action_1.default;
const build_parameters_1 = __importDefault(__webpack_require__(80787));
exports.BuildParameters = build_parameters_1.default;
const cache_1 = __importDefault(__webpack_require__(97134));
exports.Cache = cache_1.default;
const docker_1 = __importDefault(__webpack_require__(16934));
exports.Docker = docker_1.default;
const input_1 = __importDefault(__webpack_require__(91933));
exports.Input = input_1.default;
const image_tag_1 = __importDefault(__webpack_require__(57648));
exports.ImageTag = image_tag_1.default;
const output_1 = __importDefault(__webpack_require__(85487));
exports.Output = output_1.default;
const platform_1 = __importDefault(__webpack_require__(9707));
exports.Platform = platform_1.default;
const project_1 = __importDefault(__webpack_require__(88666));
exports.Project = project_1.default;
const unity_1 = __importDefault(__webpack_require__(70498));
exports.Unity = unity_1.default;
const versioning_1 = __importDefault(__webpack_require__(88729));
exports.Versioning = versioning_1.default;
const kubernetes_1 = __importDefault(__webpack_require__(7352));
exports.Kubernetes = kubernetes_1.default;
const remote_builder_1 = __importDefault(__webpack_require__(49358));
exports.AWS = remote_builder_1.default;


/***/ }),

/***/ 91933:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const platform_1 = __importDefault(__webpack_require__(9707));
const core = __webpack_require__(42186);
/**
 * Input variables specified in workflows using "with" prop.
 *
 * Note that input is always passed as a string, even booleans.
 */
class Input {
    static get unityVersion() {
        return core.getInput('unityVersion') || 'auto';
    }
    static get customImage() {
        return core.getInput('customImage');
    }
    static get targetPlatform() {
        return core.getInput('targetPlatform') || platform_1.default.default;
    }
    static get projectPath() {
        const rawProjectPath = core.getInput('projectPath') || '.';
        return rawProjectPath.replace(/\/$/, '');
    }
    static get buildName() {
        return core.getInput('buildName') || this.targetPlatform;
    }
    static get buildsPath() {
        return core.getInput('buildsPath') || 'build';
    }
    static get buildMethod() {
        return core.getInput('buildMethod'); // processed in docker file
    }
    static get versioningStrategy() {
        return core.getInput('versioning') || 'Semantic';
    }
    static get specifiedVersion() {
        return core.getInput('version') || '';
    }
    static get androidVersionCode() {
        return core.getInput('androidVersionCode');
    }
    static get androidAppBundle() {
        const input = core.getInput('androidAppBundle') || false;
        return input === 'true';
    }
    static get androidKeystoreName() {
        return core.getInput('androidKeystoreName') || '';
    }
    static get androidKeystoreBase64() {
        return core.getInput('androidKeystoreBase64') || '';
    }
    static get androidKeystorePass() {
        return core.getInput('androidKeystorePass') || '';
    }
    static get androidKeyaliasName() {
        return core.getInput('androidKeyaliasName') || '';
    }
    static get androidKeyaliasPass() {
        return core.getInput('androidKeyaliasPass') || '';
    }
    static get allowDirtyBuild() {
        const input = core.getInput('allowDirtyBuild') || false;
        return input === 'true';
    }
    static get customParameters() {
        return core.getInput('customParameters') || '';
    }
    static get remoteBuildCluster() {
        return core.getInput('remoteBuildCluster') || '';
    }
    static get awsStackName() {
        return core.getInput('awsStackName') || '';
    }
    static get kubeConfig() {
        return core.getInput('kubeConfig') || '';
    }
    static get githubToken() {
        return core.getInput('githubToken') || '';
    }
    static get remoteBuildMemory() {
        return core.getInput('remoteBuildMemory') || '800M';
    }
    static get remoteBuildCpu() {
        return core.getInput('remoteBuildCpu') || '0.25';
    }
    static get kubeVolumeSize() {
        return core.getInput('kubeVolumeSize') || '5Gi';
    }
    static get kubeVolume() {
        return core.getInput('kubeVolume') || '';
    }
}
exports.default = Input;


/***/ }),

/***/ 7352:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
// @ts-ignore
const kubernetes_client_1 = __webpack_require__(98862);
const request_1 = __importDefault(__webpack_require__(67002));
const core = __webpack_require__(42186);
const base64 = __webpack_require__(85848);
const pollInterval = 10000;
class Kubernetes {
    static runBuildJob(buildParameters, baseImage) {
        return __awaiter(this, void 0, void 0, function* () {
            const kubeconfig = new kubernetes_client_1.KubeConfig();
            kubeconfig.loadFromString(base64.decode(buildParameters.kubeConfig));
            const backend = new request_1.default({ kubeconfig });
            const kubeClient = new kubernetes_client_1.Client(backend);
            yield kubeClient.loadSpec();
            const buildId = Kubernetes.uuidv4();
            const pvcName = `unity-builder-pvc-${buildId}`;
            const secretName = `build-credentials-${buildId}`;
            const jobName = `unity-builder-job-${buildId}`;
            const namespace = 'default';
            this.kubeClient = kubeClient;
            this.buildId = buildId;
            this.buildParameters = buildParameters;
            this.baseImage = baseImage;
            this.pvcName = pvcName;
            this.secretName = secretName;
            this.jobName = jobName;
            this.namespace = namespace;
            yield Kubernetes.createSecret();
            yield Kubernetes.createPersistentVolumeClaim();
            yield Kubernetes.scheduleBuildJob();
            yield Kubernetes.watchBuildJobUntilFinished();
            yield Kubernetes.cleanup();
            core.setOutput('volume', pvcName);
        });
    }
    static createSecret() {
        return __awaiter(this, void 0, void 0, function* () {
            const secretManifest = {
                apiVersion: 'v1',
                kind: 'Secret',
                metadata: {
                    name: this.secretName,
                },
                type: 'Opaque',
                data: {
                    GITHUB_TOKEN: base64.encode(this.buildParameters.githubToken),
                    UNITY_LICENSE: base64.encode(process.env.UNITY_LICENSE),
                    ANDROID_KEYSTORE_BASE64: base64.encode(this.buildParameters.androidKeystoreBase64),
                    ANDROID_KEYSTORE_PASS: base64.encode(this.buildParameters.androidKeystorePass),
                    ANDROID_KEYALIAS_PASS: base64.encode(this.buildParameters.androidKeyaliasPass),
                },
            };
            yield this.kubeClient.api.v1.namespaces(this.namespace).secrets.post({ body: secretManifest });
        });
    }
    static createPersistentVolumeClaim() {
        return __awaiter(this, void 0, void 0, function* () {
            if (this.buildParameters.kubeVolume) {
                core.info(this.buildParameters.kubeVolume);
                this.pvcName = this.buildParameters.kubeVolume;
                return;
            }
            const pvcManifest = {
                apiVersion: 'v1',
                kind: 'PersistentVolumeClaim',
                metadata: {
                    name: this.pvcName,
                },
                spec: {
                    accessModes: ['ReadWriteOnce'],
                    volumeMode: 'Filesystem',
                    resources: {
                        requests: {
                            storage: this.buildParameters.kubeVolumeSize,
                        },
                    },
                },
            };
            yield this.kubeClient.api.v1.namespaces(this.namespace).persistentvolumeclaims.post({ body: pvcManifest });
            core.info('Persistent Volume created, waiting for ready state...');
            yield Kubernetes.watchPersistentVolumeClaimUntilReady();
            core.info('Persistent Volume ready for claims');
        });
    }
    static watchPersistentVolumeClaimUntilReady() {
        return __awaiter(this, void 0, void 0, function* () {
            yield new Promise((resolve) => setTimeout(resolve, pollInterval));
            const queryResult = yield this.kubeClient.api.v1
                .namespaces(this.namespace)
                .persistentvolumeclaims(this.pvcName)
                .get();
            if (queryResult.body.status.phase === 'Pending') {
                yield Kubernetes.watchPersistentVolumeClaimUntilReady();
            }
        });
    }
    static scheduleBuildJob() {
        return __awaiter(this, void 0, void 0, function* () {
            core.info('Creating build job');
            const jobManifest = {
                apiVersion: 'batch/v1',
                kind: 'Job',
                metadata: {
                    name: this.jobName,
                    labels: {
                        app: 'unity-builder',
                    },
                },
                spec: {
                    template: {
                        backoffLimit: 1,
                        spec: {
                            volumes: [
                                {
                                    name: 'data',
                                    persistentVolumeClaim: {
                                        claimName: this.pvcName,
                                    },
                                },
                                {
                                    name: 'credentials',
                                    secret: {
                                        secretName: this.secretName,
                                    },
                                },
                            ],
                            initContainers: [
                                {
                                    name: 'clone',
                                    image: 'alpine/git',
                                    command: [
                                        '/bin/sh',
                                        '-c',
                                        `apk update;
                  apk add git-lfs;
                  export GITHUB_TOKEN=$(cat /credentials/GITHUB_TOKEN);
                  cd /data;
                  git clone https://github.com/${process.env.GITHUB_REPOSITORY}.git repo;
                  git clone https://github.com/webbertakken/unity-builder.git builder;
                  cd repo;
                  git checkout $GITHUB_SHA;
                  ls`,
                                    ],
                                    volumeMounts: [
                                        {
                                            name: 'data',
                                            mountPath: '/data',
                                        },
                                        {
                                            name: 'credentials',
                                            mountPath: '/credentials',
                                            readOnly: true,
                                        },
                                    ],
                                    env: [
                                        {
                                            name: 'GITHUB_SHA',
                                            value: this.buildId,
                                        },
                                    ],
                                },
                            ],
                            containers: [
                                {
                                    name: 'main',
                                    image: `${this.baseImage.toString()}`,
                                    command: [
                                        'bin/bash',
                                        '-c',
                                        `for f in ./credentials/*; do export $(basename $f)="$(cat $f)"; done
                  cp -r /data/builder/action/default-build-script /UnityBuilderAction
                  cp -r /data/builder/action/entrypoint.sh /entrypoint.sh
                  cp -r /data/builder/action/steps /steps
                  chmod -R +x /entrypoint.sh;
                  chmod -R +x /steps;
                  /entrypoint.sh;
                  `,
                                    ],
                                    resources: {
                                        requests: {
                                            memory: this.buildParameters.kubeContainerMemory,
                                            cpu: this.buildParameters.kubeContainerCPU,
                                        },
                                    },
                                    env: [
                                        {
                                            name: 'GITHUB_WORKSPACE',
                                            value: '/data/repo',
                                        },
                                        {
                                            name: 'PROJECT_PATH',
                                            value: this.buildParameters.projectPath,
                                        },
                                        {
                                            name: 'BUILD_PATH',
                                            value: this.buildParameters.buildPath,
                                        },
                                        {
                                            name: 'BUILD_FILE',
                                            value: this.buildParameters.buildFile,
                                        },
                                        {
                                            name: 'BUILD_NAME',
                                            value: this.buildParameters.buildName,
                                        },
                                        {
                                            name: 'BUILD_METHOD',
                                            value: this.buildParameters.buildMethod,
                                        },
                                        {
                                            name: 'CUSTOM_PARAMETERS',
                                            value: this.buildParameters.customParameters,
                                        },
                                        {
                                            name: 'BUILD_TARGET',
                                            value: this.buildParameters.platform,
                                        },
                                        {
                                            name: 'ANDROID_VERSION_CODE',
                                            value: this.buildParameters.androidVersionCode.toString(),
                                        },
                                        {
                                            name: 'ANDROID_KEYSTORE_NAME',
                                            value: this.buildParameters.androidKeystoreName,
                                        },
                                        {
                                            name: 'ANDROID_KEYALIAS_NAME',
                                            value: this.buildParameters.androidKeyaliasName,
                                        },
                                    ],
                                    volumeMounts: [
                                        {
                                            name: 'data',
                                            mountPath: '/data',
                                        },
                                        {
                                            name: 'credentials',
                                            mountPath: '/credentials',
                                            readOnly: true,
                                        },
                                    ],
                                    lifeCycle: {
                                        preStop: {
                                            exec: {
                                                command: [
                                                    'bin/bash',
                                                    '-c',
                                                    `cd /data/builder/action/steps;
                        chmod +x /return_license.sh;
                        /return_license.sh;`,
                                                ],
                                            },
                                        },
                                    },
                                },
                            ],
                            restartPolicy: 'Never',
                        },
                    },
                },
            };
            yield this.kubeClient.apis.batch.v1.namespaces(this.namespace).jobs.post({ body: jobManifest });
            core.info('Job created');
        });
    }
    static watchBuildJobUntilFinished() {
        return __awaiter(this, void 0, void 0, function* () {
            let podname;
            let ready = false;
            while (!ready) {
                yield new Promise((resolve) => setTimeout(resolve, pollInterval));
                const pods = yield this.kubeClient.api.v1.namespaces(this.namespace).pods.get();
                for (let index = 0; index < pods.body.items.length; index++) {
                    const element = pods.body.items[index];
                    if (element.metadata.labels['job-name'] === this.jobName && element.status.phase !== 'Pending') {
                        core.info('Pod no longer pending');
                        if (element.status.phase === 'Failure') {
                            core.error('Kubernetes job failed');
                        }
                        else {
                            ready = true;
                            podname = element.metadata.name;
                        }
                    }
                }
            }
            core.info(`Watching build job ${podname}`);
            let logQueryTime;
            let complete = false;
            while (!complete) {
                yield new Promise((resolve) => setTimeout(resolve, pollInterval));
                const podStatus = yield this.kubeClient.api.v1.namespaces(this.namespace).pod(podname).get();
                if (podStatus.body.status.phase !== 'Running') {
                    complete = true;
                }
                const logs = yield this.kubeClient.api.v1
                    .namespaces(this.namespace)
                    .pod(podname)
                    .log.get({
                    qs: {
                        sinceTime: logQueryTime,
                        timestamps: true,
                    },
                });
                if (logs.body !== undefined) {
                    const arrayOfLines = logs.body.match(/[^\n\r]+/g).reverse();
                    for (const element of arrayOfLines) {
                        const [time, ...line] = element.split(' ');
                        if (time !== logQueryTime) {
                            core.info(line.join(' '));
                        }
                        else {
                            break;
                        }
                    }
                    if (podStatus.body.status.phase === 'Failed') {
                        throw new Error('Kubernetes job failed');
                    }
                    logQueryTime = arrayOfLines[0].split(' ')[0];
                }
            }
        });
    }
    static cleanup() {
        return __awaiter(this, void 0, void 0, function* () {
            yield this.kubeClient.apis.batch.v1.namespaces(this.namespace).jobs(this.jobName).delete();
            yield this.kubeClient.api.v1.namespaces(this.namespace).secrets(this.secretName).delete();
        });
    }
    static uuidv4() {
        return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {
            const r = Math.trunc(Math.random() * 16);
            const v = c === 'x' ? r : (r & 0x3) | 0x8;
            return v.toString(16);
        });
    }
}
exports.default = Kubernetes;


/***/ }),

/***/ 85487:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __webpack_require__(42186);
class Output {
    static setBuildVersion(buildVersion) {
        return __awaiter(this, void 0, void 0, function* () {
            yield core.setOutput('buildVersion', buildVersion);
        });
    }
}
exports.default = Output;


/***/ }),

/***/ 9707:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
class Platform {
    static get default() {
        return Platform.types.StandaloneWindows64;
    }
    static get types() {
        return {
            StandaloneOSX: 'StandaloneOSX',
            StandaloneWindows: 'StandaloneWindows',
            StandaloneWindows64: 'StandaloneWindows64',
            StandaloneLinux64: 'StandaloneLinux64',
            iOS: 'iOS',
            Android: 'Android',
            WebGL: 'WebGL',
            WSAPlayer: 'WSAPlayer',
            PS4: 'PS4',
            XboxOne: 'XboxOne',
            tvOS: 'tvOS',
            Switch: 'Switch',
            // Unsupported
            Lumin: 'Lumin',
            BJM: 'BJM',
            Stadia: 'Stadia',
            Facebook: 'Facebook',
            NoTarget: 'NoTarget',
            // Test specific
            Test: 'Test',
        };
    }
    static isWindows(platform) {
        switch (platform) {
            case Platform.types.StandaloneWindows:
            case Platform.types.StandaloneWindows64:
                return true;
            default:
                return false;
        }
    }
    static isAndroid(platform) {
        switch (platform) {
            case Platform.types.Android:
                return true;
            default:
                return false;
        }
    }
}
exports.default = Platform;


/***/ }),

/***/ 88666:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const input_1 = __importDefault(__webpack_require__(91933));
const unity_1 = __importDefault(__webpack_require__(70498));
const action_1 = __importDefault(__webpack_require__(89088));
class Project {
    static get relativePath() {
        const { projectPath } = input_1.default;
        return `${projectPath}`;
    }
    static get absolutePath() {
        const { workspace } = action_1.default;
        return `${workspace}/${this.relativePath}`;
    }
    static get libraryFolder() {
        return `${this.relativePath}/${unity_1.default.libraryFolder}`;
    }
}
exports.default = Project;


/***/ }),

/***/ 1019:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const SDK = __importStar(__webpack_require__(71786));
const nanoid_1 = __webpack_require__(39140);
const fs = __importStar(__webpack_require__(35747));
const core = __importStar(__webpack_require__(42186));
const zlib = __importStar(__webpack_require__(78761));
const remote_builder_alphabet_1 = __importDefault(__webpack_require__(41322));
class AWS {
    static run(buildId, stackName, image, commands, mountdir, workingdir, environment, secrets) {
        return __awaiter(this, void 0, void 0, function* () {
            const ECS = new SDK.ECS();
            const CF = new SDK.CloudFormation();
            const entrypoint = ['/bin/sh'];
            const taskDef = yield this.setupCloudFormations(CF, buildId, stackName, image, entrypoint, commands, mountdir, workingdir, environment, secrets);
            yield this.runTask(taskDef, ECS, CF, environment, buildId);
            yield this.cleanupResources(CF, taskDef);
        });
    }
    static setupCloudFormations(CF, buildUid, stackName, image, entrypoint, commands, mountdir, workingdir, environment, secrets) {
        return __awaiter(this, void 0, void 0, function* () {
            const logid = nanoid_1.customAlphabet(remote_builder_alphabet_1.default.alphabet, 9)();
            commands[1] += `
      echo "${logid}"
    `;
            const taskDefStackName = `${stackName}-${buildUid}`;
            let taskDefCloudFormation = this.readTaskCloudFormationTemplate();
            for (const secret of secrets) {
                const insertionStringParameters = 'p1 - input';
                const insertionStringSecrets = 'p2 - secret';
                const insertionStringContainerSecrets = 'p3 - container def';
                const indexp1 = taskDefCloudFormation.search(insertionStringParameters) + insertionStringParameters.length + '\n'.length;
                const parameterTemplate = `
  ${secret.ParameterKey}:
    Type: String
    Default: ''
`;
                taskDefCloudFormation = [
                    taskDefCloudFormation.slice(0, indexp1),
                    parameterTemplate,
                    taskDefCloudFormation.slice(indexp1),
                ].join('');
                const indexp2 = taskDefCloudFormation.search(insertionStringSecrets) + insertionStringSecrets.length + '\n'.length;
                const secretTemplate = `
  ${secret.ParameterKey}Secret:
    Type: AWS::SecretsManager::Secret
    Properties: 
      Name: !Join [ "", [ '${secret.ParameterKey}', !Ref BUILDID ] ]
      SecretString: !Ref ${secret.ParameterKey}
`;
                taskDefCloudFormation = [
                    taskDefCloudFormation.slice(0, indexp2),
                    secretTemplate,
                    taskDefCloudFormation.slice(indexp2),
                ].join('');
                const indexp3 = taskDefCloudFormation.search(insertionStringContainerSecrets) +
                    insertionStringContainerSecrets.length +
                    '\n'.length;
                const containerDefinitionSecretTemplate = `
            - Name: '${secret.EnvironmentVariable ? secret.EnvironmentVariable : secret.ParameterKey}'
              ValueFrom: !Ref ${secret.ParameterKey}Secret
`;
                taskDefCloudFormation = [
                    taskDefCloudFormation.slice(0, indexp3),
                    containerDefinitionSecretTemplate,
                    taskDefCloudFormation.slice(indexp3),
                ].join('');
            }
            for (const environmentVariable of environment) {
                const insertionStringKey = 'p1 - input';
                const index = taskDefCloudFormation.search(insertionStringKey) + insertionStringKey.length + '\n'.length;
                const parameterTemplate = `
  ${environmentVariable.name}:
    Type: String
    Default: ''
`;
                taskDefCloudFormation = [
                    taskDefCloudFormation.slice(0, index),
                    parameterTemplate,
                    taskDefCloudFormation.slice(index),
                ].join('');
                const insertionStringKeyContainerDef = 'template - env vars';
                const indexContainerDef = taskDefCloudFormation.search(insertionStringKeyContainerDef) +
                    insertionStringKeyContainerDef.length +
                    '\n'.length;
                const parameterContainerDefTemplate = `
      - Name: '${environmentVariable.name}'
        ValueFrom: !Ref ${environmentVariable.name}
`;
                taskDefCloudFormation = [
                    taskDefCloudFormation.slice(0, indexContainerDef),
                    parameterContainerDefTemplate,
                    taskDefCloudFormation.slice(indexContainerDef),
                ].join('');
            }
            core.info(taskDefCloudFormation);
            const mappedSecrets = new Array();
            mappedSecrets.push(secrets);
            mappedSecrets.map((x) => {
                x.ParameterKey, x.ParameterValue;
            });
            yield CF.createStack({
                StackName: taskDefStackName,
                TemplateBody: taskDefCloudFormation,
                Parameters: [
                    {
                        ParameterKey: 'ImageUrl',
                        ParameterValue: image,
                    },
                    {
                        ParameterKey: 'ServiceName',
                        ParameterValue: taskDefStackName,
                    },
                    {
                        ParameterKey: 'Command',
                        ParameterValue: commands.join(','),
                    },
                    {
                        ParameterKey: 'EntryPoint',
                        ParameterValue: entrypoint.join(','),
                    },
                    {
                        ParameterKey: 'WorkingDirectory',
                        ParameterValue: workingdir,
                    },
                    {
                        ParameterKey: 'EFSMountDirectory',
                        ParameterValue: mountdir,
                    },
                    {
                        ParameterKey: 'BUILDID',
                        ParameterValue: buildUid,
                    },
                    ...mappedSecrets,
                ],
            }).promise();
            core.info('Creating worker cluster...');
            const cleanupTaskDefStackName = `${taskDefStackName}-cleanup`;
            const cleanupCloudFormation = fs.readFileSync(`${__dirname}/cloud-formations/cloudformation-stack-ttl.yml`, 'utf8');
            yield CF.createStack({
                StackName: cleanupTaskDefStackName,
                TemplateBody: cleanupCloudFormation,
                Capabilities: ['CAPABILITY_IAM'],
                Parameters: [
                    {
                        ParameterKey: 'StackName',
                        ParameterValue: taskDefStackName,
                    },
                    {
                        ParameterKey: 'DeleteStackName',
                        ParameterValue: cleanupTaskDefStackName,
                    },
                    {
                        ParameterKey: 'TTL',
                        ParameterValue: '100',
                    },
                    {
                        ParameterKey: 'BUILDID',
                        ParameterValue: buildUid,
                    },
                ],
            }).promise();
            core.info('Creating cleanup cluster...');
            try {
                yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
            }
            catch (error) {
                core.error(error);
            }
            const taskDefResources = (yield CF.describeStackResources({
                StackName: taskDefStackName,
            }).promise()).StackResources;
            const baseResources = (yield CF.describeStackResources({ StackName: stackName }).promise()).StackResources;
            // in the future we should offer a parameter to choose if you want the guarnteed shutdown.
            core.info('Worker cluster created successfully (skipping wait for cleanup cluster to be ready)');
            return {
                taskDefStackName,
                taskDefCloudFormation,
                taskDefStackNameTTL: cleanupTaskDefStackName,
                ttlCloudFormation: cleanupCloudFormation,
                taskDefResources,
                baseResources,
                logid,
            };
        });
    }
    static readTaskCloudFormationTemplate() {
        return fs.readFileSync(`${__dirname}/cloud-formations/task-def-formation.yml`, 'utf8');
    }
    static runTask(taskDef, ECS, CF, environment, buildUid) {
        var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
        return __awaiter(this, void 0, void 0, function* () {
            const cluster = ((_b = (_a = taskDef.baseResources) === null || _a === void 0 ? void 0 : _a.find((x) => x.LogicalResourceId === 'ECSCluster')) === null || _b === void 0 ? void 0 : _b.PhysicalResourceId) || '';
            const taskDefinition = ((_d = (_c = taskDef.taskDefResources) === null || _c === void 0 ? void 0 : _c.find((x) => x.LogicalResourceId === 'TaskDefinition')) === null || _d === void 0 ? void 0 : _d.PhysicalResourceId) || '';
            const SubnetOne = ((_f = (_e = taskDef.baseResources) === null || _e === void 0 ? void 0 : _e.find((x) => x.LogicalResourceId === 'PublicSubnetOne')) === null || _f === void 0 ? void 0 : _f.PhysicalResourceId) || '';
            const SubnetTwo = ((_h = (_g = taskDef.baseResources) === null || _g === void 0 ? void 0 : _g.find((x) => x.LogicalResourceId === 'PublicSubnetTwo')) === null || _h === void 0 ? void 0 : _h.PhysicalResourceId) || '';
            const ContainerSecurityGroup = ((_k = (_j = taskDef.baseResources) === null || _j === void 0 ? void 0 : _j.find((x) => x.LogicalResourceId === 'ContainerSecurityGroup')) === null || _k === void 0 ? void 0 : _k.PhysicalResourceId) || '';
            const streamName = ((_m = (_l = taskDef.taskDefResources) === null || _l === void 0 ? void 0 : _l.find((x) => x.LogicalResourceId === 'KinesisStream')) === null || _m === void 0 ? void 0 : _m.PhysicalResourceId) || '';
            const task = yield ECS.runTask({
                cluster,
                taskDefinition,
                platformVersion: '1.4.0',
                overrides: {
                    containerOverrides: [
                        {
                            name: taskDef.taskDefStackName,
                            environment: [...environment, { name: 'BUILDID', value: buildUid }],
                        },
                    ],
                },
                launchType: 'FARGATE',
                networkConfiguration: {
                    awsvpcConfiguration: {
                        subnets: [SubnetOne, SubnetTwo],
                        assignPublicIp: 'ENABLED',
                        securityGroups: [ContainerSecurityGroup],
                    },
                },
            }).promise();
            core.info('Task is starting on worker cluster');
            const taskArn = ((_o = task.tasks) === null || _o === void 0 ? void 0 : _o[0].taskArn) || '';
            try {
                yield ECS.waitFor('tasksRunning', { tasks: [taskArn], cluster }).promise();
            }
            catch (error) {
                yield new Promise((resolve) => setTimeout(resolve, 3000));
                const describeTasks = yield ECS.describeTasks({
                    tasks: [taskArn],
                    cluster,
                }).promise();
                core.info(`Task has ended ${(_q = (_p = describeTasks.tasks) === null || _p === void 0 ? void 0 : _p[0].containers) === null || _q === void 0 ? void 0 : _q[0].lastStatus}`);
                core.setFailed(error);
                core.error(error);
            }
            core.info(`Task is running on worker cluster`);
            yield this.streamLogsUntilTaskStops(ECS, CF, taskDef, cluster, taskArn, streamName);
            yield ECS.waitFor('tasksStopped', { cluster, tasks: [taskArn] }).promise();
            const exitCode = (_s = (_r = (yield ECS.describeTasks({
                tasks: [taskArn],
                cluster,
            }).promise()).tasks) === null || _r === void 0 ? void 0 : _r[0].containers) === null || _s === void 0 ? void 0 : _s[0].exitCode;
            if (exitCode !== 0) {
                try {
                    yield this.cleanupResources(CF, taskDef);
                }
                catch (error) {
                    core.warning(`failed to cleanup ${error}`);
                }
                core.error(`job failed with exit code ${exitCode}`);
                throw new Error(`job failed with exit code ${exitCode}`);
            }
            else {
                core.info(`Task has finished successfully`);
            }
        });
    }
    static streamLogsUntilTaskStops(ECS, CF, taskDef, clusterName, taskArn, kinesisStreamName) {
        var _a;
        return __awaiter(this, void 0, void 0, function* () {
            // watching logs
            const kinesis = new SDK.Kinesis();
            const getTaskData = () => __awaiter(this, void 0, void 0, function* () {
                var _b;
                const tasks = yield ECS.describeTasks({
                    cluster: clusterName,
                    tasks: [taskArn],
                }).promise();
                return (_b = tasks.tasks) === null || _b === void 0 ? void 0 : _b[0];
            });
            const stream = yield kinesis
                .describeStream({
                StreamName: kinesisStreamName,
            })
                .promise();
            let iterator = (yield kinesis
                .getShardIterator({
                ShardIteratorType: 'TRIM_HORIZON',
                StreamName: stream.StreamDescription.StreamName,
                ShardId: stream.StreamDescription.Shards[0].ShardId,
            })
                .promise()).ShardIterator || '';
            yield CF.waitFor('stackCreateComplete', { StackName: taskDef.taskDefStackNameTTL }).promise();
            core.info(`Task status is ${(_a = (yield getTaskData())) === null || _a === void 0 ? void 0 : _a.lastStatus}`);
            const logBaseUrl = `https://${SDK.config.region}.console.aws.amazon.com/cloudwatch/home?region=${SDK.config.region}#logsV2:log-groups/log-group/${taskDef.taskDefStackName}`;
            core.info(`You can also see the logs at AWS Cloud Watch: ${logBaseUrl}`);
            let readingLogs = true;
            let timestamp = 0;
            while (readingLogs) {
                yield new Promise((resolve) => setTimeout(resolve, 1500));
                const taskData = yield getTaskData();
                if ((taskData === null || taskData === void 0 ? void 0 : taskData.lastStatus) !== 'RUNNING') {
                    if (timestamp === 0) {
                        core.info('Task stopped, streaming end of logs');
                        timestamp = Date.now();
                    }
                    if (timestamp !== 0 && Date.now() - timestamp < 30000) {
                        core.info('Task status is not RUNNING for 30 seconds, last query for logs');
                        readingLogs = false;
                    }
                }
                const records = yield kinesis
                    .getRecords({
                    ShardIterator: iterator,
                })
                    .promise();
                iterator = records.NextShardIterator || '';
                if (records.Records.length > 0 && iterator) {
                    for (let index = 0; index < records.Records.length; index++) {
                        const json = JSON.parse(zlib.gunzipSync(Buffer.from(records.Records[index].Data, 'base64')).toString('utf8'));
                        if (json.messageType === 'DATA_MESSAGE') {
                            for (let logEventsIndex = 0; logEventsIndex < json.logEvents.length; logEventsIndex++) {
                                if (json.logEvents[logEventsIndex].message.includes(taskDef.logid)) {
                                    core.info('End of task logs');
                                    readingLogs = false;
                                }
                                else {
                                    core.info(json.logEvents[logEventsIndex].message);
                                }
                            }
                        }
                    }
                }
            }
        });
    }
    static cleanupResources(CF, taskDef) {
        return __awaiter(this, void 0, void 0, function* () {
            yield CF.deleteStack({
                StackName: taskDef.taskDefStackName,
            }).promise();
            yield CF.deleteStack({
                StackName: taskDef.taskDefStackNameTTL,
            }).promise();
            yield CF.waitFor('stackDeleteComplete', {
                StackName: taskDef.taskDefStackName,
            }).promise();
            // Currently too slow and causes too much waiting
            yield CF.waitFor('stackDeleteComplete', {
                StackName: taskDef.taskDefStackNameTTL,
            }).promise();
            core.info('Cleanup complete');
        });
    }
}
exports.default = AWS;


/***/ }),

/***/ 41322:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
class RemoteBuilderAlphabet {
}
RemoteBuilderAlphabet.alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
exports.default = RemoteBuilderAlphabet;


/***/ }),

/***/ 49358:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const nanoid_1 = __webpack_require__(39140);
const aws_1 = __importDefault(__webpack_require__(1019));
const core = __importStar(__webpack_require__(42186));
const remote_builder_alphabet_1 = __importDefault(__webpack_require__(41322));
const repositoryDirectoryName = 'repo';
const efsDirectoryName = 'data';
const cacheDirectoryName = 'cache';
class RemoteBuilder {
    static runBuildJob(buildParameters, baseImage) {
        var _a;
        return __awaiter(this, void 0, void 0, function* () {
            try {
                const nanoid = nanoid_1.customAlphabet(remote_builder_alphabet_1.default.alphabet, 4);
                const buildUid = `${process.env.GITHUB_RUN_NUMBER}-${buildParameters.platform
                    .replace('Standalone', '')
                    .replace('standalone', '')}-${nanoid()}`;
                const branchName = (_a = process.env.GITHUB_REF) === null || _a === void 0 ? void 0 : _a.split('/').reverse()[0];
                const token = buildParameters.githubToken;
                const defaultSecretsArray = [
                    {
                        ParameterKey: 'GithubToken',
                        EnvironmentVariable: 'GITHUB_TOKEN',
                        ParameterValue: token,
                    },
                ];
                core.info('Starting part 1/4 (clone from github and restore cache)');
                yield aws_1.default.run(buildUid, buildParameters.awsStackName, 'alpine/git', [
                    '-c',
                    `apk update;
          apk add unzip;
          apk add git-lfs;
          apk add jq;
          # Get source repo for project to be built and game-ci repo for utilties
          git clone https://${buildParameters.githubToken}@github.com/${process.env.GITHUB_REPOSITORY}.git ${buildUid}/${repositoryDirectoryName} -q
          git clone https://${buildParameters.githubToken}@github.com/game-ci/unity-builder.git ${buildUid}/builder -q
          cd /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/
          git checkout $GITHUB_SHA
          cd /${efsDirectoryName}/
          # Look for usable cache
          if [ ! -d ${cacheDirectoryName} ]; then
            mkdir ${cacheDirectoryName}
          fi
          cd ${cacheDirectoryName}
          if [ ! -d "${branchName}" ]; then
            mkdir "${branchName}"
          fi
          cd "${branchName}"
          echo " "
          echo "Cached Libraries for ${branchName} from previous builds:"
          ls
          echo " "
          libDir="/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library"
          if [ -d "$libDir" ]; then
            rm -r "$libDir"
            echo "Setup .gitignore to ignore Library folder and remove it from builds"
          fi
          echo 'Checking cache'
          # Restore cache
          latest=$(ls -t | head -1)
          if [ ! -z "$latest" ]; then
            echo "Library cache exists from build $latest from ${branchName}"
            echo 'Creating empty Library folder for cache'
            mkdir "$libDir"
            unzip -q $latest -d '/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library/.'
          else
            echo 'Cache does not exist'
          fi
          # Print out important directories
          echo ' '
          echo 'Repo:'
          ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/
          echo ' '
          echo 'Project:'
          ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}
          echo ' '
          echo 'Library:'
          ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library/
          echo ' '
      `,
                ], `/${efsDirectoryName}`, `/${efsDirectoryName}/`, [
                    {
                        name: 'GITHUB_SHA',
                        value: process.env.GITHUB_SHA || '',
                    },
                ], defaultSecretsArray);
                core.info('Starting part 2/4 (build unity project)');
                const buildSecrets = new Array();
                buildSecrets.push(defaultSecretsArray);
                if (process.env.UNITY_LICENSE)
                    buildSecrets.push({
                        ParameterKey: 'UnityLicense',
                        EnvironmentVariable: 'UNITY_LICENSE',
                        ParameterValue: process.env.UNITY_LICENSE,
                    });
                if (process.env.UNITY_EMAIL)
                    buildSecrets.push({
                        ParameterKey: 'UnityEmail',
                        EnvironmentVariable: 'UNITY_EMAIL',
                        ParameterValue: process.env.UNITY_EMAIL,
                    });
                if (process.env.UNITY_PASSWORD)
                    buildSecrets.push({
                        ParameterKey: 'UnityPassword',
                        EnvironmentVariable: 'UNITY_PASSWORD',
                        ParameterValue: process.env.UNITY_PASSWORD,
                    });
                if (process.env.UNITY_SERIAL)
                    buildSecrets.push({
                        ParameterKey: 'UnitySerial',
                        EnvironmentVariable: 'UNITY_SERIAL',
                        ParameterValue: process.env.UNITY_SERIAL,
                    });
                if (buildParameters.androidKeystoreBase64)
                    buildSecrets.push({
                        ParameterKey: 'AndroidKeystoreBase64',
                        EnvironmentVariable: 'ANDROID_KEYSTORE_BASE64',
                        ParameterValue: buildParameters.androidKeystoreBase64,
                    });
                if (buildParameters.androidKeystorePass)
                    buildSecrets.push({
                        ParameterKey: 'AndroidKeystorePass',
                        EnvironmentVariable: 'ANDROID_KEYSTORE_PASS',
                        ParameterValue: buildParameters.androidKeystorePass,
                    });
                if (buildParameters.androidKeyaliasPass)
                    buildSecrets.push({
                        ParameterKey: 'AndroidKeyAliasPass',
                        EnvironmentVariable: 'AWS_ACCESS_KEY_ALIAS_PASS',
                        ParameterValue: buildParameters.androidKeyaliasPass,
                    });
                yield aws_1.default.run(buildUid, buildParameters.awsStackName, baseImage.toString(), [
                    '-c',
                    `
            cp -r /${efsDirectoryName}/${buildUid}/builder/dist/default-build-script/ /UnityBuilderAction;
            cp -r /${efsDirectoryName}/${buildUid}/builder/dist/entrypoint.sh /entrypoint.sh;
            cp -r /${efsDirectoryName}/${buildUid}/builder/dist/steps/ /steps;
            chmod -R +x /entrypoint.sh;
            chmod -R +x /steps;
            /entrypoint.sh;
          `,
                ], `/${efsDirectoryName}`, `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/`, [
                    {
                        name: 'ContainerMemory',
                        value: buildParameters.remoteBuildMemory,
                    },
                    {
                        name: 'ContainerCpu',
                        value: buildParameters.remoteBuildCpu,
                    },
                    {
                        name: 'GITHUB_WORKSPACE',
                        value: `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/`,
                    },
                    {
                        name: 'PROJECT_PATH',
                        value: buildParameters.projectPath,
                    },
                    {
                        name: 'BUILD_PATH',
                        value: buildParameters.buildPath,
                    },
                    {
                        name: 'BUILD_FILE',
                        value: buildParameters.buildFile,
                    },
                    {
                        name: 'BUILD_NAME',
                        value: buildParameters.buildName,
                    },
                    {
                        name: 'BUILD_METHOD',
                        value: buildParameters.buildMethod,
                    },
                    {
                        name: 'CUSTOM_PARAMETERS',
                        value: buildParameters.customParameters,
                    },
                    {
                        name: 'BUILD_TARGET',
                        value: buildParameters.platform,
                    },
                    {
                        name: 'ANDROID_VERSION_CODE',
                        value: buildParameters.androidVersionCode.toString(),
                    },
                    {
                        name: 'ANDROID_KEYSTORE_NAME',
                        value: buildParameters.androidKeystoreName,
                    },
                    {
                        name: 'ANDROID_KEYALIAS_NAME',
                        value: buildParameters.androidKeyaliasName,
                    },
                ], buildSecrets);
                core.info('Starting part 3/4 (zip unity build and Library for caching)');
                // Cleanup
                yield aws_1.default.run(buildUid, buildParameters.awsStackName, 'alpine', [
                    '-c',
                    `
            apk update
            apk add zip
            cd Library
            zip -q -r lib-${buildUid}.zip .*
            mv lib-${buildUid}.zip /${efsDirectoryName}/${cacheDirectoryName}/${branchName}/lib-${buildUid}.zip
            cd ../../
            zip -q -r build-${buildUid}.zip ${buildParameters.buildPath}/*
            mv build-${buildUid}.zip /${efsDirectoryName}/${buildUid}/build-${buildUid}.zip
          `,
                ], `/${efsDirectoryName}`, `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}`, [
                    {
                        name: 'GITHUB_SHA',
                        value: process.env.GITHUB_SHA || '',
                    },
                ], defaultSecretsArray);
                core.info('Starting part 4/4 (upload build to s3)');
                yield aws_1.default.run(buildUid, buildParameters.awsStackName, 'amazon/aws-cli', [
                    '-c',
                    `
            aws s3 cp ${buildUid}/build-${buildUid}.zip s3://game-ci-storage/
            # no need to upload Library cache for now
            # aws s3 cp /${efsDirectoryName}/${cacheDirectoryName}/${branchName}/lib-${buildUid}.zip s3://game-ci-storage/
            rm -r ${buildUid}
          `,
                ], `/${efsDirectoryName}`, `/${efsDirectoryName}/`, [
                    {
                        name: 'GITHUB_SHA',
                        value: process.env.GITHUB_SHA || '',
                    },
                    {
                        name: 'AWS_DEFAULT_REGION',
                        value: process.env.AWS_DEFAULT_REGION || '',
                    },
                ], [
                    {
                        ParameterKey: 'AWSAccessKeyID',
                        EnvironmentVariable: 'AWS_ACCESS_KEY_ID',
                        ParameterValue: process.env.AWS_ACCESS_KEY_ID || '',
                    },
                    {
                        ParameterKey: 'AWSSecretAccessKey',
                        EnvironmentVariable: 'AWS_SECRET_ACCESS_KEY',
                        ParameterValue: process.env.AWS_SECRET_ACCESS_KEY || '',
                    },
                    ...defaultSecretsArray,
                ]);
            }
            catch (error) {
                core.setFailed(error);
                core.error(error);
            }
        });
    }
}
exports.default = RemoteBuilder;


/***/ }),

/***/ 62177:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __importStar(__webpack_require__(42186));
const exec_1 = __webpack_require__(71514);
class System {
    static run(command, arguments_ = [], options = {}) {
        return __awaiter(this, void 0, void 0, function* () {
            let result = '';
            let error = '';
            let debug = '';
            const listeners = {
                stdout: (dataBuffer) => {
                    result += dataBuffer.toString();
                },
                stderr: (dataBuffer) => {
                    error += dataBuffer.toString();
                },
                debug: (dataString) => {
                    debug += dataString.toString();
                },
            };
            const showOutput = () => {
                if (debug !== '') {
                    core.debug(debug);
                }
                if (result !== '') {
                    core.info(result);
                }
                if (error !== '') {
                    core.warning(error);
                }
            };
            const throwContextualError = (message) => {
                let commandAsString = command;
                if (Array.isArray(arguments_)) {
                    commandAsString += ` ${arguments_.join(' ')}`;
                }
                else if (typeof arguments_ === 'string') {
                    commandAsString += ` ${arguments_}`;
                }
                throw new Error(`Failed to run "${commandAsString}".\n ${message}`);
            };
            try {
                const exitCode = yield exec_1.exec(command, arguments_, Object.assign({ silent: true, listeners }, options));
                showOutput();
                if (exitCode !== 0) {
                    throwContextualError(`Command returned non-zero exit code.\nError: ${error}`);
                }
            }
            catch (inCommandError) {
                showOutput();
                throwContextualError(`In-command error caught: ${inCommandError}`);
            }
            return result;
        });
    }
}
exports.default = System;


/***/ }),

/***/ 17146:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __importStar(__webpack_require__(42186));
const fs = __importStar(__webpack_require__(35747));
const path_1 = __importDefault(__webpack_require__(85622));
class UnityVersioning {
    static get versionPattern() {
        return /20\d{2}\.\d\.\w{3,4}|3/;
    }
    static determineUnityVersion(projectPath, unityVersion) {
        if (unityVersion === 'auto') {
            return UnityVersioning.read(projectPath);
        }
        return unityVersion;
    }
    static read(projectPath) {
        const filePath = path_1.default.join(projectPath, 'ProjectSettings', 'ProjectVersion.txt');
        if (!fs.existsSync(filePath)) {
            core.warning(`Could not find "${filePath}", keeping unityVersion as "auto"`);
            return 'auto';
        }
        return UnityVersioning.parse(fs.readFileSync(filePath, 'utf8'));
    }
    static parse(projectVersionTxt) {
        const matches = projectVersionTxt.match(UnityVersioning.versionPattern);
        if (!matches || matches.length === 0) {
            throw new Error(`Failed to parse version from "${projectVersionTxt}".`);
        }
        return matches[0];
    }
}
exports.default = UnityVersioning;


/***/ }),

/***/ 70498:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
class Unity {
    static get libraryFolder() {
        return 'Library';
    }
}
exports.default = Unity;


/***/ }),

/***/ 88729:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const core = __importStar(__webpack_require__(42186));
const not_implemented_exception_1 = __importDefault(__webpack_require__(26574));
const validation_error_1 = __importDefault(__webpack_require__(97266));
const input_1 = __importDefault(__webpack_require__(91933));
const system_1 = __importDefault(__webpack_require__(62177));
class Versioning {
    static get projectPath() {
        return input_1.default.projectPath;
    }
    static get isDirtyAllowed() {
        return input_1.default.allowDirtyBuild;
    }
    static get strategies() {
        return { None: 'None', Semantic: 'Semantic', Tag: 'Tag', Custom: 'Custom' };
    }
    /**
     * Get the branch name of the (related) branch
     */
    static get branch() {
        // Todo - use optional chaining (https://github.com/zeit/ncc/issues/534)
        return this.headRef || (this.ref && this.ref.slice(11));
    }
    /**
     * For pull requests we can reliably use GITHUB_HEAD_REF
     */
    static get headRef() {
        return process.env.GITHUB_HEAD_REF;
    }
    /**
     * For branches GITHUB_REF will have format `refs/heads/feature-branch-1`
     */
    static get ref() {
        return process.env.GITHUB_REF;
    }
    /**
     * The commit SHA that triggered the workflow run.
     */
    static get sha() {
        return process.env.GITHUB_SHA;
    }
    /**
     * Maximum number of lines to print when logging the git diff
     */
    static get maxDiffLines() {
        return 60;
    }
    /**
     * Log up to maxDiffLines of the git diff.
     */
    static logDiff() {
        return __awaiter(this, void 0, void 0, function* () {
            const diffCommand = `git --no-pager diff | head -n ${this.maxDiffLines.toString()}`;
            yield system_1.default.run('sh', undefined, {
                input: Buffer.from(diffCommand),
                silent: true,
            });
        });
    }
    /**
     * Regex to parse version description into separate fields
     */
    static get descriptionRegex1() {
        return /^v([\d.]+)-(\d+)-g(\w+)-?(\w+)*/g;
    }
    static get descriptionRegex2() {
        return /^v([\d.]+-\w+)-(\d+)-g(\w+)-?(\w+)*/g;
    }
    static get descriptionRegex3() {
        return /^v([\d.]+-\w+\.\d+)-(\d+)-g(\w+)-?(\w+)*/g;
    }
    static determineVersion(strategy, inputVersion) {
        return __awaiter(this, void 0, void 0, function* () {
            // Validate input
            if (!Object.hasOwnProperty.call(this.strategies, strategy)) {
                throw new validation_error_1.default(`Versioning strategy should be one of ${Object.values(this.strategies).join(', ')}.`);
            }
            let version;
            switch (strategy) {
                case this.strategies.None:
                    version = 'none';
                    break;
                case this.strategies.Custom:
                    version = inputVersion;
                    break;
                case this.strategies.Semantic:
                    version = yield this.generateSemanticVersion();
                    break;
                case this.strategies.Tag:
                    version = yield this.generateTagVersion();
                    break;
                default:
                    throw new not_implemented_exception_1.default(`Strategy ${strategy} is not implemented.`);
            }
            return version;
        });
    }
    /**
     * Automatically generates a version based on SemVer out of the box.
     *
     * The version works as follows: `<major>.<minor>.<patch>` for example `0.1.2`.
     *
     * The latest tag dictates `<major>.<minor>`
     * The number of commits since that tag dictates`<patch>`.
     *
     * @See: https://semver.org/
     */
    static generateSemanticVersion() {
        return __awaiter(this, void 0, void 0, function* () {
            if (yield this.isShallow()) {
                yield this.fetch();
            }
            yield this.logDiff();
            if ((yield this.isDirty()) && !this.isDirtyAllowed) {
                throw new Error('Branch is dirty. Refusing to base semantic version on uncommitted changes');
            }
            if (!(yield this.hasAnyVersionTags())) {
                const version = `0.0.${yield this.getTotalNumberOfCommits()}`;
                core.info(`Generated version ${version} (no version tags found).`);
                return version;
            }
            const versionDescriptor = yield this.parseSemanticVersion();
            if (versionDescriptor) {
                const { tag, commits, hash } = versionDescriptor;
                // Ensure 3 digits (commits should always be patch level)
                const [major, minor, patch] = `${tag}.${commits}`.split('.');
                const threeDigitVersion = /^\d+$/.test(patch) ? `${major}.${minor}.${patch}` : `${major}.0.${minor}`;
                core.info(`Found semantic version ${threeDigitVersion} for ${this.branch}@${hash}`);
                return `${threeDigitVersion}`;
            }
            const version = `0.0.${yield this.getTotalNumberOfCommits()}`;
            core.info(`Generated version ${version} (semantic version couldn't be determined).`);
            return version;
        });
    }
    /**
     * Generate the proper version for unity based on an existing tag.
     */
    static generateTagVersion() {
        return __awaiter(this, void 0, void 0, function* () {
            let tag = yield this.getTag();
            if (tag.charAt(0) === 'v') {
                tag = tag.slice(1);
            }
            return tag;
        });
    }
    /**
     * Parses the versionDescription into their named parts.
     */
    static parseSemanticVersion() {
        return __awaiter(this, void 0, void 0, function* () {
            const description = yield this.getVersionDescription();
            try {
                const [match, tag, commits, hash] = this.descriptionRegex1.exec(description);
                return {
                    match,
                    tag,
                    commits,
                    hash,
                };
            }
            catch (_a) {
                try {
                    const [match, tag, commits, hash] = this.descriptionRegex2.exec(description);
                    return {
                        match,
                        tag,
                        commits,
                        hash,
                    };
                }
                catch (_b) {
                    try {
                        const [match, tag, commits, hash] = this.descriptionRegex3.exec(description);
                        return {
                            match,
                            tag,
                            commits,
                            hash,
                        };
                    }
                    catch (_c) {
                        core.warning(`Failed to parse git describe output or version can not be determined through: "${description}".`);
                        return false;
                    }
                }
            }
        });
    }
    /**
     * Returns whether the repository is shallow.
     */
    static isShallow() {
        return __awaiter(this, void 0, void 0, function* () {
            const output = yield this.git(['rev-parse', '--is-shallow-repository']);
            return output !== 'false\n';
        });
    }
    /**
     * Retrieves refs from the configured remote.
     *
     * Fetch unshallow for incomplete repository, but fall back to normal fetch.
     *
     * Note: `--all` should not be used, and would break fetching for push event.
     */
    static fetch() {
        return __awaiter(this, void 0, void 0, function* () {
            try {
                yield this.git(['fetch', '--unshallow']);
            }
            catch (error) {
                core.warning(`Fetch --unshallow caught: ${error}`);
                yield this.git(['fetch']);
            }
        });
    }
    /**
     * Retrieves information about the branch.
     *
     * Format: `v0.12-24-gd2198ab`
     *
     * In this format v0.12 is the latest tag, 24 are the number of commits since, and gd2198ab
     * identifies the current commit.
     */
    static getVersionDescription() {
        return __awaiter(this, void 0, void 0, function* () {
            return this.git(['describe', '--long', '--tags', '--always', this.sha]);
        });
    }
    /**
     * Returns whether there are uncommitted changes that are not ignored.
     */
    static isDirty() {
        return __awaiter(this, void 0, void 0, function* () {
            const output = yield this.git(['status', '--porcelain']);
            return output !== '';
        });
    }
    /**
     * Get the tag if there is one pointing at HEAD
     */
    static getTag() {
        return __awaiter(this, void 0, void 0, function* () {
            return this.git(['tag', '--points-at', 'HEAD']);
        });
    }
    /**
     * Whether or not the repository has any version tags yet.
     */
    static hasAnyVersionTags() {
        return __awaiter(this, void 0, void 0, function* () {
            const numberOfCommitsAsString = yield system_1.default.run('sh', undefined, {
                input: Buffer.from('git tag --list --merged HEAD | grep v[0-9]* | wc -l'),
                silent: false,
            });
            const numberOfCommits = Number.parseInt(numberOfCommitsAsString, 10);
            return numberOfCommits !== 0;
        });
    }
    /**
     * Get the total number of commits on head.
     *
     * Note: HEAD should not be used, as it may be detached, resulting in an additional count.
     */
    static getTotalNumberOfCommits() {
        return __awaiter(this, void 0, void 0, function* () {
            const numberOfCommitsAsString = yield this.git(['rev-list', '--count', this.sha]);
            return Number.parseInt(numberOfCommitsAsString, 10);
        });
    }
    /**
     * Run git in the specified project path
     */
    static git(arguments_, options = {}) {
        return __awaiter(this, void 0, void 0, function* () {
            return system_1.default.run('git', arguments_, Object.assign({ cwd: this.projectPath }, options));
        });
    }
}
exports.default = Versioning;


/***/ }),

/***/ 87351:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const os = __importStar(__webpack_require__(12087));
const utils_1 = __webpack_require__(5278);
/**
 * Commands
 *
 * Command Format:
 *   ::name key=value,key=value::message
 *
 * Examples:
 *   ::warning::This is the message
 *   ::set-env name=MY_VAR::some value
 */
function issueCommand(command, properties, message) {
    const cmd = new Command(command, properties, message);
    process.stdout.write(cmd.toString() + os.EOL);
}
exports.issueCommand = issueCommand;
function issue(name, message = '') {
    issueCommand(name, {}, message);
}
exports.issue = issue;
const CMD_STRING = '::';
class Command {
    constructor(command, properties, message) {
        if (!command) {
            command = 'missing.command';
        }
        this.command = command;
        this.properties = properties;
        this.message = message;
    }
    toString() {
        let cmdStr = CMD_STRING + this.command;
        if (this.properties && Object.keys(this.properties).length > 0) {
            cmdStr += ' ';
            let first = true;
            for (const key in this.properties) {
                if (this.properties.hasOwnProperty(key)) {
                    const val = this.properties[key];
                    if (val) {
                        if (first) {
                            first = false;
                        }
                        else {
                            cmdStr += ',';
                        }
                        cmdStr += `${key}=${escapeProperty(val)}`;
                    }
                }
            }
        }
        cmdStr += `${CMD_STRING}${escapeData(this.message)}`;
        return cmdStr;
    }
}
function escapeData(s) {
    return utils_1.toCommandValue(s)
        .replace(/%/g, '%25')
        .replace(/\r/g, '%0D')
        .replace(/\n/g, '%0A');
}
function escapeProperty(s) {
    return utils_1.toCommandValue(s)
        .replace(/%/g, '%25')
        .replace(/\r/g, '%0D')
        .replace(/\n/g, '%0A')
        .replace(/:/g, '%3A')
        .replace(/,/g, '%2C');
}
//# sourceMappingURL=command.js.map

/***/ }),

/***/ 42186:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const command_1 = __webpack_require__(87351);
const file_command_1 = __webpack_require__(717);
const utils_1 = __webpack_require__(5278);
const os = __importStar(__webpack_require__(12087));
const path = __importStar(__webpack_require__(85622));
/**
 * The code to exit an action
 */
var ExitCode;
(function (ExitCode) {
    /**
     * A code indicating that the action was successful
     */
    ExitCode[ExitCode["Success"] = 0] = "Success";
    /**
     * A code indicating that the action was a failure
     */
    ExitCode[ExitCode["Failure"] = 1] = "Failure";
})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));
//-----------------------------------------------------------------------
// Variables
//-----------------------------------------------------------------------
/**
 * Sets env variable for this action and future actions in the job
 * @param name the name of the variable to set
 * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify
 */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function exportVariable(name, val) {
    const convertedVal = utils_1.toCommandValue(val);
    process.env[name] = convertedVal;
    const filePath = process.env['GITHUB_ENV'] || '';
    if (filePath) {
        const delimiter = '_GitHubActionsFileCommandDelimeter_';
        const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`;
        file_command_1.issueCommand('ENV', commandValue);
    }
    else {
        command_1.issueCommand('set-env', { name }, convertedVal);
    }
}
exports.exportVariable = exportVariable;
/**
 * Registers a secret which will get masked from logs
 * @param secret value of the secret
 */
function setSecret(secret) {
    command_1.issueCommand('add-mask', {}, secret);
}
exports.setSecret = setSecret;
/**
 * Prepends inputPath to the PATH (for this action and future actions)
 * @param inputPath
 */
function addPath(inputPath) {
    const filePath = process.env['GITHUB_PATH'] || '';
    if (filePath) {
        file_command_1.issueCommand('PATH', inputPath);
    }
    else {
        command_1.issueCommand('add-path', {}, inputPath);
    }
    process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;
}
exports.addPath = addPath;
/**
 * Gets the value of an input.  The value is also trimmed.
 *
 * @param     name     name of the input to get
 * @param     options  optional. See InputOptions.
 * @returns   string
 */
function getInput(name, options) {
    const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';
    if (options && options.required && !val) {
        throw new Error(`Input required and not supplied: ${name}`);
    }
    return val.trim();
}
exports.getInput = getInput;
/**
 * Sets the value of an output.
 *
 * @param     name     name of the output to set
 * @param     value    value to store. Non-string values will be converted to a string via JSON.stringify
 */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function setOutput(name, value) {
    process.stdout.write(os.EOL);
    command_1.issueCommand('set-output', { name }, value);
}
exports.setOutput = setOutput;
/**
 * Enables or disables the echoing of commands into stdout for the rest of the step.
 * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.
 *
 */
function setCommandEcho(enabled) {
    command_1.issue('echo', enabled ? 'on' : 'off');
}
exports.setCommandEcho = setCommandEcho;
//-----------------------------------------------------------------------
// Results
//-----------------------------------------------------------------------
/**
 * Sets the action status to failed.
 * When the action exits it will be with an exit code of 1
 * @param message add error issue message
 */
function setFailed(message) {
    process.exitCode = ExitCode.Failure;
    error(message);
}
exports.setFailed = setFailed;
//-----------------------------------------------------------------------
// Logging Commands
//-----------------------------------------------------------------------
/**
 * Gets whether Actions Step Debug is on or not
 */
function isDebug() {
    return process.env['RUNNER_DEBUG'] === '1';
}
exports.isDebug = isDebug;
/**
 * Writes debug message to user log
 * @param message debug message
 */
function debug(message) {
    command_1.issueCommand('debug', {}, message);
}
exports.debug = debug;
/**
 * Adds an error issue
 * @param message error issue message. Errors will be converted to string via toString()
 */
function error(message) {
    command_1.issue('error', message instanceof Error ? message.toString() : message);
}
exports.error = error;
/**
 * Adds an warning issue
 * @param message warning issue message. Errors will be converted to string via toString()
 */
function warning(message) {
    command_1.issue('warning', message instanceof Error ? message.toString() : message);
}
exports.warning = warning;
/**
 * Writes info to log with console.log.
 * @param message info message
 */
function info(message) {
    process.stdout.write(message + os.EOL);
}
exports.info = info;
/**
 * Begin an output group.
 *
 * Output until the next `groupEnd` will be foldable in this group
 *
 * @param name The name of the output group
 */
function startGroup(name) {
    command_1.issue('group', name);
}
exports.startGroup = startGroup;
/**
 * End an output group.
 */
function endGroup() {
    command_1.issue('endgroup');
}
exports.endGroup = endGroup;
/**
 * Wrap an asynchronous function call in a group.
 *
 * Returns the same type as the function itself.
 *
 * @param name The name of the group
 * @param fn The function to wrap in the group
 */
function group(name, fn) {
    return __awaiter(this, void 0, void 0, function* () {
        startGroup(name);
        let result;
        try {
            result = yield fn();
        }
        finally {
            endGroup();
        }
        return result;
    });
}
exports.group = group;
//-----------------------------------------------------------------------
// Wrapper action state
//-----------------------------------------------------------------------
/**
 * Saves state for current action, the state can only be retrieved by this action's post job execution.
 *
 * @param     name     name of the state to store
 * @param     value    value to store. Non-string values will be converted to a string via JSON.stringify
 */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function saveState(name, value) {
    command_1.issueCommand('save-state', { name }, value);
}
exports.saveState = saveState;
/**
 * Gets the value of an state set by this action's main execution.
 *
 * @param     name     name of the state to get
 * @returns   string
 */
function getState(name) {
    return process.env[`STATE_${name}`] || '';
}
exports.getState = getState;
//# sourceMappingURL=core.js.map

/***/ }),

/***/ 717:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

// For internal use, subject to change.
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
// We use any as a valid input type
/* eslint-disable @typescript-eslint/no-explicit-any */
const fs = __importStar(__webpack_require__(35747));
const os = __importStar(__webpack_require__(12087));
const utils_1 = __webpack_require__(5278);
function issueCommand(command, message) {
    const filePath = process.env[`GITHUB_${command}`];
    if (!filePath) {
        throw new Error(`Unable to find environment variable for file command ${command}`);
    }
    if (!fs.existsSync(filePath)) {
        throw new Error(`Missing file at path: ${filePath}`);
    }
    fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, {
        encoding: 'utf8'
    });
}
exports.issueCommand = issueCommand;
//# sourceMappingURL=file-command.js.map

/***/ }),

/***/ 5278:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

// We use any as a valid input type
/* eslint-disable @typescript-eslint/no-explicit-any */
Object.defineProperty(exports, "__esModule", ({ value: true }));
/**
 * Sanitizes an input into a string so it can be passed into issueCommand safely
 * @param input input to sanitize into a string
 */
function toCommandValue(input) {
    if (input === null || input === undefined) {
        return '';
    }
    else if (typeof input === 'string' || input instanceof String) {
        return input;
    }
    return JSON.stringify(input);
}
exports.toCommandValue = toCommandValue;
//# sourceMappingURL=utils.js.map

/***/ }),

/***/ 71514:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const tr = __importStar(__webpack_require__(88159));
/**
 * Exec a command.
 * Output will be streamed to the live console.
 * Returns promise with return code
 *
 * @param     commandLine        command to execute (can include additional args). Must be correctly escaped.
 * @param     args               optional arguments for tool. Escaping is handled by the lib.
 * @param     options            optional exec options.  See ExecOptions
 * @returns   Promise<number>    exit code
 */
function exec(commandLine, args, options) {
    return __awaiter(this, void 0, void 0, function* () {
        const commandArgs = tr.argStringToArray(commandLine);
        if (commandArgs.length === 0) {
            throw new Error(`Parameter 'commandLine' cannot be null or empty.`);
        }
        // Path to tool to execute should be first arg
        const toolPath = commandArgs[0];
        args = commandArgs.slice(1).concat(args || []);
        const runner = new tr.ToolRunner(toolPath, args, options);
        return runner.exec();
    });
}
exports.exec = exec;
//# sourceMappingURL=exec.js.map

/***/ }),

/***/ 88159:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const os = __importStar(__webpack_require__(12087));
const events = __importStar(__webpack_require__(28614));
const child = __importStar(__webpack_require__(63129));
const path = __importStar(__webpack_require__(85622));
const io = __importStar(__webpack_require__(47351));
const ioUtil = __importStar(__webpack_require__(81962));
/* eslint-disable @typescript-eslint/unbound-method */
const IS_WINDOWS = process.platform === 'win32';
/*
 * Class for running command line tools. Handles quoting and arg parsing in a platform agnostic way.
 */
class ToolRunner extends events.EventEmitter {
    constructor(toolPath, args, options) {
        super();
        if (!toolPath) {
            throw new Error("Parameter 'toolPath' cannot be null or empty.");
        }
        this.toolPath = toolPath;
        this.args = args || [];
        this.options = options || {};
    }
    _debug(message) {
        if (this.options.listeners && this.options.listeners.debug) {
            this.options.listeners.debug(message);
        }
    }
    _getCommandString(options, noPrefix) {
        const toolPath = this._getSpawnFileName();
        const args = this._getSpawnArgs(options);
        let cmd = noPrefix ? '' : '[command]'; // omit prefix when piped to a second tool
        if (IS_WINDOWS) {
            // Windows + cmd file
            if (this._isCmdFile()) {
                cmd += toolPath;
                for (const a of args) {
                    cmd += ` ${a}`;
                }
            }
            // Windows + verbatim
            else if (options.windowsVerbatimArguments) {
                cmd += `"${toolPath}"`;
                for (const a of args) {
                    cmd += ` ${a}`;
                }
            }
            // Windows (regular)
            else {
                cmd += this._windowsQuoteCmdArg(toolPath);
                for (const a of args) {
                    cmd += ` ${this._windowsQuoteCmdArg(a)}`;
                }
            }
        }
        else {
            // OSX/Linux - this can likely be improved with some form of quoting.
            // creating processes on Unix is fundamentally different than Windows.
            // on Unix, execvp() takes an arg array.
            cmd += toolPath;
            for (const a of args) {
                cmd += ` ${a}`;
            }
        }
        return cmd;
    }
    _processLineBuffer(data, strBuffer, onLine) {
        try {
            let s = strBuffer + data.toString();
            let n = s.indexOf(os.EOL);
            while (n > -1) {
                const line = s.substring(0, n);
                onLine(line);
                // the rest of the string ...
                s = s.substring(n + os.EOL.length);
                n = s.indexOf(os.EOL);
            }
            strBuffer = s;
        }
        catch (err) {
            // streaming lines to console is best effort.  Don't fail a build.
            this._debug(`error processing line. Failed with error ${err}`);
        }
    }
    _getSpawnFileName() {
        if (IS_WINDOWS) {
            if (this._isCmdFile()) {
                return process.env['COMSPEC'] || 'cmd.exe';
            }
        }
        return this.toolPath;
    }
    _getSpawnArgs(options) {
        if (IS_WINDOWS) {
            if (this._isCmdFile()) {
                let argline = `/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`;
                for (const a of this.args) {
                    argline += ' ';
                    argline += options.windowsVerbatimArguments
                        ? a
                        : this._windowsQuoteCmdArg(a);
                }
                argline += '"';
                return [argline];
            }
        }
        return this.args;
    }
    _endsWith(str, end) {
        return str.endsWith(end);
    }
    _isCmdFile() {
        const upperToolPath = this.toolPath.toUpperCase();
        return (this._endsWith(upperToolPath, '.CMD') ||
            this._endsWith(upperToolPath, '.BAT'));
    }
    _windowsQuoteCmdArg(arg) {
        // for .exe, apply the normal quoting rules that libuv applies
        if (!this._isCmdFile()) {
            return this._uvQuoteCmdArg(arg);
        }
        // otherwise apply quoting rules specific to the cmd.exe command line parser.
        // the libuv rules are generic and are not designed specifically for cmd.exe
        // command line parser.
        //
        // for a detailed description of the cmd.exe command line parser, refer to
        // http://stackoverflow.com/questions/4094699/how-does-the-windows-command-interpreter-cmd-exe-parse-scripts/7970912#7970912
        // need quotes for empty arg
        if (!arg) {
            return '""';
        }
        // determine whether the arg needs to be quoted
        const cmdSpecialChars = [
            ' ',
            '\t',
            '&',
            '(',
            ')',
            '[',
            ']',
            '{',
            '}',
            '^',
            '=',
            ';',
            '!',
            "'",
            '+',
            ',',
            '`',
            '~',
            '|',
            '<',
            '>',
            '"'
        ];
        let needsQuotes = false;
        for (const char of arg) {
            if (cmdSpecialChars.some(x => x === char)) {
                needsQuotes = true;
                break;
            }
        }
        // short-circuit if quotes not needed
        if (!needsQuotes) {
            return arg;
        }
        // the following quoting rules are very similar to the rules that by libuv applies.
        //
        // 1) wrap the string in quotes
        //
        // 2) double-up quotes - i.e. " => ""
        //
        //    this is different from the libuv quoting rules. libuv replaces " with \", which unfortunately
        //    doesn't work well with a cmd.exe command line.
        //
        //    note, replacing " with "" also works well if the arg is passed to a downstream .NET console app.
        //    for example, the command line:
        //          foo.exe "myarg:""my val"""
        //    is parsed by a .NET console app into an arg array:
        //          [ "myarg:\"my val\"" ]
        //    which is the same end result when applying libuv quoting rules. although the actual
        //    command line from libuv quoting rules would look like:
        //          foo.exe "myarg:\"my val\""
        //
        // 3) double-up slashes that precede a quote,
        //    e.g.  hello \world    => "hello \world"
        //          hello\"world    => "hello\\""world"
        //          hello\\"world   => "hello\\\\""world"
        //          hello world\    => "hello world\\"
        //
        //    technically this is not required for a cmd.exe command line, or the batch argument parser.
        //    the reasons for including this as a .cmd quoting rule are:
        //
        //    a) this is optimized for the scenario where the argument is passed from the .cmd file to an
        //       external program. many programs (e.g. .NET console apps) rely on the slash-doubling rule.
        //
        //    b) it's what we've been doing previously (by deferring to node default behavior) and we
        //       haven't heard any complaints about that aspect.
        //
        // note, a weakness of the quoting rules chosen here, is that % is not escaped. in fact, % cannot be
        // escaped when used on the command line directly - even though within a .cmd file % can be escaped
        // by using %%.
        //
        // the saving grace is, on the command line, %var% is left as-is if var is not defined. this contrasts
        // the line parsing rules within a .cmd file, where if var is not defined it is replaced with nothing.
        //
        // one option that was explored was replacing % with ^% - i.e. %var% => ^%var^%. this hack would
        // often work, since it is unlikely that var^ would exist, and the ^ character is removed when the
        // variable is used. the problem, however, is that ^ is not removed when %* is used to pass the args
        // to an external program.
        //
        // an unexplored potential solution for the % escaping problem, is to create a wrapper .cmd file.
        // % can be escaped within a .cmd file.
        let reverse = '"';
        let quoteHit = true;
        for (let i = arg.length; i > 0; i--) {
            // walk the string in reverse
            reverse += arg[i - 1];
            if (quoteHit && arg[i - 1] === '\\') {
                reverse += '\\'; // double the slash
            }
            else if (arg[i - 1] === '"') {
                quoteHit = true;
                reverse += '"'; // double the quote
            }
            else {
                quoteHit = false;
            }
        }
        reverse += '"';
        return reverse
            .split('')
            .reverse()
            .join('');
    }
    _uvQuoteCmdArg(arg) {
        // Tool runner wraps child_process.spawn() and needs to apply the same quoting as
        // Node in certain cases where the undocumented spawn option windowsVerbatimArguments
        // is used.
        //
        // Since this function is a port of quote_cmd_arg from Node 4.x (technically, lib UV,
        // see https://github.com/nodejs/node/blob/v4.x/deps/uv/src/win/process.c for details),
        // pasting copyright notice from Node within this function:
        //
        //      Copyright Joyent, Inc. and other Node contributors. All rights reserved.
        //
        //      Permission is hereby granted, free of charge, to any person obtaining a copy
        //      of this software and associated documentation files (the "Software"), to
        //      deal in the Software without restriction, including without limitation the
        //      rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
        //      sell copies of the Software, and to permit persons to whom the Software is
        //      furnished to do so, subject to the following conditions:
        //
        //      The above copyright notice and this permission notice shall be included in
        //      all copies or substantial portions of the Software.
        //
        //      THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        //      IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        //      FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        //      AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        //      LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
        //      FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
        //      IN THE SOFTWARE.
        if (!arg) {
            // Need double quotation for empty argument
            return '""';
        }
        if (!arg.includes(' ') && !arg.includes('\t') && !arg.includes('"')) {
            // No quotation needed
            return arg;
        }
        if (!arg.includes('"') && !arg.includes('\\')) {
            // No embedded double quotes or backslashes, so I can just wrap
            // quote marks around the whole thing.
            return `"${arg}"`;
        }
        // Expected input/output:
        //   input : hello"world
        //   output: "hello\"world"
        //   input : hello""world
        //   output: "hello\"\"world"
        //   input : hello\world
        //   output: hello\world
        //   input : hello\\world
        //   output: hello\\world
        //   input : hello\"world
        //   output: "hello\\\"world"
        //   input : hello\\"world
        //   output: "hello\\\\\"world"
        //   input : hello world\
        //   output: "hello world\\" - note the comment in libuv actually reads "hello world\"
        //                             but it appears the comment is wrong, it should be "hello world\\"
        let reverse = '"';
        let quoteHit = true;
        for (let i = arg.length; i > 0; i--) {
            // walk the string in reverse
            reverse += arg[i - 1];
            if (quoteHit && arg[i - 1] === '\\') {
                reverse += '\\';
            }
            else if (arg[i - 1] === '"') {
                quoteHit = true;
                reverse += '\\';
            }
            else {
                quoteHit = false;
            }
        }
        reverse += '"';
        return reverse
            .split('')
            .reverse()
            .join('');
    }
    _cloneExecOptions(options) {
        options = options || {};
        const result = {
            cwd: options.cwd || process.cwd(),
            env: options.env || process.env,
            silent: options.silent || false,
            windowsVerbatimArguments: options.windowsVerbatimArguments || false,
            failOnStdErr: options.failOnStdErr || false,
            ignoreReturnCode: options.ignoreReturnCode || false,
            delay: options.delay || 10000
        };
        result.outStream = options.outStream || process.stdout;
        result.errStream = options.errStream || process.stderr;
        return result;
    }
    _getSpawnOptions(options, toolPath) {
        options = options || {};
        const result = {};
        result.cwd = options.cwd;
        result.env = options.env;
        result['windowsVerbatimArguments'] =
            options.windowsVerbatimArguments || this._isCmdFile();
        if (options.windowsVerbatimArguments) {
            result.argv0 = `"${toolPath}"`;
        }
        return result;
    }
    /**
     * Exec a tool.
     * Output will be streamed to the live console.
     * Returns promise with return code
     *
     * @param     tool     path to tool to exec
     * @param     options  optional exec options.  See ExecOptions
     * @returns   number
     */
    exec() {
        return __awaiter(this, void 0, void 0, function* () {
            // root the tool path if it is unrooted and contains relative pathing
            if (!ioUtil.isRooted(this.toolPath) &&
                (this.toolPath.includes('/') ||
                    (IS_WINDOWS && this.toolPath.includes('\\')))) {
                // prefer options.cwd if it is specified, however options.cwd may also need to be rooted
                this.toolPath = path.resolve(process.cwd(), this.options.cwd || process.cwd(), this.toolPath);
            }
            // if the tool is only a file name, then resolve it from the PATH
            // otherwise verify it exists (add extension on Windows if necessary)
            this.toolPath = yield io.which(this.toolPath, true);
            return new Promise((resolve, reject) => {
                this._debug(`exec tool: ${this.toolPath}`);
                this._debug('arguments:');
                for (const arg of this.args) {
                    this._debug(`   ${arg}`);
                }
                const optionsNonNull = this._cloneExecOptions(this.options);
                if (!optionsNonNull.silent && optionsNonNull.outStream) {
                    optionsNonNull.outStream.write(this._getCommandString(optionsNonNull) + os.EOL);
                }
                const state = new ExecState(optionsNonNull, this.toolPath);
                state.on('debug', (message) => {
                    this._debug(message);
                });
                const fileName = this._getSpawnFileName();
                const cp = child.spawn(fileName, this._getSpawnArgs(optionsNonNull), this._getSpawnOptions(this.options, fileName));
                const stdbuffer = '';
                if (cp.stdout) {
                    cp.stdout.on('data', (data) => {
                        if (this.options.listeners && this.options.listeners.stdout) {
                            this.options.listeners.stdout(data);
                        }
                        if (!optionsNonNull.silent && optionsNonNull.outStream) {
                            optionsNonNull.outStream.write(data);
                        }
                        this._processLineBuffer(data, stdbuffer, (line) => {
                            if (this.options.listeners && this.options.listeners.stdline) {
                                this.options.listeners.stdline(line);
                            }
                        });
                    });
                }
                const errbuffer = '';
                if (cp.stderr) {
                    cp.stderr.on('data', (data) => {
                        state.processStderr = true;
                        if (this.options.listeners && this.options.listeners.stderr) {
                            this.options.listeners.stderr(data);
                        }
                        if (!optionsNonNull.silent &&
                            optionsNonNull.errStream &&
                            optionsNonNull.outStream) {
                            const s = optionsNonNull.failOnStdErr
                                ? optionsNonNull.errStream
                                : optionsNonNull.outStream;
                            s.write(data);
                        }
                        this._processLineBuffer(data, errbuffer, (line) => {
                            if (this.options.listeners && this.options.listeners.errline) {
                                this.options.listeners.errline(line);
                            }
                        });
                    });
                }
                cp.on('error', (err) => {
                    state.processError = err.message;
                    state.processExited = true;
                    state.processClosed = true;
                    state.CheckComplete();
                });
                cp.on('exit', (code) => {
                    state.processExitCode = code;
                    state.processExited = true;
                    this._debug(`Exit code ${code} received from tool '${this.toolPath}'`);
                    state.CheckComplete();
                });
                cp.on('close', (code) => {
                    state.processExitCode = code;
                    state.processExited = true;
                    state.processClosed = true;
                    this._debug(`STDIO streams have closed for tool '${this.toolPath}'`);
                    state.CheckComplete();
                });
                state.on('done', (error, exitCode) => {
                    if (stdbuffer.length > 0) {
                        this.emit('stdline', stdbuffer);
                    }
                    if (errbuffer.length > 0) {
                        this.emit('errline', errbuffer);
                    }
                    cp.removeAllListeners();
                    if (error) {
                        reject(error);
                    }
                    else {
                        resolve(exitCode);
                    }
                });
                if (this.options.input) {
                    if (!cp.stdin) {
                        throw new Error('child process missing stdin');
                    }
                    cp.stdin.end(this.options.input);
                }
            });
        });
    }
}
exports.ToolRunner = ToolRunner;
/**
 * Convert an arg string to an array of args. Handles escaping
 *
 * @param    argString   string of arguments
 * @returns  string[]    array of arguments
 */
function argStringToArray(argString) {
    const args = [];
    let inQuotes = false;
    let escaped = false;
    let arg = '';
    function append(c) {
        // we only escape double quotes.
        if (escaped && c !== '"') {
            arg += '\\';
        }
        arg += c;
        escaped = false;
    }
    for (let i = 0; i < argString.length; i++) {
        const c = argString.charAt(i);
        if (c === '"') {
            if (!escaped) {
                inQuotes = !inQuotes;
            }
            else {
                append(c);
            }
            continue;
        }
        if (c === '\\' && escaped) {
            append(c);
            continue;
        }
        if (c === '\\' && inQuotes) {
            escaped = true;
            continue;
        }
        if (c === ' ' && !inQuotes) {
            if (arg.length > 0) {
                args.push(arg);
                arg = '';
            }
            continue;
        }
        append(c);
    }
    if (arg.length > 0) {
        args.push(arg.trim());
    }
    return args;
}
exports.argStringToArray = argStringToArray;
class ExecState extends events.EventEmitter {
    constructor(options, toolPath) {
        super();
        this.processClosed = false; // tracks whether the process has exited and stdio is closed
        this.processError = '';
        this.processExitCode = 0;
        this.processExited = false; // tracks whether the process has exited
        this.processStderr = false; // tracks whether stderr was written to
        this.delay = 10000; // 10 seconds
        this.done = false;
        this.timeout = null;
        if (!toolPath) {
            throw new Error('toolPath must not be empty');
        }
        this.options = options;
        this.toolPath = toolPath;
        if (options.delay) {
            this.delay = options.delay;
        }
    }
    CheckComplete() {
        if (this.done) {
            return;
        }
        if (this.processClosed) {
            this._setResult();
        }
        else if (this.processExited) {
            this.timeout = setTimeout(ExecState.HandleTimeout, this.delay, this);
        }
    }
    _debug(message) {
        this.emit('debug', message);
    }
    _setResult() {
        // determine whether there is an error
        let error;
        if (this.processExited) {
            if (this.processError) {
                error = new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`);
            }
            else if (this.processExitCode !== 0 && !this.options.ignoreReturnCode) {
                error = new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`);
            }
            else if (this.processStderr && this.options.failOnStdErr) {
                error = new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`);
            }
        }
        // clear the timeout
        if (this.timeout) {
            clearTimeout(this.timeout);
            this.timeout = null;
        }
        this.done = true;
        this.emit('done', error, this.processExitCode);
    }
    static HandleTimeout(state) {
        if (state.done) {
            return;
        }
        if (!state.processClosed && state.processExited) {
            const message = `The STDIO streams did not close within ${state.delay /
                1000} seconds of the exit event from process '${state.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`;
            state._debug(message);
        }
        state._setResult();
    }
}
//# sourceMappingURL=toolrunner.js.map

/***/ }),

/***/ 81962:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
var _a;
Object.defineProperty(exports, "__esModule", ({ value: true }));
const assert_1 = __webpack_require__(42357);
const fs = __importStar(__webpack_require__(35747));
const path = __importStar(__webpack_require__(85622));
_a = fs.promises, exports.chmod = _a.chmod, exports.copyFile = _a.copyFile, exports.lstat = _a.lstat, exports.mkdir = _a.mkdir, exports.readdir = _a.readdir, exports.readlink = _a.readlink, exports.rename = _a.rename, exports.rmdir = _a.rmdir, exports.stat = _a.stat, exports.symlink = _a.symlink, exports.unlink = _a.unlink;
exports.IS_WINDOWS = process.platform === 'win32';
function exists(fsPath) {
    return __awaiter(this, void 0, void 0, function* () {
        try {
            yield exports.stat(fsPath);
        }
        catch (err) {
            if (err.code === 'ENOENT') {
                return false;
            }
            throw err;
        }
        return true;
    });
}
exports.exists = exists;
function isDirectory(fsPath, useStat = false) {
    return __awaiter(this, void 0, void 0, function* () {
        const stats = useStat ? yield exports.stat(fsPath) : yield exports.lstat(fsPath);
        return stats.isDirectory();
    });
}
exports.isDirectory = isDirectory;
/**
 * On OSX/Linux, true if path starts with '/'. On Windows, true for paths like:
 * \, \hello, \\hello\share, C:, and C:\hello (and corresponding alternate separator cases).
 */
function isRooted(p) {
    p = normalizeSeparators(p);
    if (!p) {
        throw new Error('isRooted() parameter "p" cannot be empty');
    }
    if (exports.IS_WINDOWS) {
        return (p.startsWith('\\') || /^[A-Z]:/i.test(p) // e.g. \ or \hello or \\hello
        ); // e.g. C: or C:\hello
    }
    return p.startsWith('/');
}
exports.isRooted = isRooted;
/**
 * Recursively create a directory at `fsPath`.
 *
 * This implementation is optimistic, meaning it attempts to create the full
 * path first, and backs up the path stack from there.
 *
 * @param fsPath The path to create
 * @param maxDepth The maximum recursion depth
 * @param depth The current recursion depth
 */
function mkdirP(fsPath, maxDepth = 1000, depth = 1) {
    return __awaiter(this, void 0, void 0, function* () {
        assert_1.ok(fsPath, 'a path argument must be provided');
        fsPath = path.resolve(fsPath);
        if (depth >= maxDepth)
            return exports.mkdir(fsPath);
        try {
            yield exports.mkdir(fsPath);
            return;
        }
        catch (err) {
            switch (err.code) {
                case 'ENOENT': {
                    yield mkdirP(path.dirname(fsPath), maxDepth, depth + 1);
                    yield exports.mkdir(fsPath);
                    return;
                }
                default: {
                    let stats;
                    try {
                        stats = yield exports.stat(fsPath);
                    }
                    catch (err2) {
                        throw err;
                    }
                    if (!stats.isDirectory())
                        throw err;
                }
            }
        }
    });
}
exports.mkdirP = mkdirP;
/**
 * Best effort attempt to determine whether a file exists and is executable.
 * @param filePath    file path to check
 * @param extensions  additional file extensions to try
 * @return if file exists and is executable, returns the file path. otherwise empty string.
 */
function tryGetExecutablePath(filePath, extensions) {
    return __awaiter(this, void 0, void 0, function* () {
        let stats = undefined;
        try {
            // test file exists
            stats = yield exports.stat(filePath);
        }
        catch (err) {
            if (err.code !== 'ENOENT') {
                // eslint-disable-next-line no-console
                console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`);
            }
        }
        if (stats && stats.isFile()) {
            if (exports.IS_WINDOWS) {
                // on Windows, test for valid extension
                const upperExt = path.extname(filePath).toUpperCase();
                if (extensions.some(validExt => validExt.toUpperCase() === upperExt)) {
                    return filePath;
                }
            }
            else {
                if (isUnixExecutable(stats)) {
                    return filePath;
                }
            }
        }
        // try each extension
        const originalFilePath = filePath;
        for (const extension of extensions) {
            filePath = originalFilePath + extension;
            stats = undefined;
            try {
                stats = yield exports.stat(filePath);
            }
            catch (err) {
                if (err.code !== 'ENOENT') {
                    // eslint-disable-next-line no-console
                    console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`);
                }
            }
            if (stats && stats.isFile()) {
                if (exports.IS_WINDOWS) {
                    // preserve the case of the actual file (since an extension was appended)
                    try {
                        const directory = path.dirname(filePath);
                        const upperName = path.basename(filePath).toUpperCase();
                        for (const actualName of yield exports.readdir(directory)) {
                            if (upperName === actualName.toUpperCase()) {
                                filePath = path.join(directory, actualName);
                                break;
                            }
                        }
                    }
                    catch (err) {
                        // eslint-disable-next-line no-console
                        console.log(`Unexpected error attempting to determine the actual case of the file '${filePath}': ${err}`);
                    }
                    return filePath;
                }
                else {
                    if (isUnixExecutable(stats)) {
                        return filePath;
                    }
                }
            }
        }
        return '';
    });
}
exports.tryGetExecutablePath = tryGetExecutablePath;
function normalizeSeparators(p) {
    p = p || '';
    if (exports.IS_WINDOWS) {
        // convert slashes on Windows
        p = p.replace(/\//g, '\\');
        // remove redundant slashes
        return p.replace(/\\\\+/g, '\\');
    }
    // remove redundant slashes
    return p.replace(/\/\/+/g, '/');
}
// on Mac/Linux, test the execute bit
//     R   W  X  R  W X R W X
//   256 128 64 32 16 8 4 2 1
function isUnixExecutable(stats) {
    return ((stats.mode & 1) > 0 ||
        ((stats.mode & 8) > 0 && stats.gid === process.getgid()) ||
        ((stats.mode & 64) > 0 && stats.uid === process.getuid()));
}
//# sourceMappingURL=io-util.js.map

/***/ }),

/***/ 47351:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result["default"] = mod;
    return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
const childProcess = __importStar(__webpack_require__(63129));
const path = __importStar(__webpack_require__(85622));
const util_1 = __webpack_require__(31669);
const ioUtil = __importStar(__webpack_require__(81962));
const exec = util_1.promisify(childProcess.exec);
/**
 * Copies a file or folder.
 * Based off of shelljs - https://github.com/shelljs/shelljs/blob/9237f66c52e5daa40458f94f9565e18e8132f5a6/src/cp.js
 *
 * @param     source    source path
 * @param     dest      destination path
 * @param     options   optional. See CopyOptions.
 */
function cp(source, dest, options = {}) {
    return __awaiter(this, void 0, void 0, function* () {
        const { force, recursive } = readCopyOptions(options);
        const destStat = (yield ioUtil.exists(dest)) ? yield ioUtil.stat(dest) : null;
        // Dest is an existing file, but not forcing
        if (destStat && destStat.isFile() && !force) {
            return;
        }
        // If dest is an existing directory, should copy inside.
        const newDest = destStat && destStat.isDirectory()
            ? path.join(dest, path.basename(source))
            : dest;
        if (!(yield ioUtil.exists(source))) {
            throw new Error(`no such file or directory: ${source}`);
        }
        const sourceStat = yield ioUtil.stat(source);
        if (sourceStat.isDirectory()) {
            if (!recursive) {
                throw new Error(`Failed to copy. ${source} is a directory, but tried to copy without recursive flag.`);
            }
            else {
                yield cpDirRecursive(source, newDest, 0, force);
            }
        }
        else {
            if (path.relative(source, newDest) === '') {
                // a file cannot be copied to itself
                throw new Error(`'${newDest}' and '${source}' are the same file`);
            }
            yield copyFile(source, newDest, force);
        }
    });
}
exports.cp = cp;
/**
 * Moves a path.
 *
 * @param     source    source path
 * @param     dest      destination path
 * @param     options   optional. See MoveOptions.
 */
function mv(source, dest, options = {}) {
    return __awaiter(this, void 0, void 0, function* () {
        if (yield ioUtil.exists(dest)) {
            let destExists = true;
            if (yield ioUtil.isDirectory(dest)) {
                // If dest is directory copy src into dest
                dest = path.join(dest, path.basename(source));
                destExists = yield ioUtil.exists(dest);
            }
            if (destExists) {
                if (options.force == null || options.force) {
                    yield rmRF(dest);
                }
                else {
                    throw new Error('Destination already exists');
                }
            }
        }
        yield mkdirP(path.dirname(dest));
        yield ioUtil.rename(source, dest);
    });
}
exports.mv = mv;
/**
 * Remove a path recursively with force
 *
 * @param inputPath path to remove
 */
function rmRF(inputPath) {
    return __awaiter(this, void 0, void 0, function* () {
        if (ioUtil.IS_WINDOWS) {
            // Node doesn't provide a delete operation, only an unlink function. This means that if the file is being used by another
            // program (e.g. antivirus), it won't be deleted. To address this, we shell out the work to rd/del.
            try {
                if (yield ioUtil.isDirectory(inputPath, true)) {
                    yield exec(`rd /s /q "${inputPath}"`);
                }
                else {
                    yield exec(`del /f /a "${inputPath}"`);
                }
            }
            catch (err) {
                // if you try to delete a file that doesn't exist, desired result is achieved
                // other errors are valid
                if (err.code !== 'ENOENT')
                    throw err;
            }
            // Shelling out fails to remove a symlink folder with missing source, this unlink catches that
            try {
                yield ioUtil.unlink(inputPath);
            }
            catch (err) {
                // if you try to delete a file that doesn't exist, desired result is achieved
                // other errors are valid
                if (err.code !== 'ENOENT')
                    throw err;
            }
        }
        else {
            let isDir = false;
            try {
                isDir = yield ioUtil.isDirectory(inputPath);
            }
            catch (err) {
                // if you try to delete a file that doesn't exist, desired result is achieved
                // other errors are valid
                if (err.code !== 'ENOENT')
                    throw err;
                return;
            }
            if (isDir) {
                yield exec(`rm -rf "${inputPath}"`);
            }
            else {
                yield ioUtil.unlink(inputPath);
            }
        }
    });
}
exports.rmRF = rmRF;
/**
 * Make a directory.  Creates the full path with folders in between
 * Will throw if it fails
 *
 * @param   fsPath        path to create
 * @returns Promise<void>
 */
function mkdirP(fsPath) {
    return __awaiter(this, void 0, void 0, function* () {
        yield ioUtil.mkdirP(fsPath);
    });
}
exports.mkdirP = mkdirP;
/**
 * Returns path of a tool had the tool actually been invoked.  Resolves via paths.
 * If you check and the tool does not exist, it will throw.
 *
 * @param     tool              name of the tool
 * @param     check             whether to check if tool exists
 * @returns   Promise<string>   path to tool
 */
function which(tool, check) {
    return __awaiter(this, void 0, void 0, function* () {
        if (!tool) {
            throw new Error("parameter 'tool' is required");
        }
        // recursive when check=true
        if (check) {
            const result = yield which(tool, false);
            if (!result) {
                if (ioUtil.IS_WINDOWS) {
                    throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`);
                }
                else {
                    throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`);
                }
            }
            return result;
        }
        const matches = yield findInPath(tool);
        if (matches && matches.length > 0) {
            return matches[0];
        }
        return '';
    });
}
exports.which = which;
/**
 * Returns a list of all occurrences of the given tool on the system path.
 *
 * @returns   Promise<string[]>  the paths of the tool
 */
function findInPath(tool) {
    return __awaiter(this, void 0, void 0, function* () {
        if (!tool) {
            throw new Error("parameter 'tool' is required");
        }
        // build the list of extensions to try
        const extensions = [];
        if (ioUtil.IS_WINDOWS && process.env['PATHEXT']) {
            for (const extension of process.env['PATHEXT'].split(path.delimiter)) {
                if (extension) {
                    extensions.push(extension);
                }
            }
        }
        // if it's rooted, return it if exists. otherwise return empty.
        if (ioUtil.isRooted(tool)) {
            const filePath = yield ioUtil.tryGetExecutablePath(tool, extensions);
            if (filePath) {
                return [filePath];
            }
            return [];
        }
        // if any path separators, return empty
        if (tool.includes(path.sep)) {
            return [];
        }
        // build the list of directories
        //
        // Note, technically "where" checks the current directory on Windows. From a toolkit perspective,
        // it feels like we should not do this. Checking the current directory seems like more of a use
        // case of a shell, and the which() function exposed by the toolkit should strive for consistency
        // across platforms.
        const directories = [];
        if (process.env.PATH) {
            for (const p of process.env.PATH.split(path.delimiter)) {
                if (p) {
                    directories.push(p);
                }
            }
        }
        // find all matches
        const matches = [];
        for (const directory of directories) {
            const filePath = yield ioUtil.tryGetExecutablePath(path.join(directory, tool), extensions);
            if (filePath) {
                matches.push(filePath);
            }
        }
        return matches;
    });
}
exports.findInPath = findInPath;
function readCopyOptions(options) {
    const force = options.force == null ? true : options.force;
    const recursive = Boolean(options.recursive);
    return { force, recursive };
}
function cpDirRecursive(sourceDir, destDir, currentDepth, force) {
    return __awaiter(this, void 0, void 0, function* () {
        // Ensure there is not a run away recursive copy
        if (currentDepth >= 255)
            return;
        currentDepth++;
        yield mkdirP(destDir);
        const files = yield ioUtil.readdir(sourceDir);
        for (const fileName of files) {
            const srcFile = `${sourceDir}/${fileName}`;
            const destFile = `${destDir}/${fileName}`;
            const srcFileStat = yield ioUtil.lstat(srcFile);
            if (srcFileStat.isDirectory()) {
                // Recurse
                yield cpDirRecursive(srcFile, destFile, currentDepth, force);
            }
            else {
                yield copyFile(srcFile, destFile, force);
            }
        }
        // Change the mode for the newly created directory
        yield ioUtil.chmod(destDir, (yield ioUtil.stat(sourceDir)).mode);
    });
}
// Buffered file copy
function copyFile(srcFile, destFile, force) {
    return __awaiter(this, void 0, void 0, function* () {
        if ((yield ioUtil.lstat(srcFile)).isSymbolicLink()) {
            // unlink/re-link it
            try {
                yield ioUtil.lstat(destFile);
                yield ioUtil.unlink(destFile);
            }
            catch (e) {
                // Try to override file permission
                if (e.code === 'EPERM') {
                    yield ioUtil.chmod(destFile, '0666');
                    yield ioUtil.unlink(destFile);
                }
                // other errors = it doesn't exist, no work to do
            }
            // Copy over symlink
            const symlinkFull = yield ioUtil.readlink(srcFile);
            yield ioUtil.symlink(symlinkFull, destFile, ioUtil.IS_WINDOWS ? 'junction' : null);
        }
        else if (!(yield ioUtil.exists(destFile)) || force) {
            yield ioUtil.copyFile(srcFile, destFile);
        }
    });
}
//# sourceMappingURL=io.js.map

/***/ }),

/***/ 56664:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

/**
 * Kubernetes
 * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
 *
 * OpenAPI spec version: v1.13.7
 *
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */
Object.defineProperty(exports, "__esModule", ({ value: true }));
const localVarRequest = __webpack_require__(48699);
let defaultBasePath = 'https://localhost';
// ===============================================
// This file is autogenerated - Please do not edit
// ===============================================
/* tslint:disable:no-unused-variable */
let primitives = [
    "string",
    "boolean",
    "double",
    "integer",
    "long",
    "float",
    "number",
    "any"
];
class ObjectSerializer {
    static findCorrectType(data, expectedType) {
        if (data == undefined) {
            return expectedType;
        }
        else if (primitives.indexOf(expectedType.toLowerCase()) !== -1) {
            return expectedType;
        }
        else if (expectedType === "Date") {
            return expectedType;
        }
        else {
            if (enumsMap[expectedType]) {
                return expectedType;
            }
            if (!typeMap[expectedType]) {
                return expectedType; // w/e we don't know the type
            }
            // Check the discriminator
            let discriminatorProperty = typeMap[expectedType].discriminator;
            if (discriminatorProperty == null) {
                return expectedType; // the type does not have a discriminator. use it.
            }
            else {
                if (data[discriminatorProperty]) {
                    return data[discriminatorProperty]; // use the type given in the discriminator
                }
                else {
                    return expectedType; // discriminator was not present (or an empty string)
                }
            }
        }
    }
    static serialize(data, type) {
        if (data == undefined) {
            return data;
        }
        else if (primitives.indexOf(type.toLowerCase()) !== -1) {
            return data;
        }
        else if (type.lastIndexOf("Array<", 0) === 0) { // string.startsWith pre es6
            let subType = type.replace("Array<", ""); // Array<Type> => Type>
            subType = subType.substring(0, subType.length - 1); // Type> => Type
            let transformedData = [];
            for (let index in data) {
                let date = data[index];
                transformedData.push(ObjectSerializer.serialize(date, subType));
            }
            return transformedData;
        }
        else if (type === "Date") {
            return data.toString();
        }
        else {
            if (enumsMap[type]) {
                return data;
            }
            if (!typeMap[type]) { // in case we dont know the type
                return data;
            }
            // get the map for the correct type.
            let attributeTypes = typeMap[type].getAttributeTypeMap();
            let instance = {};
            for (let index in attributeTypes) {
                let attributeType = attributeTypes[index];
                instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type);
            }
            return instance;
        }
    }
    static deserialize(data, type) {
        // polymorphism may change the actual type.
        type = ObjectSerializer.findCorrectType(data, type);
        if (data == undefined) {
            return data;
        }
        else if (primitives.indexOf(type.toLowerCase()) !== -1) {
            return data;
        }
        else if (type.lastIndexOf("Array<", 0) === 0) { // string.startsWith pre es6
            let subType = type.replace("Array<", ""); // Array<Type> => Type>
            subType = subType.substring(0, subType.length - 1); // Type> => Type
            let transformedData = [];
            for (let index in data) {
                let date = data[index];
                transformedData.push(ObjectSerializer.deserialize(date, subType));
            }
            return transformedData;
        }
        else if (type === "Date") {
            return new Date(data);
        }
        else {
            if (enumsMap[type]) { // is Enum
                return data;
            }
            if (!typeMap[type]) { // dont know the type
                return data;
            }
            let instance = new typeMap[type]();
            let attributeTypes = typeMap[type].getAttributeTypeMap();
            for (let index in attributeTypes) {
                let attributeType = attributeTypes[index];
                instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type);
            }
            return instance;
        }
    }
}
/**
* ServiceReference holds a reference to Service.legacy.k8s.io
*/
class AdmissionregistrationV1beta1ServiceReference {
    static getAttributeTypeMap() {
        return AdmissionregistrationV1beta1ServiceReference.attributeTypeMap;
    }
}
AdmissionregistrationV1beta1ServiceReference.discriminator = undefined;
AdmissionregistrationV1beta1ServiceReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.AdmissionregistrationV1beta1ServiceReference = AdmissionregistrationV1beta1ServiceReference;
/**
* WebhookClientConfig contains the information to make a TLS connection with the webhook
*/
class AdmissionregistrationV1beta1WebhookClientConfig {
    static getAttributeTypeMap() {
        return AdmissionregistrationV1beta1WebhookClientConfig.attributeTypeMap;
    }
}
AdmissionregistrationV1beta1WebhookClientConfig.discriminator = undefined;
AdmissionregistrationV1beta1WebhookClientConfig.attributeTypeMap = [
    {
        "name": "caBundle",
        "baseName": "caBundle",
        "type": "string"
    },
    {
        "name": "service",
        "baseName": "service",
        "type": "AdmissionregistrationV1beta1ServiceReference"
    },
    {
        "name": "url",
        "baseName": "url",
        "type": "string"
    }
];
exports.AdmissionregistrationV1beta1WebhookClientConfig = AdmissionregistrationV1beta1WebhookClientConfig;
/**
* ServiceReference holds a reference to Service.legacy.k8s.io
*/
class ApiextensionsV1beta1ServiceReference {
    static getAttributeTypeMap() {
        return ApiextensionsV1beta1ServiceReference.attributeTypeMap;
    }
}
ApiextensionsV1beta1ServiceReference.discriminator = undefined;
ApiextensionsV1beta1ServiceReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.ApiextensionsV1beta1ServiceReference = ApiextensionsV1beta1ServiceReference;
/**
* WebhookClientConfig contains the information to make a TLS connection with the webhook. It has the same field as admissionregistration.v1beta1.WebhookClientConfig.
*/
class ApiextensionsV1beta1WebhookClientConfig {
    static getAttributeTypeMap() {
        return ApiextensionsV1beta1WebhookClientConfig.attributeTypeMap;
    }
}
ApiextensionsV1beta1WebhookClientConfig.discriminator = undefined;
ApiextensionsV1beta1WebhookClientConfig.attributeTypeMap = [
    {
        "name": "caBundle",
        "baseName": "caBundle",
        "type": "string"
    },
    {
        "name": "service",
        "baseName": "service",
        "type": "ApiextensionsV1beta1ServiceReference"
    },
    {
        "name": "url",
        "baseName": "url",
        "type": "string"
    }
];
exports.ApiextensionsV1beta1WebhookClientConfig = ApiextensionsV1beta1WebhookClientConfig;
/**
* ServiceReference holds a reference to Service.legacy.k8s.io
*/
class ApiregistrationV1beta1ServiceReference {
    static getAttributeTypeMap() {
        return ApiregistrationV1beta1ServiceReference.attributeTypeMap;
    }
}
ApiregistrationV1beta1ServiceReference.discriminator = undefined;
ApiregistrationV1beta1ServiceReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.ApiregistrationV1beta1ServiceReference = ApiregistrationV1beta1ServiceReference;
/**
* DEPRECATED - This group version of Deployment is deprecated by apps/v1beta2/Deployment. See the release notes for more information. Deployment enables declarative updates for Pods and ReplicaSets.
*/
class AppsV1beta1Deployment {
    static getAttributeTypeMap() {
        return AppsV1beta1Deployment.attributeTypeMap;
    }
}
AppsV1beta1Deployment.discriminator = undefined;
AppsV1beta1Deployment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "AppsV1beta1DeploymentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "AppsV1beta1DeploymentStatus"
    }
];
exports.AppsV1beta1Deployment = AppsV1beta1Deployment;
/**
* DeploymentCondition describes the state of a deployment at a certain point.
*/
class AppsV1beta1DeploymentCondition {
    static getAttributeTypeMap() {
        return AppsV1beta1DeploymentCondition.attributeTypeMap;
    }
}
AppsV1beta1DeploymentCondition.discriminator = undefined;
AppsV1beta1DeploymentCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "lastUpdateTime",
        "baseName": "lastUpdateTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.AppsV1beta1DeploymentCondition = AppsV1beta1DeploymentCondition;
/**
* DeploymentList is a list of Deployments.
*/
class AppsV1beta1DeploymentList {
    static getAttributeTypeMap() {
        return AppsV1beta1DeploymentList.attributeTypeMap;
    }
}
AppsV1beta1DeploymentList.discriminator = undefined;
AppsV1beta1DeploymentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<AppsV1beta1Deployment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.AppsV1beta1DeploymentList = AppsV1beta1DeploymentList;
/**
* DEPRECATED. DeploymentRollback stores the information required to rollback a deployment.
*/
class AppsV1beta1DeploymentRollback {
    static getAttributeTypeMap() {
        return AppsV1beta1DeploymentRollback.attributeTypeMap;
    }
}
AppsV1beta1DeploymentRollback.discriminator = undefined;
AppsV1beta1DeploymentRollback.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "rollbackTo",
        "baseName": "rollbackTo",
        "type": "AppsV1beta1RollbackConfig"
    },
    {
        "name": "updatedAnnotations",
        "baseName": "updatedAnnotations",
        "type": "{ [key: string]: string; }"
    }
];
exports.AppsV1beta1DeploymentRollback = AppsV1beta1DeploymentRollback;
/**
* DeploymentSpec is the specification of the desired behavior of the Deployment.
*/
class AppsV1beta1DeploymentSpec {
    static getAttributeTypeMap() {
        return AppsV1beta1DeploymentSpec.attributeTypeMap;
    }
}
AppsV1beta1DeploymentSpec.discriminator = undefined;
AppsV1beta1DeploymentSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "paused",
        "baseName": "paused",
        "type": "boolean"
    },
    {
        "name": "progressDeadlineSeconds",
        "baseName": "progressDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "rollbackTo",
        "baseName": "rollbackTo",
        "type": "AppsV1beta1RollbackConfig"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "strategy",
        "baseName": "strategy",
        "type": "AppsV1beta1DeploymentStrategy"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.AppsV1beta1DeploymentSpec = AppsV1beta1DeploymentSpec;
/**
* DeploymentStatus is the most recently observed status of the Deployment.
*/
class AppsV1beta1DeploymentStatus {
    static getAttributeTypeMap() {
        return AppsV1beta1DeploymentStatus.attributeTypeMap;
    }
}
AppsV1beta1DeploymentStatus.discriminator = undefined;
AppsV1beta1DeploymentStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<AppsV1beta1DeploymentCondition>"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "unavailableReplicas",
        "baseName": "unavailableReplicas",
        "type": "number"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.AppsV1beta1DeploymentStatus = AppsV1beta1DeploymentStatus;
/**
* DeploymentStrategy describes how to replace existing pods with new ones.
*/
class AppsV1beta1DeploymentStrategy {
    static getAttributeTypeMap() {
        return AppsV1beta1DeploymentStrategy.attributeTypeMap;
    }
}
AppsV1beta1DeploymentStrategy.discriminator = undefined;
AppsV1beta1DeploymentStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "AppsV1beta1RollingUpdateDeployment"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.AppsV1beta1DeploymentStrategy = AppsV1beta1DeploymentStrategy;
/**
* DEPRECATED.
*/
class AppsV1beta1RollbackConfig {
    static getAttributeTypeMap() {
        return AppsV1beta1RollbackConfig.attributeTypeMap;
    }
}
AppsV1beta1RollbackConfig.discriminator = undefined;
AppsV1beta1RollbackConfig.attributeTypeMap = [
    {
        "name": "revision",
        "baseName": "revision",
        "type": "number"
    }
];
exports.AppsV1beta1RollbackConfig = AppsV1beta1RollbackConfig;
/**
* Spec to control the desired behavior of rolling update.
*/
class AppsV1beta1RollingUpdateDeployment {
    static getAttributeTypeMap() {
        return AppsV1beta1RollingUpdateDeployment.attributeTypeMap;
    }
}
AppsV1beta1RollingUpdateDeployment.discriminator = undefined;
AppsV1beta1RollingUpdateDeployment.attributeTypeMap = [
    {
        "name": "maxSurge",
        "baseName": "maxSurge",
        "type": "any"
    },
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.AppsV1beta1RollingUpdateDeployment = AppsV1beta1RollingUpdateDeployment;
/**
* Scale represents a scaling request for a resource.
*/
class AppsV1beta1Scale {
    static getAttributeTypeMap() {
        return AppsV1beta1Scale.attributeTypeMap;
    }
}
AppsV1beta1Scale.discriminator = undefined;
AppsV1beta1Scale.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "AppsV1beta1ScaleSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "AppsV1beta1ScaleStatus"
    }
];
exports.AppsV1beta1Scale = AppsV1beta1Scale;
/**
* ScaleSpec describes the attributes of a scale subresource
*/
class AppsV1beta1ScaleSpec {
    static getAttributeTypeMap() {
        return AppsV1beta1ScaleSpec.attributeTypeMap;
    }
}
AppsV1beta1ScaleSpec.discriminator = undefined;
AppsV1beta1ScaleSpec.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.AppsV1beta1ScaleSpec = AppsV1beta1ScaleSpec;
/**
* ScaleStatus represents the current status of a scale subresource.
*/
class AppsV1beta1ScaleStatus {
    static getAttributeTypeMap() {
        return AppsV1beta1ScaleStatus.attributeTypeMap;
    }
}
AppsV1beta1ScaleStatus.discriminator = undefined;
AppsV1beta1ScaleStatus.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "targetSelector",
        "baseName": "targetSelector",
        "type": "string"
    }
];
exports.AppsV1beta1ScaleStatus = AppsV1beta1ScaleStatus;
/**
* AllowedFlexVolume represents a single Flexvolume that is allowed to be used. Deprecated: use AllowedFlexVolume from policy API Group instead.
*/
class ExtensionsV1beta1AllowedFlexVolume {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1AllowedFlexVolume.attributeTypeMap;
    }
}
ExtensionsV1beta1AllowedFlexVolume.discriminator = undefined;
ExtensionsV1beta1AllowedFlexVolume.attributeTypeMap = [
    {
        "name": "driver",
        "baseName": "driver",
        "type": "string"
    }
];
exports.ExtensionsV1beta1AllowedFlexVolume = ExtensionsV1beta1AllowedFlexVolume;
/**
* AllowedHostPath defines the host volume conditions that will be enabled by a policy for pods to use. It requires the path prefix to be defined. Deprecated: use AllowedHostPath from policy API Group instead.
*/
class ExtensionsV1beta1AllowedHostPath {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1AllowedHostPath.attributeTypeMap;
    }
}
ExtensionsV1beta1AllowedHostPath.discriminator = undefined;
ExtensionsV1beta1AllowedHostPath.attributeTypeMap = [
    {
        "name": "pathPrefix",
        "baseName": "pathPrefix",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.ExtensionsV1beta1AllowedHostPath = ExtensionsV1beta1AllowedHostPath;
/**
* DEPRECATED - This group version of Deployment is deprecated by apps/v1beta2/Deployment. See the release notes for more information. Deployment enables declarative updates for Pods and ReplicaSets.
*/
class ExtensionsV1beta1Deployment {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1Deployment.attributeTypeMap;
    }
}
ExtensionsV1beta1Deployment.discriminator = undefined;
ExtensionsV1beta1Deployment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "ExtensionsV1beta1DeploymentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "ExtensionsV1beta1DeploymentStatus"
    }
];
exports.ExtensionsV1beta1Deployment = ExtensionsV1beta1Deployment;
/**
* DeploymentCondition describes the state of a deployment at a certain point.
*/
class ExtensionsV1beta1DeploymentCondition {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1DeploymentCondition.attributeTypeMap;
    }
}
ExtensionsV1beta1DeploymentCondition.discriminator = undefined;
ExtensionsV1beta1DeploymentCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "lastUpdateTime",
        "baseName": "lastUpdateTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.ExtensionsV1beta1DeploymentCondition = ExtensionsV1beta1DeploymentCondition;
/**
* DeploymentList is a list of Deployments.
*/
class ExtensionsV1beta1DeploymentList {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1DeploymentList.attributeTypeMap;
    }
}
ExtensionsV1beta1DeploymentList.discriminator = undefined;
ExtensionsV1beta1DeploymentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<ExtensionsV1beta1Deployment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.ExtensionsV1beta1DeploymentList = ExtensionsV1beta1DeploymentList;
/**
* DEPRECATED. DeploymentRollback stores the information required to rollback a deployment.
*/
class ExtensionsV1beta1DeploymentRollback {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1DeploymentRollback.attributeTypeMap;
    }
}
ExtensionsV1beta1DeploymentRollback.discriminator = undefined;
ExtensionsV1beta1DeploymentRollback.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "rollbackTo",
        "baseName": "rollbackTo",
        "type": "ExtensionsV1beta1RollbackConfig"
    },
    {
        "name": "updatedAnnotations",
        "baseName": "updatedAnnotations",
        "type": "{ [key: string]: string; }"
    }
];
exports.ExtensionsV1beta1DeploymentRollback = ExtensionsV1beta1DeploymentRollback;
/**
* DeploymentSpec is the specification of the desired behavior of the Deployment.
*/
class ExtensionsV1beta1DeploymentSpec {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1DeploymentSpec.attributeTypeMap;
    }
}
ExtensionsV1beta1DeploymentSpec.discriminator = undefined;
ExtensionsV1beta1DeploymentSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "paused",
        "baseName": "paused",
        "type": "boolean"
    },
    {
        "name": "progressDeadlineSeconds",
        "baseName": "progressDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "rollbackTo",
        "baseName": "rollbackTo",
        "type": "ExtensionsV1beta1RollbackConfig"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "strategy",
        "baseName": "strategy",
        "type": "ExtensionsV1beta1DeploymentStrategy"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.ExtensionsV1beta1DeploymentSpec = ExtensionsV1beta1DeploymentSpec;
/**
* DeploymentStatus is the most recently observed status of the Deployment.
*/
class ExtensionsV1beta1DeploymentStatus {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1DeploymentStatus.attributeTypeMap;
    }
}
ExtensionsV1beta1DeploymentStatus.discriminator = undefined;
ExtensionsV1beta1DeploymentStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<ExtensionsV1beta1DeploymentCondition>"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "unavailableReplicas",
        "baseName": "unavailableReplicas",
        "type": "number"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.ExtensionsV1beta1DeploymentStatus = ExtensionsV1beta1DeploymentStatus;
/**
* DeploymentStrategy describes how to replace existing pods with new ones.
*/
class ExtensionsV1beta1DeploymentStrategy {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1DeploymentStrategy.attributeTypeMap;
    }
}
ExtensionsV1beta1DeploymentStrategy.discriminator = undefined;
ExtensionsV1beta1DeploymentStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "ExtensionsV1beta1RollingUpdateDeployment"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.ExtensionsV1beta1DeploymentStrategy = ExtensionsV1beta1DeploymentStrategy;
/**
* FSGroupStrategyOptions defines the strategy type and options used to create the strategy. Deprecated: use FSGroupStrategyOptions from policy API Group instead.
*/
class ExtensionsV1beta1FSGroupStrategyOptions {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1FSGroupStrategyOptions.attributeTypeMap;
    }
}
ExtensionsV1beta1FSGroupStrategyOptions.discriminator = undefined;
ExtensionsV1beta1FSGroupStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<ExtensionsV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.ExtensionsV1beta1FSGroupStrategyOptions = ExtensionsV1beta1FSGroupStrategyOptions;
/**
* HostPortRange defines a range of host ports that will be enabled by a policy for pods to use.  It requires both the start and end to be defined. Deprecated: use HostPortRange from policy API Group instead.
*/
class ExtensionsV1beta1HostPortRange {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1HostPortRange.attributeTypeMap;
    }
}
ExtensionsV1beta1HostPortRange.discriminator = undefined;
ExtensionsV1beta1HostPortRange.attributeTypeMap = [
    {
        "name": "max",
        "baseName": "max",
        "type": "number"
    },
    {
        "name": "min",
        "baseName": "min",
        "type": "number"
    }
];
exports.ExtensionsV1beta1HostPortRange = ExtensionsV1beta1HostPortRange;
/**
* IDRange provides a min/max of an allowed range of IDs. Deprecated: use IDRange from policy API Group instead.
*/
class ExtensionsV1beta1IDRange {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1IDRange.attributeTypeMap;
    }
}
ExtensionsV1beta1IDRange.discriminator = undefined;
ExtensionsV1beta1IDRange.attributeTypeMap = [
    {
        "name": "max",
        "baseName": "max",
        "type": "number"
    },
    {
        "name": "min",
        "baseName": "min",
        "type": "number"
    }
];
exports.ExtensionsV1beta1IDRange = ExtensionsV1beta1IDRange;
/**
* PodSecurityPolicy governs the ability to make requests that affect the Security Context that will be applied to a pod and container. Deprecated: use PodSecurityPolicy from policy API Group instead.
*/
class ExtensionsV1beta1PodSecurityPolicy {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1PodSecurityPolicy.attributeTypeMap;
    }
}
ExtensionsV1beta1PodSecurityPolicy.discriminator = undefined;
ExtensionsV1beta1PodSecurityPolicy.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "ExtensionsV1beta1PodSecurityPolicySpec"
    }
];
exports.ExtensionsV1beta1PodSecurityPolicy = ExtensionsV1beta1PodSecurityPolicy;
/**
* PodSecurityPolicyList is a list of PodSecurityPolicy objects. Deprecated: use PodSecurityPolicyList from policy API Group instead.
*/
class ExtensionsV1beta1PodSecurityPolicyList {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1PodSecurityPolicyList.attributeTypeMap;
    }
}
ExtensionsV1beta1PodSecurityPolicyList.discriminator = undefined;
ExtensionsV1beta1PodSecurityPolicyList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<ExtensionsV1beta1PodSecurityPolicy>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.ExtensionsV1beta1PodSecurityPolicyList = ExtensionsV1beta1PodSecurityPolicyList;
/**
* PodSecurityPolicySpec defines the policy enforced. Deprecated: use PodSecurityPolicySpec from policy API Group instead.
*/
class ExtensionsV1beta1PodSecurityPolicySpec {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1PodSecurityPolicySpec.attributeTypeMap;
    }
}
ExtensionsV1beta1PodSecurityPolicySpec.discriminator = undefined;
ExtensionsV1beta1PodSecurityPolicySpec.attributeTypeMap = [
    {
        "name": "allowPrivilegeEscalation",
        "baseName": "allowPrivilegeEscalation",
        "type": "boolean"
    },
    {
        "name": "allowedCapabilities",
        "baseName": "allowedCapabilities",
        "type": "Array<string>"
    },
    {
        "name": "allowedFlexVolumes",
        "baseName": "allowedFlexVolumes",
        "type": "Array<ExtensionsV1beta1AllowedFlexVolume>"
    },
    {
        "name": "allowedHostPaths",
        "baseName": "allowedHostPaths",
        "type": "Array<ExtensionsV1beta1AllowedHostPath>"
    },
    {
        "name": "allowedProcMountTypes",
        "baseName": "allowedProcMountTypes",
        "type": "Array<string>"
    },
    {
        "name": "allowedUnsafeSysctls",
        "baseName": "allowedUnsafeSysctls",
        "type": "Array<string>"
    },
    {
        "name": "defaultAddCapabilities",
        "baseName": "defaultAddCapabilities",
        "type": "Array<string>"
    },
    {
        "name": "defaultAllowPrivilegeEscalation",
        "baseName": "defaultAllowPrivilegeEscalation",
        "type": "boolean"
    },
    {
        "name": "forbiddenSysctls",
        "baseName": "forbiddenSysctls",
        "type": "Array<string>"
    },
    {
        "name": "fsGroup",
        "baseName": "fsGroup",
        "type": "ExtensionsV1beta1FSGroupStrategyOptions"
    },
    {
        "name": "hostIPC",
        "baseName": "hostIPC",
        "type": "boolean"
    },
    {
        "name": "hostNetwork",
        "baseName": "hostNetwork",
        "type": "boolean"
    },
    {
        "name": "hostPID",
        "baseName": "hostPID",
        "type": "boolean"
    },
    {
        "name": "hostPorts",
        "baseName": "hostPorts",
        "type": "Array<ExtensionsV1beta1HostPortRange>"
    },
    {
        "name": "privileged",
        "baseName": "privileged",
        "type": "boolean"
    },
    {
        "name": "readOnlyRootFilesystem",
        "baseName": "readOnlyRootFilesystem",
        "type": "boolean"
    },
    {
        "name": "requiredDropCapabilities",
        "baseName": "requiredDropCapabilities",
        "type": "Array<string>"
    },
    {
        "name": "runAsGroup",
        "baseName": "runAsGroup",
        "type": "ExtensionsV1beta1RunAsGroupStrategyOptions"
    },
    {
        "name": "runAsUser",
        "baseName": "runAsUser",
        "type": "ExtensionsV1beta1RunAsUserStrategyOptions"
    },
    {
        "name": "seLinux",
        "baseName": "seLinux",
        "type": "ExtensionsV1beta1SELinuxStrategyOptions"
    },
    {
        "name": "supplementalGroups",
        "baseName": "supplementalGroups",
        "type": "ExtensionsV1beta1SupplementalGroupsStrategyOptions"
    },
    {
        "name": "volumes",
        "baseName": "volumes",
        "type": "Array<string>"
    }
];
exports.ExtensionsV1beta1PodSecurityPolicySpec = ExtensionsV1beta1PodSecurityPolicySpec;
/**
* DEPRECATED.
*/
class ExtensionsV1beta1RollbackConfig {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1RollbackConfig.attributeTypeMap;
    }
}
ExtensionsV1beta1RollbackConfig.discriminator = undefined;
ExtensionsV1beta1RollbackConfig.attributeTypeMap = [
    {
        "name": "revision",
        "baseName": "revision",
        "type": "number"
    }
];
exports.ExtensionsV1beta1RollbackConfig = ExtensionsV1beta1RollbackConfig;
/**
* Spec to control the desired behavior of rolling update.
*/
class ExtensionsV1beta1RollingUpdateDeployment {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1RollingUpdateDeployment.attributeTypeMap;
    }
}
ExtensionsV1beta1RollingUpdateDeployment.discriminator = undefined;
ExtensionsV1beta1RollingUpdateDeployment.attributeTypeMap = [
    {
        "name": "maxSurge",
        "baseName": "maxSurge",
        "type": "any"
    },
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.ExtensionsV1beta1RollingUpdateDeployment = ExtensionsV1beta1RollingUpdateDeployment;
/**
* RunAsGroupStrategyOptions defines the strategy type and any options used to create the strategy. Deprecated: use RunAsGroupStrategyOptions from policy API Group instead.
*/
class ExtensionsV1beta1RunAsGroupStrategyOptions {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1RunAsGroupStrategyOptions.attributeTypeMap;
    }
}
ExtensionsV1beta1RunAsGroupStrategyOptions.discriminator = undefined;
ExtensionsV1beta1RunAsGroupStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<ExtensionsV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.ExtensionsV1beta1RunAsGroupStrategyOptions = ExtensionsV1beta1RunAsGroupStrategyOptions;
/**
* RunAsUserStrategyOptions defines the strategy type and any options used to create the strategy. Deprecated: use RunAsUserStrategyOptions from policy API Group instead.
*/
class ExtensionsV1beta1RunAsUserStrategyOptions {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1RunAsUserStrategyOptions.attributeTypeMap;
    }
}
ExtensionsV1beta1RunAsUserStrategyOptions.discriminator = undefined;
ExtensionsV1beta1RunAsUserStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<ExtensionsV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.ExtensionsV1beta1RunAsUserStrategyOptions = ExtensionsV1beta1RunAsUserStrategyOptions;
/**
* SELinuxStrategyOptions defines the strategy type and any options used to create the strategy. Deprecated: use SELinuxStrategyOptions from policy API Group instead.
*/
class ExtensionsV1beta1SELinuxStrategyOptions {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1SELinuxStrategyOptions.attributeTypeMap;
    }
}
ExtensionsV1beta1SELinuxStrategyOptions.discriminator = undefined;
ExtensionsV1beta1SELinuxStrategyOptions.attributeTypeMap = [
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    },
    {
        "name": "seLinuxOptions",
        "baseName": "seLinuxOptions",
        "type": "V1SELinuxOptions"
    }
];
exports.ExtensionsV1beta1SELinuxStrategyOptions = ExtensionsV1beta1SELinuxStrategyOptions;
/**
* represents a scaling request for a resource.
*/
class ExtensionsV1beta1Scale {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1Scale.attributeTypeMap;
    }
}
ExtensionsV1beta1Scale.discriminator = undefined;
ExtensionsV1beta1Scale.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "ExtensionsV1beta1ScaleSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "ExtensionsV1beta1ScaleStatus"
    }
];
exports.ExtensionsV1beta1Scale = ExtensionsV1beta1Scale;
/**
* describes the attributes of a scale subresource
*/
class ExtensionsV1beta1ScaleSpec {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1ScaleSpec.attributeTypeMap;
    }
}
ExtensionsV1beta1ScaleSpec.discriminator = undefined;
ExtensionsV1beta1ScaleSpec.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.ExtensionsV1beta1ScaleSpec = ExtensionsV1beta1ScaleSpec;
/**
* represents the current status of a scale subresource.
*/
class ExtensionsV1beta1ScaleStatus {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1ScaleStatus.attributeTypeMap;
    }
}
ExtensionsV1beta1ScaleStatus.discriminator = undefined;
ExtensionsV1beta1ScaleStatus.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "targetSelector",
        "baseName": "targetSelector",
        "type": "string"
    }
];
exports.ExtensionsV1beta1ScaleStatus = ExtensionsV1beta1ScaleStatus;
/**
* SupplementalGroupsStrategyOptions defines the strategy type and options used to create the strategy. Deprecated: use SupplementalGroupsStrategyOptions from policy API Group instead.
*/
class ExtensionsV1beta1SupplementalGroupsStrategyOptions {
    static getAttributeTypeMap() {
        return ExtensionsV1beta1SupplementalGroupsStrategyOptions.attributeTypeMap;
    }
}
ExtensionsV1beta1SupplementalGroupsStrategyOptions.discriminator = undefined;
ExtensionsV1beta1SupplementalGroupsStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<ExtensionsV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.ExtensionsV1beta1SupplementalGroupsStrategyOptions = ExtensionsV1beta1SupplementalGroupsStrategyOptions;
/**
* AllowedFlexVolume represents a single Flexvolume that is allowed to be used.
*/
class PolicyV1beta1AllowedFlexVolume {
    static getAttributeTypeMap() {
        return PolicyV1beta1AllowedFlexVolume.attributeTypeMap;
    }
}
PolicyV1beta1AllowedFlexVolume.discriminator = undefined;
PolicyV1beta1AllowedFlexVolume.attributeTypeMap = [
    {
        "name": "driver",
        "baseName": "driver",
        "type": "string"
    }
];
exports.PolicyV1beta1AllowedFlexVolume = PolicyV1beta1AllowedFlexVolume;
/**
* AllowedHostPath defines the host volume conditions that will be enabled by a policy for pods to use. It requires the path prefix to be defined.
*/
class PolicyV1beta1AllowedHostPath {
    static getAttributeTypeMap() {
        return PolicyV1beta1AllowedHostPath.attributeTypeMap;
    }
}
PolicyV1beta1AllowedHostPath.discriminator = undefined;
PolicyV1beta1AllowedHostPath.attributeTypeMap = [
    {
        "name": "pathPrefix",
        "baseName": "pathPrefix",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.PolicyV1beta1AllowedHostPath = PolicyV1beta1AllowedHostPath;
/**
* FSGroupStrategyOptions defines the strategy type and options used to create the strategy.
*/
class PolicyV1beta1FSGroupStrategyOptions {
    static getAttributeTypeMap() {
        return PolicyV1beta1FSGroupStrategyOptions.attributeTypeMap;
    }
}
PolicyV1beta1FSGroupStrategyOptions.discriminator = undefined;
PolicyV1beta1FSGroupStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<PolicyV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.PolicyV1beta1FSGroupStrategyOptions = PolicyV1beta1FSGroupStrategyOptions;
/**
* HostPortRange defines a range of host ports that will be enabled by a policy for pods to use.  It requires both the start and end to be defined.
*/
class PolicyV1beta1HostPortRange {
    static getAttributeTypeMap() {
        return PolicyV1beta1HostPortRange.attributeTypeMap;
    }
}
PolicyV1beta1HostPortRange.discriminator = undefined;
PolicyV1beta1HostPortRange.attributeTypeMap = [
    {
        "name": "max",
        "baseName": "max",
        "type": "number"
    },
    {
        "name": "min",
        "baseName": "min",
        "type": "number"
    }
];
exports.PolicyV1beta1HostPortRange = PolicyV1beta1HostPortRange;
/**
* IDRange provides a min/max of an allowed range of IDs.
*/
class PolicyV1beta1IDRange {
    static getAttributeTypeMap() {
        return PolicyV1beta1IDRange.attributeTypeMap;
    }
}
PolicyV1beta1IDRange.discriminator = undefined;
PolicyV1beta1IDRange.attributeTypeMap = [
    {
        "name": "max",
        "baseName": "max",
        "type": "number"
    },
    {
        "name": "min",
        "baseName": "min",
        "type": "number"
    }
];
exports.PolicyV1beta1IDRange = PolicyV1beta1IDRange;
/**
* PodSecurityPolicy governs the ability to make requests that affect the Security Context that will be applied to a pod and container.
*/
class PolicyV1beta1PodSecurityPolicy {
    static getAttributeTypeMap() {
        return PolicyV1beta1PodSecurityPolicy.attributeTypeMap;
    }
}
PolicyV1beta1PodSecurityPolicy.discriminator = undefined;
PolicyV1beta1PodSecurityPolicy.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "PolicyV1beta1PodSecurityPolicySpec"
    }
];
exports.PolicyV1beta1PodSecurityPolicy = PolicyV1beta1PodSecurityPolicy;
/**
* PodSecurityPolicyList is a list of PodSecurityPolicy objects.
*/
class PolicyV1beta1PodSecurityPolicyList {
    static getAttributeTypeMap() {
        return PolicyV1beta1PodSecurityPolicyList.attributeTypeMap;
    }
}
PolicyV1beta1PodSecurityPolicyList.discriminator = undefined;
PolicyV1beta1PodSecurityPolicyList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<PolicyV1beta1PodSecurityPolicy>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.PolicyV1beta1PodSecurityPolicyList = PolicyV1beta1PodSecurityPolicyList;
/**
* PodSecurityPolicySpec defines the policy enforced.
*/
class PolicyV1beta1PodSecurityPolicySpec {
    static getAttributeTypeMap() {
        return PolicyV1beta1PodSecurityPolicySpec.attributeTypeMap;
    }
}
PolicyV1beta1PodSecurityPolicySpec.discriminator = undefined;
PolicyV1beta1PodSecurityPolicySpec.attributeTypeMap = [
    {
        "name": "allowPrivilegeEscalation",
        "baseName": "allowPrivilegeEscalation",
        "type": "boolean"
    },
    {
        "name": "allowedCapabilities",
        "baseName": "allowedCapabilities",
        "type": "Array<string>"
    },
    {
        "name": "allowedFlexVolumes",
        "baseName": "allowedFlexVolumes",
        "type": "Array<PolicyV1beta1AllowedFlexVolume>"
    },
    {
        "name": "allowedHostPaths",
        "baseName": "allowedHostPaths",
        "type": "Array<PolicyV1beta1AllowedHostPath>"
    },
    {
        "name": "allowedProcMountTypes",
        "baseName": "allowedProcMountTypes",
        "type": "Array<string>"
    },
    {
        "name": "allowedUnsafeSysctls",
        "baseName": "allowedUnsafeSysctls",
        "type": "Array<string>"
    },
    {
        "name": "defaultAddCapabilities",
        "baseName": "defaultAddCapabilities",
        "type": "Array<string>"
    },
    {
        "name": "defaultAllowPrivilegeEscalation",
        "baseName": "defaultAllowPrivilegeEscalation",
        "type": "boolean"
    },
    {
        "name": "forbiddenSysctls",
        "baseName": "forbiddenSysctls",
        "type": "Array<string>"
    },
    {
        "name": "fsGroup",
        "baseName": "fsGroup",
        "type": "PolicyV1beta1FSGroupStrategyOptions"
    },
    {
        "name": "hostIPC",
        "baseName": "hostIPC",
        "type": "boolean"
    },
    {
        "name": "hostNetwork",
        "baseName": "hostNetwork",
        "type": "boolean"
    },
    {
        "name": "hostPID",
        "baseName": "hostPID",
        "type": "boolean"
    },
    {
        "name": "hostPorts",
        "baseName": "hostPorts",
        "type": "Array<PolicyV1beta1HostPortRange>"
    },
    {
        "name": "privileged",
        "baseName": "privileged",
        "type": "boolean"
    },
    {
        "name": "readOnlyRootFilesystem",
        "baseName": "readOnlyRootFilesystem",
        "type": "boolean"
    },
    {
        "name": "requiredDropCapabilities",
        "baseName": "requiredDropCapabilities",
        "type": "Array<string>"
    },
    {
        "name": "runAsGroup",
        "baseName": "runAsGroup",
        "type": "PolicyV1beta1RunAsGroupStrategyOptions"
    },
    {
        "name": "runAsUser",
        "baseName": "runAsUser",
        "type": "PolicyV1beta1RunAsUserStrategyOptions"
    },
    {
        "name": "seLinux",
        "baseName": "seLinux",
        "type": "PolicyV1beta1SELinuxStrategyOptions"
    },
    {
        "name": "supplementalGroups",
        "baseName": "supplementalGroups",
        "type": "PolicyV1beta1SupplementalGroupsStrategyOptions"
    },
    {
        "name": "volumes",
        "baseName": "volumes",
        "type": "Array<string>"
    }
];
exports.PolicyV1beta1PodSecurityPolicySpec = PolicyV1beta1PodSecurityPolicySpec;
/**
* RunAsGroupStrategyOptions defines the strategy type and any options used to create the strategy.
*/
class PolicyV1beta1RunAsGroupStrategyOptions {
    static getAttributeTypeMap() {
        return PolicyV1beta1RunAsGroupStrategyOptions.attributeTypeMap;
    }
}
PolicyV1beta1RunAsGroupStrategyOptions.discriminator = undefined;
PolicyV1beta1RunAsGroupStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<PolicyV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.PolicyV1beta1RunAsGroupStrategyOptions = PolicyV1beta1RunAsGroupStrategyOptions;
/**
* RunAsUserStrategyOptions defines the strategy type and any options used to create the strategy.
*/
class PolicyV1beta1RunAsUserStrategyOptions {
    static getAttributeTypeMap() {
        return PolicyV1beta1RunAsUserStrategyOptions.attributeTypeMap;
    }
}
PolicyV1beta1RunAsUserStrategyOptions.discriminator = undefined;
PolicyV1beta1RunAsUserStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<PolicyV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.PolicyV1beta1RunAsUserStrategyOptions = PolicyV1beta1RunAsUserStrategyOptions;
/**
* SELinuxStrategyOptions defines the strategy type and any options used to create the strategy.
*/
class PolicyV1beta1SELinuxStrategyOptions {
    static getAttributeTypeMap() {
        return PolicyV1beta1SELinuxStrategyOptions.attributeTypeMap;
    }
}
PolicyV1beta1SELinuxStrategyOptions.discriminator = undefined;
PolicyV1beta1SELinuxStrategyOptions.attributeTypeMap = [
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    },
    {
        "name": "seLinuxOptions",
        "baseName": "seLinuxOptions",
        "type": "V1SELinuxOptions"
    }
];
exports.PolicyV1beta1SELinuxStrategyOptions = PolicyV1beta1SELinuxStrategyOptions;
/**
* SupplementalGroupsStrategyOptions defines the strategy type and options used to create the strategy.
*/
class PolicyV1beta1SupplementalGroupsStrategyOptions {
    static getAttributeTypeMap() {
        return PolicyV1beta1SupplementalGroupsStrategyOptions.attributeTypeMap;
    }
}
PolicyV1beta1SupplementalGroupsStrategyOptions.discriminator = undefined;
PolicyV1beta1SupplementalGroupsStrategyOptions.attributeTypeMap = [
    {
        "name": "ranges",
        "baseName": "ranges",
        "type": "Array<PolicyV1beta1IDRange>"
    },
    {
        "name": "rule",
        "baseName": "rule",
        "type": "string"
    }
];
exports.PolicyV1beta1SupplementalGroupsStrategyOptions = PolicyV1beta1SupplementalGroupsStrategyOptions;
/**
* RawExtension is used to hold extensions in external versions.  To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.  // Internal package: type MyAPIObject struct {  runtime.TypeMeta `json:\",inline\"`  MyPlugin runtime.Object `json:\"myPlugin\"` } type PluginA struct {  AOption string `json:\"aOption\"` }  // External package: type MyAPIObject struct {  runtime.TypeMeta `json:\",inline\"`  MyPlugin runtime.RawExtension `json:\"myPlugin\"` } type PluginA struct {  AOption string `json:\"aOption\"` }  // On the wire, the JSON will look something like this: {  \"kind\":\"MyAPIObject\",  \"apiVersion\":\"v1\",  \"myPlugin\": {   \"kind\":\"PluginA\",   \"aOption\":\"foo\",  }, }  So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)
*/
class RuntimeRawExtension {
    static getAttributeTypeMap() {
        return RuntimeRawExtension.attributeTypeMap;
    }
}
RuntimeRawExtension.discriminator = undefined;
RuntimeRawExtension.attributeTypeMap = [
    {
        "name": "raw",
        "baseName": "Raw",
        "type": "string"
    }
];
exports.RuntimeRawExtension = RuntimeRawExtension;
/**
* APIGroup contains the name, the supported versions, and the preferred version of a group.
*/
class V1APIGroup {
    static getAttributeTypeMap() {
        return V1APIGroup.attributeTypeMap;
    }
}
V1APIGroup.discriminator = undefined;
V1APIGroup.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "preferredVersion",
        "baseName": "preferredVersion",
        "type": "V1GroupVersionForDiscovery"
    },
    {
        "name": "serverAddressByClientCIDRs",
        "baseName": "serverAddressByClientCIDRs",
        "type": "Array<V1ServerAddressByClientCIDR>"
    },
    {
        "name": "versions",
        "baseName": "versions",
        "type": "Array<V1GroupVersionForDiscovery>"
    }
];
exports.V1APIGroup = V1APIGroup;
/**
* APIGroupList is a list of APIGroup, to allow clients to discover the API at /apis.
*/
class V1APIGroupList {
    static getAttributeTypeMap() {
        return V1APIGroupList.attributeTypeMap;
    }
}
V1APIGroupList.discriminator = undefined;
V1APIGroupList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "groups",
        "baseName": "groups",
        "type": "Array<V1APIGroup>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    }
];
exports.V1APIGroupList = V1APIGroupList;
/**
* APIResource specifies the name of a resource and whether it is namespaced.
*/
class V1APIResource {
    static getAttributeTypeMap() {
        return V1APIResource.attributeTypeMap;
    }
}
V1APIResource.discriminator = undefined;
V1APIResource.attributeTypeMap = [
    {
        "name": "categories",
        "baseName": "categories",
        "type": "Array<string>"
    },
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespaced",
        "baseName": "namespaced",
        "type": "boolean"
    },
    {
        "name": "shortNames",
        "baseName": "shortNames",
        "type": "Array<string>"
    },
    {
        "name": "singularName",
        "baseName": "singularName",
        "type": "string"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    }
];
exports.V1APIResource = V1APIResource;
/**
* APIResourceList is a list of APIResource, it is used to expose the name of the resources supported in a specific group and version, and if the resource is namespaced.
*/
class V1APIResourceList {
    static getAttributeTypeMap() {
        return V1APIResourceList.attributeTypeMap;
    }
}
V1APIResourceList.discriminator = undefined;
V1APIResourceList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "groupVersion",
        "baseName": "groupVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<V1APIResource>"
    }
];
exports.V1APIResourceList = V1APIResourceList;
/**
* APIService represents a server for a particular GroupVersion. Name must be \"version.group\".
*/
class V1APIService {
    static getAttributeTypeMap() {
        return V1APIService.attributeTypeMap;
    }
}
V1APIService.discriminator = undefined;
V1APIService.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1APIServiceSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1APIServiceStatus"
    }
];
exports.V1APIService = V1APIService;
class V1APIServiceCondition {
    static getAttributeTypeMap() {
        return V1APIServiceCondition.attributeTypeMap;
    }
}
V1APIServiceCondition.discriminator = undefined;
V1APIServiceCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1APIServiceCondition = V1APIServiceCondition;
/**
* APIServiceList is a list of APIService objects.
*/
class V1APIServiceList {
    static getAttributeTypeMap() {
        return V1APIServiceList.attributeTypeMap;
    }
}
V1APIServiceList.discriminator = undefined;
V1APIServiceList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1APIService>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1APIServiceList = V1APIServiceList;
/**
* APIServiceSpec contains information for locating and communicating with a server. Only https is supported, though you are able to disable certificate verification.
*/
class V1APIServiceSpec {
    static getAttributeTypeMap() {
        return V1APIServiceSpec.attributeTypeMap;
    }
}
V1APIServiceSpec.discriminator = undefined;
V1APIServiceSpec.attributeTypeMap = [
    {
        "name": "caBundle",
        "baseName": "caBundle",
        "type": "string"
    },
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "groupPriorityMinimum",
        "baseName": "groupPriorityMinimum",
        "type": "number"
    },
    {
        "name": "insecureSkipTLSVerify",
        "baseName": "insecureSkipTLSVerify",
        "type": "boolean"
    },
    {
        "name": "service",
        "baseName": "service",
        "type": "V1ServiceReference"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    },
    {
        "name": "versionPriority",
        "baseName": "versionPriority",
        "type": "number"
    }
];
exports.V1APIServiceSpec = V1APIServiceSpec;
/**
* APIServiceStatus contains derived information about an API server
*/
class V1APIServiceStatus {
    static getAttributeTypeMap() {
        return V1APIServiceStatus.attributeTypeMap;
    }
}
V1APIServiceStatus.discriminator = undefined;
V1APIServiceStatus.attributeTypeMap = [
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1APIServiceCondition>"
    }
];
exports.V1APIServiceStatus = V1APIServiceStatus;
/**
* APIVersions lists the versions that are available, to allow clients to discover the API at /api, which is the root path of the legacy v1 API.
*/
class V1APIVersions {
    static getAttributeTypeMap() {
        return V1APIVersions.attributeTypeMap;
    }
}
V1APIVersions.discriminator = undefined;
V1APIVersions.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "serverAddressByClientCIDRs",
        "baseName": "serverAddressByClientCIDRs",
        "type": "Array<V1ServerAddressByClientCIDR>"
    },
    {
        "name": "versions",
        "baseName": "versions",
        "type": "Array<string>"
    }
];
exports.V1APIVersions = V1APIVersions;
/**
* Represents a Persistent Disk resource in AWS.  An AWS EBS disk must exist before mounting to a container. The disk must also be in the same AWS zone as the kubelet. An AWS EBS disk can only be mounted as read/write once. AWS EBS volumes support ownership management and SELinux relabeling.
*/
class V1AWSElasticBlockStoreVolumeSource {
    static getAttributeTypeMap() {
        return V1AWSElasticBlockStoreVolumeSource.attributeTypeMap;
    }
}
V1AWSElasticBlockStoreVolumeSource.discriminator = undefined;
V1AWSElasticBlockStoreVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "partition",
        "baseName": "partition",
        "type": "number"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "volumeID",
        "baseName": "volumeID",
        "type": "string"
    }
];
exports.V1AWSElasticBlockStoreVolumeSource = V1AWSElasticBlockStoreVolumeSource;
/**
* Affinity is a group of affinity scheduling rules.
*/
class V1Affinity {
    static getAttributeTypeMap() {
        return V1Affinity.attributeTypeMap;
    }
}
V1Affinity.discriminator = undefined;
V1Affinity.attributeTypeMap = [
    {
        "name": "nodeAffinity",
        "baseName": "nodeAffinity",
        "type": "V1NodeAffinity"
    },
    {
        "name": "podAffinity",
        "baseName": "podAffinity",
        "type": "V1PodAffinity"
    },
    {
        "name": "podAntiAffinity",
        "baseName": "podAntiAffinity",
        "type": "V1PodAntiAffinity"
    }
];
exports.V1Affinity = V1Affinity;
/**
* AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole
*/
class V1AggregationRule {
    static getAttributeTypeMap() {
        return V1AggregationRule.attributeTypeMap;
    }
}
V1AggregationRule.discriminator = undefined;
V1AggregationRule.attributeTypeMap = [
    {
        "name": "clusterRoleSelectors",
        "baseName": "clusterRoleSelectors",
        "type": "Array<V1LabelSelector>"
    }
];
exports.V1AggregationRule = V1AggregationRule;
/**
* AttachedVolume describes a volume attached to a node
*/
class V1AttachedVolume {
    static getAttributeTypeMap() {
        return V1AttachedVolume.attributeTypeMap;
    }
}
V1AttachedVolume.discriminator = undefined;
V1AttachedVolume.attributeTypeMap = [
    {
        "name": "devicePath",
        "baseName": "devicePath",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1AttachedVolume = V1AttachedVolume;
/**
* AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.
*/
class V1AzureDiskVolumeSource {
    static getAttributeTypeMap() {
        return V1AzureDiskVolumeSource.attributeTypeMap;
    }
}
V1AzureDiskVolumeSource.discriminator = undefined;
V1AzureDiskVolumeSource.attributeTypeMap = [
    {
        "name": "cachingMode",
        "baseName": "cachingMode",
        "type": "string"
    },
    {
        "name": "diskName",
        "baseName": "diskName",
        "type": "string"
    },
    {
        "name": "diskURI",
        "baseName": "diskURI",
        "type": "string"
    },
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.V1AzureDiskVolumeSource = V1AzureDiskVolumeSource;
/**
* AzureFile represents an Azure File Service mount on the host and bind mount to the pod.
*/
class V1AzureFilePersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1AzureFilePersistentVolumeSource.attributeTypeMap;
    }
}
V1AzureFilePersistentVolumeSource.discriminator = undefined;
V1AzureFilePersistentVolumeSource.attributeTypeMap = [
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretName",
        "baseName": "secretName",
        "type": "string"
    },
    {
        "name": "secretNamespace",
        "baseName": "secretNamespace",
        "type": "string"
    },
    {
        "name": "shareName",
        "baseName": "shareName",
        "type": "string"
    }
];
exports.V1AzureFilePersistentVolumeSource = V1AzureFilePersistentVolumeSource;
/**
* AzureFile represents an Azure File Service mount on the host and bind mount to the pod.
*/
class V1AzureFileVolumeSource {
    static getAttributeTypeMap() {
        return V1AzureFileVolumeSource.attributeTypeMap;
    }
}
V1AzureFileVolumeSource.discriminator = undefined;
V1AzureFileVolumeSource.attributeTypeMap = [
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretName",
        "baseName": "secretName",
        "type": "string"
    },
    {
        "name": "shareName",
        "baseName": "shareName",
        "type": "string"
    }
];
exports.V1AzureFileVolumeSource = V1AzureFileVolumeSource;
/**
* Binding ties one object to another; for example, a pod is bound to a node by a scheduler. Deprecated in 1.7, please use the bindings subresource of pods instead.
*/
class V1Binding {
    static getAttributeTypeMap() {
        return V1Binding.attributeTypeMap;
    }
}
V1Binding.discriminator = undefined;
V1Binding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V1ObjectReference"
    }
];
exports.V1Binding = V1Binding;
/**
* Represents storage that is managed by an external CSI volume driver (Beta feature)
*/
class V1CSIPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1CSIPersistentVolumeSource.attributeTypeMap;
    }
}
V1CSIPersistentVolumeSource.discriminator = undefined;
V1CSIPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "controllerPublishSecretRef",
        "baseName": "controllerPublishSecretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "driver",
        "baseName": "driver",
        "type": "string"
    },
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "nodePublishSecretRef",
        "baseName": "nodePublishSecretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "nodeStageSecretRef",
        "baseName": "nodeStageSecretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "volumeAttributes",
        "baseName": "volumeAttributes",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "volumeHandle",
        "baseName": "volumeHandle",
        "type": "string"
    }
];
exports.V1CSIPersistentVolumeSource = V1CSIPersistentVolumeSource;
/**
* Adds and removes POSIX capabilities from running containers.
*/
class V1Capabilities {
    static getAttributeTypeMap() {
        return V1Capabilities.attributeTypeMap;
    }
}
V1Capabilities.discriminator = undefined;
V1Capabilities.attributeTypeMap = [
    {
        "name": "add",
        "baseName": "add",
        "type": "Array<string>"
    },
    {
        "name": "drop",
        "baseName": "drop",
        "type": "Array<string>"
    }
];
exports.V1Capabilities = V1Capabilities;
/**
* Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not support ownership management or SELinux relabeling.
*/
class V1CephFSPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1CephFSPersistentVolumeSource.attributeTypeMap;
    }
}
V1CephFSPersistentVolumeSource.discriminator = undefined;
V1CephFSPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "monitors",
        "baseName": "monitors",
        "type": "Array<string>"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretFile",
        "baseName": "secretFile",
        "type": "string"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1CephFSPersistentVolumeSource = V1CephFSPersistentVolumeSource;
/**
* Represents a Ceph Filesystem mount that lasts the lifetime of a pod Cephfs volumes do not support ownership management or SELinux relabeling.
*/
class V1CephFSVolumeSource {
    static getAttributeTypeMap() {
        return V1CephFSVolumeSource.attributeTypeMap;
    }
}
V1CephFSVolumeSource.discriminator = undefined;
V1CephFSVolumeSource.attributeTypeMap = [
    {
        "name": "monitors",
        "baseName": "monitors",
        "type": "Array<string>"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretFile",
        "baseName": "secretFile",
        "type": "string"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1CephFSVolumeSource = V1CephFSVolumeSource;
/**
* Represents a cinder volume resource in Openstack. A Cinder volume must exist before mounting to a container. The volume must also be in the same region as the kubelet. Cinder volumes support ownership management and SELinux relabeling.
*/
class V1CinderPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1CinderPersistentVolumeSource.attributeTypeMap;
    }
}
V1CinderPersistentVolumeSource.discriminator = undefined;
V1CinderPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "volumeID",
        "baseName": "volumeID",
        "type": "string"
    }
];
exports.V1CinderPersistentVolumeSource = V1CinderPersistentVolumeSource;
/**
* Represents a cinder volume resource in Openstack. A Cinder volume must exist before mounting to a container. The volume must also be in the same region as the kubelet. Cinder volumes support ownership management and SELinux relabeling.
*/
class V1CinderVolumeSource {
    static getAttributeTypeMap() {
        return V1CinderVolumeSource.attributeTypeMap;
    }
}
V1CinderVolumeSource.discriminator = undefined;
V1CinderVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    },
    {
        "name": "volumeID",
        "baseName": "volumeID",
        "type": "string"
    }
];
exports.V1CinderVolumeSource = V1CinderVolumeSource;
/**
* ClientIPConfig represents the configurations of Client IP based session affinity.
*/
class V1ClientIPConfig {
    static getAttributeTypeMap() {
        return V1ClientIPConfig.attributeTypeMap;
    }
}
V1ClientIPConfig.discriminator = undefined;
V1ClientIPConfig.attributeTypeMap = [
    {
        "name": "timeoutSeconds",
        "baseName": "timeoutSeconds",
        "type": "number"
    }
];
exports.V1ClientIPConfig = V1ClientIPConfig;
/**
* ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.
*/
class V1ClusterRole {
    static getAttributeTypeMap() {
        return V1ClusterRole.attributeTypeMap;
    }
}
V1ClusterRole.discriminator = undefined;
V1ClusterRole.attributeTypeMap = [
    {
        "name": "aggregationRule",
        "baseName": "aggregationRule",
        "type": "V1AggregationRule"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1PolicyRule>"
    }
];
exports.V1ClusterRole = V1ClusterRole;
/**
* ClusterRoleBinding references a ClusterRole, but not contain it.  It can reference a ClusterRole in the global namespace, and adds who information via Subject.
*/
class V1ClusterRoleBinding {
    static getAttributeTypeMap() {
        return V1ClusterRoleBinding.attributeTypeMap;
    }
}
V1ClusterRoleBinding.discriminator = undefined;
V1ClusterRoleBinding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "roleRef",
        "baseName": "roleRef",
        "type": "V1RoleRef"
    },
    {
        "name": "subjects",
        "baseName": "subjects",
        "type": "Array<V1Subject>"
    }
];
exports.V1ClusterRoleBinding = V1ClusterRoleBinding;
/**
* ClusterRoleBindingList is a collection of ClusterRoleBindings
*/
class V1ClusterRoleBindingList {
    static getAttributeTypeMap() {
        return V1ClusterRoleBindingList.attributeTypeMap;
    }
}
V1ClusterRoleBindingList.discriminator = undefined;
V1ClusterRoleBindingList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ClusterRoleBinding>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ClusterRoleBindingList = V1ClusterRoleBindingList;
/**
* ClusterRoleList is a collection of ClusterRoles
*/
class V1ClusterRoleList {
    static getAttributeTypeMap() {
        return V1ClusterRoleList.attributeTypeMap;
    }
}
V1ClusterRoleList.discriminator = undefined;
V1ClusterRoleList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ClusterRole>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ClusterRoleList = V1ClusterRoleList;
/**
* Information about the condition of a component.
*/
class V1ComponentCondition {
    static getAttributeTypeMap() {
        return V1ComponentCondition.attributeTypeMap;
    }
}
V1ComponentCondition.discriminator = undefined;
V1ComponentCondition.attributeTypeMap = [
    {
        "name": "error",
        "baseName": "error",
        "type": "string"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1ComponentCondition = V1ComponentCondition;
/**
* ComponentStatus (and ComponentStatusList) holds the cluster validation info.
*/
class V1ComponentStatus {
    static getAttributeTypeMap() {
        return V1ComponentStatus.attributeTypeMap;
    }
}
V1ComponentStatus.discriminator = undefined;
V1ComponentStatus.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1ComponentCondition>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    }
];
exports.V1ComponentStatus = V1ComponentStatus;
/**
* Status of all the conditions for the component as a list of ComponentStatus objects.
*/
class V1ComponentStatusList {
    static getAttributeTypeMap() {
        return V1ComponentStatusList.attributeTypeMap;
    }
}
V1ComponentStatusList.discriminator = undefined;
V1ComponentStatusList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ComponentStatus>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ComponentStatusList = V1ComponentStatusList;
/**
* ConfigMap holds configuration data for pods to consume.
*/
class V1ConfigMap {
    static getAttributeTypeMap() {
        return V1ConfigMap.attributeTypeMap;
    }
}
V1ConfigMap.discriminator = undefined;
V1ConfigMap.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "binaryData",
        "baseName": "binaryData",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "data",
        "baseName": "data",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    }
];
exports.V1ConfigMap = V1ConfigMap;
/**
* ConfigMapEnvSource selects a ConfigMap to populate the environment variables with.  The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.
*/
class V1ConfigMapEnvSource {
    static getAttributeTypeMap() {
        return V1ConfigMapEnvSource.attributeTypeMap;
    }
}
V1ConfigMapEnvSource.discriminator = undefined;
V1ConfigMapEnvSource.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1ConfigMapEnvSource = V1ConfigMapEnvSource;
/**
* Selects a key from a ConfigMap.
*/
class V1ConfigMapKeySelector {
    static getAttributeTypeMap() {
        return V1ConfigMapKeySelector.attributeTypeMap;
    }
}
V1ConfigMapKeySelector.discriminator = undefined;
V1ConfigMapKeySelector.attributeTypeMap = [
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1ConfigMapKeySelector = V1ConfigMapKeySelector;
/**
* ConfigMapList is a resource containing a list of ConfigMap objects.
*/
class V1ConfigMapList {
    static getAttributeTypeMap() {
        return V1ConfigMapList.attributeTypeMap;
    }
}
V1ConfigMapList.discriminator = undefined;
V1ConfigMapList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ConfigMap>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ConfigMapList = V1ConfigMapList;
/**
* ConfigMapNodeConfigSource contains the information to reference a ConfigMap as a config source for the Node.
*/
class V1ConfigMapNodeConfigSource {
    static getAttributeTypeMap() {
        return V1ConfigMapNodeConfigSource.attributeTypeMap;
    }
}
V1ConfigMapNodeConfigSource.discriminator = undefined;
V1ConfigMapNodeConfigSource.attributeTypeMap = [
    {
        "name": "kubeletConfigKey",
        "baseName": "kubeletConfigKey",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "resourceVersion",
        "baseName": "resourceVersion",
        "type": "string"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    }
];
exports.V1ConfigMapNodeConfigSource = V1ConfigMapNodeConfigSource;
/**
* Adapts a ConfigMap into a projected volume.  The contents of the target ConfigMap's Data field will be presented in a projected volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. Note that this is identical to a configmap volume source without the default mode.
*/
class V1ConfigMapProjection {
    static getAttributeTypeMap() {
        return V1ConfigMapProjection.attributeTypeMap;
    }
}
V1ConfigMapProjection.discriminator = undefined;
V1ConfigMapProjection.attributeTypeMap = [
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1KeyToPath>"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1ConfigMapProjection = V1ConfigMapProjection;
/**
* Adapts a ConfigMap into a volume.  The contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. ConfigMap volumes support ownership management and SELinux relabeling.
*/
class V1ConfigMapVolumeSource {
    static getAttributeTypeMap() {
        return V1ConfigMapVolumeSource.attributeTypeMap;
    }
}
V1ConfigMapVolumeSource.discriminator = undefined;
V1ConfigMapVolumeSource.attributeTypeMap = [
    {
        "name": "defaultMode",
        "baseName": "defaultMode",
        "type": "number"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1KeyToPath>"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1ConfigMapVolumeSource = V1ConfigMapVolumeSource;
/**
* A single application container that you want to run within a pod.
*/
class V1Container {
    static getAttributeTypeMap() {
        return V1Container.attributeTypeMap;
    }
}
V1Container.discriminator = undefined;
V1Container.attributeTypeMap = [
    {
        "name": "args",
        "baseName": "args",
        "type": "Array<string>"
    },
    {
        "name": "command",
        "baseName": "command",
        "type": "Array<string>"
    },
    {
        "name": "env",
        "baseName": "env",
        "type": "Array<V1EnvVar>"
    },
    {
        "name": "envFrom",
        "baseName": "envFrom",
        "type": "Array<V1EnvFromSource>"
    },
    {
        "name": "image",
        "baseName": "image",
        "type": "string"
    },
    {
        "name": "imagePullPolicy",
        "baseName": "imagePullPolicy",
        "type": "string"
    },
    {
        "name": "lifecycle",
        "baseName": "lifecycle",
        "type": "V1Lifecycle"
    },
    {
        "name": "livenessProbe",
        "baseName": "livenessProbe",
        "type": "V1Probe"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1ContainerPort>"
    },
    {
        "name": "readinessProbe",
        "baseName": "readinessProbe",
        "type": "V1Probe"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "V1ResourceRequirements"
    },
    {
        "name": "securityContext",
        "baseName": "securityContext",
        "type": "V1SecurityContext"
    },
    {
        "name": "stdin",
        "baseName": "stdin",
        "type": "boolean"
    },
    {
        "name": "stdinOnce",
        "baseName": "stdinOnce",
        "type": "boolean"
    },
    {
        "name": "terminationMessagePath",
        "baseName": "terminationMessagePath",
        "type": "string"
    },
    {
        "name": "terminationMessagePolicy",
        "baseName": "terminationMessagePolicy",
        "type": "string"
    },
    {
        "name": "tty",
        "baseName": "tty",
        "type": "boolean"
    },
    {
        "name": "volumeDevices",
        "baseName": "volumeDevices",
        "type": "Array<V1VolumeDevice>"
    },
    {
        "name": "volumeMounts",
        "baseName": "volumeMounts",
        "type": "Array<V1VolumeMount>"
    },
    {
        "name": "workingDir",
        "baseName": "workingDir",
        "type": "string"
    }
];
exports.V1Container = V1Container;
/**
* Describe a container image
*/
class V1ContainerImage {
    static getAttributeTypeMap() {
        return V1ContainerImage.attributeTypeMap;
    }
}
V1ContainerImage.discriminator = undefined;
V1ContainerImage.attributeTypeMap = [
    {
        "name": "names",
        "baseName": "names",
        "type": "Array<string>"
    },
    {
        "name": "sizeBytes",
        "baseName": "sizeBytes",
        "type": "number"
    }
];
exports.V1ContainerImage = V1ContainerImage;
/**
* ContainerPort represents a network port in a single container.
*/
class V1ContainerPort {
    static getAttributeTypeMap() {
        return V1ContainerPort.attributeTypeMap;
    }
}
V1ContainerPort.discriminator = undefined;
V1ContainerPort.attributeTypeMap = [
    {
        "name": "containerPort",
        "baseName": "containerPort",
        "type": "number"
    },
    {
        "name": "hostIP",
        "baseName": "hostIP",
        "type": "string"
    },
    {
        "name": "hostPort",
        "baseName": "hostPort",
        "type": "number"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "protocol",
        "baseName": "protocol",
        "type": "string"
    }
];
exports.V1ContainerPort = V1ContainerPort;
/**
* ContainerState holds a possible state of container. Only one of its members may be specified. If none of them is specified, the default one is ContainerStateWaiting.
*/
class V1ContainerState {
    static getAttributeTypeMap() {
        return V1ContainerState.attributeTypeMap;
    }
}
V1ContainerState.discriminator = undefined;
V1ContainerState.attributeTypeMap = [
    {
        "name": "running",
        "baseName": "running",
        "type": "V1ContainerStateRunning"
    },
    {
        "name": "terminated",
        "baseName": "terminated",
        "type": "V1ContainerStateTerminated"
    },
    {
        "name": "waiting",
        "baseName": "waiting",
        "type": "V1ContainerStateWaiting"
    }
];
exports.V1ContainerState = V1ContainerState;
/**
* ContainerStateRunning is a running state of a container.
*/
class V1ContainerStateRunning {
    static getAttributeTypeMap() {
        return V1ContainerStateRunning.attributeTypeMap;
    }
}
V1ContainerStateRunning.discriminator = undefined;
V1ContainerStateRunning.attributeTypeMap = [
    {
        "name": "startedAt",
        "baseName": "startedAt",
        "type": "Date"
    }
];
exports.V1ContainerStateRunning = V1ContainerStateRunning;
/**
* ContainerStateTerminated is a terminated state of a container.
*/
class V1ContainerStateTerminated {
    static getAttributeTypeMap() {
        return V1ContainerStateTerminated.attributeTypeMap;
    }
}
V1ContainerStateTerminated.discriminator = undefined;
V1ContainerStateTerminated.attributeTypeMap = [
    {
        "name": "containerID",
        "baseName": "containerID",
        "type": "string"
    },
    {
        "name": "exitCode",
        "baseName": "exitCode",
        "type": "number"
    },
    {
        "name": "finishedAt",
        "baseName": "finishedAt",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "signal",
        "baseName": "signal",
        "type": "number"
    },
    {
        "name": "startedAt",
        "baseName": "startedAt",
        "type": "Date"
    }
];
exports.V1ContainerStateTerminated = V1ContainerStateTerminated;
/**
* ContainerStateWaiting is a waiting state of a container.
*/
class V1ContainerStateWaiting {
    static getAttributeTypeMap() {
        return V1ContainerStateWaiting.attributeTypeMap;
    }
}
V1ContainerStateWaiting.discriminator = undefined;
V1ContainerStateWaiting.attributeTypeMap = [
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    }
];
exports.V1ContainerStateWaiting = V1ContainerStateWaiting;
/**
* ContainerStatus contains details for the current status of this container.
*/
class V1ContainerStatus {
    static getAttributeTypeMap() {
        return V1ContainerStatus.attributeTypeMap;
    }
}
V1ContainerStatus.discriminator = undefined;
V1ContainerStatus.attributeTypeMap = [
    {
        "name": "containerID",
        "baseName": "containerID",
        "type": "string"
    },
    {
        "name": "image",
        "baseName": "image",
        "type": "string"
    },
    {
        "name": "imageID",
        "baseName": "imageID",
        "type": "string"
    },
    {
        "name": "lastState",
        "baseName": "lastState",
        "type": "V1ContainerState"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "ready",
        "baseName": "ready",
        "type": "boolean"
    },
    {
        "name": "restartCount",
        "baseName": "restartCount",
        "type": "number"
    },
    {
        "name": "state",
        "baseName": "state",
        "type": "V1ContainerState"
    }
];
exports.V1ContainerStatus = V1ContainerStatus;
/**
* ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.
*/
class V1ControllerRevision {
    static getAttributeTypeMap() {
        return V1ControllerRevision.attributeTypeMap;
    }
}
V1ControllerRevision.discriminator = undefined;
V1ControllerRevision.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "data",
        "baseName": "data",
        "type": "RuntimeRawExtension"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "revision",
        "baseName": "revision",
        "type": "number"
    }
];
exports.V1ControllerRevision = V1ControllerRevision;
/**
* ControllerRevisionList is a resource containing a list of ControllerRevision objects.
*/
class V1ControllerRevisionList {
    static getAttributeTypeMap() {
        return V1ControllerRevisionList.attributeTypeMap;
    }
}
V1ControllerRevisionList.discriminator = undefined;
V1ControllerRevisionList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ControllerRevision>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ControllerRevisionList = V1ControllerRevisionList;
/**
* CrossVersionObjectReference contains enough information to let you identify the referred resource.
*/
class V1CrossVersionObjectReference {
    static getAttributeTypeMap() {
        return V1CrossVersionObjectReference.attributeTypeMap;
    }
}
V1CrossVersionObjectReference.discriminator = undefined;
V1CrossVersionObjectReference.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1CrossVersionObjectReference = V1CrossVersionObjectReference;
/**
* DaemonEndpoint contains information about a single Daemon endpoint.
*/
class V1DaemonEndpoint {
    static getAttributeTypeMap() {
        return V1DaemonEndpoint.attributeTypeMap;
    }
}
V1DaemonEndpoint.discriminator = undefined;
V1DaemonEndpoint.attributeTypeMap = [
    {
        "name": "port",
        "baseName": "Port",
        "type": "number"
    }
];
exports.V1DaemonEndpoint = V1DaemonEndpoint;
/**
* DaemonSet represents the configuration of a daemon set.
*/
class V1DaemonSet {
    static getAttributeTypeMap() {
        return V1DaemonSet.attributeTypeMap;
    }
}
V1DaemonSet.discriminator = undefined;
V1DaemonSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1DaemonSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1DaemonSetStatus"
    }
];
exports.V1DaemonSet = V1DaemonSet;
/**
* DaemonSetCondition describes the state of a DaemonSet at a certain point.
*/
class V1DaemonSetCondition {
    static getAttributeTypeMap() {
        return V1DaemonSetCondition.attributeTypeMap;
    }
}
V1DaemonSetCondition.discriminator = undefined;
V1DaemonSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1DaemonSetCondition = V1DaemonSetCondition;
/**
* DaemonSetList is a collection of daemon sets.
*/
class V1DaemonSetList {
    static getAttributeTypeMap() {
        return V1DaemonSetList.attributeTypeMap;
    }
}
V1DaemonSetList.discriminator = undefined;
V1DaemonSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1DaemonSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1DaemonSetList = V1DaemonSetList;
/**
* DaemonSetSpec is the specification of a daemon set.
*/
class V1DaemonSetSpec {
    static getAttributeTypeMap() {
        return V1DaemonSetSpec.attributeTypeMap;
    }
}
V1DaemonSetSpec.discriminator = undefined;
V1DaemonSetSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "updateStrategy",
        "baseName": "updateStrategy",
        "type": "V1DaemonSetUpdateStrategy"
    }
];
exports.V1DaemonSetSpec = V1DaemonSetSpec;
/**
* DaemonSetStatus represents the current status of a daemon set.
*/
class V1DaemonSetStatus {
    static getAttributeTypeMap() {
        return V1DaemonSetStatus.attributeTypeMap;
    }
}
V1DaemonSetStatus.discriminator = undefined;
V1DaemonSetStatus.attributeTypeMap = [
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1DaemonSetCondition>"
    },
    {
        "name": "currentNumberScheduled",
        "baseName": "currentNumberScheduled",
        "type": "number"
    },
    {
        "name": "desiredNumberScheduled",
        "baseName": "desiredNumberScheduled",
        "type": "number"
    },
    {
        "name": "numberAvailable",
        "baseName": "numberAvailable",
        "type": "number"
    },
    {
        "name": "numberMisscheduled",
        "baseName": "numberMisscheduled",
        "type": "number"
    },
    {
        "name": "numberReady",
        "baseName": "numberReady",
        "type": "number"
    },
    {
        "name": "numberUnavailable",
        "baseName": "numberUnavailable",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "updatedNumberScheduled",
        "baseName": "updatedNumberScheduled",
        "type": "number"
    }
];
exports.V1DaemonSetStatus = V1DaemonSetStatus;
/**
* DaemonSetUpdateStrategy is a struct used to control the update strategy for a DaemonSet.
*/
class V1DaemonSetUpdateStrategy {
    static getAttributeTypeMap() {
        return V1DaemonSetUpdateStrategy.attributeTypeMap;
    }
}
V1DaemonSetUpdateStrategy.discriminator = undefined;
V1DaemonSetUpdateStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1RollingUpdateDaemonSet"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1DaemonSetUpdateStrategy = V1DaemonSetUpdateStrategy;
/**
* DeleteOptions may be provided when deleting an API object.
*/
class V1DeleteOptions {
    static getAttributeTypeMap() {
        return V1DeleteOptions.attributeTypeMap;
    }
}
V1DeleteOptions.discriminator = undefined;
V1DeleteOptions.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "dryRun",
        "baseName": "dryRun",
        "type": "Array<string>"
    },
    {
        "name": "gracePeriodSeconds",
        "baseName": "gracePeriodSeconds",
        "type": "number"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "orphanDependents",
        "baseName": "orphanDependents",
        "type": "boolean"
    },
    {
        "name": "preconditions",
        "baseName": "preconditions",
        "type": "V1Preconditions"
    },
    {
        "name": "propagationPolicy",
        "baseName": "propagationPolicy",
        "type": "string"
    }
];
exports.V1DeleteOptions = V1DeleteOptions;
/**
* Deployment enables declarative updates for Pods and ReplicaSets.
*/
class V1Deployment {
    static getAttributeTypeMap() {
        return V1Deployment.attributeTypeMap;
    }
}
V1Deployment.discriminator = undefined;
V1Deployment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1DeploymentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1DeploymentStatus"
    }
];
exports.V1Deployment = V1Deployment;
/**
* DeploymentCondition describes the state of a deployment at a certain point.
*/
class V1DeploymentCondition {
    static getAttributeTypeMap() {
        return V1DeploymentCondition.attributeTypeMap;
    }
}
V1DeploymentCondition.discriminator = undefined;
V1DeploymentCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "lastUpdateTime",
        "baseName": "lastUpdateTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1DeploymentCondition = V1DeploymentCondition;
/**
* DeploymentList is a list of Deployments.
*/
class V1DeploymentList {
    static getAttributeTypeMap() {
        return V1DeploymentList.attributeTypeMap;
    }
}
V1DeploymentList.discriminator = undefined;
V1DeploymentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Deployment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1DeploymentList = V1DeploymentList;
/**
* DeploymentSpec is the specification of the desired behavior of the Deployment.
*/
class V1DeploymentSpec {
    static getAttributeTypeMap() {
        return V1DeploymentSpec.attributeTypeMap;
    }
}
V1DeploymentSpec.discriminator = undefined;
V1DeploymentSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "paused",
        "baseName": "paused",
        "type": "boolean"
    },
    {
        "name": "progressDeadlineSeconds",
        "baseName": "progressDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "strategy",
        "baseName": "strategy",
        "type": "V1DeploymentStrategy"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1DeploymentSpec = V1DeploymentSpec;
/**
* DeploymentStatus is the most recently observed status of the Deployment.
*/
class V1DeploymentStatus {
    static getAttributeTypeMap() {
        return V1DeploymentStatus.attributeTypeMap;
    }
}
V1DeploymentStatus.discriminator = undefined;
V1DeploymentStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1DeploymentCondition>"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "unavailableReplicas",
        "baseName": "unavailableReplicas",
        "type": "number"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.V1DeploymentStatus = V1DeploymentStatus;
/**
* DeploymentStrategy describes how to replace existing pods with new ones.
*/
class V1DeploymentStrategy {
    static getAttributeTypeMap() {
        return V1DeploymentStrategy.attributeTypeMap;
    }
}
V1DeploymentStrategy.discriminator = undefined;
V1DeploymentStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1RollingUpdateDeployment"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1DeploymentStrategy = V1DeploymentStrategy;
/**
* Represents downward API info for projecting into a projected volume. Note that this is identical to a downwardAPI volume source without the default mode.
*/
class V1DownwardAPIProjection {
    static getAttributeTypeMap() {
        return V1DownwardAPIProjection.attributeTypeMap;
    }
}
V1DownwardAPIProjection.discriminator = undefined;
V1DownwardAPIProjection.attributeTypeMap = [
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1DownwardAPIVolumeFile>"
    }
];
exports.V1DownwardAPIProjection = V1DownwardAPIProjection;
/**
* DownwardAPIVolumeFile represents information to create the file containing the pod field
*/
class V1DownwardAPIVolumeFile {
    static getAttributeTypeMap() {
        return V1DownwardAPIVolumeFile.attributeTypeMap;
    }
}
V1DownwardAPIVolumeFile.discriminator = undefined;
V1DownwardAPIVolumeFile.attributeTypeMap = [
    {
        "name": "fieldRef",
        "baseName": "fieldRef",
        "type": "V1ObjectFieldSelector"
    },
    {
        "name": "mode",
        "baseName": "mode",
        "type": "number"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "resourceFieldRef",
        "baseName": "resourceFieldRef",
        "type": "V1ResourceFieldSelector"
    }
];
exports.V1DownwardAPIVolumeFile = V1DownwardAPIVolumeFile;
/**
* DownwardAPIVolumeSource represents a volume containing downward API info. Downward API volumes support ownership management and SELinux relabeling.
*/
class V1DownwardAPIVolumeSource {
    static getAttributeTypeMap() {
        return V1DownwardAPIVolumeSource.attributeTypeMap;
    }
}
V1DownwardAPIVolumeSource.discriminator = undefined;
V1DownwardAPIVolumeSource.attributeTypeMap = [
    {
        "name": "defaultMode",
        "baseName": "defaultMode",
        "type": "number"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1DownwardAPIVolumeFile>"
    }
];
exports.V1DownwardAPIVolumeSource = V1DownwardAPIVolumeSource;
/**
* Represents an empty directory for a pod. Empty directory volumes support ownership management and SELinux relabeling.
*/
class V1EmptyDirVolumeSource {
    static getAttributeTypeMap() {
        return V1EmptyDirVolumeSource.attributeTypeMap;
    }
}
V1EmptyDirVolumeSource.discriminator = undefined;
V1EmptyDirVolumeSource.attributeTypeMap = [
    {
        "name": "medium",
        "baseName": "medium",
        "type": "string"
    },
    {
        "name": "sizeLimit",
        "baseName": "sizeLimit",
        "type": "string"
    }
];
exports.V1EmptyDirVolumeSource = V1EmptyDirVolumeSource;
/**
* EndpointAddress is a tuple that describes single IP address.
*/
class V1EndpointAddress {
    static getAttributeTypeMap() {
        return V1EndpointAddress.attributeTypeMap;
    }
}
V1EndpointAddress.discriminator = undefined;
V1EndpointAddress.attributeTypeMap = [
    {
        "name": "hostname",
        "baseName": "hostname",
        "type": "string"
    },
    {
        "name": "ip",
        "baseName": "ip",
        "type": "string"
    },
    {
        "name": "nodeName",
        "baseName": "nodeName",
        "type": "string"
    },
    {
        "name": "targetRef",
        "baseName": "targetRef",
        "type": "V1ObjectReference"
    }
];
exports.V1EndpointAddress = V1EndpointAddress;
/**
* EndpointPort is a tuple that describes a single port.
*/
class V1EndpointPort {
    static getAttributeTypeMap() {
        return V1EndpointPort.attributeTypeMap;
    }
}
V1EndpointPort.discriminator = undefined;
V1EndpointPort.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "port",
        "baseName": "port",
        "type": "number"
    },
    {
        "name": "protocol",
        "baseName": "protocol",
        "type": "string"
    }
];
exports.V1EndpointPort = V1EndpointPort;
/**
* EndpointSubset is a group of addresses with a common set of ports. The expanded set of endpoints is the Cartesian product of Addresses x Ports. For example, given:   {     Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],     Ports:     [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]   } The resulting set of endpoints can be viewed as:     a: [ 10.10.1.1:8675, 10.10.2.2:8675 ],     b: [ 10.10.1.1:309, 10.10.2.2:309 ]
*/
class V1EndpointSubset {
    static getAttributeTypeMap() {
        return V1EndpointSubset.attributeTypeMap;
    }
}
V1EndpointSubset.discriminator = undefined;
V1EndpointSubset.attributeTypeMap = [
    {
        "name": "addresses",
        "baseName": "addresses",
        "type": "Array<V1EndpointAddress>"
    },
    {
        "name": "notReadyAddresses",
        "baseName": "notReadyAddresses",
        "type": "Array<V1EndpointAddress>"
    },
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1EndpointPort>"
    }
];
exports.V1EndpointSubset = V1EndpointSubset;
/**
* Endpoints is a collection of endpoints that implement the actual service. Example:   Name: \"mysvc\",   Subsets: [     {       Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],       Ports: [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]     },     {       Addresses: [{\"ip\": \"10.10.3.3\"}],       Ports: [{\"name\": \"a\", \"port\": 93}, {\"name\": \"b\", \"port\": 76}]     },  ]
*/
class V1Endpoints {
    static getAttributeTypeMap() {
        return V1Endpoints.attributeTypeMap;
    }
}
V1Endpoints.discriminator = undefined;
V1Endpoints.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "subsets",
        "baseName": "subsets",
        "type": "Array<V1EndpointSubset>"
    }
];
exports.V1Endpoints = V1Endpoints;
/**
* EndpointsList is a list of endpoints.
*/
class V1EndpointsList {
    static getAttributeTypeMap() {
        return V1EndpointsList.attributeTypeMap;
    }
}
V1EndpointsList.discriminator = undefined;
V1EndpointsList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Endpoints>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1EndpointsList = V1EndpointsList;
/**
* EnvFromSource represents the source of a set of ConfigMaps
*/
class V1EnvFromSource {
    static getAttributeTypeMap() {
        return V1EnvFromSource.attributeTypeMap;
    }
}
V1EnvFromSource.discriminator = undefined;
V1EnvFromSource.attributeTypeMap = [
    {
        "name": "configMapRef",
        "baseName": "configMapRef",
        "type": "V1ConfigMapEnvSource"
    },
    {
        "name": "prefix",
        "baseName": "prefix",
        "type": "string"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretEnvSource"
    }
];
exports.V1EnvFromSource = V1EnvFromSource;
/**
* EnvVar represents an environment variable present in a Container.
*/
class V1EnvVar {
    static getAttributeTypeMap() {
        return V1EnvVar.attributeTypeMap;
    }
}
V1EnvVar.discriminator = undefined;
V1EnvVar.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    },
    {
        "name": "valueFrom",
        "baseName": "valueFrom",
        "type": "V1EnvVarSource"
    }
];
exports.V1EnvVar = V1EnvVar;
/**
* EnvVarSource represents a source for the value of an EnvVar.
*/
class V1EnvVarSource {
    static getAttributeTypeMap() {
        return V1EnvVarSource.attributeTypeMap;
    }
}
V1EnvVarSource.discriminator = undefined;
V1EnvVarSource.attributeTypeMap = [
    {
        "name": "configMapKeyRef",
        "baseName": "configMapKeyRef",
        "type": "V1ConfigMapKeySelector"
    },
    {
        "name": "fieldRef",
        "baseName": "fieldRef",
        "type": "V1ObjectFieldSelector"
    },
    {
        "name": "resourceFieldRef",
        "baseName": "resourceFieldRef",
        "type": "V1ResourceFieldSelector"
    },
    {
        "name": "secretKeyRef",
        "baseName": "secretKeyRef",
        "type": "V1SecretKeySelector"
    }
];
exports.V1EnvVarSource = V1EnvVarSource;
/**
* Event is a report of an event somewhere in the cluster.
*/
class V1Event {
    static getAttributeTypeMap() {
        return V1Event.attributeTypeMap;
    }
}
V1Event.discriminator = undefined;
V1Event.attributeTypeMap = [
    {
        "name": "action",
        "baseName": "action",
        "type": "string"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "count",
        "baseName": "count",
        "type": "number"
    },
    {
        "name": "eventTime",
        "baseName": "eventTime",
        "type": "Date"
    },
    {
        "name": "firstTimestamp",
        "baseName": "firstTimestamp",
        "type": "Date"
    },
    {
        "name": "involvedObject",
        "baseName": "involvedObject",
        "type": "V1ObjectReference"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "lastTimestamp",
        "baseName": "lastTimestamp",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "related",
        "baseName": "related",
        "type": "V1ObjectReference"
    },
    {
        "name": "reportingComponent",
        "baseName": "reportingComponent",
        "type": "string"
    },
    {
        "name": "reportingInstance",
        "baseName": "reportingInstance",
        "type": "string"
    },
    {
        "name": "series",
        "baseName": "series",
        "type": "V1EventSeries"
    },
    {
        "name": "source",
        "baseName": "source",
        "type": "V1EventSource"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1Event = V1Event;
/**
* EventList is a list of events.
*/
class V1EventList {
    static getAttributeTypeMap() {
        return V1EventList.attributeTypeMap;
    }
}
V1EventList.discriminator = undefined;
V1EventList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Event>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1EventList = V1EventList;
/**
* EventSeries contain information on series of events, i.e. thing that was/is happening continuously for some time.
*/
class V1EventSeries {
    static getAttributeTypeMap() {
        return V1EventSeries.attributeTypeMap;
    }
}
V1EventSeries.discriminator = undefined;
V1EventSeries.attributeTypeMap = [
    {
        "name": "count",
        "baseName": "count",
        "type": "number"
    },
    {
        "name": "lastObservedTime",
        "baseName": "lastObservedTime",
        "type": "Date"
    },
    {
        "name": "state",
        "baseName": "state",
        "type": "string"
    }
];
exports.V1EventSeries = V1EventSeries;
/**
* EventSource contains information for an event.
*/
class V1EventSource {
    static getAttributeTypeMap() {
        return V1EventSource.attributeTypeMap;
    }
}
V1EventSource.discriminator = undefined;
V1EventSource.attributeTypeMap = [
    {
        "name": "component",
        "baseName": "component",
        "type": "string"
    },
    {
        "name": "host",
        "baseName": "host",
        "type": "string"
    }
];
exports.V1EventSource = V1EventSource;
/**
* ExecAction describes a \"run in container\" action.
*/
class V1ExecAction {
    static getAttributeTypeMap() {
        return V1ExecAction.attributeTypeMap;
    }
}
V1ExecAction.discriminator = undefined;
V1ExecAction.attributeTypeMap = [
    {
        "name": "command",
        "baseName": "command",
        "type": "Array<string>"
    }
];
exports.V1ExecAction = V1ExecAction;
/**
* Represents a Fibre Channel volume. Fibre Channel volumes can only be mounted as read/write once. Fibre Channel volumes support ownership management and SELinux relabeling.
*/
class V1FCVolumeSource {
    static getAttributeTypeMap() {
        return V1FCVolumeSource.attributeTypeMap;
    }
}
V1FCVolumeSource.discriminator = undefined;
V1FCVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "lun",
        "baseName": "lun",
        "type": "number"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "targetWWNs",
        "baseName": "targetWWNs",
        "type": "Array<string>"
    },
    {
        "name": "wwids",
        "baseName": "wwids",
        "type": "Array<string>"
    }
];
exports.V1FCVolumeSource = V1FCVolumeSource;
/**
* FlexPersistentVolumeSource represents a generic persistent volume resource that is provisioned/attached using an exec based plugin.
*/
class V1FlexPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1FlexPersistentVolumeSource.attributeTypeMap;
    }
}
V1FlexPersistentVolumeSource.discriminator = undefined;
V1FlexPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "driver",
        "baseName": "driver",
        "type": "string"
    },
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "options",
        "baseName": "options",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretReference"
    }
];
exports.V1FlexPersistentVolumeSource = V1FlexPersistentVolumeSource;
/**
* FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin.
*/
class V1FlexVolumeSource {
    static getAttributeTypeMap() {
        return V1FlexVolumeSource.attributeTypeMap;
    }
}
V1FlexVolumeSource.discriminator = undefined;
V1FlexVolumeSource.attributeTypeMap = [
    {
        "name": "driver",
        "baseName": "driver",
        "type": "string"
    },
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "options",
        "baseName": "options",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    }
];
exports.V1FlexVolumeSource = V1FlexVolumeSource;
/**
* Represents a Flocker volume mounted by the Flocker agent. One and only one of datasetName and datasetUUID should be set. Flocker volumes do not support ownership management or SELinux relabeling.
*/
class V1FlockerVolumeSource {
    static getAttributeTypeMap() {
        return V1FlockerVolumeSource.attributeTypeMap;
    }
}
V1FlockerVolumeSource.discriminator = undefined;
V1FlockerVolumeSource.attributeTypeMap = [
    {
        "name": "datasetName",
        "baseName": "datasetName",
        "type": "string"
    },
    {
        "name": "datasetUUID",
        "baseName": "datasetUUID",
        "type": "string"
    }
];
exports.V1FlockerVolumeSource = V1FlockerVolumeSource;
/**
* Represents a Persistent Disk resource in Google Compute Engine.  A GCE PD must exist before mounting to a container. The disk must also be in the same GCE project and zone as the kubelet. A GCE PD can only be mounted as read/write once or read-only many times. GCE PDs support ownership management and SELinux relabeling.
*/
class V1GCEPersistentDiskVolumeSource {
    static getAttributeTypeMap() {
        return V1GCEPersistentDiskVolumeSource.attributeTypeMap;
    }
}
V1GCEPersistentDiskVolumeSource.discriminator = undefined;
V1GCEPersistentDiskVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "partition",
        "baseName": "partition",
        "type": "number"
    },
    {
        "name": "pdName",
        "baseName": "pdName",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.V1GCEPersistentDiskVolumeSource = V1GCEPersistentDiskVolumeSource;
/**
* Represents a volume that is populated with the contents of a git repository. Git repo volumes do not support ownership management. Git repo volumes support SELinux relabeling.  DEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an EmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir into the Pod's container.
*/
class V1GitRepoVolumeSource {
    static getAttributeTypeMap() {
        return V1GitRepoVolumeSource.attributeTypeMap;
    }
}
V1GitRepoVolumeSource.discriminator = undefined;
V1GitRepoVolumeSource.attributeTypeMap = [
    {
        "name": "directory",
        "baseName": "directory",
        "type": "string"
    },
    {
        "name": "repository",
        "baseName": "repository",
        "type": "string"
    },
    {
        "name": "revision",
        "baseName": "revision",
        "type": "string"
    }
];
exports.V1GitRepoVolumeSource = V1GitRepoVolumeSource;
/**
* Represents a Glusterfs mount that lasts the lifetime of a pod. Glusterfs volumes do not support ownership management or SELinux relabeling.
*/
class V1GlusterfsPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1GlusterfsPersistentVolumeSource.attributeTypeMap;
    }
}
V1GlusterfsPersistentVolumeSource.discriminator = undefined;
V1GlusterfsPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "endpoints",
        "baseName": "endpoints",
        "type": "string"
    },
    {
        "name": "endpointsNamespace",
        "baseName": "endpointsNamespace",
        "type": "string"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.V1GlusterfsPersistentVolumeSource = V1GlusterfsPersistentVolumeSource;
/**
* Represents a Glusterfs mount that lasts the lifetime of a pod. Glusterfs volumes do not support ownership management or SELinux relabeling.
*/
class V1GlusterfsVolumeSource {
    static getAttributeTypeMap() {
        return V1GlusterfsVolumeSource.attributeTypeMap;
    }
}
V1GlusterfsVolumeSource.discriminator = undefined;
V1GlusterfsVolumeSource.attributeTypeMap = [
    {
        "name": "endpoints",
        "baseName": "endpoints",
        "type": "string"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.V1GlusterfsVolumeSource = V1GlusterfsVolumeSource;
/**
* GroupVersion contains the \"group/version\" and \"version\" string of a version. It is made a struct to keep extensibility.
*/
class V1GroupVersionForDiscovery {
    static getAttributeTypeMap() {
        return V1GroupVersionForDiscovery.attributeTypeMap;
    }
}
V1GroupVersionForDiscovery.discriminator = undefined;
V1GroupVersionForDiscovery.attributeTypeMap = [
    {
        "name": "groupVersion",
        "baseName": "groupVersion",
        "type": "string"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    }
];
exports.V1GroupVersionForDiscovery = V1GroupVersionForDiscovery;
/**
* HTTPGetAction describes an action based on HTTP Get requests.
*/
class V1HTTPGetAction {
    static getAttributeTypeMap() {
        return V1HTTPGetAction.attributeTypeMap;
    }
}
V1HTTPGetAction.discriminator = undefined;
V1HTTPGetAction.attributeTypeMap = [
    {
        "name": "host",
        "baseName": "host",
        "type": "string"
    },
    {
        "name": "httpHeaders",
        "baseName": "httpHeaders",
        "type": "Array<V1HTTPHeader>"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "port",
        "baseName": "port",
        "type": "any"
    },
    {
        "name": "scheme",
        "baseName": "scheme",
        "type": "string"
    }
];
exports.V1HTTPGetAction = V1HTTPGetAction;
/**
* HTTPHeader describes a custom header to be used in HTTP probes
*/
class V1HTTPHeader {
    static getAttributeTypeMap() {
        return V1HTTPHeader.attributeTypeMap;
    }
}
V1HTTPHeader.discriminator = undefined;
V1HTTPHeader.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V1HTTPHeader = V1HTTPHeader;
/**
* Handler defines a specific action that should be taken
*/
class V1Handler {
    static getAttributeTypeMap() {
        return V1Handler.attributeTypeMap;
    }
}
V1Handler.discriminator = undefined;
V1Handler.attributeTypeMap = [
    {
        "name": "exec",
        "baseName": "exec",
        "type": "V1ExecAction"
    },
    {
        "name": "httpGet",
        "baseName": "httpGet",
        "type": "V1HTTPGetAction"
    },
    {
        "name": "tcpSocket",
        "baseName": "tcpSocket",
        "type": "V1TCPSocketAction"
    }
];
exports.V1Handler = V1Handler;
/**
* configuration of a horizontal pod autoscaler.
*/
class V1HorizontalPodAutoscaler {
    static getAttributeTypeMap() {
        return V1HorizontalPodAutoscaler.attributeTypeMap;
    }
}
V1HorizontalPodAutoscaler.discriminator = undefined;
V1HorizontalPodAutoscaler.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1HorizontalPodAutoscalerSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1HorizontalPodAutoscalerStatus"
    }
];
exports.V1HorizontalPodAutoscaler = V1HorizontalPodAutoscaler;
/**
* list of horizontal pod autoscaler objects.
*/
class V1HorizontalPodAutoscalerList {
    static getAttributeTypeMap() {
        return V1HorizontalPodAutoscalerList.attributeTypeMap;
    }
}
V1HorizontalPodAutoscalerList.discriminator = undefined;
V1HorizontalPodAutoscalerList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1HorizontalPodAutoscaler>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1HorizontalPodAutoscalerList = V1HorizontalPodAutoscalerList;
/**
* specification of a horizontal pod autoscaler.
*/
class V1HorizontalPodAutoscalerSpec {
    static getAttributeTypeMap() {
        return V1HorizontalPodAutoscalerSpec.attributeTypeMap;
    }
}
V1HorizontalPodAutoscalerSpec.discriminator = undefined;
V1HorizontalPodAutoscalerSpec.attributeTypeMap = [
    {
        "name": "maxReplicas",
        "baseName": "maxReplicas",
        "type": "number"
    },
    {
        "name": "minReplicas",
        "baseName": "minReplicas",
        "type": "number"
    },
    {
        "name": "scaleTargetRef",
        "baseName": "scaleTargetRef",
        "type": "V1CrossVersionObjectReference"
    },
    {
        "name": "targetCPUUtilizationPercentage",
        "baseName": "targetCPUUtilizationPercentage",
        "type": "number"
    }
];
exports.V1HorizontalPodAutoscalerSpec = V1HorizontalPodAutoscalerSpec;
/**
* current status of a horizontal pod autoscaler
*/
class V1HorizontalPodAutoscalerStatus {
    static getAttributeTypeMap() {
        return V1HorizontalPodAutoscalerStatus.attributeTypeMap;
    }
}
V1HorizontalPodAutoscalerStatus.discriminator = undefined;
V1HorizontalPodAutoscalerStatus.attributeTypeMap = [
    {
        "name": "currentCPUUtilizationPercentage",
        "baseName": "currentCPUUtilizationPercentage",
        "type": "number"
    },
    {
        "name": "currentReplicas",
        "baseName": "currentReplicas",
        "type": "number"
    },
    {
        "name": "desiredReplicas",
        "baseName": "desiredReplicas",
        "type": "number"
    },
    {
        "name": "lastScaleTime",
        "baseName": "lastScaleTime",
        "type": "Date"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    }
];
exports.V1HorizontalPodAutoscalerStatus = V1HorizontalPodAutoscalerStatus;
/**
* HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.
*/
class V1HostAlias {
    static getAttributeTypeMap() {
        return V1HostAlias.attributeTypeMap;
    }
}
V1HostAlias.discriminator = undefined;
V1HostAlias.attributeTypeMap = [
    {
        "name": "hostnames",
        "baseName": "hostnames",
        "type": "Array<string>"
    },
    {
        "name": "ip",
        "baseName": "ip",
        "type": "string"
    }
];
exports.V1HostAlias = V1HostAlias;
/**
* Represents a host path mapped into a pod. Host path volumes do not support ownership management or SELinux relabeling.
*/
class V1HostPathVolumeSource {
    static getAttributeTypeMap() {
        return V1HostPathVolumeSource.attributeTypeMap;
    }
}
V1HostPathVolumeSource.discriminator = undefined;
V1HostPathVolumeSource.attributeTypeMap = [
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1HostPathVolumeSource = V1HostPathVolumeSource;
/**
* IPBlock describes a particular CIDR (Ex. \"192.168.1.1/24\") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.
*/
class V1IPBlock {
    static getAttributeTypeMap() {
        return V1IPBlock.attributeTypeMap;
    }
}
V1IPBlock.discriminator = undefined;
V1IPBlock.attributeTypeMap = [
    {
        "name": "cidr",
        "baseName": "cidr",
        "type": "string"
    },
    {
        "name": "except",
        "baseName": "except",
        "type": "Array<string>"
    }
];
exports.V1IPBlock = V1IPBlock;
/**
* ISCSIPersistentVolumeSource represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.
*/
class V1ISCSIPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1ISCSIPersistentVolumeSource.attributeTypeMap;
    }
}
V1ISCSIPersistentVolumeSource.discriminator = undefined;
V1ISCSIPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "chapAuthDiscovery",
        "baseName": "chapAuthDiscovery",
        "type": "boolean"
    },
    {
        "name": "chapAuthSession",
        "baseName": "chapAuthSession",
        "type": "boolean"
    },
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "initiatorName",
        "baseName": "initiatorName",
        "type": "string"
    },
    {
        "name": "iqn",
        "baseName": "iqn",
        "type": "string"
    },
    {
        "name": "iscsiInterface",
        "baseName": "iscsiInterface",
        "type": "string"
    },
    {
        "name": "lun",
        "baseName": "lun",
        "type": "number"
    },
    {
        "name": "portals",
        "baseName": "portals",
        "type": "Array<string>"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "targetPortal",
        "baseName": "targetPortal",
        "type": "string"
    }
];
exports.V1ISCSIPersistentVolumeSource = V1ISCSIPersistentVolumeSource;
/**
* Represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.
*/
class V1ISCSIVolumeSource {
    static getAttributeTypeMap() {
        return V1ISCSIVolumeSource.attributeTypeMap;
    }
}
V1ISCSIVolumeSource.discriminator = undefined;
V1ISCSIVolumeSource.attributeTypeMap = [
    {
        "name": "chapAuthDiscovery",
        "baseName": "chapAuthDiscovery",
        "type": "boolean"
    },
    {
        "name": "chapAuthSession",
        "baseName": "chapAuthSession",
        "type": "boolean"
    },
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "initiatorName",
        "baseName": "initiatorName",
        "type": "string"
    },
    {
        "name": "iqn",
        "baseName": "iqn",
        "type": "string"
    },
    {
        "name": "iscsiInterface",
        "baseName": "iscsiInterface",
        "type": "string"
    },
    {
        "name": "lun",
        "baseName": "lun",
        "type": "number"
    },
    {
        "name": "portals",
        "baseName": "portals",
        "type": "Array<string>"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    },
    {
        "name": "targetPortal",
        "baseName": "targetPortal",
        "type": "string"
    }
];
exports.V1ISCSIVolumeSource = V1ISCSIVolumeSource;
/**
* Initializer is information about an initializer that has not yet completed.
*/
class V1Initializer {
    static getAttributeTypeMap() {
        return V1Initializer.attributeTypeMap;
    }
}
V1Initializer.discriminator = undefined;
V1Initializer.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1Initializer = V1Initializer;
/**
* Initializers tracks the progress of initialization.
*/
class V1Initializers {
    static getAttributeTypeMap() {
        return V1Initializers.attributeTypeMap;
    }
}
V1Initializers.discriminator = undefined;
V1Initializers.attributeTypeMap = [
    {
        "name": "pending",
        "baseName": "pending",
        "type": "Array<V1Initializer>"
    },
    {
        "name": "result",
        "baseName": "result",
        "type": "V1Status"
    }
];
exports.V1Initializers = V1Initializers;
/**
* Job represents the configuration of a single job.
*/
class V1Job {
    static getAttributeTypeMap() {
        return V1Job.attributeTypeMap;
    }
}
V1Job.discriminator = undefined;
V1Job.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1JobSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1JobStatus"
    }
];
exports.V1Job = V1Job;
/**
* JobCondition describes current state of a job.
*/
class V1JobCondition {
    static getAttributeTypeMap() {
        return V1JobCondition.attributeTypeMap;
    }
}
V1JobCondition.discriminator = undefined;
V1JobCondition.attributeTypeMap = [
    {
        "name": "lastProbeTime",
        "baseName": "lastProbeTime",
        "type": "Date"
    },
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1JobCondition = V1JobCondition;
/**
* JobList is a collection of jobs.
*/
class V1JobList {
    static getAttributeTypeMap() {
        return V1JobList.attributeTypeMap;
    }
}
V1JobList.discriminator = undefined;
V1JobList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Job>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1JobList = V1JobList;
/**
* JobSpec describes how the job execution will look like.
*/
class V1JobSpec {
    static getAttributeTypeMap() {
        return V1JobSpec.attributeTypeMap;
    }
}
V1JobSpec.discriminator = undefined;
V1JobSpec.attributeTypeMap = [
    {
        "name": "activeDeadlineSeconds",
        "baseName": "activeDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "backoffLimit",
        "baseName": "backoffLimit",
        "type": "number"
    },
    {
        "name": "completions",
        "baseName": "completions",
        "type": "number"
    },
    {
        "name": "manualSelector",
        "baseName": "manualSelector",
        "type": "boolean"
    },
    {
        "name": "parallelism",
        "baseName": "parallelism",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "ttlSecondsAfterFinished",
        "baseName": "ttlSecondsAfterFinished",
        "type": "number"
    }
];
exports.V1JobSpec = V1JobSpec;
/**
* JobStatus represents the current state of a Job.
*/
class V1JobStatus {
    static getAttributeTypeMap() {
        return V1JobStatus.attributeTypeMap;
    }
}
V1JobStatus.discriminator = undefined;
V1JobStatus.attributeTypeMap = [
    {
        "name": "active",
        "baseName": "active",
        "type": "number"
    },
    {
        "name": "completionTime",
        "baseName": "completionTime",
        "type": "Date"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1JobCondition>"
    },
    {
        "name": "failed",
        "baseName": "failed",
        "type": "number"
    },
    {
        "name": "startTime",
        "baseName": "startTime",
        "type": "Date"
    },
    {
        "name": "succeeded",
        "baseName": "succeeded",
        "type": "number"
    }
];
exports.V1JobStatus = V1JobStatus;
/**
* Maps a string key to a path within a volume.
*/
class V1KeyToPath {
    static getAttributeTypeMap() {
        return V1KeyToPath.attributeTypeMap;
    }
}
V1KeyToPath.discriminator = undefined;
V1KeyToPath.attributeTypeMap = [
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "mode",
        "baseName": "mode",
        "type": "number"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.V1KeyToPath = V1KeyToPath;
/**
* A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.
*/
class V1LabelSelector {
    static getAttributeTypeMap() {
        return V1LabelSelector.attributeTypeMap;
    }
}
V1LabelSelector.discriminator = undefined;
V1LabelSelector.attributeTypeMap = [
    {
        "name": "matchExpressions",
        "baseName": "matchExpressions",
        "type": "Array<V1LabelSelectorRequirement>"
    },
    {
        "name": "matchLabels",
        "baseName": "matchLabels",
        "type": "{ [key: string]: string; }"
    }
];
exports.V1LabelSelector = V1LabelSelector;
/**
* A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
*/
class V1LabelSelectorRequirement {
    static getAttributeTypeMap() {
        return V1LabelSelectorRequirement.attributeTypeMap;
    }
}
V1LabelSelectorRequirement.discriminator = undefined;
V1LabelSelectorRequirement.attributeTypeMap = [
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "operator",
        "baseName": "operator",
        "type": "string"
    },
    {
        "name": "values",
        "baseName": "values",
        "type": "Array<string>"
    }
];
exports.V1LabelSelectorRequirement = V1LabelSelectorRequirement;
/**
* Lifecycle describes actions that the management system should take in response to container lifecycle events. For the PostStart and PreStop lifecycle handlers, management of the container blocks until the action is complete, unless the container process fails, in which case the handler is aborted.
*/
class V1Lifecycle {
    static getAttributeTypeMap() {
        return V1Lifecycle.attributeTypeMap;
    }
}
V1Lifecycle.discriminator = undefined;
V1Lifecycle.attributeTypeMap = [
    {
        "name": "postStart",
        "baseName": "postStart",
        "type": "V1Handler"
    },
    {
        "name": "preStop",
        "baseName": "preStop",
        "type": "V1Handler"
    }
];
exports.V1Lifecycle = V1Lifecycle;
/**
* LimitRange sets resource usage limits for each kind of resource in a Namespace.
*/
class V1LimitRange {
    static getAttributeTypeMap() {
        return V1LimitRange.attributeTypeMap;
    }
}
V1LimitRange.discriminator = undefined;
V1LimitRange.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1LimitRangeSpec"
    }
];
exports.V1LimitRange = V1LimitRange;
/**
* LimitRangeItem defines a min/max usage limit for any resource that matches on kind.
*/
class V1LimitRangeItem {
    static getAttributeTypeMap() {
        return V1LimitRangeItem.attributeTypeMap;
    }
}
V1LimitRangeItem.discriminator = undefined;
V1LimitRangeItem.attributeTypeMap = [
    {
        "name": "_default",
        "baseName": "default",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "defaultRequest",
        "baseName": "defaultRequest",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "max",
        "baseName": "max",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "maxLimitRequestRatio",
        "baseName": "maxLimitRequestRatio",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "min",
        "baseName": "min",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1LimitRangeItem = V1LimitRangeItem;
/**
* LimitRangeList is a list of LimitRange items.
*/
class V1LimitRangeList {
    static getAttributeTypeMap() {
        return V1LimitRangeList.attributeTypeMap;
    }
}
V1LimitRangeList.discriminator = undefined;
V1LimitRangeList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1LimitRange>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1LimitRangeList = V1LimitRangeList;
/**
* LimitRangeSpec defines a min/max usage limit for resources that match on kind.
*/
class V1LimitRangeSpec {
    static getAttributeTypeMap() {
        return V1LimitRangeSpec.attributeTypeMap;
    }
}
V1LimitRangeSpec.discriminator = undefined;
V1LimitRangeSpec.attributeTypeMap = [
    {
        "name": "limits",
        "baseName": "limits",
        "type": "Array<V1LimitRangeItem>"
    }
];
exports.V1LimitRangeSpec = V1LimitRangeSpec;
/**
* ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.
*/
class V1ListMeta {
    static getAttributeTypeMap() {
        return V1ListMeta.attributeTypeMap;
    }
}
V1ListMeta.discriminator = undefined;
V1ListMeta.attributeTypeMap = [
    {
        "name": "_continue",
        "baseName": "continue",
        "type": "string"
    },
    {
        "name": "resourceVersion",
        "baseName": "resourceVersion",
        "type": "string"
    },
    {
        "name": "selfLink",
        "baseName": "selfLink",
        "type": "string"
    }
];
exports.V1ListMeta = V1ListMeta;
/**
* LoadBalancerIngress represents the status of a load-balancer ingress point: traffic intended for the service should be sent to an ingress point.
*/
class V1LoadBalancerIngress {
    static getAttributeTypeMap() {
        return V1LoadBalancerIngress.attributeTypeMap;
    }
}
V1LoadBalancerIngress.discriminator = undefined;
V1LoadBalancerIngress.attributeTypeMap = [
    {
        "name": "hostname",
        "baseName": "hostname",
        "type": "string"
    },
    {
        "name": "ip",
        "baseName": "ip",
        "type": "string"
    }
];
exports.V1LoadBalancerIngress = V1LoadBalancerIngress;
/**
* LoadBalancerStatus represents the status of a load-balancer.
*/
class V1LoadBalancerStatus {
    static getAttributeTypeMap() {
        return V1LoadBalancerStatus.attributeTypeMap;
    }
}
V1LoadBalancerStatus.discriminator = undefined;
V1LoadBalancerStatus.attributeTypeMap = [
    {
        "name": "ingress",
        "baseName": "ingress",
        "type": "Array<V1LoadBalancerIngress>"
    }
];
exports.V1LoadBalancerStatus = V1LoadBalancerStatus;
/**
* LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
*/
class V1LocalObjectReference {
    static getAttributeTypeMap() {
        return V1LocalObjectReference.attributeTypeMap;
    }
}
V1LocalObjectReference.discriminator = undefined;
V1LocalObjectReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1LocalObjectReference = V1LocalObjectReference;
/**
* LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.
*/
class V1LocalSubjectAccessReview {
    static getAttributeTypeMap() {
        return V1LocalSubjectAccessReview.attributeTypeMap;
    }
}
V1LocalSubjectAccessReview.discriminator = undefined;
V1LocalSubjectAccessReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1SubjectAccessReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1SubjectAccessReviewStatus"
    }
];
exports.V1LocalSubjectAccessReview = V1LocalSubjectAccessReview;
/**
* Local represents directly-attached storage with node affinity (Beta feature)
*/
class V1LocalVolumeSource {
    static getAttributeTypeMap() {
        return V1LocalVolumeSource.attributeTypeMap;
    }
}
V1LocalVolumeSource.discriminator = undefined;
V1LocalVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.V1LocalVolumeSource = V1LocalVolumeSource;
/**
* Represents an NFS mount that lasts the lifetime of a pod. NFS volumes do not support ownership management or SELinux relabeling.
*/
class V1NFSVolumeSource {
    static getAttributeTypeMap() {
        return V1NFSVolumeSource.attributeTypeMap;
    }
}
V1NFSVolumeSource.discriminator = undefined;
V1NFSVolumeSource.attributeTypeMap = [
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "server",
        "baseName": "server",
        "type": "string"
    }
];
exports.V1NFSVolumeSource = V1NFSVolumeSource;
/**
* Namespace provides a scope for Names. Use of multiple namespaces is optional.
*/
class V1Namespace {
    static getAttributeTypeMap() {
        return V1Namespace.attributeTypeMap;
    }
}
V1Namespace.discriminator = undefined;
V1Namespace.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1NamespaceSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1NamespaceStatus"
    }
];
exports.V1Namespace = V1Namespace;
/**
* NamespaceList is a list of Namespaces.
*/
class V1NamespaceList {
    static getAttributeTypeMap() {
        return V1NamespaceList.attributeTypeMap;
    }
}
V1NamespaceList.discriminator = undefined;
V1NamespaceList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Namespace>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1NamespaceList = V1NamespaceList;
/**
* NamespaceSpec describes the attributes on a Namespace.
*/
class V1NamespaceSpec {
    static getAttributeTypeMap() {
        return V1NamespaceSpec.attributeTypeMap;
    }
}
V1NamespaceSpec.discriminator = undefined;
V1NamespaceSpec.attributeTypeMap = [
    {
        "name": "finalizers",
        "baseName": "finalizers",
        "type": "Array<string>"
    }
];
exports.V1NamespaceSpec = V1NamespaceSpec;
/**
* NamespaceStatus is information about the current status of a Namespace.
*/
class V1NamespaceStatus {
    static getAttributeTypeMap() {
        return V1NamespaceStatus.attributeTypeMap;
    }
}
V1NamespaceStatus.discriminator = undefined;
V1NamespaceStatus.attributeTypeMap = [
    {
        "name": "phase",
        "baseName": "phase",
        "type": "string"
    }
];
exports.V1NamespaceStatus = V1NamespaceStatus;
/**
* NetworkPolicy describes what network traffic is allowed for a set of Pods
*/
class V1NetworkPolicy {
    static getAttributeTypeMap() {
        return V1NetworkPolicy.attributeTypeMap;
    }
}
V1NetworkPolicy.discriminator = undefined;
V1NetworkPolicy.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1NetworkPolicySpec"
    }
];
exports.V1NetworkPolicy = V1NetworkPolicy;
/**
* NetworkPolicyEgressRule describes a particular set of traffic that is allowed out of pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and to. This type is beta-level in 1.8
*/
class V1NetworkPolicyEgressRule {
    static getAttributeTypeMap() {
        return V1NetworkPolicyEgressRule.attributeTypeMap;
    }
}
V1NetworkPolicyEgressRule.discriminator = undefined;
V1NetworkPolicyEgressRule.attributeTypeMap = [
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1NetworkPolicyPort>"
    },
    {
        "name": "to",
        "baseName": "to",
        "type": "Array<V1NetworkPolicyPeer>"
    }
];
exports.V1NetworkPolicyEgressRule = V1NetworkPolicyEgressRule;
/**
* NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from.
*/
class V1NetworkPolicyIngressRule {
    static getAttributeTypeMap() {
        return V1NetworkPolicyIngressRule.attributeTypeMap;
    }
}
V1NetworkPolicyIngressRule.discriminator = undefined;
V1NetworkPolicyIngressRule.attributeTypeMap = [
    {
        "name": "from",
        "baseName": "from",
        "type": "Array<V1NetworkPolicyPeer>"
    },
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1NetworkPolicyPort>"
    }
];
exports.V1NetworkPolicyIngressRule = V1NetworkPolicyIngressRule;
/**
* NetworkPolicyList is a list of NetworkPolicy objects.
*/
class V1NetworkPolicyList {
    static getAttributeTypeMap() {
        return V1NetworkPolicyList.attributeTypeMap;
    }
}
V1NetworkPolicyList.discriminator = undefined;
V1NetworkPolicyList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1NetworkPolicy>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1NetworkPolicyList = V1NetworkPolicyList;
/**
* NetworkPolicyPeer describes a peer to allow traffic from. Only certain combinations of fields are allowed
*/
class V1NetworkPolicyPeer {
    static getAttributeTypeMap() {
        return V1NetworkPolicyPeer.attributeTypeMap;
    }
}
V1NetworkPolicyPeer.discriminator = undefined;
V1NetworkPolicyPeer.attributeTypeMap = [
    {
        "name": "ipBlock",
        "baseName": "ipBlock",
        "type": "V1IPBlock"
    },
    {
        "name": "namespaceSelector",
        "baseName": "namespaceSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "podSelector",
        "baseName": "podSelector",
        "type": "V1LabelSelector"
    }
];
exports.V1NetworkPolicyPeer = V1NetworkPolicyPeer;
/**
* NetworkPolicyPort describes a port to allow traffic on
*/
class V1NetworkPolicyPort {
    static getAttributeTypeMap() {
        return V1NetworkPolicyPort.attributeTypeMap;
    }
}
V1NetworkPolicyPort.discriminator = undefined;
V1NetworkPolicyPort.attributeTypeMap = [
    {
        "name": "port",
        "baseName": "port",
        "type": "any"
    },
    {
        "name": "protocol",
        "baseName": "protocol",
        "type": "string"
    }
];
exports.V1NetworkPolicyPort = V1NetworkPolicyPort;
/**
* NetworkPolicySpec provides the specification of a NetworkPolicy
*/
class V1NetworkPolicySpec {
    static getAttributeTypeMap() {
        return V1NetworkPolicySpec.attributeTypeMap;
    }
}
V1NetworkPolicySpec.discriminator = undefined;
V1NetworkPolicySpec.attributeTypeMap = [
    {
        "name": "egress",
        "baseName": "egress",
        "type": "Array<V1NetworkPolicyEgressRule>"
    },
    {
        "name": "ingress",
        "baseName": "ingress",
        "type": "Array<V1NetworkPolicyIngressRule>"
    },
    {
        "name": "podSelector",
        "baseName": "podSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "policyTypes",
        "baseName": "policyTypes",
        "type": "Array<string>"
    }
];
exports.V1NetworkPolicySpec = V1NetworkPolicySpec;
/**
* Node is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).
*/
class V1Node {
    static getAttributeTypeMap() {
        return V1Node.attributeTypeMap;
    }
}
V1Node.discriminator = undefined;
V1Node.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1NodeSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1NodeStatus"
    }
];
exports.V1Node = V1Node;
/**
* NodeAddress contains information for the node's address.
*/
class V1NodeAddress {
    static getAttributeTypeMap() {
        return V1NodeAddress.attributeTypeMap;
    }
}
V1NodeAddress.discriminator = undefined;
V1NodeAddress.attributeTypeMap = [
    {
        "name": "address",
        "baseName": "address",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1NodeAddress = V1NodeAddress;
/**
* Node affinity is a group of node affinity scheduling rules.
*/
class V1NodeAffinity {
    static getAttributeTypeMap() {
        return V1NodeAffinity.attributeTypeMap;
    }
}
V1NodeAffinity.discriminator = undefined;
V1NodeAffinity.attributeTypeMap = [
    {
        "name": "preferredDuringSchedulingIgnoredDuringExecution",
        "baseName": "preferredDuringSchedulingIgnoredDuringExecution",
        "type": "Array<V1PreferredSchedulingTerm>"
    },
    {
        "name": "requiredDuringSchedulingIgnoredDuringExecution",
        "baseName": "requiredDuringSchedulingIgnoredDuringExecution",
        "type": "V1NodeSelector"
    }
];
exports.V1NodeAffinity = V1NodeAffinity;
/**
* NodeCondition contains condition information for a node.
*/
class V1NodeCondition {
    static getAttributeTypeMap() {
        return V1NodeCondition.attributeTypeMap;
    }
}
V1NodeCondition.discriminator = undefined;
V1NodeCondition.attributeTypeMap = [
    {
        "name": "lastHeartbeatTime",
        "baseName": "lastHeartbeatTime",
        "type": "Date"
    },
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1NodeCondition = V1NodeCondition;
/**
* NodeConfigSource specifies a source of node configuration. Exactly one subfield (excluding metadata) must be non-nil.
*/
class V1NodeConfigSource {
    static getAttributeTypeMap() {
        return V1NodeConfigSource.attributeTypeMap;
    }
}
V1NodeConfigSource.discriminator = undefined;
V1NodeConfigSource.attributeTypeMap = [
    {
        "name": "configMap",
        "baseName": "configMap",
        "type": "V1ConfigMapNodeConfigSource"
    }
];
exports.V1NodeConfigSource = V1NodeConfigSource;
/**
* NodeConfigStatus describes the status of the config assigned by Node.Spec.ConfigSource.
*/
class V1NodeConfigStatus {
    static getAttributeTypeMap() {
        return V1NodeConfigStatus.attributeTypeMap;
    }
}
V1NodeConfigStatus.discriminator = undefined;
V1NodeConfigStatus.attributeTypeMap = [
    {
        "name": "active",
        "baseName": "active",
        "type": "V1NodeConfigSource"
    },
    {
        "name": "assigned",
        "baseName": "assigned",
        "type": "V1NodeConfigSource"
    },
    {
        "name": "error",
        "baseName": "error",
        "type": "string"
    },
    {
        "name": "lastKnownGood",
        "baseName": "lastKnownGood",
        "type": "V1NodeConfigSource"
    }
];
exports.V1NodeConfigStatus = V1NodeConfigStatus;
/**
* NodeDaemonEndpoints lists ports opened by daemons running on the Node.
*/
class V1NodeDaemonEndpoints {
    static getAttributeTypeMap() {
        return V1NodeDaemonEndpoints.attributeTypeMap;
    }
}
V1NodeDaemonEndpoints.discriminator = undefined;
V1NodeDaemonEndpoints.attributeTypeMap = [
    {
        "name": "kubeletEndpoint",
        "baseName": "kubeletEndpoint",
        "type": "V1DaemonEndpoint"
    }
];
exports.V1NodeDaemonEndpoints = V1NodeDaemonEndpoints;
/**
* NodeList is the whole list of all Nodes which have been registered with master.
*/
class V1NodeList {
    static getAttributeTypeMap() {
        return V1NodeList.attributeTypeMap;
    }
}
V1NodeList.discriminator = undefined;
V1NodeList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Node>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1NodeList = V1NodeList;
/**
* A node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.
*/
class V1NodeSelector {
    static getAttributeTypeMap() {
        return V1NodeSelector.attributeTypeMap;
    }
}
V1NodeSelector.discriminator = undefined;
V1NodeSelector.attributeTypeMap = [
    {
        "name": "nodeSelectorTerms",
        "baseName": "nodeSelectorTerms",
        "type": "Array<V1NodeSelectorTerm>"
    }
];
exports.V1NodeSelector = V1NodeSelector;
/**
* A node selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
*/
class V1NodeSelectorRequirement {
    static getAttributeTypeMap() {
        return V1NodeSelectorRequirement.attributeTypeMap;
    }
}
V1NodeSelectorRequirement.discriminator = undefined;
V1NodeSelectorRequirement.attributeTypeMap = [
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "operator",
        "baseName": "operator",
        "type": "string"
    },
    {
        "name": "values",
        "baseName": "values",
        "type": "Array<string>"
    }
];
exports.V1NodeSelectorRequirement = V1NodeSelectorRequirement;
/**
* A null or empty node selector term matches no objects. The requirements of them are ANDed. The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
*/
class V1NodeSelectorTerm {
    static getAttributeTypeMap() {
        return V1NodeSelectorTerm.attributeTypeMap;
    }
}
V1NodeSelectorTerm.discriminator = undefined;
V1NodeSelectorTerm.attributeTypeMap = [
    {
        "name": "matchExpressions",
        "baseName": "matchExpressions",
        "type": "Array<V1NodeSelectorRequirement>"
    },
    {
        "name": "matchFields",
        "baseName": "matchFields",
        "type": "Array<V1NodeSelectorRequirement>"
    }
];
exports.V1NodeSelectorTerm = V1NodeSelectorTerm;
/**
* NodeSpec describes the attributes that a node is created with.
*/
class V1NodeSpec {
    static getAttributeTypeMap() {
        return V1NodeSpec.attributeTypeMap;
    }
}
V1NodeSpec.discriminator = undefined;
V1NodeSpec.attributeTypeMap = [
    {
        "name": "configSource",
        "baseName": "configSource",
        "type": "V1NodeConfigSource"
    },
    {
        "name": "externalID",
        "baseName": "externalID",
        "type": "string"
    },
    {
        "name": "podCIDR",
        "baseName": "podCIDR",
        "type": "string"
    },
    {
        "name": "providerID",
        "baseName": "providerID",
        "type": "string"
    },
    {
        "name": "taints",
        "baseName": "taints",
        "type": "Array<V1Taint>"
    },
    {
        "name": "unschedulable",
        "baseName": "unschedulable",
        "type": "boolean"
    }
];
exports.V1NodeSpec = V1NodeSpec;
/**
* NodeStatus is information about the current status of a node.
*/
class V1NodeStatus {
    static getAttributeTypeMap() {
        return V1NodeStatus.attributeTypeMap;
    }
}
V1NodeStatus.discriminator = undefined;
V1NodeStatus.attributeTypeMap = [
    {
        "name": "addresses",
        "baseName": "addresses",
        "type": "Array<V1NodeAddress>"
    },
    {
        "name": "allocatable",
        "baseName": "allocatable",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "capacity",
        "baseName": "capacity",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1NodeCondition>"
    },
    {
        "name": "config",
        "baseName": "config",
        "type": "V1NodeConfigStatus"
    },
    {
        "name": "daemonEndpoints",
        "baseName": "daemonEndpoints",
        "type": "V1NodeDaemonEndpoints"
    },
    {
        "name": "images",
        "baseName": "images",
        "type": "Array<V1ContainerImage>"
    },
    {
        "name": "nodeInfo",
        "baseName": "nodeInfo",
        "type": "V1NodeSystemInfo"
    },
    {
        "name": "phase",
        "baseName": "phase",
        "type": "string"
    },
    {
        "name": "volumesAttached",
        "baseName": "volumesAttached",
        "type": "Array<V1AttachedVolume>"
    },
    {
        "name": "volumesInUse",
        "baseName": "volumesInUse",
        "type": "Array<string>"
    }
];
exports.V1NodeStatus = V1NodeStatus;
/**
* NodeSystemInfo is a set of ids/uuids to uniquely identify the node.
*/
class V1NodeSystemInfo {
    static getAttributeTypeMap() {
        return V1NodeSystemInfo.attributeTypeMap;
    }
}
V1NodeSystemInfo.discriminator = undefined;
V1NodeSystemInfo.attributeTypeMap = [
    {
        "name": "architecture",
        "baseName": "architecture",
        "type": "string"
    },
    {
        "name": "bootID",
        "baseName": "bootID",
        "type": "string"
    },
    {
        "name": "containerRuntimeVersion",
        "baseName": "containerRuntimeVersion",
        "type": "string"
    },
    {
        "name": "kernelVersion",
        "baseName": "kernelVersion",
        "type": "string"
    },
    {
        "name": "kubeProxyVersion",
        "baseName": "kubeProxyVersion",
        "type": "string"
    },
    {
        "name": "kubeletVersion",
        "baseName": "kubeletVersion",
        "type": "string"
    },
    {
        "name": "machineID",
        "baseName": "machineID",
        "type": "string"
    },
    {
        "name": "operatingSystem",
        "baseName": "operatingSystem",
        "type": "string"
    },
    {
        "name": "osImage",
        "baseName": "osImage",
        "type": "string"
    },
    {
        "name": "systemUUID",
        "baseName": "systemUUID",
        "type": "string"
    }
];
exports.V1NodeSystemInfo = V1NodeSystemInfo;
/**
* NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface
*/
class V1NonResourceAttributes {
    static getAttributeTypeMap() {
        return V1NonResourceAttributes.attributeTypeMap;
    }
}
V1NonResourceAttributes.discriminator = undefined;
V1NonResourceAttributes.attributeTypeMap = [
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "verb",
        "baseName": "verb",
        "type": "string"
    }
];
exports.V1NonResourceAttributes = V1NonResourceAttributes;
/**
* NonResourceRule holds information that describes a rule for the non-resource
*/
class V1NonResourceRule {
    static getAttributeTypeMap() {
        return V1NonResourceRule.attributeTypeMap;
    }
}
V1NonResourceRule.discriminator = undefined;
V1NonResourceRule.attributeTypeMap = [
    {
        "name": "nonResourceURLs",
        "baseName": "nonResourceURLs",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1NonResourceRule = V1NonResourceRule;
/**
* ObjectFieldSelector selects an APIVersioned field of an object.
*/
class V1ObjectFieldSelector {
    static getAttributeTypeMap() {
        return V1ObjectFieldSelector.attributeTypeMap;
    }
}
V1ObjectFieldSelector.discriminator = undefined;
V1ObjectFieldSelector.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "fieldPath",
        "baseName": "fieldPath",
        "type": "string"
    }
];
exports.V1ObjectFieldSelector = V1ObjectFieldSelector;
/**
* ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
*/
class V1ObjectMeta {
    static getAttributeTypeMap() {
        return V1ObjectMeta.attributeTypeMap;
    }
}
V1ObjectMeta.discriminator = undefined;
V1ObjectMeta.attributeTypeMap = [
    {
        "name": "annotations",
        "baseName": "annotations",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "clusterName",
        "baseName": "clusterName",
        "type": "string"
    },
    {
        "name": "creationTimestamp",
        "baseName": "creationTimestamp",
        "type": "Date"
    },
    {
        "name": "deletionGracePeriodSeconds",
        "baseName": "deletionGracePeriodSeconds",
        "type": "number"
    },
    {
        "name": "deletionTimestamp",
        "baseName": "deletionTimestamp",
        "type": "Date"
    },
    {
        "name": "finalizers",
        "baseName": "finalizers",
        "type": "Array<string>"
    },
    {
        "name": "generateName",
        "baseName": "generateName",
        "type": "string"
    },
    {
        "name": "generation",
        "baseName": "generation",
        "type": "number"
    },
    {
        "name": "initializers",
        "baseName": "initializers",
        "type": "V1Initializers"
    },
    {
        "name": "labels",
        "baseName": "labels",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "ownerReferences",
        "baseName": "ownerReferences",
        "type": "Array<V1OwnerReference>"
    },
    {
        "name": "resourceVersion",
        "baseName": "resourceVersion",
        "type": "string"
    },
    {
        "name": "selfLink",
        "baseName": "selfLink",
        "type": "string"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    }
];
exports.V1ObjectMeta = V1ObjectMeta;
/**
* ObjectReference contains enough information to let you inspect or modify the referred object.
*/
class V1ObjectReference {
    static getAttributeTypeMap() {
        return V1ObjectReference.attributeTypeMap;
    }
}
V1ObjectReference.discriminator = undefined;
V1ObjectReference.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "fieldPath",
        "baseName": "fieldPath",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "resourceVersion",
        "baseName": "resourceVersion",
        "type": "string"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    }
];
exports.V1ObjectReference = V1ObjectReference;
/**
* OwnerReference contains enough information to let you identify an owning object. An owning object must be in the same namespace as the dependent, or be cluster-scoped, so there is no namespace field.
*/
class V1OwnerReference {
    static getAttributeTypeMap() {
        return V1OwnerReference.attributeTypeMap;
    }
}
V1OwnerReference.discriminator = undefined;
V1OwnerReference.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "blockOwnerDeletion",
        "baseName": "blockOwnerDeletion",
        "type": "boolean"
    },
    {
        "name": "controller",
        "baseName": "controller",
        "type": "boolean"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    }
];
exports.V1OwnerReference = V1OwnerReference;
/**
* PersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes
*/
class V1PersistentVolume {
    static getAttributeTypeMap() {
        return V1PersistentVolume.attributeTypeMap;
    }
}
V1PersistentVolume.discriminator = undefined;
V1PersistentVolume.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1PersistentVolumeSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1PersistentVolumeStatus"
    }
];
exports.V1PersistentVolume = V1PersistentVolume;
/**
* PersistentVolumeClaim is a user's request for and claim to a persistent volume
*/
class V1PersistentVolumeClaim {
    static getAttributeTypeMap() {
        return V1PersistentVolumeClaim.attributeTypeMap;
    }
}
V1PersistentVolumeClaim.discriminator = undefined;
V1PersistentVolumeClaim.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1PersistentVolumeClaimSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1PersistentVolumeClaimStatus"
    }
];
exports.V1PersistentVolumeClaim = V1PersistentVolumeClaim;
/**
* PersistentVolumeClaimCondition contails details about state of pvc
*/
class V1PersistentVolumeClaimCondition {
    static getAttributeTypeMap() {
        return V1PersistentVolumeClaimCondition.attributeTypeMap;
    }
}
V1PersistentVolumeClaimCondition.discriminator = undefined;
V1PersistentVolumeClaimCondition.attributeTypeMap = [
    {
        "name": "lastProbeTime",
        "baseName": "lastProbeTime",
        "type": "Date"
    },
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1PersistentVolumeClaimCondition = V1PersistentVolumeClaimCondition;
/**
* PersistentVolumeClaimList is a list of PersistentVolumeClaim items.
*/
class V1PersistentVolumeClaimList {
    static getAttributeTypeMap() {
        return V1PersistentVolumeClaimList.attributeTypeMap;
    }
}
V1PersistentVolumeClaimList.discriminator = undefined;
V1PersistentVolumeClaimList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1PersistentVolumeClaim>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1PersistentVolumeClaimList = V1PersistentVolumeClaimList;
/**
* PersistentVolumeClaimSpec describes the common attributes of storage devices and allows a Source for provider-specific attributes
*/
class V1PersistentVolumeClaimSpec {
    static getAttributeTypeMap() {
        return V1PersistentVolumeClaimSpec.attributeTypeMap;
    }
}
V1PersistentVolumeClaimSpec.discriminator = undefined;
V1PersistentVolumeClaimSpec.attributeTypeMap = [
    {
        "name": "accessModes",
        "baseName": "accessModes",
        "type": "Array<string>"
    },
    {
        "name": "dataSource",
        "baseName": "dataSource",
        "type": "V1TypedLocalObjectReference"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "V1ResourceRequirements"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "storageClassName",
        "baseName": "storageClassName",
        "type": "string"
    },
    {
        "name": "volumeMode",
        "baseName": "volumeMode",
        "type": "string"
    },
    {
        "name": "volumeName",
        "baseName": "volumeName",
        "type": "string"
    }
];
exports.V1PersistentVolumeClaimSpec = V1PersistentVolumeClaimSpec;
/**
* PersistentVolumeClaimStatus is the current status of a persistent volume claim.
*/
class V1PersistentVolumeClaimStatus {
    static getAttributeTypeMap() {
        return V1PersistentVolumeClaimStatus.attributeTypeMap;
    }
}
V1PersistentVolumeClaimStatus.discriminator = undefined;
V1PersistentVolumeClaimStatus.attributeTypeMap = [
    {
        "name": "accessModes",
        "baseName": "accessModes",
        "type": "Array<string>"
    },
    {
        "name": "capacity",
        "baseName": "capacity",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1PersistentVolumeClaimCondition>"
    },
    {
        "name": "phase",
        "baseName": "phase",
        "type": "string"
    }
];
exports.V1PersistentVolumeClaimStatus = V1PersistentVolumeClaimStatus;
/**
* PersistentVolumeClaimVolumeSource references the user's PVC in the same namespace. This volume finds the bound PV and mounts that volume for the pod. A PersistentVolumeClaimVolumeSource is, essentially, a wrapper around another type of volume that is owned by someone else (the system).
*/
class V1PersistentVolumeClaimVolumeSource {
    static getAttributeTypeMap() {
        return V1PersistentVolumeClaimVolumeSource.attributeTypeMap;
    }
}
V1PersistentVolumeClaimVolumeSource.discriminator = undefined;
V1PersistentVolumeClaimVolumeSource.attributeTypeMap = [
    {
        "name": "claimName",
        "baseName": "claimName",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    }
];
exports.V1PersistentVolumeClaimVolumeSource = V1PersistentVolumeClaimVolumeSource;
/**
* PersistentVolumeList is a list of PersistentVolume items.
*/
class V1PersistentVolumeList {
    static getAttributeTypeMap() {
        return V1PersistentVolumeList.attributeTypeMap;
    }
}
V1PersistentVolumeList.discriminator = undefined;
V1PersistentVolumeList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1PersistentVolume>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1PersistentVolumeList = V1PersistentVolumeList;
/**
* PersistentVolumeSpec is the specification of a persistent volume.
*/
class V1PersistentVolumeSpec {
    static getAttributeTypeMap() {
        return V1PersistentVolumeSpec.attributeTypeMap;
    }
}
V1PersistentVolumeSpec.discriminator = undefined;
V1PersistentVolumeSpec.attributeTypeMap = [
    {
        "name": "accessModes",
        "baseName": "accessModes",
        "type": "Array<string>"
    },
    {
        "name": "awsElasticBlockStore",
        "baseName": "awsElasticBlockStore",
        "type": "V1AWSElasticBlockStoreVolumeSource"
    },
    {
        "name": "azureDisk",
        "baseName": "azureDisk",
        "type": "V1AzureDiskVolumeSource"
    },
    {
        "name": "azureFile",
        "baseName": "azureFile",
        "type": "V1AzureFilePersistentVolumeSource"
    },
    {
        "name": "capacity",
        "baseName": "capacity",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "cephfs",
        "baseName": "cephfs",
        "type": "V1CephFSPersistentVolumeSource"
    },
    {
        "name": "cinder",
        "baseName": "cinder",
        "type": "V1CinderPersistentVolumeSource"
    },
    {
        "name": "claimRef",
        "baseName": "claimRef",
        "type": "V1ObjectReference"
    },
    {
        "name": "csi",
        "baseName": "csi",
        "type": "V1CSIPersistentVolumeSource"
    },
    {
        "name": "fc",
        "baseName": "fc",
        "type": "V1FCVolumeSource"
    },
    {
        "name": "flexVolume",
        "baseName": "flexVolume",
        "type": "V1FlexPersistentVolumeSource"
    },
    {
        "name": "flocker",
        "baseName": "flocker",
        "type": "V1FlockerVolumeSource"
    },
    {
        "name": "gcePersistentDisk",
        "baseName": "gcePersistentDisk",
        "type": "V1GCEPersistentDiskVolumeSource"
    },
    {
        "name": "glusterfs",
        "baseName": "glusterfs",
        "type": "V1GlusterfsPersistentVolumeSource"
    },
    {
        "name": "hostPath",
        "baseName": "hostPath",
        "type": "V1HostPathVolumeSource"
    },
    {
        "name": "iscsi",
        "baseName": "iscsi",
        "type": "V1ISCSIPersistentVolumeSource"
    },
    {
        "name": "local",
        "baseName": "local",
        "type": "V1LocalVolumeSource"
    },
    {
        "name": "mountOptions",
        "baseName": "mountOptions",
        "type": "Array<string>"
    },
    {
        "name": "nfs",
        "baseName": "nfs",
        "type": "V1NFSVolumeSource"
    },
    {
        "name": "nodeAffinity",
        "baseName": "nodeAffinity",
        "type": "V1VolumeNodeAffinity"
    },
    {
        "name": "persistentVolumeReclaimPolicy",
        "baseName": "persistentVolumeReclaimPolicy",
        "type": "string"
    },
    {
        "name": "photonPersistentDisk",
        "baseName": "photonPersistentDisk",
        "type": "V1PhotonPersistentDiskVolumeSource"
    },
    {
        "name": "portworxVolume",
        "baseName": "portworxVolume",
        "type": "V1PortworxVolumeSource"
    },
    {
        "name": "quobyte",
        "baseName": "quobyte",
        "type": "V1QuobyteVolumeSource"
    },
    {
        "name": "rbd",
        "baseName": "rbd",
        "type": "V1RBDPersistentVolumeSource"
    },
    {
        "name": "scaleIO",
        "baseName": "scaleIO",
        "type": "V1ScaleIOPersistentVolumeSource"
    },
    {
        "name": "storageClassName",
        "baseName": "storageClassName",
        "type": "string"
    },
    {
        "name": "storageos",
        "baseName": "storageos",
        "type": "V1StorageOSPersistentVolumeSource"
    },
    {
        "name": "volumeMode",
        "baseName": "volumeMode",
        "type": "string"
    },
    {
        "name": "vsphereVolume",
        "baseName": "vsphereVolume",
        "type": "V1VsphereVirtualDiskVolumeSource"
    }
];
exports.V1PersistentVolumeSpec = V1PersistentVolumeSpec;
/**
* PersistentVolumeStatus is the current status of a persistent volume.
*/
class V1PersistentVolumeStatus {
    static getAttributeTypeMap() {
        return V1PersistentVolumeStatus.attributeTypeMap;
    }
}
V1PersistentVolumeStatus.discriminator = undefined;
V1PersistentVolumeStatus.attributeTypeMap = [
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "phase",
        "baseName": "phase",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    }
];
exports.V1PersistentVolumeStatus = V1PersistentVolumeStatus;
/**
* Represents a Photon Controller persistent disk resource.
*/
class V1PhotonPersistentDiskVolumeSource {
    static getAttributeTypeMap() {
        return V1PhotonPersistentDiskVolumeSource.attributeTypeMap;
    }
}
V1PhotonPersistentDiskVolumeSource.discriminator = undefined;
V1PhotonPersistentDiskVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "pdID",
        "baseName": "pdID",
        "type": "string"
    }
];
exports.V1PhotonPersistentDiskVolumeSource = V1PhotonPersistentDiskVolumeSource;
/**
* Pod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.
*/
class V1Pod {
    static getAttributeTypeMap() {
        return V1Pod.attributeTypeMap;
    }
}
V1Pod.discriminator = undefined;
V1Pod.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1PodSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1PodStatus"
    }
];
exports.V1Pod = V1Pod;
/**
* Pod affinity is a group of inter pod affinity scheduling rules.
*/
class V1PodAffinity {
    static getAttributeTypeMap() {
        return V1PodAffinity.attributeTypeMap;
    }
}
V1PodAffinity.discriminator = undefined;
V1PodAffinity.attributeTypeMap = [
    {
        "name": "preferredDuringSchedulingIgnoredDuringExecution",
        "baseName": "preferredDuringSchedulingIgnoredDuringExecution",
        "type": "Array<V1WeightedPodAffinityTerm>"
    },
    {
        "name": "requiredDuringSchedulingIgnoredDuringExecution",
        "baseName": "requiredDuringSchedulingIgnoredDuringExecution",
        "type": "Array<V1PodAffinityTerm>"
    }
];
exports.V1PodAffinity = V1PodAffinity;
/**
* Defines a set of pods (namely those matching the labelSelector relative to the given namespace(s)) that this pod should be co-located (affinity) or not co-located (anti-affinity) with, where co-located is defined as running on a node whose value of the label with key <topologyKey> matches that of any node on which a pod of the set of pods is running
*/
class V1PodAffinityTerm {
    static getAttributeTypeMap() {
        return V1PodAffinityTerm.attributeTypeMap;
    }
}
V1PodAffinityTerm.discriminator = undefined;
V1PodAffinityTerm.attributeTypeMap = [
    {
        "name": "labelSelector",
        "baseName": "labelSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "namespaces",
        "baseName": "namespaces",
        "type": "Array<string>"
    },
    {
        "name": "topologyKey",
        "baseName": "topologyKey",
        "type": "string"
    }
];
exports.V1PodAffinityTerm = V1PodAffinityTerm;
/**
* Pod anti affinity is a group of inter pod anti affinity scheduling rules.
*/
class V1PodAntiAffinity {
    static getAttributeTypeMap() {
        return V1PodAntiAffinity.attributeTypeMap;
    }
}
V1PodAntiAffinity.discriminator = undefined;
V1PodAntiAffinity.attributeTypeMap = [
    {
        "name": "preferredDuringSchedulingIgnoredDuringExecution",
        "baseName": "preferredDuringSchedulingIgnoredDuringExecution",
        "type": "Array<V1WeightedPodAffinityTerm>"
    },
    {
        "name": "requiredDuringSchedulingIgnoredDuringExecution",
        "baseName": "requiredDuringSchedulingIgnoredDuringExecution",
        "type": "Array<V1PodAffinityTerm>"
    }
];
exports.V1PodAntiAffinity = V1PodAntiAffinity;
/**
* PodCondition contains details for the current condition of this pod.
*/
class V1PodCondition {
    static getAttributeTypeMap() {
        return V1PodCondition.attributeTypeMap;
    }
}
V1PodCondition.discriminator = undefined;
V1PodCondition.attributeTypeMap = [
    {
        "name": "lastProbeTime",
        "baseName": "lastProbeTime",
        "type": "Date"
    },
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1PodCondition = V1PodCondition;
/**
* PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy.
*/
class V1PodDNSConfig {
    static getAttributeTypeMap() {
        return V1PodDNSConfig.attributeTypeMap;
    }
}
V1PodDNSConfig.discriminator = undefined;
V1PodDNSConfig.attributeTypeMap = [
    {
        "name": "nameservers",
        "baseName": "nameservers",
        "type": "Array<string>"
    },
    {
        "name": "options",
        "baseName": "options",
        "type": "Array<V1PodDNSConfigOption>"
    },
    {
        "name": "searches",
        "baseName": "searches",
        "type": "Array<string>"
    }
];
exports.V1PodDNSConfig = V1PodDNSConfig;
/**
* PodDNSConfigOption defines DNS resolver options of a pod.
*/
class V1PodDNSConfigOption {
    static getAttributeTypeMap() {
        return V1PodDNSConfigOption.attributeTypeMap;
    }
}
V1PodDNSConfigOption.discriminator = undefined;
V1PodDNSConfigOption.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V1PodDNSConfigOption = V1PodDNSConfigOption;
/**
* PodList is a list of Pods.
*/
class V1PodList {
    static getAttributeTypeMap() {
        return V1PodList.attributeTypeMap;
    }
}
V1PodList.discriminator = undefined;
V1PodList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Pod>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1PodList = V1PodList;
/**
* PodReadinessGate contains the reference to a pod condition
*/
class V1PodReadinessGate {
    static getAttributeTypeMap() {
        return V1PodReadinessGate.attributeTypeMap;
    }
}
V1PodReadinessGate.discriminator = undefined;
V1PodReadinessGate.attributeTypeMap = [
    {
        "name": "conditionType",
        "baseName": "conditionType",
        "type": "string"
    }
];
exports.V1PodReadinessGate = V1PodReadinessGate;
/**
* PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext.  Field values of container.securityContext take precedence over field values of PodSecurityContext.
*/
class V1PodSecurityContext {
    static getAttributeTypeMap() {
        return V1PodSecurityContext.attributeTypeMap;
    }
}
V1PodSecurityContext.discriminator = undefined;
V1PodSecurityContext.attributeTypeMap = [
    {
        "name": "fsGroup",
        "baseName": "fsGroup",
        "type": "number"
    },
    {
        "name": "runAsGroup",
        "baseName": "runAsGroup",
        "type": "number"
    },
    {
        "name": "runAsNonRoot",
        "baseName": "runAsNonRoot",
        "type": "boolean"
    },
    {
        "name": "runAsUser",
        "baseName": "runAsUser",
        "type": "number"
    },
    {
        "name": "seLinuxOptions",
        "baseName": "seLinuxOptions",
        "type": "V1SELinuxOptions"
    },
    {
        "name": "supplementalGroups",
        "baseName": "supplementalGroups",
        "type": "Array<number>"
    },
    {
        "name": "sysctls",
        "baseName": "sysctls",
        "type": "Array<V1Sysctl>"
    }
];
exports.V1PodSecurityContext = V1PodSecurityContext;
/**
* PodSpec is a description of a pod.
*/
class V1PodSpec {
    static getAttributeTypeMap() {
        return V1PodSpec.attributeTypeMap;
    }
}
V1PodSpec.discriminator = undefined;
V1PodSpec.attributeTypeMap = [
    {
        "name": "activeDeadlineSeconds",
        "baseName": "activeDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "affinity",
        "baseName": "affinity",
        "type": "V1Affinity"
    },
    {
        "name": "automountServiceAccountToken",
        "baseName": "automountServiceAccountToken",
        "type": "boolean"
    },
    {
        "name": "containers",
        "baseName": "containers",
        "type": "Array<V1Container>"
    },
    {
        "name": "dnsConfig",
        "baseName": "dnsConfig",
        "type": "V1PodDNSConfig"
    },
    {
        "name": "dnsPolicy",
        "baseName": "dnsPolicy",
        "type": "string"
    },
    {
        "name": "enableServiceLinks",
        "baseName": "enableServiceLinks",
        "type": "boolean"
    },
    {
        "name": "hostAliases",
        "baseName": "hostAliases",
        "type": "Array<V1HostAlias>"
    },
    {
        "name": "hostIPC",
        "baseName": "hostIPC",
        "type": "boolean"
    },
    {
        "name": "hostNetwork",
        "baseName": "hostNetwork",
        "type": "boolean"
    },
    {
        "name": "hostPID",
        "baseName": "hostPID",
        "type": "boolean"
    },
    {
        "name": "hostname",
        "baseName": "hostname",
        "type": "string"
    },
    {
        "name": "imagePullSecrets",
        "baseName": "imagePullSecrets",
        "type": "Array<V1LocalObjectReference>"
    },
    {
        "name": "initContainers",
        "baseName": "initContainers",
        "type": "Array<V1Container>"
    },
    {
        "name": "nodeName",
        "baseName": "nodeName",
        "type": "string"
    },
    {
        "name": "nodeSelector",
        "baseName": "nodeSelector",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "priority",
        "baseName": "priority",
        "type": "number"
    },
    {
        "name": "priorityClassName",
        "baseName": "priorityClassName",
        "type": "string"
    },
    {
        "name": "readinessGates",
        "baseName": "readinessGates",
        "type": "Array<V1PodReadinessGate>"
    },
    {
        "name": "restartPolicy",
        "baseName": "restartPolicy",
        "type": "string"
    },
    {
        "name": "runtimeClassName",
        "baseName": "runtimeClassName",
        "type": "string"
    },
    {
        "name": "schedulerName",
        "baseName": "schedulerName",
        "type": "string"
    },
    {
        "name": "securityContext",
        "baseName": "securityContext",
        "type": "V1PodSecurityContext"
    },
    {
        "name": "serviceAccount",
        "baseName": "serviceAccount",
        "type": "string"
    },
    {
        "name": "serviceAccountName",
        "baseName": "serviceAccountName",
        "type": "string"
    },
    {
        "name": "shareProcessNamespace",
        "baseName": "shareProcessNamespace",
        "type": "boolean"
    },
    {
        "name": "subdomain",
        "baseName": "subdomain",
        "type": "string"
    },
    {
        "name": "terminationGracePeriodSeconds",
        "baseName": "terminationGracePeriodSeconds",
        "type": "number"
    },
    {
        "name": "tolerations",
        "baseName": "tolerations",
        "type": "Array<V1Toleration>"
    },
    {
        "name": "volumes",
        "baseName": "volumes",
        "type": "Array<V1Volume>"
    }
];
exports.V1PodSpec = V1PodSpec;
/**
* PodStatus represents information about the status of a pod. Status may trail the actual state of a system, especially if the node that hosts the pod cannot contact the control plane.
*/
class V1PodStatus {
    static getAttributeTypeMap() {
        return V1PodStatus.attributeTypeMap;
    }
}
V1PodStatus.discriminator = undefined;
V1PodStatus.attributeTypeMap = [
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1PodCondition>"
    },
    {
        "name": "containerStatuses",
        "baseName": "containerStatuses",
        "type": "Array<V1ContainerStatus>"
    },
    {
        "name": "hostIP",
        "baseName": "hostIP",
        "type": "string"
    },
    {
        "name": "initContainerStatuses",
        "baseName": "initContainerStatuses",
        "type": "Array<V1ContainerStatus>"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "nominatedNodeName",
        "baseName": "nominatedNodeName",
        "type": "string"
    },
    {
        "name": "phase",
        "baseName": "phase",
        "type": "string"
    },
    {
        "name": "podIP",
        "baseName": "podIP",
        "type": "string"
    },
    {
        "name": "qosClass",
        "baseName": "qosClass",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "startTime",
        "baseName": "startTime",
        "type": "Date"
    }
];
exports.V1PodStatus = V1PodStatus;
/**
* PodTemplate describes a template for creating copies of a predefined pod.
*/
class V1PodTemplate {
    static getAttributeTypeMap() {
        return V1PodTemplate.attributeTypeMap;
    }
}
V1PodTemplate.discriminator = undefined;
V1PodTemplate.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1PodTemplate = V1PodTemplate;
/**
* PodTemplateList is a list of PodTemplates.
*/
class V1PodTemplateList {
    static getAttributeTypeMap() {
        return V1PodTemplateList.attributeTypeMap;
    }
}
V1PodTemplateList.discriminator = undefined;
V1PodTemplateList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1PodTemplate>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1PodTemplateList = V1PodTemplateList;
/**
* PodTemplateSpec describes the data a pod should have when created from a template
*/
class V1PodTemplateSpec {
    static getAttributeTypeMap() {
        return V1PodTemplateSpec.attributeTypeMap;
    }
}
V1PodTemplateSpec.discriminator = undefined;
V1PodTemplateSpec.attributeTypeMap = [
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1PodSpec"
    }
];
exports.V1PodTemplateSpec = V1PodTemplateSpec;
/**
* PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.
*/
class V1PolicyRule {
    static getAttributeTypeMap() {
        return V1PolicyRule.attributeTypeMap;
    }
}
V1PolicyRule.discriminator = undefined;
V1PolicyRule.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "nonResourceURLs",
        "baseName": "nonResourceURLs",
        "type": "Array<string>"
    },
    {
        "name": "resourceNames",
        "baseName": "resourceNames",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1PolicyRule = V1PolicyRule;
/**
* PortworxVolumeSource represents a Portworx volume resource.
*/
class V1PortworxVolumeSource {
    static getAttributeTypeMap() {
        return V1PortworxVolumeSource.attributeTypeMap;
    }
}
V1PortworxVolumeSource.discriminator = undefined;
V1PortworxVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "volumeID",
        "baseName": "volumeID",
        "type": "string"
    }
];
exports.V1PortworxVolumeSource = V1PortworxVolumeSource;
/**
* Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out.
*/
class V1Preconditions {
    static getAttributeTypeMap() {
        return V1Preconditions.attributeTypeMap;
    }
}
V1Preconditions.discriminator = undefined;
V1Preconditions.attributeTypeMap = [
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    }
];
exports.V1Preconditions = V1Preconditions;
/**
* An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
*/
class V1PreferredSchedulingTerm {
    static getAttributeTypeMap() {
        return V1PreferredSchedulingTerm.attributeTypeMap;
    }
}
V1PreferredSchedulingTerm.discriminator = undefined;
V1PreferredSchedulingTerm.attributeTypeMap = [
    {
        "name": "preference",
        "baseName": "preference",
        "type": "V1NodeSelectorTerm"
    },
    {
        "name": "weight",
        "baseName": "weight",
        "type": "number"
    }
];
exports.V1PreferredSchedulingTerm = V1PreferredSchedulingTerm;
/**
* Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.
*/
class V1Probe {
    static getAttributeTypeMap() {
        return V1Probe.attributeTypeMap;
    }
}
V1Probe.discriminator = undefined;
V1Probe.attributeTypeMap = [
    {
        "name": "exec",
        "baseName": "exec",
        "type": "V1ExecAction"
    },
    {
        "name": "failureThreshold",
        "baseName": "failureThreshold",
        "type": "number"
    },
    {
        "name": "httpGet",
        "baseName": "httpGet",
        "type": "V1HTTPGetAction"
    },
    {
        "name": "initialDelaySeconds",
        "baseName": "initialDelaySeconds",
        "type": "number"
    },
    {
        "name": "periodSeconds",
        "baseName": "periodSeconds",
        "type": "number"
    },
    {
        "name": "successThreshold",
        "baseName": "successThreshold",
        "type": "number"
    },
    {
        "name": "tcpSocket",
        "baseName": "tcpSocket",
        "type": "V1TCPSocketAction"
    },
    {
        "name": "timeoutSeconds",
        "baseName": "timeoutSeconds",
        "type": "number"
    }
];
exports.V1Probe = V1Probe;
/**
* Represents a projected volume source
*/
class V1ProjectedVolumeSource {
    static getAttributeTypeMap() {
        return V1ProjectedVolumeSource.attributeTypeMap;
    }
}
V1ProjectedVolumeSource.discriminator = undefined;
V1ProjectedVolumeSource.attributeTypeMap = [
    {
        "name": "defaultMode",
        "baseName": "defaultMode",
        "type": "number"
    },
    {
        "name": "sources",
        "baseName": "sources",
        "type": "Array<V1VolumeProjection>"
    }
];
exports.V1ProjectedVolumeSource = V1ProjectedVolumeSource;
/**
* Represents a Quobyte mount that lasts the lifetime of a pod. Quobyte volumes do not support ownership management or SELinux relabeling.
*/
class V1QuobyteVolumeSource {
    static getAttributeTypeMap() {
        return V1QuobyteVolumeSource.attributeTypeMap;
    }
}
V1QuobyteVolumeSource.discriminator = undefined;
V1QuobyteVolumeSource.attributeTypeMap = [
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "registry",
        "baseName": "registry",
        "type": "string"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    },
    {
        "name": "volume",
        "baseName": "volume",
        "type": "string"
    }
];
exports.V1QuobyteVolumeSource = V1QuobyteVolumeSource;
/**
* Represents a Rados Block Device mount that lasts the lifetime of a pod. RBD volumes support ownership management and SELinux relabeling.
*/
class V1RBDPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1RBDPersistentVolumeSource.attributeTypeMap;
    }
}
V1RBDPersistentVolumeSource.discriminator = undefined;
V1RBDPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "image",
        "baseName": "image",
        "type": "string"
    },
    {
        "name": "keyring",
        "baseName": "keyring",
        "type": "string"
    },
    {
        "name": "monitors",
        "baseName": "monitors",
        "type": "Array<string>"
    },
    {
        "name": "pool",
        "baseName": "pool",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1RBDPersistentVolumeSource = V1RBDPersistentVolumeSource;
/**
* Represents a Rados Block Device mount that lasts the lifetime of a pod. RBD volumes support ownership management and SELinux relabeling.
*/
class V1RBDVolumeSource {
    static getAttributeTypeMap() {
        return V1RBDVolumeSource.attributeTypeMap;
    }
}
V1RBDVolumeSource.discriminator = undefined;
V1RBDVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "image",
        "baseName": "image",
        "type": "string"
    },
    {
        "name": "keyring",
        "baseName": "keyring",
        "type": "string"
    },
    {
        "name": "monitors",
        "baseName": "monitors",
        "type": "Array<string>"
    },
    {
        "name": "pool",
        "baseName": "pool",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1RBDVolumeSource = V1RBDVolumeSource;
/**
* ReplicaSet ensures that a specified number of pod replicas are running at any given time.
*/
class V1ReplicaSet {
    static getAttributeTypeMap() {
        return V1ReplicaSet.attributeTypeMap;
    }
}
V1ReplicaSet.discriminator = undefined;
V1ReplicaSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1ReplicaSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1ReplicaSetStatus"
    }
];
exports.V1ReplicaSet = V1ReplicaSet;
/**
* ReplicaSetCondition describes the state of a replica set at a certain point.
*/
class V1ReplicaSetCondition {
    static getAttributeTypeMap() {
        return V1ReplicaSetCondition.attributeTypeMap;
    }
}
V1ReplicaSetCondition.discriminator = undefined;
V1ReplicaSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1ReplicaSetCondition = V1ReplicaSetCondition;
/**
* ReplicaSetList is a collection of ReplicaSets.
*/
class V1ReplicaSetList {
    static getAttributeTypeMap() {
        return V1ReplicaSetList.attributeTypeMap;
    }
}
V1ReplicaSetList.discriminator = undefined;
V1ReplicaSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ReplicaSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ReplicaSetList = V1ReplicaSetList;
/**
* ReplicaSetSpec is the specification of a ReplicaSet.
*/
class V1ReplicaSetSpec {
    static getAttributeTypeMap() {
        return V1ReplicaSetSpec.attributeTypeMap;
    }
}
V1ReplicaSetSpec.discriminator = undefined;
V1ReplicaSetSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1ReplicaSetSpec = V1ReplicaSetSpec;
/**
* ReplicaSetStatus represents the current status of a ReplicaSet.
*/
class V1ReplicaSetStatus {
    static getAttributeTypeMap() {
        return V1ReplicaSetStatus.attributeTypeMap;
    }
}
V1ReplicaSetStatus.discriminator = undefined;
V1ReplicaSetStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1ReplicaSetCondition>"
    },
    {
        "name": "fullyLabeledReplicas",
        "baseName": "fullyLabeledReplicas",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.V1ReplicaSetStatus = V1ReplicaSetStatus;
/**
* ReplicationController represents the configuration of a replication controller.
*/
class V1ReplicationController {
    static getAttributeTypeMap() {
        return V1ReplicationController.attributeTypeMap;
    }
}
V1ReplicationController.discriminator = undefined;
V1ReplicationController.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1ReplicationControllerSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1ReplicationControllerStatus"
    }
];
exports.V1ReplicationController = V1ReplicationController;
/**
* ReplicationControllerCondition describes the state of a replication controller at a certain point.
*/
class V1ReplicationControllerCondition {
    static getAttributeTypeMap() {
        return V1ReplicationControllerCondition.attributeTypeMap;
    }
}
V1ReplicationControllerCondition.discriminator = undefined;
V1ReplicationControllerCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1ReplicationControllerCondition = V1ReplicationControllerCondition;
/**
* ReplicationControllerList is a collection of replication controllers.
*/
class V1ReplicationControllerList {
    static getAttributeTypeMap() {
        return V1ReplicationControllerList.attributeTypeMap;
    }
}
V1ReplicationControllerList.discriminator = undefined;
V1ReplicationControllerList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ReplicationController>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ReplicationControllerList = V1ReplicationControllerList;
/**
* ReplicationControllerSpec is the specification of a replication controller.
*/
class V1ReplicationControllerSpec {
    static getAttributeTypeMap() {
        return V1ReplicationControllerSpec.attributeTypeMap;
    }
}
V1ReplicationControllerSpec.discriminator = undefined;
V1ReplicationControllerSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1ReplicationControllerSpec = V1ReplicationControllerSpec;
/**
* ReplicationControllerStatus represents the current status of a replication controller.
*/
class V1ReplicationControllerStatus {
    static getAttributeTypeMap() {
        return V1ReplicationControllerStatus.attributeTypeMap;
    }
}
V1ReplicationControllerStatus.discriminator = undefined;
V1ReplicationControllerStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1ReplicationControllerCondition>"
    },
    {
        "name": "fullyLabeledReplicas",
        "baseName": "fullyLabeledReplicas",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.V1ReplicationControllerStatus = V1ReplicationControllerStatus;
/**
* ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface
*/
class V1ResourceAttributes {
    static getAttributeTypeMap() {
        return V1ResourceAttributes.attributeTypeMap;
    }
}
V1ResourceAttributes.discriminator = undefined;
V1ResourceAttributes.attributeTypeMap = [
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "string"
    },
    {
        "name": "subresource",
        "baseName": "subresource",
        "type": "string"
    },
    {
        "name": "verb",
        "baseName": "verb",
        "type": "string"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    }
];
exports.V1ResourceAttributes = V1ResourceAttributes;
/**
* ResourceFieldSelector represents container resources (cpu, memory) and their output format
*/
class V1ResourceFieldSelector {
    static getAttributeTypeMap() {
        return V1ResourceFieldSelector.attributeTypeMap;
    }
}
V1ResourceFieldSelector.discriminator = undefined;
V1ResourceFieldSelector.attributeTypeMap = [
    {
        "name": "containerName",
        "baseName": "containerName",
        "type": "string"
    },
    {
        "name": "divisor",
        "baseName": "divisor",
        "type": "string"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "string"
    }
];
exports.V1ResourceFieldSelector = V1ResourceFieldSelector;
/**
* ResourceQuota sets aggregate quota restrictions enforced per namespace
*/
class V1ResourceQuota {
    static getAttributeTypeMap() {
        return V1ResourceQuota.attributeTypeMap;
    }
}
V1ResourceQuota.discriminator = undefined;
V1ResourceQuota.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1ResourceQuotaSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1ResourceQuotaStatus"
    }
];
exports.V1ResourceQuota = V1ResourceQuota;
/**
* ResourceQuotaList is a list of ResourceQuota items.
*/
class V1ResourceQuotaList {
    static getAttributeTypeMap() {
        return V1ResourceQuotaList.attributeTypeMap;
    }
}
V1ResourceQuotaList.discriminator = undefined;
V1ResourceQuotaList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ResourceQuota>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ResourceQuotaList = V1ResourceQuotaList;
/**
* ResourceQuotaSpec defines the desired hard limits to enforce for Quota.
*/
class V1ResourceQuotaSpec {
    static getAttributeTypeMap() {
        return V1ResourceQuotaSpec.attributeTypeMap;
    }
}
V1ResourceQuotaSpec.discriminator = undefined;
V1ResourceQuotaSpec.attributeTypeMap = [
    {
        "name": "hard",
        "baseName": "hard",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "scopeSelector",
        "baseName": "scopeSelector",
        "type": "V1ScopeSelector"
    },
    {
        "name": "scopes",
        "baseName": "scopes",
        "type": "Array<string>"
    }
];
exports.V1ResourceQuotaSpec = V1ResourceQuotaSpec;
/**
* ResourceQuotaStatus defines the enforced hard limits and observed use.
*/
class V1ResourceQuotaStatus {
    static getAttributeTypeMap() {
        return V1ResourceQuotaStatus.attributeTypeMap;
    }
}
V1ResourceQuotaStatus.discriminator = undefined;
V1ResourceQuotaStatus.attributeTypeMap = [
    {
        "name": "hard",
        "baseName": "hard",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "used",
        "baseName": "used",
        "type": "{ [key: string]: string; }"
    }
];
exports.V1ResourceQuotaStatus = V1ResourceQuotaStatus;
/**
* ResourceRequirements describes the compute resource requirements.
*/
class V1ResourceRequirements {
    static getAttributeTypeMap() {
        return V1ResourceRequirements.attributeTypeMap;
    }
}
V1ResourceRequirements.discriminator = undefined;
V1ResourceRequirements.attributeTypeMap = [
    {
        "name": "limits",
        "baseName": "limits",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "requests",
        "baseName": "requests",
        "type": "{ [key: string]: string; }"
    }
];
exports.V1ResourceRequirements = V1ResourceRequirements;
/**
* ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
*/
class V1ResourceRule {
    static getAttributeTypeMap() {
        return V1ResourceRule.attributeTypeMap;
    }
}
V1ResourceRule.discriminator = undefined;
V1ResourceRule.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "resourceNames",
        "baseName": "resourceNames",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1ResourceRule = V1ResourceRule;
/**
* Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.
*/
class V1Role {
    static getAttributeTypeMap() {
        return V1Role.attributeTypeMap;
    }
}
V1Role.discriminator = undefined;
V1Role.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1PolicyRule>"
    }
];
exports.V1Role = V1Role;
/**
* RoleBinding references a role, but does not contain it.  It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in.  RoleBindings in a given namespace only have effect in that namespace.
*/
class V1RoleBinding {
    static getAttributeTypeMap() {
        return V1RoleBinding.attributeTypeMap;
    }
}
V1RoleBinding.discriminator = undefined;
V1RoleBinding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "roleRef",
        "baseName": "roleRef",
        "type": "V1RoleRef"
    },
    {
        "name": "subjects",
        "baseName": "subjects",
        "type": "Array<V1Subject>"
    }
];
exports.V1RoleBinding = V1RoleBinding;
/**
* RoleBindingList is a collection of RoleBindings
*/
class V1RoleBindingList {
    static getAttributeTypeMap() {
        return V1RoleBindingList.attributeTypeMap;
    }
}
V1RoleBindingList.discriminator = undefined;
V1RoleBindingList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1RoleBinding>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1RoleBindingList = V1RoleBindingList;
/**
* RoleList is a collection of Roles
*/
class V1RoleList {
    static getAttributeTypeMap() {
        return V1RoleList.attributeTypeMap;
    }
}
V1RoleList.discriminator = undefined;
V1RoleList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Role>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1RoleList = V1RoleList;
/**
* RoleRef contains information that points to the role being used
*/
class V1RoleRef {
    static getAttributeTypeMap() {
        return V1RoleRef.attributeTypeMap;
    }
}
V1RoleRef.discriminator = undefined;
V1RoleRef.attributeTypeMap = [
    {
        "name": "apiGroup",
        "baseName": "apiGroup",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1RoleRef = V1RoleRef;
/**
* Spec to control the desired behavior of daemon set rolling update.
*/
class V1RollingUpdateDaemonSet {
    static getAttributeTypeMap() {
        return V1RollingUpdateDaemonSet.attributeTypeMap;
    }
}
V1RollingUpdateDaemonSet.discriminator = undefined;
V1RollingUpdateDaemonSet.attributeTypeMap = [
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.V1RollingUpdateDaemonSet = V1RollingUpdateDaemonSet;
/**
* Spec to control the desired behavior of rolling update.
*/
class V1RollingUpdateDeployment {
    static getAttributeTypeMap() {
        return V1RollingUpdateDeployment.attributeTypeMap;
    }
}
V1RollingUpdateDeployment.discriminator = undefined;
V1RollingUpdateDeployment.attributeTypeMap = [
    {
        "name": "maxSurge",
        "baseName": "maxSurge",
        "type": "any"
    },
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.V1RollingUpdateDeployment = V1RollingUpdateDeployment;
/**
* RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.
*/
class V1RollingUpdateStatefulSetStrategy {
    static getAttributeTypeMap() {
        return V1RollingUpdateStatefulSetStrategy.attributeTypeMap;
    }
}
V1RollingUpdateStatefulSetStrategy.discriminator = undefined;
V1RollingUpdateStatefulSetStrategy.attributeTypeMap = [
    {
        "name": "partition",
        "baseName": "partition",
        "type": "number"
    }
];
exports.V1RollingUpdateStatefulSetStrategy = V1RollingUpdateStatefulSetStrategy;
/**
* SELinuxOptions are the labels to be applied to the container
*/
class V1SELinuxOptions {
    static getAttributeTypeMap() {
        return V1SELinuxOptions.attributeTypeMap;
    }
}
V1SELinuxOptions.discriminator = undefined;
V1SELinuxOptions.attributeTypeMap = [
    {
        "name": "level",
        "baseName": "level",
        "type": "string"
    },
    {
        "name": "role",
        "baseName": "role",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1SELinuxOptions = V1SELinuxOptions;
/**
* Scale represents a scaling request for a resource.
*/
class V1Scale {
    static getAttributeTypeMap() {
        return V1Scale.attributeTypeMap;
    }
}
V1Scale.discriminator = undefined;
V1Scale.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1ScaleSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1ScaleStatus"
    }
];
exports.V1Scale = V1Scale;
/**
* ScaleIOPersistentVolumeSource represents a persistent ScaleIO volume
*/
class V1ScaleIOPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1ScaleIOPersistentVolumeSource.attributeTypeMap;
    }
}
V1ScaleIOPersistentVolumeSource.discriminator = undefined;
V1ScaleIOPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "gateway",
        "baseName": "gateway",
        "type": "string"
    },
    {
        "name": "protectionDomain",
        "baseName": "protectionDomain",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1SecretReference"
    },
    {
        "name": "sslEnabled",
        "baseName": "sslEnabled",
        "type": "boolean"
    },
    {
        "name": "storageMode",
        "baseName": "storageMode",
        "type": "string"
    },
    {
        "name": "storagePool",
        "baseName": "storagePool",
        "type": "string"
    },
    {
        "name": "system",
        "baseName": "system",
        "type": "string"
    },
    {
        "name": "volumeName",
        "baseName": "volumeName",
        "type": "string"
    }
];
exports.V1ScaleIOPersistentVolumeSource = V1ScaleIOPersistentVolumeSource;
/**
* ScaleIOVolumeSource represents a persistent ScaleIO volume
*/
class V1ScaleIOVolumeSource {
    static getAttributeTypeMap() {
        return V1ScaleIOVolumeSource.attributeTypeMap;
    }
}
V1ScaleIOVolumeSource.discriminator = undefined;
V1ScaleIOVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "gateway",
        "baseName": "gateway",
        "type": "string"
    },
    {
        "name": "protectionDomain",
        "baseName": "protectionDomain",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    },
    {
        "name": "sslEnabled",
        "baseName": "sslEnabled",
        "type": "boolean"
    },
    {
        "name": "storageMode",
        "baseName": "storageMode",
        "type": "string"
    },
    {
        "name": "storagePool",
        "baseName": "storagePool",
        "type": "string"
    },
    {
        "name": "system",
        "baseName": "system",
        "type": "string"
    },
    {
        "name": "volumeName",
        "baseName": "volumeName",
        "type": "string"
    }
];
exports.V1ScaleIOVolumeSource = V1ScaleIOVolumeSource;
/**
* ScaleSpec describes the attributes of a scale subresource.
*/
class V1ScaleSpec {
    static getAttributeTypeMap() {
        return V1ScaleSpec.attributeTypeMap;
    }
}
V1ScaleSpec.discriminator = undefined;
V1ScaleSpec.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.V1ScaleSpec = V1ScaleSpec;
/**
* ScaleStatus represents the current status of a scale subresource.
*/
class V1ScaleStatus {
    static getAttributeTypeMap() {
        return V1ScaleStatus.attributeTypeMap;
    }
}
V1ScaleStatus.discriminator = undefined;
V1ScaleStatus.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "string"
    }
];
exports.V1ScaleStatus = V1ScaleStatus;
/**
* A scope selector represents the AND of the selectors represented by the scoped-resource selector requirements.
*/
class V1ScopeSelector {
    static getAttributeTypeMap() {
        return V1ScopeSelector.attributeTypeMap;
    }
}
V1ScopeSelector.discriminator = undefined;
V1ScopeSelector.attributeTypeMap = [
    {
        "name": "matchExpressions",
        "baseName": "matchExpressions",
        "type": "Array<V1ScopedResourceSelectorRequirement>"
    }
];
exports.V1ScopeSelector = V1ScopeSelector;
/**
* A scoped-resource selector requirement is a selector that contains values, a scope name, and an operator that relates the scope name and values.
*/
class V1ScopedResourceSelectorRequirement {
    static getAttributeTypeMap() {
        return V1ScopedResourceSelectorRequirement.attributeTypeMap;
    }
}
V1ScopedResourceSelectorRequirement.discriminator = undefined;
V1ScopedResourceSelectorRequirement.attributeTypeMap = [
    {
        "name": "operator",
        "baseName": "operator",
        "type": "string"
    },
    {
        "name": "scopeName",
        "baseName": "scopeName",
        "type": "string"
    },
    {
        "name": "values",
        "baseName": "values",
        "type": "Array<string>"
    }
];
exports.V1ScopedResourceSelectorRequirement = V1ScopedResourceSelectorRequirement;
/**
* Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.
*/
class V1Secret {
    static getAttributeTypeMap() {
        return V1Secret.attributeTypeMap;
    }
}
V1Secret.discriminator = undefined;
V1Secret.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "data",
        "baseName": "data",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "stringData",
        "baseName": "stringData",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1Secret = V1Secret;
/**
* SecretEnvSource selects a Secret to populate the environment variables with.  The contents of the target Secret's Data field will represent the key-value pairs as environment variables.
*/
class V1SecretEnvSource {
    static getAttributeTypeMap() {
        return V1SecretEnvSource.attributeTypeMap;
    }
}
V1SecretEnvSource.discriminator = undefined;
V1SecretEnvSource.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1SecretEnvSource = V1SecretEnvSource;
/**
* SecretKeySelector selects a key of a Secret.
*/
class V1SecretKeySelector {
    static getAttributeTypeMap() {
        return V1SecretKeySelector.attributeTypeMap;
    }
}
V1SecretKeySelector.discriminator = undefined;
V1SecretKeySelector.attributeTypeMap = [
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1SecretKeySelector = V1SecretKeySelector;
/**
* SecretList is a list of Secret.
*/
class V1SecretList {
    static getAttributeTypeMap() {
        return V1SecretList.attributeTypeMap;
    }
}
V1SecretList.discriminator = undefined;
V1SecretList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Secret>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1SecretList = V1SecretList;
/**
* Adapts a secret into a projected volume.  The contents of the target Secret's Data field will be presented in a projected volume as files using the keys in the Data field as the file names. Note that this is identical to a secret volume source without the default mode.
*/
class V1SecretProjection {
    static getAttributeTypeMap() {
        return V1SecretProjection.attributeTypeMap;
    }
}
V1SecretProjection.discriminator = undefined;
V1SecretProjection.attributeTypeMap = [
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1KeyToPath>"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    }
];
exports.V1SecretProjection = V1SecretProjection;
/**
* SecretReference represents a Secret Reference. It has enough information to retrieve secret in any namespace
*/
class V1SecretReference {
    static getAttributeTypeMap() {
        return V1SecretReference.attributeTypeMap;
    }
}
V1SecretReference.discriminator = undefined;
V1SecretReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1SecretReference = V1SecretReference;
/**
* Adapts a Secret into a volume.  The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. Secret volumes support ownership management and SELinux relabeling.
*/
class V1SecretVolumeSource {
    static getAttributeTypeMap() {
        return V1SecretVolumeSource.attributeTypeMap;
    }
}
V1SecretVolumeSource.discriminator = undefined;
V1SecretVolumeSource.attributeTypeMap = [
    {
        "name": "defaultMode",
        "baseName": "defaultMode",
        "type": "number"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1KeyToPath>"
    },
    {
        "name": "optional",
        "baseName": "optional",
        "type": "boolean"
    },
    {
        "name": "secretName",
        "baseName": "secretName",
        "type": "string"
    }
];
exports.V1SecretVolumeSource = V1SecretVolumeSource;
/**
* SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext.  When both are set, the values in SecurityContext take precedence.
*/
class V1SecurityContext {
    static getAttributeTypeMap() {
        return V1SecurityContext.attributeTypeMap;
    }
}
V1SecurityContext.discriminator = undefined;
V1SecurityContext.attributeTypeMap = [
    {
        "name": "allowPrivilegeEscalation",
        "baseName": "allowPrivilegeEscalation",
        "type": "boolean"
    },
    {
        "name": "capabilities",
        "baseName": "capabilities",
        "type": "V1Capabilities"
    },
    {
        "name": "privileged",
        "baseName": "privileged",
        "type": "boolean"
    },
    {
        "name": "procMount",
        "baseName": "procMount",
        "type": "string"
    },
    {
        "name": "readOnlyRootFilesystem",
        "baseName": "readOnlyRootFilesystem",
        "type": "boolean"
    },
    {
        "name": "runAsGroup",
        "baseName": "runAsGroup",
        "type": "number"
    },
    {
        "name": "runAsNonRoot",
        "baseName": "runAsNonRoot",
        "type": "boolean"
    },
    {
        "name": "runAsUser",
        "baseName": "runAsUser",
        "type": "number"
    },
    {
        "name": "seLinuxOptions",
        "baseName": "seLinuxOptions",
        "type": "V1SELinuxOptions"
    }
];
exports.V1SecurityContext = V1SecurityContext;
/**
* SelfSubjectAccessReview checks whether or the current user can perform an action.  Not filling in a spec.namespace means \"in all namespaces\".  Self is a special case, because users should always be able to check whether they can perform an action
*/
class V1SelfSubjectAccessReview {
    static getAttributeTypeMap() {
        return V1SelfSubjectAccessReview.attributeTypeMap;
    }
}
V1SelfSubjectAccessReview.discriminator = undefined;
V1SelfSubjectAccessReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1SelfSubjectAccessReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1SubjectAccessReviewStatus"
    }
];
exports.V1SelfSubjectAccessReview = V1SelfSubjectAccessReview;
/**
* SelfSubjectAccessReviewSpec is a description of the access request.  Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set
*/
class V1SelfSubjectAccessReviewSpec {
    static getAttributeTypeMap() {
        return V1SelfSubjectAccessReviewSpec.attributeTypeMap;
    }
}
V1SelfSubjectAccessReviewSpec.discriminator = undefined;
V1SelfSubjectAccessReviewSpec.attributeTypeMap = [
    {
        "name": "nonResourceAttributes",
        "baseName": "nonResourceAttributes",
        "type": "V1NonResourceAttributes"
    },
    {
        "name": "resourceAttributes",
        "baseName": "resourceAttributes",
        "type": "V1ResourceAttributes"
    }
];
exports.V1SelfSubjectAccessReviewSpec = V1SelfSubjectAccessReviewSpec;
/**
* SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server's authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.
*/
class V1SelfSubjectRulesReview {
    static getAttributeTypeMap() {
        return V1SelfSubjectRulesReview.attributeTypeMap;
    }
}
V1SelfSubjectRulesReview.discriminator = undefined;
V1SelfSubjectRulesReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1SelfSubjectRulesReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1SubjectRulesReviewStatus"
    }
];
exports.V1SelfSubjectRulesReview = V1SelfSubjectRulesReview;
class V1SelfSubjectRulesReviewSpec {
    static getAttributeTypeMap() {
        return V1SelfSubjectRulesReviewSpec.attributeTypeMap;
    }
}
V1SelfSubjectRulesReviewSpec.discriminator = undefined;
V1SelfSubjectRulesReviewSpec.attributeTypeMap = [
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1SelfSubjectRulesReviewSpec = V1SelfSubjectRulesReviewSpec;
/**
* ServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match.
*/
class V1ServerAddressByClientCIDR {
    static getAttributeTypeMap() {
        return V1ServerAddressByClientCIDR.attributeTypeMap;
    }
}
V1ServerAddressByClientCIDR.discriminator = undefined;
V1ServerAddressByClientCIDR.attributeTypeMap = [
    {
        "name": "clientCIDR",
        "baseName": "clientCIDR",
        "type": "string"
    },
    {
        "name": "serverAddress",
        "baseName": "serverAddress",
        "type": "string"
    }
];
exports.V1ServerAddressByClientCIDR = V1ServerAddressByClientCIDR;
/**
* Service is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.
*/
class V1Service {
    static getAttributeTypeMap() {
        return V1Service.attributeTypeMap;
    }
}
V1Service.discriminator = undefined;
V1Service.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1ServiceSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1ServiceStatus"
    }
];
exports.V1Service = V1Service;
/**
* ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets
*/
class V1ServiceAccount {
    static getAttributeTypeMap() {
        return V1ServiceAccount.attributeTypeMap;
    }
}
V1ServiceAccount.discriminator = undefined;
V1ServiceAccount.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "automountServiceAccountToken",
        "baseName": "automountServiceAccountToken",
        "type": "boolean"
    },
    {
        "name": "imagePullSecrets",
        "baseName": "imagePullSecrets",
        "type": "Array<V1LocalObjectReference>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "secrets",
        "baseName": "secrets",
        "type": "Array<V1ObjectReference>"
    }
];
exports.V1ServiceAccount = V1ServiceAccount;
/**
* ServiceAccountList is a list of ServiceAccount objects
*/
class V1ServiceAccountList {
    static getAttributeTypeMap() {
        return V1ServiceAccountList.attributeTypeMap;
    }
}
V1ServiceAccountList.discriminator = undefined;
V1ServiceAccountList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1ServiceAccount>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ServiceAccountList = V1ServiceAccountList;
/**
* ServiceAccountTokenProjection represents a projected service account token volume. This projection can be used to insert a service account token into the pods runtime filesystem for use against APIs (Kubernetes API Server or otherwise).
*/
class V1ServiceAccountTokenProjection {
    static getAttributeTypeMap() {
        return V1ServiceAccountTokenProjection.attributeTypeMap;
    }
}
V1ServiceAccountTokenProjection.discriminator = undefined;
V1ServiceAccountTokenProjection.attributeTypeMap = [
    {
        "name": "audience",
        "baseName": "audience",
        "type": "string"
    },
    {
        "name": "expirationSeconds",
        "baseName": "expirationSeconds",
        "type": "number"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.V1ServiceAccountTokenProjection = V1ServiceAccountTokenProjection;
/**
* ServiceList holds a list of services.
*/
class V1ServiceList {
    static getAttributeTypeMap() {
        return V1ServiceList.attributeTypeMap;
    }
}
V1ServiceList.discriminator = undefined;
V1ServiceList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1Service>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1ServiceList = V1ServiceList;
/**
* ServicePort contains information on service's port.
*/
class V1ServicePort {
    static getAttributeTypeMap() {
        return V1ServicePort.attributeTypeMap;
    }
}
V1ServicePort.discriminator = undefined;
V1ServicePort.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "nodePort",
        "baseName": "nodePort",
        "type": "number"
    },
    {
        "name": "port",
        "baseName": "port",
        "type": "number"
    },
    {
        "name": "protocol",
        "baseName": "protocol",
        "type": "string"
    },
    {
        "name": "targetPort",
        "baseName": "targetPort",
        "type": "any"
    }
];
exports.V1ServicePort = V1ServicePort;
/**
* ServiceReference holds a reference to Service.legacy.k8s.io
*/
class V1ServiceReference {
    static getAttributeTypeMap() {
        return V1ServiceReference.attributeTypeMap;
    }
}
V1ServiceReference.discriminator = undefined;
V1ServiceReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1ServiceReference = V1ServiceReference;
/**
* ServiceSpec describes the attributes that a user creates on a service.
*/
class V1ServiceSpec {
    static getAttributeTypeMap() {
        return V1ServiceSpec.attributeTypeMap;
    }
}
V1ServiceSpec.discriminator = undefined;
V1ServiceSpec.attributeTypeMap = [
    {
        "name": "clusterIP",
        "baseName": "clusterIP",
        "type": "string"
    },
    {
        "name": "externalIPs",
        "baseName": "externalIPs",
        "type": "Array<string>"
    },
    {
        "name": "externalName",
        "baseName": "externalName",
        "type": "string"
    },
    {
        "name": "externalTrafficPolicy",
        "baseName": "externalTrafficPolicy",
        "type": "string"
    },
    {
        "name": "healthCheckNodePort",
        "baseName": "healthCheckNodePort",
        "type": "number"
    },
    {
        "name": "loadBalancerIP",
        "baseName": "loadBalancerIP",
        "type": "string"
    },
    {
        "name": "loadBalancerSourceRanges",
        "baseName": "loadBalancerSourceRanges",
        "type": "Array<string>"
    },
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1ServicePort>"
    },
    {
        "name": "publishNotReadyAddresses",
        "baseName": "publishNotReadyAddresses",
        "type": "boolean"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "sessionAffinity",
        "baseName": "sessionAffinity",
        "type": "string"
    },
    {
        "name": "sessionAffinityConfig",
        "baseName": "sessionAffinityConfig",
        "type": "V1SessionAffinityConfig"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1ServiceSpec = V1ServiceSpec;
/**
* ServiceStatus represents the current status of a service.
*/
class V1ServiceStatus {
    static getAttributeTypeMap() {
        return V1ServiceStatus.attributeTypeMap;
    }
}
V1ServiceStatus.discriminator = undefined;
V1ServiceStatus.attributeTypeMap = [
    {
        "name": "loadBalancer",
        "baseName": "loadBalancer",
        "type": "V1LoadBalancerStatus"
    }
];
exports.V1ServiceStatus = V1ServiceStatus;
/**
* SessionAffinityConfig represents the configurations of session affinity.
*/
class V1SessionAffinityConfig {
    static getAttributeTypeMap() {
        return V1SessionAffinityConfig.attributeTypeMap;
    }
}
V1SessionAffinityConfig.discriminator = undefined;
V1SessionAffinityConfig.attributeTypeMap = [
    {
        "name": "clientIP",
        "baseName": "clientIP",
        "type": "V1ClientIPConfig"
    }
];
exports.V1SessionAffinityConfig = V1SessionAffinityConfig;
/**
* StatefulSet represents a set of pods with consistent identities. Identities are defined as:  - Network: A single stable DNS and hostname.  - Storage: As many VolumeClaims as requested. The StatefulSet guarantees that a given network identity will always map to the same storage identity.
*/
class V1StatefulSet {
    static getAttributeTypeMap() {
        return V1StatefulSet.attributeTypeMap;
    }
}
V1StatefulSet.discriminator = undefined;
V1StatefulSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1StatefulSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1StatefulSetStatus"
    }
];
exports.V1StatefulSet = V1StatefulSet;
/**
* StatefulSetCondition describes the state of a statefulset at a certain point.
*/
class V1StatefulSetCondition {
    static getAttributeTypeMap() {
        return V1StatefulSetCondition.attributeTypeMap;
    }
}
V1StatefulSetCondition.discriminator = undefined;
V1StatefulSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1StatefulSetCondition = V1StatefulSetCondition;
/**
* StatefulSetList is a collection of StatefulSets.
*/
class V1StatefulSetList {
    static getAttributeTypeMap() {
        return V1StatefulSetList.attributeTypeMap;
    }
}
V1StatefulSetList.discriminator = undefined;
V1StatefulSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1StatefulSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1StatefulSetList = V1StatefulSetList;
/**
* A StatefulSetSpec is the specification of a StatefulSet.
*/
class V1StatefulSetSpec {
    static getAttributeTypeMap() {
        return V1StatefulSetSpec.attributeTypeMap;
    }
}
V1StatefulSetSpec.discriminator = undefined;
V1StatefulSetSpec.attributeTypeMap = [
    {
        "name": "podManagementPolicy",
        "baseName": "podManagementPolicy",
        "type": "string"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "serviceName",
        "baseName": "serviceName",
        "type": "string"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "updateStrategy",
        "baseName": "updateStrategy",
        "type": "V1StatefulSetUpdateStrategy"
    },
    {
        "name": "volumeClaimTemplates",
        "baseName": "volumeClaimTemplates",
        "type": "Array<V1PersistentVolumeClaim>"
    }
];
exports.V1StatefulSetSpec = V1StatefulSetSpec;
/**
* StatefulSetStatus represents the current state of a StatefulSet.
*/
class V1StatefulSetStatus {
    static getAttributeTypeMap() {
        return V1StatefulSetStatus.attributeTypeMap;
    }
}
V1StatefulSetStatus.discriminator = undefined;
V1StatefulSetStatus.attributeTypeMap = [
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1StatefulSetCondition>"
    },
    {
        "name": "currentReplicas",
        "baseName": "currentReplicas",
        "type": "number"
    },
    {
        "name": "currentRevision",
        "baseName": "currentRevision",
        "type": "string"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "updateRevision",
        "baseName": "updateRevision",
        "type": "string"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.V1StatefulSetStatus = V1StatefulSetStatus;
/**
* StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.
*/
class V1StatefulSetUpdateStrategy {
    static getAttributeTypeMap() {
        return V1StatefulSetUpdateStrategy.attributeTypeMap;
    }
}
V1StatefulSetUpdateStrategy.discriminator = undefined;
V1StatefulSetUpdateStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1RollingUpdateStatefulSetStrategy"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1StatefulSetUpdateStrategy = V1StatefulSetUpdateStrategy;
/**
* Status is a return value for calls that don't return other objects.
*/
class V1Status {
    static getAttributeTypeMap() {
        return V1Status.attributeTypeMap;
    }
}
V1Status.discriminator = undefined;
V1Status.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "code",
        "baseName": "code",
        "type": "number"
    },
    {
        "name": "details",
        "baseName": "details",
        "type": "V1StatusDetails"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    }
];
exports.V1Status = V1Status;
/**
* StatusCause provides more information about an api.Status failure, including cases when multiple errors are encountered.
*/
class V1StatusCause {
    static getAttributeTypeMap() {
        return V1StatusCause.attributeTypeMap;
    }
}
V1StatusCause.discriminator = undefined;
V1StatusCause.attributeTypeMap = [
    {
        "name": "field",
        "baseName": "field",
        "type": "string"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    }
];
exports.V1StatusCause = V1StatusCause;
/**
* StatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.
*/
class V1StatusDetails {
    static getAttributeTypeMap() {
        return V1StatusDetails.attributeTypeMap;
    }
}
V1StatusDetails.discriminator = undefined;
V1StatusDetails.attributeTypeMap = [
    {
        "name": "causes",
        "baseName": "causes",
        "type": "Array<V1StatusCause>"
    },
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "retryAfterSeconds",
        "baseName": "retryAfterSeconds",
        "type": "number"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    }
];
exports.V1StatusDetails = V1StatusDetails;
/**
* StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.  StorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.
*/
class V1StorageClass {
    static getAttributeTypeMap() {
        return V1StorageClass.attributeTypeMap;
    }
}
V1StorageClass.discriminator = undefined;
V1StorageClass.attributeTypeMap = [
    {
        "name": "allowVolumeExpansion",
        "baseName": "allowVolumeExpansion",
        "type": "boolean"
    },
    {
        "name": "allowedTopologies",
        "baseName": "allowedTopologies",
        "type": "Array<V1TopologySelectorTerm>"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "mountOptions",
        "baseName": "mountOptions",
        "type": "Array<string>"
    },
    {
        "name": "parameters",
        "baseName": "parameters",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "provisioner",
        "baseName": "provisioner",
        "type": "string"
    },
    {
        "name": "reclaimPolicy",
        "baseName": "reclaimPolicy",
        "type": "string"
    },
    {
        "name": "volumeBindingMode",
        "baseName": "volumeBindingMode",
        "type": "string"
    }
];
exports.V1StorageClass = V1StorageClass;
/**
* StorageClassList is a collection of storage classes.
*/
class V1StorageClassList {
    static getAttributeTypeMap() {
        return V1StorageClassList.attributeTypeMap;
    }
}
V1StorageClassList.discriminator = undefined;
V1StorageClassList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1StorageClass>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1StorageClassList = V1StorageClassList;
/**
* Represents a StorageOS persistent volume resource.
*/
class V1StorageOSPersistentVolumeSource {
    static getAttributeTypeMap() {
        return V1StorageOSPersistentVolumeSource.attributeTypeMap;
    }
}
V1StorageOSPersistentVolumeSource.discriminator = undefined;
V1StorageOSPersistentVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1ObjectReference"
    },
    {
        "name": "volumeName",
        "baseName": "volumeName",
        "type": "string"
    },
    {
        "name": "volumeNamespace",
        "baseName": "volumeNamespace",
        "type": "string"
    }
];
exports.V1StorageOSPersistentVolumeSource = V1StorageOSPersistentVolumeSource;
/**
* Represents a StorageOS persistent volume resource.
*/
class V1StorageOSVolumeSource {
    static getAttributeTypeMap() {
        return V1StorageOSVolumeSource.attributeTypeMap;
    }
}
V1StorageOSVolumeSource.discriminator = undefined;
V1StorageOSVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "secretRef",
        "baseName": "secretRef",
        "type": "V1LocalObjectReference"
    },
    {
        "name": "volumeName",
        "baseName": "volumeName",
        "type": "string"
    },
    {
        "name": "volumeNamespace",
        "baseName": "volumeNamespace",
        "type": "string"
    }
];
exports.V1StorageOSVolumeSource = V1StorageOSVolumeSource;
/**
* Subject contains a reference to the object or user identities a role binding applies to.  This can either hold a direct API object reference, or a value for non-objects such as user and group names.
*/
class V1Subject {
    static getAttributeTypeMap() {
        return V1Subject.attributeTypeMap;
    }
}
V1Subject.discriminator = undefined;
V1Subject.attributeTypeMap = [
    {
        "name": "apiGroup",
        "baseName": "apiGroup",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1Subject = V1Subject;
/**
* SubjectAccessReview checks whether or not a user or group can perform an action.
*/
class V1SubjectAccessReview {
    static getAttributeTypeMap() {
        return V1SubjectAccessReview.attributeTypeMap;
    }
}
V1SubjectAccessReview.discriminator = undefined;
V1SubjectAccessReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1SubjectAccessReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1SubjectAccessReviewStatus"
    }
];
exports.V1SubjectAccessReview = V1SubjectAccessReview;
/**
* SubjectAccessReviewSpec is a description of the access request.  Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set
*/
class V1SubjectAccessReviewSpec {
    static getAttributeTypeMap() {
        return V1SubjectAccessReviewSpec.attributeTypeMap;
    }
}
V1SubjectAccessReviewSpec.discriminator = undefined;
V1SubjectAccessReviewSpec.attributeTypeMap = [
    {
        "name": "extra",
        "baseName": "extra",
        "type": "{ [key: string]: Array<string>; }"
    },
    {
        "name": "groups",
        "baseName": "groups",
        "type": "Array<string>"
    },
    {
        "name": "nonResourceAttributes",
        "baseName": "nonResourceAttributes",
        "type": "V1NonResourceAttributes"
    },
    {
        "name": "resourceAttributes",
        "baseName": "resourceAttributes",
        "type": "V1ResourceAttributes"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1SubjectAccessReviewSpec = V1SubjectAccessReviewSpec;
/**
* SubjectAccessReviewStatus
*/
class V1SubjectAccessReviewStatus {
    static getAttributeTypeMap() {
        return V1SubjectAccessReviewStatus.attributeTypeMap;
    }
}
V1SubjectAccessReviewStatus.discriminator = undefined;
V1SubjectAccessReviewStatus.attributeTypeMap = [
    {
        "name": "allowed",
        "baseName": "allowed",
        "type": "boolean"
    },
    {
        "name": "denied",
        "baseName": "denied",
        "type": "boolean"
    },
    {
        "name": "evaluationError",
        "baseName": "evaluationError",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    }
];
exports.V1SubjectAccessReviewStatus = V1SubjectAccessReviewStatus;
/**
* SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission, even if that list is incomplete.
*/
class V1SubjectRulesReviewStatus {
    static getAttributeTypeMap() {
        return V1SubjectRulesReviewStatus.attributeTypeMap;
    }
}
V1SubjectRulesReviewStatus.discriminator = undefined;
V1SubjectRulesReviewStatus.attributeTypeMap = [
    {
        "name": "evaluationError",
        "baseName": "evaluationError",
        "type": "string"
    },
    {
        "name": "incomplete",
        "baseName": "incomplete",
        "type": "boolean"
    },
    {
        "name": "nonResourceRules",
        "baseName": "nonResourceRules",
        "type": "Array<V1NonResourceRule>"
    },
    {
        "name": "resourceRules",
        "baseName": "resourceRules",
        "type": "Array<V1ResourceRule>"
    }
];
exports.V1SubjectRulesReviewStatus = V1SubjectRulesReviewStatus;
/**
* Sysctl defines a kernel parameter to be set
*/
class V1Sysctl {
    static getAttributeTypeMap() {
        return V1Sysctl.attributeTypeMap;
    }
}
V1Sysctl.discriminator = undefined;
V1Sysctl.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V1Sysctl = V1Sysctl;
/**
* TCPSocketAction describes an action based on opening a socket
*/
class V1TCPSocketAction {
    static getAttributeTypeMap() {
        return V1TCPSocketAction.attributeTypeMap;
    }
}
V1TCPSocketAction.discriminator = undefined;
V1TCPSocketAction.attributeTypeMap = [
    {
        "name": "host",
        "baseName": "host",
        "type": "string"
    },
    {
        "name": "port",
        "baseName": "port",
        "type": "any"
    }
];
exports.V1TCPSocketAction = V1TCPSocketAction;
/**
* The node this Taint is attached to has the \"effect\" on any pod that does not tolerate the Taint.
*/
class V1Taint {
    static getAttributeTypeMap() {
        return V1Taint.attributeTypeMap;
    }
}
V1Taint.discriminator = undefined;
V1Taint.attributeTypeMap = [
    {
        "name": "effect",
        "baseName": "effect",
        "type": "string"
    },
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "timeAdded",
        "baseName": "timeAdded",
        "type": "Date"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V1Taint = V1Taint;
/**
* TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.
*/
class V1TokenReview {
    static getAttributeTypeMap() {
        return V1TokenReview.attributeTypeMap;
    }
}
V1TokenReview.discriminator = undefined;
V1TokenReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1TokenReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1TokenReviewStatus"
    }
];
exports.V1TokenReview = V1TokenReview;
/**
* TokenReviewSpec is a description of the token authentication request.
*/
class V1TokenReviewSpec {
    static getAttributeTypeMap() {
        return V1TokenReviewSpec.attributeTypeMap;
    }
}
V1TokenReviewSpec.discriminator = undefined;
V1TokenReviewSpec.attributeTypeMap = [
    {
        "name": "audiences",
        "baseName": "audiences",
        "type": "Array<string>"
    },
    {
        "name": "token",
        "baseName": "token",
        "type": "string"
    }
];
exports.V1TokenReviewSpec = V1TokenReviewSpec;
/**
* TokenReviewStatus is the result of the token authentication request.
*/
class V1TokenReviewStatus {
    static getAttributeTypeMap() {
        return V1TokenReviewStatus.attributeTypeMap;
    }
}
V1TokenReviewStatus.discriminator = undefined;
V1TokenReviewStatus.attributeTypeMap = [
    {
        "name": "audiences",
        "baseName": "audiences",
        "type": "Array<string>"
    },
    {
        "name": "authenticated",
        "baseName": "authenticated",
        "type": "boolean"
    },
    {
        "name": "error",
        "baseName": "error",
        "type": "string"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "V1UserInfo"
    }
];
exports.V1TokenReviewStatus = V1TokenReviewStatus;
/**
* The pod this Toleration is attached to tolerates any taint that matches the triple <key,value,effect> using the matching operator <operator>.
*/
class V1Toleration {
    static getAttributeTypeMap() {
        return V1Toleration.attributeTypeMap;
    }
}
V1Toleration.discriminator = undefined;
V1Toleration.attributeTypeMap = [
    {
        "name": "effect",
        "baseName": "effect",
        "type": "string"
    },
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "operator",
        "baseName": "operator",
        "type": "string"
    },
    {
        "name": "tolerationSeconds",
        "baseName": "tolerationSeconds",
        "type": "number"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V1Toleration = V1Toleration;
/**
* A topology selector requirement is a selector that matches given label. This is an alpha feature and may change in the future.
*/
class V1TopologySelectorLabelRequirement {
    static getAttributeTypeMap() {
        return V1TopologySelectorLabelRequirement.attributeTypeMap;
    }
}
V1TopologySelectorLabelRequirement.discriminator = undefined;
V1TopologySelectorLabelRequirement.attributeTypeMap = [
    {
        "name": "key",
        "baseName": "key",
        "type": "string"
    },
    {
        "name": "values",
        "baseName": "values",
        "type": "Array<string>"
    }
];
exports.V1TopologySelectorLabelRequirement = V1TopologySelectorLabelRequirement;
/**
* A topology selector term represents the result of label queries. A null or empty topology selector term matches no objects. The requirements of them are ANDed. It provides a subset of functionality as NodeSelectorTerm. This is an alpha feature and may change in the future.
*/
class V1TopologySelectorTerm {
    static getAttributeTypeMap() {
        return V1TopologySelectorTerm.attributeTypeMap;
    }
}
V1TopologySelectorTerm.discriminator = undefined;
V1TopologySelectorTerm.attributeTypeMap = [
    {
        "name": "matchLabelExpressions",
        "baseName": "matchLabelExpressions",
        "type": "Array<V1TopologySelectorLabelRequirement>"
    }
];
exports.V1TopologySelectorTerm = V1TopologySelectorTerm;
/**
* TypedLocalObjectReference contains enough information to let you locate the typed referenced object inside the same namespace.
*/
class V1TypedLocalObjectReference {
    static getAttributeTypeMap() {
        return V1TypedLocalObjectReference.attributeTypeMap;
    }
}
V1TypedLocalObjectReference.discriminator = undefined;
V1TypedLocalObjectReference.attributeTypeMap = [
    {
        "name": "apiGroup",
        "baseName": "apiGroup",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1TypedLocalObjectReference = V1TypedLocalObjectReference;
/**
* UserInfo holds the information about the user needed to implement the user.Info interface.
*/
class V1UserInfo {
    static getAttributeTypeMap() {
        return V1UserInfo.attributeTypeMap;
    }
}
V1UserInfo.discriminator = undefined;
V1UserInfo.attributeTypeMap = [
    {
        "name": "extra",
        "baseName": "extra",
        "type": "{ [key: string]: Array<string>; }"
    },
    {
        "name": "groups",
        "baseName": "groups",
        "type": "Array<string>"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    },
    {
        "name": "username",
        "baseName": "username",
        "type": "string"
    }
];
exports.V1UserInfo = V1UserInfo;
/**
* Volume represents a named volume in a pod that may be accessed by any container in the pod.
*/
class V1Volume {
    static getAttributeTypeMap() {
        return V1Volume.attributeTypeMap;
    }
}
V1Volume.discriminator = undefined;
V1Volume.attributeTypeMap = [
    {
        "name": "awsElasticBlockStore",
        "baseName": "awsElasticBlockStore",
        "type": "V1AWSElasticBlockStoreVolumeSource"
    },
    {
        "name": "azureDisk",
        "baseName": "azureDisk",
        "type": "V1AzureDiskVolumeSource"
    },
    {
        "name": "azureFile",
        "baseName": "azureFile",
        "type": "V1AzureFileVolumeSource"
    },
    {
        "name": "cephfs",
        "baseName": "cephfs",
        "type": "V1CephFSVolumeSource"
    },
    {
        "name": "cinder",
        "baseName": "cinder",
        "type": "V1CinderVolumeSource"
    },
    {
        "name": "configMap",
        "baseName": "configMap",
        "type": "V1ConfigMapVolumeSource"
    },
    {
        "name": "downwardAPI",
        "baseName": "downwardAPI",
        "type": "V1DownwardAPIVolumeSource"
    },
    {
        "name": "emptyDir",
        "baseName": "emptyDir",
        "type": "V1EmptyDirVolumeSource"
    },
    {
        "name": "fc",
        "baseName": "fc",
        "type": "V1FCVolumeSource"
    },
    {
        "name": "flexVolume",
        "baseName": "flexVolume",
        "type": "V1FlexVolumeSource"
    },
    {
        "name": "flocker",
        "baseName": "flocker",
        "type": "V1FlockerVolumeSource"
    },
    {
        "name": "gcePersistentDisk",
        "baseName": "gcePersistentDisk",
        "type": "V1GCEPersistentDiskVolumeSource"
    },
    {
        "name": "gitRepo",
        "baseName": "gitRepo",
        "type": "V1GitRepoVolumeSource"
    },
    {
        "name": "glusterfs",
        "baseName": "glusterfs",
        "type": "V1GlusterfsVolumeSource"
    },
    {
        "name": "hostPath",
        "baseName": "hostPath",
        "type": "V1HostPathVolumeSource"
    },
    {
        "name": "iscsi",
        "baseName": "iscsi",
        "type": "V1ISCSIVolumeSource"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "nfs",
        "baseName": "nfs",
        "type": "V1NFSVolumeSource"
    },
    {
        "name": "persistentVolumeClaim",
        "baseName": "persistentVolumeClaim",
        "type": "V1PersistentVolumeClaimVolumeSource"
    },
    {
        "name": "photonPersistentDisk",
        "baseName": "photonPersistentDisk",
        "type": "V1PhotonPersistentDiskVolumeSource"
    },
    {
        "name": "portworxVolume",
        "baseName": "portworxVolume",
        "type": "V1PortworxVolumeSource"
    },
    {
        "name": "projected",
        "baseName": "projected",
        "type": "V1ProjectedVolumeSource"
    },
    {
        "name": "quobyte",
        "baseName": "quobyte",
        "type": "V1QuobyteVolumeSource"
    },
    {
        "name": "rbd",
        "baseName": "rbd",
        "type": "V1RBDVolumeSource"
    },
    {
        "name": "scaleIO",
        "baseName": "scaleIO",
        "type": "V1ScaleIOVolumeSource"
    },
    {
        "name": "secret",
        "baseName": "secret",
        "type": "V1SecretVolumeSource"
    },
    {
        "name": "storageos",
        "baseName": "storageos",
        "type": "V1StorageOSVolumeSource"
    },
    {
        "name": "vsphereVolume",
        "baseName": "vsphereVolume",
        "type": "V1VsphereVirtualDiskVolumeSource"
    }
];
exports.V1Volume = V1Volume;
/**
* VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.  VolumeAttachment objects are non-namespaced.
*/
class V1VolumeAttachment {
    static getAttributeTypeMap() {
        return V1VolumeAttachment.attributeTypeMap;
    }
}
V1VolumeAttachment.discriminator = undefined;
V1VolumeAttachment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1VolumeAttachmentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1VolumeAttachmentStatus"
    }
];
exports.V1VolumeAttachment = V1VolumeAttachment;
/**
* VolumeAttachmentList is a collection of VolumeAttachment objects.
*/
class V1VolumeAttachmentList {
    static getAttributeTypeMap() {
        return V1VolumeAttachmentList.attributeTypeMap;
    }
}
V1VolumeAttachmentList.discriminator = undefined;
V1VolumeAttachmentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1VolumeAttachment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1VolumeAttachmentList = V1VolumeAttachmentList;
/**
* VolumeAttachmentSource represents a volume that should be attached. Right now only PersistenVolumes can be attached via external attacher, in future we may allow also inline volumes in pods. Exactly one member can be set.
*/
class V1VolumeAttachmentSource {
    static getAttributeTypeMap() {
        return V1VolumeAttachmentSource.attributeTypeMap;
    }
}
V1VolumeAttachmentSource.discriminator = undefined;
V1VolumeAttachmentSource.attributeTypeMap = [
    {
        "name": "persistentVolumeName",
        "baseName": "persistentVolumeName",
        "type": "string"
    }
];
exports.V1VolumeAttachmentSource = V1VolumeAttachmentSource;
/**
* VolumeAttachmentSpec is the specification of a VolumeAttachment request.
*/
class V1VolumeAttachmentSpec {
    static getAttributeTypeMap() {
        return V1VolumeAttachmentSpec.attributeTypeMap;
    }
}
V1VolumeAttachmentSpec.discriminator = undefined;
V1VolumeAttachmentSpec.attributeTypeMap = [
    {
        "name": "attacher",
        "baseName": "attacher",
        "type": "string"
    },
    {
        "name": "nodeName",
        "baseName": "nodeName",
        "type": "string"
    },
    {
        "name": "source",
        "baseName": "source",
        "type": "V1VolumeAttachmentSource"
    }
];
exports.V1VolumeAttachmentSpec = V1VolumeAttachmentSpec;
/**
* VolumeAttachmentStatus is the status of a VolumeAttachment request.
*/
class V1VolumeAttachmentStatus {
    static getAttributeTypeMap() {
        return V1VolumeAttachmentStatus.attributeTypeMap;
    }
}
V1VolumeAttachmentStatus.discriminator = undefined;
V1VolumeAttachmentStatus.attributeTypeMap = [
    {
        "name": "attachError",
        "baseName": "attachError",
        "type": "V1VolumeError"
    },
    {
        "name": "attached",
        "baseName": "attached",
        "type": "boolean"
    },
    {
        "name": "attachmentMetadata",
        "baseName": "attachmentMetadata",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "detachError",
        "baseName": "detachError",
        "type": "V1VolumeError"
    }
];
exports.V1VolumeAttachmentStatus = V1VolumeAttachmentStatus;
/**
* volumeDevice describes a mapping of a raw block device within a container.
*/
class V1VolumeDevice {
    static getAttributeTypeMap() {
        return V1VolumeDevice.attributeTypeMap;
    }
}
V1VolumeDevice.discriminator = undefined;
V1VolumeDevice.attributeTypeMap = [
    {
        "name": "devicePath",
        "baseName": "devicePath",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1VolumeDevice = V1VolumeDevice;
/**
* VolumeError captures an error encountered during a volume operation.
*/
class V1VolumeError {
    static getAttributeTypeMap() {
        return V1VolumeError.attributeTypeMap;
    }
}
V1VolumeError.discriminator = undefined;
V1VolumeError.attributeTypeMap = [
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "time",
        "baseName": "time",
        "type": "Date"
    }
];
exports.V1VolumeError = V1VolumeError;
/**
* VolumeMount describes a mounting of a Volume within a container.
*/
class V1VolumeMount {
    static getAttributeTypeMap() {
        return V1VolumeMount.attributeTypeMap;
    }
}
V1VolumeMount.discriminator = undefined;
V1VolumeMount.attributeTypeMap = [
    {
        "name": "mountPath",
        "baseName": "mountPath",
        "type": "string"
    },
    {
        "name": "mountPropagation",
        "baseName": "mountPropagation",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "readOnly",
        "baseName": "readOnly",
        "type": "boolean"
    },
    {
        "name": "subPath",
        "baseName": "subPath",
        "type": "string"
    }
];
exports.V1VolumeMount = V1VolumeMount;
/**
* VolumeNodeAffinity defines constraints that limit what nodes this volume can be accessed from.
*/
class V1VolumeNodeAffinity {
    static getAttributeTypeMap() {
        return V1VolumeNodeAffinity.attributeTypeMap;
    }
}
V1VolumeNodeAffinity.discriminator = undefined;
V1VolumeNodeAffinity.attributeTypeMap = [
    {
        "name": "required",
        "baseName": "required",
        "type": "V1NodeSelector"
    }
];
exports.V1VolumeNodeAffinity = V1VolumeNodeAffinity;
/**
* Projection that may be projected along with other supported volume types
*/
class V1VolumeProjection {
    static getAttributeTypeMap() {
        return V1VolumeProjection.attributeTypeMap;
    }
}
V1VolumeProjection.discriminator = undefined;
V1VolumeProjection.attributeTypeMap = [
    {
        "name": "configMap",
        "baseName": "configMap",
        "type": "V1ConfigMapProjection"
    },
    {
        "name": "downwardAPI",
        "baseName": "downwardAPI",
        "type": "V1DownwardAPIProjection"
    },
    {
        "name": "secret",
        "baseName": "secret",
        "type": "V1SecretProjection"
    },
    {
        "name": "serviceAccountToken",
        "baseName": "serviceAccountToken",
        "type": "V1ServiceAccountTokenProjection"
    }
];
exports.V1VolumeProjection = V1VolumeProjection;
/**
* Represents a vSphere volume resource.
*/
class V1VsphereVirtualDiskVolumeSource {
    static getAttributeTypeMap() {
        return V1VsphereVirtualDiskVolumeSource.attributeTypeMap;
    }
}
V1VsphereVirtualDiskVolumeSource.discriminator = undefined;
V1VsphereVirtualDiskVolumeSource.attributeTypeMap = [
    {
        "name": "fsType",
        "baseName": "fsType",
        "type": "string"
    },
    {
        "name": "storagePolicyID",
        "baseName": "storagePolicyID",
        "type": "string"
    },
    {
        "name": "storagePolicyName",
        "baseName": "storagePolicyName",
        "type": "string"
    },
    {
        "name": "volumePath",
        "baseName": "volumePath",
        "type": "string"
    }
];
exports.V1VsphereVirtualDiskVolumeSource = V1VsphereVirtualDiskVolumeSource;
/**
* Event represents a single event to a watched resource.
*/
class V1WatchEvent {
    static getAttributeTypeMap() {
        return V1WatchEvent.attributeTypeMap;
    }
}
V1WatchEvent.discriminator = undefined;
V1WatchEvent.attributeTypeMap = [
    {
        "name": "object",
        "baseName": "object",
        "type": "RuntimeRawExtension"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1WatchEvent = V1WatchEvent;
/**
* The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
*/
class V1WeightedPodAffinityTerm {
    static getAttributeTypeMap() {
        return V1WeightedPodAffinityTerm.attributeTypeMap;
    }
}
V1WeightedPodAffinityTerm.discriminator = undefined;
V1WeightedPodAffinityTerm.attributeTypeMap = [
    {
        "name": "podAffinityTerm",
        "baseName": "podAffinityTerm",
        "type": "V1PodAffinityTerm"
    },
    {
        "name": "weight",
        "baseName": "weight",
        "type": "number"
    }
];
exports.V1WeightedPodAffinityTerm = V1WeightedPodAffinityTerm;
/**
* AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole
*/
class V1alpha1AggregationRule {
    static getAttributeTypeMap() {
        return V1alpha1AggregationRule.attributeTypeMap;
    }
}
V1alpha1AggregationRule.discriminator = undefined;
V1alpha1AggregationRule.attributeTypeMap = [
    {
        "name": "clusterRoleSelectors",
        "baseName": "clusterRoleSelectors",
        "type": "Array<V1LabelSelector>"
    }
];
exports.V1alpha1AggregationRule = V1alpha1AggregationRule;
/**
* AuditSink represents a cluster level audit sink
*/
class V1alpha1AuditSink {
    static getAttributeTypeMap() {
        return V1alpha1AuditSink.attributeTypeMap;
    }
}
V1alpha1AuditSink.discriminator = undefined;
V1alpha1AuditSink.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1alpha1AuditSinkSpec"
    }
];
exports.V1alpha1AuditSink = V1alpha1AuditSink;
/**
* AuditSinkList is a list of AuditSink items.
*/
class V1alpha1AuditSinkList {
    static getAttributeTypeMap() {
        return V1alpha1AuditSinkList.attributeTypeMap;
    }
}
V1alpha1AuditSinkList.discriminator = undefined;
V1alpha1AuditSinkList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1AuditSink>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1AuditSinkList = V1alpha1AuditSinkList;
/**
* AuditSinkSpec holds the spec for the audit sink
*/
class V1alpha1AuditSinkSpec {
    static getAttributeTypeMap() {
        return V1alpha1AuditSinkSpec.attributeTypeMap;
    }
}
V1alpha1AuditSinkSpec.discriminator = undefined;
V1alpha1AuditSinkSpec.attributeTypeMap = [
    {
        "name": "policy",
        "baseName": "policy",
        "type": "V1alpha1Policy"
    },
    {
        "name": "webhook",
        "baseName": "webhook",
        "type": "V1alpha1Webhook"
    }
];
exports.V1alpha1AuditSinkSpec = V1alpha1AuditSinkSpec;
/**
* ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.
*/
class V1alpha1ClusterRole {
    static getAttributeTypeMap() {
        return V1alpha1ClusterRole.attributeTypeMap;
    }
}
V1alpha1ClusterRole.discriminator = undefined;
V1alpha1ClusterRole.attributeTypeMap = [
    {
        "name": "aggregationRule",
        "baseName": "aggregationRule",
        "type": "V1alpha1AggregationRule"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1alpha1PolicyRule>"
    }
];
exports.V1alpha1ClusterRole = V1alpha1ClusterRole;
/**
* ClusterRoleBinding references a ClusterRole, but not contain it.  It can reference a ClusterRole in the global namespace, and adds who information via Subject.
*/
class V1alpha1ClusterRoleBinding {
    static getAttributeTypeMap() {
        return V1alpha1ClusterRoleBinding.attributeTypeMap;
    }
}
V1alpha1ClusterRoleBinding.discriminator = undefined;
V1alpha1ClusterRoleBinding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "roleRef",
        "baseName": "roleRef",
        "type": "V1alpha1RoleRef"
    },
    {
        "name": "subjects",
        "baseName": "subjects",
        "type": "Array<V1alpha1Subject>"
    }
];
exports.V1alpha1ClusterRoleBinding = V1alpha1ClusterRoleBinding;
/**
* ClusterRoleBindingList is a collection of ClusterRoleBindings
*/
class V1alpha1ClusterRoleBindingList {
    static getAttributeTypeMap() {
        return V1alpha1ClusterRoleBindingList.attributeTypeMap;
    }
}
V1alpha1ClusterRoleBindingList.discriminator = undefined;
V1alpha1ClusterRoleBindingList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1ClusterRoleBinding>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1ClusterRoleBindingList = V1alpha1ClusterRoleBindingList;
/**
* ClusterRoleList is a collection of ClusterRoles
*/
class V1alpha1ClusterRoleList {
    static getAttributeTypeMap() {
        return V1alpha1ClusterRoleList.attributeTypeMap;
    }
}
V1alpha1ClusterRoleList.discriminator = undefined;
V1alpha1ClusterRoleList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1ClusterRole>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1ClusterRoleList = V1alpha1ClusterRoleList;
/**
* Initializer describes the name and the failure policy of an initializer, and what resources it applies to.
*/
class V1alpha1Initializer {
    static getAttributeTypeMap() {
        return V1alpha1Initializer.attributeTypeMap;
    }
}
V1alpha1Initializer.discriminator = undefined;
V1alpha1Initializer.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1alpha1Rule>"
    }
];
exports.V1alpha1Initializer = V1alpha1Initializer;
/**
* InitializerConfiguration describes the configuration of initializers.
*/
class V1alpha1InitializerConfiguration {
    static getAttributeTypeMap() {
        return V1alpha1InitializerConfiguration.attributeTypeMap;
    }
}
V1alpha1InitializerConfiguration.discriminator = undefined;
V1alpha1InitializerConfiguration.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "initializers",
        "baseName": "initializers",
        "type": "Array<V1alpha1Initializer>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    }
];
exports.V1alpha1InitializerConfiguration = V1alpha1InitializerConfiguration;
/**
* InitializerConfigurationList is a list of InitializerConfiguration.
*/
class V1alpha1InitializerConfigurationList {
    static getAttributeTypeMap() {
        return V1alpha1InitializerConfigurationList.attributeTypeMap;
    }
}
V1alpha1InitializerConfigurationList.discriminator = undefined;
V1alpha1InitializerConfigurationList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1InitializerConfiguration>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1InitializerConfigurationList = V1alpha1InitializerConfigurationList;
/**
* PodPreset is a policy resource that defines additional runtime requirements for a Pod.
*/
class V1alpha1PodPreset {
    static getAttributeTypeMap() {
        return V1alpha1PodPreset.attributeTypeMap;
    }
}
V1alpha1PodPreset.discriminator = undefined;
V1alpha1PodPreset.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1alpha1PodPresetSpec"
    }
];
exports.V1alpha1PodPreset = V1alpha1PodPreset;
/**
* PodPresetList is a list of PodPreset objects.
*/
class V1alpha1PodPresetList {
    static getAttributeTypeMap() {
        return V1alpha1PodPresetList.attributeTypeMap;
    }
}
V1alpha1PodPresetList.discriminator = undefined;
V1alpha1PodPresetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1PodPreset>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1PodPresetList = V1alpha1PodPresetList;
/**
* PodPresetSpec is a description of a pod preset.
*/
class V1alpha1PodPresetSpec {
    static getAttributeTypeMap() {
        return V1alpha1PodPresetSpec.attributeTypeMap;
    }
}
V1alpha1PodPresetSpec.discriminator = undefined;
V1alpha1PodPresetSpec.attributeTypeMap = [
    {
        "name": "env",
        "baseName": "env",
        "type": "Array<V1EnvVar>"
    },
    {
        "name": "envFrom",
        "baseName": "envFrom",
        "type": "Array<V1EnvFromSource>"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "volumeMounts",
        "baseName": "volumeMounts",
        "type": "Array<V1VolumeMount>"
    },
    {
        "name": "volumes",
        "baseName": "volumes",
        "type": "Array<V1Volume>"
    }
];
exports.V1alpha1PodPresetSpec = V1alpha1PodPresetSpec;
/**
* Policy defines the configuration of how audit events are logged
*/
class V1alpha1Policy {
    static getAttributeTypeMap() {
        return V1alpha1Policy.attributeTypeMap;
    }
}
V1alpha1Policy.discriminator = undefined;
V1alpha1Policy.attributeTypeMap = [
    {
        "name": "level",
        "baseName": "level",
        "type": "string"
    },
    {
        "name": "stages",
        "baseName": "stages",
        "type": "Array<string>"
    }
];
exports.V1alpha1Policy = V1alpha1Policy;
/**
* PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.
*/
class V1alpha1PolicyRule {
    static getAttributeTypeMap() {
        return V1alpha1PolicyRule.attributeTypeMap;
    }
}
V1alpha1PolicyRule.discriminator = undefined;
V1alpha1PolicyRule.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "nonResourceURLs",
        "baseName": "nonResourceURLs",
        "type": "Array<string>"
    },
    {
        "name": "resourceNames",
        "baseName": "resourceNames",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1alpha1PolicyRule = V1alpha1PolicyRule;
/**
* PriorityClass defines mapping from a priority class name to the priority integer value. The value can be any valid integer.
*/
class V1alpha1PriorityClass {
    static getAttributeTypeMap() {
        return V1alpha1PriorityClass.attributeTypeMap;
    }
}
V1alpha1PriorityClass.discriminator = undefined;
V1alpha1PriorityClass.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "description",
        "baseName": "description",
        "type": "string"
    },
    {
        "name": "globalDefault",
        "baseName": "globalDefault",
        "type": "boolean"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "number"
    }
];
exports.V1alpha1PriorityClass = V1alpha1PriorityClass;
/**
* PriorityClassList is a collection of priority classes.
*/
class V1alpha1PriorityClassList {
    static getAttributeTypeMap() {
        return V1alpha1PriorityClassList.attributeTypeMap;
    }
}
V1alpha1PriorityClassList.discriminator = undefined;
V1alpha1PriorityClassList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1PriorityClass>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1PriorityClassList = V1alpha1PriorityClassList;
/**
* Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.
*/
class V1alpha1Role {
    static getAttributeTypeMap() {
        return V1alpha1Role.attributeTypeMap;
    }
}
V1alpha1Role.discriminator = undefined;
V1alpha1Role.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1alpha1PolicyRule>"
    }
];
exports.V1alpha1Role = V1alpha1Role;
/**
* RoleBinding references a role, but does not contain it.  It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in.  RoleBindings in a given namespace only have effect in that namespace.
*/
class V1alpha1RoleBinding {
    static getAttributeTypeMap() {
        return V1alpha1RoleBinding.attributeTypeMap;
    }
}
V1alpha1RoleBinding.discriminator = undefined;
V1alpha1RoleBinding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "roleRef",
        "baseName": "roleRef",
        "type": "V1alpha1RoleRef"
    },
    {
        "name": "subjects",
        "baseName": "subjects",
        "type": "Array<V1alpha1Subject>"
    }
];
exports.V1alpha1RoleBinding = V1alpha1RoleBinding;
/**
* RoleBindingList is a collection of RoleBindings
*/
class V1alpha1RoleBindingList {
    static getAttributeTypeMap() {
        return V1alpha1RoleBindingList.attributeTypeMap;
    }
}
V1alpha1RoleBindingList.discriminator = undefined;
V1alpha1RoleBindingList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1RoleBinding>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1RoleBindingList = V1alpha1RoleBindingList;
/**
* RoleList is a collection of Roles
*/
class V1alpha1RoleList {
    static getAttributeTypeMap() {
        return V1alpha1RoleList.attributeTypeMap;
    }
}
V1alpha1RoleList.discriminator = undefined;
V1alpha1RoleList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1Role>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1RoleList = V1alpha1RoleList;
/**
* RoleRef contains information that points to the role being used
*/
class V1alpha1RoleRef {
    static getAttributeTypeMap() {
        return V1alpha1RoleRef.attributeTypeMap;
    }
}
V1alpha1RoleRef.discriminator = undefined;
V1alpha1RoleRef.attributeTypeMap = [
    {
        "name": "apiGroup",
        "baseName": "apiGroup",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1alpha1RoleRef = V1alpha1RoleRef;
/**
* Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that all the tuple expansions are valid.
*/
class V1alpha1Rule {
    static getAttributeTypeMap() {
        return V1alpha1Rule.attributeTypeMap;
    }
}
V1alpha1Rule.discriminator = undefined;
V1alpha1Rule.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "apiVersions",
        "baseName": "apiVersions",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    }
];
exports.V1alpha1Rule = V1alpha1Rule;
/**
* ServiceReference holds a reference to Service.legacy.k8s.io
*/
class V1alpha1ServiceReference {
    static getAttributeTypeMap() {
        return V1alpha1ServiceReference.attributeTypeMap;
    }
}
V1alpha1ServiceReference.discriminator = undefined;
V1alpha1ServiceReference.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.V1alpha1ServiceReference = V1alpha1ServiceReference;
/**
* Subject contains a reference to the object or user identities a role binding applies to.  This can either hold a direct API object reference, or a value for non-objects such as user and group names.
*/
class V1alpha1Subject {
    static getAttributeTypeMap() {
        return V1alpha1Subject.attributeTypeMap;
    }
}
V1alpha1Subject.discriminator = undefined;
V1alpha1Subject.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1alpha1Subject = V1alpha1Subject;
/**
* VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.  VolumeAttachment objects are non-namespaced.
*/
class V1alpha1VolumeAttachment {
    static getAttributeTypeMap() {
        return V1alpha1VolumeAttachment.attributeTypeMap;
    }
}
V1alpha1VolumeAttachment.discriminator = undefined;
V1alpha1VolumeAttachment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1alpha1VolumeAttachmentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1alpha1VolumeAttachmentStatus"
    }
];
exports.V1alpha1VolumeAttachment = V1alpha1VolumeAttachment;
/**
* VolumeAttachmentList is a collection of VolumeAttachment objects.
*/
class V1alpha1VolumeAttachmentList {
    static getAttributeTypeMap() {
        return V1alpha1VolumeAttachmentList.attributeTypeMap;
    }
}
V1alpha1VolumeAttachmentList.discriminator = undefined;
V1alpha1VolumeAttachmentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1alpha1VolumeAttachment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1alpha1VolumeAttachmentList = V1alpha1VolumeAttachmentList;
/**
* VolumeAttachmentSource represents a volume that should be attached. Right now only PersistenVolumes can be attached via external attacher, in future we may allow also inline volumes in pods. Exactly one member can be set.
*/
class V1alpha1VolumeAttachmentSource {
    static getAttributeTypeMap() {
        return V1alpha1VolumeAttachmentSource.attributeTypeMap;
    }
}
V1alpha1VolumeAttachmentSource.discriminator = undefined;
V1alpha1VolumeAttachmentSource.attributeTypeMap = [
    {
        "name": "persistentVolumeName",
        "baseName": "persistentVolumeName",
        "type": "string"
    }
];
exports.V1alpha1VolumeAttachmentSource = V1alpha1VolumeAttachmentSource;
/**
* VolumeAttachmentSpec is the specification of a VolumeAttachment request.
*/
class V1alpha1VolumeAttachmentSpec {
    static getAttributeTypeMap() {
        return V1alpha1VolumeAttachmentSpec.attributeTypeMap;
    }
}
V1alpha1VolumeAttachmentSpec.discriminator = undefined;
V1alpha1VolumeAttachmentSpec.attributeTypeMap = [
    {
        "name": "attacher",
        "baseName": "attacher",
        "type": "string"
    },
    {
        "name": "nodeName",
        "baseName": "nodeName",
        "type": "string"
    },
    {
        "name": "source",
        "baseName": "source",
        "type": "V1alpha1VolumeAttachmentSource"
    }
];
exports.V1alpha1VolumeAttachmentSpec = V1alpha1VolumeAttachmentSpec;
/**
* VolumeAttachmentStatus is the status of a VolumeAttachment request.
*/
class V1alpha1VolumeAttachmentStatus {
    static getAttributeTypeMap() {
        return V1alpha1VolumeAttachmentStatus.attributeTypeMap;
    }
}
V1alpha1VolumeAttachmentStatus.discriminator = undefined;
V1alpha1VolumeAttachmentStatus.attributeTypeMap = [
    {
        "name": "attachError",
        "baseName": "attachError",
        "type": "V1alpha1VolumeError"
    },
    {
        "name": "attached",
        "baseName": "attached",
        "type": "boolean"
    },
    {
        "name": "attachmentMetadata",
        "baseName": "attachmentMetadata",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "detachError",
        "baseName": "detachError",
        "type": "V1alpha1VolumeError"
    }
];
exports.V1alpha1VolumeAttachmentStatus = V1alpha1VolumeAttachmentStatus;
/**
* VolumeError captures an error encountered during a volume operation.
*/
class V1alpha1VolumeError {
    static getAttributeTypeMap() {
        return V1alpha1VolumeError.attributeTypeMap;
    }
}
V1alpha1VolumeError.discriminator = undefined;
V1alpha1VolumeError.attributeTypeMap = [
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "time",
        "baseName": "time",
        "type": "Date"
    }
];
exports.V1alpha1VolumeError = V1alpha1VolumeError;
/**
* Webhook holds the configuration of the webhook
*/
class V1alpha1Webhook {
    static getAttributeTypeMap() {
        return V1alpha1Webhook.attributeTypeMap;
    }
}
V1alpha1Webhook.discriminator = undefined;
V1alpha1Webhook.attributeTypeMap = [
    {
        "name": "clientConfig",
        "baseName": "clientConfig",
        "type": "V1alpha1WebhookClientConfig"
    },
    {
        "name": "throttle",
        "baseName": "throttle",
        "type": "V1alpha1WebhookThrottleConfig"
    }
];
exports.V1alpha1Webhook = V1alpha1Webhook;
/**
* WebhookClientConfig contains the information to make a connection with the webhook
*/
class V1alpha1WebhookClientConfig {
    static getAttributeTypeMap() {
        return V1alpha1WebhookClientConfig.attributeTypeMap;
    }
}
V1alpha1WebhookClientConfig.discriminator = undefined;
V1alpha1WebhookClientConfig.attributeTypeMap = [
    {
        "name": "caBundle",
        "baseName": "caBundle",
        "type": "string"
    },
    {
        "name": "service",
        "baseName": "service",
        "type": "V1alpha1ServiceReference"
    },
    {
        "name": "url",
        "baseName": "url",
        "type": "string"
    }
];
exports.V1alpha1WebhookClientConfig = V1alpha1WebhookClientConfig;
/**
* WebhookThrottleConfig holds the configuration for throttling events
*/
class V1alpha1WebhookThrottleConfig {
    static getAttributeTypeMap() {
        return V1alpha1WebhookThrottleConfig.attributeTypeMap;
    }
}
V1alpha1WebhookThrottleConfig.discriminator = undefined;
V1alpha1WebhookThrottleConfig.attributeTypeMap = [
    {
        "name": "burst",
        "baseName": "burst",
        "type": "number"
    },
    {
        "name": "qps",
        "baseName": "qps",
        "type": "number"
    }
];
exports.V1alpha1WebhookThrottleConfig = V1alpha1WebhookThrottleConfig;
/**
* APIService represents a server for a particular GroupVersion. Name must be \"version.group\".
*/
class V1beta1APIService {
    static getAttributeTypeMap() {
        return V1beta1APIService.attributeTypeMap;
    }
}
V1beta1APIService.discriminator = undefined;
V1beta1APIService.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1APIServiceSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1APIServiceStatus"
    }
];
exports.V1beta1APIService = V1beta1APIService;
class V1beta1APIServiceCondition {
    static getAttributeTypeMap() {
        return V1beta1APIServiceCondition.attributeTypeMap;
    }
}
V1beta1APIServiceCondition.discriminator = undefined;
V1beta1APIServiceCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1APIServiceCondition = V1beta1APIServiceCondition;
/**
* APIServiceList is a list of APIService objects.
*/
class V1beta1APIServiceList {
    static getAttributeTypeMap() {
        return V1beta1APIServiceList.attributeTypeMap;
    }
}
V1beta1APIServiceList.discriminator = undefined;
V1beta1APIServiceList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1APIService>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1APIServiceList = V1beta1APIServiceList;
/**
* APIServiceSpec contains information for locating and communicating with a server. Only https is supported, though you are able to disable certificate verification.
*/
class V1beta1APIServiceSpec {
    static getAttributeTypeMap() {
        return V1beta1APIServiceSpec.attributeTypeMap;
    }
}
V1beta1APIServiceSpec.discriminator = undefined;
V1beta1APIServiceSpec.attributeTypeMap = [
    {
        "name": "caBundle",
        "baseName": "caBundle",
        "type": "string"
    },
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "groupPriorityMinimum",
        "baseName": "groupPriorityMinimum",
        "type": "number"
    },
    {
        "name": "insecureSkipTLSVerify",
        "baseName": "insecureSkipTLSVerify",
        "type": "boolean"
    },
    {
        "name": "service",
        "baseName": "service",
        "type": "ApiregistrationV1beta1ServiceReference"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    },
    {
        "name": "versionPriority",
        "baseName": "versionPriority",
        "type": "number"
    }
];
exports.V1beta1APIServiceSpec = V1beta1APIServiceSpec;
/**
* APIServiceStatus contains derived information about an API server
*/
class V1beta1APIServiceStatus {
    static getAttributeTypeMap() {
        return V1beta1APIServiceStatus.attributeTypeMap;
    }
}
V1beta1APIServiceStatus.discriminator = undefined;
V1beta1APIServiceStatus.attributeTypeMap = [
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta1APIServiceCondition>"
    }
];
exports.V1beta1APIServiceStatus = V1beta1APIServiceStatus;
/**
* AggregationRule describes how to locate ClusterRoles to aggregate into the ClusterRole
*/
class V1beta1AggregationRule {
    static getAttributeTypeMap() {
        return V1beta1AggregationRule.attributeTypeMap;
    }
}
V1beta1AggregationRule.discriminator = undefined;
V1beta1AggregationRule.attributeTypeMap = [
    {
        "name": "clusterRoleSelectors",
        "baseName": "clusterRoleSelectors",
        "type": "Array<V1LabelSelector>"
    }
];
exports.V1beta1AggregationRule = V1beta1AggregationRule;
/**
* Describes a certificate signing request
*/
class V1beta1CertificateSigningRequest {
    static getAttributeTypeMap() {
        return V1beta1CertificateSigningRequest.attributeTypeMap;
    }
}
V1beta1CertificateSigningRequest.discriminator = undefined;
V1beta1CertificateSigningRequest.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1CertificateSigningRequestSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1CertificateSigningRequestStatus"
    }
];
exports.V1beta1CertificateSigningRequest = V1beta1CertificateSigningRequest;
class V1beta1CertificateSigningRequestCondition {
    static getAttributeTypeMap() {
        return V1beta1CertificateSigningRequestCondition.attributeTypeMap;
    }
}
V1beta1CertificateSigningRequestCondition.discriminator = undefined;
V1beta1CertificateSigningRequestCondition.attributeTypeMap = [
    {
        "name": "lastUpdateTime",
        "baseName": "lastUpdateTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1CertificateSigningRequestCondition = V1beta1CertificateSigningRequestCondition;
class V1beta1CertificateSigningRequestList {
    static getAttributeTypeMap() {
        return V1beta1CertificateSigningRequestList.attributeTypeMap;
    }
}
V1beta1CertificateSigningRequestList.discriminator = undefined;
V1beta1CertificateSigningRequestList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1CertificateSigningRequest>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1CertificateSigningRequestList = V1beta1CertificateSigningRequestList;
/**
* This information is immutable after the request is created. Only the Request and Usages fields can be set on creation, other fields are derived by Kubernetes and cannot be modified by users.
*/
class V1beta1CertificateSigningRequestSpec {
    static getAttributeTypeMap() {
        return V1beta1CertificateSigningRequestSpec.attributeTypeMap;
    }
}
V1beta1CertificateSigningRequestSpec.discriminator = undefined;
V1beta1CertificateSigningRequestSpec.attributeTypeMap = [
    {
        "name": "extra",
        "baseName": "extra",
        "type": "{ [key: string]: Array<string>; }"
    },
    {
        "name": "groups",
        "baseName": "groups",
        "type": "Array<string>"
    },
    {
        "name": "request",
        "baseName": "request",
        "type": "string"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    },
    {
        "name": "usages",
        "baseName": "usages",
        "type": "Array<string>"
    },
    {
        "name": "username",
        "baseName": "username",
        "type": "string"
    }
];
exports.V1beta1CertificateSigningRequestSpec = V1beta1CertificateSigningRequestSpec;
class V1beta1CertificateSigningRequestStatus {
    static getAttributeTypeMap() {
        return V1beta1CertificateSigningRequestStatus.attributeTypeMap;
    }
}
V1beta1CertificateSigningRequestStatus.discriminator = undefined;
V1beta1CertificateSigningRequestStatus.attributeTypeMap = [
    {
        "name": "certificate",
        "baseName": "certificate",
        "type": "string"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta1CertificateSigningRequestCondition>"
    }
];
exports.V1beta1CertificateSigningRequestStatus = V1beta1CertificateSigningRequestStatus;
/**
* ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.
*/
class V1beta1ClusterRole {
    static getAttributeTypeMap() {
        return V1beta1ClusterRole.attributeTypeMap;
    }
}
V1beta1ClusterRole.discriminator = undefined;
V1beta1ClusterRole.attributeTypeMap = [
    {
        "name": "aggregationRule",
        "baseName": "aggregationRule",
        "type": "V1beta1AggregationRule"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1beta1PolicyRule>"
    }
];
exports.V1beta1ClusterRole = V1beta1ClusterRole;
/**
* ClusterRoleBinding references a ClusterRole, but not contain it.  It can reference a ClusterRole in the global namespace, and adds who information via Subject.
*/
class V1beta1ClusterRoleBinding {
    static getAttributeTypeMap() {
        return V1beta1ClusterRoleBinding.attributeTypeMap;
    }
}
V1beta1ClusterRoleBinding.discriminator = undefined;
V1beta1ClusterRoleBinding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "roleRef",
        "baseName": "roleRef",
        "type": "V1beta1RoleRef"
    },
    {
        "name": "subjects",
        "baseName": "subjects",
        "type": "Array<V1beta1Subject>"
    }
];
exports.V1beta1ClusterRoleBinding = V1beta1ClusterRoleBinding;
/**
* ClusterRoleBindingList is a collection of ClusterRoleBindings
*/
class V1beta1ClusterRoleBindingList {
    static getAttributeTypeMap() {
        return V1beta1ClusterRoleBindingList.attributeTypeMap;
    }
}
V1beta1ClusterRoleBindingList.discriminator = undefined;
V1beta1ClusterRoleBindingList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1ClusterRoleBinding>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1ClusterRoleBindingList = V1beta1ClusterRoleBindingList;
/**
* ClusterRoleList is a collection of ClusterRoles
*/
class V1beta1ClusterRoleList {
    static getAttributeTypeMap() {
        return V1beta1ClusterRoleList.attributeTypeMap;
    }
}
V1beta1ClusterRoleList.discriminator = undefined;
V1beta1ClusterRoleList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1ClusterRole>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1ClusterRoleList = V1beta1ClusterRoleList;
/**
* DEPRECATED - This group version of ControllerRevision is deprecated by apps/v1beta2/ControllerRevision. See the release notes for more information. ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.
*/
class V1beta1ControllerRevision {
    static getAttributeTypeMap() {
        return V1beta1ControllerRevision.attributeTypeMap;
    }
}
V1beta1ControllerRevision.discriminator = undefined;
V1beta1ControllerRevision.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "data",
        "baseName": "data",
        "type": "RuntimeRawExtension"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "revision",
        "baseName": "revision",
        "type": "number"
    }
];
exports.V1beta1ControllerRevision = V1beta1ControllerRevision;
/**
* ControllerRevisionList is a resource containing a list of ControllerRevision objects.
*/
class V1beta1ControllerRevisionList {
    static getAttributeTypeMap() {
        return V1beta1ControllerRevisionList.attributeTypeMap;
    }
}
V1beta1ControllerRevisionList.discriminator = undefined;
V1beta1ControllerRevisionList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1ControllerRevision>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1ControllerRevisionList = V1beta1ControllerRevisionList;
/**
* CronJob represents the configuration of a single cron job.
*/
class V1beta1CronJob {
    static getAttributeTypeMap() {
        return V1beta1CronJob.attributeTypeMap;
    }
}
V1beta1CronJob.discriminator = undefined;
V1beta1CronJob.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1CronJobSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1CronJobStatus"
    }
];
exports.V1beta1CronJob = V1beta1CronJob;
/**
* CronJobList is a collection of cron jobs.
*/
class V1beta1CronJobList {
    static getAttributeTypeMap() {
        return V1beta1CronJobList.attributeTypeMap;
    }
}
V1beta1CronJobList.discriminator = undefined;
V1beta1CronJobList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1CronJob>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1CronJobList = V1beta1CronJobList;
/**
* CronJobSpec describes how the job execution will look like and when it will actually run.
*/
class V1beta1CronJobSpec {
    static getAttributeTypeMap() {
        return V1beta1CronJobSpec.attributeTypeMap;
    }
}
V1beta1CronJobSpec.discriminator = undefined;
V1beta1CronJobSpec.attributeTypeMap = [
    {
        "name": "concurrencyPolicy",
        "baseName": "concurrencyPolicy",
        "type": "string"
    },
    {
        "name": "failedJobsHistoryLimit",
        "baseName": "failedJobsHistoryLimit",
        "type": "number"
    },
    {
        "name": "jobTemplate",
        "baseName": "jobTemplate",
        "type": "V1beta1JobTemplateSpec"
    },
    {
        "name": "schedule",
        "baseName": "schedule",
        "type": "string"
    },
    {
        "name": "startingDeadlineSeconds",
        "baseName": "startingDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "successfulJobsHistoryLimit",
        "baseName": "successfulJobsHistoryLimit",
        "type": "number"
    },
    {
        "name": "suspend",
        "baseName": "suspend",
        "type": "boolean"
    }
];
exports.V1beta1CronJobSpec = V1beta1CronJobSpec;
/**
* CronJobStatus represents the current state of a cron job.
*/
class V1beta1CronJobStatus {
    static getAttributeTypeMap() {
        return V1beta1CronJobStatus.attributeTypeMap;
    }
}
V1beta1CronJobStatus.discriminator = undefined;
V1beta1CronJobStatus.attributeTypeMap = [
    {
        "name": "active",
        "baseName": "active",
        "type": "Array<V1ObjectReference>"
    },
    {
        "name": "lastScheduleTime",
        "baseName": "lastScheduleTime",
        "type": "Date"
    }
];
exports.V1beta1CronJobStatus = V1beta1CronJobStatus;
/**
* CustomResourceColumnDefinition specifies a column for server side printing.
*/
class V1beta1CustomResourceColumnDefinition {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceColumnDefinition.attributeTypeMap;
    }
}
V1beta1CustomResourceColumnDefinition.discriminator = undefined;
V1beta1CustomResourceColumnDefinition.attributeTypeMap = [
    {
        "name": "jSONPath",
        "baseName": "JSONPath",
        "type": "string"
    },
    {
        "name": "description",
        "baseName": "description",
        "type": "string"
    },
    {
        "name": "format",
        "baseName": "format",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "priority",
        "baseName": "priority",
        "type": "number"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1CustomResourceColumnDefinition = V1beta1CustomResourceColumnDefinition;
/**
* CustomResourceConversion describes how to convert different versions of a CR.
*/
class V1beta1CustomResourceConversion {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceConversion.attributeTypeMap;
    }
}
V1beta1CustomResourceConversion.discriminator = undefined;
V1beta1CustomResourceConversion.attributeTypeMap = [
    {
        "name": "strategy",
        "baseName": "strategy",
        "type": "string"
    },
    {
        "name": "webhookClientConfig",
        "baseName": "webhookClientConfig",
        "type": "ApiextensionsV1beta1WebhookClientConfig"
    }
];
exports.V1beta1CustomResourceConversion = V1beta1CustomResourceConversion;
/**
* CustomResourceDefinition represents a resource that should be exposed on the API server.  Its name MUST be in the format <.spec.name>.<.spec.group>.
*/
class V1beta1CustomResourceDefinition {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinition.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinition.discriminator = undefined;
V1beta1CustomResourceDefinition.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1CustomResourceDefinitionSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1CustomResourceDefinitionStatus"
    }
];
exports.V1beta1CustomResourceDefinition = V1beta1CustomResourceDefinition;
/**
* CustomResourceDefinitionCondition contains details for the current condition of this pod.
*/
class V1beta1CustomResourceDefinitionCondition {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinitionCondition.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinitionCondition.discriminator = undefined;
V1beta1CustomResourceDefinitionCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1CustomResourceDefinitionCondition = V1beta1CustomResourceDefinitionCondition;
/**
* CustomResourceDefinitionList is a list of CustomResourceDefinition objects.
*/
class V1beta1CustomResourceDefinitionList {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinitionList.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinitionList.discriminator = undefined;
V1beta1CustomResourceDefinitionList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1CustomResourceDefinition>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1CustomResourceDefinitionList = V1beta1CustomResourceDefinitionList;
/**
* CustomResourceDefinitionNames indicates the names to serve this CustomResourceDefinition
*/
class V1beta1CustomResourceDefinitionNames {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinitionNames.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinitionNames.discriminator = undefined;
V1beta1CustomResourceDefinitionNames.attributeTypeMap = [
    {
        "name": "categories",
        "baseName": "categories",
        "type": "Array<string>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "listKind",
        "baseName": "listKind",
        "type": "string"
    },
    {
        "name": "plural",
        "baseName": "plural",
        "type": "string"
    },
    {
        "name": "shortNames",
        "baseName": "shortNames",
        "type": "Array<string>"
    },
    {
        "name": "singular",
        "baseName": "singular",
        "type": "string"
    }
];
exports.V1beta1CustomResourceDefinitionNames = V1beta1CustomResourceDefinitionNames;
/**
* CustomResourceDefinitionSpec describes how a user wants their resource to appear
*/
class V1beta1CustomResourceDefinitionSpec {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinitionSpec.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinitionSpec.discriminator = undefined;
V1beta1CustomResourceDefinitionSpec.attributeTypeMap = [
    {
        "name": "additionalPrinterColumns",
        "baseName": "additionalPrinterColumns",
        "type": "Array<V1beta1CustomResourceColumnDefinition>"
    },
    {
        "name": "conversion",
        "baseName": "conversion",
        "type": "V1beta1CustomResourceConversion"
    },
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "names",
        "baseName": "names",
        "type": "V1beta1CustomResourceDefinitionNames"
    },
    {
        "name": "scope",
        "baseName": "scope",
        "type": "string"
    },
    {
        "name": "subresources",
        "baseName": "subresources",
        "type": "V1beta1CustomResourceSubresources"
    },
    {
        "name": "validation",
        "baseName": "validation",
        "type": "V1beta1CustomResourceValidation"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    },
    {
        "name": "versions",
        "baseName": "versions",
        "type": "Array<V1beta1CustomResourceDefinitionVersion>"
    }
];
exports.V1beta1CustomResourceDefinitionSpec = V1beta1CustomResourceDefinitionSpec;
/**
* CustomResourceDefinitionStatus indicates the state of the CustomResourceDefinition
*/
class V1beta1CustomResourceDefinitionStatus {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinitionStatus.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinitionStatus.discriminator = undefined;
V1beta1CustomResourceDefinitionStatus.attributeTypeMap = [
    {
        "name": "acceptedNames",
        "baseName": "acceptedNames",
        "type": "V1beta1CustomResourceDefinitionNames"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta1CustomResourceDefinitionCondition>"
    },
    {
        "name": "storedVersions",
        "baseName": "storedVersions",
        "type": "Array<string>"
    }
];
exports.V1beta1CustomResourceDefinitionStatus = V1beta1CustomResourceDefinitionStatus;
/**
* CustomResourceDefinitionVersion describes a version for CRD.
*/
class V1beta1CustomResourceDefinitionVersion {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceDefinitionVersion.attributeTypeMap;
    }
}
V1beta1CustomResourceDefinitionVersion.discriminator = undefined;
V1beta1CustomResourceDefinitionVersion.attributeTypeMap = [
    {
        "name": "additionalPrinterColumns",
        "baseName": "additionalPrinterColumns",
        "type": "Array<V1beta1CustomResourceColumnDefinition>"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "schema",
        "baseName": "schema",
        "type": "V1beta1CustomResourceValidation"
    },
    {
        "name": "served",
        "baseName": "served",
        "type": "boolean"
    },
    {
        "name": "storage",
        "baseName": "storage",
        "type": "boolean"
    },
    {
        "name": "subresources",
        "baseName": "subresources",
        "type": "V1beta1CustomResourceSubresources"
    }
];
exports.V1beta1CustomResourceDefinitionVersion = V1beta1CustomResourceDefinitionVersion;
/**
* CustomResourceSubresourceScale defines how to serve the scale subresource for CustomResources.
*/
class V1beta1CustomResourceSubresourceScale {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceSubresourceScale.attributeTypeMap;
    }
}
V1beta1CustomResourceSubresourceScale.discriminator = undefined;
V1beta1CustomResourceSubresourceScale.attributeTypeMap = [
    {
        "name": "labelSelectorPath",
        "baseName": "labelSelectorPath",
        "type": "string"
    },
    {
        "name": "specReplicasPath",
        "baseName": "specReplicasPath",
        "type": "string"
    },
    {
        "name": "statusReplicasPath",
        "baseName": "statusReplicasPath",
        "type": "string"
    }
];
exports.V1beta1CustomResourceSubresourceScale = V1beta1CustomResourceSubresourceScale;
/**
* CustomResourceSubresources defines the status and scale subresources for CustomResources.
*/
class V1beta1CustomResourceSubresources {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceSubresources.attributeTypeMap;
    }
}
V1beta1CustomResourceSubresources.discriminator = undefined;
V1beta1CustomResourceSubresources.attributeTypeMap = [
    {
        "name": "scale",
        "baseName": "scale",
        "type": "V1beta1CustomResourceSubresourceScale"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "any"
    }
];
exports.V1beta1CustomResourceSubresources = V1beta1CustomResourceSubresources;
/**
* CustomResourceValidation is a list of validation methods for CustomResources.
*/
class V1beta1CustomResourceValidation {
    static getAttributeTypeMap() {
        return V1beta1CustomResourceValidation.attributeTypeMap;
    }
}
V1beta1CustomResourceValidation.discriminator = undefined;
V1beta1CustomResourceValidation.attributeTypeMap = [
    {
        "name": "openAPIV3Schema",
        "baseName": "openAPIV3Schema",
        "type": "V1beta1JSONSchemaProps"
    }
];
exports.V1beta1CustomResourceValidation = V1beta1CustomResourceValidation;
/**
* DEPRECATED - This group version of DaemonSet is deprecated by apps/v1beta2/DaemonSet. See the release notes for more information. DaemonSet represents the configuration of a daemon set.
*/
class V1beta1DaemonSet {
    static getAttributeTypeMap() {
        return V1beta1DaemonSet.attributeTypeMap;
    }
}
V1beta1DaemonSet.discriminator = undefined;
V1beta1DaemonSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1DaemonSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1DaemonSetStatus"
    }
];
exports.V1beta1DaemonSet = V1beta1DaemonSet;
/**
* DaemonSetCondition describes the state of a DaemonSet at a certain point.
*/
class V1beta1DaemonSetCondition {
    static getAttributeTypeMap() {
        return V1beta1DaemonSetCondition.attributeTypeMap;
    }
}
V1beta1DaemonSetCondition.discriminator = undefined;
V1beta1DaemonSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1DaemonSetCondition = V1beta1DaemonSetCondition;
/**
* DaemonSetList is a collection of daemon sets.
*/
class V1beta1DaemonSetList {
    static getAttributeTypeMap() {
        return V1beta1DaemonSetList.attributeTypeMap;
    }
}
V1beta1DaemonSetList.discriminator = undefined;
V1beta1DaemonSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1DaemonSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1DaemonSetList = V1beta1DaemonSetList;
/**
* DaemonSetSpec is the specification of a daemon set.
*/
class V1beta1DaemonSetSpec {
    static getAttributeTypeMap() {
        return V1beta1DaemonSetSpec.attributeTypeMap;
    }
}
V1beta1DaemonSetSpec.discriminator = undefined;
V1beta1DaemonSetSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "templateGeneration",
        "baseName": "templateGeneration",
        "type": "number"
    },
    {
        "name": "updateStrategy",
        "baseName": "updateStrategy",
        "type": "V1beta1DaemonSetUpdateStrategy"
    }
];
exports.V1beta1DaemonSetSpec = V1beta1DaemonSetSpec;
/**
* DaemonSetStatus represents the current status of a daemon set.
*/
class V1beta1DaemonSetStatus {
    static getAttributeTypeMap() {
        return V1beta1DaemonSetStatus.attributeTypeMap;
    }
}
V1beta1DaemonSetStatus.discriminator = undefined;
V1beta1DaemonSetStatus.attributeTypeMap = [
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta1DaemonSetCondition>"
    },
    {
        "name": "currentNumberScheduled",
        "baseName": "currentNumberScheduled",
        "type": "number"
    },
    {
        "name": "desiredNumberScheduled",
        "baseName": "desiredNumberScheduled",
        "type": "number"
    },
    {
        "name": "numberAvailable",
        "baseName": "numberAvailable",
        "type": "number"
    },
    {
        "name": "numberMisscheduled",
        "baseName": "numberMisscheduled",
        "type": "number"
    },
    {
        "name": "numberReady",
        "baseName": "numberReady",
        "type": "number"
    },
    {
        "name": "numberUnavailable",
        "baseName": "numberUnavailable",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "updatedNumberScheduled",
        "baseName": "updatedNumberScheduled",
        "type": "number"
    }
];
exports.V1beta1DaemonSetStatus = V1beta1DaemonSetStatus;
class V1beta1DaemonSetUpdateStrategy {
    static getAttributeTypeMap() {
        return V1beta1DaemonSetUpdateStrategy.attributeTypeMap;
    }
}
V1beta1DaemonSetUpdateStrategy.discriminator = undefined;
V1beta1DaemonSetUpdateStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1beta1RollingUpdateDaemonSet"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1DaemonSetUpdateStrategy = V1beta1DaemonSetUpdateStrategy;
/**
* Event is a report of an event somewhere in the cluster. It generally denotes some state change in the system.
*/
class V1beta1Event {
    static getAttributeTypeMap() {
        return V1beta1Event.attributeTypeMap;
    }
}
V1beta1Event.discriminator = undefined;
V1beta1Event.attributeTypeMap = [
    {
        "name": "action",
        "baseName": "action",
        "type": "string"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "deprecatedCount",
        "baseName": "deprecatedCount",
        "type": "number"
    },
    {
        "name": "deprecatedFirstTimestamp",
        "baseName": "deprecatedFirstTimestamp",
        "type": "Date"
    },
    {
        "name": "deprecatedLastTimestamp",
        "baseName": "deprecatedLastTimestamp",
        "type": "Date"
    },
    {
        "name": "deprecatedSource",
        "baseName": "deprecatedSource",
        "type": "V1EventSource"
    },
    {
        "name": "eventTime",
        "baseName": "eventTime",
        "type": "Date"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "note",
        "baseName": "note",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "regarding",
        "baseName": "regarding",
        "type": "V1ObjectReference"
    },
    {
        "name": "related",
        "baseName": "related",
        "type": "V1ObjectReference"
    },
    {
        "name": "reportingController",
        "baseName": "reportingController",
        "type": "string"
    },
    {
        "name": "reportingInstance",
        "baseName": "reportingInstance",
        "type": "string"
    },
    {
        "name": "series",
        "baseName": "series",
        "type": "V1beta1EventSeries"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1Event = V1beta1Event;
/**
* EventList is a list of Event objects.
*/
class V1beta1EventList {
    static getAttributeTypeMap() {
        return V1beta1EventList.attributeTypeMap;
    }
}
V1beta1EventList.discriminator = undefined;
V1beta1EventList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1Event>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1EventList = V1beta1EventList;
/**
* EventSeries contain information on series of events, i.e. thing that was/is happening continuously for some time.
*/
class V1beta1EventSeries {
    static getAttributeTypeMap() {
        return V1beta1EventSeries.attributeTypeMap;
    }
}
V1beta1EventSeries.discriminator = undefined;
V1beta1EventSeries.attributeTypeMap = [
    {
        "name": "count",
        "baseName": "count",
        "type": "number"
    },
    {
        "name": "lastObservedTime",
        "baseName": "lastObservedTime",
        "type": "Date"
    },
    {
        "name": "state",
        "baseName": "state",
        "type": "string"
    }
];
exports.V1beta1EventSeries = V1beta1EventSeries;
/**
* Eviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod.  A request to cause such an eviction is created by POSTing to .../pods/<pod name>/evictions.
*/
class V1beta1Eviction {
    static getAttributeTypeMap() {
        return V1beta1Eviction.attributeTypeMap;
    }
}
V1beta1Eviction.discriminator = undefined;
V1beta1Eviction.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "deleteOptions",
        "baseName": "deleteOptions",
        "type": "V1DeleteOptions"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    }
];
exports.V1beta1Eviction = V1beta1Eviction;
/**
* ExternalDocumentation allows referencing an external resource for extended documentation.
*/
class V1beta1ExternalDocumentation {
    static getAttributeTypeMap() {
        return V1beta1ExternalDocumentation.attributeTypeMap;
    }
}
V1beta1ExternalDocumentation.discriminator = undefined;
V1beta1ExternalDocumentation.attributeTypeMap = [
    {
        "name": "description",
        "baseName": "description",
        "type": "string"
    },
    {
        "name": "url",
        "baseName": "url",
        "type": "string"
    }
];
exports.V1beta1ExternalDocumentation = V1beta1ExternalDocumentation;
/**
* HTTPIngressPath associates a path regex with a backend. Incoming urls matching the path are forwarded to the backend.
*/
class V1beta1HTTPIngressPath {
    static getAttributeTypeMap() {
        return V1beta1HTTPIngressPath.attributeTypeMap;
    }
}
V1beta1HTTPIngressPath.discriminator = undefined;
V1beta1HTTPIngressPath.attributeTypeMap = [
    {
        "name": "backend",
        "baseName": "backend",
        "type": "V1beta1IngressBackend"
    },
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    }
];
exports.V1beta1HTTPIngressPath = V1beta1HTTPIngressPath;
/**
* HTTPIngressRuleValue is a list of http selectors pointing to backends. In the example: http://<host>/<path>?<searchpart> -> backend where where parts of the url correspond to RFC 3986, this resource will be used to match against everything after the last '/' and before the first '?' or '#'.
*/
class V1beta1HTTPIngressRuleValue {
    static getAttributeTypeMap() {
        return V1beta1HTTPIngressRuleValue.attributeTypeMap;
    }
}
V1beta1HTTPIngressRuleValue.discriminator = undefined;
V1beta1HTTPIngressRuleValue.attributeTypeMap = [
    {
        "name": "paths",
        "baseName": "paths",
        "type": "Array<V1beta1HTTPIngressPath>"
    }
];
exports.V1beta1HTTPIngressRuleValue = V1beta1HTTPIngressRuleValue;
/**
* DEPRECATED 1.9 - This group version of IPBlock is deprecated by networking/v1/IPBlock. IPBlock describes a particular CIDR (Ex. \"192.168.1.1/24\") that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The except entry describes CIDRs that should not be included within this rule.
*/
class V1beta1IPBlock {
    static getAttributeTypeMap() {
        return V1beta1IPBlock.attributeTypeMap;
    }
}
V1beta1IPBlock.discriminator = undefined;
V1beta1IPBlock.attributeTypeMap = [
    {
        "name": "cidr",
        "baseName": "cidr",
        "type": "string"
    },
    {
        "name": "except",
        "baseName": "except",
        "type": "Array<string>"
    }
];
exports.V1beta1IPBlock = V1beta1IPBlock;
/**
* Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.
*/
class V1beta1Ingress {
    static getAttributeTypeMap() {
        return V1beta1Ingress.attributeTypeMap;
    }
}
V1beta1Ingress.discriminator = undefined;
V1beta1Ingress.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1IngressSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1IngressStatus"
    }
];
exports.V1beta1Ingress = V1beta1Ingress;
/**
* IngressBackend describes all endpoints for a given service and port.
*/
class V1beta1IngressBackend {
    static getAttributeTypeMap() {
        return V1beta1IngressBackend.attributeTypeMap;
    }
}
V1beta1IngressBackend.discriminator = undefined;
V1beta1IngressBackend.attributeTypeMap = [
    {
        "name": "serviceName",
        "baseName": "serviceName",
        "type": "string"
    },
    {
        "name": "servicePort",
        "baseName": "servicePort",
        "type": "any"
    }
];
exports.V1beta1IngressBackend = V1beta1IngressBackend;
/**
* IngressList is a collection of Ingress.
*/
class V1beta1IngressList {
    static getAttributeTypeMap() {
        return V1beta1IngressList.attributeTypeMap;
    }
}
V1beta1IngressList.discriminator = undefined;
V1beta1IngressList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1Ingress>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1IngressList = V1beta1IngressList;
/**
* IngressRule represents the rules mapping the paths under a specified host to the related backend services. Incoming requests are first evaluated for a host match, then routed to the backend associated with the matching IngressRuleValue.
*/
class V1beta1IngressRule {
    static getAttributeTypeMap() {
        return V1beta1IngressRule.attributeTypeMap;
    }
}
V1beta1IngressRule.discriminator = undefined;
V1beta1IngressRule.attributeTypeMap = [
    {
        "name": "host",
        "baseName": "host",
        "type": "string"
    },
    {
        "name": "http",
        "baseName": "http",
        "type": "V1beta1HTTPIngressRuleValue"
    }
];
exports.V1beta1IngressRule = V1beta1IngressRule;
/**
* IngressSpec describes the Ingress the user wishes to exist.
*/
class V1beta1IngressSpec {
    static getAttributeTypeMap() {
        return V1beta1IngressSpec.attributeTypeMap;
    }
}
V1beta1IngressSpec.discriminator = undefined;
V1beta1IngressSpec.attributeTypeMap = [
    {
        "name": "backend",
        "baseName": "backend",
        "type": "V1beta1IngressBackend"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1beta1IngressRule>"
    },
    {
        "name": "tls",
        "baseName": "tls",
        "type": "Array<V1beta1IngressTLS>"
    }
];
exports.V1beta1IngressSpec = V1beta1IngressSpec;
/**
* IngressStatus describe the current state of the Ingress.
*/
class V1beta1IngressStatus {
    static getAttributeTypeMap() {
        return V1beta1IngressStatus.attributeTypeMap;
    }
}
V1beta1IngressStatus.discriminator = undefined;
V1beta1IngressStatus.attributeTypeMap = [
    {
        "name": "loadBalancer",
        "baseName": "loadBalancer",
        "type": "V1LoadBalancerStatus"
    }
];
exports.V1beta1IngressStatus = V1beta1IngressStatus;
/**
* IngressTLS describes the transport layer security associated with an Ingress.
*/
class V1beta1IngressTLS {
    static getAttributeTypeMap() {
        return V1beta1IngressTLS.attributeTypeMap;
    }
}
V1beta1IngressTLS.discriminator = undefined;
V1beta1IngressTLS.attributeTypeMap = [
    {
        "name": "hosts",
        "baseName": "hosts",
        "type": "Array<string>"
    },
    {
        "name": "secretName",
        "baseName": "secretName",
        "type": "string"
    }
];
exports.V1beta1IngressTLS = V1beta1IngressTLS;
/**
* JSONSchemaProps is a JSON-Schema following Specification Draft 4 (http://json-schema.org/).
*/
class V1beta1JSONSchemaProps {
    static getAttributeTypeMap() {
        return V1beta1JSONSchemaProps.attributeTypeMap;
    }
}
V1beta1JSONSchemaProps.discriminator = undefined;
V1beta1JSONSchemaProps.attributeTypeMap = [
    {
        "name": "ref",
        "baseName": "$ref",
        "type": "string"
    },
    {
        "name": "schema",
        "baseName": "$schema",
        "type": "string"
    },
    {
        "name": "additionalItems",
        "baseName": "additionalItems",
        "type": "any"
    },
    {
        "name": "additionalProperties",
        "baseName": "additionalProperties",
        "type": "any"
    },
    {
        "name": "allOf",
        "baseName": "allOf",
        "type": "Array<V1beta1JSONSchemaProps>"
    },
    {
        "name": "anyOf",
        "baseName": "anyOf",
        "type": "Array<V1beta1JSONSchemaProps>"
    },
    {
        "name": "_default",
        "baseName": "default",
        "type": "any"
    },
    {
        "name": "definitions",
        "baseName": "definitions",
        "type": "{ [key: string]: V1beta1JSONSchemaProps; }"
    },
    {
        "name": "dependencies",
        "baseName": "dependencies",
        "type": "{ [key: string]: any; }"
    },
    {
        "name": "description",
        "baseName": "description",
        "type": "string"
    },
    {
        "name": "_enum",
        "baseName": "enum",
        "type": "Array<any>"
    },
    {
        "name": "example",
        "baseName": "example",
        "type": "any"
    },
    {
        "name": "exclusiveMaximum",
        "baseName": "exclusiveMaximum",
        "type": "boolean"
    },
    {
        "name": "exclusiveMinimum",
        "baseName": "exclusiveMinimum",
        "type": "boolean"
    },
    {
        "name": "externalDocs",
        "baseName": "externalDocs",
        "type": "V1beta1ExternalDocumentation"
    },
    {
        "name": "format",
        "baseName": "format",
        "type": "string"
    },
    {
        "name": "id",
        "baseName": "id",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "any"
    },
    {
        "name": "maxItems",
        "baseName": "maxItems",
        "type": "number"
    },
    {
        "name": "maxLength",
        "baseName": "maxLength",
        "type": "number"
    },
    {
        "name": "maxProperties",
        "baseName": "maxProperties",
        "type": "number"
    },
    {
        "name": "maximum",
        "baseName": "maximum",
        "type": "number"
    },
    {
        "name": "minItems",
        "baseName": "minItems",
        "type": "number"
    },
    {
        "name": "minLength",
        "baseName": "minLength",
        "type": "number"
    },
    {
        "name": "minProperties",
        "baseName": "minProperties",
        "type": "number"
    },
    {
        "name": "minimum",
        "baseName": "minimum",
        "type": "number"
    },
    {
        "name": "multipleOf",
        "baseName": "multipleOf",
        "type": "number"
    },
    {
        "name": "not",
        "baseName": "not",
        "type": "V1beta1JSONSchemaProps"
    },
    {
        "name": "oneOf",
        "baseName": "oneOf",
        "type": "Array<V1beta1JSONSchemaProps>"
    },
    {
        "name": "pattern",
        "baseName": "pattern",
        "type": "string"
    },
    {
        "name": "patternProperties",
        "baseName": "patternProperties",
        "type": "{ [key: string]: V1beta1JSONSchemaProps; }"
    },
    {
        "name": "properties",
        "baseName": "properties",
        "type": "{ [key: string]: V1beta1JSONSchemaProps; }"
    },
    {
        "name": "required",
        "baseName": "required",
        "type": "Array<string>"
    },
    {
        "name": "title",
        "baseName": "title",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    },
    {
        "name": "uniqueItems",
        "baseName": "uniqueItems",
        "type": "boolean"
    }
];
exports.V1beta1JSONSchemaProps = V1beta1JSONSchemaProps;
/**
* JobTemplateSpec describes the data a Job should have when created from a template
*/
class V1beta1JobTemplateSpec {
    static getAttributeTypeMap() {
        return V1beta1JobTemplateSpec.attributeTypeMap;
    }
}
V1beta1JobTemplateSpec.discriminator = undefined;
V1beta1JobTemplateSpec.attributeTypeMap = [
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1JobSpec"
    }
];
exports.V1beta1JobTemplateSpec = V1beta1JobTemplateSpec;
/**
* Lease defines a lease concept.
*/
class V1beta1Lease {
    static getAttributeTypeMap() {
        return V1beta1Lease.attributeTypeMap;
    }
}
V1beta1Lease.discriminator = undefined;
V1beta1Lease.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1LeaseSpec"
    }
];
exports.V1beta1Lease = V1beta1Lease;
/**
* LeaseList is a list of Lease objects.
*/
class V1beta1LeaseList {
    static getAttributeTypeMap() {
        return V1beta1LeaseList.attributeTypeMap;
    }
}
V1beta1LeaseList.discriminator = undefined;
V1beta1LeaseList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1Lease>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1LeaseList = V1beta1LeaseList;
/**
* LeaseSpec is a specification of a Lease.
*/
class V1beta1LeaseSpec {
    static getAttributeTypeMap() {
        return V1beta1LeaseSpec.attributeTypeMap;
    }
}
V1beta1LeaseSpec.discriminator = undefined;
V1beta1LeaseSpec.attributeTypeMap = [
    {
        "name": "acquireTime",
        "baseName": "acquireTime",
        "type": "Date"
    },
    {
        "name": "holderIdentity",
        "baseName": "holderIdentity",
        "type": "string"
    },
    {
        "name": "leaseDurationSeconds",
        "baseName": "leaseDurationSeconds",
        "type": "number"
    },
    {
        "name": "leaseTransitions",
        "baseName": "leaseTransitions",
        "type": "number"
    },
    {
        "name": "renewTime",
        "baseName": "renewTime",
        "type": "Date"
    }
];
exports.V1beta1LeaseSpec = V1beta1LeaseSpec;
/**
* LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.
*/
class V1beta1LocalSubjectAccessReview {
    static getAttributeTypeMap() {
        return V1beta1LocalSubjectAccessReview.attributeTypeMap;
    }
}
V1beta1LocalSubjectAccessReview.discriminator = undefined;
V1beta1LocalSubjectAccessReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1SubjectAccessReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1SubjectAccessReviewStatus"
    }
];
exports.V1beta1LocalSubjectAccessReview = V1beta1LocalSubjectAccessReview;
/**
* MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object.
*/
class V1beta1MutatingWebhookConfiguration {
    static getAttributeTypeMap() {
        return V1beta1MutatingWebhookConfiguration.attributeTypeMap;
    }
}
V1beta1MutatingWebhookConfiguration.discriminator = undefined;
V1beta1MutatingWebhookConfiguration.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "webhooks",
        "baseName": "webhooks",
        "type": "Array<V1beta1Webhook>"
    }
];
exports.V1beta1MutatingWebhookConfiguration = V1beta1MutatingWebhookConfiguration;
/**
* MutatingWebhookConfigurationList is a list of MutatingWebhookConfiguration.
*/
class V1beta1MutatingWebhookConfigurationList {
    static getAttributeTypeMap() {
        return V1beta1MutatingWebhookConfigurationList.attributeTypeMap;
    }
}
V1beta1MutatingWebhookConfigurationList.discriminator = undefined;
V1beta1MutatingWebhookConfigurationList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1MutatingWebhookConfiguration>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1MutatingWebhookConfigurationList = V1beta1MutatingWebhookConfigurationList;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicy is deprecated by networking/v1/NetworkPolicy. NetworkPolicy describes what network traffic is allowed for a set of Pods
*/
class V1beta1NetworkPolicy {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicy.attributeTypeMap;
    }
}
V1beta1NetworkPolicy.discriminator = undefined;
V1beta1NetworkPolicy.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1NetworkPolicySpec"
    }
];
exports.V1beta1NetworkPolicy = V1beta1NetworkPolicy;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicyEgressRule is deprecated by networking/v1/NetworkPolicyEgressRule. NetworkPolicyEgressRule describes a particular set of traffic that is allowed out of pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and to. This type is beta-level in 1.8
*/
class V1beta1NetworkPolicyEgressRule {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicyEgressRule.attributeTypeMap;
    }
}
V1beta1NetworkPolicyEgressRule.discriminator = undefined;
V1beta1NetworkPolicyEgressRule.attributeTypeMap = [
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1beta1NetworkPolicyPort>"
    },
    {
        "name": "to",
        "baseName": "to",
        "type": "Array<V1beta1NetworkPolicyPeer>"
    }
];
exports.V1beta1NetworkPolicyEgressRule = V1beta1NetworkPolicyEgressRule;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicyIngressRule is deprecated by networking/v1/NetworkPolicyIngressRule. This NetworkPolicyIngressRule matches traffic if and only if the traffic matches both ports AND from.
*/
class V1beta1NetworkPolicyIngressRule {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicyIngressRule.attributeTypeMap;
    }
}
V1beta1NetworkPolicyIngressRule.discriminator = undefined;
V1beta1NetworkPolicyIngressRule.attributeTypeMap = [
    {
        "name": "from",
        "baseName": "from",
        "type": "Array<V1beta1NetworkPolicyPeer>"
    },
    {
        "name": "ports",
        "baseName": "ports",
        "type": "Array<V1beta1NetworkPolicyPort>"
    }
];
exports.V1beta1NetworkPolicyIngressRule = V1beta1NetworkPolicyIngressRule;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicyList is deprecated by networking/v1/NetworkPolicyList. Network Policy List is a list of NetworkPolicy objects.
*/
class V1beta1NetworkPolicyList {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicyList.attributeTypeMap;
    }
}
V1beta1NetworkPolicyList.discriminator = undefined;
V1beta1NetworkPolicyList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1NetworkPolicy>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1NetworkPolicyList = V1beta1NetworkPolicyList;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicyPeer is deprecated by networking/v1/NetworkPolicyPeer.
*/
class V1beta1NetworkPolicyPeer {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicyPeer.attributeTypeMap;
    }
}
V1beta1NetworkPolicyPeer.discriminator = undefined;
V1beta1NetworkPolicyPeer.attributeTypeMap = [
    {
        "name": "ipBlock",
        "baseName": "ipBlock",
        "type": "V1beta1IPBlock"
    },
    {
        "name": "namespaceSelector",
        "baseName": "namespaceSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "podSelector",
        "baseName": "podSelector",
        "type": "V1LabelSelector"
    }
];
exports.V1beta1NetworkPolicyPeer = V1beta1NetworkPolicyPeer;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicyPort is deprecated by networking/v1/NetworkPolicyPort.
*/
class V1beta1NetworkPolicyPort {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicyPort.attributeTypeMap;
    }
}
V1beta1NetworkPolicyPort.discriminator = undefined;
V1beta1NetworkPolicyPort.attributeTypeMap = [
    {
        "name": "port",
        "baseName": "port",
        "type": "any"
    },
    {
        "name": "protocol",
        "baseName": "protocol",
        "type": "string"
    }
];
exports.V1beta1NetworkPolicyPort = V1beta1NetworkPolicyPort;
/**
* DEPRECATED 1.9 - This group version of NetworkPolicySpec is deprecated by networking/v1/NetworkPolicySpec.
*/
class V1beta1NetworkPolicySpec {
    static getAttributeTypeMap() {
        return V1beta1NetworkPolicySpec.attributeTypeMap;
    }
}
V1beta1NetworkPolicySpec.discriminator = undefined;
V1beta1NetworkPolicySpec.attributeTypeMap = [
    {
        "name": "egress",
        "baseName": "egress",
        "type": "Array<V1beta1NetworkPolicyEgressRule>"
    },
    {
        "name": "ingress",
        "baseName": "ingress",
        "type": "Array<V1beta1NetworkPolicyIngressRule>"
    },
    {
        "name": "podSelector",
        "baseName": "podSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "policyTypes",
        "baseName": "policyTypes",
        "type": "Array<string>"
    }
];
exports.V1beta1NetworkPolicySpec = V1beta1NetworkPolicySpec;
/**
* NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface
*/
class V1beta1NonResourceAttributes {
    static getAttributeTypeMap() {
        return V1beta1NonResourceAttributes.attributeTypeMap;
    }
}
V1beta1NonResourceAttributes.discriminator = undefined;
V1beta1NonResourceAttributes.attributeTypeMap = [
    {
        "name": "path",
        "baseName": "path",
        "type": "string"
    },
    {
        "name": "verb",
        "baseName": "verb",
        "type": "string"
    }
];
exports.V1beta1NonResourceAttributes = V1beta1NonResourceAttributes;
/**
* NonResourceRule holds information that describes a rule for the non-resource
*/
class V1beta1NonResourceRule {
    static getAttributeTypeMap() {
        return V1beta1NonResourceRule.attributeTypeMap;
    }
}
V1beta1NonResourceRule.discriminator = undefined;
V1beta1NonResourceRule.attributeTypeMap = [
    {
        "name": "nonResourceURLs",
        "baseName": "nonResourceURLs",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1beta1NonResourceRule = V1beta1NonResourceRule;
/**
* PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods
*/
class V1beta1PodDisruptionBudget {
    static getAttributeTypeMap() {
        return V1beta1PodDisruptionBudget.attributeTypeMap;
    }
}
V1beta1PodDisruptionBudget.discriminator = undefined;
V1beta1PodDisruptionBudget.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1PodDisruptionBudgetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1PodDisruptionBudgetStatus"
    }
];
exports.V1beta1PodDisruptionBudget = V1beta1PodDisruptionBudget;
/**
* PodDisruptionBudgetList is a collection of PodDisruptionBudgets.
*/
class V1beta1PodDisruptionBudgetList {
    static getAttributeTypeMap() {
        return V1beta1PodDisruptionBudgetList.attributeTypeMap;
    }
}
V1beta1PodDisruptionBudgetList.discriminator = undefined;
V1beta1PodDisruptionBudgetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1PodDisruptionBudget>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1PodDisruptionBudgetList = V1beta1PodDisruptionBudgetList;
/**
* PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.
*/
class V1beta1PodDisruptionBudgetSpec {
    static getAttributeTypeMap() {
        return V1beta1PodDisruptionBudgetSpec.attributeTypeMap;
    }
}
V1beta1PodDisruptionBudgetSpec.discriminator = undefined;
V1beta1PodDisruptionBudgetSpec.attributeTypeMap = [
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    },
    {
        "name": "minAvailable",
        "baseName": "minAvailable",
        "type": "any"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    }
];
exports.V1beta1PodDisruptionBudgetSpec = V1beta1PodDisruptionBudgetSpec;
/**
* PodDisruptionBudgetStatus represents information about the status of a PodDisruptionBudget. Status may trail the actual state of a system.
*/
class V1beta1PodDisruptionBudgetStatus {
    static getAttributeTypeMap() {
        return V1beta1PodDisruptionBudgetStatus.attributeTypeMap;
    }
}
V1beta1PodDisruptionBudgetStatus.discriminator = undefined;
V1beta1PodDisruptionBudgetStatus.attributeTypeMap = [
    {
        "name": "currentHealthy",
        "baseName": "currentHealthy",
        "type": "number"
    },
    {
        "name": "desiredHealthy",
        "baseName": "desiredHealthy",
        "type": "number"
    },
    {
        "name": "disruptedPods",
        "baseName": "disruptedPods",
        "type": "{ [key: string]: Date; }"
    },
    {
        "name": "disruptionsAllowed",
        "baseName": "disruptionsAllowed",
        "type": "number"
    },
    {
        "name": "expectedPods",
        "baseName": "expectedPods",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    }
];
exports.V1beta1PodDisruptionBudgetStatus = V1beta1PodDisruptionBudgetStatus;
/**
* PolicyRule holds information that describes a policy rule, but does not contain information about who the rule applies to or which namespace the rule applies to.
*/
class V1beta1PolicyRule {
    static getAttributeTypeMap() {
        return V1beta1PolicyRule.attributeTypeMap;
    }
}
V1beta1PolicyRule.discriminator = undefined;
V1beta1PolicyRule.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "nonResourceURLs",
        "baseName": "nonResourceURLs",
        "type": "Array<string>"
    },
    {
        "name": "resourceNames",
        "baseName": "resourceNames",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1beta1PolicyRule = V1beta1PolicyRule;
/**
* PriorityClass defines mapping from a priority class name to the priority integer value. The value can be any valid integer.
*/
class V1beta1PriorityClass {
    static getAttributeTypeMap() {
        return V1beta1PriorityClass.attributeTypeMap;
    }
}
V1beta1PriorityClass.discriminator = undefined;
V1beta1PriorityClass.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "description",
        "baseName": "description",
        "type": "string"
    },
    {
        "name": "globalDefault",
        "baseName": "globalDefault",
        "type": "boolean"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "number"
    }
];
exports.V1beta1PriorityClass = V1beta1PriorityClass;
/**
* PriorityClassList is a collection of priority classes.
*/
class V1beta1PriorityClassList {
    static getAttributeTypeMap() {
        return V1beta1PriorityClassList.attributeTypeMap;
    }
}
V1beta1PriorityClassList.discriminator = undefined;
V1beta1PriorityClassList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1PriorityClass>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1PriorityClassList = V1beta1PriorityClassList;
/**
* DEPRECATED - This group version of ReplicaSet is deprecated by apps/v1beta2/ReplicaSet. See the release notes for more information. ReplicaSet ensures that a specified number of pod replicas are running at any given time.
*/
class V1beta1ReplicaSet {
    static getAttributeTypeMap() {
        return V1beta1ReplicaSet.attributeTypeMap;
    }
}
V1beta1ReplicaSet.discriminator = undefined;
V1beta1ReplicaSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1ReplicaSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1ReplicaSetStatus"
    }
];
exports.V1beta1ReplicaSet = V1beta1ReplicaSet;
/**
* ReplicaSetCondition describes the state of a replica set at a certain point.
*/
class V1beta1ReplicaSetCondition {
    static getAttributeTypeMap() {
        return V1beta1ReplicaSetCondition.attributeTypeMap;
    }
}
V1beta1ReplicaSetCondition.discriminator = undefined;
V1beta1ReplicaSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1ReplicaSetCondition = V1beta1ReplicaSetCondition;
/**
* ReplicaSetList is a collection of ReplicaSets.
*/
class V1beta1ReplicaSetList {
    static getAttributeTypeMap() {
        return V1beta1ReplicaSetList.attributeTypeMap;
    }
}
V1beta1ReplicaSetList.discriminator = undefined;
V1beta1ReplicaSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1ReplicaSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1ReplicaSetList = V1beta1ReplicaSetList;
/**
* ReplicaSetSpec is the specification of a ReplicaSet.
*/
class V1beta1ReplicaSetSpec {
    static getAttributeTypeMap() {
        return V1beta1ReplicaSetSpec.attributeTypeMap;
    }
}
V1beta1ReplicaSetSpec.discriminator = undefined;
V1beta1ReplicaSetSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1beta1ReplicaSetSpec = V1beta1ReplicaSetSpec;
/**
* ReplicaSetStatus represents the current status of a ReplicaSet.
*/
class V1beta1ReplicaSetStatus {
    static getAttributeTypeMap() {
        return V1beta1ReplicaSetStatus.attributeTypeMap;
    }
}
V1beta1ReplicaSetStatus.discriminator = undefined;
V1beta1ReplicaSetStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta1ReplicaSetCondition>"
    },
    {
        "name": "fullyLabeledReplicas",
        "baseName": "fullyLabeledReplicas",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.V1beta1ReplicaSetStatus = V1beta1ReplicaSetStatus;
/**
* ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface
*/
class V1beta1ResourceAttributes {
    static getAttributeTypeMap() {
        return V1beta1ResourceAttributes.attributeTypeMap;
    }
}
V1beta1ResourceAttributes.discriminator = undefined;
V1beta1ResourceAttributes.attributeTypeMap = [
    {
        "name": "group",
        "baseName": "group",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "string"
    },
    {
        "name": "subresource",
        "baseName": "subresource",
        "type": "string"
    },
    {
        "name": "verb",
        "baseName": "verb",
        "type": "string"
    },
    {
        "name": "version",
        "baseName": "version",
        "type": "string"
    }
];
exports.V1beta1ResourceAttributes = V1beta1ResourceAttributes;
/**
* ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
*/
class V1beta1ResourceRule {
    static getAttributeTypeMap() {
        return V1beta1ResourceRule.attributeTypeMap;
    }
}
V1beta1ResourceRule.discriminator = undefined;
V1beta1ResourceRule.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "resourceNames",
        "baseName": "resourceNames",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    },
    {
        "name": "verbs",
        "baseName": "verbs",
        "type": "Array<string>"
    }
];
exports.V1beta1ResourceRule = V1beta1ResourceRule;
/**
* Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.
*/
class V1beta1Role {
    static getAttributeTypeMap() {
        return V1beta1Role.attributeTypeMap;
    }
}
V1beta1Role.discriminator = undefined;
V1beta1Role.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1beta1PolicyRule>"
    }
];
exports.V1beta1Role = V1beta1Role;
/**
* RoleBinding references a role, but does not contain it.  It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in.  RoleBindings in a given namespace only have effect in that namespace.
*/
class V1beta1RoleBinding {
    static getAttributeTypeMap() {
        return V1beta1RoleBinding.attributeTypeMap;
    }
}
V1beta1RoleBinding.discriminator = undefined;
V1beta1RoleBinding.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "roleRef",
        "baseName": "roleRef",
        "type": "V1beta1RoleRef"
    },
    {
        "name": "subjects",
        "baseName": "subjects",
        "type": "Array<V1beta1Subject>"
    }
];
exports.V1beta1RoleBinding = V1beta1RoleBinding;
/**
* RoleBindingList is a collection of RoleBindings
*/
class V1beta1RoleBindingList {
    static getAttributeTypeMap() {
        return V1beta1RoleBindingList.attributeTypeMap;
    }
}
V1beta1RoleBindingList.discriminator = undefined;
V1beta1RoleBindingList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1RoleBinding>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1RoleBindingList = V1beta1RoleBindingList;
/**
* RoleList is a collection of Roles
*/
class V1beta1RoleList {
    static getAttributeTypeMap() {
        return V1beta1RoleList.attributeTypeMap;
    }
}
V1beta1RoleList.discriminator = undefined;
V1beta1RoleList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1Role>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1RoleList = V1beta1RoleList;
/**
* RoleRef contains information that points to the role being used
*/
class V1beta1RoleRef {
    static getAttributeTypeMap() {
        return V1beta1RoleRef.attributeTypeMap;
    }
}
V1beta1RoleRef.discriminator = undefined;
V1beta1RoleRef.attributeTypeMap = [
    {
        "name": "apiGroup",
        "baseName": "apiGroup",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V1beta1RoleRef = V1beta1RoleRef;
/**
* Spec to control the desired behavior of daemon set rolling update.
*/
class V1beta1RollingUpdateDaemonSet {
    static getAttributeTypeMap() {
        return V1beta1RollingUpdateDaemonSet.attributeTypeMap;
    }
}
V1beta1RollingUpdateDaemonSet.discriminator = undefined;
V1beta1RollingUpdateDaemonSet.attributeTypeMap = [
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.V1beta1RollingUpdateDaemonSet = V1beta1RollingUpdateDaemonSet;
/**
* RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.
*/
class V1beta1RollingUpdateStatefulSetStrategy {
    static getAttributeTypeMap() {
        return V1beta1RollingUpdateStatefulSetStrategy.attributeTypeMap;
    }
}
V1beta1RollingUpdateStatefulSetStrategy.discriminator = undefined;
V1beta1RollingUpdateStatefulSetStrategy.attributeTypeMap = [
    {
        "name": "partition",
        "baseName": "partition",
        "type": "number"
    }
];
exports.V1beta1RollingUpdateStatefulSetStrategy = V1beta1RollingUpdateStatefulSetStrategy;
/**
* RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.
*/
class V1beta1RuleWithOperations {
    static getAttributeTypeMap() {
        return V1beta1RuleWithOperations.attributeTypeMap;
    }
}
V1beta1RuleWithOperations.discriminator = undefined;
V1beta1RuleWithOperations.attributeTypeMap = [
    {
        "name": "apiGroups",
        "baseName": "apiGroups",
        "type": "Array<string>"
    },
    {
        "name": "apiVersions",
        "baseName": "apiVersions",
        "type": "Array<string>"
    },
    {
        "name": "operations",
        "baseName": "operations",
        "type": "Array<string>"
    },
    {
        "name": "resources",
        "baseName": "resources",
        "type": "Array<string>"
    }
];
exports.V1beta1RuleWithOperations = V1beta1RuleWithOperations;
/**
* SelfSubjectAccessReview checks whether or the current user can perform an action.  Not filling in a spec.namespace means \"in all namespaces\".  Self is a special case, because users should always be able to check whether they can perform an action
*/
class V1beta1SelfSubjectAccessReview {
    static getAttributeTypeMap() {
        return V1beta1SelfSubjectAccessReview.attributeTypeMap;
    }
}
V1beta1SelfSubjectAccessReview.discriminator = undefined;
V1beta1SelfSubjectAccessReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1SelfSubjectAccessReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1SubjectAccessReviewStatus"
    }
];
exports.V1beta1SelfSubjectAccessReview = V1beta1SelfSubjectAccessReview;
/**
* SelfSubjectAccessReviewSpec is a description of the access request.  Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set
*/
class V1beta1SelfSubjectAccessReviewSpec {
    static getAttributeTypeMap() {
        return V1beta1SelfSubjectAccessReviewSpec.attributeTypeMap;
    }
}
V1beta1SelfSubjectAccessReviewSpec.discriminator = undefined;
V1beta1SelfSubjectAccessReviewSpec.attributeTypeMap = [
    {
        "name": "nonResourceAttributes",
        "baseName": "nonResourceAttributes",
        "type": "V1beta1NonResourceAttributes"
    },
    {
        "name": "resourceAttributes",
        "baseName": "resourceAttributes",
        "type": "V1beta1ResourceAttributes"
    }
];
exports.V1beta1SelfSubjectAccessReviewSpec = V1beta1SelfSubjectAccessReviewSpec;
/**
* SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server's authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.
*/
class V1beta1SelfSubjectRulesReview {
    static getAttributeTypeMap() {
        return V1beta1SelfSubjectRulesReview.attributeTypeMap;
    }
}
V1beta1SelfSubjectRulesReview.discriminator = undefined;
V1beta1SelfSubjectRulesReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1SelfSubjectRulesReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1SubjectRulesReviewStatus"
    }
];
exports.V1beta1SelfSubjectRulesReview = V1beta1SelfSubjectRulesReview;
class V1beta1SelfSubjectRulesReviewSpec {
    static getAttributeTypeMap() {
        return V1beta1SelfSubjectRulesReviewSpec.attributeTypeMap;
    }
}
V1beta1SelfSubjectRulesReviewSpec.discriminator = undefined;
V1beta1SelfSubjectRulesReviewSpec.attributeTypeMap = [
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1beta1SelfSubjectRulesReviewSpec = V1beta1SelfSubjectRulesReviewSpec;
/**
* DEPRECATED - This group version of StatefulSet is deprecated by apps/v1beta2/StatefulSet. See the release notes for more information. StatefulSet represents a set of pods with consistent identities. Identities are defined as:  - Network: A single stable DNS and hostname.  - Storage: As many VolumeClaims as requested. The StatefulSet guarantees that a given network identity will always map to the same storage identity.
*/
class V1beta1StatefulSet {
    static getAttributeTypeMap() {
        return V1beta1StatefulSet.attributeTypeMap;
    }
}
V1beta1StatefulSet.discriminator = undefined;
V1beta1StatefulSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1StatefulSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1StatefulSetStatus"
    }
];
exports.V1beta1StatefulSet = V1beta1StatefulSet;
/**
* StatefulSetCondition describes the state of a statefulset at a certain point.
*/
class V1beta1StatefulSetCondition {
    static getAttributeTypeMap() {
        return V1beta1StatefulSetCondition.attributeTypeMap;
    }
}
V1beta1StatefulSetCondition.discriminator = undefined;
V1beta1StatefulSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1StatefulSetCondition = V1beta1StatefulSetCondition;
/**
* StatefulSetList is a collection of StatefulSets.
*/
class V1beta1StatefulSetList {
    static getAttributeTypeMap() {
        return V1beta1StatefulSetList.attributeTypeMap;
    }
}
V1beta1StatefulSetList.discriminator = undefined;
V1beta1StatefulSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1StatefulSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1StatefulSetList = V1beta1StatefulSetList;
/**
* A StatefulSetSpec is the specification of a StatefulSet.
*/
class V1beta1StatefulSetSpec {
    static getAttributeTypeMap() {
        return V1beta1StatefulSetSpec.attributeTypeMap;
    }
}
V1beta1StatefulSetSpec.discriminator = undefined;
V1beta1StatefulSetSpec.attributeTypeMap = [
    {
        "name": "podManagementPolicy",
        "baseName": "podManagementPolicy",
        "type": "string"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "serviceName",
        "baseName": "serviceName",
        "type": "string"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "updateStrategy",
        "baseName": "updateStrategy",
        "type": "V1beta1StatefulSetUpdateStrategy"
    },
    {
        "name": "volumeClaimTemplates",
        "baseName": "volumeClaimTemplates",
        "type": "Array<V1PersistentVolumeClaim>"
    }
];
exports.V1beta1StatefulSetSpec = V1beta1StatefulSetSpec;
/**
* StatefulSetStatus represents the current state of a StatefulSet.
*/
class V1beta1StatefulSetStatus {
    static getAttributeTypeMap() {
        return V1beta1StatefulSetStatus.attributeTypeMap;
    }
}
V1beta1StatefulSetStatus.discriminator = undefined;
V1beta1StatefulSetStatus.attributeTypeMap = [
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta1StatefulSetCondition>"
    },
    {
        "name": "currentReplicas",
        "baseName": "currentReplicas",
        "type": "number"
    },
    {
        "name": "currentRevision",
        "baseName": "currentRevision",
        "type": "string"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "updateRevision",
        "baseName": "updateRevision",
        "type": "string"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.V1beta1StatefulSetStatus = V1beta1StatefulSetStatus;
/**
* StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.
*/
class V1beta1StatefulSetUpdateStrategy {
    static getAttributeTypeMap() {
        return V1beta1StatefulSetUpdateStrategy.attributeTypeMap;
    }
}
V1beta1StatefulSetUpdateStrategy.discriminator = undefined;
V1beta1StatefulSetUpdateStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1beta1RollingUpdateStatefulSetStrategy"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta1StatefulSetUpdateStrategy = V1beta1StatefulSetUpdateStrategy;
/**
* StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.  StorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.
*/
class V1beta1StorageClass {
    static getAttributeTypeMap() {
        return V1beta1StorageClass.attributeTypeMap;
    }
}
V1beta1StorageClass.discriminator = undefined;
V1beta1StorageClass.attributeTypeMap = [
    {
        "name": "allowVolumeExpansion",
        "baseName": "allowVolumeExpansion",
        "type": "boolean"
    },
    {
        "name": "allowedTopologies",
        "baseName": "allowedTopologies",
        "type": "Array<V1TopologySelectorTerm>"
    },
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "mountOptions",
        "baseName": "mountOptions",
        "type": "Array<string>"
    },
    {
        "name": "parameters",
        "baseName": "parameters",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "provisioner",
        "baseName": "provisioner",
        "type": "string"
    },
    {
        "name": "reclaimPolicy",
        "baseName": "reclaimPolicy",
        "type": "string"
    },
    {
        "name": "volumeBindingMode",
        "baseName": "volumeBindingMode",
        "type": "string"
    }
];
exports.V1beta1StorageClass = V1beta1StorageClass;
/**
* StorageClassList is a collection of storage classes.
*/
class V1beta1StorageClassList {
    static getAttributeTypeMap() {
        return V1beta1StorageClassList.attributeTypeMap;
    }
}
V1beta1StorageClassList.discriminator = undefined;
V1beta1StorageClassList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1StorageClass>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1StorageClassList = V1beta1StorageClassList;
/**
* Subject contains a reference to the object or user identities a role binding applies to.  This can either hold a direct API object reference, or a value for non-objects such as user and group names.
*/
class V1beta1Subject {
    static getAttributeTypeMap() {
        return V1beta1Subject.attributeTypeMap;
    }
}
V1beta1Subject.discriminator = undefined;
V1beta1Subject.attributeTypeMap = [
    {
        "name": "apiGroup",
        "baseName": "apiGroup",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespace",
        "baseName": "namespace",
        "type": "string"
    }
];
exports.V1beta1Subject = V1beta1Subject;
/**
* SubjectAccessReview checks whether or not a user or group can perform an action.
*/
class V1beta1SubjectAccessReview {
    static getAttributeTypeMap() {
        return V1beta1SubjectAccessReview.attributeTypeMap;
    }
}
V1beta1SubjectAccessReview.discriminator = undefined;
V1beta1SubjectAccessReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1SubjectAccessReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1SubjectAccessReviewStatus"
    }
];
exports.V1beta1SubjectAccessReview = V1beta1SubjectAccessReview;
/**
* SubjectAccessReviewSpec is a description of the access request.  Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set
*/
class V1beta1SubjectAccessReviewSpec {
    static getAttributeTypeMap() {
        return V1beta1SubjectAccessReviewSpec.attributeTypeMap;
    }
}
V1beta1SubjectAccessReviewSpec.discriminator = undefined;
V1beta1SubjectAccessReviewSpec.attributeTypeMap = [
    {
        "name": "extra",
        "baseName": "extra",
        "type": "{ [key: string]: Array<string>; }"
    },
    {
        "name": "group",
        "baseName": "group",
        "type": "Array<string>"
    },
    {
        "name": "nonResourceAttributes",
        "baseName": "nonResourceAttributes",
        "type": "V1beta1NonResourceAttributes"
    },
    {
        "name": "resourceAttributes",
        "baseName": "resourceAttributes",
        "type": "V1beta1ResourceAttributes"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "string"
    }
];
exports.V1beta1SubjectAccessReviewSpec = V1beta1SubjectAccessReviewSpec;
/**
* SubjectAccessReviewStatus
*/
class V1beta1SubjectAccessReviewStatus {
    static getAttributeTypeMap() {
        return V1beta1SubjectAccessReviewStatus.attributeTypeMap;
    }
}
V1beta1SubjectAccessReviewStatus.discriminator = undefined;
V1beta1SubjectAccessReviewStatus.attributeTypeMap = [
    {
        "name": "allowed",
        "baseName": "allowed",
        "type": "boolean"
    },
    {
        "name": "denied",
        "baseName": "denied",
        "type": "boolean"
    },
    {
        "name": "evaluationError",
        "baseName": "evaluationError",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    }
];
exports.V1beta1SubjectAccessReviewStatus = V1beta1SubjectAccessReviewStatus;
/**
* SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission, even if that list is incomplete.
*/
class V1beta1SubjectRulesReviewStatus {
    static getAttributeTypeMap() {
        return V1beta1SubjectRulesReviewStatus.attributeTypeMap;
    }
}
V1beta1SubjectRulesReviewStatus.discriminator = undefined;
V1beta1SubjectRulesReviewStatus.attributeTypeMap = [
    {
        "name": "evaluationError",
        "baseName": "evaluationError",
        "type": "string"
    },
    {
        "name": "incomplete",
        "baseName": "incomplete",
        "type": "boolean"
    },
    {
        "name": "nonResourceRules",
        "baseName": "nonResourceRules",
        "type": "Array<V1beta1NonResourceRule>"
    },
    {
        "name": "resourceRules",
        "baseName": "resourceRules",
        "type": "Array<V1beta1ResourceRule>"
    }
];
exports.V1beta1SubjectRulesReviewStatus = V1beta1SubjectRulesReviewStatus;
/**
* TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.
*/
class V1beta1TokenReview {
    static getAttributeTypeMap() {
        return V1beta1TokenReview.attributeTypeMap;
    }
}
V1beta1TokenReview.discriminator = undefined;
V1beta1TokenReview.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1TokenReviewSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1TokenReviewStatus"
    }
];
exports.V1beta1TokenReview = V1beta1TokenReview;
/**
* TokenReviewSpec is a description of the token authentication request.
*/
class V1beta1TokenReviewSpec {
    static getAttributeTypeMap() {
        return V1beta1TokenReviewSpec.attributeTypeMap;
    }
}
V1beta1TokenReviewSpec.discriminator = undefined;
V1beta1TokenReviewSpec.attributeTypeMap = [
    {
        "name": "audiences",
        "baseName": "audiences",
        "type": "Array<string>"
    },
    {
        "name": "token",
        "baseName": "token",
        "type": "string"
    }
];
exports.V1beta1TokenReviewSpec = V1beta1TokenReviewSpec;
/**
* TokenReviewStatus is the result of the token authentication request.
*/
class V1beta1TokenReviewStatus {
    static getAttributeTypeMap() {
        return V1beta1TokenReviewStatus.attributeTypeMap;
    }
}
V1beta1TokenReviewStatus.discriminator = undefined;
V1beta1TokenReviewStatus.attributeTypeMap = [
    {
        "name": "audiences",
        "baseName": "audiences",
        "type": "Array<string>"
    },
    {
        "name": "authenticated",
        "baseName": "authenticated",
        "type": "boolean"
    },
    {
        "name": "error",
        "baseName": "error",
        "type": "string"
    },
    {
        "name": "user",
        "baseName": "user",
        "type": "V1beta1UserInfo"
    }
];
exports.V1beta1TokenReviewStatus = V1beta1TokenReviewStatus;
/**
* UserInfo holds the information about the user needed to implement the user.Info interface.
*/
class V1beta1UserInfo {
    static getAttributeTypeMap() {
        return V1beta1UserInfo.attributeTypeMap;
    }
}
V1beta1UserInfo.discriminator = undefined;
V1beta1UserInfo.attributeTypeMap = [
    {
        "name": "extra",
        "baseName": "extra",
        "type": "{ [key: string]: Array<string>; }"
    },
    {
        "name": "groups",
        "baseName": "groups",
        "type": "Array<string>"
    },
    {
        "name": "uid",
        "baseName": "uid",
        "type": "string"
    },
    {
        "name": "username",
        "baseName": "username",
        "type": "string"
    }
];
exports.V1beta1UserInfo = V1beta1UserInfo;
/**
* ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it.
*/
class V1beta1ValidatingWebhookConfiguration {
    static getAttributeTypeMap() {
        return V1beta1ValidatingWebhookConfiguration.attributeTypeMap;
    }
}
V1beta1ValidatingWebhookConfiguration.discriminator = undefined;
V1beta1ValidatingWebhookConfiguration.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "webhooks",
        "baseName": "webhooks",
        "type": "Array<V1beta1Webhook>"
    }
];
exports.V1beta1ValidatingWebhookConfiguration = V1beta1ValidatingWebhookConfiguration;
/**
* ValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration.
*/
class V1beta1ValidatingWebhookConfigurationList {
    static getAttributeTypeMap() {
        return V1beta1ValidatingWebhookConfigurationList.attributeTypeMap;
    }
}
V1beta1ValidatingWebhookConfigurationList.discriminator = undefined;
V1beta1ValidatingWebhookConfigurationList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1ValidatingWebhookConfiguration>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1ValidatingWebhookConfigurationList = V1beta1ValidatingWebhookConfigurationList;
/**
* VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.  VolumeAttachment objects are non-namespaced.
*/
class V1beta1VolumeAttachment {
    static getAttributeTypeMap() {
        return V1beta1VolumeAttachment.attributeTypeMap;
    }
}
V1beta1VolumeAttachment.discriminator = undefined;
V1beta1VolumeAttachment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta1VolumeAttachmentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta1VolumeAttachmentStatus"
    }
];
exports.V1beta1VolumeAttachment = V1beta1VolumeAttachment;
/**
* VolumeAttachmentList is a collection of VolumeAttachment objects.
*/
class V1beta1VolumeAttachmentList {
    static getAttributeTypeMap() {
        return V1beta1VolumeAttachmentList.attributeTypeMap;
    }
}
V1beta1VolumeAttachmentList.discriminator = undefined;
V1beta1VolumeAttachmentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta1VolumeAttachment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta1VolumeAttachmentList = V1beta1VolumeAttachmentList;
/**
* VolumeAttachmentSource represents a volume that should be attached. Right now only PersistenVolumes can be attached via external attacher, in future we may allow also inline volumes in pods. Exactly one member can be set.
*/
class V1beta1VolumeAttachmentSource {
    static getAttributeTypeMap() {
        return V1beta1VolumeAttachmentSource.attributeTypeMap;
    }
}
V1beta1VolumeAttachmentSource.discriminator = undefined;
V1beta1VolumeAttachmentSource.attributeTypeMap = [
    {
        "name": "persistentVolumeName",
        "baseName": "persistentVolumeName",
        "type": "string"
    }
];
exports.V1beta1VolumeAttachmentSource = V1beta1VolumeAttachmentSource;
/**
* VolumeAttachmentSpec is the specification of a VolumeAttachment request.
*/
class V1beta1VolumeAttachmentSpec {
    static getAttributeTypeMap() {
        return V1beta1VolumeAttachmentSpec.attributeTypeMap;
    }
}
V1beta1VolumeAttachmentSpec.discriminator = undefined;
V1beta1VolumeAttachmentSpec.attributeTypeMap = [
    {
        "name": "attacher",
        "baseName": "attacher",
        "type": "string"
    },
    {
        "name": "nodeName",
        "baseName": "nodeName",
        "type": "string"
    },
    {
        "name": "source",
        "baseName": "source",
        "type": "V1beta1VolumeAttachmentSource"
    }
];
exports.V1beta1VolumeAttachmentSpec = V1beta1VolumeAttachmentSpec;
/**
* VolumeAttachmentStatus is the status of a VolumeAttachment request.
*/
class V1beta1VolumeAttachmentStatus {
    static getAttributeTypeMap() {
        return V1beta1VolumeAttachmentStatus.attributeTypeMap;
    }
}
V1beta1VolumeAttachmentStatus.discriminator = undefined;
V1beta1VolumeAttachmentStatus.attributeTypeMap = [
    {
        "name": "attachError",
        "baseName": "attachError",
        "type": "V1beta1VolumeError"
    },
    {
        "name": "attached",
        "baseName": "attached",
        "type": "boolean"
    },
    {
        "name": "attachmentMetadata",
        "baseName": "attachmentMetadata",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "detachError",
        "baseName": "detachError",
        "type": "V1beta1VolumeError"
    }
];
exports.V1beta1VolumeAttachmentStatus = V1beta1VolumeAttachmentStatus;
/**
* VolumeError captures an error encountered during a volume operation.
*/
class V1beta1VolumeError {
    static getAttributeTypeMap() {
        return V1beta1VolumeError.attributeTypeMap;
    }
}
V1beta1VolumeError.discriminator = undefined;
V1beta1VolumeError.attributeTypeMap = [
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "time",
        "baseName": "time",
        "type": "Date"
    }
];
exports.V1beta1VolumeError = V1beta1VolumeError;
/**
* Webhook describes an admission webhook and the resources and operations it applies to.
*/
class V1beta1Webhook {
    static getAttributeTypeMap() {
        return V1beta1Webhook.attributeTypeMap;
    }
}
V1beta1Webhook.discriminator = undefined;
V1beta1Webhook.attributeTypeMap = [
    {
        "name": "clientConfig",
        "baseName": "clientConfig",
        "type": "AdmissionregistrationV1beta1WebhookClientConfig"
    },
    {
        "name": "failurePolicy",
        "baseName": "failurePolicy",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "namespaceSelector",
        "baseName": "namespaceSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "rules",
        "baseName": "rules",
        "type": "Array<V1beta1RuleWithOperations>"
    },
    {
        "name": "sideEffects",
        "baseName": "sideEffects",
        "type": "string"
    }
];
exports.V1beta1Webhook = V1beta1Webhook;
/**
* DEPRECATED - This group version of ControllerRevision is deprecated by apps/v1/ControllerRevision. See the release notes for more information. ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.
*/
class V1beta2ControllerRevision {
    static getAttributeTypeMap() {
        return V1beta2ControllerRevision.attributeTypeMap;
    }
}
V1beta2ControllerRevision.discriminator = undefined;
V1beta2ControllerRevision.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "data",
        "baseName": "data",
        "type": "RuntimeRawExtension"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "revision",
        "baseName": "revision",
        "type": "number"
    }
];
exports.V1beta2ControllerRevision = V1beta2ControllerRevision;
/**
* ControllerRevisionList is a resource containing a list of ControllerRevision objects.
*/
class V1beta2ControllerRevisionList {
    static getAttributeTypeMap() {
        return V1beta2ControllerRevisionList.attributeTypeMap;
    }
}
V1beta2ControllerRevisionList.discriminator = undefined;
V1beta2ControllerRevisionList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta2ControllerRevision>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta2ControllerRevisionList = V1beta2ControllerRevisionList;
/**
* DEPRECATED - This group version of DaemonSet is deprecated by apps/v1/DaemonSet. See the release notes for more information. DaemonSet represents the configuration of a daemon set.
*/
class V1beta2DaemonSet {
    static getAttributeTypeMap() {
        return V1beta2DaemonSet.attributeTypeMap;
    }
}
V1beta2DaemonSet.discriminator = undefined;
V1beta2DaemonSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta2DaemonSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta2DaemonSetStatus"
    }
];
exports.V1beta2DaemonSet = V1beta2DaemonSet;
/**
* DaemonSetCondition describes the state of a DaemonSet at a certain point.
*/
class V1beta2DaemonSetCondition {
    static getAttributeTypeMap() {
        return V1beta2DaemonSetCondition.attributeTypeMap;
    }
}
V1beta2DaemonSetCondition.discriminator = undefined;
V1beta2DaemonSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2DaemonSetCondition = V1beta2DaemonSetCondition;
/**
* DaemonSetList is a collection of daemon sets.
*/
class V1beta2DaemonSetList {
    static getAttributeTypeMap() {
        return V1beta2DaemonSetList.attributeTypeMap;
    }
}
V1beta2DaemonSetList.discriminator = undefined;
V1beta2DaemonSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta2DaemonSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta2DaemonSetList = V1beta2DaemonSetList;
/**
* DaemonSetSpec is the specification of a daemon set.
*/
class V1beta2DaemonSetSpec {
    static getAttributeTypeMap() {
        return V1beta2DaemonSetSpec.attributeTypeMap;
    }
}
V1beta2DaemonSetSpec.discriminator = undefined;
V1beta2DaemonSetSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "updateStrategy",
        "baseName": "updateStrategy",
        "type": "V1beta2DaemonSetUpdateStrategy"
    }
];
exports.V1beta2DaemonSetSpec = V1beta2DaemonSetSpec;
/**
* DaemonSetStatus represents the current status of a daemon set.
*/
class V1beta2DaemonSetStatus {
    static getAttributeTypeMap() {
        return V1beta2DaemonSetStatus.attributeTypeMap;
    }
}
V1beta2DaemonSetStatus.discriminator = undefined;
V1beta2DaemonSetStatus.attributeTypeMap = [
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta2DaemonSetCondition>"
    },
    {
        "name": "currentNumberScheduled",
        "baseName": "currentNumberScheduled",
        "type": "number"
    },
    {
        "name": "desiredNumberScheduled",
        "baseName": "desiredNumberScheduled",
        "type": "number"
    },
    {
        "name": "numberAvailable",
        "baseName": "numberAvailable",
        "type": "number"
    },
    {
        "name": "numberMisscheduled",
        "baseName": "numberMisscheduled",
        "type": "number"
    },
    {
        "name": "numberReady",
        "baseName": "numberReady",
        "type": "number"
    },
    {
        "name": "numberUnavailable",
        "baseName": "numberUnavailable",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "updatedNumberScheduled",
        "baseName": "updatedNumberScheduled",
        "type": "number"
    }
];
exports.V1beta2DaemonSetStatus = V1beta2DaemonSetStatus;
/**
* DaemonSetUpdateStrategy is a struct used to control the update strategy for a DaemonSet.
*/
class V1beta2DaemonSetUpdateStrategy {
    static getAttributeTypeMap() {
        return V1beta2DaemonSetUpdateStrategy.attributeTypeMap;
    }
}
V1beta2DaemonSetUpdateStrategy.discriminator = undefined;
V1beta2DaemonSetUpdateStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1beta2RollingUpdateDaemonSet"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2DaemonSetUpdateStrategy = V1beta2DaemonSetUpdateStrategy;
/**
* DEPRECATED - This group version of Deployment is deprecated by apps/v1/Deployment. See the release notes for more information. Deployment enables declarative updates for Pods and ReplicaSets.
*/
class V1beta2Deployment {
    static getAttributeTypeMap() {
        return V1beta2Deployment.attributeTypeMap;
    }
}
V1beta2Deployment.discriminator = undefined;
V1beta2Deployment.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta2DeploymentSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta2DeploymentStatus"
    }
];
exports.V1beta2Deployment = V1beta2Deployment;
/**
* DeploymentCondition describes the state of a deployment at a certain point.
*/
class V1beta2DeploymentCondition {
    static getAttributeTypeMap() {
        return V1beta2DeploymentCondition.attributeTypeMap;
    }
}
V1beta2DeploymentCondition.discriminator = undefined;
V1beta2DeploymentCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "lastUpdateTime",
        "baseName": "lastUpdateTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2DeploymentCondition = V1beta2DeploymentCondition;
/**
* DeploymentList is a list of Deployments.
*/
class V1beta2DeploymentList {
    static getAttributeTypeMap() {
        return V1beta2DeploymentList.attributeTypeMap;
    }
}
V1beta2DeploymentList.discriminator = undefined;
V1beta2DeploymentList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta2Deployment>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta2DeploymentList = V1beta2DeploymentList;
/**
* DeploymentSpec is the specification of the desired behavior of the Deployment.
*/
class V1beta2DeploymentSpec {
    static getAttributeTypeMap() {
        return V1beta2DeploymentSpec.attributeTypeMap;
    }
}
V1beta2DeploymentSpec.discriminator = undefined;
V1beta2DeploymentSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "paused",
        "baseName": "paused",
        "type": "boolean"
    },
    {
        "name": "progressDeadlineSeconds",
        "baseName": "progressDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "strategy",
        "baseName": "strategy",
        "type": "V1beta2DeploymentStrategy"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1beta2DeploymentSpec = V1beta2DeploymentSpec;
/**
* DeploymentStatus is the most recently observed status of the Deployment.
*/
class V1beta2DeploymentStatus {
    static getAttributeTypeMap() {
        return V1beta2DeploymentStatus.attributeTypeMap;
    }
}
V1beta2DeploymentStatus.discriminator = undefined;
V1beta2DeploymentStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta2DeploymentCondition>"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "unavailableReplicas",
        "baseName": "unavailableReplicas",
        "type": "number"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.V1beta2DeploymentStatus = V1beta2DeploymentStatus;
/**
* DeploymentStrategy describes how to replace existing pods with new ones.
*/
class V1beta2DeploymentStrategy {
    static getAttributeTypeMap() {
        return V1beta2DeploymentStrategy.attributeTypeMap;
    }
}
V1beta2DeploymentStrategy.discriminator = undefined;
V1beta2DeploymentStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1beta2RollingUpdateDeployment"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2DeploymentStrategy = V1beta2DeploymentStrategy;
/**
* DEPRECATED - This group version of ReplicaSet is deprecated by apps/v1/ReplicaSet. See the release notes for more information. ReplicaSet ensures that a specified number of pod replicas are running at any given time.
*/
class V1beta2ReplicaSet {
    static getAttributeTypeMap() {
        return V1beta2ReplicaSet.attributeTypeMap;
    }
}
V1beta2ReplicaSet.discriminator = undefined;
V1beta2ReplicaSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta2ReplicaSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta2ReplicaSetStatus"
    }
];
exports.V1beta2ReplicaSet = V1beta2ReplicaSet;
/**
* ReplicaSetCondition describes the state of a replica set at a certain point.
*/
class V1beta2ReplicaSetCondition {
    static getAttributeTypeMap() {
        return V1beta2ReplicaSetCondition.attributeTypeMap;
    }
}
V1beta2ReplicaSetCondition.discriminator = undefined;
V1beta2ReplicaSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2ReplicaSetCondition = V1beta2ReplicaSetCondition;
/**
* ReplicaSetList is a collection of ReplicaSets.
*/
class V1beta2ReplicaSetList {
    static getAttributeTypeMap() {
        return V1beta2ReplicaSetList.attributeTypeMap;
    }
}
V1beta2ReplicaSetList.discriminator = undefined;
V1beta2ReplicaSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta2ReplicaSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta2ReplicaSetList = V1beta2ReplicaSetList;
/**
* ReplicaSetSpec is the specification of a ReplicaSet.
*/
class V1beta2ReplicaSetSpec {
    static getAttributeTypeMap() {
        return V1beta2ReplicaSetSpec.attributeTypeMap;
    }
}
V1beta2ReplicaSetSpec.discriminator = undefined;
V1beta2ReplicaSetSpec.attributeTypeMap = [
    {
        "name": "minReadySeconds",
        "baseName": "minReadySeconds",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    }
];
exports.V1beta2ReplicaSetSpec = V1beta2ReplicaSetSpec;
/**
* ReplicaSetStatus represents the current status of a ReplicaSet.
*/
class V1beta2ReplicaSetStatus {
    static getAttributeTypeMap() {
        return V1beta2ReplicaSetStatus.attributeTypeMap;
    }
}
V1beta2ReplicaSetStatus.discriminator = undefined;
V1beta2ReplicaSetStatus.attributeTypeMap = [
    {
        "name": "availableReplicas",
        "baseName": "availableReplicas",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta2ReplicaSetCondition>"
    },
    {
        "name": "fullyLabeledReplicas",
        "baseName": "fullyLabeledReplicas",
        "type": "number"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.V1beta2ReplicaSetStatus = V1beta2ReplicaSetStatus;
/**
* Spec to control the desired behavior of daemon set rolling update.
*/
class V1beta2RollingUpdateDaemonSet {
    static getAttributeTypeMap() {
        return V1beta2RollingUpdateDaemonSet.attributeTypeMap;
    }
}
V1beta2RollingUpdateDaemonSet.discriminator = undefined;
V1beta2RollingUpdateDaemonSet.attributeTypeMap = [
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.V1beta2RollingUpdateDaemonSet = V1beta2RollingUpdateDaemonSet;
/**
* Spec to control the desired behavior of rolling update.
*/
class V1beta2RollingUpdateDeployment {
    static getAttributeTypeMap() {
        return V1beta2RollingUpdateDeployment.attributeTypeMap;
    }
}
V1beta2RollingUpdateDeployment.discriminator = undefined;
V1beta2RollingUpdateDeployment.attributeTypeMap = [
    {
        "name": "maxSurge",
        "baseName": "maxSurge",
        "type": "any"
    },
    {
        "name": "maxUnavailable",
        "baseName": "maxUnavailable",
        "type": "any"
    }
];
exports.V1beta2RollingUpdateDeployment = V1beta2RollingUpdateDeployment;
/**
* RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.
*/
class V1beta2RollingUpdateStatefulSetStrategy {
    static getAttributeTypeMap() {
        return V1beta2RollingUpdateStatefulSetStrategy.attributeTypeMap;
    }
}
V1beta2RollingUpdateStatefulSetStrategy.discriminator = undefined;
V1beta2RollingUpdateStatefulSetStrategy.attributeTypeMap = [
    {
        "name": "partition",
        "baseName": "partition",
        "type": "number"
    }
];
exports.V1beta2RollingUpdateStatefulSetStrategy = V1beta2RollingUpdateStatefulSetStrategy;
/**
* Scale represents a scaling request for a resource.
*/
class V1beta2Scale {
    static getAttributeTypeMap() {
        return V1beta2Scale.attributeTypeMap;
    }
}
V1beta2Scale.discriminator = undefined;
V1beta2Scale.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta2ScaleSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta2ScaleStatus"
    }
];
exports.V1beta2Scale = V1beta2Scale;
/**
* ScaleSpec describes the attributes of a scale subresource
*/
class V1beta2ScaleSpec {
    static getAttributeTypeMap() {
        return V1beta2ScaleSpec.attributeTypeMap;
    }
}
V1beta2ScaleSpec.discriminator = undefined;
V1beta2ScaleSpec.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    }
];
exports.V1beta2ScaleSpec = V1beta2ScaleSpec;
/**
* ScaleStatus represents the current status of a scale subresource.
*/
class V1beta2ScaleStatus {
    static getAttributeTypeMap() {
        return V1beta2ScaleStatus.attributeTypeMap;
    }
}
V1beta2ScaleStatus.discriminator = undefined;
V1beta2ScaleStatus.attributeTypeMap = [
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "{ [key: string]: string; }"
    },
    {
        "name": "targetSelector",
        "baseName": "targetSelector",
        "type": "string"
    }
];
exports.V1beta2ScaleStatus = V1beta2ScaleStatus;
/**
* DEPRECATED - This group version of StatefulSet is deprecated by apps/v1/StatefulSet. See the release notes for more information. StatefulSet represents a set of pods with consistent identities. Identities are defined as:  - Network: A single stable DNS and hostname.  - Storage: As many VolumeClaims as requested. The StatefulSet guarantees that a given network identity will always map to the same storage identity.
*/
class V1beta2StatefulSet {
    static getAttributeTypeMap() {
        return V1beta2StatefulSet.attributeTypeMap;
    }
}
V1beta2StatefulSet.discriminator = undefined;
V1beta2StatefulSet.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1beta2StatefulSetSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V1beta2StatefulSetStatus"
    }
];
exports.V1beta2StatefulSet = V1beta2StatefulSet;
/**
* StatefulSetCondition describes the state of a statefulset at a certain point.
*/
class V1beta2StatefulSetCondition {
    static getAttributeTypeMap() {
        return V1beta2StatefulSetCondition.attributeTypeMap;
    }
}
V1beta2StatefulSetCondition.discriminator = undefined;
V1beta2StatefulSetCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2StatefulSetCondition = V1beta2StatefulSetCondition;
/**
* StatefulSetList is a collection of StatefulSets.
*/
class V1beta2StatefulSetList {
    static getAttributeTypeMap() {
        return V1beta2StatefulSetList.attributeTypeMap;
    }
}
V1beta2StatefulSetList.discriminator = undefined;
V1beta2StatefulSetList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V1beta2StatefulSet>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V1beta2StatefulSetList = V1beta2StatefulSetList;
/**
* A StatefulSetSpec is the specification of a StatefulSet.
*/
class V1beta2StatefulSetSpec {
    static getAttributeTypeMap() {
        return V1beta2StatefulSetSpec.attributeTypeMap;
    }
}
V1beta2StatefulSetSpec.discriminator = undefined;
V1beta2StatefulSetSpec.attributeTypeMap = [
    {
        "name": "podManagementPolicy",
        "baseName": "podManagementPolicy",
        "type": "string"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "revisionHistoryLimit",
        "baseName": "revisionHistoryLimit",
        "type": "number"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "serviceName",
        "baseName": "serviceName",
        "type": "string"
    },
    {
        "name": "template",
        "baseName": "template",
        "type": "V1PodTemplateSpec"
    },
    {
        "name": "updateStrategy",
        "baseName": "updateStrategy",
        "type": "V1beta2StatefulSetUpdateStrategy"
    },
    {
        "name": "volumeClaimTemplates",
        "baseName": "volumeClaimTemplates",
        "type": "Array<V1PersistentVolumeClaim>"
    }
];
exports.V1beta2StatefulSetSpec = V1beta2StatefulSetSpec;
/**
* StatefulSetStatus represents the current state of a StatefulSet.
*/
class V1beta2StatefulSetStatus {
    static getAttributeTypeMap() {
        return V1beta2StatefulSetStatus.attributeTypeMap;
    }
}
V1beta2StatefulSetStatus.discriminator = undefined;
V1beta2StatefulSetStatus.attributeTypeMap = [
    {
        "name": "collisionCount",
        "baseName": "collisionCount",
        "type": "number"
    },
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V1beta2StatefulSetCondition>"
    },
    {
        "name": "currentReplicas",
        "baseName": "currentReplicas",
        "type": "number"
    },
    {
        "name": "currentRevision",
        "baseName": "currentRevision",
        "type": "string"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    },
    {
        "name": "readyReplicas",
        "baseName": "readyReplicas",
        "type": "number"
    },
    {
        "name": "replicas",
        "baseName": "replicas",
        "type": "number"
    },
    {
        "name": "updateRevision",
        "baseName": "updateRevision",
        "type": "string"
    },
    {
        "name": "updatedReplicas",
        "baseName": "updatedReplicas",
        "type": "number"
    }
];
exports.V1beta2StatefulSetStatus = V1beta2StatefulSetStatus;
/**
* StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.
*/
class V1beta2StatefulSetUpdateStrategy {
    static getAttributeTypeMap() {
        return V1beta2StatefulSetUpdateStrategy.attributeTypeMap;
    }
}
V1beta2StatefulSetUpdateStrategy.discriminator = undefined;
V1beta2StatefulSetUpdateStrategy.attributeTypeMap = [
    {
        "name": "rollingUpdate",
        "baseName": "rollingUpdate",
        "type": "V1beta2RollingUpdateStatefulSetStrategy"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V1beta2StatefulSetUpdateStrategy = V1beta2StatefulSetUpdateStrategy;
/**
* CronJob represents the configuration of a single cron job.
*/
class V2alpha1CronJob {
    static getAttributeTypeMap() {
        return V2alpha1CronJob.attributeTypeMap;
    }
}
V2alpha1CronJob.discriminator = undefined;
V2alpha1CronJob.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V2alpha1CronJobSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V2alpha1CronJobStatus"
    }
];
exports.V2alpha1CronJob = V2alpha1CronJob;
/**
* CronJobList is a collection of cron jobs.
*/
class V2alpha1CronJobList {
    static getAttributeTypeMap() {
        return V2alpha1CronJobList.attributeTypeMap;
    }
}
V2alpha1CronJobList.discriminator = undefined;
V2alpha1CronJobList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V2alpha1CronJob>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V2alpha1CronJobList = V2alpha1CronJobList;
/**
* CronJobSpec describes how the job execution will look like and when it will actually run.
*/
class V2alpha1CronJobSpec {
    static getAttributeTypeMap() {
        return V2alpha1CronJobSpec.attributeTypeMap;
    }
}
V2alpha1CronJobSpec.discriminator = undefined;
V2alpha1CronJobSpec.attributeTypeMap = [
    {
        "name": "concurrencyPolicy",
        "baseName": "concurrencyPolicy",
        "type": "string"
    },
    {
        "name": "failedJobsHistoryLimit",
        "baseName": "failedJobsHistoryLimit",
        "type": "number"
    },
    {
        "name": "jobTemplate",
        "baseName": "jobTemplate",
        "type": "V2alpha1JobTemplateSpec"
    },
    {
        "name": "schedule",
        "baseName": "schedule",
        "type": "string"
    },
    {
        "name": "startingDeadlineSeconds",
        "baseName": "startingDeadlineSeconds",
        "type": "number"
    },
    {
        "name": "successfulJobsHistoryLimit",
        "baseName": "successfulJobsHistoryLimit",
        "type": "number"
    },
    {
        "name": "suspend",
        "baseName": "suspend",
        "type": "boolean"
    }
];
exports.V2alpha1CronJobSpec = V2alpha1CronJobSpec;
/**
* CronJobStatus represents the current state of a cron job.
*/
class V2alpha1CronJobStatus {
    static getAttributeTypeMap() {
        return V2alpha1CronJobStatus.attributeTypeMap;
    }
}
V2alpha1CronJobStatus.discriminator = undefined;
V2alpha1CronJobStatus.attributeTypeMap = [
    {
        "name": "active",
        "baseName": "active",
        "type": "Array<V1ObjectReference>"
    },
    {
        "name": "lastScheduleTime",
        "baseName": "lastScheduleTime",
        "type": "Date"
    }
];
exports.V2alpha1CronJobStatus = V2alpha1CronJobStatus;
/**
* JobTemplateSpec describes the data a Job should have when created from a template
*/
class V2alpha1JobTemplateSpec {
    static getAttributeTypeMap() {
        return V2alpha1JobTemplateSpec.attributeTypeMap;
    }
}
V2alpha1JobTemplateSpec.discriminator = undefined;
V2alpha1JobTemplateSpec.attributeTypeMap = [
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V1JobSpec"
    }
];
exports.V2alpha1JobTemplateSpec = V2alpha1JobTemplateSpec;
/**
* CrossVersionObjectReference contains enough information to let you identify the referred resource.
*/
class V2beta1CrossVersionObjectReference {
    static getAttributeTypeMap() {
        return V2beta1CrossVersionObjectReference.attributeTypeMap;
    }
}
V2beta1CrossVersionObjectReference.discriminator = undefined;
V2beta1CrossVersionObjectReference.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V2beta1CrossVersionObjectReference = V2beta1CrossVersionObjectReference;
/**
* ExternalMetricSource indicates how to scale on a metric not associated with any Kubernetes object (for example length of queue in cloud messaging service, or QPS from loadbalancer running outside of cluster). Exactly one \"target\" type should be set.
*/
class V2beta1ExternalMetricSource {
    static getAttributeTypeMap() {
        return V2beta1ExternalMetricSource.attributeTypeMap;
    }
}
V2beta1ExternalMetricSource.discriminator = undefined;
V2beta1ExternalMetricSource.attributeTypeMap = [
    {
        "name": "metricName",
        "baseName": "metricName",
        "type": "string"
    },
    {
        "name": "metricSelector",
        "baseName": "metricSelector",
        "type": "V1LabelSelector"
    },
    {
        "name": "targetAverageValue",
        "baseName": "targetAverageValue",
        "type": "string"
    },
    {
        "name": "targetValue",
        "baseName": "targetValue",
        "type": "string"
    }
];
exports.V2beta1ExternalMetricSource = V2beta1ExternalMetricSource;
/**
* ExternalMetricStatus indicates the current value of a global metric not associated with any Kubernetes object.
*/
class V2beta1ExternalMetricStatus {
    static getAttributeTypeMap() {
        return V2beta1ExternalMetricStatus.attributeTypeMap;
    }
}
V2beta1ExternalMetricStatus.discriminator = undefined;
V2beta1ExternalMetricStatus.attributeTypeMap = [
    {
        "name": "currentAverageValue",
        "baseName": "currentAverageValue",
        "type": "string"
    },
    {
        "name": "currentValue",
        "baseName": "currentValue",
        "type": "string"
    },
    {
        "name": "metricName",
        "baseName": "metricName",
        "type": "string"
    },
    {
        "name": "metricSelector",
        "baseName": "metricSelector",
        "type": "V1LabelSelector"
    }
];
exports.V2beta1ExternalMetricStatus = V2beta1ExternalMetricStatus;
/**
* HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.
*/
class V2beta1HorizontalPodAutoscaler {
    static getAttributeTypeMap() {
        return V2beta1HorizontalPodAutoscaler.attributeTypeMap;
    }
}
V2beta1HorizontalPodAutoscaler.discriminator = undefined;
V2beta1HorizontalPodAutoscaler.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V2beta1HorizontalPodAutoscalerSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V2beta1HorizontalPodAutoscalerStatus"
    }
];
exports.V2beta1HorizontalPodAutoscaler = V2beta1HorizontalPodAutoscaler;
/**
* HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.
*/
class V2beta1HorizontalPodAutoscalerCondition {
    static getAttributeTypeMap() {
        return V2beta1HorizontalPodAutoscalerCondition.attributeTypeMap;
    }
}
V2beta1HorizontalPodAutoscalerCondition.discriminator = undefined;
V2beta1HorizontalPodAutoscalerCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V2beta1HorizontalPodAutoscalerCondition = V2beta1HorizontalPodAutoscalerCondition;
/**
* HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects.
*/
class V2beta1HorizontalPodAutoscalerList {
    static getAttributeTypeMap() {
        return V2beta1HorizontalPodAutoscalerList.attributeTypeMap;
    }
}
V2beta1HorizontalPodAutoscalerList.discriminator = undefined;
V2beta1HorizontalPodAutoscalerList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V2beta1HorizontalPodAutoscaler>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V2beta1HorizontalPodAutoscalerList = V2beta1HorizontalPodAutoscalerList;
/**
* HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.
*/
class V2beta1HorizontalPodAutoscalerSpec {
    static getAttributeTypeMap() {
        return V2beta1HorizontalPodAutoscalerSpec.attributeTypeMap;
    }
}
V2beta1HorizontalPodAutoscalerSpec.discriminator = undefined;
V2beta1HorizontalPodAutoscalerSpec.attributeTypeMap = [
    {
        "name": "maxReplicas",
        "baseName": "maxReplicas",
        "type": "number"
    },
    {
        "name": "metrics",
        "baseName": "metrics",
        "type": "Array<V2beta1MetricSpec>"
    },
    {
        "name": "minReplicas",
        "baseName": "minReplicas",
        "type": "number"
    },
    {
        "name": "scaleTargetRef",
        "baseName": "scaleTargetRef",
        "type": "V2beta1CrossVersionObjectReference"
    }
];
exports.V2beta1HorizontalPodAutoscalerSpec = V2beta1HorizontalPodAutoscalerSpec;
/**
* HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler.
*/
class V2beta1HorizontalPodAutoscalerStatus {
    static getAttributeTypeMap() {
        return V2beta1HorizontalPodAutoscalerStatus.attributeTypeMap;
    }
}
V2beta1HorizontalPodAutoscalerStatus.discriminator = undefined;
V2beta1HorizontalPodAutoscalerStatus.attributeTypeMap = [
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V2beta1HorizontalPodAutoscalerCondition>"
    },
    {
        "name": "currentMetrics",
        "baseName": "currentMetrics",
        "type": "Array<V2beta1MetricStatus>"
    },
    {
        "name": "currentReplicas",
        "baseName": "currentReplicas",
        "type": "number"
    },
    {
        "name": "desiredReplicas",
        "baseName": "desiredReplicas",
        "type": "number"
    },
    {
        "name": "lastScaleTime",
        "baseName": "lastScaleTime",
        "type": "Date"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    }
];
exports.V2beta1HorizontalPodAutoscalerStatus = V2beta1HorizontalPodAutoscalerStatus;
/**
* MetricSpec specifies how to scale based on a single metric (only `type` and one other matching field should be set at once).
*/
class V2beta1MetricSpec {
    static getAttributeTypeMap() {
        return V2beta1MetricSpec.attributeTypeMap;
    }
}
V2beta1MetricSpec.discriminator = undefined;
V2beta1MetricSpec.attributeTypeMap = [
    {
        "name": "external",
        "baseName": "external",
        "type": "V2beta1ExternalMetricSource"
    },
    {
        "name": "object",
        "baseName": "object",
        "type": "V2beta1ObjectMetricSource"
    },
    {
        "name": "pods",
        "baseName": "pods",
        "type": "V2beta1PodsMetricSource"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "V2beta1ResourceMetricSource"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V2beta1MetricSpec = V2beta1MetricSpec;
/**
* MetricStatus describes the last-read state of a single metric.
*/
class V2beta1MetricStatus {
    static getAttributeTypeMap() {
        return V2beta1MetricStatus.attributeTypeMap;
    }
}
V2beta1MetricStatus.discriminator = undefined;
V2beta1MetricStatus.attributeTypeMap = [
    {
        "name": "external",
        "baseName": "external",
        "type": "V2beta1ExternalMetricStatus"
    },
    {
        "name": "object",
        "baseName": "object",
        "type": "V2beta1ObjectMetricStatus"
    },
    {
        "name": "pods",
        "baseName": "pods",
        "type": "V2beta1PodsMetricStatus"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "V2beta1ResourceMetricStatus"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V2beta1MetricStatus = V2beta1MetricStatus;
/**
* ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).
*/
class V2beta1ObjectMetricSource {
    static getAttributeTypeMap() {
        return V2beta1ObjectMetricSource.attributeTypeMap;
    }
}
V2beta1ObjectMetricSource.discriminator = undefined;
V2beta1ObjectMetricSource.attributeTypeMap = [
    {
        "name": "averageValue",
        "baseName": "averageValue",
        "type": "string"
    },
    {
        "name": "metricName",
        "baseName": "metricName",
        "type": "string"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V2beta1CrossVersionObjectReference"
    },
    {
        "name": "targetValue",
        "baseName": "targetValue",
        "type": "string"
    }
];
exports.V2beta1ObjectMetricSource = V2beta1ObjectMetricSource;
/**
* ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).
*/
class V2beta1ObjectMetricStatus {
    static getAttributeTypeMap() {
        return V2beta1ObjectMetricStatus.attributeTypeMap;
    }
}
V2beta1ObjectMetricStatus.discriminator = undefined;
V2beta1ObjectMetricStatus.attributeTypeMap = [
    {
        "name": "averageValue",
        "baseName": "averageValue",
        "type": "string"
    },
    {
        "name": "currentValue",
        "baseName": "currentValue",
        "type": "string"
    },
    {
        "name": "metricName",
        "baseName": "metricName",
        "type": "string"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V2beta1CrossVersionObjectReference"
    }
];
exports.V2beta1ObjectMetricStatus = V2beta1ObjectMetricStatus;
/**
* PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.
*/
class V2beta1PodsMetricSource {
    static getAttributeTypeMap() {
        return V2beta1PodsMetricSource.attributeTypeMap;
    }
}
V2beta1PodsMetricSource.discriminator = undefined;
V2beta1PodsMetricSource.attributeTypeMap = [
    {
        "name": "metricName",
        "baseName": "metricName",
        "type": "string"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    },
    {
        "name": "targetAverageValue",
        "baseName": "targetAverageValue",
        "type": "string"
    }
];
exports.V2beta1PodsMetricSource = V2beta1PodsMetricSource;
/**
* PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).
*/
class V2beta1PodsMetricStatus {
    static getAttributeTypeMap() {
        return V2beta1PodsMetricStatus.attributeTypeMap;
    }
}
V2beta1PodsMetricStatus.discriminator = undefined;
V2beta1PodsMetricStatus.attributeTypeMap = [
    {
        "name": "currentAverageValue",
        "baseName": "currentAverageValue",
        "type": "string"
    },
    {
        "name": "metricName",
        "baseName": "metricName",
        "type": "string"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    }
];
exports.V2beta1PodsMetricStatus = V2beta1PodsMetricStatus;
/**
* ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  The values will be averaged together before being compared to the target.  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.  Only one \"target\" type should be set.
*/
class V2beta1ResourceMetricSource {
    static getAttributeTypeMap() {
        return V2beta1ResourceMetricSource.attributeTypeMap;
    }
}
V2beta1ResourceMetricSource.discriminator = undefined;
V2beta1ResourceMetricSource.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "targetAverageUtilization",
        "baseName": "targetAverageUtilization",
        "type": "number"
    },
    {
        "name": "targetAverageValue",
        "baseName": "targetAverageValue",
        "type": "string"
    }
];
exports.V2beta1ResourceMetricSource = V2beta1ResourceMetricSource;
/**
* ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.
*/
class V2beta1ResourceMetricStatus {
    static getAttributeTypeMap() {
        return V2beta1ResourceMetricStatus.attributeTypeMap;
    }
}
V2beta1ResourceMetricStatus.discriminator = undefined;
V2beta1ResourceMetricStatus.attributeTypeMap = [
    {
        "name": "currentAverageUtilization",
        "baseName": "currentAverageUtilization",
        "type": "number"
    },
    {
        "name": "currentAverageValue",
        "baseName": "currentAverageValue",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V2beta1ResourceMetricStatus = V2beta1ResourceMetricStatus;
/**
* CrossVersionObjectReference contains enough information to let you identify the referred resource.
*/
class V2beta2CrossVersionObjectReference {
    static getAttributeTypeMap() {
        return V2beta2CrossVersionObjectReference.attributeTypeMap;
    }
}
V2beta2CrossVersionObjectReference.discriminator = undefined;
V2beta2CrossVersionObjectReference.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V2beta2CrossVersionObjectReference = V2beta2CrossVersionObjectReference;
/**
* ExternalMetricSource indicates how to scale on a metric not associated with any Kubernetes object (for example length of queue in cloud messaging service, or QPS from loadbalancer running outside of cluster).
*/
class V2beta2ExternalMetricSource {
    static getAttributeTypeMap() {
        return V2beta2ExternalMetricSource.attributeTypeMap;
    }
}
V2beta2ExternalMetricSource.discriminator = undefined;
V2beta2ExternalMetricSource.attributeTypeMap = [
    {
        "name": "metric",
        "baseName": "metric",
        "type": "V2beta2MetricIdentifier"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V2beta2MetricTarget"
    }
];
exports.V2beta2ExternalMetricSource = V2beta2ExternalMetricSource;
/**
* ExternalMetricStatus indicates the current value of a global metric not associated with any Kubernetes object.
*/
class V2beta2ExternalMetricStatus {
    static getAttributeTypeMap() {
        return V2beta2ExternalMetricStatus.attributeTypeMap;
    }
}
V2beta2ExternalMetricStatus.discriminator = undefined;
V2beta2ExternalMetricStatus.attributeTypeMap = [
    {
        "name": "current",
        "baseName": "current",
        "type": "V2beta2MetricValueStatus"
    },
    {
        "name": "metric",
        "baseName": "metric",
        "type": "V2beta2MetricIdentifier"
    }
];
exports.V2beta2ExternalMetricStatus = V2beta2ExternalMetricStatus;
/**
* HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.
*/
class V2beta2HorizontalPodAutoscaler {
    static getAttributeTypeMap() {
        return V2beta2HorizontalPodAutoscaler.attributeTypeMap;
    }
}
V2beta2HorizontalPodAutoscaler.discriminator = undefined;
V2beta2HorizontalPodAutoscaler.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ObjectMeta"
    },
    {
        "name": "spec",
        "baseName": "spec",
        "type": "V2beta2HorizontalPodAutoscalerSpec"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "V2beta2HorizontalPodAutoscalerStatus"
    }
];
exports.V2beta2HorizontalPodAutoscaler = V2beta2HorizontalPodAutoscaler;
/**
* HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.
*/
class V2beta2HorizontalPodAutoscalerCondition {
    static getAttributeTypeMap() {
        return V2beta2HorizontalPodAutoscalerCondition.attributeTypeMap;
    }
}
V2beta2HorizontalPodAutoscalerCondition.discriminator = undefined;
V2beta2HorizontalPodAutoscalerCondition.attributeTypeMap = [
    {
        "name": "lastTransitionTime",
        "baseName": "lastTransitionTime",
        "type": "Date"
    },
    {
        "name": "message",
        "baseName": "message",
        "type": "string"
    },
    {
        "name": "reason",
        "baseName": "reason",
        "type": "string"
    },
    {
        "name": "status",
        "baseName": "status",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V2beta2HorizontalPodAutoscalerCondition = V2beta2HorizontalPodAutoscalerCondition;
/**
* HorizontalPodAutoscalerList is a list of horizontal pod autoscaler objects.
*/
class V2beta2HorizontalPodAutoscalerList {
    static getAttributeTypeMap() {
        return V2beta2HorizontalPodAutoscalerList.attributeTypeMap;
    }
}
V2beta2HorizontalPodAutoscalerList.discriminator = undefined;
V2beta2HorizontalPodAutoscalerList.attributeTypeMap = [
    {
        "name": "apiVersion",
        "baseName": "apiVersion",
        "type": "string"
    },
    {
        "name": "items",
        "baseName": "items",
        "type": "Array<V2beta2HorizontalPodAutoscaler>"
    },
    {
        "name": "kind",
        "baseName": "kind",
        "type": "string"
    },
    {
        "name": "metadata",
        "baseName": "metadata",
        "type": "V1ListMeta"
    }
];
exports.V2beta2HorizontalPodAutoscalerList = V2beta2HorizontalPodAutoscalerList;
/**
* HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.
*/
class V2beta2HorizontalPodAutoscalerSpec {
    static getAttributeTypeMap() {
        return V2beta2HorizontalPodAutoscalerSpec.attributeTypeMap;
    }
}
V2beta2HorizontalPodAutoscalerSpec.discriminator = undefined;
V2beta2HorizontalPodAutoscalerSpec.attributeTypeMap = [
    {
        "name": "maxReplicas",
        "baseName": "maxReplicas",
        "type": "number"
    },
    {
        "name": "metrics",
        "baseName": "metrics",
        "type": "Array<V2beta2MetricSpec>"
    },
    {
        "name": "minReplicas",
        "baseName": "minReplicas",
        "type": "number"
    },
    {
        "name": "scaleTargetRef",
        "baseName": "scaleTargetRef",
        "type": "V2beta2CrossVersionObjectReference"
    }
];
exports.V2beta2HorizontalPodAutoscalerSpec = V2beta2HorizontalPodAutoscalerSpec;
/**
* HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler.
*/
class V2beta2HorizontalPodAutoscalerStatus {
    static getAttributeTypeMap() {
        return V2beta2HorizontalPodAutoscalerStatus.attributeTypeMap;
    }
}
V2beta2HorizontalPodAutoscalerStatus.discriminator = undefined;
V2beta2HorizontalPodAutoscalerStatus.attributeTypeMap = [
    {
        "name": "conditions",
        "baseName": "conditions",
        "type": "Array<V2beta2HorizontalPodAutoscalerCondition>"
    },
    {
        "name": "currentMetrics",
        "baseName": "currentMetrics",
        "type": "Array<V2beta2MetricStatus>"
    },
    {
        "name": "currentReplicas",
        "baseName": "currentReplicas",
        "type": "number"
    },
    {
        "name": "desiredReplicas",
        "baseName": "desiredReplicas",
        "type": "number"
    },
    {
        "name": "lastScaleTime",
        "baseName": "lastScaleTime",
        "type": "Date"
    },
    {
        "name": "observedGeneration",
        "baseName": "observedGeneration",
        "type": "number"
    }
];
exports.V2beta2HorizontalPodAutoscalerStatus = V2beta2HorizontalPodAutoscalerStatus;
/**
* MetricIdentifier defines the name and optionally selector for a metric
*/
class V2beta2MetricIdentifier {
    static getAttributeTypeMap() {
        return V2beta2MetricIdentifier.attributeTypeMap;
    }
}
V2beta2MetricIdentifier.discriminator = undefined;
V2beta2MetricIdentifier.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "selector",
        "baseName": "selector",
        "type": "V1LabelSelector"
    }
];
exports.V2beta2MetricIdentifier = V2beta2MetricIdentifier;
/**
* MetricSpec specifies how to scale based on a single metric (only `type` and one other matching field should be set at once).
*/
class V2beta2MetricSpec {
    static getAttributeTypeMap() {
        return V2beta2MetricSpec.attributeTypeMap;
    }
}
V2beta2MetricSpec.discriminator = undefined;
V2beta2MetricSpec.attributeTypeMap = [
    {
        "name": "external",
        "baseName": "external",
        "type": "V2beta2ExternalMetricSource"
    },
    {
        "name": "object",
        "baseName": "object",
        "type": "V2beta2ObjectMetricSource"
    },
    {
        "name": "pods",
        "baseName": "pods",
        "type": "V2beta2PodsMetricSource"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "V2beta2ResourceMetricSource"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V2beta2MetricSpec = V2beta2MetricSpec;
/**
* MetricStatus describes the last-read state of a single metric.
*/
class V2beta2MetricStatus {
    static getAttributeTypeMap() {
        return V2beta2MetricStatus.attributeTypeMap;
    }
}
V2beta2MetricStatus.discriminator = undefined;
V2beta2MetricStatus.attributeTypeMap = [
    {
        "name": "external",
        "baseName": "external",
        "type": "V2beta2ExternalMetricStatus"
    },
    {
        "name": "object",
        "baseName": "object",
        "type": "V2beta2ObjectMetricStatus"
    },
    {
        "name": "pods",
        "baseName": "pods",
        "type": "V2beta2PodsMetricStatus"
    },
    {
        "name": "resource",
        "baseName": "resource",
        "type": "V2beta2ResourceMetricStatus"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    }
];
exports.V2beta2MetricStatus = V2beta2MetricStatus;
/**
* MetricTarget defines the target value, average value, or average utilization of a specific metric
*/
class V2beta2MetricTarget {
    static getAttributeTypeMap() {
        return V2beta2MetricTarget.attributeTypeMap;
    }
}
V2beta2MetricTarget.discriminator = undefined;
V2beta2MetricTarget.attributeTypeMap = [
    {
        "name": "averageUtilization",
        "baseName": "averageUtilization",
        "type": "number"
    },
    {
        "name": "averageValue",
        "baseName": "averageValue",
        "type": "string"
    },
    {
        "name": "type",
        "baseName": "type",
        "type": "string"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V2beta2MetricTarget = V2beta2MetricTarget;
/**
* MetricValueStatus holds the current value for a metric
*/
class V2beta2MetricValueStatus {
    static getAttributeTypeMap() {
        return V2beta2MetricValueStatus.attributeTypeMap;
    }
}
V2beta2MetricValueStatus.discriminator = undefined;
V2beta2MetricValueStatus.attributeTypeMap = [
    {
        "name": "averageUtilization",
        "baseName": "averageUtilization",
        "type": "number"
    },
    {
        "name": "averageValue",
        "baseName": "averageValue",
        "type": "string"
    },
    {
        "name": "value",
        "baseName": "value",
        "type": "string"
    }
];
exports.V2beta2MetricValueStatus = V2beta2MetricValueStatus;
/**
* ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).
*/
class V2beta2ObjectMetricSource {
    static getAttributeTypeMap() {
        return V2beta2ObjectMetricSource.attributeTypeMap;
    }
}
V2beta2ObjectMetricSource.discriminator = undefined;
V2beta2ObjectMetricSource.attributeTypeMap = [
    {
        "name": "describedObject",
        "baseName": "describedObject",
        "type": "V2beta2CrossVersionObjectReference"
    },
    {
        "name": "metric",
        "baseName": "metric",
        "type": "V2beta2MetricIdentifier"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V2beta2MetricTarget"
    }
];
exports.V2beta2ObjectMetricSource = V2beta2ObjectMetricSource;
/**
* ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).
*/
class V2beta2ObjectMetricStatus {
    static getAttributeTypeMap() {
        return V2beta2ObjectMetricStatus.attributeTypeMap;
    }
}
V2beta2ObjectMetricStatus.discriminator = undefined;
V2beta2ObjectMetricStatus.attributeTypeMap = [
    {
        "name": "current",
        "baseName": "current",
        "type": "V2beta2MetricValueStatus"
    },
    {
        "name": "describedObject",
        "baseName": "describedObject",
        "type": "V2beta2CrossVersionObjectReference"
    },
    {
        "name": "metric",
        "baseName": "metric",
        "type": "V2beta2MetricIdentifier"
    }
];
exports.V2beta2ObjectMetricStatus = V2beta2ObjectMetricStatus;
/**
* PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.
*/
class V2beta2PodsMetricSource {
    static getAttributeTypeMap() {
        return V2beta2PodsMetricSource.attributeTypeMap;
    }
}
V2beta2PodsMetricSource.discriminator = undefined;
V2beta2PodsMetricSource.attributeTypeMap = [
    {
        "name": "metric",
        "baseName": "metric",
        "type": "V2beta2MetricIdentifier"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V2beta2MetricTarget"
    }
];
exports.V2beta2PodsMetricSource = V2beta2PodsMetricSource;
/**
* PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).
*/
class V2beta2PodsMetricStatus {
    static getAttributeTypeMap() {
        return V2beta2PodsMetricStatus.attributeTypeMap;
    }
}
V2beta2PodsMetricStatus.discriminator = undefined;
V2beta2PodsMetricStatus.attributeTypeMap = [
    {
        "name": "current",
        "baseName": "current",
        "type": "V2beta2MetricValueStatus"
    },
    {
        "name": "metric",
        "baseName": "metric",
        "type": "V2beta2MetricIdentifier"
    }
];
exports.V2beta2PodsMetricStatus = V2beta2PodsMetricStatus;
/**
* ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  The values will be averaged together before being compared to the target.  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.  Only one \"target\" type should be set.
*/
class V2beta2ResourceMetricSource {
    static getAttributeTypeMap() {
        return V2beta2ResourceMetricSource.attributeTypeMap;
    }
}
V2beta2ResourceMetricSource.discriminator = undefined;
V2beta2ResourceMetricSource.attributeTypeMap = [
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    },
    {
        "name": "target",
        "baseName": "target",
        "type": "V2beta2MetricTarget"
    }
];
exports.V2beta2ResourceMetricSource = V2beta2ResourceMetricSource;
/**
* ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory).  Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.
*/
class V2beta2ResourceMetricStatus {
    static getAttributeTypeMap() {
        return V2beta2ResourceMetricStatus.attributeTypeMap;
    }
}
V2beta2ResourceMetricStatus.discriminator = undefined;
V2beta2ResourceMetricStatus.attributeTypeMap = [
    {
        "name": "current",
        "baseName": "current",
        "type": "V2beta2MetricValueStatus"
    },
    {
        "name": "name",
        "baseName": "name",
        "type": "string"
    }
];
exports.V2beta2ResourceMetricStatus = V2beta2ResourceMetricStatus;
/**
* Info contains versioning information. how we'll want to distribute that information.
*/
class VersionInfo {
    static getAttributeTypeMap() {
        return VersionInfo.attributeTypeMap;
    }
}
VersionInfo.discriminator = undefined;
VersionInfo.attributeTypeMap = [
    {
        "name": "buildDate",
        "baseName": "buildDate",
        "type": "string"
    },
    {
        "name": "compiler",
        "baseName": "compiler",
        "type": "string"
    },
    {
        "name": "gitCommit",
        "baseName": "gitCommit",
        "type": "string"
    },
    {
        "name": "gitTreeState",
        "baseName": "gitTreeState",
        "type": "string"
    },
    {
        "name": "gitVersion",
        "baseName": "gitVersion",
        "type": "string"
    },
    {
        "name": "goVersion",
        "baseName": "goVersion",
        "type": "string"
    },
    {
        "name": "major",
        "baseName": "major",
        "type": "string"
    },
    {
        "name": "minor",
        "baseName": "minor",
        "type": "string"
    },
    {
        "name": "platform",
        "baseName": "platform",
        "type": "string"
    }
];
exports.VersionInfo = VersionInfo;
let enumsMap = {};
let typeMap = {
    "AdmissionregistrationV1beta1ServiceReference": AdmissionregistrationV1beta1ServiceReference,
    "AdmissionregistrationV1beta1WebhookClientConfig": AdmissionregistrationV1beta1WebhookClientConfig,
    "ApiextensionsV1beta1ServiceReference": ApiextensionsV1beta1ServiceReference,
    "ApiextensionsV1beta1WebhookClientConfig": ApiextensionsV1beta1WebhookClientConfig,
    "ApiregistrationV1beta1ServiceReference": ApiregistrationV1beta1ServiceReference,
    "AppsV1beta1Deployment": AppsV1beta1Deployment,
    "AppsV1beta1DeploymentCondition": AppsV1beta1DeploymentCondition,
    "AppsV1beta1DeploymentList": AppsV1beta1DeploymentList,
    "AppsV1beta1DeploymentRollback": AppsV1beta1DeploymentRollback,
    "AppsV1beta1DeploymentSpec": AppsV1beta1DeploymentSpec,
    "AppsV1beta1DeploymentStatus": AppsV1beta1DeploymentStatus,
    "AppsV1beta1DeploymentStrategy": AppsV1beta1DeploymentStrategy,
    "AppsV1beta1RollbackConfig": AppsV1beta1RollbackConfig,
    "AppsV1beta1RollingUpdateDeployment": AppsV1beta1RollingUpdateDeployment,
    "AppsV1beta1Scale": AppsV1beta1Scale,
    "AppsV1beta1ScaleSpec": AppsV1beta1ScaleSpec,
    "AppsV1beta1ScaleStatus": AppsV1beta1ScaleStatus,
    "ExtensionsV1beta1AllowedFlexVolume": ExtensionsV1beta1AllowedFlexVolume,
    "ExtensionsV1beta1AllowedHostPath": ExtensionsV1beta1AllowedHostPath,
    "ExtensionsV1beta1Deployment": ExtensionsV1beta1Deployment,
    "ExtensionsV1beta1DeploymentCondition": ExtensionsV1beta1DeploymentCondition,
    "ExtensionsV1beta1DeploymentList": ExtensionsV1beta1DeploymentList,
    "ExtensionsV1beta1DeploymentRollback": ExtensionsV1beta1DeploymentRollback,
    "ExtensionsV1beta1DeploymentSpec": ExtensionsV1beta1DeploymentSpec,
    "ExtensionsV1beta1DeploymentStatus": ExtensionsV1beta1DeploymentStatus,
    "ExtensionsV1beta1DeploymentStrategy": ExtensionsV1beta1DeploymentStrategy,
    "ExtensionsV1beta1FSGroupStrategyOptions": ExtensionsV1beta1FSGroupStrategyOptions,
    "ExtensionsV1beta1HostPortRange": ExtensionsV1beta1HostPortRange,
    "ExtensionsV1beta1IDRange": ExtensionsV1beta1IDRange,
    "ExtensionsV1beta1PodSecurityPolicy": ExtensionsV1beta1PodSecurityPolicy,
    "ExtensionsV1beta1PodSecurityPolicyList": ExtensionsV1beta1PodSecurityPolicyList,
    "ExtensionsV1beta1PodSecurityPolicySpec": ExtensionsV1beta1PodSecurityPolicySpec,
    "ExtensionsV1beta1RollbackConfig": ExtensionsV1beta1RollbackConfig,
    "ExtensionsV1beta1RollingUpdateDeployment": ExtensionsV1beta1RollingUpdateDeployment,
    "ExtensionsV1beta1RunAsGroupStrategyOptions": ExtensionsV1beta1RunAsGroupStrategyOptions,
    "ExtensionsV1beta1RunAsUserStrategyOptions": ExtensionsV1beta1RunAsUserStrategyOptions,
    "ExtensionsV1beta1SELinuxStrategyOptions": ExtensionsV1beta1SELinuxStrategyOptions,
    "ExtensionsV1beta1Scale": ExtensionsV1beta1Scale,
    "ExtensionsV1beta1ScaleSpec": ExtensionsV1beta1ScaleSpec,
    "ExtensionsV1beta1ScaleStatus": ExtensionsV1beta1ScaleStatus,
    "ExtensionsV1beta1SupplementalGroupsStrategyOptions": ExtensionsV1beta1SupplementalGroupsStrategyOptions,
    "PolicyV1beta1AllowedFlexVolume": PolicyV1beta1AllowedFlexVolume,
    "PolicyV1beta1AllowedHostPath": PolicyV1beta1AllowedHostPath,
    "PolicyV1beta1FSGroupStrategyOptions": PolicyV1beta1FSGroupStrategyOptions,
    "PolicyV1beta1HostPortRange": PolicyV1beta1HostPortRange,
    "PolicyV1beta1IDRange": PolicyV1beta1IDRange,
    "PolicyV1beta1PodSecurityPolicy": PolicyV1beta1PodSecurityPolicy,
    "PolicyV1beta1PodSecurityPolicyList": PolicyV1beta1PodSecurityPolicyList,
    "PolicyV1beta1PodSecurityPolicySpec": PolicyV1beta1PodSecurityPolicySpec,
    "PolicyV1beta1RunAsGroupStrategyOptions": PolicyV1beta1RunAsGroupStrategyOptions,
    "PolicyV1beta1RunAsUserStrategyOptions": PolicyV1beta1RunAsUserStrategyOptions,
    "PolicyV1beta1SELinuxStrategyOptions": PolicyV1beta1SELinuxStrategyOptions,
    "PolicyV1beta1SupplementalGroupsStrategyOptions": PolicyV1beta1SupplementalGroupsStrategyOptions,
    "RuntimeRawExtension": RuntimeRawExtension,
    "V1APIGroup": V1APIGroup,
    "V1APIGroupList": V1APIGroupList,
    "V1APIResource": V1APIResource,
    "V1APIResourceList": V1APIResourceList,
    "V1APIService": V1APIService,
    "V1APIServiceCondition": V1APIServiceCondition,
    "V1APIServiceList": V1APIServiceList,
    "V1APIServiceSpec": V1APIServiceSpec,
    "V1APIServiceStatus": V1APIServiceStatus,
    "V1APIVersions": V1APIVersions,
    "V1AWSElasticBlockStoreVolumeSource": V1AWSElasticBlockStoreVolumeSource,
    "V1Affinity": V1Affinity,
    "V1AggregationRule": V1AggregationRule,
    "V1AttachedVolume": V1AttachedVolume,
    "V1AzureDiskVolumeSource": V1AzureDiskVolumeSource,
    "V1AzureFilePersistentVolumeSource": V1AzureFilePersistentVolumeSource,
    "V1AzureFileVolumeSource": V1AzureFileVolumeSource,
    "V1Binding": V1Binding,
    "V1CSIPersistentVolumeSource": V1CSIPersistentVolumeSource,
    "V1Capabilities": V1Capabilities,
    "V1CephFSPersistentVolumeSource": V1CephFSPersistentVolumeSource,
    "V1CephFSVolumeSource": V1CephFSVolumeSource,
    "V1CinderPersistentVolumeSource": V1CinderPersistentVolumeSource,
    "V1CinderVolumeSource": V1CinderVolumeSource,
    "V1ClientIPConfig": V1ClientIPConfig,
    "V1ClusterRole": V1ClusterRole,
    "V1ClusterRoleBinding": V1ClusterRoleBinding,
    "V1ClusterRoleBindingList": V1ClusterRoleBindingList,
    "V1ClusterRoleList": V1ClusterRoleList,
    "V1ComponentCondition": V1ComponentCondition,
    "V1ComponentStatus": V1ComponentStatus,
    "V1ComponentStatusList": V1ComponentStatusList,
    "V1ConfigMap": V1ConfigMap,
    "V1ConfigMapEnvSource": V1ConfigMapEnvSource,
    "V1ConfigMapKeySelector": V1ConfigMapKeySelector,
    "V1ConfigMapList": V1ConfigMapList,
    "V1ConfigMapNodeConfigSource": V1ConfigMapNodeConfigSource,
    "V1ConfigMapProjection": V1ConfigMapProjection,
    "V1ConfigMapVolumeSource": V1ConfigMapVolumeSource,
    "V1Container": V1Container,
    "V1ContainerImage": V1ContainerImage,
    "V1ContainerPort": V1ContainerPort,
    "V1ContainerState": V1ContainerState,
    "V1ContainerStateRunning": V1ContainerStateRunning,
    "V1ContainerStateTerminated": V1ContainerStateTerminated,
    "V1ContainerStateWaiting": V1ContainerStateWaiting,
    "V1ContainerStatus": V1ContainerStatus,
    "V1ControllerRevision": V1ControllerRevision,
    "V1ControllerRevisionList": V1ControllerRevisionList,
    "V1CrossVersionObjectReference": V1CrossVersionObjectReference,
    "V1DaemonEndpoint": V1DaemonEndpoint,
    "V1DaemonSet": V1DaemonSet,
    "V1DaemonSetCondition": V1DaemonSetCondition,
    "V1DaemonSetList": V1DaemonSetList,
    "V1DaemonSetSpec": V1DaemonSetSpec,
    "V1DaemonSetStatus": V1DaemonSetStatus,
    "V1DaemonSetUpdateStrategy": V1DaemonSetUpdateStrategy,
    "V1DeleteOptions": V1DeleteOptions,
    "V1Deployment": V1Deployment,
    "V1DeploymentCondition": V1DeploymentCondition,
    "V1DeploymentList": V1DeploymentList,
    "V1DeploymentSpec": V1DeploymentSpec,
    "V1DeploymentStatus": V1DeploymentStatus,
    "V1DeploymentStrategy": V1DeploymentStrategy,
    "V1DownwardAPIProjection": V1DownwardAPIProjection,
    "V1DownwardAPIVolumeFile": V1DownwardAPIVolumeFile,
    "V1DownwardAPIVolumeSource": V1DownwardAPIVolumeSource,
    "V1EmptyDirVolumeSource": V1EmptyDirVolumeSource,
    "V1EndpointAddress": V1EndpointAddress,
    "V1EndpointPort": V1EndpointPort,
    "V1EndpointSubset": V1EndpointSubset,
    "V1Endpoints": V1Endpoints,
    "V1EndpointsList": V1EndpointsList,
    "V1EnvFromSource": V1EnvFromSource,
    "V1EnvVar": V1EnvVar,
    "V1EnvVarSource": V1EnvVarSource,
    "V1Event": V1Event,
    "V1EventList": V1EventList,
    "V1EventSeries": V1EventSeries,
    "V1EventSource": V1EventSource,
    "V1ExecAction": V1ExecAction,
    "V1FCVolumeSource": V1FCVolumeSource,
    "V1FlexPersistentVolumeSource": V1FlexPersistentVolumeSource,
    "V1FlexVolumeSource": V1FlexVolumeSource,
    "V1FlockerVolumeSource": V1FlockerVolumeSource,
    "V1GCEPersistentDiskVolumeSource": V1GCEPersistentDiskVolumeSource,
    "V1GitRepoVolumeSource": V1GitRepoVolumeSource,
    "V1GlusterfsPersistentVolumeSource": V1GlusterfsPersistentVolumeSource,
    "V1GlusterfsVolumeSource": V1GlusterfsVolumeSource,
    "V1GroupVersionForDiscovery": V1GroupVersionForDiscovery,
    "V1HTTPGetAction": V1HTTPGetAction,
    "V1HTTPHeader": V1HTTPHeader,
    "V1Handler": V1Handler,
    "V1HorizontalPodAutoscaler": V1HorizontalPodAutoscaler,
    "V1HorizontalPodAutoscalerList": V1HorizontalPodAutoscalerList,
    "V1HorizontalPodAutoscalerSpec": V1HorizontalPodAutoscalerSpec,
    "V1HorizontalPodAutoscalerStatus": V1HorizontalPodAutoscalerStatus,
    "V1HostAlias": V1HostAlias,
    "V1HostPathVolumeSource": V1HostPathVolumeSource,
    "V1IPBlock": V1IPBlock,
    "V1ISCSIPersistentVolumeSource": V1ISCSIPersistentVolumeSource,
    "V1ISCSIVolumeSource": V1ISCSIVolumeSource,
    "V1Initializer": V1Initializer,
    "V1Initializers": V1Initializers,
    "V1Job": V1Job,
    "V1JobCondition": V1JobCondition,
    "V1JobList": V1JobList,
    "V1JobSpec": V1JobSpec,
    "V1JobStatus": V1JobStatus,
    "V1KeyToPath": V1KeyToPath,
    "V1LabelSelector": V1LabelSelector,
    "V1LabelSelectorRequirement": V1LabelSelectorRequirement,
    "V1Lifecycle": V1Lifecycle,
    "V1LimitRange": V1LimitRange,
    "V1LimitRangeItem": V1LimitRangeItem,
    "V1LimitRangeList": V1LimitRangeList,
    "V1LimitRangeSpec": V1LimitRangeSpec,
    "V1ListMeta": V1ListMeta,
    "V1LoadBalancerIngress": V1LoadBalancerIngress,
    "V1LoadBalancerStatus": V1LoadBalancerStatus,
    "V1LocalObjectReference": V1LocalObjectReference,
    "V1LocalSubjectAccessReview": V1LocalSubjectAccessReview,
    "V1LocalVolumeSource": V1LocalVolumeSource,
    "V1NFSVolumeSource": V1NFSVolumeSource,
    "V1Namespace": V1Namespace,
    "V1NamespaceList": V1NamespaceList,
    "V1NamespaceSpec": V1NamespaceSpec,
    "V1NamespaceStatus": V1NamespaceStatus,
    "V1NetworkPolicy": V1NetworkPolicy,
    "V1NetworkPolicyEgressRule": V1NetworkPolicyEgressRule,
    "V1NetworkPolicyIngressRule": V1NetworkPolicyIngressRule,
    "V1NetworkPolicyList": V1NetworkPolicyList,
    "V1NetworkPolicyPeer": V1NetworkPolicyPeer,
    "V1NetworkPolicyPort": V1NetworkPolicyPort,
    "V1NetworkPolicySpec": V1NetworkPolicySpec,
    "V1Node": V1Node,
    "V1NodeAddress": V1NodeAddress,
    "V1NodeAffinity": V1NodeAffinity,
    "V1NodeCondition": V1NodeCondition,
    "V1NodeConfigSource": V1NodeConfigSource,
    "V1NodeConfigStatus": V1NodeConfigStatus,
    "V1NodeDaemonEndpoints": V1NodeDaemonEndpoints,
    "V1NodeList": V1NodeList,
    "V1NodeSelector": V1NodeSelector,
    "V1NodeSelectorRequirement": V1NodeSelectorRequirement,
    "V1NodeSelectorTerm": V1NodeSelectorTerm,
    "V1NodeSpec": V1NodeSpec,
    "V1NodeStatus": V1NodeStatus,
    "V1NodeSystemInfo": V1NodeSystemInfo,
    "V1NonResourceAttributes": V1NonResourceAttributes,
    "V1NonResourceRule": V1NonResourceRule,
    "V1ObjectFieldSelector": V1ObjectFieldSelector,
    "V1ObjectMeta": V1ObjectMeta,
    "V1ObjectReference": V1ObjectReference,
    "V1OwnerReference": V1OwnerReference,
    "V1PersistentVolume": V1PersistentVolume,
    "V1PersistentVolumeClaim": V1PersistentVolumeClaim,
    "V1PersistentVolumeClaimCondition": V1PersistentVolumeClaimCondition,
    "V1PersistentVolumeClaimList": V1PersistentVolumeClaimList,
    "V1PersistentVolumeClaimSpec": V1PersistentVolumeClaimSpec,
    "V1PersistentVolumeClaimStatus": V1PersistentVolumeClaimStatus,
    "V1PersistentVolumeClaimVolumeSource": V1PersistentVolumeClaimVolumeSource,
    "V1PersistentVolumeList": V1PersistentVolumeList,
    "V1PersistentVolumeSpec": V1PersistentVolumeSpec,
    "V1PersistentVolumeStatus": V1PersistentVolumeStatus,
    "V1PhotonPersistentDiskVolumeSource": V1PhotonPersistentDiskVolumeSource,
    "V1Pod": V1Pod,
    "V1PodAffinity": V1PodAffinity,
    "V1PodAffinityTerm": V1PodAffinityTerm,
    "V1PodAntiAffinity": V1PodAntiAffinity,
    "V1PodCondition": V1PodCondition,
    "V1PodDNSConfig": V1PodDNSConfig,
    "V1PodDNSConfigOption": V1PodDNSConfigOption,
    "V1PodList": V1PodList,
    "V1PodReadinessGate": V1PodReadinessGate,
    "V1PodSecurityContext": V1PodSecurityContext,
    "V1PodSpec": V1PodSpec,
    "V1PodStatus": V1PodStatus,
    "V1PodTemplate": V1PodTemplate,
    "V1PodTemplateList": V1PodTemplateList,
    "V1PodTemplateSpec": V1PodTemplateSpec,
    "V1PolicyRule": V1PolicyRule,
    "V1PortworxVolumeSource": V1PortworxVolumeSource,
    "V1Preconditions": V1Preconditions,
    "V1PreferredSchedulingTerm": V1PreferredSchedulingTerm,
    "V1Probe": V1Probe,
    "V1ProjectedVolumeSource": V1ProjectedVolumeSource,
    "V1QuobyteVolumeSource": V1QuobyteVolumeSource,
    "V1RBDPersistentVolumeSource": V1RBDPersistentVolumeSource,
    "V1RBDVolumeSource": V1RBDVolumeSource,
    "V1ReplicaSet": V1ReplicaSet,
    "V1ReplicaSetCondition": V1ReplicaSetCondition,
    "V1ReplicaSetList": V1ReplicaSetList,
    "V1ReplicaSetSpec": V1ReplicaSetSpec,
    "V1ReplicaSetStatus": V1ReplicaSetStatus,
    "V1ReplicationController": V1ReplicationController,
    "V1ReplicationControllerCondition": V1ReplicationControllerCondition,
    "V1ReplicationControllerList": V1ReplicationControllerList,
    "V1ReplicationControllerSpec": V1ReplicationControllerSpec,
    "V1ReplicationControllerStatus": V1ReplicationControllerStatus,
    "V1ResourceAttributes": V1ResourceAttributes,
    "V1ResourceFieldSelector": V1ResourceFieldSelector,
    "V1ResourceQuota": V1ResourceQuota,
    "V1ResourceQuotaList": V1ResourceQuotaList,
    "V1ResourceQuotaSpec": V1ResourceQuotaSpec,
    "V1ResourceQuotaStatus": V1ResourceQuotaStatus,
    "V1ResourceRequirements": V1ResourceRequirements,
    "V1ResourceRule": V1ResourceRule,
    "V1Role": V1Role,
    "V1RoleBinding": V1RoleBinding,
    "V1RoleBindingList": V1RoleBindingList,
    "V1RoleList": V1RoleList,
    "V1RoleRef": V1RoleRef,
    "V1RollingUpdateDaemonSet": V1RollingUpdateDaemonSet,
    "V1RollingUpdateDeployment": V1RollingUpdateDeployment,
    "V1RollingUpdateStatefulSetStrategy": V1RollingUpdateStatefulSetStrategy,
    "V1SELinuxOptions": V1SELinuxOptions,
    "V1Scale": V1Scale,
    "V1ScaleIOPersistentVolumeSource": V1ScaleIOPersistentVolumeSource,
    "V1ScaleIOVolumeSource": V1ScaleIOVolumeSource,
    "V1ScaleSpec": V1ScaleSpec,
    "V1ScaleStatus": V1ScaleStatus,
    "V1ScopeSelector": V1ScopeSelector,
    "V1ScopedResourceSelectorRequirement": V1ScopedResourceSelectorRequirement,
    "V1Secret": V1Secret,
    "V1SecretEnvSource": V1SecretEnvSource,
    "V1SecretKeySelector": V1SecretKeySelector,
    "V1SecretList": V1SecretList,
    "V1SecretProjection": V1SecretProjection,
    "V1SecretReference": V1SecretReference,
    "V1SecretVolumeSource": V1SecretVolumeSource,
    "V1SecurityContext": V1SecurityContext,
    "V1SelfSubjectAccessReview": V1SelfSubjectAccessReview,
    "V1SelfSubjectAccessReviewSpec": V1SelfSubjectAccessReviewSpec,
    "V1SelfSubjectRulesReview": V1SelfSubjectRulesReview,
    "V1SelfSubjectRulesReviewSpec": V1SelfSubjectRulesReviewSpec,
    "V1ServerAddressByClientCIDR": V1ServerAddressByClientCIDR,
    "V1Service": V1Service,
    "V1ServiceAccount": V1ServiceAccount,
    "V1ServiceAccountList": V1ServiceAccountList,
    "V1ServiceAccountTokenProjection": V1ServiceAccountTokenProjection,
    "V1ServiceList": V1ServiceList,
    "V1ServicePort": V1ServicePort,
    "V1ServiceReference": V1ServiceReference,
    "V1ServiceSpec": V1ServiceSpec,
    "V1ServiceStatus": V1ServiceStatus,
    "V1SessionAffinityConfig": V1SessionAffinityConfig,
    "V1StatefulSet": V1StatefulSet,
    "V1StatefulSetCondition": V1StatefulSetCondition,
    "V1StatefulSetList": V1StatefulSetList,
    "V1StatefulSetSpec": V1StatefulSetSpec,
    "V1StatefulSetStatus": V1StatefulSetStatus,
    "V1StatefulSetUpdateStrategy": V1StatefulSetUpdateStrategy,
    "V1Status": V1Status,
    "V1StatusCause": V1StatusCause,
    "V1StatusDetails": V1StatusDetails,
    "V1StorageClass": V1StorageClass,
    "V1StorageClassList": V1StorageClassList,
    "V1StorageOSPersistentVolumeSource": V1StorageOSPersistentVolumeSource,
    "V1StorageOSVolumeSource": V1StorageOSVolumeSource,
    "V1Subject": V1Subject,
    "V1SubjectAccessReview": V1SubjectAccessReview,
    "V1SubjectAccessReviewSpec": V1SubjectAccessReviewSpec,
    "V1SubjectAccessReviewStatus": V1SubjectAccessReviewStatus,
    "V1SubjectRulesReviewStatus": V1SubjectRulesReviewStatus,
    "V1Sysctl": V1Sysctl,
    "V1TCPSocketAction": V1TCPSocketAction,
    "V1Taint": V1Taint,
    "V1TokenReview": V1TokenReview,
    "V1TokenReviewSpec": V1TokenReviewSpec,
    "V1TokenReviewStatus": V1TokenReviewStatus,
    "V1Toleration": V1Toleration,
    "V1TopologySelectorLabelRequirement": V1TopologySelectorLabelRequirement,
    "V1TopologySelectorTerm": V1TopologySelectorTerm,
    "V1TypedLocalObjectReference": V1TypedLocalObjectReference,
    "V1UserInfo": V1UserInfo,
    "V1Volume": V1Volume,
    "V1VolumeAttachment": V1VolumeAttachment,
    "V1VolumeAttachmentList": V1VolumeAttachmentList,
    "V1VolumeAttachmentSource": V1VolumeAttachmentSource,
    "V1VolumeAttachmentSpec": V1VolumeAttachmentSpec,
    "V1VolumeAttachmentStatus": V1VolumeAttachmentStatus,
    "V1VolumeDevice": V1VolumeDevice,
    "V1VolumeError": V1VolumeError,
    "V1VolumeMount": V1VolumeMount,
    "V1VolumeNodeAffinity": V1VolumeNodeAffinity,
    "V1VolumeProjection": V1VolumeProjection,
    "V1VsphereVirtualDiskVolumeSource": V1VsphereVirtualDiskVolumeSource,
    "V1WatchEvent": V1WatchEvent,
    "V1WeightedPodAffinityTerm": V1WeightedPodAffinityTerm,
    "V1alpha1AggregationRule": V1alpha1AggregationRule,
    "V1alpha1AuditSink": V1alpha1AuditSink,
    "V1alpha1AuditSinkList": V1alpha1AuditSinkList,
    "V1alpha1AuditSinkSpec": V1alpha1AuditSinkSpec,
    "V1alpha1ClusterRole": V1alpha1ClusterRole,
    "V1alpha1ClusterRoleBinding": V1alpha1ClusterRoleBinding,
    "V1alpha1ClusterRoleBindingList": V1alpha1ClusterRoleBindingList,
    "V1alpha1ClusterRoleList": V1alpha1ClusterRoleList,
    "V1alpha1Initializer": V1alpha1Initializer,
    "V1alpha1InitializerConfiguration": V1alpha1InitializerConfiguration,
    "V1alpha1InitializerConfigurationList": V1alpha1InitializerConfigurationList,
    "V1alpha1PodPreset": V1alpha1PodPreset,
    "V1alpha1PodPresetList": V1alpha1PodPresetList,
    "V1alpha1PodPresetSpec": V1alpha1PodPresetSpec,
    "V1alpha1Policy": V1alpha1Policy,
    "V1alpha1PolicyRule": V1alpha1PolicyRule,
    "V1alpha1PriorityClass": V1alpha1PriorityClass,
    "V1alpha1PriorityClassList": V1alpha1PriorityClassList,
    "V1alpha1Role": V1alpha1Role,
    "V1alpha1RoleBinding": V1alpha1RoleBinding,
    "V1alpha1RoleBindingList": V1alpha1RoleBindingList,
    "V1alpha1RoleList": V1alpha1RoleList,
    "V1alpha1RoleRef": V1alpha1RoleRef,
    "V1alpha1Rule": V1alpha1Rule,
    "V1alpha1ServiceReference": V1alpha1ServiceReference,
    "V1alpha1Subject": V1alpha1Subject,
    "V1alpha1VolumeAttachment": V1alpha1VolumeAttachment,
    "V1alpha1VolumeAttachmentList": V1alpha1VolumeAttachmentList,
    "V1alpha1VolumeAttachmentSource": V1alpha1VolumeAttachmentSource,
    "V1alpha1VolumeAttachmentSpec": V1alpha1VolumeAttachmentSpec,
    "V1alpha1VolumeAttachmentStatus": V1alpha1VolumeAttachmentStatus,
    "V1alpha1VolumeError": V1alpha1VolumeError,
    "V1alpha1Webhook": V1alpha1Webhook,
    "V1alpha1WebhookClientConfig": V1alpha1WebhookClientConfig,
    "V1alpha1WebhookThrottleConfig": V1alpha1WebhookThrottleConfig,
    "V1beta1APIService": V1beta1APIService,
    "V1beta1APIServiceCondition": V1beta1APIServiceCondition,
    "V1beta1APIServiceList": V1beta1APIServiceList,
    "V1beta1APIServiceSpec": V1beta1APIServiceSpec,
    "V1beta1APIServiceStatus": V1beta1APIServiceStatus,
    "V1beta1AggregationRule": V1beta1AggregationRule,
    "V1beta1CertificateSigningRequest": V1beta1CertificateSigningRequest,
    "V1beta1CertificateSigningRequestCondition": V1beta1CertificateSigningRequestCondition,
    "V1beta1CertificateSigningRequestList": V1beta1CertificateSigningRequestList,
    "V1beta1CertificateSigningRequestSpec": V1beta1CertificateSigningRequestSpec,
    "V1beta1CertificateSigningRequestStatus": V1beta1CertificateSigningRequestStatus,
    "V1beta1ClusterRole": V1beta1ClusterRole,
    "V1beta1ClusterRoleBinding": V1beta1ClusterRoleBinding,
    "V1beta1ClusterRoleBindingList": V1beta1ClusterRoleBindingList,
    "V1beta1ClusterRoleList": V1beta1ClusterRoleList,
    "V1beta1ControllerRevision": V1beta1ControllerRevision,
    "V1beta1ControllerRevisionList": V1beta1ControllerRevisionList,
    "V1beta1CronJob": V1beta1CronJob,
    "V1beta1CronJobList": V1beta1CronJobList,
    "V1beta1CronJobSpec": V1beta1CronJobSpec,
    "V1beta1CronJobStatus": V1beta1CronJobStatus,
    "V1beta1CustomResourceColumnDefinition": V1beta1CustomResourceColumnDefinition,
    "V1beta1CustomResourceConversion": V1beta1CustomResourceConversion,
    "V1beta1CustomResourceDefinition": V1beta1CustomResourceDefinition,
    "V1beta1CustomResourceDefinitionCondition": V1beta1CustomResourceDefinitionCondition,
    "V1beta1CustomResourceDefinitionList": V1beta1CustomResourceDefinitionList,
    "V1beta1CustomResourceDefinitionNames": V1beta1CustomResourceDefinitionNames,
    "V1beta1CustomResourceDefinitionSpec": V1beta1CustomResourceDefinitionSpec,
    "V1beta1CustomResourceDefinitionStatus": V1beta1CustomResourceDefinitionStatus,
    "V1beta1CustomResourceDefinitionVersion": V1beta1CustomResourceDefinitionVersion,
    "V1beta1CustomResourceSubresourceScale": V1beta1CustomResourceSubresourceScale,
    "V1beta1CustomResourceSubresources": V1beta1CustomResourceSubresources,
    "V1beta1CustomResourceValidation": V1beta1CustomResourceValidation,
    "V1beta1DaemonSet": V1beta1DaemonSet,
    "V1beta1DaemonSetCondition": V1beta1DaemonSetCondition,
    "V1beta1DaemonSetList": V1beta1DaemonSetList,
    "V1beta1DaemonSetSpec": V1beta1DaemonSetSpec,
    "V1beta1DaemonSetStatus": V1beta1DaemonSetStatus,
    "V1beta1DaemonSetUpdateStrategy": V1beta1DaemonSetUpdateStrategy,
    "V1beta1Event": V1beta1Event,
    "V1beta1EventList": V1beta1EventList,
    "V1beta1EventSeries": V1beta1EventSeries,
    "V1beta1Eviction": V1beta1Eviction,
    "V1beta1ExternalDocumentation": V1beta1ExternalDocumentation,
    "V1beta1HTTPIngressPath": V1beta1HTTPIngressPath,
    "V1beta1HTTPIngressRuleValue": V1beta1HTTPIngressRuleValue,
    "V1beta1IPBlock": V1beta1IPBlock,
    "V1beta1Ingress": V1beta1Ingress,
    "V1beta1IngressBackend": V1beta1IngressBackend,
    "V1beta1IngressList": V1beta1IngressList,
    "V1beta1IngressRule": V1beta1IngressRule,
    "V1beta1IngressSpec": V1beta1IngressSpec,
    "V1beta1IngressStatus": V1beta1IngressStatus,
    "V1beta1IngressTLS": V1beta1IngressTLS,
    "V1beta1JSONSchemaProps": V1beta1JSONSchemaProps,
    "V1beta1JobTemplateSpec": V1beta1JobTemplateSpec,
    "V1beta1Lease": V1beta1Lease,
    "V1beta1LeaseList": V1beta1LeaseList,
    "V1beta1LeaseSpec": V1beta1LeaseSpec,
    "V1beta1LocalSubjectAccessReview": V1beta1LocalSubjectAccessReview,
    "V1beta1MutatingWebhookConfiguration": V1beta1MutatingWebhookConfiguration,
    "V1beta1MutatingWebhookConfigurationList": V1beta1MutatingWebhookConfigurationList,
    "V1beta1NetworkPolicy": V1beta1NetworkPolicy,
    "V1beta1NetworkPolicyEgressRule": V1beta1NetworkPolicyEgressRule,
    "V1beta1NetworkPolicyIngressRule": V1beta1NetworkPolicyIngressRule,
    "V1beta1NetworkPolicyList": V1beta1NetworkPolicyList,
    "V1beta1NetworkPolicyPeer": V1beta1NetworkPolicyPeer,
    "V1beta1NetworkPolicyPort": V1beta1NetworkPolicyPort,
    "V1beta1NetworkPolicySpec": V1beta1NetworkPolicySpec,
    "V1beta1NonResourceAttributes": V1beta1NonResourceAttributes,
    "V1beta1NonResourceRule": V1beta1NonResourceRule,
    "V1beta1PodDisruptionBudget": V1beta1PodDisruptionBudget,
    "V1beta1PodDisruptionBudgetList": V1beta1PodDisruptionBudgetList,
    "V1beta1PodDisruptionBudgetSpec": V1beta1PodDisruptionBudgetSpec,
    "V1beta1PodDisruptionBudgetStatus": V1beta1PodDisruptionBudgetStatus,
    "V1beta1PolicyRule": V1beta1PolicyRule,
    "V1beta1PriorityClass": V1beta1PriorityClass,
    "V1beta1PriorityClassList": V1beta1PriorityClassList,
    "V1beta1ReplicaSet": V1beta1ReplicaSet,
    "V1beta1ReplicaSetCondition": V1beta1ReplicaSetCondition,
    "V1beta1ReplicaSetList": V1beta1ReplicaSetList,
    "V1beta1ReplicaSetSpec": V1beta1ReplicaSetSpec,
    "V1beta1ReplicaSetStatus": V1beta1ReplicaSetStatus,
    "V1beta1ResourceAttributes": V1beta1ResourceAttributes,
    "V1beta1ResourceRule": V1beta1ResourceRule,
    "V1beta1Role": V1beta1Role,
    "V1beta1RoleBinding": V1beta1RoleBinding,
    "V1beta1RoleBindingList": V1beta1RoleBindingList,
    "V1beta1RoleList": V1beta1RoleList,
    "V1beta1RoleRef": V1beta1RoleRef,
    "V1beta1RollingUpdateDaemonSet": V1beta1RollingUpdateDaemonSet,
    "V1beta1RollingUpdateStatefulSetStrategy": V1beta1RollingUpdateStatefulSetStrategy,
    "V1beta1RuleWithOperations": V1beta1RuleWithOperations,
    "V1beta1SelfSubjectAccessReview": V1beta1SelfSubjectAccessReview,
    "V1beta1SelfSubjectAccessReviewSpec": V1beta1SelfSubjectAccessReviewSpec,
    "V1beta1SelfSubjectRulesReview": V1beta1SelfSubjectRulesReview,
    "V1beta1SelfSubjectRulesReviewSpec": V1beta1SelfSubjectRulesReviewSpec,
    "V1beta1StatefulSet": V1beta1StatefulSet,
    "V1beta1StatefulSetCondition": V1beta1StatefulSetCondition,
    "V1beta1StatefulSetList": V1beta1StatefulSetList,
    "V1beta1StatefulSetSpec": V1beta1StatefulSetSpec,
    "V1beta1StatefulSetStatus": V1beta1StatefulSetStatus,
    "V1beta1StatefulSetUpdateStrategy": V1beta1StatefulSetUpdateStrategy,
    "V1beta1StorageClass": V1beta1StorageClass,
    "V1beta1StorageClassList": V1beta1StorageClassList,
    "V1beta1Subject": V1beta1Subject,
    "V1beta1SubjectAccessReview": V1beta1SubjectAccessReview,
    "V1beta1SubjectAccessReviewSpec": V1beta1SubjectAccessReviewSpec,
    "V1beta1SubjectAccessReviewStatus": V1beta1SubjectAccessReviewStatus,
    "V1beta1SubjectRulesReviewStatus": V1beta1SubjectRulesReviewStatus,
    "V1beta1TokenReview": V1beta1TokenReview,
    "V1beta1TokenReviewSpec": V1beta1TokenReviewSpec,
    "V1beta1TokenReviewStatus": V1beta1TokenReviewStatus,
    "V1beta1UserInfo": V1beta1UserInfo,
    "V1beta1ValidatingWebhookConfiguration": V1beta1ValidatingWebhookConfiguration,
    "V1beta1ValidatingWebhookConfigurationList": V1beta1ValidatingWebhookConfigurationList,
    "V1beta1VolumeAttachment": V1beta1VolumeAttachment,
    "V1beta1VolumeAttachmentList": V1beta1VolumeAttachmentList,
    "V1beta1VolumeAttachmentSource": V1beta1VolumeAttachmentSource,
    "V1beta1VolumeAttachmentSpec": V1beta1VolumeAttachmentSpec,
    "V1beta1VolumeAttachmentStatus": V1beta1VolumeAttachmentStatus,
    "V1beta1VolumeError": V1beta1VolumeError,
    "V1beta1Webhook": V1beta1Webhook,
    "V1beta2ControllerRevision": V1beta2ControllerRevision,
    "V1beta2ControllerRevisionList": V1beta2ControllerRevisionList,
    "V1beta2DaemonSet": V1beta2DaemonSet,
    "V1beta2DaemonSetCondition": V1beta2DaemonSetCondition,
    "V1beta2DaemonSetList": V1beta2DaemonSetList,
    "V1beta2DaemonSetSpec": V1beta2DaemonSetSpec,
    "V1beta2DaemonSetStatus": V1beta2DaemonSetStatus,
    "V1beta2DaemonSetUpdateStrategy": V1beta2DaemonSetUpdateStrategy,
    "V1beta2Deployment": V1beta2Deployment,
    "V1beta2DeploymentCondition": V1beta2DeploymentCondition,
    "V1beta2DeploymentList": V1beta2DeploymentList,
    "V1beta2DeploymentSpec": V1beta2DeploymentSpec,
    "V1beta2DeploymentStatus": V1beta2DeploymentStatus,
    "V1beta2DeploymentStrategy": V1beta2DeploymentStrategy,
    "V1beta2ReplicaSet": V1beta2ReplicaSet,
    "V1beta2ReplicaSetCondition": V1beta2ReplicaSetCondition,
    "V1beta2ReplicaSetList": V1beta2ReplicaSetList,
    "V1beta2ReplicaSetSpec": V1beta2ReplicaSetSpec,
    "V1beta2ReplicaSetStatus": V1beta2ReplicaSetStatus,
    "V1beta2RollingUpdateDaemonSet": V1beta2RollingUpdateDaemonSet,
    "V1beta2RollingUpdateDeployment": V1beta2RollingUpdateDeployment,
    "V1beta2RollingUpdateStatefulSetStrategy": V1beta2RollingUpdateStatefulSetStrategy,
    "V1beta2Scale": V1beta2Scale,
    "V1beta2ScaleSpec": V1beta2ScaleSpec,
    "V1beta2ScaleStatus": V1beta2ScaleStatus,
    "V1beta2StatefulSet": V1beta2StatefulSet,
    "V1beta2StatefulSetCondition": V1beta2StatefulSetCondition,
    "V1beta2StatefulSetList": V1beta2StatefulSetList,
    "V1beta2StatefulSetSpec": V1beta2StatefulSetSpec,
    "V1beta2StatefulSetStatus": V1beta2StatefulSetStatus,
    "V1beta2StatefulSetUpdateStrategy": V1beta2StatefulSetUpdateStrategy,
    "V2alpha1CronJob": V2alpha1CronJob,
    "V2alpha1CronJobList": V2alpha1CronJobList,
    "V2alpha1CronJobSpec": V2alpha1CronJobSpec,
    "V2alpha1CronJobStatus": V2alpha1CronJobStatus,
    "V2alpha1JobTemplateSpec": V2alpha1JobTemplateSpec,
    "V2beta1CrossVersionObjectReference": V2beta1CrossVersionObjectReference,
    "V2beta1ExternalMetricSource": V2beta1ExternalMetricSource,
    "V2beta1ExternalMetricStatus": V2beta1ExternalMetricStatus,
    "V2beta1HorizontalPodAutoscaler": V2beta1HorizontalPodAutoscaler,
    "V2beta1HorizontalPodAutoscalerCondition": V2beta1HorizontalPodAutoscalerCondition,
    "V2beta1HorizontalPodAutoscalerList": V2beta1HorizontalPodAutoscalerList,
    "V2beta1HorizontalPodAutoscalerSpec": V2beta1HorizontalPodAutoscalerSpec,
    "V2beta1HorizontalPodAutoscalerStatus": V2beta1HorizontalPodAutoscalerStatus,
    "V2beta1MetricSpec": V2beta1MetricSpec,
    "V2beta1MetricStatus": V2beta1MetricStatus,
    "V2beta1ObjectMetricSource": V2beta1ObjectMetricSource,
    "V2beta1ObjectMetricStatus": V2beta1ObjectMetricStatus,
    "V2beta1PodsMetricSource": V2beta1PodsMetricSource,
    "V2beta1PodsMetricStatus": V2beta1PodsMetricStatus,
    "V2beta1ResourceMetricSource": V2beta1ResourceMetricSource,
    "V2beta1ResourceMetricStatus": V2beta1ResourceMetricStatus,
    "V2beta2CrossVersionObjectReference": V2beta2CrossVersionObjectReference,
    "V2beta2ExternalMetricSource": V2beta2ExternalMetricSource,
    "V2beta2ExternalMetricStatus": V2beta2ExternalMetricStatus,
    "V2beta2HorizontalPodAutoscaler": V2beta2HorizontalPodAutoscaler,
    "V2beta2HorizontalPodAutoscalerCondition": V2beta2HorizontalPodAutoscalerCondition,
    "V2beta2HorizontalPodAutoscalerList": V2beta2HorizontalPodAutoscalerList,
    "V2beta2HorizontalPodAutoscalerSpec": V2beta2HorizontalPodAutoscalerSpec,
    "V2beta2HorizontalPodAutoscalerStatus": V2beta2HorizontalPodAutoscalerStatus,
    "V2beta2MetricIdentifier": V2beta2MetricIdentifier,
    "V2beta2MetricSpec": V2beta2MetricSpec,
    "V2beta2MetricStatus": V2beta2MetricStatus,
    "V2beta2MetricTarget": V2beta2MetricTarget,
    "V2beta2MetricValueStatus": V2beta2MetricValueStatus,
    "V2beta2ObjectMetricSource": V2beta2ObjectMetricSource,
    "V2beta2ObjectMetricStatus": V2beta2ObjectMetricStatus,
    "V2beta2PodsMetricSource": V2beta2PodsMetricSource,
    "V2beta2PodsMetricStatus": V2beta2PodsMetricStatus,
    "V2beta2ResourceMetricSource": V2beta2ResourceMetricSource,
    "V2beta2ResourceMetricStatus": V2beta2ResourceMetricStatus,
    "VersionInfo": VersionInfo,
};
class HttpBasicAuth {
    constructor() {
        this.username = '';
        this.password = '';
    }
    applyToRequest(requestOptions) {
        requestOptions.auth = {
            username: this.username, password: this.password
        };
    }
}
exports.HttpBasicAuth = HttpBasicAuth;
class ApiKeyAuth {
    constructor(location, paramName) {
        this.location = location;
        this.paramName = paramName;
        this.apiKey = '';
    }
    applyToRequest(requestOptions) {
        if (this.location == "query") {
            requestOptions.qs[this.paramName] = this.apiKey;
        }
        else if (this.location == "header" && requestOptions && requestOptions.headers) {
            requestOptions.headers[this.paramName] = this.apiKey;
        }
    }
}
exports.ApiKeyAuth = ApiKeyAuth;
class OAuth {
    constructor() {
        this.accessToken = '';
    }
    applyToRequest(requestOptions) {
        if (requestOptions && requestOptions.headers) {
            requestOptions.headers["Authorization"] = "Bearer " + this.accessToken;
        }
    }
}
exports.OAuth = OAuth;
class VoidAuth {
    constructor() {
        this.username = '';
        this.password = '';
    }
    applyToRequest(_) {
        // Do nothing
    }
}
exports.VoidAuth = VoidAuth;
var AdmissionregistrationApiApiKeys;
(function (AdmissionregistrationApiApiKeys) {
    AdmissionregistrationApiApiKeys[AdmissionregistrationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AdmissionregistrationApiApiKeys = exports.AdmissionregistrationApiApiKeys || (exports.AdmissionregistrationApiApiKeys = {}));
class AdmissionregistrationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AdmissionregistrationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AdmissionregistrationApi = AdmissionregistrationApi;
var AdmissionregistrationV1alpha1ApiApiKeys;
(function (AdmissionregistrationV1alpha1ApiApiKeys) {
    AdmissionregistrationV1alpha1ApiApiKeys[AdmissionregistrationV1alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AdmissionregistrationV1alpha1ApiApiKeys = exports.AdmissionregistrationV1alpha1ApiApiKeys || (exports.AdmissionregistrationV1alpha1ApiApiKeys = {}));
class AdmissionregistrationV1alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AdmissionregistrationV1alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create an InitializerConfiguration
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createInitializerConfiguration(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createInitializerConfiguration.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1InitializerConfiguration")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1InitializerConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of InitializerConfiguration
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionInitializerConfiguration(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an InitializerConfiguration
     * @param name name of the InitializerConfiguration
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteInitializerConfiguration(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteInitializerConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind InitializerConfiguration
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listInitializerConfiguration(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1InitializerConfigurationList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified InitializerConfiguration
     * @param name name of the InitializerConfiguration
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchInitializerConfiguration(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchInitializerConfiguration.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchInitializerConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1InitializerConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified InitializerConfiguration
     * @param name name of the InitializerConfiguration
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readInitializerConfiguration(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readInitializerConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1InitializerConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified InitializerConfiguration
     * @param name name of the InitializerConfiguration
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceInitializerConfiguration(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1alpha1/initializerconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceInitializerConfiguration.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceInitializerConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1InitializerConfiguration")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1InitializerConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AdmissionregistrationV1alpha1Api = AdmissionregistrationV1alpha1Api;
var AdmissionregistrationV1beta1ApiApiKeys;
(function (AdmissionregistrationV1beta1ApiApiKeys) {
    AdmissionregistrationV1beta1ApiApiKeys[AdmissionregistrationV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AdmissionregistrationV1beta1ApiApiKeys = exports.AdmissionregistrationV1beta1ApiApiKeys || (exports.AdmissionregistrationV1beta1ApiApiKeys = {}));
class AdmissionregistrationV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AdmissionregistrationV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a MutatingWebhookConfiguration
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createMutatingWebhookConfiguration(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createMutatingWebhookConfiguration.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1MutatingWebhookConfiguration")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1MutatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ValidatingWebhookConfiguration
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createValidatingWebhookConfiguration(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createValidatingWebhookConfiguration.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ValidatingWebhookConfiguration")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ValidatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of MutatingWebhookConfiguration
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionMutatingWebhookConfiguration(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ValidatingWebhookConfiguration
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionValidatingWebhookConfiguration(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a MutatingWebhookConfiguration
     * @param name name of the MutatingWebhookConfiguration
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteMutatingWebhookConfiguration(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteMutatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ValidatingWebhookConfiguration
     * @param name name of the ValidatingWebhookConfiguration
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteValidatingWebhookConfiguration(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteValidatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind MutatingWebhookConfiguration
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listMutatingWebhookConfiguration(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1MutatingWebhookConfigurationList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ValidatingWebhookConfiguration
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listValidatingWebhookConfiguration(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ValidatingWebhookConfigurationList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified MutatingWebhookConfiguration
     * @param name name of the MutatingWebhookConfiguration
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchMutatingWebhookConfiguration(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchMutatingWebhookConfiguration.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchMutatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1MutatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ValidatingWebhookConfiguration
     * @param name name of the ValidatingWebhookConfiguration
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchValidatingWebhookConfiguration(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchValidatingWebhookConfiguration.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchValidatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ValidatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified MutatingWebhookConfiguration
     * @param name name of the MutatingWebhookConfiguration
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readMutatingWebhookConfiguration(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readMutatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1MutatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ValidatingWebhookConfiguration
     * @param name name of the ValidatingWebhookConfiguration
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readValidatingWebhookConfiguration(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readValidatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ValidatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified MutatingWebhookConfiguration
     * @param name name of the MutatingWebhookConfiguration
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceMutatingWebhookConfiguration(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/mutatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceMutatingWebhookConfiguration.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceMutatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1MutatingWebhookConfiguration")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1MutatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ValidatingWebhookConfiguration
     * @param name name of the ValidatingWebhookConfiguration
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceValidatingWebhookConfiguration(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/admissionregistration.k8s.io/v1beta1/validatingwebhookconfigurations/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceValidatingWebhookConfiguration.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceValidatingWebhookConfiguration.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ValidatingWebhookConfiguration")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ValidatingWebhookConfiguration");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AdmissionregistrationV1beta1Api = AdmissionregistrationV1beta1Api;
var ApiextensionsApiApiKeys;
(function (ApiextensionsApiApiKeys) {
    ApiextensionsApiApiKeys[ApiextensionsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ApiextensionsApiApiKeys = exports.ApiextensionsApiApiKeys || (exports.ApiextensionsApiApiKeys = {}));
class ApiextensionsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ApiextensionsApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ApiextensionsApi = ApiextensionsApi;
var ApiextensionsV1beta1ApiApiKeys;
(function (ApiextensionsV1beta1ApiApiKeys) {
    ApiextensionsV1beta1ApiApiKeys[ApiextensionsV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ApiextensionsV1beta1ApiApiKeys = exports.ApiextensionsV1beta1ApiApiKeys || (exports.ApiextensionsV1beta1ApiApiKeys = {}));
class ApiextensionsV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ApiextensionsV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a CustomResourceDefinition
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createCustomResourceDefinition(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createCustomResourceDefinition.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CustomResourceDefinition")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of CustomResourceDefinition
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionCustomResourceDefinition(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteCustomResourceDefinition(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteCustomResourceDefinition.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind CustomResourceDefinition
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listCustomResourceDefinition(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinitionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchCustomResourceDefinition(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchCustomResourceDefinition.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchCustomResourceDefinition.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchCustomResourceDefinitionStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchCustomResourceDefinitionStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchCustomResourceDefinitionStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readCustomResourceDefinition(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readCustomResourceDefinition.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readCustomResourceDefinitionStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readCustomResourceDefinitionStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceCustomResourceDefinition(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceCustomResourceDefinition.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceCustomResourceDefinition.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CustomResourceDefinition")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified CustomResourceDefinition
     * @param name name of the CustomResourceDefinition
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceCustomResourceDefinitionStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceCustomResourceDefinitionStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceCustomResourceDefinitionStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CustomResourceDefinition")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CustomResourceDefinition");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ApiextensionsV1beta1Api = ApiextensionsV1beta1Api;
var ApiregistrationApiApiKeys;
(function (ApiregistrationApiApiKeys) {
    ApiregistrationApiApiKeys[ApiregistrationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ApiregistrationApiApiKeys = exports.ApiregistrationApiApiKeys || (exports.ApiregistrationApiApiKeys = {}));
class ApiregistrationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ApiregistrationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ApiregistrationApi = ApiregistrationApi;
var ApiregistrationV1ApiApiKeys;
(function (ApiregistrationV1ApiApiKeys) {
    ApiregistrationV1ApiApiKeys[ApiregistrationV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ApiregistrationV1ApiApiKeys = exports.ApiregistrationV1ApiApiKeys || (exports.ApiregistrationV1ApiApiKeys = {}));
class ApiregistrationV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ApiregistrationV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create an APIService
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createAPIService(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createAPIService.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1APIService")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an APIService
     * @param name name of the APIService
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteAPIService(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of APIService
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionAPIService(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind APIService
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listAPIService(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIServiceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchAPIService(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchAPIService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchAPIServiceStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchAPIServiceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchAPIServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified APIService
     * @param name name of the APIService
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readAPIService(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified APIService
     * @param name name of the APIService
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readAPIServiceStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readAPIServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceAPIService(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceAPIService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1APIService")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceAPIServiceStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1/apiservices/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceAPIServiceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceAPIServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1APIService")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ApiregistrationV1Api = ApiregistrationV1Api;
var ApiregistrationV1beta1ApiApiKeys;
(function (ApiregistrationV1beta1ApiApiKeys) {
    ApiregistrationV1beta1ApiApiKeys[ApiregistrationV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ApiregistrationV1beta1ApiApiKeys = exports.ApiregistrationV1beta1ApiApiKeys || (exports.ApiregistrationV1beta1ApiApiKeys = {}));
class ApiregistrationV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ApiregistrationV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create an APIService
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createAPIService(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createAPIService.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1APIService")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an APIService
     * @param name name of the APIService
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteAPIService(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of APIService
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionAPIService(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind APIService
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listAPIService(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIServiceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchAPIService(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchAPIService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchAPIServiceStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchAPIServiceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchAPIServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified APIService
     * @param name name of the APIService
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readAPIService(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified APIService
     * @param name name of the APIService
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readAPIServiceStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readAPIServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceAPIService(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceAPIService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceAPIService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1APIService")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified APIService
     * @param name name of the APIService
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceAPIServiceStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apiregistration.k8s.io/v1beta1/apiservices/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceAPIServiceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceAPIServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1APIService")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1APIService");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ApiregistrationV1beta1Api = ApiregistrationV1beta1Api;
var ApisApiApiKeys;
(function (ApisApiApiKeys) {
    ApisApiApiKeys[ApisApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ApisApiApiKeys = exports.ApisApiApiKeys || (exports.ApisApiApiKeys = {}));
class ApisApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ApisApiApiKeys[key]].apiKey = value;
    }
    /**
     * get available API versions
     * @param {*} [options] Override http request options.
     */
    getAPIVersions(options = {}) {
        const localVarPath = this.basePath + '/apis/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroupList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ApisApi = ApisApi;
var AppsApiApiKeys;
(function (AppsApiApiKeys) {
    AppsApiApiKeys[AppsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AppsApiApiKeys = exports.AppsApiApiKeys || (exports.AppsApiApiKeys = {}));
class AppsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AppsApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/apps/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AppsApi = AppsApi;
var AppsV1ApiApiKeys;
(function (AppsV1ApiApiKeys) {
    AppsV1ApiApiKeys[AppsV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AppsV1ApiApiKeys = exports.AppsV1ApiApiKeys || (exports.AppsV1ApiApiKeys = {}));
class AppsV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AppsV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedControllerRevision(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ControllerRevision")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDaemonSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDeployment(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedReplicaSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedStatefulSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedControllerRevision(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDaemonSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedReplicaSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedStatefulSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedControllerRevision(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDaemonSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDeployment(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedReplicaSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedStatefulSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ControllerRevision
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listControllerRevisionForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/controllerrevisions';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ControllerRevisionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind DaemonSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDaemonSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/daemonsets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDeploymentForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/deployments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedControllerRevision(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ControllerRevisionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDaemonSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedReplicaSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedStatefulSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicaSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listReplicaSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/replicasets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StatefulSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listStatefulSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/statefulsets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedControllerRevision(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDaemonSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDaemonSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedControllerRevision(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDaemonSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDaemonSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeployment(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSetScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSetScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedControllerRevision(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ControllerRevision")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDaemonSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDaemonSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AppsV1Api = AppsV1Api;
var AppsV1beta1ApiApiKeys;
(function (AppsV1beta1ApiApiKeys) {
    AppsV1beta1ApiApiKeys[AppsV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AppsV1beta1ApiApiKeys = exports.AppsV1beta1ApiApiKeys || (exports.AppsV1beta1ApiApiKeys = {}));
class AppsV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AppsV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedControllerRevision(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ControllerRevision")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDeployment(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "AppsV1beta1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create rollback of a Deployment
     * @param name name of the DeploymentRollback
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedDeploymentRollback(name, namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/rollback'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling createNamespacedDeploymentRollback.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDeploymentRollback.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDeploymentRollback.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "AppsV1beta1DeploymentRollback")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedStatefulSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedControllerRevision(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedStatefulSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedControllerRevision(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDeployment(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedStatefulSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ControllerRevision
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listControllerRevisionForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/controllerrevisions';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ControllerRevisionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDeploymentForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/deployments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedControllerRevision(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ControllerRevisionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedStatefulSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StatefulSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listStatefulSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/statefulsets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedControllerRevision(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedControllerRevision(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeployment(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSetScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedControllerRevision(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ControllerRevision")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "AppsV1beta1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "AppsV1beta1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "AppsV1beta1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "AppsV1beta1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "AppsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta1/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AppsV1beta1Api = AppsV1beta1Api;
var AppsV1beta2ApiApiKeys;
(function (AppsV1beta2ApiApiKeys) {
    AppsV1beta2ApiApiKeys[AppsV1beta2ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AppsV1beta2ApiApiKeys = exports.AppsV1beta2ApiApiKeys || (exports.AppsV1beta2ApiApiKeys = {}));
class AppsV1beta2Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AppsV1beta2ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedControllerRevision(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2ControllerRevision")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDaemonSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDeployment(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedReplicaSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedStatefulSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedControllerRevision(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDaemonSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedReplicaSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedStatefulSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedControllerRevision(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDaemonSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDeployment(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedReplicaSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedStatefulSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ControllerRevision
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listControllerRevisionForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/controllerrevisions';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ControllerRevisionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind DaemonSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDaemonSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/daemonsets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDeploymentForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/deployments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedControllerRevision(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedControllerRevision.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ControllerRevisionList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDaemonSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedReplicaSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedStatefulSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedStatefulSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicaSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listReplicaSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/replicasets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StatefulSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listStatefulSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/statefulsets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedControllerRevision(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDaemonSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDaemonSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedStatefulSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedControllerRevision(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDaemonSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDaemonSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeployment(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSetScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSetScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedStatefulSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ControllerRevision
     * @param name name of the ControllerRevision
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedControllerRevision(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/controllerrevisions/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedControllerRevision.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2ControllerRevision")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ControllerRevision");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDaemonSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDaemonSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified StatefulSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified StatefulSet
     * @param name name of the StatefulSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedStatefulSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/apps/v1beta2/namespaces/{namespace}/statefulsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedStatefulSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta2StatefulSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta2StatefulSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AppsV1beta2Api = AppsV1beta2Api;
var AuditregistrationApiApiKeys;
(function (AuditregistrationApiApiKeys) {
    AuditregistrationApiApiKeys[AuditregistrationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuditregistrationApiApiKeys = exports.AuditregistrationApiApiKeys || (exports.AuditregistrationApiApiKeys = {}));
class AuditregistrationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuditregistrationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuditregistrationApi = AuditregistrationApi;
var AuditregistrationV1alpha1ApiApiKeys;
(function (AuditregistrationV1alpha1ApiApiKeys) {
    AuditregistrationV1alpha1ApiApiKeys[AuditregistrationV1alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuditregistrationV1alpha1ApiApiKeys = exports.AuditregistrationV1alpha1ApiApiKeys || (exports.AuditregistrationV1alpha1ApiApiKeys = {}));
class AuditregistrationV1alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuditregistrationV1alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create an AuditSink
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createAuditSink(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createAuditSink.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1AuditSink")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1AuditSink");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an AuditSink
     * @param name name of the AuditSink
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteAuditSink(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteAuditSink.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of AuditSink
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionAuditSink(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind AuditSink
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listAuditSink(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1AuditSinkList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified AuditSink
     * @param name name of the AuditSink
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchAuditSink(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchAuditSink.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchAuditSink.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1AuditSink");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified AuditSink
     * @param name name of the AuditSink
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readAuditSink(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readAuditSink.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1AuditSink");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified AuditSink
     * @param name name of the AuditSink
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceAuditSink(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/auditregistration.k8s.io/v1alpha1/auditsinks/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceAuditSink.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceAuditSink.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1AuditSink")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1AuditSink");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuditregistrationV1alpha1Api = AuditregistrationV1alpha1Api;
var AuthenticationApiApiKeys;
(function (AuthenticationApiApiKeys) {
    AuthenticationApiApiKeys[AuthenticationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuthenticationApiApiKeys = exports.AuthenticationApiApiKeys || (exports.AuthenticationApiApiKeys = {}));
class AuthenticationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuthenticationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/authentication.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuthenticationApi = AuthenticationApi;
var AuthenticationV1ApiApiKeys;
(function (AuthenticationV1ApiApiKeys) {
    AuthenticationV1ApiApiKeys[AuthenticationV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuthenticationV1ApiApiKeys = exports.AuthenticationV1ApiApiKeys || (exports.AuthenticationV1ApiApiKeys = {}));
class AuthenticationV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuthenticationV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a TokenReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createTokenReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authentication.k8s.io/v1/tokenreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createTokenReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1TokenReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1TokenReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/authentication.k8s.io/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuthenticationV1Api = AuthenticationV1Api;
var AuthenticationV1beta1ApiApiKeys;
(function (AuthenticationV1beta1ApiApiKeys) {
    AuthenticationV1beta1ApiApiKeys[AuthenticationV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuthenticationV1beta1ApiApiKeys = exports.AuthenticationV1beta1ApiApiKeys || (exports.AuthenticationV1beta1ApiApiKeys = {}));
class AuthenticationV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuthenticationV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a TokenReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createTokenReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authentication.k8s.io/v1beta1/tokenreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createTokenReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1TokenReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1TokenReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/authentication.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuthenticationV1beta1Api = AuthenticationV1beta1Api;
var AuthorizationApiApiKeys;
(function (AuthorizationApiApiKeys) {
    AuthorizationApiApiKeys[AuthorizationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuthorizationApiApiKeys = exports.AuthorizationApiApiKeys || (exports.AuthorizationApiApiKeys = {}));
class AuthorizationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuthorizationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuthorizationApi = AuthorizationApi;
var AuthorizationV1ApiApiKeys;
(function (AuthorizationV1ApiApiKeys) {
    AuthorizationV1ApiApiKeys[AuthorizationV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuthorizationV1ApiApiKeys = exports.AuthorizationV1ApiApiKeys || (exports.AuthorizationV1ApiApiKeys = {}));
class AuthorizationV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuthorizationV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a LocalSubjectAccessReview
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedLocalSubjectAccessReview(namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1/namespaces/{namespace}/localsubjectaccessreviews'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedLocalSubjectAccessReview.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedLocalSubjectAccessReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1LocalSubjectAccessReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LocalSubjectAccessReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a SelfSubjectAccessReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createSelfSubjectAccessReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1/selfsubjectaccessreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createSelfSubjectAccessReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1SelfSubjectAccessReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1SelfSubjectAccessReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a SelfSubjectRulesReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createSelfSubjectRulesReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1/selfsubjectrulesreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createSelfSubjectRulesReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1SelfSubjectRulesReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1SelfSubjectRulesReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a SubjectAccessReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createSubjectAccessReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1/subjectaccessreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createSubjectAccessReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1SubjectAccessReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1SubjectAccessReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuthorizationV1Api = AuthorizationV1Api;
var AuthorizationV1beta1ApiApiKeys;
(function (AuthorizationV1beta1ApiApiKeys) {
    AuthorizationV1beta1ApiApiKeys[AuthorizationV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AuthorizationV1beta1ApiApiKeys = exports.AuthorizationV1beta1ApiApiKeys || (exports.AuthorizationV1beta1ApiApiKeys = {}));
class AuthorizationV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AuthorizationV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a LocalSubjectAccessReview
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedLocalSubjectAccessReview(namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1beta1/namespaces/{namespace}/localsubjectaccessreviews'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedLocalSubjectAccessReview.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedLocalSubjectAccessReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1LocalSubjectAccessReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1LocalSubjectAccessReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a SelfSubjectAccessReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createSelfSubjectAccessReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1beta1/selfsubjectaccessreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createSelfSubjectAccessReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1SelfSubjectAccessReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1SelfSubjectAccessReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a SelfSubjectRulesReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createSelfSubjectRulesReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1beta1/selfsubjectrulesreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createSelfSubjectRulesReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1SelfSubjectRulesReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1SelfSubjectRulesReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a SubjectAccessReview
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createSubjectAccessReview(body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1beta1/subjectaccessreviews';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createSubjectAccessReview.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1SubjectAccessReview")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1SubjectAccessReview");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/authorization.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AuthorizationV1beta1Api = AuthorizationV1beta1Api;
var AutoscalingApiApiKeys;
(function (AutoscalingApiApiKeys) {
    AutoscalingApiApiKeys[AutoscalingApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AutoscalingApiApiKeys = exports.AutoscalingApiApiKeys || (exports.AutoscalingApiApiKeys = {}));
class AutoscalingApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AutoscalingApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AutoscalingApi = AutoscalingApi;
var AutoscalingV1ApiApiKeys;
(function (AutoscalingV1ApiApiKeys) {
    AutoscalingV1ApiApiKeys[AutoscalingV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AutoscalingV1ApiApiKeys = exports.AutoscalingV1ApiApiKeys || (exports.AutoscalingV1ApiApiKeys = {}));
class AutoscalingV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AutoscalingV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedHorizontalPodAutoscaler(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedHorizontalPodAutoscaler(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedHorizontalPodAutoscaler(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind HorizontalPodAutoscaler
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listHorizontalPodAutoscalerForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/horizontalpodautoscalers';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscalerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedHorizontalPodAutoscaler(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscalerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedHorizontalPodAutoscaler(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedHorizontalPodAutoscalerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedHorizontalPodAutoscaler(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedHorizontalPodAutoscalerStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedHorizontalPodAutoscaler(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedHorizontalPodAutoscalerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AutoscalingV1Api = AutoscalingV1Api;
var AutoscalingV2beta1ApiApiKeys;
(function (AutoscalingV2beta1ApiApiKeys) {
    AutoscalingV2beta1ApiApiKeys[AutoscalingV2beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AutoscalingV2beta1ApiApiKeys = exports.AutoscalingV2beta1ApiApiKeys || (exports.AutoscalingV2beta1ApiApiKeys = {}));
class AutoscalingV2beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AutoscalingV2beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedHorizontalPodAutoscaler(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2beta1HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedHorizontalPodAutoscaler(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedHorizontalPodAutoscaler(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind HorizontalPodAutoscaler
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listHorizontalPodAutoscalerForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/horizontalpodautoscalers';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscalerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedHorizontalPodAutoscaler(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscalerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedHorizontalPodAutoscaler(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedHorizontalPodAutoscalerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedHorizontalPodAutoscaler(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedHorizontalPodAutoscalerStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedHorizontalPodAutoscaler(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2beta1HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedHorizontalPodAutoscalerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta1/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2beta1HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta1HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AutoscalingV2beta1Api = AutoscalingV2beta1Api;
var AutoscalingV2beta2ApiApiKeys;
(function (AutoscalingV2beta2ApiApiKeys) {
    AutoscalingV2beta2ApiApiKeys[AutoscalingV2beta2ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(AutoscalingV2beta2ApiApiKeys = exports.AutoscalingV2beta2ApiApiKeys || (exports.AutoscalingV2beta2ApiApiKeys = {}));
class AutoscalingV2beta2Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[AutoscalingV2beta2ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedHorizontalPodAutoscaler(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2beta2HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedHorizontalPodAutoscaler(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedHorizontalPodAutoscaler(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind HorizontalPodAutoscaler
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listHorizontalPodAutoscalerForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/horizontalpodautoscalers';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscalerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedHorizontalPodAutoscaler(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedHorizontalPodAutoscaler.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscalerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedHorizontalPodAutoscaler(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedHorizontalPodAutoscalerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedHorizontalPodAutoscaler(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedHorizontalPodAutoscalerStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedHorizontalPodAutoscaler(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedHorizontalPodAutoscaler.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2beta2HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified HorizontalPodAutoscaler
     * @param name name of the HorizontalPodAutoscaler
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedHorizontalPodAutoscalerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/autoscaling/v2beta2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedHorizontalPodAutoscalerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2beta2HorizontalPodAutoscaler")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2beta2HorizontalPodAutoscaler");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.AutoscalingV2beta2Api = AutoscalingV2beta2Api;
var BatchApiApiKeys;
(function (BatchApiApiKeys) {
    BatchApiApiKeys[BatchApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(BatchApiApiKeys = exports.BatchApiApiKeys || (exports.BatchApiApiKeys = {}));
class BatchApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[BatchApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/batch/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.BatchApi = BatchApi;
var BatchV1ApiApiKeys;
(function (BatchV1ApiApiKeys) {
    BatchV1ApiApiKeys[BatchV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(BatchV1ApiApiKeys = exports.BatchV1ApiApiKeys || (exports.BatchV1ApiApiKeys = {}));
class BatchV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[BatchV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedJob(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Job")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedJob(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedJob(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Job
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listJobForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/jobs';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1JobList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedJob(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1JobList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedJob(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedJobStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedJobStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedJob(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedJobStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedJob(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Job")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Job
     * @param name name of the Job
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedJobStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1/namespaces/{namespace}/jobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedJobStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Job")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Job");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.BatchV1Api = BatchV1Api;
var BatchV1beta1ApiApiKeys;
(function (BatchV1beta1ApiApiKeys) {
    BatchV1beta1ApiApiKeys[BatchV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(BatchV1beta1ApiApiKeys = exports.BatchV1beta1ApiApiKeys || (exports.BatchV1beta1ApiApiKeys = {}));
class BatchV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[BatchV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedCronJob(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedCronJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedCronJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CronJob")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedCronJob(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedCronJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedCronJob(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind CronJob
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listCronJobForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/cronjobs';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJobList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedCronJob(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedCronJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJobList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCronJob(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCronJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCronJobStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCronJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCronJobStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCronJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedCronJob(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedCronJobStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedCronJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedCronJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCronJob(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCronJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CronJob")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCronJobStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v1beta1/namespaces/{namespace}/cronjobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCronJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCronJobStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCronJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CronJob")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.BatchV1beta1Api = BatchV1beta1Api;
var BatchV2alpha1ApiApiKeys;
(function (BatchV2alpha1ApiApiKeys) {
    BatchV2alpha1ApiApiKeys[BatchV2alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(BatchV2alpha1ApiApiKeys = exports.BatchV2alpha1ApiApiKeys || (exports.BatchV2alpha1ApiApiKeys = {}));
class BatchV2alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[BatchV2alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedCronJob(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedCronJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedCronJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2alpha1CronJob")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedCronJob(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedCronJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedCronJob(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind CronJob
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listCronJobForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/cronjobs';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJobList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedCronJob(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedCronJob.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJobList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCronJob(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCronJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCronJobStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCronJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCronJobStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCronJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedCronJob(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedCronJobStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedCronJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedCronJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCronJob(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCronJob.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCronJob.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCronJob.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2alpha1CronJob")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified CronJob
     * @param name name of the CronJob
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCronJobStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/batch/v2alpha1/namespaces/{namespace}/cronjobs/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCronJobStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCronJobStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCronJobStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V2alpha1CronJob")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V2alpha1CronJob");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.BatchV2alpha1Api = BatchV2alpha1Api;
var CertificatesApiApiKeys;
(function (CertificatesApiApiKeys) {
    CertificatesApiApiKeys[CertificatesApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CertificatesApiApiKeys = exports.CertificatesApiApiKeys || (exports.CertificatesApiApiKeys = {}));
class CertificatesApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CertificatesApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CertificatesApi = CertificatesApi;
var CertificatesV1beta1ApiApiKeys;
(function (CertificatesV1beta1ApiApiKeys) {
    CertificatesV1beta1ApiApiKeys[CertificatesV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CertificatesV1beta1ApiApiKeys = exports.CertificatesV1beta1ApiApiKeys || (exports.CertificatesV1beta1ApiApiKeys = {}));
class CertificatesV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CertificatesV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a CertificateSigningRequest
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createCertificateSigningRequest(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createCertificateSigningRequest.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CertificateSigningRequest")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteCertificateSigningRequest(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteCertificateSigningRequest.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of CertificateSigningRequest
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionCertificateSigningRequest(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind CertificateSigningRequest
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listCertificateSigningRequest(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequestList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchCertificateSigningRequest(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchCertificateSigningRequest.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchCertificateSigningRequest.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchCertificateSigningRequestStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchCertificateSigningRequestStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchCertificateSigningRequestStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readCertificateSigningRequest(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readCertificateSigningRequest.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readCertificateSigningRequestStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readCertificateSigningRequestStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceCertificateSigningRequest(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceCertificateSigningRequest.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceCertificateSigningRequest.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CertificateSigningRequest")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace approval of the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    replaceCertificateSigningRequestApproval(name, body, dryRun, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}/approval'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceCertificateSigningRequestApproval.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceCertificateSigningRequestApproval.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CertificateSigningRequest")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified CertificateSigningRequest
     * @param name name of the CertificateSigningRequest
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceCertificateSigningRequestStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/certificates.k8s.io/v1beta1/certificatesigningrequests/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceCertificateSigningRequestStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceCertificateSigningRequestStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1CertificateSigningRequest")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1CertificateSigningRequest");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CertificatesV1beta1Api = CertificatesV1beta1Api;
var CoordinationApiApiKeys;
(function (CoordinationApiApiKeys) {
    CoordinationApiApiKeys[CoordinationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CoordinationApiApiKeys = exports.CoordinationApiApiKeys || (exports.CoordinationApiApiKeys = {}));
class CoordinationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CoordinationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CoordinationApi = CoordinationApi;
var CoordinationV1beta1ApiApiKeys;
(function (CoordinationV1beta1ApiApiKeys) {
    CoordinationV1beta1ApiApiKeys[CoordinationV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CoordinationV1beta1ApiApiKeys = exports.CoordinationV1beta1ApiApiKeys || (exports.CoordinationV1beta1ApiApiKeys = {}));
class CoordinationV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CoordinationV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedLease(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedLease.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedLease.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Lease")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Lease");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedLease(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedLease.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Lease
     * @param name name of the Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedLease(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedLease.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedLease.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Lease
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listLeaseForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/leases';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1LeaseList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedLease(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedLease.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1LeaseList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Lease
     * @param name name of the Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedLease(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedLease.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedLease.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedLease.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Lease");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Lease
     * @param name name of the Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedLease(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedLease.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedLease.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Lease");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Lease
     * @param name name of the Lease
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedLease(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/coordination.k8s.io/v1beta1/namespaces/{namespace}/leases/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedLease.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedLease.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedLease.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Lease")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Lease");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CoordinationV1beta1Api = CoordinationV1beta1Api;
var CoreApiApiKeys;
(function (CoreApiApiKeys) {
    CoreApiApiKeys[CoreApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CoreApiApiKeys = exports.CoreApiApiKeys || (exports.CoreApiApiKeys = {}));
class CoreApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CoreApiApiKeys[key]].apiKey = value;
    }
    /**
     * get available API versions
     * @param {*} [options] Override http request options.
     */
    getAPIVersions(options = {}) {
        const localVarPath = this.basePath + '/api/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIVersions");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CoreApi = CoreApi;
var CoreV1ApiApiKeys;
(function (CoreV1ApiApiKeys) {
    CoreV1ApiApiKeys[CoreV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CoreV1ApiApiKeys = exports.CoreV1ApiApiKeys || (exports.CoreV1ApiApiKeys = {}));
class CoreV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CoreV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * connect DELETE requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectDeleteNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectDeleteNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectDeleteNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect DELETE requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectDeleteNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectDeleteNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectDeleteNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectDeleteNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect DELETE requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectDeleteNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectDeleteNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectDeleteNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect DELETE requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectDeleteNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectDeleteNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectDeleteNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectDeleteNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect DELETE requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectDeleteNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectDeleteNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect DELETE requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectDeleteNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectDeleteNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectDeleteNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to attach of Pod
     * @param name name of the PodAttachOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param container The container in which to execute the command. Defaults to only container if there is only one container in the pod.
     * @param stderr Stderr if true indicates that stderr is to be redirected for the attach call. Defaults to true.
     * @param stdin Stdin if true, redirects the standard input stream of the pod for this call. Defaults to false.
     * @param stdout Stdout if true indicates that stdout is to be redirected for the attach call. Defaults to true.
     * @param tty TTY if true indicates that a tty will be allocated for the attach call. This is passed through the container runtime so the tty is allocated on the worker node by the container runtime. Defaults to false.
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedPodAttach(name, namespace, container, stderr, stdin, stdout, tty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/attach'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedPodAttach.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedPodAttach.');
        }
        if (container !== undefined) {
            localVarQueryParameters['container'] = ObjectSerializer.serialize(container, "string");
        }
        if (stderr !== undefined) {
            localVarQueryParameters['stderr'] = ObjectSerializer.serialize(stderr, "boolean");
        }
        if (stdin !== undefined) {
            localVarQueryParameters['stdin'] = ObjectSerializer.serialize(stdin, "boolean");
        }
        if (stdout !== undefined) {
            localVarQueryParameters['stdout'] = ObjectSerializer.serialize(stdout, "boolean");
        }
        if (tty !== undefined) {
            localVarQueryParameters['tty'] = ObjectSerializer.serialize(tty, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to exec of Pod
     * @param name name of the PodExecOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param command Command is the remote command to execute. argv array. Not executed within a shell.
     * @param container Container in which to execute the command. Defaults to only container if there is only one container in the pod.
     * @param stderr Redirect the standard error stream of the pod for this call. Defaults to true.
     * @param stdin Redirect the standard input stream of the pod for this call. Defaults to false.
     * @param stdout Redirect the standard output stream of the pod for this call. Defaults to true.
     * @param tty TTY if true indicates that a tty will be allocated for the exec call. Defaults to false.
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedPodExec(name, namespace, command, container, stderr, stdin, stdout, tty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/exec'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedPodExec.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedPodExec.');
        }
        if (command !== undefined) {
            localVarQueryParameters['command'] = ObjectSerializer.serialize(command, "string");
        }
        if (container !== undefined) {
            localVarQueryParameters['container'] = ObjectSerializer.serialize(container, "string");
        }
        if (stderr !== undefined) {
            localVarQueryParameters['stderr'] = ObjectSerializer.serialize(stderr, "boolean");
        }
        if (stdin !== undefined) {
            localVarQueryParameters['stdin'] = ObjectSerializer.serialize(stdin, "boolean");
        }
        if (stdout !== undefined) {
            localVarQueryParameters['stdout'] = ObjectSerializer.serialize(stdout, "boolean");
        }
        if (tty !== undefined) {
            localVarQueryParameters['tty'] = ObjectSerializer.serialize(tty, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to portforward of Pod
     * @param name name of the PodPortForwardOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param ports List of ports to forward Required when using WebSockets
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedPodPortforward(name, namespace, ports, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/portforward'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedPodPortforward.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedPodPortforward.');
        }
        if (ports !== undefined) {
            localVarQueryParameters['ports'] = ObjectSerializer.serialize(ports, "number");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectGetNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectGetNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectGetNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectGetNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectGetNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect GET requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectGetNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectGetNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectGetNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect HEAD requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectHeadNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectHeadNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectHeadNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'HEAD',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect HEAD requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectHeadNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectHeadNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectHeadNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectHeadNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'HEAD',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect HEAD requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectHeadNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectHeadNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectHeadNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'HEAD',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect HEAD requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectHeadNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectHeadNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectHeadNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectHeadNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'HEAD',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect HEAD requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectHeadNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectHeadNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'HEAD',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect HEAD requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectHeadNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectHeadNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectHeadNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'HEAD',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect OPTIONS requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectOptionsNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectOptionsNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectOptionsNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'OPTIONS',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect OPTIONS requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectOptionsNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectOptionsNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectOptionsNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectOptionsNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'OPTIONS',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect OPTIONS requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectOptionsNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectOptionsNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectOptionsNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'OPTIONS',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect OPTIONS requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectOptionsNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectOptionsNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectOptionsNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectOptionsNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'OPTIONS',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect OPTIONS requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectOptionsNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectOptionsNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'OPTIONS',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect OPTIONS requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectOptionsNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectOptionsNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectOptionsNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'OPTIONS',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PATCH requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectPatchNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPatchNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPatchNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PATCH requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectPatchNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPatchNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPatchNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPatchNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PATCH requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectPatchNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPatchNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPatchNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PATCH requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectPatchNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPatchNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPatchNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPatchNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PATCH requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectPatchNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPatchNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PATCH requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectPatchNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPatchNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPatchNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to attach of Pod
     * @param name name of the PodAttachOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param container The container in which to execute the command. Defaults to only container if there is only one container in the pod.
     * @param stderr Stderr if true indicates that stderr is to be redirected for the attach call. Defaults to true.
     * @param stdin Stdin if true, redirects the standard input stream of the pod for this call. Defaults to false.
     * @param stdout Stdout if true indicates that stdout is to be redirected for the attach call. Defaults to true.
     * @param tty TTY if true indicates that a tty will be allocated for the attach call. This is passed through the container runtime so the tty is allocated on the worker node by the container runtime. Defaults to false.
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedPodAttach(name, namespace, container, stderr, stdin, stdout, tty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/attach'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedPodAttach.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedPodAttach.');
        }
        if (container !== undefined) {
            localVarQueryParameters['container'] = ObjectSerializer.serialize(container, "string");
        }
        if (stderr !== undefined) {
            localVarQueryParameters['stderr'] = ObjectSerializer.serialize(stderr, "boolean");
        }
        if (stdin !== undefined) {
            localVarQueryParameters['stdin'] = ObjectSerializer.serialize(stdin, "boolean");
        }
        if (stdout !== undefined) {
            localVarQueryParameters['stdout'] = ObjectSerializer.serialize(stdout, "boolean");
        }
        if (tty !== undefined) {
            localVarQueryParameters['tty'] = ObjectSerializer.serialize(tty, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to exec of Pod
     * @param name name of the PodExecOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param command Command is the remote command to execute. argv array. Not executed within a shell.
     * @param container Container in which to execute the command. Defaults to only container if there is only one container in the pod.
     * @param stderr Redirect the standard error stream of the pod for this call. Defaults to true.
     * @param stdin Redirect the standard input stream of the pod for this call. Defaults to false.
     * @param stdout Redirect the standard output stream of the pod for this call. Defaults to true.
     * @param tty TTY if true indicates that a tty will be allocated for the exec call. Defaults to false.
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedPodExec(name, namespace, command, container, stderr, stdin, stdout, tty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/exec'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedPodExec.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedPodExec.');
        }
        if (command !== undefined) {
            localVarQueryParameters['command'] = ObjectSerializer.serialize(command, "string");
        }
        if (container !== undefined) {
            localVarQueryParameters['container'] = ObjectSerializer.serialize(container, "string");
        }
        if (stderr !== undefined) {
            localVarQueryParameters['stderr'] = ObjectSerializer.serialize(stderr, "boolean");
        }
        if (stdin !== undefined) {
            localVarQueryParameters['stdin'] = ObjectSerializer.serialize(stdin, "boolean");
        }
        if (stdout !== undefined) {
            localVarQueryParameters['stdout'] = ObjectSerializer.serialize(stdout, "boolean");
        }
        if (tty !== undefined) {
            localVarQueryParameters['tty'] = ObjectSerializer.serialize(tty, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to portforward of Pod
     * @param name name of the PodPortForwardOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param ports List of ports to forward Required when using WebSockets
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedPodPortforward(name, namespace, ports, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/portforward'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedPodPortforward.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedPodPortforward.');
        }
        if (ports !== undefined) {
            localVarQueryParameters['ports'] = ObjectSerializer.serialize(ports, "number");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPostNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectPostNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPostNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPostNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectPostNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect POST requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectPostNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPostNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPostNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PUT requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectPutNamespacedPodProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPutNamespacedPodProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPutNamespacedPodProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PUT requests to proxy of Pod
     * @param name name of the PodProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to pod.
     * @param {*} [options] Override http request options.
     */
    connectPutNamespacedPodProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPutNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPutNamespacedPodProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPutNamespacedPodProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PUT requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectPutNamespacedServiceProxy(name, namespace, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPutNamespacedServiceProxy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPutNamespacedServiceProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PUT requests to proxy of Service
     * @param name name of the ServiceProxyOptions
     * @param namespace object name and auth scope, such as for teams and projects
     * @param path path to the resource
     * @param path2 Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q&#x3D;user:kimchy. Path is _search?q&#x3D;user:kimchy.
     * @param {*} [options] Override http request options.
     */
    connectPutNamespacedServiceProxyWithPath(name, namespace, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPutNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling connectPutNamespacedServiceProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPutNamespacedServiceProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PUT requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectPutNodeProxy(name, path, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPutNodeProxy.');
        }
        if (path !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * connect PUT requests to proxy of Node
     * @param name name of the NodeProxyOptions
     * @param path path to the resource
     * @param path2 Path is the URL path to use for the current proxy request to node.
     * @param {*} [options] Override http request options.
     */
    connectPutNodeProxyWithPath(name, path, path2, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/proxy/{path}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'path' + '}', encodeURIComponent(String(path)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling connectPutNodeProxyWithPath.');
        }
        // verify required parameter 'path' is not null or undefined
        if (path === null || path === undefined) {
            throw new Error('Required parameter path was null or undefined when calling connectPutNodeProxyWithPath.');
        }
        if (path2 !== undefined) {
            localVarQueryParameters['path'] = ObjectSerializer.serialize(path2, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Namespace
     * @param body
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespace(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespace.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Namespace")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Binding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedBinding(namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/bindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedBinding.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Binding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Binding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedConfigMap(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedConfigMap.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedConfigMap.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ConfigMap")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ConfigMap");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedEndpoints(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedEndpoints.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedEndpoints.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Endpoints")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Endpoints");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create an Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedEvent(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedEvent.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedEvent.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Event")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedLimitRange(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedLimitRange.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedLimitRange.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1LimitRange")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LimitRange");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedPersistentVolumeClaim(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPersistentVolumeClaim.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PersistentVolumeClaim")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedPod(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPod.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPod.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Pod")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create binding of a Pod
     * @param name name of the Binding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedPodBinding(name, namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/binding'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling createNamespacedPodBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPodBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPodBinding.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Binding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Binding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create eviction of a Pod
     * @param name name of the Eviction
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedPodEviction(name, namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/eviction'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling createNamespacedPodEviction.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPodEviction.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPodEviction.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Eviction")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Eviction");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedPodTemplate(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPodTemplate.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPodTemplate.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PodTemplate")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodTemplate");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedReplicationController(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedReplicationController.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedReplicationController.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ReplicationController")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedResourceQuota(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedResourceQuota.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedResourceQuota.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ResourceQuota")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedSecret(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedSecret.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedSecret.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Secret")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Secret");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedService(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedService.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Service")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedServiceAccount(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedServiceAccount.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedServiceAccount.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ServiceAccount")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceAccount");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Node
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNode(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNode.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Node")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a PersistentVolume
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createPersistentVolume(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createPersistentVolume.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PersistentVolume")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedConfigMap(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedConfigMap.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedEndpoints(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedEndpoints.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedEvent(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedEvent.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedLimitRange(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedLimitRange.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedPersistentVolumeClaim(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedPersistentVolumeClaim.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedPod(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedPod.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedPodTemplate(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedPodTemplate.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedReplicationController(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedReplicationController.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedResourceQuota(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedResourceQuota.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedSecret(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedSecret.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedServiceAccount(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedServiceAccount.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Node
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNode(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PersistentVolume
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionPersistentVolume(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Namespace
     * @param name name of the Namespace
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespace(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespace.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ConfigMap
     * @param name name of the ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedConfigMap(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedConfigMap.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedConfigMap.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete Endpoints
     * @param name name of the Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedEndpoints(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedEndpoints.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedEndpoints.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedEvent(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a LimitRange
     * @param name name of the LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedLimitRange(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedLimitRange.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedLimitRange.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedPersistentVolumeClaim(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedPersistentVolumeClaim.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedPod(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedPod.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedPod.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PodTemplate
     * @param name name of the PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedPodTemplate(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedPodTemplate.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedPodTemplate.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedReplicationController(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedReplicationController.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedReplicationController.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedResourceQuota(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedResourceQuota.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedResourceQuota.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Secret
     * @param name name of the Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedSecret(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedSecret.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedSecret.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedService(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedService.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ServiceAccount
     * @param name name of the ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedServiceAccount(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedServiceAccount.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedServiceAccount.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Node
     * @param name name of the Node
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNode(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNode.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PersistentVolume
     * @param name name of the PersistentVolume
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deletePersistentVolume(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deletePersistentVolume.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/api/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list objects of kind ComponentStatus
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listComponentStatus(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/componentstatuses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ComponentStatusList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ConfigMap
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listConfigMapForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/configmaps';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ConfigMapList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Endpoints
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listEndpointsForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/endpoints';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1EndpointsList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Event
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listEventForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/events';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1EventList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind LimitRange
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listLimitRangeForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/limitranges';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LimitRangeList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Namespace
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespace(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NamespaceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedConfigMap(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedConfigMap.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ConfigMapList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedEndpoints(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedEndpoints.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1EndpointsList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedEvent(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedEvent.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1EventList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedLimitRange(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedLimitRange.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LimitRangeList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedPersistentVolumeClaim(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedPersistentVolumeClaim.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaimList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedPod(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedPod.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedPodTemplate(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedPodTemplate.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodTemplateList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedReplicationController(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedReplicationController.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationControllerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedResourceQuota(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedResourceQuota.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuotaList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedSecret(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedSecret.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1SecretList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedService(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedService.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedServiceAccount(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedServiceAccount.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceAccountList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Node
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNode(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NodeList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PersistentVolume
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPersistentVolume(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PersistentVolumeClaim
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPersistentVolumeClaimForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumeclaims';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaimList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Pod
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPodForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/pods';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodTemplate
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPodTemplateForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/podtemplates';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodTemplateList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicationController
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listReplicationControllerForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/replicationcontrollers';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationControllerList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ResourceQuota
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listResourceQuotaForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/resourcequotas';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuotaList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Secret
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listSecretForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/secrets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1SecretList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ServiceAccount
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listServiceAccountForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/serviceaccounts';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceAccountList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Service
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listServiceForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/api/v1/services';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Namespace
     * @param name name of the Namespace
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespace(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespace.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespace.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Namespace
     * @param name name of the Namespace
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespaceStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespaceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespaceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ConfigMap
     * @param name name of the ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedConfigMap(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedConfigMap.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedConfigMap.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedConfigMap.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ConfigMap");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Endpoints
     * @param name name of the Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedEndpoints(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedEndpoints.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedEndpoints.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedEndpoints.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Endpoints");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedEvent(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedEvent.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified LimitRange
     * @param name name of the LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedLimitRange(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedLimitRange.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedLimitRange.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedLimitRange.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LimitRange");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPersistentVolumeClaim(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPersistentVolumeClaim.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPersistentVolumeClaimStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPersistentVolumeClaimStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPersistentVolumeClaimStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPersistentVolumeClaimStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPod(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPod.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPod.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPod.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPodStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPodStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPodStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPodStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PodTemplate
     * @param name name of the PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPodTemplate(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPodTemplate.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPodTemplate.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPodTemplate.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodTemplate");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicationController(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicationController.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicationController.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicationController.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified ReplicationController
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicationControllerScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicationControllerScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicationControllerScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicationControllerScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicationControllerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicationControllerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicationControllerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicationControllerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedResourceQuota(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedResourceQuota.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedResourceQuota.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedResourceQuota.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedResourceQuotaStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedResourceQuotaStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedResourceQuotaStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedResourceQuotaStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Secret
     * @param name name of the Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedSecret(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedSecret.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedSecret.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedSecret.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Secret");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedService(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedService.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ServiceAccount
     * @param name name of the ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedServiceAccount(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedServiceAccount.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedServiceAccount.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedServiceAccount.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceAccount");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedServiceStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedServiceStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedServiceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Node
     * @param name name of the Node
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNode(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNode.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNode.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Node
     * @param name name of the Node
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNodeStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNodeStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNodeStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PersistentVolume
     * @param name name of the PersistentVolume
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchPersistentVolume(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchPersistentVolume.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchPersistentVolume.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified PersistentVolume
     * @param name name of the PersistentVolume
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchPersistentVolumeStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchPersistentVolumeStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchPersistentVolumeStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ComponentStatus
     * @param name name of the ComponentStatus
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readComponentStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/componentstatuses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readComponentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ComponentStatus");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Namespace
     * @param name name of the Namespace
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespace(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespace.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Namespace
     * @param name name of the Namespace
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespaceStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespaceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ConfigMap
     * @param name name of the ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedConfigMap(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedConfigMap.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedConfigMap.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ConfigMap");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Endpoints
     * @param name name of the Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedEndpoints(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedEndpoints.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedEndpoints.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Endpoints");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedEvent(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified LimitRange
     * @param name name of the LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedLimitRange(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedLimitRange.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedLimitRange.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LimitRange");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPersistentVolumeClaim(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPersistentVolumeClaim.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPersistentVolumeClaimStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPersistentVolumeClaimStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPersistentVolumeClaimStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPod(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPod.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPod.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read log of the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param container The container for which to stream logs. Defaults to only container if there is one container in the pod.
     * @param follow Follow the log stream of the pod. Defaults to false.
     * @param limitBytes If set, the number of bytes to read from the server before terminating the log output. This may not display a complete final line of logging, and may return slightly more or slightly less than the specified limit.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param previous Return previous terminated container logs. Defaults to false.
     * @param sinceSeconds A relative time in seconds before the current time from which to show logs. If this value precedes the time a pod was started, only logs since the pod start will be returned. If this value is in the future, no logs will be returned. Only one of sinceSeconds or sinceTime may be specified.
     * @param tailLines If set, the number of lines from the end of the logs to show. If not specified, logs are shown from the creation of the container or sinceSeconds or sinceTime
     * @param timestamps If true, add an RFC3339 or RFC3339Nano timestamp at the beginning of every line of log output. Defaults to false.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPodLog(name, namespace, container, follow, limitBytes, pretty, previous, sinceSeconds, tailLines, timestamps, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/log'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPodLog.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPodLog.');
        }
        if (container !== undefined) {
            localVarQueryParameters['container'] = ObjectSerializer.serialize(container, "string");
        }
        if (follow !== undefined) {
            localVarQueryParameters['follow'] = ObjectSerializer.serialize(follow, "boolean");
        }
        if (limitBytes !== undefined) {
            localVarQueryParameters['limitBytes'] = ObjectSerializer.serialize(limitBytes, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (previous !== undefined) {
            localVarQueryParameters['previous'] = ObjectSerializer.serialize(previous, "boolean");
        }
        if (sinceSeconds !== undefined) {
            localVarQueryParameters['sinceSeconds'] = ObjectSerializer.serialize(sinceSeconds, "number");
        }
        if (tailLines !== undefined) {
            localVarQueryParameters['tailLines'] = ObjectSerializer.serialize(tailLines, "number");
        }
        if (timestamps !== undefined) {
            localVarQueryParameters['timestamps'] = ObjectSerializer.serialize(timestamps, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "string");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPodStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPodStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPodStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PodTemplate
     * @param name name of the PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPodTemplate(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPodTemplate.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPodTemplate.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodTemplate");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicationController(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicationController.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicationController.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified ReplicationController
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicationControllerScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicationControllerScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicationControllerScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicationControllerStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicationControllerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicationControllerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedResourceQuota(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedResourceQuota.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedResourceQuota.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedResourceQuotaStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedResourceQuotaStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedResourceQuotaStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Secret
     * @param name name of the Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedSecret(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedSecret.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedSecret.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Secret");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedService(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedService.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ServiceAccount
     * @param name name of the ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedServiceAccount(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedServiceAccount.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedServiceAccount.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceAccount");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedServiceStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedServiceStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Node
     * @param name name of the Node
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNode(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNode.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Node
     * @param name name of the Node
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNodeStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNodeStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PersistentVolume
     * @param name name of the PersistentVolume
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readPersistentVolume(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readPersistentVolume.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified PersistentVolume
     * @param name name of the PersistentVolume
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readPersistentVolumeStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readPersistentVolumeStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Namespace
     * @param name name of the Namespace
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespace(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespace.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespace.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Namespace")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace finalize of the specified Namespace
     * @param name name of the Namespace
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    replaceNamespaceFinalize(name, body, dryRun, pretty, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}/finalize'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespaceFinalize.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespaceFinalize.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Namespace")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Namespace
     * @param name name of the Namespace
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespaceStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespaceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespaceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Namespace")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Namespace");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ConfigMap
     * @param name name of the ConfigMap
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedConfigMap(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/configmaps/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedConfigMap.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedConfigMap.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedConfigMap.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ConfigMap")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ConfigMap");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Endpoints
     * @param name name of the Endpoints
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedEndpoints(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/endpoints/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedEndpoints.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedEndpoints.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedEndpoints.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Endpoints")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Endpoints");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedEvent(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedEvent.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Event")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified LimitRange
     * @param name name of the LimitRange
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedLimitRange(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/limitranges/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedLimitRange.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedLimitRange.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedLimitRange.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1LimitRange")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1LimitRange");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPersistentVolumeClaim(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPersistentVolumeClaim.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPersistentVolumeClaim.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PersistentVolumeClaim")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified PersistentVolumeClaim
     * @param name name of the PersistentVolumeClaim
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPersistentVolumeClaimStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPersistentVolumeClaimStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPersistentVolumeClaimStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPersistentVolumeClaimStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PersistentVolumeClaim")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolumeClaim");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPod(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPod.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPod.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPod.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Pod")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Pod
     * @param name name of the Pod
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPodStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/pods/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPodStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPodStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPodStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Pod")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Pod");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PodTemplate
     * @param name name of the PodTemplate
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPodTemplate(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/podtemplates/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPodTemplate.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPodTemplate.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPodTemplate.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PodTemplate")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PodTemplate");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicationController(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicationController.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicationController.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicationController.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ReplicationController")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified ReplicationController
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicationControllerScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicationControllerScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicationControllerScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicationControllerScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified ReplicationController
     * @param name name of the ReplicationController
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicationControllerStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/replicationcontrollers/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicationControllerStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicationControllerStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicationControllerStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ReplicationController")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ReplicationController");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedResourceQuota(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedResourceQuota.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedResourceQuota.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedResourceQuota.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ResourceQuota")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified ResourceQuota
     * @param name name of the ResourceQuota
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedResourceQuotaStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/resourcequotas/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedResourceQuotaStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedResourceQuotaStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedResourceQuotaStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ResourceQuota")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ResourceQuota");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Secret
     * @param name name of the Secret
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedSecret(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/secrets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedSecret.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedSecret.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedSecret.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Secret")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Secret");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedService(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedService.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedService.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedService.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Service")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ServiceAccount
     * @param name name of the ServiceAccount
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedServiceAccount(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/serviceaccounts/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedServiceAccount.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedServiceAccount.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedServiceAccount.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ServiceAccount")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ServiceAccount");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Service
     * @param name name of the Service
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedServiceStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/namespaces/{namespace}/services/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedServiceStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedServiceStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedServiceStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Service")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Service");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Node
     * @param name name of the Node
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNode(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNode.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNode.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Node")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Node
     * @param name name of the Node
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNodeStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/nodes/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNodeStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNodeStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Node")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Node");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PersistentVolume
     * @param name name of the PersistentVolume
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replacePersistentVolume(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replacePersistentVolume.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replacePersistentVolume.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PersistentVolume")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified PersistentVolume
     * @param name name of the PersistentVolume
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replacePersistentVolumeStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/api/v1/persistentvolumes/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replacePersistentVolumeStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replacePersistentVolumeStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1PersistentVolume")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1PersistentVolume");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CoreV1Api = CoreV1Api;
var CustomObjectsApiApiKeys;
(function (CustomObjectsApiApiKeys) {
    CustomObjectsApiApiKeys[CustomObjectsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(CustomObjectsApiApiKeys = exports.CustomObjectsApiApiKeys || (exports.CustomObjectsApiApiKeys = {}));
class CustomObjectsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[CustomObjectsApiApiKeys[key]].apiKey = value;
    }
    /**
     * Creates a cluster scoped Custom object
     * @param group The custom resource&#39;s group name
     * @param version The custom resource&#39;s version
     * @param plural The custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param body The JSON schema of the Resource to create.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createClusterCustomObject(group, version, plural, body, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling createClusterCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling createClusterCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling createClusterCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterCustomObject.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * Creates a namespace scoped Custom object
     * @param group The custom resource&#39;s group name
     * @param version The custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural The custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param body The JSON schema of the Resource to create.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedCustomObject(group, version, namespace, plural, body, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling createNamespacedCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling createNamespacedCustomObject.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling createNamespacedCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedCustomObject.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * Deletes the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom object&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy.
     * @param {*} [options] Override http request options.
     */
    deleteClusterCustomObject(group, version, plural, name, body, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling deleteClusterCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling deleteClusterCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling deleteClusterCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling deleteClusterCustomObject.');
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * Deletes the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedCustomObject(group, version, namespace, plural, name, body, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling deleteNamespacedCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling deleteNamespacedCustomObject.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling deleteNamespacedCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling deleteNamespacedCustomObject.');
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * Returns a cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom object&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param {*} [options] Override http request options.
     */
    getClusterCustomObject(group, version, plural, name, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling getClusterCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling getClusterCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling getClusterCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling getClusterCustomObject.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param {*} [options] Override http request options.
     */
    getClusterCustomObjectScale(group, version, plural, name, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}/scale'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling getClusterCustomObjectScale.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling getClusterCustomObjectScale.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling getClusterCustomObjectScale.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling getClusterCustomObjectScale.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param {*} [options] Override http request options.
     */
    getClusterCustomObjectStatus(group, version, plural, name, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}/status'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling getClusterCustomObjectStatus.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling getClusterCustomObjectStatus.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling getClusterCustomObjectStatus.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling getClusterCustomObjectStatus.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * Returns a namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param {*} [options] Override http request options.
     */
    getNamespacedCustomObject(group, version, namespace, plural, name, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling getNamespacedCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling getNamespacedCustomObject.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling getNamespacedCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling getNamespacedCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling getNamespacedCustomObject.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param {*} [options] Override http request options.
     */
    getNamespacedCustomObjectScale(group, version, namespace, plural, name, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}/scale'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling getNamespacedCustomObjectScale.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling getNamespacedCustomObjectScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling getNamespacedCustomObjectScale.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling getNamespacedCustomObjectScale.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling getNamespacedCustomObjectScale.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param {*} [options] Override http request options.
     */
    getNamespacedCustomObjectStatus(group, version, namespace, plural, name, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}/status'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling getNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling getNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling getNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling getNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling getNamespacedCustomObjectStatus.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch cluster scoped custom objects
     * @param group The custom resource&#39;s group name
     * @param version The custom resource&#39;s version
     * @param plural The custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications.
     * @param {*} [options] Override http request options.
     */
    listClusterCustomObject(group, version, plural, pretty, fieldSelector, labelSelector, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling listClusterCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling listClusterCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling listClusterCustomObject.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch namespace scoped custom objects
     * @param group The custom resource&#39;s group name
     * @param version The custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural The custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications.
     * @param {*} [options] Override http request options.
     */
    listNamespacedCustomObject(group, version, namespace, plural, pretty, fieldSelector, labelSelector, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling listNamespacedCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling listNamespacedCustomObject.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling listNamespacedCustomObject.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * patch the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom object&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body The JSON schema of the Resource to patch.
     * @param {*} [options] Override http request options.
     */
    patchClusterCustomObject(group, version, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling patchClusterCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling patchClusterCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling patchClusterCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterCustomObject.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    patchClusterCustomObjectScale(group, version, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}/scale'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling patchClusterCustomObjectScale.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling patchClusterCustomObjectScale.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling patchClusterCustomObjectScale.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterCustomObjectScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterCustomObjectScale.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    patchClusterCustomObjectStatus(group, version, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}/status'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling patchClusterCustomObjectStatus.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling patchClusterCustomObjectStatus.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling patchClusterCustomObjectStatus.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterCustomObjectStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterCustomObjectStatus.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * patch the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body The JSON schema of the Resource to patch.
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCustomObject(group, version, namespace, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling patchNamespacedCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling patchNamespacedCustomObject.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling patchNamespacedCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCustomObject.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCustomObjectScale(group, version, namespace, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}/scale'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling patchNamespacedCustomObjectScale.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling patchNamespacedCustomObjectScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCustomObjectScale.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling patchNamespacedCustomObjectScale.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCustomObjectScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCustomObjectScale.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    patchNamespacedCustomObjectStatus(group, version, namespace, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}/status'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling patchNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling patchNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling patchNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedCustomObjectStatus.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom object&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body The JSON schema of the Resource to replace.
     * @param {*} [options] Override http request options.
     */
    replaceClusterCustomObject(group, version, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling replaceClusterCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling replaceClusterCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling replaceClusterCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterCustomObject.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified cluster scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    replaceClusterCustomObjectScale(group, version, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}/scale'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling replaceClusterCustomObjectScale.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling replaceClusterCustomObjectScale.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling replaceClusterCustomObjectScale.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterCustomObjectScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterCustomObjectScale.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the cluster scoped specified custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    replaceClusterCustomObjectStatus(group, version, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/{plural}/{name}/status'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling replaceClusterCustomObjectStatus.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling replaceClusterCustomObjectStatus.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling replaceClusterCustomObjectStatus.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterCustomObjectStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterCustomObjectStatus.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body The JSON schema of the Resource to replace.
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCustomObject(group, version, namespace, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling replaceNamespacedCustomObject.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling replaceNamespacedCustomObject.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCustomObject.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling replaceNamespacedCustomObject.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCustomObject.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCustomObject.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCustomObjectScale(group, version, namespace, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}/scale'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling replaceNamespacedCustomObjectScale.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling replaceNamespacedCustomObjectScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCustomObjectScale.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling replaceNamespacedCustomObjectScale.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCustomObjectScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCustomObjectScale.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified namespace scoped custom object
     * @param group the custom resource&#39;s group
     * @param version the custom resource&#39;s version
     * @param namespace The custom resource&#39;s namespace
     * @param plural the custom resource&#39;s plural name. For TPRs this would be lowercase plural kind.
     * @param name the custom object&#39;s name
     * @param body
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedCustomObjectStatus(group, version, namespace, plural, name, body, options = {}) {
        const localVarPath = this.basePath + '/apis/{group}/{version}/namespaces/{namespace}/{plural}/{name}/status'
            .replace('{' + 'group' + '}', encodeURIComponent(String(group)))
            .replace('{' + 'version' + '}', encodeURIComponent(String(version)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)))
            .replace('{' + 'plural' + '}', encodeURIComponent(String(plural)))
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'group' is not null or undefined
        if (group === null || group === undefined) {
            throw new Error('Required parameter group was null or undefined when calling replaceNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'version' is not null or undefined
        if (version === null || version === undefined) {
            throw new Error('Required parameter version was null or undefined when calling replaceNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'plural' is not null or undefined
        if (plural === null || plural === undefined) {
            throw new Error('Required parameter plural was null or undefined when calling replaceNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedCustomObjectStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedCustomObjectStatus.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "any");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.CustomObjectsApi = CustomObjectsApi;
var EventsApiApiKeys;
(function (EventsApiApiKeys) {
    EventsApiApiKeys[EventsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(EventsApiApiKeys = exports.EventsApiApiKeys || (exports.EventsApiApiKeys = {}));
class EventsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[EventsApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.EventsApi = EventsApi;
var EventsV1beta1ApiApiKeys;
(function (EventsV1beta1ApiApiKeys) {
    EventsV1beta1ApiApiKeys[EventsV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(EventsV1beta1ApiApiKeys = exports.EventsV1beta1ApiApiKeys || (exports.EventsV1beta1ApiApiKeys = {}));
class EventsV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[EventsV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create an Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedEvent(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedEvent.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedEvent.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Event")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedEvent(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedEvent.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedEvent(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Event
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listEventForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/events';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1EventList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedEvent(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedEvent.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1EventList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedEvent(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedEvent.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedEvent(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Event
     * @param name name of the Event
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedEvent(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/events.k8s.io/v1beta1/namespaces/{namespace}/events/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedEvent.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedEvent.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedEvent.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Event")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Event");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.EventsV1beta1Api = EventsV1beta1Api;
var ExtensionsApiApiKeys;
(function (ExtensionsApiApiKeys) {
    ExtensionsApiApiKeys[ExtensionsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ExtensionsApiApiKeys = exports.ExtensionsApiApiKeys || (exports.ExtensionsApiApiKeys = {}));
class ExtensionsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ExtensionsApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ExtensionsApi = ExtensionsApi;
var ExtensionsV1beta1ApiApiKeys;
(function (ExtensionsV1beta1ApiApiKeys) {
    ExtensionsV1beta1ApiApiKeys[ExtensionsV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(ExtensionsV1beta1ApiApiKeys = exports.ExtensionsV1beta1ApiApiKeys || (exports.ExtensionsV1beta1ApiApiKeys = {}));
class ExtensionsV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[ExtensionsV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDaemonSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedDeployment(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create rollback of a Deployment
     * @param name name of the DeploymentRollback
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param includeUninitialized If IncludeUninitialized is specified, the object may be returned without completing initialization.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    createNamespacedDeploymentRollback(name, namespace, body, dryRun, includeUninitialized, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/rollback'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling createNamespacedDeploymentRollback.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedDeploymentRollback.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedDeploymentRollback.');
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1DeploymentRollback")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create an Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedIngress(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedIngress.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedIngress.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Ingress")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedNetworkPolicy(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedNetworkPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedNetworkPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1NetworkPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedReplicaSet(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a PodSecurityPolicy
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createPodSecurityPolicy(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createPodSecurityPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1PodSecurityPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDaemonSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedIngress(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedIngress.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedNetworkPolicy(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedNetworkPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedReplicaSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PodSecurityPolicy
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionPodSecurityPolicy(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDaemonSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedDeployment(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete an Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedIngress(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedIngress.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedIngress.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedNetworkPolicy(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedReplicaSet(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deletePodSecurityPolicy(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deletePodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind DaemonSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDaemonSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/daemonsets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listDeploymentForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/deployments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Ingress
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listIngressForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/ingresses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1IngressList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDaemonSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDaemonSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedDeployment(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedDeployment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1DeploymentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedIngress(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedIngress.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1IngressList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedNetworkPolicy(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedNetworkPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1NetworkPolicyList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedReplicaSet(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedReplicaSet.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind NetworkPolicy
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNetworkPolicyForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/networkpolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1NetworkPolicyList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodSecurityPolicy
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPodSecurityPolicy(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1PodSecurityPolicyList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ReplicaSet
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listReplicaSetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/replicasets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDaemonSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDaemonSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedIngress(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedIngress.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedIngress.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedIngress.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedIngressStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedIngressStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedIngressStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedIngressStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedNetworkPolicy(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedNetworkPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicaSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update scale of the specified ReplicationControllerDummy
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedReplicationControllerDummyScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicationcontrollers/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedReplicationControllerDummyScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedReplicationControllerDummyScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedReplicationControllerDummyScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchPodSecurityPolicy(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchPodSecurityPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchPodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDaemonSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDaemonSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeployment(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedDeploymentStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedIngress(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedIngress.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedIngress.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedIngressStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedIngressStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedIngressStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedNetworkPolicy(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSet(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSetScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicaSetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read scale of the specified ReplicationControllerDummy
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedReplicationControllerDummyScale(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicationcontrollers/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedReplicationControllerDummyScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedReplicationControllerDummyScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readPodSecurityPolicy(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readPodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDaemonSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDaemonSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified DaemonSet
     * @param name name of the DaemonSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDaemonSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/daemonsets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDaemonSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1DaemonSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1DaemonSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeployment(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeployment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeployment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified Deployment
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Deployment
     * @param name name of the Deployment
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedDeploymentStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/deployments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedDeploymentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1Deployment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Deployment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedIngress(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedIngress.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedIngress.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedIngress.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Ingress")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified Ingress
     * @param name name of the Ingress
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedIngressStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/ingresses/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedIngressStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedIngressStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedIngressStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Ingress")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Ingress");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedNetworkPolicy(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedNetworkPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1NetworkPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSet(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSet.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified ReplicaSet
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSetScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSetScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified ReplicaSet
     * @param name name of the ReplicaSet
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicaSetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicasets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicaSetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ReplicaSet")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ReplicaSet");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace scale of the specified ReplicationControllerDummy
     * @param name name of the Scale
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedReplicationControllerDummyScale(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/namespaces/{namespace}/replicationcontrollers/{name}/scale'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedReplicationControllerDummyScale.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedReplicationControllerDummyScale.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedReplicationControllerDummyScale.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1Scale")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1Scale");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replacePodSecurityPolicy(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/extensions/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replacePodSecurityPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replacePodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "ExtensionsV1beta1PodSecurityPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "ExtensionsV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.ExtensionsV1beta1Api = ExtensionsV1beta1Api;
var LogsApiApiKeys;
(function (LogsApiApiKeys) {
    LogsApiApiKeys[LogsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(LogsApiApiKeys = exports.LogsApiApiKeys || (exports.LogsApiApiKeys = {}));
class LogsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[LogsApiApiKeys[key]].apiKey = value;
    }
    /**
     *
     * @param logpath path to the log
     * @param {*} [options] Override http request options.
     */
    logFileHandler(logpath, options = {}) {
        const localVarPath = this.basePath + '/logs/{logpath}'
            .replace('{' + 'logpath' + '}', encodeURIComponent(String(logpath)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'logpath' is not null or undefined
        if (logpath === null || logpath === undefined) {
            throw new Error('Required parameter logpath was null or undefined when calling logFileHandler.');
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     *
     * @param {*} [options] Override http request options.
     */
    logFileListHandler(options = {}) {
        const localVarPath = this.basePath + '/logs/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.LogsApi = LogsApi;
var NetworkingApiApiKeys;
(function (NetworkingApiApiKeys) {
    NetworkingApiApiKeys[NetworkingApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(NetworkingApiApiKeys = exports.NetworkingApiApiKeys || (exports.NetworkingApiApiKeys = {}));
class NetworkingApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[NetworkingApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.NetworkingApi = NetworkingApi;
var NetworkingV1ApiApiKeys;
(function (NetworkingV1ApiApiKeys) {
    NetworkingV1ApiApiKeys[NetworkingV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(NetworkingV1ApiApiKeys = exports.NetworkingV1ApiApiKeys || (exports.NetworkingV1ApiApiKeys = {}));
class NetworkingV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[NetworkingV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedNetworkPolicy(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedNetworkPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedNetworkPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1NetworkPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedNetworkPolicy(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedNetworkPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedNetworkPolicy(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedNetworkPolicy(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedNetworkPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NetworkPolicyList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind NetworkPolicy
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNetworkPolicyForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/networkpolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NetworkPolicyList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedNetworkPolicy(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedNetworkPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedNetworkPolicy(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified NetworkPolicy
     * @param name name of the NetworkPolicy
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedNetworkPolicy(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedNetworkPolicy.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedNetworkPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedNetworkPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1NetworkPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1NetworkPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.NetworkingV1Api = NetworkingV1Api;
var PolicyApiApiKeys;
(function (PolicyApiApiKeys) {
    PolicyApiApiKeys[PolicyApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(PolicyApiApiKeys = exports.PolicyApiApiKeys || (exports.PolicyApiApiKeys = {}));
class PolicyApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[PolicyApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/policy/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.PolicyApi = PolicyApi;
var PolicyV1beta1ApiApiKeys;
(function (PolicyV1beta1ApiApiKeys) {
    PolicyV1beta1ApiApiKeys[PolicyV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(PolicyV1beta1ApiApiKeys = exports.PolicyV1beta1ApiApiKeys || (exports.PolicyV1beta1ApiApiKeys = {}));
class PolicyV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[PolicyV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedPodDisruptionBudget(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPodDisruptionBudget.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1PodDisruptionBudget")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a PodSecurityPolicy
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createPodSecurityPolicy(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createPodSecurityPolicy.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "PolicyV1beta1PodSecurityPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "PolicyV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedPodDisruptionBudget(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedPodDisruptionBudget.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PodSecurityPolicy
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionPodSecurityPolicy(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedPodDisruptionBudget(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedPodDisruptionBudget.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deletePodSecurityPolicy(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deletePodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedPodDisruptionBudget(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedPodDisruptionBudget.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudgetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodDisruptionBudget
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPodDisruptionBudgetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/poddisruptionbudgets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudgetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodSecurityPolicy
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPodSecurityPolicy(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "PolicyV1beta1PodSecurityPolicyList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPodDisruptionBudget(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPodDisruptionBudget.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPodDisruptionBudgetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPodDisruptionBudgetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPodDisruptionBudgetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPodDisruptionBudgetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchPodSecurityPolicy(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchPodSecurityPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchPodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "PolicyV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPodDisruptionBudget(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPodDisruptionBudget.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPodDisruptionBudgetStatus(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPodDisruptionBudgetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPodDisruptionBudgetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readPodSecurityPolicy(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readPodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "PolicyV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPodDisruptionBudget(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPodDisruptionBudget.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPodDisruptionBudget.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1PodDisruptionBudget")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified PodDisruptionBudget
     * @param name name of the PodDisruptionBudget
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPodDisruptionBudgetStatus(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/namespaces/{namespace}/poddisruptionbudgets/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPodDisruptionBudgetStatus.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPodDisruptionBudgetStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPodDisruptionBudgetStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1PodDisruptionBudget")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PodDisruptionBudget");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PodSecurityPolicy
     * @param name name of the PodSecurityPolicy
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replacePodSecurityPolicy(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/policy/v1beta1/podsecuritypolicies/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replacePodSecurityPolicy.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replacePodSecurityPolicy.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "PolicyV1beta1PodSecurityPolicy")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "PolicyV1beta1PodSecurityPolicy");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.PolicyV1beta1Api = PolicyV1beta1Api;
var RbacAuthorizationApiApiKeys;
(function (RbacAuthorizationApiApiKeys) {
    RbacAuthorizationApiApiKeys[RbacAuthorizationApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(RbacAuthorizationApiApiKeys = exports.RbacAuthorizationApiApiKeys || (exports.RbacAuthorizationApiApiKeys = {}));
class RbacAuthorizationApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[RbacAuthorizationApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.RbacAuthorizationApi = RbacAuthorizationApi;
var RbacAuthorizationV1ApiApiKeys;
(function (RbacAuthorizationV1ApiApiKeys) {
    RbacAuthorizationV1ApiApiKeys[RbacAuthorizationV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(RbacAuthorizationV1ApiApiKeys = exports.RbacAuthorizationV1ApiApiKeys || (exports.RbacAuthorizationV1ApiApiKeys = {}));
class RbacAuthorizationV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[RbacAuthorizationV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a ClusterRole
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createClusterRole(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ClusterRole")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ClusterRoleBinding
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createClusterRoleBinding(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ClusterRoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedRole(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Role")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedRoleBinding(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1RoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ClusterRole
     * @param name name of the ClusterRole
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteClusterRole(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteClusterRoleBinding(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ClusterRole
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionClusterRole(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ClusterRoleBinding
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionClusterRoleBinding(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedRole(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedRoleBinding(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedRole(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedRoleBinding(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ClusterRole
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listClusterRole(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ClusterRoleBinding
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listClusterRoleBinding(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedRole(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedRoleBinding(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind RoleBinding
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listRoleBindingForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/rolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Role
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listRoleForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/roles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ClusterRole
     * @param name name of the ClusterRole
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchClusterRole(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchClusterRoleBinding(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedRole(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedRoleBinding(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ClusterRole
     * @param name name of the ClusterRole
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readClusterRole(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readClusterRoleBinding(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedRole(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedRoleBinding(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ClusterRole
     * @param name name of the ClusterRole
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceClusterRole(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ClusterRole")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceClusterRoleBinding(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1ClusterRoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedRole(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1Role")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedRoleBinding(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1RoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.RbacAuthorizationV1Api = RbacAuthorizationV1Api;
var RbacAuthorizationV1alpha1ApiApiKeys;
(function (RbacAuthorizationV1alpha1ApiApiKeys) {
    RbacAuthorizationV1alpha1ApiApiKeys[RbacAuthorizationV1alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(RbacAuthorizationV1alpha1ApiApiKeys = exports.RbacAuthorizationV1alpha1ApiApiKeys || (exports.RbacAuthorizationV1alpha1ApiApiKeys = {}));
class RbacAuthorizationV1alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[RbacAuthorizationV1alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a ClusterRole
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createClusterRole(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1ClusterRole")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ClusterRoleBinding
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createClusterRoleBinding(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1ClusterRoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedRole(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1Role")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedRoleBinding(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1RoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ClusterRole
     * @param name name of the ClusterRole
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteClusterRole(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteClusterRoleBinding(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ClusterRole
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionClusterRole(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ClusterRoleBinding
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionClusterRoleBinding(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedRole(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedRoleBinding(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedRole(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedRoleBinding(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ClusterRole
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listClusterRole(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ClusterRoleBinding
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listClusterRoleBinding(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedRole(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedRoleBinding(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind RoleBinding
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listRoleBindingForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/rolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Role
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listRoleForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/roles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ClusterRole
     * @param name name of the ClusterRole
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchClusterRole(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchClusterRoleBinding(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedRole(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedRoleBinding(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ClusterRole
     * @param name name of the ClusterRole
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readClusterRole(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readClusterRoleBinding(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedRole(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedRoleBinding(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ClusterRole
     * @param name name of the ClusterRole
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceClusterRole(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1ClusterRole")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceClusterRoleBinding(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1ClusterRoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedRole(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1Role")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedRoleBinding(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1alpha1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1RoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.RbacAuthorizationV1alpha1Api = RbacAuthorizationV1alpha1Api;
var RbacAuthorizationV1beta1ApiApiKeys;
(function (RbacAuthorizationV1beta1ApiApiKeys) {
    RbacAuthorizationV1beta1ApiApiKeys[RbacAuthorizationV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(RbacAuthorizationV1beta1ApiApiKeys = exports.RbacAuthorizationV1beta1ApiApiKeys || (exports.RbacAuthorizationV1beta1ApiApiKeys = {}));
class RbacAuthorizationV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[RbacAuthorizationV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a ClusterRole
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createClusterRole(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ClusterRole")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a ClusterRoleBinding
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createClusterRoleBinding(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createClusterRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ClusterRoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedRole(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Role")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedRoleBinding(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1RoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ClusterRole
     * @param name name of the ClusterRole
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteClusterRole(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteClusterRoleBinding(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ClusterRole
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionClusterRole(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of ClusterRoleBinding
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionClusterRoleBinding(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedRole(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedRoleBinding(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedRole(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedRoleBinding(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ClusterRole
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listClusterRole(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind ClusterRoleBinding
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listClusterRoleBinding(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedRole(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedRole.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedRoleBinding(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedRoleBinding.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind RoleBinding
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listRoleBindingForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/rolebindings';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleBindingList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind Role
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listRoleForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/roles';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ClusterRole
     * @param name name of the ClusterRole
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchClusterRole(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchClusterRoleBinding(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchClusterRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedRole(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedRoleBinding(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ClusterRole
     * @param name name of the ClusterRole
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readClusterRole(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readClusterRoleBinding(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedRole(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readNamespacedRoleBinding(name, namespace, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ClusterRole
     * @param name name of the ClusterRole
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceClusterRole(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterroles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ClusterRole")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRole");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified ClusterRoleBinding
     * @param name name of the ClusterRoleBinding
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceClusterRoleBinding(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceClusterRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceClusterRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1ClusterRoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1ClusterRoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified Role
     * @param name name of the Role
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedRole(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/roles/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedRole.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedRole.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedRole.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1Role")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1Role");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified RoleBinding
     * @param name name of the RoleBinding
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedRoleBinding(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/rbac.authorization.k8s.io/v1beta1/namespaces/{namespace}/rolebindings/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedRoleBinding.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1RoleBinding")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1RoleBinding");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.RbacAuthorizationV1beta1Api = RbacAuthorizationV1beta1Api;
var SchedulingApiApiKeys;
(function (SchedulingApiApiKeys) {
    SchedulingApiApiKeys[SchedulingApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(SchedulingApiApiKeys = exports.SchedulingApiApiKeys || (exports.SchedulingApiApiKeys = {}));
class SchedulingApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[SchedulingApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.SchedulingApi = SchedulingApi;
var SchedulingV1alpha1ApiApiKeys;
(function (SchedulingV1alpha1ApiApiKeys) {
    SchedulingV1alpha1ApiApiKeys[SchedulingV1alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(SchedulingV1alpha1ApiApiKeys = exports.SchedulingV1alpha1ApiApiKeys || (exports.SchedulingV1alpha1ApiApiKeys = {}));
class SchedulingV1alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[SchedulingV1alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a PriorityClass
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createPriorityClass(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createPriorityClass.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1PriorityClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PriorityClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionPriorityClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PriorityClass
     * @param name name of the PriorityClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deletePriorityClass(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deletePriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PriorityClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPriorityClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PriorityClassList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PriorityClass
     * @param name name of the PriorityClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchPriorityClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchPriorityClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchPriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PriorityClass
     * @param name name of the PriorityClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readPriorityClass(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readPriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PriorityClass
     * @param name name of the PriorityClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replacePriorityClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1alpha1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replacePriorityClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replacePriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1PriorityClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.SchedulingV1alpha1Api = SchedulingV1alpha1Api;
var SchedulingV1beta1ApiApiKeys;
(function (SchedulingV1beta1ApiApiKeys) {
    SchedulingV1beta1ApiApiKeys[SchedulingV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(SchedulingV1beta1ApiApiKeys = exports.SchedulingV1beta1ApiApiKeys || (exports.SchedulingV1beta1ApiApiKeys = {}));
class SchedulingV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[SchedulingV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a PriorityClass
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createPriorityClass(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createPriorityClass.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1PriorityClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PriorityClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionPriorityClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PriorityClass
     * @param name name of the PriorityClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deletePriorityClass(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deletePriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PriorityClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPriorityClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PriorityClassList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PriorityClass
     * @param name name of the PriorityClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchPriorityClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchPriorityClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchPriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PriorityClass
     * @param name name of the PriorityClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readPriorityClass(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readPriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PriorityClass
     * @param name name of the PriorityClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replacePriorityClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/scheduling.k8s.io/v1beta1/priorityclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replacePriorityClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replacePriorityClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1PriorityClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1PriorityClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.SchedulingV1beta1Api = SchedulingV1beta1Api;
var SettingsApiApiKeys;
(function (SettingsApiApiKeys) {
    SettingsApiApiKeys[SettingsApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(SettingsApiApiKeys = exports.SettingsApiApiKeys || (exports.SettingsApiApiKeys = {}));
class SettingsApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[SettingsApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.SettingsApi = SettingsApi;
var SettingsV1alpha1ApiApiKeys;
(function (SettingsV1alpha1ApiApiKeys) {
    SettingsV1alpha1ApiApiKeys[SettingsV1alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(SettingsV1alpha1ApiApiKeys = exports.SettingsV1alpha1ApiApiKeys || (exports.SettingsV1alpha1ApiApiKeys = {}));
class SettingsV1alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[SettingsV1alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createNamespacedPodPreset(namespace, body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling createNamespacedPodPreset.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createNamespacedPodPreset.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1PodPreset")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PodPreset");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionNamespacedPodPreset(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteCollectionNamespacedPodPreset.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a PodPreset
     * @param name name of the PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteNamespacedPodPreset(name, namespace, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteNamespacedPodPreset.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling deleteNamespacedPodPreset.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listNamespacedPodPreset(namespace, includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets'
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling listNamespacedPodPreset.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PodPresetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind PodPreset
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listPodPresetForAllNamespaces(_continue, fieldSelector, includeUninitialized, labelSelector, limit, pretty, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/podpresets';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PodPresetList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified PodPreset
     * @param name name of the PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchNamespacedPodPreset(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchNamespacedPodPreset.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling patchNamespacedPodPreset.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchNamespacedPodPreset.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PodPreset");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified PodPreset
     * @param name name of the PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readNamespacedPodPreset(name, namespace, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readNamespacedPodPreset.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling readNamespacedPodPreset.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PodPreset");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified PodPreset
     * @param name name of the PodPreset
     * @param namespace object name and auth scope, such as for teams and projects
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceNamespacedPodPreset(name, namespace, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/settings.k8s.io/v1alpha1/namespaces/{namespace}/podpresets/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)))
            .replace('{' + 'namespace' + '}', encodeURIComponent(String(namespace)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceNamespacedPodPreset.');
        }
        // verify required parameter 'namespace' is not null or undefined
        if (namespace === null || namespace === undefined) {
            throw new Error('Required parameter namespace was null or undefined when calling replaceNamespacedPodPreset.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceNamespacedPodPreset.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1PodPreset")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1PodPreset");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.SettingsV1alpha1Api = SettingsV1alpha1Api;
var StorageApiApiKeys;
(function (StorageApiApiKeys) {
    StorageApiApiKeys[StorageApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(StorageApiApiKeys = exports.StorageApiApiKeys || (exports.StorageApiApiKeys = {}));
class StorageApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[StorageApiApiKeys[key]].apiKey = value;
    }
    /**
     * get information of a group
     * @param {*} [options] Override http request options.
     */
    getAPIGroup(options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIGroup");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.StorageApi = StorageApi;
var StorageV1ApiApiKeys;
(function (StorageV1ApiApiKeys) {
    StorageV1ApiApiKeys[StorageV1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(StorageV1ApiApiKeys = exports.StorageV1ApiApiKeys || (exports.StorageV1ApiApiKeys = {}));
class StorageV1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[StorageV1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a StorageClass
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createStorageClass(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createStorageClass.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1StorageClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a VolumeAttachment
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createVolumeAttachment(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createVolumeAttachment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of StorageClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionStorageClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of VolumeAttachment
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionVolumeAttachment(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a StorageClass
     * @param name name of the StorageClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteStorageClass(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteVolumeAttachment(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StorageClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listStorageClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StorageClassList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind VolumeAttachment
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listVolumeAttachment(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachmentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified StorageClass
     * @param name name of the StorageClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchStorageClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchStorageClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchVolumeAttachment(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchVolumeAttachment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update status of the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchVolumeAttachmentStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchVolumeAttachmentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchVolumeAttachmentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified StorageClass
     * @param name name of the StorageClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readStorageClass(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readVolumeAttachment(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read status of the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param {*} [options] Override http request options.
     */
    readVolumeAttachmentStatus(name, pretty, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readVolumeAttachmentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified StorageClass
     * @param name name of the StorageClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceStorageClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceStorageClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1StorageClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceVolumeAttachment(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceVolumeAttachment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace status of the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceVolumeAttachmentStatus(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1/volumeattachments/{name}/status'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceVolumeAttachmentStatus.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceVolumeAttachmentStatus.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.StorageV1Api = StorageV1Api;
var StorageV1alpha1ApiApiKeys;
(function (StorageV1alpha1ApiApiKeys) {
    StorageV1alpha1ApiApiKeys[StorageV1alpha1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(StorageV1alpha1ApiApiKeys = exports.StorageV1alpha1ApiApiKeys || (exports.StorageV1alpha1ApiApiKeys = {}));
class StorageV1alpha1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[StorageV1alpha1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a VolumeAttachment
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createVolumeAttachment(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createVolumeAttachment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of VolumeAttachment
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionVolumeAttachment(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteVolumeAttachment(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind VolumeAttachment
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listVolumeAttachment(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1VolumeAttachmentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchVolumeAttachment(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchVolumeAttachment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readVolumeAttachment(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceVolumeAttachment(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1alpha1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceVolumeAttachment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1alpha1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1alpha1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.StorageV1alpha1Api = StorageV1alpha1Api;
var StorageV1beta1ApiApiKeys;
(function (StorageV1beta1ApiApiKeys) {
    StorageV1beta1ApiApiKeys[StorageV1beta1ApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(StorageV1beta1ApiApiKeys = exports.StorageV1beta1ApiApiKeys || (exports.StorageV1beta1ApiApiKeys = {}));
class StorageV1beta1Api {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[StorageV1beta1ApiApiKeys[key]].apiKey = value;
    }
    /**
     * create a StorageClass
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createStorageClass(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createStorageClass.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1StorageClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * create a VolumeAttachment
     * @param body
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    createVolumeAttachment(body, includeUninitialized, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling createVolumeAttachment.');
        }
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'POST',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of StorageClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionStorageClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete collection of VolumeAttachment
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    deleteCollectionVolumeAttachment(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a StorageClass
     * @param name name of the StorageClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteStorageClass(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * delete a VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param body
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param gracePeriodSeconds The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
     * @param orphanDependents Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the \&quot;orphan\&quot; finalizer will be added to/removed from the object&#39;s finalizers list. Either this field or PropagationPolicy may be set, but not both.
     * @param propagationPolicy Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: &#39;Orphan&#39; - orphan the dependents; &#39;Background&#39; - allow the garbage collector to delete the dependents in the background; &#39;Foreground&#39; - a cascading policy that deletes all dependents in the foreground.
     * @param {*} [options] Override http request options.
     */
    deleteVolumeAttachment(name, pretty, body, dryRun, gracePeriodSeconds, orphanDependents, propagationPolicy, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling deleteVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        if (gracePeriodSeconds !== undefined) {
            localVarQueryParameters['gracePeriodSeconds'] = ObjectSerializer.serialize(gracePeriodSeconds, "number");
        }
        if (orphanDependents !== undefined) {
            localVarQueryParameters['orphanDependents'] = ObjectSerializer.serialize(orphanDependents, "boolean");
        }
        if (propagationPolicy !== undefined) {
            localVarQueryParameters['propagationPolicy'] = ObjectSerializer.serialize(propagationPolicy, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'DELETE',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1DeleteOptions")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1Status");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * get available resources
     * @param {*} [options] Override http request options.
     */
    getAPIResources(options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1APIResourceList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind StorageClass
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listStorageClass(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StorageClassList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * list or watch objects of kind VolumeAttachment
     * @param includeUninitialized If true, partially initialized resources are included in the response.
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param _continue The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the \&quot;next key\&quot;.  This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications.
     * @param fieldSelector A selector to restrict the list of returned objects by their fields. Defaults to everything.
     * @param labelSelector A selector to restrict the list of returned objects by their labels. Defaults to everything.
     * @param limit limit is a maximum number of responses to return for a list call. If more items exist, the server will set the &#x60;continue&#x60; field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results. Setting a limit may return fewer than the requested amount of items (up to zero items) in the event all requested objects are filtered out and clients should only use the presence of the continue field to determine whether more results are available. Servers may choose not to support the limit argument and will return all of the available results. If limit is specified and the continue field is empty, clients may assume that no more results are available. This field is not supported if watch is true.  The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned.
     * @param resourceVersion When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it&#39;s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv.
     * @param timeoutSeconds Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity.
     * @param watch Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion.
     * @param {*} [options] Override http request options.
     */
    listVolumeAttachment(includeUninitialized, pretty, _continue, fieldSelector, labelSelector, limit, resourceVersion, timeoutSeconds, watch, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        if (includeUninitialized !== undefined) {
            localVarQueryParameters['includeUninitialized'] = ObjectSerializer.serialize(includeUninitialized, "boolean");
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (_continue !== undefined) {
            localVarQueryParameters['continue'] = ObjectSerializer.serialize(_continue, "string");
        }
        if (fieldSelector !== undefined) {
            localVarQueryParameters['fieldSelector'] = ObjectSerializer.serialize(fieldSelector, "string");
        }
        if (labelSelector !== undefined) {
            localVarQueryParameters['labelSelector'] = ObjectSerializer.serialize(labelSelector, "string");
        }
        if (limit !== undefined) {
            localVarQueryParameters['limit'] = ObjectSerializer.serialize(limit, "number");
        }
        if (resourceVersion !== undefined) {
            localVarQueryParameters['resourceVersion'] = ObjectSerializer.serialize(resourceVersion, "string");
        }
        if (timeoutSeconds !== undefined) {
            localVarQueryParameters['timeoutSeconds'] = ObjectSerializer.serialize(timeoutSeconds, "number");
        }
        if (watch !== undefined) {
            localVarQueryParameters['watch'] = ObjectSerializer.serialize(watch, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1VolumeAttachmentList");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified StorageClass
     * @param name name of the StorageClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchStorageClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchStorageClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * partially update the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    patchVolumeAttachment(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling patchVolumeAttachment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling patchVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PATCH',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "any")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified StorageClass
     * @param name name of the StorageClass
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readStorageClass(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * read the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param exact Should the export be exact.  Exact export maintains cluster-specific fields like &#39;Namespace&#39;.
     * @param _export Should this value be exported.  Export strips fields that a user can not specify.
     * @param {*} [options] Override http request options.
     */
    readVolumeAttachment(name, pretty, exact, _export, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling readVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (exact !== undefined) {
            localVarQueryParameters['exact'] = ObjectSerializer.serialize(exact, "boolean");
        }
        if (_export !== undefined) {
            localVarQueryParameters['export'] = ObjectSerializer.serialize(_export, "boolean");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified StorageClass
     * @param name name of the StorageClass
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceStorageClass(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/storageclasses/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceStorageClass.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceStorageClass.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1StorageClass")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1StorageClass");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
    /**
     * replace the specified VolumeAttachment
     * @param name name of the VolumeAttachment
     * @param body
     * @param pretty If &#39;true&#39;, then the output is pretty printed.
     * @param dryRun When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
     * @param {*} [options] Override http request options.
     */
    replaceVolumeAttachment(name, body, pretty, dryRun, options = {}) {
        const localVarPath = this.basePath + '/apis/storage.k8s.io/v1beta1/volumeattachments/{name}'
            .replace('{' + 'name' + '}', encodeURIComponent(String(name)));
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        // verify required parameter 'name' is not null or undefined
        if (name === null || name === undefined) {
            throw new Error('Required parameter name was null or undefined when calling replaceVolumeAttachment.');
        }
        // verify required parameter 'body' is not null or undefined
        if (body === null || body === undefined) {
            throw new Error('Required parameter body was null or undefined when calling replaceVolumeAttachment.');
        }
        if (pretty !== undefined) {
            localVarQueryParameters['pretty'] = ObjectSerializer.serialize(pretty, "string");
        }
        if (dryRun !== undefined) {
            localVarQueryParameters['dryRun'] = ObjectSerializer.serialize(dryRun, "string");
        }
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'PUT',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
            body: ObjectSerializer.serialize(body, "V1beta1VolumeAttachment")
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "V1beta1VolumeAttachment");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.StorageV1beta1Api = StorageV1beta1Api;
var VersionApiApiKeys;
(function (VersionApiApiKeys) {
    VersionApiApiKeys[VersionApiApiKeys["BearerToken"] = 0] = "BearerToken";
})(VersionApiApiKeys = exports.VersionApiApiKeys || (exports.VersionApiApiKeys = {}));
class VersionApi {
    constructor(basePathOrUsername, password, basePath) {
        this._basePath = defaultBasePath;
        this.defaultHeaders = {};
        this._useQuerystring = false;
        this.authentications = {
            'default': new VoidAuth(),
            'BearerToken': new ApiKeyAuth('header', 'authorization'),
        };
        if (password) {
            if (basePath) {
                this.basePath = basePath;
            }
        }
        else {
            if (basePathOrUsername) {
                this.basePath = basePathOrUsername;
            }
        }
    }
    set useQuerystring(value) {
        this._useQuerystring = value;
    }
    set basePath(basePath) {
        this._basePath = basePath;
    }
    get basePath() {
        return this._basePath;
    }
    setDefaultAuthentication(auth) {
        this.authentications.default = auth;
    }
    setApiKey(key, value) {
        this.authentications[VersionApiApiKeys[key]].apiKey = value;
    }
    /**
     * get the code version
     * @param {*} [options] Override http request options.
     */
    getCode(options = {}) {
        const localVarPath = this.basePath + '/version/';
        let localVarQueryParameters = {};
        let localVarHeaderParams = Object.assign({}, this.defaultHeaders);
        let localVarFormParams = {};
        Object.assign(localVarHeaderParams, options.headers);
        let localVarUseFormData = false;
        let localVarRequestOptions = {
            method: 'GET',
            qs: localVarQueryParameters,
            headers: localVarHeaderParams,
            uri: localVarPath,
            useQuerystring: this._useQuerystring,
            json: true,
        };
        this.authentications.BearerToken.applyToRequest(localVarRequestOptions);
        this.authentications.default.applyToRequest(localVarRequestOptions);
        if (Object.keys(localVarFormParams).length) {
            if (localVarUseFormData) {
                localVarRequestOptions.formData = localVarFormParams;
            }
            else {
                localVarRequestOptions.form = localVarFormParams;
            }
        }
        return new Promise((resolve, reject) => {
            localVarRequest(localVarRequestOptions, (error, response, body) => {
                if (error) {
                    reject(error);
                }
                else {
                    body = ObjectSerializer.deserialize(body, "VersionInfo");
                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
                        resolve({ response: response, body: body });
                    }
                    else {
                        reject({ response: response, body: body });
                    }
                }
            });
        });
    }
}
exports.VersionApi = VersionApi;
//# sourceMappingURL=api.js.map

/***/ }),

/***/ 48698:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(75636);
const querystring = __webpack_require__(71191);
const terminal_size_queue_1 = __webpack_require__(76023);
const web_socket_handler_1 = __webpack_require__(47581);
class Attach {
    constructor(config, websocketInterface) {
        if (websocketInterface) {
            this.handler = websocketInterface;
        }
        else {
            this.handler = new web_socket_handler_1.WebSocketHandler(config);
        }
    }
    attach(namespace, podName, containerName, stdout, stderr, stdin, tty) {
        return tslib_1.__awaiter(this, void 0, void 0, function* () {
            const query = {
                container: containerName,
                stderr: stderr != null,
                stdin: stdin != null,
                stdout: stdout != null,
                tty,
            };
            const queryStr = querystring.stringify(query);
            const path = `/api/v1/namespaces/${namespace}/pods/${podName}/attach?${queryStr}`;
            const conn = yield this.handler.connect(path, null, (streamNum, buff) => {
                web_socket_handler_1.WebSocketHandler.handleStandardStreams(streamNum, buff, stdout, stderr);
                return true;
            });
            if (stdin != null) {
                web_socket_handler_1.WebSocketHandler.handleStandardInput(conn, stdin, web_socket_handler_1.WebSocketHandler.StdinStream);
            }
            if (terminal_size_queue_1.isResizable(stdout)) {
                this.terminalSizeQueue = new terminal_size_queue_1.TerminalSizeQueue();
                web_socket_handler_1.WebSocketHandler.handleStandardInput(conn, this.terminalSizeQueue, web_socket_handler_1.WebSocketHandler.ResizeStream);
                this.terminalSizeQueue.handleResizes(stdout);
            }
            return conn;
        });
    }
}
exports.Attach = Attach;
//# sourceMappingURL=attach.js.map

/***/ }),

/***/ 5434:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(75636);
const informer_1 = __webpack_require__(88029);
class ListWatch {
    constructor(path, watch, listFn, autoStart = true) {
        this.path = path;
        this.watch = watch;
        this.listFn = listFn;
        this.objects = [];
        this.indexCache = {};
        this.callbackCache = {};
        this.watch = watch;
        this.listFn = listFn;
        if (autoStart) {
            this.doneHandler(null);
        }
    }
    start() {
        this.doneHandler(null);
    }
    on(verb, cb) {
        if (verb !== informer_1.ADD && verb !== informer_1.UPDATE && verb !== informer_1.DELETE) {
            throw new Error(`Unknown verb: ${verb}`);
        }
        if (!this.callbackCache[verb]) {
            this.callbackCache[verb] = [];
        }
        this.callbackCache[verb].push(cb);
    }
    get(name, namespace) {
        return this.objects.find((obj) => {
            return obj.metadata.name === name && (!namespace || obj.metadata.namespace === namespace);
        });
    }
    list(namespace) {
        if (!namespace) {
            return this.objects;
        }
        return this.indexCache[namespace];
    }
    doneHandler(err) {
        return tslib_1.__awaiter(this, void 0, void 0, function* () {
            const promise = this.listFn();
            const result = yield promise;
            const list = result.body;
            deleteItems(this.objects, list.items, this.callbackCache[informer_1.DELETE]);
            this.addOrUpdateItems(list.items);
            this.watch.watch(this.path, { resourceVersion: list.metadata.resourceVersion }, this.watchHandler.bind(this), this.doneHandler.bind(this));
        });
    }
    addOrUpdateItems(items) {
        items.forEach((obj) => {
            addOrUpdateObject(this.objects, obj, this.callbackCache[informer_1.ADD], this.callbackCache[informer_1.UPDATE]);
            if (obj.metadata.namespace) {
                this.indexObj(obj);
            }
        });
    }
    indexObj(obj) {
        let namespaceList = this.indexCache[obj.metadata.namespace];
        if (!namespaceList) {
            namespaceList = [];
            this.indexCache[obj.metadata.namespace] = namespaceList;
        }
        addOrUpdateObject(namespaceList, obj);
    }
    watchHandler(phase, obj) {
        switch (phase) {
            case 'ADDED':
            case 'MODIFIED':
                addOrUpdateObject(this.objects, obj, this.callbackCache[informer_1.ADD], this.callbackCache[informer_1.UPDATE]);
                if (obj.metadata.namespace) {
                    this.indexObj(obj);
                }
                break;
            case 'DELETED':
                deleteObject(this.objects, obj, this.callbackCache[informer_1.DELETE]);
                if (obj.metadata.namespace) {
                    const namespaceList = this.indexCache[obj.metadata.namespace];
                    if (namespaceList) {
                        deleteObject(namespaceList, obj);
                    }
                }
                break;
        }
    }
}
exports.ListWatch = ListWatch;
// external for testing
function deleteItems(oldObjects, newObjects, deleteCallback) {
    return oldObjects.filter((obj) => {
        if (findKubernetesObject(newObjects, obj) === -1) {
            if (deleteCallback) {
                deleteCallback.forEach((fn) => fn(obj));
            }
            return false;
        }
        return true;
    });
}
exports.deleteItems = deleteItems;
// Only public for testing.
function addOrUpdateObject(objects, obj, addCallback, updateCallback) {
    const ix = findKubernetesObject(objects, obj);
    if (ix === -1) {
        objects.push(obj);
        if (addCallback) {
            addCallback.forEach((elt) => elt(obj));
        }
    }
    else {
        objects[ix] = obj;
        if (updateCallback) {
            updateCallback.forEach((elt) => elt(obj));
        }
    }
}
exports.addOrUpdateObject = addOrUpdateObject;
function isSameObject(o1, o2) {
    return o1.metadata.name === o2.metadata.name && o1.metadata.namespace === o2.metadata.namespace;
}
function findKubernetesObject(objects, obj) {
    return objects.findIndex((elt) => {
        return isSameObject(elt, obj);
    });
}
// Public for testing.
function deleteObject(objects, obj, deleteCallback) {
    const ix = findKubernetesObject(objects, obj);
    if (ix !== -1) {
        objects.splice(ix, 1);
        if (deleteCallback) {
            deleteCallback.forEach((elt) => elt(obj));
        }
    }
}
exports.deleteObject = deleteObject;
//# sourceMappingURL=cache.js.map

/***/ }),

/***/ 10032:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const jsonpath = __webpack_require__(63269);
const shelljs = __webpack_require__(33516);
class CloudAuth {
    isAuthProvider(user) {
        if (!user || !user.authProvider) {
            return false;
        }
        return user.authProvider.name === 'azure' || user.authProvider.name === 'gcp';
    }
    getToken(user) {
        const config = user.authProvider.config;
        if (this.isExpired(config)) {
            this.updateAccessToken(config);
        }
        return 'Bearer ' + config['access-token'];
    }
    isExpired(config) {
        const token = config['access-token'];
        const expiry = config.expiry;
        if (!token) {
            return true;
        }
        if (!expiry) {
            return false;
        }
        const expiration = Date.parse(expiry);
        if (expiration < Date.now()) {
            return true;
        }
        return false;
    }
    updateAccessToken(config) {
        if (!config['cmd-path']) {
            throw new Error('Token is expired!');
        }
        const args = config['cmd-args'];
        // TODO: Cache to file?
        // TODO: do this asynchronously
        let result;
        try {
            let cmd = config['cmd-path'];
            if (args) {
                cmd = `"${cmd}" ${args}`;
            }
            result = shelljs.exec(cmd, { silent: true });
            if (result.code !== 0) {
                throw new Error(result.stderr);
            }
        }
        catch (err) {
            throw new Error('Failed to refresh token: ' + err.message);
        }
        const output = result.stdout.toString();
        const resultObj = JSON.parse(output);
        const tokenPathKeyInConfig = config['token-key'];
        const expiryPathKeyInConfig = config['expiry-key'];
        // Format in file is {<query>}, so slice it out and add '$'
        const tokenPathKey = '$' + tokenPathKeyInConfig.slice(1, -1);
        const expiryPathKey = '$' + expiryPathKeyInConfig.slice(1, -1);
        config['access-token'] = jsonpath.JSONPath(tokenPathKey, resultObj);
        config.expiry = jsonpath.JSONPath(expiryPathKey, resultObj);
    }
}
exports.CloudAuth = CloudAuth;
//# sourceMappingURL=cloud_auth.js.map

/***/ }),

/***/ 14958:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const fs = __webpack_require__(35747);
const path = __webpack_require__(85622);
const yaml = __webpack_require__(21917);
const shelljs = __webpack_require__(33516);
const api = __webpack_require__(56664);
const cloud_auth_1 = __webpack_require__(10032);
const config_types_1 = __webpack_require__(86218);
const exec_auth_1 = __webpack_require__(18325);
// fs.existsSync was removed in node 10
function fileExists(filepath) {
    try {
        fs.accessSync(filepath);
        return true;
        // tslint:disable-next-line:no-empty
    }
    catch (ignore) { }
    return false;
}
class KubeConfig {
    getContexts() {
        return this.contexts;
    }
    getClusters() {
        return this.clusters;
    }
    getUsers() {
        return this.users;
    }
    getCurrentContext() {
        return this.currentContext;
    }
    setCurrentContext(context) {
        this.currentContext = context;
    }
    getContextObject(name) {
        if (!this.contexts) {
            return null;
        }
        return findObject(this.contexts, name, 'context');
    }
    getCurrentCluster() {
        const context = this.getCurrentContextObject();
        if (!context) {
            return null;
        }
        return this.getCluster(context.cluster);
    }
    getCluster(name) {
        return findObject(this.clusters, name, 'cluster');
    }
    getCurrentUser() {
        const ctx = this.getCurrentContextObject();
        if (!ctx) {
            return null;
        }
        return this.getUser(ctx.user);
    }
    getUser(name) {
        return findObject(this.users, name, 'user');
    }
    loadFromFile(file) {
        const rootDirectory = path.dirname(file);
        this.loadFromString(fs.readFileSync(file, 'utf8'));
        this.makePathsAbsolute(rootDirectory);
    }
    applytoHTTPSOptions(opts) {
        const user = this.getCurrentUser();
        this.applyOptions(opts);
        if (user && user.username) {
            opts.auth = `${user.username}:${user.password}`;
        }
    }
    applyToRequest(opts) {
        const cluster = this.getCurrentCluster();
        const user = this.getCurrentUser();
        this.applyOptions(opts);
        if (cluster && cluster.skipTLSVerify) {
            opts.strictSSL = false;
        }
        if (user && user.username) {
            opts.auth = {
                password: user.password,
                username: user.username,
            };
        }
    }
    loadFromString(config) {
        const obj = yaml.safeLoad(config);
        if (obj.apiVersion !== 'v1') {
            throw new TypeError('unknown version: ' + obj.apiVersion);
        }
        this.clusters = config_types_1.newClusters(obj.clusters);
        this.contexts = config_types_1.newContexts(obj.contexts);
        this.users = config_types_1.newUsers(obj.users);
        this.currentContext = obj['current-context'];
    }
    loadFromOptions(options) {
        this.clusters = options.clusters;
        this.contexts = options.contexts;
        this.users = options.users;
        this.currentContext = options.currentContext;
    }
    loadFromClusterAndUser(cluster, user) {
        this.clusters = [cluster];
        this.users = [user];
        this.currentContext = 'loaded-context';
        this.contexts = [
            {
                cluster: cluster.name,
                user: user.name,
                name: this.currentContext,
            },
        ];
    }
    loadFromCluster(pathPrefix = '') {
        const host = process.env.KUBERNETES_SERVICE_HOST;
        const port = process.env.KUBERNETES_SERVICE_PORT;
        const clusterName = 'inCluster';
        const userName = 'inClusterUser';
        const contextName = 'inClusterContext';
        let scheme = 'https';
        if (port === '80' || port === '8080' || port === '8001') {
            scheme = 'http';
        }
        this.clusters = [
            {
                name: clusterName,
                caFile: `${pathPrefix}${Config.SERVICEACCOUNT_CA_PATH}`,
                server: `${scheme}://${host}:${port}`,
                skipTLSVerify: false,
            },
        ];
        this.users = [
            {
                name: userName,
                token: fs.readFileSync(`${pathPrefix}${Config.SERVICEACCOUNT_TOKEN_PATH}`).toString(),
            },
        ];
        this.contexts = [
            {
                cluster: clusterName,
                name: contextName,
                user: userName,
            },
        ];
        this.currentContext = contextName;
    }
    mergeConfig(config) {
        this.currentContext = config.currentContext;
        config.clusters.forEach((cluster) => {
            this.addCluster(cluster);
        });
        config.users.forEach((user) => {
            this.addUser(user);
        });
        config.contexts.forEach((ctx) => {
            this.addContext(ctx);
        });
    }
    addCluster(cluster) {
        this.clusters.forEach((c, ix) => {
            if (c.name === cluster.name) {
                throw new Error(`Duplicate cluster: ${c.name}`);
            }
        });
        this.clusters.push(cluster);
    }
    addUser(user) {
        this.users.forEach((c, ix) => {
            if (c.name === user.name) {
                throw new Error(`Duplicate user: ${c.name}`);
            }
        });
        this.users.push(user);
    }
    addContext(ctx) {
        this.contexts.forEach((c, ix) => {
            if (c.name === ctx.name) {
                throw new Error(`Duplicate context: ${c.name}`);
            }
        });
        this.contexts.push(ctx);
    }
    loadFromDefault() {
        if (process.env.KUBECONFIG && process.env.KUBECONFIG.length > 0) {
            const files = process.env.KUBECONFIG.split(path.delimiter);
            this.loadFromFile(files[0]);
            for (let i = 1; i < files.length; i++) {
                const kc = new KubeConfig();
                kc.loadFromFile(files[i]);
                this.mergeConfig(kc);
            }
            return;
        }
        const home = findHomeDir();
        if (home) {
            const config = path.join(home, '.kube', 'config');
            if (fileExists(config)) {
                this.loadFromFile(config);
                return;
            }
        }
        if (process.platform === 'win32' && shelljs.which('wsl.exe')) {
            // TODO: Handle if someome set $KUBECONFIG in wsl here...
            const result = shelljs.exec('wsl.exe cat $HOME/.kube/config', {
                silent: true,
            });
            if (result.code === 0) {
                this.loadFromString(result.stdout);
                return;
            }
        }
        if (fileExists(Config.SERVICEACCOUNT_TOKEN_PATH)) {
            this.loadFromCluster();
            return;
        }
        this.loadFromClusterAndUser({ name: 'cluster', server: 'http://localhost:8080' }, { name: 'user' });
    }
    makeApiClient(apiClientType) {
        const cluster = this.getCurrentCluster();
        if (!cluster) {
            throw new Error('No active cluster!');
        }
        const apiClient = new apiClientType(cluster.server);
        apiClient.setDefaultAuthentication(this);
        return apiClient;
    }
    makePathsAbsolute(rootDirectory) {
        this.clusters.forEach((cluster) => {
            if (cluster.caFile) {
                cluster.caFile = makeAbsolutePath(rootDirectory, cluster.caFile);
            }
        });
        this.users.forEach((user) => {
            if (user.certFile) {
                user.certFile = makeAbsolutePath(rootDirectory, user.certFile);
            }
            if (user.keyFile) {
                user.keyFile = makeAbsolutePath(rootDirectory, user.keyFile);
            }
        });
    }
    getCurrentContextObject() {
        return this.getContextObject(this.currentContext);
    }
    applyHTTPSOptions(opts) {
        const cluster = this.getCurrentCluster();
        const user = this.getCurrentUser();
        if (!user) {
            return;
        }
        if (cluster != null && cluster.skipTLSVerify) {
            opts.rejectUnauthorized = false;
        }
        const ca = cluster != null ? bufferFromFileOrString(cluster.caFile, cluster.caData) : null;
        if (ca) {
            opts.ca = ca;
        }
        const cert = bufferFromFileOrString(user.certFile, user.certData);
        if (cert) {
            opts.cert = cert;
        }
        const key = bufferFromFileOrString(user.keyFile, user.keyData);
        if (key) {
            opts.key = key;
        }
    }
    applyAuthorizationHeader(opts) {
        const user = this.getCurrentUser();
        if (!user) {
            return;
        }
        let token = null;
        KubeConfig.authenticators.forEach((authenticator) => {
            if (authenticator.isAuthProvider(user)) {
                token = authenticator.getToken(user);
            }
        });
        if (user.token) {
            token = 'Bearer ' + user.token;
        }
        if (token) {
            if (!opts.headers) {
                opts.headers = [];
            }
            opts.headers.Authorization = token;
        }
    }
    applyOptions(opts) {
        this.applyHTTPSOptions(opts);
        this.applyAuthorizationHeader(opts);
    }
}
KubeConfig.authenticators = [new cloud_auth_1.CloudAuth(), new exec_auth_1.ExecAuth()];
exports.KubeConfig = KubeConfig;
// This class is deprecated and will eventually be removed.
class Config {
    static fromFile(filename) {
        return Config.apiFromFile(filename, api.CoreV1Api);
    }
    static fromCluster() {
        return Config.apiFromCluster(api.CoreV1Api);
    }
    static defaultClient() {
        return Config.apiFromDefaultClient(api.CoreV1Api);
    }
    static apiFromFile(filename, apiClientType) {
        const kc = new KubeConfig();
        kc.loadFromFile(filename);
        return kc.makeApiClient(apiClientType);
    }
    static apiFromCluster(apiClientType) {
        const kc = new KubeConfig();
        kc.loadFromCluster();
        const cluster = kc.getCurrentCluster();
        if (!cluster) {
            throw new Error('No active cluster!');
        }
        const k8sApi = new apiClientType(cluster.server);
        k8sApi.setDefaultAuthentication(kc);
        return k8sApi;
    }
    static apiFromDefaultClient(apiClientType) {
        const kc = new KubeConfig();
        kc.loadFromDefault();
        return kc.makeApiClient(apiClientType);
    }
}
Config.SERVICEACCOUNT_ROOT = '/var/run/secrets/kubernetes.io/serviceaccount';
Config.SERVICEACCOUNT_CA_PATH = Config.SERVICEACCOUNT_ROOT + '/ca.crt';
Config.SERVICEACCOUNT_TOKEN_PATH = Config.SERVICEACCOUNT_ROOT + '/token';
exports.Config = Config;
function makeAbsolutePath(root, file) {
    if (!root || path.isAbsolute(file)) {
        return file;
    }
    return path.join(root, file);
}
exports.makeAbsolutePath = makeAbsolutePath;
// This is public really only for testing.
function bufferFromFileOrString(file, data) {
    if (file) {
        return fs.readFileSync(file);
    }
    if (data) {
        return Buffer.from(data, 'base64');
    }
    return null;
}
exports.bufferFromFileOrString = bufferFromFileOrString;
// Only public for testing.
function findHomeDir() {
    if (process.env.HOME) {
        try {
            fs.accessSync(process.env.HOME);
            return process.env.HOME;
            // tslint:disable-next-line:no-empty
        }
        catch (ignore) { }
    }
    if (process.platform !== 'win32') {
        return null;
    }
    if (process.env.HOMEDRIVE && process.env.HOMEPATH) {
        const dir = path.join(process.env.HOMEDRIVE, process.env.HOMEPATH);
        try {
            fs.accessSync(dir);
            return dir;
            // tslint:disable-next-line:no-empty
        }
        catch (ignore) { }
    }
    if (process.env.USERPROFILE) {
        try {
            fs.accessSync(process.env.USERPROFILE);
            return process.env.USERPROFILE;
            // tslint:disable-next-line:no-empty
        }
        catch (ignore) { }
    }
    return null;
}
exports.findHomeDir = findHomeDir;
// Only really public for testing...
function findObject(list, name, key) {
    for (const obj of list) {
        if (obj.name === name) {
            if (obj[key]) {
                return obj[key];
            }
            return obj;
        }
    }
    return null;
}
exports.findObject = findObject;
//# sourceMappingURL=config.js.map

/***/ }),

/***/ 86218:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const fs = __webpack_require__(35747);
const u = __webpack_require__(83571);
function newClusters(a) {
    return u.map(a, clusterIterator());
}
exports.newClusters = newClusters;
function clusterIterator() {
    return (elt, i, list) => {
        if (!elt.name) {
            throw new Error(`clusters[${i}].name is missing`);
        }
        if (!elt.cluster) {
            throw new Error(`clusters[${i}].cluster is missing`);
        }
        if (!elt.cluster.server) {
            throw new Error(`clusters[${i}].cluster.server is missing`);
        }
        return {
            caData: elt.cluster['certificate-authority-data'],
            caFile: elt.cluster['certificate-authority'],
            name: elt.name,
            server: elt.cluster.server,
            skipTLSVerify: elt.cluster['insecure-skip-tls-verify'] === true,
        };
    };
}
function newUsers(a) {
    return u.map(a, userIterator());
}
exports.newUsers = newUsers;
function userIterator() {
    return (elt, i, list) => {
        if (!elt.name) {
            throw new Error(`users[${i}].name is missing`);
        }
        return {
            authProvider: elt.user ? elt.user['auth-provider'] : null,
            certData: elt.user ? elt.user['client-certificate-data'] : null,
            certFile: elt.user ? elt.user['client-certificate'] : null,
            exec: elt.user ? elt.user.exec : null,
            keyData: elt.user ? elt.user['client-key-data'] : null,
            keyFile: elt.user ? elt.user['client-key'] : null,
            name: elt.name,
            token: findToken(elt.user),
            password: elt.user ? elt.user.password : null,
            username: elt.user ? elt.user.username : null,
        };
    };
}
function findToken(user) {
    if (user) {
        if (user.token) {
            return user.token;
        }
        if (user['token-file']) {
            return fs.readFileSync(user['token-file']).toString();
        }
    }
}
function newContexts(a) {
    return u.map(a, contextIterator());
}
exports.newContexts = newContexts;
function contextIterator() {
    return (elt, i, list) => {
        if (!elt.name) {
            throw new Error(`contexts[${i}].name is missing`);
        }
        if (!elt.context) {
            throw new Error(`contexts[${i}].context is missing`);
        }
        if (!elt.context.cluster) {
            throw new Error(`contexts[${i}].context.cluster is missing`);
        }
        return {
            cluster: elt.context.cluster,
            name: elt.name,
            user: elt.context.user || undefined,
            namespace: elt.context.namespace || undefined,
        };
    };
}
//# sourceMappingURL=config_types.js.map

/***/ }),

/***/ 62864:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(75636);
const querystring = __webpack_require__(71191);
const terminal_size_queue_1 = __webpack_require__(76023);
const web_socket_handler_1 = __webpack_require__(47581);
class Exec {
    constructor(config, wsInterface) {
        if (wsInterface) {
            this.handler = wsInterface;
        }
        else {
            this.handler = new web_socket_handler_1.WebSocketHandler(config);
        }
    }
    /**
     * @param {string}  namespace - The namespace of the pod to exec the command inside.
     * @param {string} podName - The name of the pod to exec the command inside.
     * @param {string} containerName - The name of the container in the pod to exec the command inside.
     * @param {(string|string[])} command - The command or command and arguments to execute.
     * @param {stream.Writable} stdout - The stream to write stdout data from the command.
     * @param {stream.Writable} stderr - The stream to write stderr data from the command.
     * @param {stream.Readable} stdin - The strream to write stdin data into the command.
     * @param {boolean} tty - Should the command execute in a TTY enabled session.
     * @param {(V1Status) => void} statusCallback -
     *       A callback to received the status (e.g. exit code) from the command, optional.
     * @return {string} This is the result
     */
    exec(namespace, podName, containerName, command, stdout, stderr, stdin, tty, statusCallback) {
        return tslib_1.__awaiter(this, void 0, void 0, function* () {
            const query = {
                stdout: stdout != null,
                stderr: stderr != null,
                stdin: stdin != null,
                tty,
                command,
                container: containerName,
            };
            const queryStr = querystring.stringify(query);
            const path = `/api/v1/namespaces/${namespace}/pods/${podName}/exec?${queryStr}`;
            const conn = yield this.handler.connect(path, null, (streamNum, buff) => {
                const status = web_socket_handler_1.WebSocketHandler.handleStandardStreams(streamNum, buff, stdout, stderr);
                if (status != null) {
                    if (statusCallback) {
                        statusCallback(status);
                    }
                    return false;
                }
                return true;
            });
            if (stdin != null) {
                web_socket_handler_1.WebSocketHandler.handleStandardInput(conn, stdin, web_socket_handler_1.WebSocketHandler.StdinStream);
            }
            if (terminal_size_queue_1.isResizable(stdout)) {
                this.terminalSizeQueue = new terminal_size_queue_1.TerminalSizeQueue();
                web_socket_handler_1.WebSocketHandler.handleStandardInput(conn, this.terminalSizeQueue, web_socket_handler_1.WebSocketHandler.ResizeStream);
                this.terminalSizeQueue.handleResizes(stdout);
            }
            return conn;
        });
    }
}
exports.Exec = Exec;
//# sourceMappingURL=exec.js.map

/***/ }),

/***/ 18325:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const shell = __webpack_require__(33516);
class ExecAuth {
    constructor() {
        this.tokenCache = {};
        this.execFn = shell.exec;
    }
    isAuthProvider(user) {
        if (!user) {
            return false;
        }
        if (user.exec) {
            return true;
        }
        if (!user.authProvider) {
            return false;
        }
        return (user.authProvider.name === 'exec' || (user.authProvider.config && user.authProvider.config.exec));
    }
    getToken(user) {
        // TODO: Handle client cert auth here, requires auth refactor.
        // See https://kubernetes.io/docs/reference/access-authn-authz/authentication/#input-and-output-formats
        // for details on this protocol.
        // TODO: Add a unit test for token caching.
        const cachedToken = this.tokenCache[user.name];
        if (cachedToken) {
            const date = Date.parse(cachedToken.status.expirationTimestamp);
            if (date > Date.now()) {
                return `Bearer ${cachedToken.status.token}`;
            }
            this.tokenCache[user.name] = null;
        }
        let exec = null;
        if (user.authProvider && user.authProvider.config) {
            exec = user.authProvider.config.exec;
        }
        if (user.exec) {
            exec = user.exec;
        }
        if (!exec) {
            return null;
        }
        if (!exec.command) {
            throw new Error('No command was specified for exec authProvider!');
        }
        let cmd = exec.command;
        if (exec.args) {
            cmd = `${cmd} ${exec.args.join(' ')}`;
        }
        let opts = { silent: true };
        if (exec.env) {
            const env = process.env;
            exec.env.forEach((elt) => (env[elt.name] = elt.value));
            opts = Object.assign({}, opts, { env });
        }
        const result = this.execFn(cmd, opts);
        if (result.code === 0) {
            const obj = JSON.parse(result.stdout);
            this.tokenCache[user.name] = obj;
            return `Bearer ${obj.status.token}`;
        }
        throw new Error(result.stderr);
    }
}
exports.ExecAuth = ExecAuth;
//# sourceMappingURL=exec_auth.js.map

/***/ }),

/***/ 89679:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(75636);
tslib_1.__exportStar(__webpack_require__(14958), exports);
tslib_1.__exportStar(__webpack_require__(5434), exports);
tslib_1.__exportStar(__webpack_require__(56664), exports);
tslib_1.__exportStar(__webpack_require__(48698), exports);
tslib_1.__exportStar(__webpack_require__(7633), exports);
tslib_1.__exportStar(__webpack_require__(62864), exports);
tslib_1.__exportStar(__webpack_require__(32390), exports);
tslib_1.__exportStar(__webpack_require__(18122), exports);
tslib_1.__exportStar(__webpack_require__(44756), exports);
tslib_1.__exportStar(__webpack_require__(88029), exports);
//# sourceMappingURL=index.js.map

/***/ }),

/***/ 88029:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const cache_1 = __webpack_require__(5434);
const watch_1 = __webpack_require__(7633);
exports.ADD = 'add';
exports.UPDATE = 'update';
exports.DELETE = 'delete';
function makeInformer(kubeconfig, path, listPromiseFn) {
    const watch = new watch_1.Watch(kubeconfig);
    return new cache_1.ListWatch(path, watch, listPromiseFn, false);
}
exports.makeInformer = makeInformer;
//# sourceMappingURL=informer.js.map

/***/ }),

/***/ 44756:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const request = __webpack_require__(48699);
class Log {
    constructor(config) {
        this.config = config;
    }
    log(namespace, podName, containerName, stream, done, options = {}) {
        const path = `/api/v1/namespaces/${namespace}/pods/${podName}/log`;
        const cluster = this.config.getCurrentCluster();
        if (!cluster) {
            throw new Error('No currently active cluster');
        }
        const url = cluster.server + path;
        const requestOptions = {
            method: 'GET',
            qs: Object.assign({}, options, { container: containerName }),
            uri: url,
        };
        this.config.applyToRequest(requestOptions);
        const req = request(requestOptions, (error, response, body) => {
            if (error) {
                done(error);
            }
            else if (response && response.statusCode !== 200) {
                done(body);
            }
            else {
                done(null);
            }
        }).on('response', (response) => {
            if (response.statusCode === 200) {
                req.pipe(stream);
            }
        });
        return req;
    }
}
exports.Log = Log;
//# sourceMappingURL=log.js.map

/***/ }),

/***/ 32390:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(75636);
const querystring = __webpack_require__(71191);
const util_1 = __webpack_require__(31669);
const web_socket_handler_1 = __webpack_require__(47581);
class PortForward {
    // handler is a parameter really only for injecting for testing.
    constructor(config, disconnectOnErr, handler) {
        if (!handler) {
            this.handler = new web_socket_handler_1.WebSocketHandler(config);
        }
        else {
            this.handler = handler;
        }
        this.disconnectOnErr = util_1.isUndefined(disconnectOnErr) ? true : disconnectOnErr;
    }
    // TODO: support multiple ports for real...
    portForward(namespace, podName, targetPorts, output, err, input, retryCount = 0) {
        return tslib_1.__awaiter(this, void 0, void 0, function* () {
            if (targetPorts.length === 0) {
                throw new Error('You must provide at least one port to forward to.');
            }
            if (targetPorts.length > 1) {
                throw new Error('Only one port is currently supported for port-forward');
            }
            const query = {
                ports: targetPorts[0],
            };
            const queryStr = querystring.stringify(query);
            const needsToReadPortNumber = [];
            targetPorts.forEach((value, index) => {
                needsToReadPortNumber[index * 2] = true;
                needsToReadPortNumber[index * 2 + 1] = true;
            });
            const path = `/api/v1/namespaces/${namespace}/pods/${podName}/portforward?${queryStr}`;
            const createWebSocket = () => {
                return this.handler.connect(path, null, (streamNum, buff) => {
                    if (streamNum >= targetPorts.length * 2) {
                        return !this.disconnectOnErr;
                    }
                    // First two bytes of each stream are the port number
                    if (needsToReadPortNumber[streamNum]) {
                        buff = buff.slice(2);
                        needsToReadPortNumber[streamNum] = false;
                    }
                    if (streamNum % 2 === 1) {
                        if (err) {
                            err.write(buff);
                        }
                    }
                    else {
                        output.write(buff);
                    }
                    return true;
                });
            };
            if (retryCount < 1) {
                const ws = yield createWebSocket();
                web_socket_handler_1.WebSocketHandler.handleStandardInput(ws, input, 0);
                return ws;
            }
            return web_socket_handler_1.WebSocketHandler.restartableHandleStandardInput(createWebSocket, input, 0, retryCount);
        });
    }
}
exports.PortForward = PortForward;
//# sourceMappingURL=portforward.js.map

/***/ }),

/***/ 76023:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const stream_1 = __webpack_require__(92413);
class TerminalSizeQueue extends stream_1.Readable {
    constructor(opts = {}) {
        super(Object.assign({}, opts, { 
            // tslint:disable-next-line:no-empty
            read() { } }));
    }
    handleResizes(writeStream) {
        // Set initial size
        this.resize(getTerminalSize(writeStream));
        // Handle future size updates
        writeStream.on('resize', () => this.resize(getTerminalSize(writeStream)));
    }
    resize(size) {
        this.push(JSON.stringify(size));
    }
}
exports.TerminalSizeQueue = TerminalSizeQueue;
function isResizable(stream) {
    if (stream == null) {
        return false;
    }
    const hasRows = 'rows' in stream;
    const hasColumns = 'columns' in stream;
    const hasOn = typeof stream.on === 'function';
    return hasRows && hasColumns && hasOn;
}
exports.isResizable = isResizable;
function getTerminalSize(writeStream) {
    return { height: writeStream.rows, width: writeStream.columns };
}
//# sourceMappingURL=terminal-size-queue.js.map

/***/ }),

/***/ 7633:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const JSONStream = __webpack_require__(81676);
const request = __webpack_require__(48699);
class DefaultRequest {
    webRequest(opts, callback) {
        return request(opts, callback);
    }
}
exports.DefaultRequest = DefaultRequest;
class Watch {
    constructor(config, requestImpl) {
        this.config = config;
        if (requestImpl) {
            this.requestImpl = requestImpl;
        }
        else {
            this.requestImpl = new DefaultRequest();
        }
    }
    watch(path, queryParams, callback, done) {
        const cluster = this.config.getCurrentCluster();
        if (!cluster) {
            throw new Error('No currently active cluster');
        }
        const url = cluster.server + path;
        queryParams.watch = true;
        const headerParams = {};
        const requestOptions = {
            method: 'GET',
            qs: queryParams,
            headers: headerParams,
            uri: url,
            useQuerystring: true,
            json: true,
        };
        this.config.applyToRequest(requestOptions);
        const stream = new JSONStream();
        stream.on('data', (data) => callback(data.type, data.object));
        const req = this.requestImpl.webRequest(requestOptions, (error, response, body) => {
            if (error) {
                done(error);
            }
            else {
                done(null);
            }
        });
        req.pipe(stream);
        return req;
    }
}
exports.Watch = Watch;
//# sourceMappingURL=watch.js.map

/***/ }),

/***/ 47581:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(75636);
const WebSocket = __webpack_require__(64713);
const protocols = ['v4.channel.k8s.io', 'v3.channel.k8s.io', 'v2.channel.k8s.io', 'channel.k8s.io'];
class WebSocketHandler {
    // factory is really just for test injection
    constructor(config, socketFactory) {
        this.config = config;
        this.socketFactory = socketFactory;
    }
    static handleStandardStreams(streamNum, buff, stdout, stderr) {
        if (buff.length < 1) {
            return null;
        }
        if (stdout && streamNum === WebSocketHandler.StdoutStream) {
            stdout.write(buff);
        }
        else if (stderr && streamNum === WebSocketHandler.StderrStream) {
            stderr.write(buff);
        }
        else if (streamNum === WebSocketHandler.StatusStream) {
            // stream closing.
            if (stdout && stdout !== process.stdout) {
                stdout.end();
            }
            if (stderr && stderr !== process.stderr) {
                stderr.end();
            }
            return JSON.parse(buff.toString('utf8'));
        }
        else {
            throw new Error('Unknown stream: ' + streamNum);
        }
        return null;
    }
    static handleStandardInput(ws, stdin, streamNum = 0) {
        stdin.on('data', (data) => {
            const buff = Buffer.alloc(data.length + 1);
            buff.writeInt8(streamNum, 0);
            if (data instanceof Buffer) {
                data.copy(buff, 1);
            }
            else {
                buff.write(data, 1);
            }
            ws.send(buff);
        });
        stdin.on('end', () => {
            ws.close();
        });
        // Keep the stream open
        return true;
    }
    static restartableHandleStandardInput(createWS, stdin, streamNum = 0, retryCount = 3) {
        if (retryCount < 0) {
            throw new Error("retryCount can't be lower than 0.");
        }
        let queue = Promise.resolve();
        let ws;
        function processData(data) {
            return tslib_1.__awaiter(this, void 0, void 0, function* () {
                const buff = Buffer.alloc(data.length + 1);
                buff.writeInt8(streamNum, 0);
                if (data instanceof Buffer) {
                    data.copy(buff, 1);
                }
                else {
                    buff.write(data, 1);
                }
                let i = 0;
                for (; i < retryCount; ++i) {
                    if (ws !== null && ws.readyState === WebSocket.OPEN) {
                        ws.send(buff);
                        break;
                    }
                    else {
                        ws = yield createWS();
                    }
                }
                if (i >= retryCount) {
                    throw new Error("can't send data to ws");
                }
            });
        }
        stdin.on('data', (data) => {
            queue = queue.then(() => processData(data));
        });
        stdin.on('end', () => {
            if (ws) {
                ws.close();
            }
        });
        return () => ws;
    }
    /**
     * Connect to a web socket endpoint.
     * @param path The HTTP Path to connect to on the server.
     * @param textHandler Callback for text over the web socket.
     *      Returns true if the connection should be kept alive, false to disconnect.
     * @param binaryHandler Callback for binary data over the web socket.
     *      Returns true if the connection should be kept alive, false to disconnect.
     */
    connect(path, textHandler, binaryHandler) {
        const cluster = this.config.getCurrentCluster();
        if (!cluster) {
            throw new Error('No cluster is defined.');
        }
        const server = cluster.server;
        const ssl = server.startsWith('https://');
        const target = ssl ? server.substr(8) : server.substr(7);
        const proto = ssl ? 'wss' : 'ws';
        const uri = `${proto}://${target}${path}`;
        const opts = {};
        this.config.applytoHTTPSOptions(opts);
        return new Promise((resolve, reject) => {
            const client = this.socketFactory
                ? this.socketFactory(uri, opts)
                : new WebSocket(uri, protocols, opts);
            let resolved = false;
            client.onopen = () => {
                resolved = true;
                resolve(client);
            };
            client.onerror = (err) => {
                if (!resolved) {
                    reject(err);
                }
            };
            client.onmessage = ({ data }) => {
                // TODO: support ArrayBuffer and Buffer[] data types?
                if (typeof data === 'string') {
                    if (textHandler && !textHandler(data)) {
                        client.close();
                    }
                }
                else if (data instanceof Buffer) {
                    const streamNum = data.readInt8(0);
                    if (binaryHandler && !binaryHandler(streamNum, data.slice(1))) {
                        client.close();
                    }
                }
            };
        });
    }
}
WebSocketHandler.StdinStream = 0;
WebSocketHandler.StdoutStream = 1;
WebSocketHandler.StderrStream = 2;
WebSocketHandler.StatusStream = 3;
WebSocketHandler.ResizeStream = 4;
exports.WebSocketHandler = WebSocketHandler;
//# sourceMappingURL=web-socket-handler.js.map

/***/ }),

/***/ 18122:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const yaml = __webpack_require__(21917);
function loadYaml(data, opts) {
    return yaml.safeLoad(data, opts);
}
exports.loadYaml = loadYaml;
function loadAllYaml(data, opts) {
    return yaml.safeLoadAll(data, undefined, opts);
}
exports.loadAllYaml = loadAllYaml;
function dumpYaml(object, opts) {
    return yaml.safeDump(object, opts);
}
exports.dumpYaml = dumpYaml;
//# sourceMappingURL=yaml.js.map

/***/ }),

/***/ 39436:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { define } = __webpack_require__(93998)
const base = __webpack_require__(33318)
const constants = __webpack_require__(90998)
const decoders = __webpack_require__(82975)
const encoders = __webpack_require__(2246)

module.exports = {
  base,
  constants,
  decoders,
  define,
  encoders
}


/***/ }),

/***/ 93998:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inherits } = __webpack_require__(31669)
const encoders = __webpack_require__(2246)
const decoders = __webpack_require__(82975)

module.exports.define = function define (name, body) {
  return new Entity(name, body)
}

function Entity (name, body) {
  this.name = name
  this.body = body

  this.decoders = {}
  this.encoders = {}
}

Entity.prototype._createNamed = function createNamed (Base) {
  const name = this.name

  function Generated (entity) {
    this._initNamed(entity, name)
  }
  inherits(Generated, Base)
  Generated.prototype._initNamed = function _initNamed (entity, name) {
    Base.call(this, entity, name)
  }

  return new Generated(this)
}

Entity.prototype._getDecoder = function _getDecoder (enc) {
  enc = enc || 'der'
  // Lazily create decoder
  if (!Object.prototype.hasOwnProperty.call(this.decoders, enc)) { this.decoders[enc] = this._createNamed(decoders[enc]) }
  return this.decoders[enc]
}

Entity.prototype.decode = function decode (data, enc, options) {
  return this._getDecoder(enc).decode(data, options)
}

Entity.prototype._getEncoder = function _getEncoder (enc) {
  enc = enc || 'der'
  // Lazily create encoder
  if (!Object.prototype.hasOwnProperty.call(this.encoders, enc)) { this.encoders[enc] = this._createNamed(encoders[enc]) }
  return this.encoders[enc]
}

Entity.prototype.encode = function encode (data, enc, /* internal */ reporter) {
  return this._getEncoder(enc).encode(data, reporter)
}


/***/ }),

/***/ 28424:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inherits } = __webpack_require__(31669)

const { Reporter } = __webpack_require__(93026)

function DecoderBuffer (base, options) {
  Reporter.call(this, options)
  if (!Buffer.isBuffer(base)) {
    this.error('Input not Buffer')
    return
  }

  this.base = base
  this.offset = 0
  this.length = base.length
}
inherits(DecoderBuffer, Reporter)

DecoderBuffer.isDecoderBuffer = function isDecoderBuffer (data) {
  if (data instanceof DecoderBuffer) {
    return true
  }

  // Or accept compatible API
  const isCompatible = typeof data === 'object' &&
    Buffer.isBuffer(data.base) &&
    data.constructor.name === 'DecoderBuffer' &&
    typeof data.offset === 'number' &&
    typeof data.length === 'number' &&
    typeof data.save === 'function' &&
    typeof data.restore === 'function' &&
    typeof data.isEmpty === 'function' &&
    typeof data.readUInt8 === 'function' &&
    typeof data.skip === 'function' &&
    typeof data.raw === 'function'

  return isCompatible
}

DecoderBuffer.prototype.save = function save () {
  return { offset: this.offset, reporter: Reporter.prototype.save.call(this) }
}

DecoderBuffer.prototype.restore = function restore (save) {
  // Return skipped data
  const res = new DecoderBuffer(this.base)
  res.offset = save.offset
  res.length = this.offset

  this.offset = save.offset
  Reporter.prototype.restore.call(this, save.reporter)

  return res
}

DecoderBuffer.prototype.isEmpty = function isEmpty () {
  return this.offset === this.length
}

DecoderBuffer.prototype.readUInt8 = function readUInt8 (fail) {
  if (this.offset + 1 <= this.length) { return this.base.readUInt8(this.offset++, true) } else { return this.error(fail || 'DecoderBuffer overrun') }
}

DecoderBuffer.prototype.skip = function skip (bytes, fail) {
  if (!(this.offset + bytes <= this.length)) { return this.error(fail || 'DecoderBuffer overrun') }

  const res = new DecoderBuffer(this.base)

  // Share reporter state
  res._reporterState = this._reporterState

  res.offset = this.offset
  res.length = this.offset + bytes
  this.offset += bytes
  return res
}

DecoderBuffer.prototype.raw = function raw (save) {
  return this.base.slice(save ? save.offset : this.offset, this.length)
}

function EncoderBuffer (value, reporter) {
  if (Array.isArray(value)) {
    this.length = 0
    this.value = value.map(function (item) {
      if (!EncoderBuffer.isEncoderBuffer(item)) { item = new EncoderBuffer(item, reporter) }
      this.length += item.length
      return item
    }, this)
  } else if (typeof value === 'number') {
    if (!(value >= 0 && value <= 0xff)) { return reporter.error('non-byte EncoderBuffer value') }
    this.value = value
    this.length = 1
  } else if (typeof value === 'string') {
    this.value = value
    this.length = Buffer.byteLength(value)
  } else if (Buffer.isBuffer(value)) {
    this.value = value
    this.length = value.length
  } else {
    return reporter.error(`Unsupported type: ${typeof value}`)
  }
}

EncoderBuffer.isEncoderBuffer = function isEncoderBuffer (data) {
  if (data instanceof EncoderBuffer) {
    return true
  }

  // Or accept compatible API
  const isCompatible = typeof data === 'object' &&
    data.constructor.name === 'EncoderBuffer' &&
    typeof data.length === 'number' &&
    typeof data.join === 'function'

  return isCompatible
}

EncoderBuffer.prototype.join = function join (out, offset) {
  if (!out) { out = Buffer.alloc(this.length) }
  if (!offset) { offset = 0 }

  if (this.length === 0) { return out }

  if (Array.isArray(this.value)) {
    this.value.forEach(function (item) {
      item.join(out, offset)
      offset += item.length
    })
  } else {
    if (typeof this.value === 'number') { out[offset] = this.value } else if (typeof this.value === 'string') { out.write(this.value, offset) } else if (Buffer.isBuffer(this.value)) { this.value.copy(out, offset) }
    offset += this.length
  }

  return out
}

module.exports = {
  DecoderBuffer,
  EncoderBuffer
}


/***/ }),

/***/ 33318:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { Reporter } = __webpack_require__(93026)
const { DecoderBuffer, EncoderBuffer } = __webpack_require__(28424)
const Node = __webpack_require__(48674)

module.exports = {
  DecoderBuffer,
  EncoderBuffer,
  Node,
  Reporter
}


/***/ }),

/***/ 48674:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { strict: assert } = __webpack_require__(42357)

const { Reporter } = __webpack_require__(93026)
const { DecoderBuffer, EncoderBuffer } = __webpack_require__(28424)

// Supported tags
const tags = [
  'seq', 'seqof', 'set', 'setof', 'objid', 'bool',
  'gentime', 'utctime', 'null_', 'enum', 'int', 'objDesc',
  'bitstr', 'bmpstr', 'charstr', 'genstr', 'graphstr', 'ia5str', 'iso646str',
  'numstr', 'octstr', 'printstr', 't61str', 'unistr', 'utf8str', 'videostr'
]

// Public methods list
const methods = [
  'key', 'obj', 'use', 'optional', 'explicit', 'implicit', 'def', 'choice',
  'any', 'contains'
].concat(tags)

// Overrided methods list
const overrided = [
  '_peekTag', '_decodeTag', '_use',
  '_decodeStr', '_decodeObjid', '_decodeTime',
  '_decodeNull', '_decodeInt', '_decodeBool', '_decodeList',

  '_encodeComposite', '_encodeStr', '_encodeObjid', '_encodeTime',
  '_encodeNull', '_encodeInt', '_encodeBool'
]

function Node (enc, parent, name) {
  const state = {}
  this._baseState = state

  state.name = name
  state.enc = enc

  state.parent = parent || null
  state.children = null

  // State
  state.tag = null
  state.args = null
  state.reverseArgs = null
  state.choice = null
  state.optional = false
  state.any = false
  state.obj = false
  state.use = null
  state.useDecoder = null
  state.key = null
  state.default = null
  state.explicit = null
  state.implicit = null
  state.contains = null

  // Should create new instance on each method
  if (!state.parent) {
    state.children = []
    this._wrap()
  }
}

const stateProps = [
  'enc', 'parent', 'children', 'tag', 'args', 'reverseArgs', 'choice',
  'optional', 'any', 'obj', 'use', 'alteredUse', 'key', 'default', 'explicit',
  'implicit', 'contains'
]

Node.prototype.clone = function clone () {
  const state = this._baseState
  const cstate = {}
  stateProps.forEach(function (prop) {
    cstate[prop] = state[prop]
  })
  const res = new this.constructor(cstate.parent)
  res._baseState = cstate
  return res
}

Node.prototype._wrap = function wrap () {
  const state = this._baseState
  methods.forEach(function (method) {
    this[method] = function _wrappedMethod () {
      const clone = new this.constructor(this)
      state.children.push(clone)
      return clone[method].apply(clone, arguments)
    }
  }, this)
}

Node.prototype._init = function init (body) {
  const state = this._baseState

  assert(state.parent === null)
  body.call(this)

  // Filter children
  state.children = state.children.filter(function (child) {
    return child._baseState.parent === this
  }, this)
  assert.equal(state.children.length, 1, 'Root node can have only one child')
}

Node.prototype._useArgs = function useArgs (args) {
  const state = this._baseState

  // Filter children and args
  const children = args.filter(function (arg) {
    return arg instanceof this.constructor
  }, this)
  args = args.filter(function (arg) {
    return !(arg instanceof this.constructor)
  }, this)

  if (children.length !== 0) {
    assert(state.children === null)
    state.children = children

    // Replace parent to maintain backward link
    children.forEach(function (child) {
      child._baseState.parent = this
    }, this)
  }
  if (args.length !== 0) {
    assert(state.args === null)
    state.args = args
    state.reverseArgs = args.map(function (arg) {
      if (typeof arg !== 'object' || arg.constructor !== Object) { return arg }

      const res = {}
      Object.keys(arg).forEach(function (key) {
        if (key == (key | 0)) { key |= 0 } // eslint-disable-line eqeqeq
        const value = arg[key]
        res[value] = key
      })
      return res
    })
  }
}

//
// Overrided methods
//

overrided.forEach(function (method) {
  Node.prototype[method] = function _overrided () {
    const state = this._baseState
    throw new Error(`${method} not implemented for encoding: ${state.enc}`)
  }
})

//
// Public methods
//

tags.forEach(function (tag) {
  Node.prototype[tag] = function _tagMethod () {
    const state = this._baseState
    const args = Array.prototype.slice.call(arguments)

    assert(state.tag === null)
    state.tag = tag

    this._useArgs(args)

    return this
  }
})

Node.prototype.use = function use (item) {
  assert(item)
  const state = this._baseState

  assert(state.use === null)
  state.use = item

  return this
}

Node.prototype.optional = function optional () {
  const state = this._baseState

  state.optional = true

  return this
}

Node.prototype.def = function def (val) {
  const state = this._baseState

  assert(state.default === null)
  state.default = val
  state.optional = true

  return this
}

Node.prototype.explicit = function explicit (num) {
  const state = this._baseState

  assert(state.explicit === null && state.implicit === null)
  state.explicit = num

  return this
}

Node.prototype.implicit = function implicit (num) {
  const state = this._baseState

  assert(state.explicit === null && state.implicit === null)
  state.implicit = num

  return this
}

Node.prototype.obj = function obj () {
  const state = this._baseState
  const args = Array.prototype.slice.call(arguments)

  state.obj = true

  if (args.length !== 0) { this._useArgs(args) }

  return this
}

Node.prototype.key = function key (newKey) {
  const state = this._baseState

  assert(state.key === null)
  state.key = newKey

  return this
}

Node.prototype.any = function any () {
  const state = this._baseState

  state.any = true

  return this
}

Node.prototype.choice = function choice (obj) {
  const state = this._baseState

  assert(state.choice === null)
  state.choice = obj
  this._useArgs(Object.keys(obj).map(function (key) {
    return obj[key]
  }))

  return this
}

Node.prototype.contains = function contains (item) {
  const state = this._baseState

  assert(state.use === null)
  state.contains = item

  return this
}

//
// Decoding
//

Node.prototype._decode = function decode (input, options) {
  const state = this._baseState

  // Decode root node
  if (state.parent === null) { return input.wrapResult(state.children[0]._decode(input, options)) }

  let result = state.default
  let present = true

  let prevKey = null
  if (state.key !== null) { prevKey = input.enterKey(state.key) }

  // Check if tag is there
  if (state.optional) {
    let tag = null
    if (state.explicit !== null) { tag = state.explicit } else if (state.implicit !== null) { tag = state.implicit } else if (state.tag !== null) { tag = state.tag }

    if (tag === null && !state.any) {
      // Trial and Error
      const save = input.save()
      try {
        if (state.choice === null) { this._decodeGeneric(state.tag, input, options) } else { this._decodeChoice(input, options) }
        present = true
      } catch (e) {
        present = false
      }
      input.restore(save)
    } else {
      present = this._peekTag(input, tag, state.any)

      if (input.isError(present)) { return present }
    }
  }

  // Push object on stack
  let prevObj
  if (state.obj && present) { prevObj = input.enterObject() }

  if (present) {
    // Unwrap explicit values
    if (state.explicit !== null) {
      const explicit = this._decodeTag(input, state.explicit)
      if (input.isError(explicit)) { return explicit }
      input = explicit
    }

    const start = input.offset

    // Unwrap implicit and normal values
    if (state.use === null && state.choice === null) {
      let save
      if (state.any) { save = input.save() }
      const body = this._decodeTag(
        input,
        state.implicit !== null ? state.implicit : state.tag,
        state.any
      )
      if (input.isError(body)) { return body }

      if (state.any) { result = input.raw(save) } else { input = body }
    }

    if (options && options.track && state.tag !== null) { options.track(input.path(), start, input.length, 'tagged') }

    if (options && options.track && state.tag !== null) { options.track(input.path(), input.offset, input.length, 'content') }

    // Select proper method for tag
    if (state.any) {
      // no-op
    } else if (state.choice === null) {
      result = this._decodeGeneric(state.tag, input, options)
    } else {
      result = this._decodeChoice(input, options)
    }

    if (input.isError(result)) { return result }

    // Decode children
    if (!state.any && state.choice === null && state.children !== null) {
      state.children.forEach(function decodeChildren (child) {
        // NOTE: We are ignoring errors here, to let parser continue with other
        // parts of encoded data
        child._decode(input, options)
      })
    }

    // Decode contained/encoded by schema, only in bit or octet strings
    if (state.contains && (state.tag === 'octstr' || state.tag === 'bitstr')) {
      const data = new DecoderBuffer(result)
      result = this._getUse(state.contains, input._reporterState.obj)
        ._decode(data, options)
    }
  }

  // Pop object
  if (state.obj && present) { result = input.leaveObject(prevObj) }

  // Set key
  if (state.key !== null && (result !== null || present === true)) { input.leaveKey(prevKey, state.key, result) } else if (prevKey !== null) { input.exitKey(prevKey) }

  return result
}

Node.prototype._decodeGeneric = function decodeGeneric (tag, input, options) {
  const state = this._baseState

  if (tag === 'seq' || tag === 'set') { return null }
  if (tag === 'seqof' || tag === 'setof') { return this._decodeList(input, tag, state.args[0], options) } else if (/str$/.test(tag)) { return this._decodeStr(input, tag, options) } else if (tag === 'objid' && state.args) { return this._decodeObjid(input, state.args[0], state.args[1], options) } else if (tag === 'objid') { return this._decodeObjid(input, null, null, options) } else if (tag === 'gentime' || tag === 'utctime') { return this._decodeTime(input, tag, options) } else if (tag === 'null_') { return this._decodeNull(input, options) } else if (tag === 'bool') { return this._decodeBool(input, options) } else if (tag === 'objDesc') { return this._decodeStr(input, tag, options) } else if (tag === 'int' || tag === 'enum') { return this._decodeInt(input, state.args && state.args[0], options) }

  if (state.use !== null) {
    return this._getUse(state.use, input._reporterState.obj)
      ._decode(input, options)
  } else {
    return input.error(`unknown tag: ${tag}`)
  }
}

Node.prototype._getUse = function _getUse (entity, obj) {
  const state = this._baseState
  // Create altered use decoder if implicit is set
  state.useDecoder = this._use(entity, obj)
  assert(state.useDecoder._baseState.parent === null)
  state.useDecoder = state.useDecoder._baseState.children[0]
  if (state.implicit !== state.useDecoder._baseState.implicit) {
    state.useDecoder = state.useDecoder.clone()
    state.useDecoder._baseState.implicit = state.implicit
  }
  return state.useDecoder
}

Node.prototype._decodeChoice = function decodeChoice (input, options) {
  const state = this._baseState
  let result = null
  let match = false

  Object.keys(state.choice).some(function (key) {
    const save = input.save()
    const node = state.choice[key]
    try {
      const value = node._decode(input, options)
      if (input.isError(value)) { return false }

      result = { type: key, value: value }
      match = true
    } catch (e) {
      input.restore(save)
      return false
    }
    return true
  }, this)

  if (!match) { return input.error('Choice not matched') }

  return result
}

//
// Encoding
//

Node.prototype._createEncoderBuffer = function createEncoderBuffer (data) {
  return new EncoderBuffer(data, this.reporter)
}

Node.prototype._encode = function encode (data, reporter, parent) {
  const state = this._baseState
  if (state.default !== null && state.default === data) { return }

  const result = this._encodeValue(data, reporter, parent)
  if (result === undefined) { return }

  if (this._skipDefault(result, reporter, parent)) { return }

  return result
}

Node.prototype._encodeValue = function encode (data, reporter, parent) {
  const state = this._baseState

  // Decode root node
  if (state.parent === null) { return state.children[0]._encode(data, reporter || new Reporter()) }

  let result = null

  // Set reporter to share it with a child class
  this.reporter = reporter

  // Check if data is there
  if (state.optional && data === undefined) {
    if (state.default !== null) { data = state.default } else { return }
  }

  // Encode children first
  let content = null
  let primitive = false
  if (state.any) {
    // Anything that was given is translated to buffer
    result = this._createEncoderBuffer(data)
  } else if (state.choice) {
    result = this._encodeChoice(data, reporter)
  } else if (state.contains) {
    content = this._getUse(state.contains, parent)._encode(data, reporter)
    primitive = true
  } else if (state.children) {
    content = state.children.map(function (child) {
      if (child._baseState.tag === 'null_') { return child._encode(null, reporter, data) }

      if (child._baseState.key === null) { return reporter.error('Child should have a key') }
      const prevKey = reporter.enterKey(child._baseState.key)

      if (typeof data !== 'object') { return reporter.error('Child expected, but input is not object') }

      const res = child._encode(data[child._baseState.key], reporter, data)
      reporter.leaveKey(prevKey)

      return res
    }, this).filter(function (child) {
      return child
    })
    content = this._createEncoderBuffer(content)
  } else {
    if (state.tag === 'seqof' || state.tag === 'setof') {
      if (!(state.args && state.args.length === 1)) { return reporter.error(`Too many args for: ${state.tag}`) }

      if (!Array.isArray(data)) { return reporter.error('seqof/setof, but data is not Array') }

      const child = this.clone()
      child._baseState.implicit = null
      content = this._createEncoderBuffer(data.map(function (item) {
        const state = this._baseState

        return this._getUse(state.args[0], data)._encode(item, reporter)
      }, child))
    } else if (state.use !== null) {
      result = this._getUse(state.use, parent)._encode(data, reporter)
    } else {
      content = this._encodePrimitive(state.tag, data)
      primitive = true
    }
  }

  // Encode data itself
  if (!state.any && state.choice === null) {
    const tag = state.implicit !== null ? state.implicit : state.tag
    const cls = state.implicit === null ? 'universal' : 'context'

    if (tag === null) {
      if (state.use === null) { reporter.error('Tag could be omitted only for .use()') }
    } else {
      if (state.use === null) { result = this._encodeComposite(tag, primitive, cls, content) }
    }
  }

  // Wrap in explicit
  if (state.explicit !== null) { result = this._encodeComposite(state.explicit, false, 'context', result) }

  return result
}

Node.prototype._encodeChoice = function encodeChoice (data, reporter) {
  const state = this._baseState

  const node = state.choice[data.type]
  if (!node) {
    assert(
      false,
      `${data.type} not found in ${JSON.stringify(Object.keys(state.choice))}`
    )
  }
  return node._encode(data.value, reporter)
}

Node.prototype._encodePrimitive = function encodePrimitive (tag, data) {
  const state = this._baseState

  if (/str$/.test(tag)) { return this._encodeStr(data, tag) } else if (tag === 'objid' && state.args) { return this._encodeObjid(data, state.reverseArgs[0], state.args[1]) } else if (tag === 'objid') { return this._encodeObjid(data, null, null) } else if (tag === 'gentime' || tag === 'utctime') { return this._encodeTime(data, tag) } else if (tag === 'null_') { return this._encodeNull() } else if (tag === 'int' || tag === 'enum') { return this._encodeInt(data, state.args && state.reverseArgs[0]) } else if (tag === 'bool') { return this._encodeBool(data) } else if (tag === 'objDesc') { return this._encodeStr(data, tag) } else { throw new Error(`Unsupported tag: ${tag}`) }
}

Node.prototype._isNumstr = function isNumstr (str) {
  return /^[0-9 ]*$/.test(str)
}

Node.prototype._isPrintstr = function isPrintstr (str) {
  return /^[A-Za-z0-9 '()+,-./:=?]*$/.test(str)
}

module.exports = Node


/***/ }),

/***/ 93026:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

const { inherits } = __webpack_require__(31669)

function Reporter (options) {
  this._reporterState = {
    obj: null,
    path: [],
    options: options || {},
    errors: []
  }
}

Reporter.prototype.isError = function isError (obj) {
  return obj instanceof ReporterError
}

Reporter.prototype.save = function save () {
  const state = this._reporterState

  return { obj: state.obj, pathLen: state.path.length }
}

Reporter.prototype.restore = function restore (data) {
  const state = this._reporterState

  state.obj = data.obj
  state.path = state.path.slice(0, data.pathLen)
}

Reporter.prototype.enterKey = function enterKey (key) {
  return this._reporterState.path.push(key)
}

Reporter.prototype.exitKey = function exitKey (index) {
  const state = this._reporterState

  state.path = state.path.slice(0, index - 1)
}

Reporter.prototype.leaveKey = function leaveKey (index, key, value) {
  const state = this._reporterState

  this.exitKey(index)
  if (state.obj !== null) { state.obj[key] = value }
}

Reporter.prototype.path = function path () {
  return this._reporterState.path.join('/')
}

Reporter.prototype.enterObject = function enterObject () {
  const state = this._reporterState

  const prev = state.obj
  state.obj = {}
  return prev
}

Reporter.prototype.leaveObject = function leaveObject (prev) {
  const state = this._reporterState

  const now = state.obj
  state.obj = prev
  return now
}

Reporter.prototype.error = function error (msg) {
  let err
  const state = this._reporterState

  const inherited = msg instanceof ReporterError
  if (inherited) {
    err = msg
  } else {
    err = new ReporterError(state.path.map(function (elem) {
      return `[${JSON.stringify(elem)}]`
    }).join(''), msg.message || msg, msg.stack)
  }

  if (!state.options.partial) { throw err }

  if (!inherited) { state.errors.push(err) }

  return err
}

Reporter.prototype.wrapResult = function wrapResult (result) {
  const state = this._reporterState
  if (!state.options.partial) { return result }

  return {
    result: this.isError(result) ? null : result,
    errors: state.errors
  }
}

function ReporterError (path, msg) {
  this.path = path
  this.rethrow(msg)
}
inherits(ReporterError, Error)

ReporterError.prototype.rethrow = function rethrow (msg) {
  this.message = `${msg} at: ${this.path || '(shallow)'}`
  if (Error.captureStackTrace) { Error.captureStackTrace(this, ReporterError) }

  if (!this.stack) {
    try {
      // IE only adds stack when thrown
      throw new Error(this.message)
    } catch (e) {
      this.stack = e.stack
    }
  }
  return this
}

exports.Reporter = Reporter


/***/ }),

/***/ 96018:
/***/ ((__unused_webpack_module, exports) => {

// Helper
function reverse (map) {
  const res = {}

  Object.keys(map).forEach(function (key) {
    // Convert key to integer if it is stringified
    if ((key | 0) == key) { key = key | 0 } // eslint-disable-line eqeqeq

    const value = map[key]
    res[value] = key
  })

  return res
}

exports.tagClass = {
  0: 'universal',
  1: 'application',
  2: 'context',
  3: 'private'
}
exports.tagClassByName = reverse(exports.tagClass)

exports.tag = {
  0x00: 'end',
  0x01: 'bool',
  0x02: 'int',
  0x03: 'bitstr',
  0x04: 'octstr',
  0x05: 'null_',
  0x06: 'objid',
  0x07: 'objDesc',
  0x08: 'external',
  0x09: 'real',
  0x0a: 'enum',
  0x0b: 'embed',
  0x0c: 'utf8str',
  0x0d: 'relativeOid',
  0x10: 'seq',
  0x11: 'set',
  0x12: 'numstr',
  0x13: 'printstr',
  0x14: 't61str',
  0x15: 'videostr',
  0x16: 'ia5str',
  0x17: 'utctime',
  0x18: 'gentime',
  0x19: 'graphstr',
  0x1a: 'iso646str',
  0x1b: 'genstr',
  0x1c: 'unistr',
  0x1d: 'charstr',
  0x1e: 'bmpstr'
}
exports.tagByName = reverse(exports.tag)


/***/ }),

/***/ 90998:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = {
  der: __webpack_require__(96018)
}


/***/ }),

/***/ 44798:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* global BigInt */
const { inherits } = __webpack_require__(31669)

const { DecoderBuffer } = __webpack_require__(28424)
const Node = __webpack_require__(48674)

// Import DER constants
const der = __webpack_require__(96018)

function DERDecoder (entity) {
  this.enc = 'der'
  this.name = entity.name
  this.entity = entity

  // Construct base tree
  this.tree = new DERNode()
  this.tree._init(entity.body)
}

DERDecoder.prototype.decode = function decode (data, options) {
  if (!DecoderBuffer.isDecoderBuffer(data)) {
    data = new DecoderBuffer(data, options)
  }

  return this.tree._decode(data, options)
}

// Tree methods

function DERNode (parent) {
  Node.call(this, 'der', parent)
}
inherits(DERNode, Node)

DERNode.prototype._peekTag = function peekTag (buffer, tag, any) {
  if (buffer.isEmpty()) { return false }

  const state = buffer.save()
  const decodedTag = derDecodeTag(buffer, `Failed to peek tag: "${tag}"`)
  if (buffer.isError(decodedTag)) { return decodedTag }

  buffer.restore(state)

  return decodedTag.tag === tag || decodedTag.tagStr === tag || (decodedTag.tagStr + 'of') === tag || any
}

DERNode.prototype._decodeTag = function decodeTag (buffer, tag, any) {
  const decodedTag = derDecodeTag(buffer,
    `Failed to decode tag of "${tag}"`)
  if (buffer.isError(decodedTag)) { return decodedTag }

  let len = derDecodeLen(buffer,
    decodedTag.primitive,
    `Failed to get length of "${tag}"`)

  // Failure
  if (buffer.isError(len)) { return len }

  if (!any &&
      decodedTag.tag !== tag &&
      decodedTag.tagStr !== tag &&
      decodedTag.tagStr + 'of' !== tag) {
    return buffer.error(`Failed to match tag: "${tag}"`)
  }

  if (decodedTag.primitive || len !== null) { return buffer.skip(len, `Failed to match body of: "${tag}"`) }

  // Indefinite length... find END tag
  const state = buffer.save()
  const res = this._skipUntilEnd(
    buffer,
    `Failed to skip indefinite length body: "${this.tag}"`)
  if (buffer.isError(res)) { return res }

  len = buffer.offset - state.offset
  buffer.restore(state)
  return buffer.skip(len, `Failed to match body of: "${tag}"`)
}

DERNode.prototype._skipUntilEnd = function skipUntilEnd (buffer, fail) {
  for (;;) {
    const tag = derDecodeTag(buffer, fail)
    if (buffer.isError(tag)) { return tag }
    const len = derDecodeLen(buffer, tag.primitive, fail)
    if (buffer.isError(len)) { return len }

    let res
    if (tag.primitive || len !== null) { res = buffer.skip(len) } else { res = this._skipUntilEnd(buffer, fail) }

    // Failure
    if (buffer.isError(res)) { return res }

    if (tag.tagStr === 'end') { break }
  }
}

DERNode.prototype._decodeList = function decodeList (buffer, tag, decoder,
  options) {
  const result = []
  while (!buffer.isEmpty()) {
    const possibleEnd = this._peekTag(buffer, 'end')
    if (buffer.isError(possibleEnd)) { return possibleEnd }

    const res = decoder.decode(buffer, 'der', options)
    if (buffer.isError(res) && possibleEnd) { break }
    result.push(res)
  }
  return result
}

DERNode.prototype._decodeStr = function decodeStr (buffer, tag) {
  if (tag === 'bitstr') {
    const unused = buffer.readUInt8()
    if (buffer.isError(unused)) { return unused }
    return { unused: unused, data: buffer.raw() }
  } else if (tag === 'bmpstr') {
    const raw = buffer.raw()
    if (raw.length % 2 === 1) { return buffer.error('Decoding of string type: bmpstr length mismatch') }

    let str = ''
    for (let i = 0; i < raw.length / 2; i++) {
      str += String.fromCharCode(raw.readUInt16BE(i * 2))
    }
    return str
  } else if (tag === 'numstr') {
    const numstr = buffer.raw().toString('ascii')
    if (!this._isNumstr(numstr)) {
      return buffer.error('Decoding of string type: numstr unsupported characters')
    }
    return numstr
  } else if (tag === 'octstr') {
    return buffer.raw()
  } else if (tag === 'objDesc') {
    return buffer.raw()
  } else if (tag === 'printstr') {
    const printstr = buffer.raw().toString('ascii')
    if (!this._isPrintstr(printstr)) {
      return buffer.error('Decoding of string type: printstr unsupported characters')
    }
    return printstr
  } else if (/str$/.test(tag)) {
    return buffer.raw().toString()
  } else {
    return buffer.error(`Decoding of string type: ${tag} unsupported`)
  }
}

DERNode.prototype._decodeObjid = function decodeObjid (buffer, values, relative) {
  let result
  const identifiers = []
  let ident = 0
  let subident = 0
  while (!buffer.isEmpty()) {
    subident = buffer.readUInt8()
    ident <<= 7
    ident |= subident & 0x7f
    if ((subident & 0x80) === 0) {
      identifiers.push(ident)
      ident = 0
    }
  }
  if (subident & 0x80) { identifiers.push(ident) }

  const first = (identifiers[0] / 40) | 0
  const second = identifiers[0] % 40

  if (relative) { result = identifiers } else { result = [first, second].concat(identifiers.slice(1)) }

  if (values) {
    let tmp = values[result.join(' ')]
    if (tmp === undefined) { tmp = values[result.join('.')] }
    if (tmp !== undefined) { result = tmp }
  }

  return result
}

DERNode.prototype._decodeTime = function decodeTime (buffer, tag) {
  const str = buffer.raw().toString()

  let year
  let mon
  let day
  let hour
  let min
  let sec
  if (tag === 'gentime') {
    year = str.slice(0, 4) | 0
    mon = str.slice(4, 6) | 0
    day = str.slice(6, 8) | 0
    hour = str.slice(8, 10) | 0
    min = str.slice(10, 12) | 0
    sec = str.slice(12, 14) | 0
  } else if (tag === 'utctime') {
    year = str.slice(0, 2) | 0
    mon = str.slice(2, 4) | 0
    day = str.slice(4, 6) | 0
    hour = str.slice(6, 8) | 0
    min = str.slice(8, 10) | 0
    sec = str.slice(10, 12) | 0
    if (year < 70) { year = 2000 + year } else { year = 1900 + year }
  } else {
    return buffer.error(`Decoding ${tag} time is not supported yet`)
  }

  return Date.UTC(year, mon - 1, day, hour, min, sec, 0)
}

DERNode.prototype._decodeNull = function decodeNull () {
  return null
}

DERNode.prototype._decodeBool = function decodeBool (buffer) {
  const res = buffer.readUInt8()
  if (buffer.isError(res)) { return res } else { return res !== 0 }
}

DERNode.prototype._decodeInt = function decodeInt (buffer, values) {
  // Bigint, return as it is (assume big endian)
  const raw = buffer.raw()
  let res = BigInt(`0x${raw.toString('hex')}`)

  if (values) {
    res = values[res.toString(10)] || res
  }

  return res
}

DERNode.prototype._use = function use (entity, obj) {
  if (typeof entity === 'function') { entity = entity(obj) }
  return entity._getDecoder('der').tree
}

// Utility methods

function derDecodeTag (buf, fail) {
  let tag = buf.readUInt8(fail)
  if (buf.isError(tag)) { return tag }

  const cls = der.tagClass[tag >> 6]
  const primitive = (tag & 0x20) === 0

  // Multi-octet tag - load
  if ((tag & 0x1f) === 0x1f) {
    let oct = tag
    tag = 0
    while ((oct & 0x80) === 0x80) {
      oct = buf.readUInt8(fail)
      if (buf.isError(oct)) { return oct }

      tag <<= 7
      tag |= oct & 0x7f
    }
  } else {
    tag &= 0x1f
  }
  const tagStr = der.tag[tag]

  return {
    cls: cls,
    primitive: primitive,
    tag: tag,
    tagStr: tagStr
  }
}

function derDecodeLen (buf, primitive, fail) {
  let len = buf.readUInt8(fail)
  if (buf.isError(len)) { return len }

  // Indefinite form
  if (!primitive && len === 0x80) { return null }

  // Definite form
  if ((len & 0x80) === 0) {
    // Short form
    return len
  }

  // Long form
  const num = len & 0x7f
  if (num > 4) { return buf.error('length octect is too long') }

  len = 0
  for (let i = 0; i < num; i++) {
    len <<= 8
    const j = buf.readUInt8(fail)
    if (buf.isError(j)) { return j }
    len |= j
  }

  return len
}

module.exports = DERDecoder


/***/ }),

/***/ 82975:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = {
  der: __webpack_require__(44798),
  pem: __webpack_require__(33956)
}


/***/ }),

/***/ 33956:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inherits } = __webpack_require__(31669)

const DERDecoder = __webpack_require__(44798)

function PEMDecoder (entity) {
  DERDecoder.call(this, entity)
  this.enc = 'pem'
}
inherits(PEMDecoder, DERDecoder)

PEMDecoder.prototype.decode = function decode (data, options) {
  const lines = data.toString().split(/[\r\n]+/g)

  const label = options.label.toUpperCase()

  const re = /^-----(BEGIN|END) ([^-]+)-----$/
  let start = -1
  let end = -1
  for (let i = 0; i < lines.length; i++) {
    const match = lines[i].match(re)
    if (match === null) { continue }

    if (match[2] !== label) { continue }

    if (start === -1) {
      if (match[1] !== 'BEGIN') { break }
      start = i
    } else {
      if (match[1] !== 'END') { break }
      end = i
      break
    }
  }
  if (start === -1 || end === -1) { throw new Error(`PEM section not found for: ${label}`) }

  const base64 = lines.slice(start + 1, end).join('')
  // Remove excessive symbols
  base64.replace(/[^a-z0-9+/=]+/gi, '')

  const input = Buffer.from(base64, 'base64')
  return DERDecoder.prototype.decode.call(this, input, options)
}

module.exports = PEMDecoder


/***/ }),

/***/ 20846:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* global BigInt */
const { inherits } = __webpack_require__(31669)

const Node = __webpack_require__(48674)
const der = __webpack_require__(96018)

function DEREncoder (entity) {
  this.enc = 'der'
  this.name = entity.name
  this.entity = entity

  // Construct base tree
  this.tree = new DERNode()
  this.tree._init(entity.body)
}

DEREncoder.prototype.encode = function encode (data, reporter) {
  return this.tree._encode(data, reporter).join()
}

// Tree methods

function DERNode (parent) {
  Node.call(this, 'der', parent)
}
inherits(DERNode, Node)

DERNode.prototype._encodeComposite = function encodeComposite (tag,
  primitive,
  cls,
  content) {
  const encodedTag = encodeTag(tag, primitive, cls, this.reporter)

  // Short form
  if (content.length < 0x80) {
    const header = Buffer.alloc(2)
    header[0] = encodedTag
    header[1] = content.length
    return this._createEncoderBuffer([header, content])
  }

  // Long form
  // Count octets required to store length
  let lenOctets = 1
  for (let i = content.length; i >= 0x100; i >>= 8) { lenOctets++ }

  const header = Buffer.alloc(1 + 1 + lenOctets)
  header[0] = encodedTag
  header[1] = 0x80 | lenOctets

  for (let i = 1 + lenOctets, j = content.length; j > 0; i--, j >>= 8) { header[i] = j & 0xff }

  return this._createEncoderBuffer([header, content])
}

DERNode.prototype._encodeStr = function encodeStr (str, tag) {
  if (tag === 'bitstr') {
    return this._createEncoderBuffer([str.unused | 0, str.data])
  } else if (tag === 'bmpstr') {
    const buf = Buffer.alloc(str.length * 2)
    for (let i = 0; i < str.length; i++) {
      buf.writeUInt16BE(str.charCodeAt(i), i * 2)
    }
    return this._createEncoderBuffer(buf)
  } else if (tag === 'numstr') {
    if (!this._isNumstr(str)) {
      return this.reporter.error('Encoding of string type: numstr supports only digits and space')
    }
    return this._createEncoderBuffer(str)
  } else if (tag === 'printstr') {
    if (!this._isPrintstr(str)) {
      return this.reporter.error('Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark')
    }
    return this._createEncoderBuffer(str)
  } else if (/str$/.test(tag)) {
    return this._createEncoderBuffer(str)
  } else if (tag === 'objDesc') {
    return this._createEncoderBuffer(str)
  } else {
    return this.reporter.error(`Encoding of string type: ${tag} unsupported`)
  }
}

DERNode.prototype._encodeObjid = function encodeObjid (id, values, relative) {
  if (typeof id === 'string') {
    if (!values) { return this.reporter.error('string objid given, but no values map found') }
    if (!Object.prototype.hasOwnProperty.call(values, id)) { return this.reporter.error('objid not found in values map') }
    id = values[id].split(/[\s.]+/g)
    for (let i = 0; i < id.length; i++) { id[i] |= 0 }
  } else if (Array.isArray(id)) {
    id = id.slice()
    for (let i = 0; i < id.length; i++) { id[i] |= 0 }
  }

  if (!Array.isArray(id)) {
    return this.reporter.error(`objid() should be either array or string, got: ${JSON.stringify(id)}`)
  }

  if (!relative) {
    if (id[1] >= 40) { return this.reporter.error('Second objid identifier OOB') }
    id.splice(0, 2, id[0] * 40 + id[1])
  }

  // Count number of octets
  let size = 0
  for (let i = 0; i < id.length; i++) {
    let ident = id[i]
    for (size++; ident >= 0x80; ident >>= 7) { size++ }
  }

  const objid = Buffer.alloc(size)
  let offset = objid.length - 1
  for (let i = id.length - 1; i >= 0; i--) {
    let ident = id[i]
    objid[offset--] = ident & 0x7f
    while ((ident >>= 7) > 0) { objid[offset--] = 0x80 | (ident & 0x7f) }
  }

  return this._createEncoderBuffer(objid)
}

function two (num) {
  if (num < 10) { return `0${num}` } else { return num }
}

DERNode.prototype._encodeTime = function encodeTime (time, tag) {
  let str
  const date = new Date(time)

  if (tag === 'gentime') {
    str = [
      two(date.getUTCFullYear()),
      two(date.getUTCMonth() + 1),
      two(date.getUTCDate()),
      two(date.getUTCHours()),
      two(date.getUTCMinutes()),
      two(date.getUTCSeconds()),
      'Z'
    ].join('')
  } else if (tag === 'utctime') {
    str = [
      two(date.getUTCFullYear() % 100),
      two(date.getUTCMonth() + 1),
      two(date.getUTCDate()),
      two(date.getUTCHours()),
      two(date.getUTCMinutes()),
      two(date.getUTCSeconds()),
      'Z'
    ].join('')
  } else {
    this.reporter.error(`Encoding ${tag} time is not supported yet`)
  }

  return this._encodeStr(str, 'octstr')
}

DERNode.prototype._encodeNull = function encodeNull () {
  return this._createEncoderBuffer('')
}

function bnToBuf (bn) {
  var hex = BigInt(bn).toString(16)
  if (hex.length % 2) { hex = '0' + hex }

  var len = hex.length / 2
  var u8 = new Uint8Array(len)

  var i = 0
  var j = 0
  while (i < len) {
    u8[i] = parseInt(hex.slice(j, j + 2), 16)
    i += 1
    j += 2
  }

  return u8
}

DERNode.prototype._encodeInt = function encodeInt (num, values) {
  if (typeof num === 'string') {
    if (!values) { return this.reporter.error('String int or enum given, but no values map') }
    if (!Object.prototype.hasOwnProperty.call(values, num)) {
      return this.reporter.error(`Values map doesn't contain: ${JSON.stringify(num)}`)
    }
    num = values[num]
  }

  if (typeof num === 'bigint') {
    const numArray = [...bnToBuf(num)]
    if (numArray[0] & 0x80) {
      numArray.unshift(0)
    }
    num = Buffer.from(numArray)
  }

  if (Buffer.isBuffer(num)) {
    let size = num.length
    if (num.length === 0) { size++ }

    const out = Buffer.alloc(size)
    num.copy(out)
    if (num.length === 0) { out[0] = 0 }
    return this._createEncoderBuffer(out)
  }

  if (num < 0x80) { return this._createEncoderBuffer(num) }

  if (num < 0x100) { return this._createEncoderBuffer([0, num]) }

  let size = 1
  for (let i = num; i >= 0x100; i >>= 8) { size++ }

  const out = new Array(size)
  for (let i = out.length - 1; i >= 0; i--) {
    out[i] = num & 0xff
    num >>= 8
  }
  if (out[0] & 0x80) {
    out.unshift(0)
  }

  return this._createEncoderBuffer(Buffer.from(out))
}

DERNode.prototype._encodeBool = function encodeBool (value) {
  return this._createEncoderBuffer(value ? 0xff : 0)
}

DERNode.prototype._use = function use (entity, obj) {
  if (typeof entity === 'function') { entity = entity(obj) }
  return entity._getEncoder('der').tree
}

DERNode.prototype._skipDefault = function skipDefault (dataBuffer, reporter, parent) {
  const state = this._baseState
  let i
  if (state.default === null) { return false }

  const data = dataBuffer.join()
  if (state.defaultBuffer === undefined) { state.defaultBuffer = this._encodeValue(state.default, reporter, parent).join() }

  if (data.length !== state.defaultBuffer.length) { return false }

  for (i = 0; i < data.length; i++) {
    if (data[i] !== state.defaultBuffer[i]) { return false }
  }

  return true
}

// Utility methods

function encodeTag (tag, primitive, cls, reporter) {
  let res

  if (tag === 'seqof') { tag = 'seq' } else if (tag === 'setof') { tag = 'set' }

  if (Object.prototype.hasOwnProperty.call(der.tagByName, tag)) { res = der.tagByName[tag] } else if (typeof tag === 'number' && (tag | 0) === tag) { res = tag } else { return reporter.error(`Unknown tag: ${tag}`) }

  if (res >= 0x1f) { return reporter.error('Multi-octet tag encoding unsupported') }

  if (!primitive) { res |= 0x20 }

  res |= (der.tagClassByName[cls || 'universal'] << 6)

  return res
}

module.exports = DEREncoder


/***/ }),

/***/ 2246:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = {
  der: __webpack_require__(20846),
  pem: __webpack_require__(26217)
}


/***/ }),

/***/ 26217:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inherits } = __webpack_require__(31669)

const DEREncoder = __webpack_require__(20846)

function PEMEncoder (entity) {
  DEREncoder.call(this, entity)
  this.enc = 'pem'
}
inherits(PEMEncoder, DEREncoder)

PEMEncoder.prototype.encode = function encode (data, options) {
  const buf = DEREncoder.prototype.encode.call(this, data)

  const p = buf.toString('base64')
  const out = [`-----BEGIN ${options.label}-----`]
  for (let i = 0; i < p.length; i += 64) { out.push(p.slice(i, i + 64)) }
  out.push(`-----END ${options.label}-----`)
  return out.join('\n')
}

module.exports = PEMEncoder


/***/ }),

/***/ 7678:
/***/ ((module, exports, __webpack_require__) => {

"use strict";

/// <reference lib="es2016"/>
/// <reference lib="es2017.sharedmemory"/>
/// <reference lib="esnext.asynciterable"/>
/// <reference lib="dom"/>
Object.defineProperty(exports, "__esModule", ({ value: true }));
// TODO: Use the `URL` global when targeting Node.js 10
// tslint:disable-next-line
const URLGlobal = typeof URL === 'undefined' ? __webpack_require__(78835).URL : URL;
const toString = Object.prototype.toString;
const isOfType = (type) => (value) => typeof value === type;
const isBuffer = (input) => !is.nullOrUndefined(input) && !is.nullOrUndefined(input.constructor) && is.function_(input.constructor.isBuffer) && input.constructor.isBuffer(input);
const getObjectType = (value) => {
    const objectName = toString.call(value).slice(8, -1);
    if (objectName) {
        return objectName;
    }
    return null;
};
const isObjectOfType = (type) => (value) => getObjectType(value) === type;
function is(value) {
    switch (value) {
        case null:
            return "null" /* null */;
        case true:
        case false:
            return "boolean" /* boolean */;
        default:
    }
    switch (typeof value) {
        case 'undefined':
            return "undefined" /* undefined */;
        case 'string':
            return "string" /* string */;
        case 'number':
            return "number" /* number */;
        case 'symbol':
            return "symbol" /* symbol */;
        default:
    }
    if (is.function_(value)) {
        return "Function" /* Function */;
    }
    if (is.observable(value)) {
        return "Observable" /* Observable */;
    }
    if (Array.isArray(value)) {
        return "Array" /* Array */;
    }
    if (isBuffer(value)) {
        return "Buffer" /* Buffer */;
    }
    const tagType = getObjectType(value);
    if (tagType) {
        return tagType;
    }
    if (value instanceof String || value instanceof Boolean || value instanceof Number) {
        throw new TypeError('Please don\'t use object wrappers for primitive types');
    }
    return "Object" /* Object */;
}
(function (is) {
    // tslint:disable-next-line:strict-type-predicates
    const isObject = (value) => typeof value === 'object';
    // tslint:disable:variable-name
    is.undefined = isOfType('undefined');
    is.string = isOfType('string');
    is.number = isOfType('number');
    is.function_ = isOfType('function');
    // tslint:disable-next-line:strict-type-predicates
    is.null_ = (value) => value === null;
    is.class_ = (value) => is.function_(value) && value.toString().startsWith('class ');
    is.boolean = (value) => value === true || value === false;
    is.symbol = isOfType('symbol');
    // tslint:enable:variable-name
    is.numericString = (value) => is.string(value) && value.length > 0 && !Number.isNaN(Number(value));
    is.array = Array.isArray;
    is.buffer = isBuffer;
    is.nullOrUndefined = (value) => is.null_(value) || is.undefined(value);
    is.object = (value) => !is.nullOrUndefined(value) && (is.function_(value) || isObject(value));
    is.iterable = (value) => !is.nullOrUndefined(value) && is.function_(value[Symbol.iterator]);
    is.asyncIterable = (value) => !is.nullOrUndefined(value) && is.function_(value[Symbol.asyncIterator]);
    is.generator = (value) => is.iterable(value) && is.function_(value.next) && is.function_(value.throw);
    is.nativePromise = (value) => isObjectOfType("Promise" /* Promise */)(value);
    const hasPromiseAPI = (value) => !is.null_(value) &&
        isObject(value) &&
        is.function_(value.then) &&
        is.function_(value.catch);
    is.promise = (value) => is.nativePromise(value) || hasPromiseAPI(value);
    is.generatorFunction = isObjectOfType("GeneratorFunction" /* GeneratorFunction */);
    is.asyncFunction = isObjectOfType("AsyncFunction" /* AsyncFunction */);
    is.boundFunction = (value) => is.function_(value) && !value.hasOwnProperty('prototype');
    is.regExp = isObjectOfType("RegExp" /* RegExp */);
    is.date = isObjectOfType("Date" /* Date */);
    is.error = isObjectOfType("Error" /* Error */);
    is.map = (value) => isObjectOfType("Map" /* Map */)(value);
    is.set = (value) => isObjectOfType("Set" /* Set */)(value);
    is.weakMap = (value) => isObjectOfType("WeakMap" /* WeakMap */)(value);
    is.weakSet = (value) => isObjectOfType("WeakSet" /* WeakSet */)(value);
    is.int8Array = isObjectOfType("Int8Array" /* Int8Array */);
    is.uint8Array = isObjectOfType("Uint8Array" /* Uint8Array */);
    is.uint8ClampedArray = isObjectOfType("Uint8ClampedArray" /* Uint8ClampedArray */);
    is.int16Array = isObjectOfType("Int16Array" /* Int16Array */);
    is.uint16Array = isObjectOfType("Uint16Array" /* Uint16Array */);
    is.int32Array = isObjectOfType("Int32Array" /* Int32Array */);
    is.uint32Array = isObjectOfType("Uint32Array" /* Uint32Array */);
    is.float32Array = isObjectOfType("Float32Array" /* Float32Array */);
    is.float64Array = isObjectOfType("Float64Array" /* Float64Array */);
    is.arrayBuffer = isObjectOfType("ArrayBuffer" /* ArrayBuffer */);
    is.sharedArrayBuffer = isObjectOfType("SharedArrayBuffer" /* SharedArrayBuffer */);
    is.dataView = isObjectOfType("DataView" /* DataView */);
    is.directInstanceOf = (instance, klass) => Object.getPrototypeOf(instance) === klass.prototype;
    is.urlInstance = (value) => isObjectOfType("URL" /* URL */)(value);
    is.urlString = (value) => {
        if (!is.string(value)) {
            return false;
        }
        try {
            new URLGlobal(value); // tslint:disable-line no-unused-expression
            return true;
        }
        catch (_a) {
            return false;
        }
    };
    is.truthy = (value) => Boolean(value);
    is.falsy = (value) => !value;
    is.nan = (value) => Number.isNaN(value);
    const primitiveTypes = new Set([
        'undefined',
        'string',
        'number',
        'boolean',
        'symbol'
    ]);
    is.primitive = (value) => is.null_(value) || primitiveTypes.has(typeof value);
    is.integer = (value) => Number.isInteger(value);
    is.safeInteger = (value) => Number.isSafeInteger(value);
    is.plainObject = (value) => {
        // From: https://github.com/sindresorhus/is-plain-obj/blob/master/index.js
        let prototype;
        return getObjectType(value) === "Object" /* Object */ &&
            (prototype = Object.getPrototypeOf(value), prototype === null || // tslint:disable-line:ban-comma-operator
                prototype === Object.getPrototypeOf({}));
    };
    const typedArrayTypes = new Set([
        "Int8Array" /* Int8Array */,
        "Uint8Array" /* Uint8Array */,
        "Uint8ClampedArray" /* Uint8ClampedArray */,
        "Int16Array" /* Int16Array */,
        "Uint16Array" /* Uint16Array */,
        "Int32Array" /* Int32Array */,
        "Uint32Array" /* Uint32Array */,
        "Float32Array" /* Float32Array */,
        "Float64Array" /* Float64Array */
    ]);
    is.typedArray = (value) => {
        const objectType = getObjectType(value);
        if (objectType === null) {
            return false;
        }
        return typedArrayTypes.has(objectType);
    };
    const isValidLength = (value) => is.safeInteger(value) && value > -1;
    is.arrayLike = (value) => !is.nullOrUndefined(value) && !is.function_(value) && isValidLength(value.length);
    is.inRange = (value, range) => {
        if (is.number(range)) {
            return value >= Math.min(0, range) && value <= Math.max(range, 0);
        }
        if (is.array(range) && range.length === 2) {
            return value >= Math.min(...range) && value <= Math.max(...range);
        }
        throw new TypeError(`Invalid range: ${JSON.stringify(range)}`);
    };
    const NODE_TYPE_ELEMENT = 1;
    const DOM_PROPERTIES_TO_CHECK = [
        'innerHTML',
        'ownerDocument',
        'style',
        'attributes',
        'nodeValue'
    ];
    is.domElement = (value) => is.object(value) && value.nodeType === NODE_TYPE_ELEMENT && is.string(value.nodeName) &&
        !is.plainObject(value) && DOM_PROPERTIES_TO_CHECK.every(property => property in value);
    is.observable = (value) => {
        if (!value) {
            return false;
        }
        if (value[Symbol.observable] && value === value[Symbol.observable]()) {
            return true;
        }
        if (value['@@observable'] && value === value['@@observable']()) {
            return true;
        }
        return false;
    };
    is.nodeStream = (value) => !is.nullOrUndefined(value) && isObject(value) && is.function_(value.pipe) && !is.observable(value);
    is.infinite = (value) => value === Infinity || value === -Infinity;
    const isAbsoluteMod2 = (rem) => (value) => is.integer(value) && Math.abs(value % 2) === rem;
    is.even = isAbsoluteMod2(0);
    is.odd = isAbsoluteMod2(1);
    const isWhiteSpaceString = (value) => is.string(value) && /\S/.test(value) === false;
    is.emptyArray = (value) => is.array(value) && value.length === 0;
    is.nonEmptyArray = (value) => is.array(value) && value.length > 0;
    is.emptyString = (value) => is.string(value) && value.length === 0;
    is.nonEmptyString = (value) => is.string(value) && value.length > 0;
    is.emptyStringOrWhitespace = (value) => is.emptyString(value) || isWhiteSpaceString(value);
    is.emptyObject = (value) => is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length === 0;
    is.nonEmptyObject = (value) => is.object(value) && !is.map(value) && !is.set(value) && Object.keys(value).length > 0;
    is.emptySet = (value) => is.set(value) && value.size === 0;
    is.nonEmptySet = (value) => is.set(value) && value.size > 0;
    is.emptyMap = (value) => is.map(value) && value.size === 0;
    is.nonEmptyMap = (value) => is.map(value) && value.size > 0;
    const predicateOnArray = (method, predicate, values) => {
        if (is.function_(predicate) === false) {
            throw new TypeError(`Invalid predicate: ${JSON.stringify(predicate)}`);
        }
        if (values.length === 0) {
            throw new TypeError('Invalid number of values');
        }
        return method.call(values, predicate);
    };
    // tslint:disable variable-name
    is.any = (predicate, ...values) => predicateOnArray(Array.prototype.some, predicate, values);
    is.all = (predicate, ...values) => predicateOnArray(Array.prototype.every, predicate, values);
    // tslint:enable variable-name
})(is || (is = {}));
// Some few keywords are reserved, but we'll populate them for Node.js users
// See https://github.com/Microsoft/TypeScript/issues/2536
Object.defineProperties(is, {
    class: {
        value: is.class_
    },
    function: {
        value: is.function_
    },
    null: {
        value: is.null_
    }
});
exports.default = is;
// For CommonJS default export support
module.exports = is;
module.exports.default = is;
//# sourceMappingURL=index.js.map

/***/ }),

/***/ 19308:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const deferToConnect = __webpack_require__(17611);

module.exports = request => {
	const timings = {
		start: Date.now(),
		socket: null,
		lookup: null,
		connect: null,
		upload: null,
		response: null,
		end: null,
		error: null,
		phases: {
			wait: null,
			dns: null,
			tcp: null,
			request: null,
			firstByte: null,
			download: null,
			total: null
		}
	};

	const handleError = origin => {
		const emit = origin.emit.bind(origin);
		origin.emit = (event, ...args) => {
			// Catches the `error` event
			if (event === 'error') {
				timings.error = Date.now();
				timings.phases.total = timings.error - timings.start;

				origin.emit = emit;
			}

			// Saves the original behavior
			return emit(event, ...args);
		};
	};

	let uploadFinished = false;
	const onUpload = () => {
		timings.upload = Date.now();
		timings.phases.request = timings.upload - timings.connect;
	};

	handleError(request);

	request.once('socket', socket => {
		timings.socket = Date.now();
		timings.phases.wait = timings.socket - timings.start;

		const lookupListener = () => {
			timings.lookup = Date.now();
			timings.phases.dns = timings.lookup - timings.socket;
		};

		socket.once('lookup', lookupListener);

		deferToConnect(socket, () => {
			timings.connect = Date.now();

			if (timings.lookup === null) {
				socket.removeListener('lookup', lookupListener);
				timings.lookup = timings.connect;
				timings.phases.dns = timings.lookup - timings.socket;
			}

			timings.phases.tcp = timings.connect - timings.lookup;

			if (uploadFinished && !timings.upload) {
				onUpload();
			}
		});
	});

	request.once('finish', () => {
		uploadFinished = true;

		if (timings.connect) {
			onUpload();
		}
	});

	request.once('response', response => {
		timings.response = Date.now();
		timings.phases.firstByte = timings.response - timings.upload;

		handleError(response);

		response.once('end', () => {
			timings.end = Date.now();
			timings.phases.download = timings.end - timings.response;
			timings.phases.total = timings.end - timings.start;
		});
	});

	return timings;
};


/***/ }),

/***/ 61231:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const indentString = __webpack_require__(98043);
const cleanStack = __webpack_require__(27972);

const cleanInternalStack = stack => stack.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g, '');

class AggregateError extends Error {
	constructor(errors) {
		if (!Array.isArray(errors)) {
			throw new TypeError(`Expected input to be an Array, got ${typeof errors}`);
		}

		errors = [...errors].map(error => {
			if (error instanceof Error) {
				return error;
			}

			if (error !== null && typeof error === 'object') {
				// Handle plain error objects with message property and/or possibly other metadata
				return Object.assign(new Error(error.message), error);
			}

			return new Error(error);
		});

		let message = errors
			.map(error => {
				// The `stack` property is not standardized, so we can't assume it exists
				return typeof error.stack === 'string' ? cleanInternalStack(cleanStack(error.stack)) : String(error);
			})
			.join('\n');
		message = '\n' + indentString(message, 4);
		super(message);

		this.name = 'AggregateError';

		Object.defineProperty(this, '_errors', {value: errors});
	}

	* [Symbol.iterator]() {
		for (const error of this._errors) {
			yield error;
		}
	}
}

module.exports = AggregateError;


/***/ }),

/***/ 64941:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var compileSchema = __webpack_require__(875)
  , resolve = __webpack_require__(63896)
  , Cache = __webpack_require__(93679)
  , SchemaObject = __webpack_require__(37605)
  , stableStringify = __webpack_require__(30969)
  , formats = __webpack_require__(66627)
  , rules = __webpack_require__(68561)
  , $dataMetaSchema = __webpack_require__(21412)
  , util = __webpack_require__(76578);

module.exports = Ajv;

Ajv.prototype.validate = validate;
Ajv.prototype.compile = compile;
Ajv.prototype.addSchema = addSchema;
Ajv.prototype.addMetaSchema = addMetaSchema;
Ajv.prototype.validateSchema = validateSchema;
Ajv.prototype.getSchema = getSchema;
Ajv.prototype.removeSchema = removeSchema;
Ajv.prototype.addFormat = addFormat;
Ajv.prototype.errorsText = errorsText;

Ajv.prototype._addSchema = _addSchema;
Ajv.prototype._compile = _compile;

Ajv.prototype.compileAsync = __webpack_require__(80890);
var customKeyword = __webpack_require__(53297);
Ajv.prototype.addKeyword = customKeyword.add;
Ajv.prototype.getKeyword = customKeyword.get;
Ajv.prototype.removeKeyword = customKeyword.remove;
Ajv.prototype.validateKeyword = customKeyword.validate;

var errorClasses = __webpack_require__(25726);
Ajv.ValidationError = errorClasses.Validation;
Ajv.MissingRefError = errorClasses.MissingRef;
Ajv.$dataMetaSchema = $dataMetaSchema;

var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema';

var META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes', 'strictDefaults' ];
var META_SUPPORT_DATA = ['/properties'];

/**
 * Creates validator instance.
 * Usage: `Ajv(opts)`
 * @param {Object} opts optional options
 * @return {Object} ajv instance
 */
function Ajv(opts) {
  if (!(this instanceof Ajv)) return new Ajv(opts);
  opts = this._opts = util.copy(opts) || {};
  setLogger(this);
  this._schemas = {};
  this._refs = {};
  this._fragments = {};
  this._formats = formats(opts.format);

  this._cache = opts.cache || new Cache;
  this._loadingSchemas = {};
  this._compilations = [];
  this.RULES = rules();
  this._getId = chooseGetId(opts);

  opts.loopRequired = opts.loopRequired || Infinity;
  if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true;
  if (opts.serialize === undefined) opts.serialize = stableStringify;
  this._metaOpts = getMetaSchemaOptions(this);

  if (opts.formats) addInitialFormats(this);
  if (opts.keywords) addInitialKeywords(this);
  addDefaultMetaSchema(this);
  if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta);
  if (opts.nullable) this.addKeyword('nullable', {metaSchema: {type: 'boolean'}});
  addInitialSchemas(this);
}



/**
 * Validate data using schema
 * Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize.
 * @this   Ajv
 * @param  {String|Object} schemaKeyRef key, ref or schema object
 * @param  {Any} data to be validated
 * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`).
 */
function validate(schemaKeyRef, data) {
  var v;
  if (typeof schemaKeyRef == 'string') {
    v = this.getSchema(schemaKeyRef);
    if (!v) throw new Error('no schema with key or ref "' + schemaKeyRef + '"');
  } else {
    var schemaObj = this._addSchema(schemaKeyRef);
    v = schemaObj.validate || this._compile(schemaObj);
  }

  var valid = v(data);
  if (v.$async !== true) this.errors = v.errors;
  return valid;
}


/**
 * Create validating function for passed schema.
 * @this   Ajv
 * @param  {Object} schema schema object
 * @param  {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords.
 * @return {Function} validating function
 */
function compile(schema, _meta) {
  var schemaObj = this._addSchema(schema, undefined, _meta);
  return schemaObj.validate || this._compile(schemaObj);
}


/**
 * Adds schema to the instance.
 * @this   Ajv
 * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored.
 * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`.
 * @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead.
 * @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead.
 * @return {Ajv} this for method chaining
 */
function addSchema(schema, key, _skipValidation, _meta) {
  if (Array.isArray(schema)){
    for (var i=0; i<schema.length; i++) this.addSchema(schema[i], undefined, _skipValidation, _meta);
    return this;
  }
  var id = this._getId(schema);
  if (id !== undefined && typeof id != 'string')
    throw new Error('schema id must be string');
  key = resolve.normalizeId(key || id);
  checkUnique(this, key);
  this._schemas[key] = this._addSchema(schema, _skipValidation, _meta, true);
  return this;
}


/**
 * Add schema that will be used to validate other schemas
 * options in META_IGNORE_OPTIONS are alway set to false
 * @this   Ajv
 * @param {Object} schema schema object
 * @param {String} key optional schema key
 * @param {Boolean} skipValidation true to skip schema validation, can be used to override validateSchema option for meta-schema
 * @return {Ajv} this for method chaining
 */
function addMetaSchema(schema, key, skipValidation) {
  this.addSchema(schema, key, skipValidation, true);
  return this;
}


/**
 * Validate schema
 * @this   Ajv
 * @param {Object} schema schema to validate
 * @param {Boolean} throwOrLogError pass true to throw (or log) an error if invalid
 * @return {Boolean} true if schema is valid
 */
function validateSchema(schema, throwOrLogError) {
  var $schema = schema.$schema;
  if ($schema !== undefined && typeof $schema != 'string')
    throw new Error('$schema must be a string');
  $schema = $schema || this._opts.defaultMeta || defaultMeta(this);
  if (!$schema) {
    this.logger.warn('meta-schema not available');
    this.errors = null;
    return true;
  }
  var valid = this.validate($schema, schema);
  if (!valid && throwOrLogError) {
    var message = 'schema is invalid: ' + this.errorsText();
    if (this._opts.validateSchema == 'log') this.logger.error(message);
    else throw new Error(message);
  }
  return valid;
}


function defaultMeta(self) {
  var meta = self._opts.meta;
  self._opts.defaultMeta = typeof meta == 'object'
                            ? self._getId(meta) || meta
                            : self.getSchema(META_SCHEMA_ID)
                              ? META_SCHEMA_ID
                              : undefined;
  return self._opts.defaultMeta;
}


/**
 * Get compiled schema from the instance by `key` or `ref`.
 * @this   Ajv
 * @param  {String} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id).
 * @return {Function} schema validating function (with property `schema`).
 */
function getSchema(keyRef) {
  var schemaObj = _getSchemaObj(this, keyRef);
  switch (typeof schemaObj) {
    case 'object': return schemaObj.validate || this._compile(schemaObj);
    case 'string': return this.getSchema(schemaObj);
    case 'undefined': return _getSchemaFragment(this, keyRef);
  }
}


function _getSchemaFragment(self, ref) {
  var res = resolve.schema.call(self, { schema: {} }, ref);
  if (res) {
    var schema = res.schema
      , root = res.root
      , baseId = res.baseId;
    var v = compileSchema.call(self, schema, root, undefined, baseId);
    self._fragments[ref] = new SchemaObject({
      ref: ref,
      fragment: true,
      schema: schema,
      root: root,
      baseId: baseId,
      validate: v
    });
    return v;
  }
}


function _getSchemaObj(self, keyRef) {
  keyRef = resolve.normalizeId(keyRef);
  return self._schemas[keyRef] || self._refs[keyRef] || self._fragments[keyRef];
}


/**
 * Remove cached schema(s).
 * If no parameter is passed all schemas but meta-schemas are removed.
 * If RegExp is passed all schemas with key/id matching pattern but meta-schemas are removed.
 * Even if schema is referenced by other schemas it still can be removed as other schemas have local references.
 * @this   Ajv
 * @param  {String|Object|RegExp} schemaKeyRef key, ref, pattern to match key/ref or schema object
 * @return {Ajv} this for method chaining
 */
function removeSchema(schemaKeyRef) {
  if (schemaKeyRef instanceof RegExp) {
    _removeAllSchemas(this, this._schemas, schemaKeyRef);
    _removeAllSchemas(this, this._refs, schemaKeyRef);
    return this;
  }
  switch (typeof schemaKeyRef) {
    case 'undefined':
      _removeAllSchemas(this, this._schemas);
      _removeAllSchemas(this, this._refs);
      this._cache.clear();
      return this;
    case 'string':
      var schemaObj = _getSchemaObj(this, schemaKeyRef);
      if (schemaObj) this._cache.del(schemaObj.cacheKey);
      delete this._schemas[schemaKeyRef];
      delete this._refs[schemaKeyRef];
      return this;
    case 'object':
      var serialize = this._opts.serialize;
      var cacheKey = serialize ? serialize(schemaKeyRef) : schemaKeyRef;
      this._cache.del(cacheKey);
      var id = this._getId(schemaKeyRef);
      if (id) {
        id = resolve.normalizeId(id);
        delete this._schemas[id];
        delete this._refs[id];
      }
  }
  return this;
}


function _removeAllSchemas(self, schemas, regex) {
  for (var keyRef in schemas) {
    var schemaObj = schemas[keyRef];
    if (!schemaObj.meta && (!regex || regex.test(keyRef))) {
      self._cache.del(schemaObj.cacheKey);
      delete schemas[keyRef];
    }
  }
}


/* @this   Ajv */
function _addSchema(schema, skipValidation, meta, shouldAddSchema) {
  if (typeof schema != 'object' && typeof schema != 'boolean')
    throw new Error('schema should be object or boolean');
  var serialize = this._opts.serialize;
  var cacheKey = serialize ? serialize(schema) : schema;
  var cached = this._cache.get(cacheKey);
  if (cached) return cached;

  shouldAddSchema = shouldAddSchema || this._opts.addUsedSchema !== false;

  var id = resolve.normalizeId(this._getId(schema));
  if (id && shouldAddSchema) checkUnique(this, id);

  var willValidate = this._opts.validateSchema !== false && !skipValidation;
  var recursiveMeta;
  if (willValidate && !(recursiveMeta = id && id == resolve.normalizeId(schema.$schema)))
    this.validateSchema(schema, true);

  var localRefs = resolve.ids.call(this, schema);

  var schemaObj = new SchemaObject({
    id: id,
    schema: schema,
    localRefs: localRefs,
    cacheKey: cacheKey,
    meta: meta
  });

  if (id[0] != '#' && shouldAddSchema) this._refs[id] = schemaObj;
  this._cache.put(cacheKey, schemaObj);

  if (willValidate && recursiveMeta) this.validateSchema(schema, true);

  return schemaObj;
}


/* @this   Ajv */
function _compile(schemaObj, root) {
  if (schemaObj.compiling) {
    schemaObj.validate = callValidate;
    callValidate.schema = schemaObj.schema;
    callValidate.errors = null;
    callValidate.root = root ? root : callValidate;
    if (schemaObj.schema.$async === true)
      callValidate.$async = true;
    return callValidate;
  }
  schemaObj.compiling = true;

  var currentOpts;
  if (schemaObj.meta) {
    currentOpts = this._opts;
    this._opts = this._metaOpts;
  }

  var v;
  try { v = compileSchema.call(this, schemaObj.schema, root, schemaObj.localRefs); }
  catch(e) {
    delete schemaObj.validate;
    throw e;
  }
  finally {
    schemaObj.compiling = false;
    if (schemaObj.meta) this._opts = currentOpts;
  }

  schemaObj.validate = v;
  schemaObj.refs = v.refs;
  schemaObj.refVal = v.refVal;
  schemaObj.root = v.root;
  return v;


  /* @this   {*} - custom context, see passContext option */
  function callValidate() {
    /* jshint validthis: true */
    var _validate = schemaObj.validate;
    var result = _validate.apply(this, arguments);
    callValidate.errors = _validate.errors;
    return result;
  }
}


function chooseGetId(opts) {
  switch (opts.schemaId) {
    case 'auto': return _get$IdOrId;
    case 'id': return _getId;
    default: return _get$Id;
  }
}

/* @this   Ajv */
function _getId(schema) {
  if (schema.$id) this.logger.warn('schema $id ignored', schema.$id);
  return schema.id;
}

/* @this   Ajv */
function _get$Id(schema) {
  if (schema.id) this.logger.warn('schema id ignored', schema.id);
  return schema.$id;
}


function _get$IdOrId(schema) {
  if (schema.$id && schema.id && schema.$id != schema.id)
    throw new Error('schema $id is different from id');
  return schema.$id || schema.id;
}


/**
 * Convert array of error message objects to string
 * @this   Ajv
 * @param  {Array<Object>} errors optional array of validation errors, if not passed errors from the instance are used.
 * @param  {Object} options optional options with properties `separator` and `dataVar`.
 * @return {String} human readable string with all errors descriptions
 */
function errorsText(errors, options) {
  errors = errors || this.errors;
  if (!errors) return 'No errors';
  options = options || {};
  var separator = options.separator === undefined ? ', ' : options.separator;
  var dataVar = options.dataVar === undefined ? 'data' : options.dataVar;

  var text = '';
  for (var i=0; i<errors.length; i++) {
    var e = errors[i];
    if (e) text += dataVar + e.dataPath + ' ' + e.message + separator;
  }
  return text.slice(0, -separator.length);
}


/**
 * Add custom format
 * @this   Ajv
 * @param {String} name format name
 * @param {String|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid)
 * @return {Ajv} this for method chaining
 */
function addFormat(name, format) {
  if (typeof format == 'string') format = new RegExp(format);
  this._formats[name] = format;
  return this;
}


function addDefaultMetaSchema(self) {
  var $dataSchema;
  if (self._opts.$data) {
    $dataSchema = __webpack_require__(66835);
    self.addMetaSchema($dataSchema, $dataSchema.$id, true);
  }
  if (self._opts.meta === false) return;
  var metaSchema = __webpack_require__(40038);
  if (self._opts.$data) metaSchema = $dataMetaSchema(metaSchema, META_SUPPORT_DATA);
  self.addMetaSchema(metaSchema, META_SCHEMA_ID, true);
  self._refs['http://json-schema.org/schema'] = META_SCHEMA_ID;
}


function addInitialSchemas(self) {
  var optsSchemas = self._opts.schemas;
  if (!optsSchemas) return;
  if (Array.isArray(optsSchemas)) self.addSchema(optsSchemas);
  else for (var key in optsSchemas) self.addSchema(optsSchemas[key], key);
}


function addInitialFormats(self) {
  for (var name in self._opts.formats) {
    var format = self._opts.formats[name];
    self.addFormat(name, format);
  }
}


function addInitialKeywords(self) {
  for (var name in self._opts.keywords) {
    var keyword = self._opts.keywords[name];
    self.addKeyword(name, keyword);
  }
}


function checkUnique(self, id) {
  if (self._schemas[id] || self._refs[id])
    throw new Error('schema with key or id "' + id + '" already exists');
}


function getMetaSchemaOptions(self) {
  var metaOpts = util.copy(self._opts);
  for (var i=0; i<META_IGNORE_OPTIONS.length; i++)
    delete metaOpts[META_IGNORE_OPTIONS[i]];
  return metaOpts;
}


function setLogger(self) {
  var logger = self._opts.logger;
  if (logger === false) {
    self.logger = {log: noop, warn: noop, error: noop};
  } else {
    if (logger === undefined) logger = console;
    if (!(typeof logger == 'object' && logger.log && logger.warn && logger.error))
      throw new Error('logger must implement log, warn and error methods');
    self.logger = logger;
  }
}


function noop() {}


/***/ }),

/***/ 93679:
/***/ ((module) => {

"use strict";



var Cache = module.exports = function Cache() {
  this._cache = {};
};


Cache.prototype.put = function Cache_put(key, value) {
  this._cache[key] = value;
};


Cache.prototype.get = function Cache_get(key) {
  return this._cache[key];
};


Cache.prototype.del = function Cache_del(key) {
  delete this._cache[key];
};


Cache.prototype.clear = function Cache_clear() {
  this._cache = {};
};


/***/ }),

/***/ 80890:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var MissingRefError = __webpack_require__(25726).MissingRef;

module.exports = compileAsync;


/**
 * Creates validating function for passed schema with asynchronous loading of missing schemas.
 * `loadSchema` option should be a function that accepts schema uri and returns promise that resolves with the schema.
 * @this  Ajv
 * @param {Object}   schema schema object
 * @param {Boolean}  meta optional true to compile meta-schema; this parameter can be skipped
 * @param {Function} callback an optional node-style callback, it is called with 2 parameters: error (or null) and validating function.
 * @return {Promise} promise that resolves with a validating function.
 */
function compileAsync(schema, meta, callback) {
  /* eslint no-shadow: 0 */
  /* global Promise */
  /* jshint validthis: true */
  var self = this;
  if (typeof this._opts.loadSchema != 'function')
    throw new Error('options.loadSchema should be a function');

  if (typeof meta == 'function') {
    callback = meta;
    meta = undefined;
  }

  var p = loadMetaSchemaOf(schema).then(function () {
    var schemaObj = self._addSchema(schema, undefined, meta);
    return schemaObj.validate || _compileAsync(schemaObj);
  });

  if (callback) {
    p.then(
      function(v) { callback(null, v); },
      callback
    );
  }

  return p;


  function loadMetaSchemaOf(sch) {
    var $schema = sch.$schema;
    return $schema && !self.getSchema($schema)
            ? compileAsync.call(self, { $ref: $schema }, true)
            : Promise.resolve();
  }


  function _compileAsync(schemaObj) {
    try { return self._compile(schemaObj); }
    catch(e) {
      if (e instanceof MissingRefError) return loadMissingSchema(e);
      throw e;
    }


    function loadMissingSchema(e) {
      var ref = e.missingSchema;
      if (added(ref)) throw new Error('Schema ' + ref + ' is loaded but ' + e.missingRef + ' cannot be resolved');

      var schemaPromise = self._loadingSchemas[ref];
      if (!schemaPromise) {
        schemaPromise = self._loadingSchemas[ref] = self._opts.loadSchema(ref);
        schemaPromise.then(removePromise, removePromise);
      }

      return schemaPromise.then(function (sch) {
        if (!added(ref)) {
          return loadMetaSchemaOf(sch).then(function () {
            if (!added(ref)) self.addSchema(sch, ref, undefined, meta);
          });
        }
      }).then(function() {
        return _compileAsync(schemaObj);
      });

      function removePromise() {
        delete self._loadingSchemas[ref];
      }

      function added(ref) {
        return self._refs[ref] || self._schemas[ref];
      }
    }
  }
}


/***/ }),

/***/ 25726:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var resolve = __webpack_require__(63896);

module.exports = {
  Validation: errorSubclass(ValidationError),
  MissingRef: errorSubclass(MissingRefError)
};


function ValidationError(errors) {
  this.message = 'validation failed';
  this.errors = errors;
  this.ajv = this.validation = true;
}


MissingRefError.message = function (baseId, ref) {
  return 'can\'t resolve reference ' + ref + ' from id ' + baseId;
};


function MissingRefError(baseId, ref, message) {
  this.message = message || MissingRefError.message(baseId, ref);
  this.missingRef = resolve.url(baseId, ref);
  this.missingSchema = resolve.normalizeId(resolve.fullPath(this.missingRef));
}


function errorSubclass(Subclass) {
  Subclass.prototype = Object.create(Error.prototype);
  Subclass.prototype.constructor = Subclass;
  return Subclass;
}


/***/ }),

/***/ 66627:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var util = __webpack_require__(76578);

var DATE = /^(\d\d\d\d)-(\d\d)-(\d\d)$/;
var DAYS = [0,31,28,31,30,31,30,31,31,30,31,30,31];
var TIME = /^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i;
var HOSTNAME = /^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i;
var URI = /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
var URIREF = /^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
// uri-template: https://tools.ietf.org/html/rfc6570
var URITEMPLATE = /^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i;
// For the source: https://gist.github.com/dperini/729294
// For test cases: https://mathiasbynens.be/demo/url-regex
// @todo Delete current URL in favour of the commented out URL rule when this issue is fixed https://github.com/eslint/eslint/issues/7983.
// var URL = /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u{00a1}-\u{ffff}0-9]+-)*[a-z\u{00a1}-\u{ffff}0-9]+)(?:\.(?:[a-z\u{00a1}-\u{ffff}0-9]+-)*[a-z\u{00a1}-\u{ffff}0-9]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu;
var URL = /^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i;
var UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;
var JSON_POINTER = /^(?:\/(?:[^~/]|~0|~1)*)*$/;
var JSON_POINTER_URI_FRAGMENT = /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i;
var RELATIVE_JSON_POINTER = /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;


module.exports = formats;

function formats(mode) {
  mode = mode == 'full' ? 'full' : 'fast';
  return util.copy(formats[mode]);
}


formats.fast = {
  // date: http://tools.ietf.org/html/rfc3339#section-5.6
  date: /^\d\d\d\d-[0-1]\d-[0-3]\d$/,
  // date-time: http://tools.ietf.org/html/rfc3339#section-5.6
  time: /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,
  'date-time': /^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,
  // uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js
  uri: /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,
  'uri-reference': /^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,
  'uri-template': URITEMPLATE,
  url: URL,
  // email (sources from jsen validator):
  // http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363
  // http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'willful violation')
  email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,
  hostname: HOSTNAME,
  // optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html
  ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,
  // optimized http://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses
  ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,
  regex: regex,
  // uuid: http://tools.ietf.org/html/rfc4122
  uuid: UUID,
  // JSON-pointer: https://tools.ietf.org/html/rfc6901
  // uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A
  'json-pointer': JSON_POINTER,
  'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,
  // relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00
  'relative-json-pointer': RELATIVE_JSON_POINTER
};


formats.full = {
  date: date,
  time: time,
  'date-time': date_time,
  uri: uri,
  'uri-reference': URIREF,
  'uri-template': URITEMPLATE,
  url: URL,
  email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,
  hostname: HOSTNAME,
  ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,
  ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,
  regex: regex,
  uuid: UUID,
  'json-pointer': JSON_POINTER,
  'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,
  'relative-json-pointer': RELATIVE_JSON_POINTER
};


function isLeapYear(year) {
  // https://tools.ietf.org/html/rfc3339#appendix-C
  return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
}


function date(str) {
  // full-date from http://tools.ietf.org/html/rfc3339#section-5.6
  var matches = str.match(DATE);
  if (!matches) return false;

  var year = +matches[1];
  var month = +matches[2];
  var day = +matches[3];

  return month >= 1 && month <= 12 && day >= 1 &&
          day <= (month == 2 && isLeapYear(year) ? 29 : DAYS[month]);
}


function time(str, full) {
  var matches = str.match(TIME);
  if (!matches) return false;

  var hour = matches[1];
  var minute = matches[2];
  var second = matches[3];
  var timeZone = matches[5];
  return ((hour <= 23 && minute <= 59 && second <= 59) ||
          (hour == 23 && minute == 59 && second == 60)) &&
         (!full || timeZone);
}


var DATE_TIME_SEPARATOR = /t|\s/i;
function date_time(str) {
  // http://tools.ietf.org/html/rfc3339#section-5.6
  var dateTime = str.split(DATE_TIME_SEPARATOR);
  return dateTime.length == 2 && date(dateTime[0]) && time(dateTime[1], true);
}


var NOT_URI_FRAGMENT = /\/|:/;
function uri(str) {
  // http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required "."
  return NOT_URI_FRAGMENT.test(str) && URI.test(str);
}


var Z_ANCHOR = /[^\\]\\Z/;
function regex(str) {
  if (Z_ANCHOR.test(str)) return false;
  try {
    new RegExp(str);
    return true;
  } catch(e) {
    return false;
  }
}


/***/ }),

/***/ 875:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var resolve = __webpack_require__(63896)
  , util = __webpack_require__(76578)
  , errorClasses = __webpack_require__(25726)
  , stableStringify = __webpack_require__(30969);

var validateGenerator = __webpack_require__(49585);

/**
 * Functions below are used inside compiled validations function
 */

var ucs2length = util.ucs2length;
var equal = __webpack_require__(28206);

// this error is thrown by async schemas to return validation errors via exception
var ValidationError = errorClasses.Validation;

module.exports = compile;


/**
 * Compiles schema to validation function
 * @this   Ajv
 * @param  {Object} schema schema object
 * @param  {Object} root object with information about the root schema for this schema
 * @param  {Object} localRefs the hash of local references inside the schema (created by resolve.id), used for inline resolution
 * @param  {String} baseId base ID for IDs in the schema
 * @return {Function} validation function
 */
function compile(schema, root, localRefs, baseId) {
  /* jshint validthis: true, evil: true */
  /* eslint no-shadow: 0 */
  var self = this
    , opts = this._opts
    , refVal = [ undefined ]
    , refs = {}
    , patterns = []
    , patternsHash = {}
    , defaults = []
    , defaultsHash = {}
    , customRules = [];

  root = root || { schema: schema, refVal: refVal, refs: refs };

  var c = checkCompiling.call(this, schema, root, baseId);
  var compilation = this._compilations[c.index];
  if (c.compiling) return (compilation.callValidate = callValidate);

  var formats = this._formats;
  var RULES = this.RULES;

  try {
    var v = localCompile(schema, root, localRefs, baseId);
    compilation.validate = v;
    var cv = compilation.callValidate;
    if (cv) {
      cv.schema = v.schema;
      cv.errors = null;
      cv.refs = v.refs;
      cv.refVal = v.refVal;
      cv.root = v.root;
      cv.$async = v.$async;
      if (opts.sourceCode) cv.source = v.source;
    }
    return v;
  } finally {
    endCompiling.call(this, schema, root, baseId);
  }

  /* @this   {*} - custom context, see passContext option */
  function callValidate() {
    /* jshint validthis: true */
    var validate = compilation.validate;
    var result = validate.apply(this, arguments);
    callValidate.errors = validate.errors;
    return result;
  }

  function localCompile(_schema, _root, localRefs, baseId) {
    var isRoot = !_root || (_root && _root.schema == _schema);
    if (_root.schema != root.schema)
      return compile.call(self, _schema, _root, localRefs, baseId);

    var $async = _schema.$async === true;

    var sourceCode = validateGenerator({
      isTop: true,
      schema: _schema,
      isRoot: isRoot,
      baseId: baseId,
      root: _root,
      schemaPath: '',
      errSchemaPath: '#',
      errorPath: '""',
      MissingRefError: errorClasses.MissingRef,
      RULES: RULES,
      validate: validateGenerator,
      util: util,
      resolve: resolve,
      resolveRef: resolveRef,
      usePattern: usePattern,
      useDefault: useDefault,
      useCustomRule: useCustomRule,
      opts: opts,
      formats: formats,
      logger: self.logger,
      self: self
    });

    sourceCode = vars(refVal, refValCode) + vars(patterns, patternCode)
                   + vars(defaults, defaultCode) + vars(customRules, customRuleCode)
                   + sourceCode;

    if (opts.processCode) sourceCode = opts.processCode(sourceCode, _schema);
    // console.log('\n\n\n *** \n', JSON.stringify(sourceCode));
    var validate;
    try {
      var makeValidate = new Function(
        'self',
        'RULES',
        'formats',
        'root',
        'refVal',
        'defaults',
        'customRules',
        'equal',
        'ucs2length',
        'ValidationError',
        sourceCode
      );

      validate = makeValidate(
        self,
        RULES,
        formats,
        root,
        refVal,
        defaults,
        customRules,
        equal,
        ucs2length,
        ValidationError
      );

      refVal[0] = validate;
    } catch(e) {
      self.logger.error('Error compiling schema, function code:', sourceCode);
      throw e;
    }

    validate.schema = _schema;
    validate.errors = null;
    validate.refs = refs;
    validate.refVal = refVal;
    validate.root = isRoot ? validate : _root;
    if ($async) validate.$async = true;
    if (opts.sourceCode === true) {
      validate.source = {
        code: sourceCode,
        patterns: patterns,
        defaults: defaults
      };
    }

    return validate;
  }

  function resolveRef(baseId, ref, isRoot) {
    ref = resolve.url(baseId, ref);
    var refIndex = refs[ref];
    var _refVal, refCode;
    if (refIndex !== undefined) {
      _refVal = refVal[refIndex];
      refCode = 'refVal[' + refIndex + ']';
      return resolvedRef(_refVal, refCode);
    }
    if (!isRoot && root.refs) {
      var rootRefId = root.refs[ref];
      if (rootRefId !== undefined) {
        _refVal = root.refVal[rootRefId];
        refCode = addLocalRef(ref, _refVal);
        return resolvedRef(_refVal, refCode);
      }
    }

    refCode = addLocalRef(ref);
    var v = resolve.call(self, localCompile, root, ref);
    if (v === undefined) {
      var localSchema = localRefs && localRefs[ref];
      if (localSchema) {
        v = resolve.inlineRef(localSchema, opts.inlineRefs)
            ? localSchema
            : compile.call(self, localSchema, root, localRefs, baseId);
      }
    }

    if (v === undefined) {
      removeLocalRef(ref);
    } else {
      replaceLocalRef(ref, v);
      return resolvedRef(v, refCode);
    }
  }

  function addLocalRef(ref, v) {
    var refId = refVal.length;
    refVal[refId] = v;
    refs[ref] = refId;
    return 'refVal' + refId;
  }

  function removeLocalRef(ref) {
    delete refs[ref];
  }

  function replaceLocalRef(ref, v) {
    var refId = refs[ref];
    refVal[refId] = v;
  }

  function resolvedRef(refVal, code) {
    return typeof refVal == 'object' || typeof refVal == 'boolean'
            ? { code: code, schema: refVal, inline: true }
            : { code: code, $async: refVal && !!refVal.$async };
  }

  function usePattern(regexStr) {
    var index = patternsHash[regexStr];
    if (index === undefined) {
      index = patternsHash[regexStr] = patterns.length;
      patterns[index] = regexStr;
    }
    return 'pattern' + index;
  }

  function useDefault(value) {
    switch (typeof value) {
      case 'boolean':
      case 'number':
        return '' + value;
      case 'string':
        return util.toQuotedString(value);
      case 'object':
        if (value === null) return 'null';
        var valueStr = stableStringify(value);
        var index = defaultsHash[valueStr];
        if (index === undefined) {
          index = defaultsHash[valueStr] = defaults.length;
          defaults[index] = value;
        }
        return 'default' + index;
    }
  }

  function useCustomRule(rule, schema, parentSchema, it) {
    if (self._opts.validateSchema !== false) {
      var deps = rule.definition.dependencies;
      if (deps && !deps.every(function(keyword) {
        return Object.prototype.hasOwnProperty.call(parentSchema, keyword);
      }))
        throw new Error('parent schema must have all required keywords: ' + deps.join(','));

      var validateSchema = rule.definition.validateSchema;
      if (validateSchema) {
        var valid = validateSchema(schema);
        if (!valid) {
          var message = 'keyword schema is invalid: ' + self.errorsText(validateSchema.errors);
          if (self._opts.validateSchema == 'log') self.logger.error(message);
          else throw new Error(message);
        }
      }
    }

    var compile = rule.definition.compile
      , inline = rule.definition.inline
      , macro = rule.definition.macro;

    var validate;
    if (compile) {
      validate = compile.call(self, schema, parentSchema, it);
    } else if (macro) {
      validate = macro.call(self, schema, parentSchema, it);
      if (opts.validateSchema !== false) self.validateSchema(validate, true);
    } else if (inline) {
      validate = inline.call(self, it, rule.keyword, schema, parentSchema);
    } else {
      validate = rule.definition.validate;
      if (!validate) return;
    }

    if (validate === undefined)
      throw new Error('custom keyword "' + rule.keyword + '"failed to compile');

    var index = customRules.length;
    customRules[index] = validate;

    return {
      code: 'customRule' + index,
      validate: validate
    };
  }
}


/**
 * Checks if the schema is currently compiled
 * @this   Ajv
 * @param  {Object} schema schema to compile
 * @param  {Object} root root object
 * @param  {String} baseId base schema ID
 * @return {Object} object with properties "index" (compilation index) and "compiling" (boolean)
 */
function checkCompiling(schema, root, baseId) {
  /* jshint validthis: true */
  var index = compIndex.call(this, schema, root, baseId);
  if (index >= 0) return { index: index, compiling: true };
  index = this._compilations.length;
  this._compilations[index] = {
    schema: schema,
    root: root,
    baseId: baseId
  };
  return { index: index, compiling: false };
}


/**
 * Removes the schema from the currently compiled list
 * @this   Ajv
 * @param  {Object} schema schema to compile
 * @param  {Object} root root object
 * @param  {String} baseId base schema ID
 */
function endCompiling(schema, root, baseId) {
  /* jshint validthis: true */
  var i = compIndex.call(this, schema, root, baseId);
  if (i >= 0) this._compilations.splice(i, 1);
}


/**
 * Index of schema compilation in the currently compiled list
 * @this   Ajv
 * @param  {Object} schema schema to compile
 * @param  {Object} root root object
 * @param  {String} baseId base schema ID
 * @return {Integer} compilation index
 */
function compIndex(schema, root, baseId) {
  /* jshint validthis: true */
  for (var i=0; i<this._compilations.length; i++) {
    var c = this._compilations[i];
    if (c.schema == schema && c.root == root && c.baseId == baseId) return i;
  }
  return -1;
}


function patternCode(i, patterns) {
  return 'var pattern' + i + ' = new RegExp(' + util.toQuotedString(patterns[i]) + ');';
}


function defaultCode(i) {
  return 'var default' + i + ' = defaults[' + i + '];';
}


function refValCode(i, refVal) {
  return refVal[i] === undefined ? '' : 'var refVal' + i + ' = refVal[' + i + '];';
}


function customRuleCode(i) {
  return 'var customRule' + i + ' = customRules[' + i + '];';
}


function vars(arr, statement) {
  if (!arr.length) return '';
  var code = '';
  for (var i=0; i<arr.length; i++)
    code += statement(i, arr);
  return code;
}


/***/ }),

/***/ 63896:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var URI = __webpack_require__(70020)
  , equal = __webpack_require__(28206)
  , util = __webpack_require__(76578)
  , SchemaObject = __webpack_require__(37605)
  , traverse = __webpack_require__(52533);

module.exports = resolve;

resolve.normalizeId = normalizeId;
resolve.fullPath = getFullPath;
resolve.url = resolveUrl;
resolve.ids = resolveIds;
resolve.inlineRef = inlineRef;
resolve.schema = resolveSchema;

/**
 * [resolve and compile the references ($ref)]
 * @this   Ajv
 * @param  {Function} compile reference to schema compilation funciton (localCompile)
 * @param  {Object} root object with information about the root schema for the current schema
 * @param  {String} ref reference to resolve
 * @return {Object|Function} schema object (if the schema can be inlined) or validation function
 */
function resolve(compile, root, ref) {
  /* jshint validthis: true */
  var refVal = this._refs[ref];
  if (typeof refVal == 'string') {
    if (this._refs[refVal]) refVal = this._refs[refVal];
    else return resolve.call(this, compile, root, refVal);
  }

  refVal = refVal || this._schemas[ref];
  if (refVal instanceof SchemaObject) {
    return inlineRef(refVal.schema, this._opts.inlineRefs)
            ? refVal.schema
            : refVal.validate || this._compile(refVal);
  }

  var res = resolveSchema.call(this, root, ref);
  var schema, v, baseId;
  if (res) {
    schema = res.schema;
    root = res.root;
    baseId = res.baseId;
  }

  if (schema instanceof SchemaObject) {
    v = schema.validate || compile.call(this, schema.schema, root, undefined, baseId);
  } else if (schema !== undefined) {
    v = inlineRef(schema, this._opts.inlineRefs)
        ? schema
        : compile.call(this, schema, root, undefined, baseId);
  }

  return v;
}


/**
 * Resolve schema, its root and baseId
 * @this Ajv
 * @param  {Object} root root object with properties schema, refVal, refs
 * @param  {String} ref  reference to resolve
 * @return {Object} object with properties schema, root, baseId
 */
function resolveSchema(root, ref) {
  /* jshint validthis: true */
  var p = URI.parse(ref)
    , refPath = _getFullPath(p)
    , baseId = getFullPath(this._getId(root.schema));
  if (Object.keys(root.schema).length === 0 || refPath !== baseId) {
    var id = normalizeId(refPath);
    var refVal = this._refs[id];
    if (typeof refVal == 'string') {
      return resolveRecursive.call(this, root, refVal, p);
    } else if (refVal instanceof SchemaObject) {
      if (!refVal.validate) this._compile(refVal);
      root = refVal;
    } else {
      refVal = this._schemas[id];
      if (refVal instanceof SchemaObject) {
        if (!refVal.validate) this._compile(refVal);
        if (id == normalizeId(ref))
          return { schema: refVal, root: root, baseId: baseId };
        root = refVal;
      } else {
        return;
      }
    }
    if (!root.schema) return;
    baseId = getFullPath(this._getId(root.schema));
  }
  return getJsonPointer.call(this, p, baseId, root.schema, root);
}


/* @this Ajv */
function resolveRecursive(root, ref, parsedRef) {
  /* jshint validthis: true */
  var res = resolveSchema.call(this, root, ref);
  if (res) {
    var schema = res.schema;
    var baseId = res.baseId;
    root = res.root;
    var id = this._getId(schema);
    if (id) baseId = resolveUrl(baseId, id);
    return getJsonPointer.call(this, parsedRef, baseId, schema, root);
  }
}


var PREVENT_SCOPE_CHANGE = util.toHash(['properties', 'patternProperties', 'enum', 'dependencies', 'definitions']);
/* @this Ajv */
function getJsonPointer(parsedRef, baseId, schema, root) {
  /* jshint validthis: true */
  parsedRef.fragment = parsedRef.fragment || '';
  if (parsedRef.fragment.slice(0,1) != '/') return;
  var parts = parsedRef.fragment.split('/');

  for (var i = 1; i < parts.length; i++) {
    var part = parts[i];
    if (part) {
      part = util.unescapeFragment(part);
      schema = schema[part];
      if (schema === undefined) break;
      var id;
      if (!PREVENT_SCOPE_CHANGE[part]) {
        id = this._getId(schema);
        if (id) baseId = resolveUrl(baseId, id);
        if (schema.$ref) {
          var $ref = resolveUrl(baseId, schema.$ref);
          var res = resolveSchema.call(this, root, $ref);
          if (res) {
            schema = res.schema;
            root = res.root;
            baseId = res.baseId;
          }
        }
      }
    }
  }
  if (schema !== undefined && schema !== root.schema)
    return { schema: schema, root: root, baseId: baseId };
}


var SIMPLE_INLINED = util.toHash([
  'type', 'format', 'pattern',
  'maxLength', 'minLength',
  'maxProperties', 'minProperties',
  'maxItems', 'minItems',
  'maximum', 'minimum',
  'uniqueItems', 'multipleOf',
  'required', 'enum'
]);
function inlineRef(schema, limit) {
  if (limit === false) return false;
  if (limit === undefined || limit === true) return checkNoRef(schema);
  else if (limit) return countKeys(schema) <= limit;
}


function checkNoRef(schema) {
  var item;
  if (Array.isArray(schema)) {
    for (var i=0; i<schema.length; i++) {
      item = schema[i];
      if (typeof item == 'object' && !checkNoRef(item)) return false;
    }
  } else {
    for (var key in schema) {
      if (key == '$ref') return false;
      item = schema[key];
      if (typeof item == 'object' && !checkNoRef(item)) return false;
    }
  }
  return true;
}


function countKeys(schema) {
  var count = 0, item;
  if (Array.isArray(schema)) {
    for (var i=0; i<schema.length; i++) {
      item = schema[i];
      if (typeof item == 'object') count += countKeys(item);
      if (count == Infinity) return Infinity;
    }
  } else {
    for (var key in schema) {
      if (key == '$ref') return Infinity;
      if (SIMPLE_INLINED[key]) {
        count++;
      } else {
        item = schema[key];
        if (typeof item == 'object') count += countKeys(item) + 1;
        if (count == Infinity) return Infinity;
      }
    }
  }
  return count;
}


function getFullPath(id, normalize) {
  if (normalize !== false) id = normalizeId(id);
  var p = URI.parse(id);
  return _getFullPath(p);
}


function _getFullPath(p) {
  return URI.serialize(p).split('#')[0] + '#';
}


var TRAILING_SLASH_HASH = /#\/?$/;
function normalizeId(id) {
  return id ? id.replace(TRAILING_SLASH_HASH, '') : '';
}


function resolveUrl(baseId, id) {
  id = normalizeId(id);
  return URI.resolve(baseId, id);
}


/* @this Ajv */
function resolveIds(schema) {
  var schemaId = normalizeId(this._getId(schema));
  var baseIds = {'': schemaId};
  var fullPaths = {'': getFullPath(schemaId, false)};
  var localRefs = {};
  var self = this;

  traverse(schema, {allKeys: true}, function(sch, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) {
    if (jsonPtr === '') return;
    var id = self._getId(sch);
    var baseId = baseIds[parentJsonPtr];
    var fullPath = fullPaths[parentJsonPtr] + '/' + parentKeyword;
    if (keyIndex !== undefined)
      fullPath += '/' + (typeof keyIndex == 'number' ? keyIndex : util.escapeFragment(keyIndex));

    if (typeof id == 'string') {
      id = baseId = normalizeId(baseId ? URI.resolve(baseId, id) : id);

      var refVal = self._refs[id];
      if (typeof refVal == 'string') refVal = self._refs[refVal];
      if (refVal && refVal.schema) {
        if (!equal(sch, refVal.schema))
          throw new Error('id "' + id + '" resolves to more than one schema');
      } else if (id != normalizeId(fullPath)) {
        if (id[0] == '#') {
          if (localRefs[id] && !equal(sch, localRefs[id]))
            throw new Error('id "' + id + '" resolves to more than one schema');
          localRefs[id] = sch;
        } else {
          self._refs[id] = fullPath;
        }
      }
    }
    baseIds[jsonPtr] = baseId;
    fullPaths[jsonPtr] = fullPath;
  });

  return localRefs;
}


/***/ }),

/***/ 68561:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ruleModules = __webpack_require__(85810)
  , toHash = __webpack_require__(76578).toHash;

module.exports = function rules() {
  var RULES = [
    { type: 'number',
      rules: [ { 'maximum': ['exclusiveMaximum'] },
               { 'minimum': ['exclusiveMinimum'] }, 'multipleOf', 'format'] },
    { type: 'string',
      rules: [ 'maxLength', 'minLength', 'pattern', 'format' ] },
    { type: 'array',
      rules: [ 'maxItems', 'minItems', 'items', 'contains', 'uniqueItems' ] },
    { type: 'object',
      rules: [ 'maxProperties', 'minProperties', 'required', 'dependencies', 'propertyNames',
               { 'properties': ['additionalProperties', 'patternProperties'] } ] },
    { rules: [ '$ref', 'const', 'enum', 'not', 'anyOf', 'oneOf', 'allOf', 'if' ] }
  ];

  var ALL = [ 'type', '$comment' ];
  var KEYWORDS = [
    '$schema', '$id', 'id', '$data', '$async', 'title',
    'description', 'default', 'definitions',
    'examples', 'readOnly', 'writeOnly',
    'contentMediaType', 'contentEncoding',
    'additionalItems', 'then', 'else'
  ];
  var TYPES = [ 'number', 'integer', 'string', 'array', 'object', 'boolean', 'null' ];
  RULES.all = toHash(ALL);
  RULES.types = toHash(TYPES);

  RULES.forEach(function (group) {
    group.rules = group.rules.map(function (keyword) {
      var implKeywords;
      if (typeof keyword == 'object') {
        var key = Object.keys(keyword)[0];
        implKeywords = keyword[key];
        keyword = key;
        implKeywords.forEach(function (k) {
          ALL.push(k);
          RULES.all[k] = true;
        });
      }
      ALL.push(keyword);
      var rule = RULES.all[keyword] = {
        keyword: keyword,
        code: ruleModules[keyword],
        implements: implKeywords
      };
      return rule;
    });

    RULES.all.$comment = {
      keyword: '$comment',
      code: ruleModules.$comment
    };

    if (group.type) RULES.types[group.type] = group;
  });

  RULES.keywords = toHash(ALL.concat(KEYWORDS));
  RULES.custom = {};

  return RULES;
};


/***/ }),

/***/ 37605:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var util = __webpack_require__(76578);

module.exports = SchemaObject;

function SchemaObject(obj) {
  util.copy(obj, this);
}


/***/ }),

/***/ 64580:
/***/ ((module) => {

"use strict";


// https://mathiasbynens.be/notes/javascript-encoding
// https://github.com/bestiejs/punycode.js - punycode.ucs2.decode
module.exports = function ucs2length(str) {
  var length = 0
    , len = str.length
    , pos = 0
    , value;
  while (pos < len) {
    length++;
    value = str.charCodeAt(pos++);
    if (value >= 0xD800 && value <= 0xDBFF && pos < len) {
      // high surrogate, and there is a next character
      value = str.charCodeAt(pos);
      if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate
    }
  }
  return length;
};


/***/ }),

/***/ 76578:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";



module.exports = {
  copy: copy,
  checkDataType: checkDataType,
  checkDataTypes: checkDataTypes,
  coerceToTypes: coerceToTypes,
  toHash: toHash,
  getProperty: getProperty,
  escapeQuotes: escapeQuotes,
  equal: __webpack_require__(28206),
  ucs2length: __webpack_require__(64580),
  varOccurences: varOccurences,
  varReplace: varReplace,
  schemaHasRules: schemaHasRules,
  schemaHasRulesExcept: schemaHasRulesExcept,
  schemaUnknownRules: schemaUnknownRules,
  toQuotedString: toQuotedString,
  getPathExpr: getPathExpr,
  getPath: getPath,
  getData: getData,
  unescapeFragment: unescapeFragment,
  unescapeJsonPointer: unescapeJsonPointer,
  escapeFragment: escapeFragment,
  escapeJsonPointer: escapeJsonPointer
};


function copy(o, to) {
  to = to || {};
  for (var key in o) to[key] = o[key];
  return to;
}


function checkDataType(dataType, data, strictNumbers, negate) {
  var EQUAL = negate ? ' !== ' : ' === '
    , AND = negate ? ' || ' : ' && '
    , OK = negate ? '!' : ''
    , NOT = negate ? '' : '!';
  switch (dataType) {
    case 'null': return data + EQUAL + 'null';
    case 'array': return OK + 'Array.isArray(' + data + ')';
    case 'object': return '(' + OK + data + AND +
                          'typeof ' + data + EQUAL + '"object"' + AND +
                          NOT + 'Array.isArray(' + data + '))';
    case 'integer': return '(typeof ' + data + EQUAL + '"number"' + AND +
                           NOT + '(' + data + ' % 1)' +
                           AND + data + EQUAL + data +
                           (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')';
    case 'number': return '(typeof ' + data + EQUAL + '"' + dataType + '"' +
                          (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')';
    default: return 'typeof ' + data + EQUAL + '"' + dataType + '"';
  }
}


function checkDataTypes(dataTypes, data, strictNumbers) {
  switch (dataTypes.length) {
    case 1: return checkDataType(dataTypes[0], data, strictNumbers, true);
    default:
      var code = '';
      var types = toHash(dataTypes);
      if (types.array && types.object) {
        code = types.null ? '(': '(!' + data + ' || ';
        code += 'typeof ' + data + ' !== "object")';
        delete types.null;
        delete types.array;
        delete types.object;
      }
      if (types.number) delete types.integer;
      for (var t in types)
        code += (code ? ' && ' : '' ) + checkDataType(t, data, strictNumbers, true);

      return code;
  }
}


var COERCE_TO_TYPES = toHash([ 'string', 'number', 'integer', 'boolean', 'null' ]);
function coerceToTypes(optionCoerceTypes, dataTypes) {
  if (Array.isArray(dataTypes)) {
    var types = [];
    for (var i=0; i<dataTypes.length; i++) {
      var t = dataTypes[i];
      if (COERCE_TO_TYPES[t]) types[types.length] = t;
      else if (optionCoerceTypes === 'array' && t === 'array') types[types.length] = t;
    }
    if (types.length) return types;
  } else if (COERCE_TO_TYPES[dataTypes]) {
    return [dataTypes];
  } else if (optionCoerceTypes === 'array' && dataTypes === 'array') {
    return ['array'];
  }
}


function toHash(arr) {
  var hash = {};
  for (var i=0; i<arr.length; i++) hash[arr[i]] = true;
  return hash;
}


var IDENTIFIER = /^[a-z$_][a-z$_0-9]*$/i;
var SINGLE_QUOTE = /'|\\/g;
function getProperty(key) {
  return typeof key == 'number'
          ? '[' + key + ']'
          : IDENTIFIER.test(key)
            ? '.' + key
            : "['" + escapeQuotes(key) + "']";
}


function escapeQuotes(str) {
  return str.replace(SINGLE_QUOTE, '\\$&')
            .replace(/\n/g, '\\n')
            .replace(/\r/g, '\\r')
            .replace(/\f/g, '\\f')
            .replace(/\t/g, '\\t');
}


function varOccurences(str, dataVar) {
  dataVar += '[^0-9]';
  var matches = str.match(new RegExp(dataVar, 'g'));
  return matches ? matches.length : 0;
}


function varReplace(str, dataVar, expr) {
  dataVar += '([^0-9])';
  expr = expr.replace(/\$/g, '$$$$');
  return str.replace(new RegExp(dataVar, 'g'), expr + '$1');
}


function schemaHasRules(schema, rules) {
  if (typeof schema == 'boolean') return !schema;
  for (var key in schema) if (rules[key]) return true;
}


function schemaHasRulesExcept(schema, rules, exceptKeyword) {
  if (typeof schema == 'boolean') return !schema && exceptKeyword != 'not';
  for (var key in schema) if (key != exceptKeyword && rules[key]) return true;
}


function schemaUnknownRules(schema, rules) {
  if (typeof schema == 'boolean') return;
  for (var key in schema) if (!rules[key]) return key;
}


function toQuotedString(str) {
  return '\'' + escapeQuotes(str) + '\'';
}


function getPathExpr(currentPath, expr, jsonPointers, isNumber) {
  var path = jsonPointers // false by default
              ? '\'/\' + ' + expr + (isNumber ? '' : '.replace(/~/g, \'~0\').replace(/\\//g, \'~1\')')
              : (isNumber ? '\'[\' + ' + expr + ' + \']\'' : '\'[\\\'\' + ' + expr + ' + \'\\\']\'');
  return joinPaths(currentPath, path);
}


function getPath(currentPath, prop, jsonPointers) {
  var path = jsonPointers // false by default
              ? toQuotedString('/' + escapeJsonPointer(prop))
              : toQuotedString(getProperty(prop));
  return joinPaths(currentPath, path);
}


var JSON_POINTER = /^\/(?:[^~]|~0|~1)*$/;
var RELATIVE_JSON_POINTER = /^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;
function getData($data, lvl, paths) {
  var up, jsonPointer, data, matches;
  if ($data === '') return 'rootData';
  if ($data[0] == '/') {
    if (!JSON_POINTER.test($data)) throw new Error('Invalid JSON-pointer: ' + $data);
    jsonPointer = $data;
    data = 'rootData';
  } else {
    matches = $data.match(RELATIVE_JSON_POINTER);
    if (!matches) throw new Error('Invalid JSON-pointer: ' + $data);
    up = +matches[1];
    jsonPointer = matches[2];
    if (jsonPointer == '#') {
      if (up >= lvl) throw new Error('Cannot access property/index ' + up + ' levels up, current level is ' + lvl);
      return paths[lvl - up];
    }

    if (up > lvl) throw new Error('Cannot access data ' + up + ' levels up, current level is ' + lvl);
    data = 'data' + ((lvl - up) || '');
    if (!jsonPointer) return data;
  }

  var expr = data;
  var segments = jsonPointer.split('/');
  for (var i=0; i<segments.length; i++) {
    var segment = segments[i];
    if (segment) {
      data += getProperty(unescapeJsonPointer(segment));
      expr += ' && ' + data;
    }
  }
  return expr;
}


function joinPaths (a, b) {
  if (a == '""') return b;
  return (a + ' + ' + b).replace(/([^\\])' \+ '/g, '$1');
}


function unescapeFragment(str) {
  return unescapeJsonPointer(decodeURIComponent(str));
}


function escapeFragment(str) {
  return encodeURIComponent(escapeJsonPointer(str));
}


function escapeJsonPointer(str) {
  return str.replace(/~/g, '~0').replace(/\//g, '~1');
}


function unescapeJsonPointer(str) {
  return str.replace(/~1/g, '/').replace(/~0/g, '~');
}


/***/ }),

/***/ 21412:
/***/ ((module) => {

"use strict";


var KEYWORDS = [
  'multipleOf',
  'maximum',
  'exclusiveMaximum',
  'minimum',
  'exclusiveMinimum',
  'maxLength',
  'minLength',
  'pattern',
  'additionalItems',
  'maxItems',
  'minItems',
  'uniqueItems',
  'maxProperties',
  'minProperties',
  'required',
  'additionalProperties',
  'enum',
  'format',
  'const'
];

module.exports = function (metaSchema, keywordsJsonPointers) {
  for (var i=0; i<keywordsJsonPointers.length; i++) {
    metaSchema = JSON.parse(JSON.stringify(metaSchema));
    var segments = keywordsJsonPointers[i].split('/');
    var keywords = metaSchema;
    var j;
    for (j=1; j<segments.length; j++)
      keywords = keywords[segments[j]];

    for (j=0; j<KEYWORDS.length; j++) {
      var key = KEYWORDS[j];
      var schema = keywords[key];
      if (schema) {
        keywords[key] = {
          anyOf: [
            schema,
            { $ref: 'https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#' }
          ]
        };
      }
    }
  }

  return metaSchema;
};


/***/ }),

/***/ 10458:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var metaSchema = __webpack_require__(40038);

module.exports = {
  $id: 'https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js',
  definitions: {
    simpleTypes: metaSchema.definitions.simpleTypes
  },
  type: 'object',
  dependencies: {
    schema: ['validate'],
    $data: ['validate'],
    statements: ['inline'],
    valid: {not: {required: ['macro']}}
  },
  properties: {
    type: metaSchema.properties.type,
    schema: {type: 'boolean'},
    statements: {type: 'boolean'},
    dependencies: {
      type: 'array',
      items: {type: 'string'}
    },
    metaSchema: {type: 'object'},
    modifying: {type: 'boolean'},
    valid: {type: 'boolean'},
    $data: {type: 'boolean'},
    async: {type: 'boolean'},
    errors: {
      anyOf: [
        {type: 'boolean'},
        {const: 'full'}
      ]
    }
  }
};


/***/ }),

/***/ 7404:
/***/ ((module) => {

"use strict";

module.exports = function generate__limit(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $errorKeyword;
  var $data = 'data' + ($dataLvl || '');
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  var $isMax = $keyword == 'maximum',
    $exclusiveKeyword = $isMax ? 'exclusiveMaximum' : 'exclusiveMinimum',
    $schemaExcl = it.schema[$exclusiveKeyword],
    $isDataExcl = it.opts.$data && $schemaExcl && $schemaExcl.$data,
    $op = $isMax ? '<' : '>',
    $notOp = $isMax ? '>' : '<',
    $errorKeyword = undefined;
  if (!($isData || typeof $schema == 'number' || $schema === undefined)) {
    throw new Error($keyword + ' must be number');
  }
  if (!($isDataExcl || $schemaExcl === undefined || typeof $schemaExcl == 'number' || typeof $schemaExcl == 'boolean')) {
    throw new Error($exclusiveKeyword + ' must be number or boolean');
  }
  if ($isDataExcl) {
    var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr),
      $exclusive = 'exclusive' + $lvl,
      $exclType = 'exclType' + $lvl,
      $exclIsNumber = 'exclIsNumber' + $lvl,
      $opExpr = 'op' + $lvl,
      $opStr = '\' + ' + $opExpr + ' + \'';
    out += ' var schemaExcl' + ($lvl) + ' = ' + ($schemaValueExcl) + '; ';
    $schemaValueExcl = 'schemaExcl' + $lvl;
    out += ' var ' + ($exclusive) + '; var ' + ($exclType) + ' = typeof ' + ($schemaValueExcl) + '; if (' + ($exclType) + ' != \'boolean\' && ' + ($exclType) + ' != \'undefined\' && ' + ($exclType) + ' != \'number\') { ';
    var $errorKeyword = $exclusiveKeyword;
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = ''; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ($errorKeyword || '_exclusiveLimit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
      if (it.opts.messages !== false) {
        out += ' , message: \'' + ($exclusiveKeyword) + ' should be boolean\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    var __err = out;
    out = $$outStack.pop();
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError([' + (__err) + ']); ';
      } else {
        out += ' validate.errors = [' + (__err) + ']; return false; ';
      }
    } else {
      out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    }
    out += ' } else if ( ';
    if ($isData) {
      out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
    }
    out += ' ' + ($exclType) + ' == \'number\' ? ( (' + ($exclusive) + ' = ' + ($schemaValue) + ' === undefined || ' + ($schemaValueExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ') ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValueExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) : ( (' + ($exclusive) + ' = ' + ($schemaValueExcl) + ' === true) ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValue) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { var op' + ($lvl) + ' = ' + ($exclusive) + ' ? \'' + ($op) + '\' : \'' + ($op) + '=\'; ';
    if ($schema === undefined) {
      $errorKeyword = $exclusiveKeyword;
      $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
      $schemaValue = $schemaValueExcl;
      $isData = $isDataExcl;
    }
  } else {
    var $exclIsNumber = typeof $schemaExcl == 'number',
      $opStr = $op;
    if ($exclIsNumber && $isData) {
      var $opExpr = '\'' + $opStr + '\'';
      out += ' if ( ';
      if ($isData) {
        out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
      }
      out += ' ( ' + ($schemaValue) + ' === undefined || ' + ($schemaExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ' ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { ';
    } else {
      if ($exclIsNumber && $schema === undefined) {
        $exclusive = true;
        $errorKeyword = $exclusiveKeyword;
        $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
        $schemaValue = $schemaExcl;
        $notOp += '=';
      } else {
        if ($exclIsNumber) $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema);
        if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) {
          $exclusive = true;
          $errorKeyword = $exclusiveKeyword;
          $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
          $notOp += '=';
        } else {
          $exclusive = false;
          $opStr += '=';
        }
      }
      var $opExpr = '\'' + $opStr + '\'';
      out += ' if ( ';
      if ($isData) {
        out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
      }
      out += ' ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' || ' + ($data) + ' !== ' + ($data) + ') { ';
    }
  }
  $errorKeyword = $errorKeyword || $keyword;
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ($errorKeyword || '_limit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { comparison: ' + ($opExpr) + ', limit: ' + ($schemaValue) + ', exclusive: ' + ($exclusive) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should be ' + ($opStr) + ' ';
      if ($isData) {
        out += '\' + ' + ($schemaValue);
      } else {
        out += '' + ($schemaValue) + '\'';
      }
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + ($schema);
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += ' } ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 64683:
/***/ ((module) => {

"use strict";

module.exports = function generate__limitItems(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $errorKeyword;
  var $data = 'data' + ($dataLvl || '');
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  if (!($isData || typeof $schema == 'number')) {
    throw new Error($keyword + ' must be number');
  }
  var $op = $keyword == 'maxItems' ? '>' : '<';
  out += 'if ( ';
  if ($isData) {
    out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
  }
  out += ' ' + ($data) + '.length ' + ($op) + ' ' + ($schemaValue) + ') { ';
  var $errorKeyword = $keyword;
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ($errorKeyword || '_limitItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should NOT have ';
      if ($keyword == 'maxItems') {
        out += 'more';
      } else {
        out += 'fewer';
      }
      out += ' than ';
      if ($isData) {
        out += '\' + ' + ($schemaValue) + ' + \'';
      } else {
        out += '' + ($schema);
      }
      out += ' items\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + ($schema);
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += '} ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 52114:
/***/ ((module) => {

"use strict";

module.exports = function generate__limitLength(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $errorKeyword;
  var $data = 'data' + ($dataLvl || '');
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  if (!($isData || typeof $schema == 'number')) {
    throw new Error($keyword + ' must be number');
  }
  var $op = $keyword == 'maxLength' ? '>' : '<';
  out += 'if ( ';
  if ($isData) {
    out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
  }
  if (it.opts.unicode === false) {
    out += ' ' + ($data) + '.length ';
  } else {
    out += ' ucs2length(' + ($data) + ') ';
  }
  out += ' ' + ($op) + ' ' + ($schemaValue) + ') { ';
  var $errorKeyword = $keyword;
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ($errorKeyword || '_limitLength') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should NOT be ';
      if ($keyword == 'maxLength') {
        out += 'longer';
      } else {
        out += 'shorter';
      }
      out += ' than ';
      if ($isData) {
        out += '\' + ' + ($schemaValue) + ' + \'';
      } else {
        out += '' + ($schema);
      }
      out += ' characters\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + ($schema);
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += '} ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 71142:
/***/ ((module) => {

"use strict";

module.exports = function generate__limitProperties(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $errorKeyword;
  var $data = 'data' + ($dataLvl || '');
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  if (!($isData || typeof $schema == 'number')) {
    throw new Error($keyword + ' must be number');
  }
  var $op = $keyword == 'maxProperties' ? '>' : '<';
  out += 'if ( ';
  if ($isData) {
    out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'number\') || ';
  }
  out += ' Object.keys(' + ($data) + ').length ' + ($op) + ' ' + ($schemaValue) + ') { ';
  var $errorKeyword = $keyword;
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ($errorKeyword || '_limitProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should NOT have ';
      if ($keyword == 'maxProperties') {
        out += 'more';
      } else {
        out += 'fewer';
      }
      out += ' than ';
      if ($isData) {
        out += '\' + ' + ($schemaValue) + ' + \'';
      } else {
        out += '' + ($schema);
      }
      out += ' properties\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + ($schema);
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += '} ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 89443:
/***/ ((module) => {

"use strict";

module.exports = function generate_allOf(it, $keyword, $ruleType) {
  var out = ' ';
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $currentBaseId = $it.baseId,
    $allSchemasEmpty = true;
  var arr1 = $schema;
  if (arr1) {
    var $sch, $i = -1,
      l1 = arr1.length - 1;
    while ($i < l1) {
      $sch = arr1[$i += 1];
      if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {
        $allSchemasEmpty = false;
        $it.schema = $sch;
        $it.schemaPath = $schemaPath + '[' + $i + ']';
        $it.errSchemaPath = $errSchemaPath + '/' + $i;
        out += '  ' + (it.validate($it)) + ' ';
        $it.baseId = $currentBaseId;
        if ($breakOnError) {
          out += ' if (' + ($nextValid) + ') { ';
          $closingBraces += '}';
        }
      }
    }
  }
  if ($breakOnError) {
    if ($allSchemasEmpty) {
      out += ' if (true) { ';
    } else {
      out += ' ' + ($closingBraces.slice(0, -1)) + ' ';
    }
  }
  return out;
}


/***/ }),

/***/ 63093:
/***/ ((module) => {

"use strict";

module.exports = function generate_anyOf(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $noEmptySchema = $schema.every(function($sch) {
    return (it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all));
  });
  if ($noEmptySchema) {
    var $currentBaseId = $it.baseId;
    out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = false;  ';
    var $wasComposite = it.compositeRule;
    it.compositeRule = $it.compositeRule = true;
    var arr1 = $schema;
    if (arr1) {
      var $sch, $i = -1,
        l1 = arr1.length - 1;
      while ($i < l1) {
        $sch = arr1[$i += 1];
        $it.schema = $sch;
        $it.schemaPath = $schemaPath + '[' + $i + ']';
        $it.errSchemaPath = $errSchemaPath + '/' + $i;
        out += '  ' + (it.validate($it)) + ' ';
        $it.baseId = $currentBaseId;
        out += ' ' + ($valid) + ' = ' + ($valid) + ' || ' + ($nextValid) + '; if (!' + ($valid) + ') { ';
        $closingBraces += '}';
      }
    }
    it.compositeRule = $it.compositeRule = $wasComposite;
    out += ' ' + ($closingBraces) + ' if (!' + ($valid) + ') {   var err =   '; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ('anyOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
      if (it.opts.messages !== false) {
        out += ' , message: \'should match some schema in anyOf\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError(vErrors); ';
      } else {
        out += ' validate.errors = vErrors; return false; ';
      }
    }
    out += ' } else {  errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
    if (it.opts.allErrors) {
      out += ' } ';
    }
  } else {
    if ($breakOnError) {
      out += ' if (true) { ';
    }
  }
  return out;
}


/***/ }),

/***/ 30134:
/***/ ((module) => {

"use strict";

module.exports = function generate_comment(it, $keyword, $ruleType) {
  var out = ' ';
  var $schema = it.schema[$keyword];
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $comment = it.util.toQuotedString($schema);
  if (it.opts.$comment === true) {
    out += ' console.log(' + ($comment) + ');';
  } else if (typeof it.opts.$comment == 'function') {
    out += ' self._opts.$comment(' + ($comment) + ', ' + (it.util.toQuotedString($errSchemaPath)) + ', validate.root.schema);';
  }
  return out;
}


/***/ }),

/***/ 1661:
/***/ ((module) => {

"use strict";

module.exports = function generate_const(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  if (!$isData) {
    out += ' var schema' + ($lvl) + ' = validate.schema' + ($schemaPath) + ';';
  }
  out += 'var ' + ($valid) + ' = equal(' + ($data) + ', schema' + ($lvl) + '); if (!' + ($valid) + ') {   ';
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('const') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValue: schema' + ($lvl) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should be equal to constant\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += ' }';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 55964:
/***/ ((module) => {

"use strict";

module.exports = function generate_contains(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $idx = 'i' + $lvl,
    $dataNxt = $it.dataLevel = it.dataLevel + 1,
    $nextData = 'data' + $dataNxt,
    $currentBaseId = it.baseId,
    $nonEmptySchema = (it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all));
  out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';
  if ($nonEmptySchema) {
    var $wasComposite = it.compositeRule;
    it.compositeRule = $it.compositeRule = true;
    $it.schema = $schema;
    $it.schemaPath = $schemaPath;
    $it.errSchemaPath = $errSchemaPath;
    out += ' var ' + ($nextValid) + ' = false; for (var ' + ($idx) + ' = 0; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';
    $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
    var $passData = $data + '[' + $idx + ']';
    $it.dataPathArr[$dataNxt] = $idx;
    var $code = it.validate($it);
    $it.baseId = $currentBaseId;
    if (it.util.varOccurences($code, $nextData) < 2) {
      out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
    } else {
      out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
    }
    out += ' if (' + ($nextValid) + ') break; }  ';
    it.compositeRule = $it.compositeRule = $wasComposite;
    out += ' ' + ($closingBraces) + ' if (!' + ($nextValid) + ') {';
  } else {
    out += ' if (' + ($data) + '.length == 0) {';
  }
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('contains') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should contain a valid item\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += ' } else { ';
  if ($nonEmptySchema) {
    out += '  errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
  }
  if (it.opts.allErrors) {
    out += ' } ';
  }
  return out;
}


/***/ }),

/***/ 5912:
/***/ ((module) => {

"use strict";

module.exports = function generate_custom(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $errorKeyword;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $errs = 'errs__' + $lvl;
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  var $rule = this,
    $definition = 'definition' + $lvl,
    $rDef = $rule.definition,
    $closingBraces = '';
  var $compile, $inline, $macro, $ruleValidate, $validateCode;
  if ($isData && $rDef.$data) {
    $validateCode = 'keywordValidate' + $lvl;
    var $validateSchema = $rDef.validateSchema;
    out += ' var ' + ($definition) + ' = RULES.custom[\'' + ($keyword) + '\'].definition; var ' + ($validateCode) + ' = ' + ($definition) + '.validate;';
  } else {
    $ruleValidate = it.useCustomRule($rule, $schema, it.schema, it);
    if (!$ruleValidate) return;
    $schemaValue = 'validate.schema' + $schemaPath;
    $validateCode = $ruleValidate.code;
    $compile = $rDef.compile;
    $inline = $rDef.inline;
    $macro = $rDef.macro;
  }
  var $ruleErrs = $validateCode + '.errors',
    $i = 'i' + $lvl,
    $ruleErr = 'ruleErr' + $lvl,
    $asyncKeyword = $rDef.async;
  if ($asyncKeyword && !it.async) throw new Error('async keyword in sync schema');
  if (!($inline || $macro)) {
    out += '' + ($ruleErrs) + ' = null;';
  }
  out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';
  if ($isData && $rDef.$data) {
    $closingBraces += '}';
    out += ' if (' + ($schemaValue) + ' === undefined) { ' + ($valid) + ' = true; } else { ';
    if ($validateSchema) {
      $closingBraces += '}';
      out += ' ' + ($valid) + ' = ' + ($definition) + '.validateSchema(' + ($schemaValue) + '); if (' + ($valid) + ') { ';
    }
  }
  if ($inline) {
    if ($rDef.statements) {
      out += ' ' + ($ruleValidate.validate) + ' ';
    } else {
      out += ' ' + ($valid) + ' = ' + ($ruleValidate.validate) + '; ';
    }
  } else if ($macro) {
    var $it = it.util.copy(it);
    var $closingBraces = '';
    $it.level++;
    var $nextValid = 'valid' + $it.level;
    $it.schema = $ruleValidate.validate;
    $it.schemaPath = '';
    var $wasComposite = it.compositeRule;
    it.compositeRule = $it.compositeRule = true;
    var $code = it.validate($it).replace(/validate\.schema/g, $validateCode);
    it.compositeRule = $it.compositeRule = $wasComposite;
    out += ' ' + ($code);
  } else {
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = '';
    out += '  ' + ($validateCode) + '.call( ';
    if (it.opts.passContext) {
      out += 'this';
    } else {
      out += 'self';
    }
    if ($compile || $rDef.schema === false) {
      out += ' , ' + ($data) + ' ';
    } else {
      out += ' , ' + ($schemaValue) + ' , ' + ($data) + ' , validate.schema' + (it.schemaPath) + ' ';
    }
    out += ' , (dataPath || \'\')';
    if (it.errorPath != '""') {
      out += ' + ' + (it.errorPath);
    }
    var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData',
      $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty';
    out += ' , ' + ($parentData) + ' , ' + ($parentDataProperty) + ' , rootData )  ';
    var def_callRuleValidate = out;
    out = $$outStack.pop();
    if ($rDef.errors === false) {
      out += ' ' + ($valid) + ' = ';
      if ($asyncKeyword) {
        out += 'await ';
      }
      out += '' + (def_callRuleValidate) + '; ';
    } else {
      if ($asyncKeyword) {
        $ruleErrs = 'customErrors' + $lvl;
        out += ' var ' + ($ruleErrs) + ' = null; try { ' + ($valid) + ' = await ' + (def_callRuleValidate) + '; } catch (e) { ' + ($valid) + ' = false; if (e instanceof ValidationError) ' + ($ruleErrs) + ' = e.errors; else throw e; } ';
      } else {
        out += ' ' + ($ruleErrs) + ' = null; ' + ($valid) + ' = ' + (def_callRuleValidate) + '; ';
      }
    }
  }
  if ($rDef.modifying) {
    out += ' if (' + ($parentData) + ') ' + ($data) + ' = ' + ($parentData) + '[' + ($parentDataProperty) + '];';
  }
  out += '' + ($closingBraces);
  if ($rDef.valid) {
    if ($breakOnError) {
      out += ' if (true) { ';
    }
  } else {
    out += ' if ( ';
    if ($rDef.valid === undefined) {
      out += ' !';
      if ($macro) {
        out += '' + ($nextValid);
      } else {
        out += '' + ($valid);
      }
    } else {
      out += ' ' + (!$rDef.valid) + ' ';
    }
    out += ') { ';
    $errorKeyword = $rule.keyword;
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = '';
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = ''; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ($errorKeyword || 'custom') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { keyword: \'' + ($rule.keyword) + '\' } ';
      if (it.opts.messages !== false) {
        out += ' , message: \'should pass "' + ($rule.keyword) + '" keyword validation\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    var __err = out;
    out = $$outStack.pop();
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError([' + (__err) + ']); ';
      } else {
        out += ' validate.errors = [' + (__err) + ']; return false; ';
      }
    } else {
      out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    }
    var def_customError = out;
    out = $$outStack.pop();
    if ($inline) {
      if ($rDef.errors) {
        if ($rDef.errors != 'full') {
          out += '  for (var ' + ($i) + '=' + ($errs) + '; ' + ($i) + '<errors; ' + ($i) + '++) { var ' + ($ruleErr) + ' = vErrors[' + ($i) + ']; if (' + ($ruleErr) + '.dataPath === undefined) ' + ($ruleErr) + '.dataPath = (dataPath || \'\') + ' + (it.errorPath) + '; if (' + ($ruleErr) + '.schemaPath === undefined) { ' + ($ruleErr) + '.schemaPath = "' + ($errSchemaPath) + '"; } ';
          if (it.opts.verbose) {
            out += ' ' + ($ruleErr) + '.schema = ' + ($schemaValue) + '; ' + ($ruleErr) + '.data = ' + ($data) + '; ';
          }
          out += ' } ';
        }
      } else {
        if ($rDef.errors === false) {
          out += ' ' + (def_customError) + ' ';
        } else {
          out += ' if (' + ($errs) + ' == errors) { ' + (def_customError) + ' } else {  for (var ' + ($i) + '=' + ($errs) + '; ' + ($i) + '<errors; ' + ($i) + '++) { var ' + ($ruleErr) + ' = vErrors[' + ($i) + ']; if (' + ($ruleErr) + '.dataPath === undefined) ' + ($ruleErr) + '.dataPath = (dataPath || \'\') + ' + (it.errorPath) + '; if (' + ($ruleErr) + '.schemaPath === undefined) { ' + ($ruleErr) + '.schemaPath = "' + ($errSchemaPath) + '"; } ';
          if (it.opts.verbose) {
            out += ' ' + ($ruleErr) + '.schema = ' + ($schemaValue) + '; ' + ($ruleErr) + '.data = ' + ($data) + '; ';
          }
          out += ' } } ';
        }
      }
    } else if ($macro) {
      out += '   var err =   '; /* istanbul ignore else */
      if (it.createErrors !== false) {
        out += ' { keyword: \'' + ($errorKeyword || 'custom') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { keyword: \'' + ($rule.keyword) + '\' } ';
        if (it.opts.messages !== false) {
          out += ' , message: \'should pass "' + ($rule.keyword) + '" keyword validation\' ';
        }
        if (it.opts.verbose) {
          out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
        }
        out += ' } ';
      } else {
        out += ' {} ';
      }
      out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
      if (!it.compositeRule && $breakOnError) {
        /* istanbul ignore if */
        if (it.async) {
          out += ' throw new ValidationError(vErrors); ';
        } else {
          out += ' validate.errors = vErrors; return false; ';
        }
      }
    } else {
      if ($rDef.errors === false) {
        out += ' ' + (def_customError) + ' ';
      } else {
        out += ' if (Array.isArray(' + ($ruleErrs) + ')) { if (vErrors === null) vErrors = ' + ($ruleErrs) + '; else vErrors = vErrors.concat(' + ($ruleErrs) + '); errors = vErrors.length;  for (var ' + ($i) + '=' + ($errs) + '; ' + ($i) + '<errors; ' + ($i) + '++) { var ' + ($ruleErr) + ' = vErrors[' + ($i) + ']; if (' + ($ruleErr) + '.dataPath === undefined) ' + ($ruleErr) + '.dataPath = (dataPath || \'\') + ' + (it.errorPath) + ';  ' + ($ruleErr) + '.schemaPath = "' + ($errSchemaPath) + '";  ';
        if (it.opts.verbose) {
          out += ' ' + ($ruleErr) + '.schema = ' + ($schemaValue) + '; ' + ($ruleErr) + '.data = ' + ($data) + '; ';
        }
        out += ' } } else { ' + (def_customError) + ' } ';
      }
    }
    out += ' } ';
    if ($breakOnError) {
      out += ' else { ';
    }
  }
  return out;
}


/***/ }),

/***/ 2591:
/***/ ((module) => {

"use strict";

module.exports = function generate_dependencies(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $schemaDeps = {},
    $propertyDeps = {},
    $ownProperties = it.opts.ownProperties;
  for ($property in $schema) {
    if ($property == '__proto__') continue;
    var $sch = $schema[$property];
    var $deps = Array.isArray($sch) ? $propertyDeps : $schemaDeps;
    $deps[$property] = $sch;
  }
  out += 'var ' + ($errs) + ' = errors;';
  var $currentErrorPath = it.errorPath;
  out += 'var missing' + ($lvl) + ';';
  for (var $property in $propertyDeps) {
    $deps = $propertyDeps[$property];
    if ($deps.length) {
      out += ' if ( ' + ($data) + (it.util.getProperty($property)) + ' !== undefined ';
      if ($ownProperties) {
        out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($property)) + '\') ';
      }
      if ($breakOnError) {
        out += ' && ( ';
        var arr1 = $deps;
        if (arr1) {
          var $propertyKey, $i = -1,
            l1 = arr1.length - 1;
          while ($i < l1) {
            $propertyKey = arr1[$i += 1];
            if ($i) {
              out += ' || ';
            }
            var $prop = it.util.getProperty($propertyKey),
              $useData = $data + $prop;
            out += ' ( ( ' + ($useData) + ' === undefined ';
            if ($ownProperties) {
              out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
            }
            out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) ';
          }
        }
        out += ')) {  ';
        var $propertyPath = 'missing' + $lvl,
          $missingProperty = '\' + ' + $propertyPath + ' + \'';
        if (it.opts._errorDataPathProperty) {
          it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath;
        }
        var $$outStack = $$outStack || [];
        $$outStack.push(out);
        out = ''; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ('dependencies') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { property: \'' + (it.util.escapeQuotes($property)) + '\', missingProperty: \'' + ($missingProperty) + '\', depsCount: ' + ($deps.length) + ', deps: \'' + (it.util.escapeQuotes($deps.length == 1 ? $deps[0] : $deps.join(", "))) + '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'should have ';
            if ($deps.length == 1) {
              out += 'property ' + (it.util.escapeQuotes($deps[0]));
            } else {
              out += 'properties ' + (it.util.escapeQuotes($deps.join(", ")));
            }
            out += ' when property ' + (it.util.escapeQuotes($property)) + ' is present\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        var __err = out;
        out = $$outStack.pop();
        if (!it.compositeRule && $breakOnError) {
          /* istanbul ignore if */
          if (it.async) {
            out += ' throw new ValidationError([' + (__err) + ']); ';
          } else {
            out += ' validate.errors = [' + (__err) + ']; return false; ';
          }
        } else {
          out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
        }
      } else {
        out += ' ) { ';
        var arr2 = $deps;
        if (arr2) {
          var $propertyKey, i2 = -1,
            l2 = arr2.length - 1;
          while (i2 < l2) {
            $propertyKey = arr2[i2 += 1];
            var $prop = it.util.getProperty($propertyKey),
              $missingProperty = it.util.escapeQuotes($propertyKey),
              $useData = $data + $prop;
            if (it.opts._errorDataPathProperty) {
              it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);
            }
            out += ' if ( ' + ($useData) + ' === undefined ';
            if ($ownProperties) {
              out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
            }
            out += ') {  var err =   '; /* istanbul ignore else */
            if (it.createErrors !== false) {
              out += ' { keyword: \'' + ('dependencies') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { property: \'' + (it.util.escapeQuotes($property)) + '\', missingProperty: \'' + ($missingProperty) + '\', depsCount: ' + ($deps.length) + ', deps: \'' + (it.util.escapeQuotes($deps.length == 1 ? $deps[0] : $deps.join(", "))) + '\' } ';
              if (it.opts.messages !== false) {
                out += ' , message: \'should have ';
                if ($deps.length == 1) {
                  out += 'property ' + (it.util.escapeQuotes($deps[0]));
                } else {
                  out += 'properties ' + (it.util.escapeQuotes($deps.join(", ")));
                }
                out += ' when property ' + (it.util.escapeQuotes($property)) + ' is present\' ';
              }
              if (it.opts.verbose) {
                out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
              }
              out += ' } ';
            } else {
              out += ' {} ';
            }
            out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ';
          }
        }
      }
      out += ' }   ';
      if ($breakOnError) {
        $closingBraces += '}';
        out += ' else { ';
      }
    }
  }
  it.errorPath = $currentErrorPath;
  var $currentBaseId = $it.baseId;
  for (var $property in $schemaDeps) {
    var $sch = $schemaDeps[$property];
    if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {
      out += ' ' + ($nextValid) + ' = true; if ( ' + ($data) + (it.util.getProperty($property)) + ' !== undefined ';
      if ($ownProperties) {
        out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($property)) + '\') ';
      }
      out += ') { ';
      $it.schema = $sch;
      $it.schemaPath = $schemaPath + it.util.getProperty($property);
      $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($property);
      out += '  ' + (it.validate($it)) + ' ';
      $it.baseId = $currentBaseId;
      out += ' }  ';
      if ($breakOnError) {
        out += ' if (' + ($nextValid) + ') { ';
        $closingBraces += '}';
      }
    }
  }
  if ($breakOnError) {
    out += '   ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';
  }
  return out;
}


/***/ }),

/***/ 10163:
/***/ ((module) => {

"use strict";

module.exports = function generate_enum(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  var $i = 'i' + $lvl,
    $vSchema = 'schema' + $lvl;
  if (!$isData) {
    out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + ';';
  }
  out += 'var ' + ($valid) + ';';
  if ($isData) {
    out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {';
  }
  out += '' + ($valid) + ' = false;for (var ' + ($i) + '=0; ' + ($i) + '<' + ($vSchema) + '.length; ' + ($i) + '++) if (equal(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + '])) { ' + ($valid) + ' = true; break; }';
  if ($isData) {
    out += '  }  ';
  }
  out += ' if (!' + ($valid) + ') {   ';
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('enum') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValues: schema' + ($lvl) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should be equal to one of the allowed values\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += ' }';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 63847:
/***/ ((module) => {

"use strict";

module.exports = function generate_format(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  if (it.opts.format === false) {
    if ($breakOnError) {
      out += ' if (true) { ';
    }
    return out;
  }
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  var $unknownFormats = it.opts.unknownFormats,
    $allowUnknown = Array.isArray($unknownFormats);
  if ($isData) {
    var $format = 'format' + $lvl,
      $isObject = 'isObject' + $lvl,
      $formatType = 'formatType' + $lvl;
    out += ' var ' + ($format) + ' = formats[' + ($schemaValue) + ']; var ' + ($isObject) + ' = typeof ' + ($format) + ' == \'object\' && !(' + ($format) + ' instanceof RegExp) && ' + ($format) + '.validate; var ' + ($formatType) + ' = ' + ($isObject) + ' && ' + ($format) + '.type || \'string\'; if (' + ($isObject) + ') { ';
    if (it.async) {
      out += ' var async' + ($lvl) + ' = ' + ($format) + '.async; ';
    }
    out += ' ' + ($format) + ' = ' + ($format) + '.validate; } if (  ';
    if ($isData) {
      out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || ';
    }
    out += ' (';
    if ($unknownFormats != 'ignore') {
      out += ' (' + ($schemaValue) + ' && !' + ($format) + ' ';
      if ($allowUnknown) {
        out += ' && self._opts.unknownFormats.indexOf(' + ($schemaValue) + ') == -1 ';
      }
      out += ') || ';
    }
    out += ' (' + ($format) + ' && ' + ($formatType) + ' == \'' + ($ruleType) + '\' && !(typeof ' + ($format) + ' == \'function\' ? ';
    if (it.async) {
      out += ' (async' + ($lvl) + ' ? await ' + ($format) + '(' + ($data) + ') : ' + ($format) + '(' + ($data) + ')) ';
    } else {
      out += ' ' + ($format) + '(' + ($data) + ') ';
    }
    out += ' : ' + ($format) + '.test(' + ($data) + '))))) {';
  } else {
    var $format = it.formats[$schema];
    if (!$format) {
      if ($unknownFormats == 'ignore') {
        it.logger.warn('unknown format "' + $schema + '" ignored in schema at path "' + it.errSchemaPath + '"');
        if ($breakOnError) {
          out += ' if (true) { ';
        }
        return out;
      } else if ($allowUnknown && $unknownFormats.indexOf($schema) >= 0) {
        if ($breakOnError) {
          out += ' if (true) { ';
        }
        return out;
      } else {
        throw new Error('unknown format "' + $schema + '" is used in schema at path "' + it.errSchemaPath + '"');
      }
    }
    var $isObject = typeof $format == 'object' && !($format instanceof RegExp) && $format.validate;
    var $formatType = $isObject && $format.type || 'string';
    if ($isObject) {
      var $async = $format.async === true;
      $format = $format.validate;
    }
    if ($formatType != $ruleType) {
      if ($breakOnError) {
        out += ' if (true) { ';
      }
      return out;
    }
    if ($async) {
      if (!it.async) throw new Error('async format in sync schema');
      var $formatRef = 'formats' + it.util.getProperty($schema) + '.validate';
      out += ' if (!(await ' + ($formatRef) + '(' + ($data) + '))) { ';
    } else {
      out += ' if (! ';
      var $formatRef = 'formats' + it.util.getProperty($schema);
      if ($isObject) $formatRef += '.validate';
      if (typeof $format == 'function') {
        out += ' ' + ($formatRef) + '(' + ($data) + ') ';
      } else {
        out += ' ' + ($formatRef) + '.test(' + ($data) + ') ';
      }
      out += ') { ';
    }
  }
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('format') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { format:  ';
    if ($isData) {
      out += '' + ($schemaValue);
    } else {
      out += '' + (it.util.toQuotedString($schema));
    }
    out += '  } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should match format "';
      if ($isData) {
        out += '\' + ' + ($schemaValue) + ' + \'';
      } else {
        out += '' + (it.util.escapeQuotes($schema));
      }
      out += '"\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + (it.util.toQuotedString($schema));
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += ' } ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 80862:
/***/ ((module) => {

"use strict";

module.exports = function generate_if(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $thenSch = it.schema['then'],
    $elseSch = it.schema['else'],
    $thenPresent = $thenSch !== undefined && (it.opts.strictKeywords ? (typeof $thenSch == 'object' && Object.keys($thenSch).length > 0) || $thenSch === false : it.util.schemaHasRules($thenSch, it.RULES.all)),
    $elsePresent = $elseSch !== undefined && (it.opts.strictKeywords ? (typeof $elseSch == 'object' && Object.keys($elseSch).length > 0) || $elseSch === false : it.util.schemaHasRules($elseSch, it.RULES.all)),
    $currentBaseId = $it.baseId;
  if ($thenPresent || $elsePresent) {
    var $ifClause;
    $it.createErrors = false;
    $it.schema = $schema;
    $it.schemaPath = $schemaPath;
    $it.errSchemaPath = $errSchemaPath;
    out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = true;  ';
    var $wasComposite = it.compositeRule;
    it.compositeRule = $it.compositeRule = true;
    out += '  ' + (it.validate($it)) + ' ';
    $it.baseId = $currentBaseId;
    $it.createErrors = true;
    out += '  errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; }  ';
    it.compositeRule = $it.compositeRule = $wasComposite;
    if ($thenPresent) {
      out += ' if (' + ($nextValid) + ') {  ';
      $it.schema = it.schema['then'];
      $it.schemaPath = it.schemaPath + '.then';
      $it.errSchemaPath = it.errSchemaPath + '/then';
      out += '  ' + (it.validate($it)) + ' ';
      $it.baseId = $currentBaseId;
      out += ' ' + ($valid) + ' = ' + ($nextValid) + '; ';
      if ($thenPresent && $elsePresent) {
        $ifClause = 'ifClause' + $lvl;
        out += ' var ' + ($ifClause) + ' = \'then\'; ';
      } else {
        $ifClause = '\'then\'';
      }
      out += ' } ';
      if ($elsePresent) {
        out += ' else { ';
      }
    } else {
      out += ' if (!' + ($nextValid) + ') { ';
    }
    if ($elsePresent) {
      $it.schema = it.schema['else'];
      $it.schemaPath = it.schemaPath + '.else';
      $it.errSchemaPath = it.errSchemaPath + '/else';
      out += '  ' + (it.validate($it)) + ' ';
      $it.baseId = $currentBaseId;
      out += ' ' + ($valid) + ' = ' + ($nextValid) + '; ';
      if ($thenPresent && $elsePresent) {
        $ifClause = 'ifClause' + $lvl;
        out += ' var ' + ($ifClause) + ' = \'else\'; ';
      } else {
        $ifClause = '\'else\'';
      }
      out += ' } ';
    }
    out += ' if (!' + ($valid) + ') {   var err =   '; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ('if') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { failingKeyword: ' + ($ifClause) + ' } ';
      if (it.opts.messages !== false) {
        out += ' , message: \'should match "\' + ' + ($ifClause) + ' + \'" schema\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError(vErrors); ';
      } else {
        out += ' validate.errors = vErrors; return false; ';
      }
    }
    out += ' }   ';
    if ($breakOnError) {
      out += ' else { ';
    }
  } else {
    if ($breakOnError) {
      out += ' if (true) { ';
    }
  }
  return out;
}


/***/ }),

/***/ 85810:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


//all requires must be explicit because browserify won't work with dynamic requires
module.exports = {
  '$ref': __webpack_require__(42393),
  allOf: __webpack_require__(89443),
  anyOf: __webpack_require__(63093),
  '$comment': __webpack_require__(30134),
  const: __webpack_require__(1661),
  contains: __webpack_require__(55964),
  dependencies: __webpack_require__(2591),
  'enum': __webpack_require__(10163),
  format: __webpack_require__(63847),
  'if': __webpack_require__(80862),
  items: __webpack_require__(54408),
  maximum: __webpack_require__(7404),
  minimum: __webpack_require__(7404),
  maxItems: __webpack_require__(64683),
  minItems: __webpack_require__(64683),
  maxLength: __webpack_require__(52114),
  minLength: __webpack_require__(52114),
  maxProperties: __webpack_require__(71142),
  minProperties: __webpack_require__(71142),
  multipleOf: __webpack_require__(39772),
  not: __webpack_require__(60750),
  oneOf: __webpack_require__(6106),
  pattern: __webpack_require__(13912),
  properties: __webpack_require__(52924),
  propertyNames: __webpack_require__(19195),
  required: __webpack_require__(8420),
  uniqueItems: __webpack_require__(24995),
  validate: __webpack_require__(49585)
};


/***/ }),

/***/ 54408:
/***/ ((module) => {

"use strict";

module.exports = function generate_items(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $idx = 'i' + $lvl,
    $dataNxt = $it.dataLevel = it.dataLevel + 1,
    $nextData = 'data' + $dataNxt,
    $currentBaseId = it.baseId;
  out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';
  if (Array.isArray($schema)) {
    var $additionalItems = it.schema.additionalItems;
    if ($additionalItems === false) {
      out += ' ' + ($valid) + ' = ' + ($data) + '.length <= ' + ($schema.length) + '; ';
      var $currErrSchemaPath = $errSchemaPath;
      $errSchemaPath = it.errSchemaPath + '/additionalItems';
      out += '  if (!' + ($valid) + ') {   ';
      var $$outStack = $$outStack || [];
      $$outStack.push(out);
      out = ''; /* istanbul ignore else */
      if (it.createErrors !== false) {
        out += ' { keyword: \'' + ('additionalItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schema.length) + ' } ';
        if (it.opts.messages !== false) {
          out += ' , message: \'should NOT have more than ' + ($schema.length) + ' items\' ';
        }
        if (it.opts.verbose) {
          out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
        }
        out += ' } ';
      } else {
        out += ' {} ';
      }
      var __err = out;
      out = $$outStack.pop();
      if (!it.compositeRule && $breakOnError) {
        /* istanbul ignore if */
        if (it.async) {
          out += ' throw new ValidationError([' + (__err) + ']); ';
        } else {
          out += ' validate.errors = [' + (__err) + ']; return false; ';
        }
      } else {
        out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
      }
      out += ' } ';
      $errSchemaPath = $currErrSchemaPath;
      if ($breakOnError) {
        $closingBraces += '}';
        out += ' else { ';
      }
    }
    var arr1 = $schema;
    if (arr1) {
      var $sch, $i = -1,
        l1 = arr1.length - 1;
      while ($i < l1) {
        $sch = arr1[$i += 1];
        if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {
          out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($i) + ') { ';
          var $passData = $data + '[' + $i + ']';
          $it.schema = $sch;
          $it.schemaPath = $schemaPath + '[' + $i + ']';
          $it.errSchemaPath = $errSchemaPath + '/' + $i;
          $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true);
          $it.dataPathArr[$dataNxt] = $i;
          var $code = it.validate($it);
          $it.baseId = $currentBaseId;
          if (it.util.varOccurences($code, $nextData) < 2) {
            out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
          } else {
            out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
          }
          out += ' }  ';
          if ($breakOnError) {
            out += ' if (' + ($nextValid) + ') { ';
            $closingBraces += '}';
          }
        }
      }
    }
    if (typeof $additionalItems == 'object' && (it.opts.strictKeywords ? (typeof $additionalItems == 'object' && Object.keys($additionalItems).length > 0) || $additionalItems === false : it.util.schemaHasRules($additionalItems, it.RULES.all))) {
      $it.schema = $additionalItems;
      $it.schemaPath = it.schemaPath + '.additionalItems';
      $it.errSchemaPath = it.errSchemaPath + '/additionalItems';
      out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($schema.length) + ') {  for (var ' + ($idx) + ' = ' + ($schema.length) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';
      $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
      var $passData = $data + '[' + $idx + ']';
      $it.dataPathArr[$dataNxt] = $idx;
      var $code = it.validate($it);
      $it.baseId = $currentBaseId;
      if (it.util.varOccurences($code, $nextData) < 2) {
        out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
      } else {
        out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
      }
      if ($breakOnError) {
        out += ' if (!' + ($nextValid) + ') break; ';
      }
      out += ' } }  ';
      if ($breakOnError) {
        out += ' if (' + ($nextValid) + ') { ';
        $closingBraces += '}';
      }
    }
  } else if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {
    $it.schema = $schema;
    $it.schemaPath = $schemaPath;
    $it.errSchemaPath = $errSchemaPath;
    out += '  for (var ' + ($idx) + ' = ' + (0) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';
    $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);
    var $passData = $data + '[' + $idx + ']';
    $it.dataPathArr[$dataNxt] = $idx;
    var $code = it.validate($it);
    $it.baseId = $currentBaseId;
    if (it.util.varOccurences($code, $nextData) < 2) {
      out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
    } else {
      out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
    }
    if ($breakOnError) {
      out += ' if (!' + ($nextValid) + ') break; ';
    }
    out += ' }';
  }
  if ($breakOnError) {
    out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';
  }
  return out;
}


/***/ }),

/***/ 39772:
/***/ ((module) => {

"use strict";

module.exports = function generate_multipleOf(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  if (!($isData || typeof $schema == 'number')) {
    throw new Error($keyword + ' must be number');
  }
  out += 'var division' + ($lvl) + ';if (';
  if ($isData) {
    out += ' ' + ($schemaValue) + ' !== undefined && ( typeof ' + ($schemaValue) + ' != \'number\' || ';
  }
  out += ' (division' + ($lvl) + ' = ' + ($data) + ' / ' + ($schemaValue) + ', ';
  if (it.opts.multipleOfPrecision) {
    out += ' Math.abs(Math.round(division' + ($lvl) + ') - division' + ($lvl) + ') > 1e-' + (it.opts.multipleOfPrecision) + ' ';
  } else {
    out += ' division' + ($lvl) + ' !== parseInt(division' + ($lvl) + ') ';
  }
  out += ' ) ';
  if ($isData) {
    out += '  )  ';
  }
  out += ' ) {   ';
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('multipleOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { multipleOf: ' + ($schemaValue) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should be multiple of ';
      if ($isData) {
        out += '\' + ' + ($schemaValue);
      } else {
        out += '' + ($schemaValue) + '\'';
      }
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + ($schema);
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += '} ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 60750:
/***/ ((module) => {

"use strict";

module.exports = function generate_not(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {
    $it.schema = $schema;
    $it.schemaPath = $schemaPath;
    $it.errSchemaPath = $errSchemaPath;
    out += ' var ' + ($errs) + ' = errors;  ';
    var $wasComposite = it.compositeRule;
    it.compositeRule = $it.compositeRule = true;
    $it.createErrors = false;
    var $allErrorsOption;
    if ($it.opts.allErrors) {
      $allErrorsOption = $it.opts.allErrors;
      $it.opts.allErrors = false;
    }
    out += ' ' + (it.validate($it)) + ' ';
    $it.createErrors = true;
    if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption;
    it.compositeRule = $it.compositeRule = $wasComposite;
    out += ' if (' + ($nextValid) + ') {   ';
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = ''; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
      if (it.opts.messages !== false) {
        out += ' , message: \'should NOT be valid\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    var __err = out;
    out = $$outStack.pop();
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError([' + (__err) + ']); ';
      } else {
        out += ' validate.errors = [' + (__err) + ']; return false; ';
      }
    } else {
      out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    }
    out += ' } else {  errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';
    if (it.opts.allErrors) {
      out += ' } ';
    }
  } else {
    out += '  var err =   '; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ('not') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
      if (it.opts.messages !== false) {
        out += ' , message: \'should NOT be valid\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    if ($breakOnError) {
      out += ' if (false) { ';
    }
  }
  return out;
}


/***/ }),

/***/ 6106:
/***/ ((module) => {

"use strict";

module.exports = function generate_oneOf(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $currentBaseId = $it.baseId,
    $prevValid = 'prevValid' + $lvl,
    $passingSchemas = 'passingSchemas' + $lvl;
  out += 'var ' + ($errs) + ' = errors , ' + ($prevValid) + ' = false , ' + ($valid) + ' = false , ' + ($passingSchemas) + ' = null; ';
  var $wasComposite = it.compositeRule;
  it.compositeRule = $it.compositeRule = true;
  var arr1 = $schema;
  if (arr1) {
    var $sch, $i = -1,
      l1 = arr1.length - 1;
    while ($i < l1) {
      $sch = arr1[$i += 1];
      if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {
        $it.schema = $sch;
        $it.schemaPath = $schemaPath + '[' + $i + ']';
        $it.errSchemaPath = $errSchemaPath + '/' + $i;
        out += '  ' + (it.validate($it)) + ' ';
        $it.baseId = $currentBaseId;
      } else {
        out += ' var ' + ($nextValid) + ' = true; ';
      }
      if ($i) {
        out += ' if (' + ($nextValid) + ' && ' + ($prevValid) + ') { ' + ($valid) + ' = false; ' + ($passingSchemas) + ' = [' + ($passingSchemas) + ', ' + ($i) + ']; } else { ';
        $closingBraces += '}';
      }
      out += ' if (' + ($nextValid) + ') { ' + ($valid) + ' = ' + ($prevValid) + ' = true; ' + ($passingSchemas) + ' = ' + ($i) + '; }';
    }
  }
  it.compositeRule = $it.compositeRule = $wasComposite;
  out += '' + ($closingBraces) + 'if (!' + ($valid) + ') {   var err =   '; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('oneOf') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { passingSchemas: ' + ($passingSchemas) + ' } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should match exactly one schema in oneOf\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError(vErrors); ';
    } else {
      out += ' validate.errors = vErrors; return false; ';
    }
  }
  out += '} else {  errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; }';
  if (it.opts.allErrors) {
    out += ' } ';
  }
  return out;
}


/***/ }),

/***/ 13912:
/***/ ((module) => {

"use strict";

module.exports = function generate_pattern(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  var $regexp = $isData ? '(new RegExp(' + $schemaValue + '))' : it.usePattern($schema);
  out += 'if ( ';
  if ($isData) {
    out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \'string\') || ';
  }
  out += ' !' + ($regexp) + '.test(' + ($data) + ') ) {   ';
  var $$outStack = $$outStack || [];
  $$outStack.push(out);
  out = ''; /* istanbul ignore else */
  if (it.createErrors !== false) {
    out += ' { keyword: \'' + ('pattern') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { pattern:  ';
    if ($isData) {
      out += '' + ($schemaValue);
    } else {
      out += '' + (it.util.toQuotedString($schema));
    }
    out += '  } ';
    if (it.opts.messages !== false) {
      out += ' , message: \'should match pattern "';
      if ($isData) {
        out += '\' + ' + ($schemaValue) + ' + \'';
      } else {
        out += '' + (it.util.escapeQuotes($schema));
      }
      out += '"\' ';
    }
    if (it.opts.verbose) {
      out += ' , schema:  ';
      if ($isData) {
        out += 'validate.schema' + ($schemaPath);
      } else {
        out += '' + (it.util.toQuotedString($schema));
      }
      out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
    }
    out += ' } ';
  } else {
    out += ' {} ';
  }
  var __err = out;
  out = $$outStack.pop();
  if (!it.compositeRule && $breakOnError) {
    /* istanbul ignore if */
    if (it.async) {
      out += ' throw new ValidationError([' + (__err) + ']); ';
    } else {
      out += ' validate.errors = [' + (__err) + ']; return false; ';
    }
  } else {
    out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
  }
  out += '} ';
  if ($breakOnError) {
    out += ' else { ';
  }
  return out;
}


/***/ }),

/***/ 52924:
/***/ ((module) => {

"use strict";

module.exports = function generate_properties(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  var $key = 'key' + $lvl,
    $idx = 'idx' + $lvl,
    $dataNxt = $it.dataLevel = it.dataLevel + 1,
    $nextData = 'data' + $dataNxt,
    $dataProperties = 'dataProperties' + $lvl;
  var $schemaKeys = Object.keys($schema || {}).filter(notProto),
    $pProperties = it.schema.patternProperties || {},
    $pPropertyKeys = Object.keys($pProperties).filter(notProto),
    $aProperties = it.schema.additionalProperties,
    $someProperties = $schemaKeys.length || $pPropertyKeys.length,
    $noAdditional = $aProperties === false,
    $additionalIsSchema = typeof $aProperties == 'object' && Object.keys($aProperties).length,
    $removeAdditional = it.opts.removeAdditional,
    $checkAdditional = $noAdditional || $additionalIsSchema || $removeAdditional,
    $ownProperties = it.opts.ownProperties,
    $currentBaseId = it.baseId;
  var $required = it.schema.required;
  if ($required && !(it.opts.$data && $required.$data) && $required.length < it.opts.loopRequired) {
    var $requiredHash = it.util.toHash($required);
  }

  function notProto(p) {
    return p !== '__proto__';
  }
  out += 'var ' + ($errs) + ' = errors;var ' + ($nextValid) + ' = true;';
  if ($ownProperties) {
    out += ' var ' + ($dataProperties) + ' = undefined;';
  }
  if ($checkAdditional) {
    if ($ownProperties) {
      out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';
    } else {
      out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';
    }
    if ($someProperties) {
      out += ' var isAdditional' + ($lvl) + ' = !(false ';
      if ($schemaKeys.length) {
        if ($schemaKeys.length > 8) {
          out += ' || validate.schema' + ($schemaPath) + '.hasOwnProperty(' + ($key) + ') ';
        } else {
          var arr1 = $schemaKeys;
          if (arr1) {
            var $propertyKey, i1 = -1,
              l1 = arr1.length - 1;
            while (i1 < l1) {
              $propertyKey = arr1[i1 += 1];
              out += ' || ' + ($key) + ' == ' + (it.util.toQuotedString($propertyKey)) + ' ';
            }
          }
        }
      }
      if ($pPropertyKeys.length) {
        var arr2 = $pPropertyKeys;
        if (arr2) {
          var $pProperty, $i = -1,
            l2 = arr2.length - 1;
          while ($i < l2) {
            $pProperty = arr2[$i += 1];
            out += ' || ' + (it.usePattern($pProperty)) + '.test(' + ($key) + ') ';
          }
        }
      }
      out += ' ); if (isAdditional' + ($lvl) + ') { ';
    }
    if ($removeAdditional == 'all') {
      out += ' delete ' + ($data) + '[' + ($key) + ']; ';
    } else {
      var $currentErrorPath = it.errorPath;
      var $additionalProperty = '\' + ' + $key + ' + \'';
      if (it.opts._errorDataPathProperty) {
        it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
      }
      if ($noAdditional) {
        if ($removeAdditional) {
          out += ' delete ' + ($data) + '[' + ($key) + ']; ';
        } else {
          out += ' ' + ($nextValid) + ' = false; ';
          var $currErrSchemaPath = $errSchemaPath;
          $errSchemaPath = it.errSchemaPath + '/additionalProperties';
          var $$outStack = $$outStack || [];
          $$outStack.push(out);
          out = ''; /* istanbul ignore else */
          if (it.createErrors !== false) {
            out += ' { keyword: \'' + ('additionalProperties') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { additionalProperty: \'' + ($additionalProperty) + '\' } ';
            if (it.opts.messages !== false) {
              out += ' , message: \'';
              if (it.opts._errorDataPathProperty) {
                out += 'is an invalid additional property';
              } else {
                out += 'should NOT have additional properties';
              }
              out += '\' ';
            }
            if (it.opts.verbose) {
              out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
            }
            out += ' } ';
          } else {
            out += ' {} ';
          }
          var __err = out;
          out = $$outStack.pop();
          if (!it.compositeRule && $breakOnError) {
            /* istanbul ignore if */
            if (it.async) {
              out += ' throw new ValidationError([' + (__err) + ']); ';
            } else {
              out += ' validate.errors = [' + (__err) + ']; return false; ';
            }
          } else {
            out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
          }
          $errSchemaPath = $currErrSchemaPath;
          if ($breakOnError) {
            out += ' break; ';
          }
        }
      } else if ($additionalIsSchema) {
        if ($removeAdditional == 'failing') {
          out += ' var ' + ($errs) + ' = errors;  ';
          var $wasComposite = it.compositeRule;
          it.compositeRule = $it.compositeRule = true;
          $it.schema = $aProperties;
          $it.schemaPath = it.schemaPath + '.additionalProperties';
          $it.errSchemaPath = it.errSchemaPath + '/additionalProperties';
          $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
          var $passData = $data + '[' + $key + ']';
          $it.dataPathArr[$dataNxt] = $key;
          var $code = it.validate($it);
          $it.baseId = $currentBaseId;
          if (it.util.varOccurences($code, $nextData) < 2) {
            out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
          } else {
            out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
          }
          out += ' if (!' + ($nextValid) + ') { errors = ' + ($errs) + '; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete ' + ($data) + '[' + ($key) + ']; }  ';
          it.compositeRule = $it.compositeRule = $wasComposite;
        } else {
          $it.schema = $aProperties;
          $it.schemaPath = it.schemaPath + '.additionalProperties';
          $it.errSchemaPath = it.errSchemaPath + '/additionalProperties';
          $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
          var $passData = $data + '[' + $key + ']';
          $it.dataPathArr[$dataNxt] = $key;
          var $code = it.validate($it);
          $it.baseId = $currentBaseId;
          if (it.util.varOccurences($code, $nextData) < 2) {
            out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
          } else {
            out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
          }
          if ($breakOnError) {
            out += ' if (!' + ($nextValid) + ') break; ';
          }
        }
      }
      it.errorPath = $currentErrorPath;
    }
    if ($someProperties) {
      out += ' } ';
    }
    out += ' }  ';
    if ($breakOnError) {
      out += ' if (' + ($nextValid) + ') { ';
      $closingBraces += '}';
    }
  }
  var $useDefaults = it.opts.useDefaults && !it.compositeRule;
  if ($schemaKeys.length) {
    var arr3 = $schemaKeys;
    if (arr3) {
      var $propertyKey, i3 = -1,
        l3 = arr3.length - 1;
      while (i3 < l3) {
        $propertyKey = arr3[i3 += 1];
        var $sch = $schema[$propertyKey];
        if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {
          var $prop = it.util.getProperty($propertyKey),
            $passData = $data + $prop,
            $hasDefault = $useDefaults && $sch.default !== undefined;
          $it.schema = $sch;
          $it.schemaPath = $schemaPath + $prop;
          $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($propertyKey);
          $it.errorPath = it.util.getPath(it.errorPath, $propertyKey, it.opts.jsonPointers);
          $it.dataPathArr[$dataNxt] = it.util.toQuotedString($propertyKey);
          var $code = it.validate($it);
          $it.baseId = $currentBaseId;
          if (it.util.varOccurences($code, $nextData) < 2) {
            $code = it.util.varReplace($code, $nextData, $passData);
            var $useData = $passData;
          } else {
            var $useData = $nextData;
            out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ';
          }
          if ($hasDefault) {
            out += ' ' + ($code) + ' ';
          } else {
            if ($requiredHash && $requiredHash[$propertyKey]) {
              out += ' if ( ' + ($useData) + ' === undefined ';
              if ($ownProperties) {
                out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
              }
              out += ') { ' + ($nextValid) + ' = false; ';
              var $currentErrorPath = it.errorPath,
                $currErrSchemaPath = $errSchemaPath,
                $missingProperty = it.util.escapeQuotes($propertyKey);
              if (it.opts._errorDataPathProperty) {
                it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);
              }
              $errSchemaPath = it.errSchemaPath + '/required';
              var $$outStack = $$outStack || [];
              $$outStack.push(out);
              out = ''; /* istanbul ignore else */
              if (it.createErrors !== false) {
                out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
                if (it.opts.messages !== false) {
                  out += ' , message: \'';
                  if (it.opts._errorDataPathProperty) {
                    out += 'is a required property';
                  } else {
                    out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
                  }
                  out += '\' ';
                }
                if (it.opts.verbose) {
                  out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
                }
                out += ' } ';
              } else {
                out += ' {} ';
              }
              var __err = out;
              out = $$outStack.pop();
              if (!it.compositeRule && $breakOnError) {
                /* istanbul ignore if */
                if (it.async) {
                  out += ' throw new ValidationError([' + (__err) + ']); ';
                } else {
                  out += ' validate.errors = [' + (__err) + ']; return false; ';
                }
              } else {
                out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
              }
              $errSchemaPath = $currErrSchemaPath;
              it.errorPath = $currentErrorPath;
              out += ' } else { ';
            } else {
              if ($breakOnError) {
                out += ' if ( ' + ($useData) + ' === undefined ';
                if ($ownProperties) {
                  out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
                }
                out += ') { ' + ($nextValid) + ' = true; } else { ';
              } else {
                out += ' if (' + ($useData) + ' !== undefined ';
                if ($ownProperties) {
                  out += ' &&   Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
                }
                out += ' ) { ';
              }
            }
            out += ' ' + ($code) + ' } ';
          }
        }
        if ($breakOnError) {
          out += ' if (' + ($nextValid) + ') { ';
          $closingBraces += '}';
        }
      }
    }
  }
  if ($pPropertyKeys.length) {
    var arr4 = $pPropertyKeys;
    if (arr4) {
      var $pProperty, i4 = -1,
        l4 = arr4.length - 1;
      while (i4 < l4) {
        $pProperty = arr4[i4 += 1];
        var $sch = $pProperties[$pProperty];
        if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {
          $it.schema = $sch;
          $it.schemaPath = it.schemaPath + '.patternProperties' + it.util.getProperty($pProperty);
          $it.errSchemaPath = it.errSchemaPath + '/patternProperties/' + it.util.escapeFragment($pProperty);
          if ($ownProperties) {
            out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';
          } else {
            out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';
          }
          out += ' if (' + (it.usePattern($pProperty)) + '.test(' + ($key) + ')) { ';
          $it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);
          var $passData = $data + '[' + $key + ']';
          $it.dataPathArr[$dataNxt] = $key;
          var $code = it.validate($it);
          $it.baseId = $currentBaseId;
          if (it.util.varOccurences($code, $nextData) < 2) {
            out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
          } else {
            out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
          }
          if ($breakOnError) {
            out += ' if (!' + ($nextValid) + ') break; ';
          }
          out += ' } ';
          if ($breakOnError) {
            out += ' else ' + ($nextValid) + ' = true; ';
          }
          out += ' }  ';
          if ($breakOnError) {
            out += ' if (' + ($nextValid) + ') { ';
            $closingBraces += '}';
          }
        }
      }
    }
  }
  if ($breakOnError) {
    out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';
  }
  return out;
}


/***/ }),

/***/ 19195:
/***/ ((module) => {

"use strict";

module.exports = function generate_propertyNames(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $errs = 'errs__' + $lvl;
  var $it = it.util.copy(it);
  var $closingBraces = '';
  $it.level++;
  var $nextValid = 'valid' + $it.level;
  out += 'var ' + ($errs) + ' = errors;';
  if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {
    $it.schema = $schema;
    $it.schemaPath = $schemaPath;
    $it.errSchemaPath = $errSchemaPath;
    var $key = 'key' + $lvl,
      $idx = 'idx' + $lvl,
      $i = 'i' + $lvl,
      $invalidName = '\' + ' + $key + ' + \'',
      $dataNxt = $it.dataLevel = it.dataLevel + 1,
      $nextData = 'data' + $dataNxt,
      $dataProperties = 'dataProperties' + $lvl,
      $ownProperties = it.opts.ownProperties,
      $currentBaseId = it.baseId;
    if ($ownProperties) {
      out += ' var ' + ($dataProperties) + ' = undefined; ';
    }
    if ($ownProperties) {
      out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';
    } else {
      out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';
    }
    out += ' var startErrs' + ($lvl) + ' = errors; ';
    var $passData = $key;
    var $wasComposite = it.compositeRule;
    it.compositeRule = $it.compositeRule = true;
    var $code = it.validate($it);
    $it.baseId = $currentBaseId;
    if (it.util.varOccurences($code, $nextData) < 2) {
      out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';
    } else {
      out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';
    }
    it.compositeRule = $it.compositeRule = $wasComposite;
    out += ' if (!' + ($nextValid) + ') { for (var ' + ($i) + '=startErrs' + ($lvl) + '; ' + ($i) + '<errors; ' + ($i) + '++) { vErrors[' + ($i) + '].propertyName = ' + ($key) + '; }   var err =   '; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ('propertyNames') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { propertyName: \'' + ($invalidName) + '\' } ';
      if (it.opts.messages !== false) {
        out += ' , message: \'property name \\\'' + ($invalidName) + '\\\' is invalid\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError(vErrors); ';
      } else {
        out += ' validate.errors = vErrors; return false; ';
      }
    }
    if ($breakOnError) {
      out += ' break; ';
    }
    out += ' } }';
  }
  if ($breakOnError) {
    out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';
  }
  return out;
}


/***/ }),

/***/ 42393:
/***/ ((module) => {

"use strict";

module.exports = function generate_ref(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $async, $refCode;
  if ($schema == '#' || $schema == '#/') {
    if (it.isRoot) {
      $async = it.async;
      $refCode = 'validate';
    } else {
      $async = it.root.schema.$async === true;
      $refCode = 'root.refVal[0]';
    }
  } else {
    var $refVal = it.resolveRef(it.baseId, $schema, it.isRoot);
    if ($refVal === undefined) {
      var $message = it.MissingRefError.message(it.baseId, $schema);
      if (it.opts.missingRefs == 'fail') {
        it.logger.error($message);
        var $$outStack = $$outStack || [];
        $$outStack.push(out);
        out = ''; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ('$ref') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { ref: \'' + (it.util.escapeQuotes($schema)) + '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'can\\\'t resolve reference ' + (it.util.escapeQuotes($schema)) + '\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: ' + (it.util.toQuotedString($schema)) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        var __err = out;
        out = $$outStack.pop();
        if (!it.compositeRule && $breakOnError) {
          /* istanbul ignore if */
          if (it.async) {
            out += ' throw new ValidationError([' + (__err) + ']); ';
          } else {
            out += ' validate.errors = [' + (__err) + ']; return false; ';
          }
        } else {
          out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
        }
        if ($breakOnError) {
          out += ' if (false) { ';
        }
      } else if (it.opts.missingRefs == 'ignore') {
        it.logger.warn($message);
        if ($breakOnError) {
          out += ' if (true) { ';
        }
      } else {
        throw new it.MissingRefError(it.baseId, $schema, $message);
      }
    } else if ($refVal.inline) {
      var $it = it.util.copy(it);
      $it.level++;
      var $nextValid = 'valid' + $it.level;
      $it.schema = $refVal.schema;
      $it.schemaPath = '';
      $it.errSchemaPath = $schema;
      var $code = it.validate($it).replace(/validate\.schema/g, $refVal.code);
      out += ' ' + ($code) + ' ';
      if ($breakOnError) {
        out += ' if (' + ($nextValid) + ') { ';
      }
    } else {
      $async = $refVal.$async === true || (it.async && $refVal.$async !== false);
      $refCode = $refVal.code;
    }
  }
  if ($refCode) {
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = '';
    if (it.opts.passContext) {
      out += ' ' + ($refCode) + '.call(this, ';
    } else {
      out += ' ' + ($refCode) + '( ';
    }
    out += ' ' + ($data) + ', (dataPath || \'\')';
    if (it.errorPath != '""') {
      out += ' + ' + (it.errorPath);
    }
    var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData',
      $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty';
    out += ' , ' + ($parentData) + ' , ' + ($parentDataProperty) + ', rootData)  ';
    var __callValidate = out;
    out = $$outStack.pop();
    if ($async) {
      if (!it.async) throw new Error('async schema referenced by sync schema');
      if ($breakOnError) {
        out += ' var ' + ($valid) + '; ';
      }
      out += ' try { await ' + (__callValidate) + '; ';
      if ($breakOnError) {
        out += ' ' + ($valid) + ' = true; ';
      }
      out += ' } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ';
      if ($breakOnError) {
        out += ' ' + ($valid) + ' = false; ';
      }
      out += ' } ';
      if ($breakOnError) {
        out += ' if (' + ($valid) + ') { ';
      }
    } else {
      out += ' if (!' + (__callValidate) + ') { if (vErrors === null) vErrors = ' + ($refCode) + '.errors; else vErrors = vErrors.concat(' + ($refCode) + '.errors); errors = vErrors.length; } ';
      if ($breakOnError) {
        out += ' else { ';
      }
    }
  }
  return out;
}


/***/ }),

/***/ 8420:
/***/ ((module) => {

"use strict";

module.exports = function generate_required(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  var $vSchema = 'schema' + $lvl;
  if (!$isData) {
    if ($schema.length < it.opts.loopRequired && it.schema.properties && Object.keys(it.schema.properties).length) {
      var $required = [];
      var arr1 = $schema;
      if (arr1) {
        var $property, i1 = -1,
          l1 = arr1.length - 1;
        while (i1 < l1) {
          $property = arr1[i1 += 1];
          var $propertySch = it.schema.properties[$property];
          if (!($propertySch && (it.opts.strictKeywords ? (typeof $propertySch == 'object' && Object.keys($propertySch).length > 0) || $propertySch === false : it.util.schemaHasRules($propertySch, it.RULES.all)))) {
            $required[$required.length] = $property;
          }
        }
      }
    } else {
      var $required = $schema;
    }
  }
  if ($isData || $required.length) {
    var $currentErrorPath = it.errorPath,
      $loopRequired = $isData || $required.length >= it.opts.loopRequired,
      $ownProperties = it.opts.ownProperties;
    if ($breakOnError) {
      out += ' var missing' + ($lvl) + '; ';
      if ($loopRequired) {
        if (!$isData) {
          out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; ';
        }
        var $i = 'i' + $lvl,
          $propertyPath = 'schema' + $lvl + '[' + $i + ']',
          $missingProperty = '\' + ' + $propertyPath + ' + \'';
        if (it.opts._errorDataPathProperty) {
          it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers);
        }
        out += ' var ' + ($valid) + ' = true; ';
        if ($isData) {
          out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {';
        }
        out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { ' + ($valid) + ' = ' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] !== undefined ';
        if ($ownProperties) {
          out += ' &&   Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) ';
        }
        out += '; if (!' + ($valid) + ') break; } ';
        if ($isData) {
          out += '  }  ';
        }
        out += '  if (!' + ($valid) + ') {   ';
        var $$outStack = $$outStack || [];
        $$outStack.push(out);
        out = ''; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'';
            if (it.opts._errorDataPathProperty) {
              out += 'is a required property';
            } else {
              out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
            }
            out += '\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        var __err = out;
        out = $$outStack.pop();
        if (!it.compositeRule && $breakOnError) {
          /* istanbul ignore if */
          if (it.async) {
            out += ' throw new ValidationError([' + (__err) + ']); ';
          } else {
            out += ' validate.errors = [' + (__err) + ']; return false; ';
          }
        } else {
          out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
        }
        out += ' } else { ';
      } else {
        out += ' if ( ';
        var arr2 = $required;
        if (arr2) {
          var $propertyKey, $i = -1,
            l2 = arr2.length - 1;
          while ($i < l2) {
            $propertyKey = arr2[$i += 1];
            if ($i) {
              out += ' || ';
            }
            var $prop = it.util.getProperty($propertyKey),
              $useData = $data + $prop;
            out += ' ( ( ' + ($useData) + ' === undefined ';
            if ($ownProperties) {
              out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
            }
            out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) ';
          }
        }
        out += ') {  ';
        var $propertyPath = 'missing' + $lvl,
          $missingProperty = '\' + ' + $propertyPath + ' + \'';
        if (it.opts._errorDataPathProperty) {
          it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath;
        }
        var $$outStack = $$outStack || [];
        $$outStack.push(out);
        out = ''; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'';
            if (it.opts._errorDataPathProperty) {
              out += 'is a required property';
            } else {
              out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
            }
            out += '\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        var __err = out;
        out = $$outStack.pop();
        if (!it.compositeRule && $breakOnError) {
          /* istanbul ignore if */
          if (it.async) {
            out += ' throw new ValidationError([' + (__err) + ']); ';
          } else {
            out += ' validate.errors = [' + (__err) + ']; return false; ';
          }
        } else {
          out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
        }
        out += ' } else { ';
      }
    } else {
      if ($loopRequired) {
        if (!$isData) {
          out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; ';
        }
        var $i = 'i' + $lvl,
          $propertyPath = 'schema' + $lvl + '[' + $i + ']',
          $missingProperty = '\' + ' + $propertyPath + ' + \'';
        if (it.opts._errorDataPathProperty) {
          it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers);
        }
        if ($isData) {
          out += ' if (' + ($vSchema) + ' && !Array.isArray(' + ($vSchema) + ')) {  var err =   '; /* istanbul ignore else */
          if (it.createErrors !== false) {
            out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
            if (it.opts.messages !== false) {
              out += ' , message: \'';
              if (it.opts._errorDataPathProperty) {
                out += 'is a required property';
              } else {
                out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
              }
              out += '\' ';
            }
            if (it.opts.verbose) {
              out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
            }
            out += ' } ';
          } else {
            out += ' {} ';
          }
          out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (' + ($vSchema) + ' !== undefined) { ';
        }
        out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { if (' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] === undefined ';
        if ($ownProperties) {
          out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) ';
        }
        out += ') {  var err =   '; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'';
            if (it.opts._errorDataPathProperty) {
              out += 'is a required property';
            } else {
              out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
            }
            out += '\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ';
        if ($isData) {
          out += '  }  ';
        }
      } else {
        var arr3 = $required;
        if (arr3) {
          var $propertyKey, i3 = -1,
            l3 = arr3.length - 1;
          while (i3 < l3) {
            $propertyKey = arr3[i3 += 1];
            var $prop = it.util.getProperty($propertyKey),
              $missingProperty = it.util.escapeQuotes($propertyKey),
              $useData = $data + $prop;
            if (it.opts._errorDataPathProperty) {
              it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);
            }
            out += ' if ( ' + ($useData) + ' === undefined ';
            if ($ownProperties) {
              out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \'' + (it.util.escapeQuotes($propertyKey)) + '\') ';
            }
            out += ') {  var err =   '; /* istanbul ignore else */
            if (it.createErrors !== false) {
              out += ' { keyword: \'' + ('required') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \'' + ($missingProperty) + '\' } ';
              if (it.opts.messages !== false) {
                out += ' , message: \'';
                if (it.opts._errorDataPathProperty) {
                  out += 'is a required property';
                } else {
                  out += 'should have required property \\\'' + ($missingProperty) + '\\\'';
                }
                out += '\' ';
              }
              if (it.opts.verbose) {
                out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
              }
              out += ' } ';
            } else {
              out += ' {} ';
            }
            out += ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ';
          }
        }
      }
    }
    it.errorPath = $currentErrorPath;
  } else if ($breakOnError) {
    out += ' if (true) {';
  }
  return out;
}


/***/ }),

/***/ 24995:
/***/ ((module) => {

"use strict";

module.exports = function generate_uniqueItems(it, $keyword, $ruleType) {
  var out = ' ';
  var $lvl = it.level;
  var $dataLvl = it.dataLevel;
  var $schema = it.schema[$keyword];
  var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
  var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
  var $breakOnError = !it.opts.allErrors;
  var $data = 'data' + ($dataLvl || '');
  var $valid = 'valid' + $lvl;
  var $isData = it.opts.$data && $schema && $schema.$data,
    $schemaValue;
  if ($isData) {
    out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';
    $schemaValue = 'schema' + $lvl;
  } else {
    $schemaValue = $schema;
  }
  if (($schema || $isData) && it.opts.uniqueItems !== false) {
    if ($isData) {
      out += ' var ' + ($valid) + '; if (' + ($schemaValue) + ' === false || ' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \'boolean\') ' + ($valid) + ' = false; else { ';
    }
    out += ' var i = ' + ($data) + '.length , ' + ($valid) + ' = true , j; if (i > 1) { ';
    var $itemType = it.schema.items && it.schema.items.type,
      $typeIsArray = Array.isArray($itemType);
    if (!$itemType || $itemType == 'object' || $itemType == 'array' || ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0))) {
      out += ' outer: for (;i--;) { for (j = i; j--;) { if (equal(' + ($data) + '[i], ' + ($data) + '[j])) { ' + ($valid) + ' = false; break outer; } } } ';
    } else {
      out += ' var itemIndices = {}, item; for (;i--;) { var item = ' + ($data) + '[i]; ';
      var $method = 'checkDataType' + ($typeIsArray ? 's' : '');
      out += ' if (' + (it.util[$method]($itemType, 'item', it.opts.strictNumbers, true)) + ') continue; ';
      if ($typeIsArray) {
        out += ' if (typeof item == \'string\') item = \'"\' + item; ';
      }
      out += ' if (typeof itemIndices[item] == \'number\') { ' + ($valid) + ' = false; j = itemIndices[item]; break; } itemIndices[item] = i; } ';
    }
    out += ' } ';
    if ($isData) {
      out += '  }  ';
    }
    out += ' if (!' + ($valid) + ') {   ';
    var $$outStack = $$outStack || [];
    $$outStack.push(out);
    out = ''; /* istanbul ignore else */
    if (it.createErrors !== false) {
      out += ' { keyword: \'' + ('uniqueItems') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { i: i, j: j } ';
      if (it.opts.messages !== false) {
        out += ' , message: \'should NOT have duplicate items (items ## \' + j + \' and \' + i + \' are identical)\' ';
      }
      if (it.opts.verbose) {
        out += ' , schema:  ';
        if ($isData) {
          out += 'validate.schema' + ($schemaPath);
        } else {
          out += '' + ($schema);
        }
        out += '         , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
      }
      out += ' } ';
    } else {
      out += ' {} ';
    }
    var __err = out;
    out = $$outStack.pop();
    if (!it.compositeRule && $breakOnError) {
      /* istanbul ignore if */
      if (it.async) {
        out += ' throw new ValidationError([' + (__err) + ']); ';
      } else {
        out += ' validate.errors = [' + (__err) + ']; return false; ';
      }
    } else {
      out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
    }
    out += ' } ';
    if ($breakOnError) {
      out += ' else { ';
    }
  } else {
    if ($breakOnError) {
      out += ' if (true) { ';
    }
  }
  return out;
}


/***/ }),

/***/ 49585:
/***/ ((module) => {

"use strict";

module.exports = function generate_validate(it, $keyword, $ruleType) {
  var out = '';
  var $async = it.schema.$async === true,
    $refKeywords = it.util.schemaHasRulesExcept(it.schema, it.RULES.all, '$ref'),
    $id = it.self._getId(it.schema);
  if (it.opts.strictKeywords) {
    var $unknownKwd = it.util.schemaUnknownRules(it.schema, it.RULES.keywords);
    if ($unknownKwd) {
      var $keywordsMsg = 'unknown keyword: ' + $unknownKwd;
      if (it.opts.strictKeywords === 'log') it.logger.warn($keywordsMsg);
      else throw new Error($keywordsMsg);
    }
  }
  if (it.isTop) {
    out += ' var validate = ';
    if ($async) {
      it.async = true;
      out += 'async ';
    }
    out += 'function(data, dataPath, parentData, parentDataProperty, rootData) { \'use strict\'; ';
    if ($id && (it.opts.sourceCode || it.opts.processCode)) {
      out += ' ' + ('/\*# sourceURL=' + $id + ' */') + ' ';
    }
  }
  if (typeof it.schema == 'boolean' || !($refKeywords || it.schema.$ref)) {
    var $keyword = 'false schema';
    var $lvl = it.level;
    var $dataLvl = it.dataLevel;
    var $schema = it.schema[$keyword];
    var $schemaPath = it.schemaPath + it.util.getProperty($keyword);
    var $errSchemaPath = it.errSchemaPath + '/' + $keyword;
    var $breakOnError = !it.opts.allErrors;
    var $errorKeyword;
    var $data = 'data' + ($dataLvl || '');
    var $valid = 'valid' + $lvl;
    if (it.schema === false) {
      if (it.isTop) {
        $breakOnError = true;
      } else {
        out += ' var ' + ($valid) + ' = false; ';
      }
      var $$outStack = $$outStack || [];
      $$outStack.push(out);
      out = ''; /* istanbul ignore else */
      if (it.createErrors !== false) {
        out += ' { keyword: \'' + ($errorKeyword || 'false schema') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';
        if (it.opts.messages !== false) {
          out += ' , message: \'boolean schema is false\' ';
        }
        if (it.opts.verbose) {
          out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
        }
        out += ' } ';
      } else {
        out += ' {} ';
      }
      var __err = out;
      out = $$outStack.pop();
      if (!it.compositeRule && $breakOnError) {
        /* istanbul ignore if */
        if (it.async) {
          out += ' throw new ValidationError([' + (__err) + ']); ';
        } else {
          out += ' validate.errors = [' + (__err) + ']; return false; ';
        }
      } else {
        out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
      }
    } else {
      if (it.isTop) {
        if ($async) {
          out += ' return data; ';
        } else {
          out += ' validate.errors = null; return true; ';
        }
      } else {
        out += ' var ' + ($valid) + ' = true; ';
      }
    }
    if (it.isTop) {
      out += ' }; return validate; ';
    }
    return out;
  }
  if (it.isTop) {
    var $top = it.isTop,
      $lvl = it.level = 0,
      $dataLvl = it.dataLevel = 0,
      $data = 'data';
    it.rootId = it.resolve.fullPath(it.self._getId(it.root.schema));
    it.baseId = it.baseId || it.rootId;
    delete it.isTop;
    it.dataPathArr = [""];
    if (it.schema.default !== undefined && it.opts.useDefaults && it.opts.strictDefaults) {
      var $defaultMsg = 'default is ignored in the schema root';
      if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);
      else throw new Error($defaultMsg);
    }
    out += ' var vErrors = null; ';
    out += ' var errors = 0;     ';
    out += ' if (rootData === undefined) rootData = data; ';
  } else {
    var $lvl = it.level,
      $dataLvl = it.dataLevel,
      $data = 'data' + ($dataLvl || '');
    if ($id) it.baseId = it.resolve.url(it.baseId, $id);
    if ($async && !it.async) throw new Error('async schema in sync schema');
    out += ' var errs_' + ($lvl) + ' = errors;';
  }
  var $valid = 'valid' + $lvl,
    $breakOnError = !it.opts.allErrors,
    $closingBraces1 = '',
    $closingBraces2 = '';
  var $errorKeyword;
  var $typeSchema = it.schema.type,
    $typeIsArray = Array.isArray($typeSchema);
  if ($typeSchema && it.opts.nullable && it.schema.nullable === true) {
    if ($typeIsArray) {
      if ($typeSchema.indexOf('null') == -1) $typeSchema = $typeSchema.concat('null');
    } else if ($typeSchema != 'null') {
      $typeSchema = [$typeSchema, 'null'];
      $typeIsArray = true;
    }
  }
  if ($typeIsArray && $typeSchema.length == 1) {
    $typeSchema = $typeSchema[0];
    $typeIsArray = false;
  }
  if (it.schema.$ref && $refKeywords) {
    if (it.opts.extendRefs == 'fail') {
      throw new Error('$ref: validation keywords used in schema at path "' + it.errSchemaPath + '" (see option extendRefs)');
    } else if (it.opts.extendRefs !== true) {
      $refKeywords = false;
      it.logger.warn('$ref: keywords ignored in schema at path "' + it.errSchemaPath + '"');
    }
  }
  if (it.schema.$comment && it.opts.$comment) {
    out += ' ' + (it.RULES.all.$comment.code(it, '$comment'));
  }
  if ($typeSchema) {
    if (it.opts.coerceTypes) {
      var $coerceToTypes = it.util.coerceToTypes(it.opts.coerceTypes, $typeSchema);
    }
    var $rulesGroup = it.RULES.types[$typeSchema];
    if ($coerceToTypes || $typeIsArray || $rulesGroup === true || ($rulesGroup && !$shouldUseGroup($rulesGroup))) {
      var $schemaPath = it.schemaPath + '.type',
        $errSchemaPath = it.errSchemaPath + '/type';
      var $schemaPath = it.schemaPath + '.type',
        $errSchemaPath = it.errSchemaPath + '/type',
        $method = $typeIsArray ? 'checkDataTypes' : 'checkDataType';
      out += ' if (' + (it.util[$method]($typeSchema, $data, it.opts.strictNumbers, true)) + ') { ';
      if ($coerceToTypes) {
        var $dataType = 'dataType' + $lvl,
          $coerced = 'coerced' + $lvl;
        out += ' var ' + ($dataType) + ' = typeof ' + ($data) + '; var ' + ($coerced) + ' = undefined; ';
        if (it.opts.coerceTypes == 'array') {
          out += ' if (' + ($dataType) + ' == \'object\' && Array.isArray(' + ($data) + ') && ' + ($data) + '.length == 1) { ' + ($data) + ' = ' + ($data) + '[0]; ' + ($dataType) + ' = typeof ' + ($data) + '; if (' + (it.util.checkDataType(it.schema.type, $data, it.opts.strictNumbers)) + ') ' + ($coerced) + ' = ' + ($data) + '; } ';
        }
        out += ' if (' + ($coerced) + ' !== undefined) ; ';
        var arr1 = $coerceToTypes;
        if (arr1) {
          var $type, $i = -1,
            l1 = arr1.length - 1;
          while ($i < l1) {
            $type = arr1[$i += 1];
            if ($type == 'string') {
              out += ' else if (' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\') ' + ($coerced) + ' = \'\' + ' + ($data) + '; else if (' + ($data) + ' === null) ' + ($coerced) + ' = \'\'; ';
            } else if ($type == 'number' || $type == 'integer') {
              out += ' else if (' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' === null || (' + ($dataType) + ' == \'string\' && ' + ($data) + ' && ' + ($data) + ' == +' + ($data) + ' ';
              if ($type == 'integer') {
                out += ' && !(' + ($data) + ' % 1)';
              }
              out += ')) ' + ($coerced) + ' = +' + ($data) + '; ';
            } else if ($type == 'boolean') {
              out += ' else if (' + ($data) + ' === \'false\' || ' + ($data) + ' === 0 || ' + ($data) + ' === null) ' + ($coerced) + ' = false; else if (' + ($data) + ' === \'true\' || ' + ($data) + ' === 1) ' + ($coerced) + ' = true; ';
            } else if ($type == 'null') {
              out += ' else if (' + ($data) + ' === \'\' || ' + ($data) + ' === 0 || ' + ($data) + ' === false) ' + ($coerced) + ' = null; ';
            } else if (it.opts.coerceTypes == 'array' && $type == 'array') {
              out += ' else if (' + ($dataType) + ' == \'string\' || ' + ($dataType) + ' == \'number\' || ' + ($dataType) + ' == \'boolean\' || ' + ($data) + ' == null) ' + ($coerced) + ' = [' + ($data) + ']; ';
            }
          }
        }
        out += ' else {   ';
        var $$outStack = $$outStack || [];
        $$outStack.push(out);
        out = ''; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \'';
          if ($typeIsArray) {
            out += '' + ($typeSchema.join(","));
          } else {
            out += '' + ($typeSchema);
          }
          out += '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'should be ';
            if ($typeIsArray) {
              out += '' + ($typeSchema.join(","));
            } else {
              out += '' + ($typeSchema);
            }
            out += '\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        var __err = out;
        out = $$outStack.pop();
        if (!it.compositeRule && $breakOnError) {
          /* istanbul ignore if */
          if (it.async) {
            out += ' throw new ValidationError([' + (__err) + ']); ';
          } else {
            out += ' validate.errors = [' + (__err) + ']; return false; ';
          }
        } else {
          out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
        }
        out += ' } if (' + ($coerced) + ' !== undefined) {  ';
        var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData',
          $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty';
        out += ' ' + ($data) + ' = ' + ($coerced) + '; ';
        if (!$dataLvl) {
          out += 'if (' + ($parentData) + ' !== undefined)';
        }
        out += ' ' + ($parentData) + '[' + ($parentDataProperty) + '] = ' + ($coerced) + '; } ';
      } else {
        var $$outStack = $$outStack || [];
        $$outStack.push(out);
        out = ''; /* istanbul ignore else */
        if (it.createErrors !== false) {
          out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \'';
          if ($typeIsArray) {
            out += '' + ($typeSchema.join(","));
          } else {
            out += '' + ($typeSchema);
          }
          out += '\' } ';
          if (it.opts.messages !== false) {
            out += ' , message: \'should be ';
            if ($typeIsArray) {
              out += '' + ($typeSchema.join(","));
            } else {
              out += '' + ($typeSchema);
            }
            out += '\' ';
          }
          if (it.opts.verbose) {
            out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
          }
          out += ' } ';
        } else {
          out += ' {} ';
        }
        var __err = out;
        out = $$outStack.pop();
        if (!it.compositeRule && $breakOnError) {
          /* istanbul ignore if */
          if (it.async) {
            out += ' throw new ValidationError([' + (__err) + ']); ';
          } else {
            out += ' validate.errors = [' + (__err) + ']; return false; ';
          }
        } else {
          out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
        }
      }
      out += ' } ';
    }
  }
  if (it.schema.$ref && !$refKeywords) {
    out += ' ' + (it.RULES.all.$ref.code(it, '$ref')) + ' ';
    if ($breakOnError) {
      out += ' } if (errors === ';
      if ($top) {
        out += '0';
      } else {
        out += 'errs_' + ($lvl);
      }
      out += ') { ';
      $closingBraces2 += '}';
    }
  } else {
    var arr2 = it.RULES;
    if (arr2) {
      var $rulesGroup, i2 = -1,
        l2 = arr2.length - 1;
      while (i2 < l2) {
        $rulesGroup = arr2[i2 += 1];
        if ($shouldUseGroup($rulesGroup)) {
          if ($rulesGroup.type) {
            out += ' if (' + (it.util.checkDataType($rulesGroup.type, $data, it.opts.strictNumbers)) + ') { ';
          }
          if (it.opts.useDefaults) {
            if ($rulesGroup.type == 'object' && it.schema.properties) {
              var $schema = it.schema.properties,
                $schemaKeys = Object.keys($schema);
              var arr3 = $schemaKeys;
              if (arr3) {
                var $propertyKey, i3 = -1,
                  l3 = arr3.length - 1;
                while (i3 < l3) {
                  $propertyKey = arr3[i3 += 1];
                  var $sch = $schema[$propertyKey];
                  if ($sch.default !== undefined) {
                    var $passData = $data + it.util.getProperty($propertyKey);
                    if (it.compositeRule) {
                      if (it.opts.strictDefaults) {
                        var $defaultMsg = 'default is ignored for: ' + $passData;
                        if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);
                        else throw new Error($defaultMsg);
                      }
                    } else {
                      out += ' if (' + ($passData) + ' === undefined ';
                      if (it.opts.useDefaults == 'empty') {
                        out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' ';
                      }
                      out += ' ) ' + ($passData) + ' = ';
                      if (it.opts.useDefaults == 'shared') {
                        out += ' ' + (it.useDefault($sch.default)) + ' ';
                      } else {
                        out += ' ' + (JSON.stringify($sch.default)) + ' ';
                      }
                      out += '; ';
                    }
                  }
                }
              }
            } else if ($rulesGroup.type == 'array' && Array.isArray(it.schema.items)) {
              var arr4 = it.schema.items;
              if (arr4) {
                var $sch, $i = -1,
                  l4 = arr4.length - 1;
                while ($i < l4) {
                  $sch = arr4[$i += 1];
                  if ($sch.default !== undefined) {
                    var $passData = $data + '[' + $i + ']';
                    if (it.compositeRule) {
                      if (it.opts.strictDefaults) {
                        var $defaultMsg = 'default is ignored for: ' + $passData;
                        if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);
                        else throw new Error($defaultMsg);
                      }
                    } else {
                      out += ' if (' + ($passData) + ' === undefined ';
                      if (it.opts.useDefaults == 'empty') {
                        out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \'\' ';
                      }
                      out += ' ) ' + ($passData) + ' = ';
                      if (it.opts.useDefaults == 'shared') {
                        out += ' ' + (it.useDefault($sch.default)) + ' ';
                      } else {
                        out += ' ' + (JSON.stringify($sch.default)) + ' ';
                      }
                      out += '; ';
                    }
                  }
                }
              }
            }
          }
          var arr5 = $rulesGroup.rules;
          if (arr5) {
            var $rule, i5 = -1,
              l5 = arr5.length - 1;
            while (i5 < l5) {
              $rule = arr5[i5 += 1];
              if ($shouldUseRule($rule)) {
                var $code = $rule.code(it, $rule.keyword, $rulesGroup.type);
                if ($code) {
                  out += ' ' + ($code) + ' ';
                  if ($breakOnError) {
                    $closingBraces1 += '}';
                  }
                }
              }
            }
          }
          if ($breakOnError) {
            out += ' ' + ($closingBraces1) + ' ';
            $closingBraces1 = '';
          }
          if ($rulesGroup.type) {
            out += ' } ';
            if ($typeSchema && $typeSchema === $rulesGroup.type && !$coerceToTypes) {
              out += ' else { ';
              var $schemaPath = it.schemaPath + '.type',
                $errSchemaPath = it.errSchemaPath + '/type';
              var $$outStack = $$outStack || [];
              $$outStack.push(out);
              out = ''; /* istanbul ignore else */
              if (it.createErrors !== false) {
                out += ' { keyword: \'' + ($errorKeyword || 'type') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \'';
                if ($typeIsArray) {
                  out += '' + ($typeSchema.join(","));
                } else {
                  out += '' + ($typeSchema);
                }
                out += '\' } ';
                if (it.opts.messages !== false) {
                  out += ' , message: \'should be ';
                  if ($typeIsArray) {
                    out += '' + ($typeSchema.join(","));
                  } else {
                    out += '' + ($typeSchema);
                  }
                  out += '\' ';
                }
                if (it.opts.verbose) {
                  out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';
                }
                out += ' } ';
              } else {
                out += ' {} ';
              }
              var __err = out;
              out = $$outStack.pop();
              if (!it.compositeRule && $breakOnError) {
                /* istanbul ignore if */
                if (it.async) {
                  out += ' throw new ValidationError([' + (__err) + ']); ';
                } else {
                  out += ' validate.errors = [' + (__err) + ']; return false; ';
                }
              } else {
                out += ' var err = ' + (__err) + ';  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';
              }
              out += ' } ';
            }
          }
          if ($breakOnError) {
            out += ' if (errors === ';
            if ($top) {
              out += '0';
            } else {
              out += 'errs_' + ($lvl);
            }
            out += ') { ';
            $closingBraces2 += '}';
          }
        }
      }
    }
  }
  if ($breakOnError) {
    out += ' ' + ($closingBraces2) + ' ';
  }
  if ($top) {
    if ($async) {
      out += ' if (errors === 0) return data;           ';
      out += ' else throw new ValidationError(vErrors); ';
    } else {
      out += ' validate.errors = vErrors; ';
      out += ' return errors === 0;       ';
    }
    out += ' }; return validate;';
  } else {
    out += ' var ' + ($valid) + ' = errors === errs_' + ($lvl) + ';';
  }

  function $shouldUseGroup($rulesGroup) {
    var rules = $rulesGroup.rules;
    for (var i = 0; i < rules.length; i++)
      if ($shouldUseRule(rules[i])) return true;
  }

  function $shouldUseRule($rule) {
    return it.schema[$rule.keyword] !== undefined || ($rule.implements && $ruleImplementsSomeKeyword($rule));
  }

  function $ruleImplementsSomeKeyword($rule) {
    var impl = $rule.implements;
    for (var i = 0; i < impl.length; i++)
      if (it.schema[impl[i]] !== undefined) return true;
  }
  return out;
}


/***/ }),

/***/ 53297:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var IDENTIFIER = /^[a-z_$][a-z0-9_$-]*$/i;
var customRuleCode = __webpack_require__(5912);
var definitionSchema = __webpack_require__(10458);

module.exports = {
  add: addKeyword,
  get: getKeyword,
  remove: removeKeyword,
  validate: validateKeyword
};


/**
 * Define custom keyword
 * @this  Ajv
 * @param {String} keyword custom keyword, should be unique (including different from all standard, custom and macro keywords).
 * @param {Object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`.
 * @return {Ajv} this for method chaining
 */
function addKeyword(keyword, definition) {
  /* jshint validthis: true */
  /* eslint no-shadow: 0 */
  var RULES = this.RULES;
  if (RULES.keywords[keyword])
    throw new Error('Keyword ' + keyword + ' is already defined');

  if (!IDENTIFIER.test(keyword))
    throw new Error('Keyword ' + keyword + ' is not a valid identifier');

  if (definition) {
    this.validateKeyword(definition, true);

    var dataType = definition.type;
    if (Array.isArray(dataType)) {
      for (var i=0; i<dataType.length; i++)
        _addRule(keyword, dataType[i], definition);
    } else {
      _addRule(keyword, dataType, definition);
    }

    var metaSchema = definition.metaSchema;
    if (metaSchema) {
      if (definition.$data && this._opts.$data) {
        metaSchema = {
          anyOf: [
            metaSchema,
            { '$ref': 'https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#' }
          ]
        };
      }
      definition.validateSchema = this.compile(metaSchema, true);
    }
  }

  RULES.keywords[keyword] = RULES.all[keyword] = true;


  function _addRule(keyword, dataType, definition) {
    var ruleGroup;
    for (var i=0; i<RULES.length; i++) {
      var rg = RULES[i];
      if (rg.type == dataType) {
        ruleGroup = rg;
        break;
      }
    }

    if (!ruleGroup) {
      ruleGroup = { type: dataType, rules: [] };
      RULES.push(ruleGroup);
    }

    var rule = {
      keyword: keyword,
      definition: definition,
      custom: true,
      code: customRuleCode,
      implements: definition.implements
    };
    ruleGroup.rules.push(rule);
    RULES.custom[keyword] = rule;
  }

  return this;
}


/**
 * Get keyword
 * @this  Ajv
 * @param {String} keyword pre-defined or custom keyword.
 * @return {Object|Boolean} custom keyword definition, `true` if it is a predefined keyword, `false` otherwise.
 */
function getKeyword(keyword) {
  /* jshint validthis: true */
  var rule = this.RULES.custom[keyword];
  return rule ? rule.definition : this.RULES.keywords[keyword] || false;
}


/**
 * Remove keyword
 * @this  Ajv
 * @param {String} keyword pre-defined or custom keyword.
 * @return {Ajv} this for method chaining
 */
function removeKeyword(keyword) {
  /* jshint validthis: true */
  var RULES = this.RULES;
  delete RULES.keywords[keyword];
  delete RULES.all[keyword];
  delete RULES.custom[keyword];
  for (var i=0; i<RULES.length; i++) {
    var rules = RULES[i].rules;
    for (var j=0; j<rules.length; j++) {
      if (rules[j].keyword == keyword) {
        rules.splice(j, 1);
        break;
      }
    }
  }
  return this;
}


/**
 * Validate keyword definition
 * @this  Ajv
 * @param {Object} definition keyword definition object.
 * @param {Boolean} throwError true to throw exception if definition is invalid
 * @return {boolean} validation result
 */
function validateKeyword(definition, throwError) {
  validateKeyword.errors = null;
  var v = this._validateKeyword = this._validateKeyword
                                  || this.compile(definitionSchema, true);

  if (v(definition)) return true;
  validateKeyword.errors = v.errors;
  if (throwError)
    throw new Error('custom keyword definition is invalid: '  + this.errorsText(v.errors));
  else
    return false;
}


/***/ }),

/***/ 99348:
/***/ ((module) => {

// Copyright 2011 Mark Cavage <mcavage@gmail.com> All rights reserved.


module.exports = {

  newInvalidAsn1Error: function (msg) {
    var e = new Error();
    e.name = 'InvalidAsn1Error';
    e.message = msg || '';
    return e;
  }

};


/***/ }),

/***/ 194:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2011 Mark Cavage <mcavage@gmail.com> All rights reserved.

var errors = __webpack_require__(99348);
var types = __webpack_require__(42473);

var Reader = __webpack_require__(20290);
var Writer = __webpack_require__(43200);


// --- Exports

module.exports = {

  Reader: Reader,

  Writer: Writer

};

for (var t in types) {
  if (types.hasOwnProperty(t))
    module.exports[t] = types[t];
}
for (var e in errors) {
  if (errors.hasOwnProperty(e))
    module.exports[e] = errors[e];
}


/***/ }),

/***/ 20290:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2011 Mark Cavage <mcavage@gmail.com> All rights reserved.

var assert = __webpack_require__(42357);
var Buffer = __webpack_require__(15118).Buffer;

var ASN1 = __webpack_require__(42473);
var errors = __webpack_require__(99348);


// --- Globals

var newInvalidAsn1Error = errors.newInvalidAsn1Error;



// --- API

function Reader(data) {
  if (!data || !Buffer.isBuffer(data))
    throw new TypeError('data must be a node Buffer');

  this._buf = data;
  this._size = data.length;

  // These hold the "current" state
  this._len = 0;
  this._offset = 0;
}

Object.defineProperty(Reader.prototype, 'length', {
  enumerable: true,
  get: function () { return (this._len); }
});

Object.defineProperty(Reader.prototype, 'offset', {
  enumerable: true,
  get: function () { return (this._offset); }
});

Object.defineProperty(Reader.prototype, 'remain', {
  get: function () { return (this._size - this._offset); }
});

Object.defineProperty(Reader.prototype, 'buffer', {
  get: function () { return (this._buf.slice(this._offset)); }
});


/**
 * Reads a single byte and advances offset; you can pass in `true` to make this
 * a "peek" operation (i.e., get the byte, but don't advance the offset).
 *
 * @param {Boolean} peek true means don't move offset.
 * @return {Number} the next byte, null if not enough data.
 */
Reader.prototype.readByte = function (peek) {
  if (this._size - this._offset < 1)
    return null;

  var b = this._buf[this._offset] & 0xff;

  if (!peek)
    this._offset += 1;

  return b;
};


Reader.prototype.peek = function () {
  return this.readByte(true);
};


/**
 * Reads a (potentially) variable length off the BER buffer.  This call is
 * not really meant to be called directly, as callers have to manipulate
 * the internal buffer afterwards.
 *
 * As a result of this call, you can call `Reader.length`, until the
 * next thing called that does a readLength.
 *
 * @return {Number} the amount of offset to advance the buffer.
 * @throws {InvalidAsn1Error} on bad ASN.1
 */
Reader.prototype.readLength = function (offset) {
  if (offset === undefined)
    offset = this._offset;

  if (offset >= this._size)
    return null;

  var lenB = this._buf[offset++] & 0xff;
  if (lenB === null)
    return null;

  if ((lenB & 0x80) === 0x80) {
    lenB &= 0x7f;

    if (lenB === 0)
      throw newInvalidAsn1Error('Indefinite length not supported');

    if (lenB > 4)
      throw newInvalidAsn1Error('encoding too long');

    if (this._size - offset < lenB)
      return null;

    this._len = 0;
    for (var i = 0; i < lenB; i++)
      this._len = (this._len << 8) + (this._buf[offset++] & 0xff);

  } else {
    // Wasn't a variable length
    this._len = lenB;
  }

  return offset;
};


/**
 * Parses the next sequence in this BER buffer.
 *
 * To get the length of the sequence, call `Reader.length`.
 *
 * @return {Number} the sequence's tag.
 */
Reader.prototype.readSequence = function (tag) {
  var seq = this.peek();
  if (seq === null)
    return null;
  if (tag !== undefined && tag !== seq)
    throw newInvalidAsn1Error('Expected 0x' + tag.toString(16) +
                              ': got 0x' + seq.toString(16));

  var o = this.readLength(this._offset + 1); // stored in `length`
  if (o === null)
    return null;

  this._offset = o;
  return seq;
};


Reader.prototype.readInt = function () {
  return this._readTag(ASN1.Integer);
};


Reader.prototype.readBoolean = function () {
  return (this._readTag(ASN1.Boolean) === 0 ? false : true);
};


Reader.prototype.readEnumeration = function () {
  return this._readTag(ASN1.Enumeration);
};


Reader.prototype.readString = function (tag, retbuf) {
  if (!tag)
    tag = ASN1.OctetString;

  var b = this.peek();
  if (b === null)
    return null;

  if (b !== tag)
    throw newInvalidAsn1Error('Expected 0x' + tag.toString(16) +
                              ': got 0x' + b.toString(16));

  var o = this.readLength(this._offset + 1); // stored in `length`

  if (o === null)
    return null;

  if (this.length > this._size - o)
    return null;

  this._offset = o;

  if (this.length === 0)
    return retbuf ? Buffer.alloc(0) : '';

  var str = this._buf.slice(this._offset, this._offset + this.length);
  this._offset += this.length;

  return retbuf ? str : str.toString('utf8');
};

Reader.prototype.readOID = function (tag) {
  if (!tag)
    tag = ASN1.OID;

  var b = this.readString(tag, true);
  if (b === null)
    return null;

  var values = [];
  var value = 0;

  for (var i = 0; i < b.length; i++) {
    var byte = b[i] & 0xff;

    value <<= 7;
    value += byte & 0x7f;
    if ((byte & 0x80) === 0) {
      values.push(value);
      value = 0;
    }
  }

  value = values.shift();
  values.unshift(value % 40);
  values.unshift((value / 40) >> 0);

  return values.join('.');
};


Reader.prototype._readTag = function (tag) {
  assert.ok(tag !== undefined);

  var b = this.peek();

  if (b === null)
    return null;

  if (b !== tag)
    throw newInvalidAsn1Error('Expected 0x' + tag.toString(16) +
                              ': got 0x' + b.toString(16));

  var o = this.readLength(this._offset + 1); // stored in `length`
  if (o === null)
    return null;

  if (this.length > 4)
    throw newInvalidAsn1Error('Integer too long: ' + this.length);

  if (this.length > this._size - o)
    return null;
  this._offset = o;

  var fb = this._buf[this._offset];
  var value = 0;

  for (var i = 0; i < this.length; i++) {
    value <<= 8;
    value |= (this._buf[this._offset++] & 0xff);
  }

  if ((fb & 0x80) === 0x80 && i !== 4)
    value -= (1 << (i * 8));

  return value >> 0;
};



// --- Exported API

module.exports = Reader;


/***/ }),

/***/ 42473:
/***/ ((module) => {

// Copyright 2011 Mark Cavage <mcavage@gmail.com> All rights reserved.


module.exports = {
  EOC: 0,
  Boolean: 1,
  Integer: 2,
  BitString: 3,
  OctetString: 4,
  Null: 5,
  OID: 6,
  ObjectDescriptor: 7,
  External: 8,
  Real: 9, // float
  Enumeration: 10,
  PDV: 11,
  Utf8String: 12,
  RelativeOID: 13,
  Sequence: 16,
  Set: 17,
  NumericString: 18,
  PrintableString: 19,
  T61String: 20,
  VideotexString: 21,
  IA5String: 22,
  UTCTime: 23,
  GeneralizedTime: 24,
  GraphicString: 25,
  VisibleString: 26,
  GeneralString: 28,
  UniversalString: 29,
  CharacterString: 30,
  BMPString: 31,
  Constructor: 32,
  Context: 128
};


/***/ }),

/***/ 43200:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2011 Mark Cavage <mcavage@gmail.com> All rights reserved.

var assert = __webpack_require__(42357);
var Buffer = __webpack_require__(15118).Buffer;
var ASN1 = __webpack_require__(42473);
var errors = __webpack_require__(99348);


// --- Globals

var newInvalidAsn1Error = errors.newInvalidAsn1Error;

var DEFAULT_OPTS = {
  size: 1024,
  growthFactor: 8
};


// --- Helpers

function merge(from, to) {
  assert.ok(from);
  assert.equal(typeof (from), 'object');
  assert.ok(to);
  assert.equal(typeof (to), 'object');

  var keys = Object.getOwnPropertyNames(from);
  keys.forEach(function (key) {
    if (to[key])
      return;

    var value = Object.getOwnPropertyDescriptor(from, key);
    Object.defineProperty(to, key, value);
  });

  return to;
}



// --- API

function Writer(options) {
  options = merge(DEFAULT_OPTS, options || {});

  this._buf = Buffer.alloc(options.size || 1024);
  this._size = this._buf.length;
  this._offset = 0;
  this._options = options;

  // A list of offsets in the buffer where we need to insert
  // sequence tag/len pairs.
  this._seq = [];
}

Object.defineProperty(Writer.prototype, 'buffer', {
  get: function () {
    if (this._seq.length)
      throw newInvalidAsn1Error(this._seq.length + ' unended sequence(s)');

    return (this._buf.slice(0, this._offset));
  }
});

Writer.prototype.writeByte = function (b) {
  if (typeof (b) !== 'number')
    throw new TypeError('argument must be a Number');

  this._ensure(1);
  this._buf[this._offset++] = b;
};


Writer.prototype.writeInt = function (i, tag) {
  if (typeof (i) !== 'number')
    throw new TypeError('argument must be a Number');
  if (typeof (tag) !== 'number')
    tag = ASN1.Integer;

  var sz = 4;

  while ((((i & 0xff800000) === 0) || ((i & 0xff800000) === 0xff800000 >> 0)) &&
        (sz > 1)) {
    sz--;
    i <<= 8;
  }

  if (sz > 4)
    throw newInvalidAsn1Error('BER ints cannot be > 0xffffffff');

  this._ensure(2 + sz);
  this._buf[this._offset++] = tag;
  this._buf[this._offset++] = sz;

  while (sz-- > 0) {
    this._buf[this._offset++] = ((i & 0xff000000) >>> 24);
    i <<= 8;
  }

};


Writer.prototype.writeNull = function () {
  this.writeByte(ASN1.Null);
  this.writeByte(0x00);
};


Writer.prototype.writeEnumeration = function (i, tag) {
  if (typeof (i) !== 'number')
    throw new TypeError('argument must be a Number');
  if (typeof (tag) !== 'number')
    tag = ASN1.Enumeration;

  return this.writeInt(i, tag);
};


Writer.prototype.writeBoolean = function (b, tag) {
  if (typeof (b) !== 'boolean')
    throw new TypeError('argument must be a Boolean');
  if (typeof (tag) !== 'number')
    tag = ASN1.Boolean;

  this._ensure(3);
  this._buf[this._offset++] = tag;
  this._buf[this._offset++] = 0x01;
  this._buf[this._offset++] = b ? 0xff : 0x00;
};


Writer.prototype.writeString = function (s, tag) {
  if (typeof (s) !== 'string')
    throw new TypeError('argument must be a string (was: ' + typeof (s) + ')');
  if (typeof (tag) !== 'number')
    tag = ASN1.OctetString;

  var len = Buffer.byteLength(s);
  this.writeByte(tag);
  this.writeLength(len);
  if (len) {
    this._ensure(len);
    this._buf.write(s, this._offset);
    this._offset += len;
  }
};


Writer.prototype.writeBuffer = function (buf, tag) {
  if (typeof (tag) !== 'number')
    throw new TypeError('tag must be a number');
  if (!Buffer.isBuffer(buf))
    throw new TypeError('argument must be a buffer');

  this.writeByte(tag);
  this.writeLength(buf.length);
  this._ensure(buf.length);
  buf.copy(this._buf, this._offset, 0, buf.length);
  this._offset += buf.length;
};


Writer.prototype.writeStringArray = function (strings) {
  if ((!strings instanceof Array))
    throw new TypeError('argument must be an Array[String]');

  var self = this;
  strings.forEach(function (s) {
    self.writeString(s);
  });
};

// This is really to solve DER cases, but whatever for now
Writer.prototype.writeOID = function (s, tag) {
  if (typeof (s) !== 'string')
    throw new TypeError('argument must be a string');
  if (typeof (tag) !== 'number')
    tag = ASN1.OID;

  if (!/^([0-9]+\.){3,}[0-9]+$/.test(s))
    throw new Error('argument is not a valid OID string');

  function encodeOctet(bytes, octet) {
    if (octet < 128) {
        bytes.push(octet);
    } else if (octet < 16384) {
        bytes.push((octet >>> 7) | 0x80);
        bytes.push(octet & 0x7F);
    } else if (octet < 2097152) {
      bytes.push((octet >>> 14) | 0x80);
      bytes.push(((octet >>> 7) | 0x80) & 0xFF);
      bytes.push(octet & 0x7F);
    } else if (octet < 268435456) {
      bytes.push((octet >>> 21) | 0x80);
      bytes.push(((octet >>> 14) | 0x80) & 0xFF);
      bytes.push(((octet >>> 7) | 0x80) & 0xFF);
      bytes.push(octet & 0x7F);
    } else {
      bytes.push(((octet >>> 28) | 0x80) & 0xFF);
      bytes.push(((octet >>> 21) | 0x80) & 0xFF);
      bytes.push(((octet >>> 14) | 0x80) & 0xFF);
      bytes.push(((octet >>> 7) | 0x80) & 0xFF);
      bytes.push(octet & 0x7F);
    }
  }

  var tmp = s.split('.');
  var bytes = [];
  bytes.push(parseInt(tmp[0], 10) * 40 + parseInt(tmp[1], 10));
  tmp.slice(2).forEach(function (b) {
    encodeOctet(bytes, parseInt(b, 10));
  });

  var self = this;
  this._ensure(2 + bytes.length);
  this.writeByte(tag);
  this.writeLength(bytes.length);
  bytes.forEach(function (b) {
    self.writeByte(b);
  });
};


Writer.prototype.writeLength = function (len) {
  if (typeof (len) !== 'number')
    throw new TypeError('argument must be a Number');

  this._ensure(4);

  if (len <= 0x7f) {
    this._buf[this._offset++] = len;
  } else if (len <= 0xff) {
    this._buf[this._offset++] = 0x81;
    this._buf[this._offset++] = len;
  } else if (len <= 0xffff) {
    this._buf[this._offset++] = 0x82;
    this._buf[this._offset++] = len >> 8;
    this._buf[this._offset++] = len;
  } else if (len <= 0xffffff) {
    this._buf[this._offset++] = 0x83;
    this._buf[this._offset++] = len >> 16;
    this._buf[this._offset++] = len >> 8;
    this._buf[this._offset++] = len;
  } else {
    throw newInvalidAsn1Error('Length too long (> 4 bytes)');
  }
};

Writer.prototype.startSequence = function (tag) {
  if (typeof (tag) !== 'number')
    tag = ASN1.Sequence | ASN1.Constructor;

  this.writeByte(tag);
  this._seq.push(this._offset);
  this._ensure(3);
  this._offset += 3;
};


Writer.prototype.endSequence = function () {
  var seq = this._seq.pop();
  var start = seq + 3;
  var len = this._offset - start;

  if (len <= 0x7f) {
    this._shift(start, len, -2);
    this._buf[seq] = len;
  } else if (len <= 0xff) {
    this._shift(start, len, -1);
    this._buf[seq] = 0x81;
    this._buf[seq + 1] = len;
  } else if (len <= 0xffff) {
    this._buf[seq] = 0x82;
    this._buf[seq + 1] = len >> 8;
    this._buf[seq + 2] = len;
  } else if (len <= 0xffffff) {
    this._shift(start, len, 1);
    this._buf[seq] = 0x83;
    this._buf[seq + 1] = len >> 16;
    this._buf[seq + 2] = len >> 8;
    this._buf[seq + 3] = len;
  } else {
    throw newInvalidAsn1Error('Sequence too long');
  }
};


Writer.prototype._shift = function (start, len, shift) {
  assert.ok(start !== undefined);
  assert.ok(len !== undefined);
  assert.ok(shift);

  this._buf.copy(this._buf, start + shift, start, start + len);
  this._offset += shift;
};

Writer.prototype._ensure = function (len) {
  assert.ok(len);

  if (this._size - this._offset < len) {
    var sz = this._size * this._options.growthFactor;
    if (sz - this._offset < len)
      sz += len;

    var buf = Buffer.alloc(sz);

    this._buf.copy(buf, 0, 0, this._offset);
    this._buf = buf;
    this._size = sz;
  }
};



// --- Exported API

module.exports = Writer;


/***/ }),

/***/ 80970:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2011 Mark Cavage <mcavage@gmail.com> All rights reserved.

// If you have no idea what ASN.1 or BER is, see this:
// ftp://ftp.rsa.com/pub/pkcs/ascii/layman.asc

var Ber = __webpack_require__(194);



// --- Exported API

module.exports = {

  Ber: Ber,

  BerReader: Ber.Reader,

  BerWriter: Ber.Writer

};


/***/ }),

/***/ 66631:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright (c) 2012, Mark Cavage. All rights reserved.
// Copyright 2015 Joyent, Inc.

var assert = __webpack_require__(42357);
var Stream = __webpack_require__(92413).Stream;
var util = __webpack_require__(31669);


///--- Globals

/* JSSTYLED */
var UUID_REGEXP = /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/;


///--- Internal

function _capitalize(str) {
    return (str.charAt(0).toUpperCase() + str.slice(1));
}

function _toss(name, expected, oper, arg, actual) {
    throw new assert.AssertionError({
        message: util.format('%s (%s) is required', name, expected),
        actual: (actual === undefined) ? typeof (arg) : actual(arg),
        expected: expected,
        operator: oper || '===',
        stackStartFunction: _toss.caller
    });
}

function _getClass(arg) {
    return (Object.prototype.toString.call(arg).slice(8, -1));
}

function noop() {
    // Why even bother with asserts?
}


///--- Exports

var types = {
    bool: {
        check: function (arg) { return typeof (arg) === 'boolean'; }
    },
    func: {
        check: function (arg) { return typeof (arg) === 'function'; }
    },
    string: {
        check: function (arg) { return typeof (arg) === 'string'; }
    },
    object: {
        check: function (arg) {
            return typeof (arg) === 'object' && arg !== null;
        }
    },
    number: {
        check: function (arg) {
            return typeof (arg) === 'number' && !isNaN(arg);
        }
    },
    finite: {
        check: function (arg) {
            return typeof (arg) === 'number' && !isNaN(arg) && isFinite(arg);
        }
    },
    buffer: {
        check: function (arg) { return Buffer.isBuffer(arg); },
        operator: 'Buffer.isBuffer'
    },
    array: {
        check: function (arg) { return Array.isArray(arg); },
        operator: 'Array.isArray'
    },
    stream: {
        check: function (arg) { return arg instanceof Stream; },
        operator: 'instanceof',
        actual: _getClass
    },
    date: {
        check: function (arg) { return arg instanceof Date; },
        operator: 'instanceof',
        actual: _getClass
    },
    regexp: {
        check: function (arg) { return arg instanceof RegExp; },
        operator: 'instanceof',
        actual: _getClass
    },
    uuid: {
        check: function (arg) {
            return typeof (arg) === 'string' && UUID_REGEXP.test(arg);
        },
        operator: 'isUUID'
    }
};

function _setExports(ndebug) {
    var keys = Object.keys(types);
    var out;

    /* re-export standard assert */
    if (process.env.NODE_NDEBUG) {
        out = noop;
    } else {
        out = function (arg, msg) {
            if (!arg) {
                _toss(msg, 'true', arg);
            }
        };
    }

    /* standard checks */
    keys.forEach(function (k) {
        if (ndebug) {
            out[k] = noop;
            return;
        }
        var type = types[k];
        out[k] = function (arg, msg) {
            if (!type.check(arg)) {
                _toss(msg, k, type.operator, arg, type.actual);
            }
        };
    });

    /* optional checks */
    keys.forEach(function (k) {
        var name = 'optional' + _capitalize(k);
        if (ndebug) {
            out[name] = noop;
            return;
        }
        var type = types[k];
        out[name] = function (arg, msg) {
            if (arg === undefined || arg === null) {
                return;
            }
            if (!type.check(arg)) {
                _toss(msg, k, type.operator, arg, type.actual);
            }
        };
    });

    /* arrayOf checks */
    keys.forEach(function (k) {
        var name = 'arrayOf' + _capitalize(k);
        if (ndebug) {
            out[name] = noop;
            return;
        }
        var type = types[k];
        var expected = '[' + k + ']';
        out[name] = function (arg, msg) {
            if (!Array.isArray(arg)) {
                _toss(msg, expected, type.operator, arg, type.actual);
            }
            var i;
            for (i = 0; i < arg.length; i++) {
                if (!type.check(arg[i])) {
                    _toss(msg, expected, type.operator, arg, type.actual);
                }
            }
        };
    });

    /* optionalArrayOf checks */
    keys.forEach(function (k) {
        var name = 'optionalArrayOf' + _capitalize(k);
        if (ndebug) {
            out[name] = noop;
            return;
        }
        var type = types[k];
        var expected = '[' + k + ']';
        out[name] = function (arg, msg) {
            if (arg === undefined || arg === null) {
                return;
            }
            if (!Array.isArray(arg)) {
                _toss(msg, expected, type.operator, arg, type.actual);
            }
            var i;
            for (i = 0; i < arg.length; i++) {
                if (!type.check(arg[i])) {
                    _toss(msg, expected, type.operator, arg, type.actual);
                }
            }
        };
    });

    /* re-export built-in assertions */
    Object.keys(assert).forEach(function (k) {
        if (k === 'AssertionError') {
            out[k] = assert[k];
            return;
        }
        if (ndebug) {
            out[k] = noop;
            return;
        }
        out[k] = assert[k];
    });

    /* export ourselves (for unit tests _only_) */
    out._setExports = _setExports;

    return out;
}

module.exports = _setExports(process.env.NODE_NDEBUG);


/***/ }),

/***/ 56964:
/***/ ((module) => {

"use strict";


function Queue(options) {
  if (!(this instanceof Queue)) {
    return new Queue(options);
  }

  options = options || {};
  this.concurrency = options.concurrency || Infinity;
  this.pending = 0;
  this.jobs = [];
  this.cbs = [];
  this._done = done.bind(this);
}

var arrayAddMethods = [
  'push',
  'unshift',
  'splice'
];

arrayAddMethods.forEach(function(method) {
  Queue.prototype[method] = function() {
    var methodResult = Array.prototype[method].apply(this.jobs, arguments);
    this._run();
    return methodResult;
  };
});

Object.defineProperty(Queue.prototype, 'length', {
  get: function() {
    return this.pending + this.jobs.length;
  }
});

Queue.prototype._run = function() {
  if (this.pending === this.concurrency) {
    return;
  }
  if (this.jobs.length) {
    var job = this.jobs.shift();
    this.pending++;
    job(this._done);
    this._run();
  }

  if (this.pending === 0) {
    while (this.cbs.length !== 0) {
      var cb = this.cbs.pop();
      process.nextTick(cb);
    }
  }
};

Queue.prototype.onDone = function(cb) {
  if (typeof cb === 'function') {
    this.cbs.push(cb);
    this._run();
  }
};

function done() {
  this.pending--;
  this._run();
}

module.exports = Queue;


/***/ }),

/***/ 14812:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports =
{
  parallel      : __webpack_require__(8210),
  serial        : __webpack_require__(50445),
  serialOrdered : __webpack_require__(3578)
};


/***/ }),

/***/ 1700:
/***/ ((module) => {

// API
module.exports = abort;

/**
 * Aborts leftover active jobs
 *
 * @param {object} state - current state object
 */
function abort(state)
{
  Object.keys(state.jobs).forEach(clean.bind(state));

  // reset leftover jobs
  state.jobs = {};
}

/**
 * Cleans up leftover job by invoking abort function for the provided job id
 *
 * @this  state
 * @param {string|number} key - job id to abort
 */
function clean(key)
{
  if (typeof this.jobs[key] == 'function')
  {
    this.jobs[key]();
  }
}


/***/ }),

/***/ 72794:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var defer = __webpack_require__(15295);

// API
module.exports = async;

/**
 * Runs provided callback asynchronously
 * even if callback itself is not
 *
 * @param   {function} callback - callback to invoke
 * @returns {function} - augmented callback
 */
function async(callback)
{
  var isAsync = false;

  // check if async happened
  defer(function() { isAsync = true; });

  return function async_callback(err, result)
  {
    if (isAsync)
    {
      callback(err, result);
    }
    else
    {
      defer(function nextTick_callback()
      {
        callback(err, result);
      });
    }
  };
}


/***/ }),

/***/ 15295:
/***/ ((module) => {

module.exports = defer;

/**
 * Runs provided function on next iteration of the event loop
 *
 * @param {function} fn - function to run
 */
function defer(fn)
{
  var nextTick = typeof setImmediate == 'function'
    ? setImmediate
    : (
      typeof process == 'object' && typeof process.nextTick == 'function'
      ? process.nextTick
      : null
    );

  if (nextTick)
  {
    nextTick(fn);
  }
  else
  {
    setTimeout(fn, 0);
  }
}


/***/ }),

/***/ 9023:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var async = __webpack_require__(72794)
  , abort = __webpack_require__(1700)
  ;

// API
module.exports = iterate;

/**
 * Iterates over each job object
 *
 * @param {array|object} list - array or object (named list) to iterate over
 * @param {function} iterator - iterator to run
 * @param {object} state - current job status
 * @param {function} callback - invoked when all elements processed
 */
function iterate(list, iterator, state, callback)
{
  // store current index
  var key = state['keyedList'] ? state['keyedList'][state.index] : state.index;

  state.jobs[key] = runJob(iterator, key, list[key], function(error, output)
  {
    // don't repeat yourself
    // skip secondary callbacks
    if (!(key in state.jobs))
    {
      return;
    }

    // clean up jobs
    delete state.jobs[key];

    if (error)
    {
      // don't process rest of the results
      // stop still active jobs
      // and reset the list
      abort(state);
    }
    else
    {
      state.results[key] = output;
    }

    // return salvaged results
    callback(error, state.results);
  });
}

/**
 * Runs iterator over provided job element
 *
 * @param   {function} iterator - iterator to invoke
 * @param   {string|number} key - key/index of the element in the list of jobs
 * @param   {mixed} item - job description
 * @param   {function} callback - invoked after iterator is done with the job
 * @returns {function|mixed} - job abort function or something else
 */
function runJob(iterator, key, item, callback)
{
  var aborter;

  // allow shortcut if iterator expects only two arguments
  if (iterator.length == 2)
  {
    aborter = iterator(item, async(callback));
  }
  // otherwise go with full three arguments
  else
  {
    aborter = iterator(item, key, async(callback));
  }

  return aborter;
}


/***/ }),

/***/ 42474:
/***/ ((module) => {

// API
module.exports = state;

/**
 * Creates initial state object
 * for iteration over list
 *
 * @param   {array|object} list - list to iterate over
 * @param   {function|null} sortMethod - function to use for keys sort,
 *                                     or `null` to keep them as is
 * @returns {object} - initial state object
 */
function state(list, sortMethod)
{
  var isNamedList = !Array.isArray(list)
    , initState =
    {
      index    : 0,
      keyedList: isNamedList || sortMethod ? Object.keys(list) : null,
      jobs     : {},
      results  : isNamedList ? {} : [],
      size     : isNamedList ? Object.keys(list).length : list.length
    }
    ;

  if (sortMethod)
  {
    // sort array keys based on it's values
    // sort object's keys just on own merit
    initState.keyedList.sort(isNamedList ? sortMethod : function(a, b)
    {
      return sortMethod(list[a], list[b]);
    });
  }

  return initState;
}


/***/ }),

/***/ 37942:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var abort = __webpack_require__(1700)
  , async = __webpack_require__(72794)
  ;

// API
module.exports = terminator;

/**
 * Terminates jobs in the attached state context
 *
 * @this  AsyncKitState#
 * @param {function} callback - final callback to invoke after termination
 */
function terminator(callback)
{
  if (!Object.keys(this.jobs).length)
  {
    return;
  }

  // fast forward iteration index
  this.index = this.size;

  // abort jobs
  abort(this);

  // send back results we have so far
  async(callback)(null, this.results);
}


/***/ }),

/***/ 8210:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var iterate    = __webpack_require__(9023)
  , initState  = __webpack_require__(42474)
  , terminator = __webpack_require__(37942)
  ;

// Public API
module.exports = parallel;

/**
 * Runs iterator over provided array elements in parallel
 *
 * @param   {array|object} list - array or object (named list) to iterate over
 * @param   {function} iterator - iterator to run
 * @param   {function} callback - invoked when all elements processed
 * @returns {function} - jobs terminator
 */
function parallel(list, iterator, callback)
{
  var state = initState(list);

  while (state.index < (state['keyedList'] || list).length)
  {
    iterate(list, iterator, state, function(error, result)
    {
      if (error)
      {
        callback(error, result);
        return;
      }

      // looks like it's the last one
      if (Object.keys(state.jobs).length === 0)
      {
        callback(null, state.results);
        return;
      }
    });

    state.index++;
  }

  return terminator.bind(state, callback);
}


/***/ }),

/***/ 50445:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var serialOrdered = __webpack_require__(3578);

// Public API
module.exports = serial;

/**
 * Runs iterator over provided array elements in series
 *
 * @param   {array|object} list - array or object (named list) to iterate over
 * @param   {function} iterator - iterator to run
 * @param   {function} callback - invoked when all elements processed
 * @returns {function} - jobs terminator
 */
function serial(list, iterator, callback)
{
  return serialOrdered(list, iterator, null, callback);
}


/***/ }),

/***/ 3578:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var iterate    = __webpack_require__(9023)
  , initState  = __webpack_require__(42474)
  , terminator = __webpack_require__(37942)
  ;

// Public API
module.exports = serialOrdered;
// sorting helpers
module.exports.ascending  = ascending;
module.exports.descending = descending;

/**
 * Runs iterator over provided sorted array elements in series
 *
 * @param   {array|object} list - array or object (named list) to iterate over
 * @param   {function} iterator - iterator to run
 * @param   {function} sortMethod - custom sort function
 * @param   {function} callback - invoked when all elements processed
 * @returns {function} - jobs terminator
 */
function serialOrdered(list, iterator, sortMethod, callback)
{
  var state = initState(list, sortMethod);

  iterate(list, iterator, state, function iteratorHandler(error, result)
  {
    if (error)
    {
      callback(error, result);
      return;
    }

    state.index++;

    // are we there yet?
    if (state.index < (state['keyedList'] || list).length)
    {
      iterate(list, iterator, state, iteratorHandler);
      return;
    }

    // done here
    callback(null, state.results);
  });

  return terminator.bind(state, callback);
}

/*
 * -- Sort methods
 */

/**
 * sort helper to sort array elements in ascending order
 *
 * @param   {mixed} a - an item to compare
 * @param   {mixed} b - an item to compare
 * @returns {number} - comparison result
 */
function ascending(a, b)
{
  return a < b ? -1 : a > b ? 1 : 0;
}

/**
 * sort helper to sort array elements in descending order
 *
 * @param   {mixed} a - an item to compare
 * @param   {mixed} b - an item to compare
 * @returns {number} - comparison result
 */
function descending(a, b)
{
  return -1 * ascending(a, b);
}


/***/ }),

/***/ 20940:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['accessanalyzer'] = {};
AWS.AccessAnalyzer = Service.defineService('accessanalyzer', ['2019-11-01']);
Object.defineProperty(apiLoader.services['accessanalyzer'], '2019-11-01', {
  get: function get() {
    var model = __webpack_require__(24955);
    model.paginators = __webpack_require__(7997)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AccessAnalyzer;


/***/ }),

/***/ 30838:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['acm'] = {};
AWS.ACM = Service.defineService('acm', ['2015-12-08']);
Object.defineProperty(apiLoader.services['acm'], '2015-12-08', {
  get: function get() {
    var model = __webpack_require__(22335);
    model.paginators = __webpack_require__(63763)/* .pagination */ .o;
    model.waiters = __webpack_require__(12336)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ACM;


/***/ }),

/***/ 18450:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['acmpca'] = {};
AWS.ACMPCA = Service.defineService('acmpca', ['2017-08-22']);
Object.defineProperty(apiLoader.services['acmpca'], '2017-08-22', {
  get: function get() {
    var model = __webpack_require__(2794);
    model.paginators = __webpack_require__(92031)/* .pagination */ .o;
    model.waiters = __webpack_require__(50728)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ACMPCA;


/***/ }),

/***/ 14578:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['alexaforbusiness'] = {};
AWS.AlexaForBusiness = Service.defineService('alexaforbusiness', ['2017-11-09']);
Object.defineProperty(apiLoader.services['alexaforbusiness'], '2017-11-09', {
  get: function get() {
    var model = __webpack_require__(4946);
    model.paginators = __webpack_require__(74967)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AlexaForBusiness;


/***/ }),

/***/ 26296:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
module.exports = {
  ACM: __webpack_require__(30838),
  APIGateway: __webpack_require__(91759),
  ApplicationAutoScaling: __webpack_require__(25598),
  AppStream: __webpack_require__(21730),
  AutoScaling: __webpack_require__(31652),
  Batch: __webpack_require__(10000),
  Budgets: __webpack_require__(43923),
  CloudDirectory: __webpack_require__(56231),
  CloudFormation: __webpack_require__(74643),
  CloudFront: __webpack_require__(48058),
  CloudHSM: __webpack_require__(10569),
  CloudSearch: __webpack_require__(72321),
  CloudSearchDomain: __webpack_require__(64072),
  CloudTrail: __webpack_require__(65512),
  CloudWatch: __webpack_require__(6763),
  CloudWatchEvents: __webpack_require__(38124),
  CloudWatchLogs: __webpack_require__(96693),
  CodeBuild: __webpack_require__(60450),
  CodeCommit: __webpack_require__(71323),
  CodeDeploy: __webpack_require__(54599),
  CodePipeline: __webpack_require__(22938),
  CognitoIdentity: __webpack_require__(58291),
  CognitoIdentityServiceProvider: __webpack_require__(31379),
  CognitoSync: __webpack_require__(74770),
  ConfigService: __webpack_require__(34061),
  CUR: __webpack_require__(5026),
  DataPipeline: __webpack_require__(65688),
  DeviceFarm: __webpack_require__(26272),
  DirectConnect: __webpack_require__(73783),
  DirectoryService: __webpack_require__(83908),
  Discovery: __webpack_require__(81690),
  DMS: __webpack_require__(69868),
  DynamoDB: __webpack_require__(14347),
  DynamoDBStreams: __webpack_require__(88090),
  EC2: __webpack_require__(7778),
  ECR: __webpack_require__(15211),
  ECS: __webpack_require__(16615),
  EFS: __webpack_require__(34375),
  ElastiCache: __webpack_require__(81065),
  ElasticBeanstalk: __webpack_require__(14897),
  ELB: __webpack_require__(10907),
  ELBv2: __webpack_require__(44311),
  EMR: __webpack_require__(50470),
  ES: __webpack_require__(84462),
  ElasticTranscoder: __webpack_require__(40745),
  Firehose: __webpack_require__(92831),
  GameLift: __webpack_require__(8085),
  Glacier: __webpack_require__(63249),
  Health: __webpack_require__(21834),
  IAM: __webpack_require__(50058),
  ImportExport: __webpack_require__(6769),
  Inspector: __webpack_require__(89439),
  Iot: __webpack_require__(98392),
  IotData: __webpack_require__(6564),
  Kinesis: __webpack_require__(49876),
  KinesisAnalytics: __webpack_require__(90042),
  KMS: __webpack_require__(56782),
  Lambda: __webpack_require__(13321),
  LexRuntime: __webpack_require__(62716),
  Lightsail: __webpack_require__(22718),
  MachineLearning: __webpack_require__(82907),
  MarketplaceCommerceAnalytics: __webpack_require__(4540),
  MarketplaceMetering: __webpack_require__(39297),
  MTurk: __webpack_require__(5615),
  MobileAnalytics: __webpack_require__(66690),
  OpsWorks: __webpack_require__(75691),
  OpsWorksCM: __webpack_require__(80388),
  Organizations: __webpack_require__(44670),
  Pinpoint: __webpack_require__(18388),
  Polly: __webpack_require__(97332),
  RDS: __webpack_require__(71578),
  Redshift: __webpack_require__(84853),
  Rekognition: __webpack_require__(65470),
  ResourceGroupsTaggingAPI: __webpack_require__(7385),
  Route53: __webpack_require__(44968),
  Route53Domains: __webpack_require__(51994),
  S3: __webpack_require__(83256),
  S3Control: __webpack_require__(99817),
  ServiceCatalog: __webpack_require__(822),
  SES: __webpack_require__(46816),
  Shield: __webpack_require__(20271),
  SimpleDB: __webpack_require__(10120),
  SMS: __webpack_require__(57719),
  Snowball: __webpack_require__(510),
  SNS: __webpack_require__(28581),
  SQS: __webpack_require__(63172),
  SSM: __webpack_require__(83380),
  StorageGateway: __webpack_require__(89190),
  StepFunctions: __webpack_require__(8136),
  STS: __webpack_require__(57513),
  Support: __webpack_require__(1099),
  SWF: __webpack_require__(32327),
  XRay: __webpack_require__(41548),
  WAF: __webpack_require__(72742),
  WAFRegional: __webpack_require__(23153),
  WorkDocs: __webpack_require__(38835),
  WorkSpaces: __webpack_require__(25513),
  CodeStar: __webpack_require__(98336),
  LexModelBuildingService: __webpack_require__(37397),
  MarketplaceEntitlementService: __webpack_require__(53707),
  Athena: __webpack_require__(29434),
  Greengrass: __webpack_require__(20690),
  DAX: __webpack_require__(71398),
  MigrationHub: __webpack_require__(14688),
  CloudHSMV2: __webpack_require__(70889),
  Glue: __webpack_require__(31658),
  Mobile: __webpack_require__(39782),
  Pricing: __webpack_require__(92765),
  CostExplorer: __webpack_require__(79523),
  MediaConvert: __webpack_require__(57220),
  MediaLive: __webpack_require__(7509),
  MediaPackage: __webpack_require__(91620),
  MediaStore: __webpack_require__(83748),
  MediaStoreData: __webpack_require__(98703),
  AppSync: __webpack_require__(12402),
  GuardDuty: __webpack_require__(40755),
  MQ: __webpack_require__(23093),
  Comprehend: __webpack_require__(62878),
  IoTJobsDataPlane: __webpack_require__(42332),
  KinesisVideoArchivedMedia: __webpack_require__(5580),
  KinesisVideoMedia: __webpack_require__(81308),
  KinesisVideo: __webpack_require__(89927),
  SageMakerRuntime: __webpack_require__(85044),
  SageMaker: __webpack_require__(77657),
  Translate: __webpack_require__(72544),
  ResourceGroups: __webpack_require__(58756),
  AlexaForBusiness: __webpack_require__(14578),
  Cloud9: __webpack_require__(85473),
  ServerlessApplicationRepository: __webpack_require__(62402),
  ServiceDiscovery: __webpack_require__(91569),
  WorkMail: __webpack_require__(38374),
  AutoScalingPlans: __webpack_require__(2554),
  TranscribeService: __webpack_require__(75811),
  Connect: __webpack_require__(13879),
  ACMPCA: __webpack_require__(18450),
  FMS: __webpack_require__(11316),
  SecretsManager: __webpack_require__(85131),
  IoTAnalytics: __webpack_require__(67409),
  IoT1ClickDevicesService: __webpack_require__(39474),
  IoT1ClickProjects: __webpack_require__(4686),
  PI: __webpack_require__(15505),
  Neptune: __webpack_require__(30047),
  MediaTailor: __webpack_require__(99658),
  EKS: __webpack_require__(23337),
  Macie: __webpack_require__(86427),
  DLM: __webpack_require__(24958),
  Signer: __webpack_require__(71596),
  Chime: __webpack_require__(84646),
  PinpointEmail: __webpack_require__(83060),
  RAM: __webpack_require__(94394),
  Route53Resolver: __webpack_require__(25894),
  PinpointSMSVoice: __webpack_require__(46605),
  QuickSight: __webpack_require__(29898),
  RDSDataService: __webpack_require__(30147),
  Amplify: __webpack_require__(38090),
  DataSync: __webpack_require__(15472),
  RoboMaker: __webpack_require__(18068),
  Transfer: __webpack_require__(51585),
  GlobalAccelerator: __webpack_require__(19306),
  ComprehendMedical: __webpack_require__(32349),
  KinesisAnalyticsV2: __webpack_require__(74631),
  MediaConnect: __webpack_require__(67639),
  FSx: __webpack_require__(60642),
  SecurityHub: __webpack_require__(21550),
  AppMesh: __webpack_require__(69226),
  LicenseManager: __webpack_require__(34693),
  Kafka: __webpack_require__(56775),
  ApiGatewayManagementApi: __webpack_require__(31762),
  ApiGatewayV2: __webpack_require__(44987),
  DocDB: __webpack_require__(55129),
  Backup: __webpack_require__(82455),
  WorkLink: __webpack_require__(48579),
  Textract: __webpack_require__(58523),
  ManagedBlockchain: __webpack_require__(85143),
  MediaPackageVod: __webpack_require__(14962),
  GroundStation: __webpack_require__(80494),
  IoTThingsGraph: __webpack_require__(58905),
  IoTEvents: __webpack_require__(88065),
  IoTEventsData: __webpack_require__(56973),
  Personalize: __webpack_require__(33696),
  PersonalizeEvents: __webpack_require__(88170),
  PersonalizeRuntime: __webpack_require__(66184),
  ApplicationInsights: __webpack_require__(83972),
  ServiceQuotas: __webpack_require__(57800),
  EC2InstanceConnect: __webpack_require__(92209),
  EventBridge: __webpack_require__(898),
  LakeFormation: __webpack_require__(6726),
  ForecastService: __webpack_require__(12942),
  ForecastQueryService: __webpack_require__(36822),
  QLDB: __webpack_require__(71266),
  QLDBSession: __webpack_require__(55423),
  WorkMailMessageFlow: __webpack_require__(67025),
  CodeStarNotifications: __webpack_require__(15141),
  SavingsPlans: __webpack_require__(62825),
  SSO: __webpack_require__(71096),
  SSOOIDC: __webpack_require__(49870),
  MarketplaceCatalog: __webpack_require__(2609),
  DataExchange: __webpack_require__(11024),
  SESV2: __webpack_require__(20142),
  MigrationHubConfig: __webpack_require__(62658),
  ConnectParticipant: __webpack_require__(94198),
  AppConfig: __webpack_require__(78606),
  IoTSecureTunneling: __webpack_require__(98562),
  WAFV2: __webpack_require__(50353),
  ElasticInference: __webpack_require__(37708),
  Imagebuilder: __webpack_require__(57511),
  Schemas: __webpack_require__(55713),
  AccessAnalyzer: __webpack_require__(20940),
  CodeGuruReviewer: __webpack_require__(60070),
  CodeGuruProfiler: __webpack_require__(65704),
  ComputeOptimizer: __webpack_require__(64459),
  FraudDetector: __webpack_require__(99830),
  Kendra: __webpack_require__(66122),
  NetworkManager: __webpack_require__(37610),
  Outposts: __webpack_require__(27551),
  AugmentedAIRuntime: __webpack_require__(33960),
  EBS: __webpack_require__(62837),
  KinesisVideoSignalingChannels: __webpack_require__(12710),
  Detective: __webpack_require__(60674),
  CodeStarconnections: __webpack_require__(78270),
  Synthetics: __webpack_require__(25910),
  IoTSiteWise: __webpack_require__(89690),
  Macie2: __webpack_require__(57330),
  CodeArtifact: __webpack_require__(91983),
  Honeycode: __webpack_require__(38889),
  IVS: __webpack_require__(67701),
  Braket: __webpack_require__(35429),
  IdentityStore: __webpack_require__(60222),
  Appflow: __webpack_require__(60844),
  RedshiftData: __webpack_require__(203),
  SSOAdmin: __webpack_require__(66644),
  TimestreamQuery: __webpack_require__(24529),
  TimestreamWrite: __webpack_require__(1573),
  S3Outposts: __webpack_require__(90493),
  DataBrew: __webpack_require__(35846),
  ServiceCatalogAppRegistry: __webpack_require__(79068),
  NetworkFirewall: __webpack_require__(84626),
  MWAA: __webpack_require__(32712),
  AmplifyBackend: __webpack_require__(2806),
  AppIntegrations: __webpack_require__(85479),
  ConnectContactLens: __webpack_require__(41847),
  DevOpsGuru: __webpack_require__(90673),
  ECRPUBLIC: __webpack_require__(90244),
  LookoutVision: __webpack_require__(65046),
  SageMakerFeatureStoreRuntime: __webpack_require__(67644),
  CustomerProfiles: __webpack_require__(28379),
  AuditManager: __webpack_require__(20472),
  EMRcontainers: __webpack_require__(49984),
  HealthLake: __webpack_require__(64254),
  SagemakerEdge: __webpack_require__(38966),
  Amp: __webpack_require__(96881),
  GreengrassV2: __webpack_require__(45126),
  IotDeviceAdvisor: __webpack_require__(97569),
  IoTFleetHub: __webpack_require__(42513),
  IoTWireless: __webpack_require__(8226),
  Location: __webpack_require__(44594),
  WellArchitected: __webpack_require__(86263),
  LexModelsV2: __webpack_require__(27254),
  LexRuntimeV2: __webpack_require__(33855),
  Fis: __webpack_require__(73003),
  LookoutMetrics: __webpack_require__(78708),
  Mgn: __webpack_require__(41339),
  LookoutEquipment: __webpack_require__(21843)
};

/***/ }),

/***/ 96881:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['amp'] = {};
AWS.Amp = Service.defineService('amp', ['2020-08-01']);
Object.defineProperty(apiLoader.services['amp'], '2020-08-01', {
  get: function get() {
    var model = __webpack_require__(36184);
    model.paginators = __webpack_require__(7850)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Amp;


/***/ }),

/***/ 38090:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['amplify'] = {};
AWS.Amplify = Service.defineService('amplify', ['2017-07-25']);
Object.defineProperty(apiLoader.services['amplify'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(59237);
    model.paginators = __webpack_require__(89594)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Amplify;


/***/ }),

/***/ 2806:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['amplifybackend'] = {};
AWS.AmplifyBackend = Service.defineService('amplifybackend', ['2020-08-11']);
Object.defineProperty(apiLoader.services['amplifybackend'], '2020-08-11', {
  get: function get() {
    var model = __webpack_require__(70211);
    model.paginators = __webpack_require__(72426)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AmplifyBackend;


/***/ }),

/***/ 91759:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['apigateway'] = {};
AWS.APIGateway = Service.defineService('apigateway', ['2015-07-09']);
__webpack_require__(4338);
Object.defineProperty(apiLoader.services['apigateway'], '2015-07-09', {
  get: function get() {
    var model = __webpack_require__(33895);
    model.paginators = __webpack_require__(61271)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.APIGateway;


/***/ }),

/***/ 31762:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['apigatewaymanagementapi'] = {};
AWS.ApiGatewayManagementApi = Service.defineService('apigatewaymanagementapi', ['2018-11-29']);
Object.defineProperty(apiLoader.services['apigatewaymanagementapi'], '2018-11-29', {
  get: function get() {
    var model = __webpack_require__(31775);
    model.paginators = __webpack_require__(19890)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ApiGatewayManagementApi;


/***/ }),

/***/ 44987:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['apigatewayv2'] = {};
AWS.ApiGatewayV2 = Service.defineService('apigatewayv2', ['2018-11-29']);
Object.defineProperty(apiLoader.services['apigatewayv2'], '2018-11-29', {
  get: function get() {
    var model = __webpack_require__(18767);
    model.paginators = __webpack_require__(96828)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ApiGatewayV2;


/***/ }),

/***/ 78606:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['appconfig'] = {};
AWS.AppConfig = Service.defineService('appconfig', ['2019-10-09']);
Object.defineProperty(apiLoader.services['appconfig'], '2019-10-09', {
  get: function get() {
    var model = __webpack_require__(5832);
    model.paginators = __webpack_require__(38388)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AppConfig;


/***/ }),

/***/ 60844:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['appflow'] = {};
AWS.Appflow = Service.defineService('appflow', ['2020-08-23']);
Object.defineProperty(apiLoader.services['appflow'], '2020-08-23', {
  get: function get() {
    var model = __webpack_require__(63769);
    model.paginators = __webpack_require__(3505)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Appflow;


/***/ }),

/***/ 85479:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['appintegrations'] = {};
AWS.AppIntegrations = Service.defineService('appintegrations', ['2020-07-29']);
Object.defineProperty(apiLoader.services['appintegrations'], '2020-07-29', {
  get: function get() {
    var model = __webpack_require__(26469);
    model.paginators = __webpack_require__(74824)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AppIntegrations;


/***/ }),

/***/ 25598:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['applicationautoscaling'] = {};
AWS.ApplicationAutoScaling = Service.defineService('applicationautoscaling', ['2016-02-06']);
Object.defineProperty(apiLoader.services['applicationautoscaling'], '2016-02-06', {
  get: function get() {
    var model = __webpack_require__(14452);
    model.paginators = __webpack_require__(11157)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ApplicationAutoScaling;


/***/ }),

/***/ 83972:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['applicationinsights'] = {};
AWS.ApplicationInsights = Service.defineService('applicationinsights', ['2018-11-25']);
Object.defineProperty(apiLoader.services['applicationinsights'], '2018-11-25', {
  get: function get() {
    var model = __webpack_require__(48728);
    model.paginators = __webpack_require__(9986)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ApplicationInsights;


/***/ }),

/***/ 69226:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['appmesh'] = {};
AWS.AppMesh = Service.defineService('appmesh', ['2018-10-01', '2018-10-01*', '2019-01-25']);
Object.defineProperty(apiLoader.services['appmesh'], '2018-10-01', {
  get: function get() {
    var model = __webpack_require__(4710);
    model.paginators = __webpack_require__(74196)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['appmesh'], '2019-01-25', {
  get: function get() {
    var model = __webpack_require__(99818);
    model.paginators = __webpack_require__(9865)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AppMesh;


/***/ }),

/***/ 21730:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['appstream'] = {};
AWS.AppStream = Service.defineService('appstream', ['2016-12-01']);
Object.defineProperty(apiLoader.services['appstream'], '2016-12-01', {
  get: function get() {
    var model = __webpack_require__(12513);
    model.paginators = __webpack_require__(81915)/* .pagination */ .o;
    model.waiters = __webpack_require__(98407)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AppStream;


/***/ }),

/***/ 12402:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['appsync'] = {};
AWS.AppSync = Service.defineService('appsync', ['2017-07-25']);
Object.defineProperty(apiLoader.services['appsync'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(3651);
    model.paginators = __webpack_require__(93930)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AppSync;


/***/ }),

/***/ 29434:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['athena'] = {};
AWS.Athena = Service.defineService('athena', ['2017-05-18']);
Object.defineProperty(apiLoader.services['athena'], '2017-05-18', {
  get: function get() {
    var model = __webpack_require__(19898);
    model.paginators = __webpack_require__(23135)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Athena;


/***/ }),

/***/ 20472:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['auditmanager'] = {};
AWS.AuditManager = Service.defineService('auditmanager', ['2017-07-25']);
Object.defineProperty(apiLoader.services['auditmanager'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(66702);
    model.paginators = __webpack_require__(99387)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AuditManager;


/***/ }),

/***/ 33960:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['augmentedairuntime'] = {};
AWS.AugmentedAIRuntime = Service.defineService('augmentedairuntime', ['2019-11-07']);
Object.defineProperty(apiLoader.services['augmentedairuntime'], '2019-11-07', {
  get: function get() {
    var model = __webpack_require__(60302);
    model.paginators = __webpack_require__(58181)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AugmentedAIRuntime;


/***/ }),

/***/ 31652:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['autoscaling'] = {};
AWS.AutoScaling = Service.defineService('autoscaling', ['2011-01-01']);
Object.defineProperty(apiLoader.services['autoscaling'], '2011-01-01', {
  get: function get() {
    var model = __webpack_require__(68489);
    model.paginators = __webpack_require__(38676)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AutoScaling;


/***/ }),

/***/ 2554:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['autoscalingplans'] = {};
AWS.AutoScalingPlans = Service.defineService('autoscalingplans', ['2018-01-06']);
Object.defineProperty(apiLoader.services['autoscalingplans'], '2018-01-06', {
  get: function get() {
    var model = __webpack_require__(95300);
    model.paginators = __webpack_require__(4511)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.AutoScalingPlans;


/***/ }),

/***/ 82455:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['backup'] = {};
AWS.Backup = Service.defineService('backup', ['2018-11-15']);
Object.defineProperty(apiLoader.services['backup'], '2018-11-15', {
  get: function get() {
    var model = __webpack_require__(65918);
    model.paginators = __webpack_require__(61080)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Backup;


/***/ }),

/***/ 10000:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['batch'] = {};
AWS.Batch = Service.defineService('batch', ['2016-08-10']);
Object.defineProperty(apiLoader.services['batch'], '2016-08-10', {
  get: function get() {
    var model = __webpack_require__(97171);
    model.paginators = __webpack_require__(27755)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Batch;


/***/ }),

/***/ 35429:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['braket'] = {};
AWS.Braket = Service.defineService('braket', ['2019-09-01']);
Object.defineProperty(apiLoader.services['braket'], '2019-09-01', {
  get: function get() {
    var model = __webpack_require__(44714);
    model.paginators = __webpack_require__(60058)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Braket;


/***/ }),

/***/ 43923:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['budgets'] = {};
AWS.Budgets = Service.defineService('budgets', ['2016-10-20']);
Object.defineProperty(apiLoader.services['budgets'], '2016-10-20', {
  get: function get() {
    var model = __webpack_require__(47942);
    model.paginators = __webpack_require__(64219)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Budgets;


/***/ }),

/***/ 84646:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['chime'] = {};
AWS.Chime = Service.defineService('chime', ['2018-05-01']);
Object.defineProperty(apiLoader.services['chime'], '2018-05-01', {
  get: function get() {
    var model = __webpack_require__(55823);
    model.paginators = __webpack_require__(6307)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Chime;


/***/ }),

/***/ 85473:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloud9'] = {};
AWS.Cloud9 = Service.defineService('cloud9', ['2017-09-23']);
Object.defineProperty(apiLoader.services['cloud9'], '2017-09-23', {
  get: function get() {
    var model = __webpack_require__(90697);
    model.paginators = __webpack_require__(79426)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Cloud9;


/***/ }),

/***/ 56231:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['clouddirectory'] = {};
AWS.CloudDirectory = Service.defineService('clouddirectory', ['2016-05-10', '2016-05-10*', '2017-01-11']);
Object.defineProperty(apiLoader.services['clouddirectory'], '2016-05-10', {
  get: function get() {
    var model = __webpack_require__(87301);
    model.paginators = __webpack_require__(72446)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['clouddirectory'], '2017-01-11', {
  get: function get() {
    var model = __webpack_require__(79943);
    model.paginators = __webpack_require__(20410)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudDirectory;


/***/ }),

/***/ 74643:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudformation'] = {};
AWS.CloudFormation = Service.defineService('cloudformation', ['2010-05-15']);
Object.defineProperty(apiLoader.services['cloudformation'], '2010-05-15', {
  get: function get() {
    var model = __webpack_require__(50980);
    model.paginators = __webpack_require__(43078)/* .pagination */ .o;
    model.waiters = __webpack_require__(11714)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudFormation;


/***/ }),

/***/ 48058:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudfront'] = {};
AWS.CloudFront = Service.defineService('cloudfront', ['2013-05-12*', '2013-11-11*', '2014-05-31*', '2014-10-21*', '2014-11-06*', '2015-04-17*', '2015-07-27*', '2015-09-17*', '2016-01-13*', '2016-01-28*', '2016-08-01*', '2016-08-20*', '2016-09-07*', '2016-09-29*', '2016-11-25', '2016-11-25*', '2017-03-25', '2017-03-25*', '2017-10-30', '2017-10-30*', '2018-06-18', '2018-06-18*', '2018-11-05', '2018-11-05*', '2019-03-26', '2019-03-26*', '2020-05-31']);
__webpack_require__(95483);
Object.defineProperty(apiLoader.services['cloudfront'], '2016-11-25', {
  get: function get() {
    var model = __webpack_require__(81977);
    model.paginators = __webpack_require__(12819)/* .pagination */ .o;
    model.waiters = __webpack_require__(52832)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudfront'], '2017-03-25', {
  get: function get() {
    var model = __webpack_require__(38288);
    model.paginators = __webpack_require__(19896)/* .pagination */ .o;
    model.waiters = __webpack_require__(43589)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudfront'], '2017-10-30', {
  get: function get() {
    var model = __webpack_require__(62352);
    model.paginators = __webpack_require__(94430)/* .pagination */ .o;
    model.waiters = __webpack_require__(36502)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudfront'], '2018-06-18', {
  get: function get() {
    var model = __webpack_require__(59976);
    model.paginators = __webpack_require__(43510)/* .pagination */ .o;
    model.waiters = __webpack_require__(67512)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudfront'], '2018-11-05', {
  get: function get() {
    var model = __webpack_require__(2861);
    model.paginators = __webpack_require__(94484)/* .pagination */ .o;
    model.waiters = __webpack_require__(94992)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudfront'], '2019-03-26', {
  get: function get() {
    var model = __webpack_require__(22621);
    model.paginators = __webpack_require__(49289)/* .pagination */ .o;
    model.waiters = __webpack_require__(89078)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudfront'], '2020-05-31', {
  get: function get() {
    var model = __webpack_require__(44946);
    model.paginators = __webpack_require__(92022)/* .pagination */ .o;
    model.waiters = __webpack_require__(83035)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudFront;


/***/ }),

/***/ 10569:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudhsm'] = {};
AWS.CloudHSM = Service.defineService('cloudhsm', ['2014-05-30']);
Object.defineProperty(apiLoader.services['cloudhsm'], '2014-05-30', {
  get: function get() {
    var model = __webpack_require__(59717);
    model.paginators = __webpack_require__(26512)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudHSM;


/***/ }),

/***/ 70889:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudhsmv2'] = {};
AWS.CloudHSMV2 = Service.defineService('cloudhsmv2', ['2017-04-28']);
Object.defineProperty(apiLoader.services['cloudhsmv2'], '2017-04-28', {
  get: function get() {
    var model = __webpack_require__(19362);
    model.paginators = __webpack_require__(96674)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudHSMV2;


/***/ }),

/***/ 72321:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudsearch'] = {};
AWS.CloudSearch = Service.defineService('cloudsearch', ['2011-02-01', '2013-01-01']);
Object.defineProperty(apiLoader.services['cloudsearch'], '2011-02-01', {
  get: function get() {
    var model = __webpack_require__(4999);
    model.paginators = __webpack_require__(74483)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['cloudsearch'], '2013-01-01', {
  get: function get() {
    var model = __webpack_require__(93200);
    model.paginators = __webpack_require__(82352)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudSearch;


/***/ }),

/***/ 64072:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudsearchdomain'] = {};
AWS.CloudSearchDomain = Service.defineService('cloudsearchdomain', ['2013-01-01']);
__webpack_require__(48571);
Object.defineProperty(apiLoader.services['cloudsearchdomain'], '2013-01-01', {
  get: function get() {
    var model = __webpack_require__(56588);
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudSearchDomain;


/***/ }),

/***/ 65512:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudtrail'] = {};
AWS.CloudTrail = Service.defineService('cloudtrail', ['2013-11-01']);
Object.defineProperty(apiLoader.services['cloudtrail'], '2013-11-01', {
  get: function get() {
    var model = __webpack_require__(90967);
    model.paginators = __webpack_require__(78414)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudTrail;


/***/ }),

/***/ 6763:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudwatch'] = {};
AWS.CloudWatch = Service.defineService('cloudwatch', ['2010-08-01']);
Object.defineProperty(apiLoader.services['cloudwatch'], '2010-08-01', {
  get: function get() {
    var model = __webpack_require__(12505);
    model.paginators = __webpack_require__(16758)/* .pagination */ .o;
    model.waiters = __webpack_require__(4112)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudWatch;


/***/ }),

/***/ 38124:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudwatchevents'] = {};
AWS.CloudWatchEvents = Service.defineService('cloudwatchevents', ['2014-02-03*', '2015-10-07']);
Object.defineProperty(apiLoader.services['cloudwatchevents'], '2015-10-07', {
  get: function get() {
    var model = __webpack_require__(2845);
    model.paginators = __webpack_require__(96939)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudWatchEvents;


/***/ }),

/***/ 96693:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cloudwatchlogs'] = {};
AWS.CloudWatchLogs = Service.defineService('cloudwatchlogs', ['2014-03-28']);
Object.defineProperty(apiLoader.services['cloudwatchlogs'], '2014-03-28', {
  get: function get() {
    var model = __webpack_require__(69022);
    model.paginators = __webpack_require__(26273)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CloudWatchLogs;


/***/ }),

/***/ 91983:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codeartifact'] = {};
AWS.CodeArtifact = Service.defineService('codeartifact', ['2018-09-22']);
Object.defineProperty(apiLoader.services['codeartifact'], '2018-09-22', {
  get: function get() {
    var model = __webpack_require__(26175);
    model.paginators = __webpack_require__(21307)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeArtifact;


/***/ }),

/***/ 60450:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codebuild'] = {};
AWS.CodeBuild = Service.defineService('codebuild', ['2016-10-06']);
Object.defineProperty(apiLoader.services['codebuild'], '2016-10-06', {
  get: function get() {
    var model = __webpack_require__(32310);
    model.paginators = __webpack_require__(10589)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeBuild;


/***/ }),

/***/ 71323:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codecommit'] = {};
AWS.CodeCommit = Service.defineService('codecommit', ['2015-04-13']);
Object.defineProperty(apiLoader.services['codecommit'], '2015-04-13', {
  get: function get() {
    var model = __webpack_require__(2091);
    model.paginators = __webpack_require__(11742)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeCommit;


/***/ }),

/***/ 54599:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codedeploy'] = {};
AWS.CodeDeploy = Service.defineService('codedeploy', ['2014-10-06']);
Object.defineProperty(apiLoader.services['codedeploy'], '2014-10-06', {
  get: function get() {
    var model = __webpack_require__(33531);
    model.paginators = __webpack_require__(63203)/* .pagination */ .o;
    model.waiters = __webpack_require__(56338)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeDeploy;


/***/ }),

/***/ 65704:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codeguruprofiler'] = {};
AWS.CodeGuruProfiler = Service.defineService('codeguruprofiler', ['2019-07-18']);
Object.defineProperty(apiLoader.services['codeguruprofiler'], '2019-07-18', {
  get: function get() {
    var model = __webpack_require__(55790);
    model.paginators = __webpack_require__(14789)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeGuruProfiler;


/***/ }),

/***/ 60070:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codegurureviewer'] = {};
AWS.CodeGuruReviewer = Service.defineService('codegurureviewer', ['2019-09-19']);
Object.defineProperty(apiLoader.services['codegurureviewer'], '2019-09-19', {
  get: function get() {
    var model = __webpack_require__(16420);
    model.paginators = __webpack_require__(89571)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeGuruReviewer;


/***/ }),

/***/ 22938:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codepipeline'] = {};
AWS.CodePipeline = Service.defineService('codepipeline', ['2015-07-09']);
Object.defineProperty(apiLoader.services['codepipeline'], '2015-07-09', {
  get: function get() {
    var model = __webpack_require__(92486);
    model.paginators = __webpack_require__(38160)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodePipeline;


/***/ }),

/***/ 98336:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codestar'] = {};
AWS.CodeStar = Service.defineService('codestar', ['2017-04-19']);
Object.defineProperty(apiLoader.services['codestar'], '2017-04-19', {
  get: function get() {
    var model = __webpack_require__(71626);
    model.paginators = __webpack_require__(78653)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeStar;


/***/ }),

/***/ 78270:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codestarconnections'] = {};
AWS.CodeStarconnections = Service.defineService('codestarconnections', ['2019-12-01']);
Object.defineProperty(apiLoader.services['codestarconnections'], '2019-12-01', {
  get: function get() {
    var model = __webpack_require__(81568);
    model.paginators = __webpack_require__(7656)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeStarconnections;


/***/ }),

/***/ 15141:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['codestarnotifications'] = {};
AWS.CodeStarNotifications = Service.defineService('codestarnotifications', ['2019-10-15']);
Object.defineProperty(apiLoader.services['codestarnotifications'], '2019-10-15', {
  get: function get() {
    var model = __webpack_require__(41964);
    model.paginators = __webpack_require__(5741)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CodeStarNotifications;


/***/ }),

/***/ 58291:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cognitoidentity'] = {};
AWS.CognitoIdentity = Service.defineService('cognitoidentity', ['2014-06-30']);
Object.defineProperty(apiLoader.services['cognitoidentity'], '2014-06-30', {
  get: function get() {
    var model = __webpack_require__(26102);
    model.paginators = __webpack_require__(80796)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CognitoIdentity;


/***/ }),

/***/ 31379:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cognitoidentityserviceprovider'] = {};
AWS.CognitoIdentityServiceProvider = Service.defineService('cognitoidentityserviceprovider', ['2016-04-18']);
Object.defineProperty(apiLoader.services['cognitoidentityserviceprovider'], '2016-04-18', {
  get: function get() {
    var model = __webpack_require__(60923);
    model.paginators = __webpack_require__(32568)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CognitoIdentityServiceProvider;


/***/ }),

/***/ 74770:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cognitosync'] = {};
AWS.CognitoSync = Service.defineService('cognitosync', ['2014-06-30']);
Object.defineProperty(apiLoader.services['cognitosync'], '2014-06-30', {
  get: function get() {
    var model = __webpack_require__(91406);
    model.paginators = __webpack_require__(23418)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CognitoSync;


/***/ }),

/***/ 62878:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['comprehend'] = {};
AWS.Comprehend = Service.defineService('comprehend', ['2017-11-27']);
Object.defineProperty(apiLoader.services['comprehend'], '2017-11-27', {
  get: function get() {
    var model = __webpack_require__(71004);
    model.paginators = __webpack_require__(70341)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Comprehend;


/***/ }),

/***/ 32349:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['comprehendmedical'] = {};
AWS.ComprehendMedical = Service.defineService('comprehendmedical', ['2018-10-30']);
Object.defineProperty(apiLoader.services['comprehendmedical'], '2018-10-30', {
  get: function get() {
    var model = __webpack_require__(65085);
    model.paginators = __webpack_require__(89772)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ComprehendMedical;


/***/ }),

/***/ 64459:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['computeoptimizer'] = {};
AWS.ComputeOptimizer = Service.defineService('computeoptimizer', ['2019-11-01']);
Object.defineProperty(apiLoader.services['computeoptimizer'], '2019-11-01', {
  get: function get() {
    var model = __webpack_require__(559);
    model.paginators = __webpack_require__(16060)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ComputeOptimizer;


/***/ }),

/***/ 34061:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['configservice'] = {};
AWS.ConfigService = Service.defineService('configservice', ['2014-11-12']);
Object.defineProperty(apiLoader.services['configservice'], '2014-11-12', {
  get: function get() {
    var model = __webpack_require__(85031);
    model.paginators = __webpack_require__(55050)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ConfigService;


/***/ }),

/***/ 13879:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['connect'] = {};
AWS.Connect = Service.defineService('connect', ['2017-08-08']);
Object.defineProperty(apiLoader.services['connect'], '2017-08-08', {
  get: function get() {
    var model = __webpack_require__(13649);
    model.paginators = __webpack_require__(35649)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Connect;


/***/ }),

/***/ 41847:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['connectcontactlens'] = {};
AWS.ConnectContactLens = Service.defineService('connectcontactlens', ['2020-08-21']);
Object.defineProperty(apiLoader.services['connectcontactlens'], '2020-08-21', {
  get: function get() {
    var model = __webpack_require__(86739);
    model.paginators = __webpack_require__(49692)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ConnectContactLens;


/***/ }),

/***/ 94198:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['connectparticipant'] = {};
AWS.ConnectParticipant = Service.defineService('connectparticipant', ['2018-09-07']);
Object.defineProperty(apiLoader.services['connectparticipant'], '2018-09-07', {
  get: function get() {
    var model = __webpack_require__(46788);
    model.paginators = __webpack_require__(2813)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ConnectParticipant;


/***/ }),

/***/ 79523:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['costexplorer'] = {};
AWS.CostExplorer = Service.defineService('costexplorer', ['2017-10-25']);
Object.defineProperty(apiLoader.services['costexplorer'], '2017-10-25', {
  get: function get() {
    var model = __webpack_require__(86565);
    model.paginators = __webpack_require__(94382)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CostExplorer;


/***/ }),

/***/ 5026:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['cur'] = {};
AWS.CUR = Service.defineService('cur', ['2017-01-06']);
Object.defineProperty(apiLoader.services['cur'], '2017-01-06', {
  get: function get() {
    var model = __webpack_require__(4138);
    model.paginators = __webpack_require__(29271)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CUR;


/***/ }),

/***/ 28379:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['customerprofiles'] = {};
AWS.CustomerProfiles = Service.defineService('customerprofiles', ['2020-08-15']);
Object.defineProperty(apiLoader.services['customerprofiles'], '2020-08-15', {
  get: function get() {
    var model = __webpack_require__(39734);
    model.paginators = __webpack_require__(35003)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.CustomerProfiles;


/***/ }),

/***/ 35846:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['databrew'] = {};
AWS.DataBrew = Service.defineService('databrew', ['2017-07-25']);
Object.defineProperty(apiLoader.services['databrew'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(42529);
    model.paginators = __webpack_require__(91224)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DataBrew;


/***/ }),

/***/ 11024:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['dataexchange'] = {};
AWS.DataExchange = Service.defineService('dataexchange', ['2017-07-25']);
Object.defineProperty(apiLoader.services['dataexchange'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(25676);
    model.paginators = __webpack_require__(44399)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DataExchange;


/***/ }),

/***/ 65688:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['datapipeline'] = {};
AWS.DataPipeline = Service.defineService('datapipeline', ['2012-10-29']);
Object.defineProperty(apiLoader.services['datapipeline'], '2012-10-29', {
  get: function get() {
    var model = __webpack_require__(9547);
    model.paginators = __webpack_require__(48471)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DataPipeline;


/***/ }),

/***/ 15472:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['datasync'] = {};
AWS.DataSync = Service.defineService('datasync', ['2018-11-09']);
Object.defineProperty(apiLoader.services['datasync'], '2018-11-09', {
  get: function get() {
    var model = __webpack_require__(37374);
    model.paginators = __webpack_require__(18448)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DataSync;


/***/ }),

/***/ 71398:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['dax'] = {};
AWS.DAX = Service.defineService('dax', ['2017-04-19']);
Object.defineProperty(apiLoader.services['dax'], '2017-04-19', {
  get: function get() {
    var model = __webpack_require__(97287);
    model.paginators = __webpack_require__(15791)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DAX;


/***/ }),

/***/ 60674:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['detective'] = {};
AWS.Detective = Service.defineService('detective', ['2018-10-26']);
Object.defineProperty(apiLoader.services['detective'], '2018-10-26', {
  get: function get() {
    var model = __webpack_require__(38107);
    model.paginators = __webpack_require__(26554)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Detective;


/***/ }),

/***/ 26272:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['devicefarm'] = {};
AWS.DeviceFarm = Service.defineService('devicefarm', ['2015-06-23']);
Object.defineProperty(apiLoader.services['devicefarm'], '2015-06-23', {
  get: function get() {
    var model = __webpack_require__(87206);
    model.paginators = __webpack_require__(85524)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DeviceFarm;


/***/ }),

/***/ 90673:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['devopsguru'] = {};
AWS.DevOpsGuru = Service.defineService('devopsguru', ['2020-12-01']);
Object.defineProperty(apiLoader.services['devopsguru'], '2020-12-01', {
  get: function get() {
    var model = __webpack_require__(82176);
    model.paginators = __webpack_require__(91556)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DevOpsGuru;


/***/ }),

/***/ 73783:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['directconnect'] = {};
AWS.DirectConnect = Service.defineService('directconnect', ['2012-10-25']);
Object.defineProperty(apiLoader.services['directconnect'], '2012-10-25', {
  get: function get() {
    var model = __webpack_require__(49177);
    model.paginators = __webpack_require__(57373)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DirectConnect;


/***/ }),

/***/ 83908:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['directoryservice'] = {};
AWS.DirectoryService = Service.defineService('directoryservice', ['2015-04-16']);
Object.defineProperty(apiLoader.services['directoryservice'], '2015-04-16', {
  get: function get() {
    var model = __webpack_require__(3174);
    model.paginators = __webpack_require__(1714)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DirectoryService;


/***/ }),

/***/ 81690:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['discovery'] = {};
AWS.Discovery = Service.defineService('discovery', ['2015-11-01']);
Object.defineProperty(apiLoader.services['discovery'], '2015-11-01', {
  get: function get() {
    var model = __webpack_require__(32400);
    model.paginators = __webpack_require__(54052)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Discovery;


/***/ }),

/***/ 24958:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['dlm'] = {};
AWS.DLM = Service.defineService('dlm', ['2018-01-12']);
Object.defineProperty(apiLoader.services['dlm'], '2018-01-12', {
  get: function get() {
    var model = __webpack_require__(19210);
    model.paginators = __webpack_require__(69943)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DLM;


/***/ }),

/***/ 69868:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['dms'] = {};
AWS.DMS = Service.defineService('dms', ['2016-01-01']);
Object.defineProperty(apiLoader.services['dms'], '2016-01-01', {
  get: function get() {
    var model = __webpack_require__(85765);
    model.paginators = __webpack_require__(170)/* .pagination */ .o;
    model.waiters = __webpack_require__(31491)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DMS;


/***/ }),

/***/ 55129:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['docdb'] = {};
AWS.DocDB = Service.defineService('docdb', ['2014-10-31']);
__webpack_require__(59050);
Object.defineProperty(apiLoader.services['docdb'], '2014-10-31', {
  get: function get() {
    var model = __webpack_require__(78804);
    model.paginators = __webpack_require__(97929)/* .pagination */ .o;
    model.waiters = __webpack_require__(61159)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DocDB;


/***/ }),

/***/ 14347:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['dynamodb'] = {};
AWS.DynamoDB = Service.defineService('dynamodb', ['2011-12-05', '2012-08-10']);
__webpack_require__(17101);
Object.defineProperty(apiLoader.services['dynamodb'], '2011-12-05', {
  get: function get() {
    var model = __webpack_require__(59225);
    model.paginators = __webpack_require__(30867)/* .pagination */ .o;
    model.waiters = __webpack_require__(15606)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['dynamodb'], '2012-08-10', {
  get: function get() {
    var model = __webpack_require__(10198);
    model.paginators = __webpack_require__(79199)/* .pagination */ .o;
    model.waiters = __webpack_require__(13814)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DynamoDB;


/***/ }),

/***/ 88090:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['dynamodbstreams'] = {};
AWS.DynamoDBStreams = Service.defineService('dynamodbstreams', ['2012-08-10']);
Object.defineProperty(apiLoader.services['dynamodbstreams'], '2012-08-10', {
  get: function get() {
    var model = __webpack_require__(69705);
    model.paginators = __webpack_require__(18467)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.DynamoDBStreams;


/***/ }),

/***/ 62837:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ebs'] = {};
AWS.EBS = Service.defineService('ebs', ['2019-11-02']);
Object.defineProperty(apiLoader.services['ebs'], '2019-11-02', {
  get: function get() {
    var model = __webpack_require__(67263);
    model.paginators = __webpack_require__(94934)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EBS;


/***/ }),

/***/ 7778:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ec2'] = {};
AWS.EC2 = Service.defineService('ec2', ['2013-06-15*', '2013-10-15*', '2014-02-01*', '2014-05-01*', '2014-06-15*', '2014-09-01*', '2014-10-01*', '2015-03-01*', '2015-04-15*', '2015-10-01*', '2016-04-01*', '2016-09-15*', '2016-11-15']);
__webpack_require__(92501);
Object.defineProperty(apiLoader.services['ec2'], '2016-11-15', {
  get: function get() {
    var model = __webpack_require__(8893);
    model.paginators = __webpack_require__(32127)/* .pagination */ .o;
    model.waiters = __webpack_require__(90157)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EC2;


/***/ }),

/***/ 92209:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ec2instanceconnect'] = {};
AWS.EC2InstanceConnect = Service.defineService('ec2instanceconnect', ['2018-04-02']);
Object.defineProperty(apiLoader.services['ec2instanceconnect'], '2018-04-02', {
  get: function get() {
    var model = __webpack_require__(14703);
    model.paginators = __webpack_require__(73353)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EC2InstanceConnect;


/***/ }),

/***/ 15211:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ecr'] = {};
AWS.ECR = Service.defineService('ecr', ['2015-09-21']);
Object.defineProperty(apiLoader.services['ecr'], '2015-09-21', {
  get: function get() {
    var model = __webpack_require__(80948);
    model.paginators = __webpack_require__(66855)/* .pagination */ .o;
    model.waiters = __webpack_require__(69800)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ECR;


/***/ }),

/***/ 90244:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ecrpublic'] = {};
AWS.ECRPUBLIC = Service.defineService('ecrpublic', ['2020-10-30']);
Object.defineProperty(apiLoader.services['ecrpublic'], '2020-10-30', {
  get: function get() {
    var model = __webpack_require__(82416);
    model.paginators = __webpack_require__(41518)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ECRPUBLIC;


/***/ }),

/***/ 16615:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ecs'] = {};
AWS.ECS = Service.defineService('ecs', ['2014-11-13']);
Object.defineProperty(apiLoader.services['ecs'], '2014-11-13', {
  get: function get() {
    var model = __webpack_require__(68155);
    model.paginators = __webpack_require__(33629)/* .pagination */ .o;
    model.waiters = __webpack_require__(54199)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ECS;


/***/ }),

/***/ 34375:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['efs'] = {};
AWS.EFS = Service.defineService('efs', ['2015-02-01']);
Object.defineProperty(apiLoader.services['efs'], '2015-02-01', {
  get: function get() {
    var model = __webpack_require__(54989);
    model.paginators = __webpack_require__(73750)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EFS;


/***/ }),

/***/ 23337:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['eks'] = {};
AWS.EKS = Service.defineService('eks', ['2017-11-01']);
Object.defineProperty(apiLoader.services['eks'], '2017-11-01', {
  get: function get() {
    var model = __webpack_require__(7766);
    model.paginators = __webpack_require__(17233)/* .pagination */ .o;
    model.waiters = __webpack_require__(11545)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EKS;


/***/ }),

/***/ 81065:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['elasticache'] = {};
AWS.ElastiCache = Service.defineService('elasticache', ['2012-11-15*', '2014-03-24*', '2014-07-15*', '2014-09-30*', '2015-02-02']);
Object.defineProperty(apiLoader.services['elasticache'], '2015-02-02', {
  get: function get() {
    var model = __webpack_require__(78248);
    model.paginators = __webpack_require__(47954)/* .pagination */ .o;
    model.waiters = __webpack_require__(35402)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ElastiCache;


/***/ }),

/***/ 14897:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['elasticbeanstalk'] = {};
AWS.ElasticBeanstalk = Service.defineService('elasticbeanstalk', ['2010-12-01']);
Object.defineProperty(apiLoader.services['elasticbeanstalk'], '2010-12-01', {
  get: function get() {
    var model = __webpack_require__(26770);
    model.paginators = __webpack_require__(14282)/* .pagination */ .o;
    model.waiters = __webpack_require__(125)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ElasticBeanstalk;


/***/ }),

/***/ 37708:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['elasticinference'] = {};
AWS.ElasticInference = Service.defineService('elasticinference', ['2017-07-25']);
Object.defineProperty(apiLoader.services['elasticinference'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(76263);
    model.paginators = __webpack_require__(73815)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ElasticInference;


/***/ }),

/***/ 40745:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['elastictranscoder'] = {};
AWS.ElasticTranscoder = Service.defineService('elastictranscoder', ['2012-09-25']);
Object.defineProperty(apiLoader.services['elastictranscoder'], '2012-09-25', {
  get: function get() {
    var model = __webpack_require__(45610);
    model.paginators = __webpack_require__(35370)/* .pagination */ .o;
    model.waiters = __webpack_require__(13314)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ElasticTranscoder;


/***/ }),

/***/ 10907:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['elb'] = {};
AWS.ELB = Service.defineService('elb', ['2012-06-01']);
Object.defineProperty(apiLoader.services['elb'], '2012-06-01', {
  get: function get() {
    var model = __webpack_require__(16234);
    model.paginators = __webpack_require__(87921)/* .pagination */ .o;
    model.waiters = __webpack_require__(41073)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ELB;


/***/ }),

/***/ 44311:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['elbv2'] = {};
AWS.ELBv2 = Service.defineService('elbv2', ['2015-12-01']);
Object.defineProperty(apiLoader.services['elbv2'], '2015-12-01', {
  get: function get() {
    var model = __webpack_require__(95067);
    model.paginators = __webpack_require__(49154)/* .pagination */ .o;
    model.waiters = __webpack_require__(14244)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ELBv2;


/***/ }),

/***/ 50470:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['emr'] = {};
AWS.EMR = Service.defineService('emr', ['2009-03-31']);
Object.defineProperty(apiLoader.services['emr'], '2009-03-31', {
  get: function get() {
    var model = __webpack_require__(61812);
    model.paginators = __webpack_require__(45852)/* .pagination */ .o;
    model.waiters = __webpack_require__(70234)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EMR;


/***/ }),

/***/ 49984:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['emrcontainers'] = {};
AWS.EMRcontainers = Service.defineService('emrcontainers', ['2020-10-01']);
Object.defineProperty(apiLoader.services['emrcontainers'], '2020-10-01', {
  get: function get() {
    var model = __webpack_require__(96210);
    model.paginators = __webpack_require__(83173)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EMRcontainers;


/***/ }),

/***/ 84462:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['es'] = {};
AWS.ES = Service.defineService('es', ['2015-01-01']);
Object.defineProperty(apiLoader.services['es'], '2015-01-01', {
  get: function get() {
    var model = __webpack_require__(69235);
    model.paginators = __webpack_require__(5589)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ES;


/***/ }),

/***/ 898:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['eventbridge'] = {};
AWS.EventBridge = Service.defineService('eventbridge', ['2015-10-07']);
Object.defineProperty(apiLoader.services['eventbridge'], '2015-10-07', {
  get: function get() {
    var model = __webpack_require__(16181);
    model.paginators = __webpack_require__(41745)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.EventBridge;


/***/ }),

/***/ 92831:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['firehose'] = {};
AWS.Firehose = Service.defineService('firehose', ['2015-08-04']);
Object.defineProperty(apiLoader.services['firehose'], '2015-08-04', {
  get: function get() {
    var model = __webpack_require__(53370);
    model.paginators = __webpack_require__(16459)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Firehose;


/***/ }),

/***/ 73003:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['fis'] = {};
AWS.Fis = Service.defineService('fis', ['2020-12-01']);
Object.defineProperty(apiLoader.services['fis'], '2020-12-01', {
  get: function get() {
    var model = __webpack_require__(75416);
    model.paginators = __webpack_require__(703)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Fis;


/***/ }),

/***/ 11316:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['fms'] = {};
AWS.FMS = Service.defineService('fms', ['2018-01-01']);
Object.defineProperty(apiLoader.services['fms'], '2018-01-01', {
  get: function get() {
    var model = __webpack_require__(86359);
    model.paginators = __webpack_require__(47569)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.FMS;


/***/ }),

/***/ 36822:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['forecastqueryservice'] = {};
AWS.ForecastQueryService = Service.defineService('forecastqueryservice', ['2018-06-26']);
Object.defineProperty(apiLoader.services['forecastqueryservice'], '2018-06-26', {
  get: function get() {
    var model = __webpack_require__(6430);
    model.paginators = __webpack_require__(30372)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ForecastQueryService;


/***/ }),

/***/ 12942:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['forecastservice'] = {};
AWS.ForecastService = Service.defineService('forecastservice', ['2018-06-26']);
Object.defineProperty(apiLoader.services['forecastservice'], '2018-06-26', {
  get: function get() {
    var model = __webpack_require__(55586);
    model.paginators = __webpack_require__(83052)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ForecastService;


/***/ }),

/***/ 99830:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['frauddetector'] = {};
AWS.FraudDetector = Service.defineService('frauddetector', ['2019-11-15']);
Object.defineProperty(apiLoader.services['frauddetector'], '2019-11-15', {
  get: function get() {
    var model = __webpack_require__(93807);
    model.paginators = __webpack_require__(32681)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.FraudDetector;


/***/ }),

/***/ 60642:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['fsx'] = {};
AWS.FSx = Service.defineService('fsx', ['2018-03-01']);
Object.defineProperty(apiLoader.services['fsx'], '2018-03-01', {
  get: function get() {
    var model = __webpack_require__(85233);
    model.paginators = __webpack_require__(8719)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.FSx;


/***/ }),

/***/ 8085:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['gamelift'] = {};
AWS.GameLift = Service.defineService('gamelift', ['2015-10-01']);
Object.defineProperty(apiLoader.services['gamelift'], '2015-10-01', {
  get: function get() {
    var model = __webpack_require__(71658);
    model.paginators = __webpack_require__(32274)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.GameLift;


/***/ }),

/***/ 63249:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['glacier'] = {};
AWS.Glacier = Service.defineService('glacier', ['2012-06-01']);
__webpack_require__(14472);
Object.defineProperty(apiLoader.services['glacier'], '2012-06-01', {
  get: function get() {
    var model = __webpack_require__(47563);
    model.paginators = __webpack_require__(77100)/* .pagination */ .o;
    model.waiters = __webpack_require__(81219)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Glacier;


/***/ }),

/***/ 19306:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['globalaccelerator'] = {};
AWS.GlobalAccelerator = Service.defineService('globalaccelerator', ['2018-08-08']);
Object.defineProperty(apiLoader.services['globalaccelerator'], '2018-08-08', {
  get: function get() {
    var model = __webpack_require__(5157);
    model.paginators = __webpack_require__(9696)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.GlobalAccelerator;


/***/ }),

/***/ 31658:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['glue'] = {};
AWS.Glue = Service.defineService('glue', ['2017-03-31']);
Object.defineProperty(apiLoader.services['glue'], '2017-03-31', {
  get: function get() {
    var model = __webpack_require__(91789);
    model.paginators = __webpack_require__(14005)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Glue;


/***/ }),

/***/ 20690:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['greengrass'] = {};
AWS.Greengrass = Service.defineService('greengrass', ['2017-06-07']);
Object.defineProperty(apiLoader.services['greengrass'], '2017-06-07', {
  get: function get() {
    var model = __webpack_require__(25031);
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Greengrass;


/***/ }),

/***/ 45126:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['greengrassv2'] = {};
AWS.GreengrassV2 = Service.defineService('greengrassv2', ['2020-11-30']);
Object.defineProperty(apiLoader.services['greengrassv2'], '2020-11-30', {
  get: function get() {
    var model = __webpack_require__(22710);
    model.paginators = __webpack_require__(94180)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.GreengrassV2;


/***/ }),

/***/ 80494:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['groundstation'] = {};
AWS.GroundStation = Service.defineService('groundstation', ['2019-05-23']);
Object.defineProperty(apiLoader.services['groundstation'], '2019-05-23', {
  get: function get() {
    var model = __webpack_require__(78309);
    model.paginators = __webpack_require__(76938)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.GroundStation;


/***/ }),

/***/ 40755:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['guardduty'] = {};
AWS.GuardDuty = Service.defineService('guardduty', ['2017-11-28']);
Object.defineProperty(apiLoader.services['guardduty'], '2017-11-28', {
  get: function get() {
    var model = __webpack_require__(89297);
    model.paginators = __webpack_require__(69484)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.GuardDuty;


/***/ }),

/***/ 21834:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['health'] = {};
AWS.Health = Service.defineService('health', ['2016-08-04']);
Object.defineProperty(apiLoader.services['health'], '2016-08-04', {
  get: function get() {
    var model = __webpack_require__(88191);
    model.paginators = __webpack_require__(87844)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Health;


/***/ }),

/***/ 64254:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['healthlake'] = {};
AWS.HealthLake = Service.defineService('healthlake', ['2017-07-01']);
Object.defineProperty(apiLoader.services['healthlake'], '2017-07-01', {
  get: function get() {
    var model = __webpack_require__(78700);
    model.paginators = __webpack_require__(31590)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.HealthLake;


/***/ }),

/***/ 38889:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['honeycode'] = {};
AWS.Honeycode = Service.defineService('honeycode', ['2020-03-01']);
Object.defineProperty(apiLoader.services['honeycode'], '2020-03-01', {
  get: function get() {
    var model = __webpack_require__(77536);
    model.paginators = __webpack_require__(83349)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Honeycode;


/***/ }),

/***/ 50058:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iam'] = {};
AWS.IAM = Service.defineService('iam', ['2010-05-08']);
Object.defineProperty(apiLoader.services['iam'], '2010-05-08', {
  get: function get() {
    var model = __webpack_require__(46818);
    model.paginators = __webpack_require__(49015)/* .pagination */ .o;
    model.waiters = __webpack_require__(48986)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IAM;


/***/ }),

/***/ 60222:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['identitystore'] = {};
AWS.IdentityStore = Service.defineService('identitystore', ['2020-06-15']);
Object.defineProperty(apiLoader.services['identitystore'], '2020-06-15', {
  get: function get() {
    var model = __webpack_require__(14536);
    model.paginators = __webpack_require__(96554)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IdentityStore;


/***/ }),

/***/ 57511:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['imagebuilder'] = {};
AWS.Imagebuilder = Service.defineService('imagebuilder', ['2019-12-02']);
Object.defineProperty(apiLoader.services['imagebuilder'], '2019-12-02', {
  get: function get() {
    var model = __webpack_require__(79595);
    model.paginators = __webpack_require__(57060)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Imagebuilder;


/***/ }),

/***/ 6769:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['importexport'] = {};
AWS.ImportExport = Service.defineService('importexport', ['2010-06-01']);
Object.defineProperty(apiLoader.services['importexport'], '2010-06-01', {
  get: function get() {
    var model = __webpack_require__(85415);
    model.paginators = __webpack_require__(60069)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ImportExport;


/***/ }),

/***/ 89439:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['inspector'] = {};
AWS.Inspector = Service.defineService('inspector', ['2015-08-18*', '2016-02-16']);
Object.defineProperty(apiLoader.services['inspector'], '2016-02-16', {
  get: function get() {
    var model = __webpack_require__(92652);
    model.paginators = __webpack_require__(98432)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Inspector;


/***/ }),

/***/ 98392:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iot'] = {};
AWS.Iot = Service.defineService('iot', ['2015-05-28']);
Object.defineProperty(apiLoader.services['iot'], '2015-05-28', {
  get: function get() {
    var model = __webpack_require__(47091);
    model.paginators = __webpack_require__(39946)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Iot;


/***/ }),

/***/ 39474:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iot1clickdevicesservice'] = {};
AWS.IoT1ClickDevicesService = Service.defineService('iot1clickdevicesservice', ['2018-05-14']);
Object.defineProperty(apiLoader.services['iot1clickdevicesservice'], '2018-05-14', {
  get: function get() {
    var model = __webpack_require__(69668);
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoT1ClickDevicesService;


/***/ }),

/***/ 4686:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iot1clickprojects'] = {};
AWS.IoT1ClickProjects = Service.defineService('iot1clickprojects', ['2018-05-14']);
Object.defineProperty(apiLoader.services['iot1clickprojects'], '2018-05-14', {
  get: function get() {
    var model = __webpack_require__(66389);
    model.paginators = __webpack_require__(42078)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoT1ClickProjects;


/***/ }),

/***/ 67409:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotanalytics'] = {};
AWS.IoTAnalytics = Service.defineService('iotanalytics', ['2017-11-27']);
Object.defineProperty(apiLoader.services['iotanalytics'], '2017-11-27', {
  get: function get() {
    var model = __webpack_require__(87696);
    model.paginators = __webpack_require__(58536)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTAnalytics;


/***/ }),

/***/ 6564:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotdata'] = {};
AWS.IotData = Service.defineService('iotdata', ['2015-05-28']);
__webpack_require__(27062);
Object.defineProperty(apiLoader.services['iotdata'], '2015-05-28', {
  get: function get() {
    var model = __webpack_require__(94126);
    model.paginators = __webpack_require__(6435)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IotData;


/***/ }),

/***/ 97569:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotdeviceadvisor'] = {};
AWS.IotDeviceAdvisor = Service.defineService('iotdeviceadvisor', ['2020-09-18']);
Object.defineProperty(apiLoader.services['iotdeviceadvisor'], '2020-09-18', {
  get: function get() {
    var model = __webpack_require__(19317);
    model.paginators = __webpack_require__(9465)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IotDeviceAdvisor;


/***/ }),

/***/ 88065:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotevents'] = {};
AWS.IoTEvents = Service.defineService('iotevents', ['2018-07-27']);
Object.defineProperty(apiLoader.services['iotevents'], '2018-07-27', {
  get: function get() {
    var model = __webpack_require__(55666);
    model.paginators = __webpack_require__(13523)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTEvents;


/***/ }),

/***/ 56973:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ioteventsdata'] = {};
AWS.IoTEventsData = Service.defineService('ioteventsdata', ['2018-10-23']);
Object.defineProperty(apiLoader.services['ioteventsdata'], '2018-10-23', {
  get: function get() {
    var model = __webpack_require__(14647);
    model.paginators = __webpack_require__(12541)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTEventsData;


/***/ }),

/***/ 42513:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotfleethub'] = {};
AWS.IoTFleetHub = Service.defineService('iotfleethub', ['2020-11-03']);
Object.defineProperty(apiLoader.services['iotfleethub'], '2020-11-03', {
  get: function get() {
    var model = __webpack_require__(53518);
    model.paginators = __webpack_require__(90350)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTFleetHub;


/***/ }),

/***/ 42332:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotjobsdataplane'] = {};
AWS.IoTJobsDataPlane = Service.defineService('iotjobsdataplane', ['2017-09-29']);
Object.defineProperty(apiLoader.services['iotjobsdataplane'], '2017-09-29', {
  get: function get() {
    var model = __webpack_require__(27052);
    model.paginators = __webpack_require__(87653)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTJobsDataPlane;


/***/ }),

/***/ 98562:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotsecuretunneling'] = {};
AWS.IoTSecureTunneling = Service.defineService('iotsecuretunneling', ['2018-10-05']);
Object.defineProperty(apiLoader.services['iotsecuretunneling'], '2018-10-05', {
  get: function get() {
    var model = __webpack_require__(47810);
    model.paginators = __webpack_require__(16978)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTSecureTunneling;


/***/ }),

/***/ 89690:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotsitewise'] = {};
AWS.IoTSiteWise = Service.defineService('iotsitewise', ['2019-12-02']);
Object.defineProperty(apiLoader.services['iotsitewise'], '2019-12-02', {
  get: function get() {
    var model = __webpack_require__(94166);
    model.paginators = __webpack_require__(81755)/* .pagination */ .o;
    model.waiters = __webpack_require__(4197)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTSiteWise;


/***/ }),

/***/ 58905:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotthingsgraph'] = {};
AWS.IoTThingsGraph = Service.defineService('iotthingsgraph', ['2018-09-06']);
Object.defineProperty(apiLoader.services['iotthingsgraph'], '2018-09-06', {
  get: function get() {
    var model = __webpack_require__(6038);
    model.paginators = __webpack_require__(91296)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTThingsGraph;


/***/ }),

/***/ 8226:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['iotwireless'] = {};
AWS.IoTWireless = Service.defineService('iotwireless', ['2020-11-22']);
Object.defineProperty(apiLoader.services['iotwireless'], '2020-11-22', {
  get: function get() {
    var model = __webpack_require__(44396);
    model.paginators = __webpack_require__(31164)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IoTWireless;


/***/ }),

/***/ 67701:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ivs'] = {};
AWS.IVS = Service.defineService('ivs', ['2020-07-14']);
Object.defineProperty(apiLoader.services['ivs'], '2020-07-14', {
  get: function get() {
    var model = __webpack_require__(41816);
    model.paginators = __webpack_require__(38184)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.IVS;


/***/ }),

/***/ 56775:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kafka'] = {};
AWS.Kafka = Service.defineService('kafka', ['2018-11-14']);
Object.defineProperty(apiLoader.services['kafka'], '2018-11-14', {
  get: function get() {
    var model = __webpack_require__(52315);
    model.paginators = __webpack_require__(71066)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Kafka;


/***/ }),

/***/ 66122:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kendra'] = {};
AWS.Kendra = Service.defineService('kendra', ['2019-02-03']);
Object.defineProperty(apiLoader.services['kendra'], '2019-02-03', {
  get: function get() {
    var model = __webpack_require__(61785);
    model.paginators = __webpack_require__(31633)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Kendra;


/***/ }),

/***/ 49876:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesis'] = {};
AWS.Kinesis = Service.defineService('kinesis', ['2013-12-02']);
Object.defineProperty(apiLoader.services['kinesis'], '2013-12-02', {
  get: function get() {
    var model = __webpack_require__(74556);
    model.paginators = __webpack_require__(38540)/* .pagination */ .o;
    model.waiters = __webpack_require__(80745)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Kinesis;


/***/ }),

/***/ 90042:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesisanalytics'] = {};
AWS.KinesisAnalytics = Service.defineService('kinesisanalytics', ['2015-08-14']);
Object.defineProperty(apiLoader.services['kinesisanalytics'], '2015-08-14', {
  get: function get() {
    var model = __webpack_require__(91105);
    model.paginators = __webpack_require__(18363)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KinesisAnalytics;


/***/ }),

/***/ 74631:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesisanalyticsv2'] = {};
AWS.KinesisAnalyticsV2 = Service.defineService('kinesisanalyticsv2', ['2018-05-23']);
Object.defineProperty(apiLoader.services['kinesisanalyticsv2'], '2018-05-23', {
  get: function get() {
    var model = __webpack_require__(70128);
    model.paginators = __webpack_require__(6842)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KinesisAnalyticsV2;


/***/ }),

/***/ 89927:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesisvideo'] = {};
AWS.KinesisVideo = Service.defineService('kinesisvideo', ['2017-09-30']);
Object.defineProperty(apiLoader.services['kinesisvideo'], '2017-09-30', {
  get: function get() {
    var model = __webpack_require__(28189);
    model.paginators = __webpack_require__(15191)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KinesisVideo;


/***/ }),

/***/ 5580:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesisvideoarchivedmedia'] = {};
AWS.KinesisVideoArchivedMedia = Service.defineService('kinesisvideoarchivedmedia', ['2017-09-30']);
Object.defineProperty(apiLoader.services['kinesisvideoarchivedmedia'], '2017-09-30', {
  get: function get() {
    var model = __webpack_require__(64288);
    model.paginators = __webpack_require__(78514)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KinesisVideoArchivedMedia;


/***/ }),

/***/ 81308:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesisvideomedia'] = {};
AWS.KinesisVideoMedia = Service.defineService('kinesisvideomedia', ['2017-09-30']);
Object.defineProperty(apiLoader.services['kinesisvideomedia'], '2017-09-30', {
  get: function get() {
    var model = __webpack_require__(97818);
    model.paginators = __webpack_require__(16923)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KinesisVideoMedia;


/***/ }),

/***/ 12710:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kinesisvideosignalingchannels'] = {};
AWS.KinesisVideoSignalingChannels = Service.defineService('kinesisvideosignalingchannels', ['2019-12-04']);
Object.defineProperty(apiLoader.services['kinesisvideosignalingchannels'], '2019-12-04', {
  get: function get() {
    var model = __webpack_require__(58849);
    model.paginators = __webpack_require__(10473)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KinesisVideoSignalingChannels;


/***/ }),

/***/ 56782:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['kms'] = {};
AWS.KMS = Service.defineService('kms', ['2014-11-01']);
Object.defineProperty(apiLoader.services['kms'], '2014-11-01', {
  get: function get() {
    var model = __webpack_require__(60611);
    model.paginators = __webpack_require__(97690)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.KMS;


/***/ }),

/***/ 6726:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lakeformation'] = {};
AWS.LakeFormation = Service.defineService('lakeformation', ['2017-03-31']);
Object.defineProperty(apiLoader.services['lakeformation'], '2017-03-31', {
  get: function get() {
    var model = __webpack_require__(65408);
    model.paginators = __webpack_require__(89923)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LakeFormation;


/***/ }),

/***/ 13321:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lambda'] = {};
AWS.Lambda = Service.defineService('lambda', ['2014-11-11', '2015-03-31']);
__webpack_require__(8452);
Object.defineProperty(apiLoader.services['lambda'], '2014-11-11', {
  get: function get() {
    var model = __webpack_require__(63935);
    model.paginators = __webpack_require__(86208)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['lambda'], '2015-03-31', {
  get: function get() {
    var model = __webpack_require__(50409);
    model.paginators = __webpack_require__(98920)/* .pagination */ .o;
    model.waiters = __webpack_require__(37582)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Lambda;


/***/ }),

/***/ 37397:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lexmodelbuildingservice'] = {};
AWS.LexModelBuildingService = Service.defineService('lexmodelbuildingservice', ['2017-04-19']);
Object.defineProperty(apiLoader.services['lexmodelbuildingservice'], '2017-04-19', {
  get: function get() {
    var model = __webpack_require__(57942);
    model.paginators = __webpack_require__(34148)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LexModelBuildingService;


/***/ }),

/***/ 27254:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lexmodelsv2'] = {};
AWS.LexModelsV2 = Service.defineService('lexmodelsv2', ['2020-08-07']);
__webpack_require__(22922);
Object.defineProperty(apiLoader.services['lexmodelsv2'], '2020-08-07', {
  get: function get() {
    var model = __webpack_require__(28033);
    model.paginators = __webpack_require__(20751)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LexModelsV2;


/***/ }),

/***/ 62716:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lexruntime'] = {};
AWS.LexRuntime = Service.defineService('lexruntime', ['2016-11-28']);
Object.defineProperty(apiLoader.services['lexruntime'], '2016-11-28', {
  get: function get() {
    var model = __webpack_require__(28098);
    model.paginators = __webpack_require__(17108)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LexRuntime;


/***/ }),

/***/ 33855:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lexruntimev2'] = {};
AWS.LexRuntimeV2 = Service.defineService('lexruntimev2', ['2020-08-07']);
Object.defineProperty(apiLoader.services['lexruntimev2'], '2020-08-07', {
  get: function get() {
    var model = __webpack_require__(72007);
    model.paginators = __webpack_require__(88199)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LexRuntimeV2;


/***/ }),

/***/ 34693:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['licensemanager'] = {};
AWS.LicenseManager = Service.defineService('licensemanager', ['2018-08-01']);
Object.defineProperty(apiLoader.services['licensemanager'], '2018-08-01', {
  get: function get() {
    var model = __webpack_require__(58445);
    model.paginators = __webpack_require__(73736)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LicenseManager;


/***/ }),

/***/ 22718:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lightsail'] = {};
AWS.Lightsail = Service.defineService('lightsail', ['2016-11-28']);
Object.defineProperty(apiLoader.services['lightsail'], '2016-11-28', {
  get: function get() {
    var model = __webpack_require__(59034);
    model.paginators = __webpack_require__(96768)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Lightsail;


/***/ }),

/***/ 44594:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['location'] = {};
AWS.Location = Service.defineService('location', ['2020-11-19']);
Object.defineProperty(apiLoader.services['location'], '2020-11-19', {
  get: function get() {
    var model = __webpack_require__(77371);
    model.paginators = __webpack_require__(23890)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Location;


/***/ }),

/***/ 21843:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lookoutequipment'] = {};
AWS.LookoutEquipment = Service.defineService('lookoutequipment', ['2020-12-15']);
Object.defineProperty(apiLoader.services['lookoutequipment'], '2020-12-15', {
  get: function get() {
    var model = __webpack_require__(31015);
    model.paginators = __webpack_require__(93065)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LookoutEquipment;


/***/ }),

/***/ 78708:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lookoutmetrics'] = {};
AWS.LookoutMetrics = Service.defineService('lookoutmetrics', ['2017-07-25']);
__webpack_require__(64605);
Object.defineProperty(apiLoader.services['lookoutmetrics'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(57300);
    model.paginators = __webpack_require__(86272)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LookoutMetrics;


/***/ }),

/***/ 65046:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['lookoutvision'] = {};
AWS.LookoutVision = Service.defineService('lookoutvision', ['2020-11-20']);
Object.defineProperty(apiLoader.services['lookoutvision'], '2020-11-20', {
  get: function get() {
    var model = __webpack_require__(43317);
    model.paginators = __webpack_require__(34273)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.LookoutVision;


/***/ }),

/***/ 82907:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['machinelearning'] = {};
AWS.MachineLearning = Service.defineService('machinelearning', ['2014-12-12']);
__webpack_require__(19174);
Object.defineProperty(apiLoader.services['machinelearning'], '2014-12-12', {
  get: function get() {
    var model = __webpack_require__(41946);
    model.paginators = __webpack_require__(11688)/* .pagination */ .o;
    model.waiters = __webpack_require__(92349)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MachineLearning;


/***/ }),

/***/ 86427:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['macie'] = {};
AWS.Macie = Service.defineService('macie', ['2017-12-19']);
Object.defineProperty(apiLoader.services['macie'], '2017-12-19', {
  get: function get() {
    var model = __webpack_require__(27101);
    model.paginators = __webpack_require__(9057)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Macie;


/***/ }),

/***/ 57330:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['macie2'] = {};
AWS.Macie2 = Service.defineService('macie2', ['2020-01-01']);
Object.defineProperty(apiLoader.services['macie2'], '2020-01-01', {
  get: function get() {
    var model = __webpack_require__(27105);
    model.paginators = __webpack_require__(93284)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Macie2;


/***/ }),

/***/ 85143:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['managedblockchain'] = {};
AWS.ManagedBlockchain = Service.defineService('managedblockchain', ['2018-09-24']);
Object.defineProperty(apiLoader.services['managedblockchain'], '2018-09-24', {
  get: function get() {
    var model = __webpack_require__(70690);
    model.paginators = __webpack_require__(45932)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ManagedBlockchain;


/***/ }),

/***/ 2609:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['marketplacecatalog'] = {};
AWS.MarketplaceCatalog = Service.defineService('marketplacecatalog', ['2018-09-17']);
Object.defineProperty(apiLoader.services['marketplacecatalog'], '2018-09-17', {
  get: function get() {
    var model = __webpack_require__(15560);
    model.paginators = __webpack_require__(23129)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MarketplaceCatalog;


/***/ }),

/***/ 4540:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['marketplacecommerceanalytics'] = {};
AWS.MarketplaceCommerceAnalytics = Service.defineService('marketplacecommerceanalytics', ['2015-07-01']);
Object.defineProperty(apiLoader.services['marketplacecommerceanalytics'], '2015-07-01', {
  get: function get() {
    var model = __webpack_require__(30768);
    model.paginators = __webpack_require__(88266)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MarketplaceCommerceAnalytics;


/***/ }),

/***/ 53707:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['marketplaceentitlementservice'] = {};
AWS.MarketplaceEntitlementService = Service.defineService('marketplaceentitlementservice', ['2017-01-11']);
Object.defineProperty(apiLoader.services['marketplaceentitlementservice'], '2017-01-11', {
  get: function get() {
    var model = __webpack_require__(23864);
    model.paginators = __webpack_require__(98218)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MarketplaceEntitlementService;


/***/ }),

/***/ 39297:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['marketplacemetering'] = {};
AWS.MarketplaceMetering = Service.defineService('marketplacemetering', ['2016-01-14']);
Object.defineProperty(apiLoader.services['marketplacemetering'], '2016-01-14', {
  get: function get() {
    var model = __webpack_require__(150);
    model.paginators = __webpack_require__(34742)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MarketplaceMetering;


/***/ }),

/***/ 67639:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediaconnect'] = {};
AWS.MediaConnect = Service.defineService('mediaconnect', ['2018-11-14']);
Object.defineProperty(apiLoader.services['mediaconnect'], '2018-11-14', {
  get: function get() {
    var model = __webpack_require__(38828);
    model.paginators = __webpack_require__(52701)/* .pagination */ .o;
    model.waiters = __webpack_require__(69547)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaConnect;


/***/ }),

/***/ 57220:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediaconvert'] = {};
AWS.MediaConvert = Service.defineService('mediaconvert', ['2017-08-29']);
Object.defineProperty(apiLoader.services['mediaconvert'], '2017-08-29', {
  get: function get() {
    var model = __webpack_require__(95103);
    model.paginators = __webpack_require__(12236)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaConvert;


/***/ }),

/***/ 7509:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['medialive'] = {};
AWS.MediaLive = Service.defineService('medialive', ['2017-10-14']);
Object.defineProperty(apiLoader.services['medialive'], '2017-10-14', {
  get: function get() {
    var model = __webpack_require__(71020);
    model.paginators = __webpack_require__(45939)/* .pagination */ .o;
    model.waiters = __webpack_require__(77702)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaLive;


/***/ }),

/***/ 91620:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediapackage'] = {};
AWS.MediaPackage = Service.defineService('mediapackage', ['2017-10-12']);
Object.defineProperty(apiLoader.services['mediapackage'], '2017-10-12', {
  get: function get() {
    var model = __webpack_require__(3524);
    model.paginators = __webpack_require__(28168)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaPackage;


/***/ }),

/***/ 14962:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediapackagevod'] = {};
AWS.MediaPackageVod = Service.defineService('mediapackagevod', ['2018-11-07']);
Object.defineProperty(apiLoader.services['mediapackagevod'], '2018-11-07', {
  get: function get() {
    var model = __webpack_require__(62182);
    model.paginators = __webpack_require__(9108)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaPackageVod;


/***/ }),

/***/ 83748:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediastore'] = {};
AWS.MediaStore = Service.defineService('mediastore', ['2017-09-01']);
Object.defineProperty(apiLoader.services['mediastore'], '2017-09-01', {
  get: function get() {
    var model = __webpack_require__(86331);
    model.paginators = __webpack_require__(85011)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaStore;


/***/ }),

/***/ 98703:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediastoredata'] = {};
AWS.MediaStoreData = Service.defineService('mediastoredata', ['2017-09-01']);
Object.defineProperty(apiLoader.services['mediastoredata'], '2017-09-01', {
  get: function get() {
    var model = __webpack_require__(78855);
    model.paginators = __webpack_require__(12340)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaStoreData;


/***/ }),

/***/ 99658:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mediatailor'] = {};
AWS.MediaTailor = Service.defineService('mediatailor', ['2018-04-23']);
Object.defineProperty(apiLoader.services['mediatailor'], '2018-04-23', {
  get: function get() {
    var model = __webpack_require__(32863);
    model.paginators = __webpack_require__(76134)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MediaTailor;


/***/ }),

/***/ 41339:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mgn'] = {};
AWS.Mgn = Service.defineService('mgn', ['2020-02-26']);
Object.defineProperty(apiLoader.services['mgn'], '2020-02-26', {
  get: function get() {
    var model = __webpack_require__(96297);
    model.paginators = __webpack_require__(36566)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Mgn;


/***/ }),

/***/ 14688:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['migrationhub'] = {};
AWS.MigrationHub = Service.defineService('migrationhub', ['2017-05-31']);
Object.defineProperty(apiLoader.services['migrationhub'], '2017-05-31', {
  get: function get() {
    var model = __webpack_require__(51639);
    model.paginators = __webpack_require__(63013)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MigrationHub;


/***/ }),

/***/ 62658:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['migrationhubconfig'] = {};
AWS.MigrationHubConfig = Service.defineService('migrationhubconfig', ['2019-06-30']);
Object.defineProperty(apiLoader.services['migrationhubconfig'], '2019-06-30', {
  get: function get() {
    var model = __webpack_require__(89101);
    model.paginators = __webpack_require__(59977)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MigrationHubConfig;


/***/ }),

/***/ 39782:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mobile'] = {};
AWS.Mobile = Service.defineService('mobile', ['2017-07-01']);
Object.defineProperty(apiLoader.services['mobile'], '2017-07-01', {
  get: function get() {
    var model = __webpack_require__(44027);
    model.paginators = __webpack_require__(81940)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Mobile;


/***/ }),

/***/ 66690:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mobileanalytics'] = {};
AWS.MobileAnalytics = Service.defineService('mobileanalytics', ['2014-06-05']);
Object.defineProperty(apiLoader.services['mobileanalytics'], '2014-06-05', {
  get: function get() {
    var model = __webpack_require__(40634);
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MobileAnalytics;


/***/ }),

/***/ 23093:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mq'] = {};
AWS.MQ = Service.defineService('mq', ['2017-11-27']);
Object.defineProperty(apiLoader.services['mq'], '2017-11-27', {
  get: function get() {
    var model = __webpack_require__(73219);
    model.paginators = __webpack_require__(59835)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MQ;


/***/ }),

/***/ 5615:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mturk'] = {};
AWS.MTurk = Service.defineService('mturk', ['2017-01-17']);
Object.defineProperty(apiLoader.services['mturk'], '2017-01-17', {
  get: function get() {
    var model = __webpack_require__(55676);
    model.paginators = __webpack_require__(51396)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MTurk;


/***/ }),

/***/ 32712:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['mwaa'] = {};
AWS.MWAA = Service.defineService('mwaa', ['2020-07-01']);
Object.defineProperty(apiLoader.services['mwaa'], '2020-07-01', {
  get: function get() {
    var model = __webpack_require__(3499);
    model.paginators = __webpack_require__(30606)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.MWAA;


/***/ }),

/***/ 30047:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['neptune'] = {};
AWS.Neptune = Service.defineService('neptune', ['2014-10-31']);
__webpack_require__(73090);
Object.defineProperty(apiLoader.services['neptune'], '2014-10-31', {
  get: function get() {
    var model = __webpack_require__(44749);
    model.paginators = __webpack_require__(36058)/* .pagination */ .o;
    model.waiters = __webpack_require__(83629)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Neptune;


/***/ }),

/***/ 84626:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['networkfirewall'] = {};
AWS.NetworkFirewall = Service.defineService('networkfirewall', ['2020-11-12']);
Object.defineProperty(apiLoader.services['networkfirewall'], '2020-11-12', {
  get: function get() {
    var model = __webpack_require__(71930);
    model.paginators = __webpack_require__(50334)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.NetworkFirewall;


/***/ }),

/***/ 37610:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['networkmanager'] = {};
AWS.NetworkManager = Service.defineService('networkmanager', ['2019-07-05']);
Object.defineProperty(apiLoader.services['networkmanager'], '2019-07-05', {
  get: function get() {
    var model = __webpack_require__(11902);
    model.paginators = __webpack_require__(91477)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.NetworkManager;


/***/ }),

/***/ 75691:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['opsworks'] = {};
AWS.OpsWorks = Service.defineService('opsworks', ['2013-02-18']);
Object.defineProperty(apiLoader.services['opsworks'], '2013-02-18', {
  get: function get() {
    var model = __webpack_require__(95315);
    model.paginators = __webpack_require__(63589)/* .pagination */ .o;
    model.waiters = __webpack_require__(8700)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.OpsWorks;


/***/ }),

/***/ 80388:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['opsworkscm'] = {};
AWS.OpsWorksCM = Service.defineService('opsworkscm', ['2016-11-01']);
Object.defineProperty(apiLoader.services['opsworkscm'], '2016-11-01', {
  get: function get() {
    var model = __webpack_require__(25033);
    model.paginators = __webpack_require__(68422)/* .pagination */ .o;
    model.waiters = __webpack_require__(89353)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.OpsWorksCM;


/***/ }),

/***/ 44670:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['organizations'] = {};
AWS.Organizations = Service.defineService('organizations', ['2016-11-28']);
Object.defineProperty(apiLoader.services['organizations'], '2016-11-28', {
  get: function get() {
    var model = __webpack_require__(28258);
    model.paginators = __webpack_require__(70916)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Organizations;


/***/ }),

/***/ 27551:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['outposts'] = {};
AWS.Outposts = Service.defineService('outposts', ['2019-12-03']);
Object.defineProperty(apiLoader.services['outposts'], '2019-12-03', {
  get: function get() {
    var model = __webpack_require__(79304);
    model.paginators = __webpack_require__(91740)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Outposts;


/***/ }),

/***/ 33696:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['personalize'] = {};
AWS.Personalize = Service.defineService('personalize', ['2018-05-22']);
Object.defineProperty(apiLoader.services['personalize'], '2018-05-22', {
  get: function get() {
    var model = __webpack_require__(16402);
    model.paginators = __webpack_require__(76828)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Personalize;


/***/ }),

/***/ 88170:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['personalizeevents'] = {};
AWS.PersonalizeEvents = Service.defineService('personalizeevents', ['2018-03-22']);
Object.defineProperty(apiLoader.services['personalizeevents'], '2018-03-22', {
  get: function get() {
    var model = __webpack_require__(8792);
    model.paginators = __webpack_require__(52110)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.PersonalizeEvents;


/***/ }),

/***/ 66184:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['personalizeruntime'] = {};
AWS.PersonalizeRuntime = Service.defineService('personalizeruntime', ['2018-05-22']);
Object.defineProperty(apiLoader.services['personalizeruntime'], '2018-05-22', {
  get: function get() {
    var model = __webpack_require__(86682);
    model.paginators = __webpack_require__(32049)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.PersonalizeRuntime;


/***/ }),

/***/ 15505:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['pi'] = {};
AWS.PI = Service.defineService('pi', ['2018-02-27']);
Object.defineProperty(apiLoader.services['pi'], '2018-02-27', {
  get: function get() {
    var model = __webpack_require__(38006);
    model.paginators = __webpack_require__(75147)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.PI;


/***/ }),

/***/ 18388:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['pinpoint'] = {};
AWS.Pinpoint = Service.defineService('pinpoint', ['2016-12-01']);
Object.defineProperty(apiLoader.services['pinpoint'], '2016-12-01', {
  get: function get() {
    var model = __webpack_require__(73536);
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Pinpoint;


/***/ }),

/***/ 83060:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['pinpointemail'] = {};
AWS.PinpointEmail = Service.defineService('pinpointemail', ['2018-07-26']);
Object.defineProperty(apiLoader.services['pinpointemail'], '2018-07-26', {
  get: function get() {
    var model = __webpack_require__(42680);
    model.paginators = __webpack_require__(58107)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.PinpointEmail;


/***/ }),

/***/ 46605:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['pinpointsmsvoice'] = {};
AWS.PinpointSMSVoice = Service.defineService('pinpointsmsvoice', ['2018-09-05']);
Object.defineProperty(apiLoader.services['pinpointsmsvoice'], '2018-09-05', {
  get: function get() {
    var model = __webpack_require__(6641);
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.PinpointSMSVoice;


/***/ }),

/***/ 97332:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['polly'] = {};
AWS.Polly = Service.defineService('polly', ['2016-06-10']);
__webpack_require__(53199);
Object.defineProperty(apiLoader.services['polly'], '2016-06-10', {
  get: function get() {
    var model = __webpack_require__(58020);
    model.paginators = __webpack_require__(28573)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Polly;


/***/ }),

/***/ 92765:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['pricing'] = {};
AWS.Pricing = Service.defineService('pricing', ['2017-10-15']);
Object.defineProperty(apiLoader.services['pricing'], '2017-10-15', {
  get: function get() {
    var model = __webpack_require__(19792);
    model.paginators = __webpack_require__(45992)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Pricing;


/***/ }),

/***/ 71266:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['qldb'] = {};
AWS.QLDB = Service.defineService('qldb', ['2019-01-02']);
Object.defineProperty(apiLoader.services['qldb'], '2019-01-02', {
  get: function get() {
    var model = __webpack_require__(52675);
    model.paginators = __webpack_require__(4367)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.QLDB;


/***/ }),

/***/ 55423:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['qldbsession'] = {};
AWS.QLDBSession = Service.defineService('qldbsession', ['2019-07-11']);
Object.defineProperty(apiLoader.services['qldbsession'], '2019-07-11', {
  get: function get() {
    var model = __webpack_require__(67426);
    model.paginators = __webpack_require__(96527)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.QLDBSession;


/***/ }),

/***/ 29898:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['quicksight'] = {};
AWS.QuickSight = Service.defineService('quicksight', ['2018-04-01']);
Object.defineProperty(apiLoader.services['quicksight'], '2018-04-01', {
  get: function get() {
    var model = __webpack_require__(6807);
    model.paginators = __webpack_require__(81489)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.QuickSight;


/***/ }),

/***/ 94394:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ram'] = {};
AWS.RAM = Service.defineService('ram', ['2018-01-04']);
Object.defineProperty(apiLoader.services['ram'], '2018-01-04', {
  get: function get() {
    var model = __webpack_require__(83728);
    model.paginators = __webpack_require__(83147)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.RAM;


/***/ }),

/***/ 71578:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['rds'] = {};
AWS.RDS = Service.defineService('rds', ['2013-01-10', '2013-02-12', '2013-09-09', '2014-09-01', '2014-09-01*', '2014-10-31']);
__webpack_require__(71928);
Object.defineProperty(apiLoader.services['rds'], '2013-01-10', {
  get: function get() {
    var model = __webpack_require__(56144);
    model.paginators = __webpack_require__(76660)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['rds'], '2013-02-12', {
  get: function get() {
    var model = __webpack_require__(15633);
    model.paginators = __webpack_require__(37654)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['rds'], '2013-09-09', {
  get: function get() {
    var model = __webpack_require__(53439);
    model.paginators = __webpack_require__(17223)/* .pagination */ .o;
    model.waiters = __webpack_require__(60967)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['rds'], '2014-09-01', {
  get: function get() {
    var model = __webpack_require__(72333);
    model.paginators = __webpack_require__(86022)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});
Object.defineProperty(apiLoader.services['rds'], '2014-10-31', {
  get: function get() {
    var model = __webpack_require__(6210);
    model.paginators = __webpack_require__(60972)/* .pagination */ .o;
    model.waiters = __webpack_require__(6606)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.RDS;


/***/ }),

/***/ 30147:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['rdsdataservice'] = {};
AWS.RDSDataService = Service.defineService('rdsdataservice', ['2018-08-01']);
__webpack_require__(64070);
Object.defineProperty(apiLoader.services['rdsdataservice'], '2018-08-01', {
  get: function get() {
    var model = __webpack_require__(4983);
    model.paginators = __webpack_require__(99015)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.RDSDataService;


/***/ }),

/***/ 84853:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['redshift'] = {};
AWS.Redshift = Service.defineService('redshift', ['2012-12-01']);
Object.defineProperty(apiLoader.services['redshift'], '2012-12-01', {
  get: function get() {
    var model = __webpack_require__(17066);
    model.paginators = __webpack_require__(7755)/* .pagination */ .o;
    model.waiters = __webpack_require__(91400)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Redshift;


/***/ }),

/***/ 203:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['redshiftdata'] = {};
AWS.RedshiftData = Service.defineService('redshiftdata', ['2019-12-20']);
Object.defineProperty(apiLoader.services['redshiftdata'], '2019-12-20', {
  get: function get() {
    var model = __webpack_require__(34805);
    model.paginators = __webpack_require__(28484)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.RedshiftData;


/***/ }),

/***/ 65470:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['rekognition'] = {};
AWS.Rekognition = Service.defineService('rekognition', ['2016-06-27']);
Object.defineProperty(apiLoader.services['rekognition'], '2016-06-27', {
  get: function get() {
    var model = __webpack_require__(65852);
    model.paginators = __webpack_require__(49860)/* .pagination */ .o;
    model.waiters = __webpack_require__(19491)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Rekognition;


/***/ }),

/***/ 58756:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['resourcegroups'] = {};
AWS.ResourceGroups = Service.defineService('resourcegroups', ['2017-11-27']);
Object.defineProperty(apiLoader.services['resourcegroups'], '2017-11-27', {
  get: function get() {
    var model = __webpack_require__(28629);
    model.paginators = __webpack_require__(71378)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ResourceGroups;


/***/ }),

/***/ 7385:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['resourcegroupstaggingapi'] = {};
AWS.ResourceGroupsTaggingAPI = Service.defineService('resourcegroupstaggingapi', ['2017-01-26']);
Object.defineProperty(apiLoader.services['resourcegroupstaggingapi'], '2017-01-26', {
  get: function get() {
    var model = __webpack_require__(83914);
    model.paginators = __webpack_require__(64865)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ResourceGroupsTaggingAPI;


/***/ }),

/***/ 18068:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['robomaker'] = {};
AWS.RoboMaker = Service.defineService('robomaker', ['2018-06-29']);
Object.defineProperty(apiLoader.services['robomaker'], '2018-06-29', {
  get: function get() {
    var model = __webpack_require__(36854);
    model.paginators = __webpack_require__(52592)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.RoboMaker;


/***/ }),

/***/ 44968:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['route53'] = {};
AWS.Route53 = Service.defineService('route53', ['2013-04-01']);
__webpack_require__(69627);
Object.defineProperty(apiLoader.services['route53'], '2013-04-01', {
  get: function get() {
    var model = __webpack_require__(91499);
    model.paginators = __webpack_require__(54519)/* .pagination */ .o;
    model.waiters = __webpack_require__(4628)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Route53;


/***/ }),

/***/ 51994:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['route53domains'] = {};
AWS.Route53Domains = Service.defineService('route53domains', ['2014-05-15']);
Object.defineProperty(apiLoader.services['route53domains'], '2014-05-15', {
  get: function get() {
    var model = __webpack_require__(6535);
    model.paginators = __webpack_require__(26777)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Route53Domains;


/***/ }),

/***/ 25894:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['route53resolver'] = {};
AWS.Route53Resolver = Service.defineService('route53resolver', ['2018-04-01']);
Object.defineProperty(apiLoader.services['route53resolver'], '2018-04-01', {
  get: function get() {
    var model = __webpack_require__(99309);
    model.paginators = __webpack_require__(21261)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Route53Resolver;


/***/ }),

/***/ 83256:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['s3'] = {};
AWS.S3 = Service.defineService('s3', ['2006-03-01']);
__webpack_require__(26543);
Object.defineProperty(apiLoader.services['s3'], '2006-03-01', {
  get: function get() {
    var model = __webpack_require__(32581);
    model.paginators = __webpack_require__(53175)/* .pagination */ .o;
    model.waiters = __webpack_require__(44494)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.S3;


/***/ }),

/***/ 99817:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['s3control'] = {};
AWS.S3Control = Service.defineService('s3control', ['2018-08-20']);
__webpack_require__(71207);
Object.defineProperty(apiLoader.services['s3control'], '2018-08-20', {
  get: function get() {
    var model = __webpack_require__(52092);
    model.paginators = __webpack_require__(62498)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.S3Control;


/***/ }),

/***/ 90493:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['s3outposts'] = {};
AWS.S3Outposts = Service.defineService('s3outposts', ['2017-07-25']);
Object.defineProperty(apiLoader.services['s3outposts'], '2017-07-25', {
  get: function get() {
    var model = __webpack_require__(90331);
    model.paginators = __webpack_require__(8746)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.S3Outposts;


/***/ }),

/***/ 77657:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sagemaker'] = {};
AWS.SageMaker = Service.defineService('sagemaker', ['2017-07-24']);
Object.defineProperty(apiLoader.services['sagemaker'], '2017-07-24', {
  get: function get() {
    var model = __webpack_require__(20227);
    model.paginators = __webpack_require__(44955)/* .pagination */ .o;
    model.waiters = __webpack_require__(50026)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SageMaker;


/***/ }),

/***/ 38966:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sagemakeredge'] = {};
AWS.SagemakerEdge = Service.defineService('sagemakeredge', ['2020-09-23']);
Object.defineProperty(apiLoader.services['sagemakeredge'], '2020-09-23', {
  get: function get() {
    var model = __webpack_require__(48750);
    model.paginators = __webpack_require__(2769)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SagemakerEdge;


/***/ }),

/***/ 67644:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sagemakerfeaturestoreruntime'] = {};
AWS.SageMakerFeatureStoreRuntime = Service.defineService('sagemakerfeaturestoreruntime', ['2020-07-01']);
Object.defineProperty(apiLoader.services['sagemakerfeaturestoreruntime'], '2020-07-01', {
  get: function get() {
    var model = __webpack_require__(98420);
    model.paginators = __webpack_require__(45590)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SageMakerFeatureStoreRuntime;


/***/ }),

/***/ 85044:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sagemakerruntime'] = {};
AWS.SageMakerRuntime = Service.defineService('sagemakerruntime', ['2017-05-13']);
Object.defineProperty(apiLoader.services['sagemakerruntime'], '2017-05-13', {
  get: function get() {
    var model = __webpack_require__(82783);
    model.paginators = __webpack_require__(17272)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SageMakerRuntime;


/***/ }),

/***/ 62825:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['savingsplans'] = {};
AWS.SavingsPlans = Service.defineService('savingsplans', ['2019-06-28']);
Object.defineProperty(apiLoader.services['savingsplans'], '2019-06-28', {
  get: function get() {
    var model = __webpack_require__(2810);
    model.paginators = __webpack_require__(56794)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SavingsPlans;


/***/ }),

/***/ 55713:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['schemas'] = {};
AWS.Schemas = Service.defineService('schemas', ['2019-12-02']);
Object.defineProperty(apiLoader.services['schemas'], '2019-12-02', {
  get: function get() {
    var model = __webpack_require__(85225);
    model.paginators = __webpack_require__(50738)/* .pagination */ .o;
    model.waiters = __webpack_require__(34671)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Schemas;


/***/ }),

/***/ 85131:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['secretsmanager'] = {};
AWS.SecretsManager = Service.defineService('secretsmanager', ['2017-10-17']);
Object.defineProperty(apiLoader.services['secretsmanager'], '2017-10-17', {
  get: function get() {
    var model = __webpack_require__(97209);
    model.paginators = __webpack_require__(38503)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SecretsManager;


/***/ }),

/***/ 21550:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['securityhub'] = {};
AWS.SecurityHub = Service.defineService('securityhub', ['2018-10-26']);
Object.defineProperty(apiLoader.services['securityhub'], '2018-10-26', {
  get: function get() {
    var model = __webpack_require__(40359);
    model.paginators = __webpack_require__(27612)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SecurityHub;


/***/ }),

/***/ 62402:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['serverlessapplicationrepository'] = {};
AWS.ServerlessApplicationRepository = Service.defineService('serverlessapplicationrepository', ['2017-09-08']);
Object.defineProperty(apiLoader.services['serverlessapplicationrepository'], '2017-09-08', {
  get: function get() {
    var model = __webpack_require__(8591);
    model.paginators = __webpack_require__(96164)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ServerlessApplicationRepository;


/***/ }),

/***/ 822:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['servicecatalog'] = {};
AWS.ServiceCatalog = Service.defineService('servicecatalog', ['2015-12-10']);
Object.defineProperty(apiLoader.services['servicecatalog'], '2015-12-10', {
  get: function get() {
    var model = __webpack_require__(80503);
    model.paginators = __webpack_require__(71855)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ServiceCatalog;


/***/ }),

/***/ 79068:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['servicecatalogappregistry'] = {};
AWS.ServiceCatalogAppRegistry = Service.defineService('servicecatalogappregistry', ['2020-06-24']);
Object.defineProperty(apiLoader.services['servicecatalogappregistry'], '2020-06-24', {
  get: function get() {
    var model = __webpack_require__(47635);
    model.paginators = __webpack_require__(67278)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ServiceCatalogAppRegistry;


/***/ }),

/***/ 91569:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['servicediscovery'] = {};
AWS.ServiceDiscovery = Service.defineService('servicediscovery', ['2017-03-14']);
Object.defineProperty(apiLoader.services['servicediscovery'], '2017-03-14', {
  get: function get() {
    var model = __webpack_require__(20459);
    model.paginators = __webpack_require__(19834)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ServiceDiscovery;


/***/ }),

/***/ 57800:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['servicequotas'] = {};
AWS.ServiceQuotas = Service.defineService('servicequotas', ['2019-06-24']);
Object.defineProperty(apiLoader.services['servicequotas'], '2019-06-24', {
  get: function get() {
    var model = __webpack_require__(14304);
    model.paginators = __webpack_require__(90635)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.ServiceQuotas;


/***/ }),

/***/ 46816:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ses'] = {};
AWS.SES = Service.defineService('ses', ['2010-12-01']);
Object.defineProperty(apiLoader.services['ses'], '2010-12-01', {
  get: function get() {
    var model = __webpack_require__(87825);
    model.paginators = __webpack_require__(61348)/* .pagination */ .o;
    model.waiters = __webpack_require__(84476)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SES;


/***/ }),

/***/ 20142:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sesv2'] = {};
AWS.SESV2 = Service.defineService('sesv2', ['2019-09-27']);
Object.defineProperty(apiLoader.services['sesv2'], '2019-09-27', {
  get: function get() {
    var model = __webpack_require__(32530);
    model.paginators = __webpack_require__(39567)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SESV2;


/***/ }),

/***/ 20271:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['shield'] = {};
AWS.Shield = Service.defineService('shield', ['2016-06-02']);
Object.defineProperty(apiLoader.services['shield'], '2016-06-02', {
  get: function get() {
    var model = __webpack_require__(78621);
    model.paginators = __webpack_require__(75743)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Shield;


/***/ }),

/***/ 71596:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['signer'] = {};
AWS.Signer = Service.defineService('signer', ['2017-08-25']);
Object.defineProperty(apiLoader.services['signer'], '2017-08-25', {
  get: function get() {
    var model = __webpack_require__(21884);
    model.paginators = __webpack_require__(69839)/* .pagination */ .o;
    model.waiters = __webpack_require__(61331)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Signer;


/***/ }),

/***/ 10120:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['simpledb'] = {};
AWS.SimpleDB = Service.defineService('simpledb', ['2009-04-15']);
Object.defineProperty(apiLoader.services['simpledb'], '2009-04-15', {
  get: function get() {
    var model = __webpack_require__(96016);
    model.paginators = __webpack_require__(73820)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SimpleDB;


/***/ }),

/***/ 57719:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sms'] = {};
AWS.SMS = Service.defineService('sms', ['2016-10-24']);
Object.defineProperty(apiLoader.services['sms'], '2016-10-24', {
  get: function get() {
    var model = __webpack_require__(51530);
    model.paginators = __webpack_require__(72874)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SMS;


/***/ }),

/***/ 510:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['snowball'] = {};
AWS.Snowball = Service.defineService('snowball', ['2016-06-30']);
Object.defineProperty(apiLoader.services['snowball'], '2016-06-30', {
  get: function get() {
    var model = __webpack_require__(41624);
    model.paginators = __webpack_require__(14147)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Snowball;


/***/ }),

/***/ 28581:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sns'] = {};
AWS.SNS = Service.defineService('sns', ['2010-03-31']);
Object.defineProperty(apiLoader.services['sns'], '2010-03-31', {
  get: function get() {
    var model = __webpack_require__(86384);
    model.paginators = __webpack_require__(92788)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SNS;


/***/ }),

/***/ 63172:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sqs'] = {};
AWS.SQS = Service.defineService('sqs', ['2012-11-05']);
__webpack_require__(94571);
Object.defineProperty(apiLoader.services['sqs'], '2012-11-05', {
  get: function get() {
    var model = __webpack_require__(31635);
    model.paginators = __webpack_require__(48324)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SQS;


/***/ }),

/***/ 83380:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ssm'] = {};
AWS.SSM = Service.defineService('ssm', ['2014-11-06']);
Object.defineProperty(apiLoader.services['ssm'], '2014-11-06', {
  get: function get() {
    var model = __webpack_require__(7667);
    model.paginators = __webpack_require__(84951)/* .pagination */ .o;
    model.waiters = __webpack_require__(80315)/* .waiters */ .V;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SSM;


/***/ }),

/***/ 71096:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sso'] = {};
AWS.SSO = Service.defineService('sso', ['2019-06-10']);
Object.defineProperty(apiLoader.services['sso'], '2019-06-10', {
  get: function get() {
    var model = __webpack_require__(77888);
    model.paginators = __webpack_require__(18046)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SSO;


/***/ }),

/***/ 66644:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ssoadmin'] = {};
AWS.SSOAdmin = Service.defineService('ssoadmin', ['2020-07-20']);
Object.defineProperty(apiLoader.services['ssoadmin'], '2020-07-20', {
  get: function get() {
    var model = __webpack_require__(93165);
    model.paginators = __webpack_require__(61022)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SSOAdmin;


/***/ }),

/***/ 49870:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['ssooidc'] = {};
AWS.SSOOIDC = Service.defineService('ssooidc', ['2019-06-10']);
Object.defineProperty(apiLoader.services['ssooidc'], '2019-06-10', {
  get: function get() {
    var model = __webpack_require__(43979);
    model.paginators = __webpack_require__(16125)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SSOOIDC;


/***/ }),

/***/ 8136:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['stepfunctions'] = {};
AWS.StepFunctions = Service.defineService('stepfunctions', ['2016-11-23']);
Object.defineProperty(apiLoader.services['stepfunctions'], '2016-11-23', {
  get: function get() {
    var model = __webpack_require__(58492);
    model.paginators = __webpack_require__(95424)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.StepFunctions;


/***/ }),

/***/ 89190:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['storagegateway'] = {};
AWS.StorageGateway = Service.defineService('storagegateway', ['2013-06-30']);
Object.defineProperty(apiLoader.services['storagegateway'], '2013-06-30', {
  get: function get() {
    var model = __webpack_require__(33480);
    model.paginators = __webpack_require__(6062)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.StorageGateway;


/***/ }),

/***/ 57513:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['sts'] = {};
AWS.STS = Service.defineService('sts', ['2011-06-15']);
__webpack_require__(91055);
Object.defineProperty(apiLoader.services['sts'], '2011-06-15', {
  get: function get() {
    var model = __webpack_require__(18976);
    model.paginators = __webpack_require__(82952)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.STS;


/***/ }),

/***/ 1099:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['support'] = {};
AWS.Support = Service.defineService('support', ['2013-04-15']);
Object.defineProperty(apiLoader.services['support'], '2013-04-15', {
  get: function get() {
    var model = __webpack_require__(77180);
    model.paginators = __webpack_require__(83878)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Support;


/***/ }),

/***/ 32327:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['swf'] = {};
AWS.SWF = Service.defineService('swf', ['2012-01-25']);
__webpack_require__(31987);
Object.defineProperty(apiLoader.services['swf'], '2012-01-25', {
  get: function get() {
    var model = __webpack_require__(4974);
    model.paginators = __webpack_require__(65798)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.SWF;


/***/ }),

/***/ 25910:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['synthetics'] = {};
AWS.Synthetics = Service.defineService('synthetics', ['2017-10-11']);
Object.defineProperty(apiLoader.services['synthetics'], '2017-10-11', {
  get: function get() {
    var model = __webpack_require__(82853);
    model.paginators = __webpack_require__(27742)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Synthetics;


/***/ }),

/***/ 58523:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['textract'] = {};
AWS.Textract = Service.defineService('textract', ['2018-06-27']);
Object.defineProperty(apiLoader.services['textract'], '2018-06-27', {
  get: function get() {
    var model = __webpack_require__(66368);
    model.paginators = __webpack_require__(75909)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Textract;


/***/ }),

/***/ 24529:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['timestreamquery'] = {};
AWS.TimestreamQuery = Service.defineService('timestreamquery', ['2018-11-01']);
Object.defineProperty(apiLoader.services['timestreamquery'], '2018-11-01', {
  get: function get() {
    var model = __webpack_require__(27578);
    model.paginators = __webpack_require__(99094)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.TimestreamQuery;


/***/ }),

/***/ 1573:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['timestreamwrite'] = {};
AWS.TimestreamWrite = Service.defineService('timestreamwrite', ['2018-11-01']);
Object.defineProperty(apiLoader.services['timestreamwrite'], '2018-11-01', {
  get: function get() {
    var model = __webpack_require__(79095);
    model.paginators = __webpack_require__(50262)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.TimestreamWrite;


/***/ }),

/***/ 75811:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['transcribeservice'] = {};
AWS.TranscribeService = Service.defineService('transcribeservice', ['2017-10-26']);
Object.defineProperty(apiLoader.services['transcribeservice'], '2017-10-26', {
  get: function get() {
    var model = __webpack_require__(10903);
    model.paginators = __webpack_require__(92036)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.TranscribeService;


/***/ }),

/***/ 51585:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['transfer'] = {};
AWS.Transfer = Service.defineService('transfer', ['2018-11-05']);
Object.defineProperty(apiLoader.services['transfer'], '2018-11-05', {
  get: function get() {
    var model = __webpack_require__(42419);
    model.paginators = __webpack_require__(70586)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Transfer;


/***/ }),

/***/ 72544:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['translate'] = {};
AWS.Translate = Service.defineService('translate', ['2017-07-01']);
Object.defineProperty(apiLoader.services['translate'], '2017-07-01', {
  get: function get() {
    var model = __webpack_require__(12983);
    model.paginators = __webpack_require__(85886)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.Translate;


/***/ }),

/***/ 72742:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['waf'] = {};
AWS.WAF = Service.defineService('waf', ['2015-08-24']);
Object.defineProperty(apiLoader.services['waf'], '2015-08-24', {
  get: function get() {
    var model = __webpack_require__(93997);
    model.paginators = __webpack_require__(45770)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WAF;


/***/ }),

/***/ 23153:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['wafregional'] = {};
AWS.WAFRegional = Service.defineService('wafregional', ['2016-11-28']);
Object.defineProperty(apiLoader.services['wafregional'], '2016-11-28', {
  get: function get() {
    var model = __webpack_require__(72867);
    model.paginators = __webpack_require__(68917)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WAFRegional;


/***/ }),

/***/ 50353:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['wafv2'] = {};
AWS.WAFV2 = Service.defineService('wafv2', ['2019-07-29']);
Object.defineProperty(apiLoader.services['wafv2'], '2019-07-29', {
  get: function get() {
    var model = __webpack_require__(27916);
    model.paginators = __webpack_require__(51265)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WAFV2;


/***/ }),

/***/ 86263:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['wellarchitected'] = {};
AWS.WellArchitected = Service.defineService('wellarchitected', ['2020-03-31']);
Object.defineProperty(apiLoader.services['wellarchitected'], '2020-03-31', {
  get: function get() {
    var model = __webpack_require__(5684);
    model.paginators = __webpack_require__(47645)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WellArchitected;


/***/ }),

/***/ 38835:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['workdocs'] = {};
AWS.WorkDocs = Service.defineService('workdocs', ['2016-05-01']);
Object.defineProperty(apiLoader.services['workdocs'], '2016-05-01', {
  get: function get() {
    var model = __webpack_require__(12789);
    model.paginators = __webpack_require__(20074)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WorkDocs;


/***/ }),

/***/ 48579:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['worklink'] = {};
AWS.WorkLink = Service.defineService('worklink', ['2018-09-25']);
Object.defineProperty(apiLoader.services['worklink'], '2018-09-25', {
  get: function get() {
    var model = __webpack_require__(44786);
    model.paginators = __webpack_require__(88012)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WorkLink;


/***/ }),

/***/ 38374:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['workmail'] = {};
AWS.WorkMail = Service.defineService('workmail', ['2017-10-01']);
Object.defineProperty(apiLoader.services['workmail'], '2017-10-01', {
  get: function get() {
    var model = __webpack_require__(31611);
    model.paginators = __webpack_require__(64931)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WorkMail;


/***/ }),

/***/ 67025:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['workmailmessageflow'] = {};
AWS.WorkMailMessageFlow = Service.defineService('workmailmessageflow', ['2019-05-01']);
Object.defineProperty(apiLoader.services['workmailmessageflow'], '2019-05-01', {
  get: function get() {
    var model = __webpack_require__(15648);
    model.paginators = __webpack_require__(88532)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WorkMailMessageFlow;


/***/ }),

/***/ 25513:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['workspaces'] = {};
AWS.WorkSpaces = Service.defineService('workspaces', ['2015-04-08']);
Object.defineProperty(apiLoader.services['workspaces'], '2015-04-08', {
  get: function get() {
    var model = __webpack_require__(66372);
    model.paginators = __webpack_require__(37567)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.WorkSpaces;


/***/ }),

/***/ 41548:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);
var AWS = __webpack_require__(28437);
var Service = AWS.Service;
var apiLoader = AWS.apiLoader;

apiLoader.services['xray'] = {};
AWS.XRay = Service.defineService('xray', ['2016-04-12']);
Object.defineProperty(apiLoader.services['xray'], '2016-04-12', {
  get: function get() {
    var model = __webpack_require__(37289);
    model.paginators = __webpack_require__(83127)/* .pagination */ .o;
    return model;
  },
  enumerable: true,
  configurable: true
});

module.exports = AWS.XRay;


/***/ }),

/***/ 52793:
/***/ ((module) => {

function apiLoader(svc, version) {
  if (!apiLoader.services.hasOwnProperty(svc)) {
    throw new Error('InvalidService: Failed to load api for ' + svc);
  }
  return apiLoader.services[svc][version];
}

/**
 * @api private
 *
 * This member of AWS.apiLoader is private, but changing it will necessitate a
 * change to ../scripts/services-table-generator.ts
 */
apiLoader.services = {};

/**
 * @api private
 */
module.exports = apiLoader;


/***/ }),

/***/ 71786:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(73639);

var AWS = __webpack_require__(28437);

// Load all service classes
__webpack_require__(26296);

/**
 * @api private
 */
module.exports = AWS;


/***/ }),

/***/ 93260:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437),
    url = AWS.util.url,
    crypto = AWS.util.crypto.lib,
    base64Encode = AWS.util.base64.encode,
    inherit = AWS.util.inherit;

var queryEncode = function (string) {
    var replacements = {
        '+': '-',
        '=': '_',
        '/': '~'
    };
    return string.replace(/[\+=\/]/g, function (match) {
        return replacements[match];
    });
};

var signPolicy = function (policy, privateKey) {
    var sign = crypto.createSign('RSA-SHA1');
    sign.write(policy);
    return queryEncode(sign.sign(privateKey, 'base64'));
};

var signWithCannedPolicy = function (url, expires, keyPairId, privateKey) {
    var policy = JSON.stringify({
        Statement: [
            {
                Resource: url,
                Condition: { DateLessThan: { 'AWS:EpochTime': expires } }
            }
        ]
    });

    return {
        Expires: expires,
        'Key-Pair-Id': keyPairId,
        Signature: signPolicy(policy.toString(), privateKey)
    };
};

var signWithCustomPolicy = function (policy, keyPairId, privateKey) {
    policy = policy.replace(/\s/mg, '');

    return {
        Policy: queryEncode(base64Encode(policy)),
        'Key-Pair-Id': keyPairId,
        Signature: signPolicy(policy, privateKey)
    };
};

var determineScheme = function (url) {
    var parts = url.split('://');
    if (parts.length < 2) {
        throw new Error('Invalid URL.');
    }

    return parts[0].replace('*', '');
};

var getRtmpUrl = function (rtmpUrl) {
    var parsed = url.parse(rtmpUrl);
    return parsed.path.replace(/^\//, '') + (parsed.hash || '');
};

var getResource = function (url) {
    switch (determineScheme(url)) {
        case 'http':
        case 'https':
            return url;
        case 'rtmp':
            return getRtmpUrl(url);
        default:
            throw new Error('Invalid URI scheme. Scheme must be one of'
                + ' http, https, or rtmp');
    }
};

var handleError = function (err, callback) {
    if (!callback || typeof callback !== 'function') {
        throw err;
    }

    callback(err);
};

var handleSuccess = function (result, callback) {
    if (!callback || typeof callback !== 'function') {
        return result;
    }

    callback(null, result);
};

AWS.CloudFront.Signer = inherit({
    /**
     * A signer object can be used to generate signed URLs and cookies for granting
     * access to content on restricted CloudFront distributions.
     *
     * @see http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
     *
     * @param keyPairId [String]    (Required) The ID of the CloudFront key pair
     *                              being used.
     * @param privateKey [String]   (Required) A private key in RSA format.
     */
    constructor: function Signer(keyPairId, privateKey) {
        if (keyPairId === void 0 || privateKey === void 0) {
            throw new Error('A key pair ID and private key are required');
        }

        this.keyPairId = keyPairId;
        this.privateKey = privateKey;
    },

    /**
     * Create a signed Amazon CloudFront Cookie.
     *
     * @param options [Object]            The options to create a signed cookie.
     * @option options url [String]     The URL to which the signature will grant
     *                                  access. Required unless you pass in a full
     *                                  policy.
     * @option options expires [Number] A Unix UTC timestamp indicating when the
     *                                  signature should expire. Required unless you
     *                                  pass in a full policy.
     * @option options policy [String]  A CloudFront JSON policy. Required unless
     *                                  you pass in a url and an expiry time.
     *
     * @param cb [Function] if a callback is provided, this function will
     *   pass the hash as the second parameter (after the error parameter) to
     *   the callback function.
     *
     * @return [Object] if called synchronously (with no callback), returns the
     *   signed cookie parameters.
     * @return [null] nothing is returned if a callback is provided.
     */
    getSignedCookie: function (options, cb) {
        var signatureHash = 'policy' in options
            ? signWithCustomPolicy(options.policy, this.keyPairId, this.privateKey)
            : signWithCannedPolicy(options.url, options.expires, this.keyPairId, this.privateKey);

        var cookieHash = {};
        for (var key in signatureHash) {
            if (Object.prototype.hasOwnProperty.call(signatureHash, key)) {
                cookieHash['CloudFront-' + key] = signatureHash[key];
            }
        }

        return handleSuccess(cookieHash, cb);
    },

    /**
     * Create a signed Amazon CloudFront URL.
     *
     * Keep in mind that URLs meant for use in media/flash players may have
     * different requirements for URL formats (e.g. some require that the
     * extension be removed, some require the file name to be prefixed
     * - mp4:<path>, some require you to add "/cfx/st" into your URL).
     *
     * @param options [Object]          The options to create a signed URL.
     * @option options url [String]     The URL to which the signature will grant
     *                                  access. Any query params included with
     *                                  the URL should be encoded. Required.
     * @option options expires [Number] A Unix UTC timestamp indicating when the
     *                                  signature should expire. Required unless you
     *                                  pass in a full policy.
     * @option options policy [String]  A CloudFront JSON policy. Required unless
     *                                  you pass in a url and an expiry time.
     *
     * @param cb [Function] if a callback is provided, this function will
     *   pass the URL as the second parameter (after the error parameter) to
     *   the callback function.
     *
     * @return [String] if called synchronously (with no callback), returns the
     *   signed URL.
     * @return [null] nothing is returned if a callback is provided.
     */
    getSignedUrl: function (options, cb) {
        try {
            var resource = getResource(options.url);
        } catch (err) {
            return handleError(err, cb);
        }

        var parsedUrl = url.parse(options.url, true),
            signatureHash = Object.prototype.hasOwnProperty.call(options, 'policy')
                ? signWithCustomPolicy(options.policy, this.keyPairId, this.privateKey)
                : signWithCannedPolicy(resource, options.expires, this.keyPairId, this.privateKey);

        parsedUrl.search = null;
        for (var key in signatureHash) {
            if (Object.prototype.hasOwnProperty.call(signatureHash, key)) {
                parsedUrl.query[key] = signatureHash[key];
            }
        }

        try {
            var signedUrl = determineScheme(options.url) === 'rtmp'
                    ? getRtmpUrl(url.format(parsedUrl))
                    : url.format(parsedUrl);
        } catch (err) {
            return handleError(err, cb);
        }

        return handleSuccess(signedUrl, cb);
    }
});

/**
 * @api private
 */
module.exports = AWS.CloudFront.Signer;


/***/ }),

/***/ 38110:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
__webpack_require__(53819);
__webpack_require__(36965);
var PromisesDependency;

/**
 * The main configuration class used by all service objects to set
 * the region, credentials, and other options for requests.
 *
 * By default, credentials and region settings are left unconfigured.
 * This should be configured by the application before using any
 * AWS service APIs.
 *
 * In order to set global configuration options, properties should
 * be assigned to the global {AWS.config} object.
 *
 * @see AWS.config
 *
 * @!group General Configuration Options
 *
 * @!attribute credentials
 *   @return [AWS.Credentials] the AWS credentials to sign requests with.
 *
 * @!attribute region
 *   @example Set the global region setting to us-west-2
 *     AWS.config.update({region: 'us-west-2'});
 *   @return [AWS.Credentials] The region to send service requests to.
 *   @see http://docs.amazonwebservices.com/general/latest/gr/rande.html
 *     A list of available endpoints for each AWS service
 *
 * @!attribute maxRetries
 *   @return [Integer] the maximum amount of retries to perform for a
 *     service request. By default this value is calculated by the specific
 *     service object that the request is being made to.
 *
 * @!attribute maxRedirects
 *   @return [Integer] the maximum amount of redirects to follow for a
 *     service request. Defaults to 10.
 *
 * @!attribute paramValidation
 *   @return [Boolean|map] whether input parameters should be validated against
 *     the operation description before sending the request. Defaults to true.
 *     Pass a map to enable any of the following specific validation features:
 *
 *     * **min** [Boolean] &mdash; Validates that a value meets the min
 *       constraint. This is enabled by default when paramValidation is set
 *       to `true`.
 *     * **max** [Boolean] &mdash; Validates that a value meets the max
 *       constraint.
 *     * **pattern** [Boolean] &mdash; Validates that a string value matches a
 *       regular expression.
 *     * **enum** [Boolean] &mdash; Validates that a string value matches one
 *       of the allowable enum values.
 *
 * @!attribute computeChecksums
 *   @return [Boolean] whether to compute checksums for payload bodies when
 *     the service accepts it (currently supported in S3 only).
 *
 * @!attribute convertResponseTypes
 *   @return [Boolean] whether types are converted when parsing response data.
 *     Currently only supported for JSON based services. Turning this off may
 *     improve performance on large response payloads. Defaults to `true`.
 *
 * @!attribute correctClockSkew
 *   @return [Boolean] whether to apply a clock skew correction and retry
 *     requests that fail because of an skewed client clock. Defaults to
 *     `false`.
 *
 * @!attribute sslEnabled
 *   @return [Boolean] whether SSL is enabled for requests
 *
 * @!attribute s3ForcePathStyle
 *   @return [Boolean] whether to force path style URLs for S3 objects
 *
 * @!attribute s3BucketEndpoint
 *   @note Setting this configuration option requires an `endpoint` to be
 *     provided explicitly to the service constructor.
 *   @return [Boolean] whether the provided endpoint addresses an individual
 *     bucket (false if it addresses the root API endpoint).
 *
 * @!attribute s3DisableBodySigning
 *   @return [Boolean] whether to disable S3 body signing when using signature version `v4`.
 *     Body signing can only be disabled when using https. Defaults to `true`.
 *
 * @!attribute s3UsEast1RegionalEndpoint
 *   @return ['legacy'|'regional'] when region is set to 'us-east-1', whether to send s3
 *     request to global endpoints or 'us-east-1' regional endpoints. This config is only
 *     applicable to S3 client;
 *     Defaults to 'legacy'
 * @!attribute s3UseArnRegion
 *   @return [Boolean] whether to override the request region with the region inferred
 *     from requested resource's ARN. Only available for S3 buckets
 *     Defaults to `true`
 *
 * @!attribute useAccelerateEndpoint
 *   @note This configuration option is only compatible with S3 while accessing
 *     dns-compatible buckets.
 *   @return [Boolean] Whether to use the Accelerate endpoint with the S3 service.
 *     Defaults to `false`.
 *
 * @!attribute retryDelayOptions
 *   @example Set the base retry delay for all services to 300 ms
 *     AWS.config.update({retryDelayOptions: {base: 300}});
 *     // Delays with maxRetries = 3: 300, 600, 1200
 *   @example Set a custom backoff function to provide delay values on retries
 *     AWS.config.update({retryDelayOptions: {customBackoff: function(retryCount, err) {
 *       // returns delay in ms
 *     }}});
 *   @return [map] A set of options to configure the retry delay on retryable errors.
 *     Currently supported options are:
 *
 *     * **base** [Integer] &mdash; The base number of milliseconds to use in the
 *       exponential backoff for operation retries. Defaults to 100 ms for all services except
 *       DynamoDB, where it defaults to 50ms.
 *
 *     * **customBackoff ** [function] &mdash; A custom function that accepts a
 *       retry count and error and returns the amount of time to delay in
 *       milliseconds. If the result is a non-zero negative value, no further
 *       retry attempts will be made. The `base` option will be ignored if this
 *       option is supplied. The function is only called for retryable errors.
 *
 * @!attribute httpOptions
 *   @return [map] A set of options to pass to the low-level HTTP request.
 *     Currently supported options are:
 *
 *     * **proxy** [String] &mdash; the URL to proxy requests through
 *     * **agent** [http.Agent, https.Agent] &mdash; the Agent object to perform
 *       HTTP requests with. Used for connection pooling. Note that for
 *       SSL connections, a special Agent object is used in order to enable
 *       peer certificate verification. This feature is only supported in the
 *       Node.js environment.
 *     * **connectTimeout** [Integer] &mdash; Sets the socket to timeout after
 *       failing to establish a connection with the server after
 *       `connectTimeout` milliseconds. This timeout has no effect once a socket
 *       connection has been established.
 *     * **timeout** [Integer] &mdash; The number of milliseconds a request can
 *       take before automatically being terminated.
 *       Defaults to two minutes (120000).
 *     * **xhrAsync** [Boolean] &mdash; Whether the SDK will send asynchronous
 *       HTTP requests. Used in the browser environment only. Set to false to
 *       send requests synchronously. Defaults to true (async on).
 *     * **xhrWithCredentials** [Boolean] &mdash; Sets the "withCredentials"
 *       property of an XMLHttpRequest object. Used in the browser environment
 *       only. Defaults to false.
 * @!attribute logger
 *   @return [#write,#log] an object that responds to .write() (like a stream)
 *     or .log() (like the console object) in order to log information about
 *     requests
 *
 * @!attribute systemClockOffset
 *   @return [Number] an offset value in milliseconds to apply to all signing
 *     times. Use this to compensate for clock skew when your system may be
 *     out of sync with the service time. Note that this configuration option
 *     can only be applied to the global `AWS.config` object and cannot be
 *     overridden in service-specific configuration. Defaults to 0 milliseconds.
 *
 * @!attribute signatureVersion
 *   @return [String] the signature version to sign requests with (overriding
 *     the API configuration). Possible values are: 'v2', 'v3', 'v4'.
 *
 * @!attribute signatureCache
 *   @return [Boolean] whether the signature to sign requests with (overriding
 *     the API configuration) is cached. Only applies to the signature version 'v4'.
 *     Defaults to `true`.
 *
 * @!attribute endpointDiscoveryEnabled
 *   @return [Boolean|undefined] whether to call operations with endpoints
 *     given by service dynamically. Setting this config to `true` will enable
 *     endpoint discovery for all applicable operations. Setting it to `false`
 *     will explicitly disable endpoint discovery even though operations that
 *     require endpoint discovery will presumably fail. Leaving it to
 *     `undefined` means SDK only do endpoint discovery when it's required.
 *     Defaults to `undefined`
 *
 * @!attribute endpointCacheSize
 *   @return [Number] the size of the global cache storing endpoints from endpoint
 *     discovery operations. Once endpoint cache is created, updating this setting
 *     cannot change existing cache size.
 *     Defaults to 1000
 *
 * @!attribute hostPrefixEnabled
 *   @return [Boolean] whether to marshal request parameters to the prefix of
 *     hostname. Defaults to `true`.
 *
 * @!attribute stsRegionalEndpoints
 *   @return ['legacy'|'regional'] whether to send sts request to global endpoints or
 *     regional endpoints.
 *     Defaults to 'legacy'
 */
AWS.Config = AWS.util.inherit({
  /**
   * @!endgroup
   */

  /**
   * Creates a new configuration object. This is the object that passes
   * option data along to service requests, including credentials, security,
   * region information, and some service specific settings.
   *
   * @example Creating a new configuration object with credentials and region
   *   var config = new AWS.Config({
   *     accessKeyId: 'AKID', secretAccessKey: 'SECRET', region: 'us-west-2'
   *   });
   * @option options accessKeyId [String] your AWS access key ID.
   * @option options secretAccessKey [String] your AWS secret access key.
   * @option options sessionToken [AWS.Credentials] the optional AWS
   *   session token to sign requests with.
   * @option options credentials [AWS.Credentials] the AWS credentials
   *   to sign requests with. You can either specify this object, or
   *   specify the accessKeyId and secretAccessKey options directly.
   * @option options credentialProvider [AWS.CredentialProviderChain] the
   *   provider chain used to resolve credentials if no static `credentials`
   *   property is set.
   * @option options region [String] the region to send service requests to.
   *   See {region} for more information.
   * @option options maxRetries [Integer] the maximum amount of retries to
   *   attempt with a request. See {maxRetries} for more information.
   * @option options maxRedirects [Integer] the maximum amount of redirects to
   *   follow with a request. See {maxRedirects} for more information.
   * @option options sslEnabled [Boolean] whether to enable SSL for
   *   requests.
   * @option options paramValidation [Boolean|map] whether input parameters
   *   should be validated against the operation description before sending
   *   the request. Defaults to true. Pass a map to enable any of the
   *   following specific validation features:
   *
   *   * **min** [Boolean] &mdash; Validates that a value meets the min
   *     constraint. This is enabled by default when paramValidation is set
   *     to `true`.
   *   * **max** [Boolean] &mdash; Validates that a value meets the max
   *     constraint.
   *   * **pattern** [Boolean] &mdash; Validates that a string value matches a
   *     regular expression.
   *   * **enum** [Boolean] &mdash; Validates that a string value matches one
   *     of the allowable enum values.
   * @option options computeChecksums [Boolean] whether to compute checksums
   *   for payload bodies when the service accepts it (currently supported
   *   in S3 only)
   * @option options convertResponseTypes [Boolean] whether types are converted
   *     when parsing response data. Currently only supported for JSON based
   *     services. Turning this off may improve performance on large response
   *     payloads. Defaults to `true`.
   * @option options correctClockSkew [Boolean] whether to apply a clock skew
   *     correction and retry requests that fail because of an skewed client
   *     clock. Defaults to `false`.
   * @option options s3ForcePathStyle [Boolean] whether to force path
   *   style URLs for S3 objects.
   * @option options s3BucketEndpoint [Boolean] whether the provided endpoint
   *   addresses an individual bucket (false if it addresses the root API
   *   endpoint). Note that setting this configuration option requires an
   *   `endpoint` to be provided explicitly to the service constructor.
   * @option options s3DisableBodySigning [Boolean] whether S3 body signing
   *   should be disabled when using signature version `v4`. Body signing
   *   can only be disabled when using https. Defaults to `true`.
   * @option options s3UsEast1RegionalEndpoint ['legacy'|'regional'] when region
   *   is set to 'us-east-1', whether to send s3 request to global endpoints or
   *   'us-east-1' regional endpoints. This config is only applicable to S3 client.
   *   Defaults to `legacy`
   * @option options s3UseArnRegion [Boolean] whether to override the request region
   *   with the region inferred from requested resource's ARN. Only available for S3 buckets
   *   Defaults to `true`
   *
   * @option options retryDelayOptions [map] A set of options to configure
   *   the retry delay on retryable errors. Currently supported options are:
   *
   *   * **base** [Integer] &mdash; The base number of milliseconds to use in the
   *     exponential backoff for operation retries. Defaults to 100 ms for all
   *     services except DynamoDB, where it defaults to 50ms.
   *   * **customBackoff ** [function] &mdash; A custom function that accepts a
   *     retry count and error and returns the amount of time to delay in
   *     milliseconds. If the result is a non-zero negative value, no further
   *     retry attempts will be made. The `base` option will be ignored if this
   *     option is supplied. The function is only called for retryable errors.
   * @option options httpOptions [map] A set of options to pass to the low-level
   *   HTTP request. Currently supported options are:
   *
   *   * **proxy** [String] &mdash; the URL to proxy requests through
   *   * **agent** [http.Agent, https.Agent] &mdash; the Agent object to perform
   *     HTTP requests with. Used for connection pooling. Defaults to the global
   *     agent (`http.globalAgent`) for non-SSL connections. Note that for
   *     SSL connections, a special Agent object is used in order to enable
   *     peer certificate verification. This feature is only available in the
   *     Node.js environment.
   *   * **connectTimeout** [Integer] &mdash; Sets the socket to timeout after
   *     failing to establish a connection with the server after
   *     `connectTimeout` milliseconds. This timeout has no effect once a socket
   *     connection has been established.
   *   * **timeout** [Integer] &mdash; Sets the socket to timeout after timeout
   *     milliseconds of inactivity on the socket. Defaults to two minutes
   *     (120000).
   *   * **xhrAsync** [Boolean] &mdash; Whether the SDK will send asynchronous
   *     HTTP requests. Used in the browser environment only. Set to false to
   *     send requests synchronously. Defaults to true (async on).
   *   * **xhrWithCredentials** [Boolean] &mdash; Sets the "withCredentials"
   *     property of an XMLHttpRequest object. Used in the browser environment
   *     only. Defaults to false.
   * @option options apiVersion [String, Date] a String in YYYY-MM-DD format
   *   (or a date) that represents the latest possible API version that can be
   *   used in all services (unless overridden by `apiVersions`). Specify
   *   'latest' to use the latest possible version.
   * @option options apiVersions [map<String, String|Date>] a map of service
   *   identifiers (the lowercase service class name) with the API version to
   *   use when instantiating a service. Specify 'latest' for each individual
   *   that can use the latest available version.
   * @option options logger [#write,#log] an object that responds to .write()
   *   (like a stream) or .log() (like the console object) in order to log
   *   information about requests
   * @option options systemClockOffset [Number] an offset value in milliseconds
   *   to apply to all signing times. Use this to compensate for clock skew
   *   when your system may be out of sync with the service time. Note that
   *   this configuration option can only be applied to the global `AWS.config`
   *   object and cannot be overridden in service-specific configuration.
   *   Defaults to 0 milliseconds.
   * @option options signatureVersion [String] the signature version to sign
   *   requests with (overriding the API configuration). Possible values are:
   *   'v2', 'v3', 'v4'.
   * @option options signatureCache [Boolean] whether the signature to sign
   *   requests with (overriding the API configuration) is cached. Only applies
   *   to the signature version 'v4'. Defaults to `true`.
   * @option options dynamoDbCrc32 [Boolean] whether to validate the CRC32
   *   checksum of HTTP response bodies returned by DynamoDB. Default: `true`.
   * @option options useAccelerateEndpoint [Boolean] Whether to use the
   *   S3 Transfer Acceleration endpoint with the S3 service. Default: `false`.
   * @option options clientSideMonitoring [Boolean] whether to collect and
   *   publish this client's performance metrics of all its API requests.
   * @option options endpointDiscoveryEnabled [Boolean|undefined] whether to
   *   call operations with endpoints given by service dynamically. Setting this
   * config to `true` will enable endpoint discovery for all applicable operations.
   *   Setting it to `false` will explicitly disable endpoint discovery even though
   *   operations that require endpoint discovery will presumably fail. Leaving it
   *   to `undefined` means SDK will only do endpoint discovery when it's required.
   *   Defaults to `undefined`
   * @option options endpointCacheSize [Number] the size of the global cache storing
   *   endpoints from endpoint discovery operations. Once endpoint cache is created,
   *   updating this setting cannot change existing cache size.
   *   Defaults to 1000
   * @option options hostPrefixEnabled [Boolean] whether to marshal request
   *   parameters to the prefix of hostname.
   *   Defaults to `true`.
   * @option options stsRegionalEndpoints ['legacy'|'regional'] whether to send sts request
   *   to global endpoints or regional endpoints.
   *   Defaults to 'legacy'.
   */
  constructor: function Config(options) {
    if (options === undefined) options = {};
    options = this.extractCredentials(options);

    AWS.util.each.call(this, this.keys, function (key, value) {
      this.set(key, options[key], value);
    });
  },

  /**
   * @!group Managing Credentials
   */

  /**
   * Loads credentials from the configuration object. This is used internally
   * by the SDK to ensure that refreshable {Credentials} objects are properly
   * refreshed and loaded when sending a request. If you want to ensure that
   * your credentials are loaded prior to a request, you can use this method
   * directly to provide accurate credential data stored in the object.
   *
   * @note If you configure the SDK with static or environment credentials,
   *   the credential data should already be present in {credentials} attribute.
   *   This method is primarily necessary to load credentials from asynchronous
   *   sources, or sources that can refresh credentials periodically.
   * @example Getting your access key
   *   AWS.config.getCredentials(function(err) {
   *     if (err) console.log(err.stack); // credentials not loaded
   *     else console.log("Access Key:", AWS.config.credentials.accessKeyId);
   *   })
   * @callback callback function(err)
   *   Called when the {credentials} have been properly set on the configuration
   *   object.
   *
   *   @param err [Error] if this is set, credentials were not successfully
   *     loaded and this error provides information why.
   * @see credentials
   * @see Credentials
   */
  getCredentials: function getCredentials(callback) {
    var self = this;

    function finish(err) {
      callback(err, err ? null : self.credentials);
    }

    function credError(msg, err) {
      return new AWS.util.error(err || new Error(), {
        code: 'CredentialsError',
        message: msg,
        name: 'CredentialsError'
      });
    }

    function getAsyncCredentials() {
      self.credentials.get(function(err) {
        if (err) {
          var msg = 'Could not load credentials from ' +
            self.credentials.constructor.name;
          err = credError(msg, err);
        }
        finish(err);
      });
    }

    function getStaticCredentials() {
      var err = null;
      if (!self.credentials.accessKeyId || !self.credentials.secretAccessKey) {
        err = credError('Missing credentials');
      }
      finish(err);
    }

    if (self.credentials) {
      if (typeof self.credentials.get === 'function') {
        getAsyncCredentials();
      } else { // static credentials
        getStaticCredentials();
      }
    } else if (self.credentialProvider) {
      self.credentialProvider.resolve(function(err, creds) {
        if (err) {
          err = credError('Could not load credentials from any providers', err);
        }
        self.credentials = creds;
        finish(err);
      });
    } else {
      finish(credError('No credentials to load'));
    }
  },

  /**
   * @!group Loading and Setting Configuration Options
   */

  /**
   * @overload update(options, allowUnknownKeys = false)
   *   Updates the current configuration object with new options.
   *
   *   @example Update maxRetries property of a configuration object
   *     config.update({maxRetries: 10});
   *   @param [Object] options a map of option keys and values.
   *   @param [Boolean] allowUnknownKeys whether unknown keys can be set on
   *     the configuration object. Defaults to `false`.
   *   @see constructor
   */
  update: function update(options, allowUnknownKeys) {
    allowUnknownKeys = allowUnknownKeys || false;
    options = this.extractCredentials(options);
    AWS.util.each.call(this, options, function (key, value) {
      if (allowUnknownKeys || Object.prototype.hasOwnProperty.call(this.keys, key) ||
          AWS.Service.hasService(key)) {
        this.set(key, value);
      }
    });
  },

  /**
   * Loads configuration data from a JSON file into this config object.
   * @note Loading configuration will reset all existing configuration
   *   on the object.
   * @!macro nobrowser
   * @param path [String] the path relative to your process's current
   *    working directory to load configuration from.
   * @return [AWS.Config] the same configuration object
   */
  loadFromPath: function loadFromPath(path) {
    this.clear();

    var options = JSON.parse(AWS.util.readFileSync(path));
    var fileSystemCreds = new AWS.FileSystemCredentials(path);
    var chain = new AWS.CredentialProviderChain();
    chain.providers.unshift(fileSystemCreds);
    chain.resolve(function (err, creds) {
      if (err) throw err;
      else options.credentials = creds;
    });

    this.constructor(options);

    return this;
  },

  /**
   * Clears configuration data on this object
   *
   * @api private
   */
  clear: function clear() {
    /*jshint forin:false */
    AWS.util.each.call(this, this.keys, function (key) {
      delete this[key];
    });

    // reset credential provider
    this.set('credentials', undefined);
    this.set('credentialProvider', undefined);
  },

  /**
   * Sets a property on the configuration object, allowing for a
   * default value
   * @api private
   */
  set: function set(property, value, defaultValue) {
    if (value === undefined) {
      if (defaultValue === undefined) {
        defaultValue = this.keys[property];
      }
      if (typeof defaultValue === 'function') {
        this[property] = defaultValue.call(this);
      } else {
        this[property] = defaultValue;
      }
    } else if (property === 'httpOptions' && this[property]) {
      // deep merge httpOptions
      this[property] = AWS.util.merge(this[property], value);
    } else {
      this[property] = value;
    }
  },

  /**
   * All of the keys with their default values.
   *
   * @constant
   * @api private
   */
  keys: {
    credentials: null,
    credentialProvider: null,
    region: null,
    logger: null,
    apiVersions: {},
    apiVersion: null,
    endpoint: undefined,
    httpOptions: {
      timeout: 120000
    },
    maxRetries: undefined,
    maxRedirects: 10,
    paramValidation: true,
    sslEnabled: true,
    s3ForcePathStyle: false,
    s3BucketEndpoint: false,
    s3DisableBodySigning: true,
    s3UsEast1RegionalEndpoint: 'legacy',
    s3UseArnRegion: undefined,
    computeChecksums: true,
    convertResponseTypes: true,
    correctClockSkew: false,
    customUserAgent: null,
    dynamoDbCrc32: true,
    systemClockOffset: 0,
    signatureVersion: null,
    signatureCache: true,
    retryDelayOptions: {},
    useAccelerateEndpoint: false,
    clientSideMonitoring: false,
    endpointDiscoveryEnabled: undefined,
    endpointCacheSize: 1000,
    hostPrefixEnabled: true,
    stsRegionalEndpoints: 'legacy'
  },

  /**
   * Extracts accessKeyId, secretAccessKey and sessionToken
   * from a configuration hash.
   *
   * @api private
   */
  extractCredentials: function extractCredentials(options) {
    if (options.accessKeyId && options.secretAccessKey) {
      options = AWS.util.copy(options);
      options.credentials = new AWS.Credentials(options);
    }
    return options;
  },

  /**
   * Sets the promise dependency the SDK will use wherever Promises are returned.
   * Passing `null` will force the SDK to use native Promises if they are available.
   * If native Promises are not available, passing `null` will have no effect.
   * @param [Constructor] dep A reference to a Promise constructor
   */
  setPromisesDependency: function setPromisesDependency(dep) {
    PromisesDependency = dep;
    // if null was passed in, we should try to use native promises
    if (dep === null && typeof Promise === 'function') {
      PromisesDependency = Promise;
    }
    var constructors = [AWS.Request, AWS.Credentials, AWS.CredentialProviderChain];
    if (AWS.S3) {
      constructors.push(AWS.S3);
      if (AWS.S3.ManagedUpload) {
        constructors.push(AWS.S3.ManagedUpload);
      }
    }
    AWS.util.addPromises(constructors, PromisesDependency);
  },

  /**
   * Gets the promise dependency set by `AWS.config.setPromisesDependency`.
   */
  getPromisesDependency: function getPromisesDependency() {
    return PromisesDependency;
  }
});

/**
 * @return [AWS.Config] The global configuration object singleton instance
 * @readonly
 * @see AWS.Config
 */
AWS.config = new AWS.Config();


/***/ }),

/***/ 85566:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
/**
 * @api private
 */
function validateRegionalEndpointsFlagValue(configValue, errorOptions) {
  if (typeof configValue !== 'string') return undefined;
  else if (['legacy', 'regional'].indexOf(configValue.toLowerCase()) >= 0) {
    return configValue.toLowerCase();
  } else {
    throw AWS.util.error(new Error(), errorOptions);
  }
}

/**
 * Resolve the configuration value for regional endpoint from difference sources: client
 * config, environmental variable, shared config file. Value can be case-insensitive
 * 'legacy' or 'reginal'.
 * @param originalConfig user-supplied config object to resolve
 * @param options a map of config property names from individual configuration source
 *  - env: name of environmental variable that refers to the config
 *  - sharedConfig: name of shared configuration file property that refers to the config
 *  - clientConfig: name of client configuration property that refers to the config
 *
 * @api private
 */
function resolveRegionalEndpointsFlag(originalConfig, options) {
  originalConfig = originalConfig || {};
  //validate config value
  var resolved;
  if (originalConfig[options.clientConfig]) {
    resolved = validateRegionalEndpointsFlagValue(originalConfig[options.clientConfig], {
      code: 'InvalidConfiguration',
      message: 'invalid "' + options.clientConfig + '" configuration. Expect "legacy" ' +
      ' or "regional". Got "' + originalConfig[options.clientConfig] + '".'
    });
    if (resolved) return resolved;
  }
  if (!AWS.util.isNode()) return resolved;
  //validate environmental variable
  if (Object.prototype.hasOwnProperty.call(process.env, options.env)) {
    var envFlag = process.env[options.env];
    resolved = validateRegionalEndpointsFlagValue(envFlag, {
      code: 'InvalidEnvironmentalVariable',
      message: 'invalid ' + options.env + ' environmental variable. Expect "legacy" ' +
      ' or "regional". Got "' + process.env[options.env] + '".'
    });
    if (resolved) return resolved;
  }
  //validate shared config file
  var profile = {};
  try {
    var profiles = AWS.util.getProfilesFromSharedConfig(AWS.util.iniLoader);
    profile = profiles[process.env.AWS_PROFILE || AWS.util.defaultProfile];
  } catch (e) {};
  if (profile && Object.prototype.hasOwnProperty.call(profile, options.sharedConfig)) {
    var fileFlag = profile[options.sharedConfig];
    resolved = validateRegionalEndpointsFlagValue(fileFlag, {
      code: 'InvalidConfiguration',
      message: 'invalid ' + options.sharedConfig + ' profile config. Expect "legacy" ' +
      ' or "regional". Got "' + profile[options.sharedConfig] + '".'
    });
    if (resolved) return resolved;
  }
  return resolved;
}

module.exports = resolveRegionalEndpointsFlag;


/***/ }),

/***/ 28437:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/**
 * The main AWS namespace
 */
var AWS = { util: __webpack_require__(77985) };

/**
 * @api private
 * @!macro [new] nobrowser
 *   @note This feature is not supported in the browser environment of the SDK.
 */
var _hidden = {}; _hidden.toString(); // hack to parse macro

/**
 * @api private
 */
module.exports = AWS;

AWS.util.update(AWS, {

  /**
   * @constant
   */
  VERSION: '2.889.0',

  /**
   * @api private
   */
  Signers: {},

  /**
   * @api private
   */
  Protocol: {
    Json: __webpack_require__(30083),
    Query: __webpack_require__(90761),
    Rest: __webpack_require__(98200),
    RestJson: __webpack_require__(5883),
    RestXml: __webpack_require__(15143)
  },

  /**
   * @api private
   */
  XML: {
    Builder: __webpack_require__(23546),
    Parser: null // conditionally set based on environment
  },

  /**
   * @api private
   */
  JSON: {
    Builder: __webpack_require__(47495),
    Parser: __webpack_require__(5474)
  },

  /**
   * @api private
   */
  Model: {
    Api: __webpack_require__(17657),
    Operation: __webpack_require__(28083),
    Shape: __webpack_require__(71349),
    Paginator: __webpack_require__(45938),
    ResourceWaiter: __webpack_require__(41368)
  },

  /**
   * @api private
   */
  apiLoader: __webpack_require__(52793),

  /**
   * @api private
   */
  EndpointCache: __webpack_require__(96323)/* .EndpointCache */ .$
});
__webpack_require__(55948);
__webpack_require__(68903);
__webpack_require__(38110);
__webpack_require__(1556);
__webpack_require__(54995);
__webpack_require__(78652);
__webpack_require__(58743);
__webpack_require__(39925);
__webpack_require__(9897);
__webpack_require__(99127);

/**
 * @readonly
 * @return [AWS.SequentialExecutor] a collection of global event listeners that
 *   are attached to every sent request.
 * @see AWS.Request AWS.Request for a list of events to listen for
 * @example Logging the time taken to send a request
 *   AWS.events.on('send', function startSend(resp) {
 *     resp.startTime = new Date().getTime();
 *   }).on('complete', function calculateTime(resp) {
 *     var time = (new Date().getTime() - resp.startTime) / 1000;
 *     console.log('Request took ' + time + ' seconds');
 *   });
 *
 *   new AWS.S3().listBuckets(); // prints 'Request took 0.285 seconds'
 */
AWS.events = new AWS.SequentialExecutor();

//create endpoint cache lazily
AWS.util.memoizedProperty(AWS, 'endpointCache', function() {
  return new AWS.EndpointCache(AWS.config.endpointCacheSize);
}, true);


/***/ }),

/***/ 53819:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Represents your AWS security credentials, specifically the
 * {accessKeyId}, {secretAccessKey}, and optional {sessionToken}.
 * Creating a `Credentials` object allows you to pass around your
 * security information to configuration and service objects.
 *
 * Note that this class typically does not need to be constructed manually,
 * as the {AWS.Config} and {AWS.Service} classes both accept simple
 * options hashes with the three keys. These structures will be converted
 * into Credentials objects automatically.
 *
 * ## Expiring and Refreshing Credentials
 *
 * Occasionally credentials can expire in the middle of a long-running
 * application. In this case, the SDK will automatically attempt to
 * refresh the credentials from the storage location if the Credentials
 * class implements the {refresh} method.
 *
 * If you are implementing a credential storage location, you
 * will want to create a subclass of the `Credentials` class and
 * override the {refresh} method. This method allows credentials to be
 * retrieved from the backing store, be it a file system, database, or
 * some network storage. The method should reset the credential attributes
 * on the object.
 *
 * @!attribute expired
 *   @return [Boolean] whether the credentials have been expired and
 *     require a refresh. Used in conjunction with {expireTime}.
 * @!attribute expireTime
 *   @return [Date] a time when credentials should be considered expired. Used
 *     in conjunction with {expired}.
 * @!attribute accessKeyId
 *   @return [String] the AWS access key ID
 * @!attribute secretAccessKey
 *   @return [String] the AWS secret access key
 * @!attribute sessionToken
 *   @return [String] an optional AWS session token
 */
AWS.Credentials = AWS.util.inherit({
  /**
   * A credentials object can be created using positional arguments or an options
   * hash.
   *
   * @overload AWS.Credentials(accessKeyId, secretAccessKey, sessionToken=null)
   *   Creates a Credentials object with a given set of credential information
   *   as positional arguments.
   *   @param accessKeyId [String] the AWS access key ID
   *   @param secretAccessKey [String] the AWS secret access key
   *   @param sessionToken [String] the optional AWS session token
   *   @example Create a credentials object with AWS credentials
   *     var creds = new AWS.Credentials('akid', 'secret', 'session');
   * @overload AWS.Credentials(options)
   *   Creates a Credentials object with a given set of credential information
   *   as an options hash.
   *   @option options accessKeyId [String] the AWS access key ID
   *   @option options secretAccessKey [String] the AWS secret access key
   *   @option options sessionToken [String] the optional AWS session token
   *   @example Create a credentials object with AWS credentials
   *     var creds = new AWS.Credentials({
   *       accessKeyId: 'akid', secretAccessKey: 'secret', sessionToken: 'session'
   *     });
   */
  constructor: function Credentials() {
    // hide secretAccessKey from being displayed with util.inspect
    AWS.util.hideProperties(this, ['secretAccessKey']);

    this.expired = false;
    this.expireTime = null;
    this.refreshCallbacks = [];
    if (arguments.length === 1 && typeof arguments[0] === 'object') {
      var creds = arguments[0].credentials || arguments[0];
      this.accessKeyId = creds.accessKeyId;
      this.secretAccessKey = creds.secretAccessKey;
      this.sessionToken = creds.sessionToken;
    } else {
      this.accessKeyId = arguments[0];
      this.secretAccessKey = arguments[1];
      this.sessionToken = arguments[2];
    }
  },

  /**
   * @return [Integer] the number of seconds before {expireTime} during which
   *   the credentials will be considered expired.
   */
  expiryWindow: 15,

  /**
   * @return [Boolean] whether the credentials object should call {refresh}
   * @note Subclasses should override this method to provide custom refresh
   *   logic.
   */
  needsRefresh: function needsRefresh() {
    var currentTime = AWS.util.date.getDate().getTime();
    var adjustedTime = new Date(currentTime + this.expiryWindow * 1000);

    if (this.expireTime && adjustedTime > this.expireTime) {
      return true;
    } else {
      return this.expired || !this.accessKeyId || !this.secretAccessKey;
    }
  },

  /**
   * Gets the existing credentials, refreshing them if they are not yet loaded
   * or have expired. Users should call this method before using {refresh},
   * as this will not attempt to reload credentials when they are already
   * loaded into the object.
   *
   * @callback callback function(err)
   *   When this callback is called with no error, it means either credentials
   *   do not need to be refreshed or refreshed credentials information has
   *   been loaded into the object (as the `accessKeyId`, `secretAccessKey`,
   *   and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   */
  get: function get(callback) {
    var self = this;
    if (this.needsRefresh()) {
      this.refresh(function(err) {
        if (!err) self.expired = false; // reset expired flag
        if (callback) callback(err);
      });
    } else if (callback) {
      callback();
    }
  },

  /**
   * @!method  getPromise()
   *   Returns a 'thenable' promise.
   *   Gets the existing credentials, refreshing them if they are not yet loaded
   *   or have expired. Users should call this method before using {refresh},
   *   as this will not attempt to reload credentials when they are already
   *   loaded into the object.
   *
   *   Two callbacks can be provided to the `then` method on the returned promise.
   *   The first callback will be called if the promise is fulfilled, and the second
   *   callback will be called if the promise is rejected.
   *   @callback fulfilledCallback function()
   *     Called if the promise is fulfilled. When this callback is called, it
   *     means either credentials do not need to be refreshed or refreshed
   *     credentials information has been loaded into the object (as the
   *     `accessKeyId`, `secretAccessKey`, and `sessionToken` properties).
   *   @callback rejectedCallback function(err)
   *     Called if the promise is rejected.
   *     @param err [Error] if an error occurred, this value will be filled
   *   @return [Promise] A promise that represents the state of the `get` call.
   *   @example Calling the `getPromise` method.
   *     var promise = credProvider.getPromise();
   *     promise.then(function() { ... }, function(err) { ... });
   */

  /**
   * @!method  refreshPromise()
   *   Returns a 'thenable' promise.
   *   Refreshes the credentials. Users should call {get} before attempting
   *   to forcibly refresh credentials.
   *
   *   Two callbacks can be provided to the `then` method on the returned promise.
   *   The first callback will be called if the promise is fulfilled, and the second
   *   callback will be called if the promise is rejected.
   *   @callback fulfilledCallback function()
   *     Called if the promise is fulfilled. When this callback is called, it
   *     means refreshed credentials information has been loaded into the object
   *     (as the `accessKeyId`, `secretAccessKey`, and `sessionToken` properties).
   *   @callback rejectedCallback function(err)
   *     Called if the promise is rejected.
   *     @param err [Error] if an error occurred, this value will be filled
   *   @return [Promise] A promise that represents the state of the `refresh` call.
   *   @example Calling the `refreshPromise` method.
   *     var promise = credProvider.refreshPromise();
   *     promise.then(function() { ... }, function(err) { ... });
   */

  /**
   * Refreshes the credentials. Users should call {get} before attempting
   * to forcibly refresh credentials.
   *
   * @callback callback function(err)
   *   When this callback is called with no error, it means refreshed
   *   credentials information has been loaded into the object (as the
   *   `accessKeyId`, `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @note Subclasses should override this class to reset the
   *   {accessKeyId}, {secretAccessKey} and optional {sessionToken}
   *   on the credentials object and then call the callback with
   *   any error information.
   * @see get
   */
  refresh: function refresh(callback) {
    this.expired = false;
    callback();
  },

  /**
   * @api private
   * @param callback
   */
  coalesceRefresh: function coalesceRefresh(callback, sync) {
    var self = this;
    if (self.refreshCallbacks.push(callback) === 1) {
      self.load(function onLoad(err) {
        AWS.util.arrayEach(self.refreshCallbacks, function(callback) {
          if (sync) {
            callback(err);
          } else {
            // callback could throw, so defer to ensure all callbacks are notified
            AWS.util.defer(function () {
              callback(err);
            });
          }
        });
        self.refreshCallbacks.length = 0;
      });
    }
  },

  /**
   * @api private
   * @param callback
   */
  load: function load(callback) {
    callback();
  }
});

/**
 * @api private
 */
AWS.Credentials.addPromisesToClass = function addPromisesToClass(PromiseDependency) {
  this.prototype.getPromise = AWS.util.promisifyMethod('get', PromiseDependency);
  this.prototype.refreshPromise = AWS.util.promisifyMethod('refresh', PromiseDependency);
};

/**
 * @api private
 */
AWS.Credentials.deletePromisesFromClass = function deletePromisesFromClass() {
  delete this.prototype.getPromise;
  delete this.prototype.refreshPromise;
};

AWS.util.addPromises(AWS.Credentials);


/***/ }),

/***/ 44694:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var STS = __webpack_require__(57513);

/**
 * Represents temporary credentials retrieved from {AWS.STS}. Without any
 * extra parameters, credentials will be fetched from the
 * {AWS.STS.getSessionToken} operation. If an IAM role is provided, the
 * {AWS.STS.assumeRole} operation will be used to fetch credentials for the
 * role instead.
 *
 * AWS.ChainableTemporaryCredentials differs from AWS.TemporaryCredentials in
 * the way masterCredentials and refreshes are handled.
 * AWS.ChainableTemporaryCredentials refreshes expired credentials using the
 * masterCredentials passed by the user to support chaining of STS credentials.
 * However, AWS.TemporaryCredentials recursively collapses the masterCredentials
 * during instantiation, precluding the ability to refresh credentials which
 * require intermediate, temporary credentials.
 *
 * For example, if the application should use RoleA, which must be assumed from
 * RoleB, and the environment provides credentials which can assume RoleB, then
 * AWS.ChainableTemporaryCredentials must be used to support refreshing the
 * temporary credentials for RoleA:
 *
 * ```javascript
 * var roleACreds = new AWS.ChainableTemporaryCredentials({
 *   params: {RoleArn: 'RoleA'},
 *   masterCredentials: new AWS.ChainableTemporaryCredentials({
 *     params: {RoleArn: 'RoleB'},
 *     masterCredentials: new AWS.EnvironmentCredentials('AWS')
 *   })
 * });
 * ```
 *
 * If AWS.TemporaryCredentials had been used in the previous example,
 * `roleACreds` would fail to refresh because `roleACreds` would
 * use the environment credentials for the AssumeRole request.
 *
 * Another difference is that AWS.ChainableTemporaryCredentials creates the STS
 * service instance during instantiation while AWS.TemporaryCredentials creates
 * the STS service instance during the first refresh. Creating the service
 * instance during instantiation effectively captures the master credentials
 * from the global config, so that subsequent changes to the global config do
 * not affect the master credentials used to refresh the temporary credentials.
 *
 * This allows an instance of AWS.ChainableTemporaryCredentials to be assigned
 * to AWS.config.credentials:
 *
 * ```javascript
 * var envCreds = new AWS.EnvironmentCredentials('AWS');
 * AWS.config.credentials = envCreds;
 * // masterCredentials will be envCreds
 * AWS.config.credentials = new AWS.ChainableTemporaryCredentials({
 *   params: {RoleArn: '...'}
 * });
 * ```
 *
 * Similarly, to use the CredentialProviderChain's default providers as the
 * master credentials, simply create a new instance of
 * AWS.ChainableTemporaryCredentials:
 *
 * ```javascript
 * AWS.config.credentials = new ChainableTemporaryCredentials({
 *   params: {RoleArn: '...'}
 * });
 * ```
 *
 * @!attribute service
 *   @return [AWS.STS] the STS service instance used to
 *     get and refresh temporary credentials from AWS STS.
 * @note (see constructor)
 */
AWS.ChainableTemporaryCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * Creates a new temporary credentials object.
   *
   * @param options [map] a set of options
   * @option options params [map] ({}) a map of options that are passed to the
   *   {AWS.STS.assumeRole} or {AWS.STS.getSessionToken} operations.
   *   If a `RoleArn` parameter is passed in, credentials will be based on the
   *   IAM role. If a `SerialNumber` parameter is passed in, {tokenCodeFn} must
   *   also be passed in or an error will be thrown.
   * @option options masterCredentials [AWS.Credentials] the master credentials
   *   used to get and refresh temporary credentials from AWS STS. By default,
   *   AWS.config.credentials or AWS.config.credentialProvider will be used.
   * @option options tokenCodeFn [Function] (null) Function to provide
   *   `TokenCode`, if `SerialNumber` is provided for profile in {params}. Function
   *   is called with value of `SerialNumber` and `callback`, and should provide
   *   the `TokenCode` or an error to the callback in the format
   *   `callback(err, token)`.
   * @example Creating a new credentials object for generic temporary credentials
   *   AWS.config.credentials = new AWS.ChainableTemporaryCredentials();
   * @example Creating a new credentials object for an IAM role
   *   AWS.config.credentials = new AWS.ChainableTemporaryCredentials({
   *     params: {
   *       RoleArn: 'arn:aws:iam::1234567890:role/TemporaryCredentials'
   *     }
   *   });
   * @see AWS.STS.assumeRole
   * @see AWS.STS.getSessionToken
   */
  constructor: function ChainableTemporaryCredentials(options) {
    AWS.Credentials.call(this);
    options = options || {};
    this.errorCode = 'ChainableTemporaryCredentialsProviderFailure';
    this.expired = true;
    this.tokenCodeFn = null;

    var params = AWS.util.copy(options.params) || {};
    if (params.RoleArn) {
      params.RoleSessionName = params.RoleSessionName || 'temporary-credentials';
    }
    if (params.SerialNumber) {
      if (!options.tokenCodeFn || (typeof options.tokenCodeFn !== 'function')) {
        throw new AWS.util.error(
          new Error('tokenCodeFn must be a function when params.SerialNumber is given'),
          {code: this.errorCode}
        );
      } else {
        this.tokenCodeFn = options.tokenCodeFn;
      }
    }
    var config = AWS.util.merge(
      {
        params: params,
        credentials: options.masterCredentials || AWS.config.credentials
      },
      options.stsConfig || {}
    );
    this.service = new STS(config);
  },

  /**
   * Refreshes credentials using {AWS.STS.assumeRole} or
   * {AWS.STS.getSessionToken}, depending on whether an IAM role ARN was passed
   * to the credentials {constructor}.
   *
   * @callback callback function(err)
   *   Called when the STS service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see AWS.Credentials.get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   * @param callback
   */
  load: function load(callback) {
    var self = this;
    var operation = self.service.config.params.RoleArn ? 'assumeRole' : 'getSessionToken';
    this.getTokenCode(function (err, tokenCode) {
      var params = {};
      if (err) {
        callback(err);
        return;
      }
      if (tokenCode) {
        params.TokenCode = tokenCode;
      }
      self.service[operation](params, function (err, data) {
        if (!err) {
          self.service.credentialsFrom(data, self);
        }
        callback(err);
      });
    });
  },

  /**
   * @api private
   */
  getTokenCode: function getTokenCode(callback) {
    var self = this;
    if (this.tokenCodeFn) {
      this.tokenCodeFn(this.service.config.params.SerialNumber, function (err, token) {
        if (err) {
          var message = err;
          if (err instanceof Error) {
            message = err.message;
          }
          callback(
            AWS.util.error(
              new Error('Error fetching MFA token: ' + message),
              { code: self.errorCode}
            )
          );
          return;
        }
        callback(null, token);
      });
    } else {
      callback(null);
    }
  }
});


/***/ }),

/***/ 3498:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var CognitoIdentity = __webpack_require__(58291);
var STS = __webpack_require__(57513);

/**
 * Represents credentials retrieved from STS Web Identity Federation using
 * the Amazon Cognito Identity service.
 *
 * By default this provider gets credentials using the
 * {AWS.CognitoIdentity.getCredentialsForIdentity} service operation, which
 * requires either an `IdentityId` or an `IdentityPoolId` (Amazon Cognito
 * Identity Pool ID), which is used to call {AWS.CognitoIdentity.getId} to
 * obtain an `IdentityId`. If the identity or identity pool is not configured in
 * the Amazon Cognito Console to use IAM roles with the appropriate permissions,
 * then additionally a `RoleArn` is required containing the ARN of the IAM trust
 * policy for the Amazon Cognito role that the user will log into. If a `RoleArn`
 * is provided, then this provider gets credentials using the
 * {AWS.STS.assumeRoleWithWebIdentity} service operation, after first getting an
 * Open ID token from {AWS.CognitoIdentity.getOpenIdToken}.
 *
 * In addition, if this credential provider is used to provide authenticated
 * login, the `Logins` map may be set to the tokens provided by the respective
 * identity providers. See {constructor} for an example on creating a credentials
 * object with proper property values.
 *
 * ## Refreshing Credentials from Identity Service
 *
 * In addition to AWS credentials expiring after a given amount of time, the
 * login token from the identity provider will also expire. Once this token
 * expires, it will not be usable to refresh AWS credentials, and another
 * token will be needed. The SDK does not manage refreshing of the token value,
 * but this can be done through a "refresh token" supported by most identity
 * providers. Consult the documentation for the identity provider for refreshing
 * tokens. Once the refreshed token is acquired, you should make sure to update
 * this new token in the credentials object's {params} property. The following
 * code will update the WebIdentityToken, assuming you have retrieved an updated
 * token from the identity provider:
 *
 * ```javascript
 * AWS.config.credentials.params.Logins['graph.facebook.com'] = updatedToken;
 * ```
 *
 * Future calls to `credentials.refresh()` will now use the new token.
 *
 * @!attribute params
 *   @return [map] the map of params passed to
 *     {AWS.CognitoIdentity.getId},
 *     {AWS.CognitoIdentity.getOpenIdToken}, and
 *     {AWS.STS.assumeRoleWithWebIdentity}. To update the token, set the
 *     `params.WebIdentityToken` property.
 * @!attribute data
 *   @return [map] the raw data response from the call to
 *     {AWS.CognitoIdentity.getCredentialsForIdentity}, or
 *     {AWS.STS.assumeRoleWithWebIdentity}. Use this if you want to get
 *     access to other properties from the response.
 * @!attribute identityId
 *   @return [String] the Cognito ID returned by the last call to
 *     {AWS.CognitoIdentity.getOpenIdToken}. This ID represents the actual
 *     final resolved identity ID from Amazon Cognito.
 */
AWS.CognitoIdentityCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * @api private
   */
  localStorageKey: {
    id: 'aws.cognito.identity-id.',
    providers: 'aws.cognito.identity-providers.'
  },

  /**
   * Creates a new credentials object.
   * @example Creating a new credentials object
   *   AWS.config.credentials = new AWS.CognitoIdentityCredentials({
   *
   *     // either IdentityPoolId or IdentityId is required
   *     // See the IdentityPoolId param for AWS.CognitoIdentity.getID (linked below)
   *     // See the IdentityId param for AWS.CognitoIdentity.getCredentialsForIdentity
   *     // or AWS.CognitoIdentity.getOpenIdToken (linked below)
   *     IdentityPoolId: 'us-east-1:1699ebc0-7900-4099-b910-2df94f52a030',
   *     IdentityId: 'us-east-1:128d0a74-c82f-4553-916d-90053e4a8b0f'
   *
   *     // optional, only necessary when the identity pool is not configured
   *     // to use IAM roles in the Amazon Cognito Console
   *     // See the RoleArn param for AWS.STS.assumeRoleWithWebIdentity (linked below)
   *     RoleArn: 'arn:aws:iam::1234567890:role/MYAPP-CognitoIdentity',
   *
   *     // optional tokens, used for authenticated login
   *     // See the Logins param for AWS.CognitoIdentity.getID (linked below)
   *     Logins: {
   *       'graph.facebook.com': 'FBTOKEN',
   *       'www.amazon.com': 'AMAZONTOKEN',
   *       'accounts.google.com': 'GOOGLETOKEN',
   *       'api.twitter.com': 'TWITTERTOKEN',
   *       'www.digits.com': 'DIGITSTOKEN'
   *     },
   *
   *     // optional name, defaults to web-identity
   *     // See the RoleSessionName param for AWS.STS.assumeRoleWithWebIdentity (linked below)
   *     RoleSessionName: 'web',
   *
   *     // optional, only necessary when application runs in a browser
   *     // and multiple users are signed in at once, used for caching
   *     LoginId: 'example@gmail.com'
   *
   *   }, {
   *      // optionally provide configuration to apply to the underlying service clients
   *      // if configuration is not provided, then configuration will be pulled from AWS.config
   *
   *      // region should match the region your identity pool is located in
   *      region: 'us-east-1',
   *
   *      // specify timeout options
   *      httpOptions: {
   *        timeout: 100
   *      }
   *   });
   * @see AWS.CognitoIdentity.getId
   * @see AWS.CognitoIdentity.getCredentialsForIdentity
   * @see AWS.STS.assumeRoleWithWebIdentity
   * @see AWS.CognitoIdentity.getOpenIdToken
   * @see AWS.Config
   * @note If a region is not provided in the global AWS.config, or
   *   specified in the `clientConfig` to the CognitoIdentityCredentials
   *   constructor, you may encounter a 'Missing credentials in config' error
   *   when calling making a service call.
   */
  constructor: function CognitoIdentityCredentials(params, clientConfig) {
    AWS.Credentials.call(this);
    this.expired = true;
    this.params = params;
    this.data = null;
    this._identityId = null;
    this._clientConfig = AWS.util.copy(clientConfig || {});
    this.loadCachedId();
    var self = this;
    Object.defineProperty(this, 'identityId', {
      get: function() {
        self.loadCachedId();
        return self._identityId || self.params.IdentityId;
      },
      set: function(identityId) {
        self._identityId = identityId;
      }
    });
  },

  /**
   * Refreshes credentials using {AWS.CognitoIdentity.getCredentialsForIdentity},
   * or {AWS.STS.assumeRoleWithWebIdentity}.
   *
   * @callback callback function(err)
   *   Called when the STS service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see AWS.Credentials.get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   * @param callback
   */
  load: function load(callback) {
    var self = this;
    self.createClients();
    self.data = null;
    self._identityId = null;
    self.getId(function(err) {
      if (!err) {
        if (!self.params.RoleArn) {
          self.getCredentialsForIdentity(callback);
        } else {
          self.getCredentialsFromSTS(callback);
        }
      } else {
        self.clearIdOnNotAuthorized(err);
        callback(err);
      }
    });
  },

  /**
   * Clears the cached Cognito ID associated with the currently configured
   * identity pool ID. Use this to manually invalidate your cache if
   * the identity pool ID was deleted.
   */
  clearCachedId: function clearCache() {
    this._identityId = null;
    delete this.params.IdentityId;

    var poolId = this.params.IdentityPoolId;
    var loginId = this.params.LoginId || '';
    delete this.storage[this.localStorageKey.id + poolId + loginId];
    delete this.storage[this.localStorageKey.providers + poolId + loginId];
  },

  /**
   * @api private
   */
  clearIdOnNotAuthorized: function clearIdOnNotAuthorized(err) {
    var self = this;
    if (err.code == 'NotAuthorizedException') {
      self.clearCachedId();
    }
  },

  /**
   * Retrieves a Cognito ID, loading from cache if it was already retrieved
   * on this device.
   *
   * @callback callback function(err, identityId)
   *   @param err [Error, null] an error object if the call failed or null if
   *     it succeeded.
   *   @param identityId [String, null] if successful, the callback will return
   *     the Cognito ID.
   * @note If not loaded explicitly, the Cognito ID is loaded and stored in
   *   localStorage in the browser environment of a device.
   * @api private
   */
  getId: function getId(callback) {
    var self = this;
    if (typeof self.params.IdentityId === 'string') {
      return callback(null, self.params.IdentityId);
    }

    self.cognito.getId(function(err, data) {
      if (!err && data.IdentityId) {
        self.params.IdentityId = data.IdentityId;
        callback(null, data.IdentityId);
      } else {
        callback(err);
      }
    });
  },


  /**
   * @api private
   */
  loadCredentials: function loadCredentials(data, credentials) {
    if (!data || !credentials) return;
    credentials.expired = false;
    credentials.accessKeyId = data.Credentials.AccessKeyId;
    credentials.secretAccessKey = data.Credentials.SecretKey;
    credentials.sessionToken = data.Credentials.SessionToken;
    credentials.expireTime = data.Credentials.Expiration;
  },

  /**
   * @api private
   */
  getCredentialsForIdentity: function getCredentialsForIdentity(callback) {
    var self = this;
    self.cognito.getCredentialsForIdentity(function(err, data) {
      if (!err) {
        self.cacheId(data);
        self.data = data;
        self.loadCredentials(self.data, self);
      } else {
        self.clearIdOnNotAuthorized(err);
      }
      callback(err);
    });
  },

  /**
   * @api private
   */
  getCredentialsFromSTS: function getCredentialsFromSTS(callback) {
    var self = this;
    self.cognito.getOpenIdToken(function(err, data) {
      if (!err) {
        self.cacheId(data);
        self.params.WebIdentityToken = data.Token;
        self.webIdentityCredentials.refresh(function(webErr) {
          if (!webErr) {
            self.data = self.webIdentityCredentials.data;
            self.sts.credentialsFrom(self.data, self);
          }
          callback(webErr);
        });
      } else {
        self.clearIdOnNotAuthorized(err);
        callback(err);
      }
    });
  },

  /**
   * @api private
   */
  loadCachedId: function loadCachedId() {
    var self = this;

    // in the browser we source default IdentityId from localStorage
    if (AWS.util.isBrowser() && !self.params.IdentityId) {
      var id = self.getStorage('id');
      if (id && self.params.Logins) {
        var actualProviders = Object.keys(self.params.Logins);
        var cachedProviders =
          (self.getStorage('providers') || '').split(',');

        // only load ID if at least one provider used this ID before
        var intersect = cachedProviders.filter(function(n) {
          return actualProviders.indexOf(n) !== -1;
        });
        if (intersect.length !== 0) {
          self.params.IdentityId = id;
        }
      } else if (id) {
        self.params.IdentityId = id;
      }
    }
  },

  /**
   * @api private
   */
  createClients: function() {
    var clientConfig = this._clientConfig;
    this.webIdentityCredentials = this.webIdentityCredentials ||
      new AWS.WebIdentityCredentials(this.params, clientConfig);
    if (!this.cognito) {
      var cognitoConfig = AWS.util.merge({}, clientConfig);
      cognitoConfig.params = this.params;
      this.cognito = new CognitoIdentity(cognitoConfig);
    }
    this.sts = this.sts || new STS(clientConfig);
  },

  /**
   * @api private
   */
  cacheId: function cacheId(data) {
    this._identityId = data.IdentityId;
    this.params.IdentityId = this._identityId;

    // cache this IdentityId in browser localStorage if possible
    if (AWS.util.isBrowser()) {
      this.setStorage('id', data.IdentityId);

      if (this.params.Logins) {
        this.setStorage('providers', Object.keys(this.params.Logins).join(','));
      }
    }
  },

  /**
   * @api private
   */
  getStorage: function getStorage(key) {
    return this.storage[this.localStorageKey[key] + this.params.IdentityPoolId + (this.params.LoginId || '')];
  },

  /**
   * @api private
   */
  setStorage: function setStorage(key, val) {
    try {
      this.storage[this.localStorageKey[key] + this.params.IdentityPoolId + (this.params.LoginId || '')] = val;
    } catch (_) {}
  },

  /**
   * @api private
   */
  storage: (function() {
    try {
      var storage = AWS.util.isBrowser() && window.localStorage !== null && typeof window.localStorage === 'object' ?
          window.localStorage : {};

      // Test set/remove which would throw an error in Safari's private browsing
      storage['aws.test-storage'] = 'foobar';
      delete storage['aws.test-storage'];

      return storage;
    } catch (_) {
      return {};
    }
  })()
});


/***/ }),

/***/ 36965:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Creates a credential provider chain that searches for AWS credentials
 * in a list of credential providers specified by the {providers} property.
 *
 * By default, the chain will use the {defaultProviders} to resolve credentials.
 * These providers will look in the environment using the
 * {AWS.EnvironmentCredentials} class with the 'AWS' and 'AMAZON' prefixes.
 *
 * ## Setting Providers
 *
 * Each provider in the {providers} list should be a function that returns
 * a {AWS.Credentials} object, or a hardcoded credentials object. The function
 * form allows for delayed execution of the credential construction.
 *
 * ## Resolving Credentials from a Chain
 *
 * Call {resolve} to return the first valid credential object that can be
 * loaded by the provider chain.
 *
 * For example, to resolve a chain with a custom provider that checks a file
 * on disk after the set of {defaultProviders}:
 *
 * ```javascript
 * var diskProvider = new AWS.FileSystemCredentials('./creds.json');
 * var chain = new AWS.CredentialProviderChain();
 * chain.providers.push(diskProvider);
 * chain.resolve();
 * ```
 *
 * The above code will return the `diskProvider` object if the
 * file contains credentials and the `defaultProviders` do not contain
 * any credential settings.
 *
 * @!attribute providers
 *   @return [Array<AWS.Credentials, Function>]
 *     a list of credentials objects or functions that return credentials
 *     objects. If the provider is a function, the function will be
 *     executed lazily when the provider needs to be checked for valid
 *     credentials. By default, this object will be set to the
 *     {defaultProviders}.
 *   @see defaultProviders
 */
AWS.CredentialProviderChain = AWS.util.inherit(AWS.Credentials, {

  /**
   * Creates a new CredentialProviderChain with a default set of providers
   * specified by {defaultProviders}.
   */
  constructor: function CredentialProviderChain(providers) {
    if (providers) {
      this.providers = providers;
    } else {
      this.providers = AWS.CredentialProviderChain.defaultProviders.slice(0);
    }
    this.resolveCallbacks = [];
  },

  /**
   * @!method  resolvePromise()
   *   Returns a 'thenable' promise.
   *   Resolves the provider chain by searching for the first set of
   *   credentials in {providers}.
   *
   *   Two callbacks can be provided to the `then` method on the returned promise.
   *   The first callback will be called if the promise is fulfilled, and the second
   *   callback will be called if the promise is rejected.
   *   @callback fulfilledCallback function(credentials)
   *     Called if the promise is fulfilled and the provider resolves the chain
   *     to a credentials object
   *     @param credentials [AWS.Credentials] the credentials object resolved
   *       by the provider chain.
   *   @callback rejectedCallback function(error)
   *     Called if the promise is rejected.
   *     @param err [Error] the error object returned if no credentials are found.
   *   @return [Promise] A promise that represents the state of the `resolve` method call.
   *   @example Calling the `resolvePromise` method.
   *     var promise = chain.resolvePromise();
   *     promise.then(function(credentials) { ... }, function(err) { ... });
   */

  /**
   * Resolves the provider chain by searching for the first set of
   * credentials in {providers}.
   *
   * @callback callback function(err, credentials)
   *   Called when the provider resolves the chain to a credentials object
   *   or null if no credentials can be found.
   *
   *   @param err [Error] the error object returned if no credentials are
   *     found.
   *   @param credentials [AWS.Credentials] the credentials object resolved
   *     by the provider chain.
   * @return [AWS.CredentialProviderChain] the provider, for chaining.
   */
  resolve: function resolve(callback) {
    var self = this;
    if (self.providers.length === 0) {
      callback(new Error('No providers'));
      return self;
    }

    if (self.resolveCallbacks.push(callback) === 1) {
      var index = 0;
      var providers = self.providers.slice(0);

      function resolveNext(err, creds) {
        if ((!err && creds) || index === providers.length) {
          AWS.util.arrayEach(self.resolveCallbacks, function (callback) {
            callback(err, creds);
          });
          self.resolveCallbacks.length = 0;
          return;
        }

        var provider = providers[index++];
        if (typeof provider === 'function') {
          creds = provider.call();
        } else {
          creds = provider;
        }

        if (creds.get) {
          creds.get(function (getErr) {
            resolveNext(getErr, getErr ? null : creds);
          });
        } else {
          resolveNext(null, creds);
        }
      }

      resolveNext();
    }

    return self;
  }
});

/**
 * The default set of providers used by a vanilla CredentialProviderChain.
 *
 * In the browser:
 *
 * ```javascript
 * AWS.CredentialProviderChain.defaultProviders = []
 * ```
 *
 * In Node.js:
 *
 * ```javascript
 * AWS.CredentialProviderChain.defaultProviders = [
 *   function () { return new AWS.EnvironmentCredentials('AWS'); },
 *   function () { return new AWS.EnvironmentCredentials('AMAZON'); },
 *   function () { return new AWS.SharedIniFileCredentials(); },
 *   function () { return new AWS.ECSCredentials(); },
 *   function () { return new AWS.ProcessCredentials(); },
 *   function () { return new AWS.TokenFileWebIdentityCredentials(); },
 *   function () { return new AWS.EC2MetadataCredentials() }
 * ]
 * ```
 */
AWS.CredentialProviderChain.defaultProviders = [];

/**
 * @api private
 */
AWS.CredentialProviderChain.addPromisesToClass = function addPromisesToClass(PromiseDependency) {
  this.prototype.resolvePromise = AWS.util.promisifyMethod('resolve', PromiseDependency);
};

/**
 * @api private
 */
AWS.CredentialProviderChain.deletePromisesFromClass = function deletePromisesFromClass() {
  delete this.prototype.resolvePromise;
};

AWS.util.addPromises(AWS.CredentialProviderChain);


/***/ }),

/***/ 73379:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
__webpack_require__(25768);

/**
 * Represents credentials received from the metadata service on an EC2 instance.
 *
 * By default, this class will connect to the metadata service using
 * {AWS.MetadataService} and attempt to load any available credentials. If it
 * can connect, and credentials are available, these will be used with zero
 * configuration.
 *
 * This credentials class will by default timeout after 1 second of inactivity
 * and retry 3 times.
 * If your requests to the EC2 metadata service are timing out, you can increase
 * these values by configuring them directly:
 *
 * ```javascript
 * AWS.config.credentials = new AWS.EC2MetadataCredentials({
 *   httpOptions: { timeout: 5000 }, // 5 second timeout
 *   maxRetries: 10, // retry 10 times
 *   retryDelayOptions: { base: 200 } // see AWS.Config for information
 * });
 *
 * If your requests are timing out in connecting to the metadata service, such
 * as when testing on a development machine, you can use the connectTimeout
 * option, specified in milliseconds, which also defaults to 1 second.
 * ```
 *
 * @see AWS.Config.retryDelayOptions
 *
 * @!macro nobrowser
 */
AWS.EC2MetadataCredentials = AWS.util.inherit(AWS.Credentials, {
  constructor: function EC2MetadataCredentials(options) {
    AWS.Credentials.call(this);

    options = options ? AWS.util.copy(options) : {};
    options = AWS.util.merge(
      {maxRetries: this.defaultMaxRetries}, options);
    if (!options.httpOptions) options.httpOptions = {};
    options.httpOptions = AWS.util.merge(
      {timeout: this.defaultTimeout,
        connectTimeout: this.defaultConnectTimeout},
       options.httpOptions);

    this.metadataService = new AWS.MetadataService(options);
    this.metadata = {};
  },

  /**
   * @api private
   */
  defaultTimeout: 1000,

   /**
   * @api private
   */
  defaultConnectTimeout: 1000,

  /**
   * @api private
   */
  defaultMaxRetries: 3,

  /**
   * Loads the credentials from the instance metadata service
   *
   * @callback callback function(err)
   *   Called when the instance metadata service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   * @param callback
   */
  load: function load(callback) {
    var self = this;
    self.metadataService.loadCredentials(function(err, creds) {
      if (!err) {
        var currentTime = AWS.util.date.getDate();
        var expireTime = new Date(creds.Expiration);
        if (expireTime < currentTime) {
          err = AWS.util.error(
            new Error('EC2 Instance Metadata Serivce provided expired credentials'),
            { code: 'EC2MetadataCredentialsProviderFailure' }
          );
        } else {
          self.expired = false;
          self.metadata = creds;
          self.accessKeyId = creds.AccessKeyId;
          self.secretAccessKey = creds.SecretAccessKey;
          self.sessionToken = creds.Token;
          self.expireTime = expireTime;
        }
      }
      callback(err);
    });
  }
});


/***/ }),

/***/ 10645:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Represents credentials received from relative URI specified in the ECS container.
 *
 * This class will request refreshable credentials from the relative URI
 * specified by the AWS_CONTAINER_CREDENTIALS_RELATIVE_URI or the
 * AWS_CONTAINER_CREDENTIALS_FULL_URI environment variable. If valid credentials
 * are returned in the response, these will be used with zero configuration.
 *
 * This credentials class will by default timeout after 1 second of inactivity
 * and retry 3 times.
 * If your requests to the relative URI are timing out, you can increase
 * the value by configuring them directly:
 *
 * ```javascript
 * AWS.config.credentials = new AWS.ECSCredentials({
 *   httpOptions: { timeout: 5000 }, // 5 second timeout
 *   maxRetries: 10, // retry 10 times
 *   retryDelayOptions: { base: 200 } // see AWS.Config for information
 * });
 * ```
 *
 * @see AWS.Config.retryDelayOptions
 *
 * @!macro nobrowser
 */
AWS.ECSCredentials = AWS.RemoteCredentials;


/***/ }),

/***/ 57714:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Represents credentials from the environment.
 *
 * By default, this class will look for the matching environment variables
 * prefixed by a given {envPrefix}. The un-prefixed environment variable names
 * for each credential value is listed below:
 *
 * ```javascript
 * accessKeyId: ACCESS_KEY_ID
 * secretAccessKey: SECRET_ACCESS_KEY
 * sessionToken: SESSION_TOKEN
 * ```
 *
 * With the default prefix of 'AWS', the environment variables would be:
 *
 *     AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN
 *
 * @!attribute envPrefix
 *   @readonly
 *   @return [String] the prefix for the environment variable names excluding
 *     the separating underscore ('_').
 */
AWS.EnvironmentCredentials = AWS.util.inherit(AWS.Credentials, {

  /**
   * Creates a new EnvironmentCredentials class with a given variable
   * prefix {envPrefix}. For example, to load credentials using the 'AWS'
   * prefix:
   *
   * ```javascript
   * var creds = new AWS.EnvironmentCredentials('AWS');
   * creds.accessKeyId == 'AKID' // from AWS_ACCESS_KEY_ID env var
   * ```
   *
   * @param envPrefix [String] the prefix to use (e.g., 'AWS') for environment
   *   variables. Do not include the separating underscore.
   */
  constructor: function EnvironmentCredentials(envPrefix) {
    AWS.Credentials.call(this);
    this.envPrefix = envPrefix;
    this.get(function() {});
  },

  /**
   * Loads credentials from the environment using the prefixed
   * environment variables.
   *
   * @callback callback function(err)
   *   Called after the (prefixed) ACCESS_KEY_ID, SECRET_ACCESS_KEY, and
   *   SESSION_TOKEN environment variables are read. When this callback is
   *   called with no error, it means that the credentials information has
   *   been loaded into the object (as the `accessKeyId`, `secretAccessKey`,
   *   and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    if (!callback) callback = AWS.util.fn.callback;

    if (!process || !process.env) {
      callback(AWS.util.error(
        new Error('No process info or environment variables available'),
        { code: 'EnvironmentCredentialsProviderFailure' }
      ));
      return;
    }

    var keys = ['ACCESS_KEY_ID', 'SECRET_ACCESS_KEY', 'SESSION_TOKEN'];
    var values = [];

    for (var i = 0; i < keys.length; i++) {
      var prefix = '';
      if (this.envPrefix) prefix = this.envPrefix + '_';
      values[i] = process.env[prefix + keys[i]];
      if (!values[i] && keys[i] !== 'SESSION_TOKEN') {
        callback(AWS.util.error(
          new Error('Variable ' + prefix + keys[i] + ' not set.'),
        { code: 'EnvironmentCredentialsProviderFailure' }
        ));
        return;
      }
    }

    this.expired = false;
    AWS.Credentials.apply(this, values);
    callback();
  }

});


/***/ }),

/***/ 27454:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Represents credentials from a JSON file on disk.
 * If the credentials expire, the SDK can {refresh} the credentials
 * from the file.
 *
 * The format of the file should be similar to the options passed to
 * {AWS.Config}:
 *
 * ```javascript
 * {accessKeyId: 'akid', secretAccessKey: 'secret', sessionToken: 'optional'}
 * ```
 *
 * @example Loading credentials from disk
 *   var creds = new AWS.FileSystemCredentials('./configuration.json');
 *   creds.accessKeyId == 'AKID'
 *
 * @!attribute filename
 *   @readonly
 *   @return [String] the path to the JSON file on disk containing the
 *     credentials.
 * @!macro nobrowser
 */
AWS.FileSystemCredentials = AWS.util.inherit(AWS.Credentials, {

  /**
   * @overload AWS.FileSystemCredentials(filename)
   *   Creates a new FileSystemCredentials object from a filename
   *
   *   @param filename [String] the path on disk to the JSON file to load.
   */
  constructor: function FileSystemCredentials(filename) {
    AWS.Credentials.call(this);
    this.filename = filename;
    this.get(function() {});
  },

  /**
   * Loads the credentials from the {filename} on disk.
   *
   * @callback callback function(err)
   *   Called after the JSON file on disk is read and parsed. When this callback
   *   is called with no error, it means that the credentials information
   *   has been loaded into the object (as the `accessKeyId`, `secretAccessKey`,
   *   and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    if (!callback) callback = AWS.util.fn.callback;
    try {
      var creds = JSON.parse(AWS.util.readFileSync(this.filename));
      AWS.Credentials.call(this, creds);
      if (!this.accessKeyId || !this.secretAccessKey) {
        throw AWS.util.error(
          new Error('Credentials not set in ' + this.filename),
        { code: 'FileSystemCredentialsProviderFailure' }
        );
      }
      this.expired = false;
      callback();
    } catch (err) {
      callback(err);
    }
  }

});


/***/ }),

/***/ 80371:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var proc = __webpack_require__(63129);
var iniLoader = AWS.util.iniLoader;

/**
 * Represents credentials loaded from shared credentials file
 * (defaulting to ~/.aws/credentials or defined by the
 * `AWS_SHARED_CREDENTIALS_FILE` environment variable).
 *
 * ## Using process credentials
 *
 * The credentials file can specify a credential provider that executes
 * a given process and attempts to read its stdout to recieve a JSON payload
 * containing the credentials:
 *
 *     [default]
 *     credential_process = /usr/bin/credential_proc
 *
 * Automatically handles refreshing credentials if an Expiration time is
 * provided in the credentials payload. Credentials supplied in the same profile
 * will take precedence over the credential_process.
 *
 * Sourcing credentials from an external process can potentially be dangerous,
 * so proceed with caution. Other credential providers should be preferred if
 * at all possible. If using this option, you should make sure that the shared
 * credentials file is as locked down as possible using security best practices
 * for your operating system.
 *
 * ## Using custom profiles
 *
 * The SDK supports loading credentials for separate profiles. This can be done
 * in two ways:
 *
 * 1. Set the `AWS_PROFILE` environment variable in your process prior to
 *    loading the SDK.
 * 2. Directly load the AWS.ProcessCredentials provider:
 *
 * ```javascript
 * var creds = new AWS.ProcessCredentials({profile: 'myprofile'});
 * AWS.config.credentials = creds;
 * ```
 *
 * @!macro nobrowser
 */
AWS.ProcessCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * Creates a new ProcessCredentials object.
   *
   * @param options [map] a set of options
   * @option options profile [String] (AWS_PROFILE env var or 'default')
   *   the name of the profile to load.
   * @option options filename [String] ('~/.aws/credentials' or defined by
   *   AWS_SHARED_CREDENTIALS_FILE process env var)
   *   the filename to use when loading credentials.
   * @option options callback [Function] (err) Credentials are eagerly loaded
   *   by the constructor. When the callback is called with no error, the
   *   credentials have been loaded successfully.
   */
  constructor: function ProcessCredentials(options) {
    AWS.Credentials.call(this);

    options = options || {};

    this.filename = options.filename;
    this.profile = options.profile || process.env.AWS_PROFILE || AWS.util.defaultProfile;
    this.get(options.callback || AWS.util.fn.noop);
  },

  /**
   * @api private
   */
  load: function load(callback) {
    var self = this;
    try {
      var profiles = AWS.util.getProfilesFromSharedConfig(iniLoader, this.filename);
      var profile = profiles[this.profile] || {};

      if (Object.keys(profile).length === 0) {
        throw AWS.util.error(
          new Error('Profile ' + this.profile + ' not found'),
          { code: 'ProcessCredentialsProviderFailure' }
        );
      }

      if (profile['credential_process']) {
        this.loadViaCredentialProcess(profile, function(err, data) {
          if (err) {
            callback(err, null);
          } else {
            self.expired = false;
            self.accessKeyId = data.AccessKeyId;
            self.secretAccessKey = data.SecretAccessKey;
            self.sessionToken = data.SessionToken;
            if (data.Expiration) {
              self.expireTime = new Date(data.Expiration);
            }
            callback(null);
          }
        });
      } else {
        throw AWS.util.error(
          new Error('Profile ' + this.profile + ' did not include credential process'),
          { code: 'ProcessCredentialsProviderFailure' }
        );
      }
    } catch (err) {
      callback(err);
    }
  },

  /**
  * Executes the credential_process and retrieves
  * credentials from the output
  * @api private
  * @param profile [map] credentials profile
  * @throws ProcessCredentialsProviderFailure
  */
  loadViaCredentialProcess: function loadViaCredentialProcess(profile, callback) {
    proc.exec(profile['credential_process'], function(err, stdOut, stdErr) {
      if (err) {
        callback(AWS.util.error(
          new Error('credential_process returned error'),
          { code: 'ProcessCredentialsProviderFailure'}
        ), null);
      } else {
        try {
          var credData = JSON.parse(stdOut);
          if (credData.Expiration) {
            var currentTime = AWS.util.date.getDate();
            var expireTime = new Date(credData.Expiration);
            if (expireTime < currentTime) {
              throw Error('credential_process returned expired credentials');
            }
          }

          if (credData.Version !== 1) {
            throw Error('credential_process does not return Version == 1');
          }
          callback(null, credData);
        } catch (err) {
          callback(AWS.util.error(
            new Error(err.message),
            { code: 'ProcessCredentialsProviderFailure'}
          ), null);
        }
      }
    });
  },

  /**
   * Loads the credentials from the credential process
   *
   * @callback callback function(err)
   *   Called after the credential process has been executed. When this
   *   callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    iniLoader.clearCachedFiles();
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  }
});


/***/ }),

/***/ 88764:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437),
  ENV_RELATIVE_URI = 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI',
  ENV_FULL_URI = 'AWS_CONTAINER_CREDENTIALS_FULL_URI',
  ENV_AUTH_TOKEN = 'AWS_CONTAINER_AUTHORIZATION_TOKEN',
  FULL_URI_UNRESTRICTED_PROTOCOLS = ['https:'],
  FULL_URI_ALLOWED_PROTOCOLS = ['http:', 'https:'],
  FULL_URI_ALLOWED_HOSTNAMES = ['localhost', '127.0.0.1'],
  RELATIVE_URI_HOST = '169.254.170.2';

/**
 * Represents credentials received from specified URI.
 *
 * This class will request refreshable credentials from the relative URI
 * specified by the AWS_CONTAINER_CREDENTIALS_RELATIVE_URI or the
 * AWS_CONTAINER_CREDENTIALS_FULL_URI environment variable. If valid credentials
 * are returned in the response, these will be used with zero configuration.
 *
 * This credentials class will by default timeout after 1 second of inactivity
 * and retry 3 times.
 * If your requests to the relative URI are timing out, you can increase
 * the value by configuring them directly:
 *
 * ```javascript
 * AWS.config.credentials = new AWS.RemoteCredentials({
 *   httpOptions: { timeout: 5000 }, // 5 second timeout
 *   maxRetries: 10, // retry 10 times
 *   retryDelayOptions: { base: 200 } // see AWS.Config for information
 * });
 * ```
 *
 * @see AWS.Config.retryDelayOptions
 *
 * @!macro nobrowser
 */
AWS.RemoteCredentials = AWS.util.inherit(AWS.Credentials, {
  constructor: function RemoteCredentials(options) {
    AWS.Credentials.call(this);
    options = options ? AWS.util.copy(options) : {};
    if (!options.httpOptions) options.httpOptions = {};
    options.httpOptions = AWS.util.merge(
      this.httpOptions, options.httpOptions);
    AWS.util.update(this, options);
  },

  /**
   * @api private
   */
  httpOptions: { timeout: 1000 },

  /**
   * @api private
   */
  maxRetries: 3,

  /**
   * @api private
   */
  isConfiguredForEcsCredentials: function isConfiguredForEcsCredentials() {
    return Boolean(
        process &&
        process.env &&
        (process.env[ENV_RELATIVE_URI] || process.env[ENV_FULL_URI])
    );
  },

  /**
   * @api private
   */
  getECSFullUri: function getECSFullUri() {
    if (process && process.env) {
      var relative = process.env[ENV_RELATIVE_URI],
          full = process.env[ENV_FULL_URI];
      if (relative) {
        return 'http://' + RELATIVE_URI_HOST + relative;
      } else if (full) {
        var parsed = AWS.util.urlParse(full);
        if (FULL_URI_ALLOWED_PROTOCOLS.indexOf(parsed.protocol) < 0) {
          throw AWS.util.error(
            new Error('Unsupported protocol:  AWS.RemoteCredentials supports '
              + FULL_URI_ALLOWED_PROTOCOLS.join(',') + ' only; '
              + parsed.protocol + ' requested.'),
            { code: 'ECSCredentialsProviderFailure' }
          );
        }

        if (FULL_URI_UNRESTRICTED_PROTOCOLS.indexOf(parsed.protocol) < 0 &&
            FULL_URI_ALLOWED_HOSTNAMES.indexOf(parsed.hostname) < 0) {
          throw AWS.util.error(
            new Error('Unsupported hostname: AWS.RemoteCredentials only supports '
              + FULL_URI_ALLOWED_HOSTNAMES.join(',') + ' for ' + parsed.protocol + '; '
              + parsed.protocol + '//' + parsed.hostname + ' requested.'),
            { code: 'ECSCredentialsProviderFailure' }
          );
        }

        return full;
      } else {
        throw AWS.util.error(
          new Error('Variable ' + ENV_RELATIVE_URI + ' or ' + ENV_FULL_URI +
            ' must be set to use AWS.RemoteCredentials.'),
          { code: 'ECSCredentialsProviderFailure' }
        );
      }
    } else {
      throw AWS.util.error(
        new Error('No process info available'),
        { code: 'ECSCredentialsProviderFailure' }
      );
    }
  },

  /**
   * @api private
   */
  getECSAuthToken: function getECSAuthToken() {
    if (process && process.env && process.env[ENV_FULL_URI]) {
      return process.env[ENV_AUTH_TOKEN];
    }
  },

  /**
   * @api private
   */
  credsFormatIsValid: function credsFormatIsValid(credData) {
    return (!!credData.accessKeyId && !!credData.secretAccessKey &&
      !!credData.sessionToken && !!credData.expireTime);
  },

  /**
   * @api private
   */
  formatCreds: function formatCreds(credData) {
    if (!!credData.credentials) {
      credData = credData.credentials;
    }

    return {
      expired: false,
      accessKeyId: credData.accessKeyId || credData.AccessKeyId,
      secretAccessKey: credData.secretAccessKey || credData.SecretAccessKey,
      sessionToken: credData.sessionToken || credData.Token,
      expireTime: new Date(credData.expiration || credData.Expiration)
    };
  },

  /**
   * @api private
   */
  request: function request(url, callback) {
    var httpRequest = new AWS.HttpRequest(url);
    httpRequest.method = 'GET';
    httpRequest.headers.Accept = 'application/json';
    var token = this.getECSAuthToken();
    if (token) {
      httpRequest.headers.Authorization = token;
    }
    AWS.util.handleRequestWithRetries(httpRequest, this, callback);
  },

  /**
   * Loads the credentials from the relative URI specified by container
   *
   * @callback callback function(err)
   *   Called when the request to the relative URI responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, `sessionToken`, and `expireTime` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   */
  load: function load(callback) {
    var self = this;
    var fullUri;

    try {
      fullUri = this.getECSFullUri();
    } catch (err) {
      callback(err);
      return;
    }

    this.request(fullUri, function(err, data) {
      if (!err) {
        try {
          data = JSON.parse(data);
          var creds = self.formatCreds(data);
          if (!self.credsFormatIsValid(creds)) {
            throw AWS.util.error(
              new Error('Response data is not in valid format'),
              { code: 'ECSCredentialsProviderFailure' }
            );
          }
          AWS.util.update(self, creds);
        } catch (dataError) {
          err = dataError;
        }
      }
      callback(err, creds);
    });
  }
});


/***/ }),

/***/ 15037:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var STS = __webpack_require__(57513);

/**
 * Represents credentials retrieved from STS SAML support.
 *
 * By default this provider gets credentials using the
 * {AWS.STS.assumeRoleWithSAML} service operation. This operation
 * requires a `RoleArn` containing the ARN of the IAM trust policy for the
 * application for which credentials will be given, as well as a `PrincipalArn`
 * representing the ARN for the SAML identity provider. In addition, the
 * `SAMLAssertion` must be set to the token provided by the identity
 * provider. See {constructor} for an example on creating a credentials
 * object with proper `RoleArn`, `PrincipalArn`, and `SAMLAssertion` values.
 *
 * ## Refreshing Credentials from Identity Service
 *
 * In addition to AWS credentials expiring after a given amount of time, the
 * login token from the identity provider will also expire. Once this token
 * expires, it will not be usable to refresh AWS credentials, and another
 * token will be needed. The SDK does not manage refreshing of the token value,
 * but this can be done through a "refresh token" supported by most identity
 * providers. Consult the documentation for the identity provider for refreshing
 * tokens. Once the refreshed token is acquired, you should make sure to update
 * this new token in the credentials object's {params} property. The following
 * code will update the SAMLAssertion, assuming you have retrieved an updated
 * token from the identity provider:
 *
 * ```javascript
 * AWS.config.credentials.params.SAMLAssertion = updatedToken;
 * ```
 *
 * Future calls to `credentials.refresh()` will now use the new token.
 *
 * @!attribute params
 *   @return [map] the map of params passed to
 *     {AWS.STS.assumeRoleWithSAML}. To update the token, set the
 *     `params.SAMLAssertion` property.
 */
AWS.SAMLCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * Creates a new credentials object.
   * @param (see AWS.STS.assumeRoleWithSAML)
   * @example Creating a new credentials object
   *   AWS.config.credentials = new AWS.SAMLCredentials({
   *     RoleArn: 'arn:aws:iam::1234567890:role/SAMLRole',
   *     PrincipalArn: 'arn:aws:iam::1234567890:role/SAMLPrincipal',
   *     SAMLAssertion: 'base64-token', // base64-encoded token from IdP
   *   });
   * @see AWS.STS.assumeRoleWithSAML
   */
  constructor: function SAMLCredentials(params) {
    AWS.Credentials.call(this);
    this.expired = true;
    this.params = params;
  },

  /**
   * Refreshes credentials using {AWS.STS.assumeRoleWithSAML}
   *
   * @callback callback function(err)
   *   Called when the STS service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   */
  load: function load(callback) {
    var self = this;
    self.createClients();
    self.service.assumeRoleWithSAML(function (err, data) {
      if (!err) {
        self.service.credentialsFrom(data, self);
      }
      callback(err);
    });
  },

  /**
   * @api private
   */
  createClients: function() {
    this.service = this.service || new STS({params: this.params});
  }

});


/***/ }),

/***/ 13754:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var STS = __webpack_require__(57513);
var iniLoader = AWS.util.iniLoader;

var ASSUME_ROLE_DEFAULT_REGION = 'us-east-1';

/**
 * Represents credentials loaded from shared credentials file
 * (defaulting to ~/.aws/credentials or defined by the
 * `AWS_SHARED_CREDENTIALS_FILE` environment variable).
 *
 * ## Using the shared credentials file
 *
 * This provider is checked by default in the Node.js environment. To use the
 * credentials file provider, simply add your access and secret keys to the
 * ~/.aws/credentials file in the following format:
 *
 *     [default]
 *     aws_access_key_id = AKID...
 *     aws_secret_access_key = YOUR_SECRET_KEY
 *
 * ## Using custom profiles
 *
 * The SDK supports loading credentials for separate profiles. This can be done
 * in two ways:
 *
 * 1. Set the `AWS_PROFILE` environment variable in your process prior to
 *    loading the SDK.
 * 2. Directly load the AWS.SharedIniFileCredentials provider:
 *
 * ```javascript
 * var creds = new AWS.SharedIniFileCredentials({profile: 'myprofile'});
 * AWS.config.credentials = creds;
 * ```
 *
 * @!macro nobrowser
 */
AWS.SharedIniFileCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * Creates a new SharedIniFileCredentials object.
   *
   * @param options [map] a set of options
   * @option options profile [String] (AWS_PROFILE env var or 'default')
   *   the name of the profile to load.
   * @option options filename [String] ('~/.aws/credentials' or defined by
   *   AWS_SHARED_CREDENTIALS_FILE process env var)
   *   the filename to use when loading credentials.
   * @option options disableAssumeRole [Boolean] (false) True to disable
   *   support for profiles that assume an IAM role. If true, and an assume
   *   role profile is selected, an error is raised.
   * @option options preferStaticCredentials [Boolean] (false) True to
   *   prefer static credentials to role_arn if both are present.
   * @option options tokenCodeFn [Function] (null) Function to provide
   *   STS Assume Role TokenCode, if mfa_serial is provided for profile in ini
   *   file. Function is called with value of mfa_serial and callback, and
   *   should provide the TokenCode or an error to the callback in the format
   *   callback(err, token)
   * @option options callback [Function] (err) Credentials are eagerly loaded
   *   by the constructor. When the callback is called with no error, the
   *   credentials have been loaded successfully.
   * @option options httpOptions [map] A set of options to pass to the low-level
   *   HTTP request. Currently supported options are:
   *   * **proxy** [String] &mdash; the URL to proxy requests through
   *   * **agent** [http.Agent, https.Agent] &mdash; the Agent object to perform
   *     HTTP requests with. Used for connection pooling. Defaults to the global
   *     agent (`http.globalAgent`) for non-SSL connections. Note that for
   *     SSL connections, a special Agent object is used in order to enable
   *     peer certificate verification. This feature is only available in the
   *     Node.js environment.
   *   * **connectTimeout** [Integer] &mdash; Sets the socket to timeout after
   *     failing to establish a connection with the server after
   *     `connectTimeout` milliseconds. This timeout has no effect once a socket
   *     connection has been established.
   *   * **timeout** [Integer] &mdash; The number of milliseconds a request can
   *     take before automatically being terminated.
   *     Defaults to two minutes (120000).
   */
  constructor: function SharedIniFileCredentials(options) {
    AWS.Credentials.call(this);

    options = options || {};

    this.filename = options.filename;
    this.profile = options.profile || process.env.AWS_PROFILE || AWS.util.defaultProfile;
    this.disableAssumeRole = Boolean(options.disableAssumeRole);
    this.preferStaticCredentials = Boolean(options.preferStaticCredentials);
    this.tokenCodeFn = options.tokenCodeFn || null;
    this.httpOptions = options.httpOptions || null;
    this.get(options.callback || AWS.util.fn.noop);
  },

  /**
   * @api private
   */
  load: function load(callback) {
    var self = this;
    try {
      var profiles = AWS.util.getProfilesFromSharedConfig(iniLoader, this.filename);
      var profile = profiles[this.profile] || {};

      if (Object.keys(profile).length === 0) {
        throw AWS.util.error(
          new Error('Profile ' + this.profile + ' not found'),
          { code: 'SharedIniFileCredentialsProviderFailure' }
        );
      }

      /*
      In the CLI, the presence of both a role_arn and static credentials have
      different meanings depending on how many profiles have been visited. For
      the first profile processed, role_arn takes precedence over any static
      credentials, but for all subsequent profiles, static credentials are
      used if present, and only in their absence will the profile's
      source_profile and role_arn keys be used to load another set of
      credentials. This var is intended to yield compatible behaviour in this
      sdk.
      */
      var preferStaticCredentialsToRoleArn = Boolean(
        this.preferStaticCredentials
        && profile['aws_access_key_id']
        && profile['aws_secret_access_key']
      );

      if (profile['role_arn'] && !preferStaticCredentialsToRoleArn) {
        this.loadRoleProfile(profiles, profile, function(err, data) {
          if (err) {
            callback(err);
          } else {
            self.expired = false;
            self.accessKeyId = data.Credentials.AccessKeyId;
            self.secretAccessKey = data.Credentials.SecretAccessKey;
            self.sessionToken = data.Credentials.SessionToken;
            self.expireTime = data.Credentials.Expiration;
            callback(null);
          }
        });
        return;
      }

      this.accessKeyId = profile['aws_access_key_id'];
      this.secretAccessKey = profile['aws_secret_access_key'];
      this.sessionToken = profile['aws_session_token'];

      if (!this.accessKeyId || !this.secretAccessKey) {
        throw AWS.util.error(
          new Error('Credentials not set for profile ' + this.profile),
          { code: 'SharedIniFileCredentialsProviderFailure' }
        );
      }
      this.expired = false;
      callback(null);
    } catch (err) {
      callback(err);
    }
  },

  /**
   * Loads the credentials from the shared credentials file
   *
   * @callback callback function(err)
   *   Called after the shared INI file on disk is read and parsed. When this
   *   callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    iniLoader.clearCachedFiles();
    this.coalesceRefresh(
      callback || AWS.util.fn.callback,
      this.disableAssumeRole
    );
  },

  /**
   * @api private
   */
  loadRoleProfile: function loadRoleProfile(creds, roleProfile, callback) {
    if (this.disableAssumeRole) {
      throw AWS.util.error(
        new Error('Role assumption profiles are disabled. ' +
                  'Failed to load profile ' + this.profile +
                  ' from ' + creds.filename),
        { code: 'SharedIniFileCredentialsProviderFailure' }
      );
    }

    var self = this;
    var roleArn = roleProfile['role_arn'];
    var roleSessionName = roleProfile['role_session_name'];
    var externalId = roleProfile['external_id'];
    var mfaSerial = roleProfile['mfa_serial'];
    var sourceProfileName = roleProfile['source_profile'];

    // From experimentation, the following behavior mimics the AWS CLI:
    //
    // 1. Use region from the profile if present.
    // 2. Otherwise fall back to N. Virginia (global endpoint).
    //
    // It is necessary to do the fallback explicitly, because if
    // 'AWS_STS_REGIONAL_ENDPOINTS=regional', the underlying STS client will
    // otherwise throw an error if region is left 'undefined'.
    //
    // Experimentation shows that the AWS CLI (tested at version 1.18.136)
    // ignores the following potential sources of a region for the purposes of
    // this AssumeRole call:
    //
    // - The [default] profile
    // - The AWS_REGION environment variable
    //
    // Ignoring the [default] profile for the purposes of AssumeRole is arguably
    // a bug in the CLI since it does use the [default] region for service
    // calls... but right now we're matching behavior of the other tool.
    var profileRegion = roleProfile['region'] || ASSUME_ROLE_DEFAULT_REGION;

    if (!sourceProfileName) {
      throw AWS.util.error(
        new Error('source_profile is not set using profile ' + this.profile),
        { code: 'SharedIniFileCredentialsProviderFailure' }
      );
    }

    var sourceProfileExistanceTest = creds[sourceProfileName];

    if (typeof sourceProfileExistanceTest !== 'object') {
      throw AWS.util.error(
        new Error('source_profile ' + sourceProfileName + ' using profile '
          + this.profile + ' does not exist'),
        { code: 'SharedIniFileCredentialsProviderFailure' }
      );
    }

    var sourceCredentials = new AWS.SharedIniFileCredentials(
      AWS.util.merge(this.options || {}, {
        profile: sourceProfileName,
        preferStaticCredentials: true
      })
    );

    this.roleArn = roleArn;
    var sts = new STS({
      credentials: sourceCredentials,
      region: profileRegion,
      httpOptions: this.httpOptions
    });

    var roleParams = {
      RoleArn: roleArn,
      RoleSessionName: roleSessionName || 'aws-sdk-js-' + Date.now()
    };

    if (externalId) {
      roleParams.ExternalId = externalId;
    }

    if (mfaSerial && self.tokenCodeFn) {
      roleParams.SerialNumber = mfaSerial;
      self.tokenCodeFn(mfaSerial, function(err, token) {
        if (err) {
          var message;
          if (err instanceof Error) {
            message = err.message;
          } else {
            message = err;
          }
          callback(
            AWS.util.error(
              new Error('Error fetching MFA token: ' + message),
              { code: 'SharedIniFileCredentialsProviderFailure' }
            ));
          return;
        }

        roleParams.TokenCode = token;
        sts.assumeRole(roleParams, callback);
      });
      return;
    }
    sts.assumeRole(roleParams, callback);
  }
});


/***/ }),

/***/ 77360:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var STS = __webpack_require__(57513);

/**
 * Represents temporary credentials retrieved from {AWS.STS}. Without any
 * extra parameters, credentials will be fetched from the
 * {AWS.STS.getSessionToken} operation. If an IAM role is provided, the
 * {AWS.STS.assumeRole} operation will be used to fetch credentials for the
 * role instead.
 *
 * @note AWS.TemporaryCredentials is deprecated, but remains available for
 *   backwards compatibility. {AWS.ChainableTemporaryCredentials} is the
 *   preferred class for temporary credentials.
 *
 * To setup temporary credentials, configure a set of master credentials
 * using the standard credentials providers (environment, EC2 instance metadata,
 * or from the filesystem), then set the global credentials to a new
 * temporary credentials object:
 *
 * ```javascript
 * // Note that environment credentials are loaded by default,
 * // the following line is shown for clarity:
 * AWS.config.credentials = new AWS.EnvironmentCredentials('AWS');
 *
 * // Now set temporary credentials seeded from the master credentials
 * AWS.config.credentials = new AWS.TemporaryCredentials();
 *
 * // subsequent requests will now use temporary credentials from AWS STS.
 * new AWS.S3().listBucket(function(err, data) { ... });
 * ```
 *
 * @!attribute masterCredentials
 *   @return [AWS.Credentials] the master (non-temporary) credentials used to
 *     get and refresh temporary credentials from AWS STS.
 * @note (see constructor)
 */
AWS.TemporaryCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * Creates a new temporary credentials object.
   *
   * @note In order to create temporary credentials, you first need to have
   *   "master" credentials configured in {AWS.Config.credentials}. These
   *   master credentials are necessary to retrieve the temporary credentials,
   *   as well as refresh the credentials when they expire.
   * @param params [map] a map of options that are passed to the
   *   {AWS.STS.assumeRole} or {AWS.STS.getSessionToken} operations.
   *   If a `RoleArn` parameter is passed in, credentials will be based on the
   *   IAM role.
   * @param masterCredentials [AWS.Credentials] the master (non-temporary) credentials
   *  used to get and refresh temporary credentials from AWS STS.
   * @example Creating a new credentials object for generic temporary credentials
   *   AWS.config.credentials = new AWS.TemporaryCredentials();
   * @example Creating a new credentials object for an IAM role
   *   AWS.config.credentials = new AWS.TemporaryCredentials({
   *     RoleArn: 'arn:aws:iam::1234567890:role/TemporaryCredentials',
   *   });
   * @see AWS.STS.assumeRole
   * @see AWS.STS.getSessionToken
   */
  constructor: function TemporaryCredentials(params, masterCredentials) {
    AWS.Credentials.call(this);
    this.loadMasterCredentials(masterCredentials);
    this.expired = true;

    this.params = params || {};
    if (this.params.RoleArn) {
      this.params.RoleSessionName =
        this.params.RoleSessionName || 'temporary-credentials';
    }
  },

  /**
   * Refreshes credentials using {AWS.STS.assumeRole} or
   * {AWS.STS.getSessionToken}, depending on whether an IAM role ARN was passed
   * to the credentials {constructor}.
   *
   * @callback callback function(err)
   *   Called when the STS service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh (callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   */
  load: function load (callback) {
    var self = this;
    self.createClients();
    self.masterCredentials.get(function () {
      self.service.config.credentials = self.masterCredentials;
      var operation = self.params.RoleArn ?
        self.service.assumeRole : self.service.getSessionToken;
      operation.call(self.service, function (err, data) {
        if (!err) {
          self.service.credentialsFrom(data, self);
        }
        callback(err);
      });
    });
  },

  /**
   * @api private
   */
  loadMasterCredentials: function loadMasterCredentials (masterCredentials) {
    this.masterCredentials = masterCredentials || AWS.config.credentials;
    while (this.masterCredentials.masterCredentials) {
      this.masterCredentials = this.masterCredentials.masterCredentials;
    }

    if (typeof this.masterCredentials.get !== 'function') {
      this.masterCredentials = new AWS.Credentials(this.masterCredentials);
    }
  },

  /**
   * @api private
   */
  createClients: function () {
    this.service = this.service || new STS({params: this.params});
  }

});


/***/ }),

/***/ 11017:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var fs = __webpack_require__(35747);
var STS = __webpack_require__(57513);
var iniLoader = AWS.util.iniLoader;

/**
 * Represents OIDC credentials from a file on disk
 * If the credentials expire, the SDK can {refresh} the credentials
 * from the file.
 *
 * ## Using the web identity token file
 *
 * This provider is checked by default in the Node.js environment. To use
 * the provider simply add your OIDC token to a file (ASCII encoding) and
 * share the filename in either AWS_WEB_IDENTITY_TOKEN_FILE environment
 * variable or web_identity_token_file shared config variable
 *
 * The file contains encoded OIDC token and the characters are
 * ASCII encoded. OIDC tokens are JSON Web Tokens (JWT).
 * JWT's are 3 base64 encoded strings joined by the '.' character.
 *
 * This class will read filename from AWS_WEB_IDENTITY_TOKEN_FILE
 * environment variable or web_identity_token_file shared config variable,
 * and get the OIDC token from filename.
 * It will also read IAM role to be assumed from AWS_ROLE_ARN
 * environment variable or role_arn shared config variable.
 * This provider gets credetials using the {AWS.STS.assumeRoleWithWebIdentity}
 * service operation
 *
 * @!macro nobrowser
 */
AWS.TokenFileWebIdentityCredentials = AWS.util.inherit(AWS.Credentials, {

  /**
   * @example Creating a new credentials object
   *  AWS.config.credentials = new AWS.TokenFileWebIdentityCredentials(
   *   // optionally provide configuration to apply to the underlying AWS.STS service client
   *   // if configuration is not provided, then configuration will be pulled from AWS.config
   *   {
   *     // specify timeout options
   *     httpOptions: {
   *       timeout: 100
   *     }
   *   });
   * @see AWS.Config
   */
  constructor: function TokenFileWebIdentityCredentials(clientConfig) {
    AWS.Credentials.call(this);
    this.data = null;
    this.clientConfig = AWS.util.copy(clientConfig || {});
  },

  /**
   * Returns params from environment variables
   *
   * @api private
   */
  getParamsFromEnv: function getParamsFromEnv() {
    var ENV_TOKEN_FILE = 'AWS_WEB_IDENTITY_TOKEN_FILE',
        ENV_ROLE_ARN = 'AWS_ROLE_ARN';
    if (process.env[ENV_TOKEN_FILE] && process.env[ENV_ROLE_ARN]) {
      return [{
        envTokenFile: process.env[ENV_TOKEN_FILE],
        roleArn: process.env[ENV_ROLE_ARN],
        roleSessionName: process.env['AWS_ROLE_SESSION_NAME']
      }];
    }
  },

  /**
   * Returns params from shared config variables
   *
   * @api private
   */
  getParamsFromSharedConfig: function getParamsFromSharedConfig() {
    var profiles = AWS.util.getProfilesFromSharedConfig(iniLoader);
    var profileName = process.env.AWS_PROFILE || AWS.util.defaultProfile;
    var profile = profiles[profileName] || {};

    if (Object.keys(profile).length === 0) {
      throw AWS.util.error(
        new Error('Profile ' + profileName + ' not found'),
        { code: 'TokenFileWebIdentityCredentialsProviderFailure' }
      );
    }

    var paramsArray = [];

    while (!profile['web_identity_token_file'] && profile['source_profile']) {
      paramsArray.unshift({
        roleArn: profile['role_arn'],
        roleSessionName: profile['role_session_name']
      });
      var sourceProfile = profile['source_profile'];
      profile = profiles[sourceProfile];
    }

    paramsArray.unshift({
      envTokenFile: profile['web_identity_token_file'],
      roleArn: profile['role_arn'],
      roleSessionName: profile['role_session_name']
    });

    return paramsArray;
  },

  /**
   * Refreshes credentials using {AWS.STS.assumeRoleWithWebIdentity}
   *
   * @callback callback function(err)
   *   Called when the STS service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see AWS.Credentials.get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
  */
  assumeRoleChaining: function assumeRoleChaining(paramsArray, callback) {
    var self = this;
    if (paramsArray.length === 0) {
      self.service.credentialsFrom(self.data, self);
      callback();
    } else {
      var params = paramsArray.shift();
      self.service.config.credentials = self.service.credentialsFrom(self.data, self);
      self.service.assumeRole(
        {
          RoleArn: params.roleArn,
          RoleSessionName: params.roleSessionName || 'token-file-web-identity'
        },
        function (err, data) {
          self.data = null;
          if (err) {
            callback(err);
          } else {
            self.data = data;
            self.assumeRoleChaining(paramsArray, callback);
          }
        }
      );
    }
  },

  /**
   * @api private
   */
  load: function load(callback) {
    var self = this;
    try {
      var paramsArray = self.getParamsFromEnv();
      if (!paramsArray) {
        paramsArray = self.getParamsFromSharedConfig();
      }
      if (paramsArray) {
        var params = paramsArray.shift();
        var oidcToken = fs.readFileSync(params.envTokenFile, {encoding: 'ascii'});
        if (!self.service) {
          self.createClients();
        }
        self.service.assumeRoleWithWebIdentity(
          {
            WebIdentityToken: oidcToken,
            RoleArn: params.roleArn,
            RoleSessionName: params.roleSessionName || 'token-file-web-identity'
          },
          function (err, data) {
            self.data = null;
            if (err) {
              callback(err);
            } else {
              self.data = data;
              self.assumeRoleChaining(paramsArray, callback);
            }
          }
        );
      }
    } catch (err) {
      callback(err);
    }
  },

  /**
   * @api private
   */
  createClients: function() {
    if (!this.service) {
      var stsConfig = AWS.util.merge({}, this.clientConfig);
      this.service = new STS(stsConfig);

      // Retry in case of IDPCommunicationErrorException or InvalidIdentityToken
      this.service.retryableError = function(error) {
        if (error.code === 'IDPCommunicationErrorException' || error.code === 'InvalidIdentityToken') {
          return true;
        } else {
          return AWS.Service.prototype.retryableError.call(this, error);
        }
      };
    }
  }
});


/***/ }),

/***/ 74998:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var STS = __webpack_require__(57513);

/**
 * Represents credentials retrieved from STS Web Identity Federation support.
 *
 * By default this provider gets credentials using the
 * {AWS.STS.assumeRoleWithWebIdentity} service operation. This operation
 * requires a `RoleArn` containing the ARN of the IAM trust policy for the
 * application for which credentials will be given. In addition, the
 * `WebIdentityToken` must be set to the token provided by the identity
 * provider. See {constructor} for an example on creating a credentials
 * object with proper `RoleArn` and `WebIdentityToken` values.
 *
 * ## Refreshing Credentials from Identity Service
 *
 * In addition to AWS credentials expiring after a given amount of time, the
 * login token from the identity provider will also expire. Once this token
 * expires, it will not be usable to refresh AWS credentials, and another
 * token will be needed. The SDK does not manage refreshing of the token value,
 * but this can be done through a "refresh token" supported by most identity
 * providers. Consult the documentation for the identity provider for refreshing
 * tokens. Once the refreshed token is acquired, you should make sure to update
 * this new token in the credentials object's {params} property. The following
 * code will update the WebIdentityToken, assuming you have retrieved an updated
 * token from the identity provider:
 *
 * ```javascript
 * AWS.config.credentials.params.WebIdentityToken = updatedToken;
 * ```
 *
 * Future calls to `credentials.refresh()` will now use the new token.
 *
 * @!attribute params
 *   @return [map] the map of params passed to
 *     {AWS.STS.assumeRoleWithWebIdentity}. To update the token, set the
 *     `params.WebIdentityToken` property.
 * @!attribute data
 *   @return [map] the raw data response from the call to
 *     {AWS.STS.assumeRoleWithWebIdentity}. Use this if you want to get
 *     access to other properties from the response.
 */
AWS.WebIdentityCredentials = AWS.util.inherit(AWS.Credentials, {
  /**
   * Creates a new credentials object.
   * @param (see AWS.STS.assumeRoleWithWebIdentity)
   * @example Creating a new credentials object
   *   AWS.config.credentials = new AWS.WebIdentityCredentials({
   *     RoleArn: 'arn:aws:iam::1234567890:role/WebIdentity',
   *     WebIdentityToken: 'ABCDEFGHIJKLMNOP', // token from identity service
   *     RoleSessionName: 'web' // optional name, defaults to web-identity
   *   }, {
   *     // optionally provide configuration to apply to the underlying AWS.STS service client
   *     // if configuration is not provided, then configuration will be pulled from AWS.config
   *
   *     // specify timeout options
   *     httpOptions: {
   *       timeout: 100
   *     }
   *   });
   * @see AWS.STS.assumeRoleWithWebIdentity
   * @see AWS.Config
   */
  constructor: function WebIdentityCredentials(params, clientConfig) {
    AWS.Credentials.call(this);
    this.expired = true;
    this.params = params;
    this.params.RoleSessionName = this.params.RoleSessionName || 'web-identity';
    this.data = null;
    this._clientConfig = AWS.util.copy(clientConfig || {});
  },

  /**
   * Refreshes credentials using {AWS.STS.assumeRoleWithWebIdentity}
   *
   * @callback callback function(err)
   *   Called when the STS service responds (or fails). When
   *   this callback is called with no error, it means that the credentials
   *   information has been loaded into the object (as the `accessKeyId`,
   *   `secretAccessKey`, and `sessionToken` properties).
   *   @param err [Error] if an error occurred, this value will be filled
   * @see get
   */
  refresh: function refresh(callback) {
    this.coalesceRefresh(callback || AWS.util.fn.callback);
  },

  /**
   * @api private
   */
  load: function load(callback) {
    var self = this;
    self.createClients();
    self.service.assumeRoleWithWebIdentity(function (err, data) {
      self.data = null;
      if (!err) {
        self.data = data;
        self.service.credentialsFrom(data, self);
      }
      callback(err);
    });
  },

  /**
   * @api private
   */
  createClients: function() {
    if (!this.service) {
      var stsConfig = AWS.util.merge({}, this._clientConfig);
      stsConfig.params = this.params;
      this.service = new STS(stsConfig);
    }
  }

});


/***/ }),

/***/ 45313:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var util = __webpack_require__(77985);
var endpointDiscoveryEnabledEnvs = ['AWS_ENABLE_ENDPOINT_DISCOVERY', 'AWS_ENDPOINT_DISCOVERY_ENABLED'];

/**
 * Generate key (except resources and operation part) to index the endpoints in the cache
 * If input shape has endpointdiscoveryid trait then use
 *   accessKey + operation + resources + region + service as cache key
 * If input shape doesn't have endpointdiscoveryid trait then use
 *   accessKey + region + service as cache key
 * @return [map<String,String>] object with keys to index endpoints.
 * @api private
 */
function getCacheKey(request) {
  var service = request.service;
  var api = service.api || {};
  var operations = api.operations;
  var identifiers = {};
  if (service.config.region) {
    identifiers.region = service.config.region;
  }
  if (api.serviceId) {
    identifiers.serviceId = api.serviceId;
  }
  if (service.config.credentials.accessKeyId) {
    identifiers.accessKeyId = service.config.credentials.accessKeyId;
  }
  return identifiers;
}

/**
 * Recursive helper for marshallCustomIdentifiers().
 * Looks for required string input members that have 'endpointdiscoveryid' trait.
 * @api private
 */
function marshallCustomIdentifiersHelper(result, params, shape) {
  if (!shape || params === undefined || params === null) return;
  if (shape.type === 'structure' && shape.required && shape.required.length > 0) {
    util.arrayEach(shape.required, function(name) {
      var memberShape = shape.members[name];
      if (memberShape.endpointDiscoveryId === true) {
        var locationName = memberShape.isLocationName ? memberShape.name : name;
        result[locationName] = String(params[name]);
      } else {
        marshallCustomIdentifiersHelper(result, params[name], memberShape);
      }
    });
  }
}

/**
 * Get custom identifiers for cache key.
 * Identifies custom identifiers by checking each shape's `endpointDiscoveryId` trait.
 * @param [object] request object
 * @param [object] input shape of the given operation's api
 * @api private
 */
function marshallCustomIdentifiers(request, shape) {
  var identifiers = {};
  marshallCustomIdentifiersHelper(identifiers, request.params, shape);
  return identifiers;
}

/**
 * Call endpoint discovery operation when it's optional.
 * When endpoint is available in cache then use the cached endpoints. If endpoints
 * are unavailable then use regional endpoints and call endpoint discovery operation
 * asynchronously. This is turned off by default.
 * @param [object] request object
 * @api private
 */
function optionalDiscoverEndpoint(request) {
  var service = request.service;
  var api = service.api;
  var operationModel = api.operations ? api.operations[request.operation] : undefined;
  var inputShape = operationModel ? operationModel.input : undefined;

  var identifiers = marshallCustomIdentifiers(request, inputShape);
  var cacheKey = getCacheKey(request);
  if (Object.keys(identifiers).length > 0) {
    cacheKey = util.update(cacheKey, identifiers);
    if (operationModel) cacheKey.operation = operationModel.name;
  }
  var endpoints = AWS.endpointCache.get(cacheKey);
  if (endpoints && endpoints.length === 1 && endpoints[0].Address === '') {
    //endpoint operation is being made but response not yet received
    //or endpoint operation just failed in 1 minute
    return;
  } else if (endpoints && endpoints.length > 0) {
    //found endpoint record from cache
    request.httpRequest.updateEndpoint(endpoints[0].Address);
  } else {
    //endpoint record not in cache or outdated. make discovery operation
    var endpointRequest = service.makeRequest(api.endpointOperation, {
      Operation: operationModel.name,
      Identifiers: identifiers,
    });
    addApiVersionHeader(endpointRequest);
    endpointRequest.removeListener('validate', AWS.EventListeners.Core.VALIDATE_PARAMETERS);
    endpointRequest.removeListener('retry', AWS.EventListeners.Core.RETRY_CHECK);
    //put in a placeholder for endpoints already requested, prevent
    //too much in-flight calls
    AWS.endpointCache.put(cacheKey, [{
      Address: '',
      CachePeriodInMinutes: 1
    }]);
    endpointRequest.send(function(err, data) {
      if (data && data.Endpoints) {
        AWS.endpointCache.put(cacheKey, data.Endpoints);
      } else if (err) {
        AWS.endpointCache.put(cacheKey, [{
          Address: '',
          CachePeriodInMinutes: 1 //not to make more endpoint operation in next 1 minute
        }]);
      }
    });
  }
}

var requestQueue = {};

/**
 * Call endpoint discovery operation when it's required.
 * When endpoint is available in cache then use cached ones. If endpoints are
 * unavailable then SDK should call endpoint operation then use returned new
 * endpoint for the api call. SDK will automatically attempt to do endpoint
 * discovery. This is turned off by default
 * @param [object] request object
 * @api private
 */
function requiredDiscoverEndpoint(request, done) {
  var service = request.service;
  var api = service.api;
  var operationModel = api.operations ? api.operations[request.operation] : undefined;
  var inputShape = operationModel ? operationModel.input : undefined;

  var identifiers = marshallCustomIdentifiers(request, inputShape);
  var cacheKey = getCacheKey(request);
  if (Object.keys(identifiers).length > 0) {
    cacheKey = util.update(cacheKey, identifiers);
    if (operationModel) cacheKey.operation = operationModel.name;
  }
  var cacheKeyStr = AWS.EndpointCache.getKeyString(cacheKey);
  var endpoints = AWS.endpointCache.get(cacheKeyStr); //endpoint cache also accepts string keys
  if (endpoints && endpoints.length === 1 && endpoints[0].Address === '') {
    //endpoint operation is being made but response not yet received
    //push request object to a pending queue
    if (!requestQueue[cacheKeyStr]) requestQueue[cacheKeyStr] = [];
    requestQueue[cacheKeyStr].push({request: request, callback: done});
    return;
  } else if (endpoints && endpoints.length > 0) {
    request.httpRequest.updateEndpoint(endpoints[0].Address);
    done();
  } else {
    var endpointRequest = service.makeRequest(api.endpointOperation, {
      Operation: operationModel.name,
      Identifiers: identifiers,
    });
    endpointRequest.removeListener('validate', AWS.EventListeners.Core.VALIDATE_PARAMETERS);
    addApiVersionHeader(endpointRequest);

    //put in a placeholder for endpoints already requested, prevent
    //too much in-flight calls
    AWS.endpointCache.put(cacheKeyStr, [{
      Address: '',
      CachePeriodInMinutes: 60 //long-live cache
    }]);
    endpointRequest.send(function(err, data) {
      if (err) {
        request.response.error = util.error(err, { retryable: false });
        AWS.endpointCache.remove(cacheKey);

        //fail all the pending requests in batch
        if (requestQueue[cacheKeyStr]) {
          var pendingRequests = requestQueue[cacheKeyStr];
          util.arrayEach(pendingRequests, function(requestContext) {
            requestContext.request.response.error = util.error(err, { retryable: false });
            requestContext.callback();
          });
          delete requestQueue[cacheKeyStr];
        }
      } else if (data) {
        AWS.endpointCache.put(cacheKeyStr, data.Endpoints);
        request.httpRequest.updateEndpoint(data.Endpoints[0].Address);

        //update the endpoint for all the pending requests in batch
        if (requestQueue[cacheKeyStr]) {
          var pendingRequests = requestQueue[cacheKeyStr];
          util.arrayEach(pendingRequests, function(requestContext) {
            requestContext.request.httpRequest.updateEndpoint(data.Endpoints[0].Address);
            requestContext.callback();
          });
          delete requestQueue[cacheKeyStr];
        }
      }
      done();
    });
  }
}

/**
 * add api version header to endpoint operation
 * @api private
 */
function addApiVersionHeader(endpointRequest) {
  var api = endpointRequest.service.api;
  var apiVersion = api.apiVersion;
  if (apiVersion && !endpointRequest.httpRequest.headers['x-amz-api-version']) {
    endpointRequest.httpRequest.headers['x-amz-api-version'] = apiVersion;
  }
}

/**
 * If api call gets invalid endpoint exception, SDK should attempt to remove the invalid
 * endpoint from cache.
 * @api private
 */
function invalidateCachedEndpoints(response) {
  var error = response.error;
  var httpResponse = response.httpResponse;
  if (error &&
    (error.code === 'InvalidEndpointException' || httpResponse.statusCode === 421)
  ) {
    var request = response.request;
    var operations = request.service.api.operations || {};
    var inputShape = operations[request.operation] ? operations[request.operation].input : undefined;
    var identifiers = marshallCustomIdentifiers(request, inputShape);
    var cacheKey = getCacheKey(request);
    if (Object.keys(identifiers).length > 0) {
      cacheKey = util.update(cacheKey, identifiers);
      if (operations[request.operation]) cacheKey.operation = operations[request.operation].name;
    }
    AWS.endpointCache.remove(cacheKey);
  }
}

/**
 * If endpoint is explicitly configured, SDK should not do endpoint discovery in anytime.
 * @param [object] client Service client object.
 * @api private
 */
function hasCustomEndpoint(client) {
  //if set endpoint is set for specific client, enable endpoint discovery will raise an error.
  if (client._originalConfig && client._originalConfig.endpoint && client._originalConfig.endpointDiscoveryEnabled === true) {
    throw util.error(new Error(), {
      code: 'ConfigurationException',
      message: 'Custom endpoint is supplied; endpointDiscoveryEnabled must not be true.'
    });
  };
  var svcConfig = AWS.config[client.serviceIdentifier] || {};
  return Boolean(AWS.config.endpoint || svcConfig.endpoint || (client._originalConfig && client._originalConfig.endpoint));
}

/**
 * @api private
 */
function isFalsy(value) {
  return ['false', '0'].indexOf(value) >= 0;
}

/**
 * If endpoint discovery should perform for this request when no operation requires endpoint
 * discovery for the given service.
 * SDK performs config resolution in order like below:
 * 1. If set in client configuration.
 * 2. If set in env AWS_ENABLE_ENDPOINT_DISCOVERY.
 * 3. If set in shared ini config file with key 'endpoint_discovery_enabled'.
 * @param [object] request request object.
 * @returns [boolean|undefined] if endpoint discovery config is not set in any source, this
 *  function returns undefined
 * @api private
 */
function resolveEndpointDiscoveryConfig(request) {
  var service = request.service || {};
  if (service.config.endpointDiscoveryEnabled !== undefined) {
    return service.config.endpointDiscoveryEnabled;
  }

  //shared ini file is only available in Node
  //not to check env in browser
  if (util.isBrowser()) return undefined;

  // If any of recognized endpoint discovery config env is set
  for (var i = 0; i < endpointDiscoveryEnabledEnvs.length; i++) {
    var env = endpointDiscoveryEnabledEnvs[i];
    if (Object.prototype.hasOwnProperty.call(process.env, env)) {
      if (process.env[env] === '' || process.env[env] === undefined) {
        throw util.error(new Error(), {
          code: 'ConfigurationException',
          message: 'environmental variable ' + env + ' cannot be set to nothing'
        });
      }
      return !isFalsy(process.env[env]);
    }
  }

  var configFile = {};
  try {
    configFile = AWS.util.iniLoader ? AWS.util.iniLoader.loadFrom({
      isConfig: true,
      filename: process.env[AWS.util.sharedConfigFileEnv]
    }) : {};
  } catch (e) {}
  var sharedFileConfig = configFile[
    process.env.AWS_PROFILE || AWS.util.defaultProfile
  ] || {};
  if (Object.prototype.hasOwnProperty.call(sharedFileConfig, 'endpoint_discovery_enabled')) {
    if (sharedFileConfig.endpoint_discovery_enabled === undefined) {
      throw util.error(new Error(), {
        code: 'ConfigurationException',
        message: 'config file entry \'endpoint_discovery_enabled\' cannot be set to nothing'
      });
    }
    return !isFalsy(sharedFileConfig.endpoint_discovery_enabled);
  }
  return undefined;
}

/**
 * attach endpoint discovery logic to request object
 * @param [object] request
 * @api private
 */
function discoverEndpoint(request, done) {
  var service = request.service || {};
  if (hasCustomEndpoint(service) || request.isPresigned()) return done();

  var operations = service.api.operations || {};
  var operationModel = operations[request.operation];
  var isEndpointDiscoveryRequired = operationModel ? operationModel.endpointDiscoveryRequired : 'NULL';
  var isEnabled = resolveEndpointDiscoveryConfig(request);
  var hasRequiredEndpointDiscovery = service.api.hasRequiredEndpointDiscovery;
  if (isEnabled || hasRequiredEndpointDiscovery) {
    // Once a customer enables endpoint discovery, the SDK should start appending
    // the string endpoint-discovery to the user-agent on all requests.
    request.httpRequest.appendToUserAgent('endpoint-discovery');
  }
  switch (isEndpointDiscoveryRequired) {
    case 'OPTIONAL':
      if (isEnabled || hasRequiredEndpointDiscovery) {
        // For a given service; if at least one operation requires endpoint discovery then the SDK must enable endpoint discovery
        // by default for all operations of that service, including operations where endpoint discovery is optional.
        optionalDiscoverEndpoint(request);
        request.addNamedListener('INVALIDATE_CACHED_ENDPOINTS', 'extractError', invalidateCachedEndpoints);
      }
      done();
      break;
    case 'REQUIRED':
      if (isEnabled === false) {
        // For a given operation; if endpoint discovery is required and it has been disabled on the SDK client,
        // then the SDK must return a clear and actionable exception.
        request.response.error = util.error(new Error(), {
          code: 'ConfigurationException',
          message: 'Endpoint Discovery is disabled but ' + service.api.className + '.' + request.operation +
                    '() requires it. Please check your configurations.'
        });
        done();
        break;
      }
      request.addNamedListener('INVALIDATE_CACHED_ENDPOINTS', 'extractError', invalidateCachedEndpoints);
      requiredDiscoverEndpoint(request, done);
      break;
    case 'NULL':
    default:
      done();
      break;
  }
}

module.exports = {
  discoverEndpoint: discoverEndpoint,
  requiredDiscoverEndpoint: requiredDiscoverEndpoint,
  optionalDiscoverEndpoint: optionalDiscoverEndpoint,
  marshallCustomIdentifiers: marshallCustomIdentifiers,
  getCacheKey: getCacheKey,
  invalidateCachedEndpoint: invalidateCachedEndpoints,
};


/***/ }),

/***/ 76663:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var util = AWS.util;
var typeOf = __webpack_require__(48084).typeOf;
var DynamoDBSet = __webpack_require__(20304);
var NumberValue = __webpack_require__(91593);

AWS.DynamoDB.Converter = {
  /**
   * Convert a JavaScript value to its equivalent DynamoDB AttributeValue type
   *
   * @param data [any] The data to convert to a DynamoDB AttributeValue
   * @param options [map]
   * @option options convertEmptyValues [Boolean] Whether to automatically
   *                                              convert empty strings, blobs,
   *                                              and sets to `null`
   * @option options wrapNumbers [Boolean]  Whether to return numbers as a
   *                                        NumberValue object instead of
   *                                        converting them to native JavaScript
   *                                        numbers. This allows for the safe
   *                                        round-trip transport of numbers of
   *                                        arbitrary size.
   * @return [map] An object in the Amazon DynamoDB AttributeValue format
   *
   * @see AWS.DynamoDB.Converter.marshall AWS.DynamoDB.Converter.marshall to
   *    convert entire records (rather than individual attributes)
   */
  input: function convertInput(data, options) {
    options = options || {};
    var type = typeOf(data);
    if (type === 'Object') {
      return formatMap(data, options);
    } else if (type === 'Array') {
      return formatList(data, options);
    } else if (type === 'Set') {
      return formatSet(data, options);
    } else if (type === 'String') {
      if (data.length === 0 && options.convertEmptyValues) {
        return convertInput(null);
      }
      return { S: data };
    } else if (type === 'Number' || type === 'NumberValue') {
      return { N: data.toString() };
    } else if (type === 'Binary') {
      if (data.length === 0 && options.convertEmptyValues) {
        return convertInput(null);
      }
      return { B: data };
    } else if (type === 'Boolean') {
      return { BOOL: data };
    } else if (type === 'null') {
      return { NULL: true };
    } else if (type !== 'undefined' && type !== 'Function') {
      // this value has a custom constructor
      return formatMap(data, options);
    }
  },

  /**
   * Convert a JavaScript object into a DynamoDB record.
   *
   * @param data [any] The data to convert to a DynamoDB record
   * @param options [map]
   * @option options convertEmptyValues [Boolean] Whether to automatically
   *                                              convert empty strings, blobs,
   *                                              and sets to `null`
   * @option options wrapNumbers [Boolean]  Whether to return numbers as a
   *                                        NumberValue object instead of
   *                                        converting them to native JavaScript
   *                                        numbers. This allows for the safe
   *                                        round-trip transport of numbers of
   *                                        arbitrary size.
   *
   * @return [map] An object in the DynamoDB record format.
   *
   * @example Convert a JavaScript object into a DynamoDB record
   *  var marshalled = AWS.DynamoDB.Converter.marshall({
   *    string: 'foo',
   *    list: ['fizz', 'buzz', 'pop'],
   *    map: {
   *      nestedMap: {
   *        key: 'value',
   *      }
   *    },
   *    number: 123,
   *    nullValue: null,
   *    boolValue: true,
   *    stringSet: new DynamoDBSet(['foo', 'bar', 'baz'])
   *  });
   */
  marshall: function marshallItem(data, options) {
    return AWS.DynamoDB.Converter.input(data, options).M;
  },

  /**
   * Convert a DynamoDB AttributeValue object to its equivalent JavaScript type.
   *
   * @param data [map] An object in the Amazon DynamoDB AttributeValue format
   * @param options [map]
   * @option options convertEmptyValues [Boolean] Whether to automatically
   *                                              convert empty strings, blobs,
   *                                              and sets to `null`
   * @option options wrapNumbers [Boolean]  Whether to return numbers as a
   *                                        NumberValue object instead of
   *                                        converting them to native JavaScript
   *                                        numbers. This allows for the safe
   *                                        round-trip transport of numbers of
   *                                        arbitrary size.
   *
   * @return [Object|Array|String|Number|Boolean|null]
   *
   * @see AWS.DynamoDB.Converter.unmarshall AWS.DynamoDB.Converter.unmarshall to
   *    convert entire records (rather than individual attributes)
   */
  output: function convertOutput(data, options) {
    options = options || {};
    var list, map, i;
    for (var type in data) {
      var values = data[type];
      if (type === 'M') {
        map = {};
        for (var key in values) {
          map[key] = convertOutput(values[key], options);
        }
        return map;
      } else if (type === 'L') {
        list = [];
        for (i = 0; i < values.length; i++) {
          list.push(convertOutput(values[i], options));
        }
        return list;
      } else if (type === 'SS') {
        list = [];
        for (i = 0; i < values.length; i++) {
          list.push(values[i] + '');
        }
        return new DynamoDBSet(list);
      } else if (type === 'NS') {
        list = [];
        for (i = 0; i < values.length; i++) {
          list.push(convertNumber(values[i], options.wrapNumbers));
        }
        return new DynamoDBSet(list);
      } else if (type === 'BS') {
        list = [];
        for (i = 0; i < values.length; i++) {
          list.push(AWS.util.buffer.toBuffer(values[i]));
        }
        return new DynamoDBSet(list);
      } else if (type === 'S') {
        return values + '';
      } else if (type === 'N') {
        return convertNumber(values, options.wrapNumbers);
      } else if (type === 'B') {
        return util.buffer.toBuffer(values);
      } else if (type === 'BOOL') {
        return (values === 'true' || values === 'TRUE' || values === true);
      } else if (type === 'NULL') {
        return null;
      }
    }
  },

  /**
   * Convert a DynamoDB record into a JavaScript object.
   *
   * @param data [any] The DynamoDB record
   * @param options [map]
   * @option options convertEmptyValues [Boolean] Whether to automatically
   *                                              convert empty strings, blobs,
   *                                              and sets to `null`
   * @option options wrapNumbers [Boolean]  Whether to return numbers as a
   *                                        NumberValue object instead of
   *                                        converting them to native JavaScript
   *                                        numbers. This allows for the safe
   *                                        round-trip transport of numbers of
   *                                        arbitrary size.
   *
   * @return [map] An object whose properties have been converted from
   *    DynamoDB's AttributeValue format into their corresponding native
   *    JavaScript types.
   *
   * @example Convert a record received from a DynamoDB stream
   *  var unmarshalled = AWS.DynamoDB.Converter.unmarshall({
   *    string: {S: 'foo'},
   *    list: {L: [{S: 'fizz'}, {S: 'buzz'}, {S: 'pop'}]},
   *    map: {
   *      M: {
   *        nestedMap: {
   *          M: {
   *            key: {S: 'value'}
   *          }
   *        }
   *      }
   *    },
   *    number: {N: '123'},
   *    nullValue: {NULL: true},
   *    boolValue: {BOOL: true}
   *  });
   */
  unmarshall: function unmarshall(data, options) {
    return AWS.DynamoDB.Converter.output({M: data}, options);
  }
};

/**
 * @api private
 * @param data [Array]
 * @param options [map]
 */
function formatList(data, options) {
  var list = {L: []};
  for (var i = 0; i < data.length; i++) {
    list['L'].push(AWS.DynamoDB.Converter.input(data[i], options));
  }
  return list;
}

/**
 * @api private
 * @param value [String]
 * @param wrapNumbers [Boolean]
 */
function convertNumber(value, wrapNumbers) {
  return wrapNumbers ? new NumberValue(value) : Number(value);
}

/**
 * @api private
 * @param data [map]
 * @param options [map]
 */
function formatMap(data, options) {
  var map = {M: {}};
  for (var key in data) {
    var formatted = AWS.DynamoDB.Converter.input(data[key], options);
    if (formatted !== void 0) {
      map['M'][key] = formatted;
    }
  }
  return map;
}

/**
 * @api private
 */
function formatSet(data, options) {
  options = options || {};
  var values = data.values;
  if (options.convertEmptyValues) {
    values = filterEmptySetValues(data);
    if (values.length === 0) {
      return AWS.DynamoDB.Converter.input(null);
    }
  }

  var map = {};
  switch (data.type) {
    case 'String': map['SS'] = values; break;
    case 'Binary': map['BS'] = values; break;
    case 'Number': map['NS'] = values.map(function (value) {
      return value.toString();
    });
  }
  return map;
}

/**
 * @api private
 */
function filterEmptySetValues(set) {
    var nonEmptyValues = [];
    var potentiallyEmptyTypes = {
        String: true,
        Binary: true,
        Number: false
    };
    if (potentiallyEmptyTypes[set.type]) {
        for (var i = 0; i < set.values.length; i++) {
            if (set.values[i].length === 0) {
                continue;
            }
            nonEmptyValues.push(set.values[i]);
        }

        return nonEmptyValues;
    }

    return set.values;
}

/**
 * @api private
 */
module.exports = AWS.DynamoDB.Converter;


/***/ }),

/***/ 90030:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var Translator = __webpack_require__(34222);
var DynamoDBSet = __webpack_require__(20304);

/**
 * The document client simplifies working with items in Amazon DynamoDB
 * by abstracting away the notion of attribute values. This abstraction
 * annotates native JavaScript types supplied as input parameters, as well
 * as converts annotated response data to native JavaScript types.
 *
 * ## Marshalling Input and Unmarshalling Response Data
 *
 * The document client affords developers the use of native JavaScript types
 * instead of `AttributeValue`s to simplify the JavaScript development
 * experience with Amazon DynamoDB. JavaScript objects passed in as parameters
 * are marshalled into `AttributeValue` shapes required by Amazon DynamoDB.
 * Responses from DynamoDB are unmarshalled into plain JavaScript objects
 * by the `DocumentClient`. The `DocumentClient`, does not accept
 * `AttributeValue`s in favor of native JavaScript types.
 *
 * |                             JavaScript Type                            | DynamoDB AttributeValue |
 * |:----------------------------------------------------------------------:|-------------------------|
 * | String                                                                 | S                       |
 * | Number                                                                 | N                       |
 * | Boolean                                                                | BOOL                    |
 * | null                                                                   | NULL                    |
 * | Array                                                                  | L                       |
 * | Object                                                                 | M                       |
 * | Buffer, File, Blob, ArrayBuffer, DataView, and JavaScript typed arrays | B                       |
 *
 * ## Support for Sets
 *
 * The `DocumentClient` offers a convenient way to create sets from
 * JavaScript Arrays. The type of set is inferred from the first element
 * in the array. DynamoDB supports string, number, and binary sets. To
 * learn more about supported types see the
 * [Amazon DynamoDB Data Model Documentation](http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html)
 * For more information see {AWS.DynamoDB.DocumentClient.createSet}
 *
 */
AWS.DynamoDB.DocumentClient = AWS.util.inherit({

  /**
   * Creates a DynamoDB document client with a set of configuration options.
   *
   * @option options params [map] An optional map of parameters to bind to every
   *   request sent by this service object.
   * @option options service [AWS.DynamoDB] An optional pre-configured instance
   *  of the AWS.DynamoDB service object to use for requests. The object may
   *  bound parameters used by the document client.
   * @option options convertEmptyValues [Boolean] set to true if you would like
   *  the document client to convert empty values (0-length strings, binary
   *  buffers, and sets) to be converted to NULL types when persisting to
   *  DynamoDB.
   * @option options wrapNumbers [Boolean] Set to true to return numbers as a
   *  NumberValue object instead of converting them to native JavaScript numbers.
   *  This allows for the safe round-trip transport of numbers of arbitrary size.
   * @see AWS.DynamoDB.constructor
   *
   */
  constructor: function DocumentClient(options) {
    var self = this;
    self.options = options || {};
    self.configure(self.options);
  },

  /**
   * @api private
   */
  configure: function configure(options) {
    var self = this;
    self.service = options.service;
    self.bindServiceObject(options);
    self.attrValue = options.attrValue =
      self.service.api.operations.putItem.input.members.Item.value.shape;
  },

  /**
   * @api private
   */
  bindServiceObject: function bindServiceObject(options) {
    var self = this;
    options = options || {};

    if (!self.service) {
      self.service = new AWS.DynamoDB(options);
    } else {
      var config = AWS.util.copy(self.service.config);
      self.service = new self.service.constructor.__super__(config);
      self.service.config.params =
        AWS.util.merge(self.service.config.params || {}, options.params);
    }
  },

  /**
   * @api private
   */
  makeServiceRequest: function(operation, params, callback) {
    var self = this;
    var request = self.service[operation](params);
    self.setupRequest(request);
    self.setupResponse(request);
    if (typeof callback === 'function') {
      request.send(callback);
    }
    return request;
  },

  /**
   * @api private
   */
  serviceClientOperationsMap: {
    batchGet: 'batchGetItem',
    batchWrite: 'batchWriteItem',
    delete: 'deleteItem',
    get: 'getItem',
    put: 'putItem',
    query: 'query',
    scan: 'scan',
    update: 'updateItem',
    transactGet: 'transactGetItems',
    transactWrite: 'transactWriteItems'
  },

  /**
   * Returns the attributes of one or more items from one or more tables
   * by delegating to `AWS.DynamoDB.batchGetItem()`.
   *
   * Supply the same parameters as {AWS.DynamoDB.batchGetItem} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.batchGetItem
   * @example Get items from multiple tables
   *  var params = {
   *    RequestItems: {
   *      'Table-1': {
   *        Keys: [
   *          {
   *             HashKey: 'haskey',
   *             NumberRangeKey: 1
   *          }
   *        ]
   *      },
   *      'Table-2': {
   *        Keys: [
   *          { foo: 'bar' },
   *        ]
   *      }
   *    }
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.batchGet(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   *
   */
  batchGet: function(params, callback) {
    var operation = this.serviceClientOperationsMap['batchGet'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Puts or deletes multiple items in one or more tables by delegating
   * to `AWS.DynamoDB.batchWriteItem()`.
   *
   * Supply the same parameters as {AWS.DynamoDB.batchWriteItem} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.batchWriteItem
   * @example Write to and delete from a table
   *  var params = {
   *    RequestItems: {
   *      'Table-1': [
   *        {
   *          DeleteRequest: {
   *            Key: { HashKey: 'someKey' }
   *          }
   *        },
   *        {
   *          PutRequest: {
   *            Item: {
   *              HashKey: 'anotherKey',
   *              NumAttribute: 1,
   *              BoolAttribute: true,
   *              ListAttribute: [1, 'two', false],
   *              MapAttribute: { foo: 'bar' }
   *            }
   *          }
   *        }
   *      ]
   *    }
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.batchWrite(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   *
   */
  batchWrite: function(params, callback) {
    var operation = this.serviceClientOperationsMap['batchWrite'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Deletes a single item in a table by primary key by delegating to
   * `AWS.DynamoDB.deleteItem()`
   *
   * Supply the same parameters as {AWS.DynamoDB.deleteItem} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.deleteItem
   * @example Delete an item from a table
   *  var params = {
   *    TableName : 'Table',
   *    Key: {
   *      HashKey: 'hashkey',
   *      NumberRangeKey: 1
   *    }
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.delete(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   *
   */
  delete: function(params, callback) {
    var operation = this.serviceClientOperationsMap['delete'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Returns a set of attributes for the item with the given primary key
   * by delegating to `AWS.DynamoDB.getItem()`.
   *
   * Supply the same parameters as {AWS.DynamoDB.getItem} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.getItem
   * @example Get an item from a table
   *  var params = {
   *    TableName : 'Table',
   *    Key: {
   *      HashKey: 'hashkey'
   *    }
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.get(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   *
   */
  get: function(params, callback) {
    var operation = this.serviceClientOperationsMap['get'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Creates a new item, or replaces an old item with a new item by
   * delegating to `AWS.DynamoDB.putItem()`.
   *
   * Supply the same parameters as {AWS.DynamoDB.putItem} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.putItem
   * @example Create a new item in a table
   *  var params = {
   *    TableName : 'Table',
   *    Item: {
   *       HashKey: 'haskey',
   *       NumAttribute: 1,
   *       BoolAttribute: true,
   *       ListAttribute: [1, 'two', false],
   *       MapAttribute: { foo: 'bar'},
   *       NullAttribute: null
   *    }
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.put(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   *
   */
  put: function(params, callback) {
    var operation = this.serviceClientOperationsMap['put'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Edits an existing item's attributes, or adds a new item to the table if
   * it does not already exist by delegating to `AWS.DynamoDB.updateItem()`.
   *
   * Supply the same parameters as {AWS.DynamoDB.updateItem} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.updateItem
   * @example Update an item with expressions
   *  var params = {
   *    TableName: 'Table',
   *    Key: { HashKey : 'hashkey' },
   *    UpdateExpression: 'set #a = :x + :y',
   *    ConditionExpression: '#a < :MAX',
   *    ExpressionAttributeNames: {'#a' : 'Sum'},
   *    ExpressionAttributeValues: {
   *      ':x' : 20,
   *      ':y' : 45,
   *      ':MAX' : 100,
   *    }
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.update(params, function(err, data) {
   *     if (err) console.log(err);
   *     else console.log(data);
   *  });
   *
   */
  update: function(params, callback) {
    var operation = this.serviceClientOperationsMap['update'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Returns one or more items and item attributes by accessing every item
   * in a table or a secondary index.
   *
   * Supply the same parameters as {AWS.DynamoDB.scan} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.scan
   * @example Scan the table with a filter expression
   *  var params = {
   *    TableName : 'Table',
   *    FilterExpression : 'Year = :this_year',
   *    ExpressionAttributeValues : {':this_year' : 2015}
   *  };
   *
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  documentClient.scan(params, function(err, data) {
   *     if (err) console.log(err);
   *     else console.log(data);
   *  });
   *
   */
  scan: function(params, callback) {
    var operation = this.serviceClientOperationsMap['scan'];
    return this.makeServiceRequest(operation, params, callback);
  },

   /**
    * Directly access items from a table by primary key or a secondary index.
    *
    * Supply the same parameters as {AWS.DynamoDB.query} with
    * `AttributeValue`s substituted by native JavaScript types.
    *
    * @see AWS.DynamoDB.query
    * @example Query an index
    *  var params = {
    *    TableName: 'Table',
    *    IndexName: 'Index',
    *    KeyConditionExpression: 'HashKey = :hkey and RangeKey > :rkey',
    *    ExpressionAttributeValues: {
    *      ':hkey': 'key',
    *      ':rkey': 2015
    *    }
    *  };
    *
    *  var documentClient = new AWS.DynamoDB.DocumentClient();
    *
    *  documentClient.query(params, function(err, data) {
    *     if (err) console.log(err);
    *     else console.log(data);
    *  });
    *
    */
  query: function(params, callback) {
    var operation = this.serviceClientOperationsMap['query'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Synchronous write operation that groups up to 10 action requests
   *
   * Supply the same parameters as {AWS.DynamoDB.transactWriteItems} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.transactWriteItems
   * @example Get items from multiple tables
   *  var params = {
   *    TransactItems: [{
   *      Put: {
   *        TableName : 'Table0',
   *        Item: {
   *          HashKey: 'haskey',
   *          NumAttribute: 1,
   *          BoolAttribute: true,
   *          ListAttribute: [1, 'two', false],
   *          MapAttribute: { foo: 'bar'},
   *          NullAttribute: null
   *        }
   *      }
   *    }, {
   *      Update: {
   *        TableName: 'Table1',
   *        Key: { HashKey : 'hashkey' },
   *        UpdateExpression: 'set #a = :x + :y',
   *        ConditionExpression: '#a < :MAX',
   *        ExpressionAttributeNames: {'#a' : 'Sum'},
   *        ExpressionAttributeValues: {
   *          ':x' : 20,
   *          ':y' : 45,
   *          ':MAX' : 100,
   *        }
   *      }
   *    }]
   *  };
   *
   *  documentClient.transactWrite(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   */
  transactWrite: function(params, callback) {
    var operation = this.serviceClientOperationsMap['transactWrite'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Atomically retrieves multiple items from one or more tables (but not from indexes)
   * in a single account and region.
   *
   * Supply the same parameters as {AWS.DynamoDB.transactGetItems} with
   * `AttributeValue`s substituted by native JavaScript types.
   *
   * @see AWS.DynamoDB.transactGetItems
   * @example Get items from multiple tables
   *  var params = {
   *    TransactItems: [{
   *      Get: {
   *        TableName : 'Table0',
   *        Key: {
   *          HashKey: 'hashkey0'
   *        }
   *      }
   *    }, {
   *      Get: {
   *        TableName : 'Table1',
   *        Key: {
   *          HashKey: 'hashkey1'
   *        }
   *      }
   *    }]
   *  };
   *
   *  documentClient.transactGet(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   */
  transactGet: function(params, callback) {
    var operation = this.serviceClientOperationsMap['transactGet'];
    return this.makeServiceRequest(operation, params, callback);
  },

  /**
   * Creates a set of elements inferring the type of set from
   * the type of the first element. Amazon DynamoDB currently supports
   * the number sets, string sets, and binary sets. For more information
   * about DynamoDB data types see the documentation on the
   * [Amazon DynamoDB Data Model](http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html#DataModel.DataTypes).
   *
   * @param list [Array] Collection to represent your DynamoDB Set
   * @param options [map]
   *  * **validate** [Boolean] set to true if you want to validate the type
   *    of each element in the set. Defaults to `false`.
   * @example Creating a number set
   *  var documentClient = new AWS.DynamoDB.DocumentClient();
   *
   *  var params = {
   *    Item: {
   *      hashkey: 'hashkey'
   *      numbers: documentClient.createSet([1, 2, 3]);
   *    }
   *  };
   *
   *  documentClient.put(params, function(err, data) {
   *    if (err) console.log(err);
   *    else console.log(data);
   *  });
   *
   */
  createSet: function(list, options) {
    options = options || {};
    return new DynamoDBSet(list, options);
  },

  /**
   * @api private
   */
  getTranslator: function() {
    return new Translator(this.options);
  },

  /**
   * @api private
   */
  setupRequest: function setupRequest(request) {
    var self = this;
    var translator = self.getTranslator();
    var operation = request.operation;
    var inputShape = request.service.api.operations[operation].input;
    request._events.validate.unshift(function(req) {
      req.rawParams = AWS.util.copy(req.params);
      req.params = translator.translateInput(req.rawParams, inputShape);
    });
  },

  /**
   * @api private
   */
  setupResponse: function setupResponse(request) {
    var self = this;
    var translator = self.getTranslator();
    var outputShape = self.service.api.operations[request.operation].output;
    request.on('extractData', function(response) {
      response.data = translator.translateOutput(response.data, outputShape);
    });

    var response = request.response;
    response.nextPage = function(cb) {
      var resp = this;
      var req = resp.request;
      var config;
      var service = req.service;
      var operation = req.operation;
      try {
        config = service.paginationConfig(operation, true);
      } catch (e) { resp.error = e; }

      if (!resp.hasNextPage()) {
        if (cb) cb(resp.error, null);
        else if (resp.error) throw resp.error;
        return null;
      }

      var params = AWS.util.copy(req.rawParams);
      if (!resp.nextPageTokens) {
        return cb ? cb(null, null) : null;
      } else {
        var inputTokens = config.inputToken;
        if (typeof inputTokens === 'string') inputTokens = [inputTokens];
        for (var i = 0; i < inputTokens.length; i++) {
          params[inputTokens[i]] = resp.nextPageTokens[i];
        }
        return self[operation](params, cb);
      }
    };
  }

});

/**
 * @api private
 */
module.exports = AWS.DynamoDB.DocumentClient;


/***/ }),

/***/ 91593:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;

/**
 * An object recognizable as a numeric value that stores the underlying number
 * as a string.
 *
 * Intended to be a deserialization target for the DynamoDB Document Client when
 * the `wrapNumbers` flag is set. This allows for numeric values that lose
 * precision when converted to JavaScript's `number` type.
 */
var DynamoDBNumberValue = util.inherit({
  constructor: function NumberValue(value) {
    this.wrapperName = 'NumberValue';
    this.value = value.toString();
  },

  /**
   * Render the underlying value as a number when converting to JSON.
   */
  toJSON: function () {
    return this.toNumber();
  },

  /**
   * Convert the underlying value to a JavaScript number.
   */
  toNumber: function () {
    return Number(this.value);
  },

  /**
   * Return a string representing the unaltered value provided to the
   * constructor.
   */
  toString: function () {
    return this.value;
  }
});

/**
 * @api private
 */
module.exports = DynamoDBNumberValue;


/***/ }),

/***/ 20304:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;
var typeOf = __webpack_require__(48084).typeOf;

/**
 * @api private
 */
var memberTypeToSetType = {
  'String': 'String',
  'Number': 'Number',
  'NumberValue': 'Number',
  'Binary': 'Binary'
};

/**
 * @api private
 */
var DynamoDBSet = util.inherit({

  constructor: function Set(list, options) {
    options = options || {};
    this.wrapperName = 'Set';
    this.initialize(list, options.validate);
  },

  initialize: function(list, validate) {
    var self = this;
    self.values = [].concat(list);
    self.detectType();
    if (validate) {
      self.validate();
    }
  },

  detectType: function() {
    this.type = memberTypeToSetType[typeOf(this.values[0])];
    if (!this.type) {
      throw util.error(new Error(), {
        code: 'InvalidSetType',
        message: 'Sets can contain string, number, or binary values'
      });
    }
  },

  validate: function() {
    var self = this;
    var length = self.values.length;
    var values = self.values;
    for (var i = 0; i < length; i++) {
      if (memberTypeToSetType[typeOf(values[i])] !== self.type) {
        throw util.error(new Error(), {
          code: 'InvalidType',
          message: self.type + ' Set contains ' + typeOf(values[i]) + ' value'
        });
      }
    }
  },

  /**
   * Render the underlying values only when converting to JSON.
   */
  toJSON: function() {
    var self = this;
    return self.values;
  }

});

/**
 * @api private
 */
module.exports = DynamoDBSet;


/***/ }),

/***/ 34222:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;
var convert = __webpack_require__(76663);

var Translator = function(options) {
  options = options || {};
  this.attrValue = options.attrValue;
  this.convertEmptyValues = Boolean(options.convertEmptyValues);
  this.wrapNumbers = Boolean(options.wrapNumbers);
};

Translator.prototype.translateInput = function(value, shape) {
  this.mode = 'input';
  return this.translate(value, shape);
};

Translator.prototype.translateOutput = function(value, shape) {
  this.mode = 'output';
  return this.translate(value, shape);
};

Translator.prototype.translate = function(value, shape) {
  var self = this;
  if (!shape || value === undefined) return undefined;

  if (shape.shape === self.attrValue) {
    return convert[self.mode](value, {
      convertEmptyValues: self.convertEmptyValues,
      wrapNumbers: self.wrapNumbers,
    });
  }
  switch (shape.type) {
    case 'structure': return self.translateStructure(value, shape);
    case 'map': return self.translateMap(value, shape);
    case 'list': return self.translateList(value, shape);
    default: return self.translateScalar(value, shape);
  }
};

Translator.prototype.translateStructure = function(structure, shape) {
  var self = this;
  if (structure == null) return undefined;

  var struct = {};
  util.each(structure, function(name, value) {
    var memberShape = shape.members[name];
    if (memberShape) {
      var result = self.translate(value, memberShape);
      if (result !== undefined) struct[name] = result;
    }
  });
  return struct;
};

Translator.prototype.translateList = function(list, shape) {
  var self = this;
  if (list == null) return undefined;

  var out = [];
  util.arrayEach(list, function(value) {
    var result = self.translate(value, shape.member);
    if (result === undefined) out.push(null);
    else out.push(result);
  });
  return out;
};

Translator.prototype.translateMap = function(map, shape) {
  var self = this;
  if (map == null) return undefined;

  var out = {};
  util.each(map, function(key, value) {
    var result = self.translate(value, shape.value);
    if (result === undefined) out[key] = null;
    else out[key] = result;
  });
  return out;
};

Translator.prototype.translateScalar = function(value, shape) {
  return shape.toType(value);
};

/**
 * @api private
 */
module.exports = Translator;


/***/ }),

/***/ 48084:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;

function typeOf(data) {
  if (data === null && typeof data === 'object') {
    return 'null';
  } else if (data !== undefined && isBinary(data)) {
    return 'Binary';
  } else if (data !== undefined && data.constructor) {
    return data.wrapperName || util.typeName(data.constructor);
  } else if (data !== undefined && typeof data === 'object') {
    // this object is the result of Object.create(null), hence the absence of a
    // defined constructor
    return 'Object';
  } else {
    return 'undefined';
  }
}

function isBinary(data) {
  var types = [
    'Buffer', 'File', 'Blob', 'ArrayBuffer', 'DataView',
    'Int8Array', 'Uint8Array', 'Uint8ClampedArray',
    'Int16Array', 'Uint16Array', 'Int32Array', 'Uint32Array',
    'Float32Array', 'Float64Array'
  ];
  if (util.isNode()) {
    var Stream = util.stream.Stream;
    if (util.Buffer.isBuffer(data) || data instanceof Stream) {
      return true;
    }
  }

  for (var i = 0; i < types.length; i++) {
    if (data !== undefined && data.constructor) {
      if (util.isType(data, types[i])) return true;
      if (util.typeName(data.constructor) === types[i]) return true;
    }
  }

  return false;
}

/**
 * @api private
 */
module.exports = {
  typeOf: typeOf,
  isBinary: isBinary
};


/***/ }),

/***/ 63727:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var eventMessageChunker = __webpack_require__(73630).eventMessageChunker;
var parseEvent = __webpack_require__(52123).parseEvent;

function createEventStream(body, parser, model) {
    var eventMessages = eventMessageChunker(body);

    var events = [];

    for (var i = 0; i < eventMessages.length; i++) {
        events.push(parseEvent(parser, eventMessages[i], model));
    }

    return events;
}

/**
 * @api private
 */
module.exports = {
    createEventStream: createEventStream
};


/***/ }),

/***/ 18518:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;
var Transform = __webpack_require__(92413).Transform;
var allocBuffer = util.buffer.alloc;

/** @type {Transform} */
function EventMessageChunkerStream(options) {
    Transform.call(this, options);

    this.currentMessageTotalLength = 0;
    this.currentMessagePendingLength = 0;
    /** @type {Buffer} */
    this.currentMessage = null;

    /** @type {Buffer} */
    this.messageLengthBuffer = null;
}

EventMessageChunkerStream.prototype = Object.create(Transform.prototype);

/**
 *
 * @param {Buffer} chunk
 * @param {string} encoding
 * @param {*} callback
 */
EventMessageChunkerStream.prototype._transform = function(chunk, encoding, callback) {
    var chunkLength = chunk.length;
    var currentOffset = 0;

    while (currentOffset < chunkLength) {
        // create new message if necessary
        if (!this.currentMessage) {
            // working on a new message, determine total length
            var bytesRemaining = chunkLength - currentOffset;
            // prevent edge case where total length spans 2 chunks
            if (!this.messageLengthBuffer) {
                this.messageLengthBuffer = allocBuffer(4);
            }
            var numBytesForTotal = Math.min(
                4 - this.currentMessagePendingLength, // remaining bytes to fill the messageLengthBuffer
                bytesRemaining // bytes left in chunk
            );

            chunk.copy(
                this.messageLengthBuffer,
                this.currentMessagePendingLength,
                currentOffset,
                currentOffset + numBytesForTotal
            );

            this.currentMessagePendingLength += numBytesForTotal;
            currentOffset += numBytesForTotal;

            if (this.currentMessagePendingLength < 4) {
                // not enough information to create the current message
                break;
            }
            this.allocateMessage(this.messageLengthBuffer.readUInt32BE(0));
            this.messageLengthBuffer = null;
        }

        // write data into current message
        var numBytesToWrite = Math.min(
            this.currentMessageTotalLength - this.currentMessagePendingLength, // number of bytes left to complete message
            chunkLength - currentOffset // number of bytes left in the original chunk
        );
        chunk.copy(
            this.currentMessage, // target buffer
            this.currentMessagePendingLength, // target offset
            currentOffset, // chunk offset
            currentOffset + numBytesToWrite // chunk end to write
        );
        this.currentMessagePendingLength += numBytesToWrite;
        currentOffset += numBytesToWrite;

        // check if a message is ready to be pushed
        if (this.currentMessageTotalLength && this.currentMessageTotalLength === this.currentMessagePendingLength) {
            // push out the message
            this.push(this.currentMessage);
            // cleanup
            this.currentMessage = null;
            this.currentMessageTotalLength = 0;
            this.currentMessagePendingLength = 0;
        }
    }

    callback();
};

EventMessageChunkerStream.prototype._flush = function(callback) {
    if (this.currentMessageTotalLength) {
        if (this.currentMessageTotalLength === this.currentMessagePendingLength) {
            callback(null, this.currentMessage);
        } else {
            callback(new Error('Truncated event message received.'));
        }
    } else {
        callback();
    }
};

/**
 * @param {number} size Size of the message to be allocated.
 * @api private
 */
EventMessageChunkerStream.prototype.allocateMessage = function(size) {
    if (typeof size !== 'number') {
        throw new Error('Attempted to allocate an event message where size was not a number: ' + size);
    }
    this.currentMessageTotalLength = size;
    this.currentMessagePendingLength = 4;
    this.currentMessage = allocBuffer(size);
    this.currentMessage.writeUInt32BE(size, 0);
};

/**
 * @api private
 */
module.exports = {
    EventMessageChunkerStream: EventMessageChunkerStream
};


/***/ }),

/***/ 73630:
/***/ ((module) => {

/**
 * Takes in a buffer of event messages and splits them into individual messages.
 * @param {Buffer} buffer
 * @api private
 */
function eventMessageChunker(buffer) {
    /** @type Buffer[] */
    var messages = [];
    var offset = 0;

    while (offset < buffer.length) {
        var totalLength = buffer.readInt32BE(offset);

        // create new buffer for individual message (shares memory with original)
        var message = buffer.slice(offset, totalLength + offset);
        // increment offset to it starts at the next message
        offset += totalLength;

        messages.push(message);
    }

    return messages;
}

/**
 * @api private
 */
module.exports = {
    eventMessageChunker: eventMessageChunker
};


/***/ }),

/***/ 93773:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var Transform = __webpack_require__(92413).Transform;
var parseEvent = __webpack_require__(52123).parseEvent;

/** @type {Transform} */
function EventUnmarshallerStream(options) {
    options = options || {};
    // set output to object mode
    options.readableObjectMode = true;
    Transform.call(this, options);
    this._readableState.objectMode = true;

    this.parser = options.parser;
    this.eventStreamModel = options.eventStreamModel;
}

EventUnmarshallerStream.prototype = Object.create(Transform.prototype);

/**
 *
 * @param {Buffer} chunk
 * @param {string} encoding
 * @param {*} callback
 */
EventUnmarshallerStream.prototype._transform = function(chunk, encoding, callback) {
    try {
        var event = parseEvent(this.parser, chunk, this.eventStreamModel);
        this.push(event);
        return callback();
    } catch (err) {
        callback(err);
    }
};

/**
 * @api private
 */
module.exports = {
    EventUnmarshallerStream: EventUnmarshallerStream
};


/***/ }),

/***/ 48583:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;
var toBuffer = util.buffer.toBuffer;

/**
 * A lossless representation of a signed, 64-bit integer. Instances of this
 * class may be used in arithmetic expressions as if they were numeric
 * primitives, but the binary representation will be preserved unchanged as the
 * `bytes` property of the object. The bytes should be encoded as big-endian,
 * two's complement integers.
 * @param {Buffer} bytes
 *
 * @api private
 */
function Int64(bytes) {
    if (bytes.length !== 8) {
        throw new Error('Int64 buffers must be exactly 8 bytes');
    }
    if (!util.Buffer.isBuffer(bytes)) bytes = toBuffer(bytes);

    this.bytes = bytes;
}

/**
 * @param {number} number
 * @returns {Int64}
 *
 * @api private
 */
Int64.fromNumber = function(number) {
    if (number > 9223372036854775807 || number < -9223372036854775808) {
        throw new Error(
            number + ' is too large (or, if negative, too small) to represent as an Int64'
        );
    }

    var bytes = new Uint8Array(8);
    for (
        var i = 7, remaining = Math.abs(Math.round(number));
        i > -1 && remaining > 0;
        i--, remaining /= 256
    ) {
        bytes[i] = remaining;
    }

    if (number < 0) {
        negate(bytes);
    }

    return new Int64(bytes);
};

/**
 * @returns {number}
 *
 * @api private
 */
Int64.prototype.valueOf = function() {
    var bytes = this.bytes.slice(0);
    var negative = bytes[0] & 128;
    if (negative) {
        negate(bytes);
    }

    return parseInt(bytes.toString('hex'), 16) * (negative ? -1 : 1);
};

Int64.prototype.toString = function() {
    return String(this.valueOf());
};

/**
 * @param {Buffer} bytes
 *
 * @api private
 */
function negate(bytes) {
    for (var i = 0; i < 8; i++) {
        bytes[i] ^= 0xFF;
    }
    for (var i = 7; i > -1; i--) {
        bytes[i]++;
        if (bytes[i] !== 0) {
            break;
        }
    }
}

/**
 * @api private
 */
module.exports = {
    Int64: Int64
};


/***/ }),

/***/ 52123:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var parseMessage = __webpack_require__(30866).parseMessage;

/**
 *
 * @param {*} parser
 * @param {Buffer} message
 * @param {*} shape
 * @api private
 */
function parseEvent(parser, message, shape) {
    var parsedMessage = parseMessage(message);

    // check if message is an event or error
    var messageType = parsedMessage.headers[':message-type'];
    if (messageType) {
        if (messageType.value === 'error') {
            throw parseError(parsedMessage);
        } else if (messageType.value !== 'event') {
            // not sure how to parse non-events/non-errors, ignore for now
            return;
        }
    }

    // determine event type
    var eventType = parsedMessage.headers[':event-type'];
    // check that the event type is modeled
    var eventModel = shape.members[eventType.value];
    if (!eventModel) {
        return;
    }

    var result = {};
    // check if an event payload exists
    var eventPayloadMemberName = eventModel.eventPayloadMemberName;
    if (eventPayloadMemberName) {
        var payloadShape = eventModel.members[eventPayloadMemberName];
        // if the shape is binary, return the byte array
        if (payloadShape.type === 'binary') {
            result[eventPayloadMemberName] = parsedMessage.body;
        } else {
            result[eventPayloadMemberName] = parser.parse(parsedMessage.body.toString(), payloadShape);
        }
    }

    // read event headers
    var eventHeaderNames = eventModel.eventHeaderMemberNames;
    for (var i = 0; i < eventHeaderNames.length; i++) {
        var name = eventHeaderNames[i];
        if (parsedMessage.headers[name]) {
            // parse the header!
            result[name] = eventModel.members[name].toType(parsedMessage.headers[name].value);
        }
    }

    var output = {};
    output[eventType.value] = result;
    return output;
}

function parseError(message) {
    var errorCode = message.headers[':error-code'];
    var errorMessage = message.headers[':error-message'];
    var error = new Error(errorMessage.value || errorMessage);
    error.code = error.name = errorCode.value || errorCode;
    return error;
}

/**
 * @api private
 */
module.exports = {
    parseEvent: parseEvent
};


/***/ }),

/***/ 30866:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var Int64 = __webpack_require__(48583).Int64;

var splitMessage = __webpack_require__(71765).splitMessage;

var BOOLEAN_TAG = 'boolean';
var BYTE_TAG = 'byte';
var SHORT_TAG = 'short';
var INT_TAG = 'integer';
var LONG_TAG = 'long';
var BINARY_TAG = 'binary';
var STRING_TAG = 'string';
var TIMESTAMP_TAG = 'timestamp';
var UUID_TAG = 'uuid';

/**
 * @api private
 *
 * @param {Buffer} headers
 */
function parseHeaders(headers) {
    var out = {};
    var position = 0;
    while (position < headers.length) {
        var nameLength = headers.readUInt8(position++);
        var name = headers.slice(position, position + nameLength).toString();
        position += nameLength;
        switch (headers.readUInt8(position++)) {
            case 0 /* boolTrue */:
                out[name] = {
                    type: BOOLEAN_TAG,
                    value: true
                };
                break;
            case 1 /* boolFalse */:
                out[name] = {
                    type: BOOLEAN_TAG,
                    value: false
                };
                break;
            case 2 /* byte */:
                out[name] = {
                    type: BYTE_TAG,
                    value: headers.readInt8(position++)
                };
                break;
            case 3 /* short */:
                out[name] = {
                    type: SHORT_TAG,
                    value: headers.readInt16BE(position)
                };
                position += 2;
                break;
            case 4 /* integer */:
                out[name] = {
                    type: INT_TAG,
                    value: headers.readInt32BE(position)
                };
                position += 4;
                break;
            case 5 /* long */:
                out[name] = {
                    type: LONG_TAG,
                    value: new Int64(headers.slice(position, position + 8))
                };
                position += 8;
                break;
            case 6 /* byteArray */:
                var binaryLength = headers.readUInt16BE(position);
                position += 2;
                out[name] = {
                    type: BINARY_TAG,
                    value: headers.slice(position, position + binaryLength)
                };
                position += binaryLength;
                break;
            case 7 /* string */:
                var stringLength = headers.readUInt16BE(position);
                position += 2;
                out[name] = {
                    type: STRING_TAG,
                    value: headers.slice(
                        position,
                        position + stringLength
                    ).toString()
                };
                position += stringLength;
                break;
            case 8 /* timestamp */:
                out[name] = {
                    type: TIMESTAMP_TAG,
                    value: new Date(
                        new Int64(headers.slice(position, position + 8))
                            .valueOf()
                    )
                };
                position += 8;
                break;
            case 9 /* uuid */:
                var uuidChars = headers.slice(position, position + 16)
                    .toString('hex');
                position += 16;
                out[name] = {
                    type: UUID_TAG,
                    value: uuidChars.substr(0, 8) + '-' +
                        uuidChars.substr(8, 4) + '-' +
                        uuidChars.substr(12, 4) + '-' +
                        uuidChars.substr(16, 4) + '-' +
                        uuidChars.substr(20)
                };
                break;
            default:
                throw new Error('Unrecognized header type tag');
        }
    }
    return out;
}

function parseMessage(message) {
    var parsed = splitMessage(message);
    return { headers: parseHeaders(parsed.headers), body: parsed.body };
}

/**
 * @api private
 */
module.exports = {
    parseMessage: parseMessage
};


/***/ }),

/***/ 71765:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;
var toBuffer = util.buffer.toBuffer;

// All prelude components are unsigned, 32-bit integers
var PRELUDE_MEMBER_LENGTH = 4;
// The prelude consists of two components
var PRELUDE_LENGTH = PRELUDE_MEMBER_LENGTH * 2;
// Checksums are always CRC32 hashes.
var CHECKSUM_LENGTH = 4;
// Messages must include a full prelude, a prelude checksum, and a message checksum
var MINIMUM_MESSAGE_LENGTH = PRELUDE_LENGTH + CHECKSUM_LENGTH * 2;

/**
 * @api private
 *
 * @param {Buffer} message
 */
function splitMessage(message) {
    if (!util.Buffer.isBuffer(message)) message = toBuffer(message);

    if (message.length < MINIMUM_MESSAGE_LENGTH) {
        throw new Error('Provided message too short to accommodate event stream message overhead');
    }

    if (message.length !== message.readUInt32BE(0)) {
        throw new Error('Reported message length does not match received message length');
    }

    var expectedPreludeChecksum = message.readUInt32BE(PRELUDE_LENGTH);

    if (
        expectedPreludeChecksum !== util.crypto.crc32(
            message.slice(0, PRELUDE_LENGTH)
        )
    ) {
        throw new Error(
            'The prelude checksum specified in the message (' +
            expectedPreludeChecksum +
            ') does not match the calculated CRC32 checksum.'
        );
    }

    var expectedMessageChecksum = message.readUInt32BE(message.length - CHECKSUM_LENGTH);

    if (
        expectedMessageChecksum !== util.crypto.crc32(
            message.slice(0, message.length - CHECKSUM_LENGTH)
        )
    ) {
        throw new Error(
            'The message checksum did not match the expected value of ' +
                expectedMessageChecksum
        );
    }

    var headersStart = PRELUDE_LENGTH + CHECKSUM_LENGTH;
    var headersEnd = headersStart + message.readUInt32BE(PRELUDE_MEMBER_LENGTH);

    return {
        headers: message.slice(headersStart, headersEnd),
        body: message.slice(headersEnd, message.length - CHECKSUM_LENGTH),
    };
}

/**
 * @api private
 */
module.exports = {
    splitMessage: splitMessage
};


/***/ }),

/***/ 69643:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/**
 * What is necessary to create an event stream in node?
 *  - http response stream
 *  - parser
 *  - event stream model
 */

var EventMessageChunkerStream = __webpack_require__(18518).EventMessageChunkerStream;
var EventUnmarshallerStream = __webpack_require__(93773).EventUnmarshallerStream;

function createEventStream(stream, parser, model) {
    var eventStream = new EventUnmarshallerStream({
        parser: parser,
        eventStreamModel: model
    });

    var eventMessageChunker = new EventMessageChunkerStream();

    stream.pipe(
        eventMessageChunker
    ).pipe(eventStream);

    stream.on('error', function(err) {
        eventMessageChunker.emit('error', err);
    });

    eventMessageChunker.on('error', function(err) {
        eventStream.emit('error', err);
    });

    return eventStream;
}

/**
 * @api private
 */
module.exports = {
    createEventStream: createEventStream
};


/***/ }),

/***/ 54995:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var SequentialExecutor = __webpack_require__(55948);
var DISCOVER_ENDPOINT = __webpack_require__(45313).discoverEndpoint;
/**
 * The namespace used to register global event listeners for request building
 * and sending.
 */
AWS.EventListeners = {
  /**
   * @!attribute VALIDATE_CREDENTIALS
   *   A request listener that validates whether the request is being
   *   sent with credentials.
   *   Handles the {AWS.Request~validate 'validate' Request event}
   *   @example Sending a request without validating credentials
   *     var listener = AWS.EventListeners.Core.VALIDATE_CREDENTIALS;
   *     request.removeListener('validate', listener);
   *   @readonly
   *   @return [Function]
   * @!attribute VALIDATE_REGION
   *   A request listener that validates whether the region is set
   *   for a request.
   *   Handles the {AWS.Request~validate 'validate' Request event}
   *   @example Sending a request without validating region configuration
   *     var listener = AWS.EventListeners.Core.VALIDATE_REGION;
   *     request.removeListener('validate', listener);
   *   @readonly
   *   @return [Function]
   * @!attribute VALIDATE_PARAMETERS
   *   A request listener that validates input parameters in a request.
   *   Handles the {AWS.Request~validate 'validate' Request event}
   *   @example Sending a request without validating parameters
   *     var listener = AWS.EventListeners.Core.VALIDATE_PARAMETERS;
   *     request.removeListener('validate', listener);
   *   @example Disable parameter validation globally
   *     AWS.EventListeners.Core.removeListener('validate',
   *       AWS.EventListeners.Core.VALIDATE_REGION);
   *   @readonly
   *   @return [Function]
   * @!attribute SEND
   *   A request listener that initiates the HTTP connection for a
   *   request being sent. Handles the {AWS.Request~send 'send' Request event}
   *   @example Replacing the HTTP handler
   *     var listener = AWS.EventListeners.Core.SEND;
   *     request.removeListener('send', listener);
   *     request.on('send', function(response) {
   *       customHandler.send(response);
   *     });
   *   @return [Function]
   *   @readonly
   * @!attribute HTTP_DATA
   *   A request listener that reads data from the HTTP connection in order
   *   to build the response data.
   *   Handles the {AWS.Request~httpData 'httpData' Request event}.
   *   Remove this handler if you are overriding the 'httpData' event and
   *   do not want extra data processing and buffering overhead.
   *   @example Disabling default data processing
   *     var listener = AWS.EventListeners.Core.HTTP_DATA;
   *     request.removeListener('httpData', listener);
   *   @return [Function]
   *   @readonly
   */
  Core: {} /* doc hack */
};

/**
 * @api private
 */
function getOperationAuthtype(req) {
  if (!req.service.api.operations) {
    return '';
  }
  var operation = req.service.api.operations[req.operation];
  return operation ? operation.authtype : '';
}

AWS.EventListeners = {
  Core: new SequentialExecutor().addNamedListeners(function(add, addAsync) {
    addAsync('VALIDATE_CREDENTIALS', 'validate',
        function VALIDATE_CREDENTIALS(req, done) {
      if (!req.service.api.signatureVersion && !req.service.config.signatureVersion) return done(); // none
      req.service.config.getCredentials(function(err) {
        if (err) {
          req.response.error = AWS.util.error(err,
            {code: 'CredentialsError', message: 'Missing credentials in config, if using AWS_CONFIG_FILE, set AWS_SDK_LOAD_CONFIG=1'});
        }
        done();
      });
    });

    add('VALIDATE_REGION', 'validate', function VALIDATE_REGION(req) {
      if (!req.service.isGlobalEndpoint) {
        var dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
        if (!req.service.config.region) {
          req.response.error = AWS.util.error(new Error(),
            {code: 'ConfigError', message: 'Missing region in config'});
        } else if (!dnsHostRegex.test(req.service.config.region)) {
          req.response.error = AWS.util.error(new Error(),
            {code: 'ConfigError', message: 'Invalid region in config'});
        }
      }
    });

    add('BUILD_IDEMPOTENCY_TOKENS', 'validate', function BUILD_IDEMPOTENCY_TOKENS(req) {
      if (!req.service.api.operations) {
        return;
      }
      var operation = req.service.api.operations[req.operation];
      if (!operation) {
        return;
      }
      var idempotentMembers = operation.idempotentMembers;
      if (!idempotentMembers.length) {
        return;
      }
      // creates a copy of params so user's param object isn't mutated
      var params = AWS.util.copy(req.params);
      for (var i = 0, iLen = idempotentMembers.length; i < iLen; i++) {
        if (!params[idempotentMembers[i]]) {
          // add the member
          params[idempotentMembers[i]] = AWS.util.uuid.v4();
        }
      }
      req.params = params;
    });

    add('VALIDATE_PARAMETERS', 'validate', function VALIDATE_PARAMETERS(req) {
      if (!req.service.api.operations) {
        return;
      }
      var rules = req.service.api.operations[req.operation].input;
      var validation = req.service.config.paramValidation;
      new AWS.ParamValidator(validation).validate(rules, req.params);
    });

    addAsync('COMPUTE_SHA256', 'afterBuild', function COMPUTE_SHA256(req, done) {
      req.haltHandlersOnError();
      if (!req.service.api.operations) {
        return;
      }
      var operation = req.service.api.operations[req.operation];
      var authtype = operation ? operation.authtype : '';
      if (!req.service.api.signatureVersion && !authtype && !req.service.config.signatureVersion) return done(); // none
      if (req.service.getSignerClass(req) === AWS.Signers.V4) {
        var body = req.httpRequest.body || '';
        if (authtype.indexOf('unsigned-body') >= 0) {
          req.httpRequest.headers['X-Amz-Content-Sha256'] = 'UNSIGNED-PAYLOAD';
          return done();
        }
        AWS.util.computeSha256(body, function(err, sha) {
          if (err) {
            done(err);
          }
          else {
            req.httpRequest.headers['X-Amz-Content-Sha256'] = sha;
            done();
          }
        });
      } else {
        done();
      }
    });

    add('SET_CONTENT_LENGTH', 'afterBuild', function SET_CONTENT_LENGTH(req) {
      var authtype = getOperationAuthtype(req);
      var payloadMember = AWS.util.getRequestPayloadShape(req);
      if (req.httpRequest.headers['Content-Length'] === undefined) {
        try {
          var length = AWS.util.string.byteLength(req.httpRequest.body);
          req.httpRequest.headers['Content-Length'] = length;
        } catch (err) {
          if (payloadMember && payloadMember.isStreaming) {
            if (payloadMember.requiresLength) {
              //streaming payload requires length(s3, glacier)
              throw err;
            } else if (authtype.indexOf('unsigned-body') >= 0) {
              //unbounded streaming payload(lex, mediastore)
              req.httpRequest.headers['Transfer-Encoding'] = 'chunked';
              return;
            } else {
              throw err;
            }
          }
          throw err;
        }
      }
    });

    add('SET_HTTP_HOST', 'afterBuild', function SET_HTTP_HOST(req) {
      req.httpRequest.headers['Host'] = req.httpRequest.endpoint.host;
    });

    add('RESTART', 'restart', function RESTART() {
      var err = this.response.error;
      if (!err || !err.retryable) return;

      this.httpRequest = new AWS.HttpRequest(
        this.service.endpoint,
        this.service.region
      );

      if (this.response.retryCount < this.service.config.maxRetries) {
        this.response.retryCount++;
      } else {
        this.response.error = null;
      }
    });

    var addToHead = true;
    addAsync('DISCOVER_ENDPOINT', 'sign', DISCOVER_ENDPOINT, addToHead);

    addAsync('SIGN', 'sign', function SIGN(req, done) {
      var service = req.service;
      var operations = req.service.api.operations || {};
      var operation = operations[req.operation];
      var authtype = operation ? operation.authtype : '';
      if (!service.api.signatureVersion && !authtype && !service.config.signatureVersion) return done(); // none

      service.config.getCredentials(function (err, credentials) {
        if (err) {
          req.response.error = err;
          return done();
        }

        try {
          var date = service.getSkewCorrectedDate();
          var SignerClass = service.getSignerClass(req);
          var signer = new SignerClass(req.httpRequest,
            service.getSigningName(req),
            {
              signatureCache: service.config.signatureCache,
              operation: operation,
              signatureVersion: service.api.signatureVersion
            });
          signer.setServiceClientId(service._clientId);

          // clear old authorization headers
          delete req.httpRequest.headers['Authorization'];
          delete req.httpRequest.headers['Date'];
          delete req.httpRequest.headers['X-Amz-Date'];

          // add new authorization
          signer.addAuthorization(credentials, date);
          req.signedAt = date;
        } catch (e) {
          req.response.error = e;
        }
        done();
      });
    });

    add('VALIDATE_RESPONSE', 'validateResponse', function VALIDATE_RESPONSE(resp) {
      if (this.service.successfulResponse(resp, this)) {
        resp.data = {};
        resp.error = null;
      } else {
        resp.data = null;
        resp.error = AWS.util.error(new Error(),
          {code: 'UnknownError', message: 'An unknown error occurred.'});
      }
    });

    addAsync('SEND', 'send', function SEND(resp, done) {
      resp.httpResponse._abortCallback = done;
      resp.error = null;
      resp.data = null;

      function callback(httpResp) {
        resp.httpResponse.stream = httpResp;
        var stream = resp.request.httpRequest.stream;
        var service = resp.request.service;
        var api = service.api;
        var operationName = resp.request.operation;
        var operation = api.operations[operationName] || {};

        httpResp.on('headers', function onHeaders(statusCode, headers, statusMessage) {
          resp.request.emit(
            'httpHeaders',
            [statusCode, headers, resp, statusMessage]
          );

          if (!resp.httpResponse.streaming) {
            if (AWS.HttpClient.streamsApiVersion === 2) { // streams2 API check
              // if we detect event streams, we're going to have to
              // return the stream immediately
              if (operation.hasEventOutput && service.successfulResponse(resp)) {
                // skip reading the IncomingStream
                resp.request.emit('httpDone');
                done();
                return;
              }

              httpResp.on('readable', function onReadable() {
                var data = httpResp.read();
                if (data !== null) {
                  resp.request.emit('httpData', [data, resp]);
                }
              });
            } else { // legacy streams API
              httpResp.on('data', function onData(data) {
                resp.request.emit('httpData', [data, resp]);
              });
            }
          }
        });

        httpResp.on('end', function onEnd() {
          if (!stream || !stream.didCallback) {
            if (AWS.HttpClient.streamsApiVersion === 2 && (operation.hasEventOutput && service.successfulResponse(resp))) {
              // don't concatenate response chunks when streaming event stream data when response is successful
              return;
            }
            resp.request.emit('httpDone');
            done();
          }
        });
      }

      function progress(httpResp) {
        httpResp.on('sendProgress', function onSendProgress(value) {
          resp.request.emit('httpUploadProgress', [value, resp]);
        });

        httpResp.on('receiveProgress', function onReceiveProgress(value) {
          resp.request.emit('httpDownloadProgress', [value, resp]);
        });
      }

      function error(err) {
        if (err.code !== 'RequestAbortedError') {
          var errCode = err.code === 'TimeoutError' ? err.code : 'NetworkingError';
          err = AWS.util.error(err, {
            code: errCode,
            region: resp.request.httpRequest.region,
            hostname: resp.request.httpRequest.endpoint.hostname,
            retryable: true
          });
        }
        resp.error = err;
        resp.request.emit('httpError', [resp.error, resp], function() {
          done();
        });
      }

      function executeSend() {
        var http = AWS.HttpClient.getInstance();
        var httpOptions = resp.request.service.config.httpOptions || {};
        try {
          var stream = http.handleRequest(resp.request.httpRequest, httpOptions,
                                          callback, error);
          progress(stream);
        } catch (err) {
          error(err);
        }
      }
      var timeDiff = (resp.request.service.getSkewCorrectedDate() - this.signedAt) / 1000;
      if (timeDiff >= 60 * 10) { // if we signed 10min ago, re-sign
        this.emit('sign', [this], function(err) {
          if (err) done(err);
          else executeSend();
        });
      } else {
        executeSend();
      }
    });

    add('HTTP_HEADERS', 'httpHeaders',
        function HTTP_HEADERS(statusCode, headers, resp, statusMessage) {
      resp.httpResponse.statusCode = statusCode;
      resp.httpResponse.statusMessage = statusMessage;
      resp.httpResponse.headers = headers;
      resp.httpResponse.body = AWS.util.buffer.toBuffer('');
      resp.httpResponse.buffers = [];
      resp.httpResponse.numBytes = 0;
      var dateHeader = headers.date || headers.Date;
      var service = resp.request.service;
      if (dateHeader) {
        var serverTime = Date.parse(dateHeader);
        if (service.config.correctClockSkew
            && service.isClockSkewed(serverTime)) {
          service.applyClockOffset(serverTime);
        }
      }
    });

    add('HTTP_DATA', 'httpData', function HTTP_DATA(chunk, resp) {
      if (chunk) {
        if (AWS.util.isNode()) {
          resp.httpResponse.numBytes += chunk.length;

          var total = resp.httpResponse.headers['content-length'];
          var progress = { loaded: resp.httpResponse.numBytes, total: total };
          resp.request.emit('httpDownloadProgress', [progress, resp]);
        }

        resp.httpResponse.buffers.push(AWS.util.buffer.toBuffer(chunk));
      }
    });

    add('HTTP_DONE', 'httpDone', function HTTP_DONE(resp) {
      // convert buffers array into single buffer
      if (resp.httpResponse.buffers && resp.httpResponse.buffers.length > 0) {
        var body = AWS.util.buffer.concat(resp.httpResponse.buffers);
        resp.httpResponse.body = body;
      }
      delete resp.httpResponse.numBytes;
      delete resp.httpResponse.buffers;
    });

    add('FINALIZE_ERROR', 'retry', function FINALIZE_ERROR(resp) {
      if (resp.httpResponse.statusCode) {
        resp.error.statusCode = resp.httpResponse.statusCode;
        if (resp.error.retryable === undefined) {
          resp.error.retryable = this.service.retryableError(resp.error, this);
        }
      }
    });

    add('INVALIDATE_CREDENTIALS', 'retry', function INVALIDATE_CREDENTIALS(resp) {
      if (!resp.error) return;
      switch (resp.error.code) {
        case 'RequestExpired': // EC2 only
        case 'ExpiredTokenException':
        case 'ExpiredToken':
          resp.error.retryable = true;
          resp.request.service.config.credentials.expired = true;
      }
    });

    add('EXPIRED_SIGNATURE', 'retry', function EXPIRED_SIGNATURE(resp) {
      var err = resp.error;
      if (!err) return;
      if (typeof err.code === 'string' && typeof err.message === 'string') {
        if (err.code.match(/Signature/) && err.message.match(/expired/)) {
          resp.error.retryable = true;
        }
      }
    });

    add('CLOCK_SKEWED', 'retry', function CLOCK_SKEWED(resp) {
      if (!resp.error) return;
      if (this.service.clockSkewError(resp.error)
          && this.service.config.correctClockSkew) {
        resp.error.retryable = true;
      }
    });

    add('REDIRECT', 'retry', function REDIRECT(resp) {
      if (resp.error && resp.error.statusCode >= 300 &&
          resp.error.statusCode < 400 && resp.httpResponse.headers['location']) {
        this.httpRequest.endpoint =
          new AWS.Endpoint(resp.httpResponse.headers['location']);
        this.httpRequest.headers['Host'] = this.httpRequest.endpoint.host;
        resp.error.redirect = true;
        resp.error.retryable = true;
      }
    });

    add('RETRY_CHECK', 'retry', function RETRY_CHECK(resp) {
      if (resp.error) {
        if (resp.error.redirect && resp.redirectCount < resp.maxRedirects) {
          resp.error.retryDelay = 0;
        } else if (resp.retryCount < resp.maxRetries) {
          resp.error.retryDelay = this.service.retryDelays(resp.retryCount, resp.error) || 0;
        }
      }
    });

    addAsync('RESET_RETRY_STATE', 'afterRetry', function RESET_RETRY_STATE(resp, done) {
      var delay, willRetry = false;

      if (resp.error) {
        delay = resp.error.retryDelay || 0;
        if (resp.error.retryable && resp.retryCount < resp.maxRetries) {
          resp.retryCount++;
          willRetry = true;
        } else if (resp.error.redirect && resp.redirectCount < resp.maxRedirects) {
          resp.redirectCount++;
          willRetry = true;
        }
      }

      // delay < 0 is a signal from customBackoff to skip retries
      if (willRetry && delay >= 0) {
        resp.error = null;
        setTimeout(done, delay);
      } else {
        done();
      }
    });
  }),

  CorePost: new SequentialExecutor().addNamedListeners(function(add) {
    add('EXTRACT_REQUEST_ID', 'extractData', AWS.util.extractRequestId);
    add('EXTRACT_REQUEST_ID', 'extractError', AWS.util.extractRequestId);

    add('ENOTFOUND_ERROR', 'httpError', function ENOTFOUND_ERROR(err) {
      function isDNSError(err) {
        return err.errno === 'ENOTFOUND' ||
          typeof err.errno === 'number' &&
          typeof AWS.util.getSystemErrorName === 'function' &&
          ['EAI_NONAME', 'EAI_NODATA'].indexOf(AWS.util.getSystemErrorName(err.errno) >= 0);
      }
      if (err.code === 'NetworkingError' && isDNSError(err)) {
        var message = 'Inaccessible host: `' + err.hostname +
          '\'. This service may not be available in the `' + err.region +
          '\' region.';
        this.response.error = AWS.util.error(new Error(message), {
          code: 'UnknownEndpoint',
          region: err.region,
          hostname: err.hostname,
          retryable: true,
          originalError: err
        });
      }
    });
  }),

  Logger: new SequentialExecutor().addNamedListeners(function(add) {
    add('LOG_REQUEST', 'complete', function LOG_REQUEST(resp) {
      var req = resp.request;
      var logger = req.service.config.logger;
      if (!logger) return;
      function filterSensitiveLog(inputShape, shape) {
        if (!shape) {
          return shape;
        }
        if (inputShape.isSensitive) {
          return '***SensitiveInformation***';
        }
        switch (inputShape.type) {
          case 'structure':
            var struct = {};
            AWS.util.each(shape, function(subShapeName, subShape) {
              if (Object.prototype.hasOwnProperty.call(inputShape.members, subShapeName)) {
                struct[subShapeName] = filterSensitiveLog(inputShape.members[subShapeName], subShape);
              } else {
                struct[subShapeName] = subShape;
              }
            });
            return struct;
          case 'list':
            var list = [];
            AWS.util.arrayEach(shape, function(subShape, index) {
              list.push(filterSensitiveLog(inputShape.member, subShape));
            });
            return list;
          case 'map':
            var map = {};
            AWS.util.each(shape, function(key, value) {
              map[key] = filterSensitiveLog(inputShape.value, value);
            });
            return map;
          default:
            return shape;
        }
      }

      function buildMessage() {
        var time = resp.request.service.getSkewCorrectedDate().getTime();
        var delta = (time - req.startTime.getTime()) / 1000;
        var ansi = logger.isTTY ? true : false;
        var status = resp.httpResponse.statusCode;
        var censoredParams = req.params;
        if (
          req.service.api.operations &&
              req.service.api.operations[req.operation] &&
              req.service.api.operations[req.operation].input
        ) {
          var inputShape = req.service.api.operations[req.operation].input;
          censoredParams = filterSensitiveLog(inputShape, req.params);
        }
        var params = __webpack_require__(31669).inspect(censoredParams, true, null);
        var message = '';
        if (ansi) message += '\x1B[33m';
        message += '[AWS ' + req.service.serviceIdentifier + ' ' + status;
        message += ' ' + delta.toString() + 's ' + resp.retryCount + ' retries]';
        if (ansi) message += '\x1B[0;1m';
        message += ' ' + AWS.util.string.lowerFirst(req.operation);
        message += '(' + params + ')';
        if (ansi) message += '\x1B[0m';
        return message;
      }

      var line = buildMessage();
      if (typeof logger.log === 'function') {
        logger.log(line);
      } else if (typeof logger.write === 'function') {
        logger.write(line + '\n');
      }
    });
  }),

  Json: new SequentialExecutor().addNamedListeners(function(add) {
    var svc = __webpack_require__(30083);
    add('BUILD', 'build', svc.buildRequest);
    add('EXTRACT_DATA', 'extractData', svc.extractData);
    add('EXTRACT_ERROR', 'extractError', svc.extractError);
  }),

  Rest: new SequentialExecutor().addNamedListeners(function(add) {
    var svc = __webpack_require__(98200);
    add('BUILD', 'build', svc.buildRequest);
    add('EXTRACT_DATA', 'extractData', svc.extractData);
    add('EXTRACT_ERROR', 'extractError', svc.extractError);
  }),

  RestJson: new SequentialExecutor().addNamedListeners(function(add) {
    var svc = __webpack_require__(5883);
    add('BUILD', 'build', svc.buildRequest);
    add('EXTRACT_DATA', 'extractData', svc.extractData);
    add('EXTRACT_ERROR', 'extractError', svc.extractError);
  }),

  RestXml: new SequentialExecutor().addNamedListeners(function(add) {
    var svc = __webpack_require__(15143);
    add('BUILD', 'build', svc.buildRequest);
    add('EXTRACT_DATA', 'extractData', svc.extractData);
    add('EXTRACT_ERROR', 'extractError', svc.extractError);
  }),

  Query: new SequentialExecutor().addNamedListeners(function(add) {
    var svc = __webpack_require__(90761);
    add('BUILD', 'build', svc.buildRequest);
    add('EXTRACT_DATA', 'extractData', svc.extractData);
    add('EXTRACT_ERROR', 'extractError', svc.extractError);
  })
};


/***/ }),

/***/ 1556:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;

/**
 * The endpoint that a service will talk to, for example,
 * `'https://ec2.ap-southeast-1.amazonaws.com'`. If
 * you need to override an endpoint for a service, you can
 * set the endpoint on a service by passing the endpoint
 * object with the `endpoint` option key:
 *
 * ```javascript
 * var ep = new AWS.Endpoint('awsproxy.example.com');
 * var s3 = new AWS.S3({endpoint: ep});
 * s3.service.endpoint.hostname == 'awsproxy.example.com'
 * ```
 *
 * Note that if you do not specify a protocol, the protocol will
 * be selected based on your current {AWS.config} configuration.
 *
 * @!attribute protocol
 *   @return [String] the protocol (http or https) of the endpoint
 *     URL
 * @!attribute hostname
 *   @return [String] the host portion of the endpoint, e.g.,
 *     example.com
 * @!attribute host
 *   @return [String] the host portion of the endpoint including
 *     the port, e.g., example.com:80
 * @!attribute port
 *   @return [Integer] the port of the endpoint
 * @!attribute href
 *   @return [String] the full URL of the endpoint
 */
AWS.Endpoint = inherit({

  /**
   * @overload Endpoint(endpoint)
   *   Constructs a new endpoint given an endpoint URL. If the
   *   URL omits a protocol (http or https), the default protocol
   *   set in the global {AWS.config} will be used.
   *   @param endpoint [String] the URL to construct an endpoint from
   */
  constructor: function Endpoint(endpoint, config) {
    AWS.util.hideProperties(this, ['slashes', 'auth', 'hash', 'search', 'query']);

    if (typeof endpoint === 'undefined' || endpoint === null) {
      throw new Error('Invalid endpoint: ' + endpoint);
    } else if (typeof endpoint !== 'string') {
      return AWS.util.copy(endpoint);
    }

    if (!endpoint.match(/^http/)) {
      var useSSL = config && config.sslEnabled !== undefined ?
        config.sslEnabled : AWS.config.sslEnabled;
      endpoint = (useSSL ? 'https' : 'http') + '://' + endpoint;
    }

    AWS.util.update(this, AWS.util.urlParse(endpoint));

    // Ensure the port property is set as an integer
    if (this.port) {
      this.port = parseInt(this.port, 10);
    } else {
      this.port = this.protocol === 'https:' ? 443 : 80;
    }
  }

});

/**
 * The low level HTTP request object, encapsulating all HTTP header
 * and body data sent by a service request.
 *
 * @!attribute method
 *   @return [String] the HTTP method of the request
 * @!attribute path
 *   @return [String] the path portion of the URI, e.g.,
 *     "/list/?start=5&num=10"
 * @!attribute headers
 *   @return [map<String,String>]
 *     a map of header keys and their respective values
 * @!attribute body
 *   @return [String] the request body payload
 * @!attribute endpoint
 *   @return [AWS.Endpoint] the endpoint for the request
 * @!attribute region
 *   @api private
 *   @return [String] the region, for signing purposes only.
 */
AWS.HttpRequest = inherit({

  /**
   * @api private
   */
  constructor: function HttpRequest(endpoint, region) {
    endpoint = new AWS.Endpoint(endpoint);
    this.method = 'POST';
    this.path = endpoint.path || '/';
    this.headers = {};
    this.body = '';
    this.endpoint = endpoint;
    this.region = region;
    this._userAgent = '';
    this.setUserAgent();
  },

  /**
   * @api private
   */
  setUserAgent: function setUserAgent() {
    this._userAgent = this.headers[this.getUserAgentHeaderName()] = AWS.util.userAgent();
  },

  getUserAgentHeaderName: function getUserAgentHeaderName() {
    var prefix = AWS.util.isBrowser() ? 'X-Amz-' : '';
    return prefix + 'User-Agent';
  },

  /**
   * @api private
   */
  appendToUserAgent: function appendToUserAgent(agentPartial) {
    if (typeof agentPartial === 'string' && agentPartial) {
      this._userAgent += ' ' + agentPartial;
    }
    this.headers[this.getUserAgentHeaderName()] = this._userAgent;
  },

  /**
   * @api private
   */
  getUserAgent: function getUserAgent() {
    return this._userAgent;
  },

  /**
   * @return [String] the part of the {path} excluding the
   *   query string
   */
  pathname: function pathname() {
    return this.path.split('?', 1)[0];
  },

  /**
   * @return [String] the query string portion of the {path}
   */
  search: function search() {
    var query = this.path.split('?', 2)[1];
    if (query) {
      query = AWS.util.queryStringParse(query);
      return AWS.util.queryParamsToString(query);
    }
    return '';
  },

  /**
   * @api private
   * update httpRequest endpoint with endpoint string
   */
  updateEndpoint: function updateEndpoint(endpointStr) {
    var newEndpoint = new AWS.Endpoint(endpointStr);
    this.endpoint = newEndpoint;
    this.path = newEndpoint.path || '/';
    if (this.headers['Host']) {
      this.headers['Host'] = newEndpoint.host;
    }
  }
});

/**
 * The low level HTTP response object, encapsulating all HTTP header
 * and body data returned from the request.
 *
 * @!attribute statusCode
 *   @return [Integer] the HTTP status code of the response (e.g., 200, 404)
 * @!attribute headers
 *   @return [map<String,String>]
 *      a map of response header keys and their respective values
 * @!attribute body
 *   @return [String] the response body payload
 * @!attribute [r] streaming
 *   @return [Boolean] whether this response is being streamed at a low-level.
 *     Defaults to `false` (buffered reads). Do not modify this manually, use
 *     {createUnbufferedStream} to convert the stream to unbuffered mode
 *     instead.
 */
AWS.HttpResponse = inherit({

  /**
   * @api private
   */
  constructor: function HttpResponse() {
    this.statusCode = undefined;
    this.headers = {};
    this.body = undefined;
    this.streaming = false;
    this.stream = null;
  },

  /**
   * Disables buffering on the HTTP response and returns the stream for reading.
   * @return [Stream, XMLHttpRequest, null] the underlying stream object.
   *   Use this object to directly read data off of the stream.
   * @note This object is only available after the {AWS.Request~httpHeaders}
   *   event has fired. This method must be called prior to
   *   {AWS.Request~httpData}.
   * @example Taking control of a stream
   *   request.on('httpHeaders', function(statusCode, headers) {
   *     if (statusCode < 300) {
   *       if (headers.etag === 'xyz') {
   *         // pipe the stream, disabling buffering
   *         var stream = this.response.httpResponse.createUnbufferedStream();
   *         stream.pipe(process.stdout);
   *       } else { // abort this request and set a better error message
   *         this.abort();
   *         this.response.error = new Error('Invalid ETag');
   *       }
   *     }
   *   }).send(console.log);
   */
  createUnbufferedStream: function createUnbufferedStream() {
    this.streaming = true;
    return this.stream;
  }
});


AWS.HttpClient = inherit({});

/**
 * @api private
 */
AWS.HttpClient.getInstance = function getInstance() {
  if (this.singleton === undefined) {
    this.singleton = new this();
  }
  return this.singleton;
};


/***/ }),

/***/ 2310:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var Stream = AWS.util.stream.Stream;
var TransformStream = AWS.util.stream.Transform;
var ReadableStream = AWS.util.stream.Readable;
__webpack_require__(1556);
var CONNECTION_REUSE_ENV_NAME = 'AWS_NODEJS_CONNECTION_REUSE_ENABLED';

/**
 * @api private
 */
AWS.NodeHttpClient = AWS.util.inherit({
  handleRequest: function handleRequest(httpRequest, httpOptions, callback, errCallback) {
    var self = this;
    var endpoint = httpRequest.endpoint;
    var pathPrefix = '';
    if (!httpOptions) httpOptions = {};
    if (httpOptions.proxy) {
      pathPrefix = endpoint.protocol + '//' + endpoint.hostname;
      if (endpoint.port !== 80 && endpoint.port !== 443) {
        pathPrefix += ':' + endpoint.port;
      }
      endpoint = new AWS.Endpoint(httpOptions.proxy);
    }

    var useSSL = endpoint.protocol === 'https:';
    var http = useSSL ? __webpack_require__(57211) : __webpack_require__(98605);
    var options = {
      host: endpoint.hostname,
      port: endpoint.port,
      method: httpRequest.method,
      headers: httpRequest.headers,
      path: pathPrefix + httpRequest.path
    };

    if (!httpOptions.agent) {
      options.agent = this.getAgent(useSSL, {
        keepAlive: process.env[CONNECTION_REUSE_ENV_NAME] === '1' ? true : false
      });
    }

    AWS.util.update(options, httpOptions);
    delete options.proxy; // proxy isn't an HTTP option
    delete options.timeout; // timeout isn't an HTTP option

    var stream = http.request(options, function (httpResp) {
      if (stream.didCallback) return;

      callback(httpResp);
      httpResp.emit(
        'headers',
        httpResp.statusCode,
        httpResp.headers,
        httpResp.statusMessage
      );
    });
    httpRequest.stream = stream; // attach stream to httpRequest
    stream.didCallback = false;

    // connection timeout support
    if (httpOptions.connectTimeout) {
      var connectTimeoutId;
      stream.on('socket', function(socket) {
        if (socket.connecting) {
          connectTimeoutId = setTimeout(function connectTimeout() {
            if (stream.didCallback) return; stream.didCallback = true;

            stream.abort();
            errCallback(AWS.util.error(
              new Error('Socket timed out without establishing a connection'),
              {code: 'TimeoutError'}
            ));
          }, httpOptions.connectTimeout);
          socket.on('connect', function() {
            clearTimeout(connectTimeoutId);
            connectTimeoutId = null;
          });
        }
      });
    }

    // timeout support
    stream.setTimeout(httpOptions.timeout || 0, function() {
      if (stream.didCallback) return; stream.didCallback = true;

      var msg = 'Connection timed out after ' + httpOptions.timeout + 'ms';
      errCallback(AWS.util.error(new Error(msg), {code: 'TimeoutError'}));
      stream.abort();
    });

    stream.on('error', function() {
      if (connectTimeoutId) {
        clearTimeout(connectTimeoutId);
        connectTimeoutId = null;
      }
      if (stream.didCallback) return; stream.didCallback = true;
      errCallback.apply(stream, arguments);
    });

    var expect = httpRequest.headers.Expect || httpRequest.headers.expect;
    if (expect === '100-continue') {
      stream.once('continue', function() {
        self.writeBody(stream, httpRequest);
      });
    } else {
      this.writeBody(stream, httpRequest);
    }

    return stream;
  },

  writeBody: function writeBody(stream, httpRequest) {
    var body = httpRequest.body;
    var totalBytes = parseInt(httpRequest.headers['Content-Length'], 10);

    if (body instanceof Stream) {
      // For progress support of streaming content -
      // pipe the data through a transform stream to emit 'sendProgress' events
      var progressStream = this.progressStream(stream, totalBytes);
      if (progressStream) {
        body.pipe(progressStream).pipe(stream);
      } else {
        body.pipe(stream);
      }
    } else if (body) {
      // The provided body is a buffer/string and is already fully available in memory -
      // For performance it's best to send it as a whole by calling stream.end(body),
      // Callers expect a 'sendProgress' event which is best emitted once
      // the http request stream has been fully written and all data flushed.
      // The use of totalBytes is important over body.length for strings where
      // length is char length and not byte length.
      stream.once('finish', function() {
        stream.emit('sendProgress', {
          loaded: totalBytes,
          total: totalBytes
        });
      });
      stream.end(body);
    } else {
      // no request body
      stream.end();
    }
  },

  /**
   * Create the https.Agent or http.Agent according to the request schema.
   */
  getAgent: function getAgent(useSSL, agentOptions) {
    var http = useSSL ? __webpack_require__(57211) : __webpack_require__(98605);
    if (useSSL) {
      if (!AWS.NodeHttpClient.sslAgent) {
        AWS.NodeHttpClient.sslAgent = new http.Agent(AWS.util.merge({
          rejectUnauthorized: process.env.NODE_TLS_REJECT_UNAUTHORIZED === '0' ? false : true
        }, agentOptions || {}));
        AWS.NodeHttpClient.sslAgent.setMaxListeners(0);

        // delegate maxSockets to globalAgent, set a default limit of 50 if current value is Infinity.
        // Users can bypass this default by supplying their own Agent as part of SDK configuration.
        Object.defineProperty(AWS.NodeHttpClient.sslAgent, 'maxSockets', {
          enumerable: true,
          get: function() {
            var defaultMaxSockets = 50;
            var globalAgent = http.globalAgent;
            if (globalAgent && globalAgent.maxSockets !== Infinity && typeof globalAgent.maxSockets === 'number') {
              return globalAgent.maxSockets;
            }
            return defaultMaxSockets;
          }
        });
      }
      return AWS.NodeHttpClient.sslAgent;
    } else {
      if (!AWS.NodeHttpClient.agent) {
        AWS.NodeHttpClient.agent = new http.Agent(agentOptions);
      }
      return AWS.NodeHttpClient.agent;
    }
  },

  progressStream: function progressStream(stream, totalBytes) {
    if (typeof TransformStream === 'undefined') {
      // for node 0.8 there is no streaming progress
      return;
    }
    var loadedBytes = 0;
    var reporter = new TransformStream();
    reporter._transform = function(chunk, encoding, callback) {
      if (chunk) {
        loadedBytes += chunk.length;
        stream.emit('sendProgress', {
          loaded: loadedBytes,
          total: totalBytes
        });
      }
      callback(null, chunk);
    };
    return reporter;
  },

  emitter: null
});

/**
 * @!ignore
 */

/**
 * @api private
 */
AWS.HttpClient.prototype = AWS.NodeHttpClient.prototype;

/**
 * @api private
 */
AWS.HttpClient.streamsApiVersion = ReadableStream ? 2 : 1;


/***/ }),

/***/ 47495:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);

function JsonBuilder() { }

JsonBuilder.prototype.build = function(value, shape) {
  return JSON.stringify(translate(value, shape));
};

function translate(value, shape) {
  if (!shape || value === undefined || value === null) return undefined;

  switch (shape.type) {
    case 'structure': return translateStructure(value, shape);
    case 'map': return translateMap(value, shape);
    case 'list': return translateList(value, shape);
    default: return translateScalar(value, shape);
  }
}

function translateStructure(structure, shape) {
  var struct = {};
  util.each(structure, function(name, value) {
    var memberShape = shape.members[name];
    if (memberShape) {
      if (memberShape.location !== 'body') return;
      var locationName = memberShape.isLocationName ? memberShape.name : name;
      var result = translate(value, memberShape);
      if (result !== undefined) struct[locationName] = result;
    }
  });
  return struct;
}

function translateList(list, shape) {
  var out = [];
  util.arrayEach(list, function(value) {
    var result = translate(value, shape.member);
    if (result !== undefined) out.push(result);
  });
  return out;
}

function translateMap(map, shape) {
  var out = {};
  util.each(map, function(key, value) {
    var result = translate(value, shape.value);
    if (result !== undefined) out[key] = result;
  });
  return out;
}

function translateScalar(value, shape) {
  return shape.toWireFormat(value);
}

/**
 * @api private
 */
module.exports = JsonBuilder;


/***/ }),

/***/ 5474:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);

function JsonParser() { }

JsonParser.prototype.parse = function(value, shape) {
  return translate(JSON.parse(value), shape);
};

function translate(value, shape) {
  if (!shape || value === undefined) return undefined;

  switch (shape.type) {
    case 'structure': return translateStructure(value, shape);
    case 'map': return translateMap(value, shape);
    case 'list': return translateList(value, shape);
    default: return translateScalar(value, shape);
  }
}

function translateStructure(structure, shape) {
  if (structure == null) return undefined;

  var struct = {};
  var shapeMembers = shape.members;
  util.each(shapeMembers, function(name, memberShape) {
    var locationName = memberShape.isLocationName ? memberShape.name : name;
    if (Object.prototype.hasOwnProperty.call(structure, locationName)) {
      var value = structure[locationName];
      var result = translate(value, memberShape);
      if (result !== undefined) struct[name] = result;
    }
  });
  return struct;
}

function translateList(list, shape) {
  if (list == null) return undefined;

  var out = [];
  util.arrayEach(list, function(value) {
    var result = translate(value, shape.member);
    if (result === undefined) out.push(null);
    else out.push(result);
  });
  return out;
}

function translateMap(map, shape) {
  if (map == null) return undefined;

  var out = {};
  util.each(map, function(key, value) {
    var result = translate(value, shape.value);
    if (result === undefined) out[key] = null;
    else out[key] = result;
  });
  return out;
}

function translateScalar(value, shape) {
  return shape.toType(value);
}

/**
 * @api private
 */
module.exports = JsonParser;


/***/ }),

/***/ 25768:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
__webpack_require__(1556);
var inherit = AWS.util.inherit;

/**
 * Represents a metadata service available on EC2 instances. Using the
 * {request} method, you can receieve metadata about any available resource
 * on the metadata service.
 *
 * You can disable the use of the IMDS by setting the AWS_EC2_METADATA_DISABLED
 * environment variable to a truthy value.
 *
 * @!attribute [r] httpOptions
 *   @return [map] a map of options to pass to the underlying HTTP request:
 *
 *     * **timeout** (Number) &mdash; a timeout value in milliseconds to wait
 *       before aborting the connection. Set to 0 for no timeout.
 *
 * @!macro nobrowser
 */
AWS.MetadataService = inherit({
  /**
   * @return [String] the hostname of the instance metadata service
   */
  host: '169.254.169.254',

  /**
   * @!ignore
   */

  /**
   * Default HTTP options. By default, the metadata service is set to not
   * timeout on long requests. This means that on non-EC2 machines, this
   * request will never return. If you are calling this operation from an
   * environment that may not always run on EC2, set a `timeout` value so
   * the SDK will abort the request after a given number of milliseconds.
   */
  httpOptions: { timeout: 0 },

  /**
   * when enabled, metadata service will not fetch token
   */
  disableFetchToken: false,

  /**
   * Creates a new MetadataService object with a given set of options.
   *
   * @option options host [String] the hostname of the instance metadata
   *   service
   * @option options httpOptions [map] a map of options to pass to the
   *   underlying HTTP request:
   *
   *   * **timeout** (Number) &mdash; a timeout value in milliseconds to wait
   *     before aborting the connection. Set to 0 for no timeout.
   * @option options maxRetries [Integer] the maximum number of retries to
   *   perform for timeout errors
   * @option options retryDelayOptions [map] A set of options to configure the
   *   retry delay on retryable errors. See AWS.Config for details.
   */
  constructor: function MetadataService(options) {
    AWS.util.update(this, options);
  },

  /**
   * Sends a request to the instance metadata service for a given resource.
   *
   * @param path [String] the path of the resource to get
   *
   * @param options [map] an optional map used to make request
   *
   *   * **method** (String) &mdash; HTTP request method
   *
   *   * **headers** (map<String,String>) &mdash; a map of response header keys and their respective values
   *
   * @callback callback function(err, data)
   *   Called when a response is available from the service.
   *   @param err [Error, null] if an error occurred, this value will be set
   *   @param data [String, null] if the request was successful, the body of
   *     the response
   */
  request: function request(path, options, callback) {
    if (arguments.length === 2) {
      callback = options;
      options = {};
    }

    if (process.env[AWS.util.imdsDisabledEnv]) {
      callback(new Error('EC2 Instance Metadata Service access disabled'));
      return;
    }

    path = path || '/';
    var httpRequest = new AWS.HttpRequest('http://' + this.host + path);
    httpRequest.method = options.method || 'GET';
    if (options.headers) {
      httpRequest.headers = options.headers;
    }
    AWS.util.handleRequestWithRetries(httpRequest, this, callback);
  },

  /**
  * @api private
  */
  loadCredentialsCallbacks: [],

  /**
   * Fetches metadata token used for getting credentials
   *
   * @api private
   * @callback callback function(err, token)
   *   Called when token is loaded from the resource
   */
  fetchMetadataToken: function fetchMetadataToken(callback) {
    var self = this;
    var tokenFetchPath = '/latest/api/token';
    self.request(
      tokenFetchPath,
      {
        'method': 'PUT',
        'headers': {
          'x-aws-ec2-metadata-token-ttl-seconds': '21600'
        }
      },
      callback
    );
  },

  /**
   * Fetches credentials
   *
   * @api private
   * @callback cb function(err, creds)
   *   Called when credentials are loaded from the resource
   */
  fetchCredentials: function fetchCredentials(options, cb) {
    var self = this;
    var basePath = '/latest/meta-data/iam/security-credentials/';

    self.request(basePath, options, function (err, roleName) {
      if (err) {
        self.disableFetchToken = !(err.statusCode === 401);
        cb(AWS.util.error(
          err,
          {
            message: 'EC2 Metadata roleName request returned error'
          }
        ));
        return;
      }
      roleName = roleName.split('\n')[0]; // grab first (and only) role
      self.request(basePath + roleName, options, function (credErr, credData) {
        if (credErr) {
          self.disableFetchToken = !(credErr.statusCode === 401);
          cb(AWS.util.error(
            credErr,
            {
              message: 'EC2 Metadata creds request returned error'
            }
          ));
          return;
        }
        try {
          var credentials = JSON.parse(credData);
          cb(null, credentials);
        } catch (parseError) {
          cb(parseError);
        }
      });
    });
  },

  /**
   * Loads a set of credentials stored in the instance metadata service
   *
   * @api private
   * @callback callback function(err, credentials)
   *   Called when credentials are loaded from the resource
   *   @param err [Error] if an error occurred, this value will be set
   *   @param credentials [Object] the raw JSON object containing all
   *     metadata from the credentials resource
   */
  loadCredentials: function loadCredentials(callback) {
    var self = this;
    self.loadCredentialsCallbacks.push(callback);
    if (self.loadCredentialsCallbacks.length > 1) { return; }

    function callbacks(err, creds) {
      var cb;
      while ((cb = self.loadCredentialsCallbacks.shift()) !== undefined) {
        cb(err, creds);
      }
    }

    if (self.disableFetchToken) {
      self.fetchCredentials({}, callbacks);
    } else {
      self.fetchMetadataToken(function(tokenError, token) {
        if (tokenError) {
          if (tokenError.code === 'TimeoutError') {
            self.disableFetchToken = true;
          } else if (tokenError.retryable === true) {
            callbacks(AWS.util.error(
              tokenError,
              {
                message: 'EC2 Metadata token request returned error'
              }
            ));
            return;
          } else if (tokenError.statusCode === 400) {
            callbacks(AWS.util.error(
              tokenError,
              {
                message: 'EC2 Metadata token request returned 400'
              }
            ));
            return;
          }
        }
        var options = {};
        if (token) {
          options.headers = {
            'x-aws-ec2-metadata-token': token
          };
        }
        self.fetchCredentials(options, callbacks);
      });

    }
  }
});

/**
 * @api private
 */
module.exports = AWS.MetadataService;


/***/ }),

/***/ 17657:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var Collection = __webpack_require__(71965);
var Operation = __webpack_require__(28083);
var Shape = __webpack_require__(71349);
var Paginator = __webpack_require__(45938);
var ResourceWaiter = __webpack_require__(41368);
var metadata = __webpack_require__(49497);

var util = __webpack_require__(77985);
var property = util.property;
var memoizedProperty = util.memoizedProperty;

function Api(api, options) {
  var self = this;
  api = api || {};
  options = options || {};
  options.api = this;

  api.metadata = api.metadata || {};

  var serviceIdentifier = options.serviceIdentifier;
  delete options.serviceIdentifier;

  property(this, 'isApi', true, false);
  property(this, 'apiVersion', api.metadata.apiVersion);
  property(this, 'endpointPrefix', api.metadata.endpointPrefix);
  property(this, 'signingName', api.metadata.signingName);
  property(this, 'globalEndpoint', api.metadata.globalEndpoint);
  property(this, 'signatureVersion', api.metadata.signatureVersion);
  property(this, 'jsonVersion', api.metadata.jsonVersion);
  property(this, 'targetPrefix', api.metadata.targetPrefix);
  property(this, 'protocol', api.metadata.protocol);
  property(this, 'timestampFormat', api.metadata.timestampFormat);
  property(this, 'xmlNamespaceUri', api.metadata.xmlNamespace);
  property(this, 'abbreviation', api.metadata.serviceAbbreviation);
  property(this, 'fullName', api.metadata.serviceFullName);
  property(this, 'serviceId', api.metadata.serviceId);
  if (serviceIdentifier && metadata[serviceIdentifier]) {
      property(this, 'xmlNoDefaultLists', metadata[serviceIdentifier].xmlNoDefaultLists, false);
  }

  memoizedProperty(this, 'className', function() {
    var name = api.metadata.serviceAbbreviation || api.metadata.serviceFullName;
    if (!name) return null;

    name = name.replace(/^Amazon|AWS\s*|\(.*|\s+|\W+/g, '');
    if (name === 'ElasticLoadBalancing') name = 'ELB';
    return name;
  });

  function addEndpointOperation(name, operation) {
    if (operation.endpointoperation === true) {
      property(self, 'endpointOperation', util.string.lowerFirst(name));
    }
    if (operation.endpointdiscovery && !self.hasRequiredEndpointDiscovery) {
      property(
        self,
        'hasRequiredEndpointDiscovery',
        operation.endpointdiscovery.required === true
      );
    }
  }

  property(this, 'operations', new Collection(api.operations, options, function(name, operation) {
    return new Operation(name, operation, options);
  }, util.string.lowerFirst, addEndpointOperation));

  property(this, 'shapes', new Collection(api.shapes, options, function(name, shape) {
    return Shape.create(shape, options);
  }));

  property(this, 'paginators', new Collection(api.paginators, options, function(name, paginator) {
    return new Paginator(name, paginator, options);
  }));

  property(this, 'waiters', new Collection(api.waiters, options, function(name, waiter) {
    return new ResourceWaiter(name, waiter, options);
  }, util.string.lowerFirst));

  if (options.documentation) {
    property(this, 'documentation', api.documentation);
    property(this, 'documentationUrl', api.documentationUrl);
  }
}

/**
 * @api private
 */
module.exports = Api;


/***/ }),

/***/ 71965:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var memoizedProperty = __webpack_require__(77985).memoizedProperty;

function memoize(name, value, factory, nameTr) {
  memoizedProperty(this, nameTr(name), function() {
    return factory(name, value);
  });
}

function Collection(iterable, options, factory, nameTr, callback) {
  nameTr = nameTr || String;
  var self = this;

  for (var id in iterable) {
    if (Object.prototype.hasOwnProperty.call(iterable, id)) {
      memoize.call(self, id, iterable[id], factory, nameTr);
      if (callback) callback(id, iterable[id]);
    }
  }
}

/**
 * @api private
 */
module.exports = Collection;


/***/ }),

/***/ 28083:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var Shape = __webpack_require__(71349);

var util = __webpack_require__(77985);
var property = util.property;
var memoizedProperty = util.memoizedProperty;

function Operation(name, operation, options) {
  var self = this;
  options = options || {};

  property(this, 'name', operation.name || name);
  property(this, 'api', options.api, false);

  operation.http = operation.http || {};
  property(this, 'endpoint', operation.endpoint);
  property(this, 'httpMethod', operation.http.method || 'POST');
  property(this, 'httpPath', operation.http.requestUri || '/');
  property(this, 'authtype', operation.authtype || '');
  property(
    this,
    'endpointDiscoveryRequired',
    operation.endpointdiscovery ?
      (operation.endpointdiscovery.required ? 'REQUIRED' : 'OPTIONAL') :
    'NULL'
  );

  memoizedProperty(this, 'input', function() {
    if (!operation.input) {
      return new Shape.create({type: 'structure'}, options);
    }
    return Shape.create(operation.input, options);
  });

  memoizedProperty(this, 'output', function() {
    if (!operation.output) {
      return new Shape.create({type: 'structure'}, options);
    }
    return Shape.create(operation.output, options);
  });

  memoizedProperty(this, 'errors', function() {
    var list = [];
    if (!operation.errors) return null;

    for (var i = 0; i < operation.errors.length; i++) {
      list.push(Shape.create(operation.errors[i], options));
    }

    return list;
  });

  memoizedProperty(this, 'paginator', function() {
    return options.api.paginators[name];
  });

  if (options.documentation) {
    property(this, 'documentation', operation.documentation);
    property(this, 'documentationUrl', operation.documentationUrl);
  }

  // idempotentMembers only tracks top-level input shapes
  memoizedProperty(this, 'idempotentMembers', function() {
    var idempotentMembers = [];
    var input = self.input;
    var members = input.members;
    if (!input.members) {
      return idempotentMembers;
    }
    for (var name in members) {
      if (!members.hasOwnProperty(name)) {
        continue;
      }
      if (members[name].isIdempotent === true) {
        idempotentMembers.push(name);
      }
    }
    return idempotentMembers;
  });

  memoizedProperty(this, 'hasEventOutput', function() {
    var output = self.output;
    return hasEventStream(output);
  });
}

function hasEventStream(topLevelShape) {
  var members = topLevelShape.members;
  var payload = topLevelShape.payload;

  if (!topLevelShape.members) {
    return false;
  }

  if (payload) {
    var payloadMember = members[payload];
    return payloadMember.isEventStream;
  }

  // check if any member is an event stream
  for (var name in members) {
    if (!members.hasOwnProperty(name)) {
      if (members[name].isEventStream === true) {
        return true;
      }
    }
  }
  return false;
}

/**
 * @api private
 */
module.exports = Operation;


/***/ }),

/***/ 45938:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var property = __webpack_require__(77985).property;

function Paginator(name, paginator) {
  property(this, 'inputToken', paginator.input_token);
  property(this, 'limitKey', paginator.limit_key);
  property(this, 'moreResults', paginator.more_results);
  property(this, 'outputToken', paginator.output_token);
  property(this, 'resultKey', paginator.result_key);
}

/**
 * @api private
 */
module.exports = Paginator;


/***/ }),

/***/ 41368:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);
var property = util.property;

function ResourceWaiter(name, waiter, options) {
  options = options || {};
  property(this, 'name', name);
  property(this, 'api', options.api, false);

  if (waiter.operation) {
    property(this, 'operation', util.string.lowerFirst(waiter.operation));
  }

  var self = this;
  var keys = [
    'type',
    'description',
    'delay',
    'maxAttempts',
    'acceptors'
  ];

  keys.forEach(function(key) {
    var value = waiter[key];
    if (value) {
      property(self, key, value);
    }
  });
}

/**
 * @api private
 */
module.exports = ResourceWaiter;


/***/ }),

/***/ 71349:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var Collection = __webpack_require__(71965);

var util = __webpack_require__(77985);

function property(obj, name, value) {
  if (value !== null && value !== undefined) {
    util.property.apply(this, arguments);
  }
}

function memoizedProperty(obj, name) {
  if (!obj.constructor.prototype[name]) {
    util.memoizedProperty.apply(this, arguments);
  }
}

function Shape(shape, options, memberName) {
  options = options || {};

  property(this, 'shape', shape.shape);
  property(this, 'api', options.api, false);
  property(this, 'type', shape.type);
  property(this, 'enum', shape.enum);
  property(this, 'min', shape.min);
  property(this, 'max', shape.max);
  property(this, 'pattern', shape.pattern);
  property(this, 'location', shape.location || this.location || 'body');
  property(this, 'name', this.name || shape.xmlName || shape.queryName ||
    shape.locationName || memberName);
  property(this, 'isStreaming', shape.streaming || this.isStreaming || false);
  property(this, 'requiresLength', shape.requiresLength, false);
  property(this, 'isComposite', shape.isComposite || false);
  property(this, 'isShape', true, false);
  property(this, 'isQueryName', Boolean(shape.queryName), false);
  property(this, 'isLocationName', Boolean(shape.locationName), false);
  property(this, 'isIdempotent', shape.idempotencyToken === true);
  property(this, 'isJsonValue', shape.jsonvalue === true);
  property(this, 'isSensitive', shape.sensitive === true || shape.prototype && shape.prototype.sensitive === true);
  property(this, 'isEventStream', Boolean(shape.eventstream), false);
  property(this, 'isEvent', Boolean(shape.event), false);
  property(this, 'isEventPayload', Boolean(shape.eventpayload), false);
  property(this, 'isEventHeader', Boolean(shape.eventheader), false);
  property(this, 'isTimestampFormatSet', Boolean(shape.timestampFormat) || shape.prototype && shape.prototype.isTimestampFormatSet === true, false);
  property(this, 'endpointDiscoveryId', Boolean(shape.endpointdiscoveryid), false);
  property(this, 'hostLabel', Boolean(shape.hostLabel), false);

  if (options.documentation) {
    property(this, 'documentation', shape.documentation);
    property(this, 'documentationUrl', shape.documentationUrl);
  }

  if (shape.xmlAttribute) {
    property(this, 'isXmlAttribute', shape.xmlAttribute || false);
  }

  // type conversion and parsing
  property(this, 'defaultValue', null);
  this.toWireFormat = function(value) {
    if (value === null || value === undefined) return '';
    return value;
  };
  this.toType = function(value) { return value; };
}

/**
 * @api private
 */
Shape.normalizedTypes = {
  character: 'string',
  double: 'float',
  long: 'integer',
  short: 'integer',
  biginteger: 'integer',
  bigdecimal: 'float',
  blob: 'binary'
};

/**
 * @api private
 */
Shape.types = {
  'structure': StructureShape,
  'list': ListShape,
  'map': MapShape,
  'boolean': BooleanShape,
  'timestamp': TimestampShape,
  'float': FloatShape,
  'integer': IntegerShape,
  'string': StringShape,
  'base64': Base64Shape,
  'binary': BinaryShape
};

Shape.resolve = function resolve(shape, options) {
  if (shape.shape) {
    var refShape = options.api.shapes[shape.shape];
    if (!refShape) {
      throw new Error('Cannot find shape reference: ' + shape.shape);
    }

    return refShape;
  } else {
    return null;
  }
};

Shape.create = function create(shape, options, memberName) {
  if (shape.isShape) return shape;

  var refShape = Shape.resolve(shape, options);
  if (refShape) {
    var filteredKeys = Object.keys(shape);
    if (!options.documentation) {
      filteredKeys = filteredKeys.filter(function(name) {
        return !name.match(/documentation/);
      });
    }

    // create an inline shape with extra members
    var InlineShape = function() {
      refShape.constructor.call(this, shape, options, memberName);
    };
    InlineShape.prototype = refShape;
    return new InlineShape();
  } else {
    // set type if not set
    if (!shape.type) {
      if (shape.members) shape.type = 'structure';
      else if (shape.member) shape.type = 'list';
      else if (shape.key) shape.type = 'map';
      else shape.type = 'string';
    }

    // normalize types
    var origType = shape.type;
    if (Shape.normalizedTypes[shape.type]) {
      shape.type = Shape.normalizedTypes[shape.type];
    }

    if (Shape.types[shape.type]) {
      return new Shape.types[shape.type](shape, options, memberName);
    } else {
      throw new Error('Unrecognized shape type: ' + origType);
    }
  }
};

function CompositeShape(shape) {
  Shape.apply(this, arguments);
  property(this, 'isComposite', true);

  if (shape.flattened) {
    property(this, 'flattened', shape.flattened || false);
  }
}

function StructureShape(shape, options) {
  var self = this;
  var requiredMap = null, firstInit = !this.isShape;

  CompositeShape.apply(this, arguments);

  if (firstInit) {
    property(this, 'defaultValue', function() { return {}; });
    property(this, 'members', {});
    property(this, 'memberNames', []);
    property(this, 'required', []);
    property(this, 'isRequired', function() { return false; });
  }

  if (shape.members) {
    property(this, 'members', new Collection(shape.members, options, function(name, member) {
      return Shape.create(member, options, name);
    }));
    memoizedProperty(this, 'memberNames', function() {
      return shape.xmlOrder || Object.keys(shape.members);
    });

    if (shape.event) {
      memoizedProperty(this, 'eventPayloadMemberName', function() {
        var members = self.members;
        var memberNames = self.memberNames;
        // iterate over members to find ones that are event payloads
        for (var i = 0, iLen = memberNames.length; i < iLen; i++) {
          if (members[memberNames[i]].isEventPayload) {
            return memberNames[i];
          }
        }
      });

      memoizedProperty(this, 'eventHeaderMemberNames', function() {
        var members = self.members;
        var memberNames = self.memberNames;
        var eventHeaderMemberNames = [];
        // iterate over members to find ones that are event headers
        for (var i = 0, iLen = memberNames.length; i < iLen; i++) {
          if (members[memberNames[i]].isEventHeader) {
            eventHeaderMemberNames.push(memberNames[i]);
          }
        }
        return eventHeaderMemberNames;
      });
    }
  }

  if (shape.required) {
    property(this, 'required', shape.required);
    property(this, 'isRequired', function(name) {
      if (!requiredMap) {
        requiredMap = {};
        for (var i = 0; i < shape.required.length; i++) {
          requiredMap[shape.required[i]] = true;
        }
      }

      return requiredMap[name];
    }, false, true);
  }

  property(this, 'resultWrapper', shape.resultWrapper || null);

  if (shape.payload) {
    property(this, 'payload', shape.payload);
  }

  if (typeof shape.xmlNamespace === 'string') {
    property(this, 'xmlNamespaceUri', shape.xmlNamespace);
  } else if (typeof shape.xmlNamespace === 'object') {
    property(this, 'xmlNamespacePrefix', shape.xmlNamespace.prefix);
    property(this, 'xmlNamespaceUri', shape.xmlNamespace.uri);
  }
}

function ListShape(shape, options) {
  var self = this, firstInit = !this.isShape;
  CompositeShape.apply(this, arguments);

  if (firstInit) {
    property(this, 'defaultValue', function() { return []; });
  }

  if (shape.member) {
    memoizedProperty(this, 'member', function() {
      return Shape.create(shape.member, options);
    });
  }

  if (this.flattened) {
    var oldName = this.name;
    memoizedProperty(this, 'name', function() {
      return self.member.name || oldName;
    });
  }
}

function MapShape(shape, options) {
  var firstInit = !this.isShape;
  CompositeShape.apply(this, arguments);

  if (firstInit) {
    property(this, 'defaultValue', function() { return {}; });
    property(this, 'key', Shape.create({type: 'string'}, options));
    property(this, 'value', Shape.create({type: 'string'}, options));
  }

  if (shape.key) {
    memoizedProperty(this, 'key', function() {
      return Shape.create(shape.key, options);
    });
  }
  if (shape.value) {
    memoizedProperty(this, 'value', function() {
      return Shape.create(shape.value, options);
    });
  }
}

function TimestampShape(shape) {
  var self = this;
  Shape.apply(this, arguments);

  if (shape.timestampFormat) {
    property(this, 'timestampFormat', shape.timestampFormat);
  } else if (self.isTimestampFormatSet && this.timestampFormat) {
    property(this, 'timestampFormat', this.timestampFormat);
  } else if (this.location === 'header') {
    property(this, 'timestampFormat', 'rfc822');
  } else if (this.location === 'querystring') {
    property(this, 'timestampFormat', 'iso8601');
  } else if (this.api) {
    switch (this.api.protocol) {
      case 'json':
      case 'rest-json':
        property(this, 'timestampFormat', 'unixTimestamp');
        break;
      case 'rest-xml':
      case 'query':
      case 'ec2':
        property(this, 'timestampFormat', 'iso8601');
        break;
    }
  }

  this.toType = function(value) {
    if (value === null || value === undefined) return null;
    if (typeof value.toUTCString === 'function') return value;
    return typeof value === 'string' || typeof value === 'number' ?
           util.date.parseTimestamp(value) : null;
  };

  this.toWireFormat = function(value) {
    return util.date.format(value, self.timestampFormat);
  };
}

function StringShape() {
  Shape.apply(this, arguments);

  var nullLessProtocols = ['rest-xml', 'query', 'ec2'];
  this.toType = function(value) {
    value = this.api && nullLessProtocols.indexOf(this.api.protocol) > -1 ?
      value || '' : value;
    if (this.isJsonValue) {
      return JSON.parse(value);
    }

    return value && typeof value.toString === 'function' ?
      value.toString() : value;
  };

  this.toWireFormat = function(value) {
    return this.isJsonValue ? JSON.stringify(value) : value;
  };
}

function FloatShape() {
  Shape.apply(this, arguments);

  this.toType = function(value) {
    if (value === null || value === undefined) return null;
    return parseFloat(value);
  };
  this.toWireFormat = this.toType;
}

function IntegerShape() {
  Shape.apply(this, arguments);

  this.toType = function(value) {
    if (value === null || value === undefined) return null;
    return parseInt(value, 10);
  };
  this.toWireFormat = this.toType;
}

function BinaryShape() {
  Shape.apply(this, arguments);
  this.toType = function(value) {
    var buf = util.base64.decode(value);
    if (this.isSensitive && util.isNode() && typeof util.Buffer.alloc === 'function') {
  /* Node.js can create a Buffer that is not isolated.
   * i.e. buf.byteLength !== buf.buffer.byteLength
   * This means that the sensitive data is accessible to anyone with access to buf.buffer.
   * If this is the node shared Buffer, then other code within this process _could_ find this secret.
   * Copy sensitive data to an isolated Buffer and zero the sensitive data.
   * While this is safe to do here, copying this code somewhere else may produce unexpected results.
   */
      var secureBuf = util.Buffer.alloc(buf.length, buf);
      buf.fill(0);
      buf = secureBuf;
    }
    return buf;
  };
  this.toWireFormat = util.base64.encode;
}

function Base64Shape() {
  BinaryShape.apply(this, arguments);
}

function BooleanShape() {
  Shape.apply(this, arguments);

  this.toType = function(value) {
    if (typeof value === 'boolean') return value;
    if (value === null || value === undefined) return null;
    return value === 'true';
  };
}

/**
 * @api private
 */
Shape.shapes = {
  StructureShape: StructureShape,
  ListShape: ListShape,
  MapShape: MapShape,
  StringShape: StringShape,
  BooleanShape: BooleanShape,
  Base64Shape: Base64Shape
};

/**
 * @api private
 */
module.exports = Shape;


/***/ }),

/***/ 73639:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);

util.isBrowser = function() { return false; };
util.isNode = function() { return true; };

// node.js specific modules
util.crypto.lib = __webpack_require__(33373);
util.Buffer = __webpack_require__(64293).Buffer;
util.domain = __webpack_require__(85229);
util.stream = __webpack_require__(92413);
util.url = __webpack_require__(78835);
util.querystring = __webpack_require__(71191);
util.environment = 'nodejs';
util.createEventStream = util.stream.Readable ?
  __webpack_require__(69643).createEventStream : __webpack_require__(63727).createEventStream;
util.realClock = __webpack_require__(81370);
util.clientSideMonitoring = {
  Publisher: __webpack_require__(66807).Publisher,
  configProvider: __webpack_require__(91822),
};
util.iniLoader = __webpack_require__(29697)/* .iniLoader */ .b;
util.getSystemErrorName = __webpack_require__(31669).getSystemErrorName;

var AWS;

/**
 * @api private
 */
module.exports = AWS = __webpack_require__(28437);

__webpack_require__(53819);
__webpack_require__(36965);
__webpack_require__(77360);
__webpack_require__(44694);
__webpack_require__(74998);
__webpack_require__(3498);
__webpack_require__(15037);
__webpack_require__(80371);

// Load the xml2js XML parser
AWS.XML.Parser = __webpack_require__(96752);

// Load Node HTTP client
__webpack_require__(2310);

__webpack_require__(95417);

// Load custom credential providers
__webpack_require__(11017);
__webpack_require__(73379);
__webpack_require__(88764);
__webpack_require__(10645);
__webpack_require__(57714);
__webpack_require__(27454);
__webpack_require__(13754);
__webpack_require__(80371);

// Setup default chain providers
// If this changes, please update documentation for
// AWS.CredentialProviderChain.defaultProviders in
// credentials/credential_provider_chain.js
AWS.CredentialProviderChain.defaultProviders = [
  function () { return new AWS.EnvironmentCredentials('AWS'); },
  function () { return new AWS.EnvironmentCredentials('AMAZON'); },
  function () { return new AWS.SharedIniFileCredentials(); },
  function () { return new AWS.ECSCredentials(); },
  function () { return new AWS.ProcessCredentials(); },
  function () { return new AWS.TokenFileWebIdentityCredentials(); },
  function () { return new AWS.EC2MetadataCredentials(); }
];

// Update configuration keys
AWS.util.update(AWS.Config.prototype.keys, {
  credentials: function () {
    var credentials = null;
    new AWS.CredentialProviderChain([
      function () { return new AWS.EnvironmentCredentials('AWS'); },
      function () { return new AWS.EnvironmentCredentials('AMAZON'); },
      function () { return new AWS.SharedIniFileCredentials({ disableAssumeRole: true }); }
    ]).resolve(function(err, creds) {
      if (!err) credentials = creds;
    });
    return credentials;
  },
  credentialProvider: function() {
    return new AWS.CredentialProviderChain();
  },
  logger: function () {
    return process.env.AWSJS_DEBUG ? console : null;
  },
  region: function() {
    var env = process.env;
    var region = env.AWS_REGION || env.AMAZON_REGION;
    if (env[AWS.util.configOptInEnv]) {
      var toCheck = [
        {filename: env[AWS.util.sharedCredentialsFileEnv]},
        {isConfig: true, filename: env[AWS.util.sharedConfigFileEnv]}
      ];
      var iniLoader = AWS.util.iniLoader;
      while (!region && toCheck.length) {
        var configFile = {};
        var fileInfo = toCheck.shift();
        try {
          configFile = iniLoader.loadFrom(fileInfo);
        } catch (err) {
          if (fileInfo.isConfig) throw err;
        }
        var profile = configFile[env.AWS_PROFILE || AWS.util.defaultProfile];
        region = profile && profile.region;
      }
    }
    return region;
  }
});

// Reset configuration
AWS.config = new AWS.Config();


/***/ }),

/***/ 99127:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * @api private
 */
AWS.ParamValidator = AWS.util.inherit({
  /**
   * Create a new validator object.
   *
   * @param validation [Boolean|map] whether input parameters should be
   *     validated against the operation description before sending the
   *     request. Pass a map to enable any of the following specific
   *     validation features:
   *
   *     * **min** [Boolean] &mdash; Validates that a value meets the min
   *       constraint. This is enabled by default when paramValidation is set
   *       to `true`.
   *     * **max** [Boolean] &mdash; Validates that a value meets the max
   *       constraint.
   *     * **pattern** [Boolean] &mdash; Validates that a string value matches a
   *       regular expression.
   *     * **enum** [Boolean] &mdash; Validates that a string value matches one
   *       of the allowable enum values.
   */
  constructor: function ParamValidator(validation) {
    if (validation === true || validation === undefined) {
      validation = {'min': true};
    }
    this.validation = validation;
  },

  validate: function validate(shape, params, context) {
    this.errors = [];
    this.validateMember(shape, params || {}, context || 'params');

    if (this.errors.length > 1) {
      var msg = this.errors.join('\n* ');
      msg = 'There were ' + this.errors.length +
        ' validation errors:\n* ' + msg;
      throw AWS.util.error(new Error(msg),
        {code: 'MultipleValidationErrors', errors: this.errors});
    } else if (this.errors.length === 1) {
      throw this.errors[0];
    } else {
      return true;
    }
  },

  fail: function fail(code, message) {
    this.errors.push(AWS.util.error(new Error(message), {code: code}));
  },

  validateStructure: function validateStructure(shape, params, context) {
    this.validateType(params, context, ['object'], 'structure');

    var paramName;
    for (var i = 0; shape.required && i < shape.required.length; i++) {
      paramName = shape.required[i];
      var value = params[paramName];
      if (value === undefined || value === null) {
        this.fail('MissingRequiredParameter',
          'Missing required key \'' + paramName + '\' in ' + context);
      }
    }

    // validate hash members
    for (paramName in params) {
      if (!Object.prototype.hasOwnProperty.call(params, paramName)) continue;

      var paramValue = params[paramName],
          memberShape = shape.members[paramName];

      if (memberShape !== undefined) {
        var memberContext = [context, paramName].join('.');
        this.validateMember(memberShape, paramValue, memberContext);
      } else if (paramValue !== undefined && paramValue !== null) {
        this.fail('UnexpectedParameter',
          'Unexpected key \'' + paramName + '\' found in ' + context);
      }
    }

    return true;
  },

  validateMember: function validateMember(shape, param, context) {
    switch (shape.type) {
      case 'structure':
        return this.validateStructure(shape, param, context);
      case 'list':
        return this.validateList(shape, param, context);
      case 'map':
        return this.validateMap(shape, param, context);
      default:
        return this.validateScalar(shape, param, context);
    }
  },

  validateList: function validateList(shape, params, context) {
    if (this.validateType(params, context, [Array])) {
      this.validateRange(shape, params.length, context, 'list member count');
      // validate array members
      for (var i = 0; i < params.length; i++) {
        this.validateMember(shape.member, params[i], context + '[' + i + ']');
      }
    }
  },

  validateMap: function validateMap(shape, params, context) {
    if (this.validateType(params, context, ['object'], 'map')) {
      // Build up a count of map members to validate range traits.
      var mapCount = 0;
      for (var param in params) {
        if (!Object.prototype.hasOwnProperty.call(params, param)) continue;
        // Validate any map key trait constraints
        this.validateMember(shape.key, param,
                            context + '[key=\'' + param + '\']');
        this.validateMember(shape.value, params[param],
                            context + '[\'' + param + '\']');
        mapCount++;
      }
      this.validateRange(shape, mapCount, context, 'map member count');
    }
  },

  validateScalar: function validateScalar(shape, value, context) {
    switch (shape.type) {
      case null:
      case undefined:
      case 'string':
        return this.validateString(shape, value, context);
      case 'base64':
      case 'binary':
        return this.validatePayload(value, context);
      case 'integer':
      case 'float':
        return this.validateNumber(shape, value, context);
      case 'boolean':
        return this.validateType(value, context, ['boolean']);
      case 'timestamp':
        return this.validateType(value, context, [Date,
          /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?Z$/, 'number'],
          'Date object, ISO-8601 string, or a UNIX timestamp');
      default:
        return this.fail('UnkownType', 'Unhandled type ' +
                         shape.type + ' for ' + context);
    }
  },

  validateString: function validateString(shape, value, context) {
    var validTypes = ['string'];
    if (shape.isJsonValue) {
      validTypes = validTypes.concat(['number', 'object', 'boolean']);
    }
    if (value !== null && this.validateType(value, context, validTypes)) {
      this.validateEnum(shape, value, context);
      this.validateRange(shape, value.length, context, 'string length');
      this.validatePattern(shape, value, context);
      this.validateUri(shape, value, context);
    }
  },

  validateUri: function validateUri(shape, value, context) {
    if (shape['location'] === 'uri') {
      if (value.length === 0) {
        this.fail('UriParameterError', 'Expected uri parameter to have length >= 1,'
          + ' but found "' + value +'" for ' + context);
      }
    }
  },

  validatePattern: function validatePattern(shape, value, context) {
    if (this.validation['pattern'] && shape['pattern'] !== undefined) {
      if (!(new RegExp(shape['pattern'])).test(value)) {
        this.fail('PatternMatchError', 'Provided value "' + value + '" '
          + 'does not match regex pattern /' + shape['pattern'] + '/ for '
          + context);
      }
    }
  },

  validateRange: function validateRange(shape, value, context, descriptor) {
    if (this.validation['min']) {
      if (shape['min'] !== undefined && value < shape['min']) {
        this.fail('MinRangeError', 'Expected ' + descriptor + ' >= '
          + shape['min'] + ', but found ' + value + ' for ' + context);
      }
    }
    if (this.validation['max']) {
      if (shape['max'] !== undefined && value > shape['max']) {
        this.fail('MaxRangeError', 'Expected ' + descriptor + ' <= '
          + shape['max'] + ', but found ' + value + ' for ' + context);
      }
    }
  },

  validateEnum: function validateRange(shape, value, context) {
    if (this.validation['enum'] && shape['enum'] !== undefined) {
      // Fail if the string value is not present in the enum list
      if (shape['enum'].indexOf(value) === -1) {
        this.fail('EnumError', 'Found string value of ' + value + ', but '
          + 'expected ' + shape['enum'].join('|') + ' for ' + context);
      }
    }
  },

  validateType: function validateType(value, context, acceptedTypes, type) {
    // We will not log an error for null or undefined, but we will return
    // false so that callers know that the expected type was not strictly met.
    if (value === null || value === undefined) return false;

    var foundInvalidType = false;
    for (var i = 0; i < acceptedTypes.length; i++) {
      if (typeof acceptedTypes[i] === 'string') {
        if (typeof value === acceptedTypes[i]) return true;
      } else if (acceptedTypes[i] instanceof RegExp) {
        if ((value || '').toString().match(acceptedTypes[i])) return true;
      } else {
        if (value instanceof acceptedTypes[i]) return true;
        if (AWS.util.isType(value, acceptedTypes[i])) return true;
        if (!type && !foundInvalidType) acceptedTypes = acceptedTypes.slice();
        acceptedTypes[i] = AWS.util.typeName(acceptedTypes[i]);
      }
      foundInvalidType = true;
    }

    var acceptedType = type;
    if (!acceptedType) {
      acceptedType = acceptedTypes.join(', ').replace(/,([^,]+)$/, ', or$1');
    }

    var vowel = acceptedType.match(/^[aeiou]/i) ? 'n' : '';
    this.fail('InvalidParameterType', 'Expected ' + context + ' to be a' +
              vowel + ' ' + acceptedType);
    return false;
  },

  validateNumber: function validateNumber(shape, value, context) {
    if (value === null || value === undefined) return;
    if (typeof value === 'string') {
      var castedValue = parseFloat(value);
      if (castedValue.toString() === value) value = castedValue;
    }
    if (this.validateType(value, context, ['number'])) {
      this.validateRange(shape, value, context, 'numeric value');
    }
  },

  validatePayload: function validatePayload(value, context) {
    if (value === null || value === undefined) return;
    if (typeof value === 'string') return;
    if (value && typeof value.byteLength === 'number') return; // typed arrays
    if (AWS.util.isNode()) { // special check for buffer/stream in Node.js
      var Stream = AWS.util.stream.Stream;
      if (AWS.util.Buffer.isBuffer(value) || value instanceof Stream) return;
    } else {
      if (typeof Blob !== void 0 && value instanceof Blob) return;
    }

    var types = ['Buffer', 'Stream', 'File', 'Blob', 'ArrayBuffer', 'DataView'];
    if (value) {
      for (var i = 0; i < types.length; i++) {
        if (AWS.util.isType(value, types[i])) return;
        if (AWS.util.typeName(value.constructor) === types[i]) return;
      }
    }

    this.fail('InvalidParameterType', 'Expected ' + context + ' to be a ' +
      'string, Buffer, Stream, Blob, or typed array object');
  }
});


/***/ }),

/***/ 44086:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var rest = AWS.Protocol.Rest;

/**
 * A presigner object can be used to generate presigned urls for the Polly service.
 */
AWS.Polly.Presigner = AWS.util.inherit({
    /**
     * Creates a presigner object with a set of configuration options.
     *
     * @option options params [map] An optional map of parameters to bind to every
     *   request sent by this service object.
     * @option options service [AWS.Polly] An optional pre-configured instance
     *  of the AWS.Polly service object to use for requests. The object may
     *  bound parameters used by the presigner.
     * @see AWS.Polly.constructor
     */
    constructor: function Signer(options) {
        options = options || {};
        this.options = options;
        this.service = options.service;
        this.bindServiceObject(options);
        this._operations = {};
    },

    /**
     * @api private
     */
    bindServiceObject: function bindServiceObject(options) {
        options = options || {};
        if (!this.service) {
            this.service = new AWS.Polly(options);
        } else {
            var config = AWS.util.copy(this.service.config);
            this.service = new this.service.constructor.__super__(config);
            this.service.config.params = AWS.util.merge(this.service.config.params || {}, options.params);
        }
    },

    /**
     * @api private
     */
    modifyInputMembers: function modifyInputMembers(input) {
        // make copies of the input so we don't overwrite the api
        // need to be careful to copy anything we access/modify
        var modifiedInput = AWS.util.copy(input);
        modifiedInput.members = AWS.util.copy(input.members);
        AWS.util.each(input.members, function(name, member) {
            modifiedInput.members[name] = AWS.util.copy(member);
            // update location and locationName
            if (!member.location || member.location === 'body') {
                modifiedInput.members[name].location = 'querystring';
                modifiedInput.members[name].locationName = name;
            }
        });
        return modifiedInput;
    },

    /**
     * @api private
     */
    convertPostToGet: function convertPostToGet(req) {
        // convert method
        req.httpRequest.method = 'GET';

        var operation = req.service.api.operations[req.operation];
        // get cached operation input first
        var input = this._operations[req.operation];
        if (!input) {
            // modify the original input
            this._operations[req.operation] = input = this.modifyInputMembers(operation.input);
        }

        var uri = rest.generateURI(req.httpRequest.endpoint.path, operation.httpPath, input, req.params);

        req.httpRequest.path = uri;
        req.httpRequest.body = '';

        // don't need these headers on a GET request
        delete req.httpRequest.headers['Content-Length'];
        delete req.httpRequest.headers['Content-Type'];
    },

    /**
     * @overload getSynthesizeSpeechUrl(params = {}, [expires = 3600], [callback])
     *   Generate a presigned url for {AWS.Polly.synthesizeSpeech}.
     *   @note You must ensure that you have static or previously resolved
     *     credentials if you call this method synchronously (with no callback),
     *     otherwise it may not properly sign the request. If you cannot guarantee
     *     this (you are using an asynchronous credential provider, i.e., EC2
     *     IAM roles), you should always call this method with an asynchronous
     *     callback.
     *   @param params [map] parameters to pass to the operation. See the {AWS.Polly.synthesizeSpeech}
     *     operation for the expected operation parameters.
     *   @param expires [Integer] (3600) the number of seconds to expire the pre-signed URL operation in.
     *     Defaults to 1 hour.
     *   @return [string] if called synchronously (with no callback), returns the signed URL.
     *   @return [null] nothing is returned if a callback is provided.
     *   @callback callback function (err, url)
     *     If a callback is supplied, it is called when a signed URL has been generated.
     *     @param err [Error] the error object returned from the presigner.
     *     @param url [String] the signed URL.
     *   @see AWS.Polly.synthesizeSpeech
     */
    getSynthesizeSpeechUrl: function getSynthesizeSpeechUrl(params, expires, callback) {
        var self = this;
        var request = this.service.makeRequest('synthesizeSpeech', params);
        // remove existing build listeners
        request.removeAllListeners('build');
        request.on('build', function(req) {
            self.convertPostToGet(req);
        });
        return request.presign(expires, callback);
    }
});


/***/ }),

/***/ 97969:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util =  __webpack_require__(77985);
var AWS = __webpack_require__(28437);

/**
 * Prepend prefix defined by API model to endpoint that's already
 * constructed. This feature does not apply to operations using
 * endpoint discovery and can be disabled.
 * @api private
 */
function populateHostPrefix(request)  {
  var enabled = request.service.config.hostPrefixEnabled;
  if (!enabled) return request;
  var operationModel = request.service.api.operations[request.operation];
  //don't marshal host prefix when operation has endpoint discovery traits
  if (hasEndpointDiscover(request)) return request;
  if (operationModel.endpoint && operationModel.endpoint.hostPrefix) {
    var hostPrefixNotation = operationModel.endpoint.hostPrefix;
    var hostPrefix = expandHostPrefix(hostPrefixNotation, request.params, operationModel.input);
    prependEndpointPrefix(request.httpRequest.endpoint, hostPrefix);
    validateHostname(request.httpRequest.endpoint.hostname);
  }
  return request;
}

/**
 * @api private
 */
function hasEndpointDiscover(request) {
  var api = request.service.api;
  var operationModel = api.operations[request.operation];
  var isEndpointOperation = api.endpointOperation && (api.endpointOperation === util.string.lowerFirst(operationModel.name));
  return (operationModel.endpointDiscoveryRequired !== 'NULL' || isEndpointOperation === true);
}

/**
 * @api private
 */
function expandHostPrefix(hostPrefixNotation, params, shape) {
  util.each(shape.members, function(name, member) {
    if (member.hostLabel === true) {
      if (typeof params[name] !== 'string' || params[name] === '') {
        throw util.error(new Error(), {
          message: 'Parameter ' + name + ' should be a non-empty string.',
          code: 'InvalidParameter'
        });
      }
      var regex = new RegExp('\\{' + name + '\\}', 'g');
      hostPrefixNotation = hostPrefixNotation.replace(regex, params[name]);
    }
  });
  return hostPrefixNotation;
}

/**
 * @api private
 */
function prependEndpointPrefix(endpoint, prefix) {
  if (endpoint.host) {
    endpoint.host = prefix + endpoint.host;
  }
  if (endpoint.hostname) {
    endpoint.hostname = prefix + endpoint.hostname;
  }
}

/**
 * @api private
 */
function validateHostname(hostname) {
  var labels = hostname.split('.');
  //Reference: https://tools.ietf.org/html/rfc1123#section-2
  var hostPattern = /^[a-zA-Z0-9]{1}$|^[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]$/;
  util.arrayEach(labels, function(label) {
    if (!label.length || label.length < 1 || label.length > 63) {
      throw util.error(new Error(), {
        code: 'ValidationError',
        message: 'Hostname label length should be between 1 to 63 characters, inclusive.'
      });
    }
    if (!hostPattern.test(label)) {
      throw AWS.util.error(new Error(),
        {code: 'ValidationError', message: label + ' is not hostname compatible.'});
    }
  });
}

module.exports = {
  populateHostPrefix: populateHostPrefix
};


/***/ }),

/***/ 30083:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);
var JsonBuilder = __webpack_require__(47495);
var JsonParser = __webpack_require__(5474);
var populateHostPrefix = __webpack_require__(97969).populateHostPrefix;

function buildRequest(req) {
  var httpRequest = req.httpRequest;
  var api = req.service.api;
  var target = api.targetPrefix + '.' + api.operations[req.operation].name;
  var version = api.jsonVersion || '1.0';
  var input = api.operations[req.operation].input;
  var builder = new JsonBuilder();

  if (version === 1) version = '1.0';
  httpRequest.body = builder.build(req.params || {}, input);
  httpRequest.headers['Content-Type'] = 'application/x-amz-json-' + version;
  httpRequest.headers['X-Amz-Target'] = target;

  populateHostPrefix(req);
}

function extractError(resp) {
  var error = {};
  var httpResponse = resp.httpResponse;

  error.code = httpResponse.headers['x-amzn-errortype'] || 'UnknownError';
  if (typeof error.code === 'string') {
    error.code = error.code.split(':')[0];
  }

  if (httpResponse.body.length > 0) {
    try {
      var e = JSON.parse(httpResponse.body.toString());
      var code = e.__type || e.code || e.Code;
      if (code) {
        error.code = code.split('#').pop();
      }
      if (error.code === 'RequestEntityTooLarge') {
        error.message = 'Request body must be less than 1 MB';
      } else {
        error.message = (e.message || e.Message || null);
      }
    } catch (e) {
      error.statusCode = httpResponse.statusCode;
      error.message = httpResponse.statusMessage;
    }
  } else {
    error.statusCode = httpResponse.statusCode;
    error.message = httpResponse.statusCode.toString();
  }

  resp.error = util.error(new Error(), error);
}

function extractData(resp) {
  var body = resp.httpResponse.body.toString() || '{}';
  if (resp.request.service.config.convertResponseTypes === false) {
    resp.data = JSON.parse(body);
  } else {
    var operation = resp.request.service.api.operations[resp.request.operation];
    var shape = operation.output || {};
    var parser = new JsonParser();
    resp.data = parser.parse(body, shape);
  }
}

/**
 * @api private
 */
module.exports = {
  buildRequest: buildRequest,
  extractError: extractError,
  extractData: extractData
};


/***/ }),

/***/ 90761:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var util = __webpack_require__(77985);
var QueryParamSerializer = __webpack_require__(45175);
var Shape = __webpack_require__(71349);
var populateHostPrefix = __webpack_require__(97969).populateHostPrefix;

function buildRequest(req) {
  var operation = req.service.api.operations[req.operation];
  var httpRequest = req.httpRequest;
  httpRequest.headers['Content-Type'] =
    'application/x-www-form-urlencoded; charset=utf-8';
  httpRequest.params = {
    Version: req.service.api.apiVersion,
    Action: operation.name
  };

  // convert the request parameters into a list of query params,
  // e.g. Deeply.NestedParam.0.Name=value
  var builder = new QueryParamSerializer();
  builder.serialize(req.params, operation.input, function(name, value) {
    httpRequest.params[name] = value;
  });
  httpRequest.body = util.queryParamsToString(httpRequest.params);

  populateHostPrefix(req);
}

function extractError(resp) {
  var data, body = resp.httpResponse.body.toString();
  if (body.match('<UnknownOperationException')) {
    data = {
      Code: 'UnknownOperation',
      Message: 'Unknown operation ' + resp.request.operation
    };
  } else {
    try {
      data = new AWS.XML.Parser().parse(body);
    } catch (e) {
      data = {
        Code: resp.httpResponse.statusCode,
        Message: resp.httpResponse.statusMessage
      };
    }
  }

  if (data.requestId && !resp.requestId) resp.requestId = data.requestId;
  if (data.Errors) data = data.Errors;
  if (data.Error) data = data.Error;
  if (data.Code) {
    resp.error = util.error(new Error(), {
      code: data.Code,
      message: data.Message
    });
  } else {
    resp.error = util.error(new Error(), {
      code: resp.httpResponse.statusCode,
      message: null
    });
  }
}

function extractData(resp) {
  var req = resp.request;
  var operation = req.service.api.operations[req.operation];
  var shape = operation.output || {};
  var origRules = shape;

  if (origRules.resultWrapper) {
    var tmp = Shape.create({type: 'structure'});
    tmp.members[origRules.resultWrapper] = shape;
    tmp.memberNames = [origRules.resultWrapper];
    util.property(shape, 'name', shape.resultWrapper);
    shape = tmp;
  }

  var parser = new AWS.XML.Parser();

  // TODO: Refactor XML Parser to parse RequestId from response.
  if (shape && shape.members && !shape.members._XAMZRequestId) {
    var requestIdShape = Shape.create(
      { type: 'string' },
      { api: { protocol: 'query' } },
      'requestId'
    );
    shape.members._XAMZRequestId = requestIdShape;
  }

  var data = parser.parse(resp.httpResponse.body.toString(), shape);
  resp.requestId = data._XAMZRequestId || data.requestId;

  if (data._XAMZRequestId) delete data._XAMZRequestId;

  if (origRules.resultWrapper) {
    if (data[origRules.resultWrapper]) {
      util.update(data, data[origRules.resultWrapper]);
      delete data[origRules.resultWrapper];
    }
  }

  resp.data = data;
}

/**
 * @api private
 */
module.exports = {
  buildRequest: buildRequest,
  extractError: extractError,
  extractData: extractData
};


/***/ }),

/***/ 98200:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);
var populateHostPrefix = __webpack_require__(97969).populateHostPrefix;

function populateMethod(req) {
  req.httpRequest.method = req.service.api.operations[req.operation].httpMethod;
}

function generateURI(endpointPath, operationPath, input, params) {
  var uri = [endpointPath, operationPath].join('/');
  uri = uri.replace(/\/+/g, '/');

  var queryString = {}, queryStringSet = false;
  util.each(input.members, function (name, member) {
    var paramValue = params[name];
    if (paramValue === null || paramValue === undefined) return;
    if (member.location === 'uri') {
      var regex = new RegExp('\\{' + member.name + '(\\+)?\\}');
      uri = uri.replace(regex, function(_, plus) {
        var fn = plus ? util.uriEscapePath : util.uriEscape;
        return fn(String(paramValue));
      });
    } else if (member.location === 'querystring') {
      queryStringSet = true;

      if (member.type === 'list') {
        queryString[member.name] = paramValue.map(function(val) {
          return util.uriEscape(member.member.toWireFormat(val).toString());
        });
      } else if (member.type === 'map') {
        util.each(paramValue, function(key, value) {
          if (Array.isArray(value)) {
            queryString[key] = value.map(function(val) {
              return util.uriEscape(String(val));
            });
          } else {
            queryString[key] = util.uriEscape(String(value));
          }
        });
      } else {
        queryString[member.name] = util.uriEscape(member.toWireFormat(paramValue).toString());
      }
    }
  });

  if (queryStringSet) {
    uri += (uri.indexOf('?') >= 0 ? '&' : '?');
    var parts = [];
    util.arrayEach(Object.keys(queryString).sort(), function(key) {
      if (!Array.isArray(queryString[key])) {
        queryString[key] = [queryString[key]];
      }
      for (var i = 0; i < queryString[key].length; i++) {
        parts.push(util.uriEscape(String(key)) + '=' + queryString[key][i]);
      }
    });
    uri += parts.join('&');
  }

  return uri;
}

function populateURI(req) {
  var operation = req.service.api.operations[req.operation];
  var input = operation.input;

  var uri = generateURI(req.httpRequest.endpoint.path, operation.httpPath, input, req.params);
  req.httpRequest.path = uri;
}

function populateHeaders(req) {
  var operation = req.service.api.operations[req.operation];
  util.each(operation.input.members, function (name, member) {
    var value = req.params[name];
    if (value === null || value === undefined) return;

    if (member.location === 'headers' && member.type === 'map') {
      util.each(value, function(key, memberValue) {
        req.httpRequest.headers[member.name + key] = memberValue;
      });
    } else if (member.location === 'header') {
      value = member.toWireFormat(value).toString();
      if (member.isJsonValue) {
        value = util.base64.encode(value);
      }
      req.httpRequest.headers[member.name] = value;
    }
  });
}

function buildRequest(req) {
  populateMethod(req);
  populateURI(req);
  populateHeaders(req);
  populateHostPrefix(req);
}

function extractError() {
}

function extractData(resp) {
  var req = resp.request;
  var data = {};
  var r = resp.httpResponse;
  var operation = req.service.api.operations[req.operation];
  var output = operation.output;

  // normalize headers names to lower-cased keys for matching
  var headers = {};
  util.each(r.headers, function (k, v) {
    headers[k.toLowerCase()] = v;
  });

  util.each(output.members, function(name, member) {
    var header = (member.name || name).toLowerCase();
    if (member.location === 'headers' && member.type === 'map') {
      data[name] = {};
      var location = member.isLocationName ? member.name : '';
      var pattern = new RegExp('^' + location + '(.+)', 'i');
      util.each(r.headers, function (k, v) {
        var result = k.match(pattern);
        if (result !== null) {
          data[name][result[1]] = v;
        }
      });
    } else if (member.location === 'header') {
      if (headers[header] !== undefined) {
        var value = member.isJsonValue ?
          util.base64.decode(headers[header]) :
          headers[header];
        data[name] = member.toType(value);
      }
    } else if (member.location === 'statusCode') {
      data[name] = parseInt(r.statusCode, 10);
    }
  });

  resp.data = data;
}

/**
 * @api private
 */
module.exports = {
  buildRequest: buildRequest,
  extractError: extractError,
  extractData: extractData,
  generateURI: generateURI
};


/***/ }),

/***/ 5883:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);
var Rest = __webpack_require__(98200);
var Json = __webpack_require__(30083);
var JsonBuilder = __webpack_require__(47495);
var JsonParser = __webpack_require__(5474);

function populateBody(req) {
  var builder = new JsonBuilder();
  var input = req.service.api.operations[req.operation].input;

  if (input.payload) {
    var params = {};
    var payloadShape = input.members[input.payload];
    params = req.params[input.payload];
    if (params === undefined) return;

    if (payloadShape.type === 'structure') {
      req.httpRequest.body = builder.build(params, payloadShape);
      applyContentTypeHeader(req);
    } else { // non-JSON payload
      req.httpRequest.body = params;
      if (payloadShape.type === 'binary' || payloadShape.isStreaming) {
        applyContentTypeHeader(req, true);
      }
    }
  } else {
    var body = builder.build(req.params, input);
    if (body !== '{}' || req.httpRequest.method !== 'GET') { //don't send empty body for GET method
      req.httpRequest.body = body;
    }
    applyContentTypeHeader(req);
  }
}

function applyContentTypeHeader(req, isBinary) {
  var operation = req.service.api.operations[req.operation];
  var input = operation.input;

  if (!req.httpRequest.headers['Content-Type']) {
    var type = isBinary ? 'binary/octet-stream' : 'application/json';
    req.httpRequest.headers['Content-Type'] = type;
  }
}

function buildRequest(req) {
  Rest.buildRequest(req);

  // never send body payload on HEAD/DELETE
  if (['HEAD', 'DELETE'].indexOf(req.httpRequest.method) < 0) {
    populateBody(req);
  }
}

function extractError(resp) {
  Json.extractError(resp);
}

function extractData(resp) {
  Rest.extractData(resp);

  var req = resp.request;
  var operation = req.service.api.operations[req.operation];
  var rules = req.service.api.operations[req.operation].output || {};
  var parser;
  var hasEventOutput = operation.hasEventOutput;

  if (rules.payload) {
    var payloadMember = rules.members[rules.payload];
    var body = resp.httpResponse.body;
    if (payloadMember.isEventStream) {
      parser = new JsonParser();
      resp.data[payload] = util.createEventStream(
        AWS.HttpClient.streamsApiVersion === 2 ? resp.httpResponse.stream : body,
        parser,
        payloadMember
      );
    } else if (payloadMember.type === 'structure' || payloadMember.type === 'list') {
      var parser = new JsonParser();
      resp.data[rules.payload] = parser.parse(body, payloadMember);
    } else if (payloadMember.type === 'binary' || payloadMember.isStreaming) {
      resp.data[rules.payload] = body;
    } else {
      resp.data[rules.payload] = payloadMember.toType(body);
    }
  } else {
    var data = resp.data;
    Json.extractData(resp);
    resp.data = util.merge(data, resp.data);
  }
}

/**
 * @api private
 */
module.exports = {
  buildRequest: buildRequest,
  extractError: extractError,
  extractData: extractData
};


/***/ }),

/***/ 15143:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var util = __webpack_require__(77985);
var Rest = __webpack_require__(98200);

function populateBody(req) {
  var input = req.service.api.operations[req.operation].input;
  var builder = new AWS.XML.Builder();
  var params = req.params;

  var payload = input.payload;
  if (payload) {
    var payloadMember = input.members[payload];
    params = params[payload];
    if (params === undefined) return;

    if (payloadMember.type === 'structure') {
      var rootElement = payloadMember.name;
      req.httpRequest.body = builder.toXML(params, payloadMember, rootElement, true);
    } else { // non-xml payload
      req.httpRequest.body = params;
    }
  } else {
    req.httpRequest.body = builder.toXML(params, input, input.name ||
      input.shape || util.string.upperFirst(req.operation) + 'Request');
  }
}

function buildRequest(req) {
  Rest.buildRequest(req);

  // never send body payload on GET/HEAD
  if (['GET', 'HEAD'].indexOf(req.httpRequest.method) < 0) {
    populateBody(req);
  }
}

function extractError(resp) {
  Rest.extractError(resp);

  var data;
  try {
    data = new AWS.XML.Parser().parse(resp.httpResponse.body.toString());
  } catch (e) {
    data = {
      Code: resp.httpResponse.statusCode,
      Message: resp.httpResponse.statusMessage
    };
  }

  if (data.Errors) data = data.Errors;
  if (data.Error) data = data.Error;
  if (data.Code) {
    resp.error = util.error(new Error(), {
      code: data.Code,
      message: data.Message
    });
  } else {
    resp.error = util.error(new Error(), {
      code: resp.httpResponse.statusCode,
      message: null
    });
  }
}

function extractData(resp) {
  Rest.extractData(resp);

  var parser;
  var req = resp.request;
  var body = resp.httpResponse.body;
  var operation = req.service.api.operations[req.operation];
  var output = operation.output;

  var hasEventOutput = operation.hasEventOutput;

  var payload = output.payload;
  if (payload) {
    var payloadMember = output.members[payload];
    if (payloadMember.isEventStream) {
      parser = new AWS.XML.Parser();
      resp.data[payload] = util.createEventStream(
        AWS.HttpClient.streamsApiVersion === 2 ? resp.httpResponse.stream : resp.httpResponse.body,
        parser,
        payloadMember
      );
    } else if (payloadMember.type === 'structure') {
      parser = new AWS.XML.Parser();
      resp.data[payload] = parser.parse(body.toString(), payloadMember);
    } else if (payloadMember.type === 'binary' || payloadMember.isStreaming) {
      resp.data[payload] = body;
    } else {
      resp.data[payload] = payloadMember.toType(body);
    }
  } else if (body.length > 0) {
    parser = new AWS.XML.Parser();
    var data = parser.parse(body.toString(), output);
    util.update(resp.data, data);
  }
}

/**
 * @api private
 */
module.exports = {
  buildRequest: buildRequest,
  extractError: extractError,
  extractData: extractData
};


/***/ }),

/***/ 91822:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Resolve client-side monitoring configuration from either environmental variables
 * or shared config file. Configurations from environmental variables have higher priority
 * than those from shared config file. The resolver will try to read the shared config file
 * no matter whether the AWS_SDK_LOAD_CONFIG variable is set.
 * @api private
 */
function resolveMonitoringConfig() {
  var config = {
    port: undefined,
    clientId: undefined,
    enabled: undefined,
    host: undefined
  };
  if (fromEnvironment(config) || fromConfigFile(config)) return toJSType(config);
  return toJSType(config);
}

/**
 * Resolve configurations from environmental variables.
 * @param {object} client side monitoring config object needs to be resolved
 * @returns {boolean} whether resolving configurations is done
 * @api private
 */
function fromEnvironment(config) {
  config.port = config.port || process.env.AWS_CSM_PORT;
  config.enabled = config.enabled || process.env.AWS_CSM_ENABLED;
  config.clientId = config.clientId || process.env.AWS_CSM_CLIENT_ID;
  config.host = config.host || process.env.AWS_CSM_HOST;
  return config.port && config.enabled && config.clientId && config.host ||
    ['false', '0'].indexOf(config.enabled) >= 0; //no need to read shared config file if explicitely disabled
}

/**
 * Resolve cofigurations from shared config file with specified role name
 * @param {object} client side monitoring config object needs to be resolved
 * @returns {boolean} whether resolving configurations is done
 * @api private
 */
function fromConfigFile(config) {
  var sharedFileConfig;
  try {
    var configFile = AWS.util.iniLoader.loadFrom({
      isConfig: true,
      filename: process.env[AWS.util.sharedConfigFileEnv]
    });
    var sharedFileConfig = configFile[
      process.env.AWS_PROFILE || AWS.util.defaultProfile
    ];
  } catch (err) {
    return false;
  }
  if (!sharedFileConfig) return config;
  config.port = config.port || sharedFileConfig.csm_port;
  config.enabled = config.enabled || sharedFileConfig.csm_enabled;
  config.clientId = config.clientId || sharedFileConfig.csm_client_id;
  config.host = config.host || sharedFileConfig.csm_host;
  return config.port && config.enabled && config.clientId && config.host;
}

/**
 * Transfer the resolved configuration value to proper types: port as number, enabled
 * as boolean and clientId as string. The 'enabled' flag is valued to false when set
 * to 'false' or '0'.
 * @param {object} resolved client side monitoring config
 * @api private
 */
function toJSType(config) {
    //config.XXX is either undefined or string
  var falsyNotations = ['false', '0', undefined];
  if (!config.enabled || falsyNotations.indexOf(config.enabled.toLowerCase()) >= 0) {
    config.enabled = false;
  } else {
    config.enabled = true;
  }
  config.port = config.port ? parseInt(config.port, 10) : undefined;
  return config;
}

module.exports = resolveMonitoringConfig;


/***/ }),

/***/ 66807:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(28437).util;
var dgram = __webpack_require__(76200);
var stringToBuffer = util.buffer.toBuffer;

var MAX_MESSAGE_SIZE = 1024 * 8; // 8 KB

/**
 * Publishes metrics via udp.
 * @param {object} options Paramters for Publisher constructor
 * @param {number} [options.port = 31000] Port number
 * @param {string} [options.clientId = ''] Client Identifier
 * @param {boolean} [options.enabled = false] enable sending metrics datagram
 * @api private
 */
function Publisher(options) {
    // handle configuration
    options = options || {};
    this.enabled = options.enabled || false;
    this.port = options.port || 31000;
    this.clientId = options.clientId || '';
    this.address = options.host || '127.0.0.1';
    if (this.clientId.length > 255) {
        // ClientId has a max length of 255
        this.clientId = this.clientId.substr(0, 255);
    }
    this.messagesInFlight = 0;
}

Publisher.prototype.fieldsToTrim = {
    UserAgent: 256,
    SdkException: 128,
    SdkExceptionMessage: 512,
    AwsException: 128,
    AwsExceptionMessage: 512,
    FinalSdkException: 128,
    FinalSdkExceptionMessage: 512,
    FinalAwsException: 128,
    FinalAwsExceptionMessage: 512

};

/**
 * Trims fields that have a specified max length.
 * @param {object} event ApiCall or ApiCallAttempt event.
 * @returns {object}
 * @api private
 */
Publisher.prototype.trimFields = function(event) {
    var trimmableFields = Object.keys(this.fieldsToTrim);
    for (var i = 0, iLen = trimmableFields.length; i < iLen; i++) {
        var field = trimmableFields[i];
        if (event.hasOwnProperty(field)) {
            var maxLength = this.fieldsToTrim[field];
            var value = event[field];
            if (value && value.length > maxLength) {
                event[field] = value.substr(0, maxLength);
            }
        }
    }
    return event;
};

/**
 * Handles ApiCall and ApiCallAttempt events.
 * @param {Object} event apiCall or apiCallAttempt event.
 * @api private
 */
Publisher.prototype.eventHandler = function(event) {
    // set the clientId
    event.ClientId = this.clientId;

    this.trimFields(event);

    var message = stringToBuffer(JSON.stringify(event));
    if (!this.enabled || message.length > MAX_MESSAGE_SIZE) {
        // drop the message if publisher not enabled or it is too large
        return;
    }

    this.publishDatagram(message);
};

/**
 * Publishes message to an agent.
 * @param {Buffer} message JSON message to send to agent.
 * @api private
 */
Publisher.prototype.publishDatagram = function(message) {
    var self = this;
    var client = this.getClient();

    this.messagesInFlight++;
    this.client.send(message, 0, message.length, this.port, this.address, function(err, bytes) {
        if (--self.messagesInFlight <= 0) {
            // destroy existing client so the event loop isn't kept open
            self.destroyClient();
        }
    });
};

/**
 * Returns an existing udp socket, or creates one if it doesn't already exist.
 * @api private
 */
Publisher.prototype.getClient = function() {
    if (!this.client) {
        this.client = dgram.createSocket('udp4');
    }
    return this.client;
};

/**
 * Destroys the udp socket.
 * @api private
 */
Publisher.prototype.destroyClient = function() {
    if (this.client) {
        this.client.close();
        this.client = void 0;
    }
};

module.exports = {
    Publisher: Publisher
};


/***/ }),

/***/ 45175:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);

function QueryParamSerializer() {
}

QueryParamSerializer.prototype.serialize = function(params, shape, fn) {
  serializeStructure('', params, shape, fn);
};

function ucfirst(shape) {
  if (shape.isQueryName || shape.api.protocol !== 'ec2') {
    return shape.name;
  } else {
    return shape.name[0].toUpperCase() + shape.name.substr(1);
  }
}

function serializeStructure(prefix, struct, rules, fn) {
  util.each(rules.members, function(name, member) {
    var value = struct[name];
    if (value === null || value === undefined) return;

    var memberName = ucfirst(member);
    memberName = prefix ? prefix + '.' + memberName : memberName;
    serializeMember(memberName, value, member, fn);
  });
}

function serializeMap(name, map, rules, fn) {
  var i = 1;
  util.each(map, function (key, value) {
    var prefix = rules.flattened ? '.' : '.entry.';
    var position = prefix + (i++) + '.';
    var keyName = position + (rules.key.name || 'key');
    var valueName = position + (rules.value.name || 'value');
    serializeMember(name + keyName, key, rules.key, fn);
    serializeMember(name + valueName, value, rules.value, fn);
  });
}

function serializeList(name, list, rules, fn) {
  var memberRules = rules.member || {};

  if (list.length === 0) {
    fn.call(this, name, null);
    return;
  }

  util.arrayEach(list, function (v, n) {
    var suffix = '.' + (n + 1);
    if (rules.api.protocol === 'ec2') {
      // Do nothing for EC2
      suffix = suffix + ''; // make linter happy
    } else if (rules.flattened) {
      if (memberRules.name) {
        var parts = name.split('.');
        parts.pop();
        parts.push(ucfirst(memberRules));
        name = parts.join('.');
      }
    } else {
      suffix = '.' + (memberRules.name ? memberRules.name : 'member') + suffix;
    }
    serializeMember(name + suffix, v, memberRules, fn);
  });
}

function serializeMember(name, value, rules, fn) {
  if (value === null || value === undefined) return;
  if (rules.type === 'structure') {
    serializeStructure(name, value, rules, fn);
  } else if (rules.type === 'list') {
    serializeList(name, value, rules, fn);
  } else if (rules.type === 'map') {
    serializeMap(name, value, rules, fn);
  } else {
    fn(name, rules.toWireFormat(value).toString());
  }
}

/**
 * @api private
 */
module.exports = QueryParamSerializer;


/***/ }),

/***/ 16612:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * @api private
 */
var service = null;

/**
 * @api private
 */
var api = {
    signatureVersion: 'v4',
    signingName: 'rds-db',
    operations: {}
};

/**
 * @api private
 */
var requiredAuthTokenOptions = {
    region: 'string',
    hostname: 'string',
    port: 'number',
    username: 'string'
};

/**
 * A signer object can be used to generate an auth token to a database.
 */
AWS.RDS.Signer = AWS.util.inherit({
    /**
     * Creates a signer object can be used to generate an auth token.
     *
     * @option options credentials [AWS.Credentials] the AWS credentials
     *   to sign requests with. Uses the default credential provider chain
     *   if not specified.
     * @option options hostname [String] the hostname of the database to connect to.
     * @option options port [Number] the port number the database is listening on.
     * @option options region [String] the region the database is located in.
     * @option options username [String] the username to login as.
     * @example Passing in options to constructor
     *   var signer = new AWS.RDS.Signer({
     *     credentials: new AWS.SharedIniFileCredentials({profile: 'default'}),
     *     region: 'us-east-1',
     *     hostname: 'db.us-east-1.rds.amazonaws.com',
     *     port: 8000,
     *     username: 'name'
     *   });
     */
    constructor: function Signer(options) {
        this.options = options || {};
    },

    /**
     * @api private
     * Strips the protocol from a url.
     */
    convertUrlToAuthToken: function convertUrlToAuthToken(url) {
        // we are always using https as the protocol
        var protocol = 'https://';
        if (url.indexOf(protocol) === 0) {
            return url.substring(protocol.length);
        }
    },

    /**
     * @overload getAuthToken(options = {}, [callback])
     *   Generate an auth token to a database.
     *   @note You must ensure that you have static or previously resolved
     *     credentials if you call this method synchronously (with no callback),
     *     otherwise it may not properly sign the request. If you cannot guarantee
     *     this (you are using an asynchronous credential provider, i.e., EC2
     *     IAM roles), you should always call this method with an asynchronous
     *     callback.
     *
     *   @param options [map] The fields to use when generating an auth token.
     *     Any options specified here will be merged on top of any options passed
     *     to AWS.RDS.Signer:
     *
     *     * **credentials** (AWS.Credentials) &mdash; the AWS credentials
     *         to sign requests with. Uses the default credential provider chain
     *         if not specified.
     *     * **hostname** (String) &mdash; the hostname of the database to connect to.
     *     * **port** (Number) &mdash; the port number the database is listening on.
     *     * **region** (String) &mdash; the region the database is located in.
     *     * **username** (String) &mdash; the username to login as.
     *   @return [String] if called synchronously (with no callback), returns the
     *     auth token.
     *   @return [null] nothing is returned if a callback is provided.
     *   @callback callback function (err, token)
     *     If a callback is supplied, it is called when an auth token has been generated.
     *     @param err [Error] the error object returned from the signer.
     *     @param token [String] the auth token.
     *
     *   @example Generating an auth token synchronously
     *     var signer = new AWS.RDS.Signer({
     *       // configure options
     *       region: 'us-east-1',
     *       username: 'default',
     *       hostname: 'db.us-east-1.amazonaws.com',
     *       port: 8000
     *     });
     *     var token = signer.getAuthToken({
     *       // these options are merged with those defined when creating the signer, overriding in the case of a duplicate option
     *       // credentials are not specified here or when creating the signer, so default credential provider will be used
     *       username: 'test' // overriding username
     *     });
     *   @example Generating an auth token asynchronously
     *     var signer = new AWS.RDS.Signer({
     *       // configure options
     *       region: 'us-east-1',
     *       username: 'default',
     *       hostname: 'db.us-east-1.amazonaws.com',
     *       port: 8000
     *     });
     *     signer.getAuthToken({
     *       // these options are merged with those defined when creating the signer, overriding in the case of a duplicate option
     *       // credentials are not specified here or when creating the signer, so default credential provider will be used
     *       username: 'test' // overriding username
     *     }, function(err, token) {
     *       if (err) {
     *         // handle error
     *       } else {
     *         // use token
     *       }
     *     });
     *
     */
    getAuthToken: function getAuthToken(options, callback) {
        if (typeof options === 'function' && callback === undefined) {
            callback = options;
            options = {};
        }
        var self = this;
        var hasCallback = typeof callback === 'function';
        // merge options with existing options
        options = AWS.util.merge(this.options, options);
        // validate options
        var optionsValidation = this.validateAuthTokenOptions(options);
        if (optionsValidation !== true) {
            if (hasCallback) {
                return callback(optionsValidation, null);
            }
            throw optionsValidation;
        }

        // 15 minutes
        var expires = 900;
        // create service to generate a request from
        var serviceOptions = {
            region: options.region,
            endpoint: new AWS.Endpoint(options.hostname + ':' + options.port),
            paramValidation: false,
            signatureVersion: 'v4'
        };
        if (options.credentials) {
            serviceOptions.credentials = options.credentials;
        }
        service = new AWS.Service(serviceOptions);
        // ensure the SDK is using sigv4 signing (config is not enough)
        service.api = api;

        var request = service.makeRequest();
        // add listeners to request to properly build auth token
        this.modifyRequestForAuthToken(request, options);

        if (hasCallback) {
            request.presign(expires, function(err, url) {
                if (url) {
                    url = self.convertUrlToAuthToken(url);
                }
                callback(err, url);
            });
        } else {
            var url = request.presign(expires);
            return this.convertUrlToAuthToken(url);
        }
    },

    /**
     * @api private
     * Modifies a request to allow the presigner to generate an auth token.
     */
    modifyRequestForAuthToken: function modifyRequestForAuthToken(request, options) {
        request.on('build', request.buildAsGet);
        var httpRequest = request.httpRequest;
        httpRequest.body = AWS.util.queryParamsToString({
            Action: 'connect',
            DBUser: options.username
        });
    },

    /**
     * @api private
     * Validates that the options passed in contain all the keys with values of the correct type that
     *   are needed to generate an auth token.
     */
    validateAuthTokenOptions: function validateAuthTokenOptions(options) {
        // iterate over all keys in options
        var message = '';
        options = options || {};
        for (var key in requiredAuthTokenOptions) {
            if (!Object.prototype.hasOwnProperty.call(requiredAuthTokenOptions, key)) {
                continue;
            }
            if (typeof options[key] !== requiredAuthTokenOptions[key]) {
                message += 'option \'' + key + '\' should have been type \'' + requiredAuthTokenOptions[key] + '\', was \'' + typeof options[key] + '\'.\n';
            }
        }
        if (message.length) {
            return AWS.util.error(new Error(), {
                code: 'InvalidParameter',
                message: message
            });
        }
        return true;
    }
});


/***/ }),

/***/ 81370:
/***/ ((module) => {

module.exports = {
  //provide realtime clock for performance measurement
  now: function now() {
    var second = process.hrtime();
    return second[0] * 1000 + (second[1] / 1000000);
  }
};


/***/ }),

/***/ 18262:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);
var regionConfig = __webpack_require__(51765);

function generateRegionPrefix(region) {
  if (!region) return null;

  var parts = region.split('-');
  if (parts.length < 3) return null;
  return parts.slice(0, parts.length - 2).join('-') + '-*';
}

function derivedKeys(service) {
  var region = service.config.region;
  var regionPrefix = generateRegionPrefix(region);
  var endpointPrefix = service.api.endpointPrefix;

  return [
    [region, endpointPrefix],
    [regionPrefix, endpointPrefix],
    [region, '*'],
    [regionPrefix, '*'],
    ['*', endpointPrefix],
    ['*', '*']
  ].map(function(item) {
    return item[0] && item[1] ? item.join('/') : null;
  });
}

function applyConfig(service, config) {
  util.each(config, function(key, value) {
    if (key === 'globalEndpoint') return;
    if (service.config[key] === undefined || service.config[key] === null) {
      service.config[key] = value;
    }
  });
}

function configureEndpoint(service) {
  var keys = derivedKeys(service);
  for (var i = 0; i < keys.length; i++) {
    var key = keys[i];
    if (!key) continue;

    if (Object.prototype.hasOwnProperty.call(regionConfig.rules, key)) {
      var config = regionConfig.rules[key];
      if (typeof config === 'string') {
        config = regionConfig.patterns[config];
      }

      // set dualstack endpoint
      if (service.config.useDualstack && util.isDualstackAvailable(service)) {
        config = util.copy(config);
        config.endpoint = config.endpoint.replace(
          /{service}\.({region}\.)?/,
          '{service}.dualstack.{region}.'
        );
      }

      // set global endpoint
      service.isGlobalEndpoint = !!config.globalEndpoint;
      if (config.signingRegion) {
        service.signingRegion = config.signingRegion;
      }

      // signature version
      if (!config.signatureVersion) config.signatureVersion = 'v4';

      // merge config
      applyConfig(service, config);
      return;
    }
  }
}

function getEndpointSuffix(region) {
  var regionRegexes = {
    '^(us|eu|ap|sa|ca|me)\\-\\w+\\-\\d+$': 'amazonaws.com',
    '^cn\\-\\w+\\-\\d+$': 'amazonaws.com.cn',
    '^us\\-gov\\-\\w+\\-\\d+$': 'amazonaws.com',
    '^us\\-iso\\-\\w+\\-\\d+$': 'c2s.ic.gov',
    '^us\\-isob\\-\\w+\\-\\d+$': 'sc2s.sgov.gov'
  };
  var defaultSuffix = 'amazonaws.com';
  var regexes = Object.keys(regionRegexes);
  for (var i = 0; i < regexes.length; i++) {
    var regionPattern = RegExp(regexes[i]);
    var dnsSuffix = regionRegexes[regexes[i]];
    if (regionPattern.test(region)) return dnsSuffix;
  }
  return defaultSuffix;
}

/**
 * @api private
 */
module.exports = {
  configureEndpoint: configureEndpoint,
  getEndpointSuffix: getEndpointSuffix
};


/***/ }),

/***/ 78652:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var AcceptorStateMachine = __webpack_require__(68118);
var inherit = AWS.util.inherit;
var domain = AWS.util.domain;
var jmespath = __webpack_require__(87783);

/**
 * @api private
 */
var hardErrorStates = {success: 1, error: 1, complete: 1};

function isTerminalState(machine) {
  return Object.prototype.hasOwnProperty.call(hardErrorStates, machine._asm.currentState);
}

var fsm = new AcceptorStateMachine();
fsm.setupStates = function() {
  var transition = function(_, done) {
    var self = this;
    self._haltHandlersOnError = false;

    self.emit(self._asm.currentState, function(err) {
      if (err) {
        if (isTerminalState(self)) {
          if (domain && self.domain instanceof domain.Domain) {
            err.domainEmitter = self;
            err.domain = self.domain;
            err.domainThrown = false;
            self.domain.emit('error', err);
          } else {
            throw err;
          }
        } else {
          self.response.error = err;
          done(err);
        }
      } else {
        done(self.response.error);
      }
    });

  };

  this.addState('validate', 'build', 'error', transition);
  this.addState('build', 'afterBuild', 'restart', transition);
  this.addState('afterBuild', 'sign', 'restart', transition);
  this.addState('sign', 'send', 'retry', transition);
  this.addState('retry', 'afterRetry', 'afterRetry', transition);
  this.addState('afterRetry', 'sign', 'error', transition);
  this.addState('send', 'validateResponse', 'retry', transition);
  this.addState('validateResponse', 'extractData', 'extractError', transition);
  this.addState('extractError', 'extractData', 'retry', transition);
  this.addState('extractData', 'success', 'retry', transition);
  this.addState('restart', 'build', 'error', transition);
  this.addState('success', 'complete', 'complete', transition);
  this.addState('error', 'complete', 'complete', transition);
  this.addState('complete', null, null, transition);
};
fsm.setupStates();

/**
 * ## Asynchronous Requests
 *
 * All requests made through the SDK are asynchronous and use a
 * callback interface. Each service method that kicks off a request
 * returns an `AWS.Request` object that you can use to register
 * callbacks.
 *
 * For example, the following service method returns the request
 * object as "request", which can be used to register callbacks:
 *
 * ```javascript
 * // request is an AWS.Request object
 * var request = ec2.describeInstances();
 *
 * // register callbacks on request to retrieve response data
 * request.on('success', function(response) {
 *   console.log(response.data);
 * });
 * ```
 *
 * When a request is ready to be sent, the {send} method should
 * be called:
 *
 * ```javascript
 * request.send();
 * ```
 *
 * Since registered callbacks may or may not be idempotent, requests should only
 * be sent once. To perform the same operation multiple times, you will need to
 * create multiple request objects, each with its own registered callbacks.
 *
 * ## Removing Default Listeners for Events
 *
 * Request objects are built with default listeners for the various events,
 * depending on the service type. In some cases, you may want to remove
 * some built-in listeners to customize behaviour. Doing this requires
 * access to the built-in listener functions, which are exposed through
 * the {AWS.EventListeners.Core} namespace. For instance, you may
 * want to customize the HTTP handler used when sending a request. In this
 * case, you can remove the built-in listener associated with the 'send'
 * event, the {AWS.EventListeners.Core.SEND} listener and add your own.
 *
 * ## Multiple Callbacks and Chaining
 *
 * You can register multiple callbacks on any request object. The
 * callbacks can be registered for different events, or all for the
 * same event. In addition, you can chain callback registration, for
 * example:
 *
 * ```javascript
 * request.
 *   on('success', function(response) {
 *     console.log("Success!");
 *   }).
 *   on('error', function(error, response) {
 *     console.log("Error!");
 *   }).
 *   on('complete', function(response) {
 *     console.log("Always!");
 *   }).
 *   send();
 * ```
 *
 * The above example will print either "Success! Always!", or "Error! Always!",
 * depending on whether the request succeeded or not.
 *
 * @!attribute httpRequest
 *   @readonly
 *   @!group HTTP Properties
 *   @return [AWS.HttpRequest] the raw HTTP request object
 *     containing request headers and body information
 *     sent by the service.
 *
 * @!attribute startTime
 *   @readonly
 *   @!group Operation Properties
 *   @return [Date] the time that the request started
 *
 * @!group Request Building Events
 *
 * @!event validate(request)
 *   Triggered when a request is being validated. Listeners
 *   should throw an error if the request should not be sent.
 *   @param request [Request] the request object being sent
 *   @see AWS.EventListeners.Core.VALIDATE_CREDENTIALS
 *   @see AWS.EventListeners.Core.VALIDATE_REGION
 *   @example Ensuring that a certain parameter is set before sending a request
 *     var req = s3.putObject(params);
 *     req.on('validate', function() {
 *       if (!req.params.Body.match(/^Hello\s/)) {
 *         throw new Error('Body must start with "Hello "');
 *       }
 *     });
 *     req.send(function(err, data) { ... });
 *
 * @!event build(request)
 *   Triggered when the request payload is being built. Listeners
 *   should fill the necessary information to send the request
 *   over HTTP.
 *   @param (see AWS.Request~validate)
 *   @example Add a custom HTTP header to a request
 *     var req = s3.putObject(params);
 *     req.on('build', function() {
 *       req.httpRequest.headers['Custom-Header'] = 'value';
 *     });
 *     req.send(function(err, data) { ... });
 *
 * @!event sign(request)
 *   Triggered when the request is being signed. Listeners should
 *   add the correct authentication headers and/or adjust the body,
 *   depending on the authentication mechanism being used.
 *   @param (see AWS.Request~validate)
 *
 * @!group Request Sending Events
 *
 * @!event send(response)
 *   Triggered when the request is ready to be sent. Listeners
 *   should call the underlying transport layer to initiate
 *   the sending of the request.
 *   @param response [Response] the response object
 *   @context [Request] the request object that was sent
 *   @see AWS.EventListeners.Core.SEND
 *
 * @!event retry(response)
 *   Triggered when a request failed and might need to be retried or redirected.
 *   If the response is retryable, the listener should set the
 *   `response.error.retryable` property to `true`, and optionally set
 *   `response.error.retryDelay` to the millisecond delay for the next attempt.
 *   In the case of a redirect, `response.error.redirect` should be set to
 *   `true` with `retryDelay` set to an optional delay on the next request.
 *
 *   If a listener decides that a request should not be retried,
 *   it should set both `retryable` and `redirect` to false.
 *
 *   Note that a retryable error will be retried at most
 *   {AWS.Config.maxRetries} times (based on the service object's config).
 *   Similarly, a request that is redirected will only redirect at most
 *   {AWS.Config.maxRedirects} times.
 *
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *   @example Adding a custom retry for a 404 response
 *     request.on('retry', function(response) {
 *       // this resource is not yet available, wait 10 seconds to get it again
 *       if (response.httpResponse.statusCode === 404 && response.error) {
 *         response.error.retryable = true;   // retry this error
 *         response.error.retryDelay = 10000; // wait 10 seconds
 *       }
 *     });
 *
 * @!group Data Parsing Events
 *
 * @!event extractError(response)
 *   Triggered on all non-2xx requests so that listeners can extract
 *   error details from the response body. Listeners to this event
 *   should set the `response.error` property.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @!event extractData(response)
 *   Triggered in successful requests to allow listeners to
 *   de-serialize the response body into `response.data`.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @!group Completion Events
 *
 * @!event success(response)
 *   Triggered when the request completed successfully.
 *   `response.data` will contain the response data and
 *   `response.error` will be null.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @!event error(error, response)
 *   Triggered when an error occurs at any point during the
 *   request. `response.error` will contain details about the error
 *   that occurred. `response.data` will be null.
 *   @param error [Error] the error object containing details about
 *     the error that occurred.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @!event complete(response)
 *   Triggered whenever a request cycle completes. `response.error`
 *   should be checked, since the request may have failed.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @!group HTTP Events
 *
 * @!event httpHeaders(statusCode, headers, response, statusMessage)
 *   Triggered when headers are sent by the remote server
 *   @param statusCode [Integer] the HTTP response code
 *   @param headers [map<String,String>] the response headers
 *   @param (see AWS.Request~send)
 *   @param statusMessage [String] A status message corresponding to the HTTP
 *                                 response code
 *   @context (see AWS.Request~send)
 *
 * @!event httpData(chunk, response)
 *   Triggered when data is sent by the remote server
 *   @param chunk [Buffer] the buffer data containing the next data chunk
 *     from the server
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *   @see AWS.EventListeners.Core.HTTP_DATA
 *
 * @!event httpUploadProgress(progress, response)
 *   Triggered when the HTTP request has uploaded more data
 *   @param progress [map] An object containing the `loaded` and `total` bytes
 *     of the request.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *   @note This event will not be emitted in Node.js 0.8.x.
 *
 * @!event httpDownloadProgress(progress, response)
 *   Triggered when the HTTP request has downloaded more data
 *   @param progress [map] An object containing the `loaded` and `total` bytes
 *     of the request.
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *   @note This event will not be emitted in Node.js 0.8.x.
 *
 * @!event httpError(error, response)
 *   Triggered when the HTTP request failed
 *   @param error [Error] the error object that was thrown
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @!event httpDone(response)
 *   Triggered when the server is finished sending data
 *   @param (see AWS.Request~send)
 *   @context (see AWS.Request~send)
 *
 * @see AWS.Response
 */
AWS.Request = inherit({

  /**
   * Creates a request for an operation on a given service with
   * a set of input parameters.
   *
   * @param service [AWS.Service] the service to perform the operation on
   * @param operation [String] the operation to perform on the service
   * @param params [Object] parameters to send to the operation.
   *   See the operation's documentation for the format of the
   *   parameters.
   */
  constructor: function Request(service, operation, params) {
    var endpoint = service.endpoint;
    var region = service.config.region;
    var customUserAgent = service.config.customUserAgent;

    if (service.isGlobalEndpoint) {
      if (service.signingRegion) {
        region = service.signingRegion;
      } else {
        region = 'us-east-1';
      }
    }

    this.domain = domain && domain.active;
    this.service = service;
    this.operation = operation;
    this.params = params || {};
    this.httpRequest = new AWS.HttpRequest(endpoint, region);
    this.httpRequest.appendToUserAgent(customUserAgent);
    this.startTime = service.getSkewCorrectedDate();

    this.response = new AWS.Response(this);
    this._asm = new AcceptorStateMachine(fsm.states, 'validate');
    this._haltHandlersOnError = false;

    AWS.SequentialExecutor.call(this);
    this.emit = this.emitEvent;
  },

  /**
   * @!group Sending a Request
   */

  /**
   * @overload send(callback = null)
   *   Sends the request object.
   *
   *   @callback callback function(err, data)
   *     If a callback is supplied, it is called when a response is returned
   *     from the service.
   *     @context [AWS.Request] the request object being sent.
   *     @param err [Error] the error object returned from the request.
   *       Set to `null` if the request is successful.
   *     @param data [Object] the de-serialized data returned from
   *       the request. Set to `null` if a request error occurs.
   *   @example Sending a request with a callback
   *     request = s3.putObject({Bucket: 'bucket', Key: 'key'});
   *     request.send(function(err, data) { console.log(err, data); });
   *   @example Sending a request with no callback (using event handlers)
   *     request = s3.putObject({Bucket: 'bucket', Key: 'key'});
   *     request.on('complete', function(response) { ... }); // register a callback
   *     request.send();
   */
  send: function send(callback) {
    if (callback) {
      // append to user agent
      this.httpRequest.appendToUserAgent('callback');
      this.on('complete', function (resp) {
        callback.call(resp, resp.error, resp.data);
      });
    }
    this.runTo();

    return this.response;
  },

  /**
   * @!method  promise()
   *   Sends the request and returns a 'thenable' promise.
   *
   *   Two callbacks can be provided to the `then` method on the returned promise.
   *   The first callback will be called if the promise is fulfilled, and the second
   *   callback will be called if the promise is rejected.
   *   @callback fulfilledCallback function(data)
   *     Called if the promise is fulfilled.
   *     @param data [Object] the de-serialized data returned from the request.
   *   @callback rejectedCallback function(error)
   *     Called if the promise is rejected.
   *     @param error [Error] the error object returned from the request.
   *   @return [Promise] A promise that represents the state of the request.
   *   @example Sending a request using promises.
   *     var request = s3.putObject({Bucket: 'bucket', Key: 'key'});
   *     var result = request.promise();
   *     result.then(function(data) { ... }, function(error) { ... });
   */

  /**
   * @api private
   */
  build: function build(callback) {
    return this.runTo('send', callback);
  },

  /**
   * @api private
   */
  runTo: function runTo(state, done) {
    this._asm.runTo(state, done, this);
    return this;
  },

  /**
   * Aborts a request, emitting the error and complete events.
   *
   * @!macro nobrowser
   * @example Aborting a request after sending
   *   var params = {
   *     Bucket: 'bucket', Key: 'key',
   *     Body: Buffer.alloc(1024 * 1024 * 5) // 5MB payload
   *   };
   *   var request = s3.putObject(params);
   *   request.send(function (err, data) {
   *     if (err) console.log("Error:", err.code, err.message);
   *     else console.log(data);
   *   });
   *
   *   // abort request in 1 second
   *   setTimeout(request.abort.bind(request), 1000);
   *
   *   // prints "Error: RequestAbortedError Request aborted by user"
   * @return [AWS.Request] the same request object, for chaining.
   * @since v1.4.0
   */
  abort: function abort() {
    this.removeAllListeners('validateResponse');
    this.removeAllListeners('extractError');
    this.on('validateResponse', function addAbortedError(resp) {
      resp.error = AWS.util.error(new Error('Request aborted by user'), {
         code: 'RequestAbortedError', retryable: false
      });
    });

    if (this.httpRequest.stream && !this.httpRequest.stream.didCallback) { // abort HTTP stream
      this.httpRequest.stream.abort();
      if (this.httpRequest._abortCallback) {
         this.httpRequest._abortCallback();
      } else {
        this.removeAllListeners('send'); // haven't sent yet, so let's not
      }
    }

    return this;
  },

  /**
   * Iterates over each page of results given a pageable request, calling
   * the provided callback with each page of data. After all pages have been
   * retrieved, the callback is called with `null` data.
   *
   * @note This operation can generate multiple requests to a service.
   * @example Iterating over multiple pages of objects in an S3 bucket
   *   var pages = 1;
   *   s3.listObjects().eachPage(function(err, data) {
   *     if (err) return;
   *     console.log("Page", pages++);
   *     console.log(data);
   *   });
   * @example Iterating over multiple pages with an asynchronous callback
   *   s3.listObjects(params).eachPage(function(err, data, done) {
   *     doSomethingAsyncAndOrExpensive(function() {
   *       // The next page of results isn't fetched until done is called
   *       done();
   *     });
   *   });
   * @callback callback function(err, data, [doneCallback])
   *   Called with each page of resulting data from the request. If the
   *   optional `doneCallback` is provided in the function, it must be called
   *   when the callback is complete.
   *
   *   @param err [Error] an error object, if an error occurred.
   *   @param data [Object] a single page of response data. If there is no
   *     more data, this object will be `null`.
   *   @param doneCallback [Function] an optional done callback. If this
   *     argument is defined in the function declaration, it should be called
   *     when the next page is ready to be retrieved. This is useful for
   *     controlling serial pagination across asynchronous operations.
   *   @return [Boolean] if the callback returns `false`, pagination will
   *     stop.
   *
   * @see AWS.Request.eachItem
   * @see AWS.Response.nextPage
   * @since v1.4.0
   */
  eachPage: function eachPage(callback) {
    // Make all callbacks async-ish
    callback = AWS.util.fn.makeAsync(callback, 3);

    function wrappedCallback(response) {
      callback.call(response, response.error, response.data, function (result) {
        if (result === false) return;

        if (response.hasNextPage()) {
          response.nextPage().on('complete', wrappedCallback).send();
        } else {
          callback.call(response, null, null, AWS.util.fn.noop);
        }
      });
    }

    this.on('complete', wrappedCallback).send();
  },

  /**
   * Enumerates over individual items of a request, paging the responses if
   * necessary.
   *
   * @api experimental
   * @since v1.4.0
   */
  eachItem: function eachItem(callback) {
    var self = this;
    function wrappedCallback(err, data) {
      if (err) return callback(err, null);
      if (data === null) return callback(null, null);

      var config = self.service.paginationConfig(self.operation);
      var resultKey = config.resultKey;
      if (Array.isArray(resultKey)) resultKey = resultKey[0];
      var items = jmespath.search(data, resultKey);
      var continueIteration = true;
      AWS.util.arrayEach(items, function(item) {
        continueIteration = callback(null, item);
        if (continueIteration === false) {
          return AWS.util.abort;
        }
      });
      return continueIteration;
    }

    this.eachPage(wrappedCallback);
  },

  /**
   * @return [Boolean] whether the operation can return multiple pages of
   *   response data.
   * @see AWS.Response.eachPage
   * @since v1.4.0
   */
  isPageable: function isPageable() {
    return this.service.paginationConfig(this.operation) ? true : false;
  },

  /**
   * Sends the request and converts the request object into a readable stream
   * that can be read from or piped into a writable stream.
   *
   * @note The data read from a readable stream contains only
   *   the raw HTTP body contents.
   * @example Manually reading from a stream
   *   request.createReadStream().on('data', function(data) {
   *     console.log("Got data:", data.toString());
   *   });
   * @example Piping a request body into a file
   *   var out = fs.createWriteStream('/path/to/outfile.jpg');
   *   s3.service.getObject(params).createReadStream().pipe(out);
   * @return [Stream] the readable stream object that can be piped
   *   or read from (by registering 'data' event listeners).
   * @!macro nobrowser
   */
  createReadStream: function createReadStream() {
    var streams = AWS.util.stream;
    var req = this;
    var stream = null;

    if (AWS.HttpClient.streamsApiVersion === 2) {
      stream = new streams.PassThrough();
      process.nextTick(function() { req.send(); });
    } else {
      stream = new streams.Stream();
      stream.readable = true;

      stream.sent = false;
      stream.on('newListener', function(event) {
        if (!stream.sent && event === 'data') {
          stream.sent = true;
          process.nextTick(function() { req.send(); });
        }
      });
    }

    this.on('error', function(err) {
      stream.emit('error', err);
    });

    this.on('httpHeaders', function streamHeaders(statusCode, headers, resp) {
      if (statusCode < 300) {
        req.removeListener('httpData', AWS.EventListeners.Core.HTTP_DATA);
        req.removeListener('httpError', AWS.EventListeners.Core.HTTP_ERROR);
        req.on('httpError', function streamHttpError(error) {
          resp.error = error;
          resp.error.retryable = false;
        });

        var shouldCheckContentLength = false;
        var expectedLen;
        if (req.httpRequest.method !== 'HEAD') {
          expectedLen = parseInt(headers['content-length'], 10);
        }
        if (expectedLen !== undefined && !isNaN(expectedLen) && expectedLen >= 0) {
          shouldCheckContentLength = true;
          var receivedLen = 0;
        }

        var checkContentLengthAndEmit = function checkContentLengthAndEmit() {
          if (shouldCheckContentLength && receivedLen !== expectedLen) {
            stream.emit('error', AWS.util.error(
              new Error('Stream content length mismatch. Received ' +
                receivedLen + ' of ' + expectedLen + ' bytes.'),
              { code: 'StreamContentLengthMismatch' }
            ));
          } else if (AWS.HttpClient.streamsApiVersion === 2) {
            stream.end();
          } else {
            stream.emit('end');
          }
        };

        var httpStream = resp.httpResponse.createUnbufferedStream();

        if (AWS.HttpClient.streamsApiVersion === 2) {
          if (shouldCheckContentLength) {
            var lengthAccumulator = new streams.PassThrough();
            lengthAccumulator._write = function(chunk) {
              if (chunk && chunk.length) {
                receivedLen += chunk.length;
              }
              return streams.PassThrough.prototype._write.apply(this, arguments);
            };

            lengthAccumulator.on('end', checkContentLengthAndEmit);
            stream.on('error', function(err) {
              shouldCheckContentLength = false;
              httpStream.unpipe(lengthAccumulator);
              lengthAccumulator.emit('end');
              lengthAccumulator.end();
            });
            httpStream.pipe(lengthAccumulator).pipe(stream, { end: false });
          } else {
            httpStream.pipe(stream);
          }
        } else {

          if (shouldCheckContentLength) {
            httpStream.on('data', function(arg) {
              if (arg && arg.length) {
                receivedLen += arg.length;
              }
            });
          }

          httpStream.on('data', function(arg) {
            stream.emit('data', arg);
          });
          httpStream.on('end', checkContentLengthAndEmit);
        }

        httpStream.on('error', function(err) {
          shouldCheckContentLength = false;
          stream.emit('error', err);
        });
      }
    });

    return stream;
  },

  /**
   * @param [Array,Response] args This should be the response object,
   *   or an array of args to send to the event.
   * @api private
   */
  emitEvent: function emit(eventName, args, done) {
    if (typeof args === 'function') { done = args; args = null; }
    if (!done) done = function() { };
    if (!args) args = this.eventParameters(eventName, this.response);

    var origEmit = AWS.SequentialExecutor.prototype.emit;
    origEmit.call(this, eventName, args, function (err) {
      if (err) this.response.error = err;
      done.call(this, err);
    });
  },

  /**
   * @api private
   */
  eventParameters: function eventParameters(eventName) {
    switch (eventName) {
      case 'restart':
      case 'validate':
      case 'sign':
      case 'build':
      case 'afterValidate':
      case 'afterBuild':
        return [this];
      case 'error':
        return [this.response.error, this.response];
      default:
        return [this.response];
    }
  },

  /**
   * @api private
   */
  presign: function presign(expires, callback) {
    if (!callback && typeof expires === 'function') {
      callback = expires;
      expires = null;
    }
    return new AWS.Signers.Presign().sign(this.toGet(), expires, callback);
  },

  /**
   * @api private
   */
  isPresigned: function isPresigned() {
    return Object.prototype.hasOwnProperty.call(this.httpRequest.headers, 'presigned-expires');
  },

  /**
   * @api private
   */
  toUnauthenticated: function toUnauthenticated() {
    this._unAuthenticated = true;
    this.removeListener('validate', AWS.EventListeners.Core.VALIDATE_CREDENTIALS);
    this.removeListener('sign', AWS.EventListeners.Core.SIGN);
    return this;
  },

  /**
   * @api private
   */
  toGet: function toGet() {
    if (this.service.api.protocol === 'query' ||
        this.service.api.protocol === 'ec2') {
      this.removeListener('build', this.buildAsGet);
      this.addListener('build', this.buildAsGet);
    }
    return this;
  },

  /**
   * @api private
   */
  buildAsGet: function buildAsGet(request) {
    request.httpRequest.method = 'GET';
    request.httpRequest.path = request.service.endpoint.path +
                               '?' + request.httpRequest.body;
    request.httpRequest.body = '';

    // don't need these headers on a GET request
    delete request.httpRequest.headers['Content-Length'];
    delete request.httpRequest.headers['Content-Type'];
  },

  /**
   * @api private
   */
  haltHandlersOnError: function haltHandlersOnError() {
    this._haltHandlersOnError = true;
  }
});

/**
 * @api private
 */
AWS.Request.addPromisesToClass = function addPromisesToClass(PromiseDependency) {
  this.prototype.promise = function promise() {
    var self = this;
    // append to user agent
    this.httpRequest.appendToUserAgent('promise');
    return new PromiseDependency(function(resolve, reject) {
      self.on('complete', function(resp) {
        if (resp.error) {
          reject(resp.error);
        } else {
          // define $response property so that it is not enumerable
          // this prevents circular reference errors when stringifying the JSON object
          resolve(Object.defineProperty(
            resp.data || {},
            '$response',
            {value: resp}
          ));
        }
      });
      self.runTo();
    });
  };
};

/**
 * @api private
 */
AWS.Request.deletePromisesFromClass = function deletePromisesFromClass() {
  delete this.prototype.promise;
};

AWS.util.addPromises(AWS.Request);

AWS.util.mixin(AWS.Request, AWS.SequentialExecutor);


/***/ }),

/***/ 39925:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

/**
 * Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"). You
 * may not use this file except in compliance with the License. A copy of
 * the License is located at
 *
 *     http://aws.amazon.com/apache2.0/
 *
 * or in the "license" file accompanying this file. This file is
 * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
 * ANY KIND, either express or implied. See the License for the specific
 * language governing permissions and limitations under the License.
 */

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;
var jmespath = __webpack_require__(87783);

/**
 * @api private
 */
function CHECK_ACCEPTORS(resp) {
  var waiter = resp.request._waiter;
  var acceptors = waiter.config.acceptors;
  var acceptorMatched = false;
  var state = 'retry';

  acceptors.forEach(function(acceptor) {
    if (!acceptorMatched) {
      var matcher = waiter.matchers[acceptor.matcher];
      if (matcher && matcher(resp, acceptor.expected, acceptor.argument)) {
        acceptorMatched = true;
        state = acceptor.state;
      }
    }
  });

  if (!acceptorMatched && resp.error) state = 'failure';

  if (state === 'success') {
    waiter.setSuccess(resp);
  } else {
    waiter.setError(resp, state === 'retry');
  }
}

/**
 * @api private
 */
AWS.ResourceWaiter = inherit({
  /**
   * Waits for a given state on a service object
   * @param service [Service] the service object to wait on
   * @param state [String] the state (defined in waiter configuration) to wait
   *   for.
   * @example Create a waiter for running EC2 instances
   *   var ec2 = new AWS.EC2;
   *   var waiter = new AWS.ResourceWaiter(ec2, 'instanceRunning');
   */
  constructor: function constructor(service, state) {
    this.service = service;
    this.state = state;
    this.loadWaiterConfig(this.state);
  },

  service: null,

  state: null,

  config: null,

  matchers: {
    path: function(resp, expected, argument) {
      try {
        var result = jmespath.search(resp.data, argument);
      } catch (err) {
        return false;
      }

      return jmespath.strictDeepEqual(result,expected);
    },

    pathAll: function(resp, expected, argument) {
      try {
        var results = jmespath.search(resp.data, argument);
      } catch (err) {
        return false;
      }

      if (!Array.isArray(results)) results = [results];
      var numResults = results.length;
      if (!numResults) return false;
      for (var ind = 0 ; ind < numResults; ind++) {
        if (!jmespath.strictDeepEqual(results[ind], expected)) {
          return false;
        }
      }
      return true;
    },

    pathAny: function(resp, expected, argument) {
      try {
        var results = jmespath.search(resp.data, argument);
      } catch (err) {
        return false;
      }

      if (!Array.isArray(results)) results = [results];
      var numResults = results.length;
      for (var ind = 0 ; ind < numResults; ind++) {
        if (jmespath.strictDeepEqual(results[ind], expected)) {
          return true;
        }
      }
      return false;
    },

    status: function(resp, expected) {
      var statusCode = resp.httpResponse.statusCode;
      return (typeof statusCode === 'number') && (statusCode === expected);
    },

    error: function(resp, expected) {
      if (typeof expected === 'string' && resp.error) {
        return expected === resp.error.code;
      }
      // if expected is not string, can be boolean indicating presence of error
      return expected === !!resp.error;
    }
  },

  listeners: new AWS.SequentialExecutor().addNamedListeners(function(add) {
    add('RETRY_CHECK', 'retry', function(resp) {
      var waiter = resp.request._waiter;
      if (resp.error && resp.error.code === 'ResourceNotReady') {
        resp.error.retryDelay = (waiter.config.delay || 0) * 1000;
      }
    });

    add('CHECK_OUTPUT', 'extractData', CHECK_ACCEPTORS);

    add('CHECK_ERROR', 'extractError', CHECK_ACCEPTORS);
  }),

  /**
   * @return [AWS.Request]
   */
  wait: function wait(params, callback) {
    if (typeof params === 'function') {
      callback = params; params = undefined;
    }

    if (params && params.$waiter) {
      params = AWS.util.copy(params);
      if (typeof params.$waiter.delay === 'number') {
        this.config.delay = params.$waiter.delay;
      }
      if (typeof params.$waiter.maxAttempts === 'number') {
        this.config.maxAttempts = params.$waiter.maxAttempts;
      }
      delete params.$waiter;
    }

    var request = this.service.makeRequest(this.config.operation, params);
    request._waiter = this;
    request.response.maxRetries = this.config.maxAttempts;
    request.addListeners(this.listeners);

    if (callback) request.send(callback);
    return request;
  },

  setSuccess: function setSuccess(resp) {
    resp.error = null;
    resp.data = resp.data || {};
    resp.request.removeAllListeners('extractData');
  },

  setError: function setError(resp, retryable) {
    resp.data = null;
    resp.error = AWS.util.error(resp.error || new Error(), {
      code: 'ResourceNotReady',
      message: 'Resource is not in the state ' + this.state,
      retryable: retryable
    });
  },

  /**
   * Loads waiter configuration from API configuration
   *
   * @api private
   */
  loadWaiterConfig: function loadWaiterConfig(state) {
    if (!this.service.api.waiters[state]) {
      throw new AWS.util.error(new Error(), {
        code: 'StateNotFoundError',
        message: 'State ' + state + ' not found.'
      });
    }

    this.config = AWS.util.copy(this.service.api.waiters[state]);
  }
});


/***/ }),

/***/ 58743:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;
var jmespath = __webpack_require__(87783);

/**
 * This class encapsulates the response information
 * from a service request operation sent through {AWS.Request}.
 * The response object has two main properties for getting information
 * back from a request:
 *
 * ## The `data` property
 *
 * The `response.data` property contains the serialized object data
 * retrieved from the service request. For instance, for an
 * Amazon DynamoDB `listTables` method call, the response data might
 * look like:
 *
 * ```
 * > resp.data
 * { TableNames:
 *    [ 'table1', 'table2', ... ] }
 * ```
 *
 * The `data` property can be null if an error occurs (see below).
 *
 * ## The `error` property
 *
 * In the event of a service error (or transfer error), the
 * `response.error` property will be filled with the given
 * error data in the form:
 *
 * ```
 * { code: 'SHORT_UNIQUE_ERROR_CODE',
 *   message: 'Some human readable error message' }
 * ```
 *
 * In the case of an error, the `data` property will be `null`.
 * Note that if you handle events that can be in a failure state,
 * you should always check whether `response.error` is set
 * before attempting to access the `response.data` property.
 *
 * @!attribute data
 *   @readonly
 *   @!group Data Properties
 *   @note Inside of a {AWS.Request~httpData} event, this
 *     property contains a single raw packet instead of the
 *     full de-serialized service response.
 *   @return [Object] the de-serialized response data
 *     from the service.
 *
 * @!attribute error
 *   An structure containing information about a service
 *   or networking error.
 *   @readonly
 *   @!group Data Properties
 *   @note This attribute is only filled if a service or
 *     networking error occurs.
 *   @return [Error]
 *     * code [String] a unique short code representing the
 *       error that was emitted.
 *     * message [String] a longer human readable error message
 *     * retryable [Boolean] whether the error message is
 *       retryable.
 *     * statusCode [Numeric] in the case of a request that reached the service,
 *       this value contains the response status code.
 *     * time [Date] the date time object when the error occurred.
 *     * hostname [String] set when a networking error occurs to easily
 *       identify the endpoint of the request.
 *     * region [String] set when a networking error occurs to easily
 *       identify the region of the request.
 *
 * @!attribute requestId
 *   @readonly
 *   @!group Data Properties
 *   @return [String] the unique request ID associated with the response.
 *     Log this value when debugging requests for AWS support.
 *
 * @!attribute retryCount
 *   @readonly
 *   @!group Operation Properties
 *   @return [Integer] the number of retries that were
 *     attempted before the request was completed.
 *
 * @!attribute redirectCount
 *   @readonly
 *   @!group Operation Properties
 *   @return [Integer] the number of redirects that were
 *     followed before the request was completed.
 *
 * @!attribute httpResponse
 *   @readonly
 *   @!group HTTP Properties
 *   @return [AWS.HttpResponse] the raw HTTP response object
 *     containing the response headers and body information
 *     from the server.
 *
 * @see AWS.Request
 */
AWS.Response = inherit({

  /**
   * @api private
   */
  constructor: function Response(request) {
    this.request = request;
    this.data = null;
    this.error = null;
    this.retryCount = 0;
    this.redirectCount = 0;
    this.httpResponse = new AWS.HttpResponse();
    if (request) {
      this.maxRetries = request.service.numRetries();
      this.maxRedirects = request.service.config.maxRedirects;
    }
  },

  /**
   * Creates a new request for the next page of response data, calling the
   * callback with the page data if a callback is provided.
   *
   * @callback callback function(err, data)
   *   Called when a page of data is returned from the next request.
   *
   *   @param err [Error] an error object, if an error occurred in the request
   *   @param data [Object] the next page of data, or null, if there are no
   *     more pages left.
   * @return [AWS.Request] the request object for the next page of data
   * @return [null] if no callback is provided and there are no pages left
   *   to retrieve.
   * @since v1.4.0
   */
  nextPage: function nextPage(callback) {
    var config;
    var service = this.request.service;
    var operation = this.request.operation;
    try {
      config = service.paginationConfig(operation, true);
    } catch (e) { this.error = e; }

    if (!this.hasNextPage()) {
      if (callback) callback(this.error, null);
      else if (this.error) throw this.error;
      return null;
    }

    var params = AWS.util.copy(this.request.params);
    if (!this.nextPageTokens) {
      return callback ? callback(null, null) : null;
    } else {
      var inputTokens = config.inputToken;
      if (typeof inputTokens === 'string') inputTokens = [inputTokens];
      for (var i = 0; i < inputTokens.length; i++) {
        params[inputTokens[i]] = this.nextPageTokens[i];
      }
      return service.makeRequest(this.request.operation, params, callback);
    }
  },

  /**
   * @return [Boolean] whether more pages of data can be returned by further
   *   requests
   * @since v1.4.0
   */
  hasNextPage: function hasNextPage() {
    this.cacheNextPageTokens();
    if (this.nextPageTokens) return true;
    if (this.nextPageTokens === undefined) return undefined;
    else return false;
  },

  /**
   * @api private
   */
  cacheNextPageTokens: function cacheNextPageTokens() {
    if (Object.prototype.hasOwnProperty.call(this, 'nextPageTokens')) return this.nextPageTokens;
    this.nextPageTokens = undefined;

    var config = this.request.service.paginationConfig(this.request.operation);
    if (!config) return this.nextPageTokens;

    this.nextPageTokens = null;
    if (config.moreResults) {
      if (!jmespath.search(this.data, config.moreResults)) {
        return this.nextPageTokens;
      }
    }

    var exprs = config.outputToken;
    if (typeof exprs === 'string') exprs = [exprs];
    AWS.util.arrayEach.call(this, exprs, function (expr) {
      var output = jmespath.search(this.data, expr);
      if (output) {
        this.nextPageTokens = this.nextPageTokens || [];
        this.nextPageTokens.push(output);
      }
    });

    return this.nextPageTokens;
  }

});


/***/ }),

/***/ 81600:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var byteLength = AWS.util.string.byteLength;
var Buffer = AWS.util.Buffer;

/**
 * The managed uploader allows for easy and efficient uploading of buffers,
 * blobs, or streams, using a configurable amount of concurrency to perform
 * multipart uploads where possible. This abstraction also enables uploading
 * streams of unknown size due to the use of multipart uploads.
 *
 * To construct a managed upload object, see the {constructor} function.
 *
 * ## Tracking upload progress
 *
 * The managed upload object can also track progress by attaching an
 * 'httpUploadProgress' listener to the upload manager. This event is similar
 * to {AWS.Request~httpUploadProgress} but groups all concurrent upload progress
 * into a single event. See {AWS.S3.ManagedUpload~httpUploadProgress} for more
 * information.
 *
 * ## Handling Multipart Cleanup
 *
 * By default, this class will automatically clean up any multipart uploads
 * when an individual part upload fails. This behavior can be disabled in order
 * to manually handle failures by setting the `leavePartsOnError` configuration
 * option to `true` when initializing the upload object.
 *
 * @!event httpUploadProgress(progress)
 *   Triggered when the uploader has uploaded more data.
 *   @note The `total` property may not be set if the stream being uploaded has
 *     not yet finished chunking. In this case the `total` will be undefined
 *     until the total stream size is known.
 *   @note This event will not be emitted in Node.js 0.8.x.
 *   @param progress [map] An object containing the `loaded` and `total` bytes
 *     of the request and the `key` of the S3 object. Note that `total` may be undefined until the payload
 *     size is known.
 *   @context (see AWS.Request~send)
 */
AWS.S3.ManagedUpload = AWS.util.inherit({
  /**
   * Creates a managed upload object with a set of configuration options.
   *
   * @note A "Body" parameter is required to be set prior to calling {send}.
   * @note In Node.js, sending "Body" as {https://nodejs.org/dist/latest/docs/api/stream.html#stream_object_mode object-mode stream}
   *   may result in upload hangs. Using buffer stream is preferable.
   * @option options params [map] a map of parameters to pass to the upload
   *   requests. The "Body" parameter is required to be specified either on
   *   the service or in the params option.
   * @note ContentMD5 should not be provided when using the managed upload object.
   *   Instead, setting "computeChecksums" to true will enable automatic ContentMD5 generation
   *   by the managed upload object.
   * @option options queueSize [Number] (4) the size of the concurrent queue
   *   manager to upload parts in parallel. Set to 1 for synchronous uploading
   *   of parts. Note that the uploader will buffer at most queueSize * partSize
   *   bytes into memory at any given time.
   * @option options partSize [Number] (5mb) the size in bytes for each
   *   individual part to be uploaded. Adjust the part size to ensure the number
   *   of parts does not exceed {maxTotalParts}. See {minPartSize} for the
   *   minimum allowed part size.
   * @option options leavePartsOnError [Boolean] (false) whether to abort the
   *   multipart upload if an error occurs. Set to true if you want to handle
   *   failures manually.
   * @option options service [AWS.S3] an optional S3 service object to use for
   *   requests. This object might have bound parameters used by the uploader.
   * @option options tags [Array<map>] The tags to apply to the uploaded object.
   *   Each tag should have a `Key` and `Value` keys.
   * @example Creating a default uploader for a stream object
   *   var upload = new AWS.S3.ManagedUpload({
   *     params: {Bucket: 'bucket', Key: 'key', Body: stream}
   *   });
   * @example Creating an uploader with concurrency of 1 and partSize of 10mb
   *   var upload = new AWS.S3.ManagedUpload({
   *     partSize: 10 * 1024 * 1024, queueSize: 1,
   *     params: {Bucket: 'bucket', Key: 'key', Body: stream}
   *   });
   * @example Creating an uploader with tags
   *   var upload = new AWS.S3.ManagedUpload({
   *     params: {Bucket: 'bucket', Key: 'key', Body: stream},
   *     tags: [{Key: 'tag1', Value: 'value1'}, {Key: 'tag2', Value: 'value2'}]
   *   });
   * @see send
   */
  constructor: function ManagedUpload(options) {
    var self = this;
    AWS.SequentialExecutor.call(self);
    self.body = null;
    self.sliceFn = null;
    self.callback = null;
    self.parts = {};
    self.completeInfo = [];
    self.fillQueue = function() {
      self.callback(new Error('Unsupported body payload ' + typeof self.body));
    };

    self.configure(options);
  },

  /**
   * @api private
   */
  configure: function configure(options) {
    options = options || {};
    this.partSize = this.minPartSize;

    if (options.queueSize) this.queueSize = options.queueSize;
    if (options.partSize) this.partSize = options.partSize;
    if (options.leavePartsOnError) this.leavePartsOnError = true;
    if (options.tags) {
      if (!Array.isArray(options.tags)) {
        throw new Error('Tags must be specified as an array; ' +
          typeof options.tags + ' provided.');
      }
      this.tags = options.tags;
    }

    if (this.partSize < this.minPartSize) {
      throw new Error('partSize must be greater than ' +
                      this.minPartSize);
    }

    this.service = options.service;
    this.bindServiceObject(options.params);
    this.validateBody();
    this.adjustTotalBytes();
  },

  /**
   * @api private
   */
  leavePartsOnError: false,

  /**
   * @api private
   */
  queueSize: 4,

  /**
   * @api private
   */
  partSize: null,

  /**
   * @readonly
   * @return [Number] the minimum number of bytes for an individual part
   *   upload.
   */
  minPartSize: 1024 * 1024 * 5,

  /**
   * @readonly
   * @return [Number] the maximum allowed number of parts in a multipart upload.
   */
  maxTotalParts: 10000,

  /**
   * Initiates the managed upload for the payload.
   *
   * @callback callback function(err, data)
   *   @param err [Error] an error or null if no error occurred.
   *   @param data [map] The response data from the successful upload:
   *     * `Location` (String) the URL of the uploaded object
   *     * `ETag` (String) the ETag of the uploaded object
   *     * `Bucket` (String) the bucket to which the object was uploaded
   *     * `Key` (String) the key to which the object was uploaded
   * @example Sending a managed upload object
   *   var params = {Bucket: 'bucket', Key: 'key', Body: stream};
   *   var upload = new AWS.S3.ManagedUpload({params: params});
   *   upload.send(function(err, data) {
   *     console.log(err, data);
   *   });
   */
  send: function(callback) {
    var self = this;
    self.failed = false;
    self.callback = callback || function(err) { if (err) throw err; };

    var runFill = true;
    if (self.sliceFn) {
      self.fillQueue = self.fillBuffer;
    } else if (AWS.util.isNode()) {
      var Stream = AWS.util.stream.Stream;
      if (self.body instanceof Stream) {
        runFill = false;
        self.fillQueue = self.fillStream;
        self.partBuffers = [];
        self.body.
          on('error', function(err) { self.cleanup(err); }).
          on('readable', function() { self.fillQueue(); }).
          on('end', function() {
            self.isDoneChunking = true;
            self.numParts = self.totalPartNumbers;
            self.fillQueue.call(self);

            if (self.isDoneChunking && self.totalPartNumbers >= 1 && self.doneParts === self.numParts) {
              self.finishMultiPart();
            }
          });
      }
    }

    if (runFill) self.fillQueue.call(self);
  },

  /**
   * @!method  promise()
   *   Returns a 'thenable' promise.
   *
   *   Two callbacks can be provided to the `then` method on the returned promise.
   *   The first callback will be called if the promise is fulfilled, and the second
   *   callback will be called if the promise is rejected.
   *   @callback fulfilledCallback function(data)
   *     Called if the promise is fulfilled.
   *     @param data [map] The response data from the successful upload:
   *       `Location` (String) the URL of the uploaded object
   *       `ETag` (String) the ETag of the uploaded object
   *       `Bucket` (String) the bucket to which the object was uploaded
   *       `Key` (String) the key to which the object was uploaded
   *   @callback rejectedCallback function(err)
   *     Called if the promise is rejected.
   *     @param err [Error] an error or null if no error occurred.
   *   @return [Promise] A promise that represents the state of the upload request.
   *   @example Sending an upload request using promises.
   *     var upload = s3.upload({Bucket: 'bucket', Key: 'key', Body: stream});
   *     var promise = upload.promise();
   *     promise.then(function(data) { ... }, function(err) { ... });
   */

  /**
   * Aborts a managed upload, including all concurrent upload requests.
   * @note By default, calling this function will cleanup a multipart upload
   *   if one was created. To leave the multipart upload around after aborting
   *   a request, configure `leavePartsOnError` to `true` in the {constructor}.
   * @note Calling {abort} in the browser environment will not abort any requests
   *   that are already in flight. If a multipart upload was created, any parts
   *   not yet uploaded will not be sent, and the multipart upload will be cleaned up.
   * @example Aborting an upload
   *   var params = {
   *     Bucket: 'bucket', Key: 'key',
   *     Body: Buffer.alloc(1024 * 1024 * 25) // 25MB payload
   *   };
   *   var upload = s3.upload(params);
   *   upload.send(function (err, data) {
   *     if (err) console.log("Error:", err.code, err.message);
   *     else console.log(data);
   *   });
   *
   *   // abort request in 1 second
   *   setTimeout(upload.abort.bind(upload), 1000);
   */
  abort: function() {
    var self = this;
    //abort putObject request
    if (self.isDoneChunking === true && self.totalPartNumbers === 1 && self.singlePart) {
      self.singlePart.abort();
    } else {
      self.cleanup(AWS.util.error(new Error('Request aborted by user'), {
        code: 'RequestAbortedError', retryable: false
      }));
    }
  },

  /**
   * @api private
   */
  validateBody: function validateBody() {
    var self = this;
    self.body = self.service.config.params.Body;
    if (typeof self.body === 'string') {
      self.body = AWS.util.buffer.toBuffer(self.body);
    } else if (!self.body) {
      throw new Error('params.Body is required');
    }
    self.sliceFn = AWS.util.arraySliceFn(self.body);
  },

  /**
   * @api private
   */
  bindServiceObject: function bindServiceObject(params) {
    params = params || {};
    var self = this;
    // bind parameters to new service object
    if (!self.service) {
      self.service = new AWS.S3({params: params});
    } else {
      // Create a new S3 client from the supplied client's constructor.
      var service = self.service;
      var config = AWS.util.copy(service.config);
      config.signatureVersion = service.getSignatureVersion();
      self.service = new service.constructor.__super__(config);
      self.service.config.params =
        AWS.util.merge(self.service.config.params || {}, params);
      Object.defineProperty(self.service, '_originalConfig', {
        get: function() { return service._originalConfig; },
        enumerable: false,
        configurable: true
      });
    }
  },

  /**
   * @api private
   */
  adjustTotalBytes: function adjustTotalBytes() {
    var self = this;
    try { // try to get totalBytes
      self.totalBytes = byteLength(self.body);
    } catch (e) { }

    // try to adjust partSize if we know payload length
    if (self.totalBytes) {
      var newPartSize = Math.ceil(self.totalBytes / self.maxTotalParts);
      if (newPartSize > self.partSize) self.partSize = newPartSize;
    } else {
      self.totalBytes = undefined;
    }
  },

  /**
   * @api private
   */
  isDoneChunking: false,

  /**
   * @api private
   */
  partPos: 0,

  /**
   * @api private
   */
  totalChunkedBytes: 0,

  /**
   * @api private
   */
  totalUploadedBytes: 0,

  /**
   * @api private
   */
  totalBytes: undefined,

  /**
   * @api private
   */
  numParts: 0,

  /**
   * @api private
   */
  totalPartNumbers: 0,

  /**
   * @api private
   */
  activeParts: 0,

  /**
   * @api private
   */
  doneParts: 0,

  /**
   * @api private
   */
  parts: null,

  /**
   * @api private
   */
  completeInfo: null,

  /**
   * @api private
   */
  failed: false,

  /**
   * @api private
   */
  multipartReq: null,

  /**
   * @api private
   */
  partBuffers: null,

  /**
   * @api private
   */
  partBufferLength: 0,

  /**
   * @api private
   */
  fillBuffer: function fillBuffer() {
    var self = this;
    var bodyLen = byteLength(self.body);

    if (bodyLen === 0) {
      self.isDoneChunking = true;
      self.numParts = 1;
      self.nextChunk(self.body);
      return;
    }

    while (self.activeParts < self.queueSize && self.partPos < bodyLen) {
      var endPos = Math.min(self.partPos + self.partSize, bodyLen);
      var buf = self.sliceFn.call(self.body, self.partPos, endPos);
      self.partPos += self.partSize;

      if (byteLength(buf) < self.partSize || self.partPos === bodyLen) {
        self.isDoneChunking = true;
        self.numParts = self.totalPartNumbers + 1;
      }
      self.nextChunk(buf);
    }
  },

  /**
   * @api private
   */
  fillStream: function fillStream() {
    var self = this;
    if (self.activeParts >= self.queueSize) return;

    var buf = self.body.read(self.partSize - self.partBufferLength) ||
              self.body.read();
    if (buf) {
      self.partBuffers.push(buf);
      self.partBufferLength += buf.length;
      self.totalChunkedBytes += buf.length;
    }

    if (self.partBufferLength >= self.partSize) {
      // if we have single buffer we avoid copyfull concat
      var pbuf = self.partBuffers.length === 1 ?
        self.partBuffers[0] : Buffer.concat(self.partBuffers);
      self.partBuffers = [];
      self.partBufferLength = 0;

      // if we have more than partSize, push the rest back on the queue
      if (pbuf.length > self.partSize) {
        var rest = pbuf.slice(self.partSize);
        self.partBuffers.push(rest);
        self.partBufferLength += rest.length;
        pbuf = pbuf.slice(0, self.partSize);
      }

      self.nextChunk(pbuf);
    }

    if (self.isDoneChunking && !self.isDoneSending) {
      // if we have single buffer we avoid copyfull concat
      pbuf = self.partBuffers.length === 1 ?
          self.partBuffers[0] : Buffer.concat(self.partBuffers);
      self.partBuffers = [];
      self.partBufferLength = 0;
      self.totalBytes = self.totalChunkedBytes;
      self.isDoneSending = true;

      if (self.numParts === 0 || pbuf.length > 0) {
        self.numParts++;
        self.nextChunk(pbuf);
      }
    }

    self.body.read(0);
  },

  /**
   * @api private
   */
  nextChunk: function nextChunk(chunk) {
    var self = this;
    if (self.failed) return null;

    var partNumber = ++self.totalPartNumbers;
    if (self.isDoneChunking && partNumber === 1) {
      var params = {Body: chunk};
      if (this.tags) {
        params.Tagging = this.getTaggingHeader();
      }
      var req = self.service.putObject(params);
      req._managedUpload = self;
      req.on('httpUploadProgress', self.progress).send(self.finishSinglePart);
      self.singlePart = req; //save the single part request
      return null;
    } else if (self.service.config.params.ContentMD5) {
      var err = AWS.util.error(new Error('The Content-MD5 you specified is invalid for multi-part uploads.'), {
        code: 'InvalidDigest', retryable: false
      });

      self.cleanup(err);
      return null;
    }

    if (self.completeInfo[partNumber] && self.completeInfo[partNumber].ETag !== null) {
      return null; // Already uploaded this part.
    }

    self.activeParts++;
    if (!self.service.config.params.UploadId) {

      if (!self.multipartReq) { // create multipart
        self.multipartReq = self.service.createMultipartUpload();
        self.multipartReq.on('success', function(resp) {
          self.service.config.params.UploadId = resp.data.UploadId;
          self.multipartReq = null;
        });
        self.queueChunks(chunk, partNumber);
        self.multipartReq.on('error', function(err) {
          self.cleanup(err);
        });
        self.multipartReq.send();
      } else {
        self.queueChunks(chunk, partNumber);
      }
    } else { // multipart is created, just send
      self.uploadPart(chunk, partNumber);
    }
  },

  /**
   * @api private
   */
  getTaggingHeader: function getTaggingHeader() {
    var kvPairStrings = [];
    for (var i = 0; i < this.tags.length; i++) {
      kvPairStrings.push(AWS.util.uriEscape(this.tags[i].Key) + '=' +
        AWS.util.uriEscape(this.tags[i].Value));
    }

    return kvPairStrings.join('&');
  },

  /**
   * @api private
   */
  uploadPart: function uploadPart(chunk, partNumber) {
    var self = this;

    var partParams = {
      Body: chunk,
      ContentLength: AWS.util.string.byteLength(chunk),
      PartNumber: partNumber
    };

    var partInfo = {ETag: null, PartNumber: partNumber};
    self.completeInfo[partNumber] = partInfo;

    var req = self.service.uploadPart(partParams);
    self.parts[partNumber] = req;
    req._lastUploadedBytes = 0;
    req._managedUpload = self;
    req.on('httpUploadProgress', self.progress);
    req.send(function(err, data) {
      delete self.parts[partParams.PartNumber];
      self.activeParts--;

      if (!err && (!data || !data.ETag)) {
        var message = 'No access to ETag property on response.';
        if (AWS.util.isBrowser()) {
          message += ' Check CORS configuration to expose ETag header.';
        }

        err = AWS.util.error(new Error(message), {
          code: 'ETagMissing', retryable: false
        });
      }
      if (err) return self.cleanup(err);
      //prevent sending part being returned twice (https://github.com/aws/aws-sdk-js/issues/2304)
      if (self.completeInfo[partNumber] && self.completeInfo[partNumber].ETag !== null) return null;
      partInfo.ETag = data.ETag;
      self.doneParts++;
      if (self.isDoneChunking && self.doneParts === self.numParts) {
        self.finishMultiPart();
      } else {
        self.fillQueue.call(self);
      }
    });
  },

  /**
   * @api private
   */
  queueChunks: function queueChunks(chunk, partNumber) {
    var self = this;
    self.multipartReq.on('success', function() {
      self.uploadPart(chunk, partNumber);
    });
  },

  /**
   * @api private
   */
  cleanup: function cleanup(err) {
    var self = this;
    if (self.failed) return;

    // clean up stream
    if (typeof self.body.removeAllListeners === 'function' &&
        typeof self.body.resume === 'function') {
      self.body.removeAllListeners('readable');
      self.body.removeAllListeners('end');
      self.body.resume();
    }

    // cleanup multipartReq listeners
    if (self.multipartReq) {
      self.multipartReq.removeAllListeners('success');
      self.multipartReq.removeAllListeners('error');
      self.multipartReq.removeAllListeners('complete');
      delete self.multipartReq;
    }

    if (self.service.config.params.UploadId && !self.leavePartsOnError) {
      self.service.abortMultipartUpload().send();
    } else if (self.leavePartsOnError) {
      self.isDoneChunking = false;
    }

    AWS.util.each(self.parts, function(partNumber, part) {
      part.removeAllListeners('complete');
      part.abort();
    });

    self.activeParts = 0;
    self.partPos = 0;
    self.numParts = 0;
    self.totalPartNumbers = 0;
    self.parts = {};
    self.failed = true;
    self.callback(err);
  },

  /**
   * @api private
   */
  finishMultiPart: function finishMultiPart() {
    var self = this;
    var completeParams = { MultipartUpload: { Parts: self.completeInfo.slice(1) } };
    self.service.completeMultipartUpload(completeParams, function(err, data) {
      if (err) {
        return self.cleanup(err);
      }

      if (data && typeof data.Location === 'string') {
        data.Location = data.Location.replace(/%2F/g, '/');
      }

      if (Array.isArray(self.tags)) {
        for (var i = 0; i < self.tags.length; i++) {
          self.tags[i].Value = String(self.tags[i].Value);
        }
        self.service.putObjectTagging(
          {Tagging: {TagSet: self.tags}},
          function(e, d) {
            if (e) {
              self.callback(e);
            } else {
              self.callback(e, data);
            }
          }
        );
      } else {
        self.callback(err, data);
      }
    });
  },

  /**
   * @api private
   */
  finishSinglePart: function finishSinglePart(err, data) {
    var upload = this.request._managedUpload;
    var httpReq = this.request.httpRequest;
    var endpoint = httpReq.endpoint;
    if (err) return upload.callback(err);
    data.Location =
      [endpoint.protocol, '//', endpoint.host, httpReq.path].join('');
    data.key = this.request.params.Key; // will stay undocumented
    data.Key = this.request.params.Key;
    data.Bucket = this.request.params.Bucket;
    upload.callback(err, data);
  },

  /**
   * @api private
   */
  progress: function progress(info) {
    var upload = this._managedUpload;
    if (this.operation === 'putObject') {
      info.part = 1;
      info.key = this.params.Key;
    } else {
      upload.totalUploadedBytes += info.loaded - this._lastUploadedBytes;
      this._lastUploadedBytes = info.loaded;
      info = {
        loaded: upload.totalUploadedBytes,
        total: upload.totalBytes,
        part: this.params.PartNumber,
        key: this.params.Key
      };
    }
    upload.emit('httpUploadProgress', [info]);
  }
});

AWS.util.mixin(AWS.S3.ManagedUpload, AWS.SequentialExecutor);

/**
 * @api private
 */
AWS.S3.ManagedUpload.addPromisesToClass = function addPromisesToClass(PromiseDependency) {
  this.prototype.promise = AWS.util.promisifyMethod('send', PromiseDependency);
};

/**
 * @api private
 */
AWS.S3.ManagedUpload.deletePromisesFromClass = function deletePromisesFromClass() {
  delete this.prototype.promise;
};

AWS.util.addPromises(AWS.S3.ManagedUpload);

/**
 * @api private
 */
module.exports = AWS.S3.ManagedUpload;


/***/ }),

/***/ 55948:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * @api private
 * @!method on(eventName, callback)
 *   Registers an event listener callback for the event given by `eventName`.
 *   Parameters passed to the callback function depend on the individual event
 *   being triggered. See the event documentation for those parameters.
 *
 *   @param eventName [String] the event name to register the listener for
 *   @param callback [Function] the listener callback function
 *   @param toHead [Boolean] attach the listener callback to the head of callback array if set to true.
 *     Default to be false.
 *   @return [AWS.SequentialExecutor] the same object for chaining
 */
AWS.SequentialExecutor = AWS.util.inherit({

  constructor: function SequentialExecutor() {
    this._events = {};
  },

  /**
   * @api private
   */
  listeners: function listeners(eventName) {
    return this._events[eventName] ? this._events[eventName].slice(0) : [];
  },

  on: function on(eventName, listener, toHead) {
    if (this._events[eventName]) {
      toHead ?
        this._events[eventName].unshift(listener) :
        this._events[eventName].push(listener);
    } else {
      this._events[eventName] = [listener];
    }
    return this;
  },

  onAsync: function onAsync(eventName, listener, toHead) {
    listener._isAsync = true;
    return this.on(eventName, listener, toHead);
  },

  removeListener: function removeListener(eventName, listener) {
    var listeners = this._events[eventName];
    if (listeners) {
      var length = listeners.length;
      var position = -1;
      for (var i = 0; i < length; ++i) {
        if (listeners[i] === listener) {
          position = i;
        }
      }
      if (position > -1) {
        listeners.splice(position, 1);
      }
    }
    return this;
  },

  removeAllListeners: function removeAllListeners(eventName) {
    if (eventName) {
      delete this._events[eventName];
    } else {
      this._events = {};
    }
    return this;
  },

  /**
   * @api private
   */
  emit: function emit(eventName, eventArgs, doneCallback) {
    if (!doneCallback) doneCallback = function() { };
    var listeners = this.listeners(eventName);
    var count = listeners.length;
    this.callListeners(listeners, eventArgs, doneCallback);
    return count > 0;
  },

  /**
   * @api private
   */
  callListeners: function callListeners(listeners, args, doneCallback, prevError) {
    var self = this;
    var error = prevError || null;

    function callNextListener(err) {
      if (err) {
        error = AWS.util.error(error || new Error(), err);
        if (self._haltHandlersOnError) {
          return doneCallback.call(self, error);
        }
      }
      self.callListeners(listeners, args, doneCallback, error);
    }

    while (listeners.length > 0) {
      var listener = listeners.shift();
      if (listener._isAsync) { // asynchronous listener
        listener.apply(self, args.concat([callNextListener]));
        return; // stop here, callNextListener will continue
      } else { // synchronous listener
        try {
          listener.apply(self, args);
        } catch (err) {
          error = AWS.util.error(error || new Error(), err);
        }
        if (error && self._haltHandlersOnError) {
          doneCallback.call(self, error);
          return;
        }
      }
    }
    doneCallback.call(self, error);
  },

  /**
   * Adds or copies a set of listeners from another list of
   * listeners or SequentialExecutor object.
   *
   * @param listeners [map<String,Array<Function>>, AWS.SequentialExecutor]
   *   a list of events and callbacks, or an event emitter object
   *   containing listeners to add to this emitter object.
   * @return [AWS.SequentialExecutor] the emitter object, for chaining.
   * @example Adding listeners from a map of listeners
   *   emitter.addListeners({
   *     event1: [function() { ... }, function() { ... }],
   *     event2: [function() { ... }]
   *   });
   *   emitter.emit('event1'); // emitter has event1
   *   emitter.emit('event2'); // emitter has event2
   * @example Adding listeners from another emitter object
   *   var emitter1 = new AWS.SequentialExecutor();
   *   emitter1.on('event1', function() { ... });
   *   emitter1.on('event2', function() { ... });
   *   var emitter2 = new AWS.SequentialExecutor();
   *   emitter2.addListeners(emitter1);
   *   emitter2.emit('event1'); // emitter2 has event1
   *   emitter2.emit('event2'); // emitter2 has event2
   */
  addListeners: function addListeners(listeners) {
    var self = this;

    // extract listeners if parameter is an SequentialExecutor object
    if (listeners._events) listeners = listeners._events;

    AWS.util.each(listeners, function(event, callbacks) {
      if (typeof callbacks === 'function') callbacks = [callbacks];
      AWS.util.arrayEach(callbacks, function(callback) {
        self.on(event, callback);
      });
    });

    return self;
  },

  /**
   * Registers an event with {on} and saves the callback handle function
   * as a property on the emitter object using a given `name`.
   *
   * @param name [String] the property name to set on this object containing
   *   the callback function handle so that the listener can be removed in
   *   the future.
   * @param (see on)
   * @return (see on)
   * @example Adding a named listener DATA_CALLBACK
   *   var listener = function() { doSomething(); };
   *   emitter.addNamedListener('DATA_CALLBACK', 'data', listener);
   *
   *   // the following prints: true
   *   console.log(emitter.DATA_CALLBACK == listener);
   */
  addNamedListener: function addNamedListener(name, eventName, callback, toHead) {
    this[name] = callback;
    this.addListener(eventName, callback, toHead);
    return this;
  },

  /**
   * @api private
   */
  addNamedAsyncListener: function addNamedAsyncListener(name, eventName, callback, toHead) {
    callback._isAsync = true;
    return this.addNamedListener(name, eventName, callback, toHead);
  },

  /**
   * Helper method to add a set of named listeners using
   * {addNamedListener}. The callback contains a parameter
   * with a handle to the `addNamedListener` method.
   *
   * @callback callback function(add)
   *   The callback function is called immediately in order to provide
   *   the `add` function to the block. This simplifies the addition of
   *   a large group of named listeners.
   *   @param add [Function] the {addNamedListener} function to call
   *     when registering listeners.
   * @example Adding a set of named listeners
   *   emitter.addNamedListeners(function(add) {
   *     add('DATA_CALLBACK', 'data', function() { ... });
   *     add('OTHER', 'otherEvent', function() { ... });
   *     add('LAST', 'lastEvent', function() { ... });
   *   });
   *
   *   // these properties are now set:
   *   emitter.DATA_CALLBACK;
   *   emitter.OTHER;
   *   emitter.LAST;
   */
  addNamedListeners: function addNamedListeners(callback) {
    var self = this;
    callback(
      function() {
        self.addNamedListener.apply(self, arguments);
      },
      function() {
        self.addNamedAsyncListener.apply(self, arguments);
      }
    );
    return this;
  }
});

/**
 * {on} is the prefered method.
 * @api private
 */
AWS.SequentialExecutor.prototype.addListener = AWS.SequentialExecutor.prototype.on;

/**
 * @api private
 */
module.exports = AWS.SequentialExecutor;


/***/ }),

/***/ 68903:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var Api = __webpack_require__(17657);
var regionConfig = __webpack_require__(18262);

var inherit = AWS.util.inherit;
var clientCount = 0;

/**
 * The service class representing an AWS service.
 *
 * @class_abstract This class is an abstract class.
 *
 * @!attribute apiVersions
 *   @return [Array<String>] the list of API versions supported by this service.
 *   @readonly
 */
AWS.Service = inherit({
  /**
   * Create a new service object with a configuration object
   *
   * @param config [map] a map of configuration options
   */
  constructor: function Service(config) {
    if (!this.loadServiceClass) {
      throw AWS.util.error(new Error(),
        'Service must be constructed with `new\' operator');
    }
    var ServiceClass = this.loadServiceClass(config || {});
    if (ServiceClass) {
      var originalConfig = AWS.util.copy(config);
      var svc = new ServiceClass(config);
      Object.defineProperty(svc, '_originalConfig', {
        get: function() { return originalConfig; },
        enumerable: false,
        configurable: true
      });
      svc._clientId = ++clientCount;
      return svc;
    }
    this.initialize(config);
  },

  /**
   * @api private
   */
  initialize: function initialize(config) {
    var svcConfig = AWS.config[this.serviceIdentifier];
    this.config = new AWS.Config(AWS.config);
    if (svcConfig) this.config.update(svcConfig, true);
    if (config) this.config.update(config, true);

    this.validateService();
    if (!this.config.endpoint) regionConfig.configureEndpoint(this);

    this.config.endpoint = this.endpointFromTemplate(this.config.endpoint);
    this.setEndpoint(this.config.endpoint);
    //enable attaching listeners to service client
    AWS.SequentialExecutor.call(this);
    AWS.Service.addDefaultMonitoringListeners(this);
    if ((this.config.clientSideMonitoring || AWS.Service._clientSideMonitoring) && this.publisher) {
      var publisher = this.publisher;
      this.addNamedListener('PUBLISH_API_CALL', 'apiCall', function PUBLISH_API_CALL(event) {
        process.nextTick(function() {publisher.eventHandler(event);});
      });
      this.addNamedListener('PUBLISH_API_ATTEMPT', 'apiCallAttempt', function PUBLISH_API_ATTEMPT(event) {
        process.nextTick(function() {publisher.eventHandler(event);});
      });
    }
  },

  /**
   * @api private
   */
  validateService: function validateService() {
  },

  /**
   * @api private
   */
  loadServiceClass: function loadServiceClass(serviceConfig) {
    var config = serviceConfig;
    if (!AWS.util.isEmpty(this.api)) {
      return null;
    } else if (config.apiConfig) {
      return AWS.Service.defineServiceApi(this.constructor, config.apiConfig);
    } else if (!this.constructor.services) {
      return null;
    } else {
      config = new AWS.Config(AWS.config);
      config.update(serviceConfig, true);
      var version = config.apiVersions[this.constructor.serviceIdentifier];
      version = version || config.apiVersion;
      return this.getLatestServiceClass(version);
    }
  },

  /**
   * @api private
   */
  getLatestServiceClass: function getLatestServiceClass(version) {
    version = this.getLatestServiceVersion(version);
    if (this.constructor.services[version] === null) {
      AWS.Service.defineServiceApi(this.constructor, version);
    }

    return this.constructor.services[version];
  },

  /**
   * @api private
   */
  getLatestServiceVersion: function getLatestServiceVersion(version) {
    if (!this.constructor.services || this.constructor.services.length === 0) {
      throw new Error('No services defined on ' +
                      this.constructor.serviceIdentifier);
    }

    if (!version) {
      version = 'latest';
    } else if (AWS.util.isType(version, Date)) {
      version = AWS.util.date.iso8601(version).split('T')[0];
    }

    if (Object.hasOwnProperty(this.constructor.services, version)) {
      return version;
    }

    var keys = Object.keys(this.constructor.services).sort();
    var selectedVersion = null;
    for (var i = keys.length - 1; i >= 0; i--) {
      // versions that end in "*" are not available on disk and can be
      // skipped, so do not choose these as selectedVersions
      if (keys[i][keys[i].length - 1] !== '*') {
        selectedVersion = keys[i];
      }
      if (keys[i].substr(0, 10) <= version) {
        return selectedVersion;
      }
    }

    throw new Error('Could not find ' + this.constructor.serviceIdentifier +
                    ' API to satisfy version constraint `' + version + '\'');
  },

  /**
   * @api private
   */
  api: {},

  /**
   * @api private
   */
  defaultRetryCount: 3,

  /**
   * @api private
   */
  customizeRequests: function customizeRequests(callback) {
    if (!callback) {
      this.customRequestHandler = null;
    } else if (typeof callback === 'function') {
      this.customRequestHandler = callback;
    } else {
      throw new Error('Invalid callback type \'' + typeof callback + '\' provided in customizeRequests');
    }
  },

  /**
   * Calls an operation on a service with the given input parameters.
   *
   * @param operation [String] the name of the operation to call on the service.
   * @param params [map] a map of input options for the operation
   * @callback callback function(err, data)
   *   If a callback is supplied, it is called when a response is returned
   *   from the service.
   *   @param err [Error] the error object returned from the request.
   *     Set to `null` if the request is successful.
   *   @param data [Object] the de-serialized data returned from
   *     the request. Set to `null` if a request error occurs.
   */
  makeRequest: function makeRequest(operation, params, callback) {
    if (typeof params === 'function') {
      callback = params;
      params = null;
    }

    params = params || {};
    if (this.config.params) { // copy only toplevel bound params
      var rules = this.api.operations[operation];
      if (rules) {
        params = AWS.util.copy(params);
        AWS.util.each(this.config.params, function(key, value) {
          if (rules.input.members[key]) {
            if (params[key] === undefined || params[key] === null) {
              params[key] = value;
            }
          }
        });
      }
    }

    var request = new AWS.Request(this, operation, params);
    this.addAllRequestListeners(request);
    this.attachMonitoringEmitter(request);
    if (callback) request.send(callback);
    return request;
  },

  /**
   * Calls an operation on a service with the given input parameters, without
   * any authentication data. This method is useful for "public" API operations.
   *
   * @param operation [String] the name of the operation to call on the service.
   * @param params [map] a map of input options for the operation
   * @callback callback function(err, data)
   *   If a callback is supplied, it is called when a response is returned
   *   from the service.
   *   @param err [Error] the error object returned from the request.
   *     Set to `null` if the request is successful.
   *   @param data [Object] the de-serialized data returned from
   *     the request. Set to `null` if a request error occurs.
   */
  makeUnauthenticatedRequest: function makeUnauthenticatedRequest(operation, params, callback) {
    if (typeof params === 'function') {
      callback = params;
      params = {};
    }

    var request = this.makeRequest(operation, params).toUnauthenticated();
    return callback ? request.send(callback) : request;
  },

  /**
   * Waits for a given state
   *
   * @param state [String] the state on the service to wait for
   * @param params [map] a map of parameters to pass with each request
   * @option params $waiter [map] a map of configuration options for the waiter
   * @option params $waiter.delay [Number] The number of seconds to wait between
   *                                       requests
   * @option params $waiter.maxAttempts [Number] The maximum number of requests
   *                                             to send while waiting
   * @callback callback function(err, data)
   *   If a callback is supplied, it is called when a response is returned
   *   from the service.
   *   @param err [Error] the error object returned from the request.
   *     Set to `null` if the request is successful.
   *   @param data [Object] the de-serialized data returned from
   *     the request. Set to `null` if a request error occurs.
   */
  waitFor: function waitFor(state, params, callback) {
    var waiter = new AWS.ResourceWaiter(this, state);
    return waiter.wait(params, callback);
  },

  /**
   * @api private
   */
  addAllRequestListeners: function addAllRequestListeners(request) {
    var list = [AWS.events, AWS.EventListeners.Core, this.serviceInterface(),
                AWS.EventListeners.CorePost];
    for (var i = 0; i < list.length; i++) {
      if (list[i]) request.addListeners(list[i]);
    }

    // disable parameter validation
    if (!this.config.paramValidation) {
      request.removeListener('validate',
        AWS.EventListeners.Core.VALIDATE_PARAMETERS);
    }

    if (this.config.logger) { // add logging events
      request.addListeners(AWS.EventListeners.Logger);
    }

    this.setupRequestListeners(request);
    // call prototype's customRequestHandler
    if (typeof this.constructor.prototype.customRequestHandler === 'function') {
      this.constructor.prototype.customRequestHandler(request);
    }
    // call instance's customRequestHandler
    if (Object.prototype.hasOwnProperty.call(this, 'customRequestHandler') && typeof this.customRequestHandler === 'function') {
      this.customRequestHandler(request);
    }
  },

  /**
   * Event recording metrics for a whole API call.
   * @returns {object} a subset of api call metrics
   * @api private
   */
  apiCallEvent: function apiCallEvent(request) {
    var api = request.service.api.operations[request.operation];
    var monitoringEvent = {
      Type: 'ApiCall',
      Api: api ? api.name : request.operation,
      Version: 1,
      Service: request.service.api.serviceId || request.service.api.endpointPrefix,
      Region: request.httpRequest.region,
      MaxRetriesExceeded: 0,
      UserAgent: request.httpRequest.getUserAgent(),
    };
    var response = request.response;
    if (response.httpResponse.statusCode) {
      monitoringEvent.FinalHttpStatusCode = response.httpResponse.statusCode;
    }
    if (response.error) {
      var error = response.error;
      var statusCode = response.httpResponse.statusCode;
      if (statusCode > 299) {
        if (error.code) monitoringEvent.FinalAwsException = error.code;
        if (error.message) monitoringEvent.FinalAwsExceptionMessage = error.message;
      } else {
        if (error.code || error.name) monitoringEvent.FinalSdkException = error.code || error.name;
        if (error.message) monitoringEvent.FinalSdkExceptionMessage = error.message;
      }
    }
    return monitoringEvent;
  },

  /**
   * Event recording metrics for an API call attempt.
   * @returns {object} a subset of api call attempt metrics
   * @api private
   */
  apiAttemptEvent: function apiAttemptEvent(request) {
    var api = request.service.api.operations[request.operation];
    var monitoringEvent = {
      Type: 'ApiCallAttempt',
      Api: api ? api.name : request.operation,
      Version: 1,
      Service: request.service.api.serviceId || request.service.api.endpointPrefix,
      Fqdn: request.httpRequest.endpoint.hostname,
      UserAgent: request.httpRequest.getUserAgent(),
    };
    var response = request.response;
    if (response.httpResponse.statusCode) {
      monitoringEvent.HttpStatusCode = response.httpResponse.statusCode;
    }
    if (
      !request._unAuthenticated &&
      request.service.config.credentials &&
      request.service.config.credentials.accessKeyId
    ) {
      monitoringEvent.AccessKey = request.service.config.credentials.accessKeyId;
    }
    if (!response.httpResponse.headers) return monitoringEvent;
    if (request.httpRequest.headers['x-amz-security-token']) {
      monitoringEvent.SessionToken = request.httpRequest.headers['x-amz-security-token'];
    }
    if (response.httpResponse.headers['x-amzn-requestid']) {
      monitoringEvent.XAmznRequestId = response.httpResponse.headers['x-amzn-requestid'];
    }
    if (response.httpResponse.headers['x-amz-request-id']) {
      monitoringEvent.XAmzRequestId = response.httpResponse.headers['x-amz-request-id'];
    }
    if (response.httpResponse.headers['x-amz-id-2']) {
      monitoringEvent.XAmzId2 = response.httpResponse.headers['x-amz-id-2'];
    }
    return monitoringEvent;
  },

  /**
   * Add metrics of failed request.
   * @api private
   */
  attemptFailEvent: function attemptFailEvent(request) {
    var monitoringEvent = this.apiAttemptEvent(request);
    var response = request.response;
    var error = response.error;
    if (response.httpResponse.statusCode > 299 ) {
      if (error.code) monitoringEvent.AwsException = error.code;
      if (error.message) monitoringEvent.AwsExceptionMessage = error.message;
    } else {
      if (error.code || error.name) monitoringEvent.SdkException = error.code || error.name;
      if (error.message) monitoringEvent.SdkExceptionMessage = error.message;
    }
    return monitoringEvent;
  },

  /**
   * Attach listeners to request object to fetch metrics of each request
   * and emit data object through \'ApiCall\' and \'ApiCallAttempt\' events.
   * @api private
   */
  attachMonitoringEmitter: function attachMonitoringEmitter(request) {
    var attemptTimestamp; //timestamp marking the beginning of a request attempt
    var attemptStartRealTime; //Start time of request attempt. Used to calculating attemptLatency
    var attemptLatency; //latency from request sent out to http response reaching SDK
    var callStartRealTime; //Start time of API call. Used to calculating API call latency
    var attemptCount = 0; //request.retryCount is not reliable here
    var region; //region cache region for each attempt since it can be updated in plase (e.g. s3)
    var callTimestamp; //timestamp when the request is created
    var self = this;
    var addToHead = true;

    request.on('validate', function () {
      callStartRealTime = AWS.util.realClock.now();
      callTimestamp = Date.now();
    }, addToHead);
    request.on('sign', function () {
      attemptStartRealTime = AWS.util.realClock.now();
      attemptTimestamp = Date.now();
      region = request.httpRequest.region;
      attemptCount++;
    }, addToHead);
    request.on('validateResponse', function() {
      attemptLatency = Math.round(AWS.util.realClock.now() - attemptStartRealTime);
    });
    request.addNamedListener('API_CALL_ATTEMPT', 'success', function API_CALL_ATTEMPT() {
      var apiAttemptEvent = self.apiAttemptEvent(request);
      apiAttemptEvent.Timestamp = attemptTimestamp;
      apiAttemptEvent.AttemptLatency = attemptLatency >= 0 ? attemptLatency : 0;
      apiAttemptEvent.Region = region;
      self.emit('apiCallAttempt', [apiAttemptEvent]);
    });
    request.addNamedListener('API_CALL_ATTEMPT_RETRY', 'retry', function API_CALL_ATTEMPT_RETRY() {
      var apiAttemptEvent = self.attemptFailEvent(request);
      apiAttemptEvent.Timestamp = attemptTimestamp;
      //attemptLatency may not be available if fail before response
      attemptLatency = attemptLatency ||
        Math.round(AWS.util.realClock.now() - attemptStartRealTime);
      apiAttemptEvent.AttemptLatency = attemptLatency >= 0 ? attemptLatency : 0;
      apiAttemptEvent.Region = region;
      self.emit('apiCallAttempt', [apiAttemptEvent]);
    });
    request.addNamedListener('API_CALL', 'complete', function API_CALL() {
      var apiCallEvent = self.apiCallEvent(request);
      apiCallEvent.AttemptCount = attemptCount;
      if (apiCallEvent.AttemptCount <= 0) return;
      apiCallEvent.Timestamp = callTimestamp;
      var latency = Math.round(AWS.util.realClock.now() - callStartRealTime);
      apiCallEvent.Latency = latency >= 0 ? latency : 0;
      var response = request.response;
      if (
        response.error &&
        response.error.retryable &&
        typeof response.retryCount === 'number' &&
        typeof response.maxRetries === 'number' &&
        (response.retryCount >= response.maxRetries)
      ) {
        apiCallEvent.MaxRetriesExceeded = 1;
      }
      self.emit('apiCall', [apiCallEvent]);
    });
  },

  /**
   * Override this method to setup any custom request listeners for each
   * new request to the service.
   *
   * @method_abstract This is an abstract method.
   */
  setupRequestListeners: function setupRequestListeners(request) {
  },

  /**
   * Gets the signing name for a given request
   * @api private
   */
  getSigningName: function getSigningName() {
    return this.api.signingName || this.api.endpointPrefix;
  },

  /**
   * Gets the signer class for a given request
   * @api private
   */
  getSignerClass: function getSignerClass(request) {
    var version;
    // get operation authtype if present
    var operation = null;
    var authtype = '';
    if (request) {
      var operations = request.service.api.operations || {};
      operation = operations[request.operation] || null;
      authtype = operation ? operation.authtype : '';
    }
    if (this.config.signatureVersion) {
      version = this.config.signatureVersion;
    } else if (authtype === 'v4' || authtype === 'v4-unsigned-body') {
      version = 'v4';
    } else {
      version = this.api.signatureVersion;
    }
    return AWS.Signers.RequestSigner.getVersion(version);
  },

  /**
   * @api private
   */
  serviceInterface: function serviceInterface() {
    switch (this.api.protocol) {
      case 'ec2': return AWS.EventListeners.Query;
      case 'query': return AWS.EventListeners.Query;
      case 'json': return AWS.EventListeners.Json;
      case 'rest-json': return AWS.EventListeners.RestJson;
      case 'rest-xml': return AWS.EventListeners.RestXml;
    }
    if (this.api.protocol) {
      throw new Error('Invalid service `protocol\' ' +
        this.api.protocol + ' in API config');
    }
  },

  /**
   * @api private
   */
  successfulResponse: function successfulResponse(resp) {
    return resp.httpResponse.statusCode < 300;
  },

  /**
   * How many times a failed request should be retried before giving up.
   * the defaultRetryCount can be overriden by service classes.
   *
   * @api private
   */
  numRetries: function numRetries() {
    if (this.config.maxRetries !== undefined) {
      return this.config.maxRetries;
    } else {
      return this.defaultRetryCount;
    }
  },

  /**
   * @api private
   */
  retryDelays: function retryDelays(retryCount, err) {
    return AWS.util.calculateRetryDelay(retryCount, this.config.retryDelayOptions, err);
  },

  /**
   * @api private
   */
  retryableError: function retryableError(error) {
    if (this.timeoutError(error)) return true;
    if (this.networkingError(error)) return true;
    if (this.expiredCredentialsError(error)) return true;
    if (this.throttledError(error)) return true;
    if (error.statusCode >= 500) return true;
    return false;
  },

  /**
   * @api private
   */
  networkingError: function networkingError(error) {
    return error.code === 'NetworkingError';
  },

  /**
   * @api private
   */
  timeoutError: function timeoutError(error) {
    return error.code === 'TimeoutError';
  },

  /**
   * @api private
   */
  expiredCredentialsError: function expiredCredentialsError(error) {
    // TODO : this only handles *one* of the expired credential codes
    return (error.code === 'ExpiredTokenException');
  },

  /**
   * @api private
   */
  clockSkewError: function clockSkewError(error) {
    switch (error.code) {
      case 'RequestTimeTooSkewed':
      case 'RequestExpired':
      case 'InvalidSignatureException':
      case 'SignatureDoesNotMatch':
      case 'AuthFailure':
      case 'RequestInTheFuture':
        return true;
      default: return false;
    }
  },

  /**
   * @api private
   */
  getSkewCorrectedDate: function getSkewCorrectedDate() {
    return new Date(Date.now() + this.config.systemClockOffset);
  },

  /**
   * @api private
   */
  applyClockOffset: function applyClockOffset(newServerTime) {
    if (newServerTime) {
      this.config.systemClockOffset = newServerTime - Date.now();
    }
  },

  /**
   * @api private
   */
  isClockSkewed: function isClockSkewed(newServerTime) {
    if (newServerTime) {
      return Math.abs(this.getSkewCorrectedDate().getTime() - newServerTime) >= 300000;
    }
  },

  /**
   * @api private
   */
  throttledError: function throttledError(error) {
    // this logic varies between services
    if (error.statusCode === 429) return true;
    switch (error.code) {
      case 'ProvisionedThroughputExceededException':
      case 'Throttling':
      case 'ThrottlingException':
      case 'RequestLimitExceeded':
      case 'RequestThrottled':
      case 'RequestThrottledException':
      case 'TooManyRequestsException':
      case 'TransactionInProgressException': //dynamodb
      case 'EC2ThrottledException':
        return true;
      default:
        return false;
    }
  },

  /**
   * @api private
   */
  endpointFromTemplate: function endpointFromTemplate(endpoint) {
    if (typeof endpoint !== 'string') return endpoint;

    var e = endpoint;
    e = e.replace(/\{service\}/g, this.api.endpointPrefix);
    e = e.replace(/\{region\}/g, this.config.region);
    e = e.replace(/\{scheme\}/g, this.config.sslEnabled ? 'https' : 'http');
    return e;
  },

  /**
   * @api private
   */
  setEndpoint: function setEndpoint(endpoint) {
    this.endpoint = new AWS.Endpoint(endpoint, this.config);
  },

  /**
   * @api private
   */
  paginationConfig: function paginationConfig(operation, throwException) {
    var paginator = this.api.operations[operation].paginator;
    if (!paginator) {
      if (throwException) {
        var e = new Error();
        throw AWS.util.error(e, 'No pagination configuration for ' + operation);
      }
      return null;
    }

    return paginator;
  }
});

AWS.util.update(AWS.Service, {

  /**
   * Adds one method for each operation described in the api configuration
   *
   * @api private
   */
  defineMethods: function defineMethods(svc) {
    AWS.util.each(svc.prototype.api.operations, function iterator(method) {
      if (svc.prototype[method]) return;
      var operation = svc.prototype.api.operations[method];
      if (operation.authtype === 'none') {
        svc.prototype[method] = function (params, callback) {
          return this.makeUnauthenticatedRequest(method, params, callback);
        };
      } else {
        svc.prototype[method] = function (params, callback) {
          return this.makeRequest(method, params, callback);
        };
      }
    });
  },

  /**
   * Defines a new Service class using a service identifier and list of versions
   * including an optional set of features (functions) to apply to the class
   * prototype.
   *
   * @param serviceIdentifier [String] the identifier for the service
   * @param versions [Array<String>] a list of versions that work with this
   *   service
   * @param features [Object] an object to attach to the prototype
   * @return [Class<Service>] the service class defined by this function.
   */
  defineService: function defineService(serviceIdentifier, versions, features) {
    AWS.Service._serviceMap[serviceIdentifier] = true;
    if (!Array.isArray(versions)) {
      features = versions;
      versions = [];
    }

    var svc = inherit(AWS.Service, features || {});

    if (typeof serviceIdentifier === 'string') {
      AWS.Service.addVersions(svc, versions);

      var identifier = svc.serviceIdentifier || serviceIdentifier;
      svc.serviceIdentifier = identifier;
    } else { // defineService called with an API
      svc.prototype.api = serviceIdentifier;
      AWS.Service.defineMethods(svc);
    }
    AWS.SequentialExecutor.call(this.prototype);
    //util.clientSideMonitoring is only available in node
    if (!this.prototype.publisher && AWS.util.clientSideMonitoring) {
      var Publisher = AWS.util.clientSideMonitoring.Publisher;
      var configProvider = AWS.util.clientSideMonitoring.configProvider;
      var publisherConfig = configProvider();
      this.prototype.publisher = new Publisher(publisherConfig);
      if (publisherConfig.enabled) {
        //if csm is enabled in environment, SDK should send all metrics
        AWS.Service._clientSideMonitoring = true;
      }
    }
    AWS.SequentialExecutor.call(svc.prototype);
    AWS.Service.addDefaultMonitoringListeners(svc.prototype);
    return svc;
  },

  /**
   * @api private
   */
  addVersions: function addVersions(svc, versions) {
    if (!Array.isArray(versions)) versions = [versions];

    svc.services = svc.services || {};
    for (var i = 0; i < versions.length; i++) {
      if (svc.services[versions[i]] === undefined) {
        svc.services[versions[i]] = null;
      }
    }

    svc.apiVersions = Object.keys(svc.services).sort();
  },

  /**
   * @api private
   */
  defineServiceApi: function defineServiceApi(superclass, version, apiConfig) {
    var svc = inherit(superclass, {
      serviceIdentifier: superclass.serviceIdentifier
    });

    function setApi(api) {
      if (api.isApi) {
        svc.prototype.api = api;
      } else {
        svc.prototype.api = new Api(api, {
          serviceIdentifier: superclass.serviceIdentifier
        });
      }
    }

    if (typeof version === 'string') {
      if (apiConfig) {
        setApi(apiConfig);
      } else {
        try {
          setApi(AWS.apiLoader(superclass.serviceIdentifier, version));
        } catch (err) {
          throw AWS.util.error(err, {
            message: 'Could not find API configuration ' +
              superclass.serviceIdentifier + '-' + version
          });
        }
      }
      if (!Object.prototype.hasOwnProperty.call(superclass.services, version)) {
        superclass.apiVersions = superclass.apiVersions.concat(version).sort();
      }
      superclass.services[version] = svc;
    } else {
      setApi(version);
    }

    AWS.Service.defineMethods(svc);
    return svc;
  },

  /**
   * @api private
   */
  hasService: function(identifier) {
    return Object.prototype.hasOwnProperty.call(AWS.Service._serviceMap, identifier);
  },

  /**
   * @param attachOn attach default monitoring listeners to object
   *
   * Each monitoring event should be emitted from service client to service constructor prototype and then
   * to global service prototype like bubbling up. These default monitoring events listener will transfer
   * the monitoring events to the upper layer.
   * @api private
   */
  addDefaultMonitoringListeners: function addDefaultMonitoringListeners(attachOn) {
    attachOn.addNamedListener('MONITOR_EVENTS_BUBBLE', 'apiCallAttempt', function EVENTS_BUBBLE(event) {
      var baseClass = Object.getPrototypeOf(attachOn);
      if (baseClass._events) baseClass.emit('apiCallAttempt', [event]);
    });
    attachOn.addNamedListener('CALL_EVENTS_BUBBLE', 'apiCall', function CALL_EVENTS_BUBBLE(event) {
      var baseClass = Object.getPrototypeOf(attachOn);
      if (baseClass._events) baseClass.emit('apiCall', [event]);
    });
  },

  /**
   * @api private
   */
  _serviceMap: {}
});

AWS.util.mixin(AWS.Service, AWS.SequentialExecutor);

/**
 * @api private
 */
module.exports = AWS.Service;


/***/ }),

/***/ 4338:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.APIGateway.prototype, {
/**
 * Sets the Accept header to application/json.
 *
 * @api private
 */
  setAcceptHeader: function setAcceptHeader(req) {
    var httpRequest = req.httpRequest;
    if (!httpRequest.headers.Accept) {
      httpRequest.headers['Accept'] = 'application/json';
    }
  },

  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('build', this.setAcceptHeader);
    if (request.operation === 'getExport') {
      var params = request.params || {};
      if (params.exportType === 'swagger') {
        request.addListener('extractData', AWS.util.convertPayloadToString);
      }
    }
  }
});



/***/ }),

/***/ 95483:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

// pull in CloudFront signer
__webpack_require__(93260);

AWS.util.update(AWS.CloudFront.prototype, {

  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('extractData', AWS.util.hoistPayloadMember);
  }

});


/***/ }),

/***/ 48571:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * Constructs a service interface object. Each API operation is exposed as a
 * function on service.
 *
 * ### Sending a Request Using CloudSearchDomain
 *
 * ```javascript
 * var csd = new AWS.CloudSearchDomain({endpoint: 'my.host.tld'});
 * csd.search(params, function (err, data) {
 *   if (err) console.log(err, err.stack); // an error occurred
 *   else     console.log(data);           // successful response
 * });
 * ```
 *
 * ### Locking the API Version
 *
 * In order to ensure that the CloudSearchDomain object uses this specific API,
 * you can construct the object by passing the `apiVersion` option to the
 * constructor:
 *
 * ```javascript
 * var csd = new AWS.CloudSearchDomain({
 *   endpoint: 'my.host.tld',
 *   apiVersion: '2013-01-01'
 * });
 * ```
 *
 * You can also set the API version globally in `AWS.config.apiVersions` using
 * the **cloudsearchdomain** service identifier:
 *
 * ```javascript
 * AWS.config.apiVersions = {
 *   cloudsearchdomain: '2013-01-01',
 *   // other service API versions
 * };
 *
 * var csd = new AWS.CloudSearchDomain({endpoint: 'my.host.tld'});
 * ```
 *
 * @note You *must* provide an `endpoint` configuration parameter when
 *   constructing this service. See {constructor} for more information.
 *
 * @!method constructor(options = {})
 *   Constructs a service object. This object has one method for each
 *   API operation.
 *
 *   @example Constructing a CloudSearchDomain object
 *     var csd = new AWS.CloudSearchDomain({endpoint: 'my.host.tld'});
 *   @note You *must* provide an `endpoint` when constructing this service.
 *   @option (see AWS.Config.constructor)
 *
 * @service cloudsearchdomain
 * @version 2013-01-01
 */
AWS.util.update(AWS.CloudSearchDomain.prototype, {
  /**
   * @api private
   */
  validateService: function validateService() {
    if (!this.config.endpoint || this.config.endpoint.indexOf('{') >= 0) {
      var msg = 'AWS.CloudSearchDomain requires an explicit ' +
                '`endpoint\' configuration option.';
      throw AWS.util.error(new Error(),
        {name: 'InvalidEndpoint', message: msg});
    }
  },

  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.removeListener('validate',
      AWS.EventListeners.Core.VALIDATE_CREDENTIALS
    );
    request.onAsync('validate', this.validateCredentials);
    request.addListener('validate', this.updateRegion);
    if (request.operation === 'search') {
      request.addListener('build', this.convertGetToPost);
    }
  },

  /**
   * @api private
   */
  validateCredentials: function(req, done) {
    if (!req.service.api.signatureVersion) return done(); // none
    req.service.config.getCredentials(function(err) {
      if (err) {
        req.removeListener('sign', AWS.EventListeners.Core.SIGN);
      }
      done();
    });
  },

  /**
   * @api private
   */
  convertGetToPost: function(request) {
    var httpRequest = request.httpRequest;
    // convert queries to POST to avoid length restrictions
    var path = httpRequest.path.split('?');
    httpRequest.method = 'POST';
    httpRequest.path = path[0];
    httpRequest.body = path[1];
    httpRequest.headers['Content-Length'] = httpRequest.body.length;
    httpRequest.headers['Content-Type'] = 'application/x-www-form-urlencoded';
  },

  /**
   * @api private
   */
  updateRegion: function updateRegion(request) {
    var endpoint = request.httpRequest.endpoint.hostname;
    var zones = endpoint.split('.');
    request.httpRequest.region = zones[1] || request.httpRequest.region;
  }

});


/***/ }),

/***/ 59050:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var rdsutil = __webpack_require__(30650);

/**
* @api private
*/
var crossRegionOperations = ['createDBCluster', 'copyDBClusterSnapshot'];

AWS.util.update(AWS.DocDB.prototype, {
  /**
  * @api private
  */
  setupRequestListeners: function setupRequestListeners(request) {
    if (
      crossRegionOperations.indexOf(request.operation) !== -1 &&
      this.config.params &&
      this.config.params.SourceRegion &&
      request.params &&
      !request.params.SourceRegion
    ) {
      request.params.SourceRegion = this.config.params.SourceRegion;
    }
    rdsutil.setupRequestListeners(this, request, crossRegionOperations);
  },
});


/***/ }),

/***/ 17101:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
__webpack_require__(90030);

AWS.util.update(AWS.DynamoDB.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    if (request.service.config.dynamoDbCrc32) {
      request.removeListener('extractData', AWS.EventListeners.Json.EXTRACT_DATA);
      request.addListener('extractData', this.checkCrc32);
      request.addListener('extractData', AWS.EventListeners.Json.EXTRACT_DATA);
    }
  },

  /**
   * @api private
   */
  checkCrc32: function checkCrc32(resp) {
    if (!resp.httpResponse.streaming && !resp.request.service.crc32IsValid(resp)) {
      resp.data = null;
      resp.error = AWS.util.error(new Error(), {
        code: 'CRC32CheckFailed',
        message: 'CRC32 integrity check failed',
        retryable: true
      });
      resp.request.haltHandlersOnError();
      throw (resp.error);
    }
  },

  /**
   * @api private
   */
  crc32IsValid: function crc32IsValid(resp) {
    var crc = resp.httpResponse.headers['x-amz-crc32'];
    if (!crc) return true; // no (valid) CRC32 header
    return parseInt(crc, 10) === AWS.util.crypto.crc32(resp.httpResponse.body);
  },

  /**
   * @api private
   */
  defaultRetryCount: 10,

  /**
   * @api private
   */
  retryDelays: function retryDelays(retryCount, err) {
    var retryDelayOptions = AWS.util.copy(this.config.retryDelayOptions);

    if (typeof retryDelayOptions.base !== 'number') {
        retryDelayOptions.base = 50; // default for dynamodb
    }
    var delay = AWS.util.calculateRetryDelay(retryCount, retryDelayOptions, err);
    return delay;
  }
});


/***/ }),

/***/ 92501:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.EC2.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.removeListener('extractError', AWS.EventListeners.Query.EXTRACT_ERROR);
    request.addListener('extractError', this.extractError);

    if (request.operation === 'copySnapshot') {
      request.onAsync('validate', this.buildCopySnapshotPresignedUrl);
    }
  },

  /**
   * @api private
   */
  buildCopySnapshotPresignedUrl: function buildCopySnapshotPresignedUrl(req, done) {
    if (req.params.PresignedUrl || req._subRequest) {
      return done();
    }

    req.params = AWS.util.copy(req.params);
    req.params.DestinationRegion = req.service.config.region;

    var config = AWS.util.copy(req.service.config);
    delete config.endpoint;
    config.region = req.params.SourceRegion;
    var svc = new req.service.constructor(config);
    var newReq = svc[req.operation](req.params);
    newReq._subRequest = true;
    newReq.presign(function(err, url) {
      if (err) done(err);
      else {
        req.params.PresignedUrl = url;
        done();
      }
    });
  },

  /**
   * @api private
   */
  extractError: function extractError(resp) {
    // EC2 nests the error code and message deeper than other AWS Query services.
    var httpResponse = resp.httpResponse;
    var data = new AWS.XML.Parser().parse(httpResponse.body.toString() || '');
    if (data.Errors) {
      resp.error = AWS.util.error(new Error(), {
        code: data.Errors.Error.Code,
        message: data.Errors.Error.Message
      });
    } else {
      resp.error = AWS.util.error(new Error(), {
        code: httpResponse.statusCode,
        message: null
      });
    }
    resp.error.requestId = data.RequestID || null;
  }
});


/***/ }),

/***/ 14472:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.Glacier.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    if (Array.isArray(request._events.validate)) {
      request._events.validate.unshift(this.validateAccountId);
    } else {
      request.on('validate', this.validateAccountId);
    }
    request.removeListener('afterBuild',
      AWS.EventListeners.Core.COMPUTE_SHA256);
    request.on('build', this.addGlacierApiVersion);
    request.on('build', this.addTreeHashHeaders);
  },

  /**
   * @api private
   */
  validateAccountId: function validateAccountId(request) {
    if (request.params.accountId !== undefined) return;
    request.params = AWS.util.copy(request.params);
    request.params.accountId = '-';
  },

  /**
   * @api private
   */
  addGlacierApiVersion: function addGlacierApiVersion(request) {
    var version = request.service.api.apiVersion;
    request.httpRequest.headers['x-amz-glacier-version'] = version;
  },

  /**
   * @api private
   */
  addTreeHashHeaders: function addTreeHashHeaders(request) {
    if (request.params.body === undefined) return;

    var hashes = request.service.computeChecksums(request.params.body);
    request.httpRequest.headers['X-Amz-Content-Sha256'] = hashes.linearHash;

    if (!request.httpRequest.headers['x-amz-sha256-tree-hash']) {
      request.httpRequest.headers['x-amz-sha256-tree-hash'] = hashes.treeHash;
    }
  },

  /**
   * @!group Computing Checksums
   */

  /**
   * Computes the SHA-256 linear and tree hash checksums for a given
   * block of Buffer data. Pass the tree hash of the computed checksums
   * as the checksum input to the {completeMultipartUpload} when performing
   * a multi-part upload.
   *
   * @example Calculate checksum of 5.5MB data chunk
   *   var glacier = new AWS.Glacier();
   *   var data = Buffer.alloc(5.5 * 1024 * 1024);
   *   data.fill('0'); // fill with zeros
   *   var results = glacier.computeChecksums(data);
   *   // Result: { linearHash: '68aff0c5a9...', treeHash: '154e26c78f...' }
   * @param data [Buffer, String] data to calculate the checksum for
   * @return [map<linearHash:String,treeHash:String>] a map containing
   *   the linearHash and treeHash properties representing hex based digests
   *   of the respective checksums.
   * @see completeMultipartUpload
   */
  computeChecksums: function computeChecksums(data) {
    if (!AWS.util.Buffer.isBuffer(data)) data = AWS.util.buffer.toBuffer(data);

    var mb = 1024 * 1024;
    var hashes = [];
    var hash = AWS.util.crypto.createHash('sha256');

    // build leaf nodes in 1mb chunks
    for (var i = 0; i < data.length; i += mb) {
      var chunk = data.slice(i, Math.min(i + mb, data.length));
      hash.update(chunk);
      hashes.push(AWS.util.crypto.sha256(chunk));
    }

    return {
      linearHash: hash.digest('hex'),
      treeHash: this.buildHashTree(hashes)
    };
  },

  /**
   * @api private
   */
  buildHashTree: function buildHashTree(hashes) {
    // merge leaf nodes
    while (hashes.length > 1) {
      var tmpHashes = [];
      for (var i = 0; i < hashes.length; i += 2) {
        if (hashes[i + 1]) {
          var tmpHash = AWS.util.buffer.alloc(64);
          tmpHash.write(hashes[i], 0, 32, 'binary');
          tmpHash.write(hashes[i + 1], 32, 32, 'binary');
          tmpHashes.push(AWS.util.crypto.sha256(tmpHash));
        } else {
          tmpHashes.push(hashes[i]);
        }
      }
      hashes = tmpHashes;
    }

    return AWS.util.crypto.toHex(hashes[0]);
  }
});


/***/ }),

/***/ 27062:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * @api private
 */
var blobPayloadOutputOps = [
  'deleteThingShadow',
  'getThingShadow',
  'updateThingShadow'
];

/**
 * Constructs a service interface object. Each API operation is exposed as a
 * function on service.
 *
 * ### Sending a Request Using IotData
 *
 * ```javascript
 * var iotdata = new AWS.IotData({endpoint: 'my.host.tld'});
 * iotdata.getThingShadow(params, function (err, data) {
 *   if (err) console.log(err, err.stack); // an error occurred
 *   else     console.log(data);           // successful response
 * });
 * ```
 *
 * ### Locking the API Version
 *
 * In order to ensure that the IotData object uses this specific API,
 * you can construct the object by passing the `apiVersion` option to the
 * constructor:
 *
 * ```javascript
 * var iotdata = new AWS.IotData({
 *   endpoint: 'my.host.tld',
 *   apiVersion: '2015-05-28'
 * });
 * ```
 *
 * You can also set the API version globally in `AWS.config.apiVersions` using
 * the **iotdata** service identifier:
 *
 * ```javascript
 * AWS.config.apiVersions = {
 *   iotdata: '2015-05-28',
 *   // other service API versions
 * };
 *
 * var iotdata = new AWS.IotData({endpoint: 'my.host.tld'});
 * ```
 *
 * @note You *must* provide an `endpoint` configuration parameter when
 *   constructing this service. See {constructor} for more information.
 *
 * @!method constructor(options = {})
 *   Constructs a service object. This object has one method for each
 *   API operation.
 *
 *   @example Constructing a IotData object
 *     var iotdata = new AWS.IotData({endpoint: 'my.host.tld'});
 *   @note You *must* provide an `endpoint` when constructing this service.
 *   @option (see AWS.Config.constructor)
 *
 * @service iotdata
 * @version 2015-05-28
 */
AWS.util.update(AWS.IotData.prototype, {
    /**
     * @api private
     */
    validateService: function validateService() {
        if (!this.config.endpoint || this.config.endpoint.indexOf('{') >= 0) {
            var msg = 'AWS.IotData requires an explicit ' +
                '`endpoint\' configuration option.';
            throw AWS.util.error(new Error(),
                {name: 'InvalidEndpoint', message: msg});
        }
    },

    /**
     * @api private
     */
    setupRequestListeners: function setupRequestListeners(request) {
        request.addListener('validateResponse', this.validateResponseBody);
        if (blobPayloadOutputOps.indexOf(request.operation) > -1) {
            request.addListener('extractData', AWS.util.convertPayloadToString);
        }
    },

    /**
     * @api private
     */
    validateResponseBody: function validateResponseBody(resp) {
        var body = resp.httpResponse.body.toString() || '{}';
        var bodyCheck = body.trim();
        if (!bodyCheck || bodyCheck.charAt(0) !== '{') {
            resp.httpResponse.body = '';
        }
    }

});


/***/ }),

/***/ 8452:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.Lambda.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    if (request.operation === 'invoke') {
      request.addListener('extractData', AWS.util.convertPayloadToString);
    }
  }
});



/***/ }),

/***/ 22922:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.LexModelsV2.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('build', this.modifyContentType);
  },

  /**
   * Normally rest-json services require `Content-Type` header to be 'application/json',
   * However Lex Model V2 services requires the header to be 'application/x-amz-json-1.1'.
   *
   * @api private
   */
  modifyContentType: function modifyContentType(request) {
    if (request.httpRequest.headers['Content-Type'] === 'application/json') {
      request.httpRequest.headers['Content-Type'] = 'application/x-amz-json-1.1';
    }
  }
});



/***/ }),

/***/ 64605:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.LookoutMetrics.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('build', this.modifyContentType);
  },

  /**
   * Normally rest-json services require `Content-Type` header to be 'application/json',
   * However lookout metrics services requires the header to be 'application/x-amz-json-1.1'.
   *
   * @api private
   */
  modifyContentType: function modifyContentType(request) {
    if (request.httpRequest.headers['Content-Type'] === 'application/json') {
      request.httpRequest.headers['Content-Type'] = 'application/x-amz-json-1.1';
    }
  }
});


/***/ }),

/***/ 19174:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.MachineLearning.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    if (request.operation === 'predict') {
      request.addListener('build', this.buildEndpoint);
    }
  },

  /**
   * Updates request endpoint from PredictEndpoint
   * @api private
   */
  buildEndpoint: function buildEndpoint(request) {
    var url = request.params.PredictEndpoint;
    if (url) {
      request.httpRequest.endpoint = new AWS.Endpoint(url);
    }
  }

});


/***/ }),

/***/ 73090:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var rdsutil = __webpack_require__(30650);

/**
* @api private
*/
var crossRegionOperations = ['createDBCluster', 'copyDBClusterSnapshot'];

AWS.util.update(AWS.Neptune.prototype, {
  /**
  * @api private
  */
  setupRequestListeners: function setupRequestListeners(request) {
    if (
      crossRegionOperations.indexOf(request.operation) !== -1 &&
      this.config.params &&
      this.config.params.SourceRegion &&
      request.params &&
      !request.params.SourceRegion
    ) {
      request.params.SourceRegion = this.config.params.SourceRegion;
    }
    rdsutil.setupRequestListeners(this, request, crossRegionOperations);
  },
});


/***/ }),

/***/ 53199:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(44086);


/***/ }),

/***/ 71928:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var rdsutil = __webpack_require__(30650);
__webpack_require__(16612);
 /**
  * @api private
  */
 var crossRegionOperations = ['copyDBSnapshot', 'createDBInstanceReadReplica', 'createDBCluster', 'copyDBClusterSnapshot', 'startDBInstanceAutomatedBackupsReplication'];

 AWS.util.update(AWS.RDS.prototype, {
   /**
    * @api private
    */
   setupRequestListeners: function setupRequestListeners(request) {
    rdsutil.setupRequestListeners(this, request, crossRegionOperations);
   },
 });


/***/ }),

/***/ 64070:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.RDSDataService.prototype, {
  /**
   * @return [Boolean] whether the error can be retried
   * @api private
   */
  retryableError: function retryableError(error) {
    if (error.code === 'BadRequestException' &&
      error.message &&
      error.message.match(/^Communications link failure/) &&
      error.statusCode === 400) {
      return true;
    } else {
      var _super = AWS.Service.prototype.retryableError;
      return _super.call(this, error);
    }
  }
});


/***/ }),

/***/ 30650:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

var rdsutil = {
  /**
    * @api private
    */
   setupRequestListeners: function setupRequestListeners(service, request, crossRegionOperations) {
    if (crossRegionOperations.indexOf(request.operation) !== -1 &&
        request.params.SourceRegion) {
      request.params = AWS.util.copy(request.params);
      if (request.params.PreSignedUrl ||
          request.params.SourceRegion === service.config.region) {
        delete request.params.SourceRegion;
      } else {
        var doesParamValidation = !!service.config.paramValidation;
        // remove the validate parameters listener so we can re-add it after we build the URL
        if (doesParamValidation) {
          request.removeListener('validate', AWS.EventListeners.Core.VALIDATE_PARAMETERS);
        }
        request.onAsync('validate', rdsutil.buildCrossRegionPresignedUrl);
        if (doesParamValidation) {
          request.addListener('validate', AWS.EventListeners.Core.VALIDATE_PARAMETERS);
        }
      }
    }
  },

  /**
   * @api private
   */
  buildCrossRegionPresignedUrl: function buildCrossRegionPresignedUrl(req, done) {
    var config = AWS.util.copy(req.service.config);
    config.region = req.params.SourceRegion;
    delete req.params.SourceRegion;
    delete config.endpoint;
    // relevant params for the operation will already be in req.params
    delete config.params;
    config.signatureVersion = 'v4';
    var destinationRegion = req.service.config.region;

    var svc = new req.service.constructor(config);
    var newReq = svc[req.operation](AWS.util.copy(req.params));
    newReq.on('build', function addDestinationRegionParam(request) {
      var httpRequest = request.httpRequest;
      httpRequest.params.DestinationRegion = destinationRegion;
      httpRequest.body = AWS.util.queryParamsToString(httpRequest.params);
    });
    newReq.presign(function(err, url) {
      if (err) done(err);
      else {
        req.params.PreSignedUrl = url;
        done();
      }
    });
  }
};

/**
 * @api private
 */
module.exports = rdsutil;


/***/ }),

/***/ 69627:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.Route53.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.on('build', this.sanitizeUrl);
  },

  /**
   * @api private
   */
  sanitizeUrl: function sanitizeUrl(request) {
    var path = request.httpRequest.path;
    request.httpRequest.path = path.replace(/\/%2F\w+%2F/, '/');
  },

  /**
   * @return [Boolean] whether the error can be retried
   * @api private
   */
  retryableError: function retryableError(error) {
    if (error.code === 'PriorRequestNotComplete' &&
        error.statusCode === 400) {
      return true;
    } else {
      var _super = AWS.Service.prototype.retryableError;
      return _super.call(this, error);
    }
  }
});


/***/ }),

/***/ 26543:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var v4Credentials = __webpack_require__(62660);
var resolveRegionalEndpointsFlag = __webpack_require__(85566);
var s3util = __webpack_require__(35895);
var regionUtil = __webpack_require__(18262);

// Pull in managed upload extension
__webpack_require__(81600);

/**
 * @api private
 */
var operationsWith200StatusCodeError = {
  'completeMultipartUpload': true,
  'copyObject': true,
  'uploadPartCopy': true
};

/**
 * @api private
 */
 var regionRedirectErrorCodes = [
  'AuthorizationHeaderMalformed', // non-head operations on virtual-hosted global bucket endpoints
  'BadRequest', // head operations on virtual-hosted global bucket endpoints
  'PermanentRedirect', // non-head operations on path-style or regional endpoints
  301 // head operations on path-style or regional endpoints
 ];

var OBJECT_LAMBDA_SERVICE = 's3-object-lambda';

AWS.util.update(AWS.S3.prototype, {
  /**
   * @api private
   */
  getSignatureVersion: function getSignatureVersion(request) {
    var defaultApiVersion = this.api.signatureVersion;
    var userDefinedVersion = this._originalConfig ? this._originalConfig.signatureVersion : null;
    var regionDefinedVersion = this.config.signatureVersion;
    var isPresigned = request ? request.isPresigned() : false;
    /*
      1) User defined version specified:
        a) always return user defined version
      2) No user defined version specified:
        a) If not using presigned urls, default to V4
        b) If using presigned urls, default to lowest version the region supports
    */
    if (userDefinedVersion) {
      userDefinedVersion = userDefinedVersion === 'v2' ? 's3' : userDefinedVersion;
      return userDefinedVersion;
    }
    if (isPresigned !== true) {
      defaultApiVersion = 'v4';
    } else if (regionDefinedVersion) {
      defaultApiVersion = regionDefinedVersion;
    }
    return defaultApiVersion;
  },

  /**
   * @api private
   */
  getSigningName: function getSigningName(req) {
    if (req && req.operation === 'writeGetObjectResponse') {
      return OBJECT_LAMBDA_SERVICE;
    }

    var _super = AWS.Service.prototype.getSigningName;
    return (req && req._parsedArn && req._parsedArn.service)
      ? req._parsedArn.service
      : _super.call(this);
  },

  /**
   * @api private
   */
  getSignerClass: function getSignerClass(request) {
    var signatureVersion = this.getSignatureVersion(request);
    return AWS.Signers.RequestSigner.getVersion(signatureVersion);
  },

  /**
   * @api private
   */
  validateService: function validateService() {
    var msg;
    var messages = [];

    // default to us-east-1 when no region is provided
    if (!this.config.region) this.config.region = 'us-east-1';

    if (!this.config.endpoint && this.config.s3BucketEndpoint) {
      messages.push('An endpoint must be provided when configuring ' +
                    '`s3BucketEndpoint` to true.');
    }
    if (messages.length === 1) {
      msg = messages[0];
    } else if (messages.length > 1) {
      msg = 'Multiple configuration errors:\n' + messages.join('\n');
    }
    if (msg) {
      throw AWS.util.error(new Error(),
        {name: 'InvalidEndpoint', message: msg});
    }
  },

  /**
   * @api private
   */
  shouldDisableBodySigning: function shouldDisableBodySigning(request) {
    var signerClass = this.getSignerClass();
    if (this.config.s3DisableBodySigning === true && signerClass === AWS.Signers.V4
        && request.httpRequest.endpoint.protocol === 'https:') {
      return true;
    }
    return false;
  },

  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    var prependListener = true;
    request.addListener('validate', this.validateScheme);
    request.addListener('validate', this.validateBucketName, prependListener);
    request.addListener('validate', this.optInUsEast1RegionalEndpoint, prependListener);

    request.removeListener('validate',
      AWS.EventListeners.Core.VALIDATE_REGION);
    request.addListener('build', this.addContentType);
    request.addListener('build', this.computeContentMd5);
    request.addListener('build', this.computeSseCustomerKeyMd5);
    request.addListener('build', this.populateURI);
    request.addListener('afterBuild', this.addExpect100Continue);
    request.addListener('extractError', this.extractError);
    request.addListener('extractData', AWS.util.hoistPayloadMember);
    request.addListener('extractData', this.extractData);
    request.addListener('extractData', this.extractErrorFrom200Response);
    request.addListener('beforePresign', this.prepareSignedUrl);
    if (this.shouldDisableBodySigning(request))  {
      request.removeListener('afterBuild', AWS.EventListeners.Core.COMPUTE_SHA256);
      request.addListener('afterBuild', this.disableBodySigning);
    }
    //deal with ARNs supplied to Bucket
    if (request.operation !== 'createBucket' && s3util.isArnInParam(request, 'Bucket')) {
      // avoid duplicate parsing in the future
      request._parsedArn = AWS.util.ARN.parse(request.params.Bucket);

      request.removeListener('validate', this.validateBucketName);
      request.removeListener('build', this.populateURI);
      if (request._parsedArn.service === 's3') {
        request.addListener('validate', s3util.validateS3AccessPointArn);
        request.addListener('validate', this.validateArnResourceType);
      } else if (request._parsedArn.service === 's3-outposts') {
        request.addListener('validate', s3util.validateOutpostsAccessPointArn);
        request.addListener('validate', s3util.validateOutpostsArn);
      }
      request.addListener('validate', s3util.validateArnRegion);
      request.addListener('validate', s3util.validateArnAccount);
      request.addListener('validate', s3util.validateArnService);
      request.addListener('build', this.populateUriFromAccessPointArn);
      request.addListener('build', s3util.validatePopulateUriFromArn);
      return;
    }
    //listeners regarding region inference
    request.addListener('validate', this.validateBucketEndpoint);
    request.addListener('validate', this.correctBucketRegionFromCache);
    request.onAsync('extractError', this.requestBucketRegion);
    if (AWS.util.isBrowser()) {
      request.onAsync('retry', this.reqRegionForNetworkingError);
    }
  },

  /**
   * @api private
   */
  validateScheme: function(req) {
    var params = req.params,
        scheme = req.httpRequest.endpoint.protocol,
        sensitive = params.SSECustomerKey || params.CopySourceSSECustomerKey;
    if (sensitive && scheme !== 'https:') {
      var msg = 'Cannot send SSE keys over HTTP. Set \'sslEnabled\'' +
        'to \'true\' in your configuration';
      throw AWS.util.error(new Error(),
        { code: 'ConfigError', message: msg });
    }
  },

  /**
   * @api private
   */
  validateBucketEndpoint: function(req) {
    if (!req.params.Bucket && req.service.config.s3BucketEndpoint) {
      var msg = 'Cannot send requests to root API with `s3BucketEndpoint` set.';
      throw AWS.util.error(new Error(),
        { code: 'ConfigError', message: msg });
    }
  },

  /**
   * Validate resource-type supplied in S3 ARN
   */
  validateArnResourceType: function validateArnResourceType(req) {
    var resource = req._parsedArn.resource;

    if (
      resource.indexOf('accesspoint:') !== 0 &&
      resource.indexOf('accesspoint/') !== 0
    ) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'ARN resource should begin with \'accesspoint/\''
      });
    }
  },

  /**
   * @api private
   */
  validateBucketName: function validateBucketName(req) {
    var service = req.service;
    var signatureVersion = service.getSignatureVersion(req);
    var bucket = req.params && req.params.Bucket;
    var key = req.params && req.params.Key;
    var slashIndex = bucket && bucket.indexOf('/');
    if (bucket && slashIndex >= 0) {
      if (typeof key === 'string' && slashIndex > 0) {
        req.params = AWS.util.copy(req.params);
        // Need to include trailing slash to match sigv2 behavior
        var prefix = bucket.substr(slashIndex + 1) || '';
        req.params.Key = prefix + '/' + key;
        req.params.Bucket = bucket.substr(0, slashIndex);
      } else if (signatureVersion === 'v4') {
        var msg = 'Bucket names cannot contain forward slashes. Bucket: ' + bucket;
        throw AWS.util.error(new Error(),
          { code: 'InvalidBucket', message: msg });
      }
    }
  },

  /**
   * @api private
   */
  isValidAccelerateOperation: function isValidAccelerateOperation(operation) {
    var invalidOperations = [
      'createBucket',
      'deleteBucket',
      'listBuckets'
    ];
    return invalidOperations.indexOf(operation) === -1;
  },

  /**
   * When us-east-1 region endpoint configuration is set, in stead of sending request to
   * global endpoint(e.g. 's3.amazonaws.com'), we will send request to
   * 's3.us-east-1.amazonaws.com'.
   * @api private
   */
  optInUsEast1RegionalEndpoint: function optInUsEast1RegionalEndpoint(req) {
    var service = req.service;
    var config = service.config;
    config.s3UsEast1RegionalEndpoint = resolveRegionalEndpointsFlag(service._originalConfig, {
      env: 'AWS_S3_US_EAST_1_REGIONAL_ENDPOINT',
      sharedConfig: 's3_us_east_1_regional_endpoint',
      clientConfig: 's3UsEast1RegionalEndpoint'
    });
    if (
      !(service._originalConfig || {}).endpoint &&
      req.httpRequest.region === 'us-east-1' &&
      config.s3UsEast1RegionalEndpoint === 'regional' &&
      req.httpRequest.endpoint.hostname.indexOf('s3.amazonaws.com') >= 0
    ) {
      var insertPoint = config.endpoint.indexOf('.amazonaws.com');
      regionalEndpoint = config.endpoint.substring(0, insertPoint) +
        '.us-east-1' + config.endpoint.substring(insertPoint);
      req.httpRequest.updateEndpoint(regionalEndpoint);
    }
  },

  /**
   * S3 prefers dns-compatible bucket names to be moved from the uri path
   * to the hostname as a sub-domain.  This is not possible, even for dns-compat
   * buckets when using SSL and the bucket name contains a dot ('.').  The
   * ssl wildcard certificate is only 1-level deep.
   *
   * @api private
   */
  populateURI: function populateURI(req) {
    var httpRequest = req.httpRequest;
    var b = req.params.Bucket;
    var service = req.service;
    var endpoint = httpRequest.endpoint;
    if (b) {
      if (!service.pathStyleBucketName(b)) {
        if (service.config.useAccelerateEndpoint && service.isValidAccelerateOperation(req.operation)) {
          if (service.config.useDualstack) {
            endpoint.hostname = b + '.s3-accelerate.dualstack.amazonaws.com';
          } else {
            endpoint.hostname = b + '.s3-accelerate.amazonaws.com';
          }
        } else if (!service.config.s3BucketEndpoint) {
          endpoint.hostname =
            b + '.' + endpoint.hostname;
        }

        var port = endpoint.port;
        if (port !== 80 && port !== 443) {
          endpoint.host = endpoint.hostname + ':' +
            endpoint.port;
        } else {
          endpoint.host = endpoint.hostname;
        }

        httpRequest.virtualHostedBucket = b; // needed for signing the request
        service.removeVirtualHostedBucketFromPath(req);
      }
    }
  },

  /**
   * Takes the bucket name out of the path if bucket is virtual-hosted
   *
   * @api private
   */
  removeVirtualHostedBucketFromPath: function removeVirtualHostedBucketFromPath(req) {
    var httpRequest = req.httpRequest;
    var bucket = httpRequest.virtualHostedBucket;
    if (bucket && httpRequest.path) {
      if (req.params && req.params.Key) {
        var encodedS3Key = '/' + AWS.util.uriEscapePath(req.params.Key);
        if (httpRequest.path.indexOf(encodedS3Key) === 0 && (httpRequest.path.length === encodedS3Key.length || httpRequest.path[encodedS3Key.length] === '?')) {
          //path only contains key or path contains only key and querystring
          return;
        }
      }
      httpRequest.path = httpRequest.path.replace(new RegExp('/' + bucket), '');
      if (httpRequest.path[0] !== '/') {
        httpRequest.path = '/' + httpRequest.path;
      }
    }
  },

  /**
   * When user supply an access point ARN in the Bucket parameter, we need to
   * populate the URI according to the ARN.
   */
  populateUriFromAccessPointArn: function populateUriFromAccessPointArn(req) {
    var accessPointArn = req._parsedArn;

    var isOutpostArn = accessPointArn.service === 's3-outposts';
    var isObjectLambdaArn = accessPointArn.service === 's3-object-lambda';

    var outpostsSuffix = isOutpostArn ? '.' + accessPointArn.outpostId: '';
    var serviceName = isOutpostArn ? 's3-outposts': 's3-accesspoint';
    var dualStackSuffix = !isOutpostArn && req.service.config.useDualstack ? '.dualstack' : '';

    var endpoint = req.httpRequest.endpoint;
    var dnsSuffix = regionUtil.getEndpointSuffix(accessPointArn.region);
    var useArnRegion = req.service.config.s3UseArnRegion;

    endpoint.hostname = [
      accessPointArn.accessPoint + '-' + accessPointArn.accountId + outpostsSuffix,
      serviceName + dualStackSuffix,
      useArnRegion ? accessPointArn.region : req.service.config.region,
      dnsSuffix
    ].join('.');

    if (isObjectLambdaArn) {
      // should be in the format: "accesspoint/${accesspointName}"
      var serviceName = 's3-object-lambda';
      var accesspointName = accessPointArn.resource.split('/')[1];
      endpoint.hostname = [
        accesspointName + '-' + accessPointArn.accountId,
        serviceName,
        useArnRegion ? accessPointArn.region : req.service.config.region,
        dnsSuffix
      ].join('.');
    }
    endpoint.host = endpoint.hostname;
    var encodedArn = AWS.util.uriEscape(req.params.Bucket);
    var path = req.httpRequest.path;
    //remove the Bucket value from path
    req.httpRequest.path = path.replace(new RegExp('/' + encodedArn), '');
    if (req.httpRequest.path[0] !== '/') {
      req.httpRequest.path = '/' + req.httpRequest.path;
    }
    req.httpRequest.region = accessPointArn.region; //region used to sign
  },

  /**
   * Adds Expect: 100-continue header if payload is greater-or-equal 1MB
   * @api private
   */
  addExpect100Continue: function addExpect100Continue(req) {
    var len = req.httpRequest.headers['Content-Length'];
    if (AWS.util.isNode() && (len >= 1024 * 1024 || req.params.Body instanceof AWS.util.stream.Stream)) {
      req.httpRequest.headers['Expect'] = '100-continue';
    }
  },

  /**
   * Adds a default content type if none is supplied.
   *
   * @api private
   */
  addContentType: function addContentType(req) {
    var httpRequest = req.httpRequest;
    if (httpRequest.method === 'GET' || httpRequest.method === 'HEAD') {
      // Content-Type is not set in GET/HEAD requests
      delete httpRequest.headers['Content-Type'];
      return;
    }

    if (!httpRequest.headers['Content-Type']) { // always have a Content-Type
      httpRequest.headers['Content-Type'] = 'application/octet-stream';
    }

    var contentType = httpRequest.headers['Content-Type'];
    if (AWS.util.isBrowser()) {
      if (typeof httpRequest.body === 'string' && !contentType.match(/;\s*charset=/)) {
        var charset = '; charset=UTF-8';
        httpRequest.headers['Content-Type'] += charset;
      } else {
        var replaceFn = function(_, prefix, charsetName) {
          return prefix + charsetName.toUpperCase();
        };

        httpRequest.headers['Content-Type'] =
          contentType.replace(/(;\s*charset=)(.+)$/, replaceFn);
      }
    }
  },

  /**
   * @api private
   */
  computableChecksumOperations: {
    putBucketCors: true,
    putBucketLifecycle: true,
    putBucketLifecycleConfiguration: true,
    putBucketTagging: true,
    deleteObjects: true,
    putBucketReplication: true,
    putObjectLegalHold: true,
    putObjectRetention: true,
    putObjectLockConfiguration: true
  },

  /**
   * Checks whether checksums should be computed for the request.
   * If the request requires checksums to be computed, this will always
   * return true, otherwise it depends on whether {AWS.Config.computeChecksums}
   * is set.
   *
   * @param req [AWS.Request] the request to check against
   * @return [Boolean] whether to compute checksums for a request.
   * @api private
   */
  willComputeChecksums: function willComputeChecksums(req) {
    if (this.computableChecksumOperations[req.operation]) return true;
    if (!this.config.computeChecksums) return false;

    // TODO: compute checksums for Stream objects
    if (!AWS.util.Buffer.isBuffer(req.httpRequest.body) &&
        typeof req.httpRequest.body !== 'string') {
      return false;
    }

    var rules = req.service.api.operations[req.operation].input.members;

    // Sha256 signing disabled, and not a presigned url
    if (req.service.shouldDisableBodySigning(req) && !Object.prototype.hasOwnProperty.call(req.httpRequest.headers, 'presigned-expires')) {
      if (rules.ContentMD5 && !req.params.ContentMD5) {
        return true;
      }
    }

    // V4 signer uses SHA256 signatures so only compute MD5 if it is required
    if (req.service.getSignerClass(req) === AWS.Signers.V4) {
      if (rules.ContentMD5 && !rules.ContentMD5.required) return false;
    }

    if (rules.ContentMD5 && !req.params.ContentMD5) return true;
  },

  /**
   * A listener that computes the Content-MD5 and sets it in the header.
   * @see AWS.S3.willComputeChecksums
   * @api private
   */
  computeContentMd5: function computeContentMd5(req) {
    if (req.service.willComputeChecksums(req)) {
      var md5 = AWS.util.crypto.md5(req.httpRequest.body, 'base64');
      req.httpRequest.headers['Content-MD5'] = md5;
    }
  },

  /**
   * @api private
   */
  computeSseCustomerKeyMd5: function computeSseCustomerKeyMd5(req) {
    var keys = {
      SSECustomerKey: 'x-amz-server-side-encryption-customer-key-MD5',
      CopySourceSSECustomerKey: 'x-amz-copy-source-server-side-encryption-customer-key-MD5'
    };
    AWS.util.each(keys, function(key, header) {
      if (req.params[key]) {
        var value = AWS.util.crypto.md5(req.params[key], 'base64');
        req.httpRequest.headers[header] = value;
      }
    });
  },

  /**
   * Returns true if the bucket name should be left in the URI path for
   * a request to S3.  This function takes into account the current
   * endpoint protocol (e.g. http or https).
   *
   * @api private
   */
  pathStyleBucketName: function pathStyleBucketName(bucketName) {
    // user can force path style requests via the configuration
    if (this.config.s3ForcePathStyle) return true;
    if (this.config.s3BucketEndpoint) return false;

    if (s3util.dnsCompatibleBucketName(bucketName)) {
      return (this.config.sslEnabled && bucketName.match(/\./)) ? true : false;
    } else {
      return true; // not dns compatible names must always use path style
    }
  },

  /**
   * For COPY operations, some can be error even with status code 200.
   * SDK treats the response as exception when response body indicates
   * an exception or body is empty.
   *
   * @api private
   */
  extractErrorFrom200Response: function extractErrorFrom200Response(resp) {
    if (!operationsWith200StatusCodeError[resp.request.operation]) return;
    var httpResponse = resp.httpResponse;
    if (httpResponse.body && httpResponse.body.toString().match('<Error>')) {
      // Response body with '<Error>...</Error>' indicates an exception.
      // Get S3 client object. In ManagedUpload, this.service refers to
      // S3 client object.
      resp.data = null;
      var service = this.service ? this.service : this;
      service.extractError(resp);
      throw resp.error;
    } else if (!httpResponse.body || !httpResponse.body.toString().match(/<[\w_]/)) {
      // When body is empty or incomplete, S3 might stop the request on detecting client
      // side aborting the request.
      resp.data = null;
      throw AWS.util.error(new Error(), {
        code: 'InternalError',
        message: 'S3 aborted request'
      });
    }
  },

  /**
   * @return [Boolean] whether the error can be retried
   * @api private
   */
  retryableError: function retryableError(error, request) {
    if (operationsWith200StatusCodeError[request.operation] &&
        error.statusCode === 200) {
      return true;
    } else if (request._requestRegionForBucket &&
        request.service.bucketRegionCache[request._requestRegionForBucket]) {
      return false;
    } else if (error && error.code === 'RequestTimeout') {
      return true;
    } else if (error &&
        regionRedirectErrorCodes.indexOf(error.code) != -1 &&
        error.region && error.region != request.httpRequest.region) {
      request.httpRequest.region = error.region;
      if (error.statusCode === 301) {
        request.service.updateReqBucketRegion(request);
      }
      return true;
    } else {
      var _super = AWS.Service.prototype.retryableError;
      return _super.call(this, error, request);
    }
  },

  /**
   * Updates httpRequest with region. If region is not provided, then
   * the httpRequest will be updated based on httpRequest.region
   *
   * @api private
   */
  updateReqBucketRegion: function updateReqBucketRegion(request, region) {
    var httpRequest = request.httpRequest;
    if (typeof region === 'string' && region.length) {
      httpRequest.region = region;
    }
    if (!httpRequest.endpoint.host.match(/s3(?!-accelerate).*\.amazonaws\.com$/)) {
      return;
    }
    var service = request.service;
    var s3Config = service.config;
    var s3BucketEndpoint = s3Config.s3BucketEndpoint;
    if (s3BucketEndpoint) {
      delete s3Config.s3BucketEndpoint;
    }
    var newConfig = AWS.util.copy(s3Config);
    delete newConfig.endpoint;
    newConfig.region = httpRequest.region;

    httpRequest.endpoint = (new AWS.S3(newConfig)).endpoint;
    service.populateURI(request);
    s3Config.s3BucketEndpoint = s3BucketEndpoint;
    httpRequest.headers.Host = httpRequest.endpoint.host;

    if (request._asm.currentState === 'validate') {
      request.removeListener('build', service.populateURI);
      request.addListener('build', service.removeVirtualHostedBucketFromPath);
    }
  },

  /**
   * Provides a specialized parser for getBucketLocation -- all other
   * operations are parsed by the super class.
   *
   * @api private
   */
  extractData: function extractData(resp) {
    var req = resp.request;
    if (req.operation === 'getBucketLocation') {
      var match = resp.httpResponse.body.toString().match(/>(.+)<\/Location/);
      delete resp.data['_'];
      if (match) {
        resp.data.LocationConstraint = match[1];
      } else {
        resp.data.LocationConstraint = '';
      }
    }
    var bucket = req.params.Bucket || null;
    if (req.operation === 'deleteBucket' && typeof bucket === 'string' && !resp.error) {
      req.service.clearBucketRegionCache(bucket);
    } else {
      var headers = resp.httpResponse.headers || {};
      var region = headers['x-amz-bucket-region'] || null;
      if (!region && req.operation === 'createBucket' && !resp.error) {
        var createBucketConfiguration = req.params.CreateBucketConfiguration;
        if (!createBucketConfiguration) {
          region = 'us-east-1';
        } else if (createBucketConfiguration.LocationConstraint === 'EU') {
          region = 'eu-west-1';
        } else {
          region = createBucketConfiguration.LocationConstraint;
        }
      }
      if (region) {
          if (bucket && region !== req.service.bucketRegionCache[bucket]) {
            req.service.bucketRegionCache[bucket] = region;
          }
      }
    }
    req.service.extractRequestIds(resp);
  },

  /**
   * Extracts an error object from the http response.
   *
   * @api private
   */
  extractError: function extractError(resp) {
    var codes = {
      304: 'NotModified',
      403: 'Forbidden',
      400: 'BadRequest',
      404: 'NotFound'
    };

    var req = resp.request;
    var code = resp.httpResponse.statusCode;
    var body = resp.httpResponse.body || '';

    var headers = resp.httpResponse.headers || {};
    var region = headers['x-amz-bucket-region'] || null;
    var bucket = req.params.Bucket || null;
    var bucketRegionCache = req.service.bucketRegionCache;
    if (region && bucket && region !== bucketRegionCache[bucket]) {
      bucketRegionCache[bucket] = region;
    }

    var cachedRegion;
    if (codes[code] && body.length === 0) {
      if (bucket && !region) {
        cachedRegion = bucketRegionCache[bucket] || null;
        if (cachedRegion !== req.httpRequest.region) {
          region = cachedRegion;
        }
      }
      resp.error = AWS.util.error(new Error(), {
        code: codes[code],
        message: null,
        region: region
      });
    } else {
      var data = new AWS.XML.Parser().parse(body.toString());

      if (data.Region && !region) {
        region = data.Region;
        if (bucket && region !== bucketRegionCache[bucket]) {
          bucketRegionCache[bucket] = region;
        }
      } else if (bucket && !region && !data.Region) {
        cachedRegion = bucketRegionCache[bucket] || null;
        if (cachedRegion !== req.httpRequest.region) {
          region = cachedRegion;
        }
      }

      resp.error = AWS.util.error(new Error(), {
        code: data.Code || code,
        message: data.Message || null,
        region: region
      });
    }
    req.service.extractRequestIds(resp);
  },

  /**
   * If region was not obtained synchronously, then send async request
   * to get bucket region for errors resulting from wrong region.
   *
   * @api private
   */
  requestBucketRegion: function requestBucketRegion(resp, done) {
    var error = resp.error;
    var req = resp.request;
    var bucket = req.params.Bucket || null;

    if (!error || !bucket || error.region || req.operation === 'listObjects' ||
        (AWS.util.isNode() && req.operation === 'headBucket') ||
        (error.statusCode === 400 && req.operation !== 'headObject') ||
        regionRedirectErrorCodes.indexOf(error.code) === -1) {
      return done();
    }
    var reqOperation = AWS.util.isNode() ? 'headBucket' : 'listObjects';
    var reqParams = {Bucket: bucket};
    if (reqOperation === 'listObjects') reqParams.MaxKeys = 0;
    var regionReq = req.service[reqOperation](reqParams);
    regionReq._requestRegionForBucket = bucket;
    regionReq.send(function() {
      var region = req.service.bucketRegionCache[bucket] || null;
      error.region = region;
      done();
    });
  },

   /**
   * For browser only. If NetworkingError received, will attempt to obtain
   * the bucket region.
   *
   * @api private
   */
   reqRegionForNetworkingError: function reqRegionForNetworkingError(resp, done) {
    if (!AWS.util.isBrowser()) {
      return done();
    }
    var error = resp.error;
    var request = resp.request;
    var bucket = request.params.Bucket;
    if (!error || error.code !== 'NetworkingError' || !bucket ||
        request.httpRequest.region === 'us-east-1') {
      return done();
    }
    var service = request.service;
    var bucketRegionCache = service.bucketRegionCache;
    var cachedRegion = bucketRegionCache[bucket] || null;

    if (cachedRegion && cachedRegion !== request.httpRequest.region) {
      service.updateReqBucketRegion(request, cachedRegion);
      done();
    } else if (!s3util.dnsCompatibleBucketName(bucket)) {
      service.updateReqBucketRegion(request, 'us-east-1');
      if (bucketRegionCache[bucket] !== 'us-east-1') {
        bucketRegionCache[bucket] = 'us-east-1';
      }
      done();
    } else if (request.httpRequest.virtualHostedBucket) {
      var getRegionReq = service.listObjects({Bucket: bucket, MaxKeys: 0});
      service.updateReqBucketRegion(getRegionReq, 'us-east-1');
      getRegionReq._requestRegionForBucket = bucket;

      getRegionReq.send(function() {
        var region = service.bucketRegionCache[bucket] || null;
        if (region && region !== request.httpRequest.region) {
          service.updateReqBucketRegion(request, region);
        }
        done();
      });
    } else {
      // DNS-compatible path-style
      // (s3ForcePathStyle or bucket name with dot over https)
      // Cannot obtain region information for this case
      done();
    }
   },

  /**
   * Cache for bucket region.
   *
   * @api private
   */
   bucketRegionCache: {},

  /**
   * Clears bucket region cache.
   *
   * @api private
   */
   clearBucketRegionCache: function(buckets) {
    var bucketRegionCache = this.bucketRegionCache;
    if (!buckets) {
      buckets = Object.keys(bucketRegionCache);
    } else if (typeof buckets === 'string') {
      buckets = [buckets];
    }
    for (var i = 0; i < buckets.length; i++) {
      delete bucketRegionCache[buckets[i]];
    }
    return bucketRegionCache;
   },

   /**
    * Corrects request region if bucket's cached region is different
    *
    * @api private
    */
  correctBucketRegionFromCache: function correctBucketRegionFromCache(req) {
    var bucket = req.params.Bucket || null;
    if (bucket) {
      var service = req.service;
      var requestRegion = req.httpRequest.region;
      var cachedRegion = service.bucketRegionCache[bucket];
      if (cachedRegion && cachedRegion !== requestRegion) {
        service.updateReqBucketRegion(req, cachedRegion);
      }
    }
  },

  /**
   * Extracts S3 specific request ids from the http response.
   *
   * @api private
   */
  extractRequestIds: function extractRequestIds(resp) {
    var extendedRequestId = resp.httpResponse.headers ? resp.httpResponse.headers['x-amz-id-2'] : null;
    var cfId = resp.httpResponse.headers ? resp.httpResponse.headers['x-amz-cf-id'] : null;
    resp.extendedRequestId = extendedRequestId;
    resp.cfId = cfId;

    if (resp.error) {
      resp.error.requestId = resp.requestId || null;
      resp.error.extendedRequestId = extendedRequestId;
      resp.error.cfId = cfId;
    }
  },

  /**
   * Get a pre-signed URL for a given operation name.
   *
   * @note You must ensure that you have static or previously resolved
   *   credentials if you call this method synchronously (with no callback),
   *   otherwise it may not properly sign the request. If you cannot guarantee
   *   this (you are using an asynchronous credential provider, i.e., EC2
   *   IAM roles), you should always call this method with an asynchronous
   *   callback.
   * @note Not all operation parameters are supported when using pre-signed
   *   URLs. Certain parameters, such as `SSECustomerKey`, `ACL`, `Expires`,
   *   `ContentLength`, or `Tagging` must be provided as headers when sending a
   *   request. If you are using pre-signed URLs to upload from a browser and
   *   need to use these fields, see {createPresignedPost}.
   * @note The default signer allows altering the request by adding corresponding
   *   headers to set some parameters (e.g. Range) and these added parameters
   *   won't be signed. You must use signatureVersion v4 to to include these
   *   parameters in the signed portion of the URL and enforce exact matching
   *   between headers and signed params in the URL.
   * @note This operation cannot be used with a promise. See note above regarding
   *   asynchronous credentials and use with a callback.
   * @param operation [String] the name of the operation to call
   * @param params [map] parameters to pass to the operation. See the given
   *   operation for the expected operation parameters. In addition, you can
   *   also pass the "Expires" parameter to inform S3 how long the URL should
   *   work for.
   * @option params Expires [Integer] (900) the number of seconds to expire
   *   the pre-signed URL operation in. Defaults to 15 minutes.
   * @param callback [Function] if a callback is provided, this function will
   *   pass the URL as the second parameter (after the error parameter) to
   *   the callback function.
   * @return [String] if called synchronously (with no callback), returns the
   *   signed URL.
   * @return [null] nothing is returned if a callback is provided.
   * @example Pre-signing a getObject operation (synchronously)
   *   var params = {Bucket: 'bucket', Key: 'key'};
   *   var url = s3.getSignedUrl('getObject', params);
   *   console.log('The URL is', url);
   * @example Pre-signing a putObject (asynchronously)
   *   var params = {Bucket: 'bucket', Key: 'key'};
   *   s3.getSignedUrl('putObject', params, function (err, url) {
   *     console.log('The URL is', url);
   *   });
   * @example Pre-signing a putObject operation with a specific payload
   *   var params = {Bucket: 'bucket', Key: 'key', Body: 'body'};
   *   var url = s3.getSignedUrl('putObject', params);
   *   console.log('The URL is', url);
   * @example Passing in a 1-minute expiry time for a pre-signed URL
   *   var params = {Bucket: 'bucket', Key: 'key', Expires: 60};
   *   var url = s3.getSignedUrl('getObject', params);
   *   console.log('The URL is', url); // expires in 60 seconds
   */
  getSignedUrl: function getSignedUrl(operation, params, callback) {
    params = AWS.util.copy(params || {});
    var expires = params.Expires || 900;

    if (typeof expires !== 'number') {
      throw AWS.util.error(new Error(),
        { code: 'InvalidParameterException', message: 'The expiration must be a number, received ' + typeof expires });
    }

    delete params.Expires; // we can't validate this
    var request = this.makeRequest(operation, params);

    if (callback) {
      AWS.util.defer(function() {
        request.presign(expires, callback);
      });
    } else {
      return request.presign(expires, callback);
    }
  },

  /**
   * @!method  getSignedUrlPromise()
   *   Returns a 'thenable' promise that will be resolved with a pre-signed URL
   *   for a given operation name.
   *
   *   Two callbacks can be provided to the `then` method on the returned promise.
   *   The first callback will be called if the promise is fulfilled, and the second
   *   callback will be called if the promise is rejected.
   *   @note Not all operation parameters are supported when using pre-signed
   *      URLs. Certain parameters, such as `SSECustomerKey`, `ACL`, `Expires`,
   *      `ContentLength`, or `Tagging` must be provided as headers when sending a
   *      request. If you are using pre-signed URLs to upload from a browser and
   *      need to use these fields, see {createPresignedPost}.
   *   @param operation [String] the name of the operation to call
   *   @param params [map] parameters to pass to the operation. See the given
   *      operation for the expected operation parameters. In addition, you can
   *      also pass the "Expires" parameter to inform S3 how long the URL should
   *      work for.
   *   @option params Expires [Integer] (900) the number of seconds to expire
   *      the pre-signed URL operation in. Defaults to 15 minutes.
   *   @callback fulfilledCallback function(url)
   *     Called if the promise is fulfilled.
   *     @param url [String] the signed url
   *   @callback rejectedCallback function(err)
   *     Called if the promise is rejected.
   *     @param err [Error] if an error occurred, this value will be filled
   *   @return [Promise] A promise that represents the state of the `refresh` call.
   *   @example Pre-signing a getObject operation
   *      var params = {Bucket: 'bucket', Key: 'key'};
   *      var promise = s3.getSignedUrlPromise('getObject', params);
   *      promise.then(function(url) {
   *        console.log('The URL is', url);
   *      }, function(err) { ... });
   *   @example Pre-signing a putObject operation with a specific payload
   *      var params = {Bucket: 'bucket', Key: 'key', Body: 'body'};
   *      var promise = s3.getSignedUrlPromise('putObject', params);
   *      promise.then(function(url) {
   *        console.log('The URL is', url);
   *      }, function(err) { ... });
   *   @example Passing in a 1-minute expiry time for a pre-signed URL
   *      var params = {Bucket: 'bucket', Key: 'key', Expires: 60};
   *      var promise = s3.getSignedUrlPromise('getObject', params);
   *      promise.then(function(url) {
   *        console.log('The URL is', url);
   *      }, function(err) { ... });
   */

  /**
   * Get a pre-signed POST policy to support uploading to S3 directly from an
   * HTML form.
   *
   * @param params [map]
   * @option params Bucket [String]     The bucket to which the post should be
   *                                    uploaded
   * @option params Expires [Integer]   (3600) The number of seconds for which
   *                                    the presigned policy should be valid.
   * @option params Conditions [Array]  An array of conditions that must be met
   *                                    for the presigned policy to allow the
   *                                    upload. This can include required tags,
   *                                    the accepted range for content lengths,
   *                                    etc.
   * @see http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html
   * @option params Fields [map]        Fields to include in the form. All
   *                                    values passed in as fields will be
   *                                    signed as exact match conditions.
   * @param callback [Function]
   *
   * @note All fields passed in when creating presigned post data will be signed
   *   as exact match conditions. Any fields that will be interpolated by S3
   *   must be added to the fields hash after signing, and an appropriate
   *   condition for such fields must be explicitly added to the Conditions
   *   array passed to this function before signing.
   *
   * @example Presiging post data with a known key
   *   var params = {
   *     Bucket: 'bucket',
   *     Fields: {
   *       key: 'key'
   *     }
   *   };
   *   s3.createPresignedPost(params, function(err, data) {
   *     if (err) {
   *       console.error('Presigning post data encountered an error', err);
   *     } else {
   *       console.log('The post data is', data);
   *     }
   *   });
   *
   * @example Presigning post data with an interpolated key
   *   var params = {
   *     Bucket: 'bucket',
   *     Conditions: [
   *       ['starts-with', '$key', 'path/to/uploads/']
   *     ]
   *   };
   *   s3.createPresignedPost(params, function(err, data) {
   *     if (err) {
   *       console.error('Presigning post data encountered an error', err);
   *     } else {
   *       data.Fields.key = 'path/to/uploads/${filename}';
   *       console.log('The post data is', data);
   *     }
   *   });
   *
   * @note You must ensure that you have static or previously resolved
   *   credentials if you call this method synchronously (with no callback),
   *   otherwise it may not properly sign the request. If you cannot guarantee
   *   this (you are using an asynchronous credential provider, i.e., EC2
   *   IAM roles), you should always call this method with an asynchronous
   *   callback.
   *
   * @return [map]  If called synchronously (with no callback), returns a hash
   *                with the url to set as the form action and a hash of fields
   *                to include in the form.
   * @return [null] Nothing is returned if a callback is provided.
   *
   * @callback callback function (err, data)
   *  @param err [Error] the error object returned from the policy signer
   *  @param data [map] The data necessary to construct an HTML form
   *  @param data.url [String] The URL to use as the action of the form
   *  @param data.fields [map] A hash of fields that must be included in the
   *                           form for the upload to succeed. This hash will
   *                           include the signed POST policy, your access key
   *                           ID and security token (if present), etc. These
   *                           may be safely included as input elements of type
   *                           'hidden.'
   */
  createPresignedPost: function createPresignedPost(params, callback) {
    if (typeof params === 'function' && callback === undefined) {
      callback = params;
      params = null;
    }

    params = AWS.util.copy(params || {});
    var boundParams = this.config.params || {};
    var bucket = params.Bucket || boundParams.Bucket,
      self = this,
      config = this.config,
      endpoint = AWS.util.copy(this.endpoint);
    if (!config.s3BucketEndpoint) {
      endpoint.pathname = '/' + bucket;
    }

    function finalizePost() {
      return {
        url: AWS.util.urlFormat(endpoint),
        fields: self.preparePostFields(
          config.credentials,
          config.region,
          bucket,
          params.Fields,
          params.Conditions,
          params.Expires
        )
      };
    }

    if (callback) {
      config.getCredentials(function (err) {
        if (err) {
          callback(err);
        } else {
          try {
            callback(null, finalizePost());
          } catch (err) {
            callback(err);
          }
        }
      });
    } else {
      return finalizePost();
    }
  },

  /**
   * @api private
   */
  preparePostFields: function preparePostFields(
    credentials,
    region,
    bucket,
    fields,
    conditions,
    expiresInSeconds
  ) {
    var now = this.getSkewCorrectedDate();
    if (!credentials || !region || !bucket) {
      throw new Error('Unable to create a POST object policy without a bucket,'
        + ' region, and credentials');
    }
    fields = AWS.util.copy(fields || {});
    conditions = (conditions || []).slice(0);
    expiresInSeconds = expiresInSeconds || 3600;

    var signingDate = AWS.util.date.iso8601(now).replace(/[:\-]|\.\d{3}/g, '');
    var shortDate = signingDate.substr(0, 8);
    var scope = v4Credentials.createScope(shortDate, region, 's3');
    var credential = credentials.accessKeyId + '/' + scope;

    fields['bucket'] = bucket;
    fields['X-Amz-Algorithm'] = 'AWS4-HMAC-SHA256';
    fields['X-Amz-Credential'] = credential;
    fields['X-Amz-Date'] = signingDate;
    if (credentials.sessionToken) {
      fields['X-Amz-Security-Token'] = credentials.sessionToken;
    }
    for (var field in fields) {
      if (fields.hasOwnProperty(field)) {
        var condition = {};
        condition[field] = fields[field];
        conditions.push(condition);
      }
    }

    fields.Policy = this.preparePostPolicy(
      new Date(now.valueOf() + expiresInSeconds * 1000),
      conditions
    );
    fields['X-Amz-Signature'] = AWS.util.crypto.hmac(
      v4Credentials.getSigningKey(credentials, shortDate, region, 's3', true),
      fields.Policy,
      'hex'
    );

    return fields;
  },

  /**
   * @api private
   */
  preparePostPolicy: function preparePostPolicy(expiration, conditions) {
    return AWS.util.base64.encode(JSON.stringify({
      expiration: AWS.util.date.iso8601(expiration),
      conditions: conditions
    }));
  },

  /**
   * @api private
   */
  prepareSignedUrl: function prepareSignedUrl(request) {
    request.addListener('validate', request.service.noPresignedContentLength);
    request.removeListener('build', request.service.addContentType);
    if (!request.params.Body) {
      // no Content-MD5/SHA-256 if body is not provided
      request.removeListener('build', request.service.computeContentMd5);
    } else {
      request.addListener('afterBuild', AWS.EventListeners.Core.COMPUTE_SHA256);
    }
  },

  /**
   * @api private
   * @param request
   */
  disableBodySigning: function disableBodySigning(request) {
    var headers = request.httpRequest.headers;
    // Add the header to anything that isn't a presigned url, unless that presigned url had a body defined
    if (!Object.prototype.hasOwnProperty.call(headers, 'presigned-expires')) {
      headers['X-Amz-Content-Sha256'] = 'UNSIGNED-PAYLOAD';
    }
  },

  /**
   * @api private
   */
  noPresignedContentLength: function noPresignedContentLength(request) {
    if (request.params.ContentLength !== undefined) {
      throw AWS.util.error(new Error(), {code: 'UnexpectedParameter',
        message: 'ContentLength is not supported in pre-signed URLs.'});
    }
  },

  createBucket: function createBucket(params, callback) {
    // When creating a bucket *outside* the classic region, the location
    // constraint must be set for the bucket and it must match the endpoint.
    // This chunk of code will set the location constraint param based
    // on the region (when possible), but it will not override a passed-in
    // location constraint.
    if (typeof params === 'function' || !params) {
      callback = callback || params;
      params = {};
    }
    var hostname = this.endpoint.hostname;
    // copy params so that appending keys does not unintentioinallly
    // mutate params object argument passed in by user
    var copiedParams = AWS.util.copy(params);

    if (hostname !== this.api.globalEndpoint && !params.CreateBucketConfiguration) {
      copiedParams.CreateBucketConfiguration = { LocationConstraint: this.config.region };
    }
    return this.makeRequest('createBucket', copiedParams, callback);
  },

  writeGetObjectResponse: function writeGetObjectResponse(params, callback) {

    var request = this.makeRequest('writeGetObjectResponse', AWS.util.copy(params), callback);
    var hostname = this.endpoint.hostname;
    if (hostname.indexOf(this.config.region) !== -1) {
      // hostname specifies a region already
      hostname = hostname.replace('s3.', OBJECT_LAMBDA_SERVICE + '.');
    } else {
      // Hostname doesn't have a region.
      // Object Lambda requires an explicit region.
      hostname = hostname.replace('s3.', OBJECT_LAMBDA_SERVICE + '.' + this.config.region + '.');
    }

    request.httpRequest.endpoint = new AWS.Endpoint(hostname, this.config);
    return request;
  },

  /**
   * @see AWS.S3.ManagedUpload
   * @overload upload(params = {}, [options], [callback])
   *   Uploads an arbitrarily sized buffer, blob, or stream, using intelligent
   *   concurrent handling of parts if the payload is large enough. You can
   *   configure the concurrent queue size by setting `options`. Note that this
   *   is the only operation for which the SDK can retry requests with stream
   *   bodies.
   *
   *   @param (see AWS.S3.putObject)
   *   @option (see AWS.S3.ManagedUpload.constructor)
   *   @return [AWS.S3.ManagedUpload] the managed upload object that can call
   *     `send()` or track progress.
   *   @example Uploading a stream object
   *     var params = {Bucket: 'bucket', Key: 'key', Body: stream};
   *     s3.upload(params, function(err, data) {
   *       console.log(err, data);
   *     });
   *   @example Uploading a stream with concurrency of 1 and partSize of 10mb
   *     var params = {Bucket: 'bucket', Key: 'key', Body: stream};
   *     var options = {partSize: 10 * 1024 * 1024, queueSize: 1};
   *     s3.upload(params, options, function(err, data) {
   *       console.log(err, data);
   *     });
   * @callback callback function(err, data)
   *   @param err [Error] an error or null if no error occurred.
   *   @param data [map] The response data from the successful upload:
   *   @param data.Location [String] the URL of the uploaded object
   *   @param data.ETag [String] the ETag of the uploaded object
   *   @param data.Bucket [String]  the bucket to which the object was uploaded
   *   @param data.Key [String] the key to which the object was uploaded
   */
  upload: function upload(params, options, callback) {
    if (typeof options === 'function' && callback === undefined) {
      callback = options;
      options = null;
    }

    options = options || {};
    options = AWS.util.merge(options || {}, {service: this, params: params});

    var uploader = new AWS.S3.ManagedUpload(options);
    if (typeof callback === 'function') uploader.send(callback);
    return uploader;
  }
});

/**
 * @api private
 */
AWS.S3.addPromisesToClass = function addPromisesToClass(PromiseDependency) {
  this.prototype.getSignedUrlPromise = AWS.util.promisifyMethod('getSignedUrl', PromiseDependency);
};

/**
 * @api private
 */
AWS.S3.deletePromisesFromClass = function deletePromisesFromClass() {
  delete this.prototype.getSignedUrlPromise;
};

AWS.util.addPromises(AWS.S3);


/***/ }),

/***/ 71207:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var s3util = __webpack_require__(35895);
var regionUtil = __webpack_require__(18262);

AWS.util.update(AWS.S3Control.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('extractError', this.extractHostId);
    request.addListener('extractData', this.extractHostId);
    request.addListener('validate', this.validateAccountId);

    var isArnInBucket = s3util.isArnInParam(request, 'Bucket');
    var isArnInName = s3util.isArnInParam(request, 'Name');

    if (isArnInBucket) {
      request._parsedArn = AWS.util.ARN.parse(request.params['Bucket']);
      request.addListener('validate', this.validateOutpostsBucketArn);
      request.addListener('validate', s3util.validateOutpostsArn);
      request.addListener('afterBuild', this.addOutpostIdHeader);
    } else if (isArnInName) {
      request._parsedArn = AWS.util.ARN.parse(request.params['Name']);
      request.addListener('validate', s3util.validateOutpostsAccessPointArn);
      request.addListener('validate', s3util.validateOutpostsArn);
      request.addListener('afterBuild', this.addOutpostIdHeader);
    }

    if (isArnInBucket || isArnInName) {
      request.addListener('validate', s3util.validateArnRegion);
      request.addListener('validate', this.validateArnAccountWithParams, true);
      request.addListener('validate', s3util.validateArnAccount);
      request.addListener('validate', s3util.validateArnService);
      request.addListener('build', this.populateParamFromArn, true);
      request.addListener('build', this.populateUriFromArn);
      request.addListener('build', s3util.validatePopulateUriFromArn);
    }

    if (request.params.OutpostId &&
        (request.operation === 'createBucket' ||
          request.operation === 'listRegionalBuckets')) {
      request.addListener('build', this.populateEndpointForOutpostId);
    }
  },

  /**
   * Adds outpostId header
   */
  addOutpostIdHeader: function addOutpostIdHeader(req) {
    req.httpRequest.headers['x-amz-outpost-id'] = req._parsedArn.outpostId;
  },

  /**
   * Validate Outposts ARN supplied in Bucket parameter is a valid bucket name
   */
  validateOutpostsBucketArn: function validateOutpostsBucketArn(req) {
    var parsedArn = req._parsedArn;

    //can be ':' or '/'
    var delimiter = parsedArn.resource['outpost'.length];

    if (parsedArn.resource.split(delimiter).length !== 4) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Bucket ARN should have two resources outpost/{outpostId}/bucket/{accesspointName}'
      });
    }

    var bucket = parsedArn.resource.split(delimiter)[3];
    if (!s3util.dnsCompatibleBucketName(bucket) || bucket.match(/\./)) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Bucket ARN is not DNS compatible. Got ' + bucket
      });
    }

    //set parsed valid bucket
    req._parsedArn.bucket = bucket;
  },

  /**
   * @api private
   */
  populateParamFromArn: function populateParamFromArn(req) {
    var parsedArn = req._parsedArn;
    if (s3util.isArnInParam(req, 'Bucket')) {
      req.params.Bucket = parsedArn.bucket;
    } else if (s3util.isArnInParam(req, 'Name')) {
      req.params.Name = parsedArn.accessPoint;
    }
  },

  /**
   * Populate URI according to the ARN
   */
  populateUriFromArn: function populateUriFromArn(req) {
    var parsedArn = req._parsedArn;

    var endpoint = req.httpRequest.endpoint;
    var useArnRegion = req.service.config.s3UseArnRegion;

    endpoint.hostname = [
      's3-outposts',
      useArnRegion ? parsedArn.region : req.service.config.region,
      'amazonaws.com'
    ].join('.');
    endpoint.host = endpoint.hostname;
  },

  /**
   * @api private
   */
  populateEndpointForOutpostId: function populateEndpointForOutpostId(req) {
    var endpoint = req.httpRequest.endpoint;
    endpoint.hostname = [
      's3-outposts',
      req.service.config.region,
      'amazonaws.com'
    ].join('.');
    endpoint.host = endpoint.hostname;
  },

  /**
   * @api private
   */
  extractHostId: function(response) {
    var hostId = response.httpResponse.headers ? response.httpResponse.headers['x-amz-id-2'] : null;
    response.extendedRequestId = hostId;
    if (response.error) {
      response.error.extendedRequestId = hostId;
    }
  },

  /**
   * @api private
   */
  validateArnAccountWithParams: function validateArnAccountWithParams(req) {
    var params = req.params;
    var inputModel = req.service.api.operations[req.operation].input;
    if (inputModel.members.AccountId) {
      var parsedArn = req._parsedArn;
      if (parsedArn.accountId) {
        if (params.AccountId) {
          if (params.AccountId !== parsedArn.accountId) {
            throw AWS.util.error(
              new Error(),
              {code: 'ValidationError', message: 'AccountId in ARN and request params should be same.'}
            );
          }
        } else {
          // Store accountId from ARN in params
          params.AccountId = parsedArn.accountId;
        }
      }
    }
  },

  /**
   * @api private
   */
  validateAccountId: function(request) {
    var params = request.params;
    if (!Object.prototype.hasOwnProperty.call(params, 'AccountId')) return;
    var accountId = params.AccountId;
    //validate type
    if (typeof accountId !== 'string') {
      throw AWS.util.error(
        new Error(),
        {code: 'ValidationError', message: 'AccountId must be a string.'}
      );
    }
    //validate length
    if (accountId.length < 1 || accountId.length > 63) {
      throw AWS.util.error(
        new Error(),
        {code: 'ValidationError', message: 'AccountId length should be between 1 to 63 characters, inclusive.'}
      );
    }
    //validate pattern
    var hostPattern = /^[a-zA-Z0-9]{1}$|^[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]$/;
    if (!hostPattern.test(accountId)) {
      throw AWS.util.error(new Error(),
        {code: 'ValidationError', message: 'AccountId should be hostname compatible. AccountId: ' + accountId});
    }
  },

  /**
   * @api private
   */
  getSigningName: function getSigningName(req) {
    var _super = AWS.Service.prototype.getSigningName;
    if (req && req._parsedArn && req._parsedArn.service) {
      return req._parsedArn.service;
    } else if (req.params.OutpostId &&
      (req.operation === 'createBucket' ||
        req.operation === 'listRegionalBuckets')) {
      return 's3-outposts';
    } else {
      return _super.call(this, req);
    }
  },
});


/***/ }),

/***/ 35895:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var regionUtil = __webpack_require__(18262);

var s3util = {
  /**
   * @api private
   */
  isArnInParam: function isArnInParam(req, paramName) {
    var inputShape = (req.service.api.operations[req.operation] || {}).input || {};
    var inputMembers = inputShape.members || {};
    if (!req.params[paramName] || !inputMembers[paramName]) return false;
    return AWS.util.ARN.validate(req.params[paramName]);
  },

  /**
   * Validate service component from ARN supplied in Bucket parameter
   */
  validateArnService: function validateArnService(req) {
    var parsedArn = req._parsedArn;

    if (parsedArn.service !== 's3'
      && parsedArn.service !== 's3-outposts'
      && parsedArn.service !== 's3-object-lambda') {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'expect \'s3\' or \'s3-outposts\' or \'s3-object-lambda\' in ARN service component'
      });
    }
  },

  /**
   * Validate account ID from ARN supplied in Bucket parameter is a valid account
   */
  validateArnAccount: function validateArnAccount(req) {
    var parsedArn = req._parsedArn;

    if (!/[0-9]{12}/.exec(parsedArn.accountId)) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'ARN accountID does not match regex "[0-9]{12}"'
      });
    }
  },

  /**
   * Validate ARN supplied in Bucket parameter is a valid access point ARN
   */
  validateS3AccessPointArn: function validateS3AccessPointArn(req) {
    var parsedArn = req._parsedArn;

    //can be ':' or '/'
    var delimiter = parsedArn.resource['accesspoint'.length];

    if (parsedArn.resource.split(delimiter).length !== 2) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Access Point ARN should have one resource accesspoint/{accesspointName}'
      });
    }

    var accessPoint = parsedArn.resource.split(delimiter)[1];
    var accessPointPrefix = accessPoint + '-' + parsedArn.accountId;
    if (!s3util.dnsCompatibleBucketName(accessPointPrefix) || accessPointPrefix.match(/\./)) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Access point resource in ARN is not DNS compatible. Got ' + accessPoint
      });
    }

    //set parsed valid access point
    req._parsedArn.accessPoint = accessPoint;
  },

  /**
   * Validate Outposts ARN supplied in Bucket parameter is a valid outposts ARN
   */
  validateOutpostsArn: function validateOutpostsArn(req) {
    var parsedArn = req._parsedArn;

    if (
      parsedArn.resource.indexOf('outpost:') !== 0 &&
      parsedArn.resource.indexOf('outpost/') !== 0
    ) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'ARN resource should begin with \'outpost/\''
      });
    }

    //can be ':' or '/'
    var delimiter = parsedArn.resource['outpost'.length];
    var outpostId = parsedArn.resource.split(delimiter)[1];
    var dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);
    if (!dnsHostRegex.test(outpostId)) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Outpost resource in ARN is not DNS compatible. Got ' + outpostId
      });
    }
    req._parsedArn.outpostId = outpostId;
  },

  /**
   * Validate Outposts ARN supplied in Bucket parameter is a valid outposts ARN
   */
  validateOutpostsAccessPointArn: function validateOutpostsAccessPointArn(req) {
    var parsedArn = req._parsedArn;

    //can be ':' or '/'
    var delimiter = parsedArn.resource['outpost'.length];

    if (parsedArn.resource.split(delimiter).length !== 4) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Outposts ARN should have two resources outpost/{outpostId}/accesspoint/{accesspointName}'
      });
    }

    var accessPoint = parsedArn.resource.split(delimiter)[3];
    var accessPointPrefix = accessPoint + '-' + parsedArn.accountId;
    if (!s3util.dnsCompatibleBucketName(accessPointPrefix) || accessPointPrefix.match(/\./)) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'Access point resource in ARN is not DNS compatible. Got ' + accessPoint
      });
    }

    //set parsed valid access point
    req._parsedArn.accessPoint = accessPoint;
  },

  /**
   * Validate region field in ARN supplied in Bucket parameter is a valid region
   */
  validateArnRegion: function validateArnRegion(req) {
    var useArnRegion = s3util.loadUseArnRegionConfig(req);
    var regionFromArn = req._parsedArn.region;
    var clientRegion = req.service.config.region;

    if (!regionFromArn) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidARN',
        message: 'ARN region is empty'
      });
    }

    if (
      clientRegion.indexOf('fips') >= 0 ||
      regionFromArn.indexOf('fips') >= 0
    ) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'ARN endpoint is not compatible with FIPS region'
      });
    }

    if (!useArnRegion && regionFromArn !== clientRegion) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'Configured region conflicts with access point region'
      });
    } else if (
      useArnRegion &&
      regionUtil.getEndpointSuffix(regionFromArn) !== regionUtil.getEndpointSuffix(clientRegion)
    ) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'Configured region and access point region not in same partition'
      });
    }

    if (req.service.config.useAccelerateEndpoint) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'useAccelerateEndpoint config is not supported with access point ARN'
      });
    }

    if (req._parsedArn.service === 's3-outposts' && req.service.config.useDualstack) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'useDualstack config is not supported with outposts access point ARN'
      });
    }
  },

  loadUseArnRegionConfig: function loadUseArnRegionConfig(req) {
    var envName = 'AWS_S3_USE_ARN_REGION';
    var configName = 's3_use_arn_region';
    var useArnRegion = true;
    var originalConfig = req.service._originalConfig || {};
    if (req.service.config.s3UseArnRegion !== undefined) {
      return req.service.config.s3UseArnRegion;
    } else if (originalConfig.s3UseArnRegion !== undefined) {
      useArnRegion = originalConfig.s3UseArnRegion === true;
    } else if (AWS.util.isNode()) {
      //load from environmental variable AWS_USE_ARN_REGION
      if (process.env[envName]) {
        var value = process.env[envName].trim().toLowerCase();
        if (['false', 'true'].indexOf(value) < 0) {
          throw AWS.util.error(new Error(), {
            code: 'InvalidConfiguration',
            message: envName + ' only accepts true or false. Got ' + process.env[envName],
            retryable: false
          });
        }
        useArnRegion = value === 'true';
      } else {  //load from shared config property use_arn_region
        var profiles = {};
        var profile = {};
        try {
          profiles = AWS.util.getProfilesFromSharedConfig(AWS.util.iniLoader);
          profile = profiles[process.env.AWS_PROFILE || AWS.util.defaultProfile];
        } catch (e) {}
        if (profile[configName]) {
          if (['false', 'true'].indexOf(profile[configName].trim().toLowerCase()) < 0) {
            throw AWS.util.error(new Error(), {
              code: 'InvalidConfiguration',
              message: configName + ' only accepts true or false. Got ' + profile[configName],
              retryable: false
            });
          }
          useArnRegion = profile[configName].trim().toLowerCase() === 'true';
        }
      }
    }
    req.service.config.s3UseArnRegion = useArnRegion;
    return useArnRegion;
  },

  /**
   * Validations before URI can be populated
   */
  validatePopulateUriFromArn: function validatePopulateUriFromArn(req) {
    if (req.service._originalConfig && req.service._originalConfig.endpoint) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'Custom endpoint is not compatible with access point ARN'
      });
    }

    if (req.service.config.s3ForcePathStyle) {
      throw AWS.util.error(new Error(), {
        code: 'InvalidConfiguration',
        message: 'Cannot construct path-style endpoint with access point'
      });
    }
  },

  /**
   * Returns true if the bucket name is DNS compatible.  Buckets created
   * outside of the classic region MUST be DNS compatible.
   *
   * @api private
   */
  dnsCompatibleBucketName: function dnsCompatibleBucketName(bucketName) {
    var b = bucketName;
    var domain = new RegExp(/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/);
    var ipAddress = new RegExp(/(\d+\.){3}\d+/);
    var dots = new RegExp(/\.\./);
    return (b.match(domain) && !b.match(ipAddress) && !b.match(dots)) ? true : false;
  },
};

/**
 * @api private
 */
module.exports = s3util;


/***/ }),

/***/ 94571:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.update(AWS.SQS.prototype, {
  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('build', this.buildEndpoint);

    if (request.service.config.computeChecksums) {
      if (request.operation === 'sendMessage') {
        request.addListener('extractData', this.verifySendMessageChecksum);
      } else if (request.operation === 'sendMessageBatch') {
        request.addListener('extractData', this.verifySendMessageBatchChecksum);
      } else if (request.operation === 'receiveMessage') {
        request.addListener('extractData', this.verifyReceiveMessageChecksum);
      }
    }
  },

  /**
   * @api private
   */
  verifySendMessageChecksum: function verifySendMessageChecksum(response) {
    if (!response.data) return;

    var md5 = response.data.MD5OfMessageBody;
    var body = this.params.MessageBody;
    var calculatedMd5 = this.service.calculateChecksum(body);
    if (calculatedMd5 !== md5) {
      var msg = 'Got "' + response.data.MD5OfMessageBody +
        '", expecting "' + calculatedMd5 + '".';
      this.service.throwInvalidChecksumError(response,
        [response.data.MessageId], msg);
    }
  },

  /**
   * @api private
   */
  verifySendMessageBatchChecksum: function verifySendMessageBatchChecksum(response) {
    if (!response.data) return;

    var service = this.service;
    var entries = {};
    var errors = [];
    var messageIds = [];
    AWS.util.arrayEach(response.data.Successful, function (entry) {
      entries[entry.Id] = entry;
    });
    AWS.util.arrayEach(this.params.Entries, function (entry) {
      if (entries[entry.Id]) {
        var md5 = entries[entry.Id].MD5OfMessageBody;
        var body = entry.MessageBody;
        if (!service.isChecksumValid(md5, body)) {
          errors.push(entry.Id);
          messageIds.push(entries[entry.Id].MessageId);
        }
      }
    });

    if (errors.length > 0) {
      service.throwInvalidChecksumError(response, messageIds,
        'Invalid messages: ' + errors.join(', '));
    }
  },

  /**
   * @api private
   */
  verifyReceiveMessageChecksum: function verifyReceiveMessageChecksum(response) {
    if (!response.data) return;

    var service = this.service;
    var messageIds = [];
    AWS.util.arrayEach(response.data.Messages, function(message) {
      var md5 = message.MD5OfBody;
      var body = message.Body;
      if (!service.isChecksumValid(md5, body)) {
        messageIds.push(message.MessageId);
      }
    });

    if (messageIds.length > 0) {
      service.throwInvalidChecksumError(response, messageIds,
        'Invalid messages: ' + messageIds.join(', '));
    }
  },

  /**
   * @api private
   */
  throwInvalidChecksumError: function throwInvalidChecksumError(response, ids, message) {
    response.error = AWS.util.error(new Error(), {
      retryable: true,
      code: 'InvalidChecksum',
      messageIds: ids,
      message: response.request.operation +
               ' returned an invalid MD5 response. ' + message
    });
  },

  /**
   * @api private
   */
  isChecksumValid: function isChecksumValid(checksum, data) {
    return this.calculateChecksum(data) === checksum;
  },

  /**
   * @api private
   */
  calculateChecksum: function calculateChecksum(data) {
    return AWS.util.crypto.md5(data, 'hex');
  },

  /**
   * @api private
   */
  buildEndpoint: function buildEndpoint(request) {
    var url = request.httpRequest.params.QueueUrl;
    if (url) {
      request.httpRequest.endpoint = new AWS.Endpoint(url);

      // signature version 4 requires the region name to be set,
      // sqs queue urls contain the region name
      var matches = request.httpRequest.endpoint.host.match(/^sqs\.(.+?)\./);
      if (matches) request.httpRequest.region = matches[1];
    }
  }
});


/***/ }),

/***/ 91055:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var resolveRegionalEndpointsFlag = __webpack_require__(85566);
var ENV_REGIONAL_ENDPOINT_ENABLED = 'AWS_STS_REGIONAL_ENDPOINTS';
var CONFIG_REGIONAL_ENDPOINT_ENABLED = 'sts_regional_endpoints';

AWS.util.update(AWS.STS.prototype, {
  /**
   * @overload credentialsFrom(data, credentials = null)
   *   Creates a credentials object from STS response data containing
   *   credentials information. Useful for quickly setting AWS credentials.
   *
   *   @note This is a low-level utility function. If you want to load temporary
   *     credentials into your process for subsequent requests to AWS resources,
   *     you should use {AWS.TemporaryCredentials} instead.
   *   @param data [map] data retrieved from a call to {getFederatedToken},
   *     {getSessionToken}, {assumeRole}, or {assumeRoleWithWebIdentity}.
   *   @param credentials [AWS.Credentials] an optional credentials object to
   *     fill instead of creating a new object. Useful when modifying an
   *     existing credentials object from a refresh call.
   *   @return [AWS.TemporaryCredentials] the set of temporary credentials
   *     loaded from a raw STS operation response.
   *   @example Using credentialsFrom to load global AWS credentials
   *     var sts = new AWS.STS();
   *     sts.getSessionToken(function (err, data) {
   *       if (err) console.log("Error getting credentials");
   *       else {
   *         AWS.config.credentials = sts.credentialsFrom(data);
   *       }
   *     });
   *   @see AWS.TemporaryCredentials
   */
  credentialsFrom: function credentialsFrom(data, credentials) {
    if (!data) return null;
    if (!credentials) credentials = new AWS.TemporaryCredentials();
    credentials.expired = false;
    credentials.accessKeyId = data.Credentials.AccessKeyId;
    credentials.secretAccessKey = data.Credentials.SecretAccessKey;
    credentials.sessionToken = data.Credentials.SessionToken;
    credentials.expireTime = data.Credentials.Expiration;
    return credentials;
  },

  assumeRoleWithWebIdentity: function assumeRoleWithWebIdentity(params, callback) {
    return this.makeUnauthenticatedRequest('assumeRoleWithWebIdentity', params, callback);
  },

  assumeRoleWithSAML: function assumeRoleWithSAML(params, callback) {
    return this.makeUnauthenticatedRequest('assumeRoleWithSAML', params, callback);
  },

  /**
   * @api private
   */
  setupRequestListeners: function setupRequestListeners(request) {
    request.addListener('validate', this.optInRegionalEndpoint, true);
  },

  /**
   * @api private
   */
  optInRegionalEndpoint: function optInRegionalEndpoint(req) {
    var service = req.service;
    var config = service.config;
    config.stsRegionalEndpoints = resolveRegionalEndpointsFlag(service._originalConfig, {
      env: ENV_REGIONAL_ENDPOINT_ENABLED,
      sharedConfig: CONFIG_REGIONAL_ENDPOINT_ENABLED,
      clientConfig: 'stsRegionalEndpoints'
    });
    if (
      config.stsRegionalEndpoints === 'regional' &&
      service.isGlobalEndpoint
    ) {
      //client will throw if region is not supplied; request will be signed with specified region
      if (!config.region) {
        throw AWS.util.error(new Error(),
          {code: 'ConfigError', message: 'Missing region in config'});
      }
      var insertPoint = config.endpoint.indexOf('.amazonaws.com');
      var regionalEndpoint = config.endpoint.substring(0, insertPoint) +
        '.' + config.region + config.endpoint.substring(insertPoint);
      req.httpRequest.updateEndpoint(regionalEndpoint);
      req.httpRequest.region = config.region;
    }
  }

});


/***/ }),

/***/ 31987:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

AWS.util.hideProperties(AWS, ['SimpleWorkflow']);

/**
 * @constant
 * @readonly
 * Backwards compatibility for access to the {AWS.SWF} service class.
 */
AWS.SimpleWorkflow = AWS.SWF;


/***/ }),

/***/ 29697:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var IniLoader = __webpack_require__(95417).IniLoader;
/**
 * Singleton object to load specified config/credentials files.
 * It will cache all the files ever loaded;
 */
module.exports.b = new IniLoader();


/***/ }),

/***/ 95417:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var os = __webpack_require__(12087);
var path = __webpack_require__(85622);

function parseFile(filename, isConfig) {
    var content = AWS.util.ini.parse(AWS.util.readFileSync(filename));
    var tmpContent = {};
    Object.keys(content).forEach(function(profileName) {
      var profileContent = content[profileName];
      profileName = isConfig ? profileName.replace(/^profile\s/, '') : profileName;
      Object.defineProperty(tmpContent, profileName, {
        value: profileContent,
        enumerable: true
      });
    });
    return tmpContent;
}

/**
 * Ini file loader class the same as that used in the SDK. It loads and
 * parses config and credentials files in .ini format and cache the content
 * to assure files are only read once.
 * Note that calling operations on the instance instantiated from this class
 * won't affect the behavior of SDK since SDK uses an internal singleton of
 * this class.
 * @!macro nobrowser
 */
AWS.IniLoader = AWS.util.inherit({
  constructor: function IniLoader() {
    this.resolvedProfiles = {};
  },

  /** Remove all cached files. Used after config files are updated. */
  clearCachedFiles: function clearCachedFiles() {
    this.resolvedProfiles = {};
  },

/**
 * Load configurations from config/credentials files and cache them
 * for later use. If no file is specified it will try to load default
 * files.
 * @param options [map] information describing the file
 * @option options filename [String] ('~/.aws/credentials' or defined by
 *   AWS_SHARED_CREDENTIALS_FILE process env var or '~/.aws/config' if
 *   isConfig is set to true)
 *   path to the file to be read.
 * @option options isConfig [Boolean] (false) True to read config file.
 * @return [map<String,String>] object containing contents from file in key-value
 *   pairs.
 */
  loadFrom: function loadFrom(options) {
    options = options || {};
    var isConfig = options.isConfig === true;
    var filename = options.filename || this.getDefaultFilePath(isConfig);
    if (!this.resolvedProfiles[filename]) {
      var fileContent = this.parseFile(filename, isConfig);
      Object.defineProperty(this.resolvedProfiles, filename, { value: fileContent });
    }
    return this.resolvedProfiles[filename];
  },

  /**
   * @api private
   */
  parseFile: parseFile,

  /**
   * @api private
   */
  getDefaultFilePath: function getDefaultFilePath(isConfig) {
    return path.join(
      this.getHomeDir(),
      '.aws',
      isConfig ? 'config' : 'credentials'
    );
  },

  /**
   * @api private
   */
  getHomeDir: function getHomeDir() {
    var env = process.env;
    var home = env.HOME ||
      env.USERPROFILE ||
      (env.HOMEPATH ? ((env.HOMEDRIVE || 'C:/') + env.HOMEPATH) : null);

    if (home) {
      return home;
    }

    if (typeof os.homedir === 'function') {
      return os.homedir();
    }

    throw AWS.util.error(
      new Error('Cannot load credentials, HOME path not set')
    );
  }
});

var IniLoader = AWS.IniLoader;

module.exports = {
  IniLoader: IniLoader,
  parseFile: parseFile,
};


/***/ }),

/***/ 60328:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;

/**
 * @api private
 */
var expiresHeader = 'presigned-expires';

/**
 * @api private
 */
function signedUrlBuilder(request) {
  var expires = request.httpRequest.headers[expiresHeader];
  var signerClass = request.service.getSignerClass(request);

  delete request.httpRequest.headers['User-Agent'];
  delete request.httpRequest.headers['X-Amz-User-Agent'];

  if (signerClass === AWS.Signers.V4) {
    if (expires > 604800) { // one week expiry is invalid
      var message = 'Presigning does not support expiry time greater ' +
                    'than a week with SigV4 signing.';
      throw AWS.util.error(new Error(), {
        code: 'InvalidExpiryTime', message: message, retryable: false
      });
    }
    request.httpRequest.headers[expiresHeader] = expires;
  } else if (signerClass === AWS.Signers.S3) {
    var now = request.service ? request.service.getSkewCorrectedDate() : AWS.util.date.getDate();
    request.httpRequest.headers[expiresHeader] = parseInt(
      AWS.util.date.unixTimestamp(now) + expires, 10).toString();
  } else {
    throw AWS.util.error(new Error(), {
      message: 'Presigning only supports S3 or SigV4 signing.',
      code: 'UnsupportedSigner', retryable: false
    });
  }
}

/**
 * @api private
 */
function signedUrlSigner(request) {
  var endpoint = request.httpRequest.endpoint;
  var parsedUrl = AWS.util.urlParse(request.httpRequest.path);
  var queryParams = {};

  if (parsedUrl.search) {
    queryParams = AWS.util.queryStringParse(parsedUrl.search.substr(1));
  }

  var auth = request.httpRequest.headers['Authorization'].split(' ');
  if (auth[0] === 'AWS') {
    auth = auth[1].split(':');
    queryParams['Signature'] = auth.pop();
    queryParams['AWSAccessKeyId'] = auth.join(':');

    AWS.util.each(request.httpRequest.headers, function (key, value) {
      if (key === expiresHeader) key = 'Expires';
      if (key.indexOf('x-amz-meta-') === 0) {
        // Delete existing, potentially not normalized key
        delete queryParams[key];
        key = key.toLowerCase();
      }
      queryParams[key] = value;
    });
    delete request.httpRequest.headers[expiresHeader];
    delete queryParams['Authorization'];
    delete queryParams['Host'];
  } else if (auth[0] === 'AWS4-HMAC-SHA256') { // SigV4 signing
    auth.shift();
    var rest = auth.join(' ');
    var signature = rest.match(/Signature=(.*?)(?:,|\s|\r?\n|$)/)[1];
    queryParams['X-Amz-Signature'] = signature;
    delete queryParams['Expires'];
  }

  // build URL
  endpoint.pathname = parsedUrl.pathname;
  endpoint.search = AWS.util.queryParamsToString(queryParams);
}

/**
 * @api private
 */
AWS.Signers.Presign = inherit({
  /**
   * @api private
   */
  sign: function sign(request, expireTime, callback) {
    request.httpRequest.headers[expiresHeader] = expireTime || 3600;
    request.on('build', signedUrlBuilder);
    request.on('sign', signedUrlSigner);
    request.removeListener('afterBuild',
      AWS.EventListeners.Core.SET_CONTENT_LENGTH);
    request.removeListener('afterBuild',
      AWS.EventListeners.Core.COMPUTE_SHA256);

    request.emit('beforePresign', [request]);

    if (callback) {
      request.build(function() {
        if (this.response.error) callback(this.response.error);
        else {
          callback(null, AWS.util.urlFormat(request.httpRequest.endpoint));
        }
      });
    } else {
      request.build();
      if (request.response.error) throw request.response.error;
      return AWS.util.urlFormat(request.httpRequest.endpoint);
    }
  }
});

/**
 * @api private
 */
module.exports = AWS.Signers.Presign;


/***/ }),

/***/ 9897:
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

var inherit = AWS.util.inherit;

/**
 * @api private
 */
AWS.Signers.RequestSigner = inherit({
  constructor: function RequestSigner(request) {
    this.request = request;
  },

  setServiceClientId: function setServiceClientId(id) {
    this.serviceClientId = id;
  },

  getServiceClientId: function getServiceClientId() {
    return this.serviceClientId;
  }
});

AWS.Signers.RequestSigner.getVersion = function getVersion(version) {
  switch (version) {
    case 'v2': return AWS.Signers.V2;
    case 'v3': return AWS.Signers.V3;
    case 's3v4': return AWS.Signers.V4;
    case 'v4': return AWS.Signers.V4;
    case 's3': return AWS.Signers.S3;
    case 'v3https': return AWS.Signers.V3Https;
  }
  throw new Error('Unknown signing version ' + version);
};

__webpack_require__(28489);
__webpack_require__(66458);
__webpack_require__(24473);
__webpack_require__(26529);
__webpack_require__(58616);
__webpack_require__(60328);


/***/ }),

/***/ 58616:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;

/**
 * @api private
 */
AWS.Signers.S3 = inherit(AWS.Signers.RequestSigner, {
  /**
   * When building the stringToSign, these sub resource params should be
   * part of the canonical resource string with their NON-decoded values
   */
  subResources: {
    'acl': 1,
    'accelerate': 1,
    'analytics': 1,
    'cors': 1,
    'lifecycle': 1,
    'delete': 1,
    'inventory': 1,
    'location': 1,
    'logging': 1,
    'metrics': 1,
    'notification': 1,
    'partNumber': 1,
    'policy': 1,
    'requestPayment': 1,
    'replication': 1,
    'restore': 1,
    'tagging': 1,
    'torrent': 1,
    'uploadId': 1,
    'uploads': 1,
    'versionId': 1,
    'versioning': 1,
    'versions': 1,
    'website': 1
  },

  // when building the stringToSign, these querystring params should be
  // part of the canonical resource string with their NON-encoded values
  responseHeaders: {
    'response-content-type': 1,
    'response-content-language': 1,
    'response-expires': 1,
    'response-cache-control': 1,
    'response-content-disposition': 1,
    'response-content-encoding': 1
  },

  addAuthorization: function addAuthorization(credentials, date) {
    if (!this.request.headers['presigned-expires']) {
      this.request.headers['X-Amz-Date'] = AWS.util.date.rfc822(date);
    }

    if (credentials.sessionToken) {
      // presigned URLs require this header to be lowercased
      this.request.headers['x-amz-security-token'] = credentials.sessionToken;
    }

    var signature = this.sign(credentials.secretAccessKey, this.stringToSign());
    var auth = 'AWS ' + credentials.accessKeyId + ':' + signature;

    this.request.headers['Authorization'] = auth;
  },

  stringToSign: function stringToSign() {
    var r = this.request;

    var parts = [];
    parts.push(r.method);
    parts.push(r.headers['Content-MD5'] || '');
    parts.push(r.headers['Content-Type'] || '');

    // This is the "Date" header, but we use X-Amz-Date.
    // The S3 signing mechanism requires us to pass an empty
    // string for this Date header regardless.
    parts.push(r.headers['presigned-expires'] || '');

    var headers = this.canonicalizedAmzHeaders();
    if (headers) parts.push(headers);
    parts.push(this.canonicalizedResource());

    return parts.join('\n');

  },

  canonicalizedAmzHeaders: function canonicalizedAmzHeaders() {

    var amzHeaders = [];

    AWS.util.each(this.request.headers, function (name) {
      if (name.match(/^x-amz-/i))
        amzHeaders.push(name);
    });

    amzHeaders.sort(function (a, b) {
      return a.toLowerCase() < b.toLowerCase() ? -1 : 1;
    });

    var parts = [];
    AWS.util.arrayEach.call(this, amzHeaders, function (name) {
      parts.push(name.toLowerCase() + ':' + String(this.request.headers[name]));
    });

    return parts.join('\n');

  },

  canonicalizedResource: function canonicalizedResource() {

    var r = this.request;

    var parts = r.path.split('?');
    var path = parts[0];
    var querystring = parts[1];

    var resource = '';

    if (r.virtualHostedBucket)
      resource += '/' + r.virtualHostedBucket;

    resource += path;

    if (querystring) {

      // collect a list of sub resources and query params that need to be signed
      var resources = [];

      AWS.util.arrayEach.call(this, querystring.split('&'), function (param) {
        var name = param.split('=')[0];
        var value = param.split('=')[1];
        if (this.subResources[name] || this.responseHeaders[name]) {
          var subresource = { name: name };
          if (value !== undefined) {
            if (this.subResources[name]) {
              subresource.value = value;
            } else {
              subresource.value = decodeURIComponent(value);
            }
          }
          resources.push(subresource);
        }
      });

      resources.sort(function (a, b) { return a.name < b.name ? -1 : 1; });

      if (resources.length) {

        querystring = [];
        AWS.util.arrayEach(resources, function (res) {
          if (res.value === undefined) {
            querystring.push(res.name);
          } else {
            querystring.push(res.name + '=' + res.value);
          }
        });

        resource += '?' + querystring.join('&');
      }

    }

    return resource;

  },

  sign: function sign(secret, string) {
    return AWS.util.crypto.hmac(secret, string, 'base64', 'sha1');
  }
});

/**
 * @api private
 */
module.exports = AWS.Signers.S3;


/***/ }),

/***/ 28489:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;

/**
 * @api private
 */
AWS.Signers.V2 = inherit(AWS.Signers.RequestSigner, {
  addAuthorization: function addAuthorization(credentials, date) {

    if (!date) date = AWS.util.date.getDate();

    var r = this.request;

    r.params.Timestamp = AWS.util.date.iso8601(date);
    r.params.SignatureVersion = '2';
    r.params.SignatureMethod = 'HmacSHA256';
    r.params.AWSAccessKeyId = credentials.accessKeyId;

    if (credentials.sessionToken) {
      r.params.SecurityToken = credentials.sessionToken;
    }

    delete r.params.Signature; // delete old Signature for re-signing
    r.params.Signature = this.signature(credentials);

    r.body = AWS.util.queryParamsToString(r.params);
    r.headers['Content-Length'] = r.body.length;
  },

  signature: function signature(credentials) {
    return AWS.util.crypto.hmac(credentials.secretAccessKey, this.stringToSign(), 'base64');
  },

  stringToSign: function stringToSign() {
    var parts = [];
    parts.push(this.request.method);
    parts.push(this.request.endpoint.host.toLowerCase());
    parts.push(this.request.pathname());
    parts.push(AWS.util.queryParamsToString(this.request.params));
    return parts.join('\n');
  }

});

/**
 * @api private
 */
module.exports = AWS.Signers.V2;


/***/ }),

/***/ 66458:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;

/**
 * @api private
 */
AWS.Signers.V3 = inherit(AWS.Signers.RequestSigner, {
  addAuthorization: function addAuthorization(credentials, date) {

    var datetime = AWS.util.date.rfc822(date);

    this.request.headers['X-Amz-Date'] = datetime;

    if (credentials.sessionToken) {
      this.request.headers['x-amz-security-token'] = credentials.sessionToken;
    }

    this.request.headers['X-Amzn-Authorization'] =
      this.authorization(credentials, datetime);

  },

  authorization: function authorization(credentials) {
    return 'AWS3 ' +
      'AWSAccessKeyId=' + credentials.accessKeyId + ',' +
      'Algorithm=HmacSHA256,' +
      'SignedHeaders=' + this.signedHeaders() + ',' +
      'Signature=' + this.signature(credentials);
  },

  signedHeaders: function signedHeaders() {
    var headers = [];
    AWS.util.arrayEach(this.headersToSign(), function iterator(h) {
      headers.push(h.toLowerCase());
    });
    return headers.sort().join(';');
  },

  canonicalHeaders: function canonicalHeaders() {
    var headers = this.request.headers;
    var parts = [];
    AWS.util.arrayEach(this.headersToSign(), function iterator(h) {
      parts.push(h.toLowerCase().trim() + ':' + String(headers[h]).trim());
    });
    return parts.sort().join('\n') + '\n';
  },

  headersToSign: function headersToSign() {
    var headers = [];
    AWS.util.each(this.request.headers, function iterator(k) {
      if (k === 'Host' || k === 'Content-Encoding' || k.match(/^X-Amz/i)) {
        headers.push(k);
      }
    });
    return headers;
  },

  signature: function signature(credentials) {
    return AWS.util.crypto.hmac(credentials.secretAccessKey, this.stringToSign(), 'base64');
  },

  stringToSign: function stringToSign() {
    var parts = [];
    parts.push(this.request.method);
    parts.push('/');
    parts.push('');
    parts.push(this.canonicalHeaders());
    parts.push(this.request.body);
    return AWS.util.crypto.sha256(parts.join('\n'));
  }

});

/**
 * @api private
 */
module.exports = AWS.Signers.V3;


/***/ }),

/***/ 24473:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var inherit = AWS.util.inherit;

__webpack_require__(66458);

/**
 * @api private
 */
AWS.Signers.V3Https = inherit(AWS.Signers.V3, {
  authorization: function authorization(credentials) {
    return 'AWS3-HTTPS ' +
      'AWSAccessKeyId=' + credentials.accessKeyId + ',' +
      'Algorithm=HmacSHA256,' +
      'Signature=' + this.signature(credentials);
  },

  stringToSign: function stringToSign() {
    return this.request.headers['X-Amz-Date'];
  }
});

/**
 * @api private
 */
module.exports = AWS.Signers.V3Https;


/***/ }),

/***/ 26529:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var v4Credentials = __webpack_require__(62660);
var inherit = AWS.util.inherit;

/**
 * @api private
 */
var expiresHeader = 'presigned-expires';

/**
 * @api private
 */
AWS.Signers.V4 = inherit(AWS.Signers.RequestSigner, {
  constructor: function V4(request, serviceName, options) {
    AWS.Signers.RequestSigner.call(this, request);
    this.serviceName = serviceName;
    options = options || {};
    this.signatureCache = typeof options.signatureCache === 'boolean' ? options.signatureCache : true;
    this.operation = options.operation;
    this.signatureVersion = options.signatureVersion;
  },

  algorithm: 'AWS4-HMAC-SHA256',

  addAuthorization: function addAuthorization(credentials, date) {
    var datetime = AWS.util.date.iso8601(date).replace(/[:\-]|\.\d{3}/g, '');

    if (this.isPresigned()) {
      this.updateForPresigned(credentials, datetime);
    } else {
      this.addHeaders(credentials, datetime);
    }

    this.request.headers['Authorization'] =
      this.authorization(credentials, datetime);
  },

  addHeaders: function addHeaders(credentials, datetime) {
    this.request.headers['X-Amz-Date'] = datetime;
    if (credentials.sessionToken) {
      this.request.headers['x-amz-security-token'] = credentials.sessionToken;
    }
  },

  updateForPresigned: function updateForPresigned(credentials, datetime) {
    var credString = this.credentialString(datetime);
    var qs = {
      'X-Amz-Date': datetime,
      'X-Amz-Algorithm': this.algorithm,
      'X-Amz-Credential': credentials.accessKeyId + '/' + credString,
      'X-Amz-Expires': this.request.headers[expiresHeader],
      'X-Amz-SignedHeaders': this.signedHeaders()
    };

    if (credentials.sessionToken) {
      qs['X-Amz-Security-Token'] = credentials.sessionToken;
    }

    if (this.request.headers['Content-Type']) {
      qs['Content-Type'] = this.request.headers['Content-Type'];
    }
    if (this.request.headers['Content-MD5']) {
      qs['Content-MD5'] = this.request.headers['Content-MD5'];
    }
    if (this.request.headers['Cache-Control']) {
      qs['Cache-Control'] = this.request.headers['Cache-Control'];
    }

    // need to pull in any other X-Amz-* headers
    AWS.util.each.call(this, this.request.headers, function(key, value) {
      if (key === expiresHeader) return;
      if (this.isSignableHeader(key)) {
        var lowerKey = key.toLowerCase();
        // Metadata should be normalized
        if (lowerKey.indexOf('x-amz-meta-') === 0) {
          qs[lowerKey] = value;
        } else if (lowerKey.indexOf('x-amz-') === 0) {
          qs[key] = value;
        }
      }
    });

    var sep = this.request.path.indexOf('?') >= 0 ? '&' : '?';
    this.request.path += sep + AWS.util.queryParamsToString(qs);
  },

  authorization: function authorization(credentials, datetime) {
    var parts = [];
    var credString = this.credentialString(datetime);
    parts.push(this.algorithm + ' Credential=' +
      credentials.accessKeyId + '/' + credString);
    parts.push('SignedHeaders=' + this.signedHeaders());
    parts.push('Signature=' + this.signature(credentials, datetime));
    return parts.join(', ');
  },

  signature: function signature(credentials, datetime) {
    var signingKey = v4Credentials.getSigningKey(
      credentials,
      datetime.substr(0, 8),
      this.request.region,
      this.serviceName,
      this.signatureCache
    );
    return AWS.util.crypto.hmac(signingKey, this.stringToSign(datetime), 'hex');
  },

  stringToSign: function stringToSign(datetime) {
    var parts = [];
    parts.push('AWS4-HMAC-SHA256');
    parts.push(datetime);
    parts.push(this.credentialString(datetime));
    parts.push(this.hexEncodedHash(this.canonicalString()));
    return parts.join('\n');
  },

  canonicalString: function canonicalString() {
    var parts = [], pathname = this.request.pathname();
    if (this.serviceName !== 's3' && this.signatureVersion !== 's3v4') pathname = AWS.util.uriEscapePath(pathname);

    parts.push(this.request.method);
    parts.push(pathname);
    parts.push(this.request.search());
    parts.push(this.canonicalHeaders() + '\n');
    parts.push(this.signedHeaders());
    parts.push(this.hexEncodedBodyHash());
    return parts.join('\n');
  },

  canonicalHeaders: function canonicalHeaders() {
    var headers = [];
    AWS.util.each.call(this, this.request.headers, function (key, item) {
      headers.push([key, item]);
    });
    headers.sort(function (a, b) {
      return a[0].toLowerCase() < b[0].toLowerCase() ? -1 : 1;
    });
    var parts = [];
    AWS.util.arrayEach.call(this, headers, function (item) {
      var key = item[0].toLowerCase();
      if (this.isSignableHeader(key)) {
        var value = item[1];
        if (typeof value === 'undefined' || value === null || typeof value.toString !== 'function') {
          throw AWS.util.error(new Error('Header ' + key + ' contains invalid value'), {
            code: 'InvalidHeader'
          });
        }
        parts.push(key + ':' +
          this.canonicalHeaderValues(value.toString()));
      }
    });
    return parts.join('\n');
  },

  canonicalHeaderValues: function canonicalHeaderValues(values) {
    return values.replace(/\s+/g, ' ').replace(/^\s+|\s+$/g, '');
  },

  signedHeaders: function signedHeaders() {
    var keys = [];
    AWS.util.each.call(this, this.request.headers, function (key) {
      key = key.toLowerCase();
      if (this.isSignableHeader(key)) keys.push(key);
    });
    return keys.sort().join(';');
  },

  credentialString: function credentialString(datetime) {
    return v4Credentials.createScope(
      datetime.substr(0, 8),
      this.request.region,
      this.serviceName
    );
  },

  hexEncodedHash: function hash(string) {
    return AWS.util.crypto.sha256(string, 'hex');
  },

  hexEncodedBodyHash: function hexEncodedBodyHash() {
    var request = this.request;
    if (this.isPresigned() && this.serviceName === 's3' && !request.body) {
      return 'UNSIGNED-PAYLOAD';
    } else if (request.headers['X-Amz-Content-Sha256']) {
      return request.headers['X-Amz-Content-Sha256'];
    } else {
      return this.hexEncodedHash(this.request.body || '');
    }
  },

  unsignableHeaders: [
    'authorization',
    'content-type',
    'content-length',
    'user-agent',
    expiresHeader,
    'expect',
    'x-amzn-trace-id'
  ],

  isSignableHeader: function isSignableHeader(key) {
    if (key.toLowerCase().indexOf('x-amz-') === 0) return true;
    return this.unsignableHeaders.indexOf(key) < 0;
  },

  isPresigned: function isPresigned() {
    return this.request.headers[expiresHeader] ? true : false;
  }

});

/**
 * @api private
 */
module.exports = AWS.Signers.V4;


/***/ }),

/***/ 62660:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);

/**
 * @api private
 */
var cachedSecret = {};

/**
 * @api private
 */
var cacheQueue = [];

/**
 * @api private
 */
var maxCacheEntries = 50;

/**
 * @api private
 */
var v4Identifier = 'aws4_request';

/**
 * @api private
 */
module.exports = {
  /**
   * @api private
   *
   * @param date [String]
   * @param region [String]
   * @param serviceName [String]
   * @return [String]
   */
  createScope: function createScope(date, region, serviceName) {
    return [
      date.substr(0, 8),
      region,
      serviceName,
      v4Identifier
    ].join('/');
  },

  /**
   * @api private
   *
   * @param credentials [Credentials]
   * @param date [String]
   * @param region [String]
   * @param service [String]
   * @param shouldCache [Boolean]
   * @return [String]
   */
  getSigningKey: function getSigningKey(
    credentials,
    date,
    region,
    service,
    shouldCache
  ) {
    var credsIdentifier = AWS.util.crypto
      .hmac(credentials.secretAccessKey, credentials.accessKeyId, 'base64');
    var cacheKey = [credsIdentifier, date, region, service].join('_');
    shouldCache = shouldCache !== false;
    if (shouldCache && (cacheKey in cachedSecret)) {
      return cachedSecret[cacheKey];
    }

    var kDate = AWS.util.crypto.hmac(
      'AWS4' + credentials.secretAccessKey,
      date,
      'buffer'
    );
    var kRegion = AWS.util.crypto.hmac(kDate, region, 'buffer');
    var kService = AWS.util.crypto.hmac(kRegion, service, 'buffer');

    var signingKey = AWS.util.crypto.hmac(kService, v4Identifier, 'buffer');
    if (shouldCache) {
      cachedSecret[cacheKey] = signingKey;
      cacheQueue.push(cacheKey);
      if (cacheQueue.length > maxCacheEntries) {
        // remove the oldest entry (not the least recently used)
        delete cachedSecret[cacheQueue.shift()];
      }
    }

    return signingKey;
  },

  /**
   * @api private
   *
   * Empties the derived signing key cache. Made available for testing purposes
   * only.
   */
  emptyCache: function emptyCache() {
    cachedSecret = {};
    cacheQueue = [];
  }
};


/***/ }),

/***/ 68118:
/***/ ((module) => {

function AcceptorStateMachine(states, state) {
  this.currentState = state || null;
  this.states = states || {};
}

AcceptorStateMachine.prototype.runTo = function runTo(finalState, done, bindObject, inputError) {
  if (typeof finalState === 'function') {
    inputError = bindObject; bindObject = done;
    done = finalState; finalState = null;
  }

  var self = this;
  var state = self.states[self.currentState];
  state.fn.call(bindObject || self, inputError, function(err) {
    if (err) {
      if (state.fail) self.currentState = state.fail;
      else return done ? done.call(bindObject, err) : null;
    } else {
      if (state.accept) self.currentState = state.accept;
      else return done ? done.call(bindObject) : null;
    }
    if (self.currentState === finalState) {
      return done ? done.call(bindObject, err) : null;
    }

    self.runTo(finalState, done, bindObject, err);
  });
};

AcceptorStateMachine.prototype.addState = function addState(name, acceptState, failState, fn) {
  if (typeof acceptState === 'function') {
    fn = acceptState; acceptState = null; failState = null;
  } else if (typeof failState === 'function') {
    fn = failState; failState = null;
  }

  if (!this.currentState) this.currentState = name;
  this.states[name] = { accept: acceptState, fail: failState, fn: fn };
  return this;
};

/**
 * @api private
 */
module.exports = AcceptorStateMachine;


/***/ }),

/***/ 77985:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint guard-for-in:0 */
var AWS;

/**
 * A set of utility methods for use with the AWS SDK.
 *
 * @!attribute abort
 *   Return this value from an iterator function {each} or {arrayEach}
 *   to break out of the iteration.
 *   @example Breaking out of an iterator function
 *     AWS.util.each({a: 1, b: 2, c: 3}, function(key, value) {
 *       if (key == 'b') return AWS.util.abort;
 *     });
 *   @see each
 *   @see arrayEach
 * @api private
 */
var util = {
  environment: 'nodejs',
  engine: function engine() {
    if (util.isBrowser() && typeof navigator !== 'undefined') {
      return navigator.userAgent;
    } else {
      var engine = process.platform + '/' + process.version;
      if (process.env.AWS_EXECUTION_ENV) {
        engine += ' exec-env/' + process.env.AWS_EXECUTION_ENV;
      }
      return engine;
    }
  },

  userAgent: function userAgent() {
    var name = util.environment;
    var agent = 'aws-sdk-' + name + '/' + __webpack_require__(28437).VERSION;
    if (name === 'nodejs') agent += ' ' + util.engine();
    return agent;
  },

  uriEscape: function uriEscape(string) {
    var output = encodeURIComponent(string);
    output = output.replace(/[^A-Za-z0-9_.~\-%]+/g, escape);

    // AWS percent-encodes some extra non-standard characters in a URI
    output = output.replace(/[*]/g, function(ch) {
      return '%' + ch.charCodeAt(0).toString(16).toUpperCase();
    });

    return output;
  },

  uriEscapePath: function uriEscapePath(string) {
    var parts = [];
    util.arrayEach(string.split('/'), function (part) {
      parts.push(util.uriEscape(part));
    });
    return parts.join('/');
  },

  urlParse: function urlParse(url) {
    return util.url.parse(url);
  },

  urlFormat: function urlFormat(url) {
    return util.url.format(url);
  },

  queryStringParse: function queryStringParse(qs) {
    return util.querystring.parse(qs);
  },

  queryParamsToString: function queryParamsToString(params) {
    var items = [];
    var escape = util.uriEscape;
    var sortedKeys = Object.keys(params).sort();

    util.arrayEach(sortedKeys, function(name) {
      var value = params[name];
      var ename = escape(name);
      var result = ename + '=';
      if (Array.isArray(value)) {
        var vals = [];
        util.arrayEach(value, function(item) { vals.push(escape(item)); });
        result = ename + '=' + vals.sort().join('&' + ename + '=');
      } else if (value !== undefined && value !== null) {
        result = ename + '=' + escape(value);
      }
      items.push(result);
    });

    return items.join('&');
  },

  readFileSync: function readFileSync(path) {
    if (util.isBrowser()) return null;
    return __webpack_require__(35747).readFileSync(path, 'utf-8');
  },

  base64: {
    encode: function encode64(string) {
      if (typeof string === 'number') {
        throw util.error(new Error('Cannot base64 encode number ' + string));
      }
      if (string === null || typeof string === 'undefined') {
        return string;
      }
      var buf = util.buffer.toBuffer(string);
      return buf.toString('base64');
    },

    decode: function decode64(string) {
      if (typeof string === 'number') {
        throw util.error(new Error('Cannot base64 decode number ' + string));
      }
      if (string === null || typeof string === 'undefined') {
        return string;
      }
      return util.buffer.toBuffer(string, 'base64');
    }

  },

  buffer: {
    /**
     * Buffer constructor for Node buffer and buffer pollyfill
     */
    toBuffer: function(data, encoding) {
      return (typeof util.Buffer.from === 'function' && util.Buffer.from !== Uint8Array.from) ?
        util.Buffer.from(data, encoding) : new util.Buffer(data, encoding);
    },

    alloc: function(size, fill, encoding) {
      if (typeof size !== 'number') {
        throw new Error('size passed to alloc must be a number.');
      }
      if (typeof util.Buffer.alloc === 'function') {
        return util.Buffer.alloc(size, fill, encoding);
      } else {
        var buf = new util.Buffer(size);
        if (fill !== undefined && typeof buf.fill === 'function') {
          buf.fill(fill, undefined, undefined, encoding);
        }
        return buf;
      }
    },

    toStream: function toStream(buffer) {
      if (!util.Buffer.isBuffer(buffer)) buffer =  util.buffer.toBuffer(buffer);

      var readable = new (util.stream.Readable)();
      var pos = 0;
      readable._read = function(size) {
        if (pos >= buffer.length) return readable.push(null);

        var end = pos + size;
        if (end > buffer.length) end = buffer.length;
        readable.push(buffer.slice(pos, end));
        pos = end;
      };

      return readable;
    },

    /**
     * Concatenates a list of Buffer objects.
     */
    concat: function(buffers) {
      var length = 0,
          offset = 0,
          buffer = null, i;

      for (i = 0; i < buffers.length; i++) {
        length += buffers[i].length;
      }

      buffer = util.buffer.alloc(length);

      for (i = 0; i < buffers.length; i++) {
        buffers[i].copy(buffer, offset);
        offset += buffers[i].length;
      }

      return buffer;
    }
  },

  string: {
    byteLength: function byteLength(string) {
      if (string === null || string === undefined) return 0;
      if (typeof string === 'string') string = util.buffer.toBuffer(string);

      if (typeof string.byteLength === 'number') {
        return string.byteLength;
      } else if (typeof string.length === 'number') {
        return string.length;
      } else if (typeof string.size === 'number') {
        return string.size;
      } else if (typeof string.path === 'string') {
        return __webpack_require__(35747).lstatSync(string.path).size;
      } else {
        throw util.error(new Error('Cannot determine length of ' + string),
          { object: string });
      }
    },

    upperFirst: function upperFirst(string) {
      return string[0].toUpperCase() + string.substr(1);
    },

    lowerFirst: function lowerFirst(string) {
      return string[0].toLowerCase() + string.substr(1);
    }
  },

  ini: {
    parse: function string(ini) {
      var currentSection, map = {};
      util.arrayEach(ini.split(/\r?\n/), function(line) {
        line = line.split(/(^|\s)[;#]/)[0]; // remove comments
        var section = line.match(/^\s*\[([^\[\]]+)\]\s*$/);
        if (section) {
          currentSection = section[1];
          if (currentSection === '__proto__' || currentSection.split(/\s/)[1] === '__proto__') {
            throw util.error(
              new Error('Cannot load profile name \'' + currentSection + '\' from shared ini file.')
            );
          }
        } else if (currentSection) {
          var item = line.match(/^\s*(.+?)\s*=\s*(.+?)\s*$/);
          if (item) {
            map[currentSection] = map[currentSection] || {};
            map[currentSection][item[1]] = item[2];
          }
        }
      });

      return map;
    }
  },

  fn: {
    noop: function() {},
    callback: function (err) { if (err) throw err; },

    /**
     * Turn a synchronous function into as "async" function by making it call
     * a callback. The underlying function is called with all but the last argument,
     * which is treated as the callback. The callback is passed passed a first argument
     * of null on success to mimick standard node callbacks.
     */
    makeAsync: function makeAsync(fn, expectedArgs) {
      if (expectedArgs && expectedArgs <= fn.length) {
        return fn;
      }

      return function() {
        var args = Array.prototype.slice.call(arguments, 0);
        var callback = args.pop();
        var result = fn.apply(null, args);
        callback(result);
      };
    }
  },

  /**
   * Date and time utility functions.
   */
  date: {

    /**
     * @return [Date] the current JavaScript date object. Since all
     *   AWS services rely on this date object, you can override
     *   this function to provide a special time value to AWS service
     *   requests.
     */
    getDate: function getDate() {
      if (!AWS) AWS = __webpack_require__(28437);
      if (AWS.config.systemClockOffset) { // use offset when non-zero
        return new Date(new Date().getTime() + AWS.config.systemClockOffset);
      } else {
        return new Date();
      }
    },

    /**
     * @return [String] the date in ISO-8601 format
     */
    iso8601: function iso8601(date) {
      if (date === undefined) { date = util.date.getDate(); }
      return date.toISOString().replace(/\.\d{3}Z$/, 'Z');
    },

    /**
     * @return [String] the date in RFC 822 format
     */
    rfc822: function rfc822(date) {
      if (date === undefined) { date = util.date.getDate(); }
      return date.toUTCString();
    },

    /**
     * @return [Integer] the UNIX timestamp value for the current time
     */
    unixTimestamp: function unixTimestamp(date) {
      if (date === undefined) { date = util.date.getDate(); }
      return date.getTime() / 1000;
    },

    /**
     * @param [String,number,Date] date
     * @return [Date]
     */
    from: function format(date) {
      if (typeof date === 'number') {
        return new Date(date * 1000); // unix timestamp
      } else {
        return new Date(date);
      }
    },

    /**
     * Given a Date or date-like value, this function formats the
     * date into a string of the requested value.
     * @param [String,number,Date] date
     * @param [String] formatter Valid formats are:
     #   * 'iso8601'
     #   * 'rfc822'
     #   * 'unixTimestamp'
     * @return [String]
     */
    format: function format(date, formatter) {
      if (!formatter) formatter = 'iso8601';
      return util.date[formatter](util.date.from(date));
    },

    parseTimestamp: function parseTimestamp(value) {
      if (typeof value === 'number') { // unix timestamp (number)
        return new Date(value * 1000);
      } else if (value.match(/^\d+$/)) { // unix timestamp
        return new Date(value * 1000);
      } else if (value.match(/^\d{4}/)) { // iso8601
        return new Date(value);
      } else if (value.match(/^\w{3},/)) { // rfc822
        return new Date(value);
      } else {
        throw util.error(
          new Error('unhandled timestamp format: ' + value),
          {code: 'TimestampParserError'});
      }
    }

  },

  crypto: {
    crc32Table: [
     0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419,
     0x706AF48F, 0xE963A535, 0x9E6495A3, 0x0EDB8832, 0x79DCB8A4,
     0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07,
     0x90BF1D91, 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE,
     0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, 0x136C9856,
     0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9,
     0xFA0F3D63, 0x8D080DF5, 0x3B6E20C8, 0x4C69105E, 0xD56041E4,
     0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B,
     0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3,
     0x45DF5C75, 0xDCD60DCF, 0xABD13D59, 0x26D930AC, 0x51DE003A,
     0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599,
     0xB8BDA50F, 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924,
     0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 0x76DC4190,
     0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F,
     0x9FBFE4A5, 0xE8B8D433, 0x7807C9A2, 0x0F00F934, 0x9609A88E,
     0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01,
     0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED,
     0x1B01A57B, 0x8208F4C1, 0xF50FC457, 0x65B0D9C6, 0x12B7E950,
     0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3,
     0xFBD44C65, 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2,
     0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, 0x4369E96A,
     0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5,
     0xAA0A4C5F, 0xDD0D7CC9, 0x5005713C, 0x270241AA, 0xBE0B1010,
     0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F,
     0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17,
     0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, 0xEDB88320, 0x9ABFB3B6,
     0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615,
     0x73DC1683, 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8,
     0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, 0xF00F9344,
     0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB,
     0x196C3671, 0x6E6B06E7, 0xFED41B76, 0x89D32BE0, 0x10DA7A5A,
     0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5,
     0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1,
     0xA6BC5767, 0x3FB506DD, 0x48B2364B, 0xD80D2BDA, 0xAF0A1B4C,
     0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF,
     0x4669BE79, 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236,
     0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 0xC5BA3BBE,
     0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31,
     0x2CD99E8B, 0x5BDEAE1D, 0x9B64C2B0, 0xEC63F226, 0x756AA39C,
     0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713,
     0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B,
     0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 0x86D3D2D4, 0xF1D4E242,
     0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1,
     0x18B74777, 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C,
     0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, 0xA00AE278,
     0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7,
     0x4969474D, 0x3E6E77DB, 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66,
     0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9,
     0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605,
     0xCDD70693, 0x54DE5729, 0x23D967BF, 0xB3667A2E, 0xC4614AB8,
     0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B,
     0x2D02EF8D],

    crc32: function crc32(data) {
      var tbl = util.crypto.crc32Table;
      var crc = 0 ^ -1;

      if (typeof data === 'string') {
        data = util.buffer.toBuffer(data);
      }

      for (var i = 0; i < data.length; i++) {
        var code = data.readUInt8(i);
        crc = (crc >>> 8) ^ tbl[(crc ^ code) & 0xFF];
      }
      return (crc ^ -1) >>> 0;
    },

    hmac: function hmac(key, string, digest, fn) {
      if (!digest) digest = 'binary';
      if (digest === 'buffer') { digest = undefined; }
      if (!fn) fn = 'sha256';
      if (typeof string === 'string') string = util.buffer.toBuffer(string);
      return util.crypto.lib.createHmac(fn, key).update(string).digest(digest);
    },

    md5: function md5(data, digest, callback) {
      return util.crypto.hash('md5', data, digest, callback);
    },

    sha256: function sha256(data, digest, callback) {
      return util.crypto.hash('sha256', data, digest, callback);
    },

    hash: function(algorithm, data, digest, callback) {
      var hash = util.crypto.createHash(algorithm);
      if (!digest) { digest = 'binary'; }
      if (digest === 'buffer') { digest = undefined; }
      if (typeof data === 'string') data = util.buffer.toBuffer(data);
      var sliceFn = util.arraySliceFn(data);
      var isBuffer = util.Buffer.isBuffer(data);
      //Identifying objects with an ArrayBuffer as buffers
      if (util.isBrowser() && typeof ArrayBuffer !== 'undefined' && data && data.buffer instanceof ArrayBuffer) isBuffer = true;

      if (callback && typeof data === 'object' &&
          typeof data.on === 'function' && !isBuffer) {
        data.on('data', function(chunk) { hash.update(chunk); });
        data.on('error', function(err) { callback(err); });
        data.on('end', function() { callback(null, hash.digest(digest)); });
      } else if (callback && sliceFn && !isBuffer &&
                 typeof FileReader !== 'undefined') {
        // this might be a File/Blob
        var index = 0, size = 1024 * 512;
        var reader = new FileReader();
        reader.onerror = function() {
          callback(new Error('Failed to read data.'));
        };
        reader.onload = function() {
          var buf = new util.Buffer(new Uint8Array(reader.result));
          hash.update(buf);
          index += buf.length;
          reader._continueReading();
        };
        reader._continueReading = function() {
          if (index >= data.size) {
            callback(null, hash.digest(digest));
            return;
          }

          var back = index + size;
          if (back > data.size) back = data.size;
          reader.readAsArrayBuffer(sliceFn.call(data, index, back));
        };

        reader._continueReading();
      } else {
        if (util.isBrowser() && typeof data === 'object' && !isBuffer) {
          data = new util.Buffer(new Uint8Array(data));
        }
        var out = hash.update(data).digest(digest);
        if (callback) callback(null, out);
        return out;
      }
    },

    toHex: function toHex(data) {
      var out = [];
      for (var i = 0; i < data.length; i++) {
        out.push(('0' + data.charCodeAt(i).toString(16)).substr(-2, 2));
      }
      return out.join('');
    },

    createHash: function createHash(algorithm) {
      return util.crypto.lib.createHash(algorithm);
    }

  },

  /** @!ignore */

  /* Abort constant */
  abort: {},

  each: function each(object, iterFunction) {
    for (var key in object) {
      if (Object.prototype.hasOwnProperty.call(object, key)) {
        var ret = iterFunction.call(this, key, object[key]);
        if (ret === util.abort) break;
      }
    }
  },

  arrayEach: function arrayEach(array, iterFunction) {
    for (var idx in array) {
      if (Object.prototype.hasOwnProperty.call(array, idx)) {
        var ret = iterFunction.call(this, array[idx], parseInt(idx, 10));
        if (ret === util.abort) break;
      }
    }
  },

  update: function update(obj1, obj2) {
    util.each(obj2, function iterator(key, item) {
      obj1[key] = item;
    });
    return obj1;
  },

  merge: function merge(obj1, obj2) {
    return util.update(util.copy(obj1), obj2);
  },

  copy: function copy(object) {
    if (object === null || object === undefined) return object;
    var dupe = {};
    // jshint forin:false
    for (var key in object) {
      dupe[key] = object[key];
    }
    return dupe;
  },

  isEmpty: function isEmpty(obj) {
    for (var prop in obj) {
      if (Object.prototype.hasOwnProperty.call(obj, prop)) {
        return false;
      }
    }
    return true;
  },

  arraySliceFn: function arraySliceFn(obj) {
    var fn = obj.slice || obj.webkitSlice || obj.mozSlice;
    return typeof fn === 'function' ? fn : null;
  },

  isType: function isType(obj, type) {
    // handle cross-"frame" objects
    if (typeof type === 'function') type = util.typeName(type);
    return Object.prototype.toString.call(obj) === '[object ' + type + ']';
  },

  typeName: function typeName(type) {
    if (Object.prototype.hasOwnProperty.call(type, 'name')) return type.name;
    var str = type.toString();
    var match = str.match(/^\s*function (.+)\(/);
    return match ? match[1] : str;
  },

  error: function error(err, options) {
    var originalError = null;
    if (typeof err.message === 'string' && err.message !== '') {
      if (typeof options === 'string' || (options && options.message)) {
        originalError = util.copy(err);
        originalError.message = err.message;
      }
    }
    err.message = err.message || null;

    if (typeof options === 'string') {
      err.message = options;
    } else if (typeof options === 'object' && options !== null) {
      util.update(err, options);
      if (options.message)
        err.message = options.message;
      if (options.code || options.name)
        err.code = options.code || options.name;
      if (options.stack)
        err.stack = options.stack;
    }

    if (typeof Object.defineProperty === 'function') {
      Object.defineProperty(err, 'name', {writable: true, enumerable: false});
      Object.defineProperty(err, 'message', {enumerable: true});
    }

    err.name = String(options && options.name || err.name || err.code || 'Error');
    err.time = new Date();

    if (originalError) err.originalError = originalError;

    return err;
  },

  /**
   * @api private
   */
  inherit: function inherit(klass, features) {
    var newObject = null;
    if (features === undefined) {
      features = klass;
      klass = Object;
      newObject = {};
    } else {
      var ctor = function ConstructorWrapper() {};
      ctor.prototype = klass.prototype;
      newObject = new ctor();
    }

    // constructor not supplied, create pass-through ctor
    if (features.constructor === Object) {
      features.constructor = function() {
        if (klass !== Object) {
          return klass.apply(this, arguments);
        }
      };
    }

    features.constructor.prototype = newObject;
    util.update(features.constructor.prototype, features);
    features.constructor.__super__ = klass;
    return features.constructor;
  },

  /**
   * @api private
   */
  mixin: function mixin() {
    var klass = arguments[0];
    for (var i = 1; i < arguments.length; i++) {
      // jshint forin:false
      for (var prop in arguments[i].prototype) {
        var fn = arguments[i].prototype[prop];
        if (prop !== 'constructor') {
          klass.prototype[prop] = fn;
        }
      }
    }
    return klass;
  },

  /**
   * @api private
   */
  hideProperties: function hideProperties(obj, props) {
    if (typeof Object.defineProperty !== 'function') return;

    util.arrayEach(props, function (key) {
      Object.defineProperty(obj, key, {
        enumerable: false, writable: true, configurable: true });
    });
  },

  /**
   * @api private
   */
  property: function property(obj, name, value, enumerable, isValue) {
    var opts = {
      configurable: true,
      enumerable: enumerable !== undefined ? enumerable : true
    };
    if (typeof value === 'function' && !isValue) {
      opts.get = value;
    }
    else {
      opts.value = value; opts.writable = true;
    }

    Object.defineProperty(obj, name, opts);
  },

  /**
   * @api private
   */
  memoizedProperty: function memoizedProperty(obj, name, get, enumerable) {
    var cachedValue = null;

    // build enumerable attribute for each value with lazy accessor.
    util.property(obj, name, function() {
      if (cachedValue === null) {
        cachedValue = get();
      }
      return cachedValue;
    }, enumerable);
  },

  /**
   * TODO Remove in major version revision
   * This backfill populates response data without the
   * top-level payload name.
   *
   * @api private
   */
  hoistPayloadMember: function hoistPayloadMember(resp) {
    var req = resp.request;
    var operationName = req.operation;
    var operation = req.service.api.operations[operationName];
    var output = operation.output;
    if (output.payload && !operation.hasEventOutput) {
      var payloadMember = output.members[output.payload];
      var responsePayload = resp.data[output.payload];
      if (payloadMember.type === 'structure') {
        util.each(responsePayload, function(key, value) {
          util.property(resp.data, key, value, false);
        });
      }
    }
  },

  /**
   * Compute SHA-256 checksums of streams
   *
   * @api private
   */
  computeSha256: function computeSha256(body, done) {
    if (util.isNode()) {
      var Stream = util.stream.Stream;
      var fs = __webpack_require__(35747);
      if (typeof Stream === 'function' && body instanceof Stream) {
        if (typeof body.path === 'string') { // assume file object
          var settings = {};
          if (typeof body.start === 'number') {
            settings.start = body.start;
          }
          if (typeof body.end === 'number') {
            settings.end = body.end;
          }
          body = fs.createReadStream(body.path, settings);
        } else { // TODO support other stream types
          return done(new Error('Non-file stream objects are ' +
                                'not supported with SigV4'));
        }
      }
    }

    util.crypto.sha256(body, 'hex', function(err, sha) {
      if (err) done(err);
      else done(null, sha);
    });
  },

  /**
   * @api private
   */
  isClockSkewed: function isClockSkewed(serverTime) {
    if (serverTime) {
      util.property(AWS.config, 'isClockSkewed',
        Math.abs(new Date().getTime() - serverTime) >= 300000, false);
      return AWS.config.isClockSkewed;
    }
  },

  applyClockOffset: function applyClockOffset(serverTime) {
    if (serverTime)
      AWS.config.systemClockOffset = serverTime - new Date().getTime();
  },

  /**
   * @api private
   */
  extractRequestId: function extractRequestId(resp) {
    var requestId = resp.httpResponse.headers['x-amz-request-id'] ||
                     resp.httpResponse.headers['x-amzn-requestid'];

    if (!requestId && resp.data && resp.data.ResponseMetadata) {
      requestId = resp.data.ResponseMetadata.RequestId;
    }

    if (requestId) {
      resp.requestId = requestId;
    }

    if (resp.error) {
      resp.error.requestId = requestId;
    }
  },

  /**
   * @api private
   */
  addPromises: function addPromises(constructors, PromiseDependency) {
    var deletePromises = false;
    if (PromiseDependency === undefined && AWS && AWS.config) {
      PromiseDependency = AWS.config.getPromisesDependency();
    }
    if (PromiseDependency === undefined && typeof Promise !== 'undefined') {
      PromiseDependency = Promise;
    }
    if (typeof PromiseDependency !== 'function') deletePromises = true;
    if (!Array.isArray(constructors)) constructors = [constructors];

    for (var ind = 0; ind < constructors.length; ind++) {
      var constructor = constructors[ind];
      if (deletePromises) {
        if (constructor.deletePromisesFromClass) {
          constructor.deletePromisesFromClass();
        }
      } else if (constructor.addPromisesToClass) {
        constructor.addPromisesToClass(PromiseDependency);
      }
    }
  },

  /**
   * @api private
   * Return a function that will return a promise whose fate is decided by the
   * callback behavior of the given method with `methodName`. The method to be
   * promisified should conform to node.js convention of accepting a callback as
   * last argument and calling that callback with error as the first argument
   * and success value on the second argument.
   */
  promisifyMethod: function promisifyMethod(methodName, PromiseDependency) {
    return function promise() {
      var self = this;
      var args = Array.prototype.slice.call(arguments);
      return new PromiseDependency(function(resolve, reject) {
        args.push(function(err, data) {
          if (err) {
            reject(err);
          } else {
            resolve(data);
          }
        });
        self[methodName].apply(self, args);
      });
    };
  },

  /**
   * @api private
   */
  isDualstackAvailable: function isDualstackAvailable(service) {
    if (!service) return false;
    var metadata = __webpack_require__(49497);
    if (typeof service !== 'string') service = service.serviceIdentifier;
    if (typeof service !== 'string' || !metadata.hasOwnProperty(service)) return false;
    return !!metadata[service].dualstackAvailable;
  },

  /**
   * @api private
   */
  calculateRetryDelay: function calculateRetryDelay(retryCount, retryDelayOptions, err) {
    if (!retryDelayOptions) retryDelayOptions = {};
    var customBackoff = retryDelayOptions.customBackoff || null;
    if (typeof customBackoff === 'function') {
      return customBackoff(retryCount, err);
    }
    var base = typeof retryDelayOptions.base === 'number' ? retryDelayOptions.base : 100;
    var delay = Math.random() * (Math.pow(2, retryCount) * base);
    return delay;
  },

  /**
   * @api private
   */
  handleRequestWithRetries: function handleRequestWithRetries(httpRequest, options, cb) {
    if (!options) options = {};
    var http = AWS.HttpClient.getInstance();
    var httpOptions = options.httpOptions || {};
    var retryCount = 0;

    var errCallback = function(err) {
      var maxRetries = options.maxRetries || 0;
      if (err && err.code === 'TimeoutError') err.retryable = true;

      // Call `calculateRetryDelay()` only when relevant, see #3401
      if (err && err.retryable && retryCount < maxRetries) {
        var delay = util.calculateRetryDelay(retryCount, options.retryDelayOptions, err);
        if (delay >= 0) {
          retryCount++;
          setTimeout(sendRequest, delay + (err.retryAfter || 0));
          return;
        }
      }
      cb(err);
    };

    var sendRequest = function() {
      var data = '';
      http.handleRequest(httpRequest, httpOptions, function(httpResponse) {
        httpResponse.on('data', function(chunk) { data += chunk.toString(); });
        httpResponse.on('end', function() {
          var statusCode = httpResponse.statusCode;
          if (statusCode < 300) {
            cb(null, data);
          } else {
            var retryAfter = parseInt(httpResponse.headers['retry-after'], 10) * 1000 || 0;
            var err = util.error(new Error(),
              {
                statusCode: statusCode,
                retryable: statusCode >= 500 || statusCode === 429
              }
            );
            if (retryAfter && err.retryable) err.retryAfter = retryAfter;
            errCallback(err);
          }
        });
      }, errCallback);
    };

    AWS.util.defer(sendRequest);
  },

  /**
   * @api private
   */
  uuid: {
    v4: function uuidV4() {
      return __webpack_require__(2155).v4();
    }
  },

  /**
   * @api private
   */
  convertPayloadToString: function convertPayloadToString(resp) {
    var req = resp.request;
    var operation = req.operation;
    var rules = req.service.api.operations[operation].output || {};
    if (rules.payload && resp.data[rules.payload]) {
      resp.data[rules.payload] = resp.data[rules.payload].toString();
    }
  },

  /**
   * @api private
   */
  defer: function defer(callback) {
    if (typeof process === 'object' && typeof process.nextTick === 'function') {
      process.nextTick(callback);
    } else if (typeof setImmediate === 'function') {
      setImmediate(callback);
    } else {
      setTimeout(callback, 0);
    }
  },

  /**
   * @api private
   */
  getRequestPayloadShape: function getRequestPayloadShape(req) {
    var operations = req.service.api.operations;
    if (!operations) return undefined;
    var operation = (operations || {})[req.operation];
    if (!operation || !operation.input || !operation.input.payload) return undefined;
    return operation.input.members[operation.input.payload];
  },

  getProfilesFromSharedConfig: function getProfilesFromSharedConfig(iniLoader, filename) {
    var profiles = {};
    var profilesFromConfig = {};
    if (process.env[util.configOptInEnv]) {
      var profilesFromConfig = iniLoader.loadFrom({
        isConfig: true,
        filename: process.env[util.sharedConfigFileEnv]
      });
    }
    var profilesFromCreds= {};
    try {
      var profilesFromCreds = iniLoader.loadFrom({
        filename: filename ||
          (process.env[util.configOptInEnv] && process.env[util.sharedCredentialsFileEnv])
      });
    } catch (error) {
      // if using config, assume it is fully descriptive without a credentials file:
      if (!process.env[util.configOptInEnv]) throw error;
    }
    for (var i = 0, profileNames = Object.keys(profilesFromConfig); i < profileNames.length; i++) {
      profiles[profileNames[i]] = objectAssign(profiles[profileNames[i]] || {}, profilesFromConfig[profileNames[i]]);
    }
    for (var i = 0, profileNames = Object.keys(profilesFromCreds); i < profileNames.length; i++) {
      profiles[profileNames[i]] = objectAssign(profiles[profileNames[i]] || {}, profilesFromCreds[profileNames[i]]);
    }
    return profiles;

    /**
     * Roughly the semantics of `Object.assign(target, source)`
     */
    function objectAssign(target, source) {
      for (var i = 0, keys = Object.keys(source); i < keys.length; i++) {
        target[keys[i]] = source[keys[i]];
      }
      return target;
    }
  },

  /**
   * @api private
   */
  ARN: {
    validate: function validateARN(str) {
      return str && str.indexOf('arn:') === 0 && str.split(':').length >= 6;
    },
    parse: function parseARN(arn) {
      var matched = arn.split(':');
      return {
        partition: matched[1],
        service: matched[2],
        region: matched[3],
        accountId: matched[4],
        resource: matched.slice(5).join(':')
      };
    },
    build: function buildARN(arnObject) {
      if (
        arnObject.service === undefined ||
        arnObject.region === undefined ||
        arnObject.accountId === undefined ||
        arnObject.resource === undefined
      ) throw util.error(new Error('Input ARN object is invalid'));
      return 'arn:'+ (arnObject.partition || 'aws') + ':' + arnObject.service +
        ':' + arnObject.region + ':' + arnObject.accountId + ':' + arnObject.resource;
    }
  },

  /**
   * @api private
   */
  defaultProfile: 'default',

  /**
   * @api private
   */
  configOptInEnv: 'AWS_SDK_LOAD_CONFIG',

  /**
   * @api private
   */
  sharedCredentialsFileEnv: 'AWS_SHARED_CREDENTIALS_FILE',

  /**
   * @api private
   */
  sharedConfigFileEnv: 'AWS_CONFIG_FILE',

  /**
   * @api private
   */
  imdsDisabledEnv: 'AWS_EC2_METADATA_DISABLED'
};

/**
 * @api private
 */
module.exports = util;


/***/ }),

/***/ 23546:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(77985);
var XmlNode = __webpack_require__(20397).XmlNode;
var XmlText = __webpack_require__(90971).XmlText;

function XmlBuilder() { }

XmlBuilder.prototype.toXML = function(params, shape, rootElement, noEmpty) {
  var xml = new XmlNode(rootElement);
  applyNamespaces(xml, shape, true);
  serialize(xml, params, shape);
  return xml.children.length > 0 || noEmpty ? xml.toString() : '';
};

function serialize(xml, value, shape) {
  switch (shape.type) {
    case 'structure': return serializeStructure(xml, value, shape);
    case 'map': return serializeMap(xml, value, shape);
    case 'list': return serializeList(xml, value, shape);
    default: return serializeScalar(xml, value, shape);
  }
}

function serializeStructure(xml, params, shape) {
  util.arrayEach(shape.memberNames, function(memberName) {
    var memberShape = shape.members[memberName];
    if (memberShape.location !== 'body') return;

    var value = params[memberName];
    var name = memberShape.name;
    if (value !== undefined && value !== null) {
      if (memberShape.isXmlAttribute) {
        xml.addAttribute(name, value);
      } else if (memberShape.flattened) {
        serialize(xml, value, memberShape);
      } else {
        var element = new XmlNode(name);
        xml.addChildNode(element);
        applyNamespaces(element, memberShape);
        serialize(element, value, memberShape);
      }
    }
  });
}

function serializeMap(xml, map, shape) {
  var xmlKey = shape.key.name || 'key';
  var xmlValue = shape.value.name || 'value';

  util.each(map, function(key, value) {
    var entry = new XmlNode(shape.flattened ? shape.name : 'entry');
    xml.addChildNode(entry);

    var entryKey = new XmlNode(xmlKey);
    var entryValue = new XmlNode(xmlValue);
    entry.addChildNode(entryKey);
    entry.addChildNode(entryValue);

    serialize(entryKey, key, shape.key);
    serialize(entryValue, value, shape.value);
  });
}

function serializeList(xml, list, shape) {
  if (shape.flattened) {
    util.arrayEach(list, function(value) {
      var name = shape.member.name || shape.name;
      var element = new XmlNode(name);
      xml.addChildNode(element);
      serialize(element, value, shape.member);
    });
  } else {
    util.arrayEach(list, function(value) {
      var name = shape.member.name || 'member';
      var element = new XmlNode(name);
      xml.addChildNode(element);
      serialize(element, value, shape.member);
    });
  }
}

function serializeScalar(xml, value, shape) {
  xml.addChildNode(
    new XmlText(shape.toWireFormat(value))
  );
}

function applyNamespaces(xml, shape, isRoot) {
  var uri, prefix = 'xmlns';
  if (shape.xmlNamespaceUri) {
    uri = shape.xmlNamespaceUri;
    if (shape.xmlNamespacePrefix) prefix += ':' + shape.xmlNamespacePrefix;
  } else if (isRoot && shape.api.xmlNamespaceUri) {
    uri = shape.api.xmlNamespaceUri;
  }

  if (uri) xml.addAttribute(prefix, uri);
}

/**
 * @api private
 */
module.exports = XmlBuilder;


/***/ }),

/***/ 98241:
/***/ ((module) => {

/**
 * Escapes characters that can not be in an XML attribute.
 */
function escapeAttribute(value) {
    return value.replace(/&/g, '&amp;').replace(/'/g, '&apos;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
}

/**
 * @api private
 */
module.exports = {
    escapeAttribute: escapeAttribute
};


/***/ }),

/***/ 98464:
/***/ ((module) => {

/**
 * Escapes characters that can not be in an XML element.
 */
function escapeElement(value) {
    return value.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
}

/**
 * @api private
 */
module.exports = {
    escapeElement: escapeElement
};


/***/ }),

/***/ 96752:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var AWS = __webpack_require__(28437);
var util = AWS.util;
var Shape = AWS.Model.Shape;

var xml2js = __webpack_require__(66189);

/**
 * @api private
 */
var options = {  // options passed to xml2js parser
  explicitCharkey: false, // undocumented
  trim: false,            // trim the leading/trailing whitespace from text nodes
  normalize: false,       // trim interior whitespace inside text nodes
  explicitRoot: false,    // return the root node in the resulting object?
  emptyTag: null,         // the default value for empty nodes
  explicitArray: true,    // always put child nodes in an array
  ignoreAttrs: false,     // ignore attributes, only create text nodes
  mergeAttrs: false,      // merge attributes and child elements
  validator: null         // a callable validator
};

function NodeXmlParser() { }

NodeXmlParser.prototype.parse = function(xml, shape) {
  shape = shape || {};

  var result = null;
  var error = null;

  var parser = new xml2js.Parser(options);
  parser.parseString(xml, function (e, r) {
    error = e;
    result = r;
  });

  if (result) {
    var data = parseXml(result, shape);
    if (result.ResponseMetadata) {
      data.ResponseMetadata = parseXml(result.ResponseMetadata[0], {});
    }
    return data;
  } else if (error) {
    throw util.error(error, {code: 'XMLParserError', retryable: true});
  } else { // empty xml document
    return parseXml({}, shape);
  }
};

function parseXml(xml, shape) {
  switch (shape.type) {
    case 'structure': return parseStructure(xml, shape);
    case 'map': return parseMap(xml, shape);
    case 'list': return parseList(xml, shape);
    case undefined: case null: return parseUnknown(xml);
    default: return parseScalar(xml, shape);
  }
}

function parseStructure(xml, shape) {
  var data = {};
  if (xml === null) return data;

  util.each(shape.members, function(memberName, memberShape) {
    var xmlName = memberShape.name;
    if (Object.prototype.hasOwnProperty.call(xml, xmlName) && Array.isArray(xml[xmlName])) {
      var xmlChild = xml[xmlName];
      if (!memberShape.flattened) xmlChild = xmlChild[0];

      data[memberName] = parseXml(xmlChild, memberShape);
    } else if (memberShape.isXmlAttribute &&
               xml.$ && Object.prototype.hasOwnProperty.call(xml.$, xmlName)) {
      data[memberName] = parseScalar(xml.$[xmlName], memberShape);
    } else if (memberShape.type === 'list' && !shape.api.xmlNoDefaultLists) {
      data[memberName] = memberShape.defaultValue;
    }
  });

  return data;
}

function parseMap(xml, shape) {
  var data = {};
  if (xml === null) return data;

  var xmlKey = shape.key.name || 'key';
  var xmlValue = shape.value.name || 'value';
  var iterable = shape.flattened ? xml : xml.entry;

  if (Array.isArray(iterable)) {
    util.arrayEach(iterable, function(child) {
      data[child[xmlKey][0]] = parseXml(child[xmlValue][0], shape.value);
    });
  }

  return data;
}

function parseList(xml, shape) {
  var data = [];
  var name = shape.member.name || 'member';
  if (shape.flattened) {
    util.arrayEach(xml, function(xmlChild) {
      data.push(parseXml(xmlChild, shape.member));
    });
  } else if (xml && Array.isArray(xml[name])) {
    util.arrayEach(xml[name], function(child) {
      data.push(parseXml(child, shape.member));
    });
  }

  return data;
}

function parseScalar(text, shape) {
  if (text && text.$ && text.$.encoding === 'base64') {
    shape = new Shape.create({type: text.$.encoding});
  }
  if (text && text._) text = text._;

  if (typeof shape.toType === 'function') {
    return shape.toType(text);
  } else {
    return text;
  }
}

function parseUnknown(xml) {
  if (xml === undefined || xml === null) return '';
  if (typeof xml === 'string') return xml;

  // parse a list
  if (Array.isArray(xml)) {
    var arr = [];
    for (i = 0; i < xml.length; i++) {
      arr.push(parseXml(xml[i], {}));
    }
    return arr;
  }

  // empty object
  var keys = Object.keys(xml), i;
  if (keys.length === 0 || (keys.length === 1 && keys[0] === '$')) {
    return {};
  }

  // object, parse as structure
  var data = {};
  for (i = 0; i < keys.length; i++) {
    var key = keys[i], value = xml[key];
    if (key === '$') continue;
    if (value.length > 1) { // this member is a list
      data[key] = parseList(value, {member: {}});
    } else { // this member is a single item
      data[key] = parseXml(value[0], {});
    }
  }
  return data;
}

/**
 * @api private
 */
module.exports = NodeXmlParser;


/***/ }),

/***/ 20397:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var escapeAttribute = __webpack_require__(98241).escapeAttribute;

/**
 * Represents an XML node.
 * @api private
 */
function XmlNode(name, children) {
    if (children === void 0) { children = []; }
    this.name = name;
    this.children = children;
    this.attributes = {};
}
XmlNode.prototype.addAttribute = function (name, value) {
    this.attributes[name] = value;
    return this;
};
XmlNode.prototype.addChildNode = function (child) {
    this.children.push(child);
    return this;
};
XmlNode.prototype.removeAttribute = function (name) {
    delete this.attributes[name];
    return this;
};
XmlNode.prototype.toString = function () {
    var hasChildren = Boolean(this.children.length);
    var xmlText = '<' + this.name;
    // add attributes
    var attributes = this.attributes;
    for (var i = 0, attributeNames = Object.keys(attributes); i < attributeNames.length; i++) {
        var attributeName = attributeNames[i];
        var attribute = attributes[attributeName];
        if (typeof attribute !== 'undefined' && attribute !== null) {
            xmlText += ' ' + attributeName + '=\"' + escapeAttribute('' + attribute) + '\"';
        }
    }
    return xmlText += !hasChildren ? '/>' : '>' + this.children.map(function (c) { return c.toString(); }).join('') + '</' + this.name + '>';
};

/**
 * @api private
 */
module.exports = {
    XmlNode: XmlNode
};


/***/ }),

/***/ 90971:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var escapeElement = __webpack_require__(98464).escapeElement;

/**
 * Represents an XML text value.
 * @api private
 */
function XmlText(value) {
    this.value = value;
}

XmlText.prototype.toString = function () {
    return escapeElement('' + this.value);
};

/**
 * @api private
 */
module.exports = {
    XmlText: XmlText
};


/***/ }),

/***/ 96323:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
var __webpack_unused_export__;

__webpack_unused_export__ = ({ value: true });
var LRU_1 = __webpack_require__(77710);
var CACHE_SIZE = 1000;
/**
 * Inspired node-lru-cache[https://github.com/isaacs/node-lru-cache]
 */
var EndpointCache = /** @class */ (function () {
    function EndpointCache(maxSize) {
        if (maxSize === void 0) { maxSize = CACHE_SIZE; }
        this.maxSize = maxSize;
        this.cache = new LRU_1.LRUCache(maxSize);
    }
    ;
    Object.defineProperty(EndpointCache.prototype, "size", {
        get: function () {
            return this.cache.length;
        },
        enumerable: true,
        configurable: true
    });
    EndpointCache.prototype.put = function (key, value) {
      var keyString = typeof key !== 'string' ? EndpointCache.getKeyString(key) : key;
        var endpointRecord = this.populateValue(value);
        this.cache.put(keyString, endpointRecord);
    };
    EndpointCache.prototype.get = function (key) {
      var keyString = typeof key !== 'string' ? EndpointCache.getKeyString(key) : key;
        var now = Date.now();
        var records = this.cache.get(keyString);
        if (records) {
            for (var i = 0; i < records.length; i++) {
                var record = records[i];
                if (record.Expire < now) {
                    this.cache.remove(keyString);
                    return undefined;
                }
            }
        }
        return records;
    };
    EndpointCache.getKeyString = function (key) {
        var identifiers = [];
        var identifierNames = Object.keys(key).sort();
        for (var i = 0; i < identifierNames.length; i++) {
            var identifierName = identifierNames[i];
            if (key[identifierName] === undefined)
                continue;
            identifiers.push(key[identifierName]);
        }
        return identifiers.join(' ');
    };
    EndpointCache.prototype.populateValue = function (endpoints) {
        var now = Date.now();
        return endpoints.map(function (endpoint) { return ({
            Address: endpoint.Address || '',
            Expire: now + (endpoint.CachePeriodInMinutes || 1) * 60 * 1000
        }); });
    };
    EndpointCache.prototype.empty = function () {
        this.cache.empty();
    };
    EndpointCache.prototype.remove = function (key) {
      var keyString = typeof key !== 'string' ? EndpointCache.getKeyString(key) : key;
        this.cache.remove(keyString);
    };
    return EndpointCache;
}());
exports.$ = EndpointCache;

/***/ }),

/***/ 77710:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
var LinkedListNode = /** @class */ (function () {
    function LinkedListNode(key, value) {
        this.key = key;
        this.value = value;
    }
    return LinkedListNode;
}());
var LRUCache = /** @class */ (function () {
    function LRUCache(size) {
        this.nodeMap = {};
        this.size = 0;
        if (typeof size !== 'number' || size < 1) {
            throw new Error('Cache size can only be positive number');
        }
        this.sizeLimit = size;
    }
    Object.defineProperty(LRUCache.prototype, "length", {
        get: function () {
            return this.size;
        },
        enumerable: true,
        configurable: true
    });
    LRUCache.prototype.prependToList = function (node) {
        if (!this.headerNode) {
            this.tailNode = node;
        }
        else {
            this.headerNode.prev = node;
            node.next = this.headerNode;
        }
        this.headerNode = node;
        this.size++;
    };
    LRUCache.prototype.removeFromTail = function () {
        if (!this.tailNode) {
            return undefined;
        }
        var node = this.tailNode;
        var prevNode = node.prev;
        if (prevNode) {
            prevNode.next = undefined;
        }
        node.prev = undefined;
        this.tailNode = prevNode;
        this.size--;
        return node;
    };
    LRUCache.prototype.detachFromList = function (node) {
        if (this.headerNode === node) {
            this.headerNode = node.next;
        }
        if (this.tailNode === node) {
            this.tailNode = node.prev;
        }
        if (node.prev) {
            node.prev.next = node.next;
        }
        if (node.next) {
            node.next.prev = node.prev;
        }
        node.next = undefined;
        node.prev = undefined;
        this.size--;
    };
    LRUCache.prototype.get = function (key) {
        if (this.nodeMap[key]) {
            var node = this.nodeMap[key];
            this.detachFromList(node);
            this.prependToList(node);
            return node.value;
        }
    };
    LRUCache.prototype.remove = function (key) {
        if (this.nodeMap[key]) {
            var node = this.nodeMap[key];
            this.detachFromList(node);
            delete this.nodeMap[key];
        }
    };
    LRUCache.prototype.put = function (key, value) {
        if (this.nodeMap[key]) {
            this.remove(key);
        }
        else if (this.size === this.sizeLimit) {
            var tailNode = this.removeFromTail();
            var key_1 = tailNode.key;
            delete this.nodeMap[key_1];
        }
        var newNode = new LinkedListNode(key, value);
        this.nodeMap[key] = newNode;
        this.prependToList(newNode);
    };
    LRUCache.prototype.empty = function () {
        var keys = Object.keys(this.nodeMap);
        for (var i = 0; i < keys.length; i++) {
            var key = keys[i];
            var node = this.nodeMap[key];
            this.detachFromList(node);
            delete this.nodeMap[key];
        }
    };
    return LRUCache;
}());
exports.LRUCache = LRUCache;

/***/ }),

/***/ 96342:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {


/*!
 *  Copyright 2010 LearnBoost <dev@learnboost.com>
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/**
 * Module dependencies.
 */

var crypto = __webpack_require__(33373)
  , parse = __webpack_require__(78835).parse
  ;

/**
 * Valid keys.
 */

var keys = 
  [ 'acl'
  , 'location'
  , 'logging'
  , 'notification'
  , 'partNumber'
  , 'policy'
  , 'requestPayment'
  , 'torrent'
  , 'uploadId'
  , 'uploads'
  , 'versionId'
  , 'versioning'
  , 'versions'
  , 'website'
  ]

/**
 * Return an "Authorization" header value with the given `options`
 * in the form of "AWS <key>:<signature>"
 *
 * @param {Object} options
 * @return {String}
 * @api private
 */

function authorization (options) {
  return 'AWS ' + options.key + ':' + sign(options)
}

module.exports = authorization
module.exports.authorization = authorization

/**
 * Simple HMAC-SHA1 Wrapper
 *
 * @param {Object} options
 * @return {String}
 * @api private
 */ 

function hmacSha1 (options) {
  return crypto.createHmac('sha1', options.secret).update(options.message).digest('base64')
}

module.exports.hmacSha1 = hmacSha1

/**
 * Create a base64 sha1 HMAC for `options`. 
 * 
 * @param {Object} options
 * @return {String}
 * @api private
 */

function sign (options) {
  options.message = stringToSign(options)
  return hmacSha1(options)
}
module.exports.sign = sign

/**
 * Create a base64 sha1 HMAC for `options`. 
 *
 * Specifically to be used with S3 presigned URLs
 * 
 * @param {Object} options
 * @return {String}
 * @api private
 */

function signQuery (options) {
  options.message = queryStringToSign(options)
  return hmacSha1(options)
}
module.exports.signQuery= signQuery

/**
 * Return a string for sign() with the given `options`.
 *
 * Spec:
 * 
 *    <verb>\n
 *    <md5>\n
 *    <content-type>\n
 *    <date>\n
 *    [headers\n]
 *    <resource>
 *
 * @param {Object} options
 * @return {String}
 * @api private
 */

function stringToSign (options) {
  var headers = options.amazonHeaders || ''
  if (headers) headers += '\n'
  var r = 
    [ options.verb
    , options.md5
    , options.contentType
    , options.date ? options.date.toUTCString() : ''
    , headers + options.resource
    ]
  return r.join('\n')
}
module.exports.stringToSign = stringToSign

/**
 * Return a string for sign() with the given `options`, but is meant exclusively
 * for S3 presigned URLs
 *
 * Spec:
 * 
 *    <date>\n
 *    <resource>
 *
 * @param {Object} options
 * @return {String}
 * @api private
 */

function queryStringToSign (options){
  return 'GET\n\n\n' + options.date + '\n' + options.resource
}
module.exports.queryStringToSign = queryStringToSign

/**
 * Perform the following:
 *
 *  - ignore non-amazon headers
 *  - lowercase fields
 *  - sort lexicographically
 *  - trim whitespace between ":"
 *  - join with newline
 *
 * @param {Object} headers
 * @return {String}
 * @api private
 */

function canonicalizeHeaders (headers) {
  var buf = []
    , fields = Object.keys(headers)
    ;
  for (var i = 0, len = fields.length; i < len; ++i) {
    var field = fields[i]
      , val = headers[field]
      , field = field.toLowerCase()
      ;
    if (0 !== field.indexOf('x-amz')) continue
    buf.push(field + ':' + val)
  }
  return buf.sort().join('\n')
}
module.exports.canonicalizeHeaders = canonicalizeHeaders

/**
 * Perform the following:
 *
 *  - ignore non sub-resources
 *  - sort lexicographically
 *
 * @param {String} resource
 * @return {String}
 * @api private
 */

function canonicalizeResource (resource) {
  var url = parse(resource, true)
    , path = url.pathname
    , buf = []
    ;

  Object.keys(url.query).forEach(function(key){
    if (!~keys.indexOf(key)) return
    var val = '' == url.query[key] ? '' : '=' + encodeURIComponent(url.query[key])
    buf.push(key + val)
  })

  return path + (buf.length ? '?' + buf.sort().join('&') : '')
}
module.exports.canonicalizeResource = canonicalizeResource


/***/ }),

/***/ 16071:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var aws4 = exports,
    url = __webpack_require__(78835),
    querystring = __webpack_require__(71191),
    crypto = __webpack_require__(33373),
    lru = __webpack_require__(74225),
    credentialsCache = lru(1000)

// http://docs.amazonwebservices.com/general/latest/gr/signature-version-4.html

function hmac(key, string, encoding) {
  return crypto.createHmac('sha256', key).update(string, 'utf8').digest(encoding)
}

function hash(string, encoding) {
  return crypto.createHash('sha256').update(string, 'utf8').digest(encoding)
}

// This function assumes the string has already been percent encoded
function encodeRfc3986(urlEncodedString) {
  return urlEncodedString.replace(/[!'()*]/g, function(c) {
    return '%' + c.charCodeAt(0).toString(16).toUpperCase()
  })
}

function encodeRfc3986Full(str) {
  return encodeRfc3986(encodeURIComponent(str))
}

// A bit of a combination of:
// https://github.com/aws/aws-sdk-java-v2/blob/dc695de6ab49ad03934e1b02e7263abbd2354be0/core/auth/src/main/java/software/amazon/awssdk/auth/signer/internal/AbstractAws4Signer.java#L59
// https://github.com/aws/aws-sdk-js/blob/18cb7e5b463b46239f9fdd4a65e2ff8c81831e8f/lib/signers/v4.js#L191-L199
// https://github.com/mhart/aws4fetch/blob/b3aed16b6f17384cf36ea33bcba3c1e9f3bdfefd/src/main.js#L25-L34
var HEADERS_TO_IGNORE = {
  'authorization': true,
  'connection': true,
  'x-amzn-trace-id': true,
  'user-agent': true,
  'expect': true,
  'presigned-expires': true,
  'range': true,
}

// request: { path | body, [host], [method], [headers], [service], [region] }
// credentials: { accessKeyId, secretAccessKey, [sessionToken] }
function RequestSigner(request, credentials) {

  if (typeof request === 'string') request = url.parse(request)

  var headers = request.headers = (request.headers || {}),
      hostParts = (!this.service || !this.region) && this.matchHost(request.hostname || request.host || headers.Host || headers.host)

  this.request = request
  this.credentials = credentials || this.defaultCredentials()

  this.service = request.service || hostParts[0] || ''
  this.region = request.region || hostParts[1] || 'us-east-1'

  // SES uses a different domain from the service name
  if (this.service === 'email') this.service = 'ses'

  if (!request.method && request.body)
    request.method = 'POST'

  if (!headers.Host && !headers.host) {
    headers.Host = request.hostname || request.host || this.createHost()

    // If a port is specified explicitly, use it as is
    if (request.port)
      headers.Host += ':' + request.port
  }
  if (!request.hostname && !request.host)
    request.hostname = headers.Host || headers.host

  this.isCodeCommitGit = this.service === 'codecommit' && request.method === 'GIT'
}

RequestSigner.prototype.matchHost = function(host) {
  var match = (host || '').match(/([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(\.cn)?$/)
  var hostParts = (match || []).slice(1, 3)

  // ES's hostParts are sometimes the other way round, if the value that is expected
  // to be region equals ‘es’ switch them back
  // e.g. search-cluster-name-aaaa00aaaa0aaa0aaaaaaa0aaa.us-east-1.es.amazonaws.com
  if (hostParts[1] === 'es')
    hostParts = hostParts.reverse()

  if (hostParts[1] == 's3') {
    hostParts[0] = 's3'
    hostParts[1] = 'us-east-1'
  } else {
    for (var i = 0; i < 2; i++) {
      if (/^s3-/.test(hostParts[i])) {
        hostParts[1] = hostParts[i].slice(3)
        hostParts[0] = 's3'
        break
      }
    }
  }

  return hostParts
}

// http://docs.aws.amazon.com/general/latest/gr/rande.html
RequestSigner.prototype.isSingleRegion = function() {
  // Special case for S3 and SimpleDB in us-east-1
  if (['s3', 'sdb'].indexOf(this.service) >= 0 && this.region === 'us-east-1') return true

  return ['cloudfront', 'ls', 'route53', 'iam', 'importexport', 'sts']
    .indexOf(this.service) >= 0
}

RequestSigner.prototype.createHost = function() {
  var region = this.isSingleRegion() ? '' : '.' + this.region,
      subdomain = this.service === 'ses' ? 'email' : this.service
  return subdomain + region + '.amazonaws.com'
}

RequestSigner.prototype.prepareRequest = function() {
  this.parsePath()

  var request = this.request, headers = request.headers, query

  if (request.signQuery) {

    this.parsedPath.query = query = this.parsedPath.query || {}

    if (this.credentials.sessionToken)
      query['X-Amz-Security-Token'] = this.credentials.sessionToken

    if (this.service === 's3' && !query['X-Amz-Expires'])
      query['X-Amz-Expires'] = 86400

    if (query['X-Amz-Date'])
      this.datetime = query['X-Amz-Date']
    else
      query['X-Amz-Date'] = this.getDateTime()

    query['X-Amz-Algorithm'] = 'AWS4-HMAC-SHA256'
    query['X-Amz-Credential'] = this.credentials.accessKeyId + '/' + this.credentialString()
    query['X-Amz-SignedHeaders'] = this.signedHeaders()

  } else {

    if (!request.doNotModifyHeaders && !this.isCodeCommitGit) {
      if (request.body && !headers['Content-Type'] && !headers['content-type'])
        headers['Content-Type'] = 'application/x-www-form-urlencoded; charset=utf-8'

      if (request.body && !headers['Content-Length'] && !headers['content-length'])
        headers['Content-Length'] = Buffer.byteLength(request.body)

      if (this.credentials.sessionToken && !headers['X-Amz-Security-Token'] && !headers['x-amz-security-token'])
        headers['X-Amz-Security-Token'] = this.credentials.sessionToken

      if (this.service === 's3' && !headers['X-Amz-Content-Sha256'] && !headers['x-amz-content-sha256'])
        headers['X-Amz-Content-Sha256'] = hash(this.request.body || '', 'hex')

      if (headers['X-Amz-Date'] || headers['x-amz-date'])
        this.datetime = headers['X-Amz-Date'] || headers['x-amz-date']
      else
        headers['X-Amz-Date'] = this.getDateTime()
    }

    delete headers.Authorization
    delete headers.authorization
  }
}

RequestSigner.prototype.sign = function() {
  if (!this.parsedPath) this.prepareRequest()

  if (this.request.signQuery) {
    this.parsedPath.query['X-Amz-Signature'] = this.signature()
  } else {
    this.request.headers.Authorization = this.authHeader()
  }

  this.request.path = this.formatPath()

  return this.request
}

RequestSigner.prototype.getDateTime = function() {
  if (!this.datetime) {
    var headers = this.request.headers,
      date = new Date(headers.Date || headers.date || new Date)

    this.datetime = date.toISOString().replace(/[:\-]|\.\d{3}/g, '')

    // Remove the trailing 'Z' on the timestamp string for CodeCommit git access
    if (this.isCodeCommitGit) this.datetime = this.datetime.slice(0, -1)
  }
  return this.datetime
}

RequestSigner.prototype.getDate = function() {
  return this.getDateTime().substr(0, 8)
}

RequestSigner.prototype.authHeader = function() {
  return [
    'AWS4-HMAC-SHA256 Credential=' + this.credentials.accessKeyId + '/' + this.credentialString(),
    'SignedHeaders=' + this.signedHeaders(),
    'Signature=' + this.signature(),
  ].join(', ')
}

RequestSigner.prototype.signature = function() {
  var date = this.getDate(),
      cacheKey = [this.credentials.secretAccessKey, date, this.region, this.service].join(),
      kDate, kRegion, kService, kCredentials = credentialsCache.get(cacheKey)
  if (!kCredentials) {
    kDate = hmac('AWS4' + this.credentials.secretAccessKey, date)
    kRegion = hmac(kDate, this.region)
    kService = hmac(kRegion, this.service)
    kCredentials = hmac(kService, 'aws4_request')
    credentialsCache.set(cacheKey, kCredentials)
  }
  return hmac(kCredentials, this.stringToSign(), 'hex')
}

RequestSigner.prototype.stringToSign = function() {
  return [
    'AWS4-HMAC-SHA256',
    this.getDateTime(),
    this.credentialString(),
    hash(this.canonicalString(), 'hex'),
  ].join('\n')
}

RequestSigner.prototype.canonicalString = function() {
  if (!this.parsedPath) this.prepareRequest()

  var pathStr = this.parsedPath.path,
      query = this.parsedPath.query,
      headers = this.request.headers,
      queryStr = '',
      normalizePath = this.service !== 's3',
      decodePath = this.service === 's3' || this.request.doNotEncodePath,
      decodeSlashesInPath = this.service === 's3',
      firstValOnly = this.service === 's3',
      bodyHash

  if (this.service === 's3' && this.request.signQuery) {
    bodyHash = 'UNSIGNED-PAYLOAD'
  } else if (this.isCodeCommitGit) {
    bodyHash = ''
  } else {
    bodyHash = headers['X-Amz-Content-Sha256'] || headers['x-amz-content-sha256'] ||
      hash(this.request.body || '', 'hex')
  }

  if (query) {
    var reducedQuery = Object.keys(query).reduce(function(obj, key) {
      if (!key) return obj
      obj[encodeRfc3986Full(key)] = !Array.isArray(query[key]) ? query[key] :
        (firstValOnly ? query[key][0] : query[key])
      return obj
    }, {})
    var encodedQueryPieces = []
    Object.keys(reducedQuery).sort().forEach(function(key) {
      if (!Array.isArray(reducedQuery[key])) {
        encodedQueryPieces.push(key + '=' + encodeRfc3986Full(reducedQuery[key]))
      } else {
        reducedQuery[key].map(encodeRfc3986Full).sort()
          .forEach(function(val) { encodedQueryPieces.push(key + '=' + val) })
      }
    })
    queryStr = encodedQueryPieces.join('&')
  }
  if (pathStr !== '/') {
    if (normalizePath) pathStr = pathStr.replace(/\/{2,}/g, '/')
    pathStr = pathStr.split('/').reduce(function(path, piece) {
      if (normalizePath && piece === '..') {
        path.pop()
      } else if (!normalizePath || piece !== '.') {
        if (decodePath) piece = decodeURIComponent(piece.replace(/\+/g, ' '))
        path.push(encodeRfc3986Full(piece))
      }
      return path
    }, []).join('/')
    if (pathStr[0] !== '/') pathStr = '/' + pathStr
    if (decodeSlashesInPath) pathStr = pathStr.replace(/%2F/g, '/')
  }

  return [
    this.request.method || 'GET',
    pathStr,
    queryStr,
    this.canonicalHeaders() + '\n',
    this.signedHeaders(),
    bodyHash,
  ].join('\n')
}

RequestSigner.prototype.canonicalHeaders = function() {
  var headers = this.request.headers
  function trimAll(header) {
    return header.toString().trim().replace(/\s+/g, ' ')
  }
  return Object.keys(headers)
    .filter(function(key) { return HEADERS_TO_IGNORE[key.toLowerCase()] == null })
    .sort(function(a, b) { return a.toLowerCase() < b.toLowerCase() ? -1 : 1 })
    .map(function(key) { return key.toLowerCase() + ':' + trimAll(headers[key]) })
    .join('\n')
}

RequestSigner.prototype.signedHeaders = function() {
  return Object.keys(this.request.headers)
    .map(function(key) { return key.toLowerCase() })
    .filter(function(key) { return HEADERS_TO_IGNORE[key] == null })
    .sort()
    .join(';')
}

RequestSigner.prototype.credentialString = function() {
  return [
    this.getDate(),
    this.region,
    this.service,
    'aws4_request',
  ].join('/')
}

RequestSigner.prototype.defaultCredentials = function() {
  var env = process.env
  return {
    accessKeyId: env.AWS_ACCESS_KEY_ID || env.AWS_ACCESS_KEY,
    secretAccessKey: env.AWS_SECRET_ACCESS_KEY || env.AWS_SECRET_KEY,
    sessionToken: env.AWS_SESSION_TOKEN,
  }
}

RequestSigner.prototype.parsePath = function() {
  var path = this.request.path || '/'

  // S3 doesn't always encode characters > 127 correctly and
  // all services don't encode characters > 255 correctly
  // So if there are non-reserved chars (and it's not already all % encoded), just encode them all
  if (/[^0-9A-Za-z;,/?:@&=+$\-_.!~*'()#%]/.test(path)) {
    path = encodeURI(decodeURI(path))
  }

  var queryIx = path.indexOf('?'),
      query = null

  if (queryIx >= 0) {
    query = querystring.parse(path.slice(queryIx + 1))
    path = path.slice(0, queryIx)
  }

  this.parsedPath = {
    path: path,
    query: query,
  }
}

RequestSigner.prototype.formatPath = function() {
  var path = this.parsedPath.path,
      query = this.parsedPath.query

  if (!query) return path

  // Services don't support empty query string keys
  if (query[''] != null) delete query['']

  return path + '?' + encodeRfc3986(querystring.stringify(query))
}

aws4.RequestSigner = RequestSigner

aws4.sign = function(request, credentials) {
  return new RequestSigner(request, credentials).sign()
}


/***/ }),

/***/ 74225:
/***/ ((module) => {

module.exports = function(size) {
  return new LruCache(size)
}

function LruCache(size) {
  this.capacity = size | 0
  this.map = Object.create(null)
  this.list = new DoublyLinkedList()
}

LruCache.prototype.get = function(key) {
  var node = this.map[key]
  if (node == null) return undefined
  this.used(node)
  return node.val
}

LruCache.prototype.set = function(key, val) {
  var node = this.map[key]
  if (node != null) {
    node.val = val
  } else {
    if (!this.capacity) this.prune()
    if (!this.capacity) return false
    node = new DoublyLinkedNode(key, val)
    this.map[key] = node
    this.capacity--
  }
  this.used(node)
  return true
}

LruCache.prototype.used = function(node) {
  this.list.moveToFront(node)
}

LruCache.prototype.prune = function() {
  var node = this.list.pop()
  if (node != null) {
    delete this.map[node.key]
    this.capacity++
  }
}


function DoublyLinkedList() {
  this.firstNode = null
  this.lastNode = null
}

DoublyLinkedList.prototype.moveToFront = function(node) {
  if (this.firstNode == node) return

  this.remove(node)

  if (this.firstNode == null) {
    this.firstNode = node
    this.lastNode = node
    node.prev = null
    node.next = null
  } else {
    node.prev = null
    node.next = this.firstNode
    node.next.prev = node
    this.firstNode = node
  }
}

DoublyLinkedList.prototype.pop = function() {
  var lastNode = this.lastNode
  if (lastNode != null) {
    this.remove(lastNode)
  }
  return lastNode
}

DoublyLinkedList.prototype.remove = function(node) {
  if (this.firstNode == node) {
    this.firstNode = node.next
  } else if (node.prev != null) {
    node.prev.next = node.next
  }
  if (this.lastNode == node) {
    this.lastNode = node.prev
  } else if (node.next != null) {
    node.next.prev = node.prev
  }
}


function DoublyLinkedNode(key, val) {
  this.key = key
  this.val = val
  this.prev = null
  this.next = null
}


/***/ }),

/***/ 9417:
/***/ ((module) => {

"use strict";

module.exports = balanced;
function balanced(a, b, str) {
  if (a instanceof RegExp) a = maybeMatch(a, str);
  if (b instanceof RegExp) b = maybeMatch(b, str);

  var r = range(a, b, str);

  return r && {
    start: r[0],
    end: r[1],
    pre: str.slice(0, r[0]),
    body: str.slice(r[0] + a.length, r[1]),
    post: str.slice(r[1] + b.length)
  };
}

function maybeMatch(reg, str) {
  var m = str.match(reg);
  return m ? m[0] : null;
}

balanced.range = range;
function range(a, b, str) {
  var begs, beg, left, right, result;
  var ai = str.indexOf(a);
  var bi = str.indexOf(b, ai + 1);
  var i = ai;

  if (ai >= 0 && bi > 0) {
    if(a===b) {
      return [ai, bi];
    }
    begs = [];
    left = str.length;

    while (i >= 0 && !result) {
      if (i == ai) {
        begs.push(i);
        ai = str.indexOf(a, i + 1);
      } else if (begs.length == 1) {
        result = [ begs.pop(), bi ];
      } else {
        beg = begs.pop();
        if (beg < left) {
          left = beg;
          right = bi;
        }

        bi = str.indexOf(b, i + 1);
      }

      i = ai < bi && ai >= 0 ? ai : bi;
    }

    if (begs.length) {
      result = [ left, right ];
    }
  }

  return result;
}


/***/ }),

/***/ 85848:
/***/ (function(module, exports, __webpack_require__) {

/* module decorator */ module = __webpack_require__.nmd(module);
/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */
;(function(root) {

	// Detect free variables `exports`.
	var freeExports =  true && exports;

	// Detect free variable `module`.
	var freeModule =  true && module &&
		module.exports == freeExports && module;

	// Detect free variable `global`, from Node.js or Browserified code, and use
	// it as `root`.
	var freeGlobal = typeof global == 'object' && global;
	if (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal) {
		root = freeGlobal;
	}

	/*--------------------------------------------------------------------------*/

	var InvalidCharacterError = function(message) {
		this.message = message;
	};
	InvalidCharacterError.prototype = new Error;
	InvalidCharacterError.prototype.name = 'InvalidCharacterError';

	var error = function(message) {
		// Note: the error messages used throughout this file match those used by
		// the native `atob`/`btoa` implementation in Chromium.
		throw new InvalidCharacterError(message);
	};

	var TABLE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
	// http://whatwg.org/html/common-microsyntaxes.html#space-character
	var REGEX_SPACE_CHARACTERS = /[\t\n\f\r ]/g;

	// `decode` is designed to be fully compatible with `atob` as described in the
	// HTML Standard. http://whatwg.org/html/webappapis.html#dom-windowbase64-atob
	// The optimized base64-decoding algorithm used is based on @atk’s excellent
	// implementation. https://gist.github.com/atk/1020396
	var decode = function(input) {
		input = String(input)
			.replace(REGEX_SPACE_CHARACTERS, '');
		var length = input.length;
		if (length % 4 == 0) {
			input = input.replace(/==?$/, '');
			length = input.length;
		}
		if (
			length % 4 == 1 ||
			// http://whatwg.org/C#alphanumeric-ascii-characters
			/[^+a-zA-Z0-9/]/.test(input)
		) {
			error(
				'Invalid character: the string to be decoded is not correctly encoded.'
			);
		}
		var bitCounter = 0;
		var bitStorage;
		var buffer;
		var output = '';
		var position = -1;
		while (++position < length) {
			buffer = TABLE.indexOf(input.charAt(position));
			bitStorage = bitCounter % 4 ? bitStorage * 64 + buffer : buffer;
			// Unless this is the first of a group of 4 characters…
			if (bitCounter++ % 4) {
				// …convert the first 8 bits to a single ASCII character.
				output += String.fromCharCode(
					0xFF & bitStorage >> (-2 * bitCounter & 6)
				);
			}
		}
		return output;
	};

	// `encode` is designed to be fully compatible with `btoa` as described in the
	// HTML Standard: http://whatwg.org/html/webappapis.html#dom-windowbase64-btoa
	var encode = function(input) {
		input = String(input);
		if (/[^\0-\xFF]/.test(input)) {
			// Note: no need to special-case astral symbols here, as surrogates are
			// matched, and the input is supposed to only contain ASCII anyway.
			error(
				'The string to be encoded contains characters outside of the ' +
				'Latin1 range.'
			);
		}
		var padding = input.length % 3;
		var output = '';
		var position = -1;
		var a;
		var b;
		var c;
		var buffer;
		// Make sure any padding is handled outside of the loop.
		var length = input.length - padding;

		while (++position < length) {
			// Read three bytes, i.e. 24 bits.
			a = input.charCodeAt(position) << 16;
			b = input.charCodeAt(++position) << 8;
			c = input.charCodeAt(++position);
			buffer = a + b + c;
			// Turn the 24 bits into four chunks of 6 bits each, and append the
			// matching character for each of them to the output.
			output += (
				TABLE.charAt(buffer >> 18 & 0x3F) +
				TABLE.charAt(buffer >> 12 & 0x3F) +
				TABLE.charAt(buffer >> 6 & 0x3F) +
				TABLE.charAt(buffer & 0x3F)
			);
		}

		if (padding == 2) {
			a = input.charCodeAt(position) << 8;
			b = input.charCodeAt(++position);
			buffer = a + b;
			output += (
				TABLE.charAt(buffer >> 10) +
				TABLE.charAt((buffer >> 4) & 0x3F) +
				TABLE.charAt((buffer << 2) & 0x3F) +
				'='
			);
		} else if (padding == 1) {
			buffer = input.charCodeAt(position);
			output += (
				TABLE.charAt(buffer >> 2) +
				TABLE.charAt((buffer << 4) & 0x3F) +
				'=='
			);
		}

		return output;
	};

	var base64 = {
		'encode': encode,
		'decode': decode,
		'version': '1.0.0'
	};

	// Some AMD build optimizers, like r.js, check for specific condition patterns
	// like the following:
	if (
		typeof define == 'function' &&
		typeof define.amd == 'object' &&
		define.amd
	) {
		define(function() {
			return base64;
		});
	}	else if (freeExports && !freeExports.nodeType) {
		if (freeModule) { // in Node.js or RingoJS v0.8.0+
			freeModule.exports = base64;
		} else { // in Narwhal or RingoJS v0.7.0-
			for (var key in base64) {
				base64.hasOwnProperty(key) && (freeExports[key] = base64[key]);
			}
		}
	} else { // in Rhino or a web browser
		root.base64 = base64;
	}

}(this));


/***/ }),

/***/ 18348:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
var __webpack_unused_export__;

__webpack_unused_export__ = ({ value: true });
var pad_string_1 = __webpack_require__(14155);
function encode(input, encoding) {
    if (encoding === void 0) { encoding = "utf8"; }
    if (Buffer.isBuffer(input)) {
        return fromBase64(input.toString("base64"));
    }
    return fromBase64(Buffer.from(input, encoding).toString("base64"));
}
;
function decode(base64url, encoding) {
    if (encoding === void 0) { encoding = "utf8"; }
    return Buffer.from(toBase64(base64url), "base64").toString(encoding);
}
function toBase64(base64url) {
    base64url = base64url.toString();
    return pad_string_1.default(base64url)
        .replace(/\-/g, "+")
        .replace(/_/g, "/");
}
function fromBase64(base64) {
    return base64
        .replace(/=/g, "")
        .replace(/\+/g, "-")
        .replace(/\//g, "_");
}
function toBuffer(base64url) {
    return Buffer.from(toBase64(base64url), "base64");
}
var base64url = encode;
base64url.encode = encode;
base64url.decode = decode;
base64url.toBase64 = toBase64;
base64url.fromBase64 = fromBase64;
base64url.toBuffer = toBuffer;
exports.default = base64url;


/***/ }),

/***/ 14155:
/***/ ((__unused_webpack_module, exports) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
function padString(input) {
    var segmentLength = 4;
    var stringLength = input.length;
    var diff = stringLength % segmentLength;
    if (!diff) {
        return input;
    }
    var position = stringLength;
    var padLength = segmentLength - diff;
    var paddedStringLength = stringLength + padLength;
    var buffer = Buffer.alloc(paddedStringLength);
    buffer.write(input);
    while (padLength--) {
        buffer.write("=", position++);
    }
    return buffer.toString();
}
exports.default = padString;


/***/ }),

/***/ 27291:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(18348).default;
module.exports.default = module.exports;


/***/ }),

/***/ 45447:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var crypto_hash_sha512 = __webpack_require__(68729).lowlevel.crypto_hash;

/*
 * This file is a 1:1 port from the OpenBSD blowfish.c and bcrypt_pbkdf.c. As a
 * result, it retains the original copyright and license. The two files are
 * under slightly different (but compatible) licenses, and are here combined in
 * one file.
 *
 * Credit for the actual porting work goes to:
 *  Devi Mandiri <me@devi.web.id>
 */

/*
 * The Blowfish portions are under the following license:
 *
 * Blowfish block cipher for OpenBSD
 * Copyright 1997 Niels Provos <provos@physnet.uni-hamburg.de>
 * All rights reserved.
 *
 * Implementation advice by David Mazieres <dm@lcs.mit.edu>.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. The name of the author may not be used to endorse or promote products
 *    derived from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

/*
 * The bcrypt_pbkdf portions are under the following license:
 *
 * Copyright (c) 2013 Ted Unangst <tedu@openbsd.org>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

/*
 * Performance improvements (Javascript-specific):
 *
 * Copyright 2016, Joyent Inc
 * Author: Alex Wilson <alex.wilson@joyent.com>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

// Ported from OpenBSD bcrypt_pbkdf.c v1.9

var BLF_J = 0;

var Blowfish = function() {
  this.S = [
    new Uint32Array([
      0xd1310ba6, 0x98dfb5ac, 0x2ffd72db, 0xd01adfb7,
      0xb8e1afed, 0x6a267e96, 0xba7c9045, 0xf12c7f99,
      0x24a19947, 0xb3916cf7, 0x0801f2e2, 0x858efc16,
      0x636920d8, 0x71574e69, 0xa458fea3, 0xf4933d7e,
      0x0d95748f, 0x728eb658, 0x718bcd58, 0x82154aee,
      0x7b54a41d, 0xc25a59b5, 0x9c30d539, 0x2af26013,
      0xc5d1b023, 0x286085f0, 0xca417918, 0xb8db38ef,
      0x8e79dcb0, 0x603a180e, 0x6c9e0e8b, 0xb01e8a3e,
      0xd71577c1, 0xbd314b27, 0x78af2fda, 0x55605c60,
      0xe65525f3, 0xaa55ab94, 0x57489862, 0x63e81440,
      0x55ca396a, 0x2aab10b6, 0xb4cc5c34, 0x1141e8ce,
      0xa15486af, 0x7c72e993, 0xb3ee1411, 0x636fbc2a,
      0x2ba9c55d, 0x741831f6, 0xce5c3e16, 0x9b87931e,
      0xafd6ba33, 0x6c24cf5c, 0x7a325381, 0x28958677,
      0x3b8f4898, 0x6b4bb9af, 0xc4bfe81b, 0x66282193,
      0x61d809cc, 0xfb21a991, 0x487cac60, 0x5dec8032,
      0xef845d5d, 0xe98575b1, 0xdc262302, 0xeb651b88,
      0x23893e81, 0xd396acc5, 0x0f6d6ff3, 0x83f44239,
      0x2e0b4482, 0xa4842004, 0x69c8f04a, 0x9e1f9b5e,
      0x21c66842, 0xf6e96c9a, 0x670c9c61, 0xabd388f0,
      0x6a51a0d2, 0xd8542f68, 0x960fa728, 0xab5133a3,
      0x6eef0b6c, 0x137a3be4, 0xba3bf050, 0x7efb2a98,
      0xa1f1651d, 0x39af0176, 0x66ca593e, 0x82430e88,
      0x8cee8619, 0x456f9fb4, 0x7d84a5c3, 0x3b8b5ebe,
      0xe06f75d8, 0x85c12073, 0x401a449f, 0x56c16aa6,
      0x4ed3aa62, 0x363f7706, 0x1bfedf72, 0x429b023d,
      0x37d0d724, 0xd00a1248, 0xdb0fead3, 0x49f1c09b,
      0x075372c9, 0x80991b7b, 0x25d479d8, 0xf6e8def7,
      0xe3fe501a, 0xb6794c3b, 0x976ce0bd, 0x04c006ba,
      0xc1a94fb6, 0x409f60c4, 0x5e5c9ec2, 0x196a2463,
      0x68fb6faf, 0x3e6c53b5, 0x1339b2eb, 0x3b52ec6f,
      0x6dfc511f, 0x9b30952c, 0xcc814544, 0xaf5ebd09,
      0xbee3d004, 0xde334afd, 0x660f2807, 0x192e4bb3,
      0xc0cba857, 0x45c8740f, 0xd20b5f39, 0xb9d3fbdb,
      0x5579c0bd, 0x1a60320a, 0xd6a100c6, 0x402c7279,
      0x679f25fe, 0xfb1fa3cc, 0x8ea5e9f8, 0xdb3222f8,
      0x3c7516df, 0xfd616b15, 0x2f501ec8, 0xad0552ab,
      0x323db5fa, 0xfd238760, 0x53317b48, 0x3e00df82,
      0x9e5c57bb, 0xca6f8ca0, 0x1a87562e, 0xdf1769db,
      0xd542a8f6, 0x287effc3, 0xac6732c6, 0x8c4f5573,
      0x695b27b0, 0xbbca58c8, 0xe1ffa35d, 0xb8f011a0,
      0x10fa3d98, 0xfd2183b8, 0x4afcb56c, 0x2dd1d35b,
      0x9a53e479, 0xb6f84565, 0xd28e49bc, 0x4bfb9790,
      0xe1ddf2da, 0xa4cb7e33, 0x62fb1341, 0xcee4c6e8,
      0xef20cada, 0x36774c01, 0xd07e9efe, 0x2bf11fb4,
      0x95dbda4d, 0xae909198, 0xeaad8e71, 0x6b93d5a0,
      0xd08ed1d0, 0xafc725e0, 0x8e3c5b2f, 0x8e7594b7,
      0x8ff6e2fb, 0xf2122b64, 0x8888b812, 0x900df01c,
      0x4fad5ea0, 0x688fc31c, 0xd1cff191, 0xb3a8c1ad,
      0x2f2f2218, 0xbe0e1777, 0xea752dfe, 0x8b021fa1,
      0xe5a0cc0f, 0xb56f74e8, 0x18acf3d6, 0xce89e299,
      0xb4a84fe0, 0xfd13e0b7, 0x7cc43b81, 0xd2ada8d9,
      0x165fa266, 0x80957705, 0x93cc7314, 0x211a1477,
      0xe6ad2065, 0x77b5fa86, 0xc75442f5, 0xfb9d35cf,
      0xebcdaf0c, 0x7b3e89a0, 0xd6411bd3, 0xae1e7e49,
      0x00250e2d, 0x2071b35e, 0x226800bb, 0x57b8e0af,
      0x2464369b, 0xf009b91e, 0x5563911d, 0x59dfa6aa,
      0x78c14389, 0xd95a537f, 0x207d5ba2, 0x02e5b9c5,
      0x83260376, 0x6295cfa9, 0x11c81968, 0x4e734a41,
      0xb3472dca, 0x7b14a94a, 0x1b510052, 0x9a532915,
      0xd60f573f, 0xbc9bc6e4, 0x2b60a476, 0x81e67400,
      0x08ba6fb5, 0x571be91f, 0xf296ec6b, 0x2a0dd915,
      0xb6636521, 0xe7b9f9b6, 0xff34052e, 0xc5855664,
      0x53b02d5d, 0xa99f8fa1, 0x08ba4799, 0x6e85076a]),
    new Uint32Array([
      0x4b7a70e9, 0xb5b32944, 0xdb75092e, 0xc4192623,
      0xad6ea6b0, 0x49a7df7d, 0x9cee60b8, 0x8fedb266,
      0xecaa8c71, 0x699a17ff, 0x5664526c, 0xc2b19ee1,
      0x193602a5, 0x75094c29, 0xa0591340, 0xe4183a3e,
      0x3f54989a, 0x5b429d65, 0x6b8fe4d6, 0x99f73fd6,
      0xa1d29c07, 0xefe830f5, 0x4d2d38e6, 0xf0255dc1,
      0x4cdd2086, 0x8470eb26, 0x6382e9c6, 0x021ecc5e,
      0x09686b3f, 0x3ebaefc9, 0x3c971814, 0x6b6a70a1,
      0x687f3584, 0x52a0e286, 0xb79c5305, 0xaa500737,
      0x3e07841c, 0x7fdeae5c, 0x8e7d44ec, 0x5716f2b8,
      0xb03ada37, 0xf0500c0d, 0xf01c1f04, 0x0200b3ff,
      0xae0cf51a, 0x3cb574b2, 0x25837a58, 0xdc0921bd,
      0xd19113f9, 0x7ca92ff6, 0x94324773, 0x22f54701,
      0x3ae5e581, 0x37c2dadc, 0xc8b57634, 0x9af3dda7,
      0xa9446146, 0x0fd0030e, 0xecc8c73e, 0xa4751e41,
      0xe238cd99, 0x3bea0e2f, 0x3280bba1, 0x183eb331,
      0x4e548b38, 0x4f6db908, 0x6f420d03, 0xf60a04bf,
      0x2cb81290, 0x24977c79, 0x5679b072, 0xbcaf89af,
      0xde9a771f, 0xd9930810, 0xb38bae12, 0xdccf3f2e,
      0x5512721f, 0x2e6b7124, 0x501adde6, 0x9f84cd87,
      0x7a584718, 0x7408da17, 0xbc9f9abc, 0xe94b7d8c,
      0xec7aec3a, 0xdb851dfa, 0x63094366, 0xc464c3d2,
      0xef1c1847, 0x3215d908, 0xdd433b37, 0x24c2ba16,
      0x12a14d43, 0x2a65c451, 0x50940002, 0x133ae4dd,
      0x71dff89e, 0x10314e55, 0x81ac77d6, 0x5f11199b,
      0x043556f1, 0xd7a3c76b, 0x3c11183b, 0x5924a509,
      0xf28fe6ed, 0x97f1fbfa, 0x9ebabf2c, 0x1e153c6e,
      0x86e34570, 0xeae96fb1, 0x860e5e0a, 0x5a3e2ab3,
      0x771fe71c, 0x4e3d06fa, 0x2965dcb9, 0x99e71d0f,
      0x803e89d6, 0x5266c825, 0x2e4cc978, 0x9c10b36a,
      0xc6150eba, 0x94e2ea78, 0xa5fc3c53, 0x1e0a2df4,
      0xf2f74ea7, 0x361d2b3d, 0x1939260f, 0x19c27960,
      0x5223a708, 0xf71312b6, 0xebadfe6e, 0xeac31f66,
      0xe3bc4595, 0xa67bc883, 0xb17f37d1, 0x018cff28,
      0xc332ddef, 0xbe6c5aa5, 0x65582185, 0x68ab9802,
      0xeecea50f, 0xdb2f953b, 0x2aef7dad, 0x5b6e2f84,
      0x1521b628, 0x29076170, 0xecdd4775, 0x619f1510,
      0x13cca830, 0xeb61bd96, 0x0334fe1e, 0xaa0363cf,
      0xb5735c90, 0x4c70a239, 0xd59e9e0b, 0xcbaade14,
      0xeecc86bc, 0x60622ca7, 0x9cab5cab, 0xb2f3846e,
      0x648b1eaf, 0x19bdf0ca, 0xa02369b9, 0x655abb50,
      0x40685a32, 0x3c2ab4b3, 0x319ee9d5, 0xc021b8f7,
      0x9b540b19, 0x875fa099, 0x95f7997e, 0x623d7da8,
      0xf837889a, 0x97e32d77, 0x11ed935f, 0x16681281,
      0x0e358829, 0xc7e61fd6, 0x96dedfa1, 0x7858ba99,
      0x57f584a5, 0x1b227263, 0x9b83c3ff, 0x1ac24696,
      0xcdb30aeb, 0x532e3054, 0x8fd948e4, 0x6dbc3128,
      0x58ebf2ef, 0x34c6ffea, 0xfe28ed61, 0xee7c3c73,
      0x5d4a14d9, 0xe864b7e3, 0x42105d14, 0x203e13e0,
      0x45eee2b6, 0xa3aaabea, 0xdb6c4f15, 0xfacb4fd0,
      0xc742f442, 0xef6abbb5, 0x654f3b1d, 0x41cd2105,
      0xd81e799e, 0x86854dc7, 0xe44b476a, 0x3d816250,
      0xcf62a1f2, 0x5b8d2646, 0xfc8883a0, 0xc1c7b6a3,
      0x7f1524c3, 0x69cb7492, 0x47848a0b, 0x5692b285,
      0x095bbf00, 0xad19489d, 0x1462b174, 0x23820e00,
      0x58428d2a, 0x0c55f5ea, 0x1dadf43e, 0x233f7061,
      0x3372f092, 0x8d937e41, 0xd65fecf1, 0x6c223bdb,
      0x7cde3759, 0xcbee7460, 0x4085f2a7, 0xce77326e,
      0xa6078084, 0x19f8509e, 0xe8efd855, 0x61d99735,
      0xa969a7aa, 0xc50c06c2, 0x5a04abfc, 0x800bcadc,
      0x9e447a2e, 0xc3453484, 0xfdd56705, 0x0e1e9ec9,
      0xdb73dbd3, 0x105588cd, 0x675fda79, 0xe3674340,
      0xc5c43465, 0x713e38d8, 0x3d28f89e, 0xf16dff20,
      0x153e21e7, 0x8fb03d4a, 0xe6e39f2b, 0xdb83adf7]),
    new Uint32Array([
      0xe93d5a68, 0x948140f7, 0xf64c261c, 0x94692934,
      0x411520f7, 0x7602d4f7, 0xbcf46b2e, 0xd4a20068,
      0xd4082471, 0x3320f46a, 0x43b7d4b7, 0x500061af,
      0x1e39f62e, 0x97244546, 0x14214f74, 0xbf8b8840,
      0x4d95fc1d, 0x96b591af, 0x70f4ddd3, 0x66a02f45,
      0xbfbc09ec, 0x03bd9785, 0x7fac6dd0, 0x31cb8504,
      0x96eb27b3, 0x55fd3941, 0xda2547e6, 0xabca0a9a,
      0x28507825, 0x530429f4, 0x0a2c86da, 0xe9b66dfb,
      0x68dc1462, 0xd7486900, 0x680ec0a4, 0x27a18dee,
      0x4f3ffea2, 0xe887ad8c, 0xb58ce006, 0x7af4d6b6,
      0xaace1e7c, 0xd3375fec, 0xce78a399, 0x406b2a42,
      0x20fe9e35, 0xd9f385b9, 0xee39d7ab, 0x3b124e8b,
      0x1dc9faf7, 0x4b6d1856, 0x26a36631, 0xeae397b2,
      0x3a6efa74, 0xdd5b4332, 0x6841e7f7, 0xca7820fb,
      0xfb0af54e, 0xd8feb397, 0x454056ac, 0xba489527,
      0x55533a3a, 0x20838d87, 0xfe6ba9b7, 0xd096954b,
      0x55a867bc, 0xa1159a58, 0xcca92963, 0x99e1db33,
      0xa62a4a56, 0x3f3125f9, 0x5ef47e1c, 0x9029317c,
      0xfdf8e802, 0x04272f70, 0x80bb155c, 0x05282ce3,
      0x95c11548, 0xe4c66d22, 0x48c1133f, 0xc70f86dc,
      0x07f9c9ee, 0x41041f0f, 0x404779a4, 0x5d886e17,
      0x325f51eb, 0xd59bc0d1, 0xf2bcc18f, 0x41113564,
      0x257b7834, 0x602a9c60, 0xdff8e8a3, 0x1f636c1b,
      0x0e12b4c2, 0x02e1329e, 0xaf664fd1, 0xcad18115,
      0x6b2395e0, 0x333e92e1, 0x3b240b62, 0xeebeb922,
      0x85b2a20e, 0xe6ba0d99, 0xde720c8c, 0x2da2f728,
      0xd0127845, 0x95b794fd, 0x647d0862, 0xe7ccf5f0,
      0x5449a36f, 0x877d48fa, 0xc39dfd27, 0xf33e8d1e,
      0x0a476341, 0x992eff74, 0x3a6f6eab, 0xf4f8fd37,
      0xa812dc60, 0xa1ebddf8, 0x991be14c, 0xdb6e6b0d,
      0xc67b5510, 0x6d672c37, 0x2765d43b, 0xdcd0e804,
      0xf1290dc7, 0xcc00ffa3, 0xb5390f92, 0x690fed0b,
      0x667b9ffb, 0xcedb7d9c, 0xa091cf0b, 0xd9155ea3,
      0xbb132f88, 0x515bad24, 0x7b9479bf, 0x763bd6eb,
      0x37392eb3, 0xcc115979, 0x8026e297, 0xf42e312d,
      0x6842ada7, 0xc66a2b3b, 0x12754ccc, 0x782ef11c,
      0x6a124237, 0xb79251e7, 0x06a1bbe6, 0x4bfb6350,
      0x1a6b1018, 0x11caedfa, 0x3d25bdd8, 0xe2e1c3c9,
      0x44421659, 0x0a121386, 0xd90cec6e, 0xd5abea2a,
      0x64af674e, 0xda86a85f, 0xbebfe988, 0x64e4c3fe,
      0x9dbc8057, 0xf0f7c086, 0x60787bf8, 0x6003604d,
      0xd1fd8346, 0xf6381fb0, 0x7745ae04, 0xd736fccc,
      0x83426b33, 0xf01eab71, 0xb0804187, 0x3c005e5f,
      0x77a057be, 0xbde8ae24, 0x55464299, 0xbf582e61,
      0x4e58f48f, 0xf2ddfda2, 0xf474ef38, 0x8789bdc2,
      0x5366f9c3, 0xc8b38e74, 0xb475f255, 0x46fcd9b9,
      0x7aeb2661, 0x8b1ddf84, 0x846a0e79, 0x915f95e2,
      0x466e598e, 0x20b45770, 0x8cd55591, 0xc902de4c,
      0xb90bace1, 0xbb8205d0, 0x11a86248, 0x7574a99e,
      0xb77f19b6, 0xe0a9dc09, 0x662d09a1, 0xc4324633,
      0xe85a1f02, 0x09f0be8c, 0x4a99a025, 0x1d6efe10,
      0x1ab93d1d, 0x0ba5a4df, 0xa186f20f, 0x2868f169,
      0xdcb7da83, 0x573906fe, 0xa1e2ce9b, 0x4fcd7f52,
      0x50115e01, 0xa70683fa, 0xa002b5c4, 0x0de6d027,
      0x9af88c27, 0x773f8641, 0xc3604c06, 0x61a806b5,
      0xf0177a28, 0xc0f586e0, 0x006058aa, 0x30dc7d62,
      0x11e69ed7, 0x2338ea63, 0x53c2dd94, 0xc2c21634,
      0xbbcbee56, 0x90bcb6de, 0xebfc7da1, 0xce591d76,
      0x6f05e409, 0x4b7c0188, 0x39720a3d, 0x7c927c24,
      0x86e3725f, 0x724d9db9, 0x1ac15bb4, 0xd39eb8fc,
      0xed545578, 0x08fca5b5, 0xd83d7cd3, 0x4dad0fc4,
      0x1e50ef5e, 0xb161e6f8, 0xa28514d9, 0x6c51133c,
      0x6fd5c7e7, 0x56e14ec4, 0x362abfce, 0xddc6c837,
      0xd79a3234, 0x92638212, 0x670efa8e, 0x406000e0]),
    new Uint32Array([
      0x3a39ce37, 0xd3faf5cf, 0xabc27737, 0x5ac52d1b,
      0x5cb0679e, 0x4fa33742, 0xd3822740, 0x99bc9bbe,
      0xd5118e9d, 0xbf0f7315, 0xd62d1c7e, 0xc700c47b,
      0xb78c1b6b, 0x21a19045, 0xb26eb1be, 0x6a366eb4,
      0x5748ab2f, 0xbc946e79, 0xc6a376d2, 0x6549c2c8,
      0x530ff8ee, 0x468dde7d, 0xd5730a1d, 0x4cd04dc6,
      0x2939bbdb, 0xa9ba4650, 0xac9526e8, 0xbe5ee304,
      0xa1fad5f0, 0x6a2d519a, 0x63ef8ce2, 0x9a86ee22,
      0xc089c2b8, 0x43242ef6, 0xa51e03aa, 0x9cf2d0a4,
      0x83c061ba, 0x9be96a4d, 0x8fe51550, 0xba645bd6,
      0x2826a2f9, 0xa73a3ae1, 0x4ba99586, 0xef5562e9,
      0xc72fefd3, 0xf752f7da, 0x3f046f69, 0x77fa0a59,
      0x80e4a915, 0x87b08601, 0x9b09e6ad, 0x3b3ee593,
      0xe990fd5a, 0x9e34d797, 0x2cf0b7d9, 0x022b8b51,
      0x96d5ac3a, 0x017da67d, 0xd1cf3ed6, 0x7c7d2d28,
      0x1f9f25cf, 0xadf2b89b, 0x5ad6b472, 0x5a88f54c,
      0xe029ac71, 0xe019a5e6, 0x47b0acfd, 0xed93fa9b,
      0xe8d3c48d, 0x283b57cc, 0xf8d56629, 0x79132e28,
      0x785f0191, 0xed756055, 0xf7960e44, 0xe3d35e8c,
      0x15056dd4, 0x88f46dba, 0x03a16125, 0x0564f0bd,
      0xc3eb9e15, 0x3c9057a2, 0x97271aec, 0xa93a072a,
      0x1b3f6d9b, 0x1e6321f5, 0xf59c66fb, 0x26dcf319,
      0x7533d928, 0xb155fdf5, 0x03563482, 0x8aba3cbb,
      0x28517711, 0xc20ad9f8, 0xabcc5167, 0xccad925f,
      0x4de81751, 0x3830dc8e, 0x379d5862, 0x9320f991,
      0xea7a90c2, 0xfb3e7bce, 0x5121ce64, 0x774fbe32,
      0xa8b6e37e, 0xc3293d46, 0x48de5369, 0x6413e680,
      0xa2ae0810, 0xdd6db224, 0x69852dfd, 0x09072166,
      0xb39a460a, 0x6445c0dd, 0x586cdecf, 0x1c20c8ae,
      0x5bbef7dd, 0x1b588d40, 0xccd2017f, 0x6bb4e3bb,
      0xdda26a7e, 0x3a59ff45, 0x3e350a44, 0xbcb4cdd5,
      0x72eacea8, 0xfa6484bb, 0x8d6612ae, 0xbf3c6f47,
      0xd29be463, 0x542f5d9e, 0xaec2771b, 0xf64e6370,
      0x740e0d8d, 0xe75b1357, 0xf8721671, 0xaf537d5d,
      0x4040cb08, 0x4eb4e2cc, 0x34d2466a, 0x0115af84,
      0xe1b00428, 0x95983a1d, 0x06b89fb4, 0xce6ea048,
      0x6f3f3b82, 0x3520ab82, 0x011a1d4b, 0x277227f8,
      0x611560b1, 0xe7933fdc, 0xbb3a792b, 0x344525bd,
      0xa08839e1, 0x51ce794b, 0x2f32c9b7, 0xa01fbac9,
      0xe01cc87e, 0xbcc7d1f6, 0xcf0111c3, 0xa1e8aac7,
      0x1a908749, 0xd44fbd9a, 0xd0dadecb, 0xd50ada38,
      0x0339c32a, 0xc6913667, 0x8df9317c, 0xe0b12b4f,
      0xf79e59b7, 0x43f5bb3a, 0xf2d519ff, 0x27d9459c,
      0xbf97222c, 0x15e6fc2a, 0x0f91fc71, 0x9b941525,
      0xfae59361, 0xceb69ceb, 0xc2a86459, 0x12baa8d1,
      0xb6c1075e, 0xe3056a0c, 0x10d25065, 0xcb03a442,
      0xe0ec6e0e, 0x1698db3b, 0x4c98a0be, 0x3278e964,
      0x9f1f9532, 0xe0d392df, 0xd3a0342b, 0x8971f21e,
      0x1b0a7441, 0x4ba3348c, 0xc5be7120, 0xc37632d8,
      0xdf359f8d, 0x9b992f2e, 0xe60b6f47, 0x0fe3f11d,
      0xe54cda54, 0x1edad891, 0xce6279cf, 0xcd3e7e6f,
      0x1618b166, 0xfd2c1d05, 0x848fd2c5, 0xf6fb2299,
      0xf523f357, 0xa6327623, 0x93a83531, 0x56cccd02,
      0xacf08162, 0x5a75ebb5, 0x6e163697, 0x88d273cc,
      0xde966292, 0x81b949d0, 0x4c50901b, 0x71c65614,
      0xe6c6c7bd, 0x327a140a, 0x45e1d006, 0xc3f27b9a,
      0xc9aa53fd, 0x62a80f00, 0xbb25bfe2, 0x35bdd2f6,
      0x71126905, 0xb2040222, 0xb6cbcf7c, 0xcd769c2b,
      0x53113ec0, 0x1640e3d3, 0x38abbd60, 0x2547adf0,
      0xba38209c, 0xf746ce76, 0x77afa1c5, 0x20756060,
      0x85cbfe4e, 0x8ae88dd8, 0x7aaaf9b0, 0x4cf9aa7e,
      0x1948c25c, 0x02fb8a8c, 0x01c36ae4, 0xd6ebe1f9,
      0x90d4f869, 0xa65cdea0, 0x3f09252d, 0xc208e69f,
      0xb74e6132, 0xce77e25b, 0x578fdfe3, 0x3ac372e6])
    ];
  this.P = new Uint32Array([
    0x243f6a88, 0x85a308d3, 0x13198a2e, 0x03707344,
    0xa4093822, 0x299f31d0, 0x082efa98, 0xec4e6c89,
    0x452821e6, 0x38d01377, 0xbe5466cf, 0x34e90c6c,
    0xc0ac29b7, 0xc97c50dd, 0x3f84d5b5, 0xb5470917,
    0x9216d5d9, 0x8979fb1b]);
};

function F(S, x8, i) {
  return (((S[0][x8[i+3]] +
            S[1][x8[i+2]]) ^
            S[2][x8[i+1]]) +
            S[3][x8[i]]);
};

Blowfish.prototype.encipher = function(x, x8) {
  if (x8 === undefined) {
    x8 = new Uint8Array(x.buffer);
    if (x.byteOffset !== 0)
      x8 = x8.subarray(x.byteOffset);
  }
  x[0] ^= this.P[0];
  for (var i = 1; i < 16; i += 2) {
    x[1] ^= F(this.S, x8, 0) ^ this.P[i];
    x[0] ^= F(this.S, x8, 4) ^ this.P[i+1];
  }
  var t = x[0];
  x[0] = x[1] ^ this.P[17];
  x[1] = t;
};

Blowfish.prototype.decipher = function(x) {
  var x8 = new Uint8Array(x.buffer);
  if (x.byteOffset !== 0)
    x8 = x8.subarray(x.byteOffset);
  x[0] ^= this.P[17];
  for (var i = 16; i > 0; i -= 2) {
    x[1] ^= F(this.S, x8, 0) ^ this.P[i];
    x[0] ^= F(this.S, x8, 4) ^ this.P[i-1];
  }
  var t = x[0];
  x[0] = x[1] ^ this.P[0];
  x[1] = t;
};

function stream2word(data, databytes){
  var i, temp = 0;
  for (i = 0; i < 4; i++, BLF_J++) {
    if (BLF_J >= databytes) BLF_J = 0;
    temp = (temp << 8) | data[BLF_J];
  }
  return temp;
};

Blowfish.prototype.expand0state = function(key, keybytes) {
  var d = new Uint32Array(2), i, k;
  var d8 = new Uint8Array(d.buffer);

  for (i = 0, BLF_J = 0; i < 18; i++) {
    this.P[i] ^= stream2word(key, keybytes);
  }
  BLF_J = 0;

  for (i = 0; i < 18; i += 2) {
    this.encipher(d, d8);
    this.P[i]   = d[0];
    this.P[i+1] = d[1];
  }

  for (i = 0; i < 4; i++) {
    for (k = 0; k < 256; k += 2) {
      this.encipher(d, d8);
      this.S[i][k]   = d[0];
      this.S[i][k+1] = d[1];
    }
  }
};

Blowfish.prototype.expandstate = function(data, databytes, key, keybytes) {
  var d = new Uint32Array(2), i, k;

  for (i = 0, BLF_J = 0; i < 18; i++) {
    this.P[i] ^= stream2word(key, keybytes);
  }

  for (i = 0, BLF_J = 0; i < 18; i += 2) {
    d[0] ^= stream2word(data, databytes);
    d[1] ^= stream2word(data, databytes);
    this.encipher(d);
    this.P[i]   = d[0];
    this.P[i+1] = d[1];
  }

  for (i = 0; i < 4; i++) {
    for (k = 0; k < 256; k += 2) {
      d[0] ^= stream2word(data, databytes);
      d[1] ^= stream2word(data, databytes);
      this.encipher(d);
      this.S[i][k]   = d[0];
      this.S[i][k+1] = d[1];
    }
  }
  BLF_J = 0;
};

Blowfish.prototype.enc = function(data, blocks) {
  for (var i = 0; i < blocks; i++) {
    this.encipher(data.subarray(i*2));
  }
};

Blowfish.prototype.dec = function(data, blocks) {
  for (var i = 0; i < blocks; i++) {
    this.decipher(data.subarray(i*2));
  }
};

var BCRYPT_BLOCKS = 8,
    BCRYPT_HASHSIZE = 32;

function bcrypt_hash(sha2pass, sha2salt, out) {
  var state = new Blowfish(),
      cdata = new Uint32Array(BCRYPT_BLOCKS), i,
      ciphertext = new Uint8Array([79,120,121,99,104,114,111,109,97,116,105,
            99,66,108,111,119,102,105,115,104,83,119,97,116,68,121,110,97,109,
            105,116,101]); //"OxychromaticBlowfishSwatDynamite"

  state.expandstate(sha2salt, 64, sha2pass, 64);
  for (i = 0; i < 64; i++) {
    state.expand0state(sha2salt, 64);
    state.expand0state(sha2pass, 64);
  }

  for (i = 0; i < BCRYPT_BLOCKS; i++)
    cdata[i] = stream2word(ciphertext, ciphertext.byteLength);
  for (i = 0; i < 64; i++)
    state.enc(cdata, cdata.byteLength / 8);

  for (i = 0; i < BCRYPT_BLOCKS; i++) {
    out[4*i+3] = cdata[i] >>> 24;
    out[4*i+2] = cdata[i] >>> 16;
    out[4*i+1] = cdata[i] >>> 8;
    out[4*i+0] = cdata[i];
  }
};

function bcrypt_pbkdf(pass, passlen, salt, saltlen, key, keylen, rounds) {
  var sha2pass = new Uint8Array(64),
      sha2salt = new Uint8Array(64),
      out = new Uint8Array(BCRYPT_HASHSIZE),
      tmpout = new Uint8Array(BCRYPT_HASHSIZE),
      countsalt = new Uint8Array(saltlen+4),
      i, j, amt, stride, dest, count,
      origkeylen = keylen;

  if (rounds < 1)
    return -1;
  if (passlen === 0 || saltlen === 0 || keylen === 0 ||
      keylen > (out.byteLength * out.byteLength) || saltlen > (1<<20))
    return -1;

  stride = Math.floor((keylen + out.byteLength - 1) / out.byteLength);
  amt = Math.floor((keylen + stride - 1) / stride);

  for (i = 0; i < saltlen; i++)
    countsalt[i] = salt[i];

  crypto_hash_sha512(sha2pass, pass, passlen);

  for (count = 1; keylen > 0; count++) {
    countsalt[saltlen+0] = count >>> 24;
    countsalt[saltlen+1] = count >>> 16;
    countsalt[saltlen+2] = count >>>  8;
    countsalt[saltlen+3] = count;

    crypto_hash_sha512(sha2salt, countsalt, saltlen + 4);
    bcrypt_hash(sha2pass, sha2salt, tmpout);
    for (i = out.byteLength; i--;)
      out[i] = tmpout[i];

    for (i = 1; i < rounds; i++) {
      crypto_hash_sha512(sha2salt, tmpout, tmpout.byteLength);
      bcrypt_hash(sha2pass, sha2salt, tmpout);
      for (j = 0; j < out.byteLength; j++)
        out[j] ^= tmpout[j];
    }

    amt = Math.min(amt, keylen);
    for (i = 0; i < amt; i++) {
      dest = i * stride + (count - 1);
      if (dest >= origkeylen)
        break;
      key[dest] = out[i];
    }
    keylen -= i;
  }

  return 0;
};

module.exports = {
      BLOCKS: BCRYPT_BLOCKS,
      HASHSIZE: BCRYPT_HASHSIZE,
      hash: bcrypt_hash,
      pbkdf: bcrypt_pbkdf
};


/***/ }),

/***/ 33717:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var concatMap = __webpack_require__(86891);
var balanced = __webpack_require__(9417);

module.exports = expandTop;

var escSlash = '\0SLASH'+Math.random()+'\0';
var escOpen = '\0OPEN'+Math.random()+'\0';
var escClose = '\0CLOSE'+Math.random()+'\0';
var escComma = '\0COMMA'+Math.random()+'\0';
var escPeriod = '\0PERIOD'+Math.random()+'\0';

function numeric(str) {
  return parseInt(str, 10) == str
    ? parseInt(str, 10)
    : str.charCodeAt(0);
}

function escapeBraces(str) {
  return str.split('\\\\').join(escSlash)
            .split('\\{').join(escOpen)
            .split('\\}').join(escClose)
            .split('\\,').join(escComma)
            .split('\\.').join(escPeriod);
}

function unescapeBraces(str) {
  return str.split(escSlash).join('\\')
            .split(escOpen).join('{')
            .split(escClose).join('}')
            .split(escComma).join(',')
            .split(escPeriod).join('.');
}


// Basically just str.split(","), but handling cases
// where we have nested braced sections, which should be
// treated as individual members, like {a,{b,c},d}
function parseCommaParts(str) {
  if (!str)
    return [''];

  var parts = [];
  var m = balanced('{', '}', str);

  if (!m)
    return str.split(',');

  var pre = m.pre;
  var body = m.body;
  var post = m.post;
  var p = pre.split(',');

  p[p.length-1] += '{' + body + '}';
  var postParts = parseCommaParts(post);
  if (post.length) {
    p[p.length-1] += postParts.shift();
    p.push.apply(p, postParts);
  }

  parts.push.apply(parts, p);

  return parts;
}

function expandTop(str) {
  if (!str)
    return [];

  // I don't know why Bash 4.3 does this, but it does.
  // Anything starting with {} will have the first two bytes preserved
  // but *only* at the top level, so {},a}b will not expand to anything,
  // but a{},b}c will be expanded to [a}c,abc].
  // One could argue that this is a bug in Bash, but since the goal of
  // this module is to match Bash's rules, we escape a leading {}
  if (str.substr(0, 2) === '{}') {
    str = '\\{\\}' + str.substr(2);
  }

  return expand(escapeBraces(str), true).map(unescapeBraces);
}

function identity(e) {
  return e;
}

function embrace(str) {
  return '{' + str + '}';
}
function isPadded(el) {
  return /^-?0\d/.test(el);
}

function lte(i, y) {
  return i <= y;
}
function gte(i, y) {
  return i >= y;
}

function expand(str, isTop) {
  var expansions = [];

  var m = balanced('{', '}', str);
  if (!m || /\$$/.test(m.pre)) return [str];

  var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
  var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
  var isSequence = isNumericSequence || isAlphaSequence;
  var isOptions = m.body.indexOf(',') >= 0;
  if (!isSequence && !isOptions) {
    // {a},b}
    if (m.post.match(/,.*\}/)) {
      str = m.pre + '{' + m.body + escClose + m.post;
      return expand(str);
    }
    return [str];
  }

  var n;
  if (isSequence) {
    n = m.body.split(/\.\./);
  } else {
    n = parseCommaParts(m.body);
    if (n.length === 1) {
      // x{{a,b}}y ==> x{a}y x{b}y
      n = expand(n[0], false).map(embrace);
      if (n.length === 1) {
        var post = m.post.length
          ? expand(m.post, false)
          : [''];
        return post.map(function(p) {
          return m.pre + n[0] + p;
        });
      }
    }
  }

  // at this point, n is the parts, and we know it's not a comma set
  // with a single entry.

  // no need to expand pre, since it is guaranteed to be free of brace-sets
  var pre = m.pre;
  var post = m.post.length
    ? expand(m.post, false)
    : [''];

  var N;

  if (isSequence) {
    var x = numeric(n[0]);
    var y = numeric(n[1]);
    var width = Math.max(n[0].length, n[1].length)
    var incr = n.length == 3
      ? Math.abs(numeric(n[2]))
      : 1;
    var test = lte;
    var reverse = y < x;
    if (reverse) {
      incr *= -1;
      test = gte;
    }
    var pad = n.some(isPadded);

    N = [];

    for (var i = x; test(i, y); i += incr) {
      var c;
      if (isAlphaSequence) {
        c = String.fromCharCode(i);
        if (c === '\\')
          c = '';
      } else {
        c = String(i);
        if (pad) {
          var need = width - c.length;
          if (need > 0) {
            var z = new Array(need + 1).join('0');
            if (i < 0)
              c = '-' + z + c.slice(1);
            else
              c = z + c;
          }
        }
      }
      N.push(c);
    }
  } else {
    N = concatMap(n, function(el) { return expand(el, false) });
  }

  for (var j = 0; j < N.length; j++) {
    for (var k = 0; k < post.length; k++) {
      var expansion = pre + N[j] + post[k];
      if (!isTop || isSequence || expansion)
        expansions.push(expansion);
    }
  }

  return expansions;
}



/***/ }),

/***/ 24340:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {PassThrough: PassThroughStream} = __webpack_require__(92413);

module.exports = options => {
	options = {...options};

	const {array} = options;
	let {encoding} = options;
	const isBuffer = encoding === 'buffer';
	let objectMode = false;

	if (array) {
		objectMode = !(encoding || isBuffer);
	} else {
		encoding = encoding || 'utf8';
	}

	if (isBuffer) {
		encoding = null;
	}

	const stream = new PassThroughStream({objectMode});

	if (encoding) {
		stream.setEncoding(encoding);
	}

	let length = 0;
	const chunks = [];

	stream.on('data', chunk => {
		chunks.push(chunk);

		if (objectMode) {
			length = chunks.length;
		} else {
			length += chunk.length;
		}
	});

	stream.getBufferedValue = () => {
		if (array) {
			return chunks;
		}

		return isBuffer ? Buffer.concat(chunks, length) : chunks.join('');
	};

	stream.getBufferedLength = () => length;

	return stream;
};


/***/ }),

/***/ 97040:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {constants: BufferConstants} = __webpack_require__(64293);
const pump = __webpack_require__(18341);
const bufferStream = __webpack_require__(24340);

class MaxBufferError extends Error {
	constructor() {
		super('maxBuffer exceeded');
		this.name = 'MaxBufferError';
	}
}

async function getStream(inputStream, options) {
	if (!inputStream) {
		return Promise.reject(new Error('Expected a stream'));
	}

	options = {
		maxBuffer: Infinity,
		...options
	};

	const {maxBuffer} = options;

	let stream;
	await new Promise((resolve, reject) => {
		const rejectPromise = error => {
			// Don't retrieve an oversized buffer.
			if (error && stream.getBufferedLength() <= BufferConstants.MAX_LENGTH) {
				error.bufferedData = stream.getBufferedValue();
			}

			reject(error);
		};

		stream = pump(inputStream, bufferStream(options), error => {
			if (error) {
				rejectPromise(error);
				return;
			}

			resolve();
		});

		stream.on('data', () => {
			if (stream.getBufferedLength() > maxBuffer) {
				rejectPromise(new MaxBufferError());
			}
		});
	});

	return stream.getBufferedValue();
}

module.exports = getStream;
// TODO: Remove this for the next major release
module.exports.default = getStream;
module.exports.buffer = (stream, options) => getStream(stream, {...options, encoding: 'buffer'});
module.exports.array = (stream, options) => getStream(stream, {...options, array: true});
module.exports.MaxBufferError = MaxBufferError;


/***/ }),

/***/ 15993:
/***/ ((module) => {

"use strict";

module.exports = object => {
	const result = {};

	for (const [key, value] of Object.entries(object)) {
		result[key.toLowerCase()] = value;
	}

	return result;
};


/***/ }),

/***/ 78116:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const EventEmitter = __webpack_require__(28614);
const urlLib = __webpack_require__(78835);
const normalizeUrl = __webpack_require__(17952);
const getStream = __webpack_require__(97040);
const CachePolicy = __webpack_require__(61002);
const Response = __webpack_require__(9004);
const lowercaseKeys = __webpack_require__(15993);
const cloneResponse = __webpack_require__(81312);
const Keyv = __webpack_require__(51531);

class CacheableRequest {
	constructor(request, cacheAdapter) {
		if (typeof request !== 'function') {
			throw new TypeError('Parameter `request` must be a function');
		}

		this.cache = new Keyv({
			uri: typeof cacheAdapter === 'string' && cacheAdapter,
			store: typeof cacheAdapter !== 'string' && cacheAdapter,
			namespace: 'cacheable-request'
		});

		return this.createCacheableRequest(request);
	}

	createCacheableRequest(request) {
		return (opts, cb) => {
			let url;
			if (typeof opts === 'string') {
				url = normalizeUrlObject(urlLib.parse(opts));
				opts = {};
			} else if (opts instanceof urlLib.URL) {
				url = normalizeUrlObject(urlLib.parse(opts.toString()));
				opts = {};
			} else {
				const [pathname, ...searchParts] = (opts.path || '').split('?');
				const search = searchParts.length > 0 ?
					`?${searchParts.join('?')}` :
					'';
				url = normalizeUrlObject({ ...opts, pathname, search });
			}

			opts = {
				headers: {},
				method: 'GET',
				cache: true,
				strictTtl: false,
				automaticFailover: false,
				...opts,
				...urlObjectToRequestOptions(url)
			};
			opts.headers = lowercaseKeys(opts.headers);

			const ee = new EventEmitter();
			const normalizedUrlString = normalizeUrl(
				urlLib.format(url),
				{
					stripWWW: false,
					removeTrailingSlash: false,
					stripAuthentication: false
				}
			);
			const key = `${opts.method}:${normalizedUrlString}`;
			let revalidate = false;
			let madeRequest = false;

			const makeRequest = opts => {
				madeRequest = true;
				let requestErrored = false;
				let requestErrorCallback;

				const requestErrorPromise = new Promise(resolve => {
					requestErrorCallback = () => {
						if (!requestErrored) {
							requestErrored = true;
							resolve();
						}
					};
				});

				const handler = response => {
					if (revalidate && !opts.forceRefresh) {
						response.status = response.statusCode;
						const revalidatedPolicy = CachePolicy.fromObject(revalidate.cachePolicy).revalidatedPolicy(opts, response);
						if (!revalidatedPolicy.modified) {
							const headers = revalidatedPolicy.policy.responseHeaders();
							response = new Response(revalidate.statusCode, headers, revalidate.body, revalidate.url);
							response.cachePolicy = revalidatedPolicy.policy;
							response.fromCache = true;
						}
					}

					if (!response.fromCache) {
						response.cachePolicy = new CachePolicy(opts, response, opts);
						response.fromCache = false;
					}

					let clonedResponse;
					if (opts.cache && response.cachePolicy.storable()) {
						clonedResponse = cloneResponse(response);

						(async () => {
							try {
								const bodyPromise = getStream.buffer(response);

								await Promise.race([
									requestErrorPromise,
									new Promise(resolve => response.once('end', resolve))
								]);

								if (requestErrored) {
									return;
								}

								const body = await bodyPromise;

								const value = {
									cachePolicy: response.cachePolicy.toObject(),
									url: response.url,
									statusCode: response.fromCache ? revalidate.statusCode : response.statusCode,
									body
								};

								let ttl = opts.strictTtl ? response.cachePolicy.timeToLive() : undefined;
								if (opts.maxTtl) {
									ttl = ttl ? Math.min(ttl, opts.maxTtl) : opts.maxTtl;
								}

								await this.cache.set(key, value, ttl);
							} catch (error) {
								ee.emit('error', new CacheableRequest.CacheError(error));
							}
						})();
					} else if (opts.cache && revalidate) {
						(async () => {
							try {
								await this.cache.delete(key);
							} catch (error) {
								ee.emit('error', new CacheableRequest.CacheError(error));
							}
						})();
					}

					ee.emit('response', clonedResponse || response);
					if (typeof cb === 'function') {
						cb(clonedResponse || response);
					}
				};

				try {
					const req = request(opts, handler);
					req.once('error', requestErrorCallback);
					req.once('abort', requestErrorCallback);
					ee.emit('request', req);
				} catch (error) {
					ee.emit('error', new CacheableRequest.RequestError(error));
				}
			};

			(async () => {
				const get = async opts => {
					await Promise.resolve();

					const cacheEntry = opts.cache ? await this.cache.get(key) : undefined;
					if (typeof cacheEntry === 'undefined') {
						return makeRequest(opts);
					}

					const policy = CachePolicy.fromObject(cacheEntry.cachePolicy);
					if (policy.satisfiesWithoutRevalidation(opts) && !opts.forceRefresh) {
						const headers = policy.responseHeaders();
						const response = new Response(cacheEntry.statusCode, headers, cacheEntry.body, cacheEntry.url);
						response.cachePolicy = policy;
						response.fromCache = true;

						ee.emit('response', response);
						if (typeof cb === 'function') {
							cb(response);
						}
					} else {
						revalidate = cacheEntry;
						opts.headers = policy.revalidationHeaders(opts);
						makeRequest(opts);
					}
				};

				const errorHandler = error => ee.emit('error', new CacheableRequest.CacheError(error));
				this.cache.once('error', errorHandler);
				ee.on('response', () => this.cache.removeListener('error', errorHandler));

				try {
					await get(opts);
				} catch (error) {
					if (opts.automaticFailover && !madeRequest) {
						makeRequest(opts);
					}

					ee.emit('error', new CacheableRequest.CacheError(error));
				}
			})();

			return ee;
		};
	}
}

function urlObjectToRequestOptions(url) {
	const options = { ...url };
	options.path = `${url.pathname || '/'}${url.search || ''}`;
	delete options.pathname;
	delete options.search;
	return options;
}

function normalizeUrlObject(url) {
	// If url was parsed by url.parse or new URL:
	// - hostname will be set
	// - host will be hostname[:port]
	// - port will be set if it was explicit in the parsed string
	// Otherwise, url was from request options:
	// - hostname or host may be set
	// - host shall not have port encoded
	return {
		protocol: url.protocol,
		auth: url.auth,
		hostname: url.hostname || url.host || 'localhost',
		port: url.port,
		pathname: url.pathname,
		search: url.search
	};
}

CacheableRequest.RequestError = class extends Error {
	constructor(error) {
		super(error.message);
		this.name = 'RequestError';
		Object.assign(this, error);
	}
};

CacheableRequest.CacheError = class extends Error {
	constructor(error) {
		super(error.message);
		this.name = 'CacheError';
		Object.assign(this, error);
	}
};

module.exports = CacheableRequest;


/***/ }),

/***/ 28803:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var GetIntrinsic = __webpack_require__(74538);

var callBind = __webpack_require__(62977);

var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));

module.exports = function callBoundIntrinsic(name, allowMissing) {
	var intrinsic = GetIntrinsic(name, !!allowMissing);
	if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {
		return callBind(intrinsic);
	}
	return intrinsic;
};


/***/ }),

/***/ 62977:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var bind = __webpack_require__(88334);
var GetIntrinsic = __webpack_require__(74538);

var $apply = GetIntrinsic('%Function.prototype.apply%');
var $call = GetIntrinsic('%Function.prototype.call%');
var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);

var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);
var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
var $max = GetIntrinsic('%Math.max%');

if ($defineProperty) {
	try {
		$defineProperty({}, 'a', { value: 1 });
	} catch (e) {
		// IE 8 has a broken defineProperty
		$defineProperty = null;
	}
}

module.exports = function callBind(originalFunction) {
	var func = $reflectApply(bind, $call, arguments);
	if ($gOPD && $defineProperty) {
		var desc = $gOPD(func, 'length');
		if (desc.configurable) {
			// original length, plus the receiver, minus any additional arguments (after the receiver)
			$defineProperty(
				func,
				'length',
				{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }
			);
		}
	}
	return func;
};

var applyBind = function applyBind() {
	return $reflectApply(bind, $apply, arguments);
};

if ($defineProperty) {
	$defineProperty(module.exports, 'apply', { value: applyBind });
} else {
	module.exports.apply = applyBind;
}


/***/ }),

/***/ 35684:
/***/ ((module) => {

function Caseless (dict) {
  this.dict = dict || {}
}
Caseless.prototype.set = function (name, value, clobber) {
  if (typeof name === 'object') {
    for (var i in name) {
      this.set(i, name[i], value)
    }
  } else {
    if (typeof clobber === 'undefined') clobber = true
    var has = this.has(name)

    if (!clobber && has) this.dict[has] = this.dict[has] + ',' + value
    else this.dict[has || name] = value
    return has
  }
}
Caseless.prototype.has = function (name) {
  var keys = Object.keys(this.dict)
    , name = name.toLowerCase()
    ;
  for (var i=0;i<keys.length;i++) {
    if (keys[i].toLowerCase() === name) return keys[i]
  }
  return false
}
Caseless.prototype.get = function (name) {
  name = name.toLowerCase()
  var result, _key
  var headers = this.dict
  Object.keys(headers).forEach(function (key) {
    _key = key.toLowerCase()
    if (name === _key) result = headers[key]
  })
  return result
}
Caseless.prototype.swap = function (name) {
  var has = this.has(name)
  if (has === name) return
  if (!has) throw new Error('There is no header than matches "'+name+'"')
  this.dict[name] = this.dict[has]
  delete this.dict[has]
}
Caseless.prototype.del = function (name) {
  var has = this.has(name)
  return delete this.dict[has || name]
}

module.exports = function (dict) {return new Caseless(dict)}
module.exports.httpify = function (resp, headers) {
  var c = new Caseless(headers)
  resp.setHeader = function (key, value, clobber) {
    if (typeof value === 'undefined') return
    return c.set(key, value, clobber)
  }
  resp.hasHeader = function (key) {
    return c.has(key)
  }
  resp.getHeader = function (key) {
    return c.get(key)
  }
  resp.removeHeader = function (key) {
    return c.del(key)
  }
  resp.headers = c.dict
  return c
}


/***/ }),

/***/ 27972:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const os = __webpack_require__(12087);

const extractPathRegex = /\s+at.*(?:\(|\s)(.*)\)?/;
const pathRegex = /^(?:(?:(?:node|(?:internal\/[\w/]*|.*node_modules\/(?:babel-polyfill|pirates)\/.*)?\w+)\.js:\d+:\d+)|native)/;
const homeDir = typeof os.homedir === 'undefined' ? '' : os.homedir();

module.exports = (stack, options) => {
	options = Object.assign({pretty: false}, options);

	return stack.replace(/\\/g, '/')
		.split('\n')
		.filter(line => {
			const pathMatches = line.match(extractPathRegex);
			if (pathMatches === null || !pathMatches[1]) {
				return true;
			}

			const match = pathMatches[1];

			// Electron
			if (
				match.includes('.app/Contents/Resources/electron.asar') ||
				match.includes('.app/Contents/Resources/default_app.asar')
			) {
				return false;
			}

			return !pathRegex.test(match);
		})
		.filter(line => line.trim() !== '')
		.map(line => {
			if (options.pretty) {
				return line.replace(extractPathRegex, (m, p1) => m.replace(p1, p1.replace(homeDir, '~')));
			}

			return line;
		})
		.join('\n');
};


/***/ }),

/***/ 81312:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const PassThrough = __webpack_require__(92413).PassThrough;
const mimicResponse = __webpack_require__(42610);

const cloneResponse = response => {
	if (!(response && response.pipe)) {
		throw new TypeError('Parameter `response` must be a response stream.');
	}

	const clone = new PassThrough();
	mimicResponse(response, clone);

	return response.pipe(clone);
};

module.exports = cloneResponse;


/***/ }),

/***/ 85443:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(31669);
var Stream = __webpack_require__(92413).Stream;
var DelayedStream = __webpack_require__(18611);

module.exports = CombinedStream;
function CombinedStream() {
  this.writable = false;
  this.readable = true;
  this.dataSize = 0;
  this.maxDataSize = 2 * 1024 * 1024;
  this.pauseStreams = true;

  this._released = false;
  this._streams = [];
  this._currentStream = null;
  this._insideLoop = false;
  this._pendingNext = false;
}
util.inherits(CombinedStream, Stream);

CombinedStream.create = function(options) {
  var combinedStream = new this();

  options = options || {};
  for (var option in options) {
    combinedStream[option] = options[option];
  }

  return combinedStream;
};

CombinedStream.isStreamLike = function(stream) {
  return (typeof stream !== 'function')
    && (typeof stream !== 'string')
    && (typeof stream !== 'boolean')
    && (typeof stream !== 'number')
    && (!Buffer.isBuffer(stream));
};

CombinedStream.prototype.append = function(stream) {
  var isStreamLike = CombinedStream.isStreamLike(stream);

  if (isStreamLike) {
    if (!(stream instanceof DelayedStream)) {
      var newStream = DelayedStream.create(stream, {
        maxDataSize: Infinity,
        pauseStream: this.pauseStreams,
      });
      stream.on('data', this._checkDataSize.bind(this));
      stream = newStream;
    }

    this._handleErrors(stream);

    if (this.pauseStreams) {
      stream.pause();
    }
  }

  this._streams.push(stream);
  return this;
};

CombinedStream.prototype.pipe = function(dest, options) {
  Stream.prototype.pipe.call(this, dest, options);
  this.resume();
  return dest;
};

CombinedStream.prototype._getNext = function() {
  this._currentStream = null;

  if (this._insideLoop) {
    this._pendingNext = true;
    return; // defer call
  }

  this._insideLoop = true;
  try {
    do {
      this._pendingNext = false;
      this._realGetNext();
    } while (this._pendingNext);
  } finally {
    this._insideLoop = false;
  }
};

CombinedStream.prototype._realGetNext = function() {
  var stream = this._streams.shift();


  if (typeof stream == 'undefined') {
    this.end();
    return;
  }

  if (typeof stream !== 'function') {
    this._pipeNext(stream);
    return;
  }

  var getStream = stream;
  getStream(function(stream) {
    var isStreamLike = CombinedStream.isStreamLike(stream);
    if (isStreamLike) {
      stream.on('data', this._checkDataSize.bind(this));
      this._handleErrors(stream);
    }

    this._pipeNext(stream);
  }.bind(this));
};

CombinedStream.prototype._pipeNext = function(stream) {
  this._currentStream = stream;

  var isStreamLike = CombinedStream.isStreamLike(stream);
  if (isStreamLike) {
    stream.on('end', this._getNext.bind(this));
    stream.pipe(this, {end: false});
    return;
  }

  var value = stream;
  this.write(value);
  this._getNext();
};

CombinedStream.prototype._handleErrors = function(stream) {
  var self = this;
  stream.on('error', function(err) {
    self._emitError(err);
  });
};

CombinedStream.prototype.write = function(data) {
  this.emit('data', data);
};

CombinedStream.prototype.pause = function() {
  if (!this.pauseStreams) {
    return;
  }

  if(this.pauseStreams && this._currentStream && typeof(this._currentStream.pause) == 'function') this._currentStream.pause();
  this.emit('pause');
};

CombinedStream.prototype.resume = function() {
  if (!this._released) {
    this._released = true;
    this.writable = true;
    this._getNext();
  }

  if(this.pauseStreams && this._currentStream && typeof(this._currentStream.resume) == 'function') this._currentStream.resume();
  this.emit('resume');
};

CombinedStream.prototype.end = function() {
  this._reset();
  this.emit('end');
};

CombinedStream.prototype.destroy = function() {
  this._reset();
  this.emit('close');
};

CombinedStream.prototype._reset = function() {
  this.writable = false;
  this._streams = [];
  this._currentStream = null;
};

CombinedStream.prototype._checkDataSize = function() {
  this._updateDataSize();
  if (this.dataSize <= this.maxDataSize) {
    return;
  }

  var message =
    'DelayedStream#maxDataSize of ' + this.maxDataSize + ' bytes exceeded.';
  this._emitError(new Error(message));
};

CombinedStream.prototype._updateDataSize = function() {
  this.dataSize = 0;

  var self = this;
  this._streams.forEach(function(stream) {
    if (!stream.dataSize) {
      return;
    }

    self.dataSize += stream.dataSize;
  });

  if (this._currentStream && this._currentStream.dataSize) {
    this.dataSize += this._currentStream.dataSize;
  }
};

CombinedStream.prototype._emitError = function(err) {
  this._reset();
  this.emit('error', err);
};


/***/ }),

/***/ 86891:
/***/ ((module) => {

module.exports = function (xs, fn) {
    var res = [];
    for (var i = 0; i < xs.length; i++) {
        var x = fn(xs[i], i);
        if (isArray(x)) res.push.apply(res, x);
        else res.push(x);
    }
    return res;
};

var isArray = Array.isArray || function (xs) {
    return Object.prototype.toString.call(xs) === '[object Array]';
};


/***/ }),

/***/ 95898:
/***/ ((__unused_webpack_module, exports) => {

var __webpack_unused_export__;
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

// NOTE: These type checking functions intentionally don't use `instanceof`
// because it is fragile and can be easily faked with `Object.create()`.

function isArray(arg) {
  if (Array.isArray) {
    return Array.isArray(arg);
  }
  return objectToString(arg) === '[object Array]';
}
__webpack_unused_export__ = isArray;

function isBoolean(arg) {
  return typeof arg === 'boolean';
}
__webpack_unused_export__ = isBoolean;

function isNull(arg) {
  return arg === null;
}
__webpack_unused_export__ = isNull;

function isNullOrUndefined(arg) {
  return arg == null;
}
__webpack_unused_export__ = isNullOrUndefined;

function isNumber(arg) {
  return typeof arg === 'number';
}
__webpack_unused_export__ = isNumber;

function isString(arg) {
  return typeof arg === 'string';
}
__webpack_unused_export__ = isString;

function isSymbol(arg) {
  return typeof arg === 'symbol';
}
__webpack_unused_export__ = isSymbol;

function isUndefined(arg) {
  return arg === void 0;
}
__webpack_unused_export__ = isUndefined;

function isRegExp(re) {
  return objectToString(re) === '[object RegExp]';
}
__webpack_unused_export__ = isRegExp;

function isObject(arg) {
  return typeof arg === 'object' && arg !== null;
}
__webpack_unused_export__ = isObject;

function isDate(d) {
  return objectToString(d) === '[object Date]';
}
__webpack_unused_export__ = isDate;

function isError(e) {
  return (objectToString(e) === '[object Error]' || e instanceof Error);
}
exports.VZ = isError;

function isFunction(arg) {
  return typeof arg === 'function';
}
__webpack_unused_export__ = isFunction;

function isPrimitive(arg) {
  return arg === null ||
         typeof arg === 'boolean' ||
         typeof arg === 'number' ||
         typeof arg === 'string' ||
         typeof arg === 'symbol' ||  // ES6 symbol
         typeof arg === 'undefined';
}
__webpack_unused_export__ = isPrimitive;

__webpack_unused_export__ = Buffer.isBuffer;

function objectToString(o) {
  return Object.prototype.toString.call(o);
}


/***/ }),

/***/ 82391:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const PassThrough = __webpack_require__(92413).PassThrough;
const zlib = __webpack_require__(78761);
const mimicResponse = __webpack_require__(42610);

module.exports = response => {
	// TODO: Use Array#includes when targeting Node.js 6
	if (['gzip', 'deflate'].indexOf(response.headers['content-encoding']) === -1) {
		return response;
	}

	const unzip = zlib.createUnzip();
	const stream = new PassThrough();

	mimicResponse(response, stream);

	unzip.on('error', err => {
		if (err.code === 'Z_BUF_ERROR') {
			stream.end();
			return;
		}

		stream.emit('error', err);
	});

	response.pipe(unzip).pipe(stream);

	return stream;
};


/***/ }),

/***/ 56323:
/***/ ((module) => {

"use strict";


var isMergeableObject = function isMergeableObject(value) {
	return isNonNullObject(value)
		&& !isSpecial(value)
};

function isNonNullObject(value) {
	return !!value && typeof value === 'object'
}

function isSpecial(value) {
	var stringValue = Object.prototype.toString.call(value);

	return stringValue === '[object RegExp]'
		|| stringValue === '[object Date]'
		|| isReactElement(value)
}

// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25
var canUseSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;

function isReactElement(value) {
	return value.$$typeof === REACT_ELEMENT_TYPE
}

function emptyTarget(val) {
	return Array.isArray(val) ? [] : {}
}

function cloneUnlessOtherwiseSpecified(value, options) {
	return (options.clone !== false && options.isMergeableObject(value))
		? deepmerge(emptyTarget(value), value, options)
		: value
}

function defaultArrayMerge(target, source, options) {
	return target.concat(source).map(function(element) {
		return cloneUnlessOtherwiseSpecified(element, options)
	})
}

function getMergeFunction(key, options) {
	if (!options.customMerge) {
		return deepmerge
	}
	var customMerge = options.customMerge(key);
	return typeof customMerge === 'function' ? customMerge : deepmerge
}

function getEnumerableOwnPropertySymbols(target) {
	return Object.getOwnPropertySymbols
		? Object.getOwnPropertySymbols(target).filter(function(symbol) {
			return target.propertyIsEnumerable(symbol)
		})
		: []
}

function getKeys(target) {
	return Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))
}

function propertyIsOnObject(object, property) {
	try {
		return property in object
	} catch(_) {
		return false
	}
}

// Protects from prototype poisoning and unexpected merging up the prototype chain.
function propertyIsUnsafe(target, key) {
	return propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,
		&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,
			&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.
}

function mergeObject(target, source, options) {
	var destination = {};
	if (options.isMergeableObject(target)) {
		getKeys(target).forEach(function(key) {
			destination[key] = cloneUnlessOtherwiseSpecified(target[key], options);
		});
	}
	getKeys(source).forEach(function(key) {
		if (propertyIsUnsafe(target, key)) {
			return
		}

		if (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {
			destination[key] = getMergeFunction(key, options)(target[key], source[key], options);
		} else {
			destination[key] = cloneUnlessOtherwiseSpecified(source[key], options);
		}
	});
	return destination
}

function deepmerge(target, source, options) {
	options = options || {};
	options.arrayMerge = options.arrayMerge || defaultArrayMerge;
	options.isMergeableObject = options.isMergeableObject || isMergeableObject;
	// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()
	// implementations can use it. The caller may not replace it.
	options.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;

	var sourceIsArray = Array.isArray(source);
	var targetIsArray = Array.isArray(target);
	var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;

	if (!sourceAndTargetTypesMatch) {
		return cloneUnlessOtherwiseSpecified(source, options)
	} else if (sourceIsArray) {
		return options.arrayMerge(target, source, options)
	} else {
		return mergeObject(target, source, options)
	}
}

deepmerge.all = function deepmergeAll(array, options) {
	if (!Array.isArray(array)) {
		throw new Error('first argument should be an array')
	}

	return array.reduce(function(prev, next) {
		return deepmerge(prev, next, options)
	}, {})
};

var deepmerge_1 = deepmerge;

module.exports = deepmerge_1;


/***/ }),

/***/ 17611:
/***/ ((module, exports, __webpack_require__) => {

"use strict";

Object.defineProperty(exports, "__esModule", ({ value: true }));
const tls_1 = __webpack_require__(4016);
const deferToConnect = (socket, fn) => {
    let listeners;
    if (typeof fn === 'function') {
        const connect = fn;
        listeners = { connect };
    }
    else {
        listeners = fn;
    }
    const hasConnectListener = typeof listeners.connect === 'function';
    const hasSecureConnectListener = typeof listeners.secureConnect === 'function';
    const hasCloseListener = typeof listeners.close === 'function';
    const onConnect = () => {
        if (hasConnectListener) {
            listeners.connect();
        }
        if (socket instanceof tls_1.TLSSocket && hasSecureConnectListener) {
            if (socket.authorized) {
                listeners.secureConnect();
            }
            else if (!socket.authorizationError) {
                socket.once('secureConnect', listeners.secureConnect);
            }
        }
        if (hasCloseListener) {
            socket.once('close', listeners.close);
        }
    };
    if (socket.writable && !socket.connecting) {
        onConnect();
    }
    else if (socket.connecting) {
        socket.once('connect', onConnect);
    }
    else if (socket.destroyed && hasCloseListener) {
        listeners.close(socket._hadError);
    }
};
exports.default = deferToConnect;
// For CommonJS default export support
module.exports = deferToConnect;
module.exports.default = deferToConnect;


/***/ }),

/***/ 18611:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var Stream = __webpack_require__(92413).Stream;
var util = __webpack_require__(31669);

module.exports = DelayedStream;
function DelayedStream() {
  this.source = null;
  this.dataSize = 0;
  this.maxDataSize = 1024 * 1024;
  this.pauseStream = true;

  this._maxDataSizeExceeded = false;
  this._released = false;
  this._bufferedEvents = [];
}
util.inherits(DelayedStream, Stream);

DelayedStream.create = function(source, options) {
  var delayedStream = new this();

  options = options || {};
  for (var option in options) {
    delayedStream[option] = options[option];
  }

  delayedStream.source = source;

  var realEmit = source.emit;
  source.emit = function() {
    delayedStream._handleEmit(arguments);
    return realEmit.apply(source, arguments);
  };

  source.on('error', function() {});
  if (delayedStream.pauseStream) {
    source.pause();
  }

  return delayedStream;
};

Object.defineProperty(DelayedStream.prototype, 'readable', {
  configurable: true,
  enumerable: true,
  get: function() {
    return this.source.readable;
  }
});

DelayedStream.prototype.setEncoding = function() {
  return this.source.setEncoding.apply(this.source, arguments);
};

DelayedStream.prototype.resume = function() {
  if (!this._released) {
    this.release();
  }

  this.source.resume();
};

DelayedStream.prototype.pause = function() {
  this.source.pause();
};

DelayedStream.prototype.release = function() {
  this._released = true;

  this._bufferedEvents.forEach(function(args) {
    this.emit.apply(this, args);
  }.bind(this));
  this._bufferedEvents = [];
};

DelayedStream.prototype.pipe = function() {
  var r = Stream.prototype.pipe.apply(this, arguments);
  this.resume();
  return r;
};

DelayedStream.prototype._handleEmit = function(args) {
  if (this._released) {
    this.emit.apply(this, args);
    return;
  }

  if (args[0] === 'data') {
    this.dataSize += args[1].length;
    this._checkIfMaxDataSizeExceeded();
  }

  this._bufferedEvents.push(args);
};

DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() {
  if (this._maxDataSizeExceeded) {
    return;
  }

  if (this.dataSize <= this.maxDataSize) {
    return;
  }

  this._maxDataSizeExceeded = true;
  var message =
    'DelayedStream#maxDataSize of ' + this.maxDataSize + ' bytes exceeded.'
  this.emit('error', new Error(message));
};


/***/ }),

/***/ 18883:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/*!
 * depd
 * Copyright(c) 2014-2018 Douglas Christopher Wilson
 * MIT Licensed
 */

/**
 * Module dependencies.
 */

var relative = __webpack_require__(85622).relative

/**
 * Module exports.
 */

module.exports = depd

/**
 * Get the path to base files on.
 */

var basePath = process.cwd()

/**
 * Determine if namespace is contained in the string.
 */

function containsNamespace (str, namespace) {
  var vals = str.split(/[ ,]+/)
  var ns = String(namespace).toLowerCase()

  for (var i = 0; i < vals.length; i++) {
    var val = vals[i]

    // namespace contained
    if (val && (val === '*' || val.toLowerCase() === ns)) {
      return true
    }
  }

  return false
}

/**
 * Convert a data descriptor to accessor descriptor.
 */

function convertDataDescriptorToAccessor (obj, prop, message) {
  var descriptor = Object.getOwnPropertyDescriptor(obj, prop)
  var value = descriptor.value

  descriptor.get = function getter () { return value }

  if (descriptor.writable) {
    descriptor.set = function setter (val) { return (value = val) }
  }

  delete descriptor.value
  delete descriptor.writable

  Object.defineProperty(obj, prop, descriptor)

  return descriptor
}

/**
 * Create arguments string to keep arity.
 */

function createArgumentsString (arity) {
  var str = ''

  for (var i = 0; i < arity; i++) {
    str += ', arg' + i
  }

  return str.substr(2)
}

/**
 * Create stack string from stack.
 */

function createStackString (stack) {
  var str = this.name + ': ' + this.namespace

  if (this.message) {
    str += ' deprecated ' + this.message
  }

  for (var i = 0; i < stack.length; i++) {
    str += '\n    at ' + stack[i].toString()
  }

  return str
}

/**
 * Create deprecate for namespace in caller.
 */

function depd (namespace) {
  if (!namespace) {
    throw new TypeError('argument namespace is required')
  }

  var stack = getStack()
  var site = callSiteLocation(stack[1])
  var file = site[0]

  function deprecate (message) {
    // call to self as log
    log.call(deprecate, message)
  }

  deprecate._file = file
  deprecate._ignored = isignored(namespace)
  deprecate._namespace = namespace
  deprecate._traced = istraced(namespace)
  deprecate._warned = Object.create(null)

  deprecate.function = wrapfunction
  deprecate.property = wrapproperty

  return deprecate
}

/**
 * Determine if event emitter has listeners of a given type.
 *
 * The way to do this check is done three different ways in Node.js >= 0.8
 * so this consolidates them into a minimal set using instance methods.
 *
 * @param {EventEmitter} emitter
 * @param {string} type
 * @returns {boolean}
 * @private
 */

function eehaslisteners (emitter, type) {
  var count = typeof emitter.listenerCount !== 'function'
    ? emitter.listeners(type).length
    : emitter.listenerCount(type)

  return count > 0
}

/**
 * Determine if namespace is ignored.
 */

function isignored (namespace) {
  if (process.noDeprecation) {
    // --no-deprecation support
    return true
  }

  var str = process.env.NO_DEPRECATION || ''

  // namespace ignored
  return containsNamespace(str, namespace)
}

/**
 * Determine if namespace is traced.
 */

function istraced (namespace) {
  if (process.traceDeprecation) {
    // --trace-deprecation support
    return true
  }

  var str = process.env.TRACE_DEPRECATION || ''

  // namespace traced
  return containsNamespace(str, namespace)
}

/**
 * Display deprecation message.
 */

function log (message, site) {
  var haslisteners = eehaslisteners(process, 'deprecation')

  // abort early if no destination
  if (!haslisteners && this._ignored) {
    return
  }

  var caller
  var callFile
  var callSite
  var depSite
  var i = 0
  var seen = false
  var stack = getStack()
  var file = this._file

  if (site) {
    // provided site
    depSite = site
    callSite = callSiteLocation(stack[1])
    callSite.name = depSite.name
    file = callSite[0]
  } else {
    // get call site
    i = 2
    depSite = callSiteLocation(stack[i])
    callSite = depSite
  }

  // get caller of deprecated thing in relation to file
  for (; i < stack.length; i++) {
    caller = callSiteLocation(stack[i])
    callFile = caller[0]

    if (callFile === file) {
      seen = true
    } else if (callFile === this._file) {
      file = this._file
    } else if (seen) {
      break
    }
  }

  var key = caller
    ? depSite.join(':') + '__' + caller.join(':')
    : undefined

  if (key !== undefined && key in this._warned) {
    // already warned
    return
  }

  this._warned[key] = true

  // generate automatic message from call site
  var msg = message
  if (!msg) {
    msg = callSite === depSite || !callSite.name
      ? defaultMessage(depSite)
      : defaultMessage(callSite)
  }

  // emit deprecation if listeners exist
  if (haslisteners) {
    var err = DeprecationError(this._namespace, msg, stack.slice(i))
    process.emit('deprecation', err)
    return
  }

  // format and write message
  var format = process.stderr.isTTY
    ? formatColor
    : formatPlain
  var output = format.call(this, msg, caller, stack.slice(i))
  process.stderr.write(output + '\n', 'utf8')
}

/**
 * Get call site location as array.
 */

function callSiteLocation (callSite) {
  var file = callSite.getFileName() || '<anonymous>'
  var line = callSite.getLineNumber()
  var colm = callSite.getColumnNumber()

  if (callSite.isEval()) {
    file = callSite.getEvalOrigin() + ', ' + file
  }

  var site = [file, line, colm]

  site.callSite = callSite
  site.name = callSite.getFunctionName()

  return site
}

/**
 * Generate a default message from the site.
 */

function defaultMessage (site) {
  var callSite = site.callSite
  var funcName = site.name

  // make useful anonymous name
  if (!funcName) {
    funcName = '<anonymous@' + formatLocation(site) + '>'
  }

  var context = callSite.getThis()
  var typeName = context && callSite.getTypeName()

  // ignore useless type name
  if (typeName === 'Object') {
    typeName = undefined
  }

  // make useful type name
  if (typeName === 'Function') {
    typeName = context.name || typeName
  }

  return typeName && callSite.getMethodName()
    ? typeName + '.' + funcName
    : funcName
}

/**
 * Format deprecation message without color.
 */

function formatPlain (msg, caller, stack) {
  var timestamp = new Date().toUTCString()

  var formatted = timestamp +
    ' ' + this._namespace +
    ' deprecated ' + msg

  // add stack trace
  if (this._traced) {
    for (var i = 0; i < stack.length; i++) {
      formatted += '\n    at ' + stack[i].toString()
    }

    return formatted
  }

  if (caller) {
    formatted += ' at ' + formatLocation(caller)
  }

  return formatted
}

/**
 * Format deprecation message with color.
 */

function formatColor (msg, caller, stack) {
  var formatted = '\x1b[36;1m' + this._namespace + '\x1b[22;39m' + // bold cyan
    ' \x1b[33;1mdeprecated\x1b[22;39m' + // bold yellow
    ' \x1b[0m' + msg + '\x1b[39m' // reset

  // add stack trace
  if (this._traced) {
    for (var i = 0; i < stack.length; i++) {
      formatted += '\n    \x1b[36mat ' + stack[i].toString() + '\x1b[39m' // cyan
    }

    return formatted
  }

  if (caller) {
    formatted += ' \x1b[36m' + formatLocation(caller) + '\x1b[39m' // cyan
  }

  return formatted
}

/**
 * Format call site location.
 */

function formatLocation (callSite) {
  return relative(basePath, callSite[0]) +
    ':' + callSite[1] +
    ':' + callSite[2]
}

/**
 * Get the stack as array of call sites.
 */

function getStack () {
  var limit = Error.stackTraceLimit
  var obj = {}
  var prep = Error.prepareStackTrace

  Error.prepareStackTrace = prepareObjectStackTrace
  Error.stackTraceLimit = Math.max(10, limit)

  // capture the stack
  Error.captureStackTrace(obj)

  // slice this function off the top
  var stack = obj.stack.slice(1)

  Error.prepareStackTrace = prep
  Error.stackTraceLimit = limit

  return stack
}

/**
 * Capture call site stack from v8.
 */

function prepareObjectStackTrace (obj, stack) {
  return stack
}

/**
 * Return a wrapped function in a deprecation message.
 */

function wrapfunction (fn, message) {
  if (typeof fn !== 'function') {
    throw new TypeError('argument fn must be a function')
  }

  var args = createArgumentsString(fn.length)
  var stack = getStack()
  var site = callSiteLocation(stack[1])

  site.name = fn.name

  // eslint-disable-next-line no-new-func
  var deprecatedfn = new Function('fn', 'log', 'deprecate', 'message', 'site',
    '"use strict"\n' +
    'return function (' + args + ') {' +
    'log.call(deprecate, message, site)\n' +
    'return fn.apply(this, arguments)\n' +
    '}')(fn, log, this, message, site)

  return deprecatedfn
}

/**
 * Wrap property in a deprecation message.
 */

function wrapproperty (obj, prop, message) {
  if (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) {
    throw new TypeError('argument obj must be object')
  }

  var descriptor = Object.getOwnPropertyDescriptor(obj, prop)

  if (!descriptor) {
    throw new TypeError('must call property on owner object')
  }

  if (!descriptor.configurable) {
    throw new TypeError('property must be configurable')
  }

  var deprecate = this
  var stack = getStack()
  var site = callSiteLocation(stack[1])

  // set site name
  site.name = prop

  // convert data descriptor
  if ('value' in descriptor) {
    descriptor = convertDataDescriptorToAccessor(obj, prop, message)
  }

  var get = descriptor.get
  var set = descriptor.set

  // wrap getter
  if (typeof get === 'function') {
    descriptor.get = function getter () {
      log.call(deprecate, message, site)
      return get.apply(this, arguments)
    }
  }

  // wrap setter
  if (typeof set === 'function') {
    descriptor.set = function setter () {
      log.call(deprecate, message, site)
      return set.apply(this, arguments)
    }
  }

  Object.defineProperty(obj, prop, descriptor)
}

/**
 * Create DeprecationError for deprecation
 */

function DeprecationError (namespace, message, stack) {
  var error = new Error()
  var stackString

  Object.defineProperty(error, 'constructor', {
    value: DeprecationError
  })

  Object.defineProperty(error, 'message', {
    configurable: true,
    enumerable: false,
    value: message,
    writable: true
  })

  Object.defineProperty(error, 'name', {
    enumerable: false,
    configurable: true,
    value: 'DeprecationError',
    writable: true
  })

  Object.defineProperty(error, 'namespace', {
    configurable: true,
    enumerable: false,
    value: namespace,
    writable: true
  })

  Object.defineProperty(error, 'stack', {
    configurable: true,
    enumerable: false,
    get: function () {
      if (stackString !== undefined) {
        return stackString
      }

      // prepare stack trace
      return (stackString = createStackString.call(this, stack))
    },
    set: function setter (val) {
      stackString = val
    }
  })

  return error
}


/***/ }),

/***/ 7994:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var stream = __webpack_require__(92413);

function DuplexWrapper(options, writable, readable) {
  if (typeof readable === "undefined") {
    readable = writable;
    writable = options;
    options = null;
  }

  stream.Duplex.call(this, options);

  if (typeof readable.read !== "function") {
    readable = (new stream.Readable(options)).wrap(readable);
  }

  this._writable = writable;
  this._readable = readable;
  this._waiting = false;

  var self = this;

  writable.once("finish", function() {
    self.end();
  });

  this.once("finish", function() {
    writable.end();
  });

  readable.on("readable", function() {
    if (self._waiting) {
      self._waiting = false;
      self._read();
    }
  });

  readable.once("end", function() {
    self.push(null);
  });

  if (!options || typeof options.bubbleErrors === "undefined" || options.bubbleErrors) {
    writable.on("error", function(err) {
      self.emit("error", err);
    });

    readable.on("error", function(err) {
      self.emit("error", err);
    });
  }
}

DuplexWrapper.prototype = Object.create(stream.Duplex.prototype, {constructor: {value: DuplexWrapper}});

DuplexWrapper.prototype._write = function _write(input, encoding, done) {
  this._writable.write(input, encoding, done);
};

DuplexWrapper.prototype._read = function _read() {
  var buf;
  var reads = 0;
  while ((buf = this._readable.read()) !== null) {
    this.push(buf);
    reads++;
  }
  if (reads === 0) {
    this._waiting = true;
  }
};

module.exports = function duplex2(options, writable, readable) {
  return new DuplexWrapper(options, writable, readable);
};

module.exports.DuplexWrapper = DuplexWrapper;


/***/ }),

/***/ 49865:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var crypto = __webpack_require__(33373);
var BigInteger = __webpack_require__(85587).BigInteger;
var ECPointFp = __webpack_require__(3943).ECPointFp;
var Buffer = __webpack_require__(15118).Buffer;
exports.ECCurves = __webpack_require__(41452);

// zero prepad
function unstupid(hex,len)
{
	return (hex.length >= len) ? hex : unstupid("0"+hex,len);
}

exports.ECKey = function(curve, key, isPublic)
{
  var priv;
	var c = curve();
	var n = c.getN();
  var bytes = Math.floor(n.bitLength()/8);

  if(key)
  {
    if(isPublic)
    {
      var curve = c.getCurve();
//      var x = key.slice(1,bytes+1); // skip the 04 for uncompressed format
//      var y = key.slice(bytes+1);
//      this.P = new ECPointFp(curve,
//        curve.fromBigInteger(new BigInteger(x.toString("hex"), 16)),
//        curve.fromBigInteger(new BigInteger(y.toString("hex"), 16)));      
      this.P = curve.decodePointHex(key.toString("hex"));
    }else{
      if(key.length != bytes) return false;
      priv = new BigInteger(key.toString("hex"), 16);      
    }
  }else{
    var n1 = n.subtract(BigInteger.ONE);
    var r = new BigInteger(crypto.randomBytes(n.bitLength()));
    priv = r.mod(n1).add(BigInteger.ONE);
    this.P = c.getG().multiply(priv);
  }
  if(this.P)
  {
//  var pubhex = unstupid(this.P.getX().toBigInteger().toString(16),bytes*2)+unstupid(this.P.getY().toBigInteger().toString(16),bytes*2);
//  this.PublicKey = Buffer.from("04"+pubhex,"hex");
    this.PublicKey = Buffer.from(c.getCurve().encodeCompressedPointHex(this.P),"hex");
  }
  if(priv)
  {
    this.PrivateKey = Buffer.from(unstupid(priv.toString(16),bytes*2),"hex");
    this.deriveSharedSecret = function(key)
    {
      if(!key || !key.P) return false;
      var S = key.P.multiply(priv);
      return Buffer.from(unstupid(S.getX().toBigInteger().toString(16),bytes*2),"hex");
   }     
  }
}



/***/ }),

/***/ 3943:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Basic Javascript Elliptic Curve implementation
// Ported loosely from BouncyCastle's Java EC code
// Only Fp curves implemented for now

// Requires jsbn.js and jsbn2.js
var BigInteger = __webpack_require__(85587).BigInteger
var Barrett = BigInteger.prototype.Barrett

// ----------------
// ECFieldElementFp

// constructor
function ECFieldElementFp(q,x) {
    this.x = x;
    // TODO if(x.compareTo(q) >= 0) error
    this.q = q;
}

function feFpEquals(other) {
    if(other == this) return true;
    return (this.q.equals(other.q) && this.x.equals(other.x));
}

function feFpToBigInteger() {
    return this.x;
}

function feFpNegate() {
    return new ECFieldElementFp(this.q, this.x.negate().mod(this.q));
}

function feFpAdd(b) {
    return new ECFieldElementFp(this.q, this.x.add(b.toBigInteger()).mod(this.q));
}

function feFpSubtract(b) {
    return new ECFieldElementFp(this.q, this.x.subtract(b.toBigInteger()).mod(this.q));
}

function feFpMultiply(b) {
    return new ECFieldElementFp(this.q, this.x.multiply(b.toBigInteger()).mod(this.q));
}

function feFpSquare() {
    return new ECFieldElementFp(this.q, this.x.square().mod(this.q));
}

function feFpDivide(b) {
    return new ECFieldElementFp(this.q, this.x.multiply(b.toBigInteger().modInverse(this.q)).mod(this.q));
}

ECFieldElementFp.prototype.equals = feFpEquals;
ECFieldElementFp.prototype.toBigInteger = feFpToBigInteger;
ECFieldElementFp.prototype.negate = feFpNegate;
ECFieldElementFp.prototype.add = feFpAdd;
ECFieldElementFp.prototype.subtract = feFpSubtract;
ECFieldElementFp.prototype.multiply = feFpMultiply;
ECFieldElementFp.prototype.square = feFpSquare;
ECFieldElementFp.prototype.divide = feFpDivide;

// ----------------
// ECPointFp

// constructor
function ECPointFp(curve,x,y,z) {
    this.curve = curve;
    this.x = x;
    this.y = y;
    // Projective coordinates: either zinv == null or z * zinv == 1
    // z and zinv are just BigIntegers, not fieldElements
    if(z == null) {
      this.z = BigInteger.ONE;
    }
    else {
      this.z = z;
    }
    this.zinv = null;
    //TODO: compression flag
}

function pointFpGetX() {
    if(this.zinv == null) {
      this.zinv = this.z.modInverse(this.curve.q);
    }
    var r = this.x.toBigInteger().multiply(this.zinv);
    this.curve.reduce(r);
    return this.curve.fromBigInteger(r);
}

function pointFpGetY() {
    if(this.zinv == null) {
      this.zinv = this.z.modInverse(this.curve.q);
    }
    var r = this.y.toBigInteger().multiply(this.zinv);
    this.curve.reduce(r);
    return this.curve.fromBigInteger(r);
}

function pointFpEquals(other) {
    if(other == this) return true;
    if(this.isInfinity()) return other.isInfinity();
    if(other.isInfinity()) return this.isInfinity();
    var u, v;
    // u = Y2 * Z1 - Y1 * Z2
    u = other.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(other.z)).mod(this.curve.q);
    if(!u.equals(BigInteger.ZERO)) return false;
    // v = X2 * Z1 - X1 * Z2
    v = other.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(other.z)).mod(this.curve.q);
    return v.equals(BigInteger.ZERO);
}

function pointFpIsInfinity() {
    if((this.x == null) && (this.y == null)) return true;
    return this.z.equals(BigInteger.ZERO) && !this.y.toBigInteger().equals(BigInteger.ZERO);
}

function pointFpNegate() {
    return new ECPointFp(this.curve, this.x, this.y.negate(), this.z);
}

function pointFpAdd(b) {
    if(this.isInfinity()) return b;
    if(b.isInfinity()) return this;

    // u = Y2 * Z1 - Y1 * Z2
    var u = b.y.toBigInteger().multiply(this.z).subtract(this.y.toBigInteger().multiply(b.z)).mod(this.curve.q);
    // v = X2 * Z1 - X1 * Z2
    var v = b.x.toBigInteger().multiply(this.z).subtract(this.x.toBigInteger().multiply(b.z)).mod(this.curve.q);

    if(BigInteger.ZERO.equals(v)) {
        if(BigInteger.ZERO.equals(u)) {
            return this.twice(); // this == b, so double
        }
	return this.curve.getInfinity(); // this = -b, so infinity
    }

    var THREE = new BigInteger("3");
    var x1 = this.x.toBigInteger();
    var y1 = this.y.toBigInteger();
    var x2 = b.x.toBigInteger();
    var y2 = b.y.toBigInteger();

    var v2 = v.square();
    var v3 = v2.multiply(v);
    var x1v2 = x1.multiply(v2);
    var zu2 = u.square().multiply(this.z);

    // x3 = v * (z2 * (z1 * u^2 - 2 * x1 * v^2) - v^3)
    var x3 = zu2.subtract(x1v2.shiftLeft(1)).multiply(b.z).subtract(v3).multiply(v).mod(this.curve.q);
    // y3 = z2 * (3 * x1 * u * v^2 - y1 * v^3 - z1 * u^3) + u * v^3
    var y3 = x1v2.multiply(THREE).multiply(u).subtract(y1.multiply(v3)).subtract(zu2.multiply(u)).multiply(b.z).add(u.multiply(v3)).mod(this.curve.q);
    // z3 = v^3 * z1 * z2
    var z3 = v3.multiply(this.z).multiply(b.z).mod(this.curve.q);

    return new ECPointFp(this.curve, this.curve.fromBigInteger(x3), this.curve.fromBigInteger(y3), z3);
}

function pointFpTwice() {
    if(this.isInfinity()) return this;
    if(this.y.toBigInteger().signum() == 0) return this.curve.getInfinity();

    // TODO: optimized handling of constants
    var THREE = new BigInteger("3");
    var x1 = this.x.toBigInteger();
    var y1 = this.y.toBigInteger();

    var y1z1 = y1.multiply(this.z);
    var y1sqz1 = y1z1.multiply(y1).mod(this.curve.q);
    var a = this.curve.a.toBigInteger();

    // w = 3 * x1^2 + a * z1^2
    var w = x1.square().multiply(THREE);
    if(!BigInteger.ZERO.equals(a)) {
      w = w.add(this.z.square().multiply(a));
    }
    w = w.mod(this.curve.q);
    //this.curve.reduce(w);
    // x3 = 2 * y1 * z1 * (w^2 - 8 * x1 * y1^2 * z1)
    var x3 = w.square().subtract(x1.shiftLeft(3).multiply(y1sqz1)).shiftLeft(1).multiply(y1z1).mod(this.curve.q);
    // y3 = 4 * y1^2 * z1 * (3 * w * x1 - 2 * y1^2 * z1) - w^3
    var y3 = w.multiply(THREE).multiply(x1).subtract(y1sqz1.shiftLeft(1)).shiftLeft(2).multiply(y1sqz1).subtract(w.square().multiply(w)).mod(this.curve.q);
    // z3 = 8 * (y1 * z1)^3
    var z3 = y1z1.square().multiply(y1z1).shiftLeft(3).mod(this.curve.q);

    return new ECPointFp(this.curve, this.curve.fromBigInteger(x3), this.curve.fromBigInteger(y3), z3);
}

// Simple NAF (Non-Adjacent Form) multiplication algorithm
// TODO: modularize the multiplication algorithm
function pointFpMultiply(k) {
    if(this.isInfinity()) return this;
    if(k.signum() == 0) return this.curve.getInfinity();

    var e = k;
    var h = e.multiply(new BigInteger("3"));

    var neg = this.negate();
    var R = this;

    var i;
    for(i = h.bitLength() - 2; i > 0; --i) {
	R = R.twice();

	var hBit = h.testBit(i);
	var eBit = e.testBit(i);

	if (hBit != eBit) {
	    R = R.add(hBit ? this : neg);
	}
    }

    return R;
}

// Compute this*j + x*k (simultaneous multiplication)
function pointFpMultiplyTwo(j,x,k) {
  var i;
  if(j.bitLength() > k.bitLength())
    i = j.bitLength() - 1;
  else
    i = k.bitLength() - 1;

  var R = this.curve.getInfinity();
  var both = this.add(x);
  while(i >= 0) {
    R = R.twice();
    if(j.testBit(i)) {
      if(k.testBit(i)) {
        R = R.add(both);
      }
      else {
        R = R.add(this);
      }
    }
    else {
      if(k.testBit(i)) {
        R = R.add(x);
      }
    }
    --i;
  }

  return R;
}

ECPointFp.prototype.getX = pointFpGetX;
ECPointFp.prototype.getY = pointFpGetY;
ECPointFp.prototype.equals = pointFpEquals;
ECPointFp.prototype.isInfinity = pointFpIsInfinity;
ECPointFp.prototype.negate = pointFpNegate;
ECPointFp.prototype.add = pointFpAdd;
ECPointFp.prototype.twice = pointFpTwice;
ECPointFp.prototype.multiply = pointFpMultiply;
ECPointFp.prototype.multiplyTwo = pointFpMultiplyTwo;

// ----------------
// ECCurveFp

// constructor
function ECCurveFp(q,a,b) {
    this.q = q;
    this.a = this.fromBigInteger(a);
    this.b = this.fromBigInteger(b);
    this.infinity = new ECPointFp(this, null, null);
    this.reducer = new Barrett(this.q);
}

function curveFpGetQ() {
    return this.q;
}

function curveFpGetA() {
    return this.a;
}

function curveFpGetB() {
    return this.b;
}

function curveFpEquals(other) {
    if(other == this) return true;
    return(this.q.equals(other.q) && this.a.equals(other.a) && this.b.equals(other.b));
}

function curveFpGetInfinity() {
    return this.infinity;
}

function curveFpFromBigInteger(x) {
    return new ECFieldElementFp(this.q, x);
}

function curveReduce(x) {
    this.reducer.reduce(x);
}

// for now, work with hex strings because they're easier in JS
function curveFpDecodePointHex(s) {
    switch(parseInt(s.substr(0,2), 16)) { // first byte
    case 0:
	return this.infinity;
    case 2:
    case 3:
	// point compression not supported yet
	return null;
    case 4:
    case 6:
    case 7:
	var len = (s.length - 2) / 2;
	var xHex = s.substr(2, len);
	var yHex = s.substr(len+2, len);

	return new ECPointFp(this,
			     this.fromBigInteger(new BigInteger(xHex, 16)),
			     this.fromBigInteger(new BigInteger(yHex, 16)));

    default: // unsupported
	return null;
    }
}

function curveFpEncodePointHex(p) {
	if (p.isInfinity()) return "00";
	var xHex = p.getX().toBigInteger().toString(16);
	var yHex = p.getY().toBigInteger().toString(16);
	var oLen = this.getQ().toString(16).length;
	if ((oLen % 2) != 0) oLen++;
	while (xHex.length < oLen) {
		xHex = "0" + xHex;
	}
	while (yHex.length < oLen) {
		yHex = "0" + yHex;
	}
	return "04" + xHex + yHex;
}

ECCurveFp.prototype.getQ = curveFpGetQ;
ECCurveFp.prototype.getA = curveFpGetA;
ECCurveFp.prototype.getB = curveFpGetB;
ECCurveFp.prototype.equals = curveFpEquals;
ECCurveFp.prototype.getInfinity = curveFpGetInfinity;
ECCurveFp.prototype.fromBigInteger = curveFpFromBigInteger;
ECCurveFp.prototype.reduce = curveReduce;
//ECCurveFp.prototype.decodePointHex = curveFpDecodePointHex;
ECCurveFp.prototype.encodePointHex = curveFpEncodePointHex;

// from: https://github.com/kaielvin/jsbn-ec-point-compression
ECCurveFp.prototype.decodePointHex = function(s)
{
	var yIsEven;
    switch(parseInt(s.substr(0,2), 16)) { // first byte
    case 0:
	return this.infinity;
    case 2:
	yIsEven = false;
    case 3:
	if(yIsEven == undefined) yIsEven = true;
	var len = s.length - 2;
	var xHex = s.substr(2, len);
	var x = this.fromBigInteger(new BigInteger(xHex,16));
	var alpha = x.multiply(x.square().add(this.getA())).add(this.getB());
	var beta = alpha.sqrt();

    if (beta == null) throw "Invalid point compression";

    var betaValue = beta.toBigInteger();
    if (betaValue.testBit(0) != yIsEven)
    {
        // Use the other root
        beta = this.fromBigInteger(this.getQ().subtract(betaValue));
    }
    return new ECPointFp(this,x,beta);
    case 4:
    case 6:
    case 7:
	var len = (s.length - 2) / 2;
	var xHex = s.substr(2, len);
	var yHex = s.substr(len+2, len);

	return new ECPointFp(this,
			     this.fromBigInteger(new BigInteger(xHex, 16)),
			     this.fromBigInteger(new BigInteger(yHex, 16)));

    default: // unsupported
	return null;
    }
}
ECCurveFp.prototype.encodeCompressedPointHex = function(p)
{
	if (p.isInfinity()) return "00";
	var xHex = p.getX().toBigInteger().toString(16);
	var oLen = this.getQ().toString(16).length;
	if ((oLen % 2) != 0) oLen++;
	while (xHex.length < oLen)
		xHex = "0" + xHex;
	var yPrefix;
	if(p.getY().toBigInteger().isEven()) yPrefix = "02";
	else                                 yPrefix = "03";

	return yPrefix + xHex;
}


ECFieldElementFp.prototype.getR = function()
{
	if(this.r != undefined) return this.r;

    this.r = null;
    var bitLength = this.q.bitLength();
    if (bitLength > 128)
    {
        var firstWord = this.q.shiftRight(bitLength - 64);
        if (firstWord.intValue() == -1)
        {
            this.r = BigInteger.ONE.shiftLeft(bitLength).subtract(this.q);
        }
    }
    return this.r;
}
ECFieldElementFp.prototype.modMult = function(x1,x2)
{
    return this.modReduce(x1.multiply(x2));
}
ECFieldElementFp.prototype.modReduce = function(x)
{
    if (this.getR() != null)
    {
        var qLen = q.bitLength();
        while (x.bitLength() > (qLen + 1))
        {
            var u = x.shiftRight(qLen);
            var v = x.subtract(u.shiftLeft(qLen));
            if (!this.getR().equals(BigInteger.ONE))
            {
                u = u.multiply(this.getR());
            }
            x = u.add(v); 
        }
        while (x.compareTo(q) >= 0)
        {
            x = x.subtract(q);
        }
    }
    else
    {
        x = x.mod(q);
    }
    return x;
}
ECFieldElementFp.prototype.sqrt = function()
{
    if (!this.q.testBit(0)) throw "unsupported";

    // p mod 4 == 3
    if (this.q.testBit(1))
    {
    	var z = new ECFieldElementFp(this.q,this.x.modPow(this.q.shiftRight(2).add(BigInteger.ONE),this.q));
    	return z.square().equals(this) ? z : null;
    }

    // p mod 4 == 1
    var qMinusOne = this.q.subtract(BigInteger.ONE);

    var legendreExponent = qMinusOne.shiftRight(1);
    if (!(this.x.modPow(legendreExponent, this.q).equals(BigInteger.ONE)))
    {
        return null;
    }

    var u = qMinusOne.shiftRight(2);
    var k = u.shiftLeft(1).add(BigInteger.ONE);

    var Q = this.x;
    var fourQ = modDouble(modDouble(Q));

    var U, V;
    do
    {
        var P;
        do
        {
            P = new BigInteger(this.q.bitLength(), new SecureRandom());
        }
        while (P.compareTo(this.q) >= 0
            || !(P.multiply(P).subtract(fourQ).modPow(legendreExponent, this.q).equals(qMinusOne)));

        var result = this.lucasSequence(P, Q, k);
        U = result[0];
        V = result[1];

        if (this.modMult(V, V).equals(fourQ))
        {
            // Integer division by 2, mod q
            if (V.testBit(0))
            {
                V = V.add(q);
            }

            V = V.shiftRight(1);

            return new ECFieldElementFp(q,V);
        }
    }
    while (U.equals(BigInteger.ONE) || U.equals(qMinusOne));

    return null;
}
ECFieldElementFp.prototype.lucasSequence = function(P,Q,k)
{
    var n = k.bitLength();
    var s = k.getLowestSetBit();

    var Uh = BigInteger.ONE;
    var Vl = BigInteger.TWO;
    var Vh = P;
    var Ql = BigInteger.ONE;
    var Qh = BigInteger.ONE;

    for (var j = n - 1; j >= s + 1; --j)
    {
        Ql = this.modMult(Ql, Qh);

        if (k.testBit(j))
        {
            Qh = this.modMult(Ql, Q);
            Uh = this.modMult(Uh, Vh);
            Vl = this.modReduce(Vh.multiply(Vl).subtract(P.multiply(Ql)));
            Vh = this.modReduce(Vh.multiply(Vh).subtract(Qh.shiftLeft(1)));
        }
        else
        {
            Qh = Ql;
            Uh = this.modReduce(Uh.multiply(Vl).subtract(Ql));
            Vh = this.modReduce(Vh.multiply(Vl).subtract(P.multiply(Ql)));
            Vl = this.modReduce(Vl.multiply(Vl).subtract(Ql.shiftLeft(1)));
        }
    }

    Ql = this.modMult(Ql, Qh);
    Qh = this.modMult(Ql, Q);
    Uh = this.modReduce(Uh.multiply(Vl).subtract(Ql));
    Vl = this.modReduce(Vh.multiply(Vl).subtract(P.multiply(Ql)));
    Ql = this.modMult(Ql, Qh);

    for (var j = 1; j <= s; ++j)
    {
        Uh = this.modMult(Uh, Vl);
        Vl = this.modReduce(Vl.multiply(Vl).subtract(Ql.shiftLeft(1)));
        Ql = this.modMult(Ql, Ql);
    }

    return [ Uh, Vl ];
}

var exports = {
  ECCurveFp: ECCurveFp,
  ECPointFp: ECPointFp,
  ECFieldElementFp: ECFieldElementFp
}

module.exports = exports


/***/ }),

/***/ 41452:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Named EC curves

// Requires ec.js, jsbn.js, and jsbn2.js
var BigInteger = __webpack_require__(85587).BigInteger
var ECCurveFp = __webpack_require__(3943).ECCurveFp


// ----------------
// X9ECParameters

// constructor
function X9ECParameters(curve,g,n,h) {
    this.curve = curve;
    this.g = g;
    this.n = n;
    this.h = h;
}

function x9getCurve() {
    return this.curve;
}

function x9getG() {
    return this.g;
}

function x9getN() {
    return this.n;
}

function x9getH() {
    return this.h;
}

X9ECParameters.prototype.getCurve = x9getCurve;
X9ECParameters.prototype.getG = x9getG;
X9ECParameters.prototype.getN = x9getN;
X9ECParameters.prototype.getH = x9getH;

// ----------------
// SECNamedCurves

function fromHex(s) { return new BigInteger(s, 16); }

function secp128r1() {
    // p = 2^128 - 2^97 - 1
    var p = fromHex("FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFF");
    var a = fromHex("FFFFFFFDFFFFFFFFFFFFFFFFFFFFFFFC");
    var b = fromHex("E87579C11079F43DD824993C2CEE5ED3");
    //byte[] S = Hex.decode("000E0D4D696E6768756151750CC03A4473D03679");
    var n = fromHex("FFFFFFFE0000000075A30D1B9038A115");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
                + "161FF7528B899B2D0C28607CA52C5B86"
		+ "CF5AC8395BAFEB13C02DA292DDED7A83");
    return new X9ECParameters(curve, G, n, h);
}

function secp160k1() {
    // p = 2^160 - 2^32 - 2^14 - 2^12 - 2^9 - 2^8 - 2^7 - 2^3 - 2^2 - 1
    var p = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFAC73");
    var a = BigInteger.ZERO;
    var b = fromHex("7");
    //byte[] S = null;
    var n = fromHex("0100000000000000000001B8FA16DFAB9ACA16B6B3");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
                + "3B4C382CE37AA192A4019E763036F4F5DD4D7EBB"
                + "938CF935318FDCED6BC28286531733C3F03C4FEE");
    return new X9ECParameters(curve, G, n, h);
}

function secp160r1() {
    // p = 2^160 - 2^31 - 1
    var p = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFF");
    var a = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFC");
    var b = fromHex("1C97BEFC54BD7A8B65ACF89F81D4D4ADC565FA45");
    //byte[] S = Hex.decode("1053CDE42C14D696E67687561517533BF3F83345");
    var n = fromHex("0100000000000000000001F4C8F927AED3CA752257");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
		+ "4A96B5688EF573284664698968C38BB913CBFC82"
		+ "23A628553168947D59DCC912042351377AC5FB32");
    return new X9ECParameters(curve, G, n, h);
}

function secp192k1() {
    // p = 2^192 - 2^32 - 2^12 - 2^8 - 2^7 - 2^6 - 2^3 - 1
    var p = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFEE37");
    var a = BigInteger.ZERO;
    var b = fromHex("3");
    //byte[] S = null;
    var n = fromHex("FFFFFFFFFFFFFFFFFFFFFFFE26F2FC170F69466A74DEFD8D");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
                + "DB4FF10EC057E9AE26B07D0280B7F4341DA5D1B1EAE06C7D"
                + "9B2F2F6D9C5628A7844163D015BE86344082AA88D95E2F9D");
    return new X9ECParameters(curve, G, n, h);
}

function secp192r1() {
    // p = 2^192 - 2^64 - 1
    var p = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFF");
    var a = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFC");
    var b = fromHex("64210519E59C80E70FA7E9AB72243049FEB8DEECC146B9B1");
    //byte[] S = Hex.decode("3045AE6FC8422F64ED579528D38120EAE12196D5");
    var n = fromHex("FFFFFFFFFFFFFFFFFFFFFFFF99DEF836146BC9B1B4D22831");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
                + "188DA80EB03090F67CBF20EB43A18800F4FF0AFD82FF1012"
                + "07192B95FFC8DA78631011ED6B24CDD573F977A11E794811");
    return new X9ECParameters(curve, G, n, h);
}

function secp224r1() {
    // p = 2^224 - 2^96 + 1
    var p = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000001");
    var a = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFE");
    var b = fromHex("B4050A850C04B3ABF54132565044B0B7D7BFD8BA270B39432355FFB4");
    //byte[] S = Hex.decode("BD71344799D5C7FCDC45B59FA3B9AB8F6A948BC5");
    var n = fromHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFF16A2E0B8F03E13DD29455C5C2A3D");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
                + "B70E0CBD6BB4BF7F321390B94A03C1D356C21122343280D6115C1D21"
                + "BD376388B5F723FB4C22DFE6CD4375A05A07476444D5819985007E34");
    return new X9ECParameters(curve, G, n, h);
}

function secp256r1() {
    // p = 2^224 (2^32 - 1) + 2^192 + 2^96 - 1
    var p = fromHex("FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF");
    var a = fromHex("FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC");
    var b = fromHex("5AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604B");
    //byte[] S = Hex.decode("C49D360886E704936A6678E1139D26B7819F7E90");
    var n = fromHex("FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551");
    var h = BigInteger.ONE;
    var curve = new ECCurveFp(p, a, b);
    var G = curve.decodePointHex("04"
                + "6B17D1F2E12C4247F8BCE6E563A440F277037D812DEB33A0F4A13945D898C296"
		+ "4FE342E2FE1A7F9B8EE7EB4A7C0F9E162BCE33576B315ECECBB6406837BF51F5");
    return new X9ECParameters(curve, G, n, h);
}

// TODO: make this into a proper hashtable
function getSECCurveByName(name) {
    if(name == "secp128r1") return secp128r1();
    if(name == "secp160k1") return secp160k1();
    if(name == "secp160r1") return secp160r1();
    if(name == "secp192k1") return secp192k1();
    if(name == "secp192r1") return secp192r1();
    if(name == "secp224r1") return secp224r1();
    if(name == "secp256r1") return secp256r1();
    return null;
}

module.exports = {
  "secp128r1":secp128r1,
  "secp160k1":secp160k1,
  "secp160r1":secp160r1,
  "secp192k1":secp192k1,
  "secp192r1":secp192r1,
  "secp224r1":secp224r1,
  "secp256r1":secp256r1
}


/***/ }),

/***/ 81205:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var once = __webpack_require__(1223);

var noop = function() {};

var isRequest = function(stream) {
	return stream.setHeader && typeof stream.abort === 'function';
};

var isChildProcess = function(stream) {
	return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3
};

var eos = function(stream, opts, callback) {
	if (typeof opts === 'function') return eos(stream, null, opts);
	if (!opts) opts = {};

	callback = once(callback || noop);

	var ws = stream._writableState;
	var rs = stream._readableState;
	var readable = opts.readable || (opts.readable !== false && stream.readable);
	var writable = opts.writable || (opts.writable !== false && stream.writable);
	var cancelled = false;

	var onlegacyfinish = function() {
		if (!stream.writable) onfinish();
	};

	var onfinish = function() {
		writable = false;
		if (!readable) callback.call(stream);
	};

	var onend = function() {
		readable = false;
		if (!writable) callback.call(stream);
	};

	var onexit = function(exitCode) {
		callback.call(stream, exitCode ? new Error('exited with error code: ' + exitCode) : null);
	};

	var onerror = function(err) {
		callback.call(stream, err);
	};

	var onclose = function() {
		process.nextTick(onclosenexttick);
	};

	var onclosenexttick = function() {
		if (cancelled) return;
		if (readable && !(rs && (rs.ended && !rs.destroyed))) return callback.call(stream, new Error('premature close'));
		if (writable && !(ws && (ws.ended && !ws.destroyed))) return callback.call(stream, new Error('premature close'));
	};

	var onrequest = function() {
		stream.req.on('finish', onfinish);
	};

	if (isRequest(stream)) {
		stream.on('complete', onfinish);
		stream.on('abort', onclose);
		if (stream.req) onrequest();
		else stream.on('request', onrequest);
	} else if (writable && !ws) { // legacy streams
		stream.on('end', onlegacyfinish);
		stream.on('close', onlegacyfinish);
	}

	if (isChildProcess(stream)) stream.on('exit', onexit);

	stream.on('end', onend);
	stream.on('finish', onfinish);
	if (opts.error !== false) stream.on('error', onerror);
	stream.on('close', onclose);

	return function() {
		cancelled = true;
		stream.removeListener('complete', onfinish);
		stream.removeListener('abort', onclose);
		stream.removeListener('request', onrequest);
		if (stream.req) stream.req.removeListener('finish', onfinish);
		stream.removeListener('end', onlegacyfinish);
		stream.removeListener('close', onlegacyfinish);
		stream.removeListener('finish', onfinish);
		stream.removeListener('exit', onexit);
		stream.removeListener('end', onend);
		stream.removeListener('error', onerror);
		stream.removeListener('close', onclose);
	};
};

module.exports = eos;


/***/ }),

/***/ 38171:
/***/ ((module) => {

"use strict";


var hasOwn = Object.prototype.hasOwnProperty;
var toStr = Object.prototype.toString;
var defineProperty = Object.defineProperty;
var gOPD = Object.getOwnPropertyDescriptor;

var isArray = function isArray(arr) {
	if (typeof Array.isArray === 'function') {
		return Array.isArray(arr);
	}

	return toStr.call(arr) === '[object Array]';
};

var isPlainObject = function isPlainObject(obj) {
	if (!obj || toStr.call(obj) !== '[object Object]') {
		return false;
	}

	var hasOwnConstructor = hasOwn.call(obj, 'constructor');
	var hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf');
	// Not own constructor property must be Object
	if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {
		return false;
	}

	// Own properties are enumerated firstly, so to speed up,
	// if last one is own, then all properties are own.
	var key;
	for (key in obj) { /**/ }

	return typeof key === 'undefined' || hasOwn.call(obj, key);
};

// If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target
var setProperty = function setProperty(target, options) {
	if (defineProperty && options.name === '__proto__') {
		defineProperty(target, options.name, {
			enumerable: true,
			configurable: true,
			value: options.newValue,
			writable: true
		});
	} else {
		target[options.name] = options.newValue;
	}
};

// Return undefined instead of __proto__ if '__proto__' is not an own property
var getProperty = function getProperty(obj, name) {
	if (name === '__proto__') {
		if (!hasOwn.call(obj, name)) {
			return void 0;
		} else if (gOPD) {
			// In early versions of node, obj['__proto__'] is buggy when obj has
			// __proto__ as an own property. Object.getOwnPropertyDescriptor() works.
			return gOPD(obj, name).value;
		}
	}

	return obj[name];
};

module.exports = function extend() {
	var options, name, src, copy, copyIsArray, clone;
	var target = arguments[0];
	var i = 1;
	var length = arguments.length;
	var deep = false;

	// Handle a deep copy situation
	if (typeof target === 'boolean') {
		deep = target;
		target = arguments[1] || {};
		// skip the boolean and the target
		i = 2;
	}
	if (target == null || (typeof target !== 'object' && typeof target !== 'function')) {
		target = {};
	}

	for (; i < length; ++i) {
		options = arguments[i];
		// Only deal with non-null/undefined values
		if (options != null) {
			// Extend the base object
			for (name in options) {
				src = getProperty(target, name);
				copy = getProperty(options, name);

				// Prevent never-ending loop
				if (target !== copy) {
					// Recurse if we're merging plain objects or arrays
					if (deep && copy && (isPlainObject(copy) || (copyIsArray = isArray(copy)))) {
						if (copyIsArray) {
							copyIsArray = false;
							clone = src && isArray(src) ? src : [];
						} else {
							clone = src && isPlainObject(src) ? src : {};
						}

						// Never move original objects, clone them
						setProperty(target, { name: name, newValue: extend(deep, clone, copy) });

					// Don't bring in undefined values
					} else if (typeof copy !== 'undefined') {
						setProperty(target, { name: name, newValue: copy });
					}
				}
			}
		}
	}

	// Return the modified object
	return target;
};


/***/ }),

/***/ 87264:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

/*
 * extsprintf.js: extended POSIX-style sprintf
 */

var mod_assert = __webpack_require__(42357);
var mod_util = __webpack_require__(31669);

/*
 * Public interface
 */
exports.sprintf = jsSprintf;
exports.printf = jsPrintf;
exports.fprintf = jsFprintf;

/*
 * Stripped down version of s[n]printf(3c).  We make a best effort to throw an
 * exception when given a format string we don't understand, rather than
 * ignoring it, so that we won't break existing programs if/when we go implement
 * the rest of this.
 *
 * This implementation currently supports specifying
 *	- field alignment ('-' flag),
 * 	- zero-pad ('0' flag)
 *	- always show numeric sign ('+' flag),
 *	- field width
 *	- conversions for strings, decimal integers, and floats (numbers).
 *	- argument size specifiers.  These are all accepted but ignored, since
 *	  Javascript has no notion of the physical size of an argument.
 *
 * Everything else is currently unsupported, most notably precision, unsigned
 * numbers, non-decimal numbers, and characters.
 */
function jsSprintf(fmt)
{
	var regex = [
	    '([^%]*)',				/* normal text */
	    '%',				/* start of format */
	    '([\'\\-+ #0]*?)',			/* flags (optional) */
	    '([1-9]\\d*)?',			/* width (optional) */
	    '(\\.([1-9]\\d*))?',		/* precision (optional) */
	    '[lhjztL]*?',			/* length mods (ignored) */
	    '([diouxXfFeEgGaAcCsSp%jr])'	/* conversion */
	].join('');

	var re = new RegExp(regex);
	var args = Array.prototype.slice.call(arguments, 1);
	var flags, width, precision, conversion;
	var left, pad, sign, arg, match;
	var ret = '';
	var argn = 1;

	mod_assert.equal('string', typeof (fmt));

	while ((match = re.exec(fmt)) !== null) {
		ret += match[1];
		fmt = fmt.substring(match[0].length);

		flags = match[2] || '';
		width = match[3] || 0;
		precision = match[4] || '';
		conversion = match[6];
		left = false;
		sign = false;
		pad = ' ';

		if (conversion == '%') {
			ret += '%';
			continue;
		}

		if (args.length === 0)
			throw (new Error('too few args to sprintf'));

		arg = args.shift();
		argn++;

		if (flags.match(/[\' #]/))
			throw (new Error(
			    'unsupported flags: ' + flags));

		if (precision.length > 0)
			throw (new Error(
			    'non-zero precision not supported'));

		if (flags.match(/-/))
			left = true;

		if (flags.match(/0/))
			pad = '0';

		if (flags.match(/\+/))
			sign = true;

		switch (conversion) {
		case 's':
			if (arg === undefined || arg === null)
				throw (new Error('argument ' + argn +
				    ': attempted to print undefined or null ' +
				    'as a string'));
			ret += doPad(pad, width, left, arg.toString());
			break;

		case 'd':
			arg = Math.floor(arg);
			/*jsl:fallthru*/
		case 'f':
			sign = sign && arg > 0 ? '+' : '';
			ret += sign + doPad(pad, width, left,
			    arg.toString());
			break;

		case 'x':
			ret += doPad(pad, width, left, arg.toString(16));
			break;

		case 'j': /* non-standard */
			if (width === 0)
				width = 10;
			ret += mod_util.inspect(arg, false, width);
			break;

		case 'r': /* non-standard */
			ret += dumpException(arg);
			break;

		default:
			throw (new Error('unsupported conversion: ' +
			    conversion));
		}
	}

	ret += fmt;
	return (ret);
}

function jsPrintf() {
	var args = Array.prototype.slice.call(arguments);
	args.unshift(process.stdout);
	jsFprintf.apply(null, args);
}

function jsFprintf(stream) {
	var args = Array.prototype.slice.call(arguments, 1);
	return (stream.write(jsSprintf.apply(this, args)));
}

function doPad(chr, width, left, str)
{
	var ret = str;

	while (ret.length < width) {
		if (left)
			ret += chr;
		else
			ret = chr + ret;
	}

	return (ret);
}

/*
 * This function dumps long stack traces for exceptions having a cause() method.
 * See node-verror for an example.
 */
function dumpException(ex)
{
	var ret;

	if (!(ex instanceof Error))
		throw (new Error(jsSprintf('invalid type for %%r: %j', ex)));

	/* Note that V8 prepends "ex.stack" with ex.toString(). */
	ret = 'EXCEPTION: ' + ex.constructor.name + ': ' + ex.stack;

	if (ex.cause && typeof (ex.cause) === 'function') {
		var cex = ex.cause();
		if (cex) {
			ret += '\nCaused by: ' + dumpException(cex);
		}
	}

	return (ret);
}


/***/ }),

/***/ 28206:
/***/ ((module) => {

"use strict";


// do not edit .js files directly - edit src/index.jst



module.exports = function equal(a, b) {
  if (a === b) return true;

  if (a && b && typeof a == 'object' && typeof b == 'object') {
    if (a.constructor !== b.constructor) return false;

    var length, i, keys;
    if (Array.isArray(a)) {
      length = a.length;
      if (length != b.length) return false;
      for (i = length; i-- !== 0;)
        if (!equal(a[i], b[i])) return false;
      return true;
    }



    if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;
    if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();
    if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();

    keys = Object.keys(a);
    length = keys.length;
    if (length !== Object.keys(b).length) return false;

    for (i = length; i-- !== 0;)
      if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;

    for (i = length; i-- !== 0;) {
      var key = keys[i];

      if (!equal(a[key], b[key])) return false;
    }

    return true;
  }

  // true if both NaN, false otherwise
  return a!==a && b!==b;
};


/***/ }),

/***/ 30969:
/***/ ((module) => {

"use strict";


module.exports = function (data, opts) {
    if (!opts) opts = {};
    if (typeof opts === 'function') opts = { cmp: opts };
    var cycles = (typeof opts.cycles === 'boolean') ? opts.cycles : false;

    var cmp = opts.cmp && (function (f) {
        return function (node) {
            return function (a, b) {
                var aobj = { key: a, value: node[a] };
                var bobj = { key: b, value: node[b] };
                return f(aobj, bobj);
            };
        };
    })(opts.cmp);

    var seen = [];
    return (function stringify (node) {
        if (node && node.toJSON && typeof node.toJSON === 'function') {
            node = node.toJSON();
        }

        if (node === undefined) return;
        if (typeof node == 'number') return isFinite(node) ? '' + node : 'null';
        if (typeof node !== 'object') return JSON.stringify(node);

        var i, out;
        if (Array.isArray(node)) {
            out = '[';
            for (i = 0; i < node.length; i++) {
                if (i) out += ',';
                out += stringify(node[i]) || 'null';
            }
            return out + ']';
        }

        if (node === null) return 'null';

        if (seen.indexOf(node) !== -1) {
            if (cycles) return JSON.stringify('__cycle__');
            throw new TypeError('Converting circular structure to JSON');
        }

        var seenIndex = seen.push(node) - 1;
        var keys = Object.keys(node).sort(cmp && cmp(node));
        out = '';
        for (i = 0; i < keys.length; i++) {
            var key = keys[i];
            var value = stringify(node[key]);

            if (!value) continue;
            if (out) out += ',';
            out += JSON.stringify(key) + ':' + value;
        }
        seen.splice(seenIndex, 1);
        return '{' + out + '}';
    })(data);
};


/***/ }),

/***/ 47568:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = ForeverAgent
ForeverAgent.SSL = ForeverAgentSSL

var util = __webpack_require__(31669)
  , Agent = __webpack_require__(98605).Agent
  , net = __webpack_require__(11631)
  , tls = __webpack_require__(4016)
  , AgentSSL = __webpack_require__(57211).Agent
  
function getConnectionName(host, port) {  
  var name = ''
  if (typeof host === 'string') {
    name = host + ':' + port
  } else {
    // For node.js v012.0 and iojs-v1.5.1, host is an object. And any existing localAddress is part of the connection name.
    name = host.host + ':' + host.port + ':' + (host.localAddress ? (host.localAddress + ':') : ':')
  }
  return name
}    

function ForeverAgent(options) {
  var self = this
  self.options = options || {}
  self.requests = {}
  self.sockets = {}
  self.freeSockets = {}
  self.maxSockets = self.options.maxSockets || Agent.defaultMaxSockets
  self.minSockets = self.options.minSockets || ForeverAgent.defaultMinSockets
  self.on('free', function(socket, host, port) {
    var name = getConnectionName(host, port)

    if (self.requests[name] && self.requests[name].length) {
      self.requests[name].shift().onSocket(socket)
    } else if (self.sockets[name].length < self.minSockets) {
      if (!self.freeSockets[name]) self.freeSockets[name] = []
      self.freeSockets[name].push(socket)
      
      // if an error happens while we don't use the socket anyway, meh, throw the socket away
      var onIdleError = function() {
        socket.destroy()
      }
      socket._onIdleError = onIdleError
      socket.on('error', onIdleError)
    } else {
      // If there are no pending requests just destroy the
      // socket and it will get removed from the pool. This
      // gets us out of timeout issues and allows us to
      // default to Connection:keep-alive.
      socket.destroy()
    }
  })

}
util.inherits(ForeverAgent, Agent)

ForeverAgent.defaultMinSockets = 5


ForeverAgent.prototype.createConnection = net.createConnection
ForeverAgent.prototype.addRequestNoreuse = Agent.prototype.addRequest
ForeverAgent.prototype.addRequest = function(req, host, port) {
  var name = getConnectionName(host, port)
  
  if (typeof host !== 'string') {
    var options = host
    port = options.port
    host = options.host
  }

  if (this.freeSockets[name] && this.freeSockets[name].length > 0 && !req.useChunkedEncodingByDefault) {
    var idleSocket = this.freeSockets[name].pop()
    idleSocket.removeListener('error', idleSocket._onIdleError)
    delete idleSocket._onIdleError
    req._reusedSocket = true
    req.onSocket(idleSocket)
  } else {
    this.addRequestNoreuse(req, host, port)
  }
}

ForeverAgent.prototype.removeSocket = function(s, name, host, port) {
  if (this.sockets[name]) {
    var index = this.sockets[name].indexOf(s)
    if (index !== -1) {
      this.sockets[name].splice(index, 1)
    }
  } else if (this.sockets[name] && this.sockets[name].length === 0) {
    // don't leak
    delete this.sockets[name]
    delete this.requests[name]
  }
  
  if (this.freeSockets[name]) {
    var index = this.freeSockets[name].indexOf(s)
    if (index !== -1) {
      this.freeSockets[name].splice(index, 1)
      if (this.freeSockets[name].length === 0) {
        delete this.freeSockets[name]
      }
    }
  }

  if (this.requests[name] && this.requests[name].length) {
    // If we have pending requests and a socket gets closed a new one
    // needs to be created to take over in the pool for the one that closed.
    this.createSocket(name, host, port).emit('free')
  }
}

function ForeverAgentSSL (options) {
  ForeverAgent.call(this, options)
}
util.inherits(ForeverAgentSSL, ForeverAgent)

ForeverAgentSSL.prototype.createConnection = createConnectionSSL
ForeverAgentSSL.prototype.addRequestNoreuse = AgentSSL.prototype.addRequest

function createConnectionSSL (port, host, options) {
  if (typeof port === 'object') {
    options = port;
  } else if (typeof host === 'object') {
    options = host;
  } else if (typeof options === 'object') {
    options = options;
  } else {
    options = {};
  }

  if (typeof port === 'number') {
    options.port = port;
  }

  if (typeof host === 'string') {
    options.host = host;
  }

  return tls.connect(options);
}


/***/ }),

/***/ 46863:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = realpath
realpath.realpath = realpath
realpath.sync = realpathSync
realpath.realpathSync = realpathSync
realpath.monkeypatch = monkeypatch
realpath.unmonkeypatch = unmonkeypatch

var fs = __webpack_require__(35747)
var origRealpath = fs.realpath
var origRealpathSync = fs.realpathSync

var version = process.version
var ok = /^v[0-5]\./.test(version)
var old = __webpack_require__(71734)

function newError (er) {
  return er && er.syscall === 'realpath' && (
    er.code === 'ELOOP' ||
    er.code === 'ENOMEM' ||
    er.code === 'ENAMETOOLONG'
  )
}

function realpath (p, cache, cb) {
  if (ok) {
    return origRealpath(p, cache, cb)
  }

  if (typeof cache === 'function') {
    cb = cache
    cache = null
  }
  origRealpath(p, cache, function (er, result) {
    if (newError(er)) {
      old.realpath(p, cache, cb)
    } else {
      cb(er, result)
    }
  })
}

function realpathSync (p, cache) {
  if (ok) {
    return origRealpathSync(p, cache)
  }

  try {
    return origRealpathSync(p, cache)
  } catch (er) {
    if (newError(er)) {
      return old.realpathSync(p, cache)
    } else {
      throw er
    }
  }
}

function monkeypatch () {
  fs.realpath = realpath
  fs.realpathSync = realpathSync
}

function unmonkeypatch () {
  fs.realpath = origRealpath
  fs.realpathSync = origRealpathSync
}


/***/ }),

/***/ 71734:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

var pathModule = __webpack_require__(85622);
var isWindows = process.platform === 'win32';
var fs = __webpack_require__(35747);

// JavaScript implementation of realpath, ported from node pre-v6

var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG);

function rethrow() {
  // Only enable in debug mode. A backtrace uses ~1000 bytes of heap space and
  // is fairly slow to generate.
  var callback;
  if (DEBUG) {
    var backtrace = new Error;
    callback = debugCallback;
  } else
    callback = missingCallback;

  return callback;

  function debugCallback(err) {
    if (err) {
      backtrace.message = err.message;
      err = backtrace;
      missingCallback(err);
    }
  }

  function missingCallback(err) {
    if (err) {
      if (process.throwDeprecation)
        throw err;  // Forgot a callback but don't know where? Use NODE_DEBUG=fs
      else if (!process.noDeprecation) {
        var msg = 'fs: missing callback ' + (err.stack || err.message);
        if (process.traceDeprecation)
          console.trace(msg);
        else
          console.error(msg);
      }
    }
  }
}

function maybeCallback(cb) {
  return typeof cb === 'function' ? cb : rethrow();
}

var normalize = pathModule.normalize;

// Regexp that finds the next partion of a (partial) path
// result is [base_with_slash, base], e.g. ['somedir/', 'somedir']
if (isWindows) {
  var nextPartRe = /(.*?)(?:[\/\\]+|$)/g;
} else {
  var nextPartRe = /(.*?)(?:[\/]+|$)/g;
}

// Regex to find the device root, including trailing slash. E.g. 'c:\\'.
if (isWindows) {
  var splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;
} else {
  var splitRootRe = /^[\/]*/;
}

exports.realpathSync = function realpathSync(p, cache) {
  // make p is absolute
  p = pathModule.resolve(p);

  if (cache && Object.prototype.hasOwnProperty.call(cache, p)) {
    return cache[p];
  }

  var original = p,
      seenLinks = {},
      knownHard = {};

  // current character position in p
  var pos;
  // the partial path so far, including a trailing slash if any
  var current;
  // the partial path without a trailing slash (except when pointing at a root)
  var base;
  // the partial path scanned in the previous round, with slash
  var previous;

  start();

  function start() {
    // Skip over roots
    var m = splitRootRe.exec(p);
    pos = m[0].length;
    current = m[0];
    base = m[0];
    previous = '';

    // On windows, check that the root exists. On unix there is no need.
    if (isWindows && !knownHard[base]) {
      fs.lstatSync(base);
      knownHard[base] = true;
    }
  }

  // walk down the path, swapping out linked pathparts for their real
  // values
  // NB: p.length changes.
  while (pos < p.length) {
    // find the next part
    nextPartRe.lastIndex = pos;
    var result = nextPartRe.exec(p);
    previous = current;
    current += result[0];
    base = previous + result[1];
    pos = nextPartRe.lastIndex;

    // continue if not a symlink
    if (knownHard[base] || (cache && cache[base] === base)) {
      continue;
    }

    var resolvedLink;
    if (cache && Object.prototype.hasOwnProperty.call(cache, base)) {
      // some known symbolic link.  no need to stat again.
      resolvedLink = cache[base];
    } else {
      var stat = fs.lstatSync(base);
      if (!stat.isSymbolicLink()) {
        knownHard[base] = true;
        if (cache) cache[base] = base;
        continue;
      }

      // read the link if it wasn't read before
      // dev/ino always return 0 on windows, so skip the check.
      var linkTarget = null;
      if (!isWindows) {
        var id = stat.dev.toString(32) + ':' + stat.ino.toString(32);
        if (seenLinks.hasOwnProperty(id)) {
          linkTarget = seenLinks[id];
        }
      }
      if (linkTarget === null) {
        fs.statSync(base);
        linkTarget = fs.readlinkSync(base);
      }
      resolvedLink = pathModule.resolve(previous, linkTarget);
      // track this, if given a cache.
      if (cache) cache[base] = resolvedLink;
      if (!isWindows) seenLinks[id] = linkTarget;
    }

    // resolve the link, then start over
    p = pathModule.resolve(resolvedLink, p.slice(pos));
    start();
  }

  if (cache) cache[original] = p;

  return p;
};


exports.realpath = function realpath(p, cache, cb) {
  if (typeof cb !== 'function') {
    cb = maybeCallback(cache);
    cache = null;
  }

  // make p is absolute
  p = pathModule.resolve(p);

  if (cache && Object.prototype.hasOwnProperty.call(cache, p)) {
    return process.nextTick(cb.bind(null, null, cache[p]));
  }

  var original = p,
      seenLinks = {},
      knownHard = {};

  // current character position in p
  var pos;
  // the partial path so far, including a trailing slash if any
  var current;
  // the partial path without a trailing slash (except when pointing at a root)
  var base;
  // the partial path scanned in the previous round, with slash
  var previous;

  start();

  function start() {
    // Skip over roots
    var m = splitRootRe.exec(p);
    pos = m[0].length;
    current = m[0];
    base = m[0];
    previous = '';

    // On windows, check that the root exists. On unix there is no need.
    if (isWindows && !knownHard[base]) {
      fs.lstat(base, function(err) {
        if (err) return cb(err);
        knownHard[base] = true;
        LOOP();
      });
    } else {
      process.nextTick(LOOP);
    }
  }

  // walk down the path, swapping out linked pathparts for their real
  // values
  function LOOP() {
    // stop if scanned past end of path
    if (pos >= p.length) {
      if (cache) cache[original] = p;
      return cb(null, p);
    }

    // find the next part
    nextPartRe.lastIndex = pos;
    var result = nextPartRe.exec(p);
    previous = current;
    current += result[0];
    base = previous + result[1];
    pos = nextPartRe.lastIndex;

    // continue if not a symlink
    if (knownHard[base] || (cache && cache[base] === base)) {
      return process.nextTick(LOOP);
    }

    if (cache && Object.prototype.hasOwnProperty.call(cache, base)) {
      // known symbolic link.  no need to stat again.
      return gotResolvedLink(cache[base]);
    }

    return fs.lstat(base, gotStat);
  }

  function gotStat(err, stat) {
    if (err) return cb(err);

    // if not a symlink, skip to the next path part
    if (!stat.isSymbolicLink()) {
      knownHard[base] = true;
      if (cache) cache[base] = base;
      return process.nextTick(LOOP);
    }

    // stat & read the link if not read before
    // call gotTarget as soon as the link target is known
    // dev/ino always return 0 on windows, so skip the check.
    if (!isWindows) {
      var id = stat.dev.toString(32) + ':' + stat.ino.toString(32);
      if (seenLinks.hasOwnProperty(id)) {
        return gotTarget(null, seenLinks[id], base);
      }
    }
    fs.stat(base, function(err) {
      if (err) return cb(err);

      fs.readlink(base, function(err, target) {
        if (!isWindows) seenLinks[id] = target;
        gotTarget(err, target);
      });
    });
  }

  function gotTarget(err, target, base) {
    if (err) return cb(err);

    var resolvedLink = pathModule.resolve(previous, target);
    if (cache) cache[base] = resolvedLink;
    gotResolvedLink(resolvedLink);
  }

  function gotResolvedLink(resolvedLink) {
    // resolve the link, then start over
    p = pathModule.resolve(resolvedLink, p.slice(pos));
    start();
  }
};


/***/ }),

/***/ 19320:
/***/ ((module) => {

"use strict";


/* eslint no-invalid-this: 1 */

var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
var slice = Array.prototype.slice;
var toStr = Object.prototype.toString;
var funcType = '[object Function]';

module.exports = function bind(that) {
    var target = this;
    if (typeof target !== 'function' || toStr.call(target) !== funcType) {
        throw new TypeError(ERROR_MESSAGE + target);
    }
    var args = slice.call(arguments, 1);

    var bound;
    var binder = function () {
        if (this instanceof bound) {
            var result = target.apply(
                this,
                args.concat(slice.call(arguments))
            );
            if (Object(result) === result) {
                return result;
            }
            return this;
        } else {
            return target.apply(
                that,
                args.concat(slice.call(arguments))
            );
        }
    };

    var boundLength = Math.max(0, target.length - args.length);
    var boundArgs = [];
    for (var i = 0; i < boundLength; i++) {
        boundArgs.push('$' + i);
    }

    bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);

    if (target.prototype) {
        var Empty = function Empty() {};
        Empty.prototype = target.prototype;
        bound.prototype = new Empty();
        Empty.prototype = null;
    }

    return bound;
};


/***/ }),

/***/ 88334:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var implementation = __webpack_require__(19320);

module.exports = Function.prototype.bind || implementation;


/***/ }),

/***/ 74538:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var undefined;

var $SyntaxError = SyntaxError;
var $Function = Function;
var $TypeError = TypeError;

// eslint-disable-next-line consistent-return
var getEvalledConstructor = function (expressionSyntax) {
	try {
		return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')();
	} catch (e) {}
};

var $gOPD = Object.getOwnPropertyDescriptor;
if ($gOPD) {
	try {
		$gOPD({}, '');
	} catch (e) {
		$gOPD = null; // this is IE 8, which has a broken gOPD
	}
}

var throwTypeError = function () {
	throw new $TypeError();
};
var ThrowTypeError = $gOPD
	? (function () {
		try {
			// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
			arguments.callee; // IE 8 does not throw here
			return throwTypeError;
		} catch (calleeThrows) {
			try {
				// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
				return $gOPD(arguments, 'callee').get;
			} catch (gOPDthrows) {
				return throwTypeError;
			}
		}
	}())
	: throwTypeError;

var hasSymbols = __webpack_require__(40587)();

var getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto

var needsEval = {};

var TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);

var INTRINSICS = {
	'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,
	'%Array%': Array,
	'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
	'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,
	'%AsyncFromSyncIteratorPrototype%': undefined,
	'%AsyncFunction%': needsEval,
	'%AsyncGenerator%': needsEval,
	'%AsyncGeneratorFunction%': needsEval,
	'%AsyncIteratorPrototype%': needsEval,
	'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,
	'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,
	'%Boolean%': Boolean,
	'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,
	'%Date%': Date,
	'%decodeURI%': decodeURI,
	'%decodeURIComponent%': decodeURIComponent,
	'%encodeURI%': encodeURI,
	'%encodeURIComponent%': encodeURIComponent,
	'%Error%': Error,
	'%eval%': eval, // eslint-disable-line no-eval
	'%EvalError%': EvalError,
	'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
	'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
	'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,
	'%Function%': $Function,
	'%GeneratorFunction%': needsEval,
	'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,
	'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,
	'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,
	'%isFinite%': isFinite,
	'%isNaN%': isNaN,
	'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,
	'%JSON%': typeof JSON === 'object' ? JSON : undefined,
	'%Map%': typeof Map === 'undefined' ? undefined : Map,
	'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),
	'%Math%': Math,
	'%Number%': Number,
	'%Object%': Object,
	'%parseFloat%': parseFloat,
	'%parseInt%': parseInt,
	'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
	'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
	'%RangeError%': RangeError,
	'%ReferenceError%': ReferenceError,
	'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
	'%RegExp%': RegExp,
	'%Set%': typeof Set === 'undefined' ? undefined : Set,
	'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),
	'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,
	'%String%': String,
	'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,
	'%Symbol%': hasSymbols ? Symbol : undefined,
	'%SyntaxError%': $SyntaxError,
	'%ThrowTypeError%': ThrowTypeError,
	'%TypedArray%': TypedArray,
	'%TypeError%': $TypeError,
	'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
	'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
	'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
	'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
	'%URIError%': URIError,
	'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
	'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,
	'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet
};

var doEval = function doEval(name) {
	var value;
	if (name === '%AsyncFunction%') {
		value = getEvalledConstructor('async function () {}');
	} else if (name === '%GeneratorFunction%') {
		value = getEvalledConstructor('function* () {}');
	} else if (name === '%AsyncGeneratorFunction%') {
		value = getEvalledConstructor('async function* () {}');
	} else if (name === '%AsyncGenerator%') {
		var fn = doEval('%AsyncGeneratorFunction%');
		if (fn) {
			value = fn.prototype;
		}
	} else if (name === '%AsyncIteratorPrototype%') {
		var gen = doEval('%AsyncGenerator%');
		if (gen) {
			value = getProto(gen.prototype);
		}
	}

	INTRINSICS[name] = value;

	return value;
};

var LEGACY_ALIASES = {
	'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],
	'%ArrayPrototype%': ['Array', 'prototype'],
	'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],
	'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],
	'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],
	'%ArrayProto_values%': ['Array', 'prototype', 'values'],
	'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],
	'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],
	'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],
	'%BooleanPrototype%': ['Boolean', 'prototype'],
	'%DataViewPrototype%': ['DataView', 'prototype'],
	'%DatePrototype%': ['Date', 'prototype'],
	'%ErrorPrototype%': ['Error', 'prototype'],
	'%EvalErrorPrototype%': ['EvalError', 'prototype'],
	'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],
	'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],
	'%FunctionPrototype%': ['Function', 'prototype'],
	'%Generator%': ['GeneratorFunction', 'prototype'],
	'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],
	'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],
	'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],
	'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],
	'%JSONParse%': ['JSON', 'parse'],
	'%JSONStringify%': ['JSON', 'stringify'],
	'%MapPrototype%': ['Map', 'prototype'],
	'%NumberPrototype%': ['Number', 'prototype'],
	'%ObjectPrototype%': ['Object', 'prototype'],
	'%ObjProto_toString%': ['Object', 'prototype', 'toString'],
	'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],
	'%PromisePrototype%': ['Promise', 'prototype'],
	'%PromiseProto_then%': ['Promise', 'prototype', 'then'],
	'%Promise_all%': ['Promise', 'all'],
	'%Promise_reject%': ['Promise', 'reject'],
	'%Promise_resolve%': ['Promise', 'resolve'],
	'%RangeErrorPrototype%': ['RangeError', 'prototype'],
	'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],
	'%RegExpPrototype%': ['RegExp', 'prototype'],
	'%SetPrototype%': ['Set', 'prototype'],
	'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],
	'%StringPrototype%': ['String', 'prototype'],
	'%SymbolPrototype%': ['Symbol', 'prototype'],
	'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],
	'%TypedArrayPrototype%': ['TypedArray', 'prototype'],
	'%TypeErrorPrototype%': ['TypeError', 'prototype'],
	'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],
	'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],
	'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],
	'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],
	'%URIErrorPrototype%': ['URIError', 'prototype'],
	'%WeakMapPrototype%': ['WeakMap', 'prototype'],
	'%WeakSetPrototype%': ['WeakSet', 'prototype']
};

var bind = __webpack_require__(88334);
var hasOwn = __webpack_require__(76339);
var $concat = bind.call(Function.call, Array.prototype.concat);
var $spliceApply = bind.call(Function.apply, Array.prototype.splice);
var $replace = bind.call(Function.call, String.prototype.replace);
var $strSlice = bind.call(Function.call, String.prototype.slice);

/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
var stringToPath = function stringToPath(string) {
	var first = $strSlice(string, 0, 1);
	var last = $strSlice(string, -1);
	if (first === '%' && last !== '%') {
		throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`');
	} else if (last === '%' && first !== '%') {
		throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`');
	}
	var result = [];
	$replace(string, rePropName, function (match, number, quote, subString) {
		result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;
	});
	return result;
};
/* end adaptation */

var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
	var intrinsicName = name;
	var alias;
	if (hasOwn(LEGACY_ALIASES, intrinsicName)) {
		alias = LEGACY_ALIASES[intrinsicName];
		intrinsicName = '%' + alias[0] + '%';
	}

	if (hasOwn(INTRINSICS, intrinsicName)) {
		var value = INTRINSICS[intrinsicName];
		if (value === needsEval) {
			value = doEval(intrinsicName);
		}
		if (typeof value === 'undefined' && !allowMissing) {
			throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
		}

		return {
			alias: alias,
			name: intrinsicName,
			value: value
		};
	}

	throw new $SyntaxError('intrinsic ' + name + ' does not exist!');
};

module.exports = function GetIntrinsic(name, allowMissing) {
	if (typeof name !== 'string' || name.length === 0) {
		throw new $TypeError('intrinsic name must be a non-empty string');
	}
	if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
		throw new $TypeError('"allowMissing" argument must be a boolean');
	}

	var parts = stringToPath(name);
	var intrinsicBaseName = parts.length > 0 ? parts[0] : '';

	var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);
	var intrinsicRealName = intrinsic.name;
	var value = intrinsic.value;
	var skipFurtherCaching = false;

	var alias = intrinsic.alias;
	if (alias) {
		intrinsicBaseName = alias[0];
		$spliceApply(parts, $concat([0, 1], alias));
	}

	for (var i = 1, isOwn = true; i < parts.length; i += 1) {
		var part = parts[i];
		var first = $strSlice(part, 0, 1);
		var last = $strSlice(part, -1);
		if (
			(
				(first === '"' || first === "'" || first === '`')
				|| (last === '"' || last === "'" || last === '`')
			)
			&& first !== last
		) {
			throw new $SyntaxError('property names with quotes must have matching quotes');
		}
		if (part === 'constructor' || !isOwn) {
			skipFurtherCaching = true;
		}

		intrinsicBaseName += '.' + part;
		intrinsicRealName = '%' + intrinsicBaseName + '%';

		if (hasOwn(INTRINSICS, intrinsicRealName)) {
			value = INTRINSICS[intrinsicRealName];
		} else if (value != null) {
			if (!(part in value)) {
				if (!allowMissing) {
					throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
				}
				return void undefined;
			}
			if ($gOPD && (i + 1) >= parts.length) {
				var desc = $gOPD(value, part);
				isOwn = !!desc;

				// By convention, when a data property is converted to an accessor
				// property to emulate a data property that does not suffer from
				// the override mistake, that accessor's getter is marked with
				// an `originalValue` property. Here, when we detect this, we
				// uphold the illusion by pretending to see that original data
				// property, i.e., returning the value rather than the getter
				// itself.
				if (isOwn && 'get' in desc && !('originalValue' in desc.get)) {
					value = desc.get;
				} else {
					value = value[part];
				}
			} else {
				isOwn = hasOwn(value, part);
				value = value[part];
			}

			if (isOwn && !skipFurtherCaching) {
				INTRINSICS[intrinsicRealName] = value;
			}
		}
	}
	return value;
};


/***/ }),

/***/ 91585:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {PassThrough} = __webpack_require__(92413);

module.exports = options => {
	options = Object.assign({}, options);

	const {array} = options;
	let {encoding} = options;
	const buffer = encoding === 'buffer';
	let objectMode = false;

	if (array) {
		objectMode = !(encoding || buffer);
	} else {
		encoding = encoding || 'utf8';
	}

	if (buffer) {
		encoding = null;
	}

	let len = 0;
	const ret = [];
	const stream = new PassThrough({objectMode});

	if (encoding) {
		stream.setEncoding(encoding);
	}

	stream.on('data', chunk => {
		ret.push(chunk);

		if (objectMode) {
			len = ret.length;
		} else {
			len += chunk.length;
		}
	});

	stream.getBufferedValue = () => {
		if (array) {
			return ret;
		}

		return buffer ? Buffer.concat(ret, len) : ret.join('');
	};

	stream.getBufferedLength = () => len;

	return stream;
};


/***/ }),

/***/ 21766:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const pump = __webpack_require__(18341);
const bufferStream = __webpack_require__(91585);

class MaxBufferError extends Error {
	constructor() {
		super('maxBuffer exceeded');
		this.name = 'MaxBufferError';
	}
}

function getStream(inputStream, options) {
	if (!inputStream) {
		return Promise.reject(new Error('Expected a stream'));
	}

	options = Object.assign({maxBuffer: Infinity}, options);

	const {maxBuffer} = options;

	let stream;
	return new Promise((resolve, reject) => {
		const rejectPromise = error => {
			if (error) { // A null check
				error.bufferedData = stream.getBufferedValue();
			}
			reject(error);
		};

		stream = pump(inputStream, bufferStream(options), error => {
			if (error) {
				rejectPromise(error);
				return;
			}

			resolve();
		});

		stream.on('data', () => {
			if (stream.getBufferedLength() > maxBuffer) {
				rejectPromise(new MaxBufferError());
			}
		});
	}).then(() => stream.getBufferedValue());
}

module.exports = getStream;
module.exports.buffer = (stream, options) => getStream(stream, Object.assign({}, options, {encoding: 'buffer'}));
module.exports.array = (stream, options) => getStream(stream, Object.assign({}, options, {array: true}));
module.exports.MaxBufferError = MaxBufferError;


/***/ }),

/***/ 47625:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.alphasort = alphasort
exports.alphasorti = alphasorti
exports.setopts = setopts
exports.ownProp = ownProp
exports.makeAbs = makeAbs
exports.finish = finish
exports.mark = mark
exports.isIgnored = isIgnored
exports.childrenIgnored = childrenIgnored

function ownProp (obj, field) {
  return Object.prototype.hasOwnProperty.call(obj, field)
}

var path = __webpack_require__(85622)
var minimatch = __webpack_require__(83973)
var isAbsolute = __webpack_require__(38714)
var Minimatch = minimatch.Minimatch

function alphasorti (a, b) {
  return a.toLowerCase().localeCompare(b.toLowerCase())
}

function alphasort (a, b) {
  return a.localeCompare(b)
}

function setupIgnores (self, options) {
  self.ignore = options.ignore || []

  if (!Array.isArray(self.ignore))
    self.ignore = [self.ignore]

  if (self.ignore.length) {
    self.ignore = self.ignore.map(ignoreMap)
  }
}

// ignore patterns are always in dot:true mode.
function ignoreMap (pattern) {
  var gmatcher = null
  if (pattern.slice(-3) === '/**') {
    var gpattern = pattern.replace(/(\/\*\*)+$/, '')
    gmatcher = new Minimatch(gpattern, { dot: true })
  }

  return {
    matcher: new Minimatch(pattern, { dot: true }),
    gmatcher: gmatcher
  }
}

function setopts (self, pattern, options) {
  if (!options)
    options = {}

  // base-matching: just use globstar for that.
  if (options.matchBase && -1 === pattern.indexOf("/")) {
    if (options.noglobstar) {
      throw new Error("base matching requires globstar")
    }
    pattern = "**/" + pattern
  }

  self.silent = !!options.silent
  self.pattern = pattern
  self.strict = options.strict !== false
  self.realpath = !!options.realpath
  self.realpathCache = options.realpathCache || Object.create(null)
  self.follow = !!options.follow
  self.dot = !!options.dot
  self.mark = !!options.mark
  self.nodir = !!options.nodir
  if (self.nodir)
    self.mark = true
  self.sync = !!options.sync
  self.nounique = !!options.nounique
  self.nonull = !!options.nonull
  self.nosort = !!options.nosort
  self.nocase = !!options.nocase
  self.stat = !!options.stat
  self.noprocess = !!options.noprocess
  self.absolute = !!options.absolute

  self.maxLength = options.maxLength || Infinity
  self.cache = options.cache || Object.create(null)
  self.statCache = options.statCache || Object.create(null)
  self.symlinks = options.symlinks || Object.create(null)

  setupIgnores(self, options)

  self.changedCwd = false
  var cwd = process.cwd()
  if (!ownProp(options, "cwd"))
    self.cwd = cwd
  else {
    self.cwd = path.resolve(options.cwd)
    self.changedCwd = self.cwd !== cwd
  }

  self.root = options.root || path.resolve(self.cwd, "/")
  self.root = path.resolve(self.root)
  if (process.platform === "win32")
    self.root = self.root.replace(/\\/g, "/")

  // TODO: is an absolute `cwd` supposed to be resolved against `root`?
  // e.g. { cwd: '/test', root: __dirname } === path.join(__dirname, '/test')
  self.cwdAbs = isAbsolute(self.cwd) ? self.cwd : makeAbs(self, self.cwd)
  if (process.platform === "win32")
    self.cwdAbs = self.cwdAbs.replace(/\\/g, "/")
  self.nomount = !!options.nomount

  // disable comments and negation in Minimatch.
  // Note that they are not supported in Glob itself anyway.
  options.nonegate = true
  options.nocomment = true

  self.minimatch = new Minimatch(pattern, options)
  self.options = self.minimatch.options
}

function finish (self) {
  var nou = self.nounique
  var all = nou ? [] : Object.create(null)

  for (var i = 0, l = self.matches.length; i < l; i ++) {
    var matches = self.matches[i]
    if (!matches || Object.keys(matches).length === 0) {
      if (self.nonull) {
        // do like the shell, and spit out the literal glob
        var literal = self.minimatch.globSet[i]
        if (nou)
          all.push(literal)
        else
          all[literal] = true
      }
    } else {
      // had matches
      var m = Object.keys(matches)
      if (nou)
        all.push.apply(all, m)
      else
        m.forEach(function (m) {
          all[m] = true
        })
    }
  }

  if (!nou)
    all = Object.keys(all)

  if (!self.nosort)
    all = all.sort(self.nocase ? alphasorti : alphasort)

  // at *some* point we statted all of these
  if (self.mark) {
    for (var i = 0; i < all.length; i++) {
      all[i] = self._mark(all[i])
    }
    if (self.nodir) {
      all = all.filter(function (e) {
        var notDir = !(/\/$/.test(e))
        var c = self.cache[e] || self.cache[makeAbs(self, e)]
        if (notDir && c)
          notDir = c !== 'DIR' && !Array.isArray(c)
        return notDir
      })
    }
  }

  if (self.ignore.length)
    all = all.filter(function(m) {
      return !isIgnored(self, m)
    })

  self.found = all
}

function mark (self, p) {
  var abs = makeAbs(self, p)
  var c = self.cache[abs]
  var m = p
  if (c) {
    var isDir = c === 'DIR' || Array.isArray(c)
    var slash = p.slice(-1) === '/'

    if (isDir && !slash)
      m += '/'
    else if (!isDir && slash)
      m = m.slice(0, -1)

    if (m !== p) {
      var mabs = makeAbs(self, m)
      self.statCache[mabs] = self.statCache[abs]
      self.cache[mabs] = self.cache[abs]
    }
  }

  return m
}

// lotta situps...
function makeAbs (self, f) {
  var abs = f
  if (f.charAt(0) === '/') {
    abs = path.join(self.root, f)
  } else if (isAbsolute(f) || f === '') {
    abs = f
  } else if (self.changedCwd) {
    abs = path.resolve(self.cwd, f)
  } else {
    abs = path.resolve(f)
  }

  if (process.platform === 'win32')
    abs = abs.replace(/\\/g, '/')

  return abs
}


// Return true, if pattern ends with globstar '**', for the accompanying parent directory.
// Ex:- If node_modules/** is the pattern, add 'node_modules' to ignore list along with it's contents
function isIgnored (self, path) {
  if (!self.ignore.length)
    return false

  return self.ignore.some(function(item) {
    return item.matcher.match(path) || !!(item.gmatcher && item.gmatcher.match(path))
  })
}

function childrenIgnored (self, path) {
  if (!self.ignore.length)
    return false

  return self.ignore.some(function(item) {
    return !!(item.gmatcher && item.gmatcher.match(path))
  })
}


/***/ }),

/***/ 91957:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Approach:
//
// 1. Get the minimatch set
// 2. For each pattern in the set, PROCESS(pattern, false)
// 3. Store matches per-set, then uniq them
//
// PROCESS(pattern, inGlobStar)
// Get the first [n] items from pattern that are all strings
// Join these together.  This is PREFIX.
//   If there is no more remaining, then stat(PREFIX) and
//   add to matches if it succeeds.  END.
//
// If inGlobStar and PREFIX is symlink and points to dir
//   set ENTRIES = []
// else readdir(PREFIX) as ENTRIES
//   If fail, END
//
// with ENTRIES
//   If pattern[n] is GLOBSTAR
//     // handle the case where the globstar match is empty
//     // by pruning it out, and testing the resulting pattern
//     PROCESS(pattern[0..n] + pattern[n+1 .. $], false)
//     // handle other cases.
//     for ENTRY in ENTRIES (not dotfiles)
//       // attach globstar + tail onto the entry
//       // Mark that this entry is a globstar match
//       PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true)
//
//   else // not globstar
//     for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot)
//       Test ENTRY against pattern[n]
//       If fails, continue
//       If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $])
//
// Caveat:
//   Cache all stats and readdirs results to minimize syscall.  Since all
//   we ever care about is existence and directory-ness, we can just keep
//   `true` for files, and [children,...] for directories, or `false` for
//   things that don't exist.

module.exports = glob

var fs = __webpack_require__(35747)
var rp = __webpack_require__(46863)
var minimatch = __webpack_require__(83973)
var Minimatch = minimatch.Minimatch
var inherits = __webpack_require__(44124)
var EE = __webpack_require__(28614).EventEmitter
var path = __webpack_require__(85622)
var assert = __webpack_require__(42357)
var isAbsolute = __webpack_require__(38714)
var globSync = __webpack_require__(29010)
var common = __webpack_require__(47625)
var alphasort = common.alphasort
var alphasorti = common.alphasorti
var setopts = common.setopts
var ownProp = common.ownProp
var inflight = __webpack_require__(52492)
var util = __webpack_require__(31669)
var childrenIgnored = common.childrenIgnored
var isIgnored = common.isIgnored

var once = __webpack_require__(1223)

function glob (pattern, options, cb) {
  if (typeof options === 'function') cb = options, options = {}
  if (!options) options = {}

  if (options.sync) {
    if (cb)
      throw new TypeError('callback provided to sync glob')
    return globSync(pattern, options)
  }

  return new Glob(pattern, options, cb)
}

glob.sync = globSync
var GlobSync = glob.GlobSync = globSync.GlobSync

// old api surface
glob.glob = glob

function extend (origin, add) {
  if (add === null || typeof add !== 'object') {
    return origin
  }

  var keys = Object.keys(add)
  var i = keys.length
  while (i--) {
    origin[keys[i]] = add[keys[i]]
  }
  return origin
}

glob.hasMagic = function (pattern, options_) {
  var options = extend({}, options_)
  options.noprocess = true

  var g = new Glob(pattern, options)
  var set = g.minimatch.set

  if (!pattern)
    return false

  if (set.length > 1)
    return true

  for (var j = 0; j < set[0].length; j++) {
    if (typeof set[0][j] !== 'string')
      return true
  }

  return false
}

glob.Glob = Glob
inherits(Glob, EE)
function Glob (pattern, options, cb) {
  if (typeof options === 'function') {
    cb = options
    options = null
  }

  if (options && options.sync) {
    if (cb)
      throw new TypeError('callback provided to sync glob')
    return new GlobSync(pattern, options)
  }

  if (!(this instanceof Glob))
    return new Glob(pattern, options, cb)

  setopts(this, pattern, options)
  this._didRealPath = false

  // process each pattern in the minimatch set
  var n = this.minimatch.set.length

  // The matches are stored as {<filename>: true,...} so that
  // duplicates are automagically pruned.
  // Later, we do an Object.keys() on these.
  // Keep them as a list so we can fill in when nonull is set.
  this.matches = new Array(n)

  if (typeof cb === 'function') {
    cb = once(cb)
    this.on('error', cb)
    this.on('end', function (matches) {
      cb(null, matches)
    })
  }

  var self = this
  this._processing = 0

  this._emitQueue = []
  this._processQueue = []
  this.paused = false

  if (this.noprocess)
    return this

  if (n === 0)
    return done()

  var sync = true
  for (var i = 0; i < n; i ++) {
    this._process(this.minimatch.set[i], i, false, done)
  }
  sync = false

  function done () {
    --self._processing
    if (self._processing <= 0) {
      if (sync) {
        process.nextTick(function () {
          self._finish()
        })
      } else {
        self._finish()
      }
    }
  }
}

Glob.prototype._finish = function () {
  assert(this instanceof Glob)
  if (this.aborted)
    return

  if (this.realpath && !this._didRealpath)
    return this._realpath()

  common.finish(this)
  this.emit('end', this.found)
}

Glob.prototype._realpath = function () {
  if (this._didRealpath)
    return

  this._didRealpath = true

  var n = this.matches.length
  if (n === 0)
    return this._finish()

  var self = this
  for (var i = 0; i < this.matches.length; i++)
    this._realpathSet(i, next)

  function next () {
    if (--n === 0)
      self._finish()
  }
}

Glob.prototype._realpathSet = function (index, cb) {
  var matchset = this.matches[index]
  if (!matchset)
    return cb()

  var found = Object.keys(matchset)
  var self = this
  var n = found.length

  if (n === 0)
    return cb()

  var set = this.matches[index] = Object.create(null)
  found.forEach(function (p, i) {
    // If there's a problem with the stat, then it means that
    // one or more of the links in the realpath couldn't be
    // resolved.  just return the abs value in that case.
    p = self._makeAbs(p)
    rp.realpath(p, self.realpathCache, function (er, real) {
      if (!er)
        set[real] = true
      else if (er.syscall === 'stat')
        set[p] = true
      else
        self.emit('error', er) // srsly wtf right here

      if (--n === 0) {
        self.matches[index] = set
        cb()
      }
    })
  })
}

Glob.prototype._mark = function (p) {
  return common.mark(this, p)
}

Glob.prototype._makeAbs = function (f) {
  return common.makeAbs(this, f)
}

Glob.prototype.abort = function () {
  this.aborted = true
  this.emit('abort')
}

Glob.prototype.pause = function () {
  if (!this.paused) {
    this.paused = true
    this.emit('pause')
  }
}

Glob.prototype.resume = function () {
  if (this.paused) {
    this.emit('resume')
    this.paused = false
    if (this._emitQueue.length) {
      var eq = this._emitQueue.slice(0)
      this._emitQueue.length = 0
      for (var i = 0; i < eq.length; i ++) {
        var e = eq[i]
        this._emitMatch(e[0], e[1])
      }
    }
    if (this._processQueue.length) {
      var pq = this._processQueue.slice(0)
      this._processQueue.length = 0
      for (var i = 0; i < pq.length; i ++) {
        var p = pq[i]
        this._processing--
        this._process(p[0], p[1], p[2], p[3])
      }
    }
  }
}

Glob.prototype._process = function (pattern, index, inGlobStar, cb) {
  assert(this instanceof Glob)
  assert(typeof cb === 'function')

  if (this.aborted)
    return

  this._processing++
  if (this.paused) {
    this._processQueue.push([pattern, index, inGlobStar, cb])
    return
  }

  //console.error('PROCESS %d', this._processing, pattern)

  // Get the first [n] parts of pattern that are all strings.
  var n = 0
  while (typeof pattern[n] === 'string') {
    n ++
  }
  // now n is the index of the first one that is *not* a string.

  // see if there's anything else
  var prefix
  switch (n) {
    // if not, then this is rather simple
    case pattern.length:
      this._processSimple(pattern.join('/'), index, cb)
      return

    case 0:
      // pattern *starts* with some non-trivial item.
      // going to readdir(cwd), but not include the prefix in matches.
      prefix = null
      break

    default:
      // pattern has some string bits in the front.
      // whatever it starts with, whether that's 'absolute' like /foo/bar,
      // or 'relative' like '../baz'
      prefix = pattern.slice(0, n).join('/')
      break
  }

  var remain = pattern.slice(n)

  // get the list of entries.
  var read
  if (prefix === null)
    read = '.'
  else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
    if (!prefix || !isAbsolute(prefix))
      prefix = '/' + prefix
    read = prefix
  } else
    read = prefix

  var abs = this._makeAbs(read)

  //if ignored, skip _processing
  if (childrenIgnored(this, read))
    return cb()

  var isGlobStar = remain[0] === minimatch.GLOBSTAR
  if (isGlobStar)
    this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb)
  else
    this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb)
}

Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) {
  var self = this
  this._readdir(abs, inGlobStar, function (er, entries) {
    return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
  })
}

Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {

  // if the abs isn't a dir, then nothing can match!
  if (!entries)
    return cb()

  // It will only match dot entries if it starts with a dot, or if
  // dot is set.  Stuff like @(.foo|.bar) isn't allowed.
  var pn = remain[0]
  var negate = !!this.minimatch.negate
  var rawGlob = pn._glob
  var dotOk = this.dot || rawGlob.charAt(0) === '.'

  var matchedEntries = []
  for (var i = 0; i < entries.length; i++) {
    var e = entries[i]
    if (e.charAt(0) !== '.' || dotOk) {
      var m
      if (negate && !prefix) {
        m = !e.match(pn)
      } else {
        m = e.match(pn)
      }
      if (m)
        matchedEntries.push(e)
    }
  }

  //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries)

  var len = matchedEntries.length
  // If there are no matched entries, then nothing matches.
  if (len === 0)
    return cb()

  // if this is the last remaining pattern bit, then no need for
  // an additional stat *unless* the user has specified mark or
  // stat explicitly.  We know they exist, since readdir returned
  // them.

  if (remain.length === 1 && !this.mark && !this.stat) {
    if (!this.matches[index])
      this.matches[index] = Object.create(null)

    for (var i = 0; i < len; i ++) {
      var e = matchedEntries[i]
      if (prefix) {
        if (prefix !== '/')
          e = prefix + '/' + e
        else
          e = prefix + e
      }

      if (e.charAt(0) === '/' && !this.nomount) {
        e = path.join(this.root, e)
      }
      this._emitMatch(index, e)
    }
    // This was the last one, and no stats were needed
    return cb()
  }

  // now test all matched entries as stand-ins for that part
  // of the pattern.
  remain.shift()
  for (var i = 0; i < len; i ++) {
    var e = matchedEntries[i]
    var newPattern
    if (prefix) {
      if (prefix !== '/')
        e = prefix + '/' + e
      else
        e = prefix + e
    }
    this._process([e].concat(remain), index, inGlobStar, cb)
  }
  cb()
}

Glob.prototype._emitMatch = function (index, e) {
  if (this.aborted)
    return

  if (isIgnored(this, e))
    return

  if (this.paused) {
    this._emitQueue.push([index, e])
    return
  }

  var abs = isAbsolute(e) ? e : this._makeAbs(e)

  if (this.mark)
    e = this._mark(e)

  if (this.absolute)
    e = abs

  if (this.matches[index][e])
    return

  if (this.nodir) {
    var c = this.cache[abs]
    if (c === 'DIR' || Array.isArray(c))
      return
  }

  this.matches[index][e] = true

  var st = this.statCache[abs]
  if (st)
    this.emit('stat', e, st)

  this.emit('match', e)
}

Glob.prototype._readdirInGlobStar = function (abs, cb) {
  if (this.aborted)
    return

  // follow all symlinked directories forever
  // just proceed as if this is a non-globstar situation
  if (this.follow)
    return this._readdir(abs, false, cb)

  var lstatkey = 'lstat\0' + abs
  var self = this
  var lstatcb = inflight(lstatkey, lstatcb_)

  if (lstatcb)
    fs.lstat(abs, lstatcb)

  function lstatcb_ (er, lstat) {
    if (er && er.code === 'ENOENT')
      return cb()

    var isSym = lstat && lstat.isSymbolicLink()
    self.symlinks[abs] = isSym

    // If it's not a symlink or a dir, then it's definitely a regular file.
    // don't bother doing a readdir in that case.
    if (!isSym && lstat && !lstat.isDirectory()) {
      self.cache[abs] = 'FILE'
      cb()
    } else
      self._readdir(abs, false, cb)
  }
}

Glob.prototype._readdir = function (abs, inGlobStar, cb) {
  if (this.aborted)
    return

  cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb)
  if (!cb)
    return

  //console.error('RD %j %j', +inGlobStar, abs)
  if (inGlobStar && !ownProp(this.symlinks, abs))
    return this._readdirInGlobStar(abs, cb)

  if (ownProp(this.cache, abs)) {
    var c = this.cache[abs]
    if (!c || c === 'FILE')
      return cb()

    if (Array.isArray(c))
      return cb(null, c)
  }

  var self = this
  fs.readdir(abs, readdirCb(this, abs, cb))
}

function readdirCb (self, abs, cb) {
  return function (er, entries) {
    if (er)
      self._readdirError(abs, er, cb)
    else
      self._readdirEntries(abs, entries, cb)
  }
}

Glob.prototype._readdirEntries = function (abs, entries, cb) {
  if (this.aborted)
    return

  // if we haven't asked to stat everything, then just
  // assume that everything in there exists, so we can avoid
  // having to stat it a second time.
  if (!this.mark && !this.stat) {
    for (var i = 0; i < entries.length; i ++) {
      var e = entries[i]
      if (abs === '/')
        e = abs + e
      else
        e = abs + '/' + e
      this.cache[e] = true
    }
  }

  this.cache[abs] = entries
  return cb(null, entries)
}

Glob.prototype._readdirError = function (f, er, cb) {
  if (this.aborted)
    return

  // handle errors, and cache the information
  switch (er.code) {
    case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205
    case 'ENOTDIR': // totally normal. means it *does* exist.
      var abs = this._makeAbs(f)
      this.cache[abs] = 'FILE'
      if (abs === this.cwdAbs) {
        var error = new Error(er.code + ' invalid cwd ' + this.cwd)
        error.path = this.cwd
        error.code = er.code
        this.emit('error', error)
        this.abort()
      }
      break

    case 'ENOENT': // not terribly unusual
    case 'ELOOP':
    case 'ENAMETOOLONG':
    case 'UNKNOWN':
      this.cache[this._makeAbs(f)] = false
      break

    default: // some unusual error.  Treat as failure.
      this.cache[this._makeAbs(f)] = false
      if (this.strict) {
        this.emit('error', er)
        // If the error is handled, then we abort
        // if not, we threw out of here
        this.abort()
      }
      if (!this.silent)
        console.error('glob error', er)
      break
  }

  return cb()
}

Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) {
  var self = this
  this._readdir(abs, inGlobStar, function (er, entries) {
    self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
  })
}


Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
  //console.error('pgs2', prefix, remain[0], entries)

  // no entries means not a dir, so it can never have matches
  // foo.txt/** doesn't match foo.txt
  if (!entries)
    return cb()

  // test without the globstar, and with every child both below
  // and replacing the globstar.
  var remainWithoutGlobStar = remain.slice(1)
  var gspref = prefix ? [ prefix ] : []
  var noGlobStar = gspref.concat(remainWithoutGlobStar)

  // the noGlobStar pattern exits the inGlobStar state
  this._process(noGlobStar, index, false, cb)

  var isSym = this.symlinks[abs]
  var len = entries.length

  // If it's a symlink, and we're in a globstar, then stop
  if (isSym && inGlobStar)
    return cb()

  for (var i = 0; i < len; i++) {
    var e = entries[i]
    if (e.charAt(0) === '.' && !this.dot)
      continue

    // these two cases enter the inGlobStar state
    var instead = gspref.concat(entries[i], remainWithoutGlobStar)
    this._process(instead, index, true, cb)

    var below = gspref.concat(entries[i], remain)
    this._process(below, index, true, cb)
  }

  cb()
}

Glob.prototype._processSimple = function (prefix, index, cb) {
  // XXX review this.  Shouldn't it be doing the mounting etc
  // before doing stat?  kinda weird?
  var self = this
  this._stat(prefix, function (er, exists) {
    self._processSimple2(prefix, index, er, exists, cb)
  })
}
Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) {

  //console.error('ps2', prefix, exists)

  if (!this.matches[index])
    this.matches[index] = Object.create(null)

  // If it doesn't exist, then just mark the lack of results
  if (!exists)
    return cb()

  if (prefix && isAbsolute(prefix) && !this.nomount) {
    var trail = /[\/\\]$/.test(prefix)
    if (prefix.charAt(0) === '/') {
      prefix = path.join(this.root, prefix)
    } else {
      prefix = path.resolve(this.root, prefix)
      if (trail)
        prefix += '/'
    }
  }

  if (process.platform === 'win32')
    prefix = prefix.replace(/\\/g, '/')

  // Mark this as a match
  this._emitMatch(index, prefix)
  cb()
}

// Returns either 'DIR', 'FILE', or false
Glob.prototype._stat = function (f, cb) {
  var abs = this._makeAbs(f)
  var needDir = f.slice(-1) === '/'

  if (f.length > this.maxLength)
    return cb()

  if (!this.stat && ownProp(this.cache, abs)) {
    var c = this.cache[abs]

    if (Array.isArray(c))
      c = 'DIR'

    // It exists, but maybe not how we need it
    if (!needDir || c === 'DIR')
      return cb(null, c)

    if (needDir && c === 'FILE')
      return cb()

    // otherwise we have to stat, because maybe c=true
    // if we know it exists, but not what it is.
  }

  var exists
  var stat = this.statCache[abs]
  if (stat !== undefined) {
    if (stat === false)
      return cb(null, stat)
    else {
      var type = stat.isDirectory() ? 'DIR' : 'FILE'
      if (needDir && type === 'FILE')
        return cb()
      else
        return cb(null, type, stat)
    }
  }

  var self = this
  var statcb = inflight('stat\0' + abs, lstatcb_)
  if (statcb)
    fs.lstat(abs, statcb)

  function lstatcb_ (er, lstat) {
    if (lstat && lstat.isSymbolicLink()) {
      // If it's a symlink, then treat it as the target, unless
      // the target does not exist, then treat it as a file.
      return fs.stat(abs, function (er, stat) {
        if (er)
          self._stat2(f, abs, null, lstat, cb)
        else
          self._stat2(f, abs, er, stat, cb)
      })
    } else {
      self._stat2(f, abs, er, lstat, cb)
    }
  }
}

Glob.prototype._stat2 = function (f, abs, er, stat, cb) {
  if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
    this.statCache[abs] = false
    return cb()
  }

  var needDir = f.slice(-1) === '/'
  this.statCache[abs] = stat

  if (abs.slice(-1) === '/' && stat && !stat.isDirectory())
    return cb(null, false, stat)

  var c = true
  if (stat)
    c = stat.isDirectory() ? 'DIR' : 'FILE'
  this.cache[abs] = this.cache[abs] || c

  if (needDir && c === 'FILE')
    return cb()

  return cb(null, c, stat)
}


/***/ }),

/***/ 29010:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = globSync
globSync.GlobSync = GlobSync

var fs = __webpack_require__(35747)
var rp = __webpack_require__(46863)
var minimatch = __webpack_require__(83973)
var Minimatch = minimatch.Minimatch
var Glob = __webpack_require__(91957).Glob
var util = __webpack_require__(31669)
var path = __webpack_require__(85622)
var assert = __webpack_require__(42357)
var isAbsolute = __webpack_require__(38714)
var common = __webpack_require__(47625)
var alphasort = common.alphasort
var alphasorti = common.alphasorti
var setopts = common.setopts
var ownProp = common.ownProp
var childrenIgnored = common.childrenIgnored
var isIgnored = common.isIgnored

function globSync (pattern, options) {
  if (typeof options === 'function' || arguments.length === 3)
    throw new TypeError('callback provided to sync glob\n'+
                        'See: https://github.com/isaacs/node-glob/issues/167')

  return new GlobSync(pattern, options).found
}

function GlobSync (pattern, options) {
  if (!pattern)
    throw new Error('must provide pattern')

  if (typeof options === 'function' || arguments.length === 3)
    throw new TypeError('callback provided to sync glob\n'+
                        'See: https://github.com/isaacs/node-glob/issues/167')

  if (!(this instanceof GlobSync))
    return new GlobSync(pattern, options)

  setopts(this, pattern, options)

  if (this.noprocess)
    return this

  var n = this.minimatch.set.length
  this.matches = new Array(n)
  for (var i = 0; i < n; i ++) {
    this._process(this.minimatch.set[i], i, false)
  }
  this._finish()
}

GlobSync.prototype._finish = function () {
  assert(this instanceof GlobSync)
  if (this.realpath) {
    var self = this
    this.matches.forEach(function (matchset, index) {
      var set = self.matches[index] = Object.create(null)
      for (var p in matchset) {
        try {
          p = self._makeAbs(p)
          var real = rp.realpathSync(p, self.realpathCache)
          set[real] = true
        } catch (er) {
          if (er.syscall === 'stat')
            set[self._makeAbs(p)] = true
          else
            throw er
        }
      }
    })
  }
  common.finish(this)
}


GlobSync.prototype._process = function (pattern, index, inGlobStar) {
  assert(this instanceof GlobSync)

  // Get the first [n] parts of pattern that are all strings.
  var n = 0
  while (typeof pattern[n] === 'string') {
    n ++
  }
  // now n is the index of the first one that is *not* a string.

  // See if there's anything else
  var prefix
  switch (n) {
    // if not, then this is rather simple
    case pattern.length:
      this._processSimple(pattern.join('/'), index)
      return

    case 0:
      // pattern *starts* with some non-trivial item.
      // going to readdir(cwd), but not include the prefix in matches.
      prefix = null
      break

    default:
      // pattern has some string bits in the front.
      // whatever it starts with, whether that's 'absolute' like /foo/bar,
      // or 'relative' like '../baz'
      prefix = pattern.slice(0, n).join('/')
      break
  }

  var remain = pattern.slice(n)

  // get the list of entries.
  var read
  if (prefix === null)
    read = '.'
  else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
    if (!prefix || !isAbsolute(prefix))
      prefix = '/' + prefix
    read = prefix
  } else
    read = prefix

  var abs = this._makeAbs(read)

  //if ignored, skip processing
  if (childrenIgnored(this, read))
    return

  var isGlobStar = remain[0] === minimatch.GLOBSTAR
  if (isGlobStar)
    this._processGlobStar(prefix, read, abs, remain, index, inGlobStar)
  else
    this._processReaddir(prefix, read, abs, remain, index, inGlobStar)
}


GlobSync.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar) {
  var entries = this._readdir(abs, inGlobStar)

  // if the abs isn't a dir, then nothing can match!
  if (!entries)
    return

  // It will only match dot entries if it starts with a dot, or if
  // dot is set.  Stuff like @(.foo|.bar) isn't allowed.
  var pn = remain[0]
  var negate = !!this.minimatch.negate
  var rawGlob = pn._glob
  var dotOk = this.dot || rawGlob.charAt(0) === '.'

  var matchedEntries = []
  for (var i = 0; i < entries.length; i++) {
    var e = entries[i]
    if (e.charAt(0) !== '.' || dotOk) {
      var m
      if (negate && !prefix) {
        m = !e.match(pn)
      } else {
        m = e.match(pn)
      }
      if (m)
        matchedEntries.push(e)
    }
  }

  var len = matchedEntries.length
  // If there are no matched entries, then nothing matches.
  if (len === 0)
    return

  // if this is the last remaining pattern bit, then no need for
  // an additional stat *unless* the user has specified mark or
  // stat explicitly.  We know they exist, since readdir returned
  // them.

  if (remain.length === 1 && !this.mark && !this.stat) {
    if (!this.matches[index])
      this.matches[index] = Object.create(null)

    for (var i = 0; i < len; i ++) {
      var e = matchedEntries[i]
      if (prefix) {
        if (prefix.slice(-1) !== '/')
          e = prefix + '/' + e
        else
          e = prefix + e
      }

      if (e.charAt(0) === '/' && !this.nomount) {
        e = path.join(this.root, e)
      }
      this._emitMatch(index, e)
    }
    // This was the last one, and no stats were needed
    return
  }

  // now test all matched entries as stand-ins for that part
  // of the pattern.
  remain.shift()
  for (var i = 0; i < len; i ++) {
    var e = matchedEntries[i]
    var newPattern
    if (prefix)
      newPattern = [prefix, e]
    else
      newPattern = [e]
    this._process(newPattern.concat(remain), index, inGlobStar)
  }
}


GlobSync.prototype._emitMatch = function (index, e) {
  if (isIgnored(this, e))
    return

  var abs = this._makeAbs(e)

  if (this.mark)
    e = this._mark(e)

  if (this.absolute) {
    e = abs
  }

  if (this.matches[index][e])
    return

  if (this.nodir) {
    var c = this.cache[abs]
    if (c === 'DIR' || Array.isArray(c))
      return
  }

  this.matches[index][e] = true

  if (this.stat)
    this._stat(e)
}


GlobSync.prototype._readdirInGlobStar = function (abs) {
  // follow all symlinked directories forever
  // just proceed as if this is a non-globstar situation
  if (this.follow)
    return this._readdir(abs, false)

  var entries
  var lstat
  var stat
  try {
    lstat = fs.lstatSync(abs)
  } catch (er) {
    if (er.code === 'ENOENT') {
      // lstat failed, doesn't exist
      return null
    }
  }

  var isSym = lstat && lstat.isSymbolicLink()
  this.symlinks[abs] = isSym

  // If it's not a symlink or a dir, then it's definitely a regular file.
  // don't bother doing a readdir in that case.
  if (!isSym && lstat && !lstat.isDirectory())
    this.cache[abs] = 'FILE'
  else
    entries = this._readdir(abs, false)

  return entries
}

GlobSync.prototype._readdir = function (abs, inGlobStar) {
  var entries

  if (inGlobStar && !ownProp(this.symlinks, abs))
    return this._readdirInGlobStar(abs)

  if (ownProp(this.cache, abs)) {
    var c = this.cache[abs]
    if (!c || c === 'FILE')
      return null

    if (Array.isArray(c))
      return c
  }

  try {
    return this._readdirEntries(abs, fs.readdirSync(abs))
  } catch (er) {
    this._readdirError(abs, er)
    return null
  }
}

GlobSync.prototype._readdirEntries = function (abs, entries) {
  // if we haven't asked to stat everything, then just
  // assume that everything in there exists, so we can avoid
  // having to stat it a second time.
  if (!this.mark && !this.stat) {
    for (var i = 0; i < entries.length; i ++) {
      var e = entries[i]
      if (abs === '/')
        e = abs + e
      else
        e = abs + '/' + e
      this.cache[e] = true
    }
  }

  this.cache[abs] = entries

  // mark and cache dir-ness
  return entries
}

GlobSync.prototype._readdirError = function (f, er) {
  // handle errors, and cache the information
  switch (er.code) {
    case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205
    case 'ENOTDIR': // totally normal. means it *does* exist.
      var abs = this._makeAbs(f)
      this.cache[abs] = 'FILE'
      if (abs === this.cwdAbs) {
        var error = new Error(er.code + ' invalid cwd ' + this.cwd)
        error.path = this.cwd
        error.code = er.code
        throw error
      }
      break

    case 'ENOENT': // not terribly unusual
    case 'ELOOP':
    case 'ENAMETOOLONG':
    case 'UNKNOWN':
      this.cache[this._makeAbs(f)] = false
      break

    default: // some unusual error.  Treat as failure.
      this.cache[this._makeAbs(f)] = false
      if (this.strict)
        throw er
      if (!this.silent)
        console.error('glob error', er)
      break
  }
}

GlobSync.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar) {

  var entries = this._readdir(abs, inGlobStar)

  // no entries means not a dir, so it can never have matches
  // foo.txt/** doesn't match foo.txt
  if (!entries)
    return

  // test without the globstar, and with every child both below
  // and replacing the globstar.
  var remainWithoutGlobStar = remain.slice(1)
  var gspref = prefix ? [ prefix ] : []
  var noGlobStar = gspref.concat(remainWithoutGlobStar)

  // the noGlobStar pattern exits the inGlobStar state
  this._process(noGlobStar, index, false)

  var len = entries.length
  var isSym = this.symlinks[abs]

  // If it's a symlink, and we're in a globstar, then stop
  if (isSym && inGlobStar)
    return

  for (var i = 0; i < len; i++) {
    var e = entries[i]
    if (e.charAt(0) === '.' && !this.dot)
      continue

    // these two cases enter the inGlobStar state
    var instead = gspref.concat(entries[i], remainWithoutGlobStar)
    this._process(instead, index, true)

    var below = gspref.concat(entries[i], remain)
    this._process(below, index, true)
  }
}

GlobSync.prototype._processSimple = function (prefix, index) {
  // XXX review this.  Shouldn't it be doing the mounting etc
  // before doing stat?  kinda weird?
  var exists = this._stat(prefix)

  if (!this.matches[index])
    this.matches[index] = Object.create(null)

  // If it doesn't exist, then just mark the lack of results
  if (!exists)
    return

  if (prefix && isAbsolute(prefix) && !this.nomount) {
    var trail = /[\/\\]$/.test(prefix)
    if (prefix.charAt(0) === '/') {
      prefix = path.join(this.root, prefix)
    } else {
      prefix = path.resolve(this.root, prefix)
      if (trail)
        prefix += '/'
    }
  }

  if (process.platform === 'win32')
    prefix = prefix.replace(/\\/g, '/')

  // Mark this as a match
  this._emitMatch(index, prefix)
}

// Returns either 'DIR', 'FILE', or false
GlobSync.prototype._stat = function (f) {
  var abs = this._makeAbs(f)
  var needDir = f.slice(-1) === '/'

  if (f.length > this.maxLength)
    return false

  if (!this.stat && ownProp(this.cache, abs)) {
    var c = this.cache[abs]

    if (Array.isArray(c))
      c = 'DIR'

    // It exists, but maybe not how we need it
    if (!needDir || c === 'DIR')
      return c

    if (needDir && c === 'FILE')
      return false

    // otherwise we have to stat, because maybe c=true
    // if we know it exists, but not what it is.
  }

  var exists
  var stat = this.statCache[abs]
  if (!stat) {
    var lstat
    try {
      lstat = fs.lstatSync(abs)
    } catch (er) {
      if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
        this.statCache[abs] = false
        return false
      }
    }

    if (lstat && lstat.isSymbolicLink()) {
      try {
        stat = fs.statSync(abs)
      } catch (er) {
        stat = lstat
      }
    } else {
      stat = lstat
    }
  }

  this.statCache[abs] = stat

  var c = true
  if (stat)
    c = stat.isDirectory() ? 'DIR' : 'FILE'

  this.cache[abs] = this.cache[abs] || c

  if (needDir && c === 'FILE')
    return false

  return c
}

GlobSync.prototype._mark = function (p) {
  return common.mark(this, p)
}

GlobSync.prototype._makeAbs = function (f) {
  return common.makeAbs(this, f)
}


/***/ }),

/***/ 97152:
/***/ ((module) => {

"use strict";


class CancelError extends Error {
	constructor(reason) {
		super(reason || 'Promise was canceled');
		this.name = 'CancelError';
	}

	get isCanceled() {
		return true;
	}
}

class PCancelable {
	static fn(userFn) {
		return (...args) => {
			return new PCancelable((resolve, reject, onCancel) => {
				args.push(onCancel);
				userFn(...args).then(resolve, reject);
			});
		};
	}

	constructor(executor) {
		this._cancelHandlers = [];
		this._isPending = true;
		this._isCanceled = false;
		this._rejectOnCancel = true;

		this._promise = new Promise((resolve, reject) => {
			this._reject = reject;

			const onResolve = value => {
				this._isPending = false;
				resolve(value);
			};

			const onReject = error => {
				this._isPending = false;
				reject(error);
			};

			const onCancel = handler => {
				this._cancelHandlers.push(handler);
			};

			Object.defineProperties(onCancel, {
				shouldReject: {
					get: () => this._rejectOnCancel,
					set: bool => {
						this._rejectOnCancel = bool;
					}
				}
			});

			return executor(onResolve, onReject, onCancel);
		});
	}

	then(onFulfilled, onRejected) {
		return this._promise.then(onFulfilled, onRejected);
	}

	catch(onRejected) {
		return this._promise.catch(onRejected);
	}

	finally(onFinally) {
		return this._promise.finally(onFinally);
	}

	cancel(reason) {
		if (!this._isPending || this._isCanceled) {
			return;
		}

		if (this._cancelHandlers.length > 0) {
			try {
				for (const handler of this._cancelHandlers) {
					handler();
				}
			} catch (error) {
				this._reject(error);
			}
		}

		this._isCanceled = true;
		if (this._rejectOnCancel) {
			this._reject(new CancelError(reason));
		}
	}

	get isCanceled() {
		return this._isCanceled;
	}
}

Object.setPrototypeOf(PCancelable.prototype, Promise.prototype);

module.exports = PCancelable;
module.exports.default = PCancelable;

module.exports.CancelError = CancelError;


/***/ }),

/***/ 32013:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const EventEmitter = __webpack_require__(28614);
const getStream = __webpack_require__(21766);
const is = __webpack_require__(7678);
const PCancelable = __webpack_require__(97152);
const requestAsEventEmitter = __webpack_require__(45296);
const {HTTPError, ParseError, ReadError} = __webpack_require__(57083);
const {options: mergeOptions} = __webpack_require__(47339);
const {reNormalize} = __webpack_require__(76034);

const asPromise = options => {
	const proxy = new EventEmitter();

	const promise = new PCancelable((resolve, reject, onCancel) => {
		const emitter = requestAsEventEmitter(options);

		onCancel(emitter.abort);

		emitter.on('response', async response => {
			proxy.emit('response', response);

			const stream = is.null(options.encoding) ? getStream.buffer(response) : getStream(response, options);

			let data;
			try {
				data = await stream;
			} catch (error) {
				reject(new ReadError(error, options));
				return;
			}

			const limitStatusCode = options.followRedirect ? 299 : 399;

			response.body = data;

			try {
				for (const [index, hook] of Object.entries(options.hooks.afterResponse)) {
					// eslint-disable-next-line no-await-in-loop
					response = await hook(response, updatedOptions => {
						updatedOptions = reNormalize(mergeOptions(options, {
							...updatedOptions,
							retry: 0,
							throwHttpErrors: false
						}));

						// Remove any further hooks for that request, because we we'll call them anyway.
						// The loop continues. We don't want duplicates (asPromise recursion).
						updatedOptions.hooks.afterResponse = options.hooks.afterResponse.slice(0, index);

						return asPromise(updatedOptions);
					});
				}
			} catch (error) {
				reject(error);
				return;
			}

			const {statusCode} = response;

			if (options.json && response.body) {
				try {
					response.body = JSON.parse(response.body);
				} catch (error) {
					if (statusCode >= 200 && statusCode < 300) {
						const parseError = new ParseError(error, statusCode, options, data);
						Object.defineProperty(parseError, 'response', {value: response});
						reject(parseError);
						return;
					}
				}
			}

			if (statusCode !== 304 && (statusCode < 200 || statusCode > limitStatusCode)) {
				const error = new HTTPError(response, options);
				Object.defineProperty(error, 'response', {value: response});
				if (emitter.retry(error) === false) {
					if (options.throwHttpErrors) {
						reject(error);
						return;
					}

					resolve(response);
				}

				return;
			}

			resolve(response);
		});

		emitter.once('error', reject);
		[
			'request',
			'redirect',
			'uploadProgress',
			'downloadProgress'
		].forEach(event => emitter.on(event, (...args) => proxy.emit(event, ...args)));
	});

	promise.on = (name, fn) => {
		proxy.on(name, fn);
		return promise;
	};

	return promise;
};

module.exports = asPromise;


/***/ }),

/***/ 93900:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {PassThrough} = __webpack_require__(92413);
const duplexer3 = __webpack_require__(7994);
const requestAsEventEmitter = __webpack_require__(45296);
const {HTTPError, ReadError} = __webpack_require__(57083);

module.exports = options => {
	const input = new PassThrough();
	const output = new PassThrough();
	const proxy = duplexer3(input, output);
	const piped = new Set();
	let isFinished = false;

	options.retry.retries = () => 0;

	if (options.body) {
		proxy.write = () => {
			throw new Error('Got\'s stream is not writable when the `body` option is used');
		};
	}

	const emitter = requestAsEventEmitter(options, input);

	// Cancels the request
	proxy._destroy = emitter.abort;

	emitter.on('response', response => {
		const {statusCode} = response;

		response.on('error', error => {
			proxy.emit('error', new ReadError(error, options));
		});

		if (options.throwHttpErrors && statusCode !== 304 && (statusCode < 200 || statusCode > 299)) {
			proxy.emit('error', new HTTPError(response, options), null, response);
			return;
		}

		isFinished = true;

		response.pipe(output);

		for (const destination of piped) {
			if (destination.headersSent) {
				continue;
			}

			for (const [key, value] of Object.entries(response.headers)) {
				// Got gives *decompressed* data. Overriding `content-encoding` header would result in an error.
				// It's not possible to decompress already decompressed data, is it?
				const allowed = options.decompress ? key !== 'content-encoding' : true;
				if (allowed) {
					destination.setHeader(key, value);
				}
			}

			destination.statusCode = response.statusCode;
		}

		proxy.emit('response', response);
	});

	[
		'error',
		'request',
		'redirect',
		'uploadProgress',
		'downloadProgress'
	].forEach(event => emitter.on(event, (...args) => proxy.emit(event, ...args)));

	const pipe = proxy.pipe.bind(proxy);
	const unpipe = proxy.unpipe.bind(proxy);
	proxy.pipe = (destination, options) => {
		if (isFinished) {
			throw new Error('Failed to pipe. The response has been emitted already.');
		}

		const result = pipe(destination, options);

		if (Reflect.has(destination, 'setHeader')) {
			piped.add(destination);
		}

		return result;
	};

	proxy.unpipe = stream => {
		piped.delete(stream);
		return unpipe(stream);
	};

	return proxy;
};


/***/ }),

/***/ 36030:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const errors = __webpack_require__(57083);
const asStream = __webpack_require__(93900);
const asPromise = __webpack_require__(32013);
const normalizeArguments = __webpack_require__(76034);
const merge = __webpack_require__(47339);
const deepFreeze = __webpack_require__(53970);

const getPromiseOrStream = options => options.stream ? asStream(options) : asPromise(options);

const aliases = [
	'get',
	'post',
	'put',
	'patch',
	'head',
	'delete'
];

const create = defaults => {
	defaults = merge({}, defaults);
	normalizeArguments.preNormalize(defaults.options);

	if (!defaults.handler) {
		// This can't be getPromiseOrStream, because when merging
		// the chain would stop at this point and no further handlers would be called.
		defaults.handler = (options, next) => next(options);
	}

	function got(url, options) {
		try {
			return defaults.handler(normalizeArguments(url, options, defaults), getPromiseOrStream);
		} catch (error) {
			if (options && options.stream) {
				throw error;
			} else {
				return Promise.reject(error);
			}
		}
	}

	got.create = create;
	got.extend = options => {
		let mutableDefaults;
		if (options && Reflect.has(options, 'mutableDefaults')) {
			mutableDefaults = options.mutableDefaults;
			delete options.mutableDefaults;
		} else {
			mutableDefaults = defaults.mutableDefaults;
		}

		return create({
			options: merge.options(defaults.options, options),
			handler: defaults.handler,
			mutableDefaults
		});
	};

	got.mergeInstances = (...args) => create(merge.instances(args));

	got.stream = (url, options) => got(url, {...options, stream: true});

	for (const method of aliases) {
		got[method] = (url, options) => got(url, {...options, method});
		got.stream[method] = (url, options) => got.stream(url, {...options, method});
	}

	Object.assign(got, {...errors, mergeOptions: merge.options});
	Object.defineProperty(got, 'defaults', {
		value: defaults.mutableDefaults ? defaults : deepFreeze(defaults),
		writable: defaults.mutableDefaults,
		configurable: defaults.mutableDefaults,
		enumerable: true
	});

	return got;
};

module.exports = create;


/***/ }),

/***/ 57083:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const urlLib = __webpack_require__(78835);
const http = __webpack_require__(98605);
const PCancelable = __webpack_require__(97152);
const is = __webpack_require__(7678);

class GotError extends Error {
	constructor(message, error, options) {
		super(message);
		Error.captureStackTrace(this, this.constructor);
		this.name = 'GotError';

		if (!is.undefined(error.code)) {
			this.code = error.code;
		}

		Object.assign(this, {
			host: options.host,
			hostname: options.hostname,
			method: options.method,
			path: options.path,
			socketPath: options.socketPath,
			protocol: options.protocol,
			url: options.href,
			gotOptions: options
		});
	}
}

module.exports.GotError = GotError;

module.exports.CacheError = class extends GotError {
	constructor(error, options) {
		super(error.message, error, options);
		this.name = 'CacheError';
	}
};

module.exports.RequestError = class extends GotError {
	constructor(error, options) {
		super(error.message, error, options);
		this.name = 'RequestError';
	}
};

module.exports.ReadError = class extends GotError {
	constructor(error, options) {
		super(error.message, error, options);
		this.name = 'ReadError';
	}
};

module.exports.ParseError = class extends GotError {
	constructor(error, statusCode, options, data) {
		super(`${error.message} in "${urlLib.format(options)}": \n${data.slice(0, 77)}...`, error, options);
		this.name = 'ParseError';
		this.statusCode = statusCode;
		this.statusMessage = http.STATUS_CODES[this.statusCode];
	}
};

module.exports.HTTPError = class extends GotError {
	constructor(response, options) {
		const {statusCode} = response;
		let {statusMessage} = response;

		if (statusMessage) {
			statusMessage = statusMessage.replace(/\r?\n/g, ' ').trim();
		} else {
			statusMessage = http.STATUS_CODES[statusCode];
		}

		super(`Response code ${statusCode} (${statusMessage})`, {}, options);
		this.name = 'HTTPError';
		this.statusCode = statusCode;
		this.statusMessage = statusMessage;
		this.headers = response.headers;
		this.body = response.body;
	}
};

module.exports.MaxRedirectsError = class extends GotError {
	constructor(statusCode, redirectUrls, options) {
		super('Redirected 10 times. Aborting.', {}, options);
		this.name = 'MaxRedirectsError';
		this.statusCode = statusCode;
		this.statusMessage = http.STATUS_CODES[this.statusCode];
		this.redirectUrls = redirectUrls;
	}
};

module.exports.UnsupportedProtocolError = class extends GotError {
	constructor(options) {
		super(`Unsupported protocol "${options.protocol}"`, {}, options);
		this.name = 'UnsupportedProtocolError';
	}
};

module.exports.TimeoutError = class extends GotError {
	constructor(error, options) {
		super(error.message, {code: 'ETIMEDOUT'}, options);
		this.name = 'TimeoutError';
		this.event = error.event;
	}
};

module.exports.CancelError = PCancelable.CancelError;


/***/ }),

/***/ 46715:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const decompressResponse = __webpack_require__(82391);
const is = __webpack_require__(7678);
const mimicResponse = __webpack_require__(42610);
const progress = __webpack_require__(12308);

module.exports = (response, options, emitter) => {
	const downloadBodySize = Number(response.headers['content-length']) || null;

	const progressStream = progress.download(response, emitter, downloadBodySize);

	mimicResponse(response, progressStream);

	const newResponse = options.decompress === true &&
		is.function(decompressResponse) &&
		options.method !== 'HEAD' ? decompressResponse(progressStream) : progressStream;

	if (!options.decompress && ['gzip', 'deflate'].includes(response.headers['content-encoding'])) {
		options.encoding = null;
	}

	emitter.emit('response', newResponse);

	emitter.emit('downloadProgress', {
		percent: 0,
		transferred: 0,
		total: downloadBodySize
	});

	response.pipe(progressStream);
};


/***/ }),

/***/ 44462:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const pkg = __webpack_require__(9248);
const create = __webpack_require__(36030);

const defaults = {
	options: {
		retry: {
			retries: 2,
			methods: [
				'GET',
				'PUT',
				'HEAD',
				'DELETE',
				'OPTIONS',
				'TRACE'
			],
			statusCodes: [
				408,
				413,
				429,
				500,
				502,
				503,
				504
			],
			errorCodes: [
				'ETIMEDOUT',
				'ECONNRESET',
				'EADDRINUSE',
				'ECONNREFUSED',
				'EPIPE',
				'ENOTFOUND',
				'ENETUNREACH',
				'EAI_AGAIN'
			]
		},
		headers: {
			'user-agent': `${pkg.name}/${pkg.version} (https://github.com/sindresorhus/got)`
		},
		hooks: {
			beforeRequest: [],
			beforeRedirect: [],
			beforeRetry: [],
			afterResponse: []
		},
		decompress: true,
		throwHttpErrors: true,
		followRedirect: true,
		stream: false,
		form: false,
		json: false,
		cache: false,
		useElectronNet: false
	},
	mutableDefaults: false
};

const got = create(defaults);

module.exports = got;


/***/ }),

/***/ 21924:
/***/ ((module) => {

"use strict";


module.exports = [
	'beforeError',
	'init',
	'beforeRequest',
	'beforeRedirect',
	'beforeRetry',
	'afterResponse'
];


/***/ }),

/***/ 47339:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {URL} = __webpack_require__(78835);
const is = __webpack_require__(7678);
const knownHookEvents = __webpack_require__(21924);

const merge = (target, ...sources) => {
	for (const source of sources) {
		for (const [key, sourceValue] of Object.entries(source)) {
			if (is.undefined(sourceValue)) {
				continue;
			}

			const targetValue = target[key];
			if (is.urlInstance(targetValue) && (is.urlInstance(sourceValue) || is.string(sourceValue))) {
				target[key] = new URL(sourceValue, targetValue);
			} else if (is.plainObject(sourceValue)) {
				if (is.plainObject(targetValue)) {
					target[key] = merge({}, targetValue, sourceValue);
				} else {
					target[key] = merge({}, sourceValue);
				}
			} else if (is.array(sourceValue)) {
				target[key] = merge([], sourceValue);
			} else {
				target[key] = sourceValue;
			}
		}
	}

	return target;
};

const mergeOptions = (...sources) => {
	sources = sources.map(source => source || {});
	const merged = merge({}, ...sources);

	const hooks = {};
	for (const hook of knownHookEvents) {
		hooks[hook] = [];
	}

	for (const source of sources) {
		if (source.hooks) {
			for (const hook of knownHookEvents) {
				hooks[hook] = hooks[hook].concat(source.hooks[hook]);
			}
		}
	}

	merged.hooks = hooks;

	return merged;
};

const mergeInstances = (instances, methods) => {
	const handlers = instances.map(instance => instance.defaults.handler);
	const size = instances.length - 1;

	return {
		methods,
		options: mergeOptions(...instances.map(instance => instance.defaults.options)),
		handler: (options, next) => {
			let iteration = -1;
			const iterate = options => handlers[++iteration](options, iteration === size ? next : iterate);

			return iterate(options);
		}
	};
};

module.exports = merge;
module.exports.options = mergeOptions;
module.exports.instances = mergeInstances;


/***/ }),

/***/ 76034:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {URL, URLSearchParams} = __webpack_require__(78835); // TODO: Use the `URL` global when targeting Node.js 10
const urlLib = __webpack_require__(78835);
const is = __webpack_require__(7678);
const urlParseLax = __webpack_require__(13194);
const lowercaseKeys = __webpack_require__(9662);
const urlToOptions = __webpack_require__(65491);
const isFormData = __webpack_require__(18272);
const merge = __webpack_require__(47339);
const knownHookEvents = __webpack_require__(21924);

const retryAfterStatusCodes = new Set([413, 429, 503]);

// `preNormalize` handles static options (e.g. headers).
// For example, when you create a custom instance and make a request
// with no static changes, they won't be normalized again.
//
// `normalize` operates on dynamic options - they cannot be saved.
// For example, `body` is everytime different per request.
// When it's done normalizing the new options, it performs merge()
// on the prenormalized options and the normalized ones.

const preNormalize = (options, defaults) => {
	if (is.nullOrUndefined(options.headers)) {
		options.headers = {};
	} else {
		options.headers = lowercaseKeys(options.headers);
	}

	if (options.baseUrl && !options.baseUrl.toString().endsWith('/')) {
		options.baseUrl += '/';
	}

	if (options.stream) {
		options.json = false;
	}

	if (is.nullOrUndefined(options.hooks)) {
		options.hooks = {};
	} else if (!is.object(options.hooks)) {
		throw new TypeError(`Parameter \`hooks\` must be an object, not ${is(options.hooks)}`);
	}

	for (const event of knownHookEvents) {
		if (is.nullOrUndefined(options.hooks[event])) {
			if (defaults) {
				options.hooks[event] = [...defaults.hooks[event]];
			} else {
				options.hooks[event] = [];
			}
		}
	}

	if (is.number(options.timeout)) {
		options.gotTimeout = {request: options.timeout};
	} else if (is.object(options.timeout)) {
		options.gotTimeout = options.timeout;
	}

	delete options.timeout;

	const {retry} = options;
	options.retry = {
		retries: 0,
		methods: [],
		statusCodes: [],
		errorCodes: []
	};

	if (is.nonEmptyObject(defaults) && retry !== false) {
		options.retry = {...defaults.retry};
	}

	if (retry !== false) {
		if (is.number(retry)) {
			options.retry.retries = retry;
		} else {
			options.retry = {...options.retry, ...retry};
		}
	}

	if (options.gotTimeout) {
		options.retry.maxRetryAfter = Math.min(...[options.gotTimeout.request, options.gotTimeout.connection].filter(n => !is.nullOrUndefined(n)));
	}

	if (is.array(options.retry.methods)) {
		options.retry.methods = new Set(options.retry.methods.map(method => method.toUpperCase()));
	}

	if (is.array(options.retry.statusCodes)) {
		options.retry.statusCodes = new Set(options.retry.statusCodes);
	}

	if (is.array(options.retry.errorCodes)) {
		options.retry.errorCodes = new Set(options.retry.errorCodes);
	}

	return options;
};

const normalize = (url, options, defaults) => {
	if (is.plainObject(url)) {
		options = {...url, ...options};
		url = options.url || {};
		delete options.url;
	}

	if (defaults) {
		options = merge({}, defaults.options, options ? preNormalize(options, defaults.options) : {});
	} else {
		options = merge({}, preNormalize(options));
	}

	if (!is.string(url) && !is.object(url)) {
		throw new TypeError(`Parameter \`url\` must be a string or object, not ${is(url)}`);
	}

	if (is.string(url)) {
		if (options.baseUrl) {
			if (url.toString().startsWith('/')) {
				url = url.toString().slice(1);
			}

			url = urlToOptions(new URL(url, options.baseUrl));
		} else {
			url = url.replace(/^unix:/, 'http://$&');
			url = urlParseLax(url);
		}
	} else if (is(url) === 'URL') {
		url = urlToOptions(url);
	}

	// Override both null/undefined with default protocol
	options = merge({path: ''}, url, {protocol: url.protocol || 'https:'}, options);

	for (const hook of options.hooks.init) {
		const called = hook(options);

		if (is.promise(called)) {
			throw new TypeError('The `init` hook must be a synchronous function');
		}
	}

	const {baseUrl} = options;
	Object.defineProperty(options, 'baseUrl', {
		set: () => {
			throw new Error('Failed to set baseUrl. Options are normalized already.');
		},
		get: () => baseUrl
	});

	const {query} = options;
	if (is.nonEmptyString(query) || is.nonEmptyObject(query) || query instanceof URLSearchParams) {
		if (!is.string(query)) {
			options.query = (new URLSearchParams(query)).toString();
		}

		options.path = `${options.path.split('?')[0]}?${options.query}`;
		delete options.query;
	}

	if (options.hostname === 'unix') {
		const matches = /(.+?):(.+)/.exec(options.path);

		if (matches) {
			const [, socketPath, path] = matches;
			options = {
				...options,
				socketPath,
				path,
				host: null
			};
		}
	}

	const {headers} = options;
	for (const [key, value] of Object.entries(headers)) {
		if (is.nullOrUndefined(value)) {
			delete headers[key];
		}
	}

	if (options.json && is.undefined(headers.accept)) {
		headers.accept = 'application/json';
	}

	if (options.decompress && is.undefined(headers['accept-encoding'])) {
		headers['accept-encoding'] = 'gzip, deflate';
	}

	const {body} = options;
	if (is.nullOrUndefined(body)) {
		options.method = options.method ? options.method.toUpperCase() : 'GET';
	} else {
		const isObject = is.object(body) && !is.buffer(body) && !is.nodeStream(body);
		if (!is.nodeStream(body) && !is.string(body) && !is.buffer(body) && !(options.form || options.json)) {
			throw new TypeError('The `body` option must be a stream.Readable, string or Buffer');
		}

		if (options.json && !(isObject || is.array(body))) {
			throw new TypeError('The `body` option must be an Object or Array when the `json` option is used');
		}

		if (options.form && !isObject) {
			throw new TypeError('The `body` option must be an Object when the `form` option is used');
		}

		if (isFormData(body)) {
			// Special case for https://github.com/form-data/form-data
			headers['content-type'] = headers['content-type'] || `multipart/form-data; boundary=${body.getBoundary()}`;
		} else if (options.form) {
			headers['content-type'] = headers['content-type'] || 'application/x-www-form-urlencoded';
			options.body = (new URLSearchParams(body)).toString();
		} else if (options.json) {
			headers['content-type'] = headers['content-type'] || 'application/json';
			options.body = JSON.stringify(body);
		}

		options.method = options.method ? options.method.toUpperCase() : 'POST';
	}

	if (!is.function(options.retry.retries)) {
		const {retries} = options.retry;

		options.retry.retries = (iteration, error) => {
			if (iteration > retries) {
				return 0;
			}

			if ((!error || !options.retry.errorCodes.has(error.code)) && (!options.retry.methods.has(error.method) || !options.retry.statusCodes.has(error.statusCode))) {
				return 0;
			}

			if (Reflect.has(error, 'headers') && Reflect.has(error.headers, 'retry-after') && retryAfterStatusCodes.has(error.statusCode)) {
				let after = Number(error.headers['retry-after']);
				if (is.nan(after)) {
					after = Date.parse(error.headers['retry-after']) - Date.now();
				} else {
					after *= 1000;
				}

				if (after > options.retry.maxRetryAfter) {
					return 0;
				}

				return after;
			}

			if (error.statusCode === 413) {
				return 0;
			}

			const noise = Math.random() * 100;
			return ((2 ** (iteration - 1)) * 1000) + noise;
		};
	}

	return options;
};

const reNormalize = options => normalize(urlLib.format(options), options);

module.exports = normalize;
module.exports.preNormalize = preNormalize;
module.exports.reNormalize = reNormalize;


/***/ }),

/***/ 12308:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {Transform} = __webpack_require__(92413);

module.exports = {
	download(response, emitter, downloadBodySize) {
		let downloaded = 0;

		return new Transform({
			transform(chunk, encoding, callback) {
				downloaded += chunk.length;

				const percent = downloadBodySize ? downloaded / downloadBodySize : 0;

				// Let `flush()` be responsible for emitting the last event
				if (percent < 1) {
					emitter.emit('downloadProgress', {
						percent,
						transferred: downloaded,
						total: downloadBodySize
					});
				}

				callback(null, chunk);
			},

			flush(callback) {
				emitter.emit('downloadProgress', {
					percent: 1,
					transferred: downloaded,
					total: downloadBodySize
				});

				callback();
			}
		});
	},

	upload(request, emitter, uploadBodySize) {
		const uploadEventFrequency = 150;
		let uploaded = 0;
		let progressInterval;

		emitter.emit('uploadProgress', {
			percent: 0,
			transferred: 0,
			total: uploadBodySize
		});

		request.once('error', () => {
			clearInterval(progressInterval);
		});

		request.once('response', () => {
			clearInterval(progressInterval);

			emitter.emit('uploadProgress', {
				percent: 1,
				transferred: uploaded,
				total: uploadBodySize
			});
		});

		request.once('socket', socket => {
			const onSocketConnect = () => {
				progressInterval = setInterval(() => {
					const lastUploaded = uploaded;
					/* istanbul ignore next: see #490 (occurs randomly!) */
					const headersSize = request._header ? Buffer.byteLength(request._header) : 0;
					uploaded = socket.bytesWritten - headersSize;

					// Don't emit events with unchanged progress and
					// prevent last event from being emitted, because
					// it's emitted when `response` is emitted
					if (uploaded === lastUploaded || uploaded === uploadBodySize) {
						return;
					}

					emitter.emit('uploadProgress', {
						percent: uploadBodySize ? uploaded / uploadBodySize : 0,
						transferred: uploaded,
						total: uploadBodySize
					});
				}, uploadEventFrequency);
			};

			/* istanbul ignore next: hard to test */
			if (socket.connecting) {
				socket.once('connect', onSocketConnect);
			} else if (socket.writable) {
				// The socket is being reused from pool,
				// so the connect event will not be emitted
				onSocketConnect();
			}
		});
	}
};


/***/ }),

/***/ 45296:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {URL} = __webpack_require__(78835); // TODO: Use the `URL` global when targeting Node.js 10
const util = __webpack_require__(31669);
const EventEmitter = __webpack_require__(28614);
const http = __webpack_require__(98605);
const https = __webpack_require__(57211);
const urlLib = __webpack_require__(78835);
const CacheableRequest = __webpack_require__(78116);
const toReadableStream = __webpack_require__(53158);
const is = __webpack_require__(7678);
const timer = __webpack_require__(19308);
const timedOut = __webpack_require__(44477);
const getBodySize = __webpack_require__(78891);
const getResponse = __webpack_require__(46715);
const progress = __webpack_require__(12308);
const {CacheError, UnsupportedProtocolError, MaxRedirectsError, RequestError, TimeoutError} = __webpack_require__(57083);
const urlToOptions = __webpack_require__(65491);

const getMethodRedirectCodes = new Set([300, 301, 302, 303, 304, 305, 307, 308]);
const allMethodRedirectCodes = new Set([300, 303, 307, 308]);

module.exports = (options, input) => {
	const emitter = new EventEmitter();
	const redirects = [];
	let currentRequest;
	let requestUrl;
	let redirectString;
	let uploadBodySize;
	let retryCount = 0;
	let shouldAbort = false;

	const setCookie = options.cookieJar ? util.promisify(options.cookieJar.setCookie.bind(options.cookieJar)) : null;
	const getCookieString = options.cookieJar ? util.promisify(options.cookieJar.getCookieString.bind(options.cookieJar)) : null;
	const agents = is.object(options.agent) ? options.agent : null;

	const emitError = async error => {
		try {
			for (const hook of options.hooks.beforeError) {
				// eslint-disable-next-line no-await-in-loop
				error = await hook(error);
			}

			emitter.emit('error', error);
		} catch (error2) {
			emitter.emit('error', error2);
		}
	};

	const get = async options => {
		const currentUrl = redirectString || requestUrl;

		if (options.protocol !== 'http:' && options.protocol !== 'https:') {
			throw new UnsupportedProtocolError(options);
		}

		decodeURI(currentUrl);

		let fn;
		if (is.function(options.request)) {
			fn = {request: options.request};
		} else {
			fn = options.protocol === 'https:' ? https : http;
		}

		if (agents) {
			const protocolName = options.protocol === 'https:' ? 'https' : 'http';
			options.agent = agents[protocolName] || options.agent;
		}

		/* istanbul ignore next: electron.net is broken */
		if (options.useElectronNet && process.versions.electron) {
			const r = ({x: require})['yx'.slice(1)]; // Trick webpack
			const electron = r('electron');
			fn = electron.net || electron.remote.net;
		}

		if (options.cookieJar) {
			const cookieString = await getCookieString(currentUrl, {});

			if (is.nonEmptyString(cookieString)) {
				options.headers.cookie = cookieString;
			}
		}

		let timings;
		const handleResponse = async response => {
			try {
				/* istanbul ignore next: fixes https://github.com/electron/electron/blob/cbb460d47628a7a146adf4419ed48550a98b2923/lib/browser/api/net.js#L59-L65 */
				if (options.useElectronNet) {
					response = new Proxy(response, {
						get: (target, name) => {
							if (name === 'trailers' || name === 'rawTrailers') {
								return [];
							}

							const value = target[name];
							return is.function(value) ? value.bind(target) : value;
						}
					});
				}

				const {statusCode} = response;
				response.url = currentUrl;
				response.requestUrl = requestUrl;
				response.retryCount = retryCount;
				response.timings = timings;
				response.redirectUrls = redirects;
				response.request = {
					gotOptions: options
				};

				const rawCookies = response.headers['set-cookie'];
				if (options.cookieJar && rawCookies) {
					await Promise.all(rawCookies.map(rawCookie => setCookie(rawCookie, response.url)));
				}

				if (options.followRedirect && 'location' in response.headers) {
					if (allMethodRedirectCodes.has(statusCode) || (getMethodRedirectCodes.has(statusCode) && (options.method === 'GET' || options.method === 'HEAD'))) {
						response.resume(); // We're being redirected, we don't care about the response.

						if (statusCode === 303) {
							// Server responded with "see other", indicating that the resource exists at another location,
							// and the client should request it from that location via GET or HEAD.
							options.method = 'GET';
						}

						if (redirects.length >= 10) {
							throw new MaxRedirectsError(statusCode, redirects, options);
						}

						// Handles invalid URLs. See https://github.com/sindresorhus/got/issues/604
						const redirectBuffer = Buffer.from(response.headers.location, 'binary').toString();
						const redirectURL = new URL(redirectBuffer, currentUrl);
						redirectString = redirectURL.toString();

						redirects.push(redirectString);

						const redirectOptions = {
							...options,
							...urlToOptions(redirectURL)
						};

						for (const hook of options.hooks.beforeRedirect) {
							// eslint-disable-next-line no-await-in-loop
							await hook(redirectOptions);
						}

						emitter.emit('redirect', response, redirectOptions);

						await get(redirectOptions);
						return;
					}
				}

				getResponse(response, options, emitter);
			} catch (error) {
				emitError(error);
			}
		};

		const handleRequest = request => {
			if (shouldAbort) {
				request.once('error', () => {});
				request.abort();
				return;
			}

			currentRequest = request;

			request.once('error', error => {
				if (request.aborted) {
					return;
				}

				if (error instanceof timedOut.TimeoutError) {
					error = new TimeoutError(error, options);
				} else {
					error = new RequestError(error, options);
				}

				if (emitter.retry(error) === false) {
					emitError(error);
				}
			});

			timings = timer(request);

			progress.upload(request, emitter, uploadBodySize);

			if (options.gotTimeout) {
				timedOut(request, options.gotTimeout, options);
			}

			emitter.emit('request', request);

			const uploadComplete = () => {
				request.emit('upload-complete');
			};

			try {
				if (is.nodeStream(options.body)) {
					options.body.once('end', uploadComplete);
					options.body.pipe(request);
					options.body = undefined;
				} else if (options.body) {
					request.end(options.body, uploadComplete);
				} else if (input && (options.method === 'POST' || options.method === 'PUT' || options.method === 'PATCH')) {
					input.once('end', uploadComplete);
					input.pipe(request);
				} else {
					request.end(uploadComplete);
				}
			} catch (error) {
				emitError(new RequestError(error, options));
			}
		};

		if (options.cache) {
			const cacheableRequest = new CacheableRequest(fn.request, options.cache);
			const cacheRequest = cacheableRequest(options, handleResponse);

			cacheRequest.once('error', error => {
				if (error instanceof CacheableRequest.RequestError) {
					emitError(new RequestError(error, options));
				} else {
					emitError(new CacheError(error, options));
				}
			});

			cacheRequest.once('request', handleRequest);
		} else {
			// Catches errors thrown by calling fn.request(...)
			try {
				handleRequest(fn.request(options, handleResponse));
			} catch (error) {
				emitError(new RequestError(error, options));
			}
		}
	};

	emitter.retry = error => {
		let backoff;

		try {
			backoff = options.retry.retries(++retryCount, error);
		} catch (error2) {
			emitError(error2);
			return;
		}

		if (backoff) {
			const retry = async options => {
				try {
					for (const hook of options.hooks.beforeRetry) {
						// eslint-disable-next-line no-await-in-loop
						await hook(options, error, retryCount);
					}

					await get(options);
				} catch (error) {
					emitError(error);
				}
			};

			setTimeout(retry, backoff, {...options, forceRefresh: true});
			return true;
		}

		return false;
	};

	emitter.abort = () => {
		if (currentRequest) {
			currentRequest.once('error', () => {});
			currentRequest.abort();
		} else {
			shouldAbort = true;
		}
	};

	setImmediate(async () => {
		try {
			// Convert buffer to stream to receive upload progress events (#322)
			const {body} = options;
			if (is.buffer(body)) {
				options.body = toReadableStream(body);
				uploadBodySize = body.length;
			} else {
				uploadBodySize = await getBodySize(options);
			}

			if (is.undefined(options.headers['content-length']) && is.undefined(options.headers['transfer-encoding'])) {
				if ((uploadBodySize > 0 || options.method === 'PUT') && !is.null(uploadBodySize)) {
					options.headers['content-length'] = uploadBodySize;
				}
			}

			for (const hook of options.hooks.beforeRequest) {
				// eslint-disable-next-line no-await-in-loop
				await hook(options);
			}

			requestUrl = options.href || (new URL(options.path, urlLib.format(options))).toString();

			await get(options);
		} catch (error) {
			emitError(error);
		}
	});

	return emitter;
};


/***/ }),

/***/ 53970:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const is = __webpack_require__(7678);

module.exports = function deepFreeze(object) {
	for (const [key, value] of Object.entries(object)) {
		if (is.plainObject(value) || is.array(value)) {
			deepFreeze(object[key]);
		}
	}

	return Object.freeze(object);
};


/***/ }),

/***/ 78891:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const fs = __webpack_require__(35747);
const util = __webpack_require__(31669);
const is = __webpack_require__(7678);
const isFormData = __webpack_require__(18272);

module.exports = async options => {
	const {body} = options;

	if (options.headers['content-length']) {
		return Number(options.headers['content-length']);
	}

	if (!body && !options.stream) {
		return 0;
	}

	if (is.string(body)) {
		return Buffer.byteLength(body);
	}

	if (isFormData(body)) {
		return util.promisify(body.getLength.bind(body))();
	}

	if (body instanceof fs.ReadStream) {
		const {size} = await util.promisify(fs.stat)(body.path);
		return size;
	}

	return null;
};


/***/ }),

/***/ 18272:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const is = __webpack_require__(7678);

module.exports = body => is.nodeStream(body) && is.function(body.getBoundary);


/***/ }),

/***/ 44477:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const net = __webpack_require__(11631);

class TimeoutError extends Error {
	constructor(threshold, event) {
		super(`Timeout awaiting '${event}' for ${threshold}ms`);
		this.name = 'TimeoutError';
		this.code = 'ETIMEDOUT';
		this.event = event;
	}
}

const reentry = Symbol('reentry');

const noop = () => {};

module.exports = (request, delays, options) => {
	/* istanbul ignore next: this makes sure timed-out isn't called twice */
	if (request[reentry]) {
		return;
	}

	request[reentry] = true;

	let stopNewTimeouts = false;

	const addTimeout = (delay, callback, ...args) => {
		// An error had been thrown before. Going further would result in uncaught errors.
		// See https://github.com/sindresorhus/got/issues/631#issuecomment-435675051
		if (stopNewTimeouts) {
			return noop;
		}

		// Event loop order is timers, poll, immediates.
		// The timed event may emit during the current tick poll phase, so
		// defer calling the handler until the poll phase completes.
		let immediate;
		const timeout = setTimeout(() => {
			immediate = setImmediate(callback, delay, ...args);
			/* istanbul ignore next: added in node v9.7.0 */
			if (immediate.unref) {
				immediate.unref();
			}
		}, delay);

		/* istanbul ignore next: in order to support electron renderer */
		if (timeout.unref) {
			timeout.unref();
		}

		const cancel = () => {
			clearTimeout(timeout);
			clearImmediate(immediate);
		};

		cancelers.push(cancel);

		return cancel;
	};

	const {host, hostname} = options;
	const timeoutHandler = (delay, event) => {
		request.emit('error', new TimeoutError(delay, event));
		request.once('error', () => {}); // Ignore the `socket hung up` error made by request.abort()

		request.abort();
	};

	const cancelers = [];
	const cancelTimeouts = () => {
		stopNewTimeouts = true;
		cancelers.forEach(cancelTimeout => cancelTimeout());
	};

	request.once('error', cancelTimeouts);
	request.once('response', response => {
		response.once('end', cancelTimeouts);
	});

	if (delays.request !== undefined) {
		addTimeout(delays.request, timeoutHandler, 'request');
	}

	if (delays.socket !== undefined) {
		const socketTimeoutHandler = () => {
			timeoutHandler(delays.socket, 'socket');
		};

		request.setTimeout(delays.socket, socketTimeoutHandler);

		// `request.setTimeout(0)` causes a memory leak.
		// We can just remove the listener and forget about the timer - it's unreffed.
		// See https://github.com/sindresorhus/got/issues/690
		cancelers.push(() => request.removeListener('timeout', socketTimeoutHandler));
	}

	if (delays.lookup !== undefined && !request.socketPath && !net.isIP(hostname || host)) {
		request.once('socket', socket => {
			/* istanbul ignore next: hard to test */
			if (socket.connecting) {
				const cancelTimeout = addTimeout(delays.lookup, timeoutHandler, 'lookup');
				socket.once('lookup', cancelTimeout);
			}
		});
	}

	if (delays.connect !== undefined) {
		request.once('socket', socket => {
			/* istanbul ignore next: hard to test */
			if (socket.connecting) {
				const timeConnect = () => addTimeout(delays.connect, timeoutHandler, 'connect');

				if (request.socketPath || net.isIP(hostname || host)) {
					socket.once('connect', timeConnect());
				} else {
					socket.once('lookup', error => {
						if (error === null) {
							socket.once('connect', timeConnect());
						}
					});
				}
			}
		});
	}

	if (delays.secureConnect !== undefined && options.protocol === 'https:') {
		request.once('socket', socket => {
			/* istanbul ignore next: hard to test */
			if (socket.connecting) {
				socket.once('connect', () => {
					const cancelTimeout = addTimeout(delays.secureConnect, timeoutHandler, 'secureConnect');
					socket.once('secureConnect', cancelTimeout);
				});
			}
		});
	}

	if (delays.send !== undefined) {
		request.once('socket', socket => {
			const timeRequest = () => addTimeout(delays.send, timeoutHandler, 'send');
			/* istanbul ignore next: hard to test */
			if (socket.connecting) {
				socket.once('connect', () => {
					request.once('upload-complete', timeRequest());
				});
			} else {
				request.once('upload-complete', timeRequest());
			}
		});
	}

	if (delays.response !== undefined) {
		request.once('upload-complete', () => {
			const cancelTimeout = addTimeout(delays.response, timeoutHandler, 'response');
			request.once('response', cancelTimeout);
		});
	}
};

module.exports.TimeoutError = TimeoutError;


/***/ }),

/***/ 65491:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const is = __webpack_require__(7678);

module.exports = url => {
	const options = {
		protocol: url.protocol,
		hostname: url.hostname.startsWith('[') ? url.hostname.slice(1, -1) : url.hostname,
		hash: url.hash,
		search: url.search,
		pathname: url.pathname,
		href: url.href
	};

	if (is.string(url.port) && url.port.length > 0) {
		options.port = Number(url.port);
	}

	if (url.username || url.password) {
		options.auth = `${url.username}:${url.password}`;
	}

	options.path = is.null(url.search) ? url.pathname : `${url.pathname}${url.search}`;

	return options;
};


/***/ }),

/***/ 13679:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


module.exports = {
  afterRequest: __webpack_require__(24391),
  beforeRequest: __webpack_require__(94440),
  browser: __webpack_require__(99850),
  cache: __webpack_require__(77654),
  content: __webpack_require__(73656),
  cookie: __webpack_require__(67948),
  creator: __webpack_require__(33412),
  entry: __webpack_require__(32525),
  har: __webpack_require__(84943),
  header: __webpack_require__(68344),
  log: __webpack_require__(69142),
  page: __webpack_require__(29075),
  pageTimings: __webpack_require__(15096),
  postData: __webpack_require__(73697),
  query: __webpack_require__(70877),
  request: __webpack_require__(92084),
  response: __webpack_require__(20702),
  timings: __webpack_require__(36941)
}


/***/ }),

/***/ 74944:
/***/ ((module) => {

function HARError (errors) {
  var message = 'validation failed'

  this.name = 'HARError'
  this.message = message
  this.errors = errors

  if (typeof Error.captureStackTrace === 'function') {
    Error.captureStackTrace(this, this.constructor)
  } else {
    this.stack = (new Error(message)).stack
  }
}

HARError.prototype = Error.prototype

module.exports = HARError


/***/ }),

/***/ 75697:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var Ajv = __webpack_require__(64941)
var HARError = __webpack_require__(74944)
var schemas = __webpack_require__(13679)

var ajv

function createAjvInstance () {
  var ajv = new Ajv({
    allErrors: true
  })
  ajv.addMetaSchema(__webpack_require__(81030))
  ajv.addSchema(schemas)

  return ajv
}

function validate (name, data) {
  data = data || {}

  // validator config
  ajv = ajv || createAjvInstance()

  var validate = ajv.getSchema(name + '.json')

  return new Promise(function (resolve, reject) {
    var valid = validate(data)

    !valid ? reject(new HARError(validate.errors)) : resolve(data)
  })
}

exports.afterRequest = function (data) {
  return validate('afterRequest', data)
}

exports.beforeRequest = function (data) {
  return validate('beforeRequest', data)
}

exports.browser = function (data) {
  return validate('browser', data)
}

exports.cache = function (data) {
  return validate('cache', data)
}

exports.content = function (data) {
  return validate('content', data)
}

exports.cookie = function (data) {
  return validate('cookie', data)
}

exports.creator = function (data) {
  return validate('creator', data)
}

exports.entry = function (data) {
  return validate('entry', data)
}

exports.har = function (data) {
  return validate('har', data)
}

exports.header = function (data) {
  return validate('header', data)
}

exports.log = function (data) {
  return validate('log', data)
}

exports.page = function (data) {
  return validate('page', data)
}

exports.pageTimings = function (data) {
  return validate('pageTimings', data)
}

exports.postData = function (data) {
  return validate('postData', data)
}

exports.query = function (data) {
  return validate('query', data)
}

exports.request = function (data) {
  return validate('request', data)
}

exports.response = function (data) {
  return validate('response', data)
}

exports.timings = function (data) {
  return validate('timings', data)
}


/***/ }),

/***/ 40587:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var origSymbol = typeof Symbol !== 'undefined' && Symbol;
var hasSymbolSham = __webpack_require__(57747);

module.exports = function hasNativeSymbols() {
	if (typeof origSymbol !== 'function') { return false; }
	if (typeof Symbol !== 'function') { return false; }
	if (typeof origSymbol('foo') !== 'symbol') { return false; }
	if (typeof Symbol('bar') !== 'symbol') { return false; }

	return hasSymbolSham();
};


/***/ }),

/***/ 57747:
/***/ ((module) => {

"use strict";


/* eslint complexity: [2, 18], max-statements: [2, 33] */
module.exports = function hasSymbols() {
	if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
	if (typeof Symbol.iterator === 'symbol') { return true; }

	var obj = {};
	var sym = Symbol('test');
	var symObj = Object(sym);
	if (typeof sym === 'string') { return false; }

	if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
	if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }

	// temp disabled per https://github.com/ljharb/object.assign/issues/17
	// if (sym instanceof Symbol) { return false; }
	// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
	// if (!(symObj instanceof Symbol)) { return false; }

	// if (typeof Symbol.prototype.toString !== 'function') { return false; }
	// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }

	var symVal = 42;
	obj[sym] = symVal;
	for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop
	if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }

	if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }

	var syms = Object.getOwnPropertySymbols(obj);
	if (syms.length !== 1 || syms[0] !== sym) { return false; }

	if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }

	if (typeof Object.getOwnPropertyDescriptor === 'function') {
		var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
		if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
	}

	return true;
};


/***/ }),

/***/ 76339:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var bind = __webpack_require__(88334);

module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);


/***/ }),

/***/ 61002:
/***/ ((module) => {

"use strict";

// rfc7231 6.1
const statusCodeCacheableByDefault = new Set([
    200,
    203,
    204,
    206,
    300,
    301,
    404,
    405,
    410,
    414,
    501,
]);

// This implementation does not understand partial responses (206)
const understoodStatuses = new Set([
    200,
    203,
    204,
    300,
    301,
    302,
    303,
    307,
    308,
    404,
    405,
    410,
    414,
    501,
]);

const errorStatusCodes = new Set([
    500,
    502,
    503, 
    504,
]);

const hopByHopHeaders = {
    date: true, // included, because we add Age update Date
    connection: true,
    'keep-alive': true,
    'proxy-authenticate': true,
    'proxy-authorization': true,
    te: true,
    trailer: true,
    'transfer-encoding': true,
    upgrade: true,
};

const excludedFromRevalidationUpdate = {
    // Since the old body is reused, it doesn't make sense to change properties of the body
    'content-length': true,
    'content-encoding': true,
    'transfer-encoding': true,
    'content-range': true,
};

function toNumberOrZero(s) {
    const n = parseInt(s, 10);
    return isFinite(n) ? n : 0;
}

// RFC 5861
function isErrorResponse(response) {
    // consider undefined response as faulty
    if(!response) {
        return true
    }
    return errorStatusCodes.has(response.status);
}

function parseCacheControl(header) {
    const cc = {};
    if (!header) return cc;

    // TODO: When there is more than one value present for a given directive (e.g., two Expires header fields, multiple Cache-Control: max-age directives),
    // the directive's value is considered invalid. Caches are encouraged to consider responses that have invalid freshness information to be stale
    const parts = header.trim().split(/\s*,\s*/); // TODO: lame parsing
    for (const part of parts) {
        const [k, v] = part.split(/\s*=\s*/, 2);
        cc[k] = v === undefined ? true : v.replace(/^"|"$/g, ''); // TODO: lame unquoting
    }

    return cc;
}

function formatCacheControl(cc) {
    let parts = [];
    for (const k in cc) {
        const v = cc[k];
        parts.push(v === true ? k : k + '=' + v);
    }
    if (!parts.length) {
        return undefined;
    }
    return parts.join(', ');
}

module.exports = class CachePolicy {
    constructor(
        req,
        res,
        {
            shared,
            cacheHeuristic,
            immutableMinTimeToLive,
            ignoreCargoCult,
            _fromObject,
        } = {}
    ) {
        if (_fromObject) {
            this._fromObject(_fromObject);
            return;
        }

        if (!res || !res.headers) {
            throw Error('Response headers missing');
        }
        this._assertRequestHasHeaders(req);

        this._responseTime = this.now();
        this._isShared = shared !== false;
        this._cacheHeuristic =
            undefined !== cacheHeuristic ? cacheHeuristic : 0.1; // 10% matches IE
        this._immutableMinTtl =
            undefined !== immutableMinTimeToLive
                ? immutableMinTimeToLive
                : 24 * 3600 * 1000;

        this._status = 'status' in res ? res.status : 200;
        this._resHeaders = res.headers;
        this._rescc = parseCacheControl(res.headers['cache-control']);
        this._method = 'method' in req ? req.method : 'GET';
        this._url = req.url;
        this._host = req.headers.host;
        this._noAuthorization = !req.headers.authorization;
        this._reqHeaders = res.headers.vary ? req.headers : null; // Don't keep all request headers if they won't be used
        this._reqcc = parseCacheControl(req.headers['cache-control']);

        // Assume that if someone uses legacy, non-standard uncecessary options they don't understand caching,
        // so there's no point stricly adhering to the blindly copy&pasted directives.
        if (
            ignoreCargoCult &&
            'pre-check' in this._rescc &&
            'post-check' in this._rescc
        ) {
            delete this._rescc['pre-check'];
            delete this._rescc['post-check'];
            delete this._rescc['no-cache'];
            delete this._rescc['no-store'];
            delete this._rescc['must-revalidate'];
            this._resHeaders = Object.assign({}, this._resHeaders, {
                'cache-control': formatCacheControl(this._rescc),
            });
            delete this._resHeaders.expires;
            delete this._resHeaders.pragma;
        }

        // When the Cache-Control header field is not present in a request, caches MUST consider the no-cache request pragma-directive
        // as having the same effect as if "Cache-Control: no-cache" were present (see Section 5.2.1).
        if (
            res.headers['cache-control'] == null &&
            /no-cache/.test(res.headers.pragma)
        ) {
            this._rescc['no-cache'] = true;
        }
    }

    now() {
        return Date.now();
    }

    storable() {
        // The "no-store" request directive indicates that a cache MUST NOT store any part of either this request or any response to it.
        return !!(
            !this._reqcc['no-store'] &&
            // A cache MUST NOT store a response to any request, unless:
            // The request method is understood by the cache and defined as being cacheable, and
            ('GET' === this._method ||
                'HEAD' === this._method ||
                ('POST' === this._method && this._hasExplicitExpiration())) &&
            // the response status code is understood by the cache, and
            understoodStatuses.has(this._status) &&
            // the "no-store" cache directive does not appear in request or response header fields, and
            !this._rescc['no-store'] &&
            // the "private" response directive does not appear in the response, if the cache is shared, and
            (!this._isShared || !this._rescc.private) &&
            // the Authorization header field does not appear in the request, if the cache is shared,
            (!this._isShared ||
                this._noAuthorization ||
                this._allowsStoringAuthenticated()) &&
            // the response either:
            // contains an Expires header field, or
            (this._resHeaders.expires ||
                // contains a max-age response directive, or
                // contains a s-maxage response directive and the cache is shared, or
                // contains a public response directive.
                this._rescc['max-age'] ||
                (this._isShared && this._rescc['s-maxage']) ||
                this._rescc.public ||
                // has a status code that is defined as cacheable by default
                statusCodeCacheableByDefault.has(this._status))
        );
    }

    _hasExplicitExpiration() {
        // 4.2.1 Calculating Freshness Lifetime
        return (
            (this._isShared && this._rescc['s-maxage']) ||
            this._rescc['max-age'] ||
            this._resHeaders.expires
        );
    }

    _assertRequestHasHeaders(req) {
        if (!req || !req.headers) {
            throw Error('Request headers missing');
        }
    }

    satisfiesWithoutRevalidation(req) {
        this._assertRequestHasHeaders(req);

        // When presented with a request, a cache MUST NOT reuse a stored response, unless:
        // the presented request does not contain the no-cache pragma (Section 5.4), nor the no-cache cache directive,
        // unless the stored response is successfully validated (Section 4.3), and
        const requestCC = parseCacheControl(req.headers['cache-control']);
        if (requestCC['no-cache'] || /no-cache/.test(req.headers.pragma)) {
            return false;
        }

        if (requestCC['max-age'] && this.age() > requestCC['max-age']) {
            return false;
        }

        if (
            requestCC['min-fresh'] &&
            this.timeToLive() < 1000 * requestCC['min-fresh']
        ) {
            return false;
        }

        // the stored response is either:
        // fresh, or allowed to be served stale
        if (this.stale()) {
            const allowsStale =
                requestCC['max-stale'] &&
                !this._rescc['must-revalidate'] &&
                (true === requestCC['max-stale'] ||
                    requestCC['max-stale'] > this.age() - this.maxAge());
            if (!allowsStale) {
                return false;
            }
        }

        return this._requestMatches(req, false);
    }

    _requestMatches(req, allowHeadMethod) {
        // The presented effective request URI and that of the stored response match, and
        return (
            (!this._url || this._url === req.url) &&
            this._host === req.headers.host &&
            // the request method associated with the stored response allows it to be used for the presented request, and
            (!req.method ||
                this._method === req.method ||
                (allowHeadMethod && 'HEAD' === req.method)) &&
            // selecting header fields nominated by the stored response (if any) match those presented, and
            this._varyMatches(req)
        );
    }

    _allowsStoringAuthenticated() {
        //  following Cache-Control response directives (Section 5.2.2) have such an effect: must-revalidate, public, and s-maxage.
        return (
            this._rescc['must-revalidate'] ||
            this._rescc.public ||
            this._rescc['s-maxage']
        );
    }

    _varyMatches(req) {
        if (!this._resHeaders.vary) {
            return true;
        }

        // A Vary header field-value of "*" always fails to match
        if (this._resHeaders.vary === '*') {
            return false;
        }

        const fields = this._resHeaders.vary
            .trim()
            .toLowerCase()
            .split(/\s*,\s*/);
        for (const name of fields) {
            if (req.headers[name] !== this._reqHeaders[name]) return false;
        }
        return true;
    }

    _copyWithoutHopByHopHeaders(inHeaders) {
        const headers = {};
        for (const name in inHeaders) {
            if (hopByHopHeaders[name]) continue;
            headers[name] = inHeaders[name];
        }
        // 9.1.  Connection
        if (inHeaders.connection) {
            const tokens = inHeaders.connection.trim().split(/\s*,\s*/);
            for (const name of tokens) {
                delete headers[name];
            }
        }
        if (headers.warning) {
            const warnings = headers.warning.split(/,/).filter(warning => {
                return !/^\s*1[0-9][0-9]/.test(warning);
            });
            if (!warnings.length) {
                delete headers.warning;
            } else {
                headers.warning = warnings.join(',').trim();
            }
        }
        return headers;
    }

    responseHeaders() {
        const headers = this._copyWithoutHopByHopHeaders(this._resHeaders);
        const age = this.age();

        // A cache SHOULD generate 113 warning if it heuristically chose a freshness
        // lifetime greater than 24 hours and the response's age is greater than 24 hours.
        if (
            age > 3600 * 24 &&
            !this._hasExplicitExpiration() &&
            this.maxAge() > 3600 * 24
        ) {
            headers.warning =
                (headers.warning ? `${headers.warning}, ` : '') +
                '113 - "rfc7234 5.5.4"';
        }
        headers.age = `${Math.round(age)}`;
        headers.date = new Date(this.now()).toUTCString();
        return headers;
    }

    /**
     * Value of the Date response header or current time if Date was invalid
     * @return timestamp
     */
    date() {
        const serverDate = Date.parse(this._resHeaders.date);
        if (isFinite(serverDate)) {
            return serverDate;
        }
        return this._responseTime;
    }

    /**
     * Value of the Age header, in seconds, updated for the current time.
     * May be fractional.
     *
     * @return Number
     */
    age() {
        let age = this._ageValue();

        const residentTime = (this.now() - this._responseTime) / 1000;
        return age + residentTime;
    }

    _ageValue() {
        return toNumberOrZero(this._resHeaders.age);
    }

    /**
     * Value of applicable max-age (or heuristic equivalent) in seconds. This counts since response's `Date`.
     *
     * For an up-to-date value, see `timeToLive()`.
     *
     * @return Number
     */
    maxAge() {
        if (!this.storable() || this._rescc['no-cache']) {
            return 0;
        }

        // Shared responses with cookies are cacheable according to the RFC, but IMHO it'd be unwise to do so by default
        // so this implementation requires explicit opt-in via public header
        if (
            this._isShared &&
            (this._resHeaders['set-cookie'] &&
                !this._rescc.public &&
                !this._rescc.immutable)
        ) {
            return 0;
        }

        if (this._resHeaders.vary === '*') {
            return 0;
        }

        if (this._isShared) {
            if (this._rescc['proxy-revalidate']) {
                return 0;
            }
            // if a response includes the s-maxage directive, a shared cache recipient MUST ignore the Expires field.
            if (this._rescc['s-maxage']) {
                return toNumberOrZero(this._rescc['s-maxage']);
            }
        }

        // If a response includes a Cache-Control field with the max-age directive, a recipient MUST ignore the Expires field.
        if (this._rescc['max-age']) {
            return toNumberOrZero(this._rescc['max-age']);
        }

        const defaultMinTtl = this._rescc.immutable ? this._immutableMinTtl : 0;

        const serverDate = this.date();
        if (this._resHeaders.expires) {
            const expires = Date.parse(this._resHeaders.expires);
            // A cache recipient MUST interpret invalid date formats, especially the value "0", as representing a time in the past (i.e., "already expired").
            if (Number.isNaN(expires) || expires < serverDate) {
                return 0;
            }
            return Math.max(defaultMinTtl, (expires - serverDate) / 1000);
        }

        if (this._resHeaders['last-modified']) {
            const lastModified = Date.parse(this._resHeaders['last-modified']);
            if (isFinite(lastModified) && serverDate > lastModified) {
                return Math.max(
                    defaultMinTtl,
                    ((serverDate - lastModified) / 1000) * this._cacheHeuristic
                );
            }
        }

        return defaultMinTtl;
    }

    timeToLive() {
        const age = this.maxAge() - this.age();
        const staleIfErrorAge = age + toNumberOrZero(this._rescc['stale-if-error']);
        const staleWhileRevalidateAge = age + toNumberOrZero(this._rescc['stale-while-revalidate']);
        return Math.max(0, age, staleIfErrorAge, staleWhileRevalidateAge) * 1000;
    }

    stale() {
        return this.maxAge() <= this.age();
    }

    _useStaleIfError() {
        return this.maxAge() + toNumberOrZero(this._rescc['stale-if-error']) > this.age();
    }

    useStaleWhileRevalidate() {
        return this.maxAge() + toNumberOrZero(this._rescc['stale-while-revalidate']) > this.age();
    }

    static fromObject(obj) {
        return new this(undefined, undefined, { _fromObject: obj });
    }

    _fromObject(obj) {
        if (this._responseTime) throw Error('Reinitialized');
        if (!obj || obj.v !== 1) throw Error('Invalid serialization');

        this._responseTime = obj.t;
        this._isShared = obj.sh;
        this._cacheHeuristic = obj.ch;
        this._immutableMinTtl =
            obj.imm !== undefined ? obj.imm : 24 * 3600 * 1000;
        this._status = obj.st;
        this._resHeaders = obj.resh;
        this._rescc = obj.rescc;
        this._method = obj.m;
        this._url = obj.u;
        this._host = obj.h;
        this._noAuthorization = obj.a;
        this._reqHeaders = obj.reqh;
        this._reqcc = obj.reqcc;
    }

    toObject() {
        return {
            v: 1,
            t: this._responseTime,
            sh: this._isShared,
            ch: this._cacheHeuristic,
            imm: this._immutableMinTtl,
            st: this._status,
            resh: this._resHeaders,
            rescc: this._rescc,
            m: this._method,
            u: this._url,
            h: this._host,
            a: this._noAuthorization,
            reqh: this._reqHeaders,
            reqcc: this._reqcc,
        };
    }

    /**
     * Headers for sending to the origin server to revalidate stale response.
     * Allows server to return 304 to allow reuse of the previous response.
     *
     * Hop by hop headers are always stripped.
     * Revalidation headers may be added or removed, depending on request.
     */
    revalidationHeaders(incomingReq) {
        this._assertRequestHasHeaders(incomingReq);
        const headers = this._copyWithoutHopByHopHeaders(incomingReq.headers);

        // This implementation does not understand range requests
        delete headers['if-range'];

        if (!this._requestMatches(incomingReq, true) || !this.storable()) {
            // revalidation allowed via HEAD
            // not for the same resource, or wasn't allowed to be cached anyway
            delete headers['if-none-match'];
            delete headers['if-modified-since'];
            return headers;
        }

        /* MUST send that entity-tag in any cache validation request (using If-Match or If-None-Match) if an entity-tag has been provided by the origin server. */
        if (this._resHeaders.etag) {
            headers['if-none-match'] = headers['if-none-match']
                ? `${headers['if-none-match']}, ${this._resHeaders.etag}`
                : this._resHeaders.etag;
        }

        // Clients MAY issue simple (non-subrange) GET requests with either weak validators or strong validators. Clients MUST NOT use weak validators in other forms of request.
        const forbidsWeakValidators =
            headers['accept-ranges'] ||
            headers['if-match'] ||
            headers['if-unmodified-since'] ||
            (this._method && this._method != 'GET');

        /* SHOULD send the Last-Modified value in non-subrange cache validation requests (using If-Modified-Since) if only a Last-Modified value has been provided by the origin server.
        Note: This implementation does not understand partial responses (206) */
        if (forbidsWeakValidators) {
            delete headers['if-modified-since'];

            if (headers['if-none-match']) {
                const etags = headers['if-none-match']
                    .split(/,/)
                    .filter(etag => {
                        return !/^\s*W\//.test(etag);
                    });
                if (!etags.length) {
                    delete headers['if-none-match'];
                } else {
                    headers['if-none-match'] = etags.join(',').trim();
                }
            }
        } else if (
            this._resHeaders['last-modified'] &&
            !headers['if-modified-since']
        ) {
            headers['if-modified-since'] = this._resHeaders['last-modified'];
        }

        return headers;
    }

    /**
     * Creates new CachePolicy with information combined from the previews response,
     * and the new revalidation response.
     *
     * Returns {policy, modified} where modified is a boolean indicating
     * whether the response body has been modified, and old cached body can't be used.
     *
     * @return {Object} {policy: CachePolicy, modified: Boolean}
     */
    revalidatedPolicy(request, response) {
        this._assertRequestHasHeaders(request);
        if(this._useStaleIfError() && isErrorResponse(response)) {  // I consider the revalidation request unsuccessful
          return {
            modified: false,
            matches: false,
            policy: this,
          };
        }
        if (!response || !response.headers) {
            throw Error('Response headers missing');
        }

        // These aren't going to be supported exactly, since one CachePolicy object
        // doesn't know about all the other cached objects.
        let matches = false;
        if (response.status !== undefined && response.status != 304) {
            matches = false;
        } else if (
            response.headers.etag &&
            !/^\s*W\//.test(response.headers.etag)
        ) {
            // "All of the stored responses with the same strong validator are selected.
            // If none of the stored responses contain the same strong validator,
            // then the cache MUST NOT use the new response to update any stored responses."
            matches =
                this._resHeaders.etag &&
                this._resHeaders.etag.replace(/^\s*W\//, '') ===
                    response.headers.etag;
        } else if (this._resHeaders.etag && response.headers.etag) {
            // "If the new response contains a weak validator and that validator corresponds
            // to one of the cache's stored responses,
            // then the most recent of those matching stored responses is selected for update."
            matches =
                this._resHeaders.etag.replace(/^\s*W\//, '') ===
                response.headers.etag.replace(/^\s*W\//, '');
        } else if (this._resHeaders['last-modified']) {
            matches =
                this._resHeaders['last-modified'] ===
                response.headers['last-modified'];
        } else {
            // If the new response does not include any form of validator (such as in the case where
            // a client generates an If-Modified-Since request from a source other than the Last-Modified
            // response header field), and there is only one stored response, and that stored response also
            // lacks a validator, then that stored response is selected for update.
            if (
                !this._resHeaders.etag &&
                !this._resHeaders['last-modified'] &&
                !response.headers.etag &&
                !response.headers['last-modified']
            ) {
                matches = true;
            }
        }

        if (!matches) {
            return {
                policy: new this.constructor(request, response),
                // Client receiving 304 without body, even if it's invalid/mismatched has no option
                // but to reuse a cached body. We don't have a good way to tell clients to do
                // error recovery in such case.
                modified: response.status != 304,
                matches: false,
            };
        }

        // use other header fields provided in the 304 (Not Modified) response to replace all instances
        // of the corresponding header fields in the stored response.
        const headers = {};
        for (const k in this._resHeaders) {
            headers[k] =
                k in response.headers && !excludedFromRevalidationUpdate[k]
                    ? response.headers[k]
                    : this._resHeaders[k];
        }

        const newResponse = Object.assign({}, response, {
            status: this._status,
            method: this._method,
            headers,
        });
        return {
            policy: new this.constructor(request, newResponse, {
                shared: this._isShared,
                cacheHeuristic: this._cacheHeuristic,
                immutableMinTimeToLive: this._immutableMinTtl,
            }),
            modified: false,
            matches: true,
        };
    }
};


/***/ }),

/***/ 42479:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

var parser = __webpack_require__(95086);
var signer = __webpack_require__(38143);
var verify = __webpack_require__(51227);
var utils = __webpack_require__(65689);



///--- API

module.exports = {

  parse: parser.parseRequest,
  parseRequest: parser.parseRequest,

  sign: signer.signRequest,
  signRequest: signer.signRequest,
  createSigner: signer.createSigner,
  isSigner: signer.isSigner,

  sshKeyToPEM: utils.sshKeyToPEM,
  sshKeyFingerprint: utils.fingerprint,
  pemToRsaSSHKey: utils.pemToRsaSSHKey,

  verify: verify.verifySignature,
  verifySignature: verify.verifySignature,
  verifyHMAC: verify.verifyHMAC
};


/***/ }),

/***/ 95086:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2012 Joyent, Inc.  All rights reserved.

var assert = __webpack_require__(66631);
var util = __webpack_require__(31669);
var utils = __webpack_require__(65689);



///--- Globals

var HASH_ALGOS = utils.HASH_ALGOS;
var PK_ALGOS = utils.PK_ALGOS;
var HttpSignatureError = utils.HttpSignatureError;
var InvalidAlgorithmError = utils.InvalidAlgorithmError;
var validateAlgorithm = utils.validateAlgorithm;

var State = {
  New: 0,
  Params: 1
};

var ParamsState = {
  Name: 0,
  Quote: 1,
  Value: 2,
  Comma: 3
};


///--- Specific Errors


function ExpiredRequestError(message) {
  HttpSignatureError.call(this, message, ExpiredRequestError);
}
util.inherits(ExpiredRequestError, HttpSignatureError);


function InvalidHeaderError(message) {
  HttpSignatureError.call(this, message, InvalidHeaderError);
}
util.inherits(InvalidHeaderError, HttpSignatureError);


function InvalidParamsError(message) {
  HttpSignatureError.call(this, message, InvalidParamsError);
}
util.inherits(InvalidParamsError, HttpSignatureError);


function MissingHeaderError(message) {
  HttpSignatureError.call(this, message, MissingHeaderError);
}
util.inherits(MissingHeaderError, HttpSignatureError);

function StrictParsingError(message) {
  HttpSignatureError.call(this, message, StrictParsingError);
}
util.inherits(StrictParsingError, HttpSignatureError);

///--- Exported API

module.exports = {

  /**
   * Parses the 'Authorization' header out of an http.ServerRequest object.
   *
   * Note that this API will fully validate the Authorization header, and throw
   * on any error.  It will not however check the signature, or the keyId format
   * as those are specific to your environment.  You can use the options object
   * to pass in extra constraints.
   *
   * As a response object you can expect this:
   *
   *     {
   *       "scheme": "Signature",
   *       "params": {
   *         "keyId": "foo",
   *         "algorithm": "rsa-sha256",
   *         "headers": [
   *           "date" or "x-date",
   *           "digest"
   *         ],
   *         "signature": "base64"
   *       },
   *       "signingString": "ready to be passed to crypto.verify()"
   *     }
   *
   * @param {Object} request an http.ServerRequest.
   * @param {Object} options an optional options object with:
   *                   - clockSkew: allowed clock skew in seconds (default 300).
   *                   - headers: required header names (def: date or x-date)
   *                   - algorithms: algorithms to support (default: all).
   *                   - strict: should enforce latest spec parsing
   *                             (default: false).
   * @return {Object} parsed out object (see above).
   * @throws {TypeError} on invalid input.
   * @throws {InvalidHeaderError} on an invalid Authorization header error.
   * @throws {InvalidParamsError} if the params in the scheme are invalid.
   * @throws {MissingHeaderError} if the params indicate a header not present,
   *                              either in the request headers from the params,
   *                              or not in the params from a required header
   *                              in options.
   * @throws {StrictParsingError} if old attributes are used in strict parsing
   *                              mode.
   * @throws {ExpiredRequestError} if the value of date or x-date exceeds skew.
   */
  parseRequest: function parseRequest(request, options) {
    assert.object(request, 'request');
    assert.object(request.headers, 'request.headers');
    if (options === undefined) {
      options = {};
    }
    if (options.headers === undefined) {
      options.headers = [request.headers['x-date'] ? 'x-date' : 'date'];
    }
    assert.object(options, 'options');
    assert.arrayOfString(options.headers, 'options.headers');
    assert.optionalFinite(options.clockSkew, 'options.clockSkew');

    var authzHeaderName = options.authorizationHeaderName || 'authorization';

    if (!request.headers[authzHeaderName]) {
      throw new MissingHeaderError('no ' + authzHeaderName + ' header ' +
                                   'present in the request');
    }

    options.clockSkew = options.clockSkew || 300;


    var i = 0;
    var state = State.New;
    var substate = ParamsState.Name;
    var tmpName = '';
    var tmpValue = '';

    var parsed = {
      scheme: '',
      params: {},
      signingString: ''
    };

    var authz = request.headers[authzHeaderName];
    for (i = 0; i < authz.length; i++) {
      var c = authz.charAt(i);

      switch (Number(state)) {

      case State.New:
        if (c !== ' ') parsed.scheme += c;
        else state = State.Params;
        break;

      case State.Params:
        switch (Number(substate)) {

        case ParamsState.Name:
          var code = c.charCodeAt(0);
          // restricted name of A-Z / a-z
          if ((code >= 0x41 && code <= 0x5a) || // A-Z
              (code >= 0x61 && code <= 0x7a)) { // a-z
            tmpName += c;
          } else if (c === '=') {
            if (tmpName.length === 0)
              throw new InvalidHeaderError('bad param format');
            substate = ParamsState.Quote;
          } else {
            throw new InvalidHeaderError('bad param format');
          }
          break;

        case ParamsState.Quote:
          if (c === '"') {
            tmpValue = '';
            substate = ParamsState.Value;
          } else {
            throw new InvalidHeaderError('bad param format');
          }
          break;

        case ParamsState.Value:
          if (c === '"') {
            parsed.params[tmpName] = tmpValue;
            substate = ParamsState.Comma;
          } else {
            tmpValue += c;
          }
          break;

        case ParamsState.Comma:
          if (c === ',') {
            tmpName = '';
            substate = ParamsState.Name;
          } else {
            throw new InvalidHeaderError('bad param format');
          }
          break;

        default:
          throw new Error('Invalid substate');
        }
        break;

      default:
        throw new Error('Invalid substate');
      }

    }

    if (!parsed.params.headers || parsed.params.headers === '') {
      if (request.headers['x-date']) {
        parsed.params.headers = ['x-date'];
      } else {
        parsed.params.headers = ['date'];
      }
    } else {
      parsed.params.headers = parsed.params.headers.split(' ');
    }

    // Minimally validate the parsed object
    if (!parsed.scheme || parsed.scheme !== 'Signature')
      throw new InvalidHeaderError('scheme was not "Signature"');

    if (!parsed.params.keyId)
      throw new InvalidHeaderError('keyId was not specified');

    if (!parsed.params.algorithm)
      throw new InvalidHeaderError('algorithm was not specified');

    if (!parsed.params.signature)
      throw new InvalidHeaderError('signature was not specified');

    // Check the algorithm against the official list
    parsed.params.algorithm = parsed.params.algorithm.toLowerCase();
    try {
      validateAlgorithm(parsed.params.algorithm);
    } catch (e) {
      if (e instanceof InvalidAlgorithmError)
        throw (new InvalidParamsError(parsed.params.algorithm + ' is not ' +
          'supported'));
      else
        throw (e);
    }

    // Build the signingString
    for (i = 0; i < parsed.params.headers.length; i++) {
      var h = parsed.params.headers[i].toLowerCase();
      parsed.params.headers[i] = h;

      if (h === 'request-line') {
        if (!options.strict) {
          /*
           * We allow headers from the older spec drafts if strict parsing isn't
           * specified in options.
           */
          parsed.signingString +=
            request.method + ' ' + request.url + ' HTTP/' + request.httpVersion;
        } else {
          /* Strict parsing doesn't allow older draft headers. */
          throw (new StrictParsingError('request-line is not a valid header ' +
            'with strict parsing enabled.'));
        }
      } else if (h === '(request-target)') {
        parsed.signingString +=
          '(request-target): ' + request.method.toLowerCase() + ' ' +
          request.url;
      } else {
        var value = request.headers[h];
        if (value === undefined)
          throw new MissingHeaderError(h + ' was not in the request');
        parsed.signingString += h + ': ' + value;
      }

      if ((i + 1) < parsed.params.headers.length)
        parsed.signingString += '\n';
    }

    // Check against the constraints
    var date;
    if (request.headers.date || request.headers['x-date']) {
        if (request.headers['x-date']) {
          date = new Date(request.headers['x-date']);
        } else {
          date = new Date(request.headers.date);
        }
      var now = new Date();
      var skew = Math.abs(now.getTime() - date.getTime());

      if (skew > options.clockSkew * 1000) {
        throw new ExpiredRequestError('clock skew of ' +
                                      (skew / 1000) +
                                      's was greater than ' +
                                      options.clockSkew + 's');
      }
    }

    options.headers.forEach(function (hdr) {
      // Remember that we already checked any headers in the params
      // were in the request, so if this passes we're good.
      if (parsed.params.headers.indexOf(hdr.toLowerCase()) < 0)
        throw new MissingHeaderError(hdr + ' was not a signed header');
    });

    if (options.algorithms) {
      if (options.algorithms.indexOf(parsed.params.algorithm) === -1)
        throw new InvalidParamsError(parsed.params.algorithm +
                                     ' is not a supported algorithm');
    }

    parsed.algorithm = parsed.params.algorithm.toUpperCase();
    parsed.keyId = parsed.params.keyId;
    return parsed;
  }

};


/***/ }),

/***/ 38143:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2012 Joyent, Inc.  All rights reserved.

var assert = __webpack_require__(66631);
var crypto = __webpack_require__(33373);
var http = __webpack_require__(98605);
var util = __webpack_require__(31669);
var sshpk = __webpack_require__(87022);
var jsprim = __webpack_require__(6287);
var utils = __webpack_require__(65689);

var sprintf = __webpack_require__(31669).format;

var HASH_ALGOS = utils.HASH_ALGOS;
var PK_ALGOS = utils.PK_ALGOS;
var InvalidAlgorithmError = utils.InvalidAlgorithmError;
var HttpSignatureError = utils.HttpSignatureError;
var validateAlgorithm = utils.validateAlgorithm;

///--- Globals

var AUTHZ_FMT =
  'Signature keyId="%s",algorithm="%s",headers="%s",signature="%s"';

///--- Specific Errors

function MissingHeaderError(message) {
  HttpSignatureError.call(this, message, MissingHeaderError);
}
util.inherits(MissingHeaderError, HttpSignatureError);

function StrictParsingError(message) {
  HttpSignatureError.call(this, message, StrictParsingError);
}
util.inherits(StrictParsingError, HttpSignatureError);

/* See createSigner() */
function RequestSigner(options) {
  assert.object(options, 'options');

  var alg = [];
  if (options.algorithm !== undefined) {
    assert.string(options.algorithm, 'options.algorithm');
    alg = validateAlgorithm(options.algorithm);
  }
  this.rs_alg = alg;

  /*
   * RequestSigners come in two varieties: ones with an rs_signFunc, and ones
   * with an rs_signer.
   *
   * rs_signFunc-based RequestSigners have to build up their entire signing
   * string within the rs_lines array and give it to rs_signFunc as a single
   * concat'd blob. rs_signer-based RequestSigners can add a line at a time to
   * their signing state by using rs_signer.update(), thus only needing to
   * buffer the hash function state and one line at a time.
   */
  if (options.sign !== undefined) {
    assert.func(options.sign, 'options.sign');
    this.rs_signFunc = options.sign;

  } else if (alg[0] === 'hmac' && options.key !== undefined) {
    assert.string(options.keyId, 'options.keyId');
    this.rs_keyId = options.keyId;

    if (typeof (options.key) !== 'string' && !Buffer.isBuffer(options.key))
      throw (new TypeError('options.key for HMAC must be a string or Buffer'));

    /*
     * Make an rs_signer for HMACs, not a rs_signFunc -- HMACs digest their
     * data in chunks rather than requiring it all to be given in one go
     * at the end, so they are more similar to signers than signFuncs.
     */
    this.rs_signer = crypto.createHmac(alg[1].toUpperCase(), options.key);
    this.rs_signer.sign = function () {
      var digest = this.digest('base64');
      return ({
        hashAlgorithm: alg[1],
        toString: function () { return (digest); }
      });
    };

  } else if (options.key !== undefined) {
    var key = options.key;
    if (typeof (key) === 'string' || Buffer.isBuffer(key))
      key = sshpk.parsePrivateKey(key);

    assert.ok(sshpk.PrivateKey.isPrivateKey(key, [1, 2]),
      'options.key must be a sshpk.PrivateKey');
    this.rs_key = key;

    assert.string(options.keyId, 'options.keyId');
    this.rs_keyId = options.keyId;

    if (!PK_ALGOS[key.type]) {
      throw (new InvalidAlgorithmError(key.type.toUpperCase() + ' type ' +
        'keys are not supported'));
    }

    if (alg[0] !== undefined && key.type !== alg[0]) {
      throw (new InvalidAlgorithmError('options.key must be a ' +
        alg[0].toUpperCase() + ' key, was given a ' +
        key.type.toUpperCase() + ' key instead'));
    }

    this.rs_signer = key.createSign(alg[1]);

  } else {
    throw (new TypeError('options.sign (func) or options.key is required'));
  }

  this.rs_headers = [];
  this.rs_lines = [];
}

/**
 * Adds a header to be signed, with its value, into this signer.
 *
 * @param {String} header
 * @param {String} value
 * @return {String} value written
 */
RequestSigner.prototype.writeHeader = function (header, value) {
  assert.string(header, 'header');
  header = header.toLowerCase();
  assert.string(value, 'value');

  this.rs_headers.push(header);

  if (this.rs_signFunc) {
    this.rs_lines.push(header + ': ' + value);

  } else {
    var line = header + ': ' + value;
    if (this.rs_headers.length > 0)
      line = '\n' + line;
    this.rs_signer.update(line);
  }

  return (value);
};

/**
 * Adds a default Date header, returning its value.
 *
 * @return {String}
 */
RequestSigner.prototype.writeDateHeader = function () {
  return (this.writeHeader('date', jsprim.rfc1123(new Date())));
};

/**
 * Adds the request target line to be signed.
 *
 * @param {String} method, HTTP method (e.g. 'get', 'post', 'put')
 * @param {String} path
 */
RequestSigner.prototype.writeTarget = function (method, path) {
  assert.string(method, 'method');
  assert.string(path, 'path');
  method = method.toLowerCase();
  this.writeHeader('(request-target)', method + ' ' + path);
};

/**
 * Calculate the value for the Authorization header on this request
 * asynchronously.
 *
 * @param {Func} callback (err, authz)
 */
RequestSigner.prototype.sign = function (cb) {
  assert.func(cb, 'callback');

  if (this.rs_headers.length < 1)
    throw (new Error('At least one header must be signed'));

  var alg, authz;
  if (this.rs_signFunc) {
    var data = this.rs_lines.join('\n');
    var self = this;
    this.rs_signFunc(data, function (err, sig) {
      if (err) {
        cb(err);
        return;
      }
      try {
        assert.object(sig, 'signature');
        assert.string(sig.keyId, 'signature.keyId');
        assert.string(sig.algorithm, 'signature.algorithm');
        assert.string(sig.signature, 'signature.signature');
        alg = validateAlgorithm(sig.algorithm);

        authz = sprintf(AUTHZ_FMT,
          sig.keyId,
          sig.algorithm,
          self.rs_headers.join(' '),
          sig.signature);
      } catch (e) {
        cb(e);
        return;
      }
      cb(null, authz);
    });

  } else {
    try {
      var sigObj = this.rs_signer.sign();
    } catch (e) {
      cb(e);
      return;
    }
    alg = (this.rs_alg[0] || this.rs_key.type) + '-' + sigObj.hashAlgorithm;
    var signature = sigObj.toString();
    authz = sprintf(AUTHZ_FMT,
      this.rs_keyId,
      alg,
      this.rs_headers.join(' '),
      signature);
    cb(null, authz);
  }
};

///--- Exported API

module.exports = {
  /**
   * Identifies whether a given object is a request signer or not.
   *
   * @param {Object} object, the object to identify
   * @returns {Boolean}
   */
  isSigner: function (obj) {
    if (typeof (obj) === 'object' && obj instanceof RequestSigner)
      return (true);
    return (false);
  },

  /**
   * Creates a request signer, used to asynchronously build a signature
   * for a request (does not have to be an http.ClientRequest).
   *
   * @param {Object} options, either:
   *                   - {String} keyId
   *                   - {String|Buffer} key
   *                   - {String} algorithm (optional, required for HMAC)
   *                 or:
   *                   - {Func} sign (data, cb)
   * @return {RequestSigner}
   */
  createSigner: function createSigner(options) {
    return (new RequestSigner(options));
  },

  /**
   * Adds an 'Authorization' header to an http.ClientRequest object.
   *
   * Note that this API will add a Date header if it's not already set. Any
   * other headers in the options.headers array MUST be present, or this
   * will throw.
   *
   * You shouldn't need to check the return type; it's just there if you want
   * to be pedantic.
   *
   * The optional flag indicates whether parsing should use strict enforcement
   * of the version draft-cavage-http-signatures-04 of the spec or beyond.
   * The default is to be loose and support
   * older versions for compatibility.
   *
   * @param {Object} request an instance of http.ClientRequest.
   * @param {Object} options signing parameters object:
   *                   - {String} keyId required.
   *                   - {String} key required (either a PEM or HMAC key).
   *                   - {Array} headers optional; defaults to ['date'].
   *                   - {String} algorithm optional (unless key is HMAC);
   *                              default is the same as the sshpk default
   *                              signing algorithm for the type of key given
   *                   - {String} httpVersion optional; defaults to '1.1'.
   *                   - {Boolean} strict optional; defaults to 'false'.
   * @return {Boolean} true if Authorization (and optionally Date) were added.
   * @throws {TypeError} on bad parameter types (input).
   * @throws {InvalidAlgorithmError} if algorithm was bad or incompatible with
   *                                 the given key.
   * @throws {sshpk.KeyParseError} if key was bad.
   * @throws {MissingHeaderError} if a header to be signed was specified but
   *                              was not present.
   */
  signRequest: function signRequest(request, options) {
    assert.object(request, 'request');
    assert.object(options, 'options');
    assert.optionalString(options.algorithm, 'options.algorithm');
    assert.string(options.keyId, 'options.keyId');
    assert.optionalArrayOfString(options.headers, 'options.headers');
    assert.optionalString(options.httpVersion, 'options.httpVersion');

    if (!request.getHeader('Date'))
      request.setHeader('Date', jsprim.rfc1123(new Date()));
    if (!options.headers)
      options.headers = ['date'];
    if (!options.httpVersion)
      options.httpVersion = '1.1';

    var alg = [];
    if (options.algorithm) {
      options.algorithm = options.algorithm.toLowerCase();
      alg = validateAlgorithm(options.algorithm);
    }

    var i;
    var stringToSign = '';
    for (i = 0; i < options.headers.length; i++) {
      if (typeof (options.headers[i]) !== 'string')
        throw new TypeError('options.headers must be an array of Strings');

      var h = options.headers[i].toLowerCase();

      if (h === 'request-line') {
        if (!options.strict) {
          /**
           * We allow headers from the older spec drafts if strict parsing isn't
           * specified in options.
           */
          stringToSign +=
            request.method + ' ' + request.path + ' HTTP/' +
            options.httpVersion;
        } else {
          /* Strict parsing doesn't allow older draft headers. */
          throw (new StrictParsingError('request-line is not a valid header ' +
            'with strict parsing enabled.'));
        }
      } else if (h === '(request-target)') {
        stringToSign +=
          '(request-target): ' + request.method.toLowerCase() + ' ' +
          request.path;
      } else {
        var value = request.getHeader(h);
        if (value === undefined || value === '') {
          throw new MissingHeaderError(h + ' was not in the request');
        }
        stringToSign += h + ': ' + value;
      }

      if ((i + 1) < options.headers.length)
        stringToSign += '\n';
    }

    /* This is just for unit tests. */
    if (request.hasOwnProperty('_stringToSign')) {
      request._stringToSign = stringToSign;
    }

    var signature;
    if (alg[0] === 'hmac') {
      if (typeof (options.key) !== 'string' && !Buffer.isBuffer(options.key))
        throw (new TypeError('options.key must be a string or Buffer'));

      var hmac = crypto.createHmac(alg[1].toUpperCase(), options.key);
      hmac.update(stringToSign);
      signature = hmac.digest('base64');

    } else {
      var key = options.key;
      if (typeof (key) === 'string' || Buffer.isBuffer(key))
        key = sshpk.parsePrivateKey(options.key);

      assert.ok(sshpk.PrivateKey.isPrivateKey(key, [1, 2]),
        'options.key must be a sshpk.PrivateKey');

      if (!PK_ALGOS[key.type]) {
        throw (new InvalidAlgorithmError(key.type.toUpperCase() + ' type ' +
          'keys are not supported'));
      }

      if (alg[0] !== undefined && key.type !== alg[0]) {
        throw (new InvalidAlgorithmError('options.key must be a ' +
          alg[0].toUpperCase() + ' key, was given a ' +
          key.type.toUpperCase() + ' key instead'));
      }

      var signer = key.createSign(alg[1]);
      signer.update(stringToSign);
      var sigObj = signer.sign();
      if (!HASH_ALGOS[sigObj.hashAlgorithm]) {
        throw (new InvalidAlgorithmError(sigObj.hashAlgorithm.toUpperCase() +
          ' is not a supported hash algorithm'));
      }
      options.algorithm = key.type + '-' + sigObj.hashAlgorithm;
      signature = sigObj.toString();
      assert.notStrictEqual(signature, '', 'empty signature produced');
    }

    var authzHeaderName = options.authorizationHeaderName || 'Authorization';

    request.setHeader(authzHeaderName, sprintf(AUTHZ_FMT,
                                               options.keyId,
                                               options.algorithm,
                                               options.headers.join(' '),
                                               signature));

    return true;
  }

};


/***/ }),

/***/ 65689:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2012 Joyent, Inc.  All rights reserved.

var assert = __webpack_require__(66631);
var sshpk = __webpack_require__(87022);
var util = __webpack_require__(31669);

var HASH_ALGOS = {
  'sha1': true,
  'sha256': true,
  'sha512': true
};

var PK_ALGOS = {
  'rsa': true,
  'dsa': true,
  'ecdsa': true
};

function HttpSignatureError(message, caller) {
  if (Error.captureStackTrace)
    Error.captureStackTrace(this, caller || HttpSignatureError);

  this.message = message;
  this.name = caller.name;
}
util.inherits(HttpSignatureError, Error);

function InvalidAlgorithmError(message) {
  HttpSignatureError.call(this, message, InvalidAlgorithmError);
}
util.inherits(InvalidAlgorithmError, HttpSignatureError);

function validateAlgorithm(algorithm) {
  var alg = algorithm.toLowerCase().split('-');

  if (alg.length !== 2) {
    throw (new InvalidAlgorithmError(alg[0].toUpperCase() + ' is not a ' +
      'valid algorithm'));
  }

  if (alg[0] !== 'hmac' && !PK_ALGOS[alg[0]]) {
    throw (new InvalidAlgorithmError(alg[0].toUpperCase() + ' type keys ' +
      'are not supported'));
  }

  if (!HASH_ALGOS[alg[1]]) {
    throw (new InvalidAlgorithmError(alg[1].toUpperCase() + ' is not a ' +
      'supported hash algorithm'));
  }

  return (alg);
}

///--- API

module.exports = {

  HASH_ALGOS: HASH_ALGOS,
  PK_ALGOS: PK_ALGOS,

  HttpSignatureError: HttpSignatureError,
  InvalidAlgorithmError: InvalidAlgorithmError,

  validateAlgorithm: validateAlgorithm,

  /**
   * Converts an OpenSSH public key (rsa only) to a PKCS#8 PEM file.
   *
   * The intent of this module is to interoperate with OpenSSL only,
   * specifically the node crypto module's `verify` method.
   *
   * @param {String} key an OpenSSH public key.
   * @return {String} PEM encoded form of the RSA public key.
   * @throws {TypeError} on bad input.
   * @throws {Error} on invalid ssh key formatted data.
   */
  sshKeyToPEM: function sshKeyToPEM(key) {
    assert.string(key, 'ssh_key');

    var k = sshpk.parseKey(key, 'ssh');
    return (k.toString('pem'));
  },


  /**
   * Generates an OpenSSH fingerprint from an ssh public key.
   *
   * @param {String} key an OpenSSH public key.
   * @return {String} key fingerprint.
   * @throws {TypeError} on bad input.
   * @throws {Error} if what you passed doesn't look like an ssh public key.
   */
  fingerprint: function fingerprint(key) {
    assert.string(key, 'ssh_key');

    var k = sshpk.parseKey(key, 'ssh');
    return (k.fingerprint('md5').toString('hex'));
  },

  /**
   * Converts a PKGCS#8 PEM file to an OpenSSH public key (rsa)
   *
   * The reverse of the above function.
   */
  pemToRsaSSHKey: function pemToRsaSSHKey(pem, comment) {
    assert.equal('string', typeof (pem), 'typeof pem');

    var k = sshpk.parseKey(pem, 'pem');
    k.comment = comment;
    return (k.toString('ssh'));
  }
};


/***/ }),

/***/ 51227:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

var assert = __webpack_require__(66631);
var crypto = __webpack_require__(33373);
var sshpk = __webpack_require__(87022);
var utils = __webpack_require__(65689);

var HASH_ALGOS = utils.HASH_ALGOS;
var PK_ALGOS = utils.PK_ALGOS;
var InvalidAlgorithmError = utils.InvalidAlgorithmError;
var HttpSignatureError = utils.HttpSignatureError;
var validateAlgorithm = utils.validateAlgorithm;

///--- Exported API

module.exports = {
  /**
   * Verify RSA/DSA signature against public key.  You are expected to pass in
   * an object that was returned from `parse()`.
   *
   * @param {Object} parsedSignature the object you got from `parse`.
   * @param {String} pubkey RSA/DSA private key PEM.
   * @return {Boolean} true if valid, false otherwise.
   * @throws {TypeError} if you pass in bad arguments.
   * @throws {InvalidAlgorithmError}
   */
  verifySignature: function verifySignature(parsedSignature, pubkey) {
    assert.object(parsedSignature, 'parsedSignature');
    if (typeof (pubkey) === 'string' || Buffer.isBuffer(pubkey))
      pubkey = sshpk.parseKey(pubkey);
    assert.ok(sshpk.Key.isKey(pubkey, [1, 1]), 'pubkey must be a sshpk.Key');

    var alg = validateAlgorithm(parsedSignature.algorithm);
    if (alg[0] === 'hmac' || alg[0] !== pubkey.type)
      return (false);

    var v = pubkey.createVerify(alg[1]);
    v.update(parsedSignature.signingString);
    return (v.verify(parsedSignature.params.signature, 'base64'));
  },

  /**
   * Verify HMAC against shared secret.  You are expected to pass in an object
   * that was returned from `parse()`.
   *
   * @param {Object} parsedSignature the object you got from `parse`.
   * @param {String} secret HMAC shared secret.
   * @return {Boolean} true if valid, false otherwise.
   * @throws {TypeError} if you pass in bad arguments.
   * @throws {InvalidAlgorithmError}
   */
  verifyHMAC: function verifyHMAC(parsedSignature, secret) {
    assert.object(parsedSignature, 'parsedHMAC');
    assert.string(secret, 'secret');

    var alg = validateAlgorithm(parsedSignature.algorithm);
    if (alg[0] !== 'hmac')
      return (false);

    var hashAlg = alg[1].toUpperCase();

    var hmac = crypto.createHmac(hashAlg, secret);
    hmac.update(parsedSignature.signingString);

    /*
     * Now double-hash to avoid leaking timing information - there's
     * no easy constant-time compare in JS, so we use this approach
     * instead. See for more info:
     * https://www.isecpartners.com/blog/2011/february/double-hmac-
     * verification.aspx
     */
    var h1 = crypto.createHmac(hashAlg, secret);
    h1.update(hmac.digest());
    h1 = h1.digest();
    var h2 = crypto.createHmac(hashAlg, secret);
    h2.update(new Buffer(parsedSignature.params.signature, 'base64'));
    h2 = h2.digest();

    /* Node 0.8 returns strings from .digest(). */
    if (typeof (h1) === 'string')
      return (h1 === h2);
    /* And node 0.10 lacks the .equals() method on Buffers. */
    if (Buffer.isBuffer(h1) && !h1.equals)
      return (h1.toString('binary') === h2.toString('binary'));

    return (h1.equals(h2));
  }
};


/***/ }),

/***/ 98043:
/***/ ((module) => {

"use strict";


module.exports = (string, count = 1, options) => {
	options = {
		indent: ' ',
		includeEmptyLines: false,
		...options
	};

	if (typeof string !== 'string') {
		throw new TypeError(
			`Expected \`input\` to be a \`string\`, got \`${typeof string}\``
		);
	}

	if (typeof count !== 'number') {
		throw new TypeError(
			`Expected \`count\` to be a \`number\`, got \`${typeof count}\``
		);
	}

	if (typeof options.indent !== 'string') {
		throw new TypeError(
			`Expected \`options.indent\` to be a \`string\`, got \`${typeof options.indent}\``
		);
	}

	if (count === 0) {
		return string;
	}

	const regex = options.includeEmptyLines ? /^/gm : /^(?!\s*$)/gm;

	return string.replace(regex, options.indent.repeat(count));
};


/***/ }),

/***/ 52492:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var wrappy = __webpack_require__(62940)
var reqs = Object.create(null)
var once = __webpack_require__(1223)

module.exports = wrappy(inflight)

function inflight (key, cb) {
  if (reqs[key]) {
    reqs[key].push(cb)
    return null
  } else {
    reqs[key] = [cb]
    return makeres(key)
  }
}

function makeres (key) {
  return once(function RES () {
    var cbs = reqs[key]
    var len = cbs.length
    var args = slice(arguments)

    // XXX It's somewhat ambiguous whether a new callback added in this
    // pass should be queued for later execution if something in the
    // list of callbacks throws, or if it should just be discarded.
    // However, it's such an edge case that it hardly matters, and either
    // choice is likely as surprising as the other.
    // As it happens, we do go ahead and schedule it for later execution.
    try {
      for (var i = 0; i < len; i++) {
        cbs[i].apply(null, args)
      }
    } finally {
      if (cbs.length > len) {
        // added more in the interim.
        // de-zalgo, just in case, but don't call again.
        cbs.splice(0, len)
        process.nextTick(function () {
          RES.apply(null, args)
        })
      } else {
        delete reqs[key]
      }
    }
  })
}

function slice (args) {
  var length = args.length
  var array = []

  for (var i = 0; i < length; i++) array[i] = args[i]
  return array
}


/***/ }),

/***/ 44124:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

try {
  var util = __webpack_require__(31669);
  /* istanbul ignore next */
  if (typeof util.inherits !== 'function') throw '';
  module.exports = util.inherits;
} catch (e) {
  /* istanbul ignore next */
  module.exports = __webpack_require__(8544);
}


/***/ }),

/***/ 8544:
/***/ ((module) => {

if (typeof Object.create === 'function') {
  // implementation from standard node.js 'util' module
  module.exports = function inherits(ctor, superCtor) {
    if (superCtor) {
      ctor.super_ = superCtor
      ctor.prototype = Object.create(superCtor.prototype, {
        constructor: {
          value: ctor,
          enumerable: false,
          writable: true,
          configurable: true
        }
      })
    }
  };
} else {
  // old school shim for old browsers
  module.exports = function inherits(ctor, superCtor) {
    if (superCtor) {
      ctor.super_ = superCtor
      var TempCtor = function () {}
      TempCtor.prototype = superCtor.prototype
      ctor.prototype = new TempCtor()
      ctor.prototype.constructor = ctor
    }
  }
}


/***/ }),

/***/ 10657:
/***/ ((module) => {

module.exports      = isTypedArray
isTypedArray.strict = isStrictTypedArray
isTypedArray.loose  = isLooseTypedArray

var toString = Object.prototype.toString
var names = {
    '[object Int8Array]': true
  , '[object Int16Array]': true
  , '[object Int32Array]': true
  , '[object Uint8Array]': true
  , '[object Uint8ClampedArray]': true
  , '[object Uint16Array]': true
  , '[object Uint32Array]': true
  , '[object Float32Array]': true
  , '[object Float64Array]': true
}

function isTypedArray(arr) {
  return (
       isStrictTypedArray(arr)
    || isLooseTypedArray(arr)
  )
}

function isStrictTypedArray(arr) {
  return (
       arr instanceof Int8Array
    || arr instanceof Int16Array
    || arr instanceof Int32Array
    || arr instanceof Uint8Array
    || arr instanceof Uint8ClampedArray
    || arr instanceof Uint16Array
    || arr instanceof Uint32Array
    || arr instanceof Float32Array
    || arr instanceof Float64Array
  )
}

function isLooseTypedArray(arr) {
  return names[toString.call(arr)]
}


/***/ }),

/***/ 64713:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


module.exports = __webpack_require__(88867);

/***/ }),

/***/ 83362:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var stream = __webpack_require__(92413)


function isStream (obj) {
  return obj instanceof stream.Stream
}


function isReadable (obj) {
  return isStream(obj) && typeof obj._read == 'function' && typeof obj._readableState == 'object'
}


function isWritable (obj) {
  return isStream(obj) && typeof obj._write == 'function' && typeof obj._writableState == 'object'
}


function isDuplex (obj) {
  return isReadable(obj) && isWritable(obj)
}


module.exports            = isStream
module.exports.isReadable = isReadable
module.exports.isWritable = isWritable
module.exports.isDuplex   = isDuplex


/***/ }),

/***/ 87783:
/***/ ((__unused_webpack_module, exports) => {

(function(exports) {
  "use strict";

  function isArray(obj) {
    if (obj !== null) {
      return Object.prototype.toString.call(obj) === "[object Array]";
    } else {
      return false;
    }
  }

  function isObject(obj) {
    if (obj !== null) {
      return Object.prototype.toString.call(obj) === "[object Object]";
    } else {
      return false;
    }
  }

  function strictDeepEqual(first, second) {
    // Check the scalar case first.
    if (first === second) {
      return true;
    }

    // Check if they are the same type.
    var firstType = Object.prototype.toString.call(first);
    if (firstType !== Object.prototype.toString.call(second)) {
      return false;
    }
    // We know that first and second have the same type so we can just check the
    // first type from now on.
    if (isArray(first) === true) {
      // Short circuit if they're not the same length;
      if (first.length !== second.length) {
        return false;
      }
      for (var i = 0; i < first.length; i++) {
        if (strictDeepEqual(first[i], second[i]) === false) {
          return false;
        }
      }
      return true;
    }
    if (isObject(first) === true) {
      // An object is equal if it has the same key/value pairs.
      var keysSeen = {};
      for (var key in first) {
        if (hasOwnProperty.call(first, key)) {
          if (strictDeepEqual(first[key], second[key]) === false) {
            return false;
          }
          keysSeen[key] = true;
        }
      }
      // Now check that there aren't any keys in second that weren't
      // in first.
      for (var key2 in second) {
        if (hasOwnProperty.call(second, key2)) {
          if (keysSeen[key2] !== true) {
            return false;
          }
        }
      }
      return true;
    }
    return false;
  }

  function isFalse(obj) {
    // From the spec:
    // A false value corresponds to the following values:
    // Empty list
    // Empty object
    // Empty string
    // False boolean
    // null value

    // First check the scalar values.
    if (obj === "" || obj === false || obj === null) {
        return true;
    } else if (isArray(obj) && obj.length === 0) {
        // Check for an empty array.
        return true;
    } else if (isObject(obj)) {
        // Check for an empty object.
        for (var key in obj) {
            // If there are any keys, then
            // the object is not empty so the object
            // is not false.
            if (obj.hasOwnProperty(key)) {
              return false;
            }
        }
        return true;
    } else {
        return false;
    }
  }

  function objValues(obj) {
    var keys = Object.keys(obj);
    var values = [];
    for (var i = 0; i < keys.length; i++) {
      values.push(obj[keys[i]]);
    }
    return values;
  }

  function merge(a, b) {
      var merged = {};
      for (var key in a) {
          merged[key] = a[key];
      }
      for (var key2 in b) {
          merged[key2] = b[key2];
      }
      return merged;
  }

  var trimLeft;
  if (typeof String.prototype.trimLeft === "function") {
    trimLeft = function(str) {
      return str.trimLeft();
    };
  } else {
    trimLeft = function(str) {
      return str.match(/^\s*(.*)/)[1];
    };
  }

  // Type constants used to define functions.
  var TYPE_NUMBER = 0;
  var TYPE_ANY = 1;
  var TYPE_STRING = 2;
  var TYPE_ARRAY = 3;
  var TYPE_OBJECT = 4;
  var TYPE_BOOLEAN = 5;
  var TYPE_EXPREF = 6;
  var TYPE_NULL = 7;
  var TYPE_ARRAY_NUMBER = 8;
  var TYPE_ARRAY_STRING = 9;

  var TOK_EOF = "EOF";
  var TOK_UNQUOTEDIDENTIFIER = "UnquotedIdentifier";
  var TOK_QUOTEDIDENTIFIER = "QuotedIdentifier";
  var TOK_RBRACKET = "Rbracket";
  var TOK_RPAREN = "Rparen";
  var TOK_COMMA = "Comma";
  var TOK_COLON = "Colon";
  var TOK_RBRACE = "Rbrace";
  var TOK_NUMBER = "Number";
  var TOK_CURRENT = "Current";
  var TOK_EXPREF = "Expref";
  var TOK_PIPE = "Pipe";
  var TOK_OR = "Or";
  var TOK_AND = "And";
  var TOK_EQ = "EQ";
  var TOK_GT = "GT";
  var TOK_LT = "LT";
  var TOK_GTE = "GTE";
  var TOK_LTE = "LTE";
  var TOK_NE = "NE";
  var TOK_FLATTEN = "Flatten";
  var TOK_STAR = "Star";
  var TOK_FILTER = "Filter";
  var TOK_DOT = "Dot";
  var TOK_NOT = "Not";
  var TOK_LBRACE = "Lbrace";
  var TOK_LBRACKET = "Lbracket";
  var TOK_LPAREN= "Lparen";
  var TOK_LITERAL= "Literal";

  // The "&", "[", "<", ">" tokens
  // are not in basicToken because
  // there are two token variants
  // ("&&", "[?", "<=", ">=").  This is specially handled
  // below.

  var basicTokens = {
    ".": TOK_DOT,
    "*": TOK_STAR,
    ",": TOK_COMMA,
    ":": TOK_COLON,
    "{": TOK_LBRACE,
    "}": TOK_RBRACE,
    "]": TOK_RBRACKET,
    "(": TOK_LPAREN,
    ")": TOK_RPAREN,
    "@": TOK_CURRENT
  };

  var operatorStartToken = {
      "<": true,
      ">": true,
      "=": true,
      "!": true
  };

  var skipChars = {
      " ": true,
      "\t": true,
      "\n": true
  };


  function isAlpha(ch) {
      return (ch >= "a" && ch <= "z") ||
             (ch >= "A" && ch <= "Z") ||
             ch === "_";
  }

  function isNum(ch) {
      return (ch >= "0" && ch <= "9") ||
             ch === "-";
  }
  function isAlphaNum(ch) {
      return (ch >= "a" && ch <= "z") ||
             (ch >= "A" && ch <= "Z") ||
             (ch >= "0" && ch <= "9") ||
             ch === "_";
  }

  function Lexer() {
  }
  Lexer.prototype = {
      tokenize: function(stream) {
          var tokens = [];
          this._current = 0;
          var start;
          var identifier;
          var token;
          while (this._current < stream.length) {
              if (isAlpha(stream[this._current])) {
                  start = this._current;
                  identifier = this._consumeUnquotedIdentifier(stream);
                  tokens.push({type: TOK_UNQUOTEDIDENTIFIER,
                               value: identifier,
                               start: start});
              } else if (basicTokens[stream[this._current]] !== undefined) {
                  tokens.push({type: basicTokens[stream[this._current]],
                              value: stream[this._current],
                              start: this._current});
                  this._current++;
              } else if (isNum(stream[this._current])) {
                  token = this._consumeNumber(stream);
                  tokens.push(token);
              } else if (stream[this._current] === "[") {
                  // No need to increment this._current.  This happens
                  // in _consumeLBracket
                  token = this._consumeLBracket(stream);
                  tokens.push(token);
              } else if (stream[this._current] === "\"") {
                  start = this._current;
                  identifier = this._consumeQuotedIdentifier(stream);
                  tokens.push({type: TOK_QUOTEDIDENTIFIER,
                               value: identifier,
                               start: start});
              } else if (stream[this._current] === "'") {
                  start = this._current;
                  identifier = this._consumeRawStringLiteral(stream);
                  tokens.push({type: TOK_LITERAL,
                               value: identifier,
                               start: start});
              } else if (stream[this._current] === "`") {
                  start = this._current;
                  var literal = this._consumeLiteral(stream);
                  tokens.push({type: TOK_LITERAL,
                               value: literal,
                               start: start});
              } else if (operatorStartToken[stream[this._current]] !== undefined) {
                  tokens.push(this._consumeOperator(stream));
              } else if (skipChars[stream[this._current]] !== undefined) {
                  // Ignore whitespace.
                  this._current++;
              } else if (stream[this._current] === "&") {
                  start = this._current;
                  this._current++;
                  if (stream[this._current] === "&") {
                      this._current++;
                      tokens.push({type: TOK_AND, value: "&&", start: start});
                  } else {
                      tokens.push({type: TOK_EXPREF, value: "&", start: start});
                  }
              } else if (stream[this._current] === "|") {
                  start = this._current;
                  this._current++;
                  if (stream[this._current] === "|") {
                      this._current++;
                      tokens.push({type: TOK_OR, value: "||", start: start});
                  } else {
                      tokens.push({type: TOK_PIPE, value: "|", start: start});
                  }
              } else {
                  var error = new Error("Unknown character:" + stream[this._current]);
                  error.name = "LexerError";
                  throw error;
              }
          }
          return tokens;
      },

      _consumeUnquotedIdentifier: function(stream) {
          var start = this._current;
          this._current++;
          while (this._current < stream.length && isAlphaNum(stream[this._current])) {
              this._current++;
          }
          return stream.slice(start, this._current);
      },

      _consumeQuotedIdentifier: function(stream) {
          var start = this._current;
          this._current++;
          var maxLength = stream.length;
          while (stream[this._current] !== "\"" && this._current < maxLength) {
              // You can escape a double quote and you can escape an escape.
              var current = this._current;
              if (stream[current] === "\\" && (stream[current + 1] === "\\" ||
                                               stream[current + 1] === "\"")) {
                  current += 2;
              } else {
                  current++;
              }
              this._current = current;
          }
          this._current++;
          return JSON.parse(stream.slice(start, this._current));
      },

      _consumeRawStringLiteral: function(stream) {
          var start = this._current;
          this._current++;
          var maxLength = stream.length;
          while (stream[this._current] !== "'" && this._current < maxLength) {
              // You can escape a single quote and you can escape an escape.
              var current = this._current;
              if (stream[current] === "\\" && (stream[current + 1] === "\\" ||
                                               stream[current + 1] === "'")) {
                  current += 2;
              } else {
                  current++;
              }
              this._current = current;
          }
          this._current++;
          var literal = stream.slice(start + 1, this._current - 1);
          return literal.replace("\\'", "'");
      },

      _consumeNumber: function(stream) {
          var start = this._current;
          this._current++;
          var maxLength = stream.length;
          while (isNum(stream[this._current]) && this._current < maxLength) {
              this._current++;
          }
          var value = parseInt(stream.slice(start, this._current));
          return {type: TOK_NUMBER, value: value, start: start};
      },

      _consumeLBracket: function(stream) {
          var start = this._current;
          this._current++;
          if (stream[this._current] === "?") {
              this._current++;
              return {type: TOK_FILTER, value: "[?", start: start};
          } else if (stream[this._current] === "]") {
              this._current++;
              return {type: TOK_FLATTEN, value: "[]", start: start};
          } else {
              return {type: TOK_LBRACKET, value: "[", start: start};
          }
      },

      _consumeOperator: function(stream) {
          var start = this._current;
          var startingChar = stream[start];
          this._current++;
          if (startingChar === "!") {
              if (stream[this._current] === "=") {
                  this._current++;
                  return {type: TOK_NE, value: "!=", start: start};
              } else {
                return {type: TOK_NOT, value: "!", start: start};
              }
          } else if (startingChar === "<") {
              if (stream[this._current] === "=") {
                  this._current++;
                  return {type: TOK_LTE, value: "<=", start: start};
              } else {
                  return {type: TOK_LT, value: "<", start: start};
              }
          } else if (startingChar === ">") {
              if (stream[this._current] === "=") {
                  this._current++;
                  return {type: TOK_GTE, value: ">=", start: start};
              } else {
                  return {type: TOK_GT, value: ">", start: start};
              }
          } else if (startingChar === "=") {
              if (stream[this._current] === "=") {
                  this._current++;
                  return {type: TOK_EQ, value: "==", start: start};
              }
          }
      },

      _consumeLiteral: function(stream) {
          this._current++;
          var start = this._current;
          var maxLength = stream.length;
          var literal;
          while(stream[this._current] !== "`" && this._current < maxLength) {
              // You can escape a literal char or you can escape the escape.
              var current = this._current;
              if (stream[current] === "\\" && (stream[current + 1] === "\\" ||
                                               stream[current + 1] === "`")) {
                  current += 2;
              } else {
                  current++;
              }
              this._current = current;
          }
          var literalString = trimLeft(stream.slice(start, this._current));
          literalString = literalString.replace("\\`", "`");
          if (this._looksLikeJSON(literalString)) {
              literal = JSON.parse(literalString);
          } else {
              // Try to JSON parse it as "<literal>"
              literal = JSON.parse("\"" + literalString + "\"");
          }
          // +1 gets us to the ending "`", +1 to move on to the next char.
          this._current++;
          return literal;
      },

      _looksLikeJSON: function(literalString) {
          var startingChars = "[{\"";
          var jsonLiterals = ["true", "false", "null"];
          var numberLooking = "-0123456789";

          if (literalString === "") {
              return false;
          } else if (startingChars.indexOf(literalString[0]) >= 0) {
              return true;
          } else if (jsonLiterals.indexOf(literalString) >= 0) {
              return true;
          } else if (numberLooking.indexOf(literalString[0]) >= 0) {
              try {
                  JSON.parse(literalString);
                  return true;
              } catch (ex) {
                  return false;
              }
          } else {
              return false;
          }
      }
  };

      var bindingPower = {};
      bindingPower[TOK_EOF] = 0;
      bindingPower[TOK_UNQUOTEDIDENTIFIER] = 0;
      bindingPower[TOK_QUOTEDIDENTIFIER] = 0;
      bindingPower[TOK_RBRACKET] = 0;
      bindingPower[TOK_RPAREN] = 0;
      bindingPower[TOK_COMMA] = 0;
      bindingPower[TOK_RBRACE] = 0;
      bindingPower[TOK_NUMBER] = 0;
      bindingPower[TOK_CURRENT] = 0;
      bindingPower[TOK_EXPREF] = 0;
      bindingPower[TOK_PIPE] = 1;
      bindingPower[TOK_OR] = 2;
      bindingPower[TOK_AND] = 3;
      bindingPower[TOK_EQ] = 5;
      bindingPower[TOK_GT] = 5;
      bindingPower[TOK_LT] = 5;
      bindingPower[TOK_GTE] = 5;
      bindingPower[TOK_LTE] = 5;
      bindingPower[TOK_NE] = 5;
      bindingPower[TOK_FLATTEN] = 9;
      bindingPower[TOK_STAR] = 20;
      bindingPower[TOK_FILTER] = 21;
      bindingPower[TOK_DOT] = 40;
      bindingPower[TOK_NOT] = 45;
      bindingPower[TOK_LBRACE] = 50;
      bindingPower[TOK_LBRACKET] = 55;
      bindingPower[TOK_LPAREN] = 60;

  function Parser() {
  }

  Parser.prototype = {
      parse: function(expression) {
          this._loadTokens(expression);
          this.index = 0;
          var ast = this.expression(0);
          if (this._lookahead(0) !== TOK_EOF) {
              var t = this._lookaheadToken(0);
              var error = new Error(
                  "Unexpected token type: " + t.type + ", value: " + t.value);
              error.name = "ParserError";
              throw error;
          }
          return ast;
      },

      _loadTokens: function(expression) {
          var lexer = new Lexer();
          var tokens = lexer.tokenize(expression);
          tokens.push({type: TOK_EOF, value: "", start: expression.length});
          this.tokens = tokens;
      },

      expression: function(rbp) {
          var leftToken = this._lookaheadToken(0);
          this._advance();
          var left = this.nud(leftToken);
          var currentToken = this._lookahead(0);
          while (rbp < bindingPower[currentToken]) {
              this._advance();
              left = this.led(currentToken, left);
              currentToken = this._lookahead(0);
          }
          return left;
      },

      _lookahead: function(number) {
          return this.tokens[this.index + number].type;
      },

      _lookaheadToken: function(number) {
          return this.tokens[this.index + number];
      },

      _advance: function() {
          this.index++;
      },

      nud: function(token) {
        var left;
        var right;
        var expression;
        switch (token.type) {
          case TOK_LITERAL:
            return {type: "Literal", value: token.value};
          case TOK_UNQUOTEDIDENTIFIER:
            return {type: "Field", name: token.value};
          case TOK_QUOTEDIDENTIFIER:
            var node = {type: "Field", name: token.value};
            if (this._lookahead(0) === TOK_LPAREN) {
                throw new Error("Quoted identifier not allowed for function names.");
            } else {
                return node;
            }
            break;
          case TOK_NOT:
            right = this.expression(bindingPower.Not);
            return {type: "NotExpression", children: [right]};
          case TOK_STAR:
            left = {type: "Identity"};
            right = null;
            if (this._lookahead(0) === TOK_RBRACKET) {
                // This can happen in a multiselect,
                // [a, b, *]
                right = {type: "Identity"};
            } else {
                right = this._parseProjectionRHS(bindingPower.Star);
            }
            return {type: "ValueProjection", children: [left, right]};
          case TOK_FILTER:
            return this.led(token.type, {type: "Identity"});
          case TOK_LBRACE:
            return this._parseMultiselectHash();
          case TOK_FLATTEN:
            left = {type: TOK_FLATTEN, children: [{type: "Identity"}]};
            right = this._parseProjectionRHS(bindingPower.Flatten);
            return {type: "Projection", children: [left, right]};
          case TOK_LBRACKET:
            if (this._lookahead(0) === TOK_NUMBER || this._lookahead(0) === TOK_COLON) {
                right = this._parseIndexExpression();
                return this._projectIfSlice({type: "Identity"}, right);
            } else if (this._lookahead(0) === TOK_STAR &&
                       this._lookahead(1) === TOK_RBRACKET) {
                this._advance();
                this._advance();
                right = this._parseProjectionRHS(bindingPower.Star);
                return {type: "Projection",
                        children: [{type: "Identity"}, right]};
            } else {
                return this._parseMultiselectList();
            }
            break;
          case TOK_CURRENT:
            return {type: TOK_CURRENT};
          case TOK_EXPREF:
            expression = this.expression(bindingPower.Expref);
            return {type: "ExpressionReference", children: [expression]};
          case TOK_LPAREN:
            var args = [];
            while (this._lookahead(0) !== TOK_RPAREN) {
              if (this._lookahead(0) === TOK_CURRENT) {
                expression = {type: TOK_CURRENT};
                this._advance();
              } else {
                expression = this.expression(0);
              }
              args.push(expression);
            }
            this._match(TOK_RPAREN);
            return args[0];
          default:
            this._errorToken(token);
        }
      },

      led: function(tokenName, left) {
        var right;
        switch(tokenName) {
          case TOK_DOT:
            var rbp = bindingPower.Dot;
            if (this._lookahead(0) !== TOK_STAR) {
                right = this._parseDotRHS(rbp);
                return {type: "Subexpression", children: [left, right]};
            } else {
                // Creating a projection.
                this._advance();
                right = this._parseProjectionRHS(rbp);
                return {type: "ValueProjection", children: [left, right]};
            }
            break;
          case TOK_PIPE:
            right = this.expression(bindingPower.Pipe);
            return {type: TOK_PIPE, children: [left, right]};
          case TOK_OR:
            right = this.expression(bindingPower.Or);
            return {type: "OrExpression", children: [left, right]};
          case TOK_AND:
            right = this.expression(bindingPower.And);
            return {type: "AndExpression", children: [left, right]};
          case TOK_LPAREN:
            var name = left.name;
            var args = [];
            var expression, node;
            while (this._lookahead(0) !== TOK_RPAREN) {
              if (this._lookahead(0) === TOK_CURRENT) {
                expression = {type: TOK_CURRENT};
                this._advance();
              } else {
                expression = this.expression(0);
              }
              if (this._lookahead(0) === TOK_COMMA) {
                this._match(TOK_COMMA);
              }
              args.push(expression);
            }
            this._match(TOK_RPAREN);
            node = {type: "Function", name: name, children: args};
            return node;
          case TOK_FILTER:
            var condition = this.expression(0);
            this._match(TOK_RBRACKET);
            if (this._lookahead(0) === TOK_FLATTEN) {
              right = {type: "Identity"};
            } else {
              right = this._parseProjectionRHS(bindingPower.Filter);
            }
            return {type: "FilterProjection", children: [left, right, condition]};
          case TOK_FLATTEN:
            var leftNode = {type: TOK_FLATTEN, children: [left]};
            var rightNode = this._parseProjectionRHS(bindingPower.Flatten);
            return {type: "Projection", children: [leftNode, rightNode]};
          case TOK_EQ:
          case TOK_NE:
          case TOK_GT:
          case TOK_GTE:
          case TOK_LT:
          case TOK_LTE:
            return this._parseComparator(left, tokenName);
          case TOK_LBRACKET:
            var token = this._lookaheadToken(0);
            if (token.type === TOK_NUMBER || token.type === TOK_COLON) {
                right = this._parseIndexExpression();
                return this._projectIfSlice(left, right);
            } else {
                this._match(TOK_STAR);
                this._match(TOK_RBRACKET);
                right = this._parseProjectionRHS(bindingPower.Star);
                return {type: "Projection", children: [left, right]};
            }
            break;
          default:
            this._errorToken(this._lookaheadToken(0));
        }
      },

      _match: function(tokenType) {
          if (this._lookahead(0) === tokenType) {
              this._advance();
          } else {
              var t = this._lookaheadToken(0);
              var error = new Error("Expected " + tokenType + ", got: " + t.type);
              error.name = "ParserError";
              throw error;
          }
      },

      _errorToken: function(token) {
          var error = new Error("Invalid token (" +
                                token.type + "): \"" +
                                token.value + "\"");
          error.name = "ParserError";
          throw error;
      },


      _parseIndexExpression: function() {
          if (this._lookahead(0) === TOK_COLON || this._lookahead(1) === TOK_COLON) {
              return this._parseSliceExpression();
          } else {
              var node = {
                  type: "Index",
                  value: this._lookaheadToken(0).value};
              this._advance();
              this._match(TOK_RBRACKET);
              return node;
          }
      },

      _projectIfSlice: function(left, right) {
          var indexExpr = {type: "IndexExpression", children: [left, right]};
          if (right.type === "Slice") {
              return {
                  type: "Projection",
                  children: [indexExpr, this._parseProjectionRHS(bindingPower.Star)]
              };
          } else {
              return indexExpr;
          }
      },

      _parseSliceExpression: function() {
          // [start:end:step] where each part is optional, as well as the last
          // colon.
          var parts = [null, null, null];
          var index = 0;
          var currentToken = this._lookahead(0);
          while (currentToken !== TOK_RBRACKET && index < 3) {
              if (currentToken === TOK_COLON) {
                  index++;
                  this._advance();
              } else if (currentToken === TOK_NUMBER) {
                  parts[index] = this._lookaheadToken(0).value;
                  this._advance();
              } else {
                  var t = this._lookahead(0);
                  var error = new Error("Syntax error, unexpected token: " +
                                        t.value + "(" + t.type + ")");
                  error.name = "Parsererror";
                  throw error;
              }
              currentToken = this._lookahead(0);
          }
          this._match(TOK_RBRACKET);
          return {
              type: "Slice",
              children: parts
          };
      },

      _parseComparator: function(left, comparator) {
        var right = this.expression(bindingPower[comparator]);
        return {type: "Comparator", name: comparator, children: [left, right]};
      },

      _parseDotRHS: function(rbp) {
          var lookahead = this._lookahead(0);
          var exprTokens = [TOK_UNQUOTEDIDENTIFIER, TOK_QUOTEDIDENTIFIER, TOK_STAR];
          if (exprTokens.indexOf(lookahead) >= 0) {
              return this.expression(rbp);
          } else if (lookahead === TOK_LBRACKET) {
              this._match(TOK_LBRACKET);
              return this._parseMultiselectList();
          } else if (lookahead === TOK_LBRACE) {
              this._match(TOK_LBRACE);
              return this._parseMultiselectHash();
          }
      },

      _parseProjectionRHS: function(rbp) {
          var right;
          if (bindingPower[this._lookahead(0)] < 10) {
              right = {type: "Identity"};
          } else if (this._lookahead(0) === TOK_LBRACKET) {
              right = this.expression(rbp);
          } else if (this._lookahead(0) === TOK_FILTER) {
              right = this.expression(rbp);
          } else if (this._lookahead(0) === TOK_DOT) {
              this._match(TOK_DOT);
              right = this._parseDotRHS(rbp);
          } else {
              var t = this._lookaheadToken(0);
              var error = new Error("Sytanx error, unexpected token: " +
                                    t.value + "(" + t.type + ")");
              error.name = "ParserError";
              throw error;
          }
          return right;
      },

      _parseMultiselectList: function() {
          var expressions = [];
          while (this._lookahead(0) !== TOK_RBRACKET) {
              var expression = this.expression(0);
              expressions.push(expression);
              if (this._lookahead(0) === TOK_COMMA) {
                  this._match(TOK_COMMA);
                  if (this._lookahead(0) === TOK_RBRACKET) {
                    throw new Error("Unexpected token Rbracket");
                  }
              }
          }
          this._match(TOK_RBRACKET);
          return {type: "MultiSelectList", children: expressions};
      },

      _parseMultiselectHash: function() {
        var pairs = [];
        var identifierTypes = [TOK_UNQUOTEDIDENTIFIER, TOK_QUOTEDIDENTIFIER];
        var keyToken, keyName, value, node;
        for (;;) {
          keyToken = this._lookaheadToken(0);
          if (identifierTypes.indexOf(keyToken.type) < 0) {
            throw new Error("Expecting an identifier token, got: " +
                            keyToken.type);
          }
          keyName = keyToken.value;
          this._advance();
          this._match(TOK_COLON);
          value = this.expression(0);
          node = {type: "KeyValuePair", name: keyName, value: value};
          pairs.push(node);
          if (this._lookahead(0) === TOK_COMMA) {
            this._match(TOK_COMMA);
          } else if (this._lookahead(0) === TOK_RBRACE) {
            this._match(TOK_RBRACE);
            break;
          }
        }
        return {type: "MultiSelectHash", children: pairs};
      }
  };


  function TreeInterpreter(runtime) {
    this.runtime = runtime;
  }

  TreeInterpreter.prototype = {
      search: function(node, value) {
          return this.visit(node, value);
      },

      visit: function(node, value) {
          var matched, current, result, first, second, field, left, right, collected, i;
          switch (node.type) {
            case "Field":
              if (value === null ) {
                  return null;
              } else if (isObject(value)) {
                  field = value[node.name];
                  if (field === undefined) {
                      return null;
                  } else {
                      return field;
                  }
              } else {
                return null;
              }
              break;
            case "Subexpression":
              result = this.visit(node.children[0], value);
              for (i = 1; i < node.children.length; i++) {
                  result = this.visit(node.children[1], result);
                  if (result === null) {
                      return null;
                  }
              }
              return result;
            case "IndexExpression":
              left = this.visit(node.children[0], value);
              right = this.visit(node.children[1], left);
              return right;
            case "Index":
              if (!isArray(value)) {
                return null;
              }
              var index = node.value;
              if (index < 0) {
                index = value.length + index;
              }
              result = value[index];
              if (result === undefined) {
                result = null;
              }
              return result;
            case "Slice":
              if (!isArray(value)) {
                return null;
              }
              var sliceParams = node.children.slice(0);
              var computed = this.computeSliceParams(value.length, sliceParams);
              var start = computed[0];
              var stop = computed[1];
              var step = computed[2];
              result = [];
              if (step > 0) {
                  for (i = start; i < stop; i += step) {
                      result.push(value[i]);
                  }
              } else {
                  for (i = start; i > stop; i += step) {
                      result.push(value[i]);
                  }
              }
              return result;
            case "Projection":
              // Evaluate left child.
              var base = this.visit(node.children[0], value);
              if (!isArray(base)) {
                return null;
              }
              collected = [];
              for (i = 0; i < base.length; i++) {
                current = this.visit(node.children[1], base[i]);
                if (current !== null) {
                  collected.push(current);
                }
              }
              return collected;
            case "ValueProjection":
              // Evaluate left child.
              base = this.visit(node.children[0], value);
              if (!isObject(base)) {
                return null;
              }
              collected = [];
              var values = objValues(base);
              for (i = 0; i < values.length; i++) {
                current = this.visit(node.children[1], values[i]);
                if (current !== null) {
                  collected.push(current);
                }
              }
              return collected;
            case "FilterProjection":
              base = this.visit(node.children[0], value);
              if (!isArray(base)) {
                return null;
              }
              var filtered = [];
              var finalResults = [];
              for (i = 0; i < base.length; i++) {
                matched = this.visit(node.children[2], base[i]);
                if (!isFalse(matched)) {
                  filtered.push(base[i]);
                }
              }
              for (var j = 0; j < filtered.length; j++) {
                current = this.visit(node.children[1], filtered[j]);
                if (current !== null) {
                  finalResults.push(current);
                }
              }
              return finalResults;
            case "Comparator":
              first = this.visit(node.children[0], value);
              second = this.visit(node.children[1], value);
              switch(node.name) {
                case TOK_EQ:
                  result = strictDeepEqual(first, second);
                  break;
                case TOK_NE:
                  result = !strictDeepEqual(first, second);
                  break;
                case TOK_GT:
                  result = first > second;
                  break;
                case TOK_GTE:
                  result = first >= second;
                  break;
                case TOK_LT:
                  result = first < second;
                  break;
                case TOK_LTE:
                  result = first <= second;
                  break;
                default:
                  throw new Error("Unknown comparator: " + node.name);
              }
              return result;
            case TOK_FLATTEN:
              var original = this.visit(node.children[0], value);
              if (!isArray(original)) {
                return null;
              }
              var merged = [];
              for (i = 0; i < original.length; i++) {
                current = original[i];
                if (isArray(current)) {
                  merged.push.apply(merged, current);
                } else {
                  merged.push(current);
                }
              }
              return merged;
            case "Identity":
              return value;
            case "MultiSelectList":
              if (value === null) {
                return null;
              }
              collected = [];
              for (i = 0; i < node.children.length; i++) {
                  collected.push(this.visit(node.children[i], value));
              }
              return collected;
            case "MultiSelectHash":
              if (value === null) {
                return null;
              }
              collected = {};
              var child;
              for (i = 0; i < node.children.length; i++) {
                child = node.children[i];
                collected[child.name] = this.visit(child.value, value);
              }
              return collected;
            case "OrExpression":
              matched = this.visit(node.children[0], value);
              if (isFalse(matched)) {
                  matched = this.visit(node.children[1], value);
              }
              return matched;
            case "AndExpression":
              first = this.visit(node.children[0], value);

              if (isFalse(first) === true) {
                return first;
              }
              return this.visit(node.children[1], value);
            case "NotExpression":
              first = this.visit(node.children[0], value);
              return isFalse(first);
            case "Literal":
              return node.value;
            case TOK_PIPE:
              left = this.visit(node.children[0], value);
              return this.visit(node.children[1], left);
            case TOK_CURRENT:
              return value;
            case "Function":
              var resolvedArgs = [];
              for (i = 0; i < node.children.length; i++) {
                  resolvedArgs.push(this.visit(node.children[i], value));
              }
              return this.runtime.callFunction(node.name, resolvedArgs);
            case "ExpressionReference":
              var refNode = node.children[0];
              // Tag the node with a specific attribute so the type
              // checker verify the type.
              refNode.jmespathType = TOK_EXPREF;
              return refNode;
            default:
              throw new Error("Unknown node type: " + node.type);
          }
      },

      computeSliceParams: function(arrayLength, sliceParams) {
        var start = sliceParams[0];
        var stop = sliceParams[1];
        var step = sliceParams[2];
        var computed = [null, null, null];
        if (step === null) {
          step = 1;
        } else if (step === 0) {
          var error = new Error("Invalid slice, step cannot be 0");
          error.name = "RuntimeError";
          throw error;
        }
        var stepValueNegative = step < 0 ? true : false;

        if (start === null) {
            start = stepValueNegative ? arrayLength - 1 : 0;
        } else {
            start = this.capSliceRange(arrayLength, start, step);
        }

        if (stop === null) {
            stop = stepValueNegative ? -1 : arrayLength;
        } else {
            stop = this.capSliceRange(arrayLength, stop, step);
        }
        computed[0] = start;
        computed[1] = stop;
        computed[2] = step;
        return computed;
      },

      capSliceRange: function(arrayLength, actualValue, step) {
          if (actualValue < 0) {
              actualValue += arrayLength;
              if (actualValue < 0) {
                  actualValue = step < 0 ? -1 : 0;
              }
          } else if (actualValue >= arrayLength) {
              actualValue = step < 0 ? arrayLength - 1 : arrayLength;
          }
          return actualValue;
      }

  };

  function Runtime(interpreter) {
    this._interpreter = interpreter;
    this.functionTable = {
        // name: [function, <signature>]
        // The <signature> can be:
        //
        // {
        //   args: [[type1, type2], [type1, type2]],
        //   variadic: true|false
        // }
        //
        // Each arg in the arg list is a list of valid types
        // (if the function is overloaded and supports multiple
        // types.  If the type is "any" then no type checking
        // occurs on the argument.  Variadic is optional
        // and if not provided is assumed to be false.
        abs: {_func: this._functionAbs, _signature: [{types: [TYPE_NUMBER]}]},
        avg: {_func: this._functionAvg, _signature: [{types: [TYPE_ARRAY_NUMBER]}]},
        ceil: {_func: this._functionCeil, _signature: [{types: [TYPE_NUMBER]}]},
        contains: {
            _func: this._functionContains,
            _signature: [{types: [TYPE_STRING, TYPE_ARRAY]},
                        {types: [TYPE_ANY]}]},
        "ends_with": {
            _func: this._functionEndsWith,
            _signature: [{types: [TYPE_STRING]}, {types: [TYPE_STRING]}]},
        floor: {_func: this._functionFloor, _signature: [{types: [TYPE_NUMBER]}]},
        length: {
            _func: this._functionLength,
            _signature: [{types: [TYPE_STRING, TYPE_ARRAY, TYPE_OBJECT]}]},
        map: {
            _func: this._functionMap,
            _signature: [{types: [TYPE_EXPREF]}, {types: [TYPE_ARRAY]}]},
        max: {
            _func: this._functionMax,
            _signature: [{types: [TYPE_ARRAY_NUMBER, TYPE_ARRAY_STRING]}]},
        "merge": {
            _func: this._functionMerge,
            _signature: [{types: [TYPE_OBJECT], variadic: true}]
        },
        "max_by": {
          _func: this._functionMaxBy,
          _signature: [{types: [TYPE_ARRAY]}, {types: [TYPE_EXPREF]}]
        },
        sum: {_func: this._functionSum, _signature: [{types: [TYPE_ARRAY_NUMBER]}]},
        "starts_with": {
            _func: this._functionStartsWith,
            _signature: [{types: [TYPE_STRING]}, {types: [TYPE_STRING]}]},
        min: {
            _func: this._functionMin,
            _signature: [{types: [TYPE_ARRAY_NUMBER, TYPE_ARRAY_STRING]}]},
        "min_by": {
          _func: this._functionMinBy,
          _signature: [{types: [TYPE_ARRAY]}, {types: [TYPE_EXPREF]}]
        },
        type: {_func: this._functionType, _signature: [{types: [TYPE_ANY]}]},
        keys: {_func: this._functionKeys, _signature: [{types: [TYPE_OBJECT]}]},
        values: {_func: this._functionValues, _signature: [{types: [TYPE_OBJECT]}]},
        sort: {_func: this._functionSort, _signature: [{types: [TYPE_ARRAY_STRING, TYPE_ARRAY_NUMBER]}]},
        "sort_by": {
          _func: this._functionSortBy,
          _signature: [{types: [TYPE_ARRAY]}, {types: [TYPE_EXPREF]}]
        },
        join: {
            _func: this._functionJoin,
            _signature: [
                {types: [TYPE_STRING]},
                {types: [TYPE_ARRAY_STRING]}
            ]
        },
        reverse: {
            _func: this._functionReverse,
            _signature: [{types: [TYPE_STRING, TYPE_ARRAY]}]},
        "to_array": {_func: this._functionToArray, _signature: [{types: [TYPE_ANY]}]},
        "to_string": {_func: this._functionToString, _signature: [{types: [TYPE_ANY]}]},
        "to_number": {_func: this._functionToNumber, _signature: [{types: [TYPE_ANY]}]},
        "not_null": {
            _func: this._functionNotNull,
            _signature: [{types: [TYPE_ANY], variadic: true}]
        }
    };
  }

  Runtime.prototype = {
    callFunction: function(name, resolvedArgs) {
      var functionEntry = this.functionTable[name];
      if (functionEntry === undefined) {
          throw new Error("Unknown function: " + name + "()");
      }
      this._validateArgs(name, resolvedArgs, functionEntry._signature);
      return functionEntry._func.call(this, resolvedArgs);
    },

    _validateArgs: function(name, args, signature) {
        // Validating the args requires validating
        // the correct arity and the correct type of each arg.
        // If the last argument is declared as variadic, then we need
        // a minimum number of args to be required.  Otherwise it has to
        // be an exact amount.
        var pluralized;
        if (signature[signature.length - 1].variadic) {
            if (args.length < signature.length) {
                pluralized = signature.length === 1 ? " argument" : " arguments";
                throw new Error("ArgumentError: " + name + "() " +
                                "takes at least" + signature.length + pluralized +
                                " but received " + args.length);
            }
        } else if (args.length !== signature.length) {
            pluralized = signature.length === 1 ? " argument" : " arguments";
            throw new Error("ArgumentError: " + name + "() " +
                            "takes " + signature.length + pluralized +
                            " but received " + args.length);
        }
        var currentSpec;
        var actualType;
        var typeMatched;
        for (var i = 0; i < signature.length; i++) {
            typeMatched = false;
            currentSpec = signature[i].types;
            actualType = this._getTypeName(args[i]);
            for (var j = 0; j < currentSpec.length; j++) {
                if (this._typeMatches(actualType, currentSpec[j], args[i])) {
                    typeMatched = true;
                    break;
                }
            }
            if (!typeMatched) {
                throw new Error("TypeError: " + name + "() " +
                                "expected argument " + (i + 1) +
                                " to be type " + currentSpec +
                                " but received type " + actualType +
                                " instead.");
            }
        }
    },

    _typeMatches: function(actual, expected, argValue) {
        if (expected === TYPE_ANY) {
            return true;
        }
        if (expected === TYPE_ARRAY_STRING ||
            expected === TYPE_ARRAY_NUMBER ||
            expected === TYPE_ARRAY) {
            // The expected type can either just be array,
            // or it can require a specific subtype (array of numbers).
            //
            // The simplest case is if "array" with no subtype is specified.
            if (expected === TYPE_ARRAY) {
                return actual === TYPE_ARRAY;
            } else if (actual === TYPE_ARRAY) {
                // Otherwise we need to check subtypes.
                // I think this has potential to be improved.
                var subtype;
                if (expected === TYPE_ARRAY_NUMBER) {
                  subtype = TYPE_NUMBER;
                } else if (expected === TYPE_ARRAY_STRING) {
                  subtype = TYPE_STRING;
                }
                for (var i = 0; i < argValue.length; i++) {
                    if (!this._typeMatches(
                            this._getTypeName(argValue[i]), subtype,
                                             argValue[i])) {
                        return false;
                    }
                }
                return true;
            }
        } else {
            return actual === expected;
        }
    },
    _getTypeName: function(obj) {
        switch (Object.prototype.toString.call(obj)) {
            case "[object String]":
              return TYPE_STRING;
            case "[object Number]":
              return TYPE_NUMBER;
            case "[object Array]":
              return TYPE_ARRAY;
            case "[object Boolean]":
              return TYPE_BOOLEAN;
            case "[object Null]":
              return TYPE_NULL;
            case "[object Object]":
              // Check if it's an expref.  If it has, it's been
              // tagged with a jmespathType attr of 'Expref';
              if (obj.jmespathType === TOK_EXPREF) {
                return TYPE_EXPREF;
              } else {
                return TYPE_OBJECT;
              }
        }
    },

    _functionStartsWith: function(resolvedArgs) {
        return resolvedArgs[0].lastIndexOf(resolvedArgs[1]) === 0;
    },

    _functionEndsWith: function(resolvedArgs) {
        var searchStr = resolvedArgs[0];
        var suffix = resolvedArgs[1];
        return searchStr.indexOf(suffix, searchStr.length - suffix.length) !== -1;
    },

    _functionReverse: function(resolvedArgs) {
        var typeName = this._getTypeName(resolvedArgs[0]);
        if (typeName === TYPE_STRING) {
          var originalStr = resolvedArgs[0];
          var reversedStr = "";
          for (var i = originalStr.length - 1; i >= 0; i--) {
              reversedStr += originalStr[i];
          }
          return reversedStr;
        } else {
          var reversedArray = resolvedArgs[0].slice(0);
          reversedArray.reverse();
          return reversedArray;
        }
    },

    _functionAbs: function(resolvedArgs) {
      return Math.abs(resolvedArgs[0]);
    },

    _functionCeil: function(resolvedArgs) {
        return Math.ceil(resolvedArgs[0]);
    },

    _functionAvg: function(resolvedArgs) {
        var sum = 0;
        var inputArray = resolvedArgs[0];
        for (var i = 0; i < inputArray.length; i++) {
            sum += inputArray[i];
        }
        return sum / inputArray.length;
    },

    _functionContains: function(resolvedArgs) {
        return resolvedArgs[0].indexOf(resolvedArgs[1]) >= 0;
    },

    _functionFloor: function(resolvedArgs) {
        return Math.floor(resolvedArgs[0]);
    },

    _functionLength: function(resolvedArgs) {
       if (!isObject(resolvedArgs[0])) {
         return resolvedArgs[0].length;
       } else {
         // As far as I can tell, there's no way to get the length
         // of an object without O(n) iteration through the object.
         return Object.keys(resolvedArgs[0]).length;
       }
    },

    _functionMap: function(resolvedArgs) {
      var mapped = [];
      var interpreter = this._interpreter;
      var exprefNode = resolvedArgs[0];
      var elements = resolvedArgs[1];
      for (var i = 0; i < elements.length; i++) {
          mapped.push(interpreter.visit(exprefNode, elements[i]));
      }
      return mapped;
    },

    _functionMerge: function(resolvedArgs) {
      var merged = {};
      for (var i = 0; i < resolvedArgs.length; i++) {
        var current = resolvedArgs[i];
        for (var key in current) {
          merged[key] = current[key];
        }
      }
      return merged;
    },

    _functionMax: function(resolvedArgs) {
      if (resolvedArgs[0].length > 0) {
        var typeName = this._getTypeName(resolvedArgs[0][0]);
        if (typeName === TYPE_NUMBER) {
          return Math.max.apply(Math, resolvedArgs[0]);
        } else {
          var elements = resolvedArgs[0];
          var maxElement = elements[0];
          for (var i = 1; i < elements.length; i++) {
              if (maxElement.localeCompare(elements[i]) < 0) {
                  maxElement = elements[i];
              }
          }
          return maxElement;
        }
      } else {
          return null;
      }
    },

    _functionMin: function(resolvedArgs) {
      if (resolvedArgs[0].length > 0) {
        var typeName = this._getTypeName(resolvedArgs[0][0]);
        if (typeName === TYPE_NUMBER) {
          return Math.min.apply(Math, resolvedArgs[0]);
        } else {
          var elements = resolvedArgs[0];
          var minElement = elements[0];
          for (var i = 1; i < elements.length; i++) {
              if (elements[i].localeCompare(minElement) < 0) {
                  minElement = elements[i];
              }
          }
          return minElement;
        }
      } else {
        return null;
      }
    },

    _functionSum: function(resolvedArgs) {
      var sum = 0;
      var listToSum = resolvedArgs[0];
      for (var i = 0; i < listToSum.length; i++) {
        sum += listToSum[i];
      }
      return sum;
    },

    _functionType: function(resolvedArgs) {
        switch (this._getTypeName(resolvedArgs[0])) {
          case TYPE_NUMBER:
            return "number";
          case TYPE_STRING:
            return "string";
          case TYPE_ARRAY:
            return "array";
          case TYPE_OBJECT:
            return "object";
          case TYPE_BOOLEAN:
            return "boolean";
          case TYPE_EXPREF:
            return "expref";
          case TYPE_NULL:
            return "null";
        }
    },

    _functionKeys: function(resolvedArgs) {
        return Object.keys(resolvedArgs[0]);
    },

    _functionValues: function(resolvedArgs) {
        var obj = resolvedArgs[0];
        var keys = Object.keys(obj);
        var values = [];
        for (var i = 0; i < keys.length; i++) {
            values.push(obj[keys[i]]);
        }
        return values;
    },

    _functionJoin: function(resolvedArgs) {
        var joinChar = resolvedArgs[0];
        var listJoin = resolvedArgs[1];
        return listJoin.join(joinChar);
    },

    _functionToArray: function(resolvedArgs) {
        if (this._getTypeName(resolvedArgs[0]) === TYPE_ARRAY) {
            return resolvedArgs[0];
        } else {
            return [resolvedArgs[0]];
        }
    },

    _functionToString: function(resolvedArgs) {
        if (this._getTypeName(resolvedArgs[0]) === TYPE_STRING) {
            return resolvedArgs[0];
        } else {
            return JSON.stringify(resolvedArgs[0]);
        }
    },

    _functionToNumber: function(resolvedArgs) {
        var typeName = this._getTypeName(resolvedArgs[0]);
        var convertedValue;
        if (typeName === TYPE_NUMBER) {
            return resolvedArgs[0];
        } else if (typeName === TYPE_STRING) {
            convertedValue = +resolvedArgs[0];
            if (!isNaN(convertedValue)) {
                return convertedValue;
            }
        }
        return null;
    },

    _functionNotNull: function(resolvedArgs) {
        for (var i = 0; i < resolvedArgs.length; i++) {
            if (this._getTypeName(resolvedArgs[i]) !== TYPE_NULL) {
                return resolvedArgs[i];
            }
        }
        return null;
    },

    _functionSort: function(resolvedArgs) {
        var sortedArray = resolvedArgs[0].slice(0);
        sortedArray.sort();
        return sortedArray;
    },

    _functionSortBy: function(resolvedArgs) {
        var sortedArray = resolvedArgs[0].slice(0);
        if (sortedArray.length === 0) {
            return sortedArray;
        }
        var interpreter = this._interpreter;
        var exprefNode = resolvedArgs[1];
        var requiredType = this._getTypeName(
            interpreter.visit(exprefNode, sortedArray[0]));
        if ([TYPE_NUMBER, TYPE_STRING].indexOf(requiredType) < 0) {
            throw new Error("TypeError");
        }
        var that = this;
        // In order to get a stable sort out of an unstable
        // sort algorithm, we decorate/sort/undecorate (DSU)
        // by creating a new list of [index, element] pairs.
        // In the cmp function, if the evaluated elements are
        // equal, then the index will be used as the tiebreaker.
        // After the decorated list has been sorted, it will be
        // undecorated to extract the original elements.
        var decorated = [];
        for (var i = 0; i < sortedArray.length; i++) {
          decorated.push([i, sortedArray[i]]);
        }
        decorated.sort(function(a, b) {
          var exprA = interpreter.visit(exprefNode, a[1]);
          var exprB = interpreter.visit(exprefNode, b[1]);
          if (that._getTypeName(exprA) !== requiredType) {
              throw new Error(
                  "TypeError: expected " + requiredType + ", received " +
                  that._getTypeName(exprA));
          } else if (that._getTypeName(exprB) !== requiredType) {
              throw new Error(
                  "TypeError: expected " + requiredType + ", received " +
                  that._getTypeName(exprB));
          }
          if (exprA > exprB) {
            return 1;
          } else if (exprA < exprB) {
            return -1;
          } else {
            // If they're equal compare the items by their
            // order to maintain relative order of equal keys
            // (i.e. to get a stable sort).
            return a[0] - b[0];
          }
        });
        // Undecorate: extract out the original list elements.
        for (var j = 0; j < decorated.length; j++) {
          sortedArray[j] = decorated[j][1];
        }
        return sortedArray;
    },

    _functionMaxBy: function(resolvedArgs) {
      var exprefNode = resolvedArgs[1];
      var resolvedArray = resolvedArgs[0];
      var keyFunction = this.createKeyFunction(exprefNode, [TYPE_NUMBER, TYPE_STRING]);
      var maxNumber = -Infinity;
      var maxRecord;
      var current;
      for (var i = 0; i < resolvedArray.length; i++) {
        current = keyFunction(resolvedArray[i]);
        if (current > maxNumber) {
          maxNumber = current;
          maxRecord = resolvedArray[i];
        }
      }
      return maxRecord;
    },

    _functionMinBy: function(resolvedArgs) {
      var exprefNode = resolvedArgs[1];
      var resolvedArray = resolvedArgs[0];
      var keyFunction = this.createKeyFunction(exprefNode, [TYPE_NUMBER, TYPE_STRING]);
      var minNumber = Infinity;
      var minRecord;
      var current;
      for (var i = 0; i < resolvedArray.length; i++) {
        current = keyFunction(resolvedArray[i]);
        if (current < minNumber) {
          minNumber = current;
          minRecord = resolvedArray[i];
        }
      }
      return minRecord;
    },

    createKeyFunction: function(exprefNode, allowedTypes) {
      var that = this;
      var interpreter = this._interpreter;
      var keyFunc = function(x) {
        var current = interpreter.visit(exprefNode, x);
        if (allowedTypes.indexOf(that._getTypeName(current)) < 0) {
          var msg = "TypeError: expected one of " + allowedTypes +
                    ", received " + that._getTypeName(current);
          throw new Error(msg);
        }
        return current;
      };
      return keyFunc;
    }

  };

  function compile(stream) {
    var parser = new Parser();
    var ast = parser.parse(stream);
    return ast;
  }

  function tokenize(stream) {
      var lexer = new Lexer();
      return lexer.tokenize(stream);
  }

  function search(data, expression) {
      var parser = new Parser();
      // This needs to be improved.  Both the interpreter and runtime depend on
      // each other.  The runtime needs the interpreter to support exprefs.
      // There's likely a clean way to avoid the cyclic dependency.
      var runtime = new Runtime();
      var interpreter = new TreeInterpreter(runtime);
      runtime._interpreter = interpreter;
      var node = parser.parse(expression);
      return interpreter.search(node, data);
  }

  exports.tokenize = tokenize;
  exports.compile = compile;
  exports.search = search;
  exports.strictDeepEqual = strictDeepEqual;
})( false ? 0 : exports);


/***/ }),

/***/ 52973:
/***/ ((module) => {

const CODES = {
  JOSEAlgNotWhitelisted: 'ERR_JOSE_ALG_NOT_WHITELISTED',
  JOSECritNotUnderstood: 'ERR_JOSE_CRIT_NOT_UNDERSTOOD',
  JOSEInvalidEncoding: 'ERR_JOSE_INVALID_ENCODING',
  JOSEMultiError: 'ERR_JOSE_MULTIPLE_ERRORS',
  JOSENotSupported: 'ERR_JOSE_NOT_SUPPORTED',
  JWEDecryptionFailed: 'ERR_JWE_DECRYPTION_FAILED',
  JWEInvalid: 'ERR_JWE_INVALID',
  JWKImportFailed: 'ERR_JWK_IMPORT_FAILED',
  JWKInvalid: 'ERR_JWK_INVALID',
  JWKKeySupport: 'ERR_JWK_KEY_SUPPORT',
  JWKSNoMatchingKey: 'ERR_JWKS_NO_MATCHING_KEY',
  JWSInvalid: 'ERR_JWS_INVALID',
  JWSVerificationFailed: 'ERR_JWS_VERIFICATION_FAILED',
  JWTClaimInvalid: 'ERR_JWT_CLAIM_INVALID',
  JWTExpired: 'ERR_JWT_EXPIRED',
  JWTMalformed: 'ERR_JWT_MALFORMED'
}

const DEFAULT_MESSAGES = {
  JWEDecryptionFailed: 'decryption operation failed',
  JWEInvalid: 'JWE invalid',
  JWKSNoMatchingKey: 'no matching key found in the KeyStore',
  JWSInvalid: 'JWS invalid',
  JWSVerificationFailed: 'signature verification failed'
}

class JOSEError extends Error {
  constructor (message) {
    super(message)
    if (message === undefined) {
      this.message = DEFAULT_MESSAGES[this.constructor.name]
    }
    this.name = this.constructor.name
    this.code = CODES[this.constructor.name]
    Error.captureStackTrace(this, this.constructor)
  }
}

const isMulti = e => e instanceof JOSEMultiError
class JOSEMultiError extends JOSEError {
  constructor (errors) {
    super()
    let i
    while ((i = errors.findIndex(isMulti)) && i !== -1) {
      errors.splice(i, 1, ...errors[i])
    }
    Object.defineProperty(this, 'errors', { value: errors })
  }

  * [Symbol.iterator] () {
    for (const error of this.errors) {
      yield error
    }
  }
}
module.exports.JOSEError = JOSEError

module.exports.JOSEAlgNotWhitelisted = class JOSEAlgNotWhitelisted extends JOSEError {}
module.exports.JOSECritNotUnderstood = class JOSECritNotUnderstood extends JOSEError {}
module.exports.JOSEInvalidEncoding = class JOSEInvalidEncoding extends JOSEError {}
module.exports.JOSEMultiError = JOSEMultiError
module.exports.JOSENotSupported = class JOSENotSupported extends JOSEError {}

module.exports.JWEDecryptionFailed = class JWEDecryptionFailed extends JOSEError {}
module.exports.JWEInvalid = class JWEInvalid extends JOSEError {}

module.exports.JWKImportFailed = class JWKImportFailed extends JOSEError {}
module.exports.JWKInvalid = class JWKInvalid extends JOSEError {}
module.exports.JWKKeySupport = class JWKKeySupport extends JOSEError {}

module.exports.JWKSNoMatchingKey = class JWKSNoMatchingKey extends JOSEError {}

module.exports.JWSInvalid = class JWSInvalid extends JOSEError {}
module.exports.JWSVerificationFailed = class JWSVerificationFailed extends JOSEError {}

class JWTClaimInvalid extends JOSEError {
  constructor (message, claim = 'unspecified', reason = 'unspecified') {
    super(message)
    this.claim = claim
    this.reason = reason
  }
}
module.exports.JWTClaimInvalid = JWTClaimInvalid
module.exports.JWTExpired = class JWTExpired extends JWTClaimInvalid {}
module.exports.JWTMalformed = class JWTMalformed extends JOSEError {}


/***/ }),

/***/ 68207:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const oids = __webpack_require__(72967)

module.exports = function () {
  this.seq().obj(
    this.key('algorithm').objid(oids),
    this.key('parameters').optional().choice({ namedCurve: this.objid(oids), null: this.null_() })
  )
}


/***/ }),

/***/ 37707:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const oids = __webpack_require__(72967)

module.exports = function () {
  this.seq().obj(
    this.key('version').int(),
    this.key('privateKey').octstr(),
    this.key('parameters').explicit(0).optional().choice({ namedCurve: this.objid(oids) }),
    this.key('publicKey').explicit(1).optional().bitstr()
  )
}


/***/ }),

/***/ 16416:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const asn1 = __webpack_require__(39436)

const types = new Map()

const AlgorithmIdentifier = asn1.define('AlgorithmIdentifier', __webpack_require__(68207))
types.set('AlgorithmIdentifier', AlgorithmIdentifier)

const ECPrivateKey = asn1.define('ECPrivateKey', __webpack_require__(37707))
types.set('ECPrivateKey', ECPrivateKey)

const PrivateKeyInfo = asn1.define('PrivateKeyInfo', __webpack_require__(58570)(AlgorithmIdentifier))
types.set('PrivateKeyInfo', PrivateKeyInfo)

const PublicKeyInfo = asn1.define('PublicKeyInfo', __webpack_require__(5641)(AlgorithmIdentifier))
types.set('PublicKeyInfo', PublicKeyInfo)

const PrivateKey = asn1.define('PrivateKey', __webpack_require__(62624))
types.set('PrivateKey', PrivateKey)

const OneAsymmetricKey = asn1.define('OneAsymmetricKey', __webpack_require__(30424)(AlgorithmIdentifier, PrivateKey))
types.set('OneAsymmetricKey', OneAsymmetricKey)

const RSAPrivateKey = asn1.define('RSAPrivateKey', __webpack_require__(29822))
types.set('RSAPrivateKey', RSAPrivateKey)

const RSAPublicKey = asn1.define('RSAPublicKey', __webpack_require__(39542))
types.set('RSAPublicKey', RSAPublicKey)

module.exports = types


/***/ }),

/***/ 72967:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { name: secp256k1 } = __webpack_require__(2044)

const oids = {
  '1 2 840 10045 3 1 7': 'P-256',
  '1 3 132 0 10': secp256k1,
  '1 3 132 0 34': 'P-384',
  '1 3 132 0 35': 'P-521',
  '1 2 840 10045 2 1': 'ecPublicKey',
  '1 2 840 113549 1 1 1': 'rsaEncryption',
  '1 3 101 110': 'X25519',
  '1 3 101 111': 'X448',
  '1 3 101 112': 'Ed25519',
  '1 3 101 113': 'Ed448'
}

module.exports = oids


/***/ }),

/***/ 30424:
/***/ ((module) => {

module.exports = (AlgorithmIdentifier, PrivateKey) => function () {
  this.seq().obj(
    this.key('version').int(),
    this.key('algorithm').use(AlgorithmIdentifier),
    this.key('privateKey').use(PrivateKey)
  )
}


/***/ }),

/***/ 62624:
/***/ ((module) => {

module.exports = function () {
  this.octstr().contains().obj(
    this.key('privateKey').octstr()
  )
}


/***/ }),

/***/ 58570:
/***/ ((module) => {

module.exports = (AlgorithmIdentifier) => function () {
  this.seq().obj(
    this.key('version').int(),
    this.key('algorithm').use(AlgorithmIdentifier),
    this.key('privateKey').octstr()
  )
}


/***/ }),

/***/ 5641:
/***/ ((module) => {

module.exports = AlgorithmIdentifier => function () {
  this.seq().obj(
    this.key('algorithm').use(AlgorithmIdentifier),
    this.key('publicKey').bitstr()
  )
}


/***/ }),

/***/ 29822:
/***/ ((module) => {

module.exports = function () {
  this.seq().obj(
    this.key('version').int({ 0: 'two-prime', 1: 'multi' }),
    this.key('n').int(),
    this.key('e').int(),
    this.key('d').int(),
    this.key('p').int(),
    this.key('q').int(),
    this.key('dp').int(),
    this.key('dq').int(),
    this.key('qi').int()
  )
}


/***/ }),

/***/ 39542:
/***/ ((module) => {

module.exports = function () {
  this.seq().obj(
    this.key('n').int(),
    this.key('e').int()
  )
}


/***/ }),

/***/ 73385:
/***/ ((module) => {

/* global BigInt */

const fromBase64 = (base64) => {
  return base64.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_')
}

const encode = (input, encoding = 'utf8') => {
  return fromBase64(Buffer.from(input, encoding).toString('base64'))
}

const encodeBuffer = (buf) => {
  return fromBase64(buf.toString('base64'))
}

const decodeToBuffer = (input) => {
  return Buffer.from(input, 'base64')
}

const decode = (input, encoding = 'utf8') => {
  return decodeToBuffer(input).toString(encoding)
}

const b64uJSON = {
  encode: (input) => {
    return encode(JSON.stringify(input))
  },
  decode: (input, encoding = 'utf8') => {
    return JSON.parse(decode(input, encoding))
  }
}

b64uJSON.decode.try = (input, encoding = 'utf8') => {
  try {
    return b64uJSON.decode(input, encoding)
  } catch (err) {
    return decode(input, encoding)
  }
}

const bnToBuf = (bn) => {
  let hex = BigInt(bn).toString(16)
  if (hex.length % 2) {
    hex = `0${hex}`
  }

  const len = hex.length / 2
  const u8 = new Uint8Array(len)

  let i = 0
  let j = 0
  while (i < len) {
    u8[i] = parseInt(hex.slice(j, j + 2), 16)
    i += 1
    j += 2
  }

  return u8
}

const encodeBigInt = (bn) => encodeBuffer(Buffer.from(bnToBuf(bn)))

module.exports.decode = decode
module.exports.decodeToBuffer = decodeToBuffer
module.exports.encode = encode
module.exports.encodeBuffer = encodeBuffer
module.exports.JSON = b64uJSON
module.exports.encodeBigInt = encodeBigInt


/***/ }),

/***/ 15010:
/***/ ((module) => {

module.exports.KEYOBJECT = Symbol('KEYOBJECT')
module.exports.PRIVATE_MEMBERS = Symbol('PRIVATE_MEMBERS')
module.exports.PUBLIC_MEMBERS = Symbol('PUBLIC_MEMBERS')
module.exports.THUMBPRINT_MATERIAL = Symbol('THUMBPRINT_MATERIAL')
module.exports.JWK_MEMBERS = Symbol('JWK_MEMBERS')
module.exports.KEY_MANAGEMENT_ENCRYPT = Symbol('KEY_MANAGEMENT_ENCRYPT')
module.exports.KEY_MANAGEMENT_DECRYPT = Symbol('KEY_MANAGEMENT_DECRYPT')

const USES_MAPPING = {
  sig: new Set(['sign', 'verify']),
  enc: new Set(['encrypt', 'decrypt', 'wrapKey', 'unwrapKey', 'deriveKey'])
}
const OPS = new Set([...USES_MAPPING.sig, ...USES_MAPPING.enc])
const USES = new Set(Object.keys(USES_MAPPING))

module.exports.USES_MAPPING = USES_MAPPING
module.exports.OPS = OPS
module.exports.USES = USES


/***/ }),

/***/ 43653:
/***/ ((module) => {

module.exports = obj => JSON.parse(JSON.stringify(obj))


/***/ }),

/***/ 14451:
/***/ ((module) => {

const MAX_OCTET = 0x80
const CLASS_UNIVERSAL = 0
const PRIMITIVE_BIT = 0x20
const TAG_SEQ = 0x10
const TAG_INT = 0x02
const ENCODED_TAG_SEQ = (TAG_SEQ | PRIMITIVE_BIT) | (CLASS_UNIVERSAL << 6)
const ENCODED_TAG_INT = TAG_INT | (CLASS_UNIVERSAL << 6)

const getParamSize = keySize => ((keySize / 8) | 0) + (keySize % 8 === 0 ? 0 : 1)

const paramBytesForAlg = {
  ES256: getParamSize(256),
  ES256K: getParamSize(256),
  ES384: getParamSize(384),
  ES512: getParamSize(521)
}

const countPadding = (buf, start, stop) => {
  let padding = 0
  while (start + padding < stop && buf[start + padding] === 0) {
    ++padding
  }

  const needsSign = buf[start + padding] >= MAX_OCTET
  if (needsSign) {
    --padding
  }

  return padding
}

module.exports.derToJose = (signature, alg) => {
  if (!Buffer.isBuffer(signature)) {
    throw new TypeError('ECDSA signature must be a Buffer')
  }

  if (!paramBytesForAlg[alg]) {
    throw new Error(`Unknown algorithm "${alg}"`)
  }

  const paramBytes = paramBytesForAlg[alg]

  // the DER encoded param should at most be the param size, plus a padding
  // zero, since due to being a signed integer
  const maxEncodedParamLength = paramBytes + 1

  const inputLength = signature.length

  let offset = 0
  if (signature[offset++] !== ENCODED_TAG_SEQ) {
    throw new Error('Could not find expected "seq"')
  }

  let seqLength = signature[offset++]
  if (seqLength === (MAX_OCTET | 1)) {
    seqLength = signature[offset++]
  }

  if (inputLength - offset < seqLength) {
    throw new Error(`"seq" specified length of ${seqLength}", only ${inputLength - offset}" remaining`)
  }

  if (signature[offset++] !== ENCODED_TAG_INT) {
    throw new Error('Could not find expected "int" for "r"')
  }

  const rLength = signature[offset++]

  if (inputLength - offset - 2 < rLength) {
    throw new Error(`"r" specified length of "${rLength}", only "${inputLength - offset - 2}" available`)
  }

  if (maxEncodedParamLength < rLength) {
    throw new Error(`"r" specified length of "${rLength}", max of "${maxEncodedParamLength}" is acceptable`)
  }

  const rOffset = offset
  offset += rLength

  if (signature[offset++] !== ENCODED_TAG_INT) {
    throw new Error('Could not find expected "int" for "s"')
  }

  const sLength = signature[offset++]

  if (inputLength - offset !== sLength) {
    throw new Error(`"s" specified length of "${sLength}", expected "${inputLength - offset}"`)
  }

  if (maxEncodedParamLength < sLength) {
    throw new Error(`"s" specified length of "${sLength}", max of "${maxEncodedParamLength}" is acceptable`)
  }

  const sOffset = offset
  offset += sLength

  if (offset !== inputLength) {
    throw new Error(`Expected to consume entire buffer, but "${inputLength - offset}" bytes remain`)
  }

  const rPadding = paramBytes - rLength

  const sPadding = paramBytes - sLength

  const dst = Buffer.allocUnsafe(rPadding + rLength + sPadding + sLength)

  for (offset = 0; offset < rPadding; ++offset) {
    dst[offset] = 0
  }
  signature.copy(dst, offset, rOffset + Math.max(-rPadding, 0), rOffset + rLength)

  offset = paramBytes

  for (const o = offset; offset < o + sPadding; ++offset) {
    dst[offset] = 0
  }
  signature.copy(dst, offset, sOffset + Math.max(-sPadding, 0), sOffset + sLength)

  return dst
}

module.exports.joseToDer = (signature, alg) => {
  if (!Buffer.isBuffer(signature)) {
    throw new TypeError('ECDSA signature must be a Buffer')
  }

  if (!paramBytesForAlg[alg]) {
    throw new TypeError(`Unknown algorithm "${alg}"`)
  }

  const paramBytes = paramBytesForAlg[alg]

  const signatureBytes = signature.length
  if (signatureBytes !== paramBytes * 2) {
    throw new Error(`"${alg}" signatures must be "${paramBytes * 2}" bytes, saw "${signatureBytes}"`)
  }

  const rPadding = countPadding(signature, 0, paramBytes)
  const sPadding = countPadding(signature, paramBytes, signature.length)
  const rLength = paramBytes - rPadding
  const sLength = paramBytes - sPadding

  const rsBytes = 1 + 1 + rLength + 1 + 1 + sLength

  const shortLength = rsBytes < MAX_OCTET

  const dst = Buffer.allocUnsafe((shortLength ? 2 : 3) + rsBytes)

  let offset = 0
  dst[offset++] = ENCODED_TAG_SEQ
  if (shortLength) {
    // Bit 8 has value "0"
    // bits 7-1 give the length.
    dst[offset++] = rsBytes
  } else {
    // Bit 8 of first octet has value "1"
    // bits 7-1 give the number of additional length octets.
    dst[offset++] = MAX_OCTET	| 1 // eslint-disable-line no-tabs
    // length, base 256
    dst[offset++] = rsBytes & 0xff
  }
  dst[offset++] = ENCODED_TAG_INT
  dst[offset++] = rLength
  if (rPadding < 0) {
    dst[offset++] = 0
    offset += signature.copy(dst, offset, 0, paramBytes)
  } else {
    offset += signature.copy(dst, offset, rPadding, paramBytes)
  }
  dst[offset++] = ENCODED_TAG_INT
  dst[offset++] = sLength
  if (sPadding < 0) {
    dst[offset++] = 0
    signature.copy(dst, offset, paramBytes)
  } else {
    signature.copy(dst, offset, paramBytes + sPadding)
  }

  return dst
}


/***/ }),

/***/ 47396:
/***/ ((module) => {

module.exports = (date) => Math.floor(date.getTime() / 1000)


/***/ }),

/***/ 93137:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { randomBytes } = __webpack_require__(33373)

const { IVLENGTHS } = __webpack_require__(15501)

module.exports = alg => randomBytes(IVLENGTHS.get(alg) / 8)


/***/ }),

/***/ 31308:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const errors = __webpack_require__(52973)
const Key = __webpack_require__(57841)
const importKey = __webpack_require__(13468)
const { KeyStore } = __webpack_require__(24998)

module.exports = (input, keyStoreAllowed = false) => {
  if (input instanceof Key) {
    return input
  }

  if (input instanceof KeyStore) {
    if (!keyStoreAllowed) {
      throw new TypeError('key argument for this operation must not be a JWKS.KeyStore instance')
    }

    return input
  }

  try {
    return importKey(input)
  } catch (err) {
    if (err instanceof errors.JOSEError && !(err instanceof errors.JWKImportFailed)) {
      throw err
    }

    let msg
    if (keyStoreAllowed) {
      msg = 'key must be an instance of a key instantiated by JWK.asKey, a valid JWK.asKey input, or a JWKS.KeyStore instance'
    } else {
      msg = 'key must be an instance of a key instantiated by JWK.asKey, or a valid JWK.asKey input'
    }

    throw new TypeError(msg)
  }
}


/***/ }),

/***/ 56149:
/***/ ((module) => {

module.exports = (a = {}, b = {}) => {
  const keysA = Object.keys(a)
  const keysB = new Set(Object.keys(b))
  return !keysA.some((ka) => keysB.has(ka))
}


/***/ }),

/***/ 41805:
/***/ ((module) => {

module.exports = a => !!a && a.constructor === Object


/***/ }),

/***/ 98921:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* global BigInt */

const { keyObjectSupported } = __webpack_require__(32457)

let createPublicKey
let createPrivateKey
let createSecretKey
let KeyObject
let asInput

if (keyObjectSupported) {
  ({ createPublicKey, createPrivateKey, createSecretKey, KeyObject } = __webpack_require__(33373))
  asInput = (input) => input
} else {
  const { EOL } = __webpack_require__(12087)

  const errors = __webpack_require__(52973)
  const isObject = __webpack_require__(41805)
  const asn1 = __webpack_require__(16416)
  const toInput = Symbol('toInput')

  const namedCurve = Symbol('namedCurve')

  asInput = (keyObject, needsPublic) => {
    if (keyObject instanceof KeyObject) {
      return keyObject[toInput](needsPublic)
    }

    return createSecretKey(keyObject)[toInput](needsPublic)
  }

  const pemToDer = pem => Buffer.from(pem.replace(/(?:-----(?:BEGIN|END)(?: (?:RSA|EC))? (?:PRIVATE|PUBLIC) KEY-----|\s)/g, ''), 'base64')
  const derToPem = (der, label) => `-----BEGIN ${label}-----${EOL}${(der.toString('base64').match(/.{1,64}/g) || []).join(EOL)}${EOL}-----END ${label}-----`
  const unsupported = (input) => {
    const label = typeof input === 'string' ? input : `OID ${input.join('.')}`
    throw new errors.JOSENotSupported(`${label} is not supported in your Node.js runtime version`)
  }

  KeyObject = class KeyObject {
    export ({ cipher, passphrase, type, format } = {}) {
      if (this._type === 'secret') {
        return this._buffer
      }

      if (this._type === 'public') {
        if (this.asymmetricKeyType === 'rsa') {
          switch (type) {
            case 'pkcs1':
              if (format === 'pem') {
                return this._pem
              }

              return pemToDer(this._pem)
            case 'spki': {
              const PublicKeyInfo = asn1.get('PublicKeyInfo')
              const pem = PublicKeyInfo.encode({
                algorithm: {
                  algorithm: 'rsaEncryption',
                  parameters: { type: 'null' }
                },
                publicKey: {
                  unused: 0,
                  data: pemToDer(this._pem)
                }
              }, 'pem', { label: 'PUBLIC KEY' })

              return format === 'pem' ? pem : pemToDer(pem)
            }
            default:
              throw new TypeError(`The value ${type} is invalid for option "type"`)
          }
        }

        if (this.asymmetricKeyType === 'ec') {
          if (type !== 'spki') {
            throw new TypeError(`The value ${type} is invalid for option "type"`)
          }

          if (format === 'pem') {
            return this._pem
          }

          return pemToDer(this._pem)
        }
      }

      if (this._type === 'private') {
        if (passphrase !== undefined || cipher !== undefined) {
          throw new errors.JOSENotSupported('encrypted private keys are not supported in your Node.js runtime version')
        }

        if (type === 'pkcs8') {
          if (this._pkcs8) {
            if (format === 'der' && typeof this._pkcs8 === 'string') {
              return pemToDer(this._pkcs8)
            }

            if (format === 'pem' && Buffer.isBuffer(this._pkcs8)) {
              return derToPem(this._pkcs8, 'PRIVATE KEY')
            }

            return this._pkcs8
          }

          if (this.asymmetricKeyType === 'rsa') {
            const parsed = this._asn1
            const RSAPrivateKey = asn1.get('RSAPrivateKey')
            const privateKey = RSAPrivateKey.encode(parsed)
            const PrivateKeyInfo = asn1.get('PrivateKeyInfo')
            const pkcs8 = PrivateKeyInfo.encode({
              version: 0,
              privateKey,
              algorithm: {
                algorithm: 'rsaEncryption',
                parameters: { type: 'null' }
              }
            })

            this._pkcs8 = pkcs8

            return this.export({ type, format })
          }

          if (this.asymmetricKeyType === 'ec') {
            const parsed = this._asn1
            const ECPrivateKey = asn1.get('ECPrivateKey')
            const privateKey = ECPrivateKey.encode({
              version: parsed.version,
              privateKey: parsed.privateKey,
              publicKey: parsed.publicKey
            })
            const PrivateKeyInfo = asn1.get('PrivateKeyInfo')
            const pkcs8 = PrivateKeyInfo.encode({
              version: 0,
              privateKey,
              algorithm: {
                algorithm: 'ecPublicKey',
                parameters: this._asn1.parameters
              }
            })

            this._pkcs8 = pkcs8

            return this.export({ type, format })
          }
        }

        if (this.asymmetricKeyType === 'rsa' && type === 'pkcs1') {
          if (format === 'pem') {
            return this._pem
          }

          return pemToDer(this._pem)
        } else if (this.asymmetricKeyType === 'ec' && type === 'sec1') {
          if (format === 'pem') {
            return this._pem
          }

          return pemToDer(this._pem)
        } else {
          throw new TypeError(`The value ${type} is invalid for option "type"`)
        }
      }
    }

    get type () {
      return this._type
    }

    get asymmetricKeyType () {
      return this._asymmetricKeyType
    }

    get symmetricKeySize () {
      return this._symmetricKeySize
    }

    [toInput] (needsPublic) {
      switch (this._type) {
        case 'secret':
          return this._buffer
        case 'public':
          return this._pem
        default:
          if (needsPublic) {
            if (!('_pub' in this)) {
              this._pub = createPublicKey(this)
            }

            return this._pub[toInput](false)
          }

          return this._pem
      }
    }
  }

  createSecretKey = (buffer) => {
    if (!Buffer.isBuffer(buffer) || !buffer.length) {
      throw new TypeError('input must be a non-empty Buffer instance')
    }

    const keyObject = new KeyObject()
    keyObject._buffer = Buffer.from(buffer)
    keyObject._symmetricKeySize = buffer.length
    keyObject._type = 'secret'

    return keyObject
  }

  createPublicKey = (input) => {
    if (input instanceof KeyObject) {
      if (input.type !== 'private') {
        throw new TypeError(`Invalid key object type ${input.type}, expected private.`)
      }

      switch (input.asymmetricKeyType) {
        case 'ec': {
          const PublicKeyInfo = asn1.get('PublicKeyInfo')
          const key = PublicKeyInfo.encode({
            algorithm: {
              algorithm: 'ecPublicKey',
              parameters: input._asn1.parameters
            },
            publicKey: input._asn1.publicKey
          })

          return createPublicKey({ key, format: 'der', type: 'spki' })
        }
        case 'rsa': {
          const RSAPublicKey = asn1.get('RSAPublicKey')
          const key = RSAPublicKey.encode(input._asn1)
          return createPublicKey({ key, format: 'der', type: 'pkcs1' })
        }
      }
    }

    if (typeof input === 'string' || Buffer.isBuffer(input)) {
      input = { key: input, format: 'pem' }
    }

    if (!isObject(input)) {
      throw new TypeError('input must be a string, Buffer or an object')
    }

    const { format, passphrase } = input
    let { key, type } = input

    if (typeof key !== 'string' && !Buffer.isBuffer(key)) {
      throw new TypeError('key must be a string or Buffer')
    }

    if (format !== 'pem' && format !== 'der') {
      throw new TypeError('format must be one of "pem" or "der"')
    }

    let label
    if (format === 'pem') {
      key = key.toString()
      switch (key.split(/\r?\n/g)[0].toString()) {
        case '-----BEGIN PUBLIC KEY-----':
          type = 'spki'
          label = 'PUBLIC KEY'
          break
        case '-----BEGIN RSA PUBLIC KEY-----':
          type = 'pkcs1'
          label = 'RSA PUBLIC KEY'
          break
        case '-----BEGIN CERTIFICATE-----':
          throw new errors.JOSENotSupported('X.509 certificates are not supported in your Node.js runtime version')
        case '-----BEGIN PRIVATE KEY-----':
        case '-----BEGIN EC PRIVATE KEY-----':
        case '-----BEGIN RSA PRIVATE KEY-----':
          return createPublicKey(createPrivateKey(key))
        default:
          throw new TypeError('unknown/unsupported PEM type')
      }
    }

    switch (type) {
      case 'spki': {
        const PublicKeyInfo = asn1.get('PublicKeyInfo')
        const parsed = PublicKeyInfo.decode(key, format, { label })

        let type, keyObject
        switch (parsed.algorithm.algorithm) {
          case 'ecPublicKey': {
            keyObject = new KeyObject()
            keyObject._asn1 = parsed
            keyObject._asymmetricKeyType = 'ec'
            keyObject._type = 'public'
            keyObject._pem = PublicKeyInfo.encode(parsed, 'pem', { label: 'PUBLIC KEY' })

            break
          }
          case 'rsaEncryption': {
            type = 'pkcs1'
            keyObject = createPublicKey({ type, key: parsed.publicKey.data, format: 'der' })
            break
          }
          default:
            unsupported(parsed.algorithm.algorithm)
        }

        return keyObject
      }
      case 'pkcs1': {
        const RSAPublicKey = asn1.get('RSAPublicKey')
        const parsed = RSAPublicKey.decode(key, format, { label })

        // special case when private pkcs1 PEM / DER is used with createPublicKey
        if (parsed.n === BigInt(0)) {
          return createPublicKey(createPrivateKey({ key, format, type, passphrase }))
        }

        const keyObject = new KeyObject()
        keyObject._asn1 = parsed
        keyObject._asymmetricKeyType = 'rsa'
        keyObject._type = 'public'
        keyObject._pem = RSAPublicKey.encode(parsed, 'pem', { label: 'RSA PUBLIC KEY' })

        return keyObject
      }
      case 'pkcs8':
      case 'sec1':
        return createPublicKey(createPrivateKey({ format, key, type, passphrase }))
      default:
        throw new TypeError(`The value ${type} is invalid for option "type"`)
    }
  }

  createPrivateKey = (input, hints) => {
    if (typeof input === 'string' || Buffer.isBuffer(input)) {
      input = { key: input, format: 'pem' }
    }

    if (!isObject(input)) {
      throw new TypeError('input must be a string, Buffer or an object')
    }

    const { format, passphrase } = input
    let { key, type } = input

    if (typeof key !== 'string' && !Buffer.isBuffer(key)) {
      throw new TypeError('key must be a string or Buffer')
    }

    if (passphrase !== undefined) {
      throw new errors.JOSENotSupported('encrypted private keys are not supported in your Node.js runtime version')
    }

    if (format !== 'pem' && format !== 'der') {
      throw new TypeError('format must be one of "pem" or "der"')
    }

    let label
    if (format === 'pem') {
      key = key.toString()
      switch (key.split(/\r?\n/g)[0].toString()) {
        case '-----BEGIN PRIVATE KEY-----':
          type = 'pkcs8'
          label = 'PRIVATE KEY'
          break
        case '-----BEGIN EC PRIVATE KEY-----':
          type = 'sec1'
          label = 'EC PRIVATE KEY'
          break
        case '-----BEGIN RSA PRIVATE KEY-----':
          type = 'pkcs1'
          label = 'RSA PRIVATE KEY'
          break
        default:
          throw new TypeError('unknown/unsupported PEM type')
      }
    }

    switch (type) {
      case 'pkcs8': {
        const PrivateKeyInfo = asn1.get('PrivateKeyInfo')
        const parsed = PrivateKeyInfo.decode(key, format, { label })

        let type, keyObject
        switch (parsed.algorithm.algorithm) {
          case 'ecPublicKey': {
            type = 'sec1'
            keyObject = createPrivateKey({ type, key: parsed.privateKey, format: 'der' }, { [namedCurve]: parsed.algorithm.parameters.value })
            break
          }
          case 'rsaEncryption': {
            type = 'pkcs1'
            keyObject = createPrivateKey({ type, key: parsed.privateKey, format: 'der' })
            break
          }
          default:
            unsupported(parsed.algorithm.algorithm)
        }

        keyObject._pkcs8 = key
        return keyObject
      }
      case 'pkcs1': {
        const RSAPrivateKey = asn1.get('RSAPrivateKey')
        const parsed = RSAPrivateKey.decode(key, format, { label })

        const keyObject = new KeyObject()
        keyObject._asn1 = parsed
        keyObject._asymmetricKeyType = 'rsa'
        keyObject._type = 'private'
        keyObject._pem = RSAPrivateKey.encode(parsed, 'pem', { label: 'RSA PRIVATE KEY' })

        return keyObject
      }
      case 'sec1': {
        const ECPrivateKey = asn1.get('ECPrivateKey')
        let parsed = ECPrivateKey.decode(key, format, { label })

        if (!('parameters' in parsed) && !hints[namedCurve]) {
          throw new Error('invalid sec1')
        } else if (!('parameters' in parsed)) {
          parsed = { ...parsed, parameters: { type: 'namedCurve', value: hints[namedCurve] } }
        }

        const keyObject = new KeyObject()
        keyObject._asn1 = parsed
        keyObject._asymmetricKeyType = 'ec'
        keyObject._type = 'private'
        keyObject._pem = ECPrivateKey.encode(parsed, 'pem', { label: 'EC PRIVATE KEY' })

        return keyObject
      }
      default:
        throw new TypeError(`The value ${type} is invalid for option "type"`)
    }
  }
}

module.exports = { createPublicKey, createPrivateKey, createSecretKey, KeyObject, asInput }


/***/ }),

/***/ 69693:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* global BigInt */

const { EOL } = __webpack_require__(12087)

const errors = __webpack_require__(52973)

const { keyObjectSupported } = __webpack_require__(32457)
const { createPublicKey } = __webpack_require__(98921)
const base64url = __webpack_require__(73385)
const asn1 = __webpack_require__(16416)
const computePrimes = __webpack_require__(53141)
const { OKP_CURVES, EC_CURVES } = __webpack_require__(15501)

const formatPem = (base64pem, descriptor) => `-----BEGIN ${descriptor} KEY-----${EOL}${(base64pem.match(/.{1,64}/g) || []).join(EOL)}${EOL}-----END ${descriptor} KEY-----`

const okpToJWK = {
  private (crv, keyObject) {
    const der = keyObject.export({ type: 'pkcs8', format: 'der' })
    const OneAsymmetricKey = asn1.get('OneAsymmetricKey')
    const { privateKey: { privateKey: d } } = OneAsymmetricKey.decode(der)

    return {
      ...okpToJWK.public(crv, createPublicKey(keyObject)),
      d: base64url.encodeBuffer(d)
    }
  },
  public (crv, keyObject) {
    const der = keyObject.export({ type: 'spki', format: 'der' })

    const PublicKeyInfo = asn1.get('PublicKeyInfo')

    const { publicKey: { data: x } } = PublicKeyInfo.decode(der)

    return {
      kty: 'OKP',
      crv,
      x: base64url.encodeBuffer(x)
    }
  }
}

const keyObjectToJWK = {
  rsa: {
    private (keyObject) {
      const der = keyObject.export({ type: 'pkcs8', format: 'der' })

      const PrivateKeyInfo = asn1.get('PrivateKeyInfo')
      const RSAPrivateKey = asn1.get('RSAPrivateKey')

      const { privateKey } = PrivateKeyInfo.decode(der)
      const { version, n, e, d, p, q, dp, dq, qi } = RSAPrivateKey.decode(privateKey)

      if (version !== 'two-prime') {
        throw new errors.JOSENotSupported('Private RSA keys with more than two primes are not supported')
      }

      return {
        kty: 'RSA',
        n: base64url.encodeBigInt(n),
        e: base64url.encodeBigInt(e),
        d: base64url.encodeBigInt(d),
        p: base64url.encodeBigInt(p),
        q: base64url.encodeBigInt(q),
        dp: base64url.encodeBigInt(dp),
        dq: base64url.encodeBigInt(dq),
        qi: base64url.encodeBigInt(qi)
      }
    },
    public (keyObject) {
      const der = keyObject.export({ type: 'spki', format: 'der' })

      const PublicKeyInfo = asn1.get('PublicKeyInfo')
      const RSAPublicKey = asn1.get('RSAPublicKey')

      const { publicKey: { data: publicKey } } = PublicKeyInfo.decode(der)
      const { n, e } = RSAPublicKey.decode(publicKey)

      return {
        kty: 'RSA',
        n: base64url.encodeBigInt(n),
        e: base64url.encodeBigInt(e)
      }
    }
  },
  ec: {
    private (keyObject) {
      const der = keyObject.export({ type: 'pkcs8', format: 'der' })

      const PrivateKeyInfo = asn1.get('PrivateKeyInfo')
      const ECPrivateKey = asn1.get('ECPrivateKey')

      const { privateKey, algorithm: { parameters: { value: crv } } } = PrivateKeyInfo.decode(der)
      const { privateKey: d, publicKey } = ECPrivateKey.decode(privateKey)

      if (typeof publicKey === 'undefined') {
        if (keyObjectSupported) {
          return {
            ...keyObjectToJWK.ec.public(createPublicKey(keyObject)),
            d: base64url.encodeBuffer(d)
          }
        }

        throw new errors.JOSENotSupported('Private EC keys without the public key embedded are not supported in your Node.js runtime version')
      }

      const x = publicKey.data.slice(1, ((publicKey.data.length - 1) / 2) + 1)
      const y = publicKey.data.slice(((publicKey.data.length - 1) / 2) + 1)

      return {
        kty: 'EC',
        crv,
        d: base64url.encodeBuffer(d),
        x: base64url.encodeBuffer(x),
        y: base64url.encodeBuffer(y)
      }
    },
    public (keyObject) {
      const der = keyObject.export({ type: 'spki', format: 'der' })

      const PublicKeyInfo = asn1.get('PublicKeyInfo')

      const { publicKey: { data: publicKey }, algorithm: { parameters: { value: crv } } } = PublicKeyInfo.decode(der)

      const x = publicKey.slice(1, ((publicKey.length - 1) / 2) + 1)
      const y = publicKey.slice(((publicKey.length - 1) / 2) + 1)

      return {
        kty: 'EC',
        crv,
        x: base64url.encodeBuffer(x),
        y: base64url.encodeBuffer(y)
      }
    }
  },
  ed25519: {
    private (keyObject) {
      return okpToJWK.private('Ed25519', keyObject)
    },
    public (keyObject) {
      return okpToJWK.public('Ed25519', keyObject)
    }
  },
  ed448: {
    private (keyObject) {
      return okpToJWK.private('Ed448', keyObject)
    },
    public (keyObject) {
      return okpToJWK.public('Ed448', keyObject)
    }
  },
  x25519: {
    private (keyObject) {
      return okpToJWK.private('X25519', keyObject)
    },
    public (keyObject) {
      return okpToJWK.public('X25519', keyObject)
    }
  },
  x448: {
    private (keyObject) {
      return okpToJWK.private('X448', keyObject)
    },
    public (keyObject) {
      return okpToJWK.public('X448', keyObject)
    }
  }
}

module.exports.keyObjectToJWK = (keyObject) => {
  if (keyObject.type === 'private') {
    return keyObjectToJWK[keyObject.asymmetricKeyType].private(keyObject)
  }

  return keyObjectToJWK[keyObject.asymmetricKeyType].public(keyObject)
}

const concatEcPublicKey = (x, y) => ({
  unused: 0,
  data: Buffer.concat([
    Buffer.alloc(1, 4),
    base64url.decodeToBuffer(x),
    base64url.decodeToBuffer(y)
  ])
})

const jwkToPem = {
  RSA: {
    private (jwk, { calculateMissingRSAPrimes }) {
      const RSAPrivateKey = asn1.get('RSAPrivateKey')

      if ('oth' in jwk) {
        throw new errors.JOSENotSupported('Private RSA keys with more than two primes are not supported')
      }

      if (jwk.p || jwk.q || jwk.dp || jwk.dq || jwk.qi) {
        if (!(jwk.p && jwk.q && jwk.dp && jwk.dq && jwk.qi)) {
          throw new errors.JWKInvalid('all other private key parameters must be present when any one of them is present')
        }
      } else if (calculateMissingRSAPrimes) {
        jwk = computePrimes(jwk)
      } else if (!calculateMissingRSAPrimes) {
        throw new errors.JOSENotSupported('importing private RSA keys without all other private key parameters is not enabled, see documentation and its advisory on how and when its ok to enable it')
      }

      return RSAPrivateKey.encode({
        version: 0,
        n: BigInt(`0x${base64url.decodeToBuffer(jwk.n).toString('hex')}`),
        e: BigInt(`0x${base64url.decodeToBuffer(jwk.e).toString('hex')}`),
        d: BigInt(`0x${base64url.decodeToBuffer(jwk.d).toString('hex')}`),
        p: BigInt(`0x${base64url.decodeToBuffer(jwk.p).toString('hex')}`),
        q: BigInt(`0x${base64url.decodeToBuffer(jwk.q).toString('hex')}`),
        dp: BigInt(`0x${base64url.decodeToBuffer(jwk.dp).toString('hex')}`),
        dq: BigInt(`0x${base64url.decodeToBuffer(jwk.dq).toString('hex')}`),
        qi: BigInt(`0x${base64url.decodeToBuffer(jwk.qi).toString('hex')}`)
      }, 'pem', { label: 'RSA PRIVATE KEY' })
    },
    public (jwk) {
      const RSAPublicKey = asn1.get('RSAPublicKey')

      return RSAPublicKey.encode({
        version: 0,
        n: BigInt(`0x${base64url.decodeToBuffer(jwk.n).toString('hex')}`),
        e: BigInt(`0x${base64url.decodeToBuffer(jwk.e).toString('hex')}`)
      }, 'pem', { label: 'RSA PUBLIC KEY' })
    }
  },
  EC: {
    private (jwk) {
      const ECPrivateKey = asn1.get('ECPrivateKey')

      return ECPrivateKey.encode({
        version: 1,
        privateKey: base64url.decodeToBuffer(jwk.d),
        parameters: { type: 'namedCurve', value: jwk.crv },
        publicKey: concatEcPublicKey(jwk.x, jwk.y)
      }, 'pem', { label: 'EC PRIVATE KEY' })
    },
    public (jwk) {
      const PublicKeyInfo = asn1.get('PublicKeyInfo')

      return PublicKeyInfo.encode({
        algorithm: {
          algorithm: 'ecPublicKey',
          parameters: { type: 'namedCurve', value: jwk.crv }
        },
        publicKey: concatEcPublicKey(jwk.x, jwk.y)
      }, 'pem', { label: 'PUBLIC KEY' })
    }
  },
  OKP: {
    private (jwk) {
      const OneAsymmetricKey = asn1.get('OneAsymmetricKey')

      const b64 = OneAsymmetricKey.encode({
        version: 0,
        privateKey: { privateKey: base64url.decodeToBuffer(jwk.d) },
        algorithm: { algorithm: jwk.crv }
      }, 'der')

      // TODO: WHYYY? https://github.com/indutny/asn1.js/issues/110
      b64.write('04', 12, 1, 'hex')

      return formatPem(b64.toString('base64'), 'PRIVATE')
    },
    public (jwk) {
      const PublicKeyInfo = asn1.get('PublicKeyInfo')

      return PublicKeyInfo.encode({
        algorithm: { algorithm: jwk.crv },
        publicKey: {
          unused: 0,
          data: base64url.decodeToBuffer(jwk.x)
        }
      }, 'pem', { label: 'PUBLIC KEY' })
    }
  }
}

module.exports.jwkToPem = (jwk, { calculateMissingRSAPrimes = false } = {}) => {
  switch (jwk.kty) {
    case 'EC':
      if (!EC_CURVES.has(jwk.crv)) {
        throw new errors.JOSENotSupported(`unsupported EC key curve: ${jwk.crv}`)
      }
      break
    case 'OKP':
      if (!OKP_CURVES.has(jwk.crv)) {
        throw new errors.JOSENotSupported(`unsupported OKP key curve: ${jwk.crv}`)
      }
      break
    case 'RSA':
      break
    default:
      throw new errors.JOSENotSupported(`unsupported key type: ${jwk.kty}`)
  }

  if (jwk.d) {
    return jwkToPem[jwk.kty].private(jwk, { calculateMissingRSAPrimes })
  }

  return jwkToPem[jwk.kty].public(jwk)
}


/***/ }),

/***/ 20125:
/***/ ((module) => {

module.exports = alg => `sha${alg.substr(2, 3)}`


/***/ }),

/***/ 53141:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* global BigInt */

const { randomBytes } = __webpack_require__(33373)

const base64url = __webpack_require__(73385)
const errors = __webpack_require__(52973)

const ZERO = BigInt(0)
const ONE = BigInt(1)
const TWO = BigInt(2)

const toJWKParameter = (n) => {
  const hex = n.toString(16)
  return base64url.encodeBuffer(Buffer.from(hex.length % 2 ? `0${hex}` : hex, 'hex'))
}
const fromBuffer = buf => BigInt(`0x${buf.toString('hex')}`)
const bitLength = n => n.toString(2).length

const eGcdX = (a, b) => {
  let x = ZERO
  let y = ONE
  let u = ONE
  let v = ZERO

  while (a !== ZERO) {
    const q = b / a
    const r = b % a
    const m = x - (u * q)
    const n = y - (v * q)
    b = a
    a = r
    x = u
    y = v
    u = m
    v = n
  }
  return x
}

const gcd = (a, b) => {
  let shift = ZERO
  while (!((a | b) & ONE)) {
    a >>= ONE
    b >>= ONE
    shift++
  }
  while (!(a & ONE)) {
    a >>= ONE
  }
  do {
    while (!(b & ONE)) {
      b >>= ONE
    }
    if (a > b) {
      const x = a
      a = b
      b = x
    }
    b -= a
  } while (b)

  return a << shift
}

const modPow = (a, b, n) => {
  a = toZn(a, n)
  let result = ONE
  let x = a
  while (b > 0) {
    var leastSignificantBit = b % TWO
    b = b / TWO
    if (leastSignificantBit === ONE) {
      result = result * x
      result = result % n
    }
    x = x * x
    x = x % n
  }
  return result
}

const randBetween = (min, max) => {
  const interval = max - min
  const bitLen = bitLength(interval)
  let rnd
  do {
    rnd = fromBuffer(randBits(bitLen))
  } while (rnd > interval)
  return rnd + min
}

const randBits = (bitLength) => {
  const byteLength = Math.ceil(bitLength / 8)
  const rndBytes = randomBytes(byteLength)
  // Fill with 0's the extra bits
  rndBytes[0] = rndBytes[0] & (2 ** (bitLength % 8) - 1)
  return rndBytes
}

const toZn = (a, n) => {
  a = a % n
  return (a < 0) ? a + n : a
}

const odd = (n) => {
  let r = n
  while (r % TWO === ZERO) {
    r = r / TWO
  }
  return r
}

// not sold on these values
const maxCountWhileNoY = 30
const maxCountWhileInot0 = 22

const getPrimeFactors = (e, d, n) => {
  const r = odd(e * d - ONE)

  let countWhileNoY = 0
  let y
  do {
    countWhileNoY++
    if (countWhileNoY === maxCountWhileNoY) {
      throw new errors.JWKImportFailed('failed to calculate missing primes')
    }

    let countWhileInot0 = 0
    let i = modPow(randBetween(TWO, n), r, n)
    let o = ZERO
    while (i !== ONE) {
      countWhileInot0++
      if (countWhileInot0 === maxCountWhileInot0) {
        throw new errors.JWKImportFailed('failed to calculate missing primes')
      }
      o = i
      i = (i * i) % n
    }
    if (o !== (n - ONE)) {
      y = o
    }
  } while (!y)

  const p = gcd(y - ONE, n)
  const q = n / p

  return p > q ? { p, q } : { p: q, q: p }
}

module.exports = (jwk) => {
  const e = fromBuffer(base64url.decodeToBuffer(jwk.e))
  const d = fromBuffer(base64url.decodeToBuffer(jwk.d))
  const n = fromBuffer(base64url.decodeToBuffer(jwk.n))

  if (d >= n) {
    throw new errors.JWKInvalid('invalid RSA private exponent')
  }

  const { p, q } = getPrimeFactors(e, d, n)
  const dp = d % (p - ONE)
  const dq = d % (q - ONE)
  const qi = toZn(eGcdX(toZn(q, p), p), p)

  return {
    ...jwk,
    p: toJWKParameter(p),
    q: toJWKParameter(q),
    dp: toJWKParameter(dp),
    dq: toJWKParameter(dq),
    qi: toJWKParameter(qi)
  }
}


/***/ }),

/***/ 32457:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { diffieHellman, KeyObject, sign, verify } = __webpack_require__(33373)

const [major, minor] = process.version.substr(1).split('.').map(x => parseInt(x, 10))

module.exports = {
  oaepHashSupported: major > 12 || (major === 12 && minor >= 9),
  keyObjectSupported: !!KeyObject && major >= 12,
  edDSASupported: !!sign && !!verify,
  dsaEncodingSupported: major > 13 || (major === 13 && minor >= 2) || (major === 12 && minor >= 16),
  improvedDH: !!diffieHellman
}


/***/ }),

/***/ 97305:
/***/ ((module) => {

const minute = 60
const hour = minute * 60
const day = hour * 24
const week = day * 7
const year = day * 365.25

const REGEX = /^(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)$/i

module.exports = (str) => {
  const matched = REGEX.exec(str)

  if (!matched) {
    throw new TypeError(`invalid time period format ("${str}")`)
  }

  const value = parseFloat(matched[1])
  const unit = matched[2].toLowerCase()

  switch (unit) {
    case 'sec':
    case 'secs':
    case 'second':
    case 'seconds':
    case 's':
      return Math.round(value)
    case 'minute':
    case 'minutes':
    case 'min':
    case 'mins':
    case 'm':
      return Math.round(value * minute)
    case 'hour':
    case 'hours':
    case 'hr':
    case 'hrs':
    case 'h':
      return Math.round(value * hour)
    case 'day':
    case 'days':
    case 'd':
      return Math.round(value * day)
    case 'week':
    case 'weeks':
    case 'w':
      return Math.round(value * week)
    case 'year':
    case 'years':
    case 'yr':
    case 'yrs':
    case 'y':
      return Math.round(value * year)
  }
}


/***/ }),

/***/ 80820:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { timingSafeEqual: TSE } = __webpack_require__(33373)

const paddedBuffer = (input, length) => {
  if (input.length === length) {
    return input
  }

  const buffer = Buffer.alloc(length)
  input.copy(buffer)
  return buffer
}

const timingSafeEqual = (a, b) => {
  const length = Math.max(a.length, b.length)
  return TSE(paddedBuffer(a, length), paddedBuffer(b, length))
}

module.exports = timingSafeEqual


/***/ }),

/***/ 4520:
/***/ ((module) => {

const MAX_INT32 = Math.pow(2, 32)

module.exports = (value, buf = Buffer.allocUnsafe(8)) => {
  const high = Math.floor(value / MAX_INT32)
  const low = value % MAX_INT32

  buf.writeUInt32BE(high, 0)
  buf.writeUInt32BE(low, 4)
  return buf
}


/***/ }),

/***/ 530:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { JOSECritNotUnderstood, JWSInvalid } = __webpack_require__(52973)

const DEFINED = new Set([
  'alg', 'jku', 'jwk', 'kid', 'x5u', 'x5c', 'x5t', 'x5t#S256', 'typ', 'cty',
  'crit', 'enc', 'zip', 'epk', 'apu', 'apv', 'iv', 'tag', 'p2s', 'p2c'
])

module.exports = function validateCrit (Err, protectedHeader, unprotectedHeader, understood) {
  if (protectedHeader && 'crit' in protectedHeader) {
    if (
      !Array.isArray(protectedHeader.crit) ||
      protectedHeader.crit.length === 0 ||
      protectedHeader.crit.some(s => typeof s !== 'string' || !s)
    ) {
      throw new Err('"crit" Header Parameter MUST be an array of non-empty strings when present')
    }
    const whitelisted = new Set(understood)
    const combined = { ...protectedHeader, ...unprotectedHeader }
    protectedHeader.crit.forEach((parameter) => {
      if (DEFINED.has(parameter)) {
        throw new Err(`The critical list contains a non-extension Header Parameter ${parameter}`)
      }
      if (!whitelisted.has(parameter)) {
        throw new JOSECritNotUnderstood(`critical "${parameter}" is not understood`)
      }
      if (parameter === 'b64') {
        if (!('b64' in protectedHeader)) {
          throw new JWSInvalid('"b64" critical parameter must be integrity protected')
        }
        if (typeof protectedHeader.b64 !== 'boolean') {
          throw new JWSInvalid('"b64" critical parameter must be a boolean')
        }
      } else if (!(parameter in combined)) {
        throw new Err(`critical parameter "${parameter}" is missing`)
      }
    })
  }
  if (unprotectedHeader && 'crit' in unprotectedHeader) {
    throw new Err('"crit" Header Parameter MUST be integrity protected when present')
  }
}


/***/ }),

/***/ 16425:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = {
  JWE: __webpack_require__(72851),
  JWK: __webpack_require__(67894),
  JWKS: __webpack_require__(42896),
  JWS: __webpack_require__(36518),
  JWT: __webpack_require__(18138),
  errors: __webpack_require__(52973)
}


/***/ }),

/***/ 49651:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createCipheriv, createDecipheriv, getCiphers } = __webpack_require__(33373)

const uint64be = __webpack_require__(4520)
const timingSafeEqual = __webpack_require__(80820)
const { KEYOBJECT } = __webpack_require__(15010)
const { JWEInvalid, JWEDecryptionFailed } = __webpack_require__(52973)

const checkInput = function (size, iv, tag) {
  if (iv.length !== 16) {
    throw new JWEInvalid('invalid iv')
  }
  if (arguments.length === 3) {
    if (tag.length !== size / 8) {
      throw new JWEInvalid('invalid tag')
    }
  }
}

const encrypt = (size, sign, { [KEYOBJECT]: keyObject }, cleartext, { iv, aad = Buffer.alloc(0) }) => {
  const key = keyObject.export()
  checkInput(size, iv)

  const keySize = size / 8
  const encKey = key.slice(keySize)
  const cipher = createCipheriv(`aes-${size}-cbc`, encKey, iv)
  const ciphertext = Buffer.concat([cipher.update(cleartext), cipher.final()])
  const macData = Buffer.concat([aad, iv, ciphertext, uint64be(aad.length * 8)])

  const macKey = key.slice(0, keySize)
  const tag = sign({ [KEYOBJECT]: macKey }, macData).slice(0, keySize)

  return { ciphertext, tag }
}

const decrypt = (size, sign, { [KEYOBJECT]: keyObject }, ciphertext, { iv, tag = Buffer.alloc(0), aad = Buffer.alloc(0) }) => {
  checkInput(size, iv, tag)

  const keySize = size / 8
  const key = keyObject.export()
  const encKey = key.slice(keySize)
  const macKey = key.slice(0, keySize)

  const macData = Buffer.concat([aad, iv, ciphertext, uint64be(aad.length * 8)])
  const expectedTag = sign({ [KEYOBJECT]: macKey }, macData, tag).slice(0, keySize)
  const macCheckPassed = timingSafeEqual(tag, expectedTag)

  if (!macCheckPassed) {
    throw new JWEDecryptionFailed()
  }

  let cleartext
  try {
    const cipher = createDecipheriv(`aes-${size}-cbc`, encKey, iv)
    cleartext = Buffer.concat([cipher.update(ciphertext), cipher.final()])
  } catch (err) {}

  if (!cleartext) {
    throw new JWEDecryptionFailed()
  }

  return cleartext
}

module.exports = (JWA, JWK) => {
  ['A128CBC-HS256', 'A192CBC-HS384', 'A256CBC-HS512'].forEach((jwaAlg) => {
    const size = parseInt(jwaAlg.substr(1, 3), 10)
    const sign = JWA.sign.get(`HS${size * 2}`)
    if (getCiphers().includes(`aes-${size}-cbc`)) {
      JWA.encrypt.set(jwaAlg, encrypt.bind(undefined, size, sign))
      JWA.decrypt.set(jwaAlg, decrypt.bind(undefined, size, sign))
      JWK.oct.encrypt[jwaAlg] = JWK.oct.decrypt[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.length / 2 === size
    }
  })
}


/***/ }),

/***/ 21239:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createCipheriv, createDecipheriv, getCiphers } = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const { JWEInvalid, JWEDecryptionFailed } = __webpack_require__(52973)
const { asInput } = __webpack_require__(98921)

const checkInput = function (size, iv, tag) {
  if (iv.length !== 12) {
    throw new JWEInvalid('invalid iv')
  }
  if (arguments.length === 3) {
    if (tag.length !== 16) {
      throw new JWEInvalid('invalid tag')
    }
  }
}

const encrypt = (size, { [KEYOBJECT]: keyObject }, cleartext, { iv, aad = Buffer.alloc(0) }) => {
  const key = asInput(keyObject, false)
  checkInput(size, iv)

  const cipher = createCipheriv(`aes-${size}-gcm`, key, iv, { authTagLength: 16 })
  cipher.setAAD(aad)

  const ciphertext = Buffer.concat([cipher.update(cleartext), cipher.final()])
  const tag = cipher.getAuthTag()

  return { ciphertext, tag }
}

const decrypt = (size, { [KEYOBJECT]: keyObject }, ciphertext, { iv, tag = Buffer.alloc(0), aad = Buffer.alloc(0) }) => {
  const key = asInput(keyObject, false)
  checkInput(size, iv, tag)

  try {
    const cipher = createDecipheriv(`aes-${size}-gcm`, key, iv, { authTagLength: 16 })
    cipher.setAuthTag(tag)
    cipher.setAAD(aad)

    return Buffer.concat([cipher.update(ciphertext), cipher.final()])
  } catch (err) {
    throw new JWEDecryptionFailed()
  }
}

module.exports = (JWA, JWK) => {
  ['A128GCM', 'A192GCM', 'A256GCM'].forEach((jwaAlg) => {
    const size = parseInt(jwaAlg.substr(1, 3), 10)
    if (getCiphers().includes(`aes-${size}-gcm`)) {
      JWA.encrypt.set(jwaAlg, encrypt.bind(undefined, size))
      JWA.decrypt.set(jwaAlg, decrypt.bind(undefined, size))
      JWK.oct.encrypt[jwaAlg] = JWK.oct.decrypt[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.length === size
    }
  })
}


/***/ }),

/***/ 37813:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const generateIV = __webpack_require__(93137)
const base64url = __webpack_require__(73385)

module.exports = (JWA, JWK) => {
  ['A128GCMKW', 'A192GCMKW', 'A256GCMKW'].forEach((jwaAlg) => {
    const encAlg = jwaAlg.substr(0, 7)
    const size = parseInt(jwaAlg.substr(1, 3), 10)
    const encrypt = JWA.encrypt.get(encAlg)
    const decrypt = JWA.decrypt.get(encAlg)

    if (encrypt && decrypt) {
      JWA.keyManagementEncrypt.set(jwaAlg, (key, payload) => {
        const iv = generateIV(jwaAlg)
        const { ciphertext, tag } = encrypt(key, payload, { iv })
        return {
          wrapped: ciphertext,
          header: { tag: base64url.encodeBuffer(tag), iv: base64url.encodeBuffer(iv) }
        }
      })
      JWA.keyManagementDecrypt.set(jwaAlg, decrypt)
      JWK.oct.wrapKey[jwaAlg] = JWK.oct.unwrapKey[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.length === size
    }
  })
}


/***/ }),

/***/ 80477:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createCipheriv, createDecipheriv, getCiphers } = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const { asInput } = __webpack_require__(98921)

const checkInput = (data) => {
  if (data !== undefined && data.length % 8 !== 0) {
    throw new Error('invalid data length')
  }
}

const wrapKey = (alg, { [KEYOBJECT]: keyObject }, payload) => {
  const key = asInput(keyObject, false)
  const cipher = createCipheriv(alg, key, Buffer.alloc(8, 'a6', 'hex'))

  return { wrapped: Buffer.concat([cipher.update(payload), cipher.final()]) }
}

const unwrapKey = (alg, { [KEYOBJECT]: keyObject }, payload) => {
  const key = asInput(keyObject, false)
  checkInput(payload)
  const cipher = createDecipheriv(alg, key, Buffer.alloc(8, 'a6', 'hex'))

  return Buffer.concat([cipher.update(payload), cipher.final()])
}

module.exports = (JWA, JWK) => {
  ['A128KW', 'A192KW', 'A256KW'].forEach((jwaAlg) => {
    const size = parseInt(jwaAlg.substr(1, 3), 10)
    const alg = `aes${size}-wrap`
    if (getCiphers().includes(alg)) {
      JWA.keyManagementEncrypt.set(jwaAlg, wrapKey.bind(undefined, alg))
      JWA.keyManagementDecrypt.set(jwaAlg, unwrapKey.bind(undefined, alg))
      JWK.oct.wrapKey[jwaAlg] = JWK.oct.unwrapKey[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.length === size
    }
  })
}


/***/ }),

/***/ 94563:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { improvedDH } = __webpack_require__(32457)

if (improvedDH) {
  const { diffieHellman } = __webpack_require__(33373)

  const { KeyObject } = __webpack_require__(98921)
  const importKey = __webpack_require__(13468)

  module.exports = ({ keyObject: privateKey }, publicKey) => {
    if (!(publicKey instanceof KeyObject)) {
      ({ keyObject: publicKey } = importKey(publicKey))
    }

    return diffieHellman({ privateKey, publicKey })
  }
} else {
  const { createECDH, constants: { POINT_CONVERSION_UNCOMPRESSED } } = __webpack_require__(33373)

  const base64url = __webpack_require__(73385)

  const crvToCurve = (crv) => {
    switch (crv) {
      case 'P-256':
        return 'prime256v1'
      case 'P-384':
        return 'secp384r1'
      case 'P-521':
        return 'secp521r1'
    }
  }

  const UNCOMPRESSED = Buffer.alloc(1, POINT_CONVERSION_UNCOMPRESSED)
  const pubToBuffer = (x, y) => Buffer.concat([UNCOMPRESSED, base64url.decodeToBuffer(x), base64url.decodeToBuffer(y)])

  module.exports = ({ crv, d }, { x, y }) => {
    const curve = crvToCurve(crv)
    const exchange = createECDH(curve)

    exchange.setPrivateKey(base64url.decodeToBuffer(d))

    return exchange.computeSecret(pubToBuffer(x, y))
  }
}


/***/ }),

/***/ 81417:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createHash } = __webpack_require__(33373)
const ecdhComputeSecret = __webpack_require__(94563)

const concat = (key, length, value) => {
  const iterations = Math.ceil(length / 32)
  let res

  for (let iter = 1; iter <= iterations; iter++) {
    const buf = Buffer.allocUnsafe(4 + key.length + value.length)
    buf.writeUInt32BE(iter, 0)
    key.copy(buf, 4)
    value.copy(buf, 4 + key.length)
    if (!res) {
      res = createHash('sha256').update(buf).digest()
    } else {
      res = Buffer.concat([res, createHash('sha256').update(buf).digest()])
    }
  }

  return res.slice(0, length)
}

const uint32be = (value, buf = Buffer.allocUnsafe(4)) => {
  buf.writeUInt32BE(value)
  return buf
}

const lengthAndInput = input => Buffer.concat([uint32be(input.length), input])

module.exports = (alg, keyLen, privKey, pubKey, { apu = Buffer.alloc(0), apv = Buffer.alloc(0) } = {}, computeSecret = ecdhComputeSecret) => {
  const value = Buffer.concat([
    lengthAndInput(Buffer.from(alg)),
    lengthAndInput(apu),
    lengthAndInput(apv),
    uint32be(keyLen)
  ])

  const sharedSecret = computeSecret(privKey, pubKey)
  return concat(sharedSecret, keyLen / 8, value)
}


/***/ }),

/***/ 52652:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { improvedDH } = __webpack_require__(32457)
const { KEYLENGTHS } = __webpack_require__(15501)
const { generateSync } = __webpack_require__(39377)
const { name: secp256k1 } = __webpack_require__(2044)

const derive = __webpack_require__(81417)

const wrapKey = (key, payload, { enc }) => {
  const epk = generateSync(key.kty, key.crv)

  const derivedKey = derive(enc, KEYLENGTHS.get(enc), epk, key)

  return {
    wrapped: derivedKey,
    header: { epk: { kty: key.kty, crv: key.crv, x: epk.x, y: epk.y } }
  }
}

const unwrapKey = (key, payload, header) => {
  const { enc, epk } = header
  return derive(enc, KEYLENGTHS.get(enc), key, epk, header)
}

module.exports = (JWA, JWK) => {
  JWA.keyManagementEncrypt.set('ECDH-ES', wrapKey)
  JWA.keyManagementDecrypt.set('ECDH-ES', unwrapKey)
  JWK.EC.deriveKey['ECDH-ES'] = key => (key.use === 'enc' || key.use === undefined) && key.crv !== secp256k1

  if (improvedDH) {
    JWK.OKP.deriveKey['ECDH-ES'] = key => (key.use === 'enc' || key.use === undefined) && key.keyObject.asymmetricKeyType.startsWith('x')
  }
}


/***/ }),

/***/ 7668:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { improvedDH } = __webpack_require__(32457)
const { KEYOBJECT } = __webpack_require__(15010)
const { generateSync } = __webpack_require__(39377)
const { name: secp256k1 } = __webpack_require__(2044)
const { ECDH_DERIVE_LENGTHS } = __webpack_require__(15501)

const derive = __webpack_require__(81417)

const wrapKey = (wrap, derive, key, payload) => {
  const epk = generateSync(key.kty, key.crv)

  const derivedKey = derive(epk, key, payload)

  const result = wrap({ [KEYOBJECT]: derivedKey }, payload)
  result.header = result.header || {}
  Object.assign(result.header, { epk: { kty: key.kty, crv: key.crv, x: epk.x, y: epk.y } })

  return result
}

const unwrapKey = (unwrap, derive, key, payload, header) => {
  const { epk } = header
  const derivedKey = derive(key, epk, header)

  return unwrap({ [KEYOBJECT]: derivedKey }, payload, header)
}

module.exports = (JWA, JWK) => {
  ['ECDH-ES+A128KW', 'ECDH-ES+A192KW', 'ECDH-ES+A256KW'].forEach((jwaAlg) => {
    const kw = jwaAlg.substr(-6)
    const kwWrap = JWA.keyManagementEncrypt.get(kw)
    const kwUnwrap = JWA.keyManagementDecrypt.get(kw)
    const keylen = parseInt(jwaAlg.substr(9, 3), 10)
    ECDH_DERIVE_LENGTHS.set(jwaAlg, keylen)

    if (kwWrap && kwUnwrap) {
      JWA.keyManagementEncrypt.set(jwaAlg, wrapKey.bind(undefined, kwWrap, derive.bind(undefined, jwaAlg, keylen)))
      JWA.keyManagementDecrypt.set(jwaAlg, unwrapKey.bind(undefined, kwUnwrap, derive.bind(undefined, jwaAlg, keylen)))
      JWK.EC.deriveKey[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.crv !== secp256k1

      if (improvedDH) {
        JWK.OKP.deriveKey[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.keyObject.asymmetricKeyType.startsWith('x')
      }
    }
  })
}
module.exports.wrapKey = wrapKey
module.exports.unwrapKey = unwrapKey


/***/ }),

/***/ 77634:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { sign: signOneShot, verify: verifyOneShot, createSign, createVerify, getCurves } = __webpack_require__(33373)

const { derToJose, joseToDer } = __webpack_require__(14451)
const { KEYOBJECT } = __webpack_require__(15010)
const resolveNodeAlg = __webpack_require__(20125)
const { asInput } = __webpack_require__(98921)
const { dsaEncodingSupported } = __webpack_require__(32457)
const { name: secp256k1 } = __webpack_require__(2044)

let sign, verify

if (dsaEncodingSupported) {
  sign = (jwaAlg, nodeAlg, { [KEYOBJECT]: keyObject }, payload) => {
    if (typeof payload === 'string') {
      payload = Buffer.from(payload)
    }
    return signOneShot(nodeAlg, payload, { key: asInput(keyObject, false), dsaEncoding: 'ieee-p1363' })
  }
  verify = (jwaAlg, nodeAlg, { [KEYOBJECT]: keyObject }, payload, signature) => {
    try {
      return verifyOneShot(nodeAlg, payload, { key: asInput(keyObject, true), dsaEncoding: 'ieee-p1363' }, signature)
    } catch (err) {
      return false
    }
  }
} else {
  sign = (jwaAlg, nodeAlg, { [KEYOBJECT]: keyObject }, payload) => {
    return derToJose(createSign(nodeAlg).update(payload).sign(asInput(keyObject, false)), jwaAlg)
  }
  verify = (jwaAlg, nodeAlg, { [KEYOBJECT]: keyObject }, payload, signature) => {
    try {
      return createVerify(nodeAlg).update(payload).verify(asInput(keyObject, true), joseToDer(signature, jwaAlg))
    } catch (err) {
      return false
    }
  }
}

const crvToAlg = (crv) => {
  switch (crv) {
    case 'P-256':
      return 'ES256'
    case secp256k1:
      return 'ES256K'
    case 'P-384':
      return 'ES384'
    case 'P-521':
      return 'ES512'
  }
}

module.exports = (JWA, JWK) => {
  const algs = []

  if (getCurves().includes('prime256v1')) {
    algs.push('ES256')
  }

  if (getCurves().includes('secp256k1')) {
    algs.push('ES256K')
  }

  if (getCurves().includes('secp384r1')) {
    algs.push('ES384')
  }

  if (getCurves().includes('secp521r1')) {
    algs.push('ES512')
  }

  algs.forEach((jwaAlg) => {
    const nodeAlg = resolveNodeAlg(jwaAlg)
    JWA.sign.set(jwaAlg, sign.bind(undefined, jwaAlg, nodeAlg))
    JWA.verify.set(jwaAlg, verify.bind(undefined, jwaAlg, nodeAlg))
    JWK.EC.sign[jwaAlg] = key => key.private && JWK.EC.verify[jwaAlg](key)
    JWK.EC.verify[jwaAlg] = key => (key.use === 'sig' || key.use === undefined) && crvToAlg(key.crv) === jwaAlg
  })
}


/***/ }),

/***/ 18803:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { sign: signOneShot, verify: verifyOneShot } = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const { edDSASupported } = __webpack_require__(32457)

const sign = ({ [KEYOBJECT]: keyObject }, payload) => {
  if (typeof payload === 'string') {
    payload = Buffer.from(payload)
  }
  return signOneShot(undefined, payload, keyObject)
}

const verify = ({ [KEYOBJECT]: keyObject }, payload, signature) => {
  return verifyOneShot(undefined, payload, keyObject, signature)
}

module.exports = (JWA, JWK) => {
  if (edDSASupported) {
    JWA.sign.set('EdDSA', sign)
    JWA.verify.set('EdDSA', verify)
    JWK.OKP.sign.EdDSA = key => key.private && JWK.OKP.verify.EdDSA(key)
    JWK.OKP.verify.EdDSA = key => (key.use === 'sig' || key.use === undefined) && key.keyObject.asymmetricKeyType.startsWith('ed')
  }
}


/***/ }),

/***/ 25866:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createHmac } = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const timingSafeEqual = __webpack_require__(80820)
const resolveNodeAlg = __webpack_require__(20125)
const { asInput } = __webpack_require__(98921)

const sign = (jwaAlg, hmacAlg, { [KEYOBJECT]: keyObject }, payload) => {
  const hmac = createHmac(hmacAlg, asInput(keyObject, false))
  hmac.update(payload)
  return hmac.digest()
}

const verify = (jwaAlg, hmacAlg, key, payload, signature) => {
  const expected = sign(jwaAlg, hmacAlg, key, payload)
  const actual = signature

  return timingSafeEqual(actual, expected)
}

module.exports = (JWA, JWK) => {
  ['HS256', 'HS384', 'HS512'].forEach((jwaAlg) => {
    const hmacAlg = resolveNodeAlg(jwaAlg)
    JWA.sign.set(jwaAlg, sign.bind(undefined, jwaAlg, hmacAlg))
    JWA.verify.set(jwaAlg, verify.bind(undefined, jwaAlg, hmacAlg))
    JWK.oct.sign[jwaAlg] = JWK.oct.verify[jwaAlg] = key => key.use === 'sig' || key.use === undefined
  })
}


/***/ }),

/***/ 50191:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { JWKKeySupport, JOSENotSupported } = __webpack_require__(52973)
const { KEY_MANAGEMENT_ENCRYPT, KEY_MANAGEMENT_DECRYPT } = __webpack_require__(15010)

const { JWA, JWK } = __webpack_require__(15501)

// sign, verify
__webpack_require__(25866)(JWA, JWK)
__webpack_require__(77634)(JWA, JWK)
__webpack_require__(18803)(JWA, JWK)
__webpack_require__(35172)(JWA, JWK)
__webpack_require__(16984)(JWA, JWK)
__webpack_require__(72638)(JWA)

// encrypt, decrypt
__webpack_require__(49651)(JWA, JWK)
__webpack_require__(21239)(JWA, JWK)

// wrapKey, unwrapKey
__webpack_require__(1029)(JWA, JWK)
__webpack_require__(80477)(JWA, JWK)
__webpack_require__(37813)(JWA, JWK)

// deriveKey
__webpack_require__(94515)(JWA, JWK)
__webpack_require__(52652)(JWA, JWK)
__webpack_require__(7668)(JWA, JWK)

const check = (key, op, alg) => {
  const cache = `_${op}_${alg}`

  let label
  let keyOp
  if (op === 'keyManagementEncrypt') {
    label = 'key management (encryption)'
    keyOp = KEY_MANAGEMENT_ENCRYPT
  } else if (op === 'keyManagementDecrypt') {
    label = 'key management (decryption)'
    keyOp = KEY_MANAGEMENT_DECRYPT
  }

  if (cache in key) {
    if (key[cache]) {
      return
    }
    throw new JWKKeySupport(`the key does not support ${alg} ${label || op} algorithm`)
  }

  let value = true
  if (!JWA[op].has(alg)) {
    throw new JOSENotSupported(`unsupported ${label || op} alg: ${alg}`)
  } else if (!key.algorithms(keyOp).has(alg)) {
    value = false
  }

  Object.defineProperty(key, cache, { value, enumerable: false })

  if (!value) {
    return check(key, op, alg)
  }
}

module.exports = {
  check,
  sign: (alg, key, payload) => {
    check(key, 'sign', alg)
    return JWA.sign.get(alg)(key, payload)
  },
  verify: (alg, key, payload, signature) => {
    check(key, 'verify', alg)
    return JWA.verify.get(alg)(key, payload, signature)
  },
  keyManagementEncrypt: (alg, key, payload, opts) => {
    check(key, 'keyManagementEncrypt', alg)
    return JWA.keyManagementEncrypt.get(alg)(key, payload, opts)
  },
  keyManagementDecrypt: (alg, key, payload, opts) => {
    check(key, 'keyManagementDecrypt', alg)
    return JWA.keyManagementDecrypt.get(alg)(key, payload, opts)
  },
  encrypt: (alg, key, cleartext, opts) => {
    check(key, 'encrypt', alg)
    return JWA.encrypt.get(alg)(key, cleartext, opts)
  },
  decrypt: (alg, key, ciphertext, opts) => {
    check(key, 'decrypt', alg)
    return JWA.decrypt.get(alg)(key, ciphertext, opts)
  }
}


/***/ }),

/***/ 72638:
/***/ ((module) => {

const sign = () => Buffer.from('')
const verify = (key, payload, signature) => !signature.length

module.exports = (JWA, JWK) => {
  JWA.sign.set('none', sign)
  JWA.verify.set('none', verify)
}


/***/ }),

/***/ 94515:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { pbkdf2Sync: pbkdf2, randomBytes } = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const base64url = __webpack_require__(73385)

const SALT_LENGTH = 16
const NULL_BUFFER = Buffer.alloc(1, 0)

const concatSalt = (alg, p2s) => {
  return Buffer.concat([
    Buffer.from(alg, 'utf8'),
    NULL_BUFFER,
    p2s
  ])
}

const wrapKey = (keylen, sha, concat, wrap, { [KEYOBJECT]: keyObject }, payload) => {
  // Note that if password-based encryption is used for multiple
  // recipients, it is expected that each recipient use different values
  // for the PBES2 parameters "p2s" and "p2c".
  // here we generate p2c between 2048 and 4096 and random p2s
  const p2c = Math.floor((Math.random() * 2049) + 2048)
  const p2s = randomBytes(SALT_LENGTH)
  const salt = concat(p2s)

  const derivedKey = pbkdf2(keyObject.export(), salt, p2c, keylen, sha)

  const result = wrap({ [KEYOBJECT]: derivedKey }, payload)
  result.header = result.header || {}
  Object.assign(result.header, { p2c, p2s: base64url.encodeBuffer(p2s) })

  return result
}

const unwrapKey = (keylen, sha, concat, unwrap, { [KEYOBJECT]: keyObject }, payload, header) => {
  const { p2s, p2c } = header
  const salt = concat(p2s)
  const derivedKey = pbkdf2(keyObject.export(), salt, p2c, keylen, sha)
  return unwrap({ [KEYOBJECT]: derivedKey }, payload, header)
}

module.exports = (JWA, JWK) => {
  ['PBES2-HS256+A128KW', 'PBES2-HS384+A192KW', 'PBES2-HS512+A256KW'].forEach((jwaAlg) => {
    const kw = jwaAlg.substr(-6)
    const kwWrap = JWA.keyManagementEncrypt.get(kw)
    const kwUnwrap = JWA.keyManagementDecrypt.get(kw)
    const keylen = parseInt(jwaAlg.substr(13, 3), 10) / 8
    const sha = `sha${jwaAlg.substr(8, 3)}`

    if (kwWrap && kwUnwrap) {
      JWA.keyManagementEncrypt.set(jwaAlg, wrapKey.bind(undefined, keylen, sha, concatSalt.bind(undefined, jwaAlg), kwWrap))
      JWA.keyManagementDecrypt.set(jwaAlg, unwrapKey.bind(undefined, keylen, sha, concatSalt.bind(undefined, jwaAlg), kwUnwrap))
      JWK.oct.deriveKey[jwaAlg] = key => key.use === 'enc' || key.use === undefined
    }
  })
}


/***/ }),

/***/ 1029:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { publicEncrypt, privateDecrypt, constants } = __webpack_require__(33373)

const { oaepHashSupported } = __webpack_require__(32457)
const { KEYOBJECT } = __webpack_require__(15010)
const { asInput } = __webpack_require__(98921)

const resolvePadding = (alg) => {
  switch (alg) {
    case 'RSA-OAEP':
    case 'RSA-OAEP-256':
    case 'RSA-OAEP-384':
    case 'RSA-OAEP-512':
      return constants.RSA_PKCS1_OAEP_PADDING
    case 'RSA1_5':
      return constants.RSA_PKCS1_PADDING
  }
}

const resolveOaepHash = (alg) => {
  switch (alg) {
    case 'RSA-OAEP':
      return 'sha1'
    case 'RSA-OAEP-256':
      return 'sha256'
    case 'RSA-OAEP-384':
      return 'sha384'
    case 'RSA-OAEP-512':
      return 'sha512'
    default:
      return undefined
  }
}

const wrapKey = (padding, oaepHash, { [KEYOBJECT]: keyObject }, payload) => {
  const key = asInput(keyObject, true)
  return { wrapped: publicEncrypt({ key, oaepHash, padding }, payload) }
}

const unwrapKey = (padding, oaepHash, { [KEYOBJECT]: keyObject }, payload) => {
  const key = asInput(keyObject, false)
  return privateDecrypt({ key, oaepHash, padding }, payload)
}

const LENGTHS = {
  RSA1_5: 0,
  'RSA-OAEP': 592,
  'RSA-OAEP-256': 784,
  'RSA-OAEP-384': 1040,
  'RSA-OAEP-512': 1296
}

module.exports = (JWA, JWK) => {
  const algs = ['RSA-OAEP', 'RSA1_5']

  if (oaepHashSupported) {
    algs.splice(1, 0, 'RSA-OAEP-256', 'RSA-OAEP-384', 'RSA-OAEP-512')
  }

  algs.forEach((jwaAlg) => {
    const padding = resolvePadding(jwaAlg)
    const oaepHash = resolveOaepHash(jwaAlg)
    JWA.keyManagementEncrypt.set(jwaAlg, wrapKey.bind(undefined, padding, oaepHash))
    JWA.keyManagementDecrypt.set(jwaAlg, unwrapKey.bind(undefined, padding, oaepHash))
    JWK.RSA.wrapKey[jwaAlg] = key => (key.use === 'enc' || key.use === undefined) && key.length >= LENGTHS[jwaAlg]
    JWK.RSA.unwrapKey[jwaAlg] = key => key.private && (key.use === 'enc' || key.use === undefined) && key.length >= LENGTHS[jwaAlg]
  })
}


/***/ }),

/***/ 16984:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createSign, createVerify } = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const resolveNodeAlg = __webpack_require__(20125)
const { asInput } = __webpack_require__(98921)

const sign = (nodeAlg, { [KEYOBJECT]: keyObject }, payload) => {
  return createSign(nodeAlg).update(payload).sign(asInput(keyObject, false))
}

const verify = (nodeAlg, { [KEYOBJECT]: keyObject }, payload, signature) => {
  return createVerify(nodeAlg).update(payload).verify(asInput(keyObject, true), signature)
}

const LENGTHS = {
  RS256: 0,
  RS384: 624,
  RS512: 752
}

module.exports = (JWA, JWK) => {
  ['RS256', 'RS384', 'RS512'].forEach((jwaAlg) => {
    const nodeAlg = resolveNodeAlg(jwaAlg)
    JWA.sign.set(jwaAlg, sign.bind(undefined, nodeAlg))
    JWA.verify.set(jwaAlg, verify.bind(undefined, nodeAlg))
    JWK.RSA.sign[jwaAlg] = key => key.private && JWK.RSA.verify[jwaAlg](key)
    JWK.RSA.verify[jwaAlg] = key => (key.use === 'sig' || key.use === undefined) && key.length >= LENGTHS[jwaAlg]
  })
}


/***/ }),

/***/ 35172:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const {
  createSign,
  createVerify,
  constants
} = __webpack_require__(33373)

const { KEYOBJECT } = __webpack_require__(15010)
const resolveNodeAlg = __webpack_require__(20125)
const { asInput } = __webpack_require__(98921)

const sign = (nodeAlg, { [KEYOBJECT]: keyObject }, payload) => {
  const key = asInput(keyObject, false)
  return createSign(nodeAlg).update(payload).sign({
    key,
    padding: constants.RSA_PKCS1_PSS_PADDING,
    saltLength: constants.RSA_PSS_SALTLEN_DIGEST
  })
}

const verify = (nodeAlg, { [KEYOBJECT]: keyObject }, payload, signature) => {
  const key = asInput(keyObject, true)
  return createVerify(nodeAlg).update(payload).verify({
    key,
    padding: constants.RSA_PKCS1_PSS_PADDING,
    saltLength: constants.RSA_PSS_SALTLEN_DIGEST
  }, signature)
}

const LENGTHS = {
  PS256: 528,
  PS384: 784,
  PS512: 1040
}

module.exports = (JWA, JWK) => {
  ['PS256', 'PS384', 'PS512'].forEach((jwaAlg) => {
    const nodeAlg = resolveNodeAlg(jwaAlg)
    JWA.sign.set(jwaAlg, sign.bind(undefined, nodeAlg))
    JWA.verify.set(jwaAlg, verify.bind(undefined, nodeAlg))
    JWK.RSA.sign[jwaAlg] = key => key.private && JWK.RSA.verify[jwaAlg](key)
    JWK.RSA.verify[jwaAlg] = key => (key.use === 'sig' || key.use === undefined) && key.length >= LENGTHS[jwaAlg]
  })
}


/***/ }),

/***/ 73607:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inflateRawSync } = __webpack_require__(78761)

const base64url = __webpack_require__(73385)
const getKey = __webpack_require__(31308)
const { KeyStore } = __webpack_require__(42896)
const errors = __webpack_require__(52973)
const { check, decrypt, keyManagementDecrypt } = __webpack_require__(50191)
const JWK = __webpack_require__(67894)

const { createSecretKey } = __webpack_require__(98921)
const generateCEK = __webpack_require__(15242)
const validateHeaders = __webpack_require__(46904)
const { detect: resolveSerialization } = __webpack_require__(5348)

const SINGLE_RECIPIENT = new Set(['compact', 'flattened'])

const combineHeader = (prot = {}, unprotected = {}, header = {}) => {
  if (typeof prot === 'string') {
    prot = base64url.JSON.decode(prot)
  }

  const p2s = prot.p2s || unprotected.p2s || header.p2s
  const apu = prot.apu || unprotected.apu || header.apu
  const apv = prot.apv || unprotected.apv || header.apv
  const iv = prot.iv || unprotected.iv || header.iv
  const tag = prot.tag || unprotected.tag || header.tag

  return {
    ...prot,
    ...unprotected,
    ...header,
    ...(typeof p2s === 'string' ? { p2s: base64url.decodeToBuffer(p2s) } : undefined),
    ...(typeof apu === 'string' ? { apu: base64url.decodeToBuffer(apu) } : undefined),
    ...(typeof apv === 'string' ? { apv: base64url.decodeToBuffer(apv) } : undefined),
    ...(typeof iv === 'string' ? { iv: base64url.decodeToBuffer(iv) } : undefined),
    ...(typeof tag === 'string' ? { tag: base64url.decodeToBuffer(tag) } : undefined)
  }
}

/*
 * @public
 */
const jweDecrypt = (skipValidateHeaders, serialization, jwe, key, { crit = [], complete = false, algorithms } = {}) => {
  key = getKey(key, true)

  if (algorithms !== undefined && (!Array.isArray(algorithms) || algorithms.some(s => typeof s !== 'string' || !s))) {
    throw new TypeError('"algorithms" option must be an array of non-empty strings')
  } else if (algorithms) {
    algorithms = new Set(algorithms)
  }

  if (!Array.isArray(crit) || crit.some(s => typeof s !== 'string' || !s)) {
    throw new TypeError('"crit" option must be an array of non-empty strings')
  }

  if (!serialization) {
    serialization = resolveSerialization(jwe)
  }

  let alg, ciphertext, enc, encryptedKey, iv, opts, prot, tag, unprotected, cek, aad, header

  // treat general format with one recipient as flattened
  // skips iteration and avoids multi errors in this case
  if (serialization === 'general' && jwe.recipients.length === 1) {
    serialization = 'flattened'
    const { recipients, ...root } = jwe
    jwe = { ...root, ...recipients[0] }
  }

  if (SINGLE_RECIPIENT.has(serialization)) {
    if (serialization === 'compact') { // compact serialization format
      ([prot, encryptedKey, iv, ciphertext, tag] = jwe.split('.'))
    } else { // flattened serialization format
      ({ protected: prot, encrypted_key: encryptedKey, iv, ciphertext, tag, unprotected, aad, header } = jwe)
    }

    if (!skipValidateHeaders) {
      validateHeaders(prot, unprotected, [{ header }], true, crit)
    }

    opts = combineHeader(prot, unprotected, header)

    ;({ alg, enc } = opts)

    if (algorithms && !algorithms.has(alg === 'dir' ? enc : alg)) {
      throw new errors.JOSEAlgNotWhitelisted('alg not whitelisted')
    }

    if (key instanceof KeyStore) {
      const keystore = key
      let keys
      if (opts.alg === 'dir') {
        keys = keystore.all({ kid: opts.kid, alg: opts.enc, key_ops: ['decrypt'] })
      } else {
        keys = keystore.all({ kid: opts.kid, alg: opts.alg, key_ops: ['unwrapKey'] })
      }
      switch (keys.length) {
        case 0:
          throw new errors.JWKSNoMatchingKey()
        case 1:
          // treat the call as if a Key instance was passed in
          // skips iteration and avoids multi errors in this case
          key = keys[0]
          break
        default: {
          const errs = []
          for (const key of keys) {
            try {
              return jweDecrypt(true, serialization, jwe, key, { crit, complete, algorithms: algorithms ? [...algorithms] : undefined })
            } catch (err) {
              errs.push(err)
              continue
            }
          }

          const multi = new errors.JOSEMultiError(errs)
          if ([...multi].some(e => e instanceof errors.JWEDecryptionFailed)) {
            throw new errors.JWEDecryptionFailed()
          }
          throw multi
        }
      }
    }

    check(key, ...(alg === 'dir' ? ['decrypt', enc] : ['keyManagementDecrypt', alg]))

    try {
      if (alg === 'dir') {
        cek = JWK.asKey(key, { alg: enc, use: 'enc' })
      } else if (alg === 'ECDH-ES') {
        const unwrapped = keyManagementDecrypt(alg, key, undefined, opts)
        cek = JWK.asKey(createSecretKey(unwrapped), { alg: enc, use: 'enc' })
      } else {
        const unwrapped = keyManagementDecrypt(alg, key, base64url.decodeToBuffer(encryptedKey), opts)
        cek = JWK.asKey(createSecretKey(unwrapped), { alg: enc, use: 'enc' })
      }
    } catch (err) {
      // To mitigate the attacks described in RFC 3218, the
      // recipient MUST NOT distinguish between format, padding, and length
      // errors of encrypted keys.  It is strongly recommended, in the event
      // of receiving an improperly formatted key, that the recipient
      // substitute a randomly generated CEK and proceed to the next step, to
      // mitigate timing attacks.
      cek = generateCEK(enc)
    }

    let adata
    if (aad) {
      adata = Buffer.concat([
        Buffer.from(prot || ''),
        Buffer.from('.'),
        Buffer.from(aad)
      ])
    } else {
      adata = Buffer.from(prot || '')
    }

    try {
      iv = base64url.decodeToBuffer(iv)
    } catch (err) {}
    try {
      tag = base64url.decodeToBuffer(tag)
    } catch (err) {}

    let cleartext = decrypt(enc, cek, base64url.decodeToBuffer(ciphertext), { iv, tag, aad: adata })

    if (opts.zip) {
      cleartext = inflateRawSync(cleartext)
    }

    if (complete) {
      const result = { cleartext, key, cek }
      if (aad) result.aad = aad
      if (header) result.header = header
      if (unprotected) result.unprotected = unprotected
      if (prot) result.protected = base64url.JSON.decode(prot)
      return result
    }

    return cleartext
  }

  validateHeaders(jwe.protected, jwe.unprotected, jwe.recipients.map(({ header }) => ({ header })), true, crit)

  // general serialization format
  const { recipients, ...root } = jwe
  const errs = []
  for (const recipient of recipients) {
    try {
      return jweDecrypt(true, 'flattened', { ...root, ...recipient }, key, { crit, complete, algorithms: algorithms ? [...algorithms] : undefined })
    } catch (err) {
      errs.push(err)
      continue
    }
  }

  const multi = new errors.JOSEMultiError(errs)
  if ([...multi].some(e => e instanceof errors.JWEDecryptionFailed)) {
    throw new errors.JWEDecryptionFailed()
  } else if ([...multi].every(e => e instanceof errors.JWKSNoMatchingKey)) {
    throw new errors.JWKSNoMatchingKey()
  }
  throw multi
}

module.exports = jweDecrypt.bind(undefined, false, undefined)


/***/ }),

/***/ 19094:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { deflateRawSync } = __webpack_require__(78761)

const { KEYOBJECT } = __webpack_require__(15010)
const generateIV = __webpack_require__(93137)
const base64url = __webpack_require__(73385)
const getKey = __webpack_require__(31308)
const isObject = __webpack_require__(41805)
const { createSecretKey } = __webpack_require__(98921)
const deepClone = __webpack_require__(43653)
const importKey = __webpack_require__(13468)
const { JWEInvalid } = __webpack_require__(52973)
const { check, keyManagementEncrypt, encrypt } = __webpack_require__(50191)

const serializers = __webpack_require__(5348)
const generateCEK = __webpack_require__(15242)
const validateHeaders = __webpack_require__(46904)

const PROCESS_RECIPIENT = Symbol('PROCESS_RECIPIENT')

class Encrypt {
  // TODO: in v2.x swap unprotectedHeader and aad
  constructor (cleartext, protectedHeader, unprotectedHeader, aad) {
    if (!Buffer.isBuffer(cleartext) && typeof cleartext !== 'string') {
      throw new TypeError('cleartext argument must be a Buffer or a string')
    }
    cleartext = Buffer.from(cleartext)

    if (aad !== undefined && !Buffer.isBuffer(aad) && typeof aad !== 'string') {
      throw new TypeError('aad argument must be a Buffer or a string when provided')
    }
    aad = aad ? Buffer.from(aad) : undefined

    if (protectedHeader !== undefined && !isObject(protectedHeader)) {
      throw new TypeError('protectedHeader argument must be a plain object when provided')
    }

    if (unprotectedHeader !== undefined && !isObject(unprotectedHeader)) {
      throw new TypeError('unprotectedHeader argument must be a plain object when provided')
    }

    this._recipients = []
    this._cleartext = cleartext
    this._aad = aad
    this._unprotected = unprotectedHeader ? deepClone(unprotectedHeader) : undefined
    this._protected = protectedHeader ? deepClone(protectedHeader) : undefined
  }

  /*
   * @public
   */
  recipient (key, header) {
    key = getKey(key)

    if (header !== undefined && !isObject(header)) {
      throw new TypeError('header argument must be a plain object when provided')
    }

    this._recipients.push({
      key,
      header: header ? deepClone(header) : undefined
    })

    return this
  }

  /*
   * @private
   */
  [PROCESS_RECIPIENT] (recipient) {
    const unprotectedHeader = this._unprotected
    const protectedHeader = this._protected
    const { length: recipientCount } = this._recipients

    const jweHeader = {
      ...protectedHeader,
      ...unprotectedHeader,
      ...recipient.header
    }
    const { key } = recipient

    const enc = jweHeader.enc
    let alg = jweHeader.alg

    if (key.use === 'sig') {
      throw new TypeError('a key with "use":"sig" is not usable for encryption')
    }

    if (alg === 'dir') {
      check(key, 'encrypt', enc)
    } else if (alg) {
      check(key, 'keyManagementEncrypt', alg)
    } else {
      alg = key.alg || [...key.algorithms('wrapKey')][0] || [...key.algorithms('deriveKey')][0]

      if (alg === 'ECDH-ES' && recipientCount !== 1) {
        alg = [...key.algorithms('deriveKey')][1]
      }

      if (!alg) {
        throw new JWEInvalid('could not resolve a usable "alg" for a recipient')
      }

      if (recipientCount === 1) {
        if (protectedHeader) {
          protectedHeader.alg = alg
        } else {
          this._protected = { alg }
        }
      } else {
        if (recipient.header) {
          recipient.header.alg = alg
        } else {
          recipient.header = { alg }
        }
      }
    }

    let wrapped
    let generatedHeader

    if (key.kty === 'oct' && alg === 'dir') {
      this._cek = importKey(key[KEYOBJECT], { use: 'enc', alg: enc })
    } else {
      check(this._cek, 'encrypt', enc)
      ;({ wrapped, header: generatedHeader } = keyManagementEncrypt(alg, key, this._cek[KEYOBJECT].export(), { enc, alg }))
      if (alg === 'ECDH-ES') {
        this._cek = importKey(createSecretKey(wrapped), { use: 'enc', alg: enc })
      }
    }

    if (alg === 'dir' || alg === 'ECDH-ES') {
      recipient.encrypted_key = ''
    } else {
      recipient.encrypted_key = base64url.encodeBuffer(wrapped)
    }

    if (generatedHeader) {
      recipient.generatedHeader = generatedHeader
    }
  }

  /*
   * @public
   */
  encrypt (serialization) {
    const serializer = serializers[serialization]
    if (!serializer) {
      throw new TypeError('serialization must be one of "compact", "flattened", "general"')
    }

    if (!this._recipients.length) {
      throw new JWEInvalid('missing recipients')
    }

    serializer.validate(this._protected, this._unprotected, this._aad, this._recipients)

    let enc = validateHeaders(this._protected, this._unprotected, this._recipients, false, this._protected ? this._protected.crit : undefined)
    if (!enc) {
      enc = 'A128CBC-HS256'
      if (this._protected) {
        this._protected.enc = enc
      } else {
        this._protected = { enc }
      }
    }
    const final = {}
    this._cek = generateCEK(enc)

    for (const recipient of this._recipients) {
      this[PROCESS_RECIPIENT](recipient)
    }

    const iv = generateIV(enc)
    final.iv = base64url.encodeBuffer(iv)

    if (this._recipients.length === 1 && this._recipients[0].generatedHeader) {
      const [{ generatedHeader }] = this._recipients
      delete this._recipients[0].generatedHeader
      this._protected = {
        ...this._protected,
        ...generatedHeader
      }
    }

    if (this._protected) {
      final.protected = base64url.JSON.encode(this._protected)
    }
    final.unprotected = this._unprotected

    let aad
    if (this._aad) {
      final.aad = base64url.encode(this._aad)
      aad = Buffer.concat([
        Buffer.from(final.protected || ''),
        Buffer.from('.'),
        Buffer.from(final.aad)
      ])
    } else {
      aad = Buffer.from(final.protected || '')
    }

    let cleartext = this._cleartext
    if (this._protected && 'zip' in this._protected) {
      cleartext = deflateRawSync(cleartext)
    }

    const { ciphertext, tag } = encrypt(enc, this._cek, cleartext, { iv, aad })
    final.tag = base64url.encodeBuffer(tag)
    final.ciphertext = base64url.encodeBuffer(ciphertext)

    return serializer(final, this._recipients)
  }
}

module.exports = Encrypt


/***/ }),

/***/ 15242:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { randomBytes } = __webpack_require__(33373)

const { createSecretKey } = __webpack_require__(98921)
const { KEYLENGTHS } = __webpack_require__(15501)
const Key = __webpack_require__(50504)

module.exports = (alg) => {
  const keyLength = KEYLENGTHS.get(alg)

  if (!keyLength) {
    return new Key({ type: 'secret' })
  }

  return new Key(createSecretKey(randomBytes(keyLength / 8)), { use: 'enc', alg })
}


/***/ }),

/***/ 72851:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Encrypt = __webpack_require__(19094)
const decrypt = __webpack_require__(73607)

// TODO: in v2.x swap unprotectedHeader and aad
const single = (serialization, cleartext, key, protectedHeader, unprotectedHeader, aad) => {
  return new Encrypt(cleartext, protectedHeader, unprotectedHeader, aad)
    .recipient(key)
    .encrypt(serialization)
}

module.exports.Encrypt = Encrypt
module.exports.encrypt = single.bind(undefined, 'compact')
module.exports.encrypt.flattened = single.bind(undefined, 'flattened')
module.exports.encrypt.general = single.bind(undefined, 'general')

module.exports.decrypt = decrypt


/***/ }),

/***/ 5348:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const isObject = __webpack_require__(41805)
let validateCrit = __webpack_require__(530)

const { JWEInvalid } = __webpack_require__(52973)

validateCrit = validateCrit.bind(undefined, JWEInvalid)

const compactSerializer = (final, [recipient]) => {
  return `${final.protected}.${recipient.encrypted_key}.${final.iv}.${final.ciphertext}.${final.tag}`
}
compactSerializer.validate = (protectedHeader, unprotectedHeader, aad, { 0: { header }, length }) => {
  if (length !== 1 || aad || unprotectedHeader || header) {
    throw new JWEInvalid('JWE Compact Serialization doesn\'t support multiple recipients, JWE unprotected headers or AAD')
  }
  validateCrit(protectedHeader, unprotectedHeader, protectedHeader ? protectedHeader.crit : undefined)
}

const flattenedSerializer = (final, [recipient]) => {
  const { header, encrypted_key: encryptedKey } = recipient

  return {
    ...(final.protected ? { protected: final.protected } : undefined),
    ...(final.unprotected ? { unprotected: final.unprotected } : undefined),
    ...(header ? { header } : undefined),
    ...(encryptedKey ? { encrypted_key: encryptedKey } : undefined),
    ...(final.aad ? { aad: final.aad } : undefined),
    iv: final.iv,
    ciphertext: final.ciphertext,
    tag: final.tag
  }
}
flattenedSerializer.validate = (protectedHeader, unprotectedHeader, aad, { 0: { header }, length }) => {
  if (length !== 1) {
    throw new JWEInvalid('Flattened JWE JSON Serialization doesn\'t support multiple recipients')
  }
  validateCrit(protectedHeader, { ...unprotectedHeader, ...header }, protectedHeader ? protectedHeader.crit : undefined)
}

const generalSerializer = (final, recipients) => {
  const result = {
    ...(final.protected ? { protected: final.protected } : undefined),
    ...(final.unprotected ? { unprotected: final.unprotected } : undefined),
    recipients: recipients.map(({ header, encrypted_key: encryptedKey, generatedHeader }) => {
      if (!header && !encryptedKey && !generatedHeader) {
        return false
      }

      return {
        ...(header || generatedHeader ? { header: { ...header, ...generatedHeader } } : undefined),
        ...(encryptedKey ? { encrypted_key: encryptedKey } : undefined)
      }
    }).filter(Boolean),
    ...(final.aad ? { aad: final.aad } : undefined),
    iv: final.iv,
    ciphertext: final.ciphertext,
    tag: final.tag
  }

  if (!result.recipients.length) {
    delete result.recipients
  }

  return result
}
generalSerializer.validate = (protectedHeader, unprotectedHeader, aad, recipients) => {
  recipients.forEach(({ header }) => {
    validateCrit(protectedHeader, { ...header, ...unprotectedHeader }, protectedHeader ? protectedHeader.crit : undefined)
  })
}

const isJSON = (input) => {
  return isObject(input) &&
    typeof input.ciphertext === 'string' &&
    typeof input.iv === 'string' &&
    typeof input.tag === 'string' &&
    (input.unprotected === undefined || isObject(input.unprotected)) &&
    (input.protected === undefined || typeof input.protected === 'string') &&
    (input.aad === undefined || typeof input.aad === 'string')
}

const isSingleRecipient = (input) => {
  return (input.encrypted_key === undefined || typeof input.encrypted_key === 'string') &&
    (input.header === undefined || isObject(input.header))
}

const isValidRecipient = (recipient) => {
  return isObject(recipient) && typeof recipient.encrypted_key === 'string' && (recipient.header === undefined || isObject(recipient.header))
}

const isMultiRecipient = (input) => {
  if (Array.isArray(input.recipients) && input.recipients.every(isValidRecipient)) {
    return true
  }

  return false
}

const detect = (input) => {
  if (typeof input === 'string' && input.split('.').length === 5) {
    return 'compact'
  }

  if (isJSON(input)) {
    if (isMultiRecipient(input)) {
      return 'general'
    }

    if (isSingleRecipient(input)) {
      return 'flattened'
    }
  }

  throw new JWEInvalid('JWE malformed or invalid serialization')
}

module.exports = {
  compact: compactSerializer,
  flattened: flattenedSerializer,
  general: generalSerializer,
  detect
}


/***/ }),

/***/ 46904:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const isDisjoint = __webpack_require__(56149)
const base64url = __webpack_require__(73385)
let validateCrit = __webpack_require__(530)
const { JWEInvalid, JOSENotSupported } = __webpack_require__(52973)

validateCrit = validateCrit.bind(undefined, JWEInvalid)

module.exports = (prot, unprotected, recipients, checkAlgorithms, crit) => {
  if (typeof prot === 'string') {
    try {
      prot = base64url.JSON.decode(prot)
    } catch (err) {
      throw new JWEInvalid('could not parse JWE protected header')
    }
  }

  let alg = []
  const enc = new Set()
  if (!isDisjoint(prot, unprotected) || !recipients.every(({ header }) => {
    if (typeof header === 'object') {
      alg.push(header.alg)
      enc.add(header.enc)
    }
    const combined = { ...unprotected, ...header }
    validateCrit(prot, combined, crit)
    if ('zip' in combined) {
      throw new JWEInvalid('"zip" Header Parameter MUST be integrity protected')
    } else if (prot && 'zip' in prot && prot.zip !== 'DEF') {
      throw new JOSENotSupported('only "DEF" compression algorithm is supported')
    }
    return isDisjoint(header, prot) && isDisjoint(header, unprotected)
  })) {
    throw new JWEInvalid('JWE Shared Protected, JWE Shared Unprotected and JWE Per-Recipient Header Parameter names must be disjoint')
  }

  if (typeof prot === 'object') {
    alg.push(prot.alg)
    enc.add(prot.enc)
  }
  if (typeof unprotected === 'object') {
    alg.push(unprotected.alg)
    enc.add(unprotected.enc)
  }

  alg = alg.filter(Boolean)
  enc.delete(undefined)

  if (recipients.length !== 1) {
    if (alg.includes('dir') || alg.includes('ECDH-ES')) {
      throw new JWEInvalid('dir and ECDH-ES alg may only be used with a single recipient')
    }
  }

  if (checkAlgorithms) {
    if (alg.length !== recipients.length) {
      throw new JWEInvalid('missing Key Management algorithm')
    }
    if (enc.size === 0) {
      throw new JWEInvalid('missing Content Encryption algorithm')
    } else if (enc.size !== 1) {
      throw new JWEInvalid('there must only be one Content Encryption algorithm')
    }
  } else {
    if (enc.size > 1) {
      throw new JWEInvalid('there must only be one Content Encryption algorithm')
    }
  }

  return [...enc][0]
}


/***/ }),

/***/ 39377:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const errors = __webpack_require__(52973)

const importKey = __webpack_require__(13468)

const RSAKey = __webpack_require__(73242)
const ECKey = __webpack_require__(53426)
const OKPKey = __webpack_require__(24510)
const OctKey = __webpack_require__(50504)

const generate = async (kty, crvOrSize, params, generatePrivate = true) => {
  switch (kty) {
    case 'RSA':
      return importKey(
        await RSAKey.generate(crvOrSize, generatePrivate),
        params
      )
    case 'EC':
      return importKey(
        await ECKey.generate(crvOrSize, generatePrivate),
        params
      )
    case 'OKP':
      return importKey(
        await OKPKey.generate(crvOrSize, generatePrivate),
        params
      )
    case 'oct':
      return importKey(
        await OctKey.generate(crvOrSize, generatePrivate),
        params
      )
    default:
      throw new errors.JOSENotSupported(`unsupported key type: ${kty}`)
  }
}

const generateSync = (kty, crvOrSize, params, generatePrivate = true) => {
  switch (kty) {
    case 'RSA':
      return importKey(RSAKey.generateSync(crvOrSize, generatePrivate), params)
    case 'EC':
      return importKey(ECKey.generateSync(crvOrSize, generatePrivate), params)
    case 'OKP':
      return importKey(OKPKey.generateSync(crvOrSize, generatePrivate), params)
    case 'oct':
      return importKey(OctKey.generateSync(crvOrSize, generatePrivate), params)
    default:
      throw new errors.JOSENotSupported(`unsupported key type: ${kty}`)
  }
}

module.exports.generate = generate
module.exports.generateSync = generateSync


/***/ }),

/***/ 13468:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { deprecate } = __webpack_require__(31669)

const { createPublicKey, createPrivateKey, createSecretKey, KeyObject } = __webpack_require__(98921)
const base64url = __webpack_require__(73385)
const isObject = __webpack_require__(41805)
const { jwkToPem } = __webpack_require__(69693)
const errors = __webpack_require__(52973)

const RSAKey = __webpack_require__(73242)
const ECKey = __webpack_require__(53426)
const OKPKey = __webpack_require__(24510)
const OctKey = __webpack_require__(50504)

const importable = new Set(['string', 'buffer', 'object'])

const mergedParameters = (target = {}, source = {}) => {
  return {
    alg: source.alg,
    key_ops: source.key_ops,
    kid: source.kid,
    use: source.use,
    x5c: source.x5c,
    x5t: source.x5t,
    'x5t#S256': source['x5t#S256'],
    ...target
  }
}

const openSSHpublicKey = /^[a-zA-Z0-9-]+ AAAA(?:[0-9A-Za-z+/])+(?:==|=)?(?: .*)?$/

const asKey = (key, parameters, { calculateMissingRSAPrimes = false } = {}) => {
  let privateKey, publicKey, secret

  if (!importable.has(typeof key)) {
    throw new TypeError('key argument must be a string, buffer or an object')
  }

  if (parameters !== undefined && !isObject(parameters)) {
    throw new TypeError('parameters argument must be a plain object when provided')
  }

  if (key instanceof KeyObject) {
    switch (key.type) {
      case 'private':
        privateKey = key
        break
      case 'public':
        publicKey = key
        break
      case 'secret':
        secret = key
        break
    }
  } else if (typeof key === 'object' && key && 'kty' in key && key.kty === 'oct') { // symmetric key <Object>
    try {
      secret = createSecretKey(base64url.decodeToBuffer(key.k))
    } catch (err) {
      if (!('k' in key)) {
        secret = { type: 'secret' }
      }
    }
    parameters = mergedParameters(parameters, key)
  } else if (typeof key === 'object' && key && 'kty' in key) { // assume JWK formatted asymmetric key <Object>
    ({ calculateMissingRSAPrimes = false } = parameters || { calculateMissingRSAPrimes })
    let pem

    try {
      pem = jwkToPem(key, { calculateMissingRSAPrimes })
    } catch (err) {
      if (err instanceof errors.JOSEError) {
        throw err
      }
    }

    if (pem && key.d) {
      privateKey = createPrivateKey(pem)
    } else if (pem) {
      publicKey = createPublicKey(pem)
    }

    parameters = mergedParameters({}, key)
  } else if (key && (typeof key === 'object' || typeof key === 'string')) { // <Object> | <string> | <Buffer> passed to crypto.createPrivateKey or crypto.createPublicKey or <Buffer> passed to crypto.createSecretKey
    try {
      privateKey = createPrivateKey(key)
    } catch (err) {
      if (err instanceof errors.JOSEError) {
        throw err
      }
    }

    try {
      publicKey = createPublicKey(key)
      if (key.startsWith('-----BEGIN CERTIFICATE-----') && (!parameters || !('x5c' in parameters))) {
        parameters = mergedParameters(parameters, {
          x5c: [key.replace(/(?:-----(?:BEGIN|END) CERTIFICATE-----|\s)/g, '')]
        })
      }
    } catch (err) {
      if (err instanceof errors.JOSEError) {
        throw err
      }
    }

    try {
      // this is to filter out invalid PEM keys and certs, i'll rather have them fail import then
      // have them imported as symmetric "oct" keys
      if (!key.includes('-----BEGIN') && !openSSHpublicKey.test(key.toString('ascii').replace(/[\r\n]/g, ''))) {
        secret = createSecretKey(Buffer.isBuffer(key) ? key : Buffer.from(key))
      }
    } catch (err) {}
  }

  const keyObject = privateKey || publicKey || secret

  if (privateKey || publicKey) {
    switch (keyObject.asymmetricKeyType) {
      case 'rsa':
        return new RSAKey(keyObject, parameters)
      case 'ec':
        return new ECKey(keyObject, parameters)
      case 'ed25519':
      case 'ed448':
      case 'x25519':
      case 'x448':
        return new OKPKey(keyObject, parameters)
      default:
        throw new errors.JOSENotSupported('only RSA, EC and OKP asymmetric keys are supported')
    }
  } else if (secret) {
    return new OctKey(keyObject, parameters)
  }

  throw new errors.JWKImportFailed('key import failed')
}

module.exports = asKey
Object.defineProperty(asKey, 'deprecated', {
  value: deprecate((key, parameters) => { return asKey(key, parameters, { calculateMissingRSAPrimes: true }) }, 'JWK.importKey() is deprecated, use JWK.asKey() instead'),
  enumerable: false
})


/***/ }),

/***/ 67894:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Key = __webpack_require__(57841)
const None = __webpack_require__(98012)
const EmbeddedJWK = __webpack_require__(84902)
const EmbeddedX5C = __webpack_require__(303)
const importKey = __webpack_require__(13468)
const generate = __webpack_require__(39377)

module.exports = {
  ...generate,
  asKey: importKey,
  isKey: input => input instanceof Key,
  None,
  EmbeddedJWK,
  EmbeddedX5C
}

/* deprecated */
Object.defineProperty(module.exports, "importKey", ({
  value: importKey.deprecated,
  enumerable: false
}))


/***/ }),

/***/ 57841:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { strict: assert } = __webpack_require__(42357)
const { inspect } = __webpack_require__(31669)
const { EOL } = __webpack_require__(12087)

const { keyObjectSupported } = __webpack_require__(32457)
const { createPublicKey } = __webpack_require__(98921)
const { keyObjectToJWK } = __webpack_require__(69693)
const {
  THUMBPRINT_MATERIAL, PUBLIC_MEMBERS, PRIVATE_MEMBERS, JWK_MEMBERS, KEYOBJECT,
  USES_MAPPING, OPS, USES
} = __webpack_require__(15010)
const isObject = __webpack_require__(41805)
const thumbprint = __webpack_require__(82253)
const errors = __webpack_require__(52973)

const privateApi = Symbol('privateApi')
const { JWK } = __webpack_require__(15501)

class Key {
  constructor (keyObject, { alg, use, kid, key_ops: ops, x5c, x5t, 'x5t#S256': x5t256 } = {}) {
    if (use !== undefined) {
      if (typeof use !== 'string' || !USES.has(use)) {
        throw new TypeError('`use` must be either "sig" or "enc" string when provided')
      }
    }

    if (alg !== undefined) {
      if (typeof alg !== 'string' || !alg) {
        throw new TypeError('`alg` must be a non-empty string when provided')
      }
    }

    if (kid !== undefined) {
      if (typeof kid !== 'string' || !kid) {
        throw new TypeError('`kid` must be a non-empty string when provided')
      }
    }

    if (ops !== undefined) {
      if (!Array.isArray(ops) || !ops.length || ops.some(o => typeof o !== 'string')) {
        throw new TypeError('`key_ops` must be a non-empty array of strings when provided')
      }
      ops = Array.from(new Set(ops)).filter(x => OPS.has(x))
    }

    if (ops && use) {
      if (
        (use === 'enc' && ops.some(x => USES_MAPPING.sig.has(x))) ||
        (use === 'sig' && ops.some(x => USES_MAPPING.enc.has(x)))
      ) {
        throw new errors.JWKInvalid('inconsistent JWK "use" and "key_ops"')
      }
    }

    if (keyObjectSupported && x5c !== undefined) {
      if (!Array.isArray(x5c) || !x5c.length || x5c.some(c => typeof c !== 'string')) {
        throw new TypeError('`x5c` must be an array of one or more PKIX certificates when provided')
      }

      x5c.forEach((cert, i) => {
        let publicKey
        try {
          publicKey = createPublicKey({
            key: `-----BEGIN CERTIFICATE-----${EOL}${(cert.match(/.{1,64}/g) || []).join(EOL)}${EOL}-----END CERTIFICATE-----`, format: 'pem'
          })
        } catch (err) {
          throw new errors.JWKInvalid(`\`x5c\` member at index ${i} is not a valid base64-encoded DER PKIX certificate`)
        }
        if (i === 0) {
          try {
            assert.deepEqual(
              publicKey.export({ type: 'spki', format: 'der' }),
              (keyObject.type === 'public' ? keyObject : createPublicKey(keyObject)).export({ type: 'spki', format: 'der' })
            )
          } catch (err) {
            throw new errors.JWKInvalid('The key in the first `x5c` certificate MUST match the public key represented by the JWK')
          }
        }
      })
    }

    Object.defineProperties(this, {
      [KEYOBJECT]: { value: isObject(keyObject) ? undefined : keyObject },
      keyObject: {
        get () {
          if (!keyObjectSupported) {
            throw new errors.JOSENotSupported('KeyObject class is not supported in your Node.js runtime version')
          }

          return this[KEYOBJECT]
        }
      },
      type: { value: keyObject.type },
      private: { value: keyObject.type === 'private' },
      public: { value: keyObject.type === 'public' },
      secret: { value: keyObject.type === 'secret' },
      alg: { value: alg, enumerable: alg !== undefined },
      use: { value: use, enumerable: use !== undefined },
      x5c: {
        enumerable: x5c !== undefined,
        ...(x5c ? { get () { return [...x5c] } } : { value: undefined })
      },
      key_ops: {
        enumerable: ops !== undefined,
        ...(ops ? { get () { return [...ops] } } : { value: undefined })
      },
      kid: {
        enumerable: true,
        ...(kid ? { value: kid } : {
          get () {
            Object.defineProperty(this, 'kid', { value: this.thumbprint, configurable: false })
            return this.kid
          },
          configurable: true
        })
      },
      ...(x5c ? {
        x5t: {
          enumerable: true,
          ...(x5t ? { value: x5t } : {
            get () {
              Object.defineProperty(this, 'x5t', { value: thumbprint.x5t(this.x5c[0]), configurable: false })
              return this.x5t
            },
            configurable: true
          })
        }
      } : undefined),
      ...(x5c ? {
        'x5t#S256': {
          enumerable: true,
          ...(x5t256 ? { value: x5t256 } : {
            get () {
              Object.defineProperty(this, 'x5t#S256', { value: thumbprint['x5t#S256'](this.x5c[0]), configurable: false })
              return this['x5t#S256']
            },
            configurable: true
          })
        }
      } : undefined),
      thumbprint: {
        get () {
          Object.defineProperty(this, 'thumbprint', { value: thumbprint.kid(this[THUMBPRINT_MATERIAL]()), configurable: false })
          return this.thumbprint
        },
        configurable: true
      }
    })
  }

  toPEM (priv = false, encoding = {}) {
    if (this.secret) {
      throw new TypeError('symmetric keys cannot be exported as PEM')
    }

    if (priv && this.public === true) {
      throw new TypeError('public key cannot be exported as private')
    }

    const { type = priv ? 'pkcs8' : 'spki', cipher, passphrase } = encoding

    let keyObject = this[KEYOBJECT]

    if (!priv) {
      if (this.private) {
        keyObject = createPublicKey(keyObject)
      }
      if (cipher || passphrase) {
        throw new TypeError('cipher and passphrase can only be applied when exporting private keys')
      }
    }

    if (priv) {
      return keyObject.export({ format: 'pem', type, cipher, passphrase })
    }

    return keyObject.export({ format: 'pem', type })
  }

  toJWK (priv = false) {
    if (priv && this.public === true) {
      throw new TypeError('public key cannot be exported as private')
    }

    const components = [...this.constructor[priv ? PRIVATE_MEMBERS : PUBLIC_MEMBERS]]
      .map(k => [k, this[k]])

    const result = {}

    Object.keys(components).forEach((key) => {
      const [k, v] = components[key]

      result[k] = v
    })

    result.kty = this.kty
    result.kid = this.kid

    if (this.alg) {
      result.alg = this.alg
    }

    if (this.key_ops && this.key_ops.length) {
      result.key_ops = this.key_ops
    }

    if (this.use) {
      result.use = this.use
    }

    if (this.x5c) {
      result.x5c = this.x5c
    }

    if (this.x5t) {
      result.x5t = this.x5t
    }

    if (this['x5t#S256']) {
      result['x5t#S256'] = this['x5t#S256']
    }

    return result
  }

  [JWK_MEMBERS] () {
    const props = this[KEYOBJECT].type === 'private' ? this.constructor[PRIVATE_MEMBERS] : this.constructor[PUBLIC_MEMBERS]
    Object.defineProperties(this, [...props].reduce((acc, component) => {
      acc[component] = {
        get () {
          const jwk = keyObjectToJWK(this[KEYOBJECT])
          Object.defineProperties(
            this,
            Object.entries(jwk)
              .filter(([key]) => props.has(key))
              .reduce((acc, [key, value]) => {
                acc[key] = { value, enumerable: this.constructor[PUBLIC_MEMBERS].has(key), configurable: false }
                return acc
              }, {})
          )

          return this[component]
        },
        enumerable: this.constructor[PUBLIC_MEMBERS].has(component),
        configurable: true
      }
      return acc
    }, {}))
  }

  /* c8 ignore next 8 */
  [inspect.custom] () {
    return `${this.constructor.name} ${inspect(this.toJWK(false), {
      depth: Infinity,
      colors: process.stdout.isTTY,
      compact: false,
      sorted: true
    })}`
  }

  /* c8 ignore next 3 */
  [THUMBPRINT_MATERIAL] () {
    throw new Error(`"[THUMBPRINT_MATERIAL]()" is not implemented on ${this.constructor.name}`)
  }

  algorithms (operation, /* the rest is private API */ int, opts) {
    const { use = this.use, alg = this.alg, key_ops: ops = this.key_ops } = int === privateApi ? opts : {}
    if (alg) {
      return new Set(this.algorithms(operation, privateApi, { alg: null, use, key_ops: ops }).has(alg) ? [alg] : undefined)
    }

    if (typeof operation === 'symbol') {
      try {
        return this[operation]()
      } catch (err) {
        return new Set()
      }
    }

    if (operation && ops && !ops.includes(operation)) {
      return new Set()
    }

    switch (operation) {
      case 'decrypt':
      case 'deriveKey':
      case 'encrypt':
      case 'sign':
      case 'unwrapKey':
      case 'verify':
      case 'wrapKey':
        return new Set(Object.entries(JWK[this.kty][operation]).map(([alg, fn]) => fn(this) ? alg : undefined).filter(Boolean))
      case undefined:
        return new Set([
          ...this.algorithms('sign'),
          ...this.algorithms('verify'),
          ...this.algorithms('decrypt'),
          ...this.algorithms('encrypt'),
          ...this.algorithms('unwrapKey'),
          ...this.algorithms('wrapKey'),
          ...this.algorithms('deriveKey')
        ])
      default:
        throw new TypeError('invalid key operation')
    }
  }

  /* c8 ignore next 3 */
  static async generate () {
    throw new Error(`"static async generate()" is not implemented on ${this.name}`)
  }

  /* c8 ignore next 3 */
  static generateSync () {
    throw new Error(`"static generateSync()" is not implemented on ${this.name}`)
  }

  /* c8 ignore next 3 */
  static get [PUBLIC_MEMBERS] () {
    throw new Error(`"static get [PUBLIC_MEMBERS]()" is not implemented on ${this.name}`)
  }

  /* c8 ignore next 3 */
  static get [PRIVATE_MEMBERS] () {
    throw new Error(`"static get [PRIVATE_MEMBERS]()" is not implemented on ${this.name}`)
  }
}

module.exports = Key


/***/ }),

/***/ 53426:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { generateKeyPairSync, generateKeyPair: async } = __webpack_require__(33373)
const { promisify } = __webpack_require__(31669)

const {
  THUMBPRINT_MATERIAL, JWK_MEMBERS, PUBLIC_MEMBERS,
  PRIVATE_MEMBERS, KEY_MANAGEMENT_DECRYPT, KEY_MANAGEMENT_ENCRYPT
} = __webpack_require__(15010)
const { EC_CURVES } = __webpack_require__(15501)
const { keyObjectSupported } = __webpack_require__(32457)
const { createPublicKey, createPrivateKey } = __webpack_require__(98921)

const errors = __webpack_require__(52973)
const { name: secp256k1 } = __webpack_require__(2044)

const Key = __webpack_require__(57841)

const generateKeyPair = promisify(async)

const EC_PUBLIC = new Set(['crv', 'x', 'y'])
Object.freeze(EC_PUBLIC)
const EC_PRIVATE = new Set([...EC_PUBLIC, 'd'])
Object.freeze(EC_PRIVATE)

// Elliptic Curve Key Type
class ECKey extends Key {
  constructor (...args) {
    super(...args)
    this[JWK_MEMBERS]()
    Object.defineProperty(this, 'kty', { value: 'EC', enumerable: true })
    if (!EC_CURVES.has(this.crv)) {
      throw new errors.JOSENotSupported('unsupported EC key curve')
    }
  }

  static get [PUBLIC_MEMBERS] () {
    return EC_PUBLIC
  }

  static get [PRIVATE_MEMBERS] () {
    return EC_PRIVATE
  }

  // https://tc39.github.io/ecma262/#sec-ordinaryownpropertykeys no need for any special
  // JSON.stringify handling in V8
  [THUMBPRINT_MATERIAL] () {
    return { crv: this.crv, kty: 'EC', x: this.x, y: this.y }
  }

  [KEY_MANAGEMENT_ENCRYPT] () {
    return this.algorithms('deriveKey')
  }

  [KEY_MANAGEMENT_DECRYPT] () {
    if (this.public) {
      return new Set()
    }
    return this.algorithms('deriveKey')
  }

  static async generate (crv = 'P-256', privat = true) {
    if (!EC_CURVES.has(crv)) {
      throw new errors.JOSENotSupported(`unsupported EC key curve: ${crv}`)
    }

    if (crv === secp256k1 && crv !== 'secp256k1') {
      crv = 'secp256k1'
    }

    let privateKey, publicKey

    if (keyObjectSupported) {
      ({ privateKey, publicKey } = await generateKeyPair('ec', { namedCurve: crv }))
      return privat ? privateKey : publicKey
    }

    ({ privateKey, publicKey } = await generateKeyPair('ec', {
      namedCurve: crv,
      publicKeyEncoding: { type: 'spki', format: 'pem' },
      privateKeyEncoding: { type: 'pkcs8', format: 'pem' }
    }))

    if (privat) {
      return createPrivateKey(privateKey)
    } else {
      return createPublicKey(publicKey)
    }
  }

  static generateSync (crv = 'P-256', privat = true) {
    if (!EC_CURVES.has(crv)) {
      throw new errors.JOSENotSupported(`unsupported EC key curve: ${crv}`)
    }

    if (crv === secp256k1 && crv !== 'secp256k1') {
      crv = 'secp256k1'
    }

    let privateKey, publicKey

    if (keyObjectSupported) {
      ({ privateKey, publicKey } = generateKeyPairSync('ec', { namedCurve: crv }))
      return privat ? privateKey : publicKey
    }

    ({ privateKey, publicKey } = generateKeyPairSync('ec', {
      namedCurve: crv,
      publicKeyEncoding: { type: 'spki', format: 'pem' },
      privateKeyEncoding: { type: 'pkcs8', format: 'pem' }
    }))

    if (privat) {
      return createPrivateKey(privateKey)
    } else {
      return createPublicKey(publicKey)
    }
  }
}

module.exports = ECKey


/***/ }),

/***/ 84902:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inspect } = __webpack_require__(31669)

const Key = __webpack_require__(57841)

class EmbeddedJWK extends Key {
  constructor () {
    super({ type: 'embedded' })
    Object.defineProperties(this, {
      kid: { value: undefined },
      kty: { value: undefined },
      thumbprint: { value: undefined },
      toJWK: { value: undefined },
      toPEM: { value: undefined }
    })
  }

  /* c8 ignore next 3 */
  [inspect.custom] () {
    return 'Embedded.JWK {}'
  }

  algorithms () {
    return new Set()
  }
}

module.exports = new EmbeddedJWK()


/***/ }),

/***/ 303:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inspect } = __webpack_require__(31669)

const Key = __webpack_require__(57841)

class EmbeddedX5C extends Key {
  constructor () {
    super({ type: 'embedded' })
    Object.defineProperties(this, {
      kid: { value: undefined },
      kty: { value: undefined },
      thumbprint: { value: undefined },
      toJWK: { value: undefined },
      toPEM: { value: undefined }
    })
  }

  /* c8 ignore next 3 */
  [inspect.custom] () {
    return 'Embedded.X5C {}'
  }

  algorithms () {
    return new Set()
  }
}

module.exports = new EmbeddedX5C()


/***/ }),

/***/ 98012:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { inspect } = __webpack_require__(31669)

const Key = __webpack_require__(57841)

class NoneKey extends Key {
  constructor () {
    super({ type: 'unsecured' }, { alg: 'none' })
    Object.defineProperties(this, {
      kid: { value: undefined },
      kty: { value: undefined },
      thumbprint: { value: undefined },
      toJWK: { value: undefined },
      toPEM: { value: undefined }
    })
  }

  /* c8 ignore next 3 */
  [inspect.custom] () {
    return 'None {}'
  }

  algorithms (operation) {
    switch (operation) {
      case 'sign':
      case 'verify':
      case undefined:
        return new Set(['none'])
      default:
        return new Set()
    }
  }
}

module.exports = new NoneKey()


/***/ }),

/***/ 50504:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { randomBytes } = __webpack_require__(33373)

const { createSecretKey } = __webpack_require__(98921)
const base64url = __webpack_require__(73385)
const {
  THUMBPRINT_MATERIAL, PUBLIC_MEMBERS, PRIVATE_MEMBERS,
  KEY_MANAGEMENT_DECRYPT, KEY_MANAGEMENT_ENCRYPT, KEYOBJECT
} = __webpack_require__(15010)

const Key = __webpack_require__(57841)

const OCT_PUBLIC = new Set()
Object.freeze(OCT_PUBLIC)
const OCT_PRIVATE = new Set(['k'])
Object.freeze(OCT_PRIVATE)

// Octet sequence Key Type
class OctKey extends Key {
  constructor (...args) {
    super(...args)
    Object.defineProperties(this, {
      kty: {
        value: 'oct',
        enumerable: true
      },
      length: {
        value: this[KEYOBJECT] ? this[KEYOBJECT].symmetricKeySize * 8 : undefined
      },
      k: {
        enumerable: false,
        get () {
          if (this[KEYOBJECT]) {
            Object.defineProperty(this, 'k', {
              value: base64url.encodeBuffer(this[KEYOBJECT].export()),
              configurable: false
            })
          } else {
            Object.defineProperty(this, 'k', {
              value: undefined,
              configurable: false
            })
          }

          return this.k
        },
        configurable: true
      }
    })
  }

  static get [PUBLIC_MEMBERS] () {
    return OCT_PUBLIC
  }

  static get [PRIVATE_MEMBERS] () {
    return OCT_PRIVATE
  }

  // https://tc39.github.io/ecma262/#sec-ordinaryownpropertykeys no need for any special
  // JSON.stringify handling in V8
  [THUMBPRINT_MATERIAL] () {
    if (!this[KEYOBJECT]) {
      throw new TypeError('reference "oct" keys without "k" cannot have their thumbprint calculated')
    }
    return { k: this.k, kty: 'oct' }
  }

  [KEY_MANAGEMENT_ENCRYPT] () {
    return new Set([
      ...this.algorithms('wrapKey'),
      ...this.algorithms('deriveKey')
    ])
  }

  [KEY_MANAGEMENT_DECRYPT] () {
    return this[KEY_MANAGEMENT_ENCRYPT]()
  }

  algorithms (...args) {
    if (!this[KEYOBJECT]) {
      return new Set()
    }

    return Key.prototype.algorithms.call(this, ...args)
  }

  static async generate (...args) {
    return this.generateSync(...args)
  }

  static generateSync (len = 256, privat = true) {
    if (!privat) {
      throw new TypeError('"oct" keys cannot be generated as public')
    }
    if (!Number.isSafeInteger(len) || !len || len % 8 !== 0) {
      throw new TypeError('invalid bit length')
    }

    return createSecretKey(randomBytes(len / 8))
  }
}

module.exports = OctKey


/***/ }),

/***/ 24510:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { generateKeyPairSync, generateKeyPair: async } = __webpack_require__(33373)
const { promisify } = __webpack_require__(31669)

const {
  THUMBPRINT_MATERIAL, JWK_MEMBERS, PUBLIC_MEMBERS,
  PRIVATE_MEMBERS, KEY_MANAGEMENT_DECRYPT, KEY_MANAGEMENT_ENCRYPT
} = __webpack_require__(15010)
const { OKP_CURVES } = __webpack_require__(15501)
const { edDSASupported } = __webpack_require__(32457)
const errors = __webpack_require__(52973)

const Key = __webpack_require__(57841)

const generateKeyPair = promisify(async)

const OKP_PUBLIC = new Set(['crv', 'x'])
Object.freeze(OKP_PUBLIC)
const OKP_PRIVATE = new Set([...OKP_PUBLIC, 'd'])
Object.freeze(OKP_PRIVATE)

// Octet string key pairs Key Type
class OKPKey extends Key {
  constructor (...args) {
    super(...args)
    this[JWK_MEMBERS]()
    Object.defineProperty(this, 'kty', { value: 'OKP', enumerable: true })
    if (!OKP_CURVES.has(this.crv)) {
      throw new errors.JOSENotSupported('unsupported OKP key curve')
    }
  }

  static get [PUBLIC_MEMBERS] () {
    return OKP_PUBLIC
  }

  static get [PRIVATE_MEMBERS] () {
    return OKP_PRIVATE
  }

  // https://tc39.github.io/ecma262/#sec-ordinaryownpropertykeys no need for any special
  // JSON.stringify handling in V8
  [THUMBPRINT_MATERIAL] () {
    return { crv: this.crv, kty: 'OKP', x: this.x }
  }

  [KEY_MANAGEMENT_ENCRYPT] () {
    return this.algorithms('deriveKey')
  }

  [KEY_MANAGEMENT_DECRYPT] () {
    if (this.public) {
      return new Set()
    }
    return this.algorithms('deriveKey')
  }

  static async generate (crv = 'Ed25519', privat = true) {
    if (!edDSASupported) {
      throw new errors.JOSENotSupported('OKP keys are not supported in your Node.js runtime version')
    }

    if (!OKP_CURVES.has(crv)) {
      throw new errors.JOSENotSupported(`unsupported OKP key curve: ${crv}`)
    }

    const { privateKey, publicKey } = await generateKeyPair(crv.toLowerCase())

    return privat ? privateKey : publicKey
  }

  static generateSync (crv = 'Ed25519', privat = true) {
    if (!edDSASupported) {
      throw new errors.JOSENotSupported('OKP keys are not supported in your Node.js runtime version')
    }

    if (!OKP_CURVES.has(crv)) {
      throw new errors.JOSENotSupported(`unsupported OKP key curve: ${crv}`)
    }

    const { privateKey, publicKey } = generateKeyPairSync(crv.toLowerCase())

    return privat ? privateKey : publicKey
  }
}

module.exports = OKPKey


/***/ }),

/***/ 73242:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { generateKeyPairSync, generateKeyPair: async } = __webpack_require__(33373)
const { promisify } = __webpack_require__(31669)

const {
  THUMBPRINT_MATERIAL, JWK_MEMBERS, PUBLIC_MEMBERS,
  PRIVATE_MEMBERS, KEY_MANAGEMENT_DECRYPT, KEY_MANAGEMENT_ENCRYPT
} = __webpack_require__(15010)
const { keyObjectSupported } = __webpack_require__(32457)
const { createPublicKey, createPrivateKey } = __webpack_require__(98921)

const Key = __webpack_require__(57841)

const generateKeyPair = promisify(async)

const RSA_PUBLIC = new Set(['e', 'n'])
Object.freeze(RSA_PUBLIC)
const RSA_PRIVATE = new Set([...RSA_PUBLIC, 'd', 'p', 'q', 'dp', 'dq', 'qi'])
Object.freeze(RSA_PRIVATE)

// RSA Key Type
class RSAKey extends Key {
  constructor (...args) {
    super(...args)
    this[JWK_MEMBERS]()
    Object.defineProperties(this, {
      kty: {
        value: 'RSA',
        enumerable: true
      },
      length: {
        get () {
          Object.defineProperty(this, 'length', {
            value: Buffer.byteLength(this.n, 'base64') * 8,
            configurable: false
          })

          return this.length
        },
        configurable: true
      }
    })
  }

  static get [PUBLIC_MEMBERS] () {
    return RSA_PUBLIC
  }

  static get [PRIVATE_MEMBERS] () {
    return RSA_PRIVATE
  }

  // https://tc39.github.io/ecma262/#sec-ordinaryownpropertykeys no need for any special
  // JSON.stringify handling in V8
  [THUMBPRINT_MATERIAL] () {
    return { e: this.e, kty: 'RSA', n: this.n }
  }

  [KEY_MANAGEMENT_ENCRYPT] () {
    return this.algorithms('wrapKey')
  }

  [KEY_MANAGEMENT_DECRYPT] () {
    return this.algorithms('unwrapKey')
  }

  static async generate (len = 2048, privat = true) {
    if (!Number.isSafeInteger(len) || len < 512 || len % 8 !== 0 || (('electron' in process.versions) && len % 128 !== 0)) {
      throw new TypeError('invalid bit length')
    }

    let privateKey, publicKey

    if (keyObjectSupported) {
      ({ privateKey, publicKey } = await generateKeyPair('rsa', { modulusLength: len }))
      return privat ? privateKey : publicKey
    }

    ({ privateKey, publicKey } = await generateKeyPair('rsa', {
      modulusLength: len,
      publicKeyEncoding: { type: 'spki', format: 'pem' },
      privateKeyEncoding: { type: 'pkcs8', format: 'pem' }
    }))

    if (privat) {
      return createPrivateKey(privateKey)
    } else {
      return createPublicKey(publicKey)
    }
  }

  static generateSync (len = 2048, privat = true) {
    if (!Number.isSafeInteger(len) || len < 512 || len % 8 !== 0 || (('electron' in process.versions) && len % 128 !== 0)) {
      throw new TypeError('invalid bit length')
    }

    let privateKey, publicKey

    if (keyObjectSupported) {
      ({ privateKey, publicKey } = generateKeyPairSync('rsa', { modulusLength: len }))
      return privat ? privateKey : publicKey
    }

    ({ privateKey, publicKey } = generateKeyPairSync('rsa', {
      modulusLength: len,
      publicKeyEncoding: { type: 'spki', format: 'pem' },
      privateKeyEncoding: { type: 'pkcs8', format: 'pem' }
    }))

    if (privat) {
      return createPrivateKey(privateKey)
    } else {
      return createPublicKey(publicKey)
    }
  }
}

module.exports = RSAKey


/***/ }),

/***/ 2044:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { deprecate } = __webpack_require__(31669)

const deprecation = deprecate(() => {}, '"P-256K" EC curve name is deprecated')

module.exports = {
  name: 'secp256k1',
  rename (value) {
    if (value !== 'secp256k1') {
      deprecation()
    }
    module.exports.name = value
  }
}


/***/ }),

/***/ 82253:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createHash } = __webpack_require__(33373)

const base64url = __webpack_require__(73385)

const x5t = (hash, cert) => base64url.encodeBuffer(createHash(hash).update(Buffer.from(cert, 'base64')).digest())

module.exports.kid = components => base64url.encodeBuffer(createHash('sha256').update(JSON.stringify(components)).digest())
module.exports.x5t = x5t.bind(undefined, 'sha1')
module.exports["x5t#S256"] = x5t.bind(undefined, 'sha256')


/***/ }),

/***/ 42896:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const KeyStore = __webpack_require__(24998)

module.exports = KeyStore


/***/ }),

/***/ 24998:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { deprecate, inspect } = __webpack_require__(31669)

const isObject = __webpack_require__(41805)
const { generate, generateSync } = __webpack_require__(39377)
const { USES_MAPPING } = __webpack_require__(15010)
const { isKey, asKey: importKey } = __webpack_require__(67894)

const keyscore = (key, { alg, use, ops }) => {
  let score = 0

  if (alg && key.alg) {
    score++
  }

  if (use && key.use) {
    score++
  }

  if (ops && key.key_ops) {
    score++
  }

  return score
}

class KeyStore {
  constructor (...keys) {
    while (keys.some(Array.isArray)) {
      keys = keys.flat ? keys.flat() : keys.reduce((acc, val) => {
        if (Array.isArray(val)) {
          return [...acc, ...val]
        }

        acc.push(val)
        return acc
      }, [])
    }
    if (keys.some(k => !isKey(k) || !k.kty)) {
      throw new TypeError('all keys must be instances of a key instantiated by JWK.asKey')
    }

    this._keys = new Set(keys)
  }

  all ({ alg, kid, thumbprint, use, kty, key_ops: ops, x5t, 'x5t#S256': x5t256, crv } = {}) {
    if (ops !== undefined && (!Array.isArray(ops) || !ops.length || ops.some(x => typeof x !== 'string'))) {
      throw new TypeError('`key_ops` must be a non-empty array of strings')
    }

    const search = { alg, use, ops }
    return [...this._keys]
      .filter((key) => {
        let candidate = true

        if (candidate && kid !== undefined && key.kid !== kid) {
          candidate = false
        }

        if (candidate && thumbprint !== undefined && key.thumbprint !== thumbprint) {
          candidate = false
        }

        if (candidate && x5t !== undefined && key.x5t !== x5t) {
          candidate = false
        }

        if (candidate && x5t256 !== undefined && key['x5t#S256'] !== x5t256) {
          candidate = false
        }

        if (candidate && kty !== undefined && key.kty !== kty) {
          candidate = false
        }

        if (candidate && crv !== undefined && (key.crv !== crv)) {
          candidate = false
        }

        if (alg !== undefined && !key.algorithms().has(alg)) {
          candidate = false
        }

        if (candidate && use !== undefined && (key.use !== undefined && key.use !== use)) {
          candidate = false
        }

        // TODO:
        if (candidate && ops !== undefined && (key.key_ops !== undefined || key.use !== undefined)) {
          let keyOps
          if (key.key_ops) {
            keyOps = new Set(key.key_ops)
          } else {
            keyOps = USES_MAPPING[key.use]
          }
          if (ops.some(x => !keyOps.has(x))) {
            candidate = false
          }
        }

        return candidate
      })
      .sort((first, second) => keyscore(second, search) - keyscore(first, search))
  }

  get (...args) {
    return this.all(...args)[0]
  }

  add (key) {
    if (!isKey(key) || !key.kty) {
      throw new TypeError('key must be an instance of a key instantiated by JWK.asKey')
    }

    this._keys.add(key)
  }

  remove (key) {
    if (!isKey(key)) {
      throw new TypeError('key must be an instance of a key instantiated by JWK.asKey')
    }

    this._keys.delete(key)
  }

  toJWKS (priv = false) {
    return {
      keys: [...this._keys.values()].map(
        key => key.toJWK(priv && (key.private || (key.secret && key.k)))
      )
    }
  }

  async generate (...args) {
    this._keys.add(await generate(...args))
  }

  generateSync (...args) {
    this._keys.add(generateSync(...args))
  }

  get size () {
    return this._keys.size
  }

  /* c8 ignore next 8 */
  [inspect.custom] () {
    return `${this.constructor.name} ${inspect(this.toJWKS(false), {
      depth: Infinity,
      colors: process.stdout.isTTY,
      compact: false,
      sorted: true
    })}`
  }

  * [Symbol.iterator] () {
    for (const key of this._keys) {
      yield key
    }
  }
}

function asKeyStore (jwks, { ignoreErrors = false, calculateMissingRSAPrimes = false } = {}) {
  if (!isObject(jwks) || !Array.isArray(jwks.keys) || jwks.keys.some(k => !isObject(k) || !('kty' in k))) {
    throw new TypeError('jwks must be a JSON Web Key Set formatted object')
  }

  const keys = jwks.keys.map((jwk) => {
    try {
      return importKey(jwk, { calculateMissingRSAPrimes })
    } catch (err) {
      if (!ignoreErrors) {
        throw err
      }
    }
  }).filter(Boolean)

  return new KeyStore(...keys)
}

Object.defineProperty(KeyStore, 'fromJWKS', {
  value: deprecate(jwks => asKeyStore(jwks, { calculateMissingRSAPrimes: true }), 'JWKS.KeyStore.fromJWKS() is deprecated, use JWKS.asKeyStore() instead'),
  enumerable: false
})

module.exports = { KeyStore, asKeyStore }


/***/ }),

/***/ 36518:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Sign = __webpack_require__(1728)
const { verify } = __webpack_require__(39835)

const single = (serialization, payload, key, protectedHeader, unprotectedHeader) => {
  return new Sign(payload)
    .recipient(key, protectedHeader, unprotectedHeader)
    .sign(serialization)
}

module.exports.Sign = Sign
module.exports.sign = single.bind(undefined, 'compact')
module.exports.sign.flattened = single.bind(undefined, 'flattened')
module.exports.sign.general = single.bind(undefined, 'general')

module.exports.verify = verify


/***/ }),

/***/ 28104:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const isObject = __webpack_require__(41805)
let validateCrit = __webpack_require__(530)
const { JWSInvalid } = __webpack_require__(52973)

validateCrit = validateCrit.bind(undefined, JWSInvalid)

const compactSerializer = (payload, [recipient]) => {
  return `${recipient.protected}.${payload}.${recipient.signature}`
}
compactSerializer.validate = (jws, { 0: { unprotectedHeader, protectedHeader }, length }) => {
  if (length !== 1 || unprotectedHeader) {
    throw new JWSInvalid('JWS Compact Serialization doesn\'t support multiple recipients or JWS unprotected headers')
  }
  validateCrit(protectedHeader, unprotectedHeader, protectedHeader ? protectedHeader.crit : undefined)
}

const flattenedSerializer = (payload, [recipient]) => {
  const { header, signature, protected: prot } = recipient

  return {
    payload,
    ...prot ? { protected: prot } : undefined,
    ...header ? { header } : undefined,
    signature
  }
}
flattenedSerializer.validate = (jws, { 0: { unprotectedHeader, protectedHeader }, length }) => {
  if (length !== 1) {
    throw new JWSInvalid('Flattened JWS JSON Serialization doesn\'t support multiple recipients')
  }
  validateCrit(protectedHeader, unprotectedHeader, protectedHeader ? protectedHeader.crit : undefined)
}

const generalSerializer = (payload, recipients) => {
  return {
    payload,
    signatures: recipients.map(({ header, signature, protected: prot }) => {
      return {
        ...prot ? { protected: prot } : undefined,
        ...header ? { header } : undefined,
        signature
      }
    })
  }
}
generalSerializer.validate = (jws, recipients) => {
  let validateB64 = false
  recipients.forEach(({ protectedHeader, unprotectedHeader }) => {
    if (protectedHeader && !validateB64 && 'b64' in protectedHeader) {
      validateB64 = true
    }
    validateCrit(protectedHeader, unprotectedHeader, protectedHeader ? protectedHeader.crit : undefined)
  })

  if (validateB64) {
    const values = recipients.map(({ protectedHeader }) => protectedHeader && protectedHeader.b64)
    if (!values.every((actual, i, [expected]) => actual === expected)) {
      throw new JWSInvalid('the "b64" Header Parameter value MUST be the same for all recipients')
    }
  }
}

const isJSON = (input) => {
  return isObject(input) && (typeof input.payload === 'string' || Buffer.isBuffer(input.payload))
}

const isValidRecipient = (recipient) => {
  return isObject(recipient) && typeof recipient.signature === 'string' &&
    (recipient.header === undefined || isObject(recipient.header)) &&
    (recipient.protected === undefined || typeof recipient.protected === 'string')
}

const isMultiRecipient = (input) => {
  if (Array.isArray(input.signatures) && input.signatures.every(isValidRecipient)) {
    return true
  }

  return false
}

const detect = (input) => {
  if (typeof input === 'string' && input.split('.').length === 3) {
    return 'compact'
  }

  if (isJSON(input)) {
    if (isMultiRecipient(input)) {
      return 'general'
    }

    if (isValidRecipient(input)) {
      return 'flattened'
    }
  }

  throw new JWSInvalid('JWS malformed or invalid serialization')
}

module.exports = {
  compact: compactSerializer,
  flattened: flattenedSerializer,
  general: generalSerializer,
  detect
}


/***/ }),

/***/ 1728:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const base64url = __webpack_require__(73385)
const isDisjoint = __webpack_require__(56149)
const isObject = __webpack_require__(41805)
const deepClone = __webpack_require__(43653)
const { JWSInvalid } = __webpack_require__(52973)
const { sign } = __webpack_require__(50191)
const getKey = __webpack_require__(31308)

const serializers = __webpack_require__(28104)

const PROCESS_RECIPIENT = Symbol('PROCESS_RECIPIENT')

class Sign {
  constructor (payload) {
    if (typeof payload === 'string') {
      payload = base64url.encode(payload)
    } else if (Buffer.isBuffer(payload)) {
      payload = base64url.encodeBuffer(payload)
      this._binary = true
    } else if (isObject(payload)) {
      payload = base64url.JSON.encode(payload)
    } else {
      throw new TypeError('payload argument must be a Buffer, string or an object')
    }

    this._payload = payload
    this._recipients = []
  }

  /*
   * @public
   */
  recipient (key, protectedHeader, unprotectedHeader) {
    key = getKey(key)

    if (protectedHeader !== undefined && !isObject(protectedHeader)) {
      throw new TypeError('protectedHeader argument must be a plain object when provided')
    }

    if (unprotectedHeader !== undefined && !isObject(unprotectedHeader)) {
      throw new TypeError('unprotectedHeader argument must be a plain object when provided')
    }

    if (!isDisjoint(protectedHeader, unprotectedHeader)) {
      throw new JWSInvalid('JWS Protected and JWS Unprotected Header Parameter names must be disjoint')
    }

    this._recipients.push({
      key,
      protectedHeader: protectedHeader ? deepClone(protectedHeader) : undefined,
      unprotectedHeader: unprotectedHeader ? deepClone(unprotectedHeader) : undefined
    })

    return this
  }

  /*
   * @private
   */
  [PROCESS_RECIPIENT] (recipient, first) {
    const { key, protectedHeader, unprotectedHeader } = recipient

    if (key.use === 'enc') {
      throw new TypeError('a key with "use":"enc" is not usable for signing')
    }

    const joseHeader = {
      protected: protectedHeader || {},
      unprotected: unprotectedHeader || {}
    }

    let alg = joseHeader.protected.alg || joseHeader.unprotected.alg

    if (!alg) {
      alg = key.alg || [...key.algorithms('sign')][0]
      if (recipient.protectedHeader) {
        joseHeader.protected.alg = recipient.protectedHeader.alg = alg
      } else {
        joseHeader.protected = recipient.protectedHeader = { alg }
      }
    }

    if (!alg) {
      throw new JWSInvalid('could not resolve a usable "alg" for a recipient')
    }

    recipient.header = unprotectedHeader
    recipient.protected = Object.keys(joseHeader.protected).length ? base64url.JSON.encode(joseHeader.protected) : ''

    if (first && joseHeader.protected.crit && joseHeader.protected.crit.includes('b64') && joseHeader.protected.b64 === false) {
      if (this._binary) {
        this._payload = base64url.decodeToBuffer(this._payload)
      } else {
        this._payload = base64url.decode(this._payload)
      }
    }

    const data = Buffer.concat([
      Buffer.from(recipient.protected || ''),
      Buffer.from('.'),
      Buffer.from(this._payload)
    ])

    recipient.signature = base64url.encodeBuffer(sign(alg, key, data))
  }

  /*
   * @public
   */
  sign (serialization) {
    const serializer = serializers[serialization]
    if (!serializer) {
      throw new TypeError('serialization must be one of "compact", "flattened", "general"')
    }

    if (!this._recipients.length) {
      throw new JWSInvalid('missing recipients')
    }

    serializer.validate(this, this._recipients)

    this._recipients.forEach((recipient, i) => {
      this[PROCESS_RECIPIENT](recipient, i === 0)
    })

    return serializer(this._payload, this._recipients)
  }
}

module.exports = Sign


/***/ }),

/***/ 39835:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { EOL } = __webpack_require__(12087)

const base64url = __webpack_require__(73385)
const isDisjoint = __webpack_require__(56149)
const isObject = __webpack_require__(41805)
let validateCrit = __webpack_require__(530)
const getKey = __webpack_require__(31308)
const { KeyStore } = __webpack_require__(42896)
const errors = __webpack_require__(52973)
const { check, verify } = __webpack_require__(50191)
const JWK = __webpack_require__(67894)

const { detect: resolveSerialization } = __webpack_require__(28104)

validateCrit = validateCrit.bind(undefined, errors.JWSInvalid)
const SINGLE_RECIPIENT = new Set(['compact', 'flattened', 'preparsed'])

/*
 * @public
 */
const jwsVerify = (skipDisjointCheck, serialization, jws, key, { crit = [], complete = false, algorithms, parse = true, encoding = 'utf8' } = {}) => {
  key = getKey(key, true)

  if (algorithms !== undefined && (!Array.isArray(algorithms) || algorithms.some(s => typeof s !== 'string' || !s))) {
    throw new TypeError('"algorithms" option must be an array of non-empty strings')
  } else if (algorithms) {
    algorithms = new Set(algorithms)
  }

  if (!Array.isArray(crit) || crit.some(s => typeof s !== 'string' || !s)) {
    throw new TypeError('"crit" option must be an array of non-empty strings')
  }

  if (!serialization) {
    serialization = resolveSerialization(jws)
  }

  let prot // protected header
  let header // unprotected header
  let payload
  let signature
  let alg

  // treat general format with one recipient as flattened
  // skips iteration and avoids multi errors in this case
  if (serialization === 'general' && jws.signatures.length === 1) {
    serialization = 'flattened'
    const { signatures, ...root } = jws
    jws = { ...root, ...signatures[0] }
  }

  let decoded

  if (SINGLE_RECIPIENT.has(serialization)) {
    let parsedProt = {}

    switch (serialization) {
      case 'compact': // compact serialization format
        ([prot, payload, signature] = jws.split('.'))
        break
      case 'flattened': // flattened serialization format
        ({ protected: prot, payload, signature, header } = jws)
        break
      case 'preparsed': { // from the JWT module
        ({ decoded } = jws);
        ([prot, payload, signature] = jws.token.split('.'))
        break
      }
    }

    if (!header) {
      skipDisjointCheck = true
    }

    if (decoded) {
      parsedProt = decoded.header
    } else if (prot) {
      try {
        parsedProt = base64url.JSON.decode(prot)
      } catch (err) {
        throw new errors.JWSInvalid('could not parse JWS protected header')
      }
    } else {
      skipDisjointCheck = skipDisjointCheck || true
    }

    if (!skipDisjointCheck && !isDisjoint(parsedProt, header)) {
      throw new errors.JWSInvalid('JWS Protected and JWS Unprotected Header Parameter names must be disjoint')
    }

    const combinedHeader = { ...parsedProt, ...header }
    validateCrit(parsedProt, header, crit)

    alg = parsedProt.alg || (header && header.alg)
    if (!alg) {
      throw new errors.JWSInvalid('missing JWS signature algorithm')
    } else if (algorithms && !algorithms.has(alg)) {
      throw new errors.JOSEAlgNotWhitelisted('alg not whitelisted')
    }

    if (key instanceof KeyStore) {
      const keystore = key
      const keys = keystore.all({ kid: combinedHeader.kid, alg: combinedHeader.alg, key_ops: ['verify'] })
      switch (keys.length) {
        case 0:
          throw new errors.JWKSNoMatchingKey()
        case 1:
          // treat the call as if a Key instance was passed in
          // skips iteration and avoids multi errors in this case
          key = keys[0]
          break
        default: {
          const errs = []
          for (const key of keys) {
            try {
              return jwsVerify(true, serialization, jws, key, { crit, complete, encoding, parse, algorithms: algorithms ? [...algorithms] : undefined })
            } catch (err) {
              errs.push(err)
              continue
            }
          }

          const multi = new errors.JOSEMultiError(errs)
          if ([...multi].some(e => e instanceof errors.JWSVerificationFailed)) {
            throw new errors.JWSVerificationFailed()
          }
          throw multi
        }
      }
    }

    if (key === JWK.EmbeddedJWK) {
      if (!isObject(combinedHeader.jwk)) {
        throw new errors.JWSInvalid('JWS Header Parameter "jwk" must be a JSON object')
      }
      key = JWK.asKey(combinedHeader.jwk)
      if (key.type !== 'public') {
        throw new errors.JWSInvalid('JWS Header Parameter "jwk" must be a public key')
      }
    } else if (key === JWK.EmbeddedX5C) {
      if (!Array.isArray(combinedHeader.x5c) || !combinedHeader.x5c.length || combinedHeader.x5c.some(c => typeof c !== 'string' || !c)) {
        throw new errors.JWSInvalid('JWS Header Parameter "x5c" must be a JSON array of certificate value strings')
      }
      key = JWK.asKey(
        `-----BEGIN CERTIFICATE-----${EOL}${(combinedHeader.x5c[0].match(/.{1,64}/g) || []).join(EOL)}${EOL}-----END CERTIFICATE-----`,
        { x5c: combinedHeader.x5c }
      )
    }

    check(key, 'verify', alg)

    const toBeVerified = Buffer.concat([
      Buffer.from(prot || ''),
      Buffer.from('.'),
      Buffer.isBuffer(payload) ? payload : Buffer.from(payload)
    ])

    if (!verify(alg, key, toBeVerified, base64url.decodeToBuffer(signature))) {
      throw new errors.JWSVerificationFailed()
    }

    if (!combinedHeader.crit || !combinedHeader.crit.includes('b64') || combinedHeader.b64) {
      if (parse) {
        payload = decoded ? decoded.payload : base64url.JSON.decode.try(payload, encoding)
      } else {
        payload = base64url.decodeToBuffer(payload)
      }
    }

    if (complete) {
      const result = { payload, key }
      if (prot) result.protected = parsedProt
      if (header) result.header = header
      return result
    }

    return payload
  }

  // general serialization format
  const { signatures, ...root } = jws
  const errs = []
  for (const recipient of signatures) {
    try {
      return jwsVerify(false, 'flattened', { ...root, ...recipient }, key, { crit, complete, encoding, parse, algorithms: algorithms ? [...algorithms] : undefined })
    } catch (err) {
      errs.push(err)
      continue
    }
  }

  const multi = new errors.JOSEMultiError(errs)
  if ([...multi].some(e => e instanceof errors.JWSVerificationFailed)) {
    throw new errors.JWSVerificationFailed()
  } else if ([...multi].every(e => e instanceof errors.JWKSNoMatchingKey)) {
    throw new errors.JWKSNoMatchingKey()
  }
  throw multi
}

module.exports = {
  bare: jwsVerify,
  verify: jwsVerify.bind(undefined, false, undefined)
}


/***/ }),

/***/ 6743:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const base64url = __webpack_require__(73385)
const errors = __webpack_require__(52973)

module.exports = (token, { complete = false } = {}) => {
  if (typeof token !== 'string' || !token) {
    throw new TypeError('JWT must be a string')
  }

  const { 0: header, 1: payload, 2: signature, length } = token.split('.')

  if (length === 5) {
    throw new TypeError('JWTs must be decrypted first')
  }

  if (length !== 3) {
    throw new errors.JWTMalformed('JWTs must have three components')
  }

  try {
    const result = {
      header: base64url.JSON.decode(header),
      payload: base64url.JSON.decode(payload),
      signature
    }

    return complete ? result : result.payload
  } catch (err) {
    throw new errors.JWTMalformed('JWT is malformed')
  }
}


/***/ }),

/***/ 18138:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const decode = __webpack_require__(6743)
const sign = __webpack_require__(86703)
const verify = __webpack_require__(44856)
const profiles = __webpack_require__(39547)

module.exports = {
  decode,
  sign,
  verify,
  ...profiles
}


/***/ }),

/***/ 39547:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const verify = __webpack_require__(44856)

module.exports = {
  IdToken: { verify: (token, key, options) => verify(token, key, { ...options, profile: 'id_token' }) },
  LogoutToken: { verify: (token, key, options) => verify(token, key, { ...options, profile: 'logout_token' }) },
  AccessToken: { verify: (token, key, options) => verify(token, key, { ...options, profile: 'at+JWT' }) }
}


/***/ }),

/***/ 23951:
/***/ ((module) => {

const isNotString = val => typeof val !== 'string' || val.length === 0

module.exports.isNotString = isNotString
module.exports.isString = function isString (Err, value, label, claim, required = false) {
  if (required && value === undefined) {
    throw new Err(`${label} is missing`, claim, 'missing')
  }

  if (value !== undefined && isNotString(value)) {
    throw new Err(`${label} must be a string`, claim, 'invalid')
  }
}


/***/ }),

/***/ 86703:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const isObject = __webpack_require__(41805)
const secs = __webpack_require__(97305)
const epoch = __webpack_require__(47396)
const getKey = __webpack_require__(31308)
const JWS = __webpack_require__(36518)

const isString = __webpack_require__(23951).isString.bind(undefined, TypeError)

const validateOptions = (options) => {
  if (typeof options.iat !== 'boolean') {
    throw new TypeError('options.iat must be a boolean')
  }

  if (typeof options.kid !== 'boolean') {
    throw new TypeError('options.kid must be a boolean')
  }

  isString(options.subject, 'options.subject')
  isString(options.issuer, 'options.issuer')

  if (
    options.audience !== undefined &&
    (
      (typeof options.audience !== 'string' || !options.audience) &&
      (!Array.isArray(options.audience) || options.audience.length === 0 || options.audience.some(a => !a || typeof a !== 'string'))
    )
  ) {
    throw new TypeError('options.audience must be a string or an array of strings')
  }

  if (!isObject(options.header)) {
    throw new TypeError('options.header must be an object')
  }

  isString(options.algorithm, 'options.algorithm')
  isString(options.expiresIn, 'options.expiresIn')
  isString(options.notBefore, 'options.notBefore')
  isString(options.jti, 'options.jti')
  isString(options.nonce, 'options.nonce')

  if (options.now !== undefined && (!(options.now instanceof Date) || !options.now.getTime())) {
    throw new TypeError('options.now must be a valid Date object')
  }
}

module.exports = (payload, key, options = {}) => {
  if (!isObject(options)) {
    throw new TypeError('options must be an object')
  }

  const {
    algorithm, audience, expiresIn, header = {}, iat = true,
    issuer, jti, kid = true, nonce, notBefore, subject, now
  } = options

  validateOptions({
    algorithm, audience, expiresIn, header, iat, issuer, jti, kid, nonce, notBefore, now, subject
  })

  if (!isObject(payload)) {
    throw new TypeError('payload must be an object')
  }

  let unix
  if (expiresIn || notBefore || iat) {
    unix = epoch(now || new Date())
  }

  payload = {
    ...payload,
    sub: subject || payload.sub,
    aud: audience || payload.aud,
    iss: issuer || payload.iss,
    jti: jti || payload.jti,
    iat: iat ? unix : payload.iat,
    nonce: nonce || payload.nonce,
    exp: expiresIn ? unix + secs(expiresIn) : payload.exp,
    nbf: notBefore ? unix + secs(notBefore) : payload.nbf
  }

  key = getKey(key)

  let includeKid

  if (typeof options.kid === 'boolean') {
    includeKid = kid
  } else {
    includeKid = !key.secret
  }

  return JWS.sign(JSON.stringify(payload), key, {
    ...header,
    alg: algorithm || header.alg,
    kid: includeKid ? key.kid : header.kid
  })
}


/***/ }),

/***/ 44856:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const isObject = __webpack_require__(41805)
const epoch = __webpack_require__(47396)
const secs = __webpack_require__(97305)
const getKey = __webpack_require__(31308)
const { bare: verify } = __webpack_require__(39835)
const { JWTClaimInvalid, JWTExpired } = __webpack_require__(52973)

const { isString, isNotString } = __webpack_require__(23951)
const decode = __webpack_require__(6743)

const isPayloadString = isString.bind(undefined, JWTClaimInvalid)
const isOptionString = isString.bind(undefined, TypeError)

const IDTOKEN = 'id_token'
const LOGOUTTOKEN = 'logout_token'
const ATJWT = 'at+JWT'

const isTimestamp = (value, label, required = false) => {
  if (required && value === undefined) {
    throw new JWTClaimInvalid(`"${label}" claim is missing`, label, 'missing')
  }

  if (value !== undefined && (typeof value !== 'number')) {
    throw new JWTClaimInvalid(`"${label}" claim must be a JSON numeric value`, label, 'invalid')
  }
}

const isStringOrArrayOfStrings = (value, label, required = false) => {
  if (required && value === undefined) {
    throw new JWTClaimInvalid(`"${label}" claim is missing`, label, 'missing')
  }

  if (value !== undefined && (isNotString(value) && isNotArrayOfStrings(value))) {
    throw new JWTClaimInvalid(`"${label}" claim must be a string or array of strings`, label, 'invalid')
  }
}

const isNotArrayOfStrings = val => !Array.isArray(val) || val.length === 0 || val.some(isNotString)
const normalizeTyp = (value) => value.toLowerCase().replace(/^application\//, '')

const validateOptions = ({
  algorithms, audience, clockTolerance, complete = false, crit, ignoreExp = false,
  ignoreIat = false, ignoreNbf = false, issuer, jti, maxAuthAge, maxTokenAge, nonce, now = new Date(),
  profile, subject, typ
}) => {
  isOptionString(profile, 'options.profile')

  if (typeof complete !== 'boolean') {
    throw new TypeError('options.complete must be a boolean')
  }

  if (typeof ignoreExp !== 'boolean') {
    throw new TypeError('options.ignoreExp must be a boolean')
  }

  if (typeof ignoreNbf !== 'boolean') {
    throw new TypeError('options.ignoreNbf must be a boolean')
  }

  if (typeof ignoreIat !== 'boolean') {
    throw new TypeError('options.ignoreIat must be a boolean')
  }

  isOptionString(maxTokenAge, 'options.maxTokenAge')
  isOptionString(subject, 'options.subject')
  isOptionString(maxAuthAge, 'options.maxAuthAge')
  isOptionString(jti, 'options.jti')
  isOptionString(clockTolerance, 'options.clockTolerance')
  isOptionString(typ, 'options.typ')

  if (issuer !== undefined && (isNotString(issuer) && isNotArrayOfStrings(issuer))) {
    throw new TypeError('options.issuer must be a string or an array of strings')
  }

  if (audience !== undefined && (isNotString(audience) && isNotArrayOfStrings(audience))) {
    throw new TypeError('options.audience must be a string or an array of strings')
  }

  if (algorithms !== undefined && isNotArrayOfStrings(algorithms)) {
    throw new TypeError('options.algorithms must be an array of strings')
  }

  isOptionString(nonce, 'options.nonce')

  if (!(now instanceof Date) || !now.getTime()) {
    throw new TypeError('options.now must be a valid Date object')
  }

  if (ignoreIat && maxTokenAge !== undefined) {
    throw new TypeError('options.ignoreIat and options.maxTokenAge cannot used together')
  }

  if (crit !== undefined && isNotArrayOfStrings(crit)) {
    throw new TypeError('options.crit must be an array of strings')
  }

  switch (profile) {
    case IDTOKEN:
      if (!issuer) {
        throw new TypeError('"issuer" option is required to validate an ID Token')
      }

      if (!audience) {
        throw new TypeError('"audience" option is required to validate an ID Token')
      }

      break
    case ATJWT:
      if (!issuer) {
        throw new TypeError('"issuer" option is required to validate a JWT Access Token')
      }

      if (!audience) {
        throw new TypeError('"audience" option is required to validate a JWT Access Token')
      }

      typ = ATJWT

      break
    case LOGOUTTOKEN:
      if (!issuer) {
        throw new TypeError('"issuer" option is required to validate a Logout Token')
      }

      if (!audience) {
        throw new TypeError('"audience" option is required to validate a Logout Token')
      }

      break
    case undefined:
      break
    default:
      throw new TypeError(`unsupported options.profile value "${profile}"`)
  }

  return {
    algorithms,
    audience,
    clockTolerance,
    complete,
    crit,
    ignoreExp,
    ignoreIat,
    ignoreNbf,
    issuer,
    jti,
    maxAuthAge,
    maxTokenAge,
    nonce,
    now,
    profile,
    subject,
    typ
  }
}

const validateTypes = ({ header, payload }, profile, options) => {
  isPayloadString(header.alg, '"alg" header parameter', 'alg', true)

  isTimestamp(payload.iat, 'iat', profile === IDTOKEN || profile === LOGOUTTOKEN || profile === ATJWT || !!options.maxTokenAge)
  isTimestamp(payload.exp, 'exp', profile === IDTOKEN || profile === ATJWT)
  isTimestamp(payload.auth_time, 'auth_time', !!options.maxAuthAge)
  isTimestamp(payload.nbf, 'nbf')
  isPayloadString(payload.jti, '"jti" claim', 'jti', profile === LOGOUTTOKEN || profile === ATJWT || !!options.jti)
  isPayloadString(payload.acr, '"acr" claim', 'acr')
  isPayloadString(payload.nonce, '"nonce" claim', 'nonce', !!options.nonce)
  isStringOrArrayOfStrings(payload.iss, 'iss', !!options.issuer)
  isPayloadString(payload.sub, '"sub" claim', 'sub', profile === IDTOKEN || profile === ATJWT || !!options.subject)
  isStringOrArrayOfStrings(payload.aud, 'aud', !!options.audience)
  isPayloadString(payload.azp, '"azp" claim', 'azp', profile === IDTOKEN && Array.isArray(payload.aud) && payload.aud.length > 1)
  isStringOrArrayOfStrings(payload.amr, 'amr')
  isPayloadString(header.typ, '"typ" header parameter', 'typ', !!options.typ)

  if (profile === ATJWT) {
    isPayloadString(payload.client_id, '"client_id" claim', 'client_id', true)
  }

  if (profile === LOGOUTTOKEN) {
    isPayloadString(payload.sid, '"sid" claim', 'sid')

    if (!('sid' in payload) && !('sub' in payload)) {
      throw new JWTClaimInvalid('either "sid" or "sub" (or both) claims must be present')
    }

    if ('nonce' in payload) {
      throw new JWTClaimInvalid('"nonce" claim is prohibited', 'nonce', 'prohibited')
    }

    if (!('events' in payload)) {
      throw new JWTClaimInvalid('"events" claim is missing', 'events', 'missing')
    }

    if (!isObject(payload.events)) {
      throw new JWTClaimInvalid('"events" claim must be an object', 'events', 'invalid')
    }

    if (!('http://schemas.openid.net/event/backchannel-logout' in payload.events)) {
      throw new JWTClaimInvalid('"http://schemas.openid.net/event/backchannel-logout" member is missing in the "events" claim', 'events', 'invalid')
    }

    if (!isObject(payload.events['http://schemas.openid.net/event/backchannel-logout'])) {
      throw new JWTClaimInvalid('"http://schemas.openid.net/event/backchannel-logout" member in the "events" claim must be an object', 'events', 'invalid')
    }
  }
}

const checkAudiencePresence = (audPayload, audOption, profile) => {
  if (typeof audPayload === 'string') {
    return audOption.includes(audPayload)
  }

  // Each principal intended to process the JWT MUST
  // identify itself with a value in the audience claim
  audPayload = new Set(audPayload)
  return audOption.some(Set.prototype.has.bind(audPayload))
}

module.exports = (token, key, options = {}) => {
  if (!isObject(options)) {
    throw new TypeError('options must be an object')
  }

  const {
    algorithms, audience, clockTolerance, complete, crit, ignoreExp, ignoreIat, ignoreNbf, issuer,
    jti, maxAuthAge, maxTokenAge, nonce, now, profile, subject, typ
  } = options = validateOptions(options)

  const decoded = decode(token, { complete: true })
  key = getKey(key, true)

  if (complete) {
    ({ key } = verify(true, 'preparsed', { decoded, token }, key, { crit, algorithms, complete: true }))
    decoded.key = key
  } else {
    verify(true, 'preparsed', { decoded, token }, key, { crit, algorithms })
  }

  const unix = epoch(now)
  validateTypes(decoded, profile, options)

  if (issuer && (typeof decoded.payload.iss !== 'string' || !(typeof issuer === 'string' ? [issuer] : issuer).includes(decoded.payload.iss))) {
    throw new JWTClaimInvalid('unexpected "iss" claim value', 'iss', 'check_failed')
  }

  if (nonce && decoded.payload.nonce !== nonce) {
    throw new JWTClaimInvalid('unexpected "nonce" claim value', 'nonce', 'check_failed')
  }

  if (subject && decoded.payload.sub !== subject) {
    throw new JWTClaimInvalid('unexpected "sub" claim value', 'sub', 'check_failed')
  }

  if (jti && decoded.payload.jti !== jti) {
    throw new JWTClaimInvalid('unexpected "jti" claim value', 'jti', 'check_failed')
  }

  if (audience && !checkAudiencePresence(decoded.payload.aud, typeof audience === 'string' ? [audience] : audience, profile)) {
    throw new JWTClaimInvalid('unexpected "aud" claim value', 'aud', 'check_failed')
  }

  if (typ && normalizeTyp(decoded.header.typ) !== normalizeTyp(typ)) {
    throw new JWTClaimInvalid('unexpected "typ" JWT header value', 'typ', 'check_failed')
  }

  const tolerance = clockTolerance ? secs(clockTolerance) : 0

  if (maxAuthAge) {
    const maxAuthAgeSeconds = secs(maxAuthAge)
    if (decoded.payload.auth_time + maxAuthAgeSeconds < unix - tolerance) {
      throw new JWTClaimInvalid('"auth_time" claim timestamp check failed (too much time has elapsed since the last End-User authentication)', 'auth_time', 'check_failed')
    }
  }

  if (!ignoreIat && !('exp' in decoded.payload) && 'iat' in decoded.payload && decoded.payload.iat > unix + tolerance) {
    throw new JWTClaimInvalid('"iat" claim timestamp check failed (it should be in the past)', 'iat', 'check_failed')
  }

  if (!ignoreNbf && 'nbf' in decoded.payload && decoded.payload.nbf > unix + tolerance) {
    throw new JWTClaimInvalid('"nbf" claim timestamp check failed', 'nbf', 'check_failed')
  }

  if (!ignoreExp && 'exp' in decoded.payload && decoded.payload.exp <= unix - tolerance) {
    throw new JWTExpired('"exp" claim timestamp check failed', 'exp', 'check_failed')
  }

  if (maxTokenAge) {
    const age = unix - decoded.payload.iat
    const max = secs(maxTokenAge)

    if (age - tolerance > max) {
      throw new JWTExpired('"iat" claim timestamp check failed (too far in the past)', 'iat', 'check_failed')
    }

    if (age < 0 - tolerance) {
      throw new JWTClaimInvalid('"iat" claim timestamp check failed (it should be in the past)', 'iat', 'check_failed')
    }
  }

  if (profile === IDTOKEN && Array.isArray(decoded.payload.aud) && decoded.payload.aud.length > 1 && decoded.payload.azp !== audience) {
    throw new JWTClaimInvalid('unexpected "azp" claim value', 'azp', 'check_failed')
  }

  return complete ? decoded : decoded.payload
}


/***/ }),

/***/ 30760:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { getCurves } = __webpack_require__(33373)

const { name: secp256k1 } = __webpack_require__(2044)

const curves = new Set()

if (getCurves().includes('prime256v1')) {
  curves.add('P-256')
}

if (getCurves().includes('secp256k1')) {
  curves.add(secp256k1)
}

if (getCurves().includes('secp384r1')) {
  curves.add('P-384')
}

if (getCurves().includes('secp521r1')) {
  curves.add('P-521')
}

module.exports = curves


/***/ }),

/***/ 87168:
/***/ ((module) => {

module.exports = new Map()


/***/ }),

/***/ 15501:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const EC_CURVES = __webpack_require__(30760)
const IVLENGTHS = __webpack_require__(19805)
const JWA = __webpack_require__(72430)
const JWK = __webpack_require__(95942)
const KEYLENGTHS = __webpack_require__(54358)
const OKP_CURVES = __webpack_require__(24720)
const ECDH_DERIVE_LENGTHS = __webpack_require__(87168)

module.exports = {
  EC_CURVES,
  ECDH_DERIVE_LENGTHS,
  IVLENGTHS,
  JWA,
  JWK,
  KEYLENGTHS,
  OKP_CURVES
}


/***/ }),

/***/ 19805:
/***/ ((module) => {

module.exports = new Map([
  ['A128CBC-HS256', 128],
  ['A128GCM', 96],
  ['A128GCMKW', 96],
  ['A192CBC-HS384', 128],
  ['A192GCM', 96],
  ['A192GCMKW', 96],
  ['A256CBC-HS512', 128],
  ['A256GCM', 96],
  ['A256GCMKW', 96]
])


/***/ }),

/***/ 72430:
/***/ ((module) => {

module.exports = {
  sign: new Map(),
  verify: new Map(),
  keyManagementEncrypt: new Map(),
  keyManagementDecrypt: new Map(),
  encrypt: new Map(),
  decrypt: new Map()
}


/***/ }),

/***/ 95942:
/***/ ((module) => {

module.exports = {
  oct: {
    decrypt: {},
    deriveKey: {},
    encrypt: {},
    sign: {},
    unwrapKey: {},
    verify: {},
    wrapKey: {}
  },
  EC: {
    decrypt: {},
    deriveKey: {},
    encrypt: {},
    sign: {},
    unwrapKey: {},
    verify: {},
    wrapKey: {}
  },
  RSA: {
    decrypt: {},
    deriveKey: {},
    encrypt: {},
    sign: {},
    unwrapKey: {},
    verify: {},
    wrapKey: {}
  },
  OKP: {
    decrypt: {},
    deriveKey: {},
    encrypt: {},
    sign: {},
    unwrapKey: {},
    verify: {},
    wrapKey: {}
  }
}


/***/ }),

/***/ 54358:
/***/ ((module) => {

module.exports = new Map([
  ['A128CBC-HS256', 256],
  ['A128GCM', 128],
  ['A192CBC-HS384', 384],
  ['A192GCM', 192],
  ['A256CBC-HS512', 512],
  ['A256GCM', 256]
])


/***/ }),

/***/ 24720:
/***/ ((module) => {

const curves = new Set(['Ed25519'])

if (!('electron' in process.versions)) {
  curves.add('Ed448')
  curves.add('X25519')
  curves.add('X448')
}

module.exports = curves


/***/ }),

/***/ 21917:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";



var yaml = __webpack_require__(40916);


module.exports = yaml;


/***/ }),

/***/ 40916:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";



var loader = __webpack_require__(45190);
var dumper = __webpack_require__(73034);


function deprecated(name) {
  return function () {
    throw new Error('Function ' + name + ' is deprecated and cannot be used.');
  };
}


module.exports.Type = __webpack_require__(30967);
module.exports.Schema = __webpack_require__(66514);
module.exports.FAILSAFE_SCHEMA = __webpack_require__(66037);
module.exports.JSON_SCHEMA = __webpack_require__(1571);
module.exports.CORE_SCHEMA = __webpack_require__(92183);
module.exports.DEFAULT_SAFE_SCHEMA = __webpack_require__(48949);
module.exports.DEFAULT_FULL_SCHEMA = __webpack_require__(56874);
module.exports.load                = loader.load;
module.exports.loadAll             = loader.loadAll;
module.exports.safeLoad            = loader.safeLoad;
module.exports.safeLoadAll         = loader.safeLoadAll;
module.exports.dump                = dumper.dump;
module.exports.safeDump            = dumper.safeDump;
module.exports.YAMLException = __webpack_require__(65199);

// Deprecated schema names from JS-YAML 2.0.x
module.exports.MINIMAL_SCHEMA = __webpack_require__(66037);
module.exports.SAFE_SCHEMA = __webpack_require__(48949);
module.exports.DEFAULT_SCHEMA = __webpack_require__(56874);

// Deprecated functions from JS-YAML 1.x.x
module.exports.scan           = deprecated('scan');
module.exports.parse          = deprecated('parse');
module.exports.compose        = deprecated('compose');
module.exports.addConstructor = deprecated('addConstructor');


/***/ }),

/***/ 59136:
/***/ ((module) => {

"use strict";



function isNothing(subject) {
  return (typeof subject === 'undefined') || (subject === null);
}


function isObject(subject) {
  return (typeof subject === 'object') && (subject !== null);
}


function toArray(sequence) {
  if (Array.isArray(sequence)) return sequence;
  else if (isNothing(sequence)) return [];

  return [ sequence ];
}


function extend(target, source) {
  var index, length, key, sourceKeys;

  if (source) {
    sourceKeys = Object.keys(source);

    for (index = 0, length = sourceKeys.length; index < length; index += 1) {
      key = sourceKeys[index];
      target[key] = source[key];
    }
  }

  return target;
}


function repeat(string, count) {
  var result = '', cycle;

  for (cycle = 0; cycle < count; cycle += 1) {
    result += string;
  }

  return result;
}


function isNegativeZero(number) {
  return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number);
}


module.exports.isNothing      = isNothing;
module.exports.isObject       = isObject;
module.exports.toArray        = toArray;
module.exports.repeat         = repeat;
module.exports.isNegativeZero = isNegativeZero;
module.exports.extend         = extend;


/***/ }),

/***/ 73034:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/*eslint-disable no-use-before-define*/

var common              = __webpack_require__(59136);
var YAMLException       = __webpack_require__(65199);
var DEFAULT_FULL_SCHEMA = __webpack_require__(56874);
var DEFAULT_SAFE_SCHEMA = __webpack_require__(48949);

var _toString       = Object.prototype.toString;
var _hasOwnProperty = Object.prototype.hasOwnProperty;

var CHAR_TAB                  = 0x09; /* Tab */
var CHAR_LINE_FEED            = 0x0A; /* LF */
var CHAR_CARRIAGE_RETURN      = 0x0D; /* CR */
var CHAR_SPACE                = 0x20; /* Space */
var CHAR_EXCLAMATION          = 0x21; /* ! */
var CHAR_DOUBLE_QUOTE         = 0x22; /* " */
var CHAR_SHARP                = 0x23; /* # */
var CHAR_PERCENT              = 0x25; /* % */
var CHAR_AMPERSAND            = 0x26; /* & */
var CHAR_SINGLE_QUOTE         = 0x27; /* ' */
var CHAR_ASTERISK             = 0x2A; /* * */
var CHAR_COMMA                = 0x2C; /* , */
var CHAR_MINUS                = 0x2D; /* - */
var CHAR_COLON                = 0x3A; /* : */
var CHAR_EQUALS               = 0x3D; /* = */
var CHAR_GREATER_THAN         = 0x3E; /* > */
var CHAR_QUESTION             = 0x3F; /* ? */
var CHAR_COMMERCIAL_AT        = 0x40; /* @ */
var CHAR_LEFT_SQUARE_BRACKET  = 0x5B; /* [ */
var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */
var CHAR_GRAVE_ACCENT         = 0x60; /* ` */
var CHAR_LEFT_CURLY_BRACKET   = 0x7B; /* { */
var CHAR_VERTICAL_LINE        = 0x7C; /* | */
var CHAR_RIGHT_CURLY_BRACKET  = 0x7D; /* } */

var ESCAPE_SEQUENCES = {};

ESCAPE_SEQUENCES[0x00]   = '\\0';
ESCAPE_SEQUENCES[0x07]   = '\\a';
ESCAPE_SEQUENCES[0x08]   = '\\b';
ESCAPE_SEQUENCES[0x09]   = '\\t';
ESCAPE_SEQUENCES[0x0A]   = '\\n';
ESCAPE_SEQUENCES[0x0B]   = '\\v';
ESCAPE_SEQUENCES[0x0C]   = '\\f';
ESCAPE_SEQUENCES[0x0D]   = '\\r';
ESCAPE_SEQUENCES[0x1B]   = '\\e';
ESCAPE_SEQUENCES[0x22]   = '\\"';
ESCAPE_SEQUENCES[0x5C]   = '\\\\';
ESCAPE_SEQUENCES[0x85]   = '\\N';
ESCAPE_SEQUENCES[0xA0]   = '\\_';
ESCAPE_SEQUENCES[0x2028] = '\\L';
ESCAPE_SEQUENCES[0x2029] = '\\P';

var DEPRECATED_BOOLEANS_SYNTAX = [
  'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON',
  'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF'
];

function compileStyleMap(schema, map) {
  var result, keys, index, length, tag, style, type;

  if (map === null) return {};

  result = {};
  keys = Object.keys(map);

  for (index = 0, length = keys.length; index < length; index += 1) {
    tag = keys[index];
    style = String(map[tag]);

    if (tag.slice(0, 2) === '!!') {
      tag = 'tag:yaml.org,2002:' + tag.slice(2);
    }
    type = schema.compiledTypeMap['fallback'][tag];

    if (type && _hasOwnProperty.call(type.styleAliases, style)) {
      style = type.styleAliases[style];
    }

    result[tag] = style;
  }

  return result;
}

function encodeHex(character) {
  var string, handle, length;

  string = character.toString(16).toUpperCase();

  if (character <= 0xFF) {
    handle = 'x';
    length = 2;
  } else if (character <= 0xFFFF) {
    handle = 'u';
    length = 4;
  } else if (character <= 0xFFFFFFFF) {
    handle = 'U';
    length = 8;
  } else {
    throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF');
  }

  return '\\' + handle + common.repeat('0', length - string.length) + string;
}

function State(options) {
  this.schema        = options['schema'] || DEFAULT_FULL_SCHEMA;
  this.indent        = Math.max(1, (options['indent'] || 2));
  this.noArrayIndent = options['noArrayIndent'] || false;
  this.skipInvalid   = options['skipInvalid'] || false;
  this.flowLevel     = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']);
  this.styleMap      = compileStyleMap(this.schema, options['styles'] || null);
  this.sortKeys      = options['sortKeys'] || false;
  this.lineWidth     = options['lineWidth'] || 80;
  this.noRefs        = options['noRefs'] || false;
  this.noCompatMode  = options['noCompatMode'] || false;
  this.condenseFlow  = options['condenseFlow'] || false;

  this.implicitTypes = this.schema.compiledImplicit;
  this.explicitTypes = this.schema.compiledExplicit;

  this.tag = null;
  this.result = '';

  this.duplicates = [];
  this.usedDuplicates = null;
}

// Indents every line in a string. Empty lines (\n only) are not indented.
function indentString(string, spaces) {
  var ind = common.repeat(' ', spaces),
      position = 0,
      next = -1,
      result = '',
      line,
      length = string.length;

  while (position < length) {
    next = string.indexOf('\n', position);
    if (next === -1) {
      line = string.slice(position);
      position = length;
    } else {
      line = string.slice(position, next + 1);
      position = next + 1;
    }

    if (line.length && line !== '\n') result += ind;

    result += line;
  }

  return result;
}

function generateNextLine(state, level) {
  return '\n' + common.repeat(' ', state.indent * level);
}

function testImplicitResolving(state, str) {
  var index, length, type;

  for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
    type = state.implicitTypes[index];

    if (type.resolve(str)) {
      return true;
    }
  }

  return false;
}

// [33] s-white ::= s-space | s-tab
function isWhitespace(c) {
  return c === CHAR_SPACE || c === CHAR_TAB;
}

// Returns true if the character can be printed without escaping.
// From YAML 1.2: "any allowed characters known to be non-printable
// should also be escaped. [However,] This isn’t mandatory"
// Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029.
function isPrintable(c) {
  return  (0x00020 <= c && c <= 0x00007E)
      || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029)
      || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */)
      ||  (0x10000 <= c && c <= 0x10FFFF);
}

// [34] ns-char ::= nb-char - s-white
// [27] nb-char ::= c-printable - b-char - c-byte-order-mark
// [26] b-char  ::= b-line-feed | b-carriage-return
// [24] b-line-feed       ::=     #xA    /* LF */
// [25] b-carriage-return ::=     #xD    /* CR */
// [3]  c-byte-order-mark ::=     #xFEFF
function isNsChar(c) {
  return isPrintable(c) && !isWhitespace(c)
    // byte-order-mark
    && c !== 0xFEFF
    // b-char
    && c !== CHAR_CARRIAGE_RETURN
    && c !== CHAR_LINE_FEED;
}

// Simplified test for values allowed after the first character in plain style.
function isPlainSafe(c, prev) {
  // Uses a subset of nb-char - c-flow-indicator - ":" - "#"
  // where nb-char ::= c-printable - b-char - c-byte-order-mark.
  return isPrintable(c) && c !== 0xFEFF
    // - c-flow-indicator
    && c !== CHAR_COMMA
    && c !== CHAR_LEFT_SQUARE_BRACKET
    && c !== CHAR_RIGHT_SQUARE_BRACKET
    && c !== CHAR_LEFT_CURLY_BRACKET
    && c !== CHAR_RIGHT_CURLY_BRACKET
    // - ":" - "#"
    // /* An ns-char preceding */ "#"
    && c !== CHAR_COLON
    && ((c !== CHAR_SHARP) || (prev && isNsChar(prev)));
}

// Simplified test for values allowed as the first character in plain style.
function isPlainSafeFirst(c) {
  // Uses a subset of ns-char - c-indicator
  // where ns-char = nb-char - s-white.
  return isPrintable(c) && c !== 0xFEFF
    && !isWhitespace(c) // - s-white
    // - (c-indicator ::=
    // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}”
    && c !== CHAR_MINUS
    && c !== CHAR_QUESTION
    && c !== CHAR_COLON
    && c !== CHAR_COMMA
    && c !== CHAR_LEFT_SQUARE_BRACKET
    && c !== CHAR_RIGHT_SQUARE_BRACKET
    && c !== CHAR_LEFT_CURLY_BRACKET
    && c !== CHAR_RIGHT_CURLY_BRACKET
    // | “#” | “&” | “*” | “!” | “|” | “=” | “>” | “'” | “"”
    && c !== CHAR_SHARP
    && c !== CHAR_AMPERSAND
    && c !== CHAR_ASTERISK
    && c !== CHAR_EXCLAMATION
    && c !== CHAR_VERTICAL_LINE
    && c !== CHAR_EQUALS
    && c !== CHAR_GREATER_THAN
    && c !== CHAR_SINGLE_QUOTE
    && c !== CHAR_DOUBLE_QUOTE
    // | “%” | “@” | “`”)
    && c !== CHAR_PERCENT
    && c !== CHAR_COMMERCIAL_AT
    && c !== CHAR_GRAVE_ACCENT;
}

// Determines whether block indentation indicator is required.
function needIndentIndicator(string) {
  var leadingSpaceRe = /^\n* /;
  return leadingSpaceRe.test(string);
}

var STYLE_PLAIN   = 1,
    STYLE_SINGLE  = 2,
    STYLE_LITERAL = 3,
    STYLE_FOLDED  = 4,
    STYLE_DOUBLE  = 5;

// Determines which scalar styles are possible and returns the preferred style.
// lineWidth = -1 => no limit.
// Pre-conditions: str.length > 0.
// Post-conditions:
//    STYLE_PLAIN or STYLE_SINGLE => no \n are in the string.
//    STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1).
//    STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1).
function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) {
  var i;
  var char, prev_char;
  var hasLineBreak = false;
  var hasFoldableLine = false; // only checked if shouldTrackWidth
  var shouldTrackWidth = lineWidth !== -1;
  var previousLineBreak = -1; // count the first line correctly
  var plain = isPlainSafeFirst(string.charCodeAt(0))
          && !isWhitespace(string.charCodeAt(string.length - 1));

  if (singleLineOnly) {
    // Case: no block styles.
    // Check for disallowed characters to rule out plain and single.
    for (i = 0; i < string.length; i++) {
      char = string.charCodeAt(i);
      if (!isPrintable(char)) {
        return STYLE_DOUBLE;
      }
      prev_char = i > 0 ? string.charCodeAt(i - 1) : null;
      plain = plain && isPlainSafe(char, prev_char);
    }
  } else {
    // Case: block styles permitted.
    for (i = 0; i < string.length; i++) {
      char = string.charCodeAt(i);
      if (char === CHAR_LINE_FEED) {
        hasLineBreak = true;
        // Check if any line can be folded.
        if (shouldTrackWidth) {
          hasFoldableLine = hasFoldableLine ||
            // Foldable line = too long, and not more-indented.
            (i - previousLineBreak - 1 > lineWidth &&
             string[previousLineBreak + 1] !== ' ');
          previousLineBreak = i;
        }
      } else if (!isPrintable(char)) {
        return STYLE_DOUBLE;
      }
      prev_char = i > 0 ? string.charCodeAt(i - 1) : null;
      plain = plain && isPlainSafe(char, prev_char);
    }
    // in case the end is missing a \n
    hasFoldableLine = hasFoldableLine || (shouldTrackWidth &&
      (i - previousLineBreak - 1 > lineWidth &&
       string[previousLineBreak + 1] !== ' '));
  }
  // Although every style can represent \n without escaping, prefer block styles
  // for multiline, since they're more readable and they don't add empty lines.
  // Also prefer folding a super-long line.
  if (!hasLineBreak && !hasFoldableLine) {
    // Strings interpretable as another type have to be quoted;
    // e.g. the string 'true' vs. the boolean true.
    return plain && !testAmbiguousType(string)
      ? STYLE_PLAIN : STYLE_SINGLE;
  }
  // Edge case: block indentation indicator can only have one digit.
  if (indentPerLevel > 9 && needIndentIndicator(string)) {
    return STYLE_DOUBLE;
  }
  // At this point we know block styles are valid.
  // Prefer literal style unless we want to fold.
  return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL;
}

// Note: line breaking/folding is implemented for only the folded style.
// NB. We drop the last trailing newline (if any) of a returned block scalar
//  since the dumper adds its own newline. This always works:
//    • No ending newline => unaffected; already using strip "-" chomping.
//    • Ending newline    => removed then restored.
//  Importantly, this keeps the "+" chomp indicator from gaining an extra line.
function writeScalar(state, string, level, iskey) {
  state.dump = (function () {
    if (string.length === 0) {
      return "''";
    }
    if (!state.noCompatMode &&
        DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) {
      return "'" + string + "'";
    }

    var indent = state.indent * Math.max(1, level); // no 0-indent scalars
    // As indentation gets deeper, let the width decrease monotonically
    // to the lower bound min(state.lineWidth, 40).
    // Note that this implies
    //  state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound.
    //  state.lineWidth > 40 + state.indent: width decreases until the lower bound.
    // This behaves better than a constant minimum width which disallows narrower options,
    // or an indent threshold which causes the width to suddenly increase.
    var lineWidth = state.lineWidth === -1
      ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent);

    // Without knowing if keys are implicit/explicit, assume implicit for safety.
    var singleLineOnly = iskey
      // No block styles in flow mode.
      || (state.flowLevel > -1 && level >= state.flowLevel);
    function testAmbiguity(string) {
      return testImplicitResolving(state, string);
    }

    switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) {
      case STYLE_PLAIN:
        return string;
      case STYLE_SINGLE:
        return "'" + string.replace(/'/g, "''") + "'";
      case STYLE_LITERAL:
        return '|' + blockHeader(string, state.indent)
          + dropEndingNewline(indentString(string, indent));
      case STYLE_FOLDED:
        return '>' + blockHeader(string, state.indent)
          + dropEndingNewline(indentString(foldString(string, lineWidth), indent));
      case STYLE_DOUBLE:
        return '"' + escapeString(string, lineWidth) + '"';
      default:
        throw new YAMLException('impossible error: invalid scalar style');
    }
  }());
}

// Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9.
function blockHeader(string, indentPerLevel) {
  var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : '';

  // note the special case: the string '\n' counts as a "trailing" empty line.
  var clip =          string[string.length - 1] === '\n';
  var keep = clip && (string[string.length - 2] === '\n' || string === '\n');
  var chomp = keep ? '+' : (clip ? '' : '-');

  return indentIndicator + chomp + '\n';
}

// (See the note for writeScalar.)
function dropEndingNewline(string) {
  return string[string.length - 1] === '\n' ? string.slice(0, -1) : string;
}

// Note: a long line without a suitable break point will exceed the width limit.
// Pre-conditions: every char in str isPrintable, str.length > 0, width > 0.
function foldString(string, width) {
  // In folded style, $k$ consecutive newlines output as $k+1$ newlines—
  // unless they're before or after a more-indented line, or at the very
  // beginning or end, in which case $k$ maps to $k$.
  // Therefore, parse each chunk as newline(s) followed by a content line.
  var lineRe = /(\n+)([^\n]*)/g;

  // first line (possibly an empty line)
  var result = (function () {
    var nextLF = string.indexOf('\n');
    nextLF = nextLF !== -1 ? nextLF : string.length;
    lineRe.lastIndex = nextLF;
    return foldLine(string.slice(0, nextLF), width);
  }());
  // If we haven't reached the first content line yet, don't add an extra \n.
  var prevMoreIndented = string[0] === '\n' || string[0] === ' ';
  var moreIndented;

  // rest of the lines
  var match;
  while ((match = lineRe.exec(string))) {
    var prefix = match[1], line = match[2];
    moreIndented = (line[0] === ' ');
    result += prefix
      + (!prevMoreIndented && !moreIndented && line !== ''
        ? '\n' : '')
      + foldLine(line, width);
    prevMoreIndented = moreIndented;
  }

  return result;
}

// Greedy line breaking.
// Picks the longest line under the limit each time,
// otherwise settles for the shortest line over the limit.
// NB. More-indented lines *cannot* be folded, as that would add an extra \n.
function foldLine(line, width) {
  if (line === '' || line[0] === ' ') return line;

  // Since a more-indented line adds a \n, breaks can't be followed by a space.
  var breakRe = / [^ ]/g; // note: the match index will always be <= length-2.
  var match;
  // start is an inclusive index. end, curr, and next are exclusive.
  var start = 0, end, curr = 0, next = 0;
  var result = '';

  // Invariants: 0 <= start <= length-1.
  //   0 <= curr <= next <= max(0, length-2). curr - start <= width.
  // Inside the loop:
  //   A match implies length >= 2, so curr and next are <= length-2.
  while ((match = breakRe.exec(line))) {
    next = match.index;
    // maintain invariant: curr - start <= width
    if (next - start > width) {
      end = (curr > start) ? curr : next; // derive end <= length-2
      result += '\n' + line.slice(start, end);
      // skip the space that was output as \n
      start = end + 1;                    // derive start <= length-1
    }
    curr = next;
  }

  // By the invariants, start <= length-1, so there is something left over.
  // It is either the whole string or a part starting from non-whitespace.
  result += '\n';
  // Insert a break if the remainder is too long and there is a break available.
  if (line.length - start > width && curr > start) {
    result += line.slice(start, curr) + '\n' + line.slice(curr + 1);
  } else {
    result += line.slice(start);
  }

  return result.slice(1); // drop extra \n joiner
}

// Escapes a double-quoted string.
function escapeString(string) {
  var result = '';
  var char, nextChar;
  var escapeSeq;

  for (var i = 0; i < string.length; i++) {
    char = string.charCodeAt(i);
    // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates").
    if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) {
      nextChar = string.charCodeAt(i + 1);
      if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) {
        // Combine the surrogate pair and store it escaped.
        result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000);
        // Advance index one extra since we already used that char here.
        i++; continue;
      }
    }
    escapeSeq = ESCAPE_SEQUENCES[char];
    result += !escapeSeq && isPrintable(char)
      ? string[i]
      : escapeSeq || encodeHex(char);
  }

  return result;
}

function writeFlowSequence(state, level, object) {
  var _result = '',
      _tag    = state.tag,
      index,
      length;

  for (index = 0, length = object.length; index < length; index += 1) {
    // Write only valid elements.
    if (writeNode(state, level, object[index], false, false)) {
      if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : '');
      _result += state.dump;
    }
  }

  state.tag = _tag;
  state.dump = '[' + _result + ']';
}

function writeBlockSequence(state, level, object, compact) {
  var _result = '',
      _tag    = state.tag,
      index,
      length;

  for (index = 0, length = object.length; index < length; index += 1) {
    // Write only valid elements.
    if (writeNode(state, level + 1, object[index], true, true)) {
      if (!compact || index !== 0) {
        _result += generateNextLine(state, level);
      }

      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
        _result += '-';
      } else {
        _result += '- ';
      }

      _result += state.dump;
    }
  }

  state.tag = _tag;
  state.dump = _result || '[]'; // Empty sequence if no valid values.
}

function writeFlowMapping(state, level, object) {
  var _result       = '',
      _tag          = state.tag,
      objectKeyList = Object.keys(object),
      index,
      length,
      objectKey,
      objectValue,
      pairBuffer;

  for (index = 0, length = objectKeyList.length; index < length; index += 1) {

    pairBuffer = '';
    if (index !== 0) pairBuffer += ', ';

    if (state.condenseFlow) pairBuffer += '"';

    objectKey = objectKeyList[index];
    objectValue = object[objectKey];

    if (!writeNode(state, level, objectKey, false, false)) {
      continue; // Skip this pair because of invalid key;
    }

    if (state.dump.length > 1024) pairBuffer += '? ';

    pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' ');

    if (!writeNode(state, level, objectValue, false, false)) {
      continue; // Skip this pair because of invalid value.
    }

    pairBuffer += state.dump;

    // Both key and value are valid.
    _result += pairBuffer;
  }

  state.tag = _tag;
  state.dump = '{' + _result + '}';
}

function writeBlockMapping(state, level, object, compact) {
  var _result       = '',
      _tag          = state.tag,
      objectKeyList = Object.keys(object),
      index,
      length,
      objectKey,
      objectValue,
      explicitPair,
      pairBuffer;

  // Allow sorting keys so that the output file is deterministic
  if (state.sortKeys === true) {
    // Default sorting
    objectKeyList.sort();
  } else if (typeof state.sortKeys === 'function') {
    // Custom sort function
    objectKeyList.sort(state.sortKeys);
  } else if (state.sortKeys) {
    // Something is wrong
    throw new YAMLException('sortKeys must be a boolean or a function');
  }

  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
    pairBuffer = '';

    if (!compact || index !== 0) {
      pairBuffer += generateNextLine(state, level);
    }

    objectKey = objectKeyList[index];
    objectValue = object[objectKey];

    if (!writeNode(state, level + 1, objectKey, true, true, true)) {
      continue; // Skip this pair because of invalid key.
    }

    explicitPair = (state.tag !== null && state.tag !== '?') ||
                   (state.dump && state.dump.length > 1024);

    if (explicitPair) {
      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
        pairBuffer += '?';
      } else {
        pairBuffer += '? ';
      }
    }

    pairBuffer += state.dump;

    if (explicitPair) {
      pairBuffer += generateNextLine(state, level);
    }

    if (!writeNode(state, level + 1, objectValue, true, explicitPair)) {
      continue; // Skip this pair because of invalid value.
    }

    if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
      pairBuffer += ':';
    } else {
      pairBuffer += ': ';
    }

    pairBuffer += state.dump;

    // Both key and value are valid.
    _result += pairBuffer;
  }

  state.tag = _tag;
  state.dump = _result || '{}'; // Empty mapping if no valid pairs.
}

function detectType(state, object, explicit) {
  var _result, typeList, index, length, type, style;

  typeList = explicit ? state.explicitTypes : state.implicitTypes;

  for (index = 0, length = typeList.length; index < length; index += 1) {
    type = typeList[index];

    if ((type.instanceOf  || type.predicate) &&
        (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) &&
        (!type.predicate  || type.predicate(object))) {

      state.tag = explicit ? type.tag : '?';

      if (type.represent) {
        style = state.styleMap[type.tag] || type.defaultStyle;

        if (_toString.call(type.represent) === '[object Function]') {
          _result = type.represent(object, style);
        } else if (_hasOwnProperty.call(type.represent, style)) {
          _result = type.represent[style](object, style);
        } else {
          throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style');
        }

        state.dump = _result;
      }

      return true;
    }
  }

  return false;
}

// Serializes `object` and writes it to global `result`.
// Returns true on success, or false on invalid object.
//
function writeNode(state, level, object, block, compact, iskey) {
  state.tag = null;
  state.dump = object;

  if (!detectType(state, object, false)) {
    detectType(state, object, true);
  }

  var type = _toString.call(state.dump);

  if (block) {
    block = (state.flowLevel < 0 || state.flowLevel > level);
  }

  var objectOrArray = type === '[object Object]' || type === '[object Array]',
      duplicateIndex,
      duplicate;

  if (objectOrArray) {
    duplicateIndex = state.duplicates.indexOf(object);
    duplicate = duplicateIndex !== -1;
  }

  if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) {
    compact = false;
  }

  if (duplicate && state.usedDuplicates[duplicateIndex]) {
    state.dump = '*ref_' + duplicateIndex;
  } else {
    if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
      state.usedDuplicates[duplicateIndex] = true;
    }
    if (type === '[object Object]') {
      if (block && (Object.keys(state.dump).length !== 0)) {
        writeBlockMapping(state, level, state.dump, compact);
        if (duplicate) {
          state.dump = '&ref_' + duplicateIndex + state.dump;
        }
      } else {
        writeFlowMapping(state, level, state.dump);
        if (duplicate) {
          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
        }
      }
    } else if (type === '[object Array]') {
      var arrayLevel = (state.noArrayIndent && (level > 0)) ? level - 1 : level;
      if (block && (state.dump.length !== 0)) {
        writeBlockSequence(state, arrayLevel, state.dump, compact);
        if (duplicate) {
          state.dump = '&ref_' + duplicateIndex + state.dump;
        }
      } else {
        writeFlowSequence(state, arrayLevel, state.dump);
        if (duplicate) {
          state.dump = '&ref_' + duplicateIndex + ' ' + state.dump;
        }
      }
    } else if (type === '[object String]') {
      if (state.tag !== '?') {
        writeScalar(state, state.dump, level, iskey);
      }
    } else {
      if (state.skipInvalid) return false;
      throw new YAMLException('unacceptable kind of an object to dump ' + type);
    }

    if (state.tag !== null && state.tag !== '?') {
      state.dump = '!<' + state.tag + '> ' + state.dump;
    }
  }

  return true;
}

function getDuplicateReferences(object, state) {
  var objects = [],
      duplicatesIndexes = [],
      index,
      length;

  inspectNode(object, objects, duplicatesIndexes);

  for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
    state.duplicates.push(objects[duplicatesIndexes[index]]);
  }
  state.usedDuplicates = new Array(length);
}

function inspectNode(object, objects, duplicatesIndexes) {
  var objectKeyList,
      index,
      length;

  if (object !== null && typeof object === 'object') {
    index = objects.indexOf(object);
    if (index !== -1) {
      if (duplicatesIndexes.indexOf(index) === -1) {
        duplicatesIndexes.push(index);
      }
    } else {
      objects.push(object);

      if (Array.isArray(object)) {
        for (index = 0, length = object.length; index < length; index += 1) {
          inspectNode(object[index], objects, duplicatesIndexes);
        }
      } else {
        objectKeyList = Object.keys(object);

        for (index = 0, length = objectKeyList.length; index < length; index += 1) {
          inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);
        }
      }
    }
  }
}

function dump(input, options) {
  options = options || {};

  var state = new State(options);

  if (!state.noRefs) getDuplicateReferences(input, state);

  if (writeNode(state, 0, input, true, true)) return state.dump + '\n';

  return '';
}

function safeDump(input, options) {
  return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
}

module.exports.dump     = dump;
module.exports.safeDump = safeDump;


/***/ }),

/***/ 65199:
/***/ ((module) => {

"use strict";
// YAML error class. http://stackoverflow.com/questions/8458984
//


function YAMLException(reason, mark) {
  // Super constructor
  Error.call(this);

  this.name = 'YAMLException';
  this.reason = reason;
  this.mark = mark;
  this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : '');

  // Include stack trace in error object
  if (Error.captureStackTrace) {
    // Chrome and NodeJS
    Error.captureStackTrace(this, this.constructor);
  } else {
    // FF, IE 10+ and Safari 6+. Fallback for others
    this.stack = (new Error()).stack || '';
  }
}


// Inherit from Error
YAMLException.prototype = Object.create(Error.prototype);
YAMLException.prototype.constructor = YAMLException;


YAMLException.prototype.toString = function toString(compact) {
  var result = this.name + ': ';

  result += this.reason || '(unknown reason)';

  if (!compact && this.mark) {
    result += ' ' + this.mark.toString();
  }

  return result;
};


module.exports = YAMLException;


/***/ }),

/***/ 45190:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/*eslint-disable max-len,no-use-before-define*/

var common              = __webpack_require__(59136);
var YAMLException       = __webpack_require__(65199);
var Mark                = __webpack_require__(55426);
var DEFAULT_SAFE_SCHEMA = __webpack_require__(48949);
var DEFAULT_FULL_SCHEMA = __webpack_require__(56874);


var _hasOwnProperty = Object.prototype.hasOwnProperty;


var CONTEXT_FLOW_IN   = 1;
var CONTEXT_FLOW_OUT  = 2;
var CONTEXT_BLOCK_IN  = 3;
var CONTEXT_BLOCK_OUT = 4;


var CHOMPING_CLIP  = 1;
var CHOMPING_STRIP = 2;
var CHOMPING_KEEP  = 3;


var PATTERN_NON_PRINTABLE         = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;
var PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/;
var PATTERN_FLOW_INDICATORS       = /[,\[\]\{\}]/;
var PATTERN_TAG_HANDLE            = /^(?:!|!!|![a-z\-]+!)$/i;
var PATTERN_TAG_URI               = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;


function _class(obj) { return Object.prototype.toString.call(obj); }

function is_EOL(c) {
  return (c === 0x0A/* LF */) || (c === 0x0D/* CR */);
}

function is_WHITE_SPACE(c) {
  return (c === 0x09/* Tab */) || (c === 0x20/* Space */);
}

function is_WS_OR_EOL(c) {
  return (c === 0x09/* Tab */) ||
         (c === 0x20/* Space */) ||
         (c === 0x0A/* LF */) ||
         (c === 0x0D/* CR */);
}

function is_FLOW_INDICATOR(c) {
  return c === 0x2C/* , */ ||
         c === 0x5B/* [ */ ||
         c === 0x5D/* ] */ ||
         c === 0x7B/* { */ ||
         c === 0x7D/* } */;
}

function fromHexCode(c) {
  var lc;

  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
    return c - 0x30;
  }

  /*eslint-disable no-bitwise*/
  lc = c | 0x20;

  if ((0x61/* a */ <= lc) && (lc <= 0x66/* f */)) {
    return lc - 0x61 + 10;
  }

  return -1;
}

function escapedHexLen(c) {
  if (c === 0x78/* x */) { return 2; }
  if (c === 0x75/* u */) { return 4; }
  if (c === 0x55/* U */) { return 8; }
  return 0;
}

function fromDecimalCode(c) {
  if ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) {
    return c - 0x30;
  }

  return -1;
}

function simpleEscapeSequence(c) {
  /* eslint-disable indent */
  return (c === 0x30/* 0 */) ? '\x00' :
        (c === 0x61/* a */) ? '\x07' :
        (c === 0x62/* b */) ? '\x08' :
        (c === 0x74/* t */) ? '\x09' :
        (c === 0x09/* Tab */) ? '\x09' :
        (c === 0x6E/* n */) ? '\x0A' :
        (c === 0x76/* v */) ? '\x0B' :
        (c === 0x66/* f */) ? '\x0C' :
        (c === 0x72/* r */) ? '\x0D' :
        (c === 0x65/* e */) ? '\x1B' :
        (c === 0x20/* Space */) ? ' ' :
        (c === 0x22/* " */) ? '\x22' :
        (c === 0x2F/* / */) ? '/' :
        (c === 0x5C/* \ */) ? '\x5C' :
        (c === 0x4E/* N */) ? '\x85' :
        (c === 0x5F/* _ */) ? '\xA0' :
        (c === 0x4C/* L */) ? '\u2028' :
        (c === 0x50/* P */) ? '\u2029' : '';
}

function charFromCodepoint(c) {
  if (c <= 0xFFFF) {
    return String.fromCharCode(c);
  }
  // Encode UTF-16 surrogate pair
  // https://en.wikipedia.org/wiki/UTF-16#Code_points_U.2B010000_to_U.2B10FFFF
  return String.fromCharCode(
    ((c - 0x010000) >> 10) + 0xD800,
    ((c - 0x010000) & 0x03FF) + 0xDC00
  );
}

var simpleEscapeCheck = new Array(256); // integer, for fast access
var simpleEscapeMap = new Array(256);
for (var i = 0; i < 256; i++) {
  simpleEscapeCheck[i] = simpleEscapeSequence(i) ? 1 : 0;
  simpleEscapeMap[i] = simpleEscapeSequence(i);
}


function State(input, options) {
  this.input = input;

  this.filename  = options['filename']  || null;
  this.schema    = options['schema']    || DEFAULT_FULL_SCHEMA;
  this.onWarning = options['onWarning'] || null;
  this.legacy    = options['legacy']    || false;
  this.json      = options['json']      || false;
  this.listener  = options['listener']  || null;

  this.implicitTypes = this.schema.compiledImplicit;
  this.typeMap       = this.schema.compiledTypeMap;

  this.length     = input.length;
  this.position   = 0;
  this.line       = 0;
  this.lineStart  = 0;
  this.lineIndent = 0;

  this.documents = [];

  /*
  this.version;
  this.checkLineBreaks;
  this.tagMap;
  this.anchorMap;
  this.tag;
  this.anchor;
  this.kind;
  this.result;*/

}


function generateError(state, message) {
  return new YAMLException(
    message,
    new Mark(state.filename, state.input, state.position, state.line, (state.position - state.lineStart)));
}

function throwError(state, message) {
  throw generateError(state, message);
}

function throwWarning(state, message) {
  if (state.onWarning) {
    state.onWarning.call(null, generateError(state, message));
  }
}


var directiveHandlers = {

  YAML: function handleYamlDirective(state, name, args) {

    var match, major, minor;

    if (state.version !== null) {
      throwError(state, 'duplication of %YAML directive');
    }

    if (args.length !== 1) {
      throwError(state, 'YAML directive accepts exactly one argument');
    }

    match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);

    if (match === null) {
      throwError(state, 'ill-formed argument of the YAML directive');
    }

    major = parseInt(match[1], 10);
    minor = parseInt(match[2], 10);

    if (major !== 1) {
      throwError(state, 'unacceptable YAML version of the document');
    }

    state.version = args[0];
    state.checkLineBreaks = (minor < 2);

    if (minor !== 1 && minor !== 2) {
      throwWarning(state, 'unsupported YAML version of the document');
    }
  },

  TAG: function handleTagDirective(state, name, args) {

    var handle, prefix;

    if (args.length !== 2) {
      throwError(state, 'TAG directive accepts exactly two arguments');
    }

    handle = args[0];
    prefix = args[1];

    if (!PATTERN_TAG_HANDLE.test(handle)) {
      throwError(state, 'ill-formed tag handle (first argument) of the TAG directive');
    }

    if (_hasOwnProperty.call(state.tagMap, handle)) {
      throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
    }

    if (!PATTERN_TAG_URI.test(prefix)) {
      throwError(state, 'ill-formed tag prefix (second argument) of the TAG directive');
    }

    state.tagMap[handle] = prefix;
  }
};


function captureSegment(state, start, end, checkJson) {
  var _position, _length, _character, _result;

  if (start < end) {
    _result = state.input.slice(start, end);

    if (checkJson) {
      for (_position = 0, _length = _result.length; _position < _length; _position += 1) {
        _character = _result.charCodeAt(_position);
        if (!(_character === 0x09 ||
              (0x20 <= _character && _character <= 0x10FFFF))) {
          throwError(state, 'expected valid JSON character');
        }
      }
    } else if (PATTERN_NON_PRINTABLE.test(_result)) {
      throwError(state, 'the stream contains non-printable characters');
    }

    state.result += _result;
  }
}

function mergeMappings(state, destination, source, overridableKeys) {
  var sourceKeys, key, index, quantity;

  if (!common.isObject(source)) {
    throwError(state, 'cannot merge mappings; the provided source object is unacceptable');
  }

  sourceKeys = Object.keys(source);

  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
    key = sourceKeys[index];

    if (!_hasOwnProperty.call(destination, key)) {
      destination[key] = source[key];
      overridableKeys[key] = true;
    }
  }
}

function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) {
  var index, quantity;

  // The output is a plain object here, so keys can only be strings.
  // We need to convert keyNode to a string, but doing so can hang the process
  // (deeply nested arrays that explode exponentially using aliases).
  if (Array.isArray(keyNode)) {
    keyNode = Array.prototype.slice.call(keyNode);

    for (index = 0, quantity = keyNode.length; index < quantity; index += 1) {
      if (Array.isArray(keyNode[index])) {
        throwError(state, 'nested arrays are not supported inside keys');
      }

      if (typeof keyNode === 'object' && _class(keyNode[index]) === '[object Object]') {
        keyNode[index] = '[object Object]';
      }
    }
  }

  // Avoid code execution in load() via toString property
  // (still use its own toString for arrays, timestamps,
  // and whatever user schema extensions happen to have @@toStringTag)
  if (typeof keyNode === 'object' && _class(keyNode) === '[object Object]') {
    keyNode = '[object Object]';
  }


  keyNode = String(keyNode);

  if (_result === null) {
    _result = {};
  }

  if (keyTag === 'tag:yaml.org,2002:merge') {
    if (Array.isArray(valueNode)) {
      for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
        mergeMappings(state, _result, valueNode[index], overridableKeys);
      }
    } else {
      mergeMappings(state, _result, valueNode, overridableKeys);
    }
  } else {
    if (!state.json &&
        !_hasOwnProperty.call(overridableKeys, keyNode) &&
        _hasOwnProperty.call(_result, keyNode)) {
      state.line = startLine || state.line;
      state.position = startPos || state.position;
      throwError(state, 'duplicated mapping key');
    }
    _result[keyNode] = valueNode;
    delete overridableKeys[keyNode];
  }

  return _result;
}

function readLineBreak(state) {
  var ch;

  ch = state.input.charCodeAt(state.position);

  if (ch === 0x0A/* LF */) {
    state.position++;
  } else if (ch === 0x0D/* CR */) {
    state.position++;
    if (state.input.charCodeAt(state.position) === 0x0A/* LF */) {
      state.position++;
    }
  } else {
    throwError(state, 'a line break is expected');
  }

  state.line += 1;
  state.lineStart = state.position;
}

function skipSeparationSpace(state, allowComments, checkIndent) {
  var lineBreaks = 0,
      ch = state.input.charCodeAt(state.position);

  while (ch !== 0) {
    while (is_WHITE_SPACE(ch)) {
      ch = state.input.charCodeAt(++state.position);
    }

    if (allowComments && ch === 0x23/* # */) {
      do {
        ch = state.input.charCodeAt(++state.position);
      } while (ch !== 0x0A/* LF */ && ch !== 0x0D/* CR */ && ch !== 0);
    }

    if (is_EOL(ch)) {
      readLineBreak(state);

      ch = state.input.charCodeAt(state.position);
      lineBreaks++;
      state.lineIndent = 0;

      while (ch === 0x20/* Space */) {
        state.lineIndent++;
        ch = state.input.charCodeAt(++state.position);
      }
    } else {
      break;
    }
  }

  if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) {
    throwWarning(state, 'deficient indentation');
  }

  return lineBreaks;
}

function testDocumentSeparator(state) {
  var _position = state.position,
      ch;

  ch = state.input.charCodeAt(_position);

  // Condition state.position === state.lineStart is tested
  // in parent on each call, for efficiency. No needs to test here again.
  if ((ch === 0x2D/* - */ || ch === 0x2E/* . */) &&
      ch === state.input.charCodeAt(_position + 1) &&
      ch === state.input.charCodeAt(_position + 2)) {

    _position += 3;

    ch = state.input.charCodeAt(_position);

    if (ch === 0 || is_WS_OR_EOL(ch)) {
      return true;
    }
  }

  return false;
}

function writeFoldedLines(state, count) {
  if (count === 1) {
    state.result += ' ';
  } else if (count > 1) {
    state.result += common.repeat('\n', count - 1);
  }
}


function readPlainScalar(state, nodeIndent, withinFlowCollection) {
  var preceding,
      following,
      captureStart,
      captureEnd,
      hasPendingContent,
      _line,
      _lineStart,
      _lineIndent,
      _kind = state.kind,
      _result = state.result,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (is_WS_OR_EOL(ch)      ||
      is_FLOW_INDICATOR(ch) ||
      ch === 0x23/* # */    ||
      ch === 0x26/* & */    ||
      ch === 0x2A/* * */    ||
      ch === 0x21/* ! */    ||
      ch === 0x7C/* | */    ||
      ch === 0x3E/* > */    ||
      ch === 0x27/* ' */    ||
      ch === 0x22/* " */    ||
      ch === 0x25/* % */    ||
      ch === 0x40/* @ */    ||
      ch === 0x60/* ` */) {
    return false;
  }

  if (ch === 0x3F/* ? */ || ch === 0x2D/* - */) {
    following = state.input.charCodeAt(state.position + 1);

    if (is_WS_OR_EOL(following) ||
        withinFlowCollection && is_FLOW_INDICATOR(following)) {
      return false;
    }
  }

  state.kind = 'scalar';
  state.result = '';
  captureStart = captureEnd = state.position;
  hasPendingContent = false;

  while (ch !== 0) {
    if (ch === 0x3A/* : */) {
      following = state.input.charCodeAt(state.position + 1);

      if (is_WS_OR_EOL(following) ||
          withinFlowCollection && is_FLOW_INDICATOR(following)) {
        break;
      }

    } else if (ch === 0x23/* # */) {
      preceding = state.input.charCodeAt(state.position - 1);

      if (is_WS_OR_EOL(preceding)) {
        break;
      }

    } else if ((state.position === state.lineStart && testDocumentSeparator(state)) ||
               withinFlowCollection && is_FLOW_INDICATOR(ch)) {
      break;

    } else if (is_EOL(ch)) {
      _line = state.line;
      _lineStart = state.lineStart;
      _lineIndent = state.lineIndent;
      skipSeparationSpace(state, false, -1);

      if (state.lineIndent >= nodeIndent) {
        hasPendingContent = true;
        ch = state.input.charCodeAt(state.position);
        continue;
      } else {
        state.position = captureEnd;
        state.line = _line;
        state.lineStart = _lineStart;
        state.lineIndent = _lineIndent;
        break;
      }
    }

    if (hasPendingContent) {
      captureSegment(state, captureStart, captureEnd, false);
      writeFoldedLines(state, state.line - _line);
      captureStart = captureEnd = state.position;
      hasPendingContent = false;
    }

    if (!is_WHITE_SPACE(ch)) {
      captureEnd = state.position + 1;
    }

    ch = state.input.charCodeAt(++state.position);
  }

  captureSegment(state, captureStart, captureEnd, false);

  if (state.result) {
    return true;
  }

  state.kind = _kind;
  state.result = _result;
  return false;
}

function readSingleQuotedScalar(state, nodeIndent) {
  var ch,
      captureStart, captureEnd;

  ch = state.input.charCodeAt(state.position);

  if (ch !== 0x27/* ' */) {
    return false;
  }

  state.kind = 'scalar';
  state.result = '';
  state.position++;
  captureStart = captureEnd = state.position;

  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
    if (ch === 0x27/* ' */) {
      captureSegment(state, captureStart, state.position, true);
      ch = state.input.charCodeAt(++state.position);

      if (ch === 0x27/* ' */) {
        captureStart = state.position;
        state.position++;
        captureEnd = state.position;
      } else {
        return true;
      }

    } else if (is_EOL(ch)) {
      captureSegment(state, captureStart, captureEnd, true);
      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
      captureStart = captureEnd = state.position;

    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
      throwError(state, 'unexpected end of the document within a single quoted scalar');

    } else {
      state.position++;
      captureEnd = state.position;
    }
  }

  throwError(state, 'unexpected end of the stream within a single quoted scalar');
}

function readDoubleQuotedScalar(state, nodeIndent) {
  var captureStart,
      captureEnd,
      hexLength,
      hexResult,
      tmp,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (ch !== 0x22/* " */) {
    return false;
  }

  state.kind = 'scalar';
  state.result = '';
  state.position++;
  captureStart = captureEnd = state.position;

  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
    if (ch === 0x22/* " */) {
      captureSegment(state, captureStart, state.position, true);
      state.position++;
      return true;

    } else if (ch === 0x5C/* \ */) {
      captureSegment(state, captureStart, state.position, true);
      ch = state.input.charCodeAt(++state.position);

      if (is_EOL(ch)) {
        skipSeparationSpace(state, false, nodeIndent);

        // TODO: rework to inline fn with no type cast?
      } else if (ch < 256 && simpleEscapeCheck[ch]) {
        state.result += simpleEscapeMap[ch];
        state.position++;

      } else if ((tmp = escapedHexLen(ch)) > 0) {
        hexLength = tmp;
        hexResult = 0;

        for (; hexLength > 0; hexLength--) {
          ch = state.input.charCodeAt(++state.position);

          if ((tmp = fromHexCode(ch)) >= 0) {
            hexResult = (hexResult << 4) + tmp;

          } else {
            throwError(state, 'expected hexadecimal character');
          }
        }

        state.result += charFromCodepoint(hexResult);

        state.position++;

      } else {
        throwError(state, 'unknown escape sequence');
      }

      captureStart = captureEnd = state.position;

    } else if (is_EOL(ch)) {
      captureSegment(state, captureStart, captureEnd, true);
      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
      captureStart = captureEnd = state.position;

    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
      throwError(state, 'unexpected end of the document within a double quoted scalar');

    } else {
      state.position++;
      captureEnd = state.position;
    }
  }

  throwError(state, 'unexpected end of the stream within a double quoted scalar');
}

function readFlowCollection(state, nodeIndent) {
  var readNext = true,
      _line,
      _tag     = state.tag,
      _result,
      _anchor  = state.anchor,
      following,
      terminator,
      isPair,
      isExplicitPair,
      isMapping,
      overridableKeys = {},
      keyNode,
      keyTag,
      valueNode,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (ch === 0x5B/* [ */) {
    terminator = 0x5D;/* ] */
    isMapping = false;
    _result = [];
  } else if (ch === 0x7B/* { */) {
    terminator = 0x7D;/* } */
    isMapping = true;
    _result = {};
  } else {
    return false;
  }

  if (state.anchor !== null) {
    state.anchorMap[state.anchor] = _result;
  }

  ch = state.input.charCodeAt(++state.position);

  while (ch !== 0) {
    skipSeparationSpace(state, true, nodeIndent);

    ch = state.input.charCodeAt(state.position);

    if (ch === terminator) {
      state.position++;
      state.tag = _tag;
      state.anchor = _anchor;
      state.kind = isMapping ? 'mapping' : 'sequence';
      state.result = _result;
      return true;
    } else if (!readNext) {
      throwError(state, 'missed comma between flow collection entries');
    }

    keyTag = keyNode = valueNode = null;
    isPair = isExplicitPair = false;

    if (ch === 0x3F/* ? */) {
      following = state.input.charCodeAt(state.position + 1);

      if (is_WS_OR_EOL(following)) {
        isPair = isExplicitPair = true;
        state.position++;
        skipSeparationSpace(state, true, nodeIndent);
      }
    }

    _line = state.line;
    composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
    keyTag = state.tag;
    keyNode = state.result;
    skipSeparationSpace(state, true, nodeIndent);

    ch = state.input.charCodeAt(state.position);

    if ((isExplicitPair || state.line === _line) && ch === 0x3A/* : */) {
      isPair = true;
      ch = state.input.charCodeAt(++state.position);
      skipSeparationSpace(state, true, nodeIndent);
      composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
      valueNode = state.result;
    }

    if (isMapping) {
      storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode);
    } else if (isPair) {
      _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode));
    } else {
      _result.push(keyNode);
    }

    skipSeparationSpace(state, true, nodeIndent);

    ch = state.input.charCodeAt(state.position);

    if (ch === 0x2C/* , */) {
      readNext = true;
      ch = state.input.charCodeAt(++state.position);
    } else {
      readNext = false;
    }
  }

  throwError(state, 'unexpected end of the stream within a flow collection');
}

function readBlockScalar(state, nodeIndent) {
  var captureStart,
      folding,
      chomping       = CHOMPING_CLIP,
      didReadContent = false,
      detectedIndent = false,
      textIndent     = nodeIndent,
      emptyLines     = 0,
      atMoreIndented = false,
      tmp,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (ch === 0x7C/* | */) {
    folding = false;
  } else if (ch === 0x3E/* > */) {
    folding = true;
  } else {
    return false;
  }

  state.kind = 'scalar';
  state.result = '';

  while (ch !== 0) {
    ch = state.input.charCodeAt(++state.position);

    if (ch === 0x2B/* + */ || ch === 0x2D/* - */) {
      if (CHOMPING_CLIP === chomping) {
        chomping = (ch === 0x2B/* + */) ? CHOMPING_KEEP : CHOMPING_STRIP;
      } else {
        throwError(state, 'repeat of a chomping mode identifier');
      }

    } else if ((tmp = fromDecimalCode(ch)) >= 0) {
      if (tmp === 0) {
        throwError(state, 'bad explicit indentation width of a block scalar; it cannot be less than one');
      } else if (!detectedIndent) {
        textIndent = nodeIndent + tmp - 1;
        detectedIndent = true;
      } else {
        throwError(state, 'repeat of an indentation width identifier');
      }

    } else {
      break;
    }
  }

  if (is_WHITE_SPACE(ch)) {
    do { ch = state.input.charCodeAt(++state.position); }
    while (is_WHITE_SPACE(ch));

    if (ch === 0x23/* # */) {
      do { ch = state.input.charCodeAt(++state.position); }
      while (!is_EOL(ch) && (ch !== 0));
    }
  }

  while (ch !== 0) {
    readLineBreak(state);
    state.lineIndent = 0;

    ch = state.input.charCodeAt(state.position);

    while ((!detectedIndent || state.lineIndent < textIndent) &&
           (ch === 0x20/* Space */)) {
      state.lineIndent++;
      ch = state.input.charCodeAt(++state.position);
    }

    if (!detectedIndent && state.lineIndent > textIndent) {
      textIndent = state.lineIndent;
    }

    if (is_EOL(ch)) {
      emptyLines++;
      continue;
    }

    // End of the scalar.
    if (state.lineIndent < textIndent) {

      // Perform the chomping.
      if (chomping === CHOMPING_KEEP) {
        state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
      } else if (chomping === CHOMPING_CLIP) {
        if (didReadContent) { // i.e. only if the scalar is not empty.
          state.result += '\n';
        }
      }

      // Break this `while` cycle and go to the funciton's epilogue.
      break;
    }

    // Folded style: use fancy rules to handle line breaks.
    if (folding) {

      // Lines starting with white space characters (more-indented lines) are not folded.
      if (is_WHITE_SPACE(ch)) {
        atMoreIndented = true;
        // except for the first content line (cf. Example 8.1)
        state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);

      // End of more-indented block.
      } else if (atMoreIndented) {
        atMoreIndented = false;
        state.result += common.repeat('\n', emptyLines + 1);

      // Just one line break - perceive as the same line.
      } else if (emptyLines === 0) {
        if (didReadContent) { // i.e. only if we have already read some scalar content.
          state.result += ' ';
        }

      // Several line breaks - perceive as different lines.
      } else {
        state.result += common.repeat('\n', emptyLines);
      }

    // Literal style: just add exact number of line breaks between content lines.
    } else {
      // Keep all line breaks except the header line break.
      state.result += common.repeat('\n', didReadContent ? 1 + emptyLines : emptyLines);
    }

    didReadContent = true;
    detectedIndent = true;
    emptyLines = 0;
    captureStart = state.position;

    while (!is_EOL(ch) && (ch !== 0)) {
      ch = state.input.charCodeAt(++state.position);
    }

    captureSegment(state, captureStart, state.position, false);
  }

  return true;
}

function readBlockSequence(state, nodeIndent) {
  var _line,
      _tag      = state.tag,
      _anchor   = state.anchor,
      _result   = [],
      following,
      detected  = false,
      ch;

  if (state.anchor !== null) {
    state.anchorMap[state.anchor] = _result;
  }

  ch = state.input.charCodeAt(state.position);

  while (ch !== 0) {

    if (ch !== 0x2D/* - */) {
      break;
    }

    following = state.input.charCodeAt(state.position + 1);

    if (!is_WS_OR_EOL(following)) {
      break;
    }

    detected = true;
    state.position++;

    if (skipSeparationSpace(state, true, -1)) {
      if (state.lineIndent <= nodeIndent) {
        _result.push(null);
        ch = state.input.charCodeAt(state.position);
        continue;
      }
    }

    _line = state.line;
    composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);
    _result.push(state.result);
    skipSeparationSpace(state, true, -1);

    ch = state.input.charCodeAt(state.position);

    if ((state.line === _line || state.lineIndent > nodeIndent) && (ch !== 0)) {
      throwError(state, 'bad indentation of a sequence entry');
    } else if (state.lineIndent < nodeIndent) {
      break;
    }
  }

  if (detected) {
    state.tag = _tag;
    state.anchor = _anchor;
    state.kind = 'sequence';
    state.result = _result;
    return true;
  }
  return false;
}

function readBlockMapping(state, nodeIndent, flowIndent) {
  var following,
      allowCompact,
      _line,
      _pos,
      _tag          = state.tag,
      _anchor       = state.anchor,
      _result       = {},
      overridableKeys = {},
      keyTag        = null,
      keyNode       = null,
      valueNode     = null,
      atExplicitKey = false,
      detected      = false,
      ch;

  if (state.anchor !== null) {
    state.anchorMap[state.anchor] = _result;
  }

  ch = state.input.charCodeAt(state.position);

  while (ch !== 0) {
    following = state.input.charCodeAt(state.position + 1);
    _line = state.line; // Save the current line.
    _pos = state.position;

    //
    // Explicit notation case. There are two separate blocks:
    // first for the key (denoted by "?") and second for the value (denoted by ":")
    //
    if ((ch === 0x3F/* ? */ || ch === 0x3A/* : */) && is_WS_OR_EOL(following)) {

      if (ch === 0x3F/* ? */) {
        if (atExplicitKey) {
          storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
          keyTag = keyNode = valueNode = null;
        }

        detected = true;
        atExplicitKey = true;
        allowCompact = true;

      } else if (atExplicitKey) {
        // i.e. 0x3A/* : */ === character after the explicit key.
        atExplicitKey = false;
        allowCompact = true;

      } else {
        throwError(state, 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line');
      }

      state.position += 1;
      ch = following;

    //
    // Implicit notation case. Flow-style node as the key first, then ":", and the value.
    //
    } else if (composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {

      if (state.line === _line) {
        ch = state.input.charCodeAt(state.position);

        while (is_WHITE_SPACE(ch)) {
          ch = state.input.charCodeAt(++state.position);
        }

        if (ch === 0x3A/* : */) {
          ch = state.input.charCodeAt(++state.position);

          if (!is_WS_OR_EOL(ch)) {
            throwError(state, 'a whitespace character is expected after the key-value separator within a block mapping');
          }

          if (atExplicitKey) {
            storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
            keyTag = keyNode = valueNode = null;
          }

          detected = true;
          atExplicitKey = false;
          allowCompact = false;
          keyTag = state.tag;
          keyNode = state.result;

        } else if (detected) {
          throwError(state, 'can not read an implicit mapping pair; a colon is missed');

        } else {
          state.tag = _tag;
          state.anchor = _anchor;
          return true; // Keep the result of `composeNode`.
        }

      } else if (detected) {
        throwError(state, 'can not read a block mapping entry; a multiline key may not be an implicit key');

      } else {
        state.tag = _tag;
        state.anchor = _anchor;
        return true; // Keep the result of `composeNode`.
      }

    } else {
      break; // Reading is done. Go to the epilogue.
    }

    //
    // Common reading code for both explicit and implicit notations.
    //
    if (state.line === _line || state.lineIndent > nodeIndent) {
      if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {
        if (atExplicitKey) {
          keyNode = state.result;
        } else {
          valueNode = state.result;
        }
      }

      if (!atExplicitKey) {
        storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos);
        keyTag = keyNode = valueNode = null;
      }

      skipSeparationSpace(state, true, -1);
      ch = state.input.charCodeAt(state.position);
    }

    if (state.lineIndent > nodeIndent && (ch !== 0)) {
      throwError(state, 'bad indentation of a mapping entry');
    } else if (state.lineIndent < nodeIndent) {
      break;
    }
  }

  //
  // Epilogue.
  //

  // Special case: last mapping's node contains only the key in explicit notation.
  if (atExplicitKey) {
    storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null);
  }

  // Expose the resulting mapping.
  if (detected) {
    state.tag = _tag;
    state.anchor = _anchor;
    state.kind = 'mapping';
    state.result = _result;
  }

  return detected;
}

function readTagProperty(state) {
  var _position,
      isVerbatim = false,
      isNamed    = false,
      tagHandle,
      tagName,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (ch !== 0x21/* ! */) return false;

  if (state.tag !== null) {
    throwError(state, 'duplication of a tag property');
  }

  ch = state.input.charCodeAt(++state.position);

  if (ch === 0x3C/* < */) {
    isVerbatim = true;
    ch = state.input.charCodeAt(++state.position);

  } else if (ch === 0x21/* ! */) {
    isNamed = true;
    tagHandle = '!!';
    ch = state.input.charCodeAt(++state.position);

  } else {
    tagHandle = '!';
  }

  _position = state.position;

  if (isVerbatim) {
    do { ch = state.input.charCodeAt(++state.position); }
    while (ch !== 0 && ch !== 0x3E/* > */);

    if (state.position < state.length) {
      tagName = state.input.slice(_position, state.position);
      ch = state.input.charCodeAt(++state.position);
    } else {
      throwError(state, 'unexpected end of the stream within a verbatim tag');
    }
  } else {
    while (ch !== 0 && !is_WS_OR_EOL(ch)) {

      if (ch === 0x21/* ! */) {
        if (!isNamed) {
          tagHandle = state.input.slice(_position - 1, state.position + 1);

          if (!PATTERN_TAG_HANDLE.test(tagHandle)) {
            throwError(state, 'named tag handle cannot contain such characters');
          }

          isNamed = true;
          _position = state.position + 1;
        } else {
          throwError(state, 'tag suffix cannot contain exclamation marks');
        }
      }

      ch = state.input.charCodeAt(++state.position);
    }

    tagName = state.input.slice(_position, state.position);

    if (PATTERN_FLOW_INDICATORS.test(tagName)) {
      throwError(state, 'tag suffix cannot contain flow indicator characters');
    }
  }

  if (tagName && !PATTERN_TAG_URI.test(tagName)) {
    throwError(state, 'tag name cannot contain such characters: ' + tagName);
  }

  if (isVerbatim) {
    state.tag = tagName;

  } else if (_hasOwnProperty.call(state.tagMap, tagHandle)) {
    state.tag = state.tagMap[tagHandle] + tagName;

  } else if (tagHandle === '!') {
    state.tag = '!' + tagName;

  } else if (tagHandle === '!!') {
    state.tag = 'tag:yaml.org,2002:' + tagName;

  } else {
    throwError(state, 'undeclared tag handle "' + tagHandle + '"');
  }

  return true;
}

function readAnchorProperty(state) {
  var _position,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (ch !== 0x26/* & */) return false;

  if (state.anchor !== null) {
    throwError(state, 'duplication of an anchor property');
  }

  ch = state.input.charCodeAt(++state.position);
  _position = state.position;

  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
    ch = state.input.charCodeAt(++state.position);
  }

  if (state.position === _position) {
    throwError(state, 'name of an anchor node must contain at least one character');
  }

  state.anchor = state.input.slice(_position, state.position);
  return true;
}

function readAlias(state) {
  var _position, alias,
      ch;

  ch = state.input.charCodeAt(state.position);

  if (ch !== 0x2A/* * */) return false;

  ch = state.input.charCodeAt(++state.position);
  _position = state.position;

  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
    ch = state.input.charCodeAt(++state.position);
  }

  if (state.position === _position) {
    throwError(state, 'name of an alias node must contain at least one character');
  }

  alias = state.input.slice(_position, state.position);

  if (!_hasOwnProperty.call(state.anchorMap, alias)) {
    throwError(state, 'unidentified alias "' + alias + '"');
  }

  state.result = state.anchorMap[alias];
  skipSeparationSpace(state, true, -1);
  return true;
}

function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
  var allowBlockStyles,
      allowBlockScalars,
      allowBlockCollections,
      indentStatus = 1, // 1: this>parent, 0: this=parent, -1: this<parent
      atNewLine  = false,
      hasContent = false,
      typeIndex,
      typeQuantity,
      type,
      flowIndent,
      blockIndent;

  if (state.listener !== null) {
    state.listener('open', state);
  }

  state.tag    = null;
  state.anchor = null;
  state.kind   = null;
  state.result = null;

  allowBlockStyles = allowBlockScalars = allowBlockCollections =
    CONTEXT_BLOCK_OUT === nodeContext ||
    CONTEXT_BLOCK_IN  === nodeContext;

  if (allowToSeek) {
    if (skipSeparationSpace(state, true, -1)) {
      atNewLine = true;

      if (state.lineIndent > parentIndent) {
        indentStatus = 1;
      } else if (state.lineIndent === parentIndent) {
        indentStatus = 0;
      } else if (state.lineIndent < parentIndent) {
        indentStatus = -1;
      }
    }
  }

  if (indentStatus === 1) {
    while (readTagProperty(state) || readAnchorProperty(state)) {
      if (skipSeparationSpace(state, true, -1)) {
        atNewLine = true;
        allowBlockCollections = allowBlockStyles;

        if (state.lineIndent > parentIndent) {
          indentStatus = 1;
        } else if (state.lineIndent === parentIndent) {
          indentStatus = 0;
        } else if (state.lineIndent < parentIndent) {
          indentStatus = -1;
        }
      } else {
        allowBlockCollections = false;
      }
    }
  }

  if (allowBlockCollections) {
    allowBlockCollections = atNewLine || allowCompact;
  }

  if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) {
    if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {
      flowIndent = parentIndent;
    } else {
      flowIndent = parentIndent + 1;
    }

    blockIndent = state.position - state.lineStart;

    if (indentStatus === 1) {
      if (allowBlockCollections &&
          (readBlockSequence(state, blockIndent) ||
           readBlockMapping(state, blockIndent, flowIndent)) ||
          readFlowCollection(state, flowIndent)) {
        hasContent = true;
      } else {
        if ((allowBlockScalars && readBlockScalar(state, flowIndent)) ||
            readSingleQuotedScalar(state, flowIndent) ||
            readDoubleQuotedScalar(state, flowIndent)) {
          hasContent = true;

        } else if (readAlias(state)) {
          hasContent = true;

          if (state.tag !== null || state.anchor !== null) {
            throwError(state, 'alias node should not have any properties');
          }

        } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {
          hasContent = true;

          if (state.tag === null) {
            state.tag = '?';
          }
        }

        if (state.anchor !== null) {
          state.anchorMap[state.anchor] = state.result;
        }
      }
    } else if (indentStatus === 0) {
      // Special case: block sequences are allowed to have same indentation level as the parent.
      // http://www.yaml.org/spec/1.2/spec.html#id2799784
      hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);
    }
  }

  if (state.tag !== null && state.tag !== '!') {
    if (state.tag === '?') {
      // Implicit resolving is not allowed for non-scalar types, and '?'
      // non-specific tag is only automatically assigned to plain scalars.
      //
      // We only need to check kind conformity in case user explicitly assigns '?'
      // tag, for example like this: "!<?> [0]"
      //
      if (state.result !== null && state.kind !== 'scalar') {
        throwError(state, 'unacceptable node kind for !<?> tag; it should be "scalar", not "' + state.kind + '"');
      }

      for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) {
        type = state.implicitTypes[typeIndex];

        if (type.resolve(state.result)) { // `state.result` updated in resolver if matched
          state.result = type.construct(state.result);
          state.tag = type.tag;
          if (state.anchor !== null) {
            state.anchorMap[state.anchor] = state.result;
          }
          break;
        }
      }
    } else if (_hasOwnProperty.call(state.typeMap[state.kind || 'fallback'], state.tag)) {
      type = state.typeMap[state.kind || 'fallback'][state.tag];

      if (state.result !== null && type.kind !== state.kind) {
        throwError(state, 'unacceptable node kind for !<' + state.tag + '> tag; it should be "' + type.kind + '", not "' + state.kind + '"');
      }

      if (!type.resolve(state.result)) { // `state.result` updated in resolver if matched
        throwError(state, 'cannot resolve a node with !<' + state.tag + '> explicit tag');
      } else {
        state.result = type.construct(state.result);
        if (state.anchor !== null) {
          state.anchorMap[state.anchor] = state.result;
        }
      }
    } else {
      throwError(state, 'unknown tag !<' + state.tag + '>');
    }
  }

  if (state.listener !== null) {
    state.listener('close', state);
  }
  return state.tag !== null ||  state.anchor !== null || hasContent;
}

function readDocument(state) {
  var documentStart = state.position,
      _position,
      directiveName,
      directiveArgs,
      hasDirectives = false,
      ch;

  state.version = null;
  state.checkLineBreaks = state.legacy;
  state.tagMap = {};
  state.anchorMap = {};

  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
    skipSeparationSpace(state, true, -1);

    ch = state.input.charCodeAt(state.position);

    if (state.lineIndent > 0 || ch !== 0x25/* % */) {
      break;
    }

    hasDirectives = true;
    ch = state.input.charCodeAt(++state.position);
    _position = state.position;

    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
      ch = state.input.charCodeAt(++state.position);
    }

    directiveName = state.input.slice(_position, state.position);
    directiveArgs = [];

    if (directiveName.length < 1) {
      throwError(state, 'directive name must not be less than one character in length');
    }

    while (ch !== 0) {
      while (is_WHITE_SPACE(ch)) {
        ch = state.input.charCodeAt(++state.position);
      }

      if (ch === 0x23/* # */) {
        do { ch = state.input.charCodeAt(++state.position); }
        while (ch !== 0 && !is_EOL(ch));
        break;
      }

      if (is_EOL(ch)) break;

      _position = state.position;

      while (ch !== 0 && !is_WS_OR_EOL(ch)) {
        ch = state.input.charCodeAt(++state.position);
      }

      directiveArgs.push(state.input.slice(_position, state.position));
    }

    if (ch !== 0) readLineBreak(state);

    if (_hasOwnProperty.call(directiveHandlers, directiveName)) {
      directiveHandlers[directiveName](state, directiveName, directiveArgs);
    } else {
      throwWarning(state, 'unknown document directive "' + directiveName + '"');
    }
  }

  skipSeparationSpace(state, true, -1);

  if (state.lineIndent === 0 &&
      state.input.charCodeAt(state.position)     === 0x2D/* - */ &&
      state.input.charCodeAt(state.position + 1) === 0x2D/* - */ &&
      state.input.charCodeAt(state.position + 2) === 0x2D/* - */) {
    state.position += 3;
    skipSeparationSpace(state, true, -1);

  } else if (hasDirectives) {
    throwError(state, 'directives end mark is expected');
  }

  composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);
  skipSeparationSpace(state, true, -1);

  if (state.checkLineBreaks &&
      PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {
    throwWarning(state, 'non-ASCII line breaks are interpreted as content');
  }

  state.documents.push(state.result);

  if (state.position === state.lineStart && testDocumentSeparator(state)) {

    if (state.input.charCodeAt(state.position) === 0x2E/* . */) {
      state.position += 3;
      skipSeparationSpace(state, true, -1);
    }
    return;
  }

  if (state.position < (state.length - 1)) {
    throwError(state, 'end of the stream or a document separator is expected');
  } else {
    return;
  }
}


function loadDocuments(input, options) {
  input = String(input);
  options = options || {};

  if (input.length !== 0) {

    // Add tailing `\n` if not exists
    if (input.charCodeAt(input.length - 1) !== 0x0A/* LF */ &&
        input.charCodeAt(input.length - 1) !== 0x0D/* CR */) {
      input += '\n';
    }

    // Strip BOM
    if (input.charCodeAt(0) === 0xFEFF) {
      input = input.slice(1);
    }
  }

  var state = new State(input, options);

  var nullpos = input.indexOf('\0');

  if (nullpos !== -1) {
    state.position = nullpos;
    throwError(state, 'null byte is not allowed in input');
  }

  // Use 0 as string terminator. That significantly simplifies bounds check.
  state.input += '\0';

  while (state.input.charCodeAt(state.position) === 0x20/* Space */) {
    state.lineIndent += 1;
    state.position += 1;
  }

  while (state.position < (state.length - 1)) {
    readDocument(state);
  }

  return state.documents;
}


function loadAll(input, iterator, options) {
  if (iterator !== null && typeof iterator === 'object' && typeof options === 'undefined') {
    options = iterator;
    iterator = null;
  }

  var documents = loadDocuments(input, options);

  if (typeof iterator !== 'function') {
    return documents;
  }

  for (var index = 0, length = documents.length; index < length; index += 1) {
    iterator(documents[index]);
  }
}


function load(input, options) {
  var documents = loadDocuments(input, options);

  if (documents.length === 0) {
    /*eslint-disable no-undefined*/
    return undefined;
  } else if (documents.length === 1) {
    return documents[0];
  }
  throw new YAMLException('expected a single document in the stream, but found more');
}


function safeLoadAll(input, iterator, options) {
  if (typeof iterator === 'object' && iterator !== null && typeof options === 'undefined') {
    options = iterator;
    iterator = null;
  }

  return loadAll(input, iterator, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
}


function safeLoad(input, options) {
  return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
}


module.exports.loadAll     = loadAll;
module.exports.load        = load;
module.exports.safeLoadAll = safeLoadAll;
module.exports.safeLoad    = safeLoad;


/***/ }),

/***/ 55426:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";



var common = __webpack_require__(59136);


function Mark(name, buffer, position, line, column) {
  this.name     = name;
  this.buffer   = buffer;
  this.position = position;
  this.line     = line;
  this.column   = column;
}


Mark.prototype.getSnippet = function getSnippet(indent, maxLength) {
  var head, start, tail, end, snippet;

  if (!this.buffer) return null;

  indent = indent || 4;
  maxLength = maxLength || 75;

  head = '';
  start = this.position;

  while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) {
    start -= 1;
    if (this.position - start > (maxLength / 2 - 1)) {
      head = ' ... ';
      start += 5;
      break;
    }
  }

  tail = '';
  end = this.position;

  while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) {
    end += 1;
    if (end - this.position > (maxLength / 2 - 1)) {
      tail = ' ... ';
      end -= 5;
      break;
    }
  }

  snippet = this.buffer.slice(start, end);

  return common.repeat(' ', indent) + head + snippet + tail + '\n' +
         common.repeat(' ', indent + this.position - start + head.length) + '^';
};


Mark.prototype.toString = function toString(compact) {
  var snippet, where = '';

  if (this.name) {
    where += 'in "' + this.name + '" ';
  }

  where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1);

  if (!compact) {
    snippet = this.getSnippet();

    if (snippet) {
      where += ':\n' + snippet;
    }
  }

  return where;
};


module.exports = Mark;


/***/ }),

/***/ 66514:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/*eslint-disable max-len*/

var common        = __webpack_require__(59136);
var YAMLException = __webpack_require__(65199);
var Type          = __webpack_require__(30967);


function compileList(schema, name, result) {
  var exclude = [];

  schema.include.forEach(function (includedSchema) {
    result = compileList(includedSchema, name, result);
  });

  schema[name].forEach(function (currentType) {
    result.forEach(function (previousType, previousIndex) {
      if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) {
        exclude.push(previousIndex);
      }
    });

    result.push(currentType);
  });

  return result.filter(function (type, index) {
    return exclude.indexOf(index) === -1;
  });
}


function compileMap(/* lists... */) {
  var result = {
        scalar: {},
        sequence: {},
        mapping: {},
        fallback: {}
      }, index, length;

  function collectType(type) {
    result[type.kind][type.tag] = result['fallback'][type.tag] = type;
  }

  for (index = 0, length = arguments.length; index < length; index += 1) {
    arguments[index].forEach(collectType);
  }
  return result;
}


function Schema(definition) {
  this.include  = definition.include  || [];
  this.implicit = definition.implicit || [];
  this.explicit = definition.explicit || [];

  this.implicit.forEach(function (type) {
    if (type.loadKind && type.loadKind !== 'scalar') {
      throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.');
    }
  });

  this.compiledImplicit = compileList(this, 'implicit', []);
  this.compiledExplicit = compileList(this, 'explicit', []);
  this.compiledTypeMap  = compileMap(this.compiledImplicit, this.compiledExplicit);
}


Schema.DEFAULT = null;


Schema.create = function createSchema() {
  var schemas, types;

  switch (arguments.length) {
    case 1:
      schemas = Schema.DEFAULT;
      types = arguments[0];
      break;

    case 2:
      schemas = arguments[0];
      types = arguments[1];
      break;

    default:
      throw new YAMLException('Wrong number of arguments for Schema.create function');
  }

  schemas = common.toArray(schemas);
  types = common.toArray(types);

  if (!schemas.every(function (schema) { return schema instanceof Schema; })) {
    throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.');
  }

  if (!types.every(function (type) { return type instanceof Type; })) {
    throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.');
  }

  return new Schema({
    include: schemas,
    explicit: types
  });
};


module.exports = Schema;


/***/ }),

/***/ 92183:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// Standard YAML's Core schema.
// http://www.yaml.org/spec/1.2/spec.html#id2804923
//
// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
// So, Core schema has no distinctions from JSON schema is JS-YAML.





var Schema = __webpack_require__(66514);


module.exports = new Schema({
  include: [
    __webpack_require__(1571)
  ]
});


/***/ }),

/***/ 56874:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// JS-YAML's default schema for `load` function.
// It is not described in the YAML specification.
//
// This schema is based on JS-YAML's default safe schema and includes
// JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function.
//
// Also this schema is used as default base schema at `Schema.create` function.





var Schema = __webpack_require__(66514);


module.exports = Schema.DEFAULT = new Schema({
  include: [
    __webpack_require__(48949)
  ],
  explicit: [
    __webpack_require__(25914),
    __webpack_require__(69242),
    __webpack_require__(27278)
  ]
});


/***/ }),

/***/ 48949:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// JS-YAML's default schema for `safeLoad` function.
// It is not described in the YAML specification.
//
// This schema is based on standard YAML's Core schema and includes most of
// extra types described at YAML tag repository. (http://yaml.org/type/)





var Schema = __webpack_require__(66514);


module.exports = new Schema({
  include: [
    __webpack_require__(92183)
  ],
  implicit: [
    __webpack_require__(83714),
    __webpack_require__(81393)
  ],
  explicit: [
    __webpack_require__(32551),
    __webpack_require__(96668),
    __webpack_require__(76039),
    __webpack_require__(69237)
  ]
});


/***/ }),

/***/ 66037:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// Standard YAML's Failsafe schema.
// http://www.yaml.org/spec/1.2/spec.html#id2802346





var Schema = __webpack_require__(66514);


module.exports = new Schema({
  explicit: [
    __webpack_require__(52672),
    __webpack_require__(5490),
    __webpack_require__(31173)
  ]
});


/***/ }),

/***/ 1571:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// Standard YAML's JSON schema.
// http://www.yaml.org/spec/1.2/spec.html#id2803231
//
// NOTE: JS-YAML does not support schema-specific tag resolution restrictions.
// So, this schema is not such strict as defined in the YAML specification.
// It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc.





var Schema = __webpack_require__(66514);


module.exports = new Schema({
  include: [
    __webpack_require__(66037)
  ],
  implicit: [
    __webpack_require__(22671),
    __webpack_require__(94675),
    __webpack_require__(89963),
    __webpack_require__(15564)
  ]
});


/***/ }),

/***/ 30967:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var YAMLException = __webpack_require__(65199);

var TYPE_CONSTRUCTOR_OPTIONS = [
  'kind',
  'resolve',
  'construct',
  'instanceOf',
  'predicate',
  'represent',
  'defaultStyle',
  'styleAliases'
];

var YAML_NODE_KINDS = [
  'scalar',
  'sequence',
  'mapping'
];

function compileStyleAliases(map) {
  var result = {};

  if (map !== null) {
    Object.keys(map).forEach(function (style) {
      map[style].forEach(function (alias) {
        result[String(alias)] = style;
      });
    });
  }

  return result;
}

function Type(tag, options) {
  options = options || {};

  Object.keys(options).forEach(function (name) {
    if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) {
      throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
    }
  });

  // TODO: Add tag format check.
  this.tag          = tag;
  this.kind         = options['kind']         || null;
  this.resolve      = options['resolve']      || function () { return true; };
  this.construct    = options['construct']    || function (data) { return data; };
  this.instanceOf   = options['instanceOf']   || null;
  this.predicate    = options['predicate']    || null;
  this.represent    = options['represent']    || null;
  this.defaultStyle = options['defaultStyle'] || null;
  this.styleAliases = compileStyleAliases(options['styleAliases'] || null);

  if (YAML_NODE_KINDS.indexOf(this.kind) === -1) {
    throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
  }
}

module.exports = Type;


/***/ }),

/***/ 32551:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/*eslint-disable no-bitwise*/

var NodeBuffer;

try {
  // A trick for browserified version, to not include `Buffer` shim
  var _require = require;
  NodeBuffer = _require('buffer').Buffer;
} catch (__) {}

var Type       = __webpack_require__(30967);


// [ 64, 65, 66 ] -> [ padding, CR, LF ]
var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r';


function resolveYamlBinary(data) {
  if (data === null) return false;

  var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP;

  // Convert one by one.
  for (idx = 0; idx < max; idx++) {
    code = map.indexOf(data.charAt(idx));

    // Skip CR/LF
    if (code > 64) continue;

    // Fail on illegal characters
    if (code < 0) return false;

    bitlen += 6;
  }

  // If there are any bits left, source was corrupted
  return (bitlen % 8) === 0;
}

function constructYamlBinary(data) {
  var idx, tailbits,
      input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan
      max = input.length,
      map = BASE64_MAP,
      bits = 0,
      result = [];

  // Collect by 6*4 bits (3 bytes)

  for (idx = 0; idx < max; idx++) {
    if ((idx % 4 === 0) && idx) {
      result.push((bits >> 16) & 0xFF);
      result.push((bits >> 8) & 0xFF);
      result.push(bits & 0xFF);
    }

    bits = (bits << 6) | map.indexOf(input.charAt(idx));
  }

  // Dump tail

  tailbits = (max % 4) * 6;

  if (tailbits === 0) {
    result.push((bits >> 16) & 0xFF);
    result.push((bits >> 8) & 0xFF);
    result.push(bits & 0xFF);
  } else if (tailbits === 18) {
    result.push((bits >> 10) & 0xFF);
    result.push((bits >> 2) & 0xFF);
  } else if (tailbits === 12) {
    result.push((bits >> 4) & 0xFF);
  }

  // Wrap into Buffer for NodeJS and leave Array for browser
  if (NodeBuffer) {
    // Support node 6.+ Buffer API when available
    return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result);
  }

  return result;
}

function representYamlBinary(object /*, style*/) {
  var result = '', bits = 0, idx, tail,
      max = object.length,
      map = BASE64_MAP;

  // Convert every three bytes to 4 ASCII characters.

  for (idx = 0; idx < max; idx++) {
    if ((idx % 3 === 0) && idx) {
      result += map[(bits >> 18) & 0x3F];
      result += map[(bits >> 12) & 0x3F];
      result += map[(bits >> 6) & 0x3F];
      result += map[bits & 0x3F];
    }

    bits = (bits << 8) + object[idx];
  }

  // Dump tail

  tail = max % 3;

  if (tail === 0) {
    result += map[(bits >> 18) & 0x3F];
    result += map[(bits >> 12) & 0x3F];
    result += map[(bits >> 6) & 0x3F];
    result += map[bits & 0x3F];
  } else if (tail === 2) {
    result += map[(bits >> 10) & 0x3F];
    result += map[(bits >> 4) & 0x3F];
    result += map[(bits << 2) & 0x3F];
    result += map[64];
  } else if (tail === 1) {
    result += map[(bits >> 2) & 0x3F];
    result += map[(bits << 4) & 0x3F];
    result += map[64];
    result += map[64];
  }

  return result;
}

function isBinary(object) {
  return NodeBuffer && NodeBuffer.isBuffer(object);
}

module.exports = new Type('tag:yaml.org,2002:binary', {
  kind: 'scalar',
  resolve: resolveYamlBinary,
  construct: constructYamlBinary,
  predicate: isBinary,
  represent: representYamlBinary
});


/***/ }),

/***/ 94675:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

function resolveYamlBoolean(data) {
  if (data === null) return false;

  var max = data.length;

  return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) ||
         (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE'));
}

function constructYamlBoolean(data) {
  return data === 'true' ||
         data === 'True' ||
         data === 'TRUE';
}

function isBoolean(object) {
  return Object.prototype.toString.call(object) === '[object Boolean]';
}

module.exports = new Type('tag:yaml.org,2002:bool', {
  kind: 'scalar',
  resolve: resolveYamlBoolean,
  construct: constructYamlBoolean,
  predicate: isBoolean,
  represent: {
    lowercase: function (object) { return object ? 'true' : 'false'; },
    uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; },
    camelcase: function (object) { return object ? 'True' : 'False'; }
  },
  defaultStyle: 'lowercase'
});


/***/ }),

/***/ 15564:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var common = __webpack_require__(59136);
var Type   = __webpack_require__(30967);

var YAML_FLOAT_PATTERN = new RegExp(
  // 2.5e4, 2.5 and integers
  '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' +
  // .2e4, .2
  // special case, seems not from spec
  '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' +
  // 20:59
  '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' +
  // .inf
  '|[-+]?\\.(?:inf|Inf|INF)' +
  // .nan
  '|\\.(?:nan|NaN|NAN))$');

function resolveYamlFloat(data) {
  if (data === null) return false;

  if (!YAML_FLOAT_PATTERN.test(data) ||
      // Quick hack to not allow integers end with `_`
      // Probably should update regexp & check speed
      data[data.length - 1] === '_') {
    return false;
  }

  return true;
}

function constructYamlFloat(data) {
  var value, sign, base, digits;

  value  = data.replace(/_/g, '').toLowerCase();
  sign   = value[0] === '-' ? -1 : 1;
  digits = [];

  if ('+-'.indexOf(value[0]) >= 0) {
    value = value.slice(1);
  }

  if (value === '.inf') {
    return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;

  } else if (value === '.nan') {
    return NaN;

  } else if (value.indexOf(':') >= 0) {
    value.split(':').forEach(function (v) {
      digits.unshift(parseFloat(v, 10));
    });

    value = 0.0;
    base = 1;

    digits.forEach(function (d) {
      value += d * base;
      base *= 60;
    });

    return sign * value;

  }
  return sign * parseFloat(value, 10);
}


var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/;

function representYamlFloat(object, style) {
  var res;

  if (isNaN(object)) {
    switch (style) {
      case 'lowercase': return '.nan';
      case 'uppercase': return '.NAN';
      case 'camelcase': return '.NaN';
    }
  } else if (Number.POSITIVE_INFINITY === object) {
    switch (style) {
      case 'lowercase': return '.inf';
      case 'uppercase': return '.INF';
      case 'camelcase': return '.Inf';
    }
  } else if (Number.NEGATIVE_INFINITY === object) {
    switch (style) {
      case 'lowercase': return '-.inf';
      case 'uppercase': return '-.INF';
      case 'camelcase': return '-.Inf';
    }
  } else if (common.isNegativeZero(object)) {
    return '-0.0';
  }

  res = object.toString(10);

  // JS stringifier can build scientific format without dots: 5e-100,
  // while YAML requres dot: 5.e-100. Fix it with simple hack

  return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res;
}

function isFloat(object) {
  return (Object.prototype.toString.call(object) === '[object Number]') &&
         (object % 1 !== 0 || common.isNegativeZero(object));
}

module.exports = new Type('tag:yaml.org,2002:float', {
  kind: 'scalar',
  resolve: resolveYamlFloat,
  construct: constructYamlFloat,
  predicate: isFloat,
  represent: representYamlFloat,
  defaultStyle: 'lowercase'
});


/***/ }),

/***/ 89963:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var common = __webpack_require__(59136);
var Type   = __webpack_require__(30967);

function isHexCode(c) {
  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) ||
         ((0x41/* A */ <= c) && (c <= 0x46/* F */)) ||
         ((0x61/* a */ <= c) && (c <= 0x66/* f */));
}

function isOctCode(c) {
  return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */));
}

function isDecCode(c) {
  return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */));
}

function resolveYamlInteger(data) {
  if (data === null) return false;

  var max = data.length,
      index = 0,
      hasDigits = false,
      ch;

  if (!max) return false;

  ch = data[index];

  // sign
  if (ch === '-' || ch === '+') {
    ch = data[++index];
  }

  if (ch === '0') {
    // 0
    if (index + 1 === max) return true;
    ch = data[++index];

    // base 2, base 8, base 16

    if (ch === 'b') {
      // base 2
      index++;

      for (; index < max; index++) {
        ch = data[index];
        if (ch === '_') continue;
        if (ch !== '0' && ch !== '1') return false;
        hasDigits = true;
      }
      return hasDigits && ch !== '_';
    }


    if (ch === 'x') {
      // base 16
      index++;

      for (; index < max; index++) {
        ch = data[index];
        if (ch === '_') continue;
        if (!isHexCode(data.charCodeAt(index))) return false;
        hasDigits = true;
      }
      return hasDigits && ch !== '_';
    }

    // base 8
    for (; index < max; index++) {
      ch = data[index];
      if (ch === '_') continue;
      if (!isOctCode(data.charCodeAt(index))) return false;
      hasDigits = true;
    }
    return hasDigits && ch !== '_';
  }

  // base 10 (except 0) or base 60

  // value should not start with `_`;
  if (ch === '_') return false;

  for (; index < max; index++) {
    ch = data[index];
    if (ch === '_') continue;
    if (ch === ':') break;
    if (!isDecCode(data.charCodeAt(index))) {
      return false;
    }
    hasDigits = true;
  }

  // Should have digits and should not end with `_`
  if (!hasDigits || ch === '_') return false;

  // if !base60 - done;
  if (ch !== ':') return true;

  // base60 almost not used, no needs to optimize
  return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
}

function constructYamlInteger(data) {
  var value = data, sign = 1, ch, base, digits = [];

  if (value.indexOf('_') !== -1) {
    value = value.replace(/_/g, '');
  }

  ch = value[0];

  if (ch === '-' || ch === '+') {
    if (ch === '-') sign = -1;
    value = value.slice(1);
    ch = value[0];
  }

  if (value === '0') return 0;

  if (ch === '0') {
    if (value[1] === 'b') return sign * parseInt(value.slice(2), 2);
    if (value[1] === 'x') return sign * parseInt(value, 16);
    return sign * parseInt(value, 8);
  }

  if (value.indexOf(':') !== -1) {
    value.split(':').forEach(function (v) {
      digits.unshift(parseInt(v, 10));
    });

    value = 0;
    base = 1;

    digits.forEach(function (d) {
      value += (d * base);
      base *= 60;
    });

    return sign * value;

  }

  return sign * parseInt(value, 10);
}

function isInteger(object) {
  return (Object.prototype.toString.call(object)) === '[object Number]' &&
         (object % 1 === 0 && !common.isNegativeZero(object));
}

module.exports = new Type('tag:yaml.org,2002:int', {
  kind: 'scalar',
  resolve: resolveYamlInteger,
  construct: constructYamlInteger,
  predicate: isInteger,
  represent: {
    binary:      function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); },
    octal:       function (obj) { return obj >= 0 ? '0'  + obj.toString(8) : '-0'  + obj.toString(8).slice(1); },
    decimal:     function (obj) { return obj.toString(10); },
    /* eslint-disable max-len */
    hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() :  '-0x' + obj.toString(16).toUpperCase().slice(1); }
  },
  defaultStyle: 'decimal',
  styleAliases: {
    binary:      [ 2,  'bin' ],
    octal:       [ 8,  'oct' ],
    decimal:     [ 10, 'dec' ],
    hexadecimal: [ 16, 'hex' ]
  }
});


/***/ }),

/***/ 27278:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var esprima;

// Browserified version does not have esprima
//
// 1. For node.js just require module as deps
// 2. For browser try to require mudule via external AMD system.
//    If not found - try to fallback to window.esprima. If not
//    found too - then fail to parse.
//
try {
  // workaround to exclude package from browserify list.
  var _require = require;
  esprima = _require('esprima');
} catch (_) {
  /* eslint-disable no-redeclare */
  /* global window */
  if (typeof window !== 'undefined') esprima = window.esprima;
}

var Type = __webpack_require__(30967);

function resolveJavascriptFunction(data) {
  if (data === null) return false;

  try {
    var source = '(' + data + ')',
        ast    = esprima.parse(source, { range: true });

    if (ast.type                    !== 'Program'             ||
        ast.body.length             !== 1                     ||
        ast.body[0].type            !== 'ExpressionStatement' ||
        (ast.body[0].expression.type !== 'ArrowFunctionExpression' &&
          ast.body[0].expression.type !== 'FunctionExpression')) {
      return false;
    }

    return true;
  } catch (err) {
    return false;
  }
}

function constructJavascriptFunction(data) {
  /*jslint evil:true*/

  var source = '(' + data + ')',
      ast    = esprima.parse(source, { range: true }),
      params = [],
      body;

  if (ast.type                    !== 'Program'             ||
      ast.body.length             !== 1                     ||
      ast.body[0].type            !== 'ExpressionStatement' ||
      (ast.body[0].expression.type !== 'ArrowFunctionExpression' &&
        ast.body[0].expression.type !== 'FunctionExpression')) {
    throw new Error('Failed to resolve function');
  }

  ast.body[0].expression.params.forEach(function (param) {
    params.push(param.name);
  });

  body = ast.body[0].expression.body.range;

  // Esprima's ranges include the first '{' and the last '}' characters on
  // function expressions. So cut them out.
  if (ast.body[0].expression.body.type === 'BlockStatement') {
    /*eslint-disable no-new-func*/
    return new Function(params, source.slice(body[0] + 1, body[1] - 1));
  }
  // ES6 arrow functions can omit the BlockStatement. In that case, just return
  // the body.
  /*eslint-disable no-new-func*/
  return new Function(params, 'return ' + source.slice(body[0], body[1]));
}

function representJavascriptFunction(object /*, style*/) {
  return object.toString();
}

function isFunction(object) {
  return Object.prototype.toString.call(object) === '[object Function]';
}

module.exports = new Type('tag:yaml.org,2002:js/function', {
  kind: 'scalar',
  resolve: resolveJavascriptFunction,
  construct: constructJavascriptFunction,
  predicate: isFunction,
  represent: representJavascriptFunction
});


/***/ }),

/***/ 69242:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

function resolveJavascriptRegExp(data) {
  if (data === null) return false;
  if (data.length === 0) return false;

  var regexp = data,
      tail   = /\/([gim]*)$/.exec(data),
      modifiers = '';

  // if regexp starts with '/' it can have modifiers and must be properly closed
  // `/foo/gim` - modifiers tail can be maximum 3 chars
  if (regexp[0] === '/') {
    if (tail) modifiers = tail[1];

    if (modifiers.length > 3) return false;
    // if expression starts with /, is should be properly terminated
    if (regexp[regexp.length - modifiers.length - 1] !== '/') return false;
  }

  return true;
}

function constructJavascriptRegExp(data) {
  var regexp = data,
      tail   = /\/([gim]*)$/.exec(data),
      modifiers = '';

  // `/foo/gim` - tail can be maximum 4 chars
  if (regexp[0] === '/') {
    if (tail) modifiers = tail[1];
    regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
  }

  return new RegExp(regexp, modifiers);
}

function representJavascriptRegExp(object /*, style*/) {
  var result = '/' + object.source + '/';

  if (object.global) result += 'g';
  if (object.multiline) result += 'm';
  if (object.ignoreCase) result += 'i';

  return result;
}

function isRegExp(object) {
  return Object.prototype.toString.call(object) === '[object RegExp]';
}

module.exports = new Type('tag:yaml.org,2002:js/regexp', {
  kind: 'scalar',
  resolve: resolveJavascriptRegExp,
  construct: constructJavascriptRegExp,
  predicate: isRegExp,
  represent: representJavascriptRegExp
});


/***/ }),

/***/ 25914:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

function resolveJavascriptUndefined() {
  return true;
}

function constructJavascriptUndefined() {
  /*eslint-disable no-undefined*/
  return undefined;
}

function representJavascriptUndefined() {
  return '';
}

function isUndefined(object) {
  return typeof object === 'undefined';
}

module.exports = new Type('tag:yaml.org,2002:js/undefined', {
  kind: 'scalar',
  resolve: resolveJavascriptUndefined,
  construct: constructJavascriptUndefined,
  predicate: isUndefined,
  represent: representJavascriptUndefined
});


/***/ }),

/***/ 31173:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

module.exports = new Type('tag:yaml.org,2002:map', {
  kind: 'mapping',
  construct: function (data) { return data !== null ? data : {}; }
});


/***/ }),

/***/ 81393:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

function resolveYamlMerge(data) {
  return data === '<<' || data === null;
}

module.exports = new Type('tag:yaml.org,2002:merge', {
  kind: 'scalar',
  resolve: resolveYamlMerge
});


/***/ }),

/***/ 22671:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

function resolveYamlNull(data) {
  if (data === null) return true;

  var max = data.length;

  return (max === 1 && data === '~') ||
         (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
}

function constructYamlNull() {
  return null;
}

function isNull(object) {
  return object === null;
}

module.exports = new Type('tag:yaml.org,2002:null', {
  kind: 'scalar',
  resolve: resolveYamlNull,
  construct: constructYamlNull,
  predicate: isNull,
  represent: {
    canonical: function () { return '~';    },
    lowercase: function () { return 'null'; },
    uppercase: function () { return 'NULL'; },
    camelcase: function () { return 'Null'; }
  },
  defaultStyle: 'lowercase'
});


/***/ }),

/***/ 96668:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

var _hasOwnProperty = Object.prototype.hasOwnProperty;
var _toString       = Object.prototype.toString;

function resolveYamlOmap(data) {
  if (data === null) return true;

  var objectKeys = [], index, length, pair, pairKey, pairHasKey,
      object = data;

  for (index = 0, length = object.length; index < length; index += 1) {
    pair = object[index];
    pairHasKey = false;

    if (_toString.call(pair) !== '[object Object]') return false;

    for (pairKey in pair) {
      if (_hasOwnProperty.call(pair, pairKey)) {
        if (!pairHasKey) pairHasKey = true;
        else return false;
      }
    }

    if (!pairHasKey) return false;

    if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);
    else return false;
  }

  return true;
}

function constructYamlOmap(data) {
  return data !== null ? data : [];
}

module.exports = new Type('tag:yaml.org,2002:omap', {
  kind: 'sequence',
  resolve: resolveYamlOmap,
  construct: constructYamlOmap
});


/***/ }),

/***/ 76039:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

var _toString = Object.prototype.toString;

function resolveYamlPairs(data) {
  if (data === null) return true;

  var index, length, pair, keys, result,
      object = data;

  result = new Array(object.length);

  for (index = 0, length = object.length; index < length; index += 1) {
    pair = object[index];

    if (_toString.call(pair) !== '[object Object]') return false;

    keys = Object.keys(pair);

    if (keys.length !== 1) return false;

    result[index] = [ keys[0], pair[keys[0]] ];
  }

  return true;
}

function constructYamlPairs(data) {
  if (data === null) return [];

  var index, length, pair, keys, result,
      object = data;

  result = new Array(object.length);

  for (index = 0, length = object.length; index < length; index += 1) {
    pair = object[index];

    keys = Object.keys(pair);

    result[index] = [ keys[0], pair[keys[0]] ];
  }

  return result;
}

module.exports = new Type('tag:yaml.org,2002:pairs', {
  kind: 'sequence',
  resolve: resolveYamlPairs,
  construct: constructYamlPairs
});


/***/ }),

/***/ 5490:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

module.exports = new Type('tag:yaml.org,2002:seq', {
  kind: 'sequence',
  construct: function (data) { return data !== null ? data : []; }
});


/***/ }),

/***/ 69237:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

var _hasOwnProperty = Object.prototype.hasOwnProperty;

function resolveYamlSet(data) {
  if (data === null) return true;

  var key, object = data;

  for (key in object) {
    if (_hasOwnProperty.call(object, key)) {
      if (object[key] !== null) return false;
    }
  }

  return true;
}

function constructYamlSet(data) {
  return data !== null ? data : {};
}

module.exports = new Type('tag:yaml.org,2002:set', {
  kind: 'mapping',
  resolve: resolveYamlSet,
  construct: constructYamlSet
});


/***/ }),

/***/ 52672:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

module.exports = new Type('tag:yaml.org,2002:str', {
  kind: 'scalar',
  construct: function (data) { return data !== null ? data : ''; }
});


/***/ }),

/***/ 83714:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Type = __webpack_require__(30967);

var YAML_DATE_REGEXP = new RegExp(
  '^([0-9][0-9][0-9][0-9])'          + // [1] year
  '-([0-9][0-9])'                    + // [2] month
  '-([0-9][0-9])$');                   // [3] day

var YAML_TIMESTAMP_REGEXP = new RegExp(
  '^([0-9][0-9][0-9][0-9])'          + // [1] year
  '-([0-9][0-9]?)'                   + // [2] month
  '-([0-9][0-9]?)'                   + // [3] day
  '(?:[Tt]|[ \\t]+)'                 + // ...
  '([0-9][0-9]?)'                    + // [4] hour
  ':([0-9][0-9])'                    + // [5] minute
  ':([0-9][0-9])'                    + // [6] second
  '(?:\\.([0-9]*))?'                 + // [7] fraction
  '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour
  '(?::([0-9][0-9]))?))?$');           // [11] tz_minute

function resolveYamlTimestamp(data) {
  if (data === null) return false;
  if (YAML_DATE_REGEXP.exec(data) !== null) return true;
  if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true;
  return false;
}

function constructYamlTimestamp(data) {
  var match, year, month, day, hour, minute, second, fraction = 0,
      delta = null, tz_hour, tz_minute, date;

  match = YAML_DATE_REGEXP.exec(data);
  if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data);

  if (match === null) throw new Error('Date resolve error');

  // match: [1] year [2] month [3] day

  year = +(match[1]);
  month = +(match[2]) - 1; // JS month starts with 0
  day = +(match[3]);

  if (!match[4]) { // no hour
    return new Date(Date.UTC(year, month, day));
  }

  // match: [4] hour [5] minute [6] second [7] fraction

  hour = +(match[4]);
  minute = +(match[5]);
  second = +(match[6]);

  if (match[7]) {
    fraction = match[7].slice(0, 3);
    while (fraction.length < 3) { // milli-seconds
      fraction += '0';
    }
    fraction = +fraction;
  }

  // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute

  if (match[9]) {
    tz_hour = +(match[10]);
    tz_minute = +(match[11] || 0);
    delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds
    if (match[9] === '-') delta = -delta;
  }

  date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));

  if (delta) date.setTime(date.getTime() - delta);

  return date;
}

function representYamlTimestamp(object /*, style*/) {
  return object.toISOString();
}

module.exports = new Type('tag:yaml.org,2002:timestamp', {
  kind: 'scalar',
  resolve: resolveYamlTimestamp,
  construct: constructYamlTimestamp,
  instanceOf: Date,
  represent: representYamlTimestamp
});


/***/ }),

/***/ 85587:
/***/ (function(module, exports) {

(function(){

    // Copyright (c) 2005  Tom Wu
    // All Rights Reserved.
    // See "LICENSE" for details.

    // Basic JavaScript BN library - subset useful for RSA encryption.

    // Bits per digit
    var dbits;

    // JavaScript engine analysis
    var canary = 0xdeadbeefcafe;
    var j_lm = ((canary&0xffffff)==0xefcafe);

    // (public) Constructor
    function BigInteger(a,b,c) {
      if(a != null)
        if("number" == typeof a) this.fromNumber(a,b,c);
        else if(b == null && "string" != typeof a) this.fromString(a,256);
        else this.fromString(a,b);
    }

    // return new, unset BigInteger
    function nbi() { return new BigInteger(null); }

    // am: Compute w_j += (x*this_i), propagate carries,
    // c is initial carry, returns final carry.
    // c < 3*dvalue, x < 2*dvalue, this_i < dvalue
    // We need to select the fastest one that works in this environment.

    // am1: use a single mult and divide to get the high bits,
    // max digit bits should be 26 because
    // max internal value = 2*dvalue^2-2*dvalue (< 2^53)
    function am1(i,x,w,j,c,n) {
      while(--n >= 0) {
        var v = x*this[i++]+w[j]+c;
        c = Math.floor(v/0x4000000);
        w[j++] = v&0x3ffffff;
      }
      return c;
    }
    // am2 avoids a big mult-and-extract completely.
    // Max digit bits should be <= 30 because we do bitwise ops
    // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)
    function am2(i,x,w,j,c,n) {
      var xl = x&0x7fff, xh = x>>15;
      while(--n >= 0) {
        var l = this[i]&0x7fff;
        var h = this[i++]>>15;
        var m = xh*l+h*xl;
        l = xl*l+((m&0x7fff)<<15)+w[j]+(c&0x3fffffff);
        c = (l>>>30)+(m>>>15)+xh*h+(c>>>30);
        w[j++] = l&0x3fffffff;
      }
      return c;
    }
    // Alternately, set max digit bits to 28 since some
    // browsers slow down when dealing with 32-bit numbers.
    function am3(i,x,w,j,c,n) {
      var xl = x&0x3fff, xh = x>>14;
      while(--n >= 0) {
        var l = this[i]&0x3fff;
        var h = this[i++]>>14;
        var m = xh*l+h*xl;
        l = xl*l+((m&0x3fff)<<14)+w[j]+c;
        c = (l>>28)+(m>>14)+xh*h;
        w[j++] = l&0xfffffff;
      }
      return c;
    }
    var inBrowser = typeof navigator !== "undefined";
    if(inBrowser && j_lm && (navigator.appName == "Microsoft Internet Explorer")) {
      BigInteger.prototype.am = am2;
      dbits = 30;
    }
    else if(inBrowser && j_lm && (navigator.appName != "Netscape")) {
      BigInteger.prototype.am = am1;
      dbits = 26;
    }
    else { // Mozilla/Netscape seems to prefer am3
      BigInteger.prototype.am = am3;
      dbits = 28;
    }

    BigInteger.prototype.DB = dbits;
    BigInteger.prototype.DM = ((1<<dbits)-1);
    BigInteger.prototype.DV = (1<<dbits);

    var BI_FP = 52;
    BigInteger.prototype.FV = Math.pow(2,BI_FP);
    BigInteger.prototype.F1 = BI_FP-dbits;
    BigInteger.prototype.F2 = 2*dbits-BI_FP;

    // Digit conversions
    var BI_RM = "0123456789abcdefghijklmnopqrstuvwxyz";
    var BI_RC = new Array();
    var rr,vv;
    rr = "0".charCodeAt(0);
    for(vv = 0; vv <= 9; ++vv) BI_RC[rr++] = vv;
    rr = "a".charCodeAt(0);
    for(vv = 10; vv < 36; ++vv) BI_RC[rr++] = vv;
    rr = "A".charCodeAt(0);
    for(vv = 10; vv < 36; ++vv) BI_RC[rr++] = vv;

    function int2char(n) { return BI_RM.charAt(n); }
    function intAt(s,i) {
      var c = BI_RC[s.charCodeAt(i)];
      return (c==null)?-1:c;
    }

    // (protected) copy this to r
    function bnpCopyTo(r) {
      for(var i = this.t-1; i >= 0; --i) r[i] = this[i];
      r.t = this.t;
      r.s = this.s;
    }

    // (protected) set from integer value x, -DV <= x < DV
    function bnpFromInt(x) {
      this.t = 1;
      this.s = (x<0)?-1:0;
      if(x > 0) this[0] = x;
      else if(x < -1) this[0] = x+this.DV;
      else this.t = 0;
    }

    // return bigint initialized to value
    function nbv(i) { var r = nbi(); r.fromInt(i); return r; }

    // (protected) set from string and radix
    function bnpFromString(s,b) {
      var k;
      if(b == 16) k = 4;
      else if(b == 8) k = 3;
      else if(b == 256) k = 8; // byte array
      else if(b == 2) k = 1;
      else if(b == 32) k = 5;
      else if(b == 4) k = 2;
      else { this.fromRadix(s,b); return; }
      this.t = 0;
      this.s = 0;
      var i = s.length, mi = false, sh = 0;
      while(--i >= 0) {
        var x = (k==8)?s[i]&0xff:intAt(s,i);
        if(x < 0) {
          if(s.charAt(i) == "-") mi = true;
          continue;
        }
        mi = false;
        if(sh == 0)
          this[this.t++] = x;
        else if(sh+k > this.DB) {
          this[this.t-1] |= (x&((1<<(this.DB-sh))-1))<<sh;
          this[this.t++] = (x>>(this.DB-sh));
        }
        else
          this[this.t-1] |= x<<sh;
        sh += k;
        if(sh >= this.DB) sh -= this.DB;
      }
      if(k == 8 && (s[0]&0x80) != 0) {
        this.s = -1;
        if(sh > 0) this[this.t-1] |= ((1<<(this.DB-sh))-1)<<sh;
      }
      this.clamp();
      if(mi) BigInteger.ZERO.subTo(this,this);
    }

    // (protected) clamp off excess high words
    function bnpClamp() {
      var c = this.s&this.DM;
      while(this.t > 0 && this[this.t-1] == c) --this.t;
    }

    // (public) return string representation in given radix
    function bnToString(b) {
      if(this.s < 0) return "-"+this.negate().toString(b);
      var k;
      if(b == 16) k = 4;
      else if(b == 8) k = 3;
      else if(b == 2) k = 1;
      else if(b == 32) k = 5;
      else if(b == 4) k = 2;
      else return this.toRadix(b);
      var km = (1<<k)-1, d, m = false, r = "", i = this.t;
      var p = this.DB-(i*this.DB)%k;
      if(i-- > 0) {
        if(p < this.DB && (d = this[i]>>p) > 0) { m = true; r = int2char(d); }
        while(i >= 0) {
          if(p < k) {
            d = (this[i]&((1<<p)-1))<<(k-p);
            d |= this[--i]>>(p+=this.DB-k);
          }
          else {
            d = (this[i]>>(p-=k))&km;
            if(p <= 0) { p += this.DB; --i; }
          }
          if(d > 0) m = true;
          if(m) r += int2char(d);
        }
      }
      return m?r:"0";
    }

    // (public) -this
    function bnNegate() { var r = nbi(); BigInteger.ZERO.subTo(this,r); return r; }

    // (public) |this|
    function bnAbs() { return (this.s<0)?this.negate():this; }

    // (public) return + if this > a, - if this < a, 0 if equal
    function bnCompareTo(a) {
      var r = this.s-a.s;
      if(r != 0) return r;
      var i = this.t;
      r = i-a.t;
      if(r != 0) return (this.s<0)?-r:r;
      while(--i >= 0) if((r=this[i]-a[i]) != 0) return r;
      return 0;
    }

    // returns bit length of the integer x
    function nbits(x) {
      var r = 1, t;
      if((t=x>>>16) != 0) { x = t; r += 16; }
      if((t=x>>8) != 0) { x = t; r += 8; }
      if((t=x>>4) != 0) { x = t; r += 4; }
      if((t=x>>2) != 0) { x = t; r += 2; }
      if((t=x>>1) != 0) { x = t; r += 1; }
      return r;
    }

    // (public) return the number of bits in "this"
    function bnBitLength() {
      if(this.t <= 0) return 0;
      return this.DB*(this.t-1)+nbits(this[this.t-1]^(this.s&this.DM));
    }

    // (protected) r = this << n*DB
    function bnpDLShiftTo(n,r) {
      var i;
      for(i = this.t-1; i >= 0; --i) r[i+n] = this[i];
      for(i = n-1; i >= 0; --i) r[i] = 0;
      r.t = this.t+n;
      r.s = this.s;
    }

    // (protected) r = this >> n*DB
    function bnpDRShiftTo(n,r) {
      for(var i = n; i < this.t; ++i) r[i-n] = this[i];
      r.t = Math.max(this.t-n,0);
      r.s = this.s;
    }

    // (protected) r = this << n
    function bnpLShiftTo(n,r) {
      var bs = n%this.DB;
      var cbs = this.DB-bs;
      var bm = (1<<cbs)-1;
      var ds = Math.floor(n/this.DB), c = (this.s<<bs)&this.DM, i;
      for(i = this.t-1; i >= 0; --i) {
        r[i+ds+1] = (this[i]>>cbs)|c;
        c = (this[i]&bm)<<bs;
      }
      for(i = ds-1; i >= 0; --i) r[i] = 0;
      r[ds] = c;
      r.t = this.t+ds+1;
      r.s = this.s;
      r.clamp();
    }

    // (protected) r = this >> n
    function bnpRShiftTo(n,r) {
      r.s = this.s;
      var ds = Math.floor(n/this.DB);
      if(ds >= this.t) { r.t = 0; return; }
      var bs = n%this.DB;
      var cbs = this.DB-bs;
      var bm = (1<<bs)-1;
      r[0] = this[ds]>>bs;
      for(var i = ds+1; i < this.t; ++i) {
        r[i-ds-1] |= (this[i]&bm)<<cbs;
        r[i-ds] = this[i]>>bs;
      }
      if(bs > 0) r[this.t-ds-1] |= (this.s&bm)<<cbs;
      r.t = this.t-ds;
      r.clamp();
    }

    // (protected) r = this - a
    function bnpSubTo(a,r) {
      var i = 0, c = 0, m = Math.min(a.t,this.t);
      while(i < m) {
        c += this[i]-a[i];
        r[i++] = c&this.DM;
        c >>= this.DB;
      }
      if(a.t < this.t) {
        c -= a.s;
        while(i < this.t) {
          c += this[i];
          r[i++] = c&this.DM;
          c >>= this.DB;
        }
        c += this.s;
      }
      else {
        c += this.s;
        while(i < a.t) {
          c -= a[i];
          r[i++] = c&this.DM;
          c >>= this.DB;
        }
        c -= a.s;
      }
      r.s = (c<0)?-1:0;
      if(c < -1) r[i++] = this.DV+c;
      else if(c > 0) r[i++] = c;
      r.t = i;
      r.clamp();
    }

    // (protected) r = this * a, r != this,a (HAC 14.12)
    // "this" should be the larger one if appropriate.
    function bnpMultiplyTo(a,r) {
      var x = this.abs(), y = a.abs();
      var i = x.t;
      r.t = i+y.t;
      while(--i >= 0) r[i] = 0;
      for(i = 0; i < y.t; ++i) r[i+x.t] = x.am(0,y[i],r,i,0,x.t);
      r.s = 0;
      r.clamp();
      if(this.s != a.s) BigInteger.ZERO.subTo(r,r);
    }

    // (protected) r = this^2, r != this (HAC 14.16)
    function bnpSquareTo(r) {
      var x = this.abs();
      var i = r.t = 2*x.t;
      while(--i >= 0) r[i] = 0;
      for(i = 0; i < x.t-1; ++i) {
        var c = x.am(i,x[i],r,2*i,0,1);
        if((r[i+x.t]+=x.am(i+1,2*x[i],r,2*i+1,c,x.t-i-1)) >= x.DV) {
          r[i+x.t] -= x.DV;
          r[i+x.t+1] = 1;
        }
      }
      if(r.t > 0) r[r.t-1] += x.am(i,x[i],r,2*i,0,1);
      r.s = 0;
      r.clamp();
    }

    // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)
    // r != q, this != m.  q or r may be null.
    function bnpDivRemTo(m,q,r) {
      var pm = m.abs();
      if(pm.t <= 0) return;
      var pt = this.abs();
      if(pt.t < pm.t) {
        if(q != null) q.fromInt(0);
        if(r != null) this.copyTo(r);
        return;
      }
      if(r == null) r = nbi();
      var y = nbi(), ts = this.s, ms = m.s;
      var nsh = this.DB-nbits(pm[pm.t-1]);   // normalize modulus
      if(nsh > 0) { pm.lShiftTo(nsh,y); pt.lShiftTo(nsh,r); }
      else { pm.copyTo(y); pt.copyTo(r); }
      var ys = y.t;
      var y0 = y[ys-1];
      if(y0 == 0) return;
      var yt = y0*(1<<this.F1)+((ys>1)?y[ys-2]>>this.F2:0);
      var d1 = this.FV/yt, d2 = (1<<this.F1)/yt, e = 1<<this.F2;
      var i = r.t, j = i-ys, t = (q==null)?nbi():q;
      y.dlShiftTo(j,t);
      if(r.compareTo(t) >= 0) {
        r[r.t++] = 1;
        r.subTo(t,r);
      }
      BigInteger.ONE.dlShiftTo(ys,t);
      t.subTo(y,y);  // "negative" y so we can replace sub with am later
      while(y.t < ys) y[y.t++] = 0;
      while(--j >= 0) {
        // Estimate quotient digit
        var qd = (r[--i]==y0)?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2);
        if((r[i]+=y.am(0,qd,r,j,0,ys)) < qd) {   // Try it out
          y.dlShiftTo(j,t);
          r.subTo(t,r);
          while(r[i] < --qd) r.subTo(t,r);
        }
      }
      if(q != null) {
        r.drShiftTo(ys,q);
        if(ts != ms) BigInteger.ZERO.subTo(q,q);
      }
      r.t = ys;
      r.clamp();
      if(nsh > 0) r.rShiftTo(nsh,r); // Denormalize remainder
      if(ts < 0) BigInteger.ZERO.subTo(r,r);
    }

    // (public) this mod a
    function bnMod(a) {
      var r = nbi();
      this.abs().divRemTo(a,null,r);
      if(this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) a.subTo(r,r);
      return r;
    }

    // Modular reduction using "classic" algorithm
    function Classic(m) { this.m = m; }
    function cConvert(x) {
      if(x.s < 0 || x.compareTo(this.m) >= 0) return x.mod(this.m);
      else return x;
    }
    function cRevert(x) { return x; }
    function cReduce(x) { x.divRemTo(this.m,null,x); }
    function cMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); }
    function cSqrTo(x,r) { x.squareTo(r); this.reduce(r); }

    Classic.prototype.convert = cConvert;
    Classic.prototype.revert = cRevert;
    Classic.prototype.reduce = cReduce;
    Classic.prototype.mulTo = cMulTo;
    Classic.prototype.sqrTo = cSqrTo;

    // (protected) return "-1/this % 2^DB"; useful for Mont. reduction
    // justification:
    //         xy == 1 (mod m)
    //         xy =  1+km
    //   xy(2-xy) = (1+km)(1-km)
    // x[y(2-xy)] = 1-k^2m^2
    // x[y(2-xy)] == 1 (mod m^2)
    // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2
    // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.
    // JS multiply "overflows" differently from C/C++, so care is needed here.
    function bnpInvDigit() {
      if(this.t < 1) return 0;
      var x = this[0];
      if((x&1) == 0) return 0;
      var y = x&3;       // y == 1/x mod 2^2
      y = (y*(2-(x&0xf)*y))&0xf; // y == 1/x mod 2^4
      y = (y*(2-(x&0xff)*y))&0xff;   // y == 1/x mod 2^8
      y = (y*(2-(((x&0xffff)*y)&0xffff)))&0xffff;    // y == 1/x mod 2^16
      // last step - calculate inverse mod DV directly;
      // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints
      y = (y*(2-x*y%this.DV))%this.DV;       // y == 1/x mod 2^dbits
      // we really want the negative inverse, and -DV < y < DV
      return (y>0)?this.DV-y:-y;
    }

    // Montgomery reduction
    function Montgomery(m) {
      this.m = m;
      this.mp = m.invDigit();
      this.mpl = this.mp&0x7fff;
      this.mph = this.mp>>15;
      this.um = (1<<(m.DB-15))-1;
      this.mt2 = 2*m.t;
    }

    // xR mod m
    function montConvert(x) {
      var r = nbi();
      x.abs().dlShiftTo(this.m.t,r);
      r.divRemTo(this.m,null,r);
      if(x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) this.m.subTo(r,r);
      return r;
    }

    // x/R mod m
    function montRevert(x) {
      var r = nbi();
      x.copyTo(r);
      this.reduce(r);
      return r;
    }

    // x = x/R mod m (HAC 14.32)
    function montReduce(x) {
      while(x.t <= this.mt2) // pad x so am has enough room later
        x[x.t++] = 0;
      for(var i = 0; i < this.m.t; ++i) {
        // faster way of calculating u0 = x[i]*mp mod DV
        var j = x[i]&0x7fff;
        var u0 = (j*this.mpl+(((j*this.mph+(x[i]>>15)*this.mpl)&this.um)<<15))&x.DM;
        // use am to combine the multiply-shift-add into one call
        j = i+this.m.t;
        x[j] += this.m.am(0,u0,x,i,0,this.m.t);
        // propagate carry
        while(x[j] >= x.DV) { x[j] -= x.DV; x[++j]++; }
      }
      x.clamp();
      x.drShiftTo(this.m.t,x);
      if(x.compareTo(this.m) >= 0) x.subTo(this.m,x);
    }

    // r = "x^2/R mod m"; x != r
    function montSqrTo(x,r) { x.squareTo(r); this.reduce(r); }

    // r = "xy/R mod m"; x,y != r
    function montMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); }

    Montgomery.prototype.convert = montConvert;
    Montgomery.prototype.revert = montRevert;
    Montgomery.prototype.reduce = montReduce;
    Montgomery.prototype.mulTo = montMulTo;
    Montgomery.prototype.sqrTo = montSqrTo;

    // (protected) true iff this is even
    function bnpIsEven() { return ((this.t>0)?(this[0]&1):this.s) == 0; }

    // (protected) this^e, e < 2^32, doing sqr and mul with "r" (HAC 14.79)
    function bnpExp(e,z) {
      if(e > 0xffffffff || e < 1) return BigInteger.ONE;
      var r = nbi(), r2 = nbi(), g = z.convert(this), i = nbits(e)-1;
      g.copyTo(r);
      while(--i >= 0) {
        z.sqrTo(r,r2);
        if((e&(1<<i)) > 0) z.mulTo(r2,g,r);
        else { var t = r; r = r2; r2 = t; }
      }
      return z.revert(r);
    }

    // (public) this^e % m, 0 <= e < 2^32
    function bnModPowInt(e,m) {
      var z;
      if(e < 256 || m.isEven()) z = new Classic(m); else z = new Montgomery(m);
      return this.exp(e,z);
    }

    // protected
    BigInteger.prototype.copyTo = bnpCopyTo;
    BigInteger.prototype.fromInt = bnpFromInt;
    BigInteger.prototype.fromString = bnpFromString;
    BigInteger.prototype.clamp = bnpClamp;
    BigInteger.prototype.dlShiftTo = bnpDLShiftTo;
    BigInteger.prototype.drShiftTo = bnpDRShiftTo;
    BigInteger.prototype.lShiftTo = bnpLShiftTo;
    BigInteger.prototype.rShiftTo = bnpRShiftTo;
    BigInteger.prototype.subTo = bnpSubTo;
    BigInteger.prototype.multiplyTo = bnpMultiplyTo;
    BigInteger.prototype.squareTo = bnpSquareTo;
    BigInteger.prototype.divRemTo = bnpDivRemTo;
    BigInteger.prototype.invDigit = bnpInvDigit;
    BigInteger.prototype.isEven = bnpIsEven;
    BigInteger.prototype.exp = bnpExp;

    // public
    BigInteger.prototype.toString = bnToString;
    BigInteger.prototype.negate = bnNegate;
    BigInteger.prototype.abs = bnAbs;
    BigInteger.prototype.compareTo = bnCompareTo;
    BigInteger.prototype.bitLength = bnBitLength;
    BigInteger.prototype.mod = bnMod;
    BigInteger.prototype.modPowInt = bnModPowInt;

    // "constants"
    BigInteger.ZERO = nbv(0);
    BigInteger.ONE = nbv(1);

    // Copyright (c) 2005-2009  Tom Wu
    // All Rights Reserved.
    // See "LICENSE" for details.

    // Extended JavaScript BN functions, required for RSA private ops.

    // Version 1.1: new BigInteger("0", 10) returns "proper" zero
    // Version 1.2: square() API, isProbablePrime fix

    // (public)
    function bnClone() { var r = nbi(); this.copyTo(r); return r; }

    // (public) return value as integer
    function bnIntValue() {
      if(this.s < 0) {
        if(this.t == 1) return this[0]-this.DV;
        else if(this.t == 0) return -1;
      }
      else if(this.t == 1) return this[0];
      else if(this.t == 0) return 0;
      // assumes 16 < DB < 32
      return ((this[1]&((1<<(32-this.DB))-1))<<this.DB)|this[0];
    }

    // (public) return value as byte
    function bnByteValue() { return (this.t==0)?this.s:(this[0]<<24)>>24; }

    // (public) return value as short (assumes DB>=16)
    function bnShortValue() { return (this.t==0)?this.s:(this[0]<<16)>>16; }

    // (protected) return x s.t. r^x < DV
    function bnpChunkSize(r) { return Math.floor(Math.LN2*this.DB/Math.log(r)); }

    // (public) 0 if this == 0, 1 if this > 0
    function bnSigNum() {
      if(this.s < 0) return -1;
      else if(this.t <= 0 || (this.t == 1 && this[0] <= 0)) return 0;
      else return 1;
    }

    // (protected) convert to radix string
    function bnpToRadix(b) {
      if(b == null) b = 10;
      if(this.signum() == 0 || b < 2 || b > 36) return "0";
      var cs = this.chunkSize(b);
      var a = Math.pow(b,cs);
      var d = nbv(a), y = nbi(), z = nbi(), r = "";
      this.divRemTo(d,y,z);
      while(y.signum() > 0) {
        r = (a+z.intValue()).toString(b).substr(1) + r;
        y.divRemTo(d,y,z);
      }
      return z.intValue().toString(b) + r;
    }

    // (protected) convert from radix string
    function bnpFromRadix(s,b) {
      this.fromInt(0);
      if(b == null) b = 10;
      var cs = this.chunkSize(b);
      var d = Math.pow(b,cs), mi = false, j = 0, w = 0;
      for(var i = 0; i < s.length; ++i) {
        var x = intAt(s,i);
        if(x < 0) {
          if(s.charAt(i) == "-" && this.signum() == 0) mi = true;
          continue;
        }
        w = b*w+x;
        if(++j >= cs) {
          this.dMultiply(d);
          this.dAddOffset(w,0);
          j = 0;
          w = 0;
        }
      }
      if(j > 0) {
        this.dMultiply(Math.pow(b,j));
        this.dAddOffset(w,0);
      }
      if(mi) BigInteger.ZERO.subTo(this,this);
    }

    // (protected) alternate constructor
    function bnpFromNumber(a,b,c) {
      if("number" == typeof b) {
        // new BigInteger(int,int,RNG)
        if(a < 2) this.fromInt(1);
        else {
          this.fromNumber(a,c);
          if(!this.testBit(a-1))	// force MSB set
            this.bitwiseTo(BigInteger.ONE.shiftLeft(a-1),op_or,this);
          if(this.isEven()) this.dAddOffset(1,0); // force odd
          while(!this.isProbablePrime(b)) {
            this.dAddOffset(2,0);
            if(this.bitLength() > a) this.subTo(BigInteger.ONE.shiftLeft(a-1),this);
          }
        }
      }
      else {
        // new BigInteger(int,RNG)
        var x = new Array(), t = a&7;
        x.length = (a>>3)+1;
        b.nextBytes(x);
        if(t > 0) x[0] &= ((1<<t)-1); else x[0] = 0;
        this.fromString(x,256);
      }
    }

    // (public) convert to bigendian byte array
    function bnToByteArray() {
      var i = this.t, r = new Array();
      r[0] = this.s;
      var p = this.DB-(i*this.DB)%8, d, k = 0;
      if(i-- > 0) {
        if(p < this.DB && (d = this[i]>>p) != (this.s&this.DM)>>p)
          r[k++] = d|(this.s<<(this.DB-p));
        while(i >= 0) {
          if(p < 8) {
            d = (this[i]&((1<<p)-1))<<(8-p);
            d |= this[--i]>>(p+=this.DB-8);
          }
          else {
            d = (this[i]>>(p-=8))&0xff;
            if(p <= 0) { p += this.DB; --i; }
          }
          if((d&0x80) != 0) d |= -256;
          if(k == 0 && (this.s&0x80) != (d&0x80)) ++k;
          if(k > 0 || d != this.s) r[k++] = d;
        }
      }
      return r;
    }

    function bnEquals(a) { return(this.compareTo(a)==0); }
    function bnMin(a) { return(this.compareTo(a)<0)?this:a; }
    function bnMax(a) { return(this.compareTo(a)>0)?this:a; }

    // (protected) r = this op a (bitwise)
    function bnpBitwiseTo(a,op,r) {
      var i, f, m = Math.min(a.t,this.t);
      for(i = 0; i < m; ++i) r[i] = op(this[i],a[i]);
      if(a.t < this.t) {
        f = a.s&this.DM;
        for(i = m; i < this.t; ++i) r[i] = op(this[i],f);
        r.t = this.t;
      }
      else {
        f = this.s&this.DM;
        for(i = m; i < a.t; ++i) r[i] = op(f,a[i]);
        r.t = a.t;
      }
      r.s = op(this.s,a.s);
      r.clamp();
    }

    // (public) this & a
    function op_and(x,y) { return x&y; }
    function bnAnd(a) { var r = nbi(); this.bitwiseTo(a,op_and,r); return r; }

    // (public) this | a
    function op_or(x,y) { return x|y; }
    function bnOr(a) { var r = nbi(); this.bitwiseTo(a,op_or,r); return r; }

    // (public) this ^ a
    function op_xor(x,y) { return x^y; }
    function bnXor(a) { var r = nbi(); this.bitwiseTo(a,op_xor,r); return r; }

    // (public) this & ~a
    function op_andnot(x,y) { return x&~y; }
    function bnAndNot(a) { var r = nbi(); this.bitwiseTo(a,op_andnot,r); return r; }

    // (public) ~this
    function bnNot() {
      var r = nbi();
      for(var i = 0; i < this.t; ++i) r[i] = this.DM&~this[i];
      r.t = this.t;
      r.s = ~this.s;
      return r;
    }

    // (public) this << n
    function bnShiftLeft(n) {
      var r = nbi();
      if(n < 0) this.rShiftTo(-n,r); else this.lShiftTo(n,r);
      return r;
    }

    // (public) this >> n
    function bnShiftRight(n) {
      var r = nbi();
      if(n < 0) this.lShiftTo(-n,r); else this.rShiftTo(n,r);
      return r;
    }

    // return index of lowest 1-bit in x, x < 2^31
    function lbit(x) {
      if(x == 0) return -1;
      var r = 0;
      if((x&0xffff) == 0) { x >>= 16; r += 16; }
      if((x&0xff) == 0) { x >>= 8; r += 8; }
      if((x&0xf) == 0) { x >>= 4; r += 4; }
      if((x&3) == 0) { x >>= 2; r += 2; }
      if((x&1) == 0) ++r;
      return r;
    }

    // (public) returns index of lowest 1-bit (or -1 if none)
    function bnGetLowestSetBit() {
      for(var i = 0; i < this.t; ++i)
        if(this[i] != 0) return i*this.DB+lbit(this[i]);
      if(this.s < 0) return this.t*this.DB;
      return -1;
    }

    // return number of 1 bits in x
    function cbit(x) {
      var r = 0;
      while(x != 0) { x &= x-1; ++r; }
      return r;
    }

    // (public) return number of set bits
    function bnBitCount() {
      var r = 0, x = this.s&this.DM;
      for(var i = 0; i < this.t; ++i) r += cbit(this[i]^x);
      return r;
    }

    // (public) true iff nth bit is set
    function bnTestBit(n) {
      var j = Math.floor(n/this.DB);
      if(j >= this.t) return(this.s!=0);
      return((this[j]&(1<<(n%this.DB)))!=0);
    }

    // (protected) this op (1<<n)
    function bnpChangeBit(n,op) {
      var r = BigInteger.ONE.shiftLeft(n);
      this.bitwiseTo(r,op,r);
      return r;
    }

    // (public) this | (1<<n)
    function bnSetBit(n) { return this.changeBit(n,op_or); }

    // (public) this & ~(1<<n)
    function bnClearBit(n) { return this.changeBit(n,op_andnot); }

    // (public) this ^ (1<<n)
    function bnFlipBit(n) { return this.changeBit(n,op_xor); }

    // (protected) r = this + a
    function bnpAddTo(a,r) {
      var i = 0, c = 0, m = Math.min(a.t,this.t);
      while(i < m) {
        c += this[i]+a[i];
        r[i++] = c&this.DM;
        c >>= this.DB;
      }
      if(a.t < this.t) {
        c += a.s;
        while(i < this.t) {
          c += this[i];
          r[i++] = c&this.DM;
          c >>= this.DB;
        }
        c += this.s;
      }
      else {
        c += this.s;
        while(i < a.t) {
          c += a[i];
          r[i++] = c&this.DM;
          c >>= this.DB;
        }
        c += a.s;
      }
      r.s = (c<0)?-1:0;
      if(c > 0) r[i++] = c;
      else if(c < -1) r[i++] = this.DV+c;
      r.t = i;
      r.clamp();
    }

    // (public) this + a
    function bnAdd(a) { var r = nbi(); this.addTo(a,r); return r; }

    // (public) this - a
    function bnSubtract(a) { var r = nbi(); this.subTo(a,r); return r; }

    // (public) this * a
    function bnMultiply(a) { var r = nbi(); this.multiplyTo(a,r); return r; }

    // (public) this^2
    function bnSquare() { var r = nbi(); this.squareTo(r); return r; }

    // (public) this / a
    function bnDivide(a) { var r = nbi(); this.divRemTo(a,r,null); return r; }

    // (public) this % a
    function bnRemainder(a) { var r = nbi(); this.divRemTo(a,null,r); return r; }

    // (public) [this/a,this%a]
    function bnDivideAndRemainder(a) {
      var q = nbi(), r = nbi();
      this.divRemTo(a,q,r);
      return new Array(q,r);
    }

    // (protected) this *= n, this >= 0, 1 < n < DV
    function bnpDMultiply(n) {
      this[this.t] = this.am(0,n-1,this,0,0,this.t);
      ++this.t;
      this.clamp();
    }

    // (protected) this += n << w words, this >= 0
    function bnpDAddOffset(n,w) {
      if(n == 0) return;
      while(this.t <= w) this[this.t++] = 0;
      this[w] += n;
      while(this[w] >= this.DV) {
        this[w] -= this.DV;
        if(++w >= this.t) this[this.t++] = 0;
        ++this[w];
      }
    }

    // A "null" reducer
    function NullExp() {}
    function nNop(x) { return x; }
    function nMulTo(x,y,r) { x.multiplyTo(y,r); }
    function nSqrTo(x,r) { x.squareTo(r); }

    NullExp.prototype.convert = nNop;
    NullExp.prototype.revert = nNop;
    NullExp.prototype.mulTo = nMulTo;
    NullExp.prototype.sqrTo = nSqrTo;

    // (public) this^e
    function bnPow(e) { return this.exp(e,new NullExp()); }

    // (protected) r = lower n words of "this * a", a.t <= n
    // "this" should be the larger one if appropriate.
    function bnpMultiplyLowerTo(a,n,r) {
      var i = Math.min(this.t+a.t,n);
      r.s = 0; // assumes a,this >= 0
      r.t = i;
      while(i > 0) r[--i] = 0;
      var j;
      for(j = r.t-this.t; i < j; ++i) r[i+this.t] = this.am(0,a[i],r,i,0,this.t);
      for(j = Math.min(a.t,n); i < j; ++i) this.am(0,a[i],r,i,0,n-i);
      r.clamp();
    }

    // (protected) r = "this * a" without lower n words, n > 0
    // "this" should be the larger one if appropriate.
    function bnpMultiplyUpperTo(a,n,r) {
      --n;
      var i = r.t = this.t+a.t-n;
      r.s = 0; // assumes a,this >= 0
      while(--i >= 0) r[i] = 0;
      for(i = Math.max(n-this.t,0); i < a.t; ++i)
        r[this.t+i-n] = this.am(n-i,a[i],r,0,0,this.t+i-n);
      r.clamp();
      r.drShiftTo(1,r);
    }

    // Barrett modular reduction
    function Barrett(m) {
      // setup Barrett
      this.r2 = nbi();
      this.q3 = nbi();
      BigInteger.ONE.dlShiftTo(2*m.t,this.r2);
      this.mu = this.r2.divide(m);
      this.m = m;
    }

    function barrettConvert(x) {
      if(x.s < 0 || x.t > 2*this.m.t) return x.mod(this.m);
      else if(x.compareTo(this.m) < 0) return x;
      else { var r = nbi(); x.copyTo(r); this.reduce(r); return r; }
    }

    function barrettRevert(x) { return x; }

    // x = x mod m (HAC 14.42)
    function barrettReduce(x) {
      x.drShiftTo(this.m.t-1,this.r2);
      if(x.t > this.m.t+1) { x.t = this.m.t+1; x.clamp(); }
      this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3);
      this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);
      while(x.compareTo(this.r2) < 0) x.dAddOffset(1,this.m.t+1);
      x.subTo(this.r2,x);
      while(x.compareTo(this.m) >= 0) x.subTo(this.m,x);
    }

    // r = x^2 mod m; x != r
    function barrettSqrTo(x,r) { x.squareTo(r); this.reduce(r); }

    // r = x*y mod m; x,y != r
    function barrettMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); }

    Barrett.prototype.convert = barrettConvert;
    Barrett.prototype.revert = barrettRevert;
    Barrett.prototype.reduce = barrettReduce;
    Barrett.prototype.mulTo = barrettMulTo;
    Barrett.prototype.sqrTo = barrettSqrTo;

    // (public) this^e % m (HAC 14.85)
    function bnModPow(e,m) {
      var i = e.bitLength(), k, r = nbv(1), z;
      if(i <= 0) return r;
      else if(i < 18) k = 1;
      else if(i < 48) k = 3;
      else if(i < 144) k = 4;
      else if(i < 768) k = 5;
      else k = 6;
      if(i < 8)
        z = new Classic(m);
      else if(m.isEven())
        z = new Barrett(m);
      else
        z = new Montgomery(m);

      // precomputation
      var g = new Array(), n = 3, k1 = k-1, km = (1<<k)-1;
      g[1] = z.convert(this);
      if(k > 1) {
        var g2 = nbi();
        z.sqrTo(g[1],g2);
        while(n <= km) {
          g[n] = nbi();
          z.mulTo(g2,g[n-2],g[n]);
          n += 2;
        }
      }

      var j = e.t-1, w, is1 = true, r2 = nbi(), t;
      i = nbits(e[j])-1;
      while(j >= 0) {
        if(i >= k1) w = (e[j]>>(i-k1))&km;
        else {
          w = (e[j]&((1<<(i+1))-1))<<(k1-i);
          if(j > 0) w |= e[j-1]>>(this.DB+i-k1);
        }

        n = k;
        while((w&1) == 0) { w >>= 1; --n; }
        if((i -= n) < 0) { i += this.DB; --j; }
        if(is1) {	// ret == 1, don't bother squaring or multiplying it
          g[w].copyTo(r);
          is1 = false;
        }
        else {
          while(n > 1) { z.sqrTo(r,r2); z.sqrTo(r2,r); n -= 2; }
          if(n > 0) z.sqrTo(r,r2); else { t = r; r = r2; r2 = t; }
          z.mulTo(r2,g[w],r);
        }

        while(j >= 0 && (e[j]&(1<<i)) == 0) {
          z.sqrTo(r,r2); t = r; r = r2; r2 = t;
          if(--i < 0) { i = this.DB-1; --j; }
        }
      }
      return z.revert(r);
    }

    // (public) gcd(this,a) (HAC 14.54)
    function bnGCD(a) {
      var x = (this.s<0)?this.negate():this.clone();
      var y = (a.s<0)?a.negate():a.clone();
      if(x.compareTo(y) < 0) { var t = x; x = y; y = t; }
      var i = x.getLowestSetBit(), g = y.getLowestSetBit();
      if(g < 0) return x;
      if(i < g) g = i;
      if(g > 0) {
        x.rShiftTo(g,x);
        y.rShiftTo(g,y);
      }
      while(x.signum() > 0) {
        if((i = x.getLowestSetBit()) > 0) x.rShiftTo(i,x);
        if((i = y.getLowestSetBit()) > 0) y.rShiftTo(i,y);
        if(x.compareTo(y) >= 0) {
          x.subTo(y,x);
          x.rShiftTo(1,x);
        }
        else {
          y.subTo(x,y);
          y.rShiftTo(1,y);
        }
      }
      if(g > 0) y.lShiftTo(g,y);
      return y;
    }

    // (protected) this % n, n < 2^26
    function bnpModInt(n) {
      if(n <= 0) return 0;
      var d = this.DV%n, r = (this.s<0)?n-1:0;
      if(this.t > 0)
        if(d == 0) r = this[0]%n;
        else for(var i = this.t-1; i >= 0; --i) r = (d*r+this[i])%n;
      return r;
    }

    // (public) 1/this % m (HAC 14.61)
    function bnModInverse(m) {
      var ac = m.isEven();
      if((this.isEven() && ac) || m.signum() == 0) return BigInteger.ZERO;
      var u = m.clone(), v = this.clone();
      var a = nbv(1), b = nbv(0), c = nbv(0), d = nbv(1);
      while(u.signum() != 0) {
        while(u.isEven()) {
          u.rShiftTo(1,u);
          if(ac) {
            if(!a.isEven() || !b.isEven()) { a.addTo(this,a); b.subTo(m,b); }
            a.rShiftTo(1,a);
          }
          else if(!b.isEven()) b.subTo(m,b);
          b.rShiftTo(1,b);
        }
        while(v.isEven()) {
          v.rShiftTo(1,v);
          if(ac) {
            if(!c.isEven() || !d.isEven()) { c.addTo(this,c); d.subTo(m,d); }
            c.rShiftTo(1,c);
          }
          else if(!d.isEven()) d.subTo(m,d);
          d.rShiftTo(1,d);
        }
        if(u.compareTo(v) >= 0) {
          u.subTo(v,u);
          if(ac) a.subTo(c,a);
          b.subTo(d,b);
        }
        else {
          v.subTo(u,v);
          if(ac) c.subTo(a,c);
          d.subTo(b,d);
        }
      }
      if(v.compareTo(BigInteger.ONE) != 0) return BigInteger.ZERO;
      if(d.compareTo(m) >= 0) return d.subtract(m);
      if(d.signum() < 0) d.addTo(m,d); else return d;
      if(d.signum() < 0) return d.add(m); else return d;
    }

    var lowprimes = [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997];
    var lplim = (1<<26)/lowprimes[lowprimes.length-1];

    // (public) test primality with certainty >= 1-.5^t
    function bnIsProbablePrime(t) {
      var i, x = this.abs();
      if(x.t == 1 && x[0] <= lowprimes[lowprimes.length-1]) {
        for(i = 0; i < lowprimes.length; ++i)
          if(x[0] == lowprimes[i]) return true;
        return false;
      }
      if(x.isEven()) return false;
      i = 1;
      while(i < lowprimes.length) {
        var m = lowprimes[i], j = i+1;
        while(j < lowprimes.length && m < lplim) m *= lowprimes[j++];
        m = x.modInt(m);
        while(i < j) if(m%lowprimes[i++] == 0) return false;
      }
      return x.millerRabin(t);
    }

    // (protected) true if probably prime (HAC 4.24, Miller-Rabin)
    function bnpMillerRabin(t) {
      var n1 = this.subtract(BigInteger.ONE);
      var k = n1.getLowestSetBit();
      if(k <= 0) return false;
      var r = n1.shiftRight(k);
      t = (t+1)>>1;
      if(t > lowprimes.length) t = lowprimes.length;
      var a = nbi();
      for(var i = 0; i < t; ++i) {
        //Pick bases at random, instead of starting at 2
        a.fromInt(lowprimes[Math.floor(Math.random()*lowprimes.length)]);
        var y = a.modPow(r,this);
        if(y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {
          var j = 1;
          while(j++ < k && y.compareTo(n1) != 0) {
            y = y.modPowInt(2,this);
            if(y.compareTo(BigInteger.ONE) == 0) return false;
          }
          if(y.compareTo(n1) != 0) return false;
        }
      }
      return true;
    }

    // protected
    BigInteger.prototype.chunkSize = bnpChunkSize;
    BigInteger.prototype.toRadix = bnpToRadix;
    BigInteger.prototype.fromRadix = bnpFromRadix;
    BigInteger.prototype.fromNumber = bnpFromNumber;
    BigInteger.prototype.bitwiseTo = bnpBitwiseTo;
    BigInteger.prototype.changeBit = bnpChangeBit;
    BigInteger.prototype.addTo = bnpAddTo;
    BigInteger.prototype.dMultiply = bnpDMultiply;
    BigInteger.prototype.dAddOffset = bnpDAddOffset;
    BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;
    BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;
    BigInteger.prototype.modInt = bnpModInt;
    BigInteger.prototype.millerRabin = bnpMillerRabin;

    // public
    BigInteger.prototype.clone = bnClone;
    BigInteger.prototype.intValue = bnIntValue;
    BigInteger.prototype.byteValue = bnByteValue;
    BigInteger.prototype.shortValue = bnShortValue;
    BigInteger.prototype.signum = bnSigNum;
    BigInteger.prototype.toByteArray = bnToByteArray;
    BigInteger.prototype.equals = bnEquals;
    BigInteger.prototype.min = bnMin;
    BigInteger.prototype.max = bnMax;
    BigInteger.prototype.and = bnAnd;
    BigInteger.prototype.or = bnOr;
    BigInteger.prototype.xor = bnXor;
    BigInteger.prototype.andNot = bnAndNot;
    BigInteger.prototype.not = bnNot;
    BigInteger.prototype.shiftLeft = bnShiftLeft;
    BigInteger.prototype.shiftRight = bnShiftRight;
    BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;
    BigInteger.prototype.bitCount = bnBitCount;
    BigInteger.prototype.testBit = bnTestBit;
    BigInteger.prototype.setBit = bnSetBit;
    BigInteger.prototype.clearBit = bnClearBit;
    BigInteger.prototype.flipBit = bnFlipBit;
    BigInteger.prototype.add = bnAdd;
    BigInteger.prototype.subtract = bnSubtract;
    BigInteger.prototype.multiply = bnMultiply;
    BigInteger.prototype.divide = bnDivide;
    BigInteger.prototype.remainder = bnRemainder;
    BigInteger.prototype.divideAndRemainder = bnDivideAndRemainder;
    BigInteger.prototype.modPow = bnModPow;
    BigInteger.prototype.modInverse = bnModInverse;
    BigInteger.prototype.pow = bnPow;
    BigInteger.prototype.gcd = bnGCD;
    BigInteger.prototype.isProbablePrime = bnIsProbablePrime;

    // JSBN-specific extension
    BigInteger.prototype.square = bnSquare;

    // Expose the Barrett function
    BigInteger.prototype.Barrett = Barrett

    // BigInteger interfaces not implemented in jsbn:

    // BigInteger(int signum, byte[] magnitude)
    // double doubleValue()
    // float floatValue()
    // int hashCode()
    // long longValue()
    // static BigInteger valueOf(long val)

	// Random number generator - requires a PRNG backend, e.g. prng4.js

	// For best results, put code like
	// <body onClick='rng_seed_time();' onKeyPress='rng_seed_time();'>
	// in your main HTML document.

	var rng_state;
	var rng_pool;
	var rng_pptr;

	// Mix in a 32-bit integer into the pool
	function rng_seed_int(x) {
	  rng_pool[rng_pptr++] ^= x & 255;
	  rng_pool[rng_pptr++] ^= (x >> 8) & 255;
	  rng_pool[rng_pptr++] ^= (x >> 16) & 255;
	  rng_pool[rng_pptr++] ^= (x >> 24) & 255;
	  if(rng_pptr >= rng_psize) rng_pptr -= rng_psize;
	}

	// Mix in the current time (w/milliseconds) into the pool
	function rng_seed_time() {
	  rng_seed_int(new Date().getTime());
	}

	// Initialize the pool with junk if needed.
	if(rng_pool == null) {
	  rng_pool = new Array();
	  rng_pptr = 0;
	  var t;
	  if(typeof window !== "undefined" && window.crypto) {
		if (window.crypto.getRandomValues) {
		  // Use webcrypto if available
		  var ua = new Uint8Array(32);
		  window.crypto.getRandomValues(ua);
		  for(t = 0; t < 32; ++t)
			rng_pool[rng_pptr++] = ua[t];
		}
		else if(navigator.appName == "Netscape" && navigator.appVersion < "5") {
		  // Extract entropy (256 bits) from NS4 RNG if available
		  var z = window.crypto.random(32);
		  for(t = 0; t < z.length; ++t)
			rng_pool[rng_pptr++] = z.charCodeAt(t) & 255;
		}
	  }
	  while(rng_pptr < rng_psize) {  // extract some randomness from Math.random()
		t = Math.floor(65536 * Math.random());
		rng_pool[rng_pptr++] = t >>> 8;
		rng_pool[rng_pptr++] = t & 255;
	  }
	  rng_pptr = 0;
	  rng_seed_time();
	  //rng_seed_int(window.screenX);
	  //rng_seed_int(window.screenY);
	}

	function rng_get_byte() {
	  if(rng_state == null) {
		rng_seed_time();
		rng_state = prng_newstate();
		rng_state.init(rng_pool);
		for(rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr)
		  rng_pool[rng_pptr] = 0;
		rng_pptr = 0;
		//rng_pool = null;
	  }
	  // TODO: allow reseeding after first request
	  return rng_state.next();
	}

	function rng_get_bytes(ba) {
	  var i;
	  for(i = 0; i < ba.length; ++i) ba[i] = rng_get_byte();
	}

	function SecureRandom() {}

	SecureRandom.prototype.nextBytes = rng_get_bytes;

	// prng4.js - uses Arcfour as a PRNG

	function Arcfour() {
	  this.i = 0;
	  this.j = 0;
	  this.S = new Array();
	}

	// Initialize arcfour context from key, an array of ints, each from [0..255]
	function ARC4init(key) {
	  var i, j, t;
	  for(i = 0; i < 256; ++i)
		this.S[i] = i;
	  j = 0;
	  for(i = 0; i < 256; ++i) {
		j = (j + this.S[i] + key[i % key.length]) & 255;
		t = this.S[i];
		this.S[i] = this.S[j];
		this.S[j] = t;
	  }
	  this.i = 0;
	  this.j = 0;
	}

	function ARC4next() {
	  var t;
	  this.i = (this.i + 1) & 255;
	  this.j = (this.j + this.S[this.i]) & 255;
	  t = this.S[this.i];
	  this.S[this.i] = this.S[this.j];
	  this.S[this.j] = t;
	  return this.S[(t + this.S[this.i]) & 255];
	}

	Arcfour.prototype.init = ARC4init;
	Arcfour.prototype.next = ARC4next;

	// Plug in your RNG constructor here
	function prng_newstate() {
	  return new Arcfour();
	}

	// Pool size must be a multiple of 4 and greater than 32.
	// An array of bytes the size of the pool will be passed to init()
	var rng_psize = 256;

  BigInteger.SecureRandom = SecureRandom;
  BigInteger.BigInteger = BigInteger;
  if (true) {
    exports = module.exports = BigInteger;
  } else {}

}).call(this);


/***/ }),

/***/ 22820:
/***/ ((__unused_webpack_module, exports) => {

//TODO: handle reviver/dehydrate function like normal
//and handle indentation, like normal.
//if anyone needs this... please send pull request.

exports.stringify = function stringify (o) {
  if('undefined' == typeof o) return o

  if(o && Buffer.isBuffer(o))
    return JSON.stringify(':base64:' + o.toString('base64'))

  if(o && o.toJSON)
    o =  o.toJSON()

  if(o && 'object' === typeof o) {
    var s = ''
    var array = Array.isArray(o)
    s = array ? '[' : '{'
    var first = true

    for(var k in o) {
      var ignore = 'function' == typeof o[k] || (!array && 'undefined' === typeof o[k])
      if(Object.hasOwnProperty.call(o, k) && !ignore) {
        if(!first)
          s += ','
        first = false
        if (array) {
          if(o[k] == undefined)
            s += 'null'
          else
            s += stringify(o[k])
        } else if (o[k] !== void(0)) {
          s += stringify(k) + ':' + stringify(o[k])
        }
      }
    }

    s += array ? ']' : '}'

    return s
  } else if ('string' === typeof o) {
    return JSON.stringify(/^:/.test(o) ? ':' + o : o)
  } else if ('undefined' === typeof o) {
    return 'null';
  } else
    return JSON.stringify(o)
}

exports.parse = function (s) {
  return JSON.parse(s, function (key, value) {
    if('string' === typeof value) {
      if(/^:base64:/.test(value))
        return new Buffer(value.substring(8), 'base64')
      else
        return /^:/.test(value) ? value.substring(1) : value 
    }
    return value
  })
}


/***/ }),

/***/ 52533:
/***/ ((module) => {

"use strict";


var traverse = module.exports = function (schema, opts, cb) {
  // Legacy support for v0.3.1 and earlier.
  if (typeof opts == 'function') {
    cb = opts;
    opts = {};
  }

  cb = opts.cb || cb;
  var pre = (typeof cb == 'function') ? cb : cb.pre || function() {};
  var post = cb.post || function() {};

  _traverse(opts, pre, post, schema, '', schema);
};


traverse.keywords = {
  additionalItems: true,
  items: true,
  contains: true,
  additionalProperties: true,
  propertyNames: true,
  not: true
};

traverse.arrayKeywords = {
  items: true,
  allOf: true,
  anyOf: true,
  oneOf: true
};

traverse.propsKeywords = {
  definitions: true,
  properties: true,
  patternProperties: true,
  dependencies: true
};

traverse.skipKeywords = {
  default: true,
  enum: true,
  const: true,
  required: true,
  maximum: true,
  minimum: true,
  exclusiveMaximum: true,
  exclusiveMinimum: true,
  multipleOf: true,
  maxLength: true,
  minLength: true,
  pattern: true,
  format: true,
  maxItems: true,
  minItems: true,
  uniqueItems: true,
  maxProperties: true,
  minProperties: true
};


function _traverse(opts, pre, post, schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) {
  if (schema && typeof schema == 'object' && !Array.isArray(schema)) {
    pre(schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex);
    for (var key in schema) {
      var sch = schema[key];
      if (Array.isArray(sch)) {
        if (key in traverse.arrayKeywords) {
          for (var i=0; i<sch.length; i++)
            _traverse(opts, pre, post, sch[i], jsonPtr + '/' + key + '/' + i, rootSchema, jsonPtr, key, schema, i);
        }
      } else if (key in traverse.propsKeywords) {
        if (sch && typeof sch == 'object') {
          for (var prop in sch)
            _traverse(opts, pre, post, sch[prop], jsonPtr + '/' + key + '/' + escapeJsonPtr(prop), rootSchema, jsonPtr, key, schema, prop);
        }
      } else if (key in traverse.keywords || (opts.allKeys && !(key in traverse.skipKeywords))) {
        _traverse(opts, pre, post, sch, jsonPtr + '/' + key, rootSchema, jsonPtr, key, schema);
      }
    }
    post(schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex);
  }
}


function escapeJsonPtr(str) {
  return str.replace(/~/g, '~0').replace(/\//g, '~1');
}


/***/ }),

/***/ 21328:
/***/ (function(module) {

/**
 * JSONSchema Validator - Validates JavaScript objects using JSON Schemas
 *	(http://www.json.com/json-schema-proposal/)
 *
 * Copyright (c) 2007 Kris Zyp SitePen (www.sitepen.com)
 * Licensed under the MIT (MIT-LICENSE.txt) license.
To use the validator call the validate function with an instance object and an optional schema object.
If a schema is provided, it will be used to validate. If the instance object refers to a schema (self-validating),
that schema will be used to validate and the schema parameter is not necessary (if both exist,
both validations will occur).
The validate method will return an array of validation errors. If there are no errors, then an
empty list will be returned. A validation error will have two properties:
"property" which indicates which property had the error
"message" which indicates what the error was
 */
(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define([], function () {
            return factory();
        });
    } else if ( true && module.exports) {
        // Node. Does not work with strict CommonJS, but
        // only CommonJS-like environments that support module.exports,
        // like Node.
        module.exports = factory();
    } else {
        // Browser globals
        root.jsonSchema = factory();
    }
}(this, function () {// setup primitive classes to be JSON Schema types
var exports = validate
exports.Integer = {type:"integer"};
var primitiveConstructors = {
	String: String,
	Boolean: Boolean,
	Number: Number,
	Object: Object,
	Array: Array,
	Date: Date
}
exports.validate = validate;
function validate(/*Any*/instance,/*Object*/schema) {
		// Summary:
		//  	To use the validator call JSONSchema.validate with an instance object and an optional schema object.
		// 		If a schema is provided, it will be used to validate. If the instance object refers to a schema (self-validating),
		// 		that schema will be used to validate and the schema parameter is not necessary (if both exist,
		// 		both validations will occur).
		// 		The validate method will return an object with two properties:
		// 			valid: A boolean indicating if the instance is valid by the schema
		// 			errors: An array of validation errors. If there are no errors, then an
		// 					empty list will be returned. A validation error will have two properties:
		// 						property: which indicates which property had the error
		// 						message: which indicates what the error was
		//
		return validate(instance, schema, {changing: false});//, coerce: false, existingOnly: false});
	};
exports.checkPropertyChange = function(/*Any*/value,/*Object*/schema, /*String*/property) {
		// Summary:
		// 		The checkPropertyChange method will check to see if an value can legally be in property with the given schema
		// 		This is slightly different than the validate method in that it will fail if the schema is readonly and it will
		// 		not check for self-validation, it is assumed that the passed in value is already internally valid.
		// 		The checkPropertyChange method will return the same object type as validate, see JSONSchema.validate for
		// 		information.
		//
		return validate(value, schema, {changing: property || "property"});
	};
var validate = exports._validate = function(/*Any*/instance,/*Object*/schema,/*Object*/options) {

	if (!options) options = {};
	var _changing = options.changing;

	function getType(schema){
		return schema.type || (primitiveConstructors[schema.name] == schema && schema.name.toLowerCase());
	}
	var errors = [];
	// validate a value against a property definition
	function checkProp(value, schema, path,i){

		var l;
		path += path ? typeof i == 'number' ? '[' + i + ']' : typeof i == 'undefined' ? '' : '.' + i : i;
		function addError(message){
			errors.push({property:path,message:message});
		}

		if((typeof schema != 'object' || schema instanceof Array) && (path || typeof schema != 'function') && !(schema && getType(schema))){
			if(typeof schema == 'function'){
				if(!(value instanceof schema)){
					addError("is not an instance of the class/constructor " + schema.name);
				}
			}else if(schema){
				addError("Invalid schema/property definition " + schema);
			}
			return null;
		}
		if(_changing && schema.readonly){
			addError("is a readonly field, it can not be changed");
		}
		if(schema['extends']){ // if it extends another schema, it must pass that schema as well
			checkProp(value,schema['extends'],path,i);
		}
		// validate a value against a type definition
		function checkType(type,value){
			if(type){
				if(typeof type == 'string' && type != 'any' &&
						(type == 'null' ? value !== null : typeof value != type) &&
						!(value instanceof Array && type == 'array') &&
						!(value instanceof Date && type == 'date') &&
						!(type == 'integer' && value%1===0)){
					return [{property:path,message:(typeof value) + " value found, but a " + type + " is required"}];
				}
				if(type instanceof Array){
					var unionErrors=[];
					for(var j = 0; j < type.length; j++){ // a union type
						if(!(unionErrors=checkType(type[j],value)).length){
							break;
						}
					}
					if(unionErrors.length){
						return unionErrors;
					}
				}else if(typeof type == 'object'){
					var priorErrors = errors;
					errors = [];
					checkProp(value,type,path);
					var theseErrors = errors;
					errors = priorErrors;
					return theseErrors;
				}
			}
			return [];
		}
		if(value === undefined){
			if(schema.required){
				addError("is missing and it is required");
			}
		}else{
			errors = errors.concat(checkType(getType(schema),value));
			if(schema.disallow && !checkType(schema.disallow,value).length){
				addError(" disallowed value was matched");
			}
			if(value !== null){
				if(value instanceof Array){
					if(schema.items){
						var itemsIsArray = schema.items instanceof Array;
						var propDef = schema.items;
						for (i = 0, l = value.length; i < l; i += 1) {
							if (itemsIsArray)
								propDef = schema.items[i];
							if (options.coerce)
								value[i] = options.coerce(value[i], propDef);
							errors.concat(checkProp(value[i],propDef,path,i));
						}
					}
					if(schema.minItems && value.length < schema.minItems){
						addError("There must be a minimum of " + schema.minItems + " in the array");
					}
					if(schema.maxItems && value.length > schema.maxItems){
						addError("There must be a maximum of " + schema.maxItems + " in the array");
					}
				}else if(schema.properties || schema.additionalProperties){
					errors.concat(checkObj(value, schema.properties, path, schema.additionalProperties));
				}
				if(schema.pattern && typeof value == 'string' && !value.match(schema.pattern)){
					addError("does not match the regex pattern " + schema.pattern);
				}
				if(schema.maxLength && typeof value == 'string' && value.length > schema.maxLength){
					addError("may only be " + schema.maxLength + " characters long");
				}
				if(schema.minLength && typeof value == 'string' && value.length < schema.minLength){
					addError("must be at least " + schema.minLength + " characters long");
				}
				if(typeof schema.minimum !== undefined && typeof value == typeof schema.minimum &&
						schema.minimum > value){
					addError("must have a minimum value of " + schema.minimum);
				}
				if(typeof schema.maximum !== undefined && typeof value == typeof schema.maximum &&
						schema.maximum < value){
					addError("must have a maximum value of " + schema.maximum);
				}
				if(schema['enum']){
					var enumer = schema['enum'];
					l = enumer.length;
					var found;
					for(var j = 0; j < l; j++){
						if(enumer[j]===value){
							found=1;
							break;
						}
					}
					if(!found){
						addError("does not have a value in the enumeration " + enumer.join(", "));
					}
				}
				if(typeof schema.maxDecimal == 'number' &&
					(value.toString().match(new RegExp("\\.[0-9]{" + (schema.maxDecimal + 1) + ",}")))){
					addError("may only have " + schema.maxDecimal + " digits of decimal places");
				}
			}
		}
		return null;
	}
	// validate an object against a schema
	function checkObj(instance,objTypeDef,path,additionalProp){

		if(typeof objTypeDef =='object'){
			if(typeof instance != 'object' || instance instanceof Array){
				errors.push({property:path,message:"an object is required"});
			}
			
			for(var i in objTypeDef){ 
				if(objTypeDef.hasOwnProperty(i)){
					var value = instance[i];
					// skip _not_ specified properties
					if (value === undefined && options.existingOnly) continue;
					var propDef = objTypeDef[i];
					// set default
					if(value === undefined && propDef["default"]){
						value = instance[i] = propDef["default"];
					}
					if(options.coerce && i in instance){
						value = instance[i] = options.coerce(value, propDef);
					}
					checkProp(value,propDef,path,i);
				}
			}
		}
		for(i in instance){
			if(instance.hasOwnProperty(i) && !(i.charAt(0) == '_' && i.charAt(1) == '_') && objTypeDef && !objTypeDef[i] && additionalProp===false){
				if (options.filter) {
					delete instance[i];
					continue;
				} else {
					errors.push({property:path,message:(typeof value) + "The property " + i +
						" is not defined in the schema and the schema does not allow additional properties"});
				}
			}
			var requires = objTypeDef && objTypeDef[i] && objTypeDef[i].requires;
			if(requires && !(requires in instance)){
				errors.push({property:path,message:"the presence of the property " + i + " requires that " + requires + " also be present"});
			}
			value = instance[i];
			if(additionalProp && (!(objTypeDef && typeof objTypeDef == 'object') || !(i in objTypeDef))){
				if(options.coerce){
					value = instance[i] = options.coerce(value, additionalProp);
				}
				checkProp(value,additionalProp,path,i);
			}
			if(!_changing && value && value.$schema){
				errors = errors.concat(checkProp(value,value.$schema,path,i));
			}
		}
		return errors;
	}
	if(schema){
		checkProp(instance,schema,'',_changing || '');
	}
	if(!_changing && instance && instance.$schema){
		checkProp(instance,instance.$schema,'','');
	}
	return {valid:!errors.length,errors:errors};
};
exports.mustBeValid = function(result){
	//	summary:
	//		This checks to ensure that the result is valid and will throw an appropriate error message if it is not
	// result: the result returned from checkPropertyChange or validate
	if(!result.valid){
		throw new TypeError(result.errors.map(function(error){return "for property " + error.property + ': ' + error.message;}).join(", \n"));
	}
}

return exports;
}));


/***/ }),

/***/ 81676:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var util = __webpack_require__(31669),
    TransformStream = __webpack_require__(92413).Transform;

module.exports = function (options) {
  return new JSONStream(options);
};

var JSONStream = module.exports.JSONStream = function (options) {
  options = options || {};
  TransformStream.call(this, options);
  this._writableState.objectMode = false;
  this._readableState.objectMode = true;
  this._async = options.async || false;
};
util.inherits(JSONStream, TransformStream);

JSONStream.prototype._transform = function (data, encoding, callback) {
  if (!Buffer.isBuffer(data)) data = new Buffer(data);
  if (this._buffer) {
    data = Buffer.concat([this._buffer, data]);
  }

  var ptr = 0, start = 0;
  while (++ptr <= data.length) {
    if (data[ptr] === 10 || ptr === data.length) {
      var line;
      try {
        line = JSON.parse(data.slice(start, ptr));
      }
      catch (ex) { }
      if (line) {
        this.push(line);
        line = null;
      }
      if (data[ptr] === 10) start = ++ptr;
    }
  }

  this._buffer = data.slice(start);
  return this._async
    ? void setImmediate(callback)
    : void callback();
};


/***/ }),

/***/ 57073:
/***/ ((module, exports) => {

exports = module.exports = stringify
exports.getSerialize = serializer

function stringify(obj, replacer, spaces, cycleReplacer) {
  return JSON.stringify(obj, serializer(replacer, cycleReplacer), spaces)
}

function serializer(replacer, cycleReplacer) {
  var stack = [], keys = []

  if (cycleReplacer == null) cycleReplacer = function(key, value) {
    if (stack[0] === value) return "[Circular ~]"
    return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]"
  }

  return function(key, value) {
    if (stack.length > 0) {
      var thisPos = stack.indexOf(this)
      ~thisPos ? stack.splice(thisPos + 1) : stack.push(this)
      ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key)
      if (~stack.indexOf(value)) value = cycleReplacer.call(this, key, value)
    }
    else stack.push(value)

    return replacer == null ? value : replacer.call(this, key, value)
  }
}


/***/ }),

/***/ 63269:
/***/ (function(module, exports, __webpack_require__) {

(function (global, factory) {
   true ? factory(exports) :
  0;
}(this, function (exports) { 'use strict';

  function _typeof(obj) {
    if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
      _typeof = function (obj) {
        return typeof obj;
      };
    } else {
      _typeof = function (obj) {
        return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
      };
    }

    return _typeof(obj);
  }

  function _classCallCheck(instance, Constructor) {
    if (!(instance instanceof Constructor)) {
      throw new TypeError("Cannot call a class as a function");
    }
  }

  function _inherits(subClass, superClass) {
    if (typeof superClass !== "function" && superClass !== null) {
      throw new TypeError("Super expression must either be null or a function");
    }

    subClass.prototype = Object.create(superClass && superClass.prototype, {
      constructor: {
        value: subClass,
        writable: true,
        configurable: true
      }
    });
    if (superClass) _setPrototypeOf(subClass, superClass);
  }

  function _getPrototypeOf(o) {
    _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
      return o.__proto__ || Object.getPrototypeOf(o);
    };
    return _getPrototypeOf(o);
  }

  function _setPrototypeOf(o, p) {
    _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
      o.__proto__ = p;
      return o;
    };

    return _setPrototypeOf(o, p);
  }

  function isNativeReflectConstruct() {
    if (typeof Reflect === "undefined" || !Reflect.construct) return false;
    if (Reflect.construct.sham) return false;
    if (typeof Proxy === "function") return true;

    try {
      Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));
      return true;
    } catch (e) {
      return false;
    }
  }

  function _construct(Parent, args, Class) {
    if (isNativeReflectConstruct()) {
      _construct = Reflect.construct;
    } else {
      _construct = function _construct(Parent, args, Class) {
        var a = [null];
        a.push.apply(a, args);
        var Constructor = Function.bind.apply(Parent, a);
        var instance = new Constructor();
        if (Class) _setPrototypeOf(instance, Class.prototype);
        return instance;
      };
    }

    return _construct.apply(null, arguments);
  }

  function _isNativeFunction(fn) {
    return Function.toString.call(fn).indexOf("[native code]") !== -1;
  }

  function _wrapNativeSuper(Class) {
    var _cache = typeof Map === "function" ? new Map() : undefined;

    _wrapNativeSuper = function _wrapNativeSuper(Class) {
      if (Class === null || !_isNativeFunction(Class)) return Class;

      if (typeof Class !== "function") {
        throw new TypeError("Super expression must either be null or a function");
      }

      if (typeof _cache !== "undefined") {
        if (_cache.has(Class)) return _cache.get(Class);

        _cache.set(Class, Wrapper);
      }

      function Wrapper() {
        return _construct(Class, arguments, _getPrototypeOf(this).constructor);
      }

      Wrapper.prototype = Object.create(Class.prototype, {
        constructor: {
          value: Wrapper,
          enumerable: false,
          writable: true,
          configurable: true
        }
      });
      return _setPrototypeOf(Wrapper, Class);
    };

    return _wrapNativeSuper(Class);
  }

  function _assertThisInitialized(self) {
    if (self === void 0) {
      throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
    }

    return self;
  }

  function _possibleConstructorReturn(self, call) {
    if (call && (typeof call === "object" || typeof call === "function")) {
      return call;
    }

    return _assertThisInitialized(self);
  }

  /* eslint-disable no-eval */
  var globalEval = eval; // eslint-disable-next-line import/no-commonjs

  var supportsNodeVM =  true && Boolean(module.exports) && !(typeof navigator !== 'undefined' && navigator.product === 'ReactNative');
  var allowedResultTypes = ['value', 'path', 'pointer', 'parent', 'parentProperty', 'all'];
  var hasOwnProp = Object.prototype.hasOwnProperty;
  /**
   * Copy items out of one array into another.
   * @param {Array} source Array with items to copy
   * @param {Array} target Array to which to copy
   * @param {Function} conditionCb Callback passed the current item; will move
   *     item if evaluates to `true`
   * @returns {undefined}
   */

  var moveToAnotherArray = function moveToAnotherArray(source, target, conditionCb) {
    var il = source.length;

    for (var i = 0; i < il; i++) {
      var item = source[i];

      if (conditionCb(item)) {
        target.push(source.splice(i--, 1)[0]);
      }
    }
  };

  var vm = supportsNodeVM ? __webpack_require__(92184) : {
    /**
     * @param {string} expr Expression to evaluate
     * @param {Object} context Object whose items will be added to evaluation
     * @returns {*} Result of evaluated code
     */
    runInNewContext: function runInNewContext(expr, context) {
      var keys = Object.keys(context);
      var funcs = [];
      moveToAnotherArray(keys, funcs, function (key) {
        return typeof context[key] === 'function';
      });
      var code = funcs.reduce(function (s, func) {
        var fString = context[func].toString();

        if (!/function/.exec(fString)) {
          fString = 'function ' + fString;
        }

        return 'var ' + func + '=' + fString + ';' + s;
      }, '') + keys.reduce(function (s, vr) {
        return 'var ' + vr + '=' + JSON.stringify(context[vr]).replace( // http://www.thespanner.co.uk/2011/07/25/the-json-specification-is-now-wrong/
        /\u2028|\u2029/g, function (m) {
          return "\\u202" + (m === "\u2028" ? '8' : '9');
        }) + ';' + s;
      }, expr);
      return globalEval(code);
    }
  };
  /**
   * Copies array and then pushes item into it.
   * @param {Array} arr Array to copy and into which to push
   * @param {*} item Array item to add (to end)
   * @returns {Array} Copy of the original array
   */

  function push(arr, item) {
    arr = arr.slice();
    arr.push(item);
    return arr;
  }
  /**
   * Copies array and then unshifts item into it.
   * @param {*} item Array item to add (to beginning)
   * @param {Array} arr Array to copy and into which to unshift
   * @returns {Array} Copy of the original array
   */


  function unshift(item, arr) {
    arr = arr.slice();
    arr.unshift(item);
    return arr;
  }
  /**
   * Caught when JSONPath is used without `new` but rethrown if with `new`
   * @extends Error
   */


  var NewError =
  /*#__PURE__*/
  function (_Error) {
    _inherits(NewError, _Error);

    /**
     * @param {*} value The evaluated scalar value
     */
    function NewError(value) {
      var _this;

      _classCallCheck(this, NewError);

      _this = _possibleConstructorReturn(this, _getPrototypeOf(NewError).call(this, 'JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'));
      _this.avoidNew = true;
      _this.value = value;
      _this.name = 'NewError';
      return _this;
    }

    return NewError;
  }(_wrapNativeSuper(Error));
  /**
   * @param {Object} [opts] If present, must be an object
   * @param {string} expr JSON path to evaluate
   * @param {JSON} obj JSON object to evaluate against
   * @param {Function} callback Passed 3 arguments: 1) desired payload per `resultType`,
   *     2) `"value"|"property"`, 3) Full returned object with all payloads
   * @param {Function} otherTypeCallback If `@other()` is at the end of one's query, this
   *  will be invoked with the value of the item, its path, its parent, and its parent's
   *  property name, and it should return a boolean indicating whether the supplied value
   *  belongs to the "other" type or not (or it may handle transformations and return `false`).
   * @returns {JSONPath}
   * @class
   */


  function JSONPath(opts, expr, obj, callback, otherTypeCallback) {
    // eslint-disable-next-line no-restricted-syntax
    if (!(this instanceof JSONPath)) {
      try {
        return new JSONPath(opts, expr, obj, callback, otherTypeCallback);
      } catch (e) {
        if (!e.avoidNew) {
          throw e;
        }

        return e.value;
      }
    }

    if (typeof opts === 'string') {
      otherTypeCallback = callback;
      callback = obj;
      obj = expr;
      expr = opts;
      opts = {};
    }

    opts = opts || {};
    var objArgs = hasOwnProp.call(opts, 'json') && hasOwnProp.call(opts, 'path');
    this.json = opts.json || obj;
    this.path = opts.path || expr;
    this.resultType = opts.resultType && opts.resultType.toLowerCase() || 'value';
    this.flatten = opts.flatten || false;
    this.wrap = hasOwnProp.call(opts, 'wrap') ? opts.wrap : true;
    this.sandbox = opts.sandbox || {};
    this.preventEval = opts.preventEval || false;
    this.parent = opts.parent || null;
    this.parentProperty = opts.parentProperty || null;
    this.callback = opts.callback || callback || null;

    this.otherTypeCallback = opts.otherTypeCallback || otherTypeCallback || function () {
      throw new Error('You must supply an otherTypeCallback callback option with the @other() operator.');
    };

    if (opts.autostart !== false) {
      var ret = this.evaluate({
        path: objArgs ? opts.path : expr,
        json: objArgs ? opts.json : obj
      });

      if (!ret || _typeof(ret) !== 'object') {
        throw new NewError(ret);
      }

      return ret;
    }
  } // PUBLIC METHODS


  JSONPath.prototype.evaluate = function (expr, json, callback, otherTypeCallback) {
    var that = this;
    var currParent = this.parent,
        currParentProperty = this.parentProperty;
    var flatten = this.flatten,
        wrap = this.wrap;
    this.currResultType = this.resultType;
    this.currPreventEval = this.preventEval;
    this.currSandbox = this.sandbox;
    callback = callback || this.callback;
    this.currOtherTypeCallback = otherTypeCallback || this.otherTypeCallback;
    json = json || this.json;
    expr = expr || this.path;

    if (expr && _typeof(expr) === 'object') {
      if (!expr.path) {
        throw new Error('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');
      }

      json = hasOwnProp.call(expr, 'json') ? expr.json : json;
      flatten = hasOwnProp.call(expr, 'flatten') ? expr.flatten : flatten;
      this.currResultType = hasOwnProp.call(expr, 'resultType') ? expr.resultType : this.currResultType;
      this.currSandbox = hasOwnProp.call(expr, 'sandbox') ? expr.sandbox : this.currSandbox;
      wrap = hasOwnProp.call(expr, 'wrap') ? expr.wrap : wrap;
      this.currPreventEval = hasOwnProp.call(expr, 'preventEval') ? expr.preventEval : this.currPreventEval;
      callback = hasOwnProp.call(expr, 'callback') ? expr.callback : callback;
      this.currOtherTypeCallback = hasOwnProp.call(expr, 'otherTypeCallback') ? expr.otherTypeCallback : this.currOtherTypeCallback;
      currParent = hasOwnProp.call(expr, 'parent') ? expr.parent : currParent;
      currParentProperty = hasOwnProp.call(expr, 'parentProperty') ? expr.parentProperty : currParentProperty;
      expr = expr.path;
    }

    currParent = currParent || null;
    currParentProperty = currParentProperty || null;

    if (Array.isArray(expr)) {
      expr = JSONPath.toPathString(expr);
    }

    if (!expr || !json || !allowedResultTypes.includes(this.currResultType)) {
      return undefined;
    }

    this._obj = json;
    var exprList = JSONPath.toPathArray(expr);

    if (exprList[0] === '$' && exprList.length > 1) {
      exprList.shift();
    }

    this._hasParentSelector = null;

    var result = this._trace(exprList, json, ['$'], currParent, currParentProperty, callback).filter(function (ea) {
      return ea && !ea.isParentSelector;
    });

    if (!result.length) {
      return wrap ? [] : undefined;
    }

    if (result.length === 1 && !wrap && !Array.isArray(result[0].value)) {
      return this._getPreferredOutput(result[0]);
    }

    return result.reduce(function (rslt, ea) {
      var valOrPath = that._getPreferredOutput(ea);

      if (flatten && Array.isArray(valOrPath)) {
        rslt = rslt.concat(valOrPath);
      } else {
        rslt.push(valOrPath);
      }

      return rslt;
    }, []);
  }; // PRIVATE METHODS


  JSONPath.prototype._getPreferredOutput = function (ea) {
    var resultType = this.currResultType;

    switch (resultType) {
      default:
        throw new TypeError('Unknown result type');

      case 'all':
        ea.pointer = JSONPath.toPointer(ea.path);
        ea.path = typeof ea.path === 'string' ? ea.path : JSONPath.toPathString(ea.path);
        return ea;

      case 'value':
      case 'parent':
      case 'parentProperty':
        return ea[resultType];

      case 'path':
        return JSONPath.toPathString(ea[resultType]);

      case 'pointer':
        return JSONPath.toPointer(ea.path);
    }
  };

  JSONPath.prototype._handleCallback = function (fullRetObj, callback, type) {
    if (callback) {
      var preferredOutput = this._getPreferredOutput(fullRetObj);

      fullRetObj.path = typeof fullRetObj.path === 'string' ? fullRetObj.path : JSONPath.toPathString(fullRetObj.path); // eslint-disable-next-line callback-return

      callback(preferredOutput, type, fullRetObj);
    }
  };

  JSONPath.prototype._trace = function (expr, val, path, parent, parentPropName, callback, literalPriority) {
    // No expr to follow? return path and value as the result of this trace branch
    var retObj;
    var that = this;

    if (!expr.length) {
      retObj = {
        path: path,
        value: val,
        parent: parent,
        parentProperty: parentPropName
      };

      this._handleCallback(retObj, callback, 'value');

      return retObj;
    }

    var loc = expr[0],
        x = expr.slice(1); // We need to gather the return value of recursive trace calls in order to
    // do the parent sel computation.

    var ret = [];

    function addRet(elems) {
      if (Array.isArray(elems)) {
        // This was causing excessive stack size in Node (with or without Babel) against our performance test: `ret.push(...elems);`
        elems.forEach(function (t) {
          ret.push(t);
        });
      } else {
        ret.push(elems);
      }
    }

    if ((typeof loc !== 'string' || literalPriority) && val && hasOwnProp.call(val, loc)) {
      // simple case--directly follow property
      addRet(this._trace(x, val[loc], push(path, loc), val, loc, callback));
    } else if (loc === '*') {
      // all child properties
      // eslint-disable-next-line no-shadow
      this._walk(loc, x, val, path, parent, parentPropName, callback, function (m, l, x, v, p, par, pr, cb) {
        addRet(that._trace(unshift(m, x), v, p, par, pr, cb, true));
      });
    } else if (loc === '..') {
      // all descendent parent properties
      addRet(this._trace(x, val, path, parent, parentPropName, callback)); // Check remaining expression with val's immediate children
      // eslint-disable-next-line no-shadow

      this._walk(loc, x, val, path, parent, parentPropName, callback, function (m, l, x, v, p, par, pr, cb) {
        // We don't join m and x here because we only want parents, not scalar values
        if (_typeof(v[m]) === 'object') {
          // Keep going with recursive descent on val's object children
          addRet(that._trace(unshift(l, x), v[m], push(p, m), v, m, cb));
        }
      }); // The parent sel computation is handled in the frame above using the
      // ancestor object of val

    } else if (loc === '^') {
      // This is not a final endpoint, so we do not invoke the callback here
      this._hasParentSelector = true;
      return path.length ? {
        path: path.slice(0, -1),
        expr: x,
        isParentSelector: true
      } : [];
    } else if (loc === '~') {
      // property name
      retObj = {
        path: push(path, loc),
        value: parentPropName,
        parent: parent,
        parentProperty: null
      };

      this._handleCallback(retObj, callback, 'property');

      return retObj;
    } else if (loc === '$') {
      // root only
      addRet(this._trace(x, val, path, null, null, callback));
    } else if (/^(-?\d*):(-?\d*):?(\d*)$/.test(loc)) {
      // [start:end:step]  Python slice syntax
      addRet(this._slice(loc, x, val, path, parent, parentPropName, callback));
    } else if (loc.indexOf('?(') === 0) {
      // [?(expr)] (filtering)
      if (this.currPreventEval) {
        throw new Error('Eval [?(expr)] prevented in JSONPath expression.');
      } // eslint-disable-next-line no-shadow


      this._walk(loc, x, val, path, parent, parentPropName, callback, function (m, l, x, v, p, par, pr, cb) {
        if (that._eval(l.replace(/^\?\((.*?)\)$/, '$1'), v[m], m, p, par, pr)) {
          addRet(that._trace(unshift(m, x), v, p, par, pr, cb));
        }
      });
    } else if (loc[0] === '(') {
      // [(expr)] (dynamic property/index)
      if (this.currPreventEval) {
        throw new Error('Eval [(expr)] prevented in JSONPath expression.');
      } // As this will resolve to a property name (but we don't know it yet), property and parent information is relative to the parent of the property to which this expression will resolve


      addRet(this._trace(unshift(this._eval(loc, val, path[path.length - 1], path.slice(0, -1), parent, parentPropName), x), val, path, parent, parentPropName, callback));
    } else if (loc[0] === '@') {
      // value type: @boolean(), etc.
      var addType = false;
      var valueType = loc.slice(1, -2);

      switch (valueType) {
        default:
          throw new TypeError('Unknown value type ' + valueType);

        case 'scalar':
          if (!val || !['object', 'function'].includes(_typeof(val))) {
            addType = true;
          }

          break;

        case 'boolean':
        case 'string':
        case 'undefined':
        case 'function':
          if (_typeof(val) === valueType) {
            // eslint-disable-line valid-typeof
            addType = true;
          }

          break;

        case 'number':
          if (_typeof(val) === valueType && isFinite(val)) {
            // eslint-disable-line valid-typeof
            addType = true;
          }

          break;

        case 'nonFinite':
          if (typeof val === 'number' && !isFinite(val)) {
            addType = true;
          }

          break;

        case 'object':
          if (val && _typeof(val) === valueType) {
            // eslint-disable-line valid-typeof
            addType = true;
          }

          break;

        case 'array':
          if (Array.isArray(val)) {
            addType = true;
          }

          break;

        case 'other':
          addType = this.currOtherTypeCallback(val, path, parent, parentPropName);
          break;

        case 'integer':
          if (val === Number(val) && isFinite(val) && !(val % 1)) {
            addType = true;
          }

          break;

        case 'null':
          if (val === null) {
            addType = true;
          }

          break;
      }

      if (addType) {
        retObj = {
          path: path,
          value: val,
          parent: parent,
          parentProperty: parentPropName
        };

        this._handleCallback(retObj, callback, 'value');

        return retObj;
      }
    } else if (loc[0] === '`' && val && hasOwnProp.call(val, loc.slice(1))) {
      // `-escaped property
      var locProp = loc.slice(1);
      addRet(this._trace(x, val[locProp], push(path, locProp), val, locProp, callback, true));
    } else if (loc.includes(',')) {
      // [name1,name2,...]
      var parts = loc.split(',');
      var _iteratorNormalCompletion = true;
      var _didIteratorError = false;
      var _iteratorError = undefined;

      try {
        for (var _iterator = parts[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
          var part = _step.value;
          addRet(this._trace(unshift(part, x), val, path, parent, parentPropName, callback));
        }
      } catch (err) {
        _didIteratorError = true;
        _iteratorError = err;
      } finally {
        try {
          if (!_iteratorNormalCompletion && _iterator["return"] != null) {
            _iterator["return"]();
          }
        } finally {
          if (_didIteratorError) {
            throw _iteratorError;
          }
        }
      }
    } else if (!literalPriority && val && hasOwnProp.call(val, loc)) {
      // simple case--directly follow property
      addRet(this._trace(x, val[loc], push(path, loc), val, loc, callback, true));
    } // We check the resulting values for parent selections. For parent
    // selections we discard the value object and continue the trace with the
    // current val object


    if (this._hasParentSelector) {
      // eslint-disable-next-line unicorn/no-for-loop
      for (var t = 0; t < ret.length; t++) {
        var rett = ret[t];

        if (rett.isParentSelector) {
          var tmp = that._trace(rett.expr, val, rett.path, parent, parentPropName, callback);

          if (Array.isArray(tmp)) {
            ret[t] = tmp[0];
            var tl = tmp.length;

            for (var tt = 1; tt < tl; tt++) {
              t++;
              ret.splice(t, 0, tmp[tt]);
            }
          } else {
            ret[t] = tmp;
          }
        }
      }
    }

    return ret;
  };

  JSONPath.prototype._walk = function (loc, expr, val, path, parent, parentPropName, callback, f) {
    if (Array.isArray(val)) {
      var n = val.length;

      for (var i = 0; i < n; i++) {
        f(i, loc, expr, val, path, parent, parentPropName, callback);
      }
    } else if (_typeof(val) === 'object') {
      for (var m in val) {
        if (hasOwnProp.call(val, m)) {
          f(m, loc, expr, val, path, parent, parentPropName, callback);
        }
      }
    }
  };

  JSONPath.prototype._slice = function (loc, expr, val, path, parent, parentPropName, callback) {
    if (!Array.isArray(val)) {
      return undefined;
    }

    var len = val.length,
        parts = loc.split(':'),
        step = parts[2] && parseInt(parts[2]) || 1;
    var start = parts[0] && parseInt(parts[0]) || 0,
        end = parts[1] && parseInt(parts[1]) || len;
    start = start < 0 ? Math.max(0, start + len) : Math.min(len, start);
    end = end < 0 ? Math.max(0, end + len) : Math.min(len, end);
    var ret = [];

    for (var i = start; i < end; i += step) {
      var tmp = this._trace(unshift(i, expr), val, path, parent, parentPropName, callback);

      if (Array.isArray(tmp)) {
        // This was causing excessive stack size in Node (with or without Babel) against our performance test: `ret.push(...tmp);`
        tmp.forEach(function (t) {
          ret.push(t);
        });
      } else {
        ret.push(tmp);
      }
    }

    return ret;
  };

  JSONPath.prototype._eval = function (code, _v, _vname, path, parent, parentPropName) {
    if (!this._obj || !_v) {
      return false;
    }

    if (code.includes('@parentProperty')) {
      this.currSandbox._$_parentProperty = parentPropName;
      code = code.replace(/@parentProperty/g, '_$_parentProperty');
    }

    if (code.includes('@parent')) {
      this.currSandbox._$_parent = parent;
      code = code.replace(/@parent/g, '_$_parent');
    }

    if (code.includes('@property')) {
      this.currSandbox._$_property = _vname;
      code = code.replace(/@property/g, '_$_property');
    }

    if (code.includes('@path')) {
      this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));
      code = code.replace(/@path/g, '_$_path');
    }

    if (code.match(/@([.\s)[])/)) {
      this.currSandbox._$_v = _v;
      code = code.replace(/@([.\s)[])/g, '_$_v$1');
    }

    try {
      return vm.runInNewContext(code, this.currSandbox);
    } catch (e) {
      // eslint-disable-next-line no-console
      console.log(e);
      throw new Error('jsonPath: ' + e.message + ': ' + code);
    }
  }; // PUBLIC CLASS PROPERTIES AND METHODS
  // Could store the cache object itself


  JSONPath.cache = {};
  /**
   * @param {string[]} pathArr Array to convert
   * @returns {string} The path string
   */

  JSONPath.toPathString = function (pathArr) {
    var x = pathArr,
        n = x.length;
    var p = '$';

    for (var i = 1; i < n; i++) {
      if (!/^(~|\^|@.*?\(\))$/.test(x[i])) {
        p += /^[0-9*]+$/.test(x[i]) ? '[' + x[i] + ']' : "['" + x[i] + "']";
      }
    }

    return p;
  };
  /**
   * @param {string} pointer JSON Path
   * @returns {string} JSON Pointer
   */


  JSONPath.toPointer = function (pointer) {
    var x = pointer,
        n = x.length;
    var p = '';

    for (var i = 1; i < n; i++) {
      if (!/^(~|\^|@.*?\(\))$/.test(x[i])) {
        p += '/' + x[i].toString().replace(/~/g, '~0').replace(/\//g, '~1');
      }
    }

    return p;
  };
  /**
   * @param {string} expr Expression to convert
   * @returns {string[]}
   */


  JSONPath.toPathArray = function (expr) {
    var cache = JSONPath.cache;

    if (cache[expr]) {
      return cache[expr].concat();
    }

    var subx = [];
    var normalized = expr // Properties
    .replace(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\(\)/g, ';$&;') // Parenthetical evaluations (filtering and otherwise), directly
    //   within brackets or single quotes
    .replace(/[['](\??\(.*?\))[\]']/g, function ($0, $1) {
      return '[#' + (subx.push($1) - 1) + ']';
    }) // Escape periods and tildes within properties
    .replace(/\['([^'\]]*)'\]/g, function ($0, prop) {
      return "['" + prop.replace(/\./g, '%@%').replace(/~/g, '%%@@%%') + "']";
    }) // Properties operator
    .replace(/~/g, ';~;') // Split by property boundaries
    .replace(/'?\.'?(?![^[]*\])|\['?/g, ';') // Reinsert periods within properties
    .replace(/%@%/g, '.') // Reinsert tildes within properties
    .replace(/%%@@%%/g, '~') // Parent
    .replace(/(?:;)?(\^+)(?:;)?/g, function ($0, ups) {
      return ';' + ups.split('').join(';') + ';';
    }) // Descendents
    .replace(/;;;|;;/g, ';..;') // Remove trailing
    .replace(/;$|'?\]|'$/g, '');
    var exprList = normalized.split(';').map(function (exp) {
      var match = exp.match(/#(\d+)/);
      return !match || !match[1] ? exp : subx[match[1]];
    });
    cache[expr] = exprList;
    return cache[expr];
  };

  exports.JSONPath = JSONPath;

  Object.defineProperty(exports, '__esModule', { value: true });

}));


/***/ }),

/***/ 6287:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

/*
 * lib/jsprim.js: utilities for primitive JavaScript types
 */

var mod_assert = __webpack_require__(66631);
var mod_util = __webpack_require__(31669);

var mod_extsprintf = __webpack_require__(87264);
var mod_verror = __webpack_require__(81692);
var mod_jsonschema = __webpack_require__(21328);

/*
 * Public interface
 */
exports.deepCopy = deepCopy;
exports.deepEqual = deepEqual;
exports.isEmpty = isEmpty;
exports.hasKey = hasKey;
exports.forEachKey = forEachKey;
exports.pluck = pluck;
exports.flattenObject = flattenObject;
exports.flattenIter = flattenIter;
exports.validateJsonObject = validateJsonObjectJS;
exports.validateJsonObjectJS = validateJsonObjectJS;
exports.randElt = randElt;
exports.extraProperties = extraProperties;
exports.mergeObjects = mergeObjects;

exports.startsWith = startsWith;
exports.endsWith = endsWith;

exports.parseInteger = parseInteger;

exports.iso8601 = iso8601;
exports.rfc1123 = rfc1123;
exports.parseDateTime = parseDateTime;

exports.hrtimediff = hrtimeDiff;
exports.hrtimeDiff = hrtimeDiff;
exports.hrtimeAccum = hrtimeAccum;
exports.hrtimeAdd = hrtimeAdd;
exports.hrtimeNanosec = hrtimeNanosec;
exports.hrtimeMicrosec = hrtimeMicrosec;
exports.hrtimeMillisec = hrtimeMillisec;


/*
 * Deep copy an acyclic *basic* Javascript object.  This only handles basic
 * scalars (strings, numbers, booleans) and arbitrarily deep arrays and objects
 * containing these.  This does *not* handle instances of other classes.
 */
function deepCopy(obj)
{
	var ret, key;
	var marker = '__deepCopy';

	if (obj && obj[marker])
		throw (new Error('attempted deep copy of cyclic object'));

	if (obj && obj.constructor == Object) {
		ret = {};
		obj[marker] = true;

		for (key in obj) {
			if (key == marker)
				continue;

			ret[key] = deepCopy(obj[key]);
		}

		delete (obj[marker]);
		return (ret);
	}

	if (obj && obj.constructor == Array) {
		ret = [];
		obj[marker] = true;

		for (key = 0; key < obj.length; key++)
			ret.push(deepCopy(obj[key]));

		delete (obj[marker]);
		return (ret);
	}

	/*
	 * It must be a primitive type -- just return it.
	 */
	return (obj);
}

function deepEqual(obj1, obj2)
{
	if (typeof (obj1) != typeof (obj2))
		return (false);

	if (obj1 === null || obj2 === null || typeof (obj1) != 'object')
		return (obj1 === obj2);

	if (obj1.constructor != obj2.constructor)
		return (false);

	var k;
	for (k in obj1) {
		if (!obj2.hasOwnProperty(k))
			return (false);

		if (!deepEqual(obj1[k], obj2[k]))
			return (false);
	}

	for (k in obj2) {
		if (!obj1.hasOwnProperty(k))
			return (false);
	}

	return (true);
}

function isEmpty(obj)
{
	var key;
	for (key in obj)
		return (false);
	return (true);
}

function hasKey(obj, key)
{
	mod_assert.equal(typeof (key), 'string');
	return (Object.prototype.hasOwnProperty.call(obj, key));
}

function forEachKey(obj, callback)
{
	for (var key in obj) {
		if (hasKey(obj, key)) {
			callback(key, obj[key]);
		}
	}
}

function pluck(obj, key)
{
	mod_assert.equal(typeof (key), 'string');
	return (pluckv(obj, key));
}

function pluckv(obj, key)
{
	if (obj === null || typeof (obj) !== 'object')
		return (undefined);

	if (obj.hasOwnProperty(key))
		return (obj[key]);

	var i = key.indexOf('.');
	if (i == -1)
		return (undefined);

	var key1 = key.substr(0, i);
	if (!obj.hasOwnProperty(key1))
		return (undefined);

	return (pluckv(obj[key1], key.substr(i + 1)));
}

/*
 * Invoke callback(row) for each entry in the array that would be returned by
 * flattenObject(data, depth).  This is just like flattenObject(data,
 * depth).forEach(callback), except that the intermediate array is never
 * created.
 */
function flattenIter(data, depth, callback)
{
	doFlattenIter(data, depth, [], callback);
}

function doFlattenIter(data, depth, accum, callback)
{
	var each;
	var key;

	if (depth === 0) {
		each = accum.slice(0);
		each.push(data);
		callback(each);
		return;
	}

	mod_assert.ok(data !== null);
	mod_assert.equal(typeof (data), 'object');
	mod_assert.equal(typeof (depth), 'number');
	mod_assert.ok(depth >= 0);

	for (key in data) {
		each = accum.slice(0);
		each.push(key);
		doFlattenIter(data[key], depth - 1, each, callback);
	}
}

function flattenObject(data, depth)
{
	if (depth === 0)
		return ([ data ]);

	mod_assert.ok(data !== null);
	mod_assert.equal(typeof (data), 'object');
	mod_assert.equal(typeof (depth), 'number');
	mod_assert.ok(depth >= 0);

	var rv = [];
	var key;

	for (key in data) {
		flattenObject(data[key], depth - 1).forEach(function (p) {
			rv.push([ key ].concat(p));
		});
	}

	return (rv);
}

function startsWith(str, prefix)
{
	return (str.substr(0, prefix.length) == prefix);
}

function endsWith(str, suffix)
{
	return (str.substr(
	    str.length - suffix.length, suffix.length) == suffix);
}

function iso8601(d)
{
	if (typeof (d) == 'number')
		d = new Date(d);
	mod_assert.ok(d.constructor === Date);
	return (mod_extsprintf.sprintf('%4d-%02d-%02dT%02d:%02d:%02d.%03dZ',
	    d.getUTCFullYear(), d.getUTCMonth() + 1, d.getUTCDate(),
	    d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(),
	    d.getUTCMilliseconds()));
}

var RFC1123_MONTHS = [
    'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
    'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var RFC1123_DAYS = [
    'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];

function rfc1123(date) {
	return (mod_extsprintf.sprintf('%s, %02d %s %04d %02d:%02d:%02d GMT',
	    RFC1123_DAYS[date.getUTCDay()], date.getUTCDate(),
	    RFC1123_MONTHS[date.getUTCMonth()], date.getUTCFullYear(),
	    date.getUTCHours(), date.getUTCMinutes(),
	    date.getUTCSeconds()));
}

/*
 * Parses a date expressed as a string, as either a number of milliseconds since
 * the epoch or any string format that Date accepts, giving preference to the
 * former where these two sets overlap (e.g., small numbers).
 */
function parseDateTime(str)
{
	/*
	 * This is irritatingly implicit, but significantly more concise than
	 * alternatives.  The "+str" will convert a string containing only a
	 * number directly to a Number, or NaN for other strings.  Thus, if the
	 * conversion succeeds, we use it (this is the milliseconds-since-epoch
	 * case).  Otherwise, we pass the string directly to the Date
	 * constructor to parse.
	 */
	var numeric = +str;
	if (!isNaN(numeric)) {
		return (new Date(numeric));
	} else {
		return (new Date(str));
	}
}


/*
 * Number.*_SAFE_INTEGER isn't present before node v0.12, so we hardcode
 * the ES6 definitions here, while allowing for them to someday be higher.
 */
var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
var MIN_SAFE_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991;


/*
 * Default options for parseInteger().
 */
var PI_DEFAULTS = {
	base: 10,
	allowSign: true,
	allowPrefix: false,
	allowTrailing: false,
	allowImprecise: false,
	trimWhitespace: false,
	leadingZeroIsOctal: false
};

var CP_0 = 0x30;
var CP_9 = 0x39;

var CP_A = 0x41;
var CP_B = 0x42;
var CP_O = 0x4f;
var CP_T = 0x54;
var CP_X = 0x58;
var CP_Z = 0x5a;

var CP_a = 0x61;
var CP_b = 0x62;
var CP_o = 0x6f;
var CP_t = 0x74;
var CP_x = 0x78;
var CP_z = 0x7a;

var PI_CONV_DEC = 0x30;
var PI_CONV_UC = 0x37;
var PI_CONV_LC = 0x57;


/*
 * A stricter version of parseInt() that provides options for changing what
 * is an acceptable string (for example, disallowing trailing characters).
 */
function parseInteger(str, uopts)
{
	mod_assert.string(str, 'str');
	mod_assert.optionalObject(uopts, 'options');

	var baseOverride = false;
	var options = PI_DEFAULTS;

	if (uopts) {
		baseOverride = hasKey(uopts, 'base');
		options = mergeObjects(options, uopts);
		mod_assert.number(options.base, 'options.base');
		mod_assert.ok(options.base >= 2, 'options.base >= 2');
		mod_assert.ok(options.base <= 36, 'options.base <= 36');
		mod_assert.bool(options.allowSign, 'options.allowSign');
		mod_assert.bool(options.allowPrefix, 'options.allowPrefix');
		mod_assert.bool(options.allowTrailing,
		    'options.allowTrailing');
		mod_assert.bool(options.allowImprecise,
		    'options.allowImprecise');
		mod_assert.bool(options.trimWhitespace,
		    'options.trimWhitespace');
		mod_assert.bool(options.leadingZeroIsOctal,
		    'options.leadingZeroIsOctal');

		if (options.leadingZeroIsOctal) {
			mod_assert.ok(!baseOverride,
			    '"base" and "leadingZeroIsOctal" are ' +
			    'mutually exclusive');
		}
	}

	var c;
	var pbase = -1;
	var base = options.base;
	var start;
	var mult = 1;
	var value = 0;
	var idx = 0;
	var len = str.length;

	/* Trim any whitespace on the left side. */
	if (options.trimWhitespace) {
		while (idx < len && isSpace(str.charCodeAt(idx))) {
			++idx;
		}
	}

	/* Check the number for a leading sign. */
	if (options.allowSign) {
		if (str[idx] === '-') {
			idx += 1;
			mult = -1;
		} else if (str[idx] === '+') {
			idx += 1;
		}
	}

	/* Parse the base-indicating prefix if there is one. */
	if (str[idx] === '0') {
		if (options.allowPrefix) {
			pbase = prefixToBase(str.charCodeAt(idx + 1));
			if (pbase !== -1 && (!baseOverride || pbase === base)) {
				base = pbase;
				idx += 2;
			}
		}

		if (pbase === -1 && options.leadingZeroIsOctal) {
			base = 8;
		}
	}

	/* Parse the actual digits. */
	for (start = idx; idx < len; ++idx) {
		c = translateDigit(str.charCodeAt(idx));
		if (c !== -1 && c < base) {
			value *= base;
			value += c;
		} else {
			break;
		}
	}

	/* If we didn't parse any digits, we have an invalid number. */
	if (start === idx) {
		return (new Error('invalid number: ' + JSON.stringify(str)));
	}

	/* Trim any whitespace on the right side. */
	if (options.trimWhitespace) {
		while (idx < len && isSpace(str.charCodeAt(idx))) {
			++idx;
		}
	}

	/* Check for trailing characters. */
	if (idx < len && !options.allowTrailing) {
		return (new Error('trailing characters after number: ' +
		    JSON.stringify(str.slice(idx))));
	}

	/* If our value is 0, we return now, to avoid returning -0. */
	if (value === 0) {
		return (0);
	}

	/* Calculate our final value. */
	var result = value * mult;

	/*
	 * If the string represents a value that cannot be precisely represented
	 * by JavaScript, then we want to check that:
	 *
	 * - We never increased the value past MAX_SAFE_INTEGER
	 * - We don't make the result negative and below MIN_SAFE_INTEGER
	 *
	 * Because we only ever increment the value during parsing, there's no
	 * chance of moving past MAX_SAFE_INTEGER and then dropping below it
	 * again, losing precision in the process. This means that we only need
	 * to do our checks here, at the end.
	 */
	if (!options.allowImprecise &&
	    (value > MAX_SAFE_INTEGER || result < MIN_SAFE_INTEGER)) {
		return (new Error('number is outside of the supported range: ' +
		    JSON.stringify(str.slice(start, idx))));
	}

	return (result);
}


/*
 * Interpret a character code as a base-36 digit.
 */
function translateDigit(d)
{
	if (d >= CP_0 && d <= CP_9) {
		/* '0' to '9' -> 0 to 9 */
		return (d - PI_CONV_DEC);
	} else if (d >= CP_A && d <= CP_Z) {
		/* 'A' - 'Z' -> 10 to 35 */
		return (d - PI_CONV_UC);
	} else if (d >= CP_a && d <= CP_z) {
		/* 'a' - 'z' -> 10 to 35 */
		return (d - PI_CONV_LC);
	} else {
		/* Invalid character code */
		return (-1);
	}
}


/*
 * Test if a value matches the ECMAScript definition of trimmable whitespace.
 */
function isSpace(c)
{
	return (c === 0x20) ||
	    (c >= 0x0009 && c <= 0x000d) ||
	    (c === 0x00a0) ||
	    (c === 0x1680) ||
	    (c === 0x180e) ||
	    (c >= 0x2000 && c <= 0x200a) ||
	    (c === 0x2028) ||
	    (c === 0x2029) ||
	    (c === 0x202f) ||
	    (c === 0x205f) ||
	    (c === 0x3000) ||
	    (c === 0xfeff);
}


/*
 * Determine which base a character indicates (e.g., 'x' indicates hex).
 */
function prefixToBase(c)
{
	if (c === CP_b || c === CP_B) {
		/* 0b/0B (binary) */
		return (2);
	} else if (c === CP_o || c === CP_O) {
		/* 0o/0O (octal) */
		return (8);
	} else if (c === CP_t || c === CP_T) {
		/* 0t/0T (decimal) */
		return (10);
	} else if (c === CP_x || c === CP_X) {
		/* 0x/0X (hexadecimal) */
		return (16);
	} else {
		/* Not a meaningful character */
		return (-1);
	}
}


function validateJsonObjectJS(schema, input)
{
	var report = mod_jsonschema.validate(input, schema);

	if (report.errors.length === 0)
		return (null);

	/* Currently, we only do anything useful with the first error. */
	var error = report.errors[0];

	/* The failed property is given by a URI with an irrelevant prefix. */
	var propname = error['property'];
	var reason = error['message'].toLowerCase();
	var i, j;

	/*
	 * There's at least one case where the property error message is
	 * confusing at best.  We work around this here.
	 */
	if ((i = reason.indexOf('the property ')) != -1 &&
	    (j = reason.indexOf(' is not defined in the schema and the ' +
	    'schema does not allow additional properties')) != -1) {
		i += 'the property '.length;
		if (propname === '')
			propname = reason.substr(i, j - i);
		else
			propname = propname + '.' + reason.substr(i, j - i);

		reason = 'unsupported property';
	}

	var rv = new mod_verror.VError('property "%s": %s', propname, reason);
	rv.jsv_details = error;
	return (rv);
}

function randElt(arr)
{
	mod_assert.ok(Array.isArray(arr) && arr.length > 0,
	    'randElt argument must be a non-empty array');

	return (arr[Math.floor(Math.random() * arr.length)]);
}

function assertHrtime(a)
{
	mod_assert.ok(a[0] >= 0 && a[1] >= 0,
	    'negative numbers not allowed in hrtimes');
	mod_assert.ok(a[1] < 1e9, 'nanoseconds column overflow');
}

/*
 * Compute the time elapsed between hrtime readings A and B, where A is later
 * than B.  hrtime readings come from Node's process.hrtime().  There is no
 * defined way to represent negative deltas, so it's illegal to diff B from A
 * where the time denoted by B is later than the time denoted by A.  If this
 * becomes valuable, we can define a representation and extend the
 * implementation to support it.
 */
function hrtimeDiff(a, b)
{
	assertHrtime(a);
	assertHrtime(b);
	mod_assert.ok(a[0] > b[0] || (a[0] == b[0] && a[1] >= b[1]),
	    'negative differences not allowed');

	var rv = [ a[0] - b[0], 0 ];

	if (a[1] >= b[1]) {
		rv[1] = a[1] - b[1];
	} else {
		rv[0]--;
		rv[1] = 1e9 - (b[1] - a[1]);
	}

	return (rv);
}

/*
 * Convert a hrtime reading from the array format returned by Node's
 * process.hrtime() into a scalar number of nanoseconds.
 */
function hrtimeNanosec(a)
{
	assertHrtime(a);

	return (Math.floor(a[0] * 1e9 + a[1]));
}

/*
 * Convert a hrtime reading from the array format returned by Node's
 * process.hrtime() into a scalar number of microseconds.
 */
function hrtimeMicrosec(a)
{
	assertHrtime(a);

	return (Math.floor(a[0] * 1e6 + a[1] / 1e3));
}

/*
 * Convert a hrtime reading from the array format returned by Node's
 * process.hrtime() into a scalar number of milliseconds.
 */
function hrtimeMillisec(a)
{
	assertHrtime(a);

	return (Math.floor(a[0] * 1e3 + a[1] / 1e6));
}

/*
 * Add two hrtime readings A and B, overwriting A with the result of the
 * addition.  This function is useful for accumulating several hrtime intervals
 * into a counter.  Returns A.
 */
function hrtimeAccum(a, b)
{
	assertHrtime(a);
	assertHrtime(b);

	/*
	 * Accumulate the nanosecond component.
	 */
	a[1] += b[1];
	if (a[1] >= 1e9) {
		/*
		 * The nanosecond component overflowed, so carry to the seconds
		 * field.
		 */
		a[0]++;
		a[1] -= 1e9;
	}

	/*
	 * Accumulate the seconds component.
	 */
	a[0] += b[0];

	return (a);
}

/*
 * Add two hrtime readings A and B, returning the result as a new hrtime array.
 * Does not modify either input argument.
 */
function hrtimeAdd(a, b)
{
	assertHrtime(a);

	var rv = [ a[0], a[1] ];

	return (hrtimeAccum(rv, b));
}


/*
 * Check an object for unexpected properties.  Accepts the object to check, and
 * an array of allowed property names (strings).  Returns an array of key names
 * that were found on the object, but did not appear in the list of allowed
 * properties.  If no properties were found, the returned array will be of
 * zero length.
 */
function extraProperties(obj, allowed)
{
	mod_assert.ok(typeof (obj) === 'object' && obj !== null,
	    'obj argument must be a non-null object');
	mod_assert.ok(Array.isArray(allowed),
	    'allowed argument must be an array of strings');
	for (var i = 0; i < allowed.length; i++) {
		mod_assert.ok(typeof (allowed[i]) === 'string',
		    'allowed argument must be an array of strings');
	}

	return (Object.keys(obj).filter(function (key) {
		return (allowed.indexOf(key) === -1);
	}));
}

/*
 * Given three sets of properties "provided" (may be undefined), "overrides"
 * (required), and "defaults" (may be undefined), construct an object containing
 * the union of these sets with "overrides" overriding "provided", and
 * "provided" overriding "defaults".  None of the input objects are modified.
 */
function mergeObjects(provided, overrides, defaults)
{
	var rv, k;

	rv = {};
	if (defaults) {
		for (k in defaults)
			rv[k] = defaults[k];
	}

	if (provided) {
		for (k in provided)
			rv[k] = provided[k];
	}

	if (overrides) {
		for (k in overrides)
			rv[k] = overrides[k];
	}

	return (rv);
}


/***/ }),

/***/ 51531:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const EventEmitter = __webpack_require__(28614);
const JSONB = __webpack_require__(22820);

const loadStore = opts => {
	const adapters = {
		redis: '@keyv/redis',
		mongodb: '@keyv/mongo',
		mongo: '@keyv/mongo',
		sqlite: '@keyv/sqlite',
		postgresql: '@keyv/postgres',
		postgres: '@keyv/postgres',
		mysql: '@keyv/mysql'
	};
	if (opts.adapter || opts.uri) {
		const adapter = opts.adapter || /^[^:]*/.exec(opts.uri)[0];
		return new (require(adapters[adapter]))(opts);
	}
	return new Map();
};

class Keyv extends EventEmitter {
	constructor(uri, opts) {
		super();
		this.opts = Object.assign(
			{
				namespace: 'keyv',
				serialize: JSONB.stringify,
				deserialize: JSONB.parse
			},
			(typeof uri === 'string') ? { uri } : uri,
			opts
		);

		if (!this.opts.store) {
			const adapterOpts = Object.assign({}, this.opts);
			this.opts.store = loadStore(adapterOpts);
		}

		if (typeof this.opts.store.on === 'function') {
			this.opts.store.on('error', err => this.emit('error', err));
		}

		this.opts.store.namespace = this.opts.namespace;
	}

	_getKeyPrefix(key) {
		return `${this.opts.namespace}:${key}`;
	}

	get(key) {
		key = this._getKeyPrefix(key);
		const store = this.opts.store;
		return Promise.resolve()
			.then(() => store.get(key))
			.then(data => {
				data = (typeof data === 'string') ? this.opts.deserialize(data) : data;
				if (data === undefined) {
					return undefined;
				}
				if (typeof data.expires === 'number' && Date.now() > data.expires) {
					this.delete(key);
					return undefined;
				}
				return data.value;
			});
	}

	set(key, value, ttl) {
		key = this._getKeyPrefix(key);
		if (typeof ttl === 'undefined') {
			ttl = this.opts.ttl;
		}
		if (ttl === 0) {
			ttl = undefined;
		}
		const store = this.opts.store;

		return Promise.resolve()
			.then(() => {
				const expires = (typeof ttl === 'number') ? (Date.now() + ttl) : null;
				value = { value, expires };
				return store.set(key, this.opts.serialize(value), ttl);
			})
			.then(() => true);
	}

	delete(key) {
		key = this._getKeyPrefix(key);
		const store = this.opts.store;
		return Promise.resolve()
			.then(() => store.delete(key));
	}

	clear() {
		const store = this.opts.store;
		return Promise.resolve()
			.then(() => store.clear());
	}
}

module.exports = Keyv;


/***/ }),

/***/ 44793:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Fetches a bearer token via comamnd
 */



// for API compatability
/* eslint no-sync: 0 */
const spawnSync = __webpack_require__(63129).spawnSync

function getProperty (propertyName, object) {
  // remove leading .
  if (propertyName.match(/^\./)) {
    propertyName = propertyName.replace(/^\./, '')
  }

  const parts = propertyName.split('.')
  const length = parts.length

  let property = object || this
  for (let i = 0; i < length; i++) {
    property = property[parts[i]]
  }

  return property
}

module.exports = {
  refresh: function (config) {
    return new Promise((resolve, reject) => {
      const cmd = config['cmd-path']
      const args = config['cmd-args'].split(' ')
      const cmdEnv = config['cmd-env']

      let output

      if (process.platform === 'win32') {
        output = spawnSync(cmd, args, {
          env: Object.assign({}, process.env, cmdEnv),
          windowsHide: true,
          shell: true
        })
      } else {
        output = spawnSync(cmd, args, {
          env: Object.assign({}, process.env, cmdEnv),
          windowsHide: true
        })
      }

      let result
      try {
        result = JSON.parse(output.stdout.toString('utf8'))
      } catch (err) {
        return reject(new Error('Failed to run cmd.'))
      }

      const token = getProperty(config['token-key'].replace(/[{}]+/g, ''), result)

      return resolve(token)
    })
  }
}


/***/ }),

/***/ 54562:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Refreshes a OpenID token.
 */



const Issuer = __webpack_require__(53140).Issuer

module.exports = {
  refresh: function (config) {
    return new Promise((resolve, reject) => {
      Issuer.discover(config['idp-issuer-url'])
        .then(function (ourIssuer) {
          const client = new ourIssuer.Client({
            client_id: config['client-id'],
            client_secret: config['client-secret']
          })

          return client.refresh(config['refresh-token'])
        })
        .then(tokenSet => {
          return resolve(tokenSet.id_token)
        })
        .catch(reject)
    })
  }
}


/***/ }),

/***/ 78412:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function __ncc_wildcard$0 (arg) {
  if (arg === "cmd") return __webpack_require__(44793);
  else if (arg === "openid") return __webpack_require__(54562);
}
'use strict'

const { convertKubeconfig } = __webpack_require__(91899)
const deprecate = __webpack_require__(18883)('kubernetes-client')
const JSONStream = __webpack_require__(81676)
const pump = __webpack_require__(18341)
const qs = __webpack_require__(22760)
const request = __webpack_require__(48699)
const urljoin = __webpack_require__(12821)
const WebSocket = __webpack_require__(8120)

/**
 * Refresh whatever authentication {type} is.
 * @param {String} type - type of authentication
 * @param {Object} config - auth provider config
 * @returns {Promise} with request friendly auth object
 */
function refreshAuth (type, config) {
  return new Promise((resolve, reject) => {
    const provider = __ncc_wildcard$0(type)
    provider.refresh(config)
      .then(result => {
        const auth = {
          bearer: result
        }

        return resolve(auth)
      })
      .catch(err => reject(err))
  })
}

const execChannels = [
  'stdin',
  'stdout',
  'stderr',
  'error',
  'resize'
]

/**
 * Determine whether a failed Kubernetes API response is asking for an upgrade
 * @param {object} body - response body object from Kubernetes
 * @property {string} status - request status
 * @property {number} code - previous request's response code
 * @property {message} message - previous request response message
 * @returns {boolean} Upgrade the request
 */

function isUpgradeRequired (body) {
  return body.status === 'Failure' &&
    body.code === 400 &&
    body.message === 'Upgrade request required'
}

/**
 * Upgrade a request into a Websocket transaction & process the result
 * @param {ApiRequestOptions} options - Options object
 * @param {callback} cb - The callback that handles the response
 */

function upgradeRequest (options, cb) {
  const queryParams = qs.stringify(options.qs, { indices: false })
  const wsUrl = urljoin(options.baseUrl, options.uri, `?${queryParams}`)
  const protocol = 'base64.channel.k8s.io'

  // Passing authorization header
  options.headers = {
    ...options.headers,
    authorization: `Bearer ${options.auth.bearer}`
  }
  const ws = new WebSocket(wsUrl, protocol, options)

  const messages = []
  ws.on('message', (msg) => {
    const channel = execChannels[msg.slice(0, 1)]
    const message = Buffer.from(msg.slice(1), 'base64').toString('ascii')
    messages.push({ channel, message })
  })

  ws.on('error', (err) => {
    err.messages = messages
    cb(err, messages)
  })

  ws.on('close', (code, reason) => cb(null, {
    messages,
    body: messages.map(({ message }) => message).join(''),
    code,
    reason
  }))

  return ws
}

class Request {
  /**
   * Internal representation of HTTP request object.
   *
   * @param {object} options - Options object
   * @param {string} options.url - Kubernetes API URL
   * @param {object} options.auth - request library auth object
   * @param {string} options.ca - Certificate authority
   * @param {string} options.cert - Client certificate
   * @param {string} options.key - Client key
   * @param {boolean} options.insecureSkipTlsVerify - Skip the validity check
   *   on the server's certificate.
   */
  constructor (options) {
    this.requestOptions = options.request || {}

    let convertedOptions
    if (!options.kubeconfig) {
      deprecate('Request() without a .kubeconfig option, see ' +
                'https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md')
      convertedOptions = options
    } else {
      convertedOptions = convertKubeconfig(options.kubeconfig)
    }

    this.requestOptions.qsStringifyOptions = { indices: false }
    this.requestOptions.baseUrl = convertedOptions.url
    this.requestOptions.ca = convertedOptions.ca
    this.requestOptions.cert = convertedOptions.cert
    this.requestOptions.key = convertedOptions.key
    if ('insecureSkipTlsVerify' in convertedOptions) {
      this.requestOptions.strictSSL = !convertedOptions.insecureSkipTlsVerify
    }
    if ('timeout' in convertedOptions) {
      this.requestOptions.timeout = convertedOptions.timeout
    }

    this.authProvider = {
      type: null
    }
    if (convertedOptions.auth) {
      this.requestOptions.auth = convertedOptions.auth
      if (convertedOptions.auth.provider) {
        this.requestOptions.auth = convertedOptions.auth.request
        this.authProvider = convertedOptions.auth.provider
      }
    }
  }

  _request (options, cb) {
    const auth = this.authProvider
    return request(options, (err, res, body) => {
      if (err) return cb(err)

      if (body && isUpgradeRequired(body)) {
        return upgradeRequest(options, cb)
      }

      // Refresh auth if 401 or 403
      if ((res.statusCode === 401 || res.statusCode === 403) && auth.type) {
        return refreshAuth(auth.type, auth.config)
          .then(newAuth => {
            this.requestOptions.auth = newAuth
            options.auth = newAuth
            return request(options, (err, res, body) => {
              if (err) return cb(err)
              return cb(null, { statusCode: res.statusCode, body })
            })
          })
          .catch(err => cb(err))
      }

      return cb(null, { statusCode: res.statusCode, body: body })
    })
  }

  async getLogByteStream (options) {
    return this.http(Object.assign({ stream: true }, options))
  }

  async getWatchObjectStream (options) {
    const jsonStream = new JSONStream()
    const stream = this.http(Object.assign({ stream: true }, options))
    pump(stream, jsonStream)
    return jsonStream
  }

  /**
   * @param {object} options - Options object
   * @param {Stream} options.stdin - optional stdin Readable stream
   * @param {Stream} options.stdout - optional stdout Writeable stream
   * @param {Stream} options.stderr - optional stdout Writeable stream
   * @returns {Promise} Promise resolving to a Kubernetes V1 Status object and a WebSocket
   */
  async getWebSocket (options) {
    throw new Error('Request.getWebSocket not implemented')
  }

  /**
   * @typedef {object} ApiRequestOptions
   * @property {object} body - Request body
   * @property {object} headers - Headers object
   * @property {string} path - version-less path
   * @property {object} qs - {@link https://www.npmjs.com/package/request#requestoptions-callback|
   *                          request query parameter}
   */

  /**
   * Invoke a REST request against the Kubernetes API server
   * @param {string} method - HTTP method, passed directly to `request`
   * @param {ApiRequestOptions} options - Options object
   * @param {callback} cb - The callback that handles the response
   * @returns {Stream} If cb is falsy, return a stream
   */
  http (options) {
    const uri = options.pathname
    const requestOptions = Object.assign({
      method: options.method,
      uri,
      body: options.body,
      json: 'json' in options ? Boolean(options.json) : true,
      qs: options.parameters || options.qs,
      headers: options.headers
    }, this.requestOptions)

    if (options.noAuth) {
      delete requestOptions.auth
    }

    if (options.stream) return request(requestOptions)

    return new Promise((resolve, reject) => {
      this._request(requestOptions, (err, res) => {
        if (err) return reject(err)
        if (res.statusCode < 200 || res.statusCode > 299) {
          const error = new Error(res.body.message || res.body)
          // .code is backwards compatible with pre-5.0.0 code.
          error.code = res.statusCode
          error.statusCode = res.statusCode
          return reject(error)
        }
        resolve(res)
      })
    })
  }
}

module.exports = Request


/***/ }),

/***/ 91899:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

/* eslint no-process-env: 0 no-sync:0 */

const deprecate = __webpack_require__(18883)('kubernetes-client')
const fs = __webpack_require__(35747)
const path = __webpack_require__(85622)
const yaml = __webpack_require__(21917)
const merge = __webpack_require__(56323)

const root = process.env.KUBERNETES_CLIENT_SERVICEACCOUNT_ROOT || '/var/run/secrets/kubernetes.io/serviceaccount/'
const caPath = path.join(root, 'ca.crt')
const tokenPath = path.join(root, 'token')
const namespacePath = path.join(root, 'namespace')

function convertKubeconfig (kubeconfig) {
  const context = kubeconfig.getCurrentContext()
  const cluster = kubeconfig.getCurrentCluster()
  const user = kubeconfig.getCurrentUser()
  const namespace = context.namespace

  let ca
  let insecureSkipTlsVerify = false
  if (cluster) {
    if (cluster.caFile) {
      ca = fs.readFileSync(path.normalize(cluster.caFile))
    } else if (cluster.caData) {
      ca = Buffer.from(cluster.caData, 'base64').toString()
    }
    insecureSkipTlsVerify = cluster.skipTLSVerify
  }

  let cert
  let key

  let auth = {}
  if (user) {
    if (user.certFile) {
      cert = fs.readFileSync(path.normalize(user.certFile))
    } else if (user.certData) {
      cert = Buffer.from(user.certData, 'base64').toString()
    }

    if (user.keyFile) {
      key = fs.readFileSync(path.normalize(user.keyFile))
    } else if (user.keyData) {
      key = Buffer.from(user.keyData, 'base64').toString()
    }

    if (user.token) {
      auth.bearer = user.token
    }

    if (user.authProvider) {
      const config = user.authProvider.config

      // if we can't determine the type, just fail later (or don't refresh).
      let type = null
      let token = null
      if (config['cmd-path']) {
        type = 'cmd'
        token = config['access-token']
      } else if (config['idp-issuer-url']) {
        type = 'openid'
        token = config['id-token']
      }

      // If we have just an access-token, allow that... will expire later though.
      if (config['access-token'] && !type) {
        token = config['access-token']
      }

      auth = {
        request: {
          bearer: token
        },
        provider: {
          config,
          type
        }
      }
    }

    if (user.exec) {
      const env = {}
      if (user.exec.env) {
        user.exec.env.forEach(variable => {
          env[variable.name] = variable.value
        })
      }
      let args = ''
      if (user.exec.args) {
        args = user.exec.args.join(' ')
      }
      auth = {
        provider: {
          type: 'cmd',
          config: {
            'cmd-args': args,
            'cmd-path': user.exec.command,
            'token-key': 'status.token',
            'cmd-env': env
          }
        }
      }
    }

    if (user.username) auth.user = user.username
    if (user.password) auth.pass = user.password
  }

  return {
    url: cluster.server,
    auth: Object.keys(auth).length ? auth : null,
    ca,
    insecureSkipTlsVerify,
    namespace,
    cert,
    key
  }
}

module.exports.convertKubeconfig = convertKubeconfig

function defaultConfigPaths () {
  if (process.env.KUBECONFIG) {
    // From https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/#set-the-kubeconfig-environment-variable
    // KUBECONFIG can support multiple config files.
    const delimiter = process.platform === 'win32' ? ';' : ':'
    return process.env.KUBECONFIG.split(delimiter)
  }
  const homeDir = process.env[(process.platform === 'win32') ? 'USERPROFILE' : 'HOME']
  return [path.join(homeDir, '.kube', 'config')]
}

/**
* Returns with in cluster config
* Based on: https://github.com/kubernetes/client-go/blob/124670e99da15091e13916f0ad4b2b2df2a39cd5/rest/config.go#L274
* and http://kubernetes.io/docs/user-guide/accessing-the-cluster/#accessing-the-api-from-a-pod
*
* @function getInCluster
* @returns {Object} { url, cert, auth, namespace }
*/
function getInCluster () {
  const host = process.env.KUBERNETES_SERVICE_HOST
  const port = process.env.KUBERNETES_SERVICE_PORT
  if (!host || !port) {
    throw new TypeError(
      'Unable to load in-cluster configuration, KUBERNETES_SERVICE_HOST' +
      ' and KUBERNETES_SERVICE_PORT must be defined')
  }

  const ca = fs.readFileSync(caPath, 'utf8')
  const bearer = fs.readFileSync(tokenPath, 'utf8')
  const namespace = fs.readFileSync(namespacePath, 'utf8')

  return {
    url: `https://${host}:${port}`,
    ca,
    auth: { bearer },
    namespace
  }
}

module.exports.getInCluster = deprecate.function(
  getInCluster,
  'getInCluster see https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md#request-kubeconfig-')

//
// Accept a manually specified current-context to take precedence over
// `current-context`
//
/* eslint-disable complexity, max-statements */
function fromKubeconfig (kubeconfig, current) {
  if (!kubeconfig) kubeconfig = loadKubeconfig()
  // if kubeconfig is provided as a path to the yaml file,
  // or array of paths to the yaml files,
  // automatically load it.
  if (typeof kubeconfig === 'string' || Array.isArray(kubeconfig)) {
    kubeconfig = loadKubeconfig(kubeconfig)
  }

  current = current || kubeconfig['current-context']
  const context = kubeconfig.contexts
    .find(item => item.name === current).context
  const cluster = kubeconfig.clusters
    .find(item => item.name === context.cluster).cluster
  const userConfig = kubeconfig.users
    .find(user => user.name === context.user)
  const user = userConfig ? userConfig.user : null
  const namespace = context.namespace

  let ca
  let insecureSkipTlsVerify = false
  if (cluster) {
    if (cluster['certificate-authority']) {
      ca = fs.readFileSync(path.normalize(cluster['certificate-authority']))
    } else if (cluster['certificate-authority-data']) {
      ca = Buffer.from(cluster['certificate-authority-data'], 'base64').toString()
    }

    if (cluster['insecure-skip-tls-verify']) {
      insecureSkipTlsVerify = cluster['insecure-skip-tls-verify']
    }
  }

  let cert
  let key

  let auth = {}
  if (user) {
    if (user['client-certificate']) {
      cert = fs.readFileSync(path.normalize(user['client-certificate']))
    } else if (user['client-certificate-data']) {
      cert = Buffer.from(user['client-certificate-data'], 'base64').toString()
    }

    if (user['client-key']) {
      key = fs.readFileSync(path.normalize(user['client-key']))
    } else if (user['client-key-data']) {
      key = Buffer.from(user['client-key-data'], 'base64').toString()
    }

    if (user.token) {
      auth.bearer = user.token
    }

    if (user['auth-provider']) {
      const config = user['auth-provider'].config

      // if we can't determine the type, just fail later (or don't refresh).
      let type = null
      let token = null
      if (config['cmd-path']) {
        type = 'cmd'
        token = config['access-token']
      } else if (config['idp-issuer-url']) {
        type = 'openid'
        token = config['id-token']
      }

      // If we have just an access-token, allow that... will expire later though.
      if (config['access-token'] && !type) {
        token = config['access-token']
      }

      auth = {
        request: {
          bearer: token
        },
        provider: {
          config,
          type
        }
      }
    }

    if (user.exec) {
      const env = {}
      if (user.exec.env) {
        user.exec.env.forEach(variable => {
          env[variable.name] = variable.value
        })
      }
      let args = ''
      if (user.exec.args) {
        args = user.exec.args.join(' ')
      }
      auth = {
        provider: {
          type: 'cmd',
          config: {
            'cmd-args': args,
            'cmd-path': user.exec.command,
            'token-key': 'status.token',
            'cmd-env': env
          }
        }
      }
    }

    if (user.username) auth.user = user.username
    if (user.password) auth.pass = user.password
  }

  return {
    url: cluster.server,
    namespace,
    auth: Object.keys(auth).length ? auth : null,
    ca,
    insecureSkipTlsVerify,
    key,
    cert
  }
}
/* eslint-enable complexity, max-statements */

module.exports.fromKubeconfig = deprecate.function(
  fromKubeconfig,
  'fromKubeconfig see https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md#request-kubeconfig-')

function mapCertificates (cfgPath, config) {
  const configDir = path.dirname(cfgPath)

  if (config.clusters) {
    config.clusters.filter(cluster => cluster.cluster['certificate-authority']).forEach(cluster => {
      cluster.cluster['certificate-authority'] = path.resolve(configDir, cluster.cluster['certificate-authority'])
    })
  }

  if (config.users) {
    config.users.filter(user => user.user['client-certificate']).forEach(user => {
      user.user['client-certificate'] = path.resolve(configDir, user.user['client-certificate'])
    })

    config.users.filter(user => user.user['client-key']).forEach(user => {
      user.user['client-key'] = path.resolve(configDir, user.user['client-key'])
    })
  }

  return config
}

function loadKubeconfig (cfgPath) {
  let cfgPaths

  if (!cfgPath) {
    cfgPaths = defaultConfigPaths()
  } else if (Array.isArray(cfgPath)) {
    cfgPaths = cfgPath
  } else {
    cfgPaths = [cfgPath]
  }

  const configs = cfgPaths.map(cfgPath => {
    const config = yaml.safeLoad(fs.readFileSync(cfgPath))
    return mapCertificates(cfgPath, config)
  })

  return merge.all(configs)
}

module.exports.loadKubeconfig = deprecate.function(
  loadKubeconfig,
  'loadKubeconfig see https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md#request-kubeconfig-')


/***/ }),

/***/ 67002:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Request = __webpack_require__(78412)

Request.config = __webpack_require__(91899)

module.exports = Request


/***/ }),

/***/ 74790:
/***/ ((module) => {

"use strict";


// We support the full names and all the abbbreviated aliases:
//   http://kubernetes.io/docs/user-guide/kubectl-overview/
// and anything else we think is useful.
const resourceAliases = {
  clusterroles: [],
  clusterrolebindings: [],
  componentstatuses: ['cs'],
  configmaps: ['cm'],
  cronjobs: [],
  customresourcedefinitions: ['crd'],
  daemonsets: ['ds'],
  deployments: ['deploy'],
  events: ['ev'],
  endpoints: ['ep'],
  horizontalpodautoscalers: ['hpa'],
  ingresses: ['ing'],
  jobs: [],
  limitranges: ['limits'],
  namespaces: ['ns'],
  nodes: ['no'],
  persistentvolumes: ['pv'],
  persistentvolumeclaims: ['pvc'],
  // Deprecated name of statefulsets in kubernetes 1.4
  petsets: [],
  pods: ['po'],
  replicationcontrollers: ['rc'],
  replicasets: ['rs'],
  resourcequotas: ['quota'],
  roles: [],
  rolebindings: [],
  // Deprecated name of cronjobs in kubernetes 1.4
  scheduledjobs: [],
  secrets: [],
  serviceaccounts: [],
  services: ['svc'],
  statefulsets: [],
  // Deprecated name of customresourcedefinition in kubernetes 1.7
  thirdpartyresources: []
}

const esPlurals = {
  componentstatuses: true,
  ingresses: true
}

const excludeFromAliasing = {
  apis: true,
  status: true
}

module.exports = function (resourceType) {
  let aliases = [resourceType]
  if (resourceAliases[resourceType]) {
    aliases = aliases.concat(resourceAliases[resourceType])
  }

  //
  // NOTE(sbw): try to catch things that shouldn't have singular aliases. This
  // fails on some relatively common resources, like "status".
  //
  if ((resourceType.slice(-1) !== 's') || (resourceType in excludeFromAliasing)) {
    return aliases
  }

  const trimLength = esPlurals[resourceType] ? 2 : 1
  const single = resourceType.substr(0, resourceType.length - trimLength)
  aliases.push(single)
  return aliases
}


/***/ }),

/***/ 8428:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const k8s = __webpack_require__(89679)

module.exports = k8s.KubeConfig


/***/ }),

/***/ 98862:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const deprecate = __webpack_require__(18883)('kubernetes-client')

module.exports = {
  Client: __webpack_require__(10760).Client,
  Client1_13: __webpack_require__(10760).Client1_13,
  alias: __webpack_require__(74790),
  config: __webpack_require__(91899),
  KubeConfig: __webpack_require__(8428)
}

deprecate.property(
  module.exports,
  'config',
  'require(\'kubernetes-client\').config,' +
    ' use require(\'kubernetes-client/backends/request\').config.')


/***/ }),

/***/ 10760:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

/* eslint-disable no-sync */

/**
 * @file Convert a Swagger specification into a kubernetes-client API client.
 *
 * Represent Swagger a Path Item Object [1] with chains of objects:
 *
 *   /api/v1/namespaces -> api.v1.namespaces
 *
 * Associate operations on a Path Item Object with functions:
 *
 *   GET /api/v1/namespaces -> api.v1.namespaces.get()
 *
 * Represent Path Templating [2] with function calls:
 *
 *   /api/v1/namespaces/{namespace}/pods -> api.v1.namespaces(namespace).pods
 *
 * Iterate over a Paths Object [3] to generate whole API client.
 *
 * [1]: https://swagger.io/specification/#pathItemObject
 * [2]: https://swagger.io/specification/#pathTemplating
 * [3]: https://swagger.io/specification/#pathsObject
 */

const Component = __webpack_require__(96789).Component
const deprecate = __webpack_require__(18883)('kubernetes-client')
const fs = __webpack_require__(35747)
const KubeConfig = __webpack_require__(8428)
const path = __webpack_require__(85622)
const zlib = __webpack_require__(78761)

const getAliases = __webpack_require__(74790)
const Request = __webpack_require__(67002)

class Root extends Component {
  _getSpec (pathname) {
    return this.backend.http({ method: 'GET', pathname })
      .then(res => {
        return res.body
      })
  }

  /**
   * Load swagger.json from kube-apiserver.
   * @returns {Promise} Promise
   */
  loadSpec () {
    return this._getSpec('/openapi/v2')
      .catch(() => {
        return this._getSpec('/swagger.json')
      })
      .then(res => {
        this._addSpec(res)
        return this
      })
      .catch(err => {
        throw new Error(`Failed to get /openapi/v2 and /swagger.json: ${err.message}`)
      })
  }

  _getLogByteStream (options) {
    return this.backend.getLogByteStream(Object.assign({
      method: 'GET',
      pathItemObject: this.pathItemObject,
      pathname: this.getPath(),
      pathnameParameters: this.getPathnameParameters()
    }, options))
  }

  async _getWatchObjectStream (options) {
    return this.backend.getWatchObjectStream(Object.assign({
      method: 'GET',
      pathItemObject: this.pathItemObject,
      pathname: this.getPath(),
      pathnameParameters: this.getPathnameParameters()
    }, options))
  }

  _addEndpoint (endpoint) {
    const component = super._addEndpoint(endpoint)
    if (!component) return component

    //
    // Deprecate stream API.
    //
    if (endpoint.pathItem.get) {
      const action = endpoint.pathItem.get['x-kubernetes-action']
      if (action === 'watch' || action === 'watchlist') {
        component.getStream = deprecate.function(
          component.getStream,
          '.getStream use .getObjectStream, see ' +
            'https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md')
        component.getObjectStream = component._getWatchObjectStream
      } else if (endpoint.name === '/api/v1/namespaces/{namespace}/pods/{name}/log') {
        component.getStream = deprecate.function(
          component.getStream,
          '.getStream use .getByteStream, see ' +
            'https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md')
        component.getByteStream = component._getLogByteStream
      } else {
        component.getStream = deprecate.function(
          component.getStream,
          '.getStream see https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md')
      }
    }
  }

  addCustomResourceDefinition (manifest) {
    const group = manifest.spec.group
    const name = manifest.spec.names.plural
    const namespace = manifest.spec.scope === 'Cluster' ? '' : '/namespaces/{namespace}'

    const addSpec = (version) => {
      const spec = { paths: {} }
      //
      // Make just enough of Swagger spec to generate some useful endpoints.
      //
      const templatePath = `/apis/${group}/${version}${namespace}/${name}/{name}`
      spec.paths[templatePath] = ['delete', 'get', 'patch', 'put'].reduce((acc, method) => {
        acc[method] = { operationId: `${method}Template${name}` }
        return acc
      }, {})

      const resourcePath = `/apis/${group}/${version}${namespace}/${name}`
      spec.paths[resourcePath] = ['get', 'post'].reduce((acc, method) => {
        acc[method] = { operationId: `${method}${name}` }
        return acc
      }, {})
      //
      // Namespaced CRDs get a cluster-level GET endpoint.
      // Similar to GET /api/v1/pods.
      //
      if (manifest.spec.scope === 'Namespaced') {
        const clusterPath = `/apis/${group}/${version}/${name}`
        spec.paths[clusterPath] = {
          get: {
            operationId: `getCluster${name}`
          }
        }
      }

      const watchPaths = {
        watchCluster: `/apis/${group}/${version}/watch/${name}`,
        watchNamespace: `/apis/${group}/${version}/watch${namespace}/${name}`,
        watchResource: `/apis/${group}/${version}/watch${namespace}/${name}/{name}`
      }
      Object.keys(watchPaths).forEach(operationId => {
        const watchPath = watchPaths[operationId]
        spec.paths[watchPath] = {
          get: {
            'x-kubernetes-action': 'watch',
            operationId: `operationId${name}`
          }
        }
      })

      // Add status endpoint - see https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#customresourcesubresourcestatus-v1beta1-apiextensions-k8s-io
      if (manifest.spec.subresources && manifest.spec.subresources.status) {
        const statusPath = `/apis/${group}/${version}${namespace}/${name}/{name}/status`
        spec.paths[statusPath] = ['get', 'put'].reduce((acc, method) => {
          acc[method] = { operationId: `${method}Template${name}` }
          return acc
        }, {})
      }

      // Add scale endpoints - see https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#customresourcesubresourcescale-v1beta1-apiextensions-k8s-io
      if (manifest.spec.subresources && manifest.spec.subresources.scale) {
        const statusPath = `/apis/${group}/${version}${namespace}/${name}/{name}/scale`
        spec.paths[statusPath] = ['get', 'put'].reduce((acc, method) => {
          acc[method] = { operationId: `${method}Template${name}` }
          return acc
        }, {})
      }

      this._addSpec(spec)
    }

    if (manifest.spec.version) {
      addSpec(manifest.spec.version)
    } else {
      const versions = manifest.spec.versions || []
      versions.forEach(version => addSpec(version.name))
    }
  }
}

class Client {
  constructor (options) {
    options = options || {}

    if (options.config) {
      deprecate('Client({ config }), see ' +
                'https://github.com/godaddy/kubernetes-client/blob/master/merging-with-kubernetes.md')
    }

    let backend = options.backend
    if (!backend) {
      if (options.config) {
        backend = new Request(options.config)
      } else {
        const kubeconfig = new KubeConfig()
        kubeconfig.loadFromDefault()
        backend = new Request({ kubeconfig })
      }
    }

    let spec = options.spec
    if (!spec && options.version) {
      const swaggerPath = path.join(
        __dirname,
        'specs',
        `swagger-${options.version}.json.gz`)
      spec = JSON.parse(zlib.gunzipSync(fs.readFileSync(swaggerPath)))
    }

    const root = new Root({ splits: [], backend, getNames: options.getNames || getAliases })
    if (spec) root._addSpec(spec)
    return root
  }
}

// eslint-disable-next-line camelcase
class Client1_13 extends Client {
  constructor (options) {
    super(Object.assign({}, options, { version: '1.13' }))
  }
}

module.exports = {
  Client,
  Client1_13
}


/***/ }),

/***/ 8120:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const WebSocket = __webpack_require__(30418);

WebSocket.createWebSocketStream = __webpack_require__(61997);
WebSocket.Server = __webpack_require__(89535);
WebSocket.Receiver = __webpack_require__(1937);
WebSocket.Sender = __webpack_require__(7748);

module.exports = WebSocket;


/***/ }),

/***/ 20034:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { EMPTY_BUFFER } = __webpack_require__(94122);

/**
 * Merges an array of buffers into a new buffer.
 *
 * @param {Buffer[]} list The array of buffers to concat
 * @param {Number} totalLength The total length of buffers in the list
 * @return {Buffer} The resulting buffer
 * @public
 */
function concat(list, totalLength) {
  if (list.length === 0) return EMPTY_BUFFER;
  if (list.length === 1) return list[0];

  const target = Buffer.allocUnsafe(totalLength);
  let offset = 0;

  for (let i = 0; i < list.length; i++) {
    const buf = list[i];
    target.set(buf, offset);
    offset += buf.length;
  }

  if (offset < totalLength) return target.slice(0, offset);

  return target;
}

/**
 * Masks a buffer using the given mask.
 *
 * @param {Buffer} source The buffer to mask
 * @param {Buffer} mask The mask to use
 * @param {Buffer} output The buffer where to store the result
 * @param {Number} offset The offset at which to start writing
 * @param {Number} length The number of bytes to mask.
 * @public
 */
function _mask(source, mask, output, offset, length) {
  for (let i = 0; i < length; i++) {
    output[offset + i] = source[i] ^ mask[i & 3];
  }
}

/**
 * Unmasks a buffer using the given mask.
 *
 * @param {Buffer} buffer The buffer to unmask
 * @param {Buffer} mask The mask to use
 * @public
 */
function _unmask(buffer, mask) {
  // Required until https://github.com/nodejs/node/issues/9006 is resolved.
  const length = buffer.length;
  for (let i = 0; i < length; i++) {
    buffer[i] ^= mask[i & 3];
  }
}

/**
 * Converts a buffer to an `ArrayBuffer`.
 *
 * @param {Buffer} buf The buffer to convert
 * @return {ArrayBuffer} Converted buffer
 * @public
 */
function toArrayBuffer(buf) {
  if (buf.byteLength === buf.buffer.byteLength) {
    return buf.buffer;
  }

  return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
}

/**
 * Converts `data` to a `Buffer`.
 *
 * @param {*} data The data to convert
 * @return {Buffer} The buffer
 * @throws {TypeError}
 * @public
 */
function toBuffer(data) {
  toBuffer.readOnly = true;

  if (Buffer.isBuffer(data)) return data;

  let buf;

  if (data instanceof ArrayBuffer) {
    buf = Buffer.from(data);
  } else if (ArrayBuffer.isView(data)) {
    buf = Buffer.from(data.buffer, data.byteOffset, data.byteLength);
  } else {
    buf = Buffer.from(data);
    toBuffer.readOnly = false;
  }

  return buf;
}

try {
  const bufferUtil = __webpack_require__(71269);
  const bu = bufferUtil.BufferUtil || bufferUtil;

  module.exports = {
    concat,
    mask(source, mask, output, offset, length) {
      if (length < 48) _mask(source, mask, output, offset, length);
      else bu.mask(source, mask, output, offset, length);
    },
    toArrayBuffer,
    toBuffer,
    unmask(buffer, mask) {
      if (buffer.length < 32) _unmask(buffer, mask);
      else bu.unmask(buffer, mask);
    }
  };
} catch (e) /* istanbul ignore next */ {
  module.exports = {
    concat,
    mask: _mask,
    toArrayBuffer,
    toBuffer,
    unmask: _unmask
  };
}


/***/ }),

/***/ 94122:
/***/ ((module) => {

"use strict";


module.exports = {
  BINARY_TYPES: ['nodebuffer', 'arraybuffer', 'fragments'],
  GUID: '258EAFA5-E914-47DA-95CA-C5AB0DC85B11',
  kStatusCode: Symbol('status-code'),
  kWebSocket: Symbol('websocket'),
  EMPTY_BUFFER: Buffer.alloc(0),
  NOOP: () => {}
};


/***/ }),

/***/ 63406:
/***/ ((module) => {

"use strict";


/**
 * Class representing an event.
 *
 * @private
 */
class Event {
  /**
   * Create a new `Event`.
   *
   * @param {String} type The name of the event
   * @param {Object} target A reference to the target to which the event was
   *     dispatched
   */
  constructor(type, target) {
    this.target = target;
    this.type = type;
  }
}

/**
 * Class representing a message event.
 *
 * @extends Event
 * @private
 */
class MessageEvent extends Event {
  /**
   * Create a new `MessageEvent`.
   *
   * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The received data
   * @param {WebSocket} target A reference to the target to which the event was
   *     dispatched
   */
  constructor(data, target) {
    super('message', target);

    this.data = data;
  }
}

/**
 * Class representing a close event.
 *
 * @extends Event
 * @private
 */
class CloseEvent extends Event {
  /**
   * Create a new `CloseEvent`.
   *
   * @param {Number} code The status code explaining why the connection is being
   *     closed
   * @param {String} reason A human-readable string explaining why the
   *     connection is closing
   * @param {WebSocket} target A reference to the target to which the event was
   *     dispatched
   */
  constructor(code, reason, target) {
    super('close', target);

    this.wasClean = target._closeFrameReceived && target._closeFrameSent;
    this.reason = reason;
    this.code = code;
  }
}

/**
 * Class representing an open event.
 *
 * @extends Event
 * @private
 */
class OpenEvent extends Event {
  /**
   * Create a new `OpenEvent`.
   *
   * @param {WebSocket} target A reference to the target to which the event was
   *     dispatched
   */
  constructor(target) {
    super('open', target);
  }
}

/**
 * Class representing an error event.
 *
 * @extends Event
 * @private
 */
class ErrorEvent extends Event {
  /**
   * Create a new `ErrorEvent`.
   *
   * @param {Object} error The error that generated this event
   * @param {WebSocket} target A reference to the target to which the event was
   *     dispatched
   */
  constructor(error, target) {
    super('error', target);

    this.message = error.message;
    this.error = error;
  }
}

/**
 * This provides methods for emulating the `EventTarget` interface. It's not
 * meant to be used directly.
 *
 * @mixin
 */
const EventTarget = {
  /**
   * Register an event listener.
   *
   * @param {String} type A string representing the event type to listen for
   * @param {Function} listener The listener to add
   * @param {Object} [options] An options object specifies characteristics about
   *     the event listener
   * @param {Boolean} [options.once=false] A `Boolean`` indicating that the
   *     listener should be invoked at most once after being added. If `true`,
   *     the listener would be automatically removed when invoked.
   * @public
   */
  addEventListener(type, listener, options) {
    if (typeof listener !== 'function') return;

    function onMessage(data) {
      listener.call(this, new MessageEvent(data, this));
    }

    function onClose(code, message) {
      listener.call(this, new CloseEvent(code, message, this));
    }

    function onError(error) {
      listener.call(this, new ErrorEvent(error, this));
    }

    function onOpen() {
      listener.call(this, new OpenEvent(this));
    }

    const method = options && options.once ? 'once' : 'on';

    if (type === 'message') {
      onMessage._listener = listener;
      this[method](type, onMessage);
    } else if (type === 'close') {
      onClose._listener = listener;
      this[method](type, onClose);
    } else if (type === 'error') {
      onError._listener = listener;
      this[method](type, onError);
    } else if (type === 'open') {
      onOpen._listener = listener;
      this[method](type, onOpen);
    } else {
      this[method](type, listener);
    }
  },

  /**
   * Remove an event listener.
   *
   * @param {String} type A string representing the event type to remove
   * @param {Function} listener The listener to remove
   * @public
   */
  removeEventListener(type, listener) {
    const listeners = this.listeners(type);

    for (let i = 0; i < listeners.length; i++) {
      if (listeners[i] === listener || listeners[i]._listener === listener) {
        this.removeListener(type, listeners[i]);
      }
    }
  }
};

module.exports = EventTarget;


/***/ }),

/***/ 97821:
/***/ ((module) => {

"use strict";


//
// Allowed token characters:
//
// '!', '#', '$', '%', '&', ''', '*', '+', '-',
// '.', 0-9, A-Z, '^', '_', '`', a-z, '|', '~'
//
// tokenChars[32] === 0 // ' '
// tokenChars[33] === 1 // '!'
// tokenChars[34] === 0 // '"'
// ...
//
// prettier-ignore
const tokenChars = [
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 15
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 31
  0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, // 32 - 47
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // 48 - 63
  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 64 - 79
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, // 80 - 95
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 96 - 111
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0 // 112 - 127
];

/**
 * Adds an offer to the map of extension offers or a parameter to the map of
 * parameters.
 *
 * @param {Object} dest The map of extension offers or parameters
 * @param {String} name The extension or parameter name
 * @param {(Object|Boolean|String)} elem The extension parameters or the
 *     parameter value
 * @private
 */
function push(dest, name, elem) {
  if (dest[name] === undefined) dest[name] = [elem];
  else dest[name].push(elem);
}

/**
 * Parses the `Sec-WebSocket-Extensions` header into an object.
 *
 * @param {String} header The field value of the header
 * @return {Object} The parsed object
 * @public
 */
function parse(header) {
  const offers = Object.create(null);

  if (header === undefined || header === '') return offers;

  let params = Object.create(null);
  let mustUnescape = false;
  let isEscaping = false;
  let inQuotes = false;
  let extensionName;
  let paramName;
  let start = -1;
  let end = -1;
  let i = 0;

  for (; i < header.length; i++) {
    const code = header.charCodeAt(i);

    if (extensionName === undefined) {
      if (end === -1 && tokenChars[code] === 1) {
        if (start === -1) start = i;
      } else if (code === 0x20 /* ' ' */ || code === 0x09 /* '\t' */) {
        if (end === -1 && start !== -1) end = i;
      } else if (code === 0x3b /* ';' */ || code === 0x2c /* ',' */) {
        if (start === -1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }

        if (end === -1) end = i;
        const name = header.slice(start, end);
        if (code === 0x2c) {
          push(offers, name, params);
          params = Object.create(null);
        } else {
          extensionName = name;
        }

        start = end = -1;
      } else {
        throw new SyntaxError(`Unexpected character at index ${i}`);
      }
    } else if (paramName === undefined) {
      if (end === -1 && tokenChars[code] === 1) {
        if (start === -1) start = i;
      } else if (code === 0x20 || code === 0x09) {
        if (end === -1 && start !== -1) end = i;
      } else if (code === 0x3b || code === 0x2c) {
        if (start === -1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }

        if (end === -1) end = i;
        push(params, header.slice(start, end), true);
        if (code === 0x2c) {
          push(offers, extensionName, params);
          params = Object.create(null);
          extensionName = undefined;
        }

        start = end = -1;
      } else if (code === 0x3d /* '=' */ && start !== -1 && end === -1) {
        paramName = header.slice(start, i);
        start = end = -1;
      } else {
        throw new SyntaxError(`Unexpected character at index ${i}`);
      }
    } else {
      //
      // The value of a quoted-string after unescaping must conform to the
      // token ABNF, so only token characters are valid.
      // Ref: https://tools.ietf.org/html/rfc6455#section-9.1
      //
      if (isEscaping) {
        if (tokenChars[code] !== 1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }
        if (start === -1) start = i;
        else if (!mustUnescape) mustUnescape = true;
        isEscaping = false;
      } else if (inQuotes) {
        if (tokenChars[code] === 1) {
          if (start === -1) start = i;
        } else if (code === 0x22 /* '"' */ && start !== -1) {
          inQuotes = false;
          end = i;
        } else if (code === 0x5c /* '\' */) {
          isEscaping = true;
        } else {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }
      } else if (code === 0x22 && header.charCodeAt(i - 1) === 0x3d) {
        inQuotes = true;
      } else if (end === -1 && tokenChars[code] === 1) {
        if (start === -1) start = i;
      } else if (start !== -1 && (code === 0x20 || code === 0x09)) {
        if (end === -1) end = i;
      } else if (code === 0x3b || code === 0x2c) {
        if (start === -1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }

        if (end === -1) end = i;
        let value = header.slice(start, end);
        if (mustUnescape) {
          value = value.replace(/\\/g, '');
          mustUnescape = false;
        }
        push(params, paramName, value);
        if (code === 0x2c) {
          push(offers, extensionName, params);
          params = Object.create(null);
          extensionName = undefined;
        }

        paramName = undefined;
        start = end = -1;
      } else {
        throw new SyntaxError(`Unexpected character at index ${i}`);
      }
    }
  }

  if (start === -1 || inQuotes) {
    throw new SyntaxError('Unexpected end of input');
  }

  if (end === -1) end = i;
  const token = header.slice(start, end);
  if (extensionName === undefined) {
    push(offers, token, params);
  } else {
    if (paramName === undefined) {
      push(params, token, true);
    } else if (mustUnescape) {
      push(params, paramName, token.replace(/\\/g, ''));
    } else {
      push(params, paramName, token);
    }
    push(offers, extensionName, params);
  }

  return offers;
}

/**
 * Builds the `Sec-WebSocket-Extensions` header field value.
 *
 * @param {Object} extensions The map of extensions and parameters to format
 * @return {String} A string representing the given object
 * @public
 */
function format(extensions) {
  return Object.keys(extensions)
    .map((extension) => {
      let configurations = extensions[extension];
      if (!Array.isArray(configurations)) configurations = [configurations];
      return configurations
        .map((params) => {
          return [extension]
            .concat(
              Object.keys(params).map((k) => {
                let values = params[k];
                if (!Array.isArray(values)) values = [values];
                return values
                  .map((v) => (v === true ? k : `${k}=${v}`))
                  .join('; ');
              })
            )
            .join('; ');
        })
        .join(', ');
    })
    .join(', ');
}

module.exports = { format, parse };


/***/ }),

/***/ 78602:
/***/ ((module) => {

"use strict";


const kDone = Symbol('kDone');
const kRun = Symbol('kRun');

/**
 * A very simple job queue with adjustable concurrency. Adapted from
 * https://github.com/STRML/async-limiter
 */
class Limiter {
  /**
   * Creates a new `Limiter`.
   *
   * @param {Number} [concurrency=Infinity] The maximum number of jobs allowed
   *     to run concurrently
   */
  constructor(concurrency) {
    this[kDone] = () => {
      this.pending--;
      this[kRun]();
    };
    this.concurrency = concurrency || Infinity;
    this.jobs = [];
    this.pending = 0;
  }

  /**
   * Adds a job to the queue.
   *
   * @param {Function} job The job to run
   * @public
   */
  add(job) {
    this.jobs.push(job);
    this[kRun]();
  }

  /**
   * Removes a job from the queue and runs it if possible.
   *
   * @private
   */
  [kRun]() {
    if (this.pending === this.concurrency) return;

    if (this.jobs.length) {
      const job = this.jobs.shift();

      this.pending++;
      job(this[kDone]);
    }
  }
}

module.exports = Limiter;


/***/ }),

/***/ 99604:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const zlib = __webpack_require__(78761);

const bufferUtil = __webpack_require__(20034);
const Limiter = __webpack_require__(78602);
const { kStatusCode, NOOP } = __webpack_require__(94122);

const TRAILER = Buffer.from([0x00, 0x00, 0xff, 0xff]);
const kPerMessageDeflate = Symbol('permessage-deflate');
const kTotalLength = Symbol('total-length');
const kCallback = Symbol('callback');
const kBuffers = Symbol('buffers');
const kError = Symbol('error');

//
// We limit zlib concurrency, which prevents severe memory fragmentation
// as documented in https://github.com/nodejs/node/issues/8871#issuecomment-250915913
// and https://github.com/websockets/ws/issues/1202
//
// Intentionally global; it's the global thread pool that's an issue.
//
let zlibLimiter;

/**
 * permessage-deflate implementation.
 */
class PerMessageDeflate {
  /**
   * Creates a PerMessageDeflate instance.
   *
   * @param {Object} [options] Configuration options
   * @param {Boolean} [options.serverNoContextTakeover=false] Request/accept
   *     disabling of server context takeover
   * @param {Boolean} [options.clientNoContextTakeover=false] Advertise/
   *     acknowledge disabling of client context takeover
   * @param {(Boolean|Number)} [options.serverMaxWindowBits] Request/confirm the
   *     use of a custom server window size
   * @param {(Boolean|Number)} [options.clientMaxWindowBits] Advertise support
   *     for, or request, a custom client window size
   * @param {Object} [options.zlibDeflateOptions] Options to pass to zlib on
   *     deflate
   * @param {Object} [options.zlibInflateOptions] Options to pass to zlib on
   *     inflate
   * @param {Number} [options.threshold=1024] Size (in bytes) below which
   *     messages should not be compressed
   * @param {Number} [options.concurrencyLimit=10] The number of concurrent
   *     calls to zlib
   * @param {Boolean} [isServer=false] Create the instance in either server or
   *     client mode
   * @param {Number} [maxPayload=0] The maximum allowed message length
   */
  constructor(options, isServer, maxPayload) {
    this._maxPayload = maxPayload | 0;
    this._options = options || {};
    this._threshold =
      this._options.threshold !== undefined ? this._options.threshold : 1024;
    this._isServer = !!isServer;
    this._deflate = null;
    this._inflate = null;

    this.params = null;

    if (!zlibLimiter) {
      const concurrency =
        this._options.concurrencyLimit !== undefined
          ? this._options.concurrencyLimit
          : 10;
      zlibLimiter = new Limiter(concurrency);
    }
  }

  /**
   * @type {String}
   */
  static get extensionName() {
    return 'permessage-deflate';
  }

  /**
   * Create an extension negotiation offer.
   *
   * @return {Object} Extension parameters
   * @public
   */
  offer() {
    const params = {};

    if (this._options.serverNoContextTakeover) {
      params.server_no_context_takeover = true;
    }
    if (this._options.clientNoContextTakeover) {
      params.client_no_context_takeover = true;
    }
    if (this._options.serverMaxWindowBits) {
      params.server_max_window_bits = this._options.serverMaxWindowBits;
    }
    if (this._options.clientMaxWindowBits) {
      params.client_max_window_bits = this._options.clientMaxWindowBits;
    } else if (this._options.clientMaxWindowBits == null) {
      params.client_max_window_bits = true;
    }

    return params;
  }

  /**
   * Accept an extension negotiation offer/response.
   *
   * @param {Array} configurations The extension negotiation offers/reponse
   * @return {Object} Accepted configuration
   * @public
   */
  accept(configurations) {
    configurations = this.normalizeParams(configurations);

    this.params = this._isServer
      ? this.acceptAsServer(configurations)
      : this.acceptAsClient(configurations);

    return this.params;
  }

  /**
   * Releases all resources used by the extension.
   *
   * @public
   */
  cleanup() {
    if (this._inflate) {
      this._inflate.close();
      this._inflate = null;
    }

    if (this._deflate) {
      const callback = this._deflate[kCallback];

      this._deflate.close();
      this._deflate = null;

      if (callback) {
        callback(
          new Error(
            'The deflate stream was closed while data was being processed'
          )
        );
      }
    }
  }

  /**
   *  Accept an extension negotiation offer.
   *
   * @param {Array} offers The extension negotiation offers
   * @return {Object} Accepted configuration
   * @private
   */
  acceptAsServer(offers) {
    const opts = this._options;
    const accepted = offers.find((params) => {
      if (
        (opts.serverNoContextTakeover === false &&
          params.server_no_context_takeover) ||
        (params.server_max_window_bits &&
          (opts.serverMaxWindowBits === false ||
            (typeof opts.serverMaxWindowBits === 'number' &&
              opts.serverMaxWindowBits > params.server_max_window_bits))) ||
        (typeof opts.clientMaxWindowBits === 'number' &&
          !params.client_max_window_bits)
      ) {
        return false;
      }

      return true;
    });

    if (!accepted) {
      throw new Error('None of the extension offers can be accepted');
    }

    if (opts.serverNoContextTakeover) {
      accepted.server_no_context_takeover = true;
    }
    if (opts.clientNoContextTakeover) {
      accepted.client_no_context_takeover = true;
    }
    if (typeof opts.serverMaxWindowBits === 'number') {
      accepted.server_max_window_bits = opts.serverMaxWindowBits;
    }
    if (typeof opts.clientMaxWindowBits === 'number') {
      accepted.client_max_window_bits = opts.clientMaxWindowBits;
    } else if (
      accepted.client_max_window_bits === true ||
      opts.clientMaxWindowBits === false
    ) {
      delete accepted.client_max_window_bits;
    }

    return accepted;
  }

  /**
   * Accept the extension negotiation response.
   *
   * @param {Array} response The extension negotiation response
   * @return {Object} Accepted configuration
   * @private
   */
  acceptAsClient(response) {
    const params = response[0];

    if (
      this._options.clientNoContextTakeover === false &&
      params.client_no_context_takeover
    ) {
      throw new Error('Unexpected parameter "client_no_context_takeover"');
    }

    if (!params.client_max_window_bits) {
      if (typeof this._options.clientMaxWindowBits === 'number') {
        params.client_max_window_bits = this._options.clientMaxWindowBits;
      }
    } else if (
      this._options.clientMaxWindowBits === false ||
      (typeof this._options.clientMaxWindowBits === 'number' &&
        params.client_max_window_bits > this._options.clientMaxWindowBits)
    ) {
      throw new Error(
        'Unexpected or invalid parameter "client_max_window_bits"'
      );
    }

    return params;
  }

  /**
   * Normalize parameters.
   *
   * @param {Array} configurations The extension negotiation offers/reponse
   * @return {Array} The offers/response with normalized parameters
   * @private
   */
  normalizeParams(configurations) {
    configurations.forEach((params) => {
      Object.keys(params).forEach((key) => {
        let value = params[key];

        if (value.length > 1) {
          throw new Error(`Parameter "${key}" must have only a single value`);
        }

        value = value[0];

        if (key === 'client_max_window_bits') {
          if (value !== true) {
            const num = +value;
            if (!Number.isInteger(num) || num < 8 || num > 15) {
              throw new TypeError(
                `Invalid value for parameter "${key}": ${value}`
              );
            }
            value = num;
          } else if (!this._isServer) {
            throw new TypeError(
              `Invalid value for parameter "${key}": ${value}`
            );
          }
        } else if (key === 'server_max_window_bits') {
          const num = +value;
          if (!Number.isInteger(num) || num < 8 || num > 15) {
            throw new TypeError(
              `Invalid value for parameter "${key}": ${value}`
            );
          }
          value = num;
        } else if (
          key === 'client_no_context_takeover' ||
          key === 'server_no_context_takeover'
        ) {
          if (value !== true) {
            throw new TypeError(
              `Invalid value for parameter "${key}": ${value}`
            );
          }
        } else {
          throw new Error(`Unknown parameter "${key}"`);
        }

        params[key] = value;
      });
    });

    return configurations;
  }

  /**
   * Decompress data. Concurrency limited.
   *
   * @param {Buffer} data Compressed data
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @public
   */
  decompress(data, fin, callback) {
    zlibLimiter.add((done) => {
      this._decompress(data, fin, (err, result) => {
        done();
        callback(err, result);
      });
    });
  }

  /**
   * Compress data. Concurrency limited.
   *
   * @param {Buffer} data Data to compress
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @public
   */
  compress(data, fin, callback) {
    zlibLimiter.add((done) => {
      this._compress(data, fin, (err, result) => {
        done();
        callback(err, result);
      });
    });
  }

  /**
   * Decompress data.
   *
   * @param {Buffer} data Compressed data
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @private
   */
  _decompress(data, fin, callback) {
    const endpoint = this._isServer ? 'client' : 'server';

    if (!this._inflate) {
      const key = `${endpoint}_max_window_bits`;
      const windowBits =
        typeof this.params[key] !== 'number'
          ? zlib.Z_DEFAULT_WINDOWBITS
          : this.params[key];

      this._inflate = zlib.createInflateRaw({
        ...this._options.zlibInflateOptions,
        windowBits
      });
      this._inflate[kPerMessageDeflate] = this;
      this._inflate[kTotalLength] = 0;
      this._inflate[kBuffers] = [];
      this._inflate.on('error', inflateOnError);
      this._inflate.on('data', inflateOnData);
    }

    this._inflate[kCallback] = callback;

    this._inflate.write(data);
    if (fin) this._inflate.write(TRAILER);

    this._inflate.flush(() => {
      const err = this._inflate[kError];

      if (err) {
        this._inflate.close();
        this._inflate = null;
        callback(err);
        return;
      }

      const data = bufferUtil.concat(
        this._inflate[kBuffers],
        this._inflate[kTotalLength]
      );

      if (this._inflate._readableState.endEmitted) {
        this._inflate.close();
        this._inflate = null;
      } else {
        this._inflate[kTotalLength] = 0;
        this._inflate[kBuffers] = [];

        if (fin && this.params[`${endpoint}_no_context_takeover`]) {
          this._inflate.reset();
        }
      }

      callback(null, data);
    });
  }

  /**
   * Compress data.
   *
   * @param {Buffer} data Data to compress
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @private
   */
  _compress(data, fin, callback) {
    const endpoint = this._isServer ? 'server' : 'client';

    if (!this._deflate) {
      const key = `${endpoint}_max_window_bits`;
      const windowBits =
        typeof this.params[key] !== 'number'
          ? zlib.Z_DEFAULT_WINDOWBITS
          : this.params[key];

      this._deflate = zlib.createDeflateRaw({
        ...this._options.zlibDeflateOptions,
        windowBits
      });

      this._deflate[kTotalLength] = 0;
      this._deflate[kBuffers] = [];

      //
      // An `'error'` event is emitted, only on Node.js < 10.0.0, if the
      // `zlib.DeflateRaw` instance is closed while data is being processed.
      // This can happen if `PerMessageDeflate#cleanup()` is called at the wrong
      // time due to an abnormal WebSocket closure.
      //
      this._deflate.on('error', NOOP);
      this._deflate.on('data', deflateOnData);
    }

    this._deflate[kCallback] = callback;

    this._deflate.write(data);
    this._deflate.flush(zlib.Z_SYNC_FLUSH, () => {
      if (!this._deflate) {
        //
        // The deflate stream was closed while data was being processed.
        //
        return;
      }

      let data = bufferUtil.concat(
        this._deflate[kBuffers],
        this._deflate[kTotalLength]
      );

      if (fin) data = data.slice(0, data.length - 4);

      //
      // Ensure that the callback will not be called again in
      // `PerMessageDeflate#cleanup()`.
      //
      this._deflate[kCallback] = null;

      this._deflate[kTotalLength] = 0;
      this._deflate[kBuffers] = [];

      if (fin && this.params[`${endpoint}_no_context_takeover`]) {
        this._deflate.reset();
      }

      callback(null, data);
    });
  }
}

module.exports = PerMessageDeflate;

/**
 * The listener of the `zlib.DeflateRaw` stream `'data'` event.
 *
 * @param {Buffer} chunk A chunk of data
 * @private
 */
function deflateOnData(chunk) {
  this[kBuffers].push(chunk);
  this[kTotalLength] += chunk.length;
}

/**
 * The listener of the `zlib.InflateRaw` stream `'data'` event.
 *
 * @param {Buffer} chunk A chunk of data
 * @private
 */
function inflateOnData(chunk) {
  this[kTotalLength] += chunk.length;

  if (
    this[kPerMessageDeflate]._maxPayload < 1 ||
    this[kTotalLength] <= this[kPerMessageDeflate]._maxPayload
  ) {
    this[kBuffers].push(chunk);
    return;
  }

  this[kError] = new RangeError('Max payload size exceeded');
  this[kError][kStatusCode] = 1009;
  this.removeListener('data', inflateOnData);
  this.reset();
}

/**
 * The listener of the `zlib.InflateRaw` stream `'error'` event.
 *
 * @param {Error} err The emitted error
 * @private
 */
function inflateOnError(err) {
  //
  // There is no need to call `Zlib#close()` as the handle is automatically
  // closed when an error is emitted.
  //
  this[kPerMessageDeflate]._inflate = null;
  err[kStatusCode] = 1007;
  this[kCallback](err);
}


/***/ }),

/***/ 1937:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { Writable } = __webpack_require__(92413);

const PerMessageDeflate = __webpack_require__(99604);
const {
  BINARY_TYPES,
  EMPTY_BUFFER,
  kStatusCode,
  kWebSocket
} = __webpack_require__(94122);
const { concat, toArrayBuffer, unmask } = __webpack_require__(20034);
const { isValidStatusCode, isValidUTF8 } = __webpack_require__(28541);

const GET_INFO = 0;
const GET_PAYLOAD_LENGTH_16 = 1;
const GET_PAYLOAD_LENGTH_64 = 2;
const GET_MASK = 3;
const GET_DATA = 4;
const INFLATING = 5;

/**
 * HyBi Receiver implementation.
 *
 * @extends stream.Writable
 */
class Receiver extends Writable {
  /**
   * Creates a Receiver instance.
   *
   * @param {String} [binaryType=nodebuffer] The type for binary data
   * @param {Object} [extensions] An object containing the negotiated extensions
   * @param {Boolean} [isServer=false] Specifies whether to operate in client or
   *     server mode
   * @param {Number} [maxPayload=0] The maximum allowed message length
   */
  constructor(binaryType, extensions, isServer, maxPayload) {
    super();

    this._binaryType = binaryType || BINARY_TYPES[0];
    this[kWebSocket] = undefined;
    this._extensions = extensions || {};
    this._isServer = !!isServer;
    this._maxPayload = maxPayload | 0;

    this._bufferedBytes = 0;
    this._buffers = [];

    this._compressed = false;
    this._payloadLength = 0;
    this._mask = undefined;
    this._fragmented = 0;
    this._masked = false;
    this._fin = false;
    this._opcode = 0;

    this._totalPayloadLength = 0;
    this._messageLength = 0;
    this._fragments = [];

    this._state = GET_INFO;
    this._loop = false;
  }

  /**
   * Implements `Writable.prototype._write()`.
   *
   * @param {Buffer} chunk The chunk of data to write
   * @param {String} encoding The character encoding of `chunk`
   * @param {Function} cb Callback
   * @private
   */
  _write(chunk, encoding, cb) {
    if (this._opcode === 0x08 && this._state == GET_INFO) return cb();

    this._bufferedBytes += chunk.length;
    this._buffers.push(chunk);
    this.startLoop(cb);
  }

  /**
   * Consumes `n` bytes from the buffered data.
   *
   * @param {Number} n The number of bytes to consume
   * @return {Buffer} The consumed bytes
   * @private
   */
  consume(n) {
    this._bufferedBytes -= n;

    if (n === this._buffers[0].length) return this._buffers.shift();

    if (n < this._buffers[0].length) {
      const buf = this._buffers[0];
      this._buffers[0] = buf.slice(n);
      return buf.slice(0, n);
    }

    const dst = Buffer.allocUnsafe(n);

    do {
      const buf = this._buffers[0];
      const offset = dst.length - n;

      if (n >= buf.length) {
        dst.set(this._buffers.shift(), offset);
      } else {
        dst.set(new Uint8Array(buf.buffer, buf.byteOffset, n), offset);
        this._buffers[0] = buf.slice(n);
      }

      n -= buf.length;
    } while (n > 0);

    return dst;
  }

  /**
   * Starts the parsing loop.
   *
   * @param {Function} cb Callback
   * @private
   */
  startLoop(cb) {
    let err;
    this._loop = true;

    do {
      switch (this._state) {
        case GET_INFO:
          err = this.getInfo();
          break;
        case GET_PAYLOAD_LENGTH_16:
          err = this.getPayloadLength16();
          break;
        case GET_PAYLOAD_LENGTH_64:
          err = this.getPayloadLength64();
          break;
        case GET_MASK:
          this.getMask();
          break;
        case GET_DATA:
          err = this.getData(cb);
          break;
        default:
          // `INFLATING`
          this._loop = false;
          return;
      }
    } while (this._loop);

    cb(err);
  }

  /**
   * Reads the first two bytes of a frame.
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  getInfo() {
    if (this._bufferedBytes < 2) {
      this._loop = false;
      return;
    }

    const buf = this.consume(2);

    if ((buf[0] & 0x30) !== 0x00) {
      this._loop = false;
      return error(RangeError, 'RSV2 and RSV3 must be clear', true, 1002);
    }

    const compressed = (buf[0] & 0x40) === 0x40;

    if (compressed && !this._extensions[PerMessageDeflate.extensionName]) {
      this._loop = false;
      return error(RangeError, 'RSV1 must be clear', true, 1002);
    }

    this._fin = (buf[0] & 0x80) === 0x80;
    this._opcode = buf[0] & 0x0f;
    this._payloadLength = buf[1] & 0x7f;

    if (this._opcode === 0x00) {
      if (compressed) {
        this._loop = false;
        return error(RangeError, 'RSV1 must be clear', true, 1002);
      }

      if (!this._fragmented) {
        this._loop = false;
        return error(RangeError, 'invalid opcode 0', true, 1002);
      }

      this._opcode = this._fragmented;
    } else if (this._opcode === 0x01 || this._opcode === 0x02) {
      if (this._fragmented) {
        this._loop = false;
        return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002);
      }

      this._compressed = compressed;
    } else if (this._opcode > 0x07 && this._opcode < 0x0b) {
      if (!this._fin) {
        this._loop = false;
        return error(RangeError, 'FIN must be set', true, 1002);
      }

      if (compressed) {
        this._loop = false;
        return error(RangeError, 'RSV1 must be clear', true, 1002);
      }

      if (this._payloadLength > 0x7d) {
        this._loop = false;
        return error(
          RangeError,
          `invalid payload length ${this._payloadLength}`,
          true,
          1002
        );
      }
    } else {
      this._loop = false;
      return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002);
    }

    if (!this._fin && !this._fragmented) this._fragmented = this._opcode;
    this._masked = (buf[1] & 0x80) === 0x80;

    if (this._isServer) {
      if (!this._masked) {
        this._loop = false;
        return error(RangeError, 'MASK must be set', true, 1002);
      }
    } else if (this._masked) {
      this._loop = false;
      return error(RangeError, 'MASK must be clear', true, 1002);
    }

    if (this._payloadLength === 126) this._state = GET_PAYLOAD_LENGTH_16;
    else if (this._payloadLength === 127) this._state = GET_PAYLOAD_LENGTH_64;
    else return this.haveLength();
  }

  /**
   * Gets extended payload length (7+16).
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  getPayloadLength16() {
    if (this._bufferedBytes < 2) {
      this._loop = false;
      return;
    }

    this._payloadLength = this.consume(2).readUInt16BE(0);
    return this.haveLength();
  }

  /**
   * Gets extended payload length (7+64).
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  getPayloadLength64() {
    if (this._bufferedBytes < 8) {
      this._loop = false;
      return;
    }

    const buf = this.consume(8);
    const num = buf.readUInt32BE(0);

    //
    // The maximum safe integer in JavaScript is 2^53 - 1. An error is returned
    // if payload length is greater than this number.
    //
    if (num > Math.pow(2, 53 - 32) - 1) {
      this._loop = false;
      return error(
        RangeError,
        'Unsupported WebSocket frame: payload length > 2^53 - 1',
        false,
        1009
      );
    }

    this._payloadLength = num * Math.pow(2, 32) + buf.readUInt32BE(4);
    return this.haveLength();
  }

  /**
   * Payload length has been read.
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  haveLength() {
    if (this._payloadLength && this._opcode < 0x08) {
      this._totalPayloadLength += this._payloadLength;
      if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) {
        this._loop = false;
        return error(RangeError, 'Max payload size exceeded', false, 1009);
      }
    }

    if (this._masked) this._state = GET_MASK;
    else this._state = GET_DATA;
  }

  /**
   * Reads mask bytes.
   *
   * @private
   */
  getMask() {
    if (this._bufferedBytes < 4) {
      this._loop = false;
      return;
    }

    this._mask = this.consume(4);
    this._state = GET_DATA;
  }

  /**
   * Reads data bytes.
   *
   * @param {Function} cb Callback
   * @return {(Error|RangeError|undefined)} A possible error
   * @private
   */
  getData(cb) {
    let data = EMPTY_BUFFER;

    if (this._payloadLength) {
      if (this._bufferedBytes < this._payloadLength) {
        this._loop = false;
        return;
      }

      data = this.consume(this._payloadLength);
      if (this._masked) unmask(data, this._mask);
    }

    if (this._opcode > 0x07) return this.controlMessage(data);

    if (this._compressed) {
      this._state = INFLATING;
      this.decompress(data, cb);
      return;
    }

    if (data.length) {
      //
      // This message is not compressed so its lenght is the sum of the payload
      // length of all fragments.
      //
      this._messageLength = this._totalPayloadLength;
      this._fragments.push(data);
    }

    return this.dataMessage();
  }

  /**
   * Decompresses data.
   *
   * @param {Buffer} data Compressed data
   * @param {Function} cb Callback
   * @private
   */
  decompress(data, cb) {
    const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];

    perMessageDeflate.decompress(data, this._fin, (err, buf) => {
      if (err) return cb(err);

      if (buf.length) {
        this._messageLength += buf.length;
        if (this._messageLength > this._maxPayload && this._maxPayload > 0) {
          return cb(
            error(RangeError, 'Max payload size exceeded', false, 1009)
          );
        }

        this._fragments.push(buf);
      }

      const er = this.dataMessage();
      if (er) return cb(er);

      this.startLoop(cb);
    });
  }

  /**
   * Handles a data message.
   *
   * @return {(Error|undefined)} A possible error
   * @private
   */
  dataMessage() {
    if (this._fin) {
      const messageLength = this._messageLength;
      const fragments = this._fragments;

      this._totalPayloadLength = 0;
      this._messageLength = 0;
      this._fragmented = 0;
      this._fragments = [];

      if (this._opcode === 2) {
        let data;

        if (this._binaryType === 'nodebuffer') {
          data = concat(fragments, messageLength);
        } else if (this._binaryType === 'arraybuffer') {
          data = toArrayBuffer(concat(fragments, messageLength));
        } else {
          data = fragments;
        }

        this.emit('message', data);
      } else {
        const buf = concat(fragments, messageLength);

        if (!isValidUTF8(buf)) {
          this._loop = false;
          return error(Error, 'invalid UTF-8 sequence', true, 1007);
        }

        this.emit('message', buf.toString());
      }
    }

    this._state = GET_INFO;
  }

  /**
   * Handles a control message.
   *
   * @param {Buffer} data Data to handle
   * @return {(Error|RangeError|undefined)} A possible error
   * @private
   */
  controlMessage(data) {
    if (this._opcode === 0x08) {
      this._loop = false;

      if (data.length === 0) {
        this.emit('conclude', 1005, '');
        this.end();
      } else if (data.length === 1) {
        return error(RangeError, 'invalid payload length 1', true, 1002);
      } else {
        const code = data.readUInt16BE(0);

        if (!isValidStatusCode(code)) {
          return error(RangeError, `invalid status code ${code}`, true, 1002);
        }

        const buf = data.slice(2);

        if (!isValidUTF8(buf)) {
          return error(Error, 'invalid UTF-8 sequence', true, 1007);
        }

        this.emit('conclude', code, buf.toString());
        this.end();
      }
    } else if (this._opcode === 0x09) {
      this.emit('ping', data);
    } else {
      this.emit('pong', data);
    }

    this._state = GET_INFO;
  }
}

module.exports = Receiver;

/**
 * Builds an error object.
 *
 * @param {(Error|RangeError)} ErrorCtor The error constructor
 * @param {String} message The error message
 * @param {Boolean} prefix Specifies whether or not to add a default prefix to
 *     `message`
 * @param {Number} statusCode The status code
 * @return {(Error|RangeError)} The error
 * @private
 */
function error(ErrorCtor, message, prefix, statusCode) {
  const err = new ErrorCtor(
    prefix ? `Invalid WebSocket frame: ${message}` : message
  );

  Error.captureStackTrace(err, error);
  err[kStatusCode] = statusCode;
  return err;
}


/***/ }),

/***/ 7748:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { randomFillSync } = __webpack_require__(33373);

const PerMessageDeflate = __webpack_require__(99604);
const { EMPTY_BUFFER } = __webpack_require__(94122);
const { isValidStatusCode } = __webpack_require__(28541);
const { mask: applyMask, toBuffer } = __webpack_require__(20034);

const mask = Buffer.alloc(4);

/**
 * HyBi Sender implementation.
 */
class Sender {
  /**
   * Creates a Sender instance.
   *
   * @param {net.Socket} socket The connection socket
   * @param {Object} [extensions] An object containing the negotiated extensions
   */
  constructor(socket, extensions) {
    this._extensions = extensions || {};
    this._socket = socket;

    this._firstFragment = true;
    this._compress = false;

    this._bufferedBytes = 0;
    this._deflating = false;
    this._queue = [];
  }

  /**
   * Frames a piece of data according to the HyBi WebSocket protocol.
   *
   * @param {Buffer} data The data to frame
   * @param {Object} options Options object
   * @param {Number} options.opcode The opcode
   * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
   *     modified
   * @param {Boolean} [options.fin=false] Specifies whether or not to set the
   *     FIN bit
   * @param {Boolean} [options.mask=false] Specifies whether or not to mask
   *     `data`
   * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
   *     RSV1 bit
   * @return {Buffer[]} The framed data as a list of `Buffer` instances
   * @public
   */
  static frame(data, options) {
    const merge = options.mask && options.readOnly;
    let offset = options.mask ? 6 : 2;
    let payloadLength = data.length;

    if (data.length >= 65536) {
      offset += 8;
      payloadLength = 127;
    } else if (data.length > 125) {
      offset += 2;
      payloadLength = 126;
    }

    const target = Buffer.allocUnsafe(merge ? data.length + offset : offset);

    target[0] = options.fin ? options.opcode | 0x80 : options.opcode;
    if (options.rsv1) target[0] |= 0x40;

    target[1] = payloadLength;

    if (payloadLength === 126) {
      target.writeUInt16BE(data.length, 2);
    } else if (payloadLength === 127) {
      target.writeUInt32BE(0, 2);
      target.writeUInt32BE(data.length, 6);
    }

    if (!options.mask) return [target, data];

    randomFillSync(mask, 0, 4);

    target[1] |= 0x80;
    target[offset - 4] = mask[0];
    target[offset - 3] = mask[1];
    target[offset - 2] = mask[2];
    target[offset - 1] = mask[3];

    if (merge) {
      applyMask(data, mask, target, offset, data.length);
      return [target];
    }

    applyMask(data, mask, data, 0, data.length);
    return [target, data];
  }

  /**
   * Sends a close message to the other peer.
   *
   * @param {Number} [code] The status code component of the body
   * @param {String} [data] The message component of the body
   * @param {Boolean} [mask=false] Specifies whether or not to mask the message
   * @param {Function} [cb] Callback
   * @public
   */
  close(code, data, mask, cb) {
    let buf;

    if (code === undefined) {
      buf = EMPTY_BUFFER;
    } else if (typeof code !== 'number' || !isValidStatusCode(code)) {
      throw new TypeError('First argument must be a valid error code number');
    } else if (data === undefined || data === '') {
      buf = Buffer.allocUnsafe(2);
      buf.writeUInt16BE(code, 0);
    } else {
      const length = Buffer.byteLength(data);

      if (length > 123) {
        throw new RangeError('The message must not be greater than 123 bytes');
      }

      buf = Buffer.allocUnsafe(2 + length);
      buf.writeUInt16BE(code, 0);
      buf.write(data, 2);
    }

    if (this._deflating) {
      this.enqueue([this.doClose, buf, mask, cb]);
    } else {
      this.doClose(buf, mask, cb);
    }
  }

  /**
   * Frames and sends a close message.
   *
   * @param {Buffer} data The message to send
   * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
   * @param {Function} [cb] Callback
   * @private
   */
  doClose(data, mask, cb) {
    this.sendFrame(
      Sender.frame(data, {
        fin: true,
        rsv1: false,
        opcode: 0x08,
        mask,
        readOnly: false
      }),
      cb
    );
  }

  /**
   * Sends a ping message to the other peer.
   *
   * @param {*} data The message to send
   * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
   * @param {Function} [cb] Callback
   * @public
   */
  ping(data, mask, cb) {
    const buf = toBuffer(data);

    if (buf.length > 125) {
      throw new RangeError('The data size must not be greater than 125 bytes');
    }

    if (this._deflating) {
      this.enqueue([this.doPing, buf, mask, toBuffer.readOnly, cb]);
    } else {
      this.doPing(buf, mask, toBuffer.readOnly, cb);
    }
  }

  /**
   * Frames and sends a ping message.
   *
   * @param {Buffer} data The message to send
   * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
   * @param {Boolean} [readOnly=false] Specifies whether `data` can be modified
   * @param {Function} [cb] Callback
   * @private
   */
  doPing(data, mask, readOnly, cb) {
    this.sendFrame(
      Sender.frame(data, {
        fin: true,
        rsv1: false,
        opcode: 0x09,
        mask,
        readOnly
      }),
      cb
    );
  }

  /**
   * Sends a pong message to the other peer.
   *
   * @param {*} data The message to send
   * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
   * @param {Function} [cb] Callback
   * @public
   */
  pong(data, mask, cb) {
    const buf = toBuffer(data);

    if (buf.length > 125) {
      throw new RangeError('The data size must not be greater than 125 bytes');
    }

    if (this._deflating) {
      this.enqueue([this.doPong, buf, mask, toBuffer.readOnly, cb]);
    } else {
      this.doPong(buf, mask, toBuffer.readOnly, cb);
    }
  }

  /**
   * Frames and sends a pong message.
   *
   * @param {Buffer} data The message to send
   * @param {Boolean} [mask=false] Specifies whether or not to mask `data`
   * @param {Boolean} [readOnly=false] Specifies whether `data` can be modified
   * @param {Function} [cb] Callback
   * @private
   */
  doPong(data, mask, readOnly, cb) {
    this.sendFrame(
      Sender.frame(data, {
        fin: true,
        rsv1: false,
        opcode: 0x0a,
        mask,
        readOnly
      }),
      cb
    );
  }

  /**
   * Sends a data message to the other peer.
   *
   * @param {*} data The message to send
   * @param {Object} options Options object
   * @param {Boolean} [options.compress=false] Specifies whether or not to
   *     compress `data`
   * @param {Boolean} [options.binary=false] Specifies whether `data` is binary
   *     or text
   * @param {Boolean} [options.fin=false] Specifies whether the fragment is the
   *     last one
   * @param {Boolean} [options.mask=false] Specifies whether or not to mask
   *     `data`
   * @param {Function} [cb] Callback
   * @public
   */
  send(data, options, cb) {
    const buf = toBuffer(data);
    const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];
    let opcode = options.binary ? 2 : 1;
    let rsv1 = options.compress;

    if (this._firstFragment) {
      this._firstFragment = false;
      if (rsv1 && perMessageDeflate) {
        rsv1 = buf.length >= perMessageDeflate._threshold;
      }
      this._compress = rsv1;
    } else {
      rsv1 = false;
      opcode = 0;
    }

    if (options.fin) this._firstFragment = true;

    if (perMessageDeflate) {
      const opts = {
        fin: options.fin,
        rsv1,
        opcode,
        mask: options.mask,
        readOnly: toBuffer.readOnly
      };

      if (this._deflating) {
        this.enqueue([this.dispatch, buf, this._compress, opts, cb]);
      } else {
        this.dispatch(buf, this._compress, opts, cb);
      }
    } else {
      this.sendFrame(
        Sender.frame(buf, {
          fin: options.fin,
          rsv1: false,
          opcode,
          mask: options.mask,
          readOnly: toBuffer.readOnly
        }),
        cb
      );
    }
  }

  /**
   * Dispatches a data message.
   *
   * @param {Buffer} data The message to send
   * @param {Boolean} [compress=false] Specifies whether or not to compress
   *     `data`
   * @param {Object} options Options object
   * @param {Number} options.opcode The opcode
   * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be
   *     modified
   * @param {Boolean} [options.fin=false] Specifies whether or not to set the
   *     FIN bit
   * @param {Boolean} [options.mask=false] Specifies whether or not to mask
   *     `data`
   * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the
   *     RSV1 bit
   * @param {Function} [cb] Callback
   * @private
   */
  dispatch(data, compress, options, cb) {
    if (!compress) {
      this.sendFrame(Sender.frame(data, options), cb);
      return;
    }

    const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];

    this._bufferedBytes += data.length;
    this._deflating = true;
    perMessageDeflate.compress(data, options.fin, (_, buf) => {
      if (this._socket.destroyed) {
        const err = new Error(
          'The socket was closed while data was being compressed'
        );

        if (typeof cb === 'function') cb(err);

        for (let i = 0; i < this._queue.length; i++) {
          const callback = this._queue[i][4];

          if (typeof callback === 'function') callback(err);
        }

        return;
      }

      this._bufferedBytes -= data.length;
      this._deflating = false;
      options.readOnly = false;
      this.sendFrame(Sender.frame(buf, options), cb);
      this.dequeue();
    });
  }

  /**
   * Executes queued send operations.
   *
   * @private
   */
  dequeue() {
    while (!this._deflating && this._queue.length) {
      const params = this._queue.shift();

      this._bufferedBytes -= params[1].length;
      Reflect.apply(params[0], this, params.slice(1));
    }
  }

  /**
   * Enqueues a send operation.
   *
   * @param {Array} params Send operation parameters.
   * @private
   */
  enqueue(params) {
    this._bufferedBytes += params[1].length;
    this._queue.push(params);
  }

  /**
   * Sends a frame.
   *
   * @param {Buffer[]} list The frame to send
   * @param {Function} [cb] Callback
   * @private
   */
  sendFrame(list, cb) {
    if (list.length === 2) {
      this._socket.cork();
      this._socket.write(list[0]);
      this._socket.write(list[1], cb);
      this._socket.uncork();
    } else {
      this._socket.write(list[0], cb);
    }
  }
}

module.exports = Sender;


/***/ }),

/***/ 61997:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { Duplex } = __webpack_require__(92413);

/**
 * Emits the `'close'` event on a stream.
 *
 * @param {stream.Duplex} The stream.
 * @private
 */
function emitClose(stream) {
  stream.emit('close');
}

/**
 * The listener of the `'end'` event.
 *
 * @private
 */
function duplexOnEnd() {
  if (!this.destroyed && this._writableState.finished) {
    this.destroy();
  }
}

/**
 * The listener of the `'error'` event.
 *
 * @param {Error} err The error
 * @private
 */
function duplexOnError(err) {
  this.removeListener('error', duplexOnError);
  this.destroy();
  if (this.listenerCount('error') === 0) {
    // Do not suppress the throwing behavior.
    this.emit('error', err);
  }
}

/**
 * Wraps a `WebSocket` in a duplex stream.
 *
 * @param {WebSocket} ws The `WebSocket` to wrap
 * @param {Object} [options] The options for the `Duplex` constructor
 * @return {stream.Duplex} The duplex stream
 * @public
 */
function createWebSocketStream(ws, options) {
  let resumeOnReceiverDrain = true;

  function receiverOnDrain() {
    if (resumeOnReceiverDrain) ws._socket.resume();
  }

  if (ws.readyState === ws.CONNECTING) {
    ws.once('open', function open() {
      ws._receiver.removeAllListeners('drain');
      ws._receiver.on('drain', receiverOnDrain);
    });
  } else {
    ws._receiver.removeAllListeners('drain');
    ws._receiver.on('drain', receiverOnDrain);
  }

  const duplex = new Duplex({
    ...options,
    autoDestroy: false,
    emitClose: false,
    objectMode: false,
    writableObjectMode: false
  });

  ws.on('message', function message(msg) {
    if (!duplex.push(msg)) {
      resumeOnReceiverDrain = false;
      ws._socket.pause();
    }
  });

  ws.once('error', function error(err) {
    if (duplex.destroyed) return;

    duplex.destroy(err);
  });

  ws.once('close', function close() {
    if (duplex.destroyed) return;

    duplex.push(null);
  });

  duplex._destroy = function (err, callback) {
    if (ws.readyState === ws.CLOSED) {
      callback(err);
      process.nextTick(emitClose, duplex);
      return;
    }

    let called = false;

    ws.once('error', function error(err) {
      called = true;
      callback(err);
    });

    ws.once('close', function close() {
      if (!called) callback(err);
      process.nextTick(emitClose, duplex);
    });
    ws.terminate();
  };

  duplex._final = function (callback) {
    if (ws.readyState === ws.CONNECTING) {
      ws.once('open', function open() {
        duplex._final(callback);
      });
      return;
    }

    // If the value of the `_socket` property is `null` it means that `ws` is a
    // client websocket and the handshake failed. In fact, when this happens, a
    // socket is never assigned to the websocket. Wait for the `'error'` event
    // that will be emitted by the websocket.
    if (ws._socket === null) return;

    if (ws._socket._writableState.finished) {
      callback();
      if (duplex._readableState.endEmitted) duplex.destroy();
    } else {
      ws._socket.once('finish', function finish() {
        // `duplex` is not destroyed here because the `'end'` event will be
        // emitted on `duplex` after this `'finish'` event. The EOF signaling
        // `null` chunk is, in fact, pushed when the websocket emits `'close'`.
        callback();
      });
      ws.close();
    }
  };

  duplex._read = function () {
    if (ws.readyState === ws.OPEN && !resumeOnReceiverDrain) {
      resumeOnReceiverDrain = true;
      if (!ws._receiver._writableState.needDrain) ws._socket.resume();
    }
  };

  duplex._write = function (chunk, encoding, callback) {
    if (ws.readyState === ws.CONNECTING) {
      ws.once('open', function open() {
        duplex._write(chunk, encoding, callback);
      });
      return;
    }

    ws.send(chunk, callback);
  };

  duplex.on('end', duplexOnEnd);
  duplex.on('error', duplexOnError);
  return duplex;
}

module.exports = createWebSocketStream;


/***/ }),

/***/ 28541:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/**
 * Checks if a status code is allowed in a close frame.
 *
 * @param {Number} code The status code
 * @return {Boolean} `true` if the status code is valid, else `false`
 * @public
 */
function isValidStatusCode(code) {
  return (
    (code >= 1000 &&
      code <= 1014 &&
      code !== 1004 &&
      code !== 1005 &&
      code !== 1006) ||
    (code >= 3000 && code <= 4999)
  );
}

/**
 * Checks if a given buffer contains only correct UTF-8.
 * Ported from https://www.cl.cam.ac.uk/%7Emgk25/ucs/utf8_check.c by
 * Markus Kuhn.
 *
 * @param {Buffer} buf The buffer to check
 * @return {Boolean} `true` if `buf` contains only correct UTF-8, else `false`
 * @public
 */
function _isValidUTF8(buf) {
  const len = buf.length;
  let i = 0;

  while (i < len) {
    if (buf[i] < 0x80) {
      // 0xxxxxxx
      i++;
    } else if ((buf[i] & 0xe0) === 0xc0) {
      // 110xxxxx 10xxxxxx
      if (
        i + 1 === len ||
        (buf[i + 1] & 0xc0) !== 0x80 ||
        (buf[i] & 0xfe) === 0xc0 // Overlong
      ) {
        return false;
      } else {
        i += 2;
      }
    } else if ((buf[i] & 0xf0) === 0xe0) {
      // 1110xxxx 10xxxxxx 10xxxxxx
      if (
        i + 2 >= len ||
        (buf[i + 1] & 0xc0) !== 0x80 ||
        (buf[i + 2] & 0xc0) !== 0x80 ||
        (buf[i] === 0xe0 && (buf[i + 1] & 0xe0) === 0x80) || // Overlong
        (buf[i] === 0xed && (buf[i + 1] & 0xe0) === 0xa0) // Surrogate (U+D800 - U+DFFF)
      ) {
        return false;
      } else {
        i += 3;
      }
    } else if ((buf[i] & 0xf8) === 0xf0) {
      // 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
      if (
        i + 3 >= len ||
        (buf[i + 1] & 0xc0) !== 0x80 ||
        (buf[i + 2] & 0xc0) !== 0x80 ||
        (buf[i + 3] & 0xc0) !== 0x80 ||
        (buf[i] === 0xf0 && (buf[i + 1] & 0xf0) === 0x80) || // Overlong
        (buf[i] === 0xf4 && buf[i + 1] > 0x8f) ||
        buf[i] > 0xf4 // > U+10FFFF
      ) {
        return false;
      } else {
        i += 4;
      }
    } else {
      return false;
    }
  }

  return true;
}

try {
  let isValidUTF8 = __webpack_require__(24592);

  /* istanbul ignore if */
  if (typeof isValidUTF8 === 'object') {
    isValidUTF8 = isValidUTF8.Validation.isValidUTF8; // utf-8-validate@<3.0.0
  }

  module.exports = {
    isValidStatusCode,
    isValidUTF8(buf) {
      return buf.length < 150 ? _isValidUTF8(buf) : isValidUTF8(buf);
    }
  };
} catch (e) /* istanbul ignore next */ {
  module.exports = {
    isValidStatusCode,
    isValidUTF8: _isValidUTF8
  };
}


/***/ }),

/***/ 89535:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const EventEmitter = __webpack_require__(28614);
const { createHash } = __webpack_require__(33373);
const { createServer, STATUS_CODES } = __webpack_require__(98605);

const PerMessageDeflate = __webpack_require__(99604);
const WebSocket = __webpack_require__(30418);
const { format, parse } = __webpack_require__(97821);
const { GUID, kWebSocket } = __webpack_require__(94122);

const keyRegex = /^[+/0-9A-Za-z]{22}==$/;

/**
 * Class representing a WebSocket server.
 *
 * @extends EventEmitter
 */
class WebSocketServer extends EventEmitter {
  /**
   * Create a `WebSocketServer` instance.
   *
   * @param {Object} options Configuration options
   * @param {Number} [options.backlog=511] The maximum length of the queue of
   *     pending connections
   * @param {Boolean} [options.clientTracking=true] Specifies whether or not to
   *     track clients
   * @param {Function} [options.handleProtocols] A hook to handle protocols
   * @param {String} [options.host] The hostname where to bind the server
   * @param {Number} [options.maxPayload=104857600] The maximum allowed message
   *     size
   * @param {Boolean} [options.noServer=false] Enable no server mode
   * @param {String} [options.path] Accept only connections matching this path
   * @param {(Boolean|Object)} [options.perMessageDeflate=false] Enable/disable
   *     permessage-deflate
   * @param {Number} [options.port] The port where to bind the server
   * @param {http.Server} [options.server] A pre-created HTTP/S server to use
   * @param {Function} [options.verifyClient] A hook to reject connections
   * @param {Function} [callback] A listener for the `listening` event
   */
  constructor(options, callback) {
    super();

    options = {
      maxPayload: 100 * 1024 * 1024,
      perMessageDeflate: false,
      handleProtocols: null,
      clientTracking: true,
      verifyClient: null,
      noServer: false,
      backlog: null, // use default (511 as implemented in net.js)
      server: null,
      host: null,
      path: null,
      port: null,
      ...options
    };

    if (options.port == null && !options.server && !options.noServer) {
      throw new TypeError(
        'One of the "port", "server", or "noServer" options must be specified'
      );
    }

    if (options.port != null) {
      this._server = createServer((req, res) => {
        const body = STATUS_CODES[426];

        res.writeHead(426, {
          'Content-Length': body.length,
          'Content-Type': 'text/plain'
        });
        res.end(body);
      });
      this._server.listen(
        options.port,
        options.host,
        options.backlog,
        callback
      );
    } else if (options.server) {
      this._server = options.server;
    }

    if (this._server) {
      const emitConnection = this.emit.bind(this, 'connection');

      this._removeListeners = addListeners(this._server, {
        listening: this.emit.bind(this, 'listening'),
        error: this.emit.bind(this, 'error'),
        upgrade: (req, socket, head) => {
          this.handleUpgrade(req, socket, head, emitConnection);
        }
      });
    }

    if (options.perMessageDeflate === true) options.perMessageDeflate = {};
    if (options.clientTracking) this.clients = new Set();
    this.options = options;
  }

  /**
   * Returns the bound address, the address family name, and port of the server
   * as reported by the operating system if listening on an IP socket.
   * If the server is listening on a pipe or UNIX domain socket, the name is
   * returned as a string.
   *
   * @return {(Object|String|null)} The address of the server
   * @public
   */
  address() {
    if (this.options.noServer) {
      throw new Error('The server is operating in "noServer" mode');
    }

    if (!this._server) return null;
    return this._server.address();
  }

  /**
   * Close the server.
   *
   * @param {Function} [cb] Callback
   * @public
   */
  close(cb) {
    if (cb) this.once('close', cb);

    //
    // Terminate all associated clients.
    //
    if (this.clients) {
      for (const client of this.clients) client.terminate();
    }

    const server = this._server;

    if (server) {
      this._removeListeners();
      this._removeListeners = this._server = null;

      //
      // Close the http server if it was internally created.
      //
      if (this.options.port != null) {
        server.close(() => this.emit('close'));
        return;
      }
    }

    process.nextTick(emitClose, this);
  }

  /**
   * See if a given request should be handled by this server instance.
   *
   * @param {http.IncomingMessage} req Request object to inspect
   * @return {Boolean} `true` if the request is valid, else `false`
   * @public
   */
  shouldHandle(req) {
    if (this.options.path) {
      const index = req.url.indexOf('?');
      const pathname = index !== -1 ? req.url.slice(0, index) : req.url;

      if (pathname !== this.options.path) return false;
    }

    return true;
  }

  /**
   * Handle a HTTP Upgrade request.
   *
   * @param {http.IncomingMessage} req The request object
   * @param {net.Socket} socket The network socket between the server and client
   * @param {Buffer} head The first packet of the upgraded stream
   * @param {Function} cb Callback
   * @public
   */
  handleUpgrade(req, socket, head, cb) {
    socket.on('error', socketOnError);

    const key =
      req.headers['sec-websocket-key'] !== undefined
        ? req.headers['sec-websocket-key'].trim()
        : false;
    const version = +req.headers['sec-websocket-version'];
    const extensions = {};

    if (
      req.method !== 'GET' ||
      req.headers.upgrade.toLowerCase() !== 'websocket' ||
      !key ||
      !keyRegex.test(key) ||
      (version !== 8 && version !== 13) ||
      !this.shouldHandle(req)
    ) {
      return abortHandshake(socket, 400);
    }

    if (this.options.perMessageDeflate) {
      const perMessageDeflate = new PerMessageDeflate(
        this.options.perMessageDeflate,
        true,
        this.options.maxPayload
      );

      try {
        const offers = parse(req.headers['sec-websocket-extensions']);

        if (offers[PerMessageDeflate.extensionName]) {
          perMessageDeflate.accept(offers[PerMessageDeflate.extensionName]);
          extensions[PerMessageDeflate.extensionName] = perMessageDeflate;
        }
      } catch (err) {
        return abortHandshake(socket, 400);
      }
    }

    //
    // Optionally call external client verification handler.
    //
    if (this.options.verifyClient) {
      const info = {
        origin:
          req.headers[`${version === 8 ? 'sec-websocket-origin' : 'origin'}`],
        secure: !!(req.socket.authorized || req.socket.encrypted),
        req
      };

      if (this.options.verifyClient.length === 2) {
        this.options.verifyClient(info, (verified, code, message, headers) => {
          if (!verified) {
            return abortHandshake(socket, code || 401, message, headers);
          }

          this.completeUpgrade(key, extensions, req, socket, head, cb);
        });
        return;
      }

      if (!this.options.verifyClient(info)) return abortHandshake(socket, 401);
    }

    this.completeUpgrade(key, extensions, req, socket, head, cb);
  }

  /**
   * Upgrade the connection to WebSocket.
   *
   * @param {String} key The value of the `Sec-WebSocket-Key` header
   * @param {Object} extensions The accepted extensions
   * @param {http.IncomingMessage} req The request object
   * @param {net.Socket} socket The network socket between the server and client
   * @param {Buffer} head The first packet of the upgraded stream
   * @param {Function} cb Callback
   * @throws {Error} If called more than once with the same socket
   * @private
   */
  completeUpgrade(key, extensions, req, socket, head, cb) {
    //
    // Destroy the socket if the client has already sent a FIN packet.
    //
    if (!socket.readable || !socket.writable) return socket.destroy();

    if (socket[kWebSocket]) {
      throw new Error(
        'server.handleUpgrade() was called more than once with the same ' +
          'socket, possibly due to a misconfiguration'
      );
    }

    const digest = createHash('sha1')
      .update(key + GUID)
      .digest('base64');

    const headers = [
      'HTTP/1.1 101 Switching Protocols',
      'Upgrade: websocket',
      'Connection: Upgrade',
      `Sec-WebSocket-Accept: ${digest}`
    ];

    const ws = new WebSocket(null);
    let protocol = req.headers['sec-websocket-protocol'];

    if (protocol) {
      protocol = protocol.trim().split(/ *, */);

      //
      // Optionally call external protocol selection handler.
      //
      if (this.options.handleProtocols) {
        protocol = this.options.handleProtocols(protocol, req);
      } else {
        protocol = protocol[0];
      }

      if (protocol) {
        headers.push(`Sec-WebSocket-Protocol: ${protocol}`);
        ws._protocol = protocol;
      }
    }

    if (extensions[PerMessageDeflate.extensionName]) {
      const params = extensions[PerMessageDeflate.extensionName].params;
      const value = format({
        [PerMessageDeflate.extensionName]: [params]
      });
      headers.push(`Sec-WebSocket-Extensions: ${value}`);
      ws._extensions = extensions;
    }

    //
    // Allow external modification/inspection of handshake headers.
    //
    this.emit('headers', headers, req);

    socket.write(headers.concat('\r\n').join('\r\n'));
    socket.removeListener('error', socketOnError);

    ws.setSocket(socket, head, this.options.maxPayload);

    if (this.clients) {
      this.clients.add(ws);
      ws.on('close', () => this.clients.delete(ws));
    }

    cb(ws, req);
  }
}

module.exports = WebSocketServer;

/**
 * Add event listeners on an `EventEmitter` using a map of <event, listener>
 * pairs.
 *
 * @param {EventEmitter} server The event emitter
 * @param {Object.<String, Function>} map The listeners to add
 * @return {Function} A function that will remove the added listeners when
 *     called
 * @private
 */
function addListeners(server, map) {
  for (const event of Object.keys(map)) server.on(event, map[event]);

  return function removeListeners() {
    for (const event of Object.keys(map)) {
      server.removeListener(event, map[event]);
    }
  };
}

/**
 * Emit a `'close'` event on an `EventEmitter`.
 *
 * @param {EventEmitter} server The event emitter
 * @private
 */
function emitClose(server) {
  server.emit('close');
}

/**
 * Handle premature socket errors.
 *
 * @private
 */
function socketOnError() {
  this.destroy();
}

/**
 * Close the connection when preconditions are not fulfilled.
 *
 * @param {net.Socket} socket The socket of the upgrade request
 * @param {Number} code The HTTP response status code
 * @param {String} [message] The HTTP response body
 * @param {Object} [headers] Additional HTTP response headers
 * @private
 */
function abortHandshake(socket, code, message, headers) {
  if (socket.writable) {
    message = message || STATUS_CODES[code];
    headers = {
      Connection: 'close',
      'Content-Type': 'text/html',
      'Content-Length': Buffer.byteLength(message),
      ...headers
    };

    socket.write(
      `HTTP/1.1 ${code} ${STATUS_CODES[code]}\r\n` +
        Object.keys(headers)
          .map((h) => `${h}: ${headers[h]}`)
          .join('\r\n') +
        '\r\n\r\n' +
        message
    );
  }

  socket.removeListener('error', socketOnError);
  socket.destroy();
}


/***/ }),

/***/ 30418:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const EventEmitter = __webpack_require__(28614);
const https = __webpack_require__(57211);
const http = __webpack_require__(98605);
const net = __webpack_require__(11631);
const tls = __webpack_require__(4016);
const { randomBytes, createHash } = __webpack_require__(33373);
const { URL } = __webpack_require__(78835);

const PerMessageDeflate = __webpack_require__(99604);
const Receiver = __webpack_require__(1937);
const Sender = __webpack_require__(7748);
const {
  BINARY_TYPES,
  EMPTY_BUFFER,
  GUID,
  kStatusCode,
  kWebSocket,
  NOOP
} = __webpack_require__(94122);
const { addEventListener, removeEventListener } = __webpack_require__(63406);
const { format, parse } = __webpack_require__(97821);
const { toBuffer } = __webpack_require__(20034);

const readyStates = ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'];
const protocolVersions = [8, 13];
const closeTimeout = 30 * 1000;

/**
 * Class representing a WebSocket.
 *
 * @extends EventEmitter
 */
class WebSocket extends EventEmitter {
  /**
   * Create a new `WebSocket`.
   *
   * @param {(String|url.URL)} address The URL to which to connect
   * @param {(String|String[])} [protocols] The subprotocols
   * @param {Object} [options] Connection options
   */
  constructor(address, protocols, options) {
    super();

    this._binaryType = BINARY_TYPES[0];
    this._closeCode = 1006;
    this._closeFrameReceived = false;
    this._closeFrameSent = false;
    this._closeMessage = '';
    this._closeTimer = null;
    this._extensions = {};
    this._protocol = '';
    this._readyState = WebSocket.CONNECTING;
    this._receiver = null;
    this._sender = null;
    this._socket = null;

    if (address !== null) {
      this._bufferedAmount = 0;
      this._isServer = false;
      this._redirects = 0;

      if (Array.isArray(protocols)) {
        protocols = protocols.join(', ');
      } else if (typeof protocols === 'object' && protocols !== null) {
        options = protocols;
        protocols = undefined;
      }

      initAsClient(this, address, protocols, options);
    } else {
      this._isServer = true;
    }
  }

  /**
   * This deviates from the WHATWG interface since ws doesn't support the
   * required default "blob" type (instead we define a custom "nodebuffer"
   * type).
   *
   * @type {String}
   */
  get binaryType() {
    return this._binaryType;
  }

  set binaryType(type) {
    if (!BINARY_TYPES.includes(type)) return;

    this._binaryType = type;

    //
    // Allow to change `binaryType` on the fly.
    //
    if (this._receiver) this._receiver._binaryType = type;
  }

  /**
   * @type {Number}
   */
  get bufferedAmount() {
    if (!this._socket) return this._bufferedAmount;

    return this._socket._writableState.length + this._sender._bufferedBytes;
  }

  /**
   * @type {String}
   */
  get extensions() {
    return Object.keys(this._extensions).join();
  }

  /**
   * @type {String}
   */
  get protocol() {
    return this._protocol;
  }

  /**
   * @type {Number}
   */
  get readyState() {
    return this._readyState;
  }

  /**
   * @type {String}
   */
  get url() {
    return this._url;
  }

  /**
   * Set up the socket and the internal resources.
   *
   * @param {net.Socket} socket The network socket between the server and client
   * @param {Buffer} head The first packet of the upgraded stream
   * @param {Number} [maxPayload=0] The maximum allowed message size
   * @private
   */
  setSocket(socket, head, maxPayload) {
    const receiver = new Receiver(
      this.binaryType,
      this._extensions,
      this._isServer,
      maxPayload
    );

    this._sender = new Sender(socket, this._extensions);
    this._receiver = receiver;
    this._socket = socket;

    receiver[kWebSocket] = this;
    socket[kWebSocket] = this;

    receiver.on('conclude', receiverOnConclude);
    receiver.on('drain', receiverOnDrain);
    receiver.on('error', receiverOnError);
    receiver.on('message', receiverOnMessage);
    receiver.on('ping', receiverOnPing);
    receiver.on('pong', receiverOnPong);

    socket.setTimeout(0);
    socket.setNoDelay();

    if (head.length > 0) socket.unshift(head);

    socket.on('close', socketOnClose);
    socket.on('data', socketOnData);
    socket.on('end', socketOnEnd);
    socket.on('error', socketOnError);

    this._readyState = WebSocket.OPEN;
    this.emit('open');
  }

  /**
   * Emit the `'close'` event.
   *
   * @private
   */
  emitClose() {
    if (!this._socket) {
      this._readyState = WebSocket.CLOSED;
      this.emit('close', this._closeCode, this._closeMessage);
      return;
    }

    if (this._extensions[PerMessageDeflate.extensionName]) {
      this._extensions[PerMessageDeflate.extensionName].cleanup();
    }

    this._receiver.removeAllListeners();
    this._readyState = WebSocket.CLOSED;
    this.emit('close', this._closeCode, this._closeMessage);
  }

  /**
   * Start a closing handshake.
   *
   *          +----------+   +-----------+   +----------+
   *     - - -|ws.close()|-->|close frame|-->|ws.close()|- - -
   *    |     +----------+   +-----------+   +----------+     |
   *          +----------+   +-----------+         |
   * CLOSING  |ws.close()|<--|close frame|<--+-----+       CLOSING
   *          +----------+   +-----------+   |
   *    |           |                        |   +---+        |
   *                +------------------------+-->|fin| - - - -
   *    |         +---+                      |   +---+
   *     - - - - -|fin|<---------------------+
   *              +---+
   *
   * @param {Number} [code] Status code explaining why the connection is closing
   * @param {String} [data] A string explaining why the connection is closing
   * @public
   */
  close(code, data) {
    if (this.readyState === WebSocket.CLOSED) return;
    if (this.readyState === WebSocket.CONNECTING) {
      const msg = 'WebSocket was closed before the connection was established';
      return abortHandshake(this, this._req, msg);
    }

    if (this.readyState === WebSocket.CLOSING) {
      if (this._closeFrameSent && this._closeFrameReceived) this._socket.end();
      return;
    }

    this._readyState = WebSocket.CLOSING;
    this._sender.close(code, data, !this._isServer, (err) => {
      //
      // This error is handled by the `'error'` listener on the socket. We only
      // want to know if the close frame has been sent here.
      //
      if (err) return;

      this._closeFrameSent = true;
      if (this._closeFrameReceived) this._socket.end();
    });

    //
    // Specify a timeout for the closing handshake to complete.
    //
    this._closeTimer = setTimeout(
      this._socket.destroy.bind(this._socket),
      closeTimeout
    );
  }

  /**
   * Send a ping.
   *
   * @param {*} [data] The data to send
   * @param {Boolean} [mask] Indicates whether or not to mask `data`
   * @param {Function} [cb] Callback which is executed when the ping is sent
   * @public
   */
  ping(data, mask, cb) {
    if (this.readyState === WebSocket.CONNECTING) {
      throw new Error('WebSocket is not open: readyState 0 (CONNECTING)');
    }

    if (typeof data === 'function') {
      cb = data;
      data = mask = undefined;
    } else if (typeof mask === 'function') {
      cb = mask;
      mask = undefined;
    }

    if (typeof data === 'number') data = data.toString();

    if (this.readyState !== WebSocket.OPEN) {
      sendAfterClose(this, data, cb);
      return;
    }

    if (mask === undefined) mask = !this._isServer;
    this._sender.ping(data || EMPTY_BUFFER, mask, cb);
  }

  /**
   * Send a pong.
   *
   * @param {*} [data] The data to send
   * @param {Boolean} [mask] Indicates whether or not to mask `data`
   * @param {Function} [cb] Callback which is executed when the pong is sent
   * @public
   */
  pong(data, mask, cb) {
    if (this.readyState === WebSocket.CONNECTING) {
      throw new Error('WebSocket is not open: readyState 0 (CONNECTING)');
    }

    if (typeof data === 'function') {
      cb = data;
      data = mask = undefined;
    } else if (typeof mask === 'function') {
      cb = mask;
      mask = undefined;
    }

    if (typeof data === 'number') data = data.toString();

    if (this.readyState !== WebSocket.OPEN) {
      sendAfterClose(this, data, cb);
      return;
    }

    if (mask === undefined) mask = !this._isServer;
    this._sender.pong(data || EMPTY_BUFFER, mask, cb);
  }

  /**
   * Send a data message.
   *
   * @param {*} data The message to send
   * @param {Object} [options] Options object
   * @param {Boolean} [options.compress] Specifies whether or not to compress
   *     `data`
   * @param {Boolean} [options.binary] Specifies whether `data` is binary or
   *     text
   * @param {Boolean} [options.fin=true] Specifies whether the fragment is the
   *     last one
   * @param {Boolean} [options.mask] Specifies whether or not to mask `data`
   * @param {Function} [cb] Callback which is executed when data is written out
   * @public
   */
  send(data, options, cb) {
    if (this.readyState === WebSocket.CONNECTING) {
      throw new Error('WebSocket is not open: readyState 0 (CONNECTING)');
    }

    if (typeof options === 'function') {
      cb = options;
      options = {};
    }

    if (typeof data === 'number') data = data.toString();

    if (this.readyState !== WebSocket.OPEN) {
      sendAfterClose(this, data, cb);
      return;
    }

    const opts = {
      binary: typeof data !== 'string',
      mask: !this._isServer,
      compress: true,
      fin: true,
      ...options
    };

    if (!this._extensions[PerMessageDeflate.extensionName]) {
      opts.compress = false;
    }

    this._sender.send(data || EMPTY_BUFFER, opts, cb);
  }

  /**
   * Forcibly close the connection.
   *
   * @public
   */
  terminate() {
    if (this.readyState === WebSocket.CLOSED) return;
    if (this.readyState === WebSocket.CONNECTING) {
      const msg = 'WebSocket was closed before the connection was established';
      return abortHandshake(this, this._req, msg);
    }

    if (this._socket) {
      this._readyState = WebSocket.CLOSING;
      this._socket.destroy();
    }
  }
}

readyStates.forEach((readyState, i) => {
  const descriptor = { enumerable: true, value: i };

  Object.defineProperty(WebSocket.prototype, readyState, descriptor);
  Object.defineProperty(WebSocket, readyState, descriptor);
});

[
  'binaryType',
  'bufferedAmount',
  'extensions',
  'protocol',
  'readyState',
  'url'
].forEach((property) => {
  Object.defineProperty(WebSocket.prototype, property, { enumerable: true });
});

//
// Add the `onopen`, `onerror`, `onclose`, and `onmessage` attributes.
// See https://html.spec.whatwg.org/multipage/comms.html#the-websocket-interface
//
['open', 'error', 'close', 'message'].forEach((method) => {
  Object.defineProperty(WebSocket.prototype, `on${method}`, {
    configurable: true,
    enumerable: true,
    /**
     * Return the listener of the event.
     *
     * @return {(Function|undefined)} The event listener or `undefined`
     * @public
     */
    get() {
      const listeners = this.listeners(method);
      for (let i = 0; i < listeners.length; i++) {
        if (listeners[i]._listener) return listeners[i]._listener;
      }

      return undefined;
    },
    /**
     * Add a listener for the event.
     *
     * @param {Function} listener The listener to add
     * @public
     */
    set(listener) {
      const listeners = this.listeners(method);
      for (let i = 0; i < listeners.length; i++) {
        //
        // Remove only the listeners added via `addEventListener`.
        //
        if (listeners[i]._listener) this.removeListener(method, listeners[i]);
      }
      this.addEventListener(method, listener);
    }
  });
});

WebSocket.prototype.addEventListener = addEventListener;
WebSocket.prototype.removeEventListener = removeEventListener;

module.exports = WebSocket;

/**
 * Initialize a WebSocket client.
 *
 * @param {WebSocket} websocket The client to initialize
 * @param {(String|url.URL)} address The URL to which to connect
 * @param {String} [protocols] The subprotocols
 * @param {Object} [options] Connection options
 * @param {(Boolean|Object)} [options.perMessageDeflate=true] Enable/disable
 *     permessage-deflate
 * @param {Number} [options.handshakeTimeout] Timeout in milliseconds for the
 *     handshake request
 * @param {Number} [options.protocolVersion=13] Value of the
 *     `Sec-WebSocket-Version` header
 * @param {String} [options.origin] Value of the `Origin` or
 *     `Sec-WebSocket-Origin` header
 * @param {Number} [options.maxPayload=104857600] The maximum allowed message
 *     size
 * @param {Boolean} [options.followRedirects=false] Whether or not to follow
 *     redirects
 * @param {Number} [options.maxRedirects=10] The maximum number of redirects
 *     allowed
 * @private
 */
function initAsClient(websocket, address, protocols, options) {
  const opts = {
    protocolVersion: protocolVersions[1],
    maxPayload: 100 * 1024 * 1024,
    perMessageDeflate: true,
    followRedirects: false,
    maxRedirects: 10,
    ...options,
    createConnection: undefined,
    socketPath: undefined,
    hostname: undefined,
    protocol: undefined,
    timeout: undefined,
    method: undefined,
    host: undefined,
    path: undefined,
    port: undefined
  };

  if (!protocolVersions.includes(opts.protocolVersion)) {
    throw new RangeError(
      `Unsupported protocol version: ${opts.protocolVersion} ` +
        `(supported versions: ${protocolVersions.join(', ')})`
    );
  }

  let parsedUrl;

  if (address instanceof URL) {
    parsedUrl = address;
    websocket._url = address.href;
  } else {
    parsedUrl = new URL(address);
    websocket._url = address;
  }

  const isUnixSocket = parsedUrl.protocol === 'ws+unix:';

  if (!parsedUrl.host && (!isUnixSocket || !parsedUrl.pathname)) {
    throw new Error(`Invalid URL: ${websocket.url}`);
  }

  const isSecure =
    parsedUrl.protocol === 'wss:' || parsedUrl.protocol === 'https:';
  const defaultPort = isSecure ? 443 : 80;
  const key = randomBytes(16).toString('base64');
  const get = isSecure ? https.get : http.get;
  let perMessageDeflate;

  opts.createConnection = isSecure ? tlsConnect : netConnect;
  opts.defaultPort = opts.defaultPort || defaultPort;
  opts.port = parsedUrl.port || defaultPort;
  opts.host = parsedUrl.hostname.startsWith('[')
    ? parsedUrl.hostname.slice(1, -1)
    : parsedUrl.hostname;
  opts.headers = {
    'Sec-WebSocket-Version': opts.protocolVersion,
    'Sec-WebSocket-Key': key,
    Connection: 'Upgrade',
    Upgrade: 'websocket',
    ...opts.headers
  };
  opts.path = parsedUrl.pathname + parsedUrl.search;
  opts.timeout = opts.handshakeTimeout;

  if (opts.perMessageDeflate) {
    perMessageDeflate = new PerMessageDeflate(
      opts.perMessageDeflate !== true ? opts.perMessageDeflate : {},
      false,
      opts.maxPayload
    );
    opts.headers['Sec-WebSocket-Extensions'] = format({
      [PerMessageDeflate.extensionName]: perMessageDeflate.offer()
    });
  }
  if (protocols) {
    opts.headers['Sec-WebSocket-Protocol'] = protocols;
  }
  if (opts.origin) {
    if (opts.protocolVersion < 13) {
      opts.headers['Sec-WebSocket-Origin'] = opts.origin;
    } else {
      opts.headers.Origin = opts.origin;
    }
  }
  if (parsedUrl.username || parsedUrl.password) {
    opts.auth = `${parsedUrl.username}:${parsedUrl.password}`;
  }

  if (isUnixSocket) {
    const parts = opts.path.split(':');

    opts.socketPath = parts[0];
    opts.path = parts[1];
  }

  let req = (websocket._req = get(opts));

  if (opts.timeout) {
    req.on('timeout', () => {
      abortHandshake(websocket, req, 'Opening handshake has timed out');
    });
  }

  req.on('error', (err) => {
    if (req === null || req.aborted) return;

    req = websocket._req = null;
    websocket._readyState = WebSocket.CLOSING;
    websocket.emit('error', err);
    websocket.emitClose();
  });

  req.on('response', (res) => {
    const location = res.headers.location;
    const statusCode = res.statusCode;

    if (
      location &&
      opts.followRedirects &&
      statusCode >= 300 &&
      statusCode < 400
    ) {
      if (++websocket._redirects > opts.maxRedirects) {
        abortHandshake(websocket, req, 'Maximum redirects exceeded');
        return;
      }

      req.abort();

      const addr = new URL(location, address);

      initAsClient(websocket, addr, protocols, options);
    } else if (!websocket.emit('unexpected-response', req, res)) {
      abortHandshake(
        websocket,
        req,
        `Unexpected server response: ${res.statusCode}`
      );
    }
  });

  req.on('upgrade', (res, socket, head) => {
    websocket.emit('upgrade', res);

    //
    // The user may have closed the connection from a listener of the `upgrade`
    // event.
    //
    if (websocket.readyState !== WebSocket.CONNECTING) return;

    req = websocket._req = null;

    const digest = createHash('sha1')
      .update(key + GUID)
      .digest('base64');

    if (res.headers['sec-websocket-accept'] !== digest) {
      abortHandshake(websocket, socket, 'Invalid Sec-WebSocket-Accept header');
      return;
    }

    const serverProt = res.headers['sec-websocket-protocol'];
    const protList = (protocols || '').split(/, */);
    let protError;

    if (!protocols && serverProt) {
      protError = 'Server sent a subprotocol but none was requested';
    } else if (protocols && !serverProt) {
      protError = 'Server sent no subprotocol';
    } else if (serverProt && !protList.includes(serverProt)) {
      protError = 'Server sent an invalid subprotocol';
    }

    if (protError) {
      abortHandshake(websocket, socket, protError);
      return;
    }

    if (serverProt) websocket._protocol = serverProt;

    if (perMessageDeflate) {
      try {
        const extensions = parse(res.headers['sec-websocket-extensions']);

        if (extensions[PerMessageDeflate.extensionName]) {
          perMessageDeflate.accept(extensions[PerMessageDeflate.extensionName]);
          websocket._extensions[
            PerMessageDeflate.extensionName
          ] = perMessageDeflate;
        }
      } catch (err) {
        abortHandshake(
          websocket,
          socket,
          'Invalid Sec-WebSocket-Extensions header'
        );
        return;
      }
    }

    websocket.setSocket(socket, head, opts.maxPayload);
  });
}

/**
 * Create a `net.Socket` and initiate a connection.
 *
 * @param {Object} options Connection options
 * @return {net.Socket} The newly created socket used to start the connection
 * @private
 */
function netConnect(options) {
  options.path = options.socketPath;
  return net.connect(options);
}

/**
 * Create a `tls.TLSSocket` and initiate a connection.
 *
 * @param {Object} options Connection options
 * @return {tls.TLSSocket} The newly created socket used to start the connection
 * @private
 */
function tlsConnect(options) {
  options.path = undefined;

  if (!options.servername && options.servername !== '') {
    options.servername = net.isIP(options.host) ? '' : options.host;
  }

  return tls.connect(options);
}

/**
 * Abort the handshake and emit an error.
 *
 * @param {WebSocket} websocket The WebSocket instance
 * @param {(http.ClientRequest|net.Socket)} stream The request to abort or the
 *     socket to destroy
 * @param {String} message The error message
 * @private
 */
function abortHandshake(websocket, stream, message) {
  websocket._readyState = WebSocket.CLOSING;

  const err = new Error(message);
  Error.captureStackTrace(err, abortHandshake);

  if (stream.setHeader) {
    stream.abort();

    if (stream.socket && !stream.socket.destroyed) {
      //
      // On Node.js >= 14.3.0 `request.abort()` does not destroy the socket if
      // called after the request completed. See
      // https://github.com/websockets/ws/issues/1869.
      //
      stream.socket.destroy();
    }

    stream.once('abort', websocket.emitClose.bind(websocket));
    websocket.emit('error', err);
  } else {
    stream.destroy(err);
    stream.once('error', websocket.emit.bind(websocket, 'error'));
    stream.once('close', websocket.emitClose.bind(websocket));
  }
}

/**
 * Handle cases where the `ping()`, `pong()`, or `send()` methods are called
 * when the `readyState` attribute is `CLOSING` or `CLOSED`.
 *
 * @param {WebSocket} websocket The WebSocket instance
 * @param {*} [data] The data to send
 * @param {Function} [cb] Callback
 * @private
 */
function sendAfterClose(websocket, data, cb) {
  if (data) {
    const length = toBuffer(data).length;

    //
    // The `_bufferedAmount` property is used only when the peer is a client and
    // the opening handshake fails. Under these circumstances, in fact, the
    // `setSocket()` method is not called, so the `_socket` and `_sender`
    // properties are set to `null`.
    //
    if (websocket._socket) websocket._sender._bufferedBytes += length;
    else websocket._bufferedAmount += length;
  }

  if (cb) {
    const err = new Error(
      `WebSocket is not open: readyState ${websocket.readyState} ` +
        `(${readyStates[websocket.readyState]})`
    );
    cb(err);
  }
}

/**
 * The listener of the `Receiver` `'conclude'` event.
 *
 * @param {Number} code The status code
 * @param {String} reason The reason for closing
 * @private
 */
function receiverOnConclude(code, reason) {
  const websocket = this[kWebSocket];

  websocket._socket.removeListener('data', socketOnData);
  websocket._socket.resume();

  websocket._closeFrameReceived = true;
  websocket._closeMessage = reason;
  websocket._closeCode = code;

  if (code === 1005) websocket.close();
  else websocket.close(code, reason);
}

/**
 * The listener of the `Receiver` `'drain'` event.
 *
 * @private
 */
function receiverOnDrain() {
  this[kWebSocket]._socket.resume();
}

/**
 * The listener of the `Receiver` `'error'` event.
 *
 * @param {(RangeError|Error)} err The emitted error
 * @private
 */
function receiverOnError(err) {
  const websocket = this[kWebSocket];

  websocket._socket.removeListener('data', socketOnData);

  websocket._readyState = WebSocket.CLOSING;
  websocket._closeCode = err[kStatusCode];
  websocket.emit('error', err);
  websocket._socket.destroy();
}

/**
 * The listener of the `Receiver` `'finish'` event.
 *
 * @private
 */
function receiverOnFinish() {
  this[kWebSocket].emitClose();
}

/**
 * The listener of the `Receiver` `'message'` event.
 *
 * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The message
 * @private
 */
function receiverOnMessage(data) {
  this[kWebSocket].emit('message', data);
}

/**
 * The listener of the `Receiver` `'ping'` event.
 *
 * @param {Buffer} data The data included in the ping frame
 * @private
 */
function receiverOnPing(data) {
  const websocket = this[kWebSocket];

  websocket.pong(data, !websocket._isServer, NOOP);
  websocket.emit('ping', data);
}

/**
 * The listener of the `Receiver` `'pong'` event.
 *
 * @param {Buffer} data The data included in the pong frame
 * @private
 */
function receiverOnPong(data) {
  this[kWebSocket].emit('pong', data);
}

/**
 * The listener of the `net.Socket` `'close'` event.
 *
 * @private
 */
function socketOnClose() {
  const websocket = this[kWebSocket];

  this.removeListener('close', socketOnClose);
  this.removeListener('end', socketOnEnd);

  websocket._readyState = WebSocket.CLOSING;

  //
  // The close frame might not have been received or the `'end'` event emitted,
  // for example, if the socket was destroyed due to an error. Ensure that the
  // `receiver` stream is closed after writing any remaining buffered data to
  // it. If the readable side of the socket is in flowing mode then there is no
  // buffered data as everything has been already written and `readable.read()`
  // will return `null`. If instead, the socket is paused, any possible buffered
  // data will be read as a single chunk and emitted synchronously in a single
  // `'data'` event.
  //
  websocket._socket.read();
  websocket._receiver.end();

  this.removeListener('data', socketOnData);
  this[kWebSocket] = undefined;

  clearTimeout(websocket._closeTimer);

  if (
    websocket._receiver._writableState.finished ||
    websocket._receiver._writableState.errorEmitted
  ) {
    websocket.emitClose();
  } else {
    websocket._receiver.on('error', receiverOnFinish);
    websocket._receiver.on('finish', receiverOnFinish);
  }
}

/**
 * The listener of the `net.Socket` `'data'` event.
 *
 * @param {Buffer} chunk A chunk of data
 * @private
 */
function socketOnData(chunk) {
  if (!this[kWebSocket]._receiver.write(chunk)) {
    this.pause();
  }
}

/**
 * The listener of the `net.Socket` `'end'` event.
 *
 * @private
 */
function socketOnEnd() {
  const websocket = this[kWebSocket];

  websocket._readyState = WebSocket.CLOSING;
  websocket._receiver.end();
  this.end();
}

/**
 * The listener of the `net.Socket` `'error'` event.
 *
 * @private
 */
function socketOnError() {
  const websocket = this[kWebSocket];

  this.removeListener('error', socketOnError);
  this.on('error', NOOP);

  if (websocket) {
    websocket._readyState = WebSocket.CLOSING;
    this.destroy();
  }
}


/***/ }),

/***/ 9662:
/***/ ((module) => {

"use strict";

module.exports = function (obj) {
	var ret = {};
	var keys = Object.keys(Object(obj));

	for (var i = 0; i < keys.length; i++) {
		ret[keys[i].toLowerCase()] = obj[keys[i]];
	}

	return ret;
};


/***/ }),

/***/ 7129:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


// A linked list to keep track of recently-used-ness
const Yallist = __webpack_require__(40665)

const MAX = Symbol('max')
const LENGTH = Symbol('length')
const LENGTH_CALCULATOR = Symbol('lengthCalculator')
const ALLOW_STALE = Symbol('allowStale')
const MAX_AGE = Symbol('maxAge')
const DISPOSE = Symbol('dispose')
const NO_DISPOSE_ON_SET = Symbol('noDisposeOnSet')
const LRU_LIST = Symbol('lruList')
const CACHE = Symbol('cache')
const UPDATE_AGE_ON_GET = Symbol('updateAgeOnGet')

const naiveLength = () => 1

// lruList is a yallist where the head is the youngest
// item, and the tail is the oldest.  the list contains the Hit
// objects as the entries.
// Each Hit object has a reference to its Yallist.Node.  This
// never changes.
//
// cache is a Map (or PseudoMap) that matches the keys to
// the Yallist.Node object.
class LRUCache {
  constructor (options) {
    if (typeof options === 'number')
      options = { max: options }

    if (!options)
      options = {}

    if (options.max && (typeof options.max !== 'number' || options.max < 0))
      throw new TypeError('max must be a non-negative number')
    // Kind of weird to have a default max of Infinity, but oh well.
    const max = this[MAX] = options.max || Infinity

    const lc = options.length || naiveLength
    this[LENGTH_CALCULATOR] = (typeof lc !== 'function') ? naiveLength : lc
    this[ALLOW_STALE] = options.stale || false
    if (options.maxAge && typeof options.maxAge !== 'number')
      throw new TypeError('maxAge must be a number')
    this[MAX_AGE] = options.maxAge || 0
    this[DISPOSE] = options.dispose
    this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false
    this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false
    this.reset()
  }

  // resize the cache when the max changes.
  set max (mL) {
    if (typeof mL !== 'number' || mL < 0)
      throw new TypeError('max must be a non-negative number')

    this[MAX] = mL || Infinity
    trim(this)
  }
  get max () {
    return this[MAX]
  }

  set allowStale (allowStale) {
    this[ALLOW_STALE] = !!allowStale
  }
  get allowStale () {
    return this[ALLOW_STALE]
  }

  set maxAge (mA) {
    if (typeof mA !== 'number')
      throw new TypeError('maxAge must be a non-negative number')

    this[MAX_AGE] = mA
    trim(this)
  }
  get maxAge () {
    return this[MAX_AGE]
  }

  // resize the cache when the lengthCalculator changes.
  set lengthCalculator (lC) {
    if (typeof lC !== 'function')
      lC = naiveLength

    if (lC !== this[LENGTH_CALCULATOR]) {
      this[LENGTH_CALCULATOR] = lC
      this[LENGTH] = 0
      this[LRU_LIST].forEach(hit => {
        hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key)
        this[LENGTH] += hit.length
      })
    }
    trim(this)
  }
  get lengthCalculator () { return this[LENGTH_CALCULATOR] }

  get length () { return this[LENGTH] }
  get itemCount () { return this[LRU_LIST].length }

  rforEach (fn, thisp) {
    thisp = thisp || this
    for (let walker = this[LRU_LIST].tail; walker !== null;) {
      const prev = walker.prev
      forEachStep(this, fn, walker, thisp)
      walker = prev
    }
  }

  forEach (fn, thisp) {
    thisp = thisp || this
    for (let walker = this[LRU_LIST].head; walker !== null;) {
      const next = walker.next
      forEachStep(this, fn, walker, thisp)
      walker = next
    }
  }

  keys () {
    return this[LRU_LIST].toArray().map(k => k.key)
  }

  values () {
    return this[LRU_LIST].toArray().map(k => k.value)
  }

  reset () {
    if (this[DISPOSE] &&
        this[LRU_LIST] &&
        this[LRU_LIST].length) {
      this[LRU_LIST].forEach(hit => this[DISPOSE](hit.key, hit.value))
    }

    this[CACHE] = new Map() // hash of items by key
    this[LRU_LIST] = new Yallist() // list of items in order of use recency
    this[LENGTH] = 0 // length of items in the list
  }

  dump () {
    return this[LRU_LIST].map(hit =>
      isStale(this, hit) ? false : {
        k: hit.key,
        v: hit.value,
        e: hit.now + (hit.maxAge || 0)
      }).toArray().filter(h => h)
  }

  dumpLru () {
    return this[LRU_LIST]
  }

  set (key, value, maxAge) {
    maxAge = maxAge || this[MAX_AGE]

    if (maxAge && typeof maxAge !== 'number')
      throw new TypeError('maxAge must be a number')

    const now = maxAge ? Date.now() : 0
    const len = this[LENGTH_CALCULATOR](value, key)

    if (this[CACHE].has(key)) {
      if (len > this[MAX]) {
        del(this, this[CACHE].get(key))
        return false
      }

      const node = this[CACHE].get(key)
      const item = node.value

      // dispose of the old one before overwriting
      // split out into 2 ifs for better coverage tracking
      if (this[DISPOSE]) {
        if (!this[NO_DISPOSE_ON_SET])
          this[DISPOSE](key, item.value)
      }

      item.now = now
      item.maxAge = maxAge
      item.value = value
      this[LENGTH] += len - item.length
      item.length = len
      this.get(key)
      trim(this)
      return true
    }

    const hit = new Entry(key, value, len, now, maxAge)

    // oversized objects fall out of cache automatically.
    if (hit.length > this[MAX]) {
      if (this[DISPOSE])
        this[DISPOSE](key, value)

      return false
    }

    this[LENGTH] += hit.length
    this[LRU_LIST].unshift(hit)
    this[CACHE].set(key, this[LRU_LIST].head)
    trim(this)
    return true
  }

  has (key) {
    if (!this[CACHE].has(key)) return false
    const hit = this[CACHE].get(key).value
    return !isStale(this, hit)
  }

  get (key) {
    return get(this, key, true)
  }

  peek (key) {
    return get(this, key, false)
  }

  pop () {
    const node = this[LRU_LIST].tail
    if (!node)
      return null

    del(this, node)
    return node.value
  }

  del (key) {
    del(this, this[CACHE].get(key))
  }

  load (arr) {
    // reset the cache
    this.reset()

    const now = Date.now()
    // A previous serialized cache has the most recent items first
    for (let l = arr.length - 1; l >= 0; l--) {
      const hit = arr[l]
      const expiresAt = hit.e || 0
      if (expiresAt === 0)
        // the item was created without expiration in a non aged cache
        this.set(hit.k, hit.v)
      else {
        const maxAge = expiresAt - now
        // dont add already expired items
        if (maxAge > 0) {
          this.set(hit.k, hit.v, maxAge)
        }
      }
    }
  }

  prune () {
    this[CACHE].forEach((value, key) => get(this, key, false))
  }
}

const get = (self, key, doUse) => {
  const node = self[CACHE].get(key)
  if (node) {
    const hit = node.value
    if (isStale(self, hit)) {
      del(self, node)
      if (!self[ALLOW_STALE])
        return undefined
    } else {
      if (doUse) {
        if (self[UPDATE_AGE_ON_GET])
          node.value.now = Date.now()
        self[LRU_LIST].unshiftNode(node)
      }
    }
    return hit.value
  }
}

const isStale = (self, hit) => {
  if (!hit || (!hit.maxAge && !self[MAX_AGE]))
    return false

  const diff = Date.now() - hit.now
  return hit.maxAge ? diff > hit.maxAge
    : self[MAX_AGE] && (diff > self[MAX_AGE])
}

const trim = self => {
  if (self[LENGTH] > self[MAX]) {
    for (let walker = self[LRU_LIST].tail;
      self[LENGTH] > self[MAX] && walker !== null;) {
      // We know that we're about to delete this one, and also
      // what the next least recently used key will be, so just
      // go ahead and set it now.
      const prev = walker.prev
      del(self, walker)
      walker = prev
    }
  }
}

const del = (self, node) => {
  if (node) {
    const hit = node.value
    if (self[DISPOSE])
      self[DISPOSE](hit.key, hit.value)

    self[LENGTH] -= hit.length
    self[CACHE].delete(hit.key)
    self[LRU_LIST].removeNode(node)
  }
}

class Entry {
  constructor (key, value, length, now, maxAge) {
    this.key = key
    this.value = value
    this.length = length
    this.now = now
    this.maxAge = maxAge || 0
  }
}

const forEachStep = (self, fn, node, thisp) => {
  let hit = node.value
  if (isStale(self, hit)) {
    del(self, node)
    if (!self[ALLOW_STALE])
      hit = undefined
  }
  if (hit)
    fn.call(thisp, hit.value, hit.key, self)
}

module.exports = LRUCache


/***/ }),

/***/ 21381:
/***/ ((module, exports) => {

"use strict";
// ISC @ Julien Fontanet



// ===================================================================

var construct = typeof Reflect !== "undefined" ? Reflect.construct : undefined;
var defineProperty = Object.defineProperty;

// -------------------------------------------------------------------

var captureStackTrace = Error.captureStackTrace;
if (captureStackTrace === undefined) {
  captureStackTrace = function captureStackTrace(error) {
    var container = new Error();

    defineProperty(error, "stack", {
      configurable: true,
      get: function getStack() {
        var stack = container.stack;

        // Replace property with value for faster future accesses.
        defineProperty(this, "stack", {
          configurable: true,
          value: stack,
          writable: true,
        });

        return stack;
      },
      set: function setStack(stack) {
        defineProperty(error, "stack", {
          configurable: true,
          value: stack,
          writable: true,
        });
      },
    });
  };
}

// -------------------------------------------------------------------

function BaseError(message) {
  if (message !== undefined) {
    defineProperty(this, "message", {
      configurable: true,
      value: message,
      writable: true,
    });
  }

  var cname = this.constructor.name;
  if (cname !== undefined && cname !== this.name) {
    defineProperty(this, "name", {
      configurable: true,
      value: cname,
      writable: true,
    });
  }

  captureStackTrace(this, this.constructor);
}

BaseError.prototype = Object.create(Error.prototype, {
  // See: https://github.com/JsCommunity/make-error/issues/4
  constructor: {
    configurable: true,
    value: BaseError,
    writable: true,
  },
});

// -------------------------------------------------------------------

// Sets the name of a function if possible (depends of the JS engine).
var setFunctionName = (function() {
  function setFunctionName(fn, name) {
    return defineProperty(fn, "name", {
      configurable: true,
      value: name,
    });
  }
  try {
    var f = function() {};
    setFunctionName(f, "foo");
    if (f.name === "foo") {
      return setFunctionName;
    }
  } catch (_) {}
})();

// -------------------------------------------------------------------

function makeError(constructor, super_) {
  if (super_ == null || super_ === Error) {
    super_ = BaseError;
  } else if (typeof super_ !== "function") {
    throw new TypeError("super_ should be a function");
  }

  var name;
  if (typeof constructor === "string") {
    name = constructor;
    constructor =
      construct !== undefined
        ? function() {
            return construct(super_, arguments, this.constructor);
          }
        : function() {
            super_.apply(this, arguments);
          };

    // If the name can be set, do it once and for all.
    if (setFunctionName !== undefined) {
      setFunctionName(constructor, name);
      name = undefined;
    }
  } else if (typeof constructor !== "function") {
    throw new TypeError("constructor should be either a string or a function");
  }

  // Also register the super constructor also as `constructor.super_` just
  // like Node's `util.inherits()`.
  //
  // eslint-disable-next-line dot-notation
  constructor.super_ = constructor["super"] = super_;

  var properties = {
    constructor: {
      configurable: true,
      value: constructor,
      writable: true,
    },
  };

  // If the name could not be set on the constructor, set it on the
  // prototype.
  if (name !== undefined) {
    properties.name = {
      configurable: true,
      value: name,
      writable: true,
    };
  }
  constructor.prototype = Object.create(super_.prototype, properties);

  return constructor;
}
exports = module.exports = makeError;
exports.BaseError = BaseError;


/***/ }),

/***/ 47426:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/*!
 * mime-db
 * Copyright(c) 2014 Jonathan Ong
 * MIT Licensed
 */

/**
 * Module exports.
 */

module.exports = __webpack_require__(73313)


/***/ }),

/***/ 43583:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/*!
 * mime-types
 * Copyright(c) 2014 Jonathan Ong
 * Copyright(c) 2015 Douglas Christopher Wilson
 * MIT Licensed
 */



/**
 * Module dependencies.
 * @private
 */

var db = __webpack_require__(47426)
var extname = __webpack_require__(85622).extname

/**
 * Module variables.
 * @private
 */

var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/
var TEXT_TYPE_REGEXP = /^text\//i

/**
 * Module exports.
 * @public
 */

exports.charset = charset
exports.charsets = { lookup: charset }
exports.contentType = contentType
exports.extension = extension
exports.extensions = Object.create(null)
exports.lookup = lookup
exports.types = Object.create(null)

// Populate the extensions/types maps
populateMaps(exports.extensions, exports.types)

/**
 * Get the default charset for a MIME type.
 *
 * @param {string} type
 * @return {boolean|string}
 */

function charset (type) {
  if (!type || typeof type !== 'string') {
    return false
  }

  // TODO: use media-typer
  var match = EXTRACT_TYPE_REGEXP.exec(type)
  var mime = match && db[match[1].toLowerCase()]

  if (mime && mime.charset) {
    return mime.charset
  }

  // default text/* to utf-8
  if (match && TEXT_TYPE_REGEXP.test(match[1])) {
    return 'UTF-8'
  }

  return false
}

/**
 * Create a full Content-Type header given a MIME type or extension.
 *
 * @param {string} str
 * @return {boolean|string}
 */

function contentType (str) {
  // TODO: should this even be in this module?
  if (!str || typeof str !== 'string') {
    return false
  }

  var mime = str.indexOf('/') === -1
    ? exports.lookup(str)
    : str

  if (!mime) {
    return false
  }

  // TODO: use content-type or other module
  if (mime.indexOf('charset') === -1) {
    var charset = exports.charset(mime)
    if (charset) mime += '; charset=' + charset.toLowerCase()
  }

  return mime
}

/**
 * Get the default extension for a MIME type.
 *
 * @param {string} type
 * @return {boolean|string}
 */

function extension (type) {
  if (!type || typeof type !== 'string') {
    return false
  }

  // TODO: use media-typer
  var match = EXTRACT_TYPE_REGEXP.exec(type)

  // get extensions
  var exts = match && exports.extensions[match[1].toLowerCase()]

  if (!exts || !exts.length) {
    return false
  }

  return exts[0]
}

/**
 * Lookup the MIME type for a file path/extension.
 *
 * @param {string} path
 * @return {boolean|string}
 */

function lookup (path) {
  if (!path || typeof path !== 'string') {
    return false
  }

  // get the extension ("ext" or ".ext" or full path)
  var extension = extname('x.' + path)
    .toLowerCase()
    .substr(1)

  if (!extension) {
    return false
  }

  return exports.types[extension] || false
}

/**
 * Populate the extensions and types maps.
 * @private
 */

function populateMaps (extensions, types) {
  // source preference (least -> most)
  var preference = ['nginx', 'apache', undefined, 'iana']

  Object.keys(db).forEach(function forEachMimeType (type) {
    var mime = db[type]
    var exts = mime.extensions

    if (!exts || !exts.length) {
      return
    }

    // mime -> extensions
    extensions[type] = exts

    // extension -> mime
    for (var i = 0; i < exts.length; i++) {
      var extension = exts[i]

      if (types[extension]) {
        var from = preference.indexOf(db[types[extension]].source)
        var to = preference.indexOf(mime.source)

        if (types[extension] !== 'application/octet-stream' &&
          (from > to || (from === to && types[extension].substr(0, 12) === 'application/'))) {
          // skip the remapping
          continue
        }
      }

      // set the extension -> mime
      types[extension] = type
    }
  })
}


/***/ }),

/***/ 42610:
/***/ ((module) => {

"use strict";


// We define these manually to ensure they're always copied
// even if they would move up the prototype chain
// https://nodejs.org/api/http.html#http_class_http_incomingmessage
const knownProps = [
	'destroy',
	'setTimeout',
	'socket',
	'headers',
	'trailers',
	'rawHeaders',
	'statusCode',
	'httpVersion',
	'httpVersionMinor',
	'httpVersionMajor',
	'rawTrailers',
	'statusMessage'
];

module.exports = (fromStream, toStream) => {
	const fromProps = new Set(Object.keys(fromStream).concat(knownProps));

	for (const prop of fromProps) {
		// Don't overwrite existing properties
		if (prop in toStream) {
			continue;
		}

		toStream[prop] = typeof fromStream[prop] === 'function' ? fromStream[prop].bind(fromStream) : fromStream[prop];
	}
};


/***/ }),

/***/ 83973:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = minimatch
minimatch.Minimatch = Minimatch

var path = { sep: '/' }
try {
  path = __webpack_require__(85622)
} catch (er) {}

var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
var expand = __webpack_require__(33717)

var plTypes = {
  '!': { open: '(?:(?!(?:', close: '))[^/]*?)'},
  '?': { open: '(?:', close: ')?' },
  '+': { open: '(?:', close: ')+' },
  '*': { open: '(?:', close: ')*' },
  '@': { open: '(?:', close: ')' }
}

// any single thing other than /
// don't need to escape / when using new RegExp()
var qmark = '[^/]'

// * => any number of characters
var star = qmark + '*?'

// ** when dots are allowed.  Anything goes, except .. and .
// not (^ or / followed by one or two dots followed by $ or /),
// followed by anything, any number of times.
var twoStarDot = '(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?'

// not a ^ or / followed by a dot,
// followed by anything, any number of times.
var twoStarNoDot = '(?:(?!(?:\\\/|^)\\.).)*?'

// characters that need to be escaped in RegExp.
var reSpecials = charSet('().*{}+?[]^$\\!')

// "abc" -> { a:true, b:true, c:true }
function charSet (s) {
  return s.split('').reduce(function (set, c) {
    set[c] = true
    return set
  }, {})
}

// normalizes slashes.
var slashSplit = /\/+/

minimatch.filter = filter
function filter (pattern, options) {
  options = options || {}
  return function (p, i, list) {
    return minimatch(p, pattern, options)
  }
}

function ext (a, b) {
  a = a || {}
  b = b || {}
  var t = {}
  Object.keys(b).forEach(function (k) {
    t[k] = b[k]
  })
  Object.keys(a).forEach(function (k) {
    t[k] = a[k]
  })
  return t
}

minimatch.defaults = function (def) {
  if (!def || !Object.keys(def).length) return minimatch

  var orig = minimatch

  var m = function minimatch (p, pattern, options) {
    return orig.minimatch(p, pattern, ext(def, options))
  }

  m.Minimatch = function Minimatch (pattern, options) {
    return new orig.Minimatch(pattern, ext(def, options))
  }

  return m
}

Minimatch.defaults = function (def) {
  if (!def || !Object.keys(def).length) return Minimatch
  return minimatch.defaults(def).Minimatch
}

function minimatch (p, pattern, options) {
  if (typeof pattern !== 'string') {
    throw new TypeError('glob pattern string required')
  }

  if (!options) options = {}

  // shortcut: comments match nothing.
  if (!options.nocomment && pattern.charAt(0) === '#') {
    return false
  }

  // "" only matches ""
  if (pattern.trim() === '') return p === ''

  return new Minimatch(pattern, options).match(p)
}

function Minimatch (pattern, options) {
  if (!(this instanceof Minimatch)) {
    return new Minimatch(pattern, options)
  }

  if (typeof pattern !== 'string') {
    throw new TypeError('glob pattern string required')
  }

  if (!options) options = {}
  pattern = pattern.trim()

  // windows support: need to use /, not \
  if (path.sep !== '/') {
    pattern = pattern.split(path.sep).join('/')
  }

  this.options = options
  this.set = []
  this.pattern = pattern
  this.regexp = null
  this.negate = false
  this.comment = false
  this.empty = false

  // make the set of regexps etc.
  this.make()
}

Minimatch.prototype.debug = function () {}

Minimatch.prototype.make = make
function make () {
  // don't do it more than once.
  if (this._made) return

  var pattern = this.pattern
  var options = this.options

  // empty patterns and comments match nothing.
  if (!options.nocomment && pattern.charAt(0) === '#') {
    this.comment = true
    return
  }
  if (!pattern) {
    this.empty = true
    return
  }

  // step 1: figure out negation, etc.
  this.parseNegate()

  // step 2: expand braces
  var set = this.globSet = this.braceExpand()

  if (options.debug) this.debug = console.error

  this.debug(this.pattern, set)

  // step 3: now we have a set, so turn each one into a series of path-portion
  // matching patterns.
  // These will be regexps, except in the case of "**", which is
  // set to the GLOBSTAR object for globstar behavior,
  // and will not contain any / characters
  set = this.globParts = set.map(function (s) {
    return s.split(slashSplit)
  })

  this.debug(this.pattern, set)

  // glob --> regexps
  set = set.map(function (s, si, set) {
    return s.map(this.parse, this)
  }, this)

  this.debug(this.pattern, set)

  // filter out everything that didn't compile properly.
  set = set.filter(function (s) {
    return s.indexOf(false) === -1
  })

  this.debug(this.pattern, set)

  this.set = set
}

Minimatch.prototype.parseNegate = parseNegate
function parseNegate () {
  var pattern = this.pattern
  var negate = false
  var options = this.options
  var negateOffset = 0

  if (options.nonegate) return

  for (var i = 0, l = pattern.length
    ; i < l && pattern.charAt(i) === '!'
    ; i++) {
    negate = !negate
    negateOffset++
  }

  if (negateOffset) this.pattern = pattern.substr(negateOffset)
  this.negate = negate
}

// Brace expansion:
// a{b,c}d -> abd acd
// a{b,}c -> abc ac
// a{0..3}d -> a0d a1d a2d a3d
// a{b,c{d,e}f}g -> abg acdfg acefg
// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg
//
// Invalid sets are not expanded.
// a{2..}b -> a{2..}b
// a{b}c -> a{b}c
minimatch.braceExpand = function (pattern, options) {
  return braceExpand(pattern, options)
}

Minimatch.prototype.braceExpand = braceExpand

function braceExpand (pattern, options) {
  if (!options) {
    if (this instanceof Minimatch) {
      options = this.options
    } else {
      options = {}
    }
  }

  pattern = typeof pattern === 'undefined'
    ? this.pattern : pattern

  if (typeof pattern === 'undefined') {
    throw new TypeError('undefined pattern')
  }

  if (options.nobrace ||
    !pattern.match(/\{.*\}/)) {
    // shortcut. no need to expand.
    return [pattern]
  }

  return expand(pattern)
}

// parse a component of the expanded set.
// At this point, no pattern may contain "/" in it
// so we're going to return a 2d array, where each entry is the full
// pattern, split on '/', and then turned into a regular expression.
// A regexp is made at the end which joins each array with an
// escaped /, and another full one which joins each regexp with |.
//
// Following the lead of Bash 4.1, note that "**" only has special meaning
// when it is the *only* thing in a path portion.  Otherwise, any series
// of * is equivalent to a single *.  Globstar behavior is enabled by
// default, and can be disabled by setting options.noglobstar.
Minimatch.prototype.parse = parse
var SUBPARSE = {}
function parse (pattern, isSub) {
  if (pattern.length > 1024 * 64) {
    throw new TypeError('pattern is too long')
  }

  var options = this.options

  // shortcuts
  if (!options.noglobstar && pattern === '**') return GLOBSTAR
  if (pattern === '') return ''

  var re = ''
  var hasMagic = !!options.nocase
  var escaping = false
  // ? => one single character
  var patternListStack = []
  var negativeLists = []
  var stateChar
  var inClass = false
  var reClassStart = -1
  var classStart = -1
  // . and .. never match anything that doesn't start with .,
  // even when options.dot is set.
  var patternStart = pattern.charAt(0) === '.' ? '' // anything
  // not (start or / followed by . or .. followed by / or end)
  : options.dot ? '(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))'
  : '(?!\\.)'
  var self = this

  function clearStateChar () {
    if (stateChar) {
      // we had some state-tracking character
      // that wasn't consumed by this pass.
      switch (stateChar) {
        case '*':
          re += star
          hasMagic = true
        break
        case '?':
          re += qmark
          hasMagic = true
        break
        default:
          re += '\\' + stateChar
        break
      }
      self.debug('clearStateChar %j %j', stateChar, re)
      stateChar = false
    }
  }

  for (var i = 0, len = pattern.length, c
    ; (i < len) && (c = pattern.charAt(i))
    ; i++) {
    this.debug('%s\t%s %s %j', pattern, i, re, c)

    // skip over any that are escaped.
    if (escaping && reSpecials[c]) {
      re += '\\' + c
      escaping = false
      continue
    }

    switch (c) {
      case '/':
        // completely not allowed, even escaped.
        // Should already be path-split by now.
        return false

      case '\\':
        clearStateChar()
        escaping = true
      continue

      // the various stateChar values
      // for the "extglob" stuff.
      case '?':
      case '*':
      case '+':
      case '@':
      case '!':
        this.debug('%s\t%s %s %j <-- stateChar', pattern, i, re, c)

        // all of those are literals inside a class, except that
        // the glob [!a] means [^a] in regexp
        if (inClass) {
          this.debug('  in class')
          if (c === '!' && i === classStart + 1) c = '^'
          re += c
          continue
        }

        // if we already have a stateChar, then it means
        // that there was something like ** or +? in there.
        // Handle the stateChar, then proceed with this one.
        self.debug('call clearStateChar %j', stateChar)
        clearStateChar()
        stateChar = c
        // if extglob is disabled, then +(asdf|foo) isn't a thing.
        // just clear the statechar *now*, rather than even diving into
        // the patternList stuff.
        if (options.noext) clearStateChar()
      continue

      case '(':
        if (inClass) {
          re += '('
          continue
        }

        if (!stateChar) {
          re += '\\('
          continue
        }

        patternListStack.push({
          type: stateChar,
          start: i - 1,
          reStart: re.length,
          open: plTypes[stateChar].open,
          close: plTypes[stateChar].close
        })
        // negation is (?:(?!js)[^/]*)
        re += stateChar === '!' ? '(?:(?!(?:' : '(?:'
        this.debug('plType %j %j', stateChar, re)
        stateChar = false
      continue

      case ')':
        if (inClass || !patternListStack.length) {
          re += '\\)'
          continue
        }

        clearStateChar()
        hasMagic = true
        var pl = patternListStack.pop()
        // negation is (?:(?!js)[^/]*)
        // The others are (?:<pattern>)<type>
        re += pl.close
        if (pl.type === '!') {
          negativeLists.push(pl)
        }
        pl.reEnd = re.length
      continue

      case '|':
        if (inClass || !patternListStack.length || escaping) {
          re += '\\|'
          escaping = false
          continue
        }

        clearStateChar()
        re += '|'
      continue

      // these are mostly the same in regexp and glob
      case '[':
        // swallow any state-tracking char before the [
        clearStateChar()

        if (inClass) {
          re += '\\' + c
          continue
        }

        inClass = true
        classStart = i
        reClassStart = re.length
        re += c
      continue

      case ']':
        //  a right bracket shall lose its special
        //  meaning and represent itself in
        //  a bracket expression if it occurs
        //  first in the list.  -- POSIX.2 2.8.3.2
        if (i === classStart + 1 || !inClass) {
          re += '\\' + c
          escaping = false
          continue
        }

        // handle the case where we left a class open.
        // "[z-a]" is valid, equivalent to "\[z-a\]"
        if (inClass) {
          // split where the last [ was, make sure we don't have
          // an invalid re. if so, re-walk the contents of the
          // would-be class to re-translate any characters that
          // were passed through as-is
          // TODO: It would probably be faster to determine this
          // without a try/catch and a new RegExp, but it's tricky
          // to do safely.  For now, this is safe and works.
          var cs = pattern.substring(classStart + 1, i)
          try {
            RegExp('[' + cs + ']')
          } catch (er) {
            // not a valid class!
            var sp = this.parse(cs, SUBPARSE)
            re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]'
            hasMagic = hasMagic || sp[1]
            inClass = false
            continue
          }
        }

        // finish up the class.
        hasMagic = true
        inClass = false
        re += c
      continue

      default:
        // swallow any state char that wasn't consumed
        clearStateChar()

        if (escaping) {
          // no need
          escaping = false
        } else if (reSpecials[c]
          && !(c === '^' && inClass)) {
          re += '\\'
        }

        re += c

    } // switch
  } // for

  // handle the case where we left a class open.
  // "[abc" is valid, equivalent to "\[abc"
  if (inClass) {
    // split where the last [ was, and escape it
    // this is a huge pita.  We now have to re-walk
    // the contents of the would-be class to re-translate
    // any characters that were passed through as-is
    cs = pattern.substr(classStart + 1)
    sp = this.parse(cs, SUBPARSE)
    re = re.substr(0, reClassStart) + '\\[' + sp[0]
    hasMagic = hasMagic || sp[1]
  }

  // handle the case where we had a +( thing at the *end*
  // of the pattern.
  // each pattern list stack adds 3 chars, and we need to go through
  // and escape any | chars that were passed through as-is for the regexp.
  // Go through and escape them, taking care not to double-escape any
  // | chars that were already escaped.
  for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {
    var tail = re.slice(pl.reStart + pl.open.length)
    this.debug('setting tail', re, pl)
    // maybe some even number of \, then maybe 1 \, followed by a |
    tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function (_, $1, $2) {
      if (!$2) {
        // the | isn't already escaped, so escape it.
        $2 = '\\'
      }

      // need to escape all those slashes *again*, without escaping the
      // one that we need for escaping the | character.  As it works out,
      // escaping an even number of slashes can be done by simply repeating
      // it exactly after itself.  That's why this trick works.
      //
      // I am sorry that you have to see this.
      return $1 + $1 + $2 + '|'
    })

    this.debug('tail=%j\n   %s', tail, tail, pl, re)
    var t = pl.type === '*' ? star
      : pl.type === '?' ? qmark
      : '\\' + pl.type

    hasMagic = true
    re = re.slice(0, pl.reStart) + t + '\\(' + tail
  }

  // handle trailing things that only matter at the very end.
  clearStateChar()
  if (escaping) {
    // trailing \\
    re += '\\\\'
  }

  // only need to apply the nodot start if the re starts with
  // something that could conceivably capture a dot
  var addPatternStart = false
  switch (re.charAt(0)) {
    case '.':
    case '[':
    case '(': addPatternStart = true
  }

  // Hack to work around lack of negative lookbehind in JS
  // A pattern like: *.!(x).!(y|z) needs to ensure that a name
  // like 'a.xyz.yz' doesn't match.  So, the first negative
  // lookahead, has to look ALL the way ahead, to the end of
  // the pattern.
  for (var n = negativeLists.length - 1; n > -1; n--) {
    var nl = negativeLists[n]

    var nlBefore = re.slice(0, nl.reStart)
    var nlFirst = re.slice(nl.reStart, nl.reEnd - 8)
    var nlLast = re.slice(nl.reEnd - 8, nl.reEnd)
    var nlAfter = re.slice(nl.reEnd)

    nlLast += nlAfter

    // Handle nested stuff like *(*.js|!(*.json)), where open parens
    // mean that we should *not* include the ) in the bit that is considered
    // "after" the negated section.
    var openParensBefore = nlBefore.split('(').length - 1
    var cleanAfter = nlAfter
    for (i = 0; i < openParensBefore; i++) {
      cleanAfter = cleanAfter.replace(/\)[+*?]?/, '')
    }
    nlAfter = cleanAfter

    var dollar = ''
    if (nlAfter === '' && isSub !== SUBPARSE) {
      dollar = '$'
    }
    var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast
    re = newRe
  }

  // if the re is not "" at this point, then we need to make sure
  // it doesn't match against an empty path part.
  // Otherwise a/* will match a/, which it should not.
  if (re !== '' && hasMagic) {
    re = '(?=.)' + re
  }

  if (addPatternStart) {
    re = patternStart + re
  }

  // parsing just a piece of a larger pattern.
  if (isSub === SUBPARSE) {
    return [re, hasMagic]
  }

  // skip the regexp for non-magical patterns
  // unescape anything in it, though, so that it'll be
  // an exact match against a file etc.
  if (!hasMagic) {
    return globUnescape(pattern)
  }

  var flags = options.nocase ? 'i' : ''
  try {
    var regExp = new RegExp('^' + re + '$', flags)
  } catch (er) {
    // If it was an invalid regular expression, then it can't match
    // anything.  This trick looks for a character after the end of
    // the string, which is of course impossible, except in multi-line
    // mode, but it's not a /m regex.
    return new RegExp('$.')
  }

  regExp._glob = pattern
  regExp._src = re

  return regExp
}

minimatch.makeRe = function (pattern, options) {
  return new Minimatch(pattern, options || {}).makeRe()
}

Minimatch.prototype.makeRe = makeRe
function makeRe () {
  if (this.regexp || this.regexp === false) return this.regexp

  // at this point, this.set is a 2d array of partial
  // pattern strings, or "**".
  //
  // It's better to use .match().  This function shouldn't
  // be used, really, but it's pretty convenient sometimes,
  // when you just want to work with a regex.
  var set = this.set

  if (!set.length) {
    this.regexp = false
    return this.regexp
  }
  var options = this.options

  var twoStar = options.noglobstar ? star
    : options.dot ? twoStarDot
    : twoStarNoDot
  var flags = options.nocase ? 'i' : ''

  var re = set.map(function (pattern) {
    return pattern.map(function (p) {
      return (p === GLOBSTAR) ? twoStar
      : (typeof p === 'string') ? regExpEscape(p)
      : p._src
    }).join('\\\/')
  }).join('|')

  // must match entire pattern
  // ending in a * or ** will make it less strict.
  re = '^(?:' + re + ')$'

  // can match anything, as long as it's not this.
  if (this.negate) re = '^(?!' + re + ').*$'

  try {
    this.regexp = new RegExp(re, flags)
  } catch (ex) {
    this.regexp = false
  }
  return this.regexp
}

minimatch.match = function (list, pattern, options) {
  options = options || {}
  var mm = new Minimatch(pattern, options)
  list = list.filter(function (f) {
    return mm.match(f)
  })
  if (mm.options.nonull && !list.length) {
    list.push(pattern)
  }
  return list
}

Minimatch.prototype.match = match
function match (f, partial) {
  this.debug('match', f, this.pattern)
  // short-circuit in the case of busted things.
  // comments, etc.
  if (this.comment) return false
  if (this.empty) return f === ''

  if (f === '/' && partial) return true

  var options = this.options

  // windows: need to use /, not \
  if (path.sep !== '/') {
    f = f.split(path.sep).join('/')
  }

  // treat the test path as a set of pathparts.
  f = f.split(slashSplit)
  this.debug(this.pattern, 'split', f)

  // just ONE of the pattern sets in this.set needs to match
  // in order for it to be valid.  If negating, then just one
  // match means that we have failed.
  // Either way, return on the first hit.

  var set = this.set
  this.debug(this.pattern, 'set', set)

  // Find the basename of the path by looking for the last non-empty segment
  var filename
  var i
  for (i = f.length - 1; i >= 0; i--) {
    filename = f[i]
    if (filename) break
  }

  for (i = 0; i < set.length; i++) {
    var pattern = set[i]
    var file = f
    if (options.matchBase && pattern.length === 1) {
      file = [filename]
    }
    var hit = this.matchOne(file, pattern, partial)
    if (hit) {
      if (options.flipNegate) return true
      return !this.negate
    }
  }

  // didn't get any hits.  this is success if it's a negative
  // pattern, failure otherwise.
  if (options.flipNegate) return false
  return this.negate
}

// set partial to true to test if, for example,
// "/a/b" matches the start of "/*/b/*/d"
// Partial means, if you run out of file before you run
// out of pattern, then that's fine, as long as all
// the parts match.
Minimatch.prototype.matchOne = function (file, pattern, partial) {
  var options = this.options

  this.debug('matchOne',
    { 'this': this, file: file, pattern: pattern })

  this.debug('matchOne', file.length, pattern.length)

  for (var fi = 0,
      pi = 0,
      fl = file.length,
      pl = pattern.length
      ; (fi < fl) && (pi < pl)
      ; fi++, pi++) {
    this.debug('matchOne loop')
    var p = pattern[pi]
    var f = file[fi]

    this.debug(pattern, p, f)

    // should be impossible.
    // some invalid regexp stuff in the set.
    if (p === false) return false

    if (p === GLOBSTAR) {
      this.debug('GLOBSTAR', [pattern, p, f])

      // "**"
      // a/**/b/**/c would match the following:
      // a/b/x/y/z/c
      // a/x/y/z/b/c
      // a/b/x/b/x/c
      // a/b/c
      // To do this, take the rest of the pattern after
      // the **, and see if it would match the file remainder.
      // If so, return success.
      // If not, the ** "swallows" a segment, and try again.
      // This is recursively awful.
      //
      // a/**/b/**/c matching a/b/x/y/z/c
      // - a matches a
      // - doublestar
      //   - matchOne(b/x/y/z/c, b/**/c)
      //     - b matches b
      //     - doublestar
      //       - matchOne(x/y/z/c, c) -> no
      //       - matchOne(y/z/c, c) -> no
      //       - matchOne(z/c, c) -> no
      //       - matchOne(c, c) yes, hit
      var fr = fi
      var pr = pi + 1
      if (pr === pl) {
        this.debug('** at the end')
        // a ** at the end will just swallow the rest.
        // We have found a match.
        // however, it will not swallow /.x, unless
        // options.dot is set.
        // . and .. are *never* matched by **, for explosively
        // exponential reasons.
        for (; fi < fl; fi++) {
          if (file[fi] === '.' || file[fi] === '..' ||
            (!options.dot && file[fi].charAt(0) === '.')) return false
        }
        return true
      }

      // ok, let's see if we can swallow whatever we can.
      while (fr < fl) {
        var swallowee = file[fr]

        this.debug('\nglobstar while', file, fr, pattern, pr, swallowee)

        // XXX remove this slice.  Just pass the start index.
        if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
          this.debug('globstar found match!', fr, fl, swallowee)
          // found a match.
          return true
        } else {
          // can't swallow "." or ".." ever.
          // can only swallow ".foo" when explicitly asked.
          if (swallowee === '.' || swallowee === '..' ||
            (!options.dot && swallowee.charAt(0) === '.')) {
            this.debug('dot detected!', file, fr, pattern, pr)
            break
          }

          // ** swallows a segment, and continue.
          this.debug('globstar swallow a segment, and continue')
          fr++
        }
      }

      // no match was found.
      // However, in partial mode, we can't say this is necessarily over.
      // If there's more *pattern* left, then
      if (partial) {
        // ran out of file
        this.debug('\n>>> no match, partial?', file, fr, pattern, pr)
        if (fr === fl) return true
      }
      return false
    }

    // something other than **
    // non-magic patterns just have to match exactly
    // patterns with magic have been turned into regexps.
    var hit
    if (typeof p === 'string') {
      if (options.nocase) {
        hit = f.toLowerCase() === p.toLowerCase()
      } else {
        hit = f === p
      }
      this.debug('string match', p, f, hit)
    } else {
      hit = f.match(p)
      this.debug('pattern match', p, f, hit)
    }

    if (!hit) return false
  }

  // Note: ending in / means that we'll get a final ""
  // at the end of the pattern.  This can only match a
  // corresponding "" at the end of the file.
  // If the file ends in /, then it can only match a
  // a pattern that ends in /, unless the pattern just
  // doesn't have any more for it. But, a/b/ should *not*
  // match "a/b/*", even though "" matches against the
  // [^/]*? pattern, except in partial mode, where it might
  // simply not be reached yet.
  // However, a/b/ should still satisfy a/*

  // now either we fell off the end of the pattern, or we're done.
  if (fi === fl && pi === pl) {
    // ran out of pattern and filename at the same time.
    // an exact hit!
    return true
  } else if (fi === fl) {
    // ran out of file, but still had pattern left.
    // this is ok if we're doing the match as part of
    // a glob fs traversal.
    return partial
  } else if (pi === pl) {
    // ran out of pattern, still have file left.
    // this is only acceptable if we're on the very last
    // empty segment of a file with a trailing slash.
    // a/* should match a/b/
    var emptyFileEnd = (fi === fl - 1) && (file[fi] === '')
    return emptyFileEnd
  }

  // should be unreachable.
  throw new Error('wtf?')
}

// replace stuff like \* with *
function globUnescape (s) {
  return s.replace(/\\(.)/g, '$1')
}

function regExpEscape (s) {
  return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&')
}


/***/ }),

/***/ 17952:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// TODO: Use the `URL` global when targeting Node.js 10
const URLParser = typeof URL === 'undefined' ? __webpack_require__(78835).URL : URL;

// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
const DATA_URL_DEFAULT_MIME_TYPE = 'text/plain';
const DATA_URL_DEFAULT_CHARSET = 'us-ascii';

const testParameter = (name, filters) => {
	return filters.some(filter => filter instanceof RegExp ? filter.test(name) : filter === name);
};

const normalizeDataURL = (urlString, {stripHash}) => {
	const parts = urlString.match(/^data:(.*?),(.*?)(?:#(.*))?$/);

	if (!parts) {
		throw new Error(`Invalid URL: ${urlString}`);
	}

	const mediaType = parts[1].split(';');
	const body = parts[2];
	const hash = stripHash ? '' : parts[3];

	let base64 = false;

	if (mediaType[mediaType.length - 1] === 'base64') {
		mediaType.pop();
		base64 = true;
	}

	// Lowercase MIME type
	const mimeType = (mediaType.shift() || '').toLowerCase();
	const attributes = mediaType
		.map(attribute => {
			let [key, value = ''] = attribute.split('=').map(string => string.trim());

			// Lowercase `charset`
			if (key === 'charset') {
				value = value.toLowerCase();

				if (value === DATA_URL_DEFAULT_CHARSET) {
					return '';
				}
			}

			return `${key}${value ? `=${value}` : ''}`;
		})
		.filter(Boolean);

	const normalizedMediaType = [
		...attributes
	];

	if (base64) {
		normalizedMediaType.push('base64');
	}

	if (normalizedMediaType.length !== 0 || (mimeType && mimeType !== DATA_URL_DEFAULT_MIME_TYPE)) {
		normalizedMediaType.unshift(mimeType);
	}

	return `data:${normalizedMediaType.join(';')},${base64 ? body.trim() : body}${hash ? `#${hash}` : ''}`;
};

const normalizeUrl = (urlString, options) => {
	options = {
		defaultProtocol: 'http:',
		normalizeProtocol: true,
		forceHttp: false,
		forceHttps: false,
		stripAuthentication: true,
		stripHash: false,
		stripWWW: true,
		removeQueryParameters: [/^utm_\w+/i],
		removeTrailingSlash: true,
		removeDirectoryIndex: false,
		sortQueryParameters: true,
		...options
	};

	// TODO: Remove this at some point in the future
	if (Reflect.has(options, 'normalizeHttps')) {
		throw new Error('options.normalizeHttps is renamed to options.forceHttp');
	}

	if (Reflect.has(options, 'normalizeHttp')) {
		throw new Error('options.normalizeHttp is renamed to options.forceHttps');
	}

	if (Reflect.has(options, 'stripFragment')) {
		throw new Error('options.stripFragment is renamed to options.stripHash');
	}

	urlString = urlString.trim();

	// Data URL
	if (/^data:/i.test(urlString)) {
		return normalizeDataURL(urlString, options);
	}

	const hasRelativeProtocol = urlString.startsWith('//');
	const isRelativeUrl = !hasRelativeProtocol && /^\.*\//.test(urlString);

	// Prepend protocol
	if (!isRelativeUrl) {
		urlString = urlString.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, options.defaultProtocol);
	}

	const urlObj = new URLParser(urlString);

	if (options.forceHttp && options.forceHttps) {
		throw new Error('The `forceHttp` and `forceHttps` options cannot be used together');
	}

	if (options.forceHttp && urlObj.protocol === 'https:') {
		urlObj.protocol = 'http:';
	}

	if (options.forceHttps && urlObj.protocol === 'http:') {
		urlObj.protocol = 'https:';
	}

	// Remove auth
	if (options.stripAuthentication) {
		urlObj.username = '';
		urlObj.password = '';
	}

	// Remove hash
	if (options.stripHash) {
		urlObj.hash = '';
	}

	// Remove duplicate slashes if not preceded by a protocol
	if (urlObj.pathname) {
		// TODO: Use the following instead when targeting Node.js 10
		// `urlObj.pathname = urlObj.pathname.replace(/(?<!https?:)\/{2,}/g, '/');`
		urlObj.pathname = urlObj.pathname.replace(/((?!:).|^)\/{2,}/g, (_, p1) => {
			if (/^(?!\/)/g.test(p1)) {
				return `${p1}/`;
			}

			return '/';
		});
	}

	// Decode URI octets
	if (urlObj.pathname) {
		urlObj.pathname = decodeURI(urlObj.pathname);
	}

	// Remove directory index
	if (options.removeDirectoryIndex === true) {
		options.removeDirectoryIndex = [/^index\.[a-z]+$/];
	}

	if (Array.isArray(options.removeDirectoryIndex) && options.removeDirectoryIndex.length > 0) {
		let pathComponents = urlObj.pathname.split('/');
		const lastComponent = pathComponents[pathComponents.length - 1];

		if (testParameter(lastComponent, options.removeDirectoryIndex)) {
			pathComponents = pathComponents.slice(0, pathComponents.length - 1);
			urlObj.pathname = pathComponents.slice(1).join('/') + '/';
		}
	}

	if (urlObj.hostname) {
		// Remove trailing dot
		urlObj.hostname = urlObj.hostname.replace(/\.$/, '');

		// Remove `www.`
		if (options.stripWWW && /^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(urlObj.hostname)) {
			// Each label should be max 63 at length (min: 2).
			// The extension should be max 5 at length (min: 2).
			// Source: https://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_host_names
			urlObj.hostname = urlObj.hostname.replace(/^www\./, '');
		}
	}

	// Remove query unwanted parameters
	if (Array.isArray(options.removeQueryParameters)) {
		for (const key of [...urlObj.searchParams.keys()]) {
			if (testParameter(key, options.removeQueryParameters)) {
				urlObj.searchParams.delete(key);
			}
		}
	}

	// Sort query parameters
	if (options.sortQueryParameters) {
		urlObj.searchParams.sort();
	}

	if (options.removeTrailingSlash) {
		urlObj.pathname = urlObj.pathname.replace(/\/$/, '');
	}

	// Take advantage of many of the Node `url` normalizations
	urlString = urlObj.toString();

	// Remove ending `/`
	if ((options.removeTrailingSlash || urlObj.pathname === '/') && urlObj.hash === '') {
		urlString = urlString.replace(/\/$/, '');
	}

	// Restore relative protocol, if applicable
	if (hasRelativeProtocol && !options.normalizeProtocol) {
		urlString = urlString.replace(/^http:\/\//, '//');
	}

	// Remove http/https
	if (options.stripProtocol) {
		urlString = urlString.replace(/^(?:https?:)?\/\//, '');
	}

	return urlString;
};

module.exports = normalizeUrl;
// TODO: Remove this for the next major release
module.exports.default = normalizeUrl;


/***/ }),

/***/ 43248:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var crypto = __webpack_require__(33373)

function sha (key, body, algorithm) {
  return crypto.createHmac(algorithm, key).update(body).digest('base64')
}

function rsa (key, body) {
  return crypto.createSign('RSA-SHA1').update(body).sign(key, 'base64')
}

function rfc3986 (str) {
  return encodeURIComponent(str)
    .replace(/!/g,'%21')
    .replace(/\*/g,'%2A')
    .replace(/\(/g,'%28')
    .replace(/\)/g,'%29')
    .replace(/'/g,'%27')
}

// Maps object to bi-dimensional array
// Converts { foo: 'A', bar: [ 'b', 'B' ]} to
// [ ['foo', 'A'], ['bar', 'b'], ['bar', 'B'] ]
function map (obj) {
  var key, val, arr = []
  for (key in obj) {
    val = obj[key]
    if (Array.isArray(val))
      for (var i = 0; i < val.length; i++)
        arr.push([key, val[i]])
    else if (typeof val === 'object')
      for (var prop in val)
        arr.push([key + '[' + prop + ']', val[prop]])
    else
      arr.push([key, val])
  }
  return arr
}

// Compare function for sort
function compare (a, b) {
  return a > b ? 1 : a < b ? -1 : 0
}

function generateBase (httpMethod, base_uri, params) {
  // adapted from https://dev.twitter.com/docs/auth/oauth and 
  // https://dev.twitter.com/docs/auth/creating-signature

  // Parameter normalization
  // http://tools.ietf.org/html/rfc5849#section-3.4.1.3.2
  var normalized = map(params)
  // 1.  First, the name and value of each parameter are encoded
  .map(function (p) {
    return [ rfc3986(p[0]), rfc3986(p[1] || '') ]
  })
  // 2.  The parameters are sorted by name, using ascending byte value
  //     ordering.  If two or more parameters share the same name, they
  //     are sorted by their value.
  .sort(function (a, b) {
    return compare(a[0], b[0]) || compare(a[1], b[1])
  })
  // 3.  The name of each parameter is concatenated to its corresponding
  //     value using an "=" character (ASCII code 61) as a separator, even
  //     if the value is empty.
  .map(function (p) { return p.join('=') })
   // 4.  The sorted name/value pairs are concatenated together into a
   //     single string by using an "&" character (ASCII code 38) as
   //     separator.
  .join('&')

  var base = [
    rfc3986(httpMethod ? httpMethod.toUpperCase() : 'GET'),
    rfc3986(base_uri),
    rfc3986(normalized)
  ].join('&')

  return base
}

function hmacsign (httpMethod, base_uri, params, consumer_secret, token_secret) {
  var base = generateBase(httpMethod, base_uri, params)
  var key = [
    consumer_secret || '',
    token_secret || ''
  ].map(rfc3986).join('&')

  return sha(key, base, 'sha1')
}

function hmacsign256 (httpMethod, base_uri, params, consumer_secret, token_secret) {
  var base = generateBase(httpMethod, base_uri, params)
  var key = [
    consumer_secret || '',
    token_secret || ''
  ].map(rfc3986).join('&')

  return sha(key, base, 'sha256')
}

function rsasign (httpMethod, base_uri, params, private_key, token_secret) {
  var base = generateBase(httpMethod, base_uri, params)
  var key = private_key || ''

  return rsa(key, base)
}

function plaintext (consumer_secret, token_secret) {
  var key = [
    consumer_secret || '',
    token_secret || ''
  ].map(rfc3986).join('&')

  return key
}

function sign (signMethod, httpMethod, base_uri, params, consumer_secret, token_secret) {
  var method
  var skipArgs = 1

  switch (signMethod) {
    case 'RSA-SHA1':
      method = rsasign
      break
    case 'HMAC-SHA1':
      method = hmacsign
      break
    case 'HMAC-SHA256':
      method = hmacsign256
      break
    case 'PLAINTEXT':
      method = plaintext
      skipArgs = 4
      break
    default:
     throw new Error('Signature method not supported: ' + signMethod)
  }

  return method.apply(null, [].slice.call(arguments, skipArgs))
}

exports.hmacsign = hmacsign
exports.hmacsign256 = hmacsign256
exports.rsasign = rsasign
exports.plaintext = plaintext
exports.sign = sign
exports.rfc3986 = rfc3986
exports.generateBase = generateBase

/***/ }),

/***/ 24856:
/***/ ((module, exports, __webpack_require__) => {

"use strict";


var crypto = __webpack_require__(33373);

/**
 * Exported function
 *
 * Options:
 *
 *  - `algorithm` hash algo to be used by this instance: *'sha1', 'md5'
 *  - `excludeValues` {true|*false} hash object keys, values ignored
 *  - `encoding` hash encoding, supports 'buffer', '*hex', 'binary', 'base64'
 *  - `ignoreUnknown` {true|*false} ignore unknown object types
 *  - `replacer` optional function that replaces values before hashing
 *  - `respectFunctionProperties` {*true|false} consider function properties when hashing
 *  - `respectFunctionNames` {*true|false} consider 'name' property of functions for hashing
 *  - `respectType` {*true|false} Respect special properties (prototype, constructor)
 *    when hashing to distinguish between types
 *  - `unorderedArrays` {true|*false} Sort all arrays before hashing
 *  - `unorderedSets` {*true|false} Sort `Set` and `Map` instances before hashing
 *  * = default
 *
 * @param {object} object value to hash
 * @param {object} options hashing options
 * @return {string} hash value
 * @api public
 */
exports = module.exports = objectHash;

function objectHash(object, options){
  options = applyDefaults(object, options);

  return hash(object, options);
}

/**
 * Exported sugar methods
 *
 * @param {object} object value to hash
 * @return {string} hash value
 * @api public
 */
exports.sha1 = function(object){
  return objectHash(object);
};
exports.keys = function(object){
  return objectHash(object, {excludeValues: true, algorithm: 'sha1', encoding: 'hex'});
};
exports.MD5 = function(object){
  return objectHash(object, {algorithm: 'md5', encoding: 'hex'});
};
exports.keysMD5 = function(object){
  return objectHash(object, {algorithm: 'md5', encoding: 'hex', excludeValues: true});
};

// Internals
var hashes = crypto.getHashes ? crypto.getHashes().slice() : ['sha1', 'md5'];
hashes.push('passthrough');
var encodings = ['buffer', 'hex', 'binary', 'base64'];

function applyDefaults(object, sourceOptions){
  sourceOptions = sourceOptions || {};

  // create a copy rather than mutating
  var options = {};
  options.algorithm = sourceOptions.algorithm || 'sha1';
  options.encoding = sourceOptions.encoding || 'hex';
  options.excludeValues = sourceOptions.excludeValues ? true : false;
  options.algorithm = options.algorithm.toLowerCase();
  options.encoding = options.encoding.toLowerCase();
  options.ignoreUnknown = sourceOptions.ignoreUnknown !== true ? false : true; // default to false
  options.respectType = sourceOptions.respectType === false ? false : true; // default to true
  options.respectFunctionNames = sourceOptions.respectFunctionNames === false ? false : true;
  options.respectFunctionProperties = sourceOptions.respectFunctionProperties === false ? false : true;
  options.unorderedArrays = sourceOptions.unorderedArrays !== true ? false : true; // default to false
  options.unorderedSets = sourceOptions.unorderedSets === false ? false : true; // default to false
  options.unorderedObjects = sourceOptions.unorderedObjects === false ? false : true; // default to true
  options.replacer = sourceOptions.replacer || undefined;
  options.excludeKeys = sourceOptions.excludeKeys || undefined;

  if(typeof object === 'undefined') {
    throw new Error('Object argument required.');
  }

  // if there is a case-insensitive match in the hashes list, accept it
  // (i.e. SHA256 for sha256)
  for (var i = 0; i < hashes.length; ++i) {
    if (hashes[i].toLowerCase() === options.algorithm.toLowerCase()) {
      options.algorithm = hashes[i];
    }
  }

  if(hashes.indexOf(options.algorithm) === -1){
    throw new Error('Algorithm "' + options.algorithm + '"  not supported. ' +
      'supported values: ' + hashes.join(', '));
  }

  if(encodings.indexOf(options.encoding) === -1 &&
     options.algorithm !== 'passthrough'){
    throw new Error('Encoding "' + options.encoding + '"  not supported. ' +
      'supported values: ' + encodings.join(', '));
  }

  return options;
}

/** Check if the given function is a native function */
function isNativeFunction(f) {
  if ((typeof f) !== 'function') {
    return false;
  }
  var exp = /^function\s+\w*\s*\(\s*\)\s*{\s+\[native code\]\s+}$/i;
  return exp.exec(Function.prototype.toString.call(f)) != null;
}

function hash(object, options) {
  var hashingStream;

  if (options.algorithm !== 'passthrough') {
    hashingStream = crypto.createHash(options.algorithm);
  } else {
    hashingStream = new PassThrough();
  }

  if (typeof hashingStream.write === 'undefined') {
    hashingStream.write = hashingStream.update;
    hashingStream.end   = hashingStream.update;
  }

  var hasher = typeHasher(options, hashingStream);
  hasher.dispatch(object);
  if (!hashingStream.update) {
    hashingStream.end('');
  }

  if (hashingStream.digest) {
    return hashingStream.digest(options.encoding === 'buffer' ? undefined : options.encoding);
  }

  var buf = hashingStream.read();
  if (options.encoding === 'buffer') {
    return buf;
  }

  return buf.toString(options.encoding);
}

/**
 * Expose streaming API
 *
 * @param {object} object  Value to serialize
 * @param {object} options  Options, as for hash()
 * @param {object} stream  A stream to write the serializiation to
 * @api public
 */
exports.writeToStream = function(object, options, stream) {
  if (typeof stream === 'undefined') {
    stream = options;
    options = {};
  }

  options = applyDefaults(object, options);

  return typeHasher(options, stream).dispatch(object);
};

function typeHasher(options, writeTo, context){
  context = context || [];
  var write = function(str) {
    if (writeTo.update) {
      return writeTo.update(str, 'utf8');
    } else {
      return writeTo.write(str, 'utf8');
    }
  };

  return {
    dispatch: function(value){
      if (options.replacer) {
        value = options.replacer(value);
      }

      var type = typeof value;
      if (value === null) {
        type = 'null';
      }

      //console.log("[DEBUG] Dispatch: ", value, "->", type, " -> ", "_" + type);

      return this['_' + type](value);
    },
    _object: function(object) {
      var pattern = (/\[object (.*)\]/i);
      var objString = Object.prototype.toString.call(object);
      var objType = pattern.exec(objString);
      if (!objType) { // object type did not match [object ...]
        objType = 'unknown:[' + objString + ']';
      } else {
        objType = objType[1]; // take only the class name
      }

      objType = objType.toLowerCase();

      var objectNumber = null;

      if ((objectNumber = context.indexOf(object)) >= 0) {
        return this.dispatch('[CIRCULAR:' + objectNumber + ']');
      } else {
        context.push(object);
      }

      if (typeof Buffer !== 'undefined' && Buffer.isBuffer && Buffer.isBuffer(object)) {
        write('buffer:');
        return write(object);
      }

      if(objType !== 'object' && objType !== 'function' && objType !== 'asyncfunction') {
        if(this['_' + objType]) {
          this['_' + objType](object);
        } else if (options.ignoreUnknown) {
          return write('[' + objType + ']');
        } else {
          throw new Error('Unknown object type "' + objType + '"');
        }
      }else{
        var keys = Object.keys(object);
        if (options.unorderedObjects) {
          keys = keys.sort();
        }
        // Make sure to incorporate special properties, so
        // Types with different prototypes will produce
        // a different hash and objects derived from
        // different functions (`new Foo`, `new Bar`) will
        // produce different hashes.
        // We never do this for native functions since some
        // seem to break because of that.
        if (options.respectType !== false && !isNativeFunction(object)) {
          keys.splice(0, 0, 'prototype', '__proto__', 'constructor');
        }

        if (options.excludeKeys) {
          keys = keys.filter(function(key) { return !options.excludeKeys(key); });
        }

        write('object:' + keys.length + ':');
        var self = this;
        return keys.forEach(function(key){
          self.dispatch(key);
          write(':');
          if(!options.excludeValues) {
            self.dispatch(object[key]);
          }
          write(',');
        });
      }
    },
    _array: function(arr, unordered){
      unordered = typeof unordered !== 'undefined' ? unordered :
        options.unorderedArrays !== false; // default to options.unorderedArrays

      var self = this;
      write('array:' + arr.length + ':');
      if (!unordered || arr.length <= 1) {
        return arr.forEach(function(entry) {
          return self.dispatch(entry);
        });
      }

      // the unordered case is a little more complicated:
      // since there is no canonical ordering on objects,
      // i.e. {a:1} < {a:2} and {a:1} > {a:2} are both false,
      // we first serialize each entry using a PassThrough stream
      // before sorting.
      // also: we can’t use the same context array for all entries
      // since the order of hashing should *not* matter. instead,
      // we keep track of the additions to a copy of the context array
      // and add all of them to the global context array when we’re done
      var contextAdditions = [];
      var entries = arr.map(function(entry) {
        var strm = new PassThrough();
        var localContext = context.slice(); // make copy
        var hasher = typeHasher(options, strm, localContext);
        hasher.dispatch(entry);
        // take only what was added to localContext and append it to contextAdditions
        contextAdditions = contextAdditions.concat(localContext.slice(context.length));
        return strm.read().toString();
      });
      context = context.concat(contextAdditions);
      entries.sort();
      return this._array(entries, false);
    },
    _date: function(date){
      return write('date:' + date.toJSON());
    },
    _symbol: function(sym){
      return write('symbol:' + sym.toString());
    },
    _error: function(err){
      return write('error:' + err.toString());
    },
    _boolean: function(bool){
      return write('bool:' + bool.toString());
    },
    _string: function(string){
      write('string:' + string.length + ':');
      write(string.toString());
    },
    _function: function(fn){
      write('fn:');
      if (isNativeFunction(fn)) {
        this.dispatch('[native]');
      } else {
        this.dispatch(fn.toString());
      }

      if (options.respectFunctionNames !== false) {
        // Make sure we can still distinguish native functions
        // by their name, otherwise String and Function will
        // have the same hash
        this.dispatch("function-name:" + String(fn.name));
      }

      if (options.respectFunctionProperties) {
        this._object(fn);
      }
    },
    _number: function(number){
      return write('number:' + number.toString());
    },
    _xml: function(xml){
      return write('xml:' + xml.toString());
    },
    _null: function() {
      return write('Null');
    },
    _undefined: function() {
      return write('Undefined');
    },
    _regexp: function(regex){
      return write('regex:' + regex.toString());
    },
    _uint8array: function(arr){
      write('uint8array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _uint8clampedarray: function(arr){
      write('uint8clampedarray:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _int8array: function(arr){
      write('uint8array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _uint16array: function(arr){
      write('uint16array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _int16array: function(arr){
      write('uint16array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _uint32array: function(arr){
      write('uint32array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _int32array: function(arr){
      write('uint32array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _float32array: function(arr){
      write('float32array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _float64array: function(arr){
      write('float64array:');
      return this.dispatch(Array.prototype.slice.call(arr));
    },
    _arraybuffer: function(arr){
      write('arraybuffer:');
      return this.dispatch(new Uint8Array(arr));
    },
    _url: function(url) {
      return write('url:' + url.toString(), 'utf8');
    },
    _map: function(map) {
      write('map:');
      var arr = Array.from(map);
      return this._array(arr, options.unorderedSets !== false);
    },
    _set: function(set) {
      write('set:');
      var arr = Array.from(set);
      return this._array(arr, options.unorderedSets !== false);
    },
    _file: function(file) {
      write('file:');
      return this.dispatch([file.name, file.size, file.type, file.lastModfied]);
    },
    _blob: function() {
      if (options.ignoreUnknown) {
        return write('[blob]');
      }

      throw Error('Hashing Blob objects is currently not supported\n' +
        '(see https://github.com/puleos/object-hash/issues/26)\n' +
        'Use "options.replacer" or "options.ignoreUnknown"\n');
    },
    _domwindow: function() { return write('domwindow'); },
    /* Node.js standard native objects */
    _process: function() { return write('process'); },
    _timer: function() { return write('timer'); },
    _pipe: function() { return write('pipe'); },
    _tcp: function() { return write('tcp'); },
    _udp: function() { return write('udp'); },
    _tty: function() { return write('tty'); },
    _statwatcher: function() { return write('statwatcher'); },
    _securecontext: function() { return write('securecontext'); },
    _connection: function() { return write('connection'); },
    _zlib: function() { return write('zlib'); },
    _context: function() { return write('context'); },
    _nodescript: function() { return write('nodescript'); },
    _httpparser: function() { return write('httpparser'); },
    _dataview: function() { return write('dataview'); },
    _signal: function() { return write('signal'); },
    _fsevent: function() { return write('fsevent'); },
    _tlswrap: function() { return write('tlswrap'); },
  };
}

// Mini-implementation of stream.PassThrough
// We are far from having need for the full implementation, and we can
// make assumptions like "many writes, then only one final read"
// and we can ignore encoding specifics
function PassThrough() {
  return {
    buf: '',

    write: function(b) {
      this.buf += b;
    },

    end: function(b) {
      this.buf += b;
    },

    read: function() {
      return this.buf;
    }
  };
}


/***/ }),

/***/ 20504:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hasMap = typeof Map === 'function' && Map.prototype;
var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;
var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;
var mapForEach = hasMap && Map.prototype.forEach;
var hasSet = typeof Set === 'function' && Set.prototype;
var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;
var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;
var setForEach = hasSet && Set.prototype.forEach;
var hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;
var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;
var hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;
var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;
var hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;
var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;
var booleanValueOf = Boolean.prototype.valueOf;
var objectToString = Object.prototype.toString;
var functionToString = Function.prototype.toString;
var match = String.prototype.match;
var bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;
var gOPS = Object.getOwnPropertySymbols;
var symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;
var isEnumerable = Object.prototype.propertyIsEnumerable;

var gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (
    [].__proto__ === Array.prototype // eslint-disable-line no-proto
        ? function (O) {
            return O.__proto__; // eslint-disable-line no-proto
        }
        : null
);

var inspectCustom = __webpack_require__(37265).custom;
var inspectSymbol = inspectCustom && isSymbol(inspectCustom) ? inspectCustom : null;
var toStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol' ? Symbol.toStringTag : null;

module.exports = function inspect_(obj, options, depth, seen) {
    var opts = options || {};

    if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {
        throw new TypeError('option "quoteStyle" must be "single" or "double"');
    }
    if (
        has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'
            ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity
            : opts.maxStringLength !== null
        )
    ) {
        throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');
    }
    var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;
    if (typeof customInspect !== 'boolean') {
        throw new TypeError('option "customInspect", if provided, must be `true` or `false`');
    }

    if (
        has(opts, 'indent')
        && opts.indent !== null
        && opts.indent !== '\t'
        && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)
    ) {
        throw new TypeError('options "indent" must be "\\t", an integer > 0, or `null`');
    }

    if (typeof obj === 'undefined') {
        return 'undefined';
    }
    if (obj === null) {
        return 'null';
    }
    if (typeof obj === 'boolean') {
        return obj ? 'true' : 'false';
    }

    if (typeof obj === 'string') {
        return inspectString(obj, opts);
    }
    if (typeof obj === 'number') {
        if (obj === 0) {
            return Infinity / obj > 0 ? '0' : '-0';
        }
        return String(obj);
    }
    if (typeof obj === 'bigint') {
        return String(obj) + 'n';
    }

    var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;
    if (typeof depth === 'undefined') { depth = 0; }
    if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {
        return isArray(obj) ? '[Array]' : '[Object]';
    }

    var indent = getIndent(opts, depth);

    if (typeof seen === 'undefined') {
        seen = [];
    } else if (indexOf(seen, obj) >= 0) {
        return '[Circular]';
    }

    function inspect(value, from, noIndent) {
        if (from) {
            seen = seen.slice();
            seen.push(from);
        }
        if (noIndent) {
            var newOpts = {
                depth: opts.depth
            };
            if (has(opts, 'quoteStyle')) {
                newOpts.quoteStyle = opts.quoteStyle;
            }
            return inspect_(value, newOpts, depth + 1, seen);
        }
        return inspect_(value, opts, depth + 1, seen);
    }

    if (typeof obj === 'function') {
        var name = nameOf(obj);
        var keys = arrObjKeys(obj, inspect);
        return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + keys.join(', ') + ' }' : '');
    }
    if (isSymbol(obj)) {
        var symString = symToString.call(obj);
        return typeof obj === 'object' ? markBoxed(symString) : symString;
    }
    if (isElement(obj)) {
        var s = '<' + String(obj.nodeName).toLowerCase();
        var attrs = obj.attributes || [];
        for (var i = 0; i < attrs.length; i++) {
            s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);
        }
        s += '>';
        if (obj.childNodes && obj.childNodes.length) { s += '...'; }
        s += '</' + String(obj.nodeName).toLowerCase() + '>';
        return s;
    }
    if (isArray(obj)) {
        if (obj.length === 0) { return '[]'; }
        var xs = arrObjKeys(obj, inspect);
        if (indent && !singleLineValues(xs)) {
            return '[' + indentedJoin(xs, indent) + ']';
        }
        return '[ ' + xs.join(', ') + ' ]';
    }
    if (isError(obj)) {
        var parts = arrObjKeys(obj, inspect);
        if (parts.length === 0) { return '[' + String(obj) + ']'; }
        return '{ [' + String(obj) + '] ' + parts.join(', ') + ' }';
    }
    if (typeof obj === 'object' && customInspect) {
        if (inspectSymbol && typeof obj[inspectSymbol] === 'function') {
            return obj[inspectSymbol]();
        } else if (typeof obj.inspect === 'function') {
            return obj.inspect();
        }
    }
    if (isMap(obj)) {
        var mapParts = [];
        mapForEach.call(obj, function (value, key) {
            mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));
        });
        return collectionOf('Map', mapSize.call(obj), mapParts, indent);
    }
    if (isSet(obj)) {
        var setParts = [];
        setForEach.call(obj, function (value) {
            setParts.push(inspect(value, obj));
        });
        return collectionOf('Set', setSize.call(obj), setParts, indent);
    }
    if (isWeakMap(obj)) {
        return weakCollectionOf('WeakMap');
    }
    if (isWeakSet(obj)) {
        return weakCollectionOf('WeakSet');
    }
    if (isWeakRef(obj)) {
        return weakCollectionOf('WeakRef');
    }
    if (isNumber(obj)) {
        return markBoxed(inspect(Number(obj)));
    }
    if (isBigInt(obj)) {
        return markBoxed(inspect(bigIntValueOf.call(obj)));
    }
    if (isBoolean(obj)) {
        return markBoxed(booleanValueOf.call(obj));
    }
    if (isString(obj)) {
        return markBoxed(inspect(String(obj)));
    }
    if (!isDate(obj) && !isRegExp(obj)) {
        var ys = arrObjKeys(obj, inspect);
        var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;
        var protoTag = obj instanceof Object ? '' : 'null prototype';
        var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? toStr(obj).slice(8, -1) : protoTag ? 'Object' : '';
        var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';
        var tag = constructorTag + (stringTag || protoTag ? '[' + [].concat(stringTag || [], protoTag || []).join(': ') + '] ' : '');
        if (ys.length === 0) { return tag + '{}'; }
        if (indent) {
            return tag + '{' + indentedJoin(ys, indent) + '}';
        }
        return tag + '{ ' + ys.join(', ') + ' }';
    }
    return String(obj);
};

function wrapQuotes(s, defaultStyle, opts) {
    var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '"' : "'";
    return quoteChar + s + quoteChar;
}

function quote(s) {
    return String(s).replace(/"/g, '&quot;');
}

function isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
function isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
function isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
function isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
function isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
function isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
function isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }

// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives
function isSymbol(obj) {
    if (typeof obj === 'symbol') {
        return true;
    }
    if (!obj || typeof obj !== 'object' || !symToString) {
        return false;
    }
    try {
        symToString.call(obj);
        return true;
    } catch (e) {}
    return false;
}

function isBigInt(obj) {
    if (!obj || typeof obj !== 'object' || !bigIntValueOf) {
        return false;
    }
    try {
        bigIntValueOf.call(obj);
        return true;
    } catch (e) {}
    return false;
}

var hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };
function has(obj, key) {
    return hasOwn.call(obj, key);
}

function toStr(obj) {
    return objectToString.call(obj);
}

function nameOf(f) {
    if (f.name) { return f.name; }
    var m = match.call(functionToString.call(f), /^function\s*([\w$]+)/);
    if (m) { return m[1]; }
    return null;
}

function indexOf(xs, x) {
    if (xs.indexOf) { return xs.indexOf(x); }
    for (var i = 0, l = xs.length; i < l; i++) {
        if (xs[i] === x) { return i; }
    }
    return -1;
}

function isMap(x) {
    if (!mapSize || !x || typeof x !== 'object') {
        return false;
    }
    try {
        mapSize.call(x);
        try {
            setSize.call(x);
        } catch (s) {
            return true;
        }
        return x instanceof Map; // core-js workaround, pre-v2.5.0
    } catch (e) {}
    return false;
}

function isWeakMap(x) {
    if (!weakMapHas || !x || typeof x !== 'object') {
        return false;
    }
    try {
        weakMapHas.call(x, weakMapHas);
        try {
            weakSetHas.call(x, weakSetHas);
        } catch (s) {
            return true;
        }
        return x instanceof WeakMap; // core-js workaround, pre-v2.5.0
    } catch (e) {}
    return false;
}

function isWeakRef(x) {
    if (!weakRefDeref || !x || typeof x !== 'object') {
        return false;
    }
    try {
        weakRefDeref.call(x);
        return true;
    } catch (e) {}
    return false;
}

function isSet(x) {
    if (!setSize || !x || typeof x !== 'object') {
        return false;
    }
    try {
        setSize.call(x);
        try {
            mapSize.call(x);
        } catch (m) {
            return true;
        }
        return x instanceof Set; // core-js workaround, pre-v2.5.0
    } catch (e) {}
    return false;
}

function isWeakSet(x) {
    if (!weakSetHas || !x || typeof x !== 'object') {
        return false;
    }
    try {
        weakSetHas.call(x, weakSetHas);
        try {
            weakMapHas.call(x, weakMapHas);
        } catch (s) {
            return true;
        }
        return x instanceof WeakSet; // core-js workaround, pre-v2.5.0
    } catch (e) {}
    return false;
}

function isElement(x) {
    if (!x || typeof x !== 'object') { return false; }
    if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {
        return true;
    }
    return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';
}

function inspectString(str, opts) {
    if (str.length > opts.maxStringLength) {
        var remaining = str.length - opts.maxStringLength;
        var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');
        return inspectString(str.slice(0, opts.maxStringLength), opts) + trailer;
    }
    // eslint-disable-next-line no-control-regex
    var s = str.replace(/(['\\])/g, '\\$1').replace(/[\x00-\x1f]/g, lowbyte);
    return wrapQuotes(s, 'single', opts);
}

function lowbyte(c) {
    var n = c.charCodeAt(0);
    var x = {
        8: 'b',
        9: 't',
        10: 'n',
        12: 'f',
        13: 'r'
    }[n];
    if (x) { return '\\' + x; }
    return '\\x' + (n < 0x10 ? '0' : '') + n.toString(16).toUpperCase();
}

function markBoxed(str) {
    return 'Object(' + str + ')';
}

function weakCollectionOf(type) {
    return type + ' { ? }';
}

function collectionOf(type, size, entries, indent) {
    var joinedEntries = indent ? indentedJoin(entries, indent) : entries.join(', ');
    return type + ' (' + size + ') {' + joinedEntries + '}';
}

function singleLineValues(xs) {
    for (var i = 0; i < xs.length; i++) {
        if (indexOf(xs[i], '\n') >= 0) {
            return false;
        }
    }
    return true;
}

function getIndent(opts, depth) {
    var baseIndent;
    if (opts.indent === '\t') {
        baseIndent = '\t';
    } else if (typeof opts.indent === 'number' && opts.indent > 0) {
        baseIndent = Array(opts.indent + 1).join(' ');
    } else {
        return null;
    }
    return {
        base: baseIndent,
        prev: Array(depth + 1).join(baseIndent)
    };
}

function indentedJoin(xs, indent) {
    if (xs.length === 0) { return ''; }
    var lineJoiner = '\n' + indent.prev + indent.base;
    return lineJoiner + xs.join(',' + lineJoiner) + '\n' + indent.prev;
}

function arrObjKeys(obj, inspect) {
    var isArr = isArray(obj);
    var xs = [];
    if (isArr) {
        xs.length = obj.length;
        for (var i = 0; i < obj.length; i++) {
            xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';
        }
    }
    for (var key in obj) { // eslint-disable-line no-restricted-syntax
        if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
        if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
        if ((/[^\w$]/).test(key)) {
            xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));
        } else {
            xs.push(key + ': ' + inspect(obj[key], obj));
        }
    }
    if (typeof gOPS === 'function') {
        var syms = gOPS(obj);
        for (var j = 0; j < syms.length; j++) {
            if (isEnumerable.call(obj, syms[j])) {
                xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));
            }
        }
    }
    return xs;
}


/***/ }),

/***/ 37265:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(31669).inspect;


/***/ }),

/***/ 1270:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { strict: assert } = __webpack_require__(42357);
const { createHash } = __webpack_require__(33373);
const { format } = __webpack_require__(31669);

const shake256 = __webpack_require__(19811);

let encode;
if (Buffer.isEncoding('base64url')) {
  encode = (input) => input.toString('base64url');
} else {
  const fromBase64 = (base64) => base64.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
  encode = (input) => fromBase64(input.toString('base64'));
}

/** SPECIFICATION
 * Its (_hash) value is the base64url encoding of the left-most half of the hash of the octets of
 * the ASCII representation of the token value, where the hash algorithm used is the hash algorithm
 * used in the alg Header Parameter of the ID Token's JOSE Header. For instance, if the alg is
 * RS256, hash the token value with SHA-256, then take the left-most 128 bits and base64url encode
 * them. The _hash value is a case sensitive string.
 */

/**
 * @name getHash
 * @api private
 *
 * returns the sha length based off the JOSE alg heade value, defaults to sha256
 *
 * @param token {String} token value to generate the hash from
 * @param alg {String} ID Token JOSE header alg value (i.e. RS256, HS384, ES512, PS256)
 * @param [crv] {String} For EdDSA the curve decides what hash algorithm is used. Required for EdDSA
 */
function getHash(alg, crv) {
  switch (alg) {
    case 'HS256':
    case 'RS256':
    case 'PS256':
    case 'ES256':
    case 'ES256K':
      return createHash('sha256');

    case 'HS384':
    case 'RS384':
    case 'PS384':
    case 'ES384':
      return createHash('sha384');

    case 'HS512':
    case 'RS512':
    case 'PS512':
    case 'ES512':
      return createHash('sha512');

    case 'EdDSA':
      switch (crv) {
        case 'Ed25519':
          return createHash('sha512');
        case 'Ed448':
          if (!shake256) {
            throw new TypeError('Ed448 *_hash calculation is not supported in your Node.js runtime version');
          }

          return createHash('shake256', { outputLength: 114 });
        default:
          throw new TypeError('unrecognized or invalid EdDSA curve provided');
      }

    default:
      throw new TypeError('unrecognized or invalid JWS algorithm provided');
  }
}

function generate(token, alg, crv) {
  const digest = getHash(alg, crv).update(token).digest();
  return encode(digest.slice(0, digest.length / 2));
}

function validate(names, actual, source, alg, crv) {
  if (typeof names.claim !== 'string' || !names.claim) {
    throw new TypeError('names.claim must be a non-empty string');
  }

  if (typeof names.source !== 'string' || !names.source) {
    throw new TypeError('names.source must be a non-empty string');
  }

  assert(typeof actual === 'string' && actual, `${names.claim} must be a non-empty string`);
  assert(typeof source === 'string' && source, `${names.source} must be a non-empty string`);

  let expected;
  let msg;
  try {
    expected = generate(source, alg, crv);
  } catch (err) {
    msg = format('%s could not be validated (%s)', names.claim, err.message);
  }

  msg = msg || format('%s mismatch, expected %s, got: %s', names.claim, expected, actual);

  assert.equal(expected, actual, msg);
}

module.exports = {
  validate,
  generate,
};


/***/ }),

/***/ 19811:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const crypto = __webpack_require__(33373);

const [major, minor] = process.version.substr(1).split('.').map((x) => parseInt(x, 10));
const xofOutputLength = major > 12 || (major === 12 && minor >= 8);
const shake256 = xofOutputLength && crypto.getHashes().includes('shake256');

module.exports = shake256;


/***/ }),

/***/ 1223:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var wrappy = __webpack_require__(62940)
module.exports = wrappy(once)
module.exports.strict = wrappy(onceStrict)

once.proto = once(function () {
  Object.defineProperty(Function.prototype, 'once', {
    value: function () {
      return once(this)
    },
    configurable: true
  })

  Object.defineProperty(Function.prototype, 'onceStrict', {
    value: function () {
      return onceStrict(this)
    },
    configurable: true
  })
})

function once (fn) {
  var f = function () {
    if (f.called) return f.value
    f.called = true
    return f.value = fn.apply(this, arguments)
  }
  f.called = false
  return f
}

function onceStrict (fn) {
  var f = function () {
    if (f.called)
      throw new Error(f.onceError)
    f.called = true
    return f.value = fn.apply(this, arguments)
  }
  var name = fn.name || 'Function wrapped with `once`'
  f.onceError = name + " shouldn't be called more than once"
  f.called = false
  return f
}


/***/ }),

/***/ 28300:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable max-classes-per-file */

const { inspect, deprecate } = __webpack_require__(31669);
const stdhttp = __webpack_require__(98605);
const crypto = __webpack_require__(33373);
const { strict: assert } = __webpack_require__(42357);
const querystring = __webpack_require__(71191);
const url = __webpack_require__(78835);

const { ParseError } = __webpack_require__(44462);
const jose = __webpack_require__(16425);
const base64url = __webpack_require__(27291);
const tokenHash = __webpack_require__(1270);

const defaults = __webpack_require__(26457);
const { assertSigningAlgValuesSupport, assertIssuerConfiguration } = __webpack_require__(63217);
const pick = __webpack_require__(78857);
const isPlainObject = __webpack_require__(39862);
const processResponse = __webpack_require__(28576);
const TokenSet = __webpack_require__(39029);
const { OPError, RPError } = __webpack_require__(45061);
const now = __webpack_require__(8542);
const { random } = __webpack_require__(75421);
const request = __webpack_require__(92946);
const {
  CALLBACK_PROPERTIES, CLIENT_DEFAULTS, JWT_CONTENT, CLOCK_TOLERANCE,
} = __webpack_require__(27556);
const issuerRegistry = __webpack_require__(30730);
const instance = __webpack_require__(36546);
const { authenticatedPost, resolveResponseType, resolveRedirectUri } = __webpack_require__(7619);
const DeviceFlowHandle = __webpack_require__(23979);

const { deep: defaultsDeep } = defaults;

function pickCb(input) {
  return pick(input, ...CALLBACK_PROPERTIES);
}

function authorizationHeaderValue(token, tokenType = 'Bearer') {
  return `${tokenType} ${token}`;
}

function cleanUpClaims(claims) {
  if (Object.keys(claims._claim_names).length === 0) {
    delete claims._claim_names;
  }
  if (Object.keys(claims._claim_sources).length === 0) {
    delete claims._claim_sources;
  }
}

function assignClaim(target, source, sourceName, throwOnMissing = true) {
  return ([claim, inSource]) => {
    if (inSource === sourceName) {
      if (throwOnMissing && source[claim] === undefined) {
        throw new RPError(`expected claim "${claim}" in "${sourceName}"`);
      } else if (source[claim] !== undefined) {
        target[claim] = source[claim];
      }
      delete target._claim_names[claim];
    }
  };
}

function verifyPresence(payload, jwt, prop) {
  if (payload[prop] === undefined) {
    throw new RPError({
      message: `missing required JWT property ${prop}`,
      jwt,
    });
  }
}

function authorizationParams(params) {
  const authParams = {
    client_id: this.client_id,
    scope: 'openid',
    response_type: resolveResponseType.call(this),
    redirect_uri: resolveRedirectUri.call(this),
    ...params,
  };

  Object.entries(authParams).forEach(([key, value]) => {
    if (value === null || value === undefined) {
      delete authParams[key];
    } else if (key === 'claims' && typeof value === 'object') {
      authParams[key] = JSON.stringify(value);
    } else if (key === 'resource' && Array.isArray(value)) {
      authParams[key] = value;
    } else if (typeof value !== 'string') {
      authParams[key] = String(value);
    }
  });

  return authParams;
}

async function claimJWT(label, jwt) {
  try {
    const { header, payload } = jose.JWT.decode(jwt, { complete: true });
    const { iss } = payload;

    if (header.alg === 'none') {
      return payload;
    }

    let key;
    if (!iss || iss === this.issuer.issuer) {
      key = await this.issuer.queryKeyStore(header);
    } else if (issuerRegistry.has(iss)) {
      key = await issuerRegistry.get(iss).queryKeyStore(header);
    } else {
      const discovered = await this.issuer.constructor.discover(iss);
      key = await discovered.queryKeyStore(header);
    }
    return jose.JWT.verify(jwt, key);
  } catch (err) {
    if (err instanceof RPError || err instanceof OPError || err.name === 'AggregateError') {
      throw err;
    } else {
      throw new RPError({
        printf: ['failed to validate the %s JWT (%s: %s)', label, err.name, err.message],
        jwt,
      });
    }
  }
}

function getKeystore(jwks) {
  const keystore = jose.JWKS.asKeyStore(jwks);
  if (keystore.all().some((key) => key.type !== 'private')) {
    throw new TypeError('jwks must only contain private keys');
  }
  return keystore;
}

// if an OP doesnt support client_secret_basic but supports client_secret_post, use it instead
// this is in place to take care of most common pitfalls when first using discovered Issuers without
// the support for default values defined by Discovery 1.0
function checkBasicSupport(client, metadata, properties) {
  try {
    const supported = client.issuer.token_endpoint_auth_methods_supported;
    if (!supported.includes(properties.token_endpoint_auth_method)) {
      if (supported.includes('client_secret_post')) {
        properties.token_endpoint_auth_method = 'client_secret_post';
      }
    }
  } catch (err) {}
}

function handleCommonMistakes(client, metadata, properties) {
  if (!metadata.token_endpoint_auth_method) { // if no explicit value was provided
    checkBasicSupport(client, metadata, properties);
  }

  // :fp: c'mon people... RTFM
  if (metadata.redirect_uri) {
    if (metadata.redirect_uris) {
      throw new TypeError('provide a redirect_uri or redirect_uris, not both');
    }
    properties.redirect_uris = [metadata.redirect_uri];
    delete properties.redirect_uri;
  }

  if (metadata.response_type) {
    if (metadata.response_types) {
      throw new TypeError('provide a response_type or response_types, not both');
    }
    properties.response_types = [metadata.response_type];
    delete properties.response_type;
  }
}

function getDefaultsForEndpoint(endpoint, issuer, properties) {
  if (!issuer[`${endpoint}_endpoint`]) return;

  const tokenEndpointAuthMethod = properties.token_endpoint_auth_method;
  const tokenEndpointAuthSigningAlg = properties.token_endpoint_auth_signing_alg;

  const eam = `${endpoint}_endpoint_auth_method`;
  const easa = `${endpoint}_endpoint_auth_signing_alg`;

  if (properties[eam] === undefined && properties[easa] === undefined) {
    if (tokenEndpointAuthMethod !== undefined) {
      properties[eam] = tokenEndpointAuthMethod;
    }
    if (tokenEndpointAuthSigningAlg !== undefined) {
      properties[easa] = tokenEndpointAuthSigningAlg;
    }
  }
}

class BaseClient {}

module.exports = (issuer, aadIssValidation = false) => class Client extends BaseClient {
  /**
   * @name constructor
   * @api public
   */
  constructor(metadata = {}, jwks, options) {
    super();

    if (typeof metadata.client_id !== 'string' || !metadata.client_id) {
      throw new TypeError('client_id is required');
    }

    const properties = { ...CLIENT_DEFAULTS, ...metadata };

    handleCommonMistakes(this, metadata, properties);

    assertSigningAlgValuesSupport('token', this.issuer, properties);

    ['introspection', 'revocation'].forEach((endpoint) => {
      getDefaultsForEndpoint(endpoint, this.issuer, properties);
      assertSigningAlgValuesSupport(endpoint, this.issuer, properties);
    });

    Object.entries(properties).forEach(([key, value]) => {
      instance(this).get('metadata').set(key, value);
      if (!this[key]) {
        Object.defineProperty(this, key, {
          get() { return instance(this).get('metadata').get(key); },
          enumerable: true,
        });
      }
    });

    if (jwks !== undefined) {
      const keystore = getKeystore.call(this, jwks);
      instance(this).set('keystore', keystore);
    }

    if (options !== undefined) {
      instance(this).set('options', options);
    }

    this[CLOCK_TOLERANCE] = 0;
  }

  /**
   * @name authorizationUrl
   * @api public
   */
  authorizationUrl(params = {}) {
    if (!isPlainObject(params)) {
      throw new TypeError('params must be a plain object');
    }
    assertIssuerConfiguration(this.issuer, 'authorization_endpoint');
    const target = url.parse(this.issuer.authorization_endpoint, true);
    target.search = null;
    target.query = {
      ...target.query,
      ...authorizationParams.call(this, params),
    };
    return url.format(target);
  }

  /**
   * @name authorizationPost
   * @api public
   */
  authorizationPost(params = {}) {
    if (!isPlainObject(params)) {
      throw new TypeError('params must be a plain object');
    }
    const inputs = authorizationParams.call(this, params);
    const formInputs = Object.keys(inputs)
      .map((name) => `<input type="hidden" name="${name}" value="${inputs[name]}"/>`).join('\n');

    return `<!DOCTYPE html>
<head>
  <title>Requesting Authorization</title>
</head>
<body onload="javascript:document.forms[0].submit()">
  <form method="post" action="${this.issuer.authorization_endpoint}">
    ${formInputs}
  </form>
</body>
</html>`;
  }

  /**
   * @name endSessionUrl
   * @api public
   */
  endSessionUrl(params = {}) {
    assertIssuerConfiguration(this.issuer, 'end_session_endpoint');

    const {
      0: postLogout,
      length,
    } = this.post_logout_redirect_uris || [];

    const {
      post_logout_redirect_uri = length === 1 ? postLogout : undefined,
    } = params;

    let hint = params.id_token_hint;

    if (hint instanceof TokenSet) {
      if (!hint.id_token) {
        throw new TypeError('id_token not present in TokenSet');
      }
      hint = hint.id_token;
    }

    const target = url.parse(this.issuer.end_session_endpoint, true);
    target.search = null;
    target.query = {
      ...params,
      ...target.query,
      ...{
        post_logout_redirect_uri,
        id_token_hint: hint,
      },
    };

    Object.entries(target.query).forEach(([key, value]) => {
      if (value === null || value === undefined) {
        delete target.query[key];
      }
    });

    return url.format(target);
  }

  /**
   * @name callbackParams
   * @api public
   */
  callbackParams(input) { // eslint-disable-line class-methods-use-this
    const isIncomingMessage = input instanceof stdhttp.IncomingMessage
      || (input && input.method && input.url);
    const isString = typeof input === 'string';

    if (!isString && !isIncomingMessage) {
      throw new TypeError('#callbackParams only accepts string urls, http.IncomingMessage or a lookalike');
    }

    if (isIncomingMessage) {
      switch (input.method) {
        case 'GET':
          return pickCb(url.parse(input.url, true).query);
        case 'POST':
          if (input.body === undefined) {
            throw new TypeError('incoming message body missing, include a body parser prior to this method call');
          }
          switch (typeof input.body) {
            case 'object':
            case 'string':
              if (Buffer.isBuffer(input.body)) {
                return pickCb(querystring.parse(input.body.toString('utf-8')));
              }
              if (typeof input.body === 'string') {
                return pickCb(querystring.parse(input.body));
              }

              return pickCb(input.body);
            default:
              throw new TypeError('invalid IncomingMessage body object');
          }
        default:
          throw new TypeError('invalid IncomingMessage method');
      }
    } else {
      return pickCb(url.parse(input, true).query);
    }
  }

  /**
   * @name callback
   * @api public
   */
  async callback(
    redirectUri,
    parameters,
    checks = {},
    { exchangeBody, clientAssertionPayload } = {},
  ) {
    let params = pickCb(parameters);

    if (checks.jarm && !('response' in parameters)) {
      throw new RPError({
        message: 'expected a JARM response',
        checks,
        params,
      });
    } else if ('response' in parameters) {
      const decrypted = await this.decryptJARM(params.response);
      params = await this.validateJARM(decrypted);
    }

    if (this.default_max_age && !checks.max_age) {
      checks.max_age = this.default_max_age;
    }

    if (params.state && !checks.state) {
      throw new TypeError('checks.state argument is missing');
    }

    if (!params.state && checks.state) {
      throw new RPError({
        message: 'state missing from the response',
        checks,
        params,
      });
    }

    if (checks.state !== params.state) {
      throw new RPError({
        printf: ['state mismatch, expected %s, got: %s', checks.state, params.state],
        checks,
        params,
      });
    }

    if (params.error) {
      throw new OPError(params);
    }

    const RESPONSE_TYPE_REQUIRED_PARAMS = {
      code: ['code'],
      id_token: ['id_token'],
      token: ['access_token', 'token_type'],
    };

    if (checks.response_type) {
      for (const type of checks.response_type.split(' ')) { // eslint-disable-line no-restricted-syntax
        if (type === 'none') {
          if (params.code || params.id_token || params.access_token) {
            throw new RPError({
              message: 'unexpected params encountered for "none" response',
              checks,
              params,
            });
          }
        } else {
          for (const param of RESPONSE_TYPE_REQUIRED_PARAMS[type]) { // eslint-disable-line no-restricted-syntax, max-len
            if (!params[param]) {
              throw new RPError({
                message: `${param} missing from response`,
                checks,
                params,
              });
            }
          }
        }
      }
    }

    if (params.id_token) {
      const tokenset = new TokenSet(params);
      await this.decryptIdToken(tokenset);
      await this.validateIdToken(tokenset, checks.nonce, 'authorization', checks.max_age, checks.state);

      if (!params.code) {
        return tokenset;
      }
    }

    if (params.code) {
      const tokenset = await this.grant({
        ...exchangeBody,
        grant_type: 'authorization_code',
        code: params.code,
        redirect_uri: redirectUri,
        code_verifier: checks.code_verifier,
      }, { clientAssertionPayload });

      await this.decryptIdToken(tokenset);
      await this.validateIdToken(tokenset, checks.nonce, 'token', checks.max_age);

      if (params.session_state) {
        tokenset.session_state = params.session_state;
      }

      return tokenset;
    }

    return new TokenSet(params);
  }

  /**
   * @name oauthCallback
   * @api public
   */
  async oauthCallback(
    redirectUri,
    parameters,
    checks = {},
    { exchangeBody, clientAssertionPayload } = {},
  ) {
    let params = pickCb(parameters);

    if (checks.jarm && !('response' in parameters)) {
      throw new RPError({
        message: 'expected a JARM response',
        checks,
        params,
      });
    } else if ('response' in parameters) {
      const decrypted = await this.decryptJARM(params.response);
      params = await this.validateJARM(decrypted);
    }

    if (params.state && !checks.state) {
      throw new TypeError('checks.state argument is missing');
    }

    if (!params.state && checks.state) {
      throw new RPError({
        message: 'state missing from the response',
        checks,
        params,
      });
    }

    if (checks.state !== params.state) {
      throw new RPError({
        printf: ['state mismatch, expected %s, got: %s', checks.state, params.state],
        checks,
        params,
      });
    }

    if (params.error) {
      throw new OPError(params);
    }

    const RESPONSE_TYPE_REQUIRED_PARAMS = {
      code: ['code'],
      token: ['access_token', 'token_type'],
    };

    if (checks.response_type) {
      for (const type of checks.response_type.split(' ')) { // eslint-disable-line no-restricted-syntax
        if (type === 'none') {
          if (params.code || params.id_token || params.access_token) {
            throw new RPError({
              message: 'unexpected params encountered for "none" response',
              checks,
              params,
            });
          }
        }

        if (RESPONSE_TYPE_REQUIRED_PARAMS[type]) {
          for (const param of RESPONSE_TYPE_REQUIRED_PARAMS[type]) { // eslint-disable-line no-restricted-syntax, max-len
            if (!params[param]) {
              throw new RPError({
                message: `${param} missing from response`,
                checks,
                params,
              });
            }
          }
        }
      }
    }

    if (params.code) {
      return this.grant({
        ...exchangeBody,
        grant_type: 'authorization_code',
        code: params.code,
        redirect_uri: redirectUri,
        code_verifier: checks.code_verifier,
      }, { clientAssertionPayload });
    }

    return new TokenSet(params);
  }

  /**
   * @name decryptIdToken
   * @api private
   */
  async decryptIdToken(token) {
    if (!this.id_token_encrypted_response_alg) {
      return token;
    }

    let idToken = token;

    if (idToken instanceof TokenSet) {
      if (!idToken.id_token) {
        throw new TypeError('id_token not present in TokenSet');
      }
      idToken = idToken.id_token;
    }

    const expectedAlg = this.id_token_encrypted_response_alg;
    const expectedEnc = this.id_token_encrypted_response_enc;

    const result = await this.decryptJWE(idToken, expectedAlg, expectedEnc);

    if (token instanceof TokenSet) {
      token.id_token = result;
      return token;
    }

    return result;
  }

  async validateJWTUserinfo(body) {
    const expectedAlg = this.userinfo_signed_response_alg;

    return this.validateJWT(body, expectedAlg, []);
  }

  /**
   * @name decryptJARM
   * @api private
   */
  async decryptJARM(response) {
    if (!this.authorization_encrypted_response_alg) {
      return response;
    }

    const expectedAlg = this.authorization_encrypted_response_alg;
    const expectedEnc = this.authorization_encrypted_response_enc;

    return this.decryptJWE(response, expectedAlg, expectedEnc);
  }

  /**
   * @name validateJARM
   * @api private
   */
  async validateJARM(response) {
    const expectedAlg = this.authorization_signed_response_alg;
    const { payload } = await this.validateJWT(response, expectedAlg, ['iss', 'exp', 'aud']);
    return pickCb(payload);
  }

  /**
   * @name decryptJWTUserinfo
   * @api private
   */
  async decryptJWTUserinfo(body) {
    if (!this.userinfo_encrypted_response_alg) {
      return body;
    }

    const expectedAlg = this.userinfo_encrypted_response_alg;
    const expectedEnc = this.userinfo_encrypted_response_enc;

    return this.decryptJWE(body, expectedAlg, expectedEnc);
  }

  /**
   * @name decryptJWE
   * @api private
   */
  async decryptJWE(jwe, expectedAlg, expectedEnc = 'A128CBC-HS256') {
    const header = JSON.parse(base64url.decode(jwe.split('.')[0]));

    if (header.alg !== expectedAlg) {
      throw new RPError({
        printf: ['unexpected JWE alg received, expected %s, got: %s', expectedAlg, header.alg],
        jwt: jwe,
      });
    }

    if (header.enc !== expectedEnc) {
      throw new RPError({
        printf: ['unexpected JWE enc received, expected %s, got: %s', expectedEnc, header.enc],
        jwt: jwe,
      });
    }

    let keyOrStore;

    if (expectedAlg.match(/^(?:RSA|ECDH)/)) {
      keyOrStore = instance(this).get('keystore');
    } else {
      keyOrStore = await this.joseSecret(expectedAlg === 'dir' ? expectedEnc : expectedAlg);
    }

    const payload = jose.JWE.decrypt(jwe, keyOrStore);
    return payload.toString('utf8');
  }

  /**
   * @name validateIdToken
   * @api private
   */
  async validateIdToken(tokenSet, nonce, returnedBy, maxAge, state) {
    let idToken = tokenSet;

    const expectedAlg = this.id_token_signed_response_alg;

    const isTokenSet = idToken instanceof TokenSet;

    if (isTokenSet) {
      if (!idToken.id_token) {
        throw new TypeError('id_token not present in TokenSet');
      }
      idToken = idToken.id_token;
    }

    idToken = String(idToken);

    const timestamp = now();
    const { protected: header, payload, key } = await this.validateJWT(idToken, expectedAlg);

    if (maxAge || (maxAge !== null && this.require_auth_time)) {
      if (!payload.auth_time) {
        throw new RPError({
          message: 'missing required JWT property auth_time',
          jwt: idToken,
        });
      }
      if (typeof payload.auth_time !== 'number') {
        throw new RPError({
          message: 'JWT auth_time claim must be a JSON numeric value',
          jwt: idToken,
        });
      }
    }

    if (maxAge && (payload.auth_time + maxAge < timestamp - this[CLOCK_TOLERANCE])) {
      throw new RPError({
        printf: ['too much time has elapsed since the last End-User authentication, max_age %i, auth_time: %i, now %i', maxAge, payload.auth_time, timestamp - this[CLOCK_TOLERANCE]],
        now: timestamp,
        tolerance: this[CLOCK_TOLERANCE],
        auth_time: payload.auth_time,
        jwt: idToken,
      });
    }

    if (nonce !== null && (payload.nonce || nonce !== undefined) && payload.nonce !== nonce) {
      throw new RPError({
        printf: ['nonce mismatch, expected %s, got: %s', nonce, payload.nonce],
        jwt: idToken,
      });
    }

    if (returnedBy === 'authorization') {
      if (!payload.at_hash && tokenSet.access_token) {
        throw new RPError({
          message: 'missing required property at_hash',
          jwt: idToken,
        });
      }

      if (!payload.c_hash && tokenSet.code) {
        throw new RPError({
          message: 'missing required property c_hash',
          jwt: idToken,
        });
      }

      const fapi = this.constructor.name === 'FAPIClient';

      if (fapi) {
        if (payload.iat < timestamp - 3600) {
          throw new RPError({
            printf: ['JWT issued too far in the past, now %i, iat %i', timestamp, payload.iat],
            now: timestamp,
            tolerance: this[CLOCK_TOLERANCE],
            iat: payload.iat,
            jwt: idToken,
          });
        }

        if (!payload.s_hash && (tokenSet.state || state)) {
          throw new RPError({
            message: 'missing required property s_hash',
            jwt: idToken,
          });
        }
      }

      if (payload.s_hash) {
        if (!state) {
          throw new TypeError('cannot verify s_hash, "checks.state" property not provided');
        }

        try {
          tokenHash.validate({ claim: 's_hash', source: 'state' }, payload.s_hash, state, header.alg, key && key.crv);
        } catch (err) {
          throw new RPError({ message: err.message, jwt: idToken });
        }
      }
    }

    if (tokenSet.access_token && payload.at_hash !== undefined) {
      try {
        tokenHash.validate({ claim: 'at_hash', source: 'access_token' }, payload.at_hash, tokenSet.access_token, header.alg, key && key.crv);
      } catch (err) {
        throw new RPError({ message: err.message, jwt: idToken });
      }
    }

    if (tokenSet.code && payload.c_hash !== undefined) {
      try {
        tokenHash.validate({ claim: 'c_hash', source: 'code' }, payload.c_hash, tokenSet.code, header.alg, key && key.crv);
      } catch (err) {
        throw new RPError({ message: err.message, jwt: idToken });
      }
    }

    return tokenSet;
  }

  /**
   * @name validateJWT
   * @api private
   */
  async validateJWT(jwt, expectedAlg, required = ['iss', 'sub', 'aud', 'exp', 'iat']) {
    const isSelfIssued = this.issuer.issuer === 'https://self-issued.me';
    const timestamp = now();
    let header;
    let payload;
    try {
      ({ header, payload } = jose.JWT.decode(jwt, { complete: true }));
    } catch (err) {
      throw new RPError({
        printf: ['failed to decode JWT (%s: %s)', err.name, err.message],
        jwt,
      });
    }

    if (header.alg !== expectedAlg) {
      throw new RPError({
        printf: ['unexpected JWT alg received, expected %s, got: %s', expectedAlg, header.alg],
        jwt,
      });
    }

    if (isSelfIssued) {
      required = [...required, 'sub_jwk']; // eslint-disable-line no-param-reassign
    }

    required.forEach(verifyPresence.bind(undefined, payload, jwt));

    if (payload.iss !== undefined) {
      let expectedIss = this.issuer.issuer;

      if (aadIssValidation) {
        expectedIss = this.issuer.issuer.replace('{tenantid}', payload.tid);
      }

      if (payload.iss !== expectedIss) {
        throw new RPError({
          printf: ['unexpected iss value, expected %s, got: %s', expectedIss, payload.iss],
          jwt,
        });
      }
    }

    if (payload.iat !== undefined) {
      if (typeof payload.iat !== 'number') {
        throw new RPError({
          message: 'JWT iat claim must be a JSON numeric value',
          jwt,
        });
      }
    }

    if (payload.nbf !== undefined) {
      if (typeof payload.nbf !== 'number') {
        throw new RPError({
          message: 'JWT nbf claim must be a JSON numeric value',
          jwt,
        });
      }
      if (payload.nbf > timestamp + this[CLOCK_TOLERANCE]) {
        throw new RPError({
          printf: ['JWT not active yet, now %i, nbf %i', timestamp + this[CLOCK_TOLERANCE], payload.nbf],
          now: timestamp,
          tolerance: this[CLOCK_TOLERANCE],
          nbf: payload.nbf,
          jwt,
        });
      }
    }

    if (payload.exp !== undefined) {
      if (typeof payload.exp !== 'number') {
        throw new RPError({
          message: 'JWT exp claim must be a JSON numeric value',
          jwt,
        });
      }
      if (timestamp - this[CLOCK_TOLERANCE] >= payload.exp) {
        throw new RPError({
          printf: ['JWT expired, now %i, exp %i', timestamp - this[CLOCK_TOLERANCE], payload.exp],
          now: timestamp,
          tolerance: this[CLOCK_TOLERANCE],
          exp: payload.exp,
          jwt,
        });
      }
    }

    if (payload.aud !== undefined) {
      if (Array.isArray(payload.aud)) {
        if (payload.aud.length > 1 && !payload.azp) {
          throw new RPError({
            message: 'missing required JWT property azp',
            jwt,
          });
        }

        if (!payload.aud.includes(this.client_id)) {
          throw new RPError({
            printf: ['aud is missing the client_id, expected %s to be included in %j', this.client_id, payload.aud],
            jwt,
          });
        }
      } else if (payload.aud !== this.client_id) {
        throw new RPError({
          printf: ['aud mismatch, expected %s, got: %s', this.client_id, payload.aud],
          jwt,
        });
      }
    }

    if (payload.azp !== undefined) {
      let { additionalAuthorizedParties } = instance(this).get('options') || {};

      if (typeof additionalAuthorizedParties === 'string') {
        additionalAuthorizedParties = [this.client_id, additionalAuthorizedParties];
      } else if (Array.isArray(additionalAuthorizedParties)) {
        additionalAuthorizedParties = [this.client_id, ...additionalAuthorizedParties];
      } else {
        additionalAuthorizedParties = [this.client_id];
      }

      if (!additionalAuthorizedParties.includes(payload.azp)) {
        throw new RPError({
          printf: ['azp mismatch, got: %s', payload.azp],
          jwt,
        });
      }
    }

    let key;

    if (isSelfIssued) {
      try {
        assert(isPlainObject(payload.sub_jwk));
        key = jose.JWK.asKey(payload.sub_jwk);
        assert.equal(key.type, 'public');
      } catch (err) {
        throw new RPError({
          message: 'failed to use sub_jwk claim as an asymmetric JSON Web Key',
          jwt,
        });
      }
      if (key.thumbprint !== payload.sub) {
        throw new RPError({
          message: 'failed to match the subject with sub_jwk',
          jwt,
        });
      }
    } else if (header.alg.startsWith('HS')) {
      key = await this.joseSecret();
    } else if (header.alg !== 'none') {
      key = await this.issuer.queryKeyStore(header);
    }

    if (!key && header.alg === 'none') {
      return { protected: header, payload };
    }

    try {
      return jose.JWS.verify(jwt, key, { complete: true });
    } catch (err) {
      throw new RPError({
        message: 'failed to validate JWT signature',
        jwt,
      });
    }
  }

  /**
   * @name refresh
   * @api public
   */
  async refresh(refreshToken, { exchangeBody, clientAssertionPayload } = {}) {
    let token = refreshToken;

    if (token instanceof TokenSet) {
      if (!token.refresh_token) {
        throw new TypeError('refresh_token not present in TokenSet');
      }
      token = token.refresh_token;
    }

    const tokenset = await this.grant({
      ...exchangeBody,
      grant_type: 'refresh_token',
      refresh_token: String(token),
    }, { clientAssertionPayload });

    if (tokenset.id_token) {
      await this.decryptIdToken(tokenset);
      await this.validateIdToken(tokenset, null, 'token', null);

      if (refreshToken instanceof TokenSet && refreshToken.id_token) {
        const expectedSub = refreshToken.claims().sub;
        const actualSub = tokenset.claims().sub;
        if (actualSub !== expectedSub) {
          throw new RPError({
            printf: ['sub mismatch, expected %s, got: %s', expectedSub, actualSub],
            jwt: tokenset.id_token,
          });
        }
      }
    }

    return tokenset;
  }

  async requestResource(
    resourceUrl,
    accessToken,
    {
      method,
      headers,
      body,
      tokenType = accessToken instanceof TokenSet ? accessToken.token_type : 'Bearer',
    } = {},
  ) {
    if (accessToken instanceof TokenSet) {
      if (!accessToken.access_token) {
        throw new TypeError('access_token not present in TokenSet');
      }
      accessToken = accessToken.access_token; // eslint-disable-line no-param-reassign
    }

    const requestOpts = {
      headers: {
        Authorization: authorizationHeaderValue(accessToken, tokenType),
        ...headers,
      },
      body,
    };

    const mTLS = !!this.tls_client_certificate_bound_access_tokens;

    return request.call(this, {
      ...requestOpts,
      encoding: null,
      method,
      url: resourceUrl,
    }, { mTLS });
  }

  /**
   * @name userinfo
   * @api public
   */
  async userinfo(accessToken, {
    verb = 'GET', via = 'header', tokenType, params,
  } = {}) {
    // TODO: in v4.x remove verb in favour of method
    assertIssuerConfiguration(this.issuer, 'userinfo_endpoint');
    const options = {
      tokenType,
      method: String(verb).toUpperCase(),
    };

    if (options.method !== 'GET' && options.method !== 'POST') {
      throw new TypeError('#userinfo() verb can only be POST or a GET');
    }

    if (via === 'query' && options.method !== 'GET') {
      throw new TypeError('userinfo endpoints will only parse query strings for GET requests');
    } else if (via === 'body' && options.method !== 'POST') {
      throw new TypeError('can only send body on POST');
    }

    const jwt = !!(this.userinfo_signed_response_alg
      || this.userinfo_encrypted_response_alg);

    if (jwt) {
      options.headers = { Accept: 'application/jwt' };
    } else {
      options.headers = { Accept: 'application/json' };
    }

    const mTLS = !!this.tls_client_certificate_bound_access_tokens;

    let targetUrl;
    if (mTLS && this.issuer.mtls_endpoint_aliases) {
      targetUrl = this.issuer.mtls_endpoint_aliases.userinfo_endpoint;
    }

    targetUrl = new url.URL(targetUrl || this.issuer.userinfo_endpoint);

    // when via is not header we clear the Authorization header and add either
    // query string parameters or urlencoded body access_token parameter
    if (via === 'query') {
      options.headers.Authorization = undefined;
      targetUrl.searchParams.append('access_token', accessToken instanceof TokenSet ? accessToken.access_token : accessToken);
    } else if (via === 'body') {
      options.headers.Authorization = undefined;
      options.headers['Content-Type'] = 'application/x-www-form-urlencoded';
      options.body = new url.URLSearchParams();
      options.body.append('access_token', accessToken instanceof TokenSet ? accessToken.access_token : accessToken);
    }

    // handle additional parameters, GET via querystring, POST via urlencoded body
    if (params) {
      if (options.method === 'GET') {
        Object.entries(params).forEach(([key, value]) => {
          targetUrl.searchParams.append(key, value);
        });
      } else if (options.body) { // POST && via body
        Object.entries(params).forEach(([key, value]) => {
          options.body.append(key, value);
        });
      } else { // POST && via header
        options.body = new url.URLSearchParams();
        options.headers['Content-Type'] = 'application/x-www-form-urlencoded';
        Object.entries(params).forEach(([key, value]) => {
          options.body.append(key, value);
        });
      }
    }

    if (options.body) {
      options.body = options.body.toString();
    }

    const response = await this.requestResource(targetUrl, accessToken, options);

    let parsed = processResponse(response, { bearer: true });

    if (jwt) {
      if (!JWT_CONTENT.test(response.headers['content-type'])) {
        throw new RPError({
          message: 'expected application/jwt response from the userinfo_endpoint',
          response,
        });
      }

      const body = response.body.toString();
      const userinfo = await this.decryptJWTUserinfo(body);
      if (!this.userinfo_signed_response_alg) {
        try {
          parsed = JSON.parse(userinfo);
          assert(isPlainObject(parsed));
        } catch (err) {
          throw new RPError({
            message: 'failed to parse userinfo JWE payload as JSON',
            jwt: userinfo,
          });
        }
      } else {
        ({ payload: parsed } = await this.validateJWTUserinfo(userinfo));
      }
    } else {
      try {
        parsed = JSON.parse(response.body);
      } catch (error) {
        const parseError = new ParseError(
          error, response.statusCode, response.request.gotOptions, response.body,
        );
        Object.defineProperty(parseError, 'response', { value: response });
        throw parseError;
      }
    }

    if (accessToken instanceof TokenSet && accessToken.id_token) {
      const expectedSub = accessToken.claims().sub;
      if (parsed.sub !== expectedSub) {
        throw new RPError({
          printf: ['userinfo sub mismatch, expected %s, got: %s', expectedSub, parsed.sub],
          body: parsed,
          jwt: accessToken.id_token,
        });
      }
    }

    return parsed;
  }

  /**
   * @name derivedKey
   * @api private
   */
  async derivedKey(len) {
    const cacheKey = `${len}_key`;
    if (instance(this).has(cacheKey)) {
      return instance(this).get(cacheKey);
    }

    const hash = len <= 256 ? 'sha256' : len <= 384 ? 'sha384' : len <= 512 ? 'sha512' : false; // eslint-disable-line no-nested-ternary
    if (!hash) {
      throw new Error('unsupported symmetric encryption key derivation');
    }

    const derivedBuffer = crypto.createHash(hash)
      .update(this.client_secret)
      .digest()
      .slice(0, len / 8);

    const key = jose.JWK.asKey({ k: base64url.encode(derivedBuffer), kty: 'oct' });
    instance(this).set(cacheKey, key);

    return key;
  }

  /**
   * @name joseSecret
   * @api private
   */
  async joseSecret(alg) {
    if (!this.client_secret) {
      throw new TypeError('client_secret is required');
    }
    if (/^A(\d{3})(?:GCM)?KW$/.test(alg)) {
      return this.derivedKey(parseInt(RegExp.$1, 10));
    }

    if (/^A(\d{3})(?:GCM|CBC-HS(\d{3}))$/.test(alg)) {
      return this.derivedKey(parseInt(RegExp.$2 || RegExp.$1, 10));
    }

    if (instance(this).has('jose_secret')) {
      return instance(this).get('jose_secret');
    }

    const key = jose.JWK.asKey({ k: base64url.encode(this.client_secret), kty: 'oct' });
    instance(this).set('jose_secret', key);

    return key;
  }

  /**
   * @name grant
   * @api public
   */
  async grant(body, { clientAssertionPayload } = {}) {
    assertIssuerConfiguration(this.issuer, 'token_endpoint');
    const response = await authenticatedPost.call(
      this,
      'token',
      {
        form: true,
        body,
        json: true,
      },
      { clientAssertionPayload },
    );
    const responseBody = processResponse(response);

    return new TokenSet(responseBody);
  }

  /**
   * @name deviceAuthorization
   * @api public
   */
  async deviceAuthorization(params = {}, { exchangeBody, clientAssertionPayload } = {}) {
    assertIssuerConfiguration(this.issuer, 'device_authorization_endpoint');
    assertIssuerConfiguration(this.issuer, 'token_endpoint');

    const body = authorizationParams.call(this, {
      client_id: this.client_id,
      redirect_uri: null,
      response_type: null,
      ...params,
    });

    const response = await authenticatedPost.call(
      this,
      'device_authorization',
      {
        form: true,
        body,
        json: true,
      },
      { clientAssertionPayload, endpointAuthMethod: 'token' },
    );
    const responseBody = processResponse(response);

    return new DeviceFlowHandle({
      client: this,
      exchangeBody,
      clientAssertionPayload,
      response: responseBody,
      maxAge: params.max_age,
    });
  }

  /**
   * @name revoke
   * @api public
   */
  async revoke(token, hint, { revokeBody, clientAssertionPayload } = {}) {
    assertIssuerConfiguration(this.issuer, 'revocation_endpoint');
    if (hint !== undefined && typeof hint !== 'string') {
      throw new TypeError('hint must be a string');
    }

    const body = { ...revokeBody, token };

    if (hint) {
      body.token_type_hint = hint;
    }

    const response = await authenticatedPost.call(
      this,
      'revocation', {
        body,
        form: true,
      }, { clientAssertionPayload },
    );
    processResponse(response, { body: false });
  }

  /**
   * @name introspect
   * @api public
   */
  async introspect(token, hint, { introspectBody, clientAssertionPayload } = {}) {
    assertIssuerConfiguration(this.issuer, 'introspection_endpoint');
    if (hint !== undefined && typeof hint !== 'string') {
      throw new TypeError('hint must be a string');
    }

    const body = { ...introspectBody, token };
    if (hint) {
      body.token_type_hint = hint;
    }

    const response = await authenticatedPost.call(
      this,
      'introspection',
      { body, form: true, json: true },
      { clientAssertionPayload },
    );

    const responseBody = processResponse(response);

    return responseBody;
  }

  /**
   * @name fetchDistributedClaims
   * @api public
   */
  async fetchDistributedClaims(claims, tokens = {}) {
    if (!isPlainObject(claims)) {
      throw new TypeError('claims argument must be a plain object');
    }

    if (!isPlainObject(claims._claim_sources)) {
      return claims;
    }

    if (!isPlainObject(claims._claim_names)) {
      return claims;
    }

    const distributedSources = Object.entries(claims._claim_sources)
      .filter(([, value]) => value && value.endpoint);

    await Promise.all(distributedSources.map(async ([sourceName, def]) => {
      try {
        const requestOpts = {
          headers: {
            Accept: 'application/jwt',
            Authorization: authorizationHeaderValue(def.access_token || tokens[sourceName]),
          },
        };

        const response = await request.call(this, {
          ...requestOpts,
          method: 'GET',
          url: def.endpoint,
        });
        const body = processResponse(response, { bearer: true });

        const decoded = await claimJWT.call(this, 'distributed', body);
        delete claims._claim_sources[sourceName];
        Object.entries(claims._claim_names).forEach(
          assignClaim(claims, decoded, sourceName, false),
        );
      } catch (err) {
        err.src = sourceName;
        throw err;
      }
    }));

    cleanUpClaims(claims);
    return claims;
  }

  /**
   * @name unpackAggregatedClaims
   * @api public
   */
  async unpackAggregatedClaims(claims) {
    if (!isPlainObject(claims)) {
      throw new TypeError('claims argument must be a plain object');
    }

    if (!isPlainObject(claims._claim_sources)) {
      return claims;
    }

    if (!isPlainObject(claims._claim_names)) {
      return claims;
    }

    const aggregatedSources = Object.entries(claims._claim_sources)
      .filter(([, value]) => value && value.JWT);

    await Promise.all(aggregatedSources.map(async ([sourceName, def]) => {
      try {
        const decoded = await claimJWT.call(this, 'aggregated', def.JWT);
        delete claims._claim_sources[sourceName];
        Object.entries(claims._claim_names).forEach(assignClaim(claims, decoded, sourceName));
      } catch (err) {
        err.src = sourceName;
        throw err;
      }
    }));

    cleanUpClaims(claims);
    return claims;
  }

  /**
   * @name register
   * @api public
   */
  static async register(metadata, options = {}) {
    const { initialAccessToken, jwks, ...clientOptions } = options;

    assertIssuerConfiguration(this.issuer, 'registration_endpoint');

    if (jwks !== undefined && !(metadata.jwks || metadata.jwks_uri)) {
      const keystore = getKeystore.call(this, jwks);
      metadata.jwks = keystore.toJWKS(false);
    }

    const response = await request.call(this, {
      headers: initialAccessToken ? {
        Authorization: authorizationHeaderValue(initialAccessToken),
      } : undefined,
      json: true,
      body: metadata,
      url: this.issuer.registration_endpoint,
      method: 'POST',
    });
    const responseBody = processResponse(response, { statusCode: 201, bearer: true });

    return new this(responseBody, jwks, clientOptions);
  }

  /**
   * @name metadata
   * @api public
   */
  get metadata() {
    const copy = {};
    instance(this).get('metadata').forEach((value, key) => {
      copy[key] = value;
    });
    return copy;
  }

  /**
   * @name fromUri
   * @api public
   */
  static async fromUri(registrationClientUri, registrationAccessToken, jwks, clientOptions) {
    const response = await request.call(this, {
      method: 'GET',
      url: registrationClientUri,
      json: true,
      headers: { Authorization: authorizationHeaderValue(registrationAccessToken) },
    });
    const responseBody = processResponse(response, { bearer: true });

    return new this(responseBody, jwks, clientOptions);
  }

  /**
   * @name requestObject
   * @api public
   */
  async requestObject(requestObject = {}, {
    sign: signingAlgorithm = this.request_object_signing_alg || 'none',
    encrypt: {
      alg: eKeyManagement = this.request_object_encryption_alg,
      enc: eContentEncryption = this.request_object_encryption_enc || 'A128CBC-HS256',
    } = {},
  } = {}) {
    if (!isPlainObject(requestObject)) {
      throw new TypeError('requestObject must be a plain object');
    }

    let signed;
    let key;

    const header = { alg: signingAlgorithm, typ: 'JWT' };
    const payload = JSON.stringify(defaults({}, requestObject, {
      iss: this.client_id,
      aud: this.issuer.issuer,
      client_id: this.client_id,
      jti: random(),
      iat: now(),
      exp: now() + 300,
    }));

    if (signingAlgorithm === 'none') {
      signed = [
        base64url.encode(JSON.stringify(header)),
        base64url.encode(payload),
        '',
      ].join('.');
    } else {
      const symmetric = signingAlgorithm.startsWith('HS');
      if (symmetric) {
        key = await this.joseSecret();
      } else {
        const keystore = instance(this).get('keystore');

        if (!keystore) {
          throw new TypeError(`no keystore present for client, cannot sign using alg ${signingAlgorithm}`);
        }
        key = keystore.get({ alg: signingAlgorithm, use: 'sig' });
        if (!key) {
          throw new TypeError(`no key to sign with found for alg ${signingAlgorithm}`);
        }
      }

      signed = jose.JWS.sign(payload, key, {
        ...header,
        kid: symmetric ? undefined : key.kid,
      });
    }

    if (!eKeyManagement) {
      return signed;
    }

    const fields = { alg: eKeyManagement, enc: eContentEncryption, cty: 'JWT' };

    if (fields.alg.match(/^(RSA|ECDH)/)) {
      [key] = await this.issuer.queryKeyStore({
        alg: fields.alg,
        enc: fields.enc,
        use: 'enc',
      }, { allowMulti: true });
    } else {
      key = await this.joseSecret(fields.alg === 'dir' ? fields.enc : fields.alg);
    }

    return jose.JWE.encrypt(signed, key, {
      ...fields,
      kid: key.kty === 'oct' ? undefined : key.kid,
    });
  }

  /**
   * @name issuer
   * @api public
   */
  static get issuer() {
    return issuer;
  }

  /**
   * @name issuer
   * @api public
   */
  get issuer() { // eslint-disable-line class-methods-use-this
    return issuer;
  }

  /* istanbul ignore next */
  [inspect.custom]() {
    return `${this.constructor.name} ${inspect(this.metadata, {
      depth: Infinity,
      colors: process.stdout.isTTY,
      compact: false,
      sorted: true,
    })}`;
  }
};

// TODO: remove in 4.x
BaseClient.prototype.resource = deprecate(
  /* istanbul ignore next */
  async function resource(resourceUrl, accessToken, options) {
    let token = accessToken;
    const opts = {
      verb: 'GET',
      via: 'header',
      ...options,
    };

    if (token instanceof TokenSet) {
      if (!token.access_token) {
        throw new TypeError('access_token not present in TokenSet');
      }
      opts.tokenType = opts.tokenType || token.token_type;
      token = token.access_token;
    }

    const verb = String(opts.verb).toUpperCase();
    let requestOpts;

    switch (opts.via) {
      case 'query':
        if (verb !== 'GET') {
          throw new TypeError('resource servers should only parse query strings for GET requests');
        }
        requestOpts = { query: { access_token: token } };
        break;
      case 'body':
        if (verb !== 'POST') {
          throw new TypeError('can only send body on POST');
        }
        requestOpts = { form: true, body: { access_token: token } };
        break;
      default:
        requestOpts = {
          headers: {
            Authorization: authorizationHeaderValue(token, opts.tokenType),
          },
        };
    }

    if (opts.params) {
      if (verb === 'POST') {
        defaultsDeep(requestOpts, { body: opts.params });
      } else {
        defaultsDeep(requestOpts, { query: opts.params });
      }
    }

    if (opts.headers) {
      defaultsDeep(requestOpts, { headers: opts.headers });
    }

    const mTLS = !!this.tls_client_certificate_bound_access_tokens;

    return request.call(this, {
      ...requestOpts,
      encoding: null,
      method: verb,
      url: resourceUrl,
    }, { mTLS });
  }, 'client.resource() is deprecated, use client.requestResource() instead, see docs for API details',
);

module.exports.BaseClient = BaseClient;


/***/ }),

/***/ 23979:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable camelcase */
const { inspect } = __webpack_require__(31669);

const { RPError, OPError } = __webpack_require__(45061);
const instance = __webpack_require__(36546);
const now = __webpack_require__(8542);
const { authenticatedPost } = __webpack_require__(7619);
const processResponse = __webpack_require__(28576);
const TokenSet = __webpack_require__(39029);

class DeviceFlowHandle {
  constructor({
    client, exchangeBody, clientAssertionPayload, response, maxAge,
  }) {
    ['verification_uri', 'user_code', 'device_code'].forEach((prop) => {
      if (typeof response[prop] !== 'string' || !response[prop]) {
        throw new RPError(`expected ${prop} string to be returned by Device Authorization Response, got %j`, response[prop]);
      }
    });

    if (!Number.isSafeInteger(response.expires_in)) {
      throw new RPError('expected expires_in number to be returned by Device Authorization Response, got %j', response.expires_in);
    }

    instance(this).expires_at = now() + response.expires_in;
    instance(this).client = client;
    instance(this).maxAge = maxAge;
    instance(this).exchangeBody = exchangeBody;
    instance(this).clientAssertionPayload = clientAssertionPayload;
    instance(this).response = response;
    instance(this).interval = response.interval * 1000 || 5000;
  }

  async poll() {
    if (this.expired()) {
      throw new RPError('the device code %j has expired and the device authorization session has concluded', this.device_code);
    }

    await new Promise((resolve) => setTimeout(resolve, instance(this).interval));

    const response = await authenticatedPost.call(
      instance(this).client,
      'token',
      {
        form: true,
        body: {
          ...instance(this).exchangeBody,
          grant_type: 'urn:ietf:params:oauth:grant-type:device_code',
          device_code: this.device_code,
        },
        json: true,
      },
      { clientAssertionPayload: instance(this).clientAssertionPayload },
    );

    let responseBody;
    try {
      responseBody = processResponse(response);
    } catch (err) {
      switch (err instanceof OPError && err.error) {
        case 'slow_down':
          instance(this).interval += 5000;
        case 'authorization_pending': // eslint-disable-line no-fallthrough
          return this.poll();
        default:
          throw err;
      }
    }

    const tokenset = new TokenSet(responseBody);

    if ('id_token' in tokenset) {
      await instance(this).client.decryptIdToken(tokenset);
      await instance(this).client.validateIdToken(tokenset, undefined, 'token', instance(this).maxAge);
    }

    return tokenset;
  }

  get device_code() {
    return instance(this).response.device_code;
  }

  get user_code() {
    return instance(this).response.user_code;
  }

  get verification_uri() {
    return instance(this).response.verification_uri;
  }

  get verification_uri_complete() {
    return instance(this).response.verification_uri_complete;
  }

  get expires_in() {
    return Math.max.apply(null, [instance(this).expires_at - now(), 0]);
  }

  expired() {
    return this.expires_in === 0;
  }

  /* istanbul ignore next */
  [inspect.custom]() {
    return `${this.constructor.name} ${inspect(instance(this).response, {
      depth: Infinity,
      colors: process.stdout.isTTY,
      compact: false,
      sorted: true,
    })}`;
  }
}

module.exports = DeviceFlowHandle;


/***/ }),

/***/ 45061:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable camelcase */
const { format } = __webpack_require__(31669);

const makeError = __webpack_require__(21381);

function OPError({
  error_description,
  error,
  error_uri,
  session_state,
  state,
  scope,
}, response) {
  OPError.super.call(this, !error_description ? error : `${error} (${error_description})`);

  Object.assign(
    this,
    { error },
    (error_description && { error_description }),
    (error_uri && { error_uri }),
    (state && { state }),
    (scope && { scope }),
    (session_state && { session_state }),
  );

  if (response) {
    Object.defineProperty(this, 'response', {
      value: response,
    });
  }
}

makeError(OPError);

function RPError(...args) {
  if (typeof args[0] === 'string') {
    RPError.super.call(this, format(...args));
  } else {
    const {
      message, printf, response, ...rest
    } = args[0];
    if (printf) {
      RPError.super.call(this, format(...printf));
    } else {
      RPError.super.call(this, message);
    }
    Object.assign(this, rest);
    if (response) {
      Object.defineProperty(this, 'response', {
        value: response,
      });
    }
  }
}

makeError(RPError);

module.exports = {
  OPError,
  RPError,
};


/***/ }),

/***/ 63217:
/***/ ((module) => {

function assertSigningAlgValuesSupport(endpoint, issuer, properties) {
  if (!issuer[`${endpoint}_endpoint`]) return;

  const eam = `${endpoint}_endpoint_auth_method`;
  const easa = `${endpoint}_endpoint_auth_signing_alg`;
  const easavs = `${endpoint}_endpoint_auth_signing_alg_values_supported`;

  if (properties[eam] && properties[eam].endsWith('_jwt') && !properties[easa] && !issuer[easavs]) {
    throw new TypeError(`${easavs} must be configured on the issuer if ${easa} is not defined on a client`);
  }
}

function assertIssuerConfiguration(issuer, endpoint) {
  if (!issuer[endpoint]) {
    throw new TypeError(`${endpoint} must be configured on the issuer`);
  }
}

module.exports = {
  assertSigningAlgValuesSupport,
  assertIssuerConfiguration,
};


/***/ }),

/***/ 7619:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const jose = __webpack_require__(16425);

const { assertIssuerConfiguration } = __webpack_require__(63217);
const { random } = __webpack_require__(75421);
const now = __webpack_require__(8542);
const request = __webpack_require__(92946);
const instance = __webpack_require__(36546);
const merge = __webpack_require__(2494);

const formUrlEncode = (value) => encodeURIComponent(value).replace(/%20/g, '+');

async function clientAssertion(endpoint, payload) {
  let alg = this[`${endpoint}_endpoint_auth_signing_alg`];
  if (!alg) {
    assertIssuerConfiguration(this.issuer, `${endpoint}_endpoint_auth_signing_alg_values_supported`);
  }

  if (this[`${endpoint}_endpoint_auth_method`] === 'client_secret_jwt') {
    const key = await this.joseSecret();

    if (!alg) {
      const supported = this.issuer[`${endpoint}_endpoint_auth_signing_alg_values_supported`];
      alg = Array.isArray(supported) && supported.find((signAlg) => key.algorithms('sign').has(signAlg));
    }

    return jose.JWS.sign(payload, key, { alg, typ: 'JWT' });
  }

  const keystore = instance(this).get('keystore');

  if (!keystore) {
    throw new TypeError('no client jwks provided for signing a client assertion with');
  }

  if (!alg) {
    const algs = new Set();

    keystore.all().forEach((key) => {
      key.algorithms('sign').forEach(Set.prototype.add.bind(algs));
    });

    const supported = this.issuer[`${endpoint}_endpoint_auth_signing_alg_values_supported`];
    alg = Array.isArray(supported) && supported.find((signAlg) => algs.has(signAlg));
  }

  const key = keystore.get({ alg, use: 'sig' });
  if (!key) {
    throw new TypeError(`no key found in client jwks to sign a client assertion with using alg ${alg}`);
  }
  return jose.JWS.sign(payload, key, { alg, typ: 'JWT', kid: key.kid });
}

async function authFor(endpoint, { clientAssertionPayload } = {}) {
  const authMethod = this[`${endpoint}_endpoint_auth_method`];
  switch (authMethod) {
    case 'self_signed_tls_client_auth':
    case 'tls_client_auth':
    case 'none':
      return { body: { client_id: this.client_id } };
    case 'client_secret_post':
      if (!this.client_secret) {
        throw new TypeError('client_secret_post client authentication method requires a client_secret');
      }
      return { body: { client_id: this.client_id, client_secret: this.client_secret } };
    case 'private_key_jwt':
    case 'client_secret_jwt': {
      const timestamp = now();
      const assertion = await clientAssertion.call(this, endpoint, {
        iat: timestamp,
        exp: timestamp + 60,
        jti: random(),
        iss: this.client_id,
        sub: this.client_id,
        aud: this.issuer[`${endpoint}_endpoint`], // TODO: in v4.x pass the issuer instead (for now clientAssertionPayload can be used for that)
        ...clientAssertionPayload,
      });

      return {
        body: {
          client_id: this.client_id,
          client_assertion: assertion,
          client_assertion_type: 'urn:ietf:params:oauth:client-assertion-type:jwt-bearer',
        },
      };
    }
    default: { // client_secret_basic
      // This is correct behaviour, see https://tools.ietf.org/html/rfc6749#section-2.3.1 and the
      // related appendix. (also https://github.com/panva/node-openid-client/pull/91)
      // > The client identifier is encoded using the
      // > "application/x-www-form-urlencoded" encoding algorithm per
      // > Appendix B, and the encoded value is used as the username; the client
      // > password is encoded using the same algorithm and used as the
      // > password.
      if (!this.client_secret) {
        throw new TypeError('client_secret_basic client authentication method requires a client_secret');
      }
      const encoded = `${formUrlEncode(this.client_id)}:${formUrlEncode(this.client_secret)}`;
      const value = Buffer.from(encoded).toString('base64');
      return { headers: { Authorization: `Basic ${value}` } };
    }
  }
}

function resolveResponseType() {
  const { length, 0: value } = this.response_types;

  if (length === 1) {
    return value;
  }

  return undefined;
}

function resolveRedirectUri() {
  const { length, 0: value } = this.redirect_uris || [];

  if (length === 1) {
    return value;
  }

  return undefined;
}

async function authenticatedPost(endpoint, opts, {
  clientAssertionPayload, endpointAuthMethod = endpoint,
} = {}) {
  const auth = await authFor.call(this, endpointAuthMethod, { clientAssertionPayload });
  const requestOpts = merge(opts, auth, { form: true });

  const mTLS = this[`${endpointAuthMethod}_endpoint_auth_method`].includes('tls_client_auth')
    || (endpoint === 'token' && this.tls_client_certificate_bound_access_tokens);

  let targetUrl;
  if (mTLS && this.issuer.mtls_endpoint_aliases) {
    targetUrl = this.issuer.mtls_endpoint_aliases[`${endpoint}_endpoint`];
  }

  targetUrl = targetUrl || this.issuer[`${endpoint}_endpoint`];

  if ('body' in requestOpts) {
    for (const [key, value] of Object.entries(requestOpts.body)) { // eslint-disable-line no-restricted-syntax, max-len
      if (typeof value === 'undefined') {
        delete requestOpts.body[key];
      }
    }
  }

  return request.call(this, {
    ...requestOpts,
    method: 'POST',
    url: targetUrl,
  }, { mTLS });
}

module.exports = {
  resolveResponseType,
  resolveRedirectUri,
  authFor,
  authenticatedPost,
};


/***/ }),

/***/ 27556:
/***/ ((module) => {

const OIDC_DISCOVERY = '/.well-known/openid-configuration';
const OAUTH2_DISCOVERY = '/.well-known/oauth-authorization-server';
const WEBFINGER = '/.well-known/webfinger';
const REL = 'http://openid.net/specs/connect/1.0/issuer';
const AAD_MULTITENANT_DISCOVERY = [
  `https://login.microsoftonline.com/common${OIDC_DISCOVERY}`,
  `https://login.microsoftonline.com/common/v2.0${OIDC_DISCOVERY}`,
  `https://login.microsoftonline.com/organizations/v2.0${OIDC_DISCOVERY}`,
  `https://login.microsoftonline.com/consumers/v2.0${OIDC_DISCOVERY}`,
];

const CLIENT_DEFAULTS = {
  grant_types: ['authorization_code'],
  id_token_signed_response_alg: 'RS256',
  authorization_signed_response_alg: 'RS256',
  response_types: ['code'],
  token_endpoint_auth_method: 'client_secret_basic',
};

const ISSUER_DEFAULTS = {
  claim_types_supported: ['normal'],
  claims_parameter_supported: false,
  grant_types_supported: ['authorization_code', 'implicit'],
  request_parameter_supported: false,
  request_uri_parameter_supported: true,
  require_request_uri_registration: false,
  response_modes_supported: ['query', 'fragment'],
  token_endpoint_auth_methods_supported: ['client_secret_basic'],
};

const CALLBACK_PROPERTIES = [
  'access_token', // 6749
  'code', // 6749
  'error', // 6749
  'error_description', // 6749
  'error_uri', // 6749
  'expires_in', // 6749
  'id_token', // Core 1.0
  'state', // 6749
  'token_type', // 6749
  'session_state', // Session Management
  'response', // JARM
];

const JWT_CONTENT = /^application\/jwt/;

const HTTP_OPTIONS = Symbol('openid-client.custom.http-options');
const CLOCK_TOLERANCE = Symbol('openid-client.custom.clock-tolerance');

module.exports = {
  AAD_MULTITENANT_DISCOVERY,
  CALLBACK_PROPERTIES,
  CLIENT_DEFAULTS,
  CLOCK_TOLERANCE,
  HTTP_OPTIONS,
  ISSUER_DEFAULTS,
  JWT_CONTENT,
  OAUTH2_DISCOVERY,
  OIDC_DISCOVERY,
  REL,
  WEBFINGER,
};


/***/ }),

/***/ 21004:
/***/ ((module) => {

module.exports = (obj) => JSON.parse(JSON.stringify(obj));


/***/ }),

/***/ 26457:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable no-restricted-syntax, no-continue */

const isPlainObject = __webpack_require__(39862);

function defaults(deep, target, ...sources) {
  for (const source of sources) {
    if (!isPlainObject(source)) {
      continue;
    }
    for (const [key, value] of Object.entries(source)) {
      /* istanbul ignore if */
      if (key === '__proto__' || key === 'constructor') {
        continue;
      }
      if (typeof target[key] === 'undefined' && typeof value !== 'undefined') {
        target[key] = value;
      }

      if (deep && isPlainObject(target[key]) && isPlainObject(value)) {
        defaults(true, target[key], value);
      }
    }
  }

  return target;
}

module.exports = defaults.bind(undefined, false);
module.exports.deep = defaults.bind(undefined, true);


/***/ }),

/***/ 75421:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { createHash, randomBytes } = __webpack_require__(33373);

const { encode: base64url } = __webpack_require__(27291);

const random = (bytes = 32) => base64url(randomBytes(bytes));

module.exports = {
  random,
  state: random,
  nonce: random,
  codeVerifier: random,
  codeChallenge: (codeVerifier) => base64url(createHash('sha256').update(codeVerifier).digest()),
};


/***/ }),

/***/ 61797:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const url = __webpack_require__(78835);
const { strict: assert } = __webpack_require__(42357);

module.exports = (target) => {
  try {
    const { protocol } = new url.URL(target);
    assert(protocol.match(/^(https?:)$/));
    return true;
  } catch (err) {
    throw new TypeError('only valid absolute URLs can be requested');
  }
};


/***/ }),

/***/ 39862:
/***/ ((module) => {

module.exports = (a) => !!a && a.constructor === Object;


/***/ }),

/***/ 2494:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable no-restricted-syntax, no-param-reassign, no-continue */

const isPlainObject = __webpack_require__(39862);

function merge(target, ...sources) {
  for (const source of sources) {
    if (!isPlainObject(source)) {
      continue;
    }
    for (const [key, value] of Object.entries(source)) {
      /* istanbul ignore if */
      if (key === '__proto__' || key === 'constructor') {
        continue;
      }
      if (isPlainObject(target[key]) && isPlainObject(value)) {
        target[key] = merge(target[key], value);
      } else if (typeof value !== 'undefined') {
        target[key] = value;
      }
    }
  }

  return target;
}

module.exports = merge;


/***/ }),

/***/ 78857:
/***/ ((module) => {

module.exports = function pick(object, ...paths) {
  const obj = {};
  for (const path of paths) { // eslint-disable-line no-restricted-syntax
    if (object[path]) {
      obj[path] = object[path];
    }
  }
  return obj;
};


/***/ }),

/***/ 28576:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const { STATUS_CODES } = __webpack_require__(98605);
const { format } = __webpack_require__(31669);

const { OPError } = __webpack_require__(45061);

const REGEXP = /(\w+)=("[^"]*")/g;
const throwAuthenticateErrors = (response) => {
  const params = {};
  try {
    while ((REGEXP.exec(response.headers['www-authenticate'])) !== null) {
      if (RegExp.$1 && RegExp.$2) {
        params[RegExp.$1] = RegExp.$2.slice(1, -1);
      }
    }
  } catch (err) {}

  if (params.error) {
    throw new OPError(params, response);
  }
};

const isStandardBodyError = (response) => {
  let result = false;
  try {
    let jsonbody;
    if (typeof response.body !== 'object' || Buffer.isBuffer(response.body)) {
      jsonbody = JSON.parse(response.body);
    } else {
      jsonbody = response.body;
    }
    result = typeof jsonbody.error === 'string' && jsonbody.error.length;
    if (result) response.body = jsonbody;
  } catch (err) {}

  return result;
};

function processResponse(response, { statusCode = 200, body = true, bearer = false } = {}) {
  if (response.statusCode !== statusCode) {
    if (bearer) {
      throwAuthenticateErrors(response);
    }

    if (isStandardBodyError(response)) {
      throw new OPError(response.body, response);
    }

    throw new OPError({
      error: format('expected %i %s, got: %i %s', statusCode, STATUS_CODES[statusCode], response.statusCode, STATUS_CODES[response.statusCode]),
    }, response);
  }

  if (body && !response.body) {
    throw new OPError({
      error: format('expected %i %s with body but no body was returned', statusCode, STATUS_CODES[statusCode]),
    }, response);
  }

  return response.body;
}

module.exports = processResponse;


/***/ }),

/***/ 92946:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Got = __webpack_require__(44462);

const pkg = __webpack_require__(76710);

const { deep: defaultsDeep } = __webpack_require__(26457);
const isAbsoluteUrl = __webpack_require__(61797);
const { HTTP_OPTIONS } = __webpack_require__(27556);

let DEFAULT_HTTP_OPTIONS;
let got;

const setDefaults = (options) => {
  DEFAULT_HTTP_OPTIONS = defaultsDeep({}, options, DEFAULT_HTTP_OPTIONS);
  got = Got.extend(DEFAULT_HTTP_OPTIONS);
};

setDefaults({
  followRedirect: false,
  headers: { 'User-Agent': `${pkg.name}/${pkg.version} (${pkg.homepage})` },
  retry: 0,
  timeout: 2500,
  throwHttpErrors: false,
});

module.exports = function request(options, { mTLS = false } = {}) {
  const { url } = options;
  isAbsoluteUrl(url);
  const optsFn = this[HTTP_OPTIONS];
  let opts;
  if (optsFn) {
    opts = optsFn.call(this, defaultsDeep({}, options, DEFAULT_HTTP_OPTIONS));
  } else {
    opts = options;
  }

  if (mTLS && (!opts.key || !opts.cert)) {
    throw new TypeError('mutual-TLS certificate and key not set');
  }
  return got(opts);
};

module.exports.setDefaults = setDefaults;


/***/ }),

/***/ 8542:
/***/ ((module) => {

module.exports = () => Math.floor(Date.now() / 1000);


/***/ }),

/***/ 36546:
/***/ ((module) => {

const privateProps = new WeakMap();

module.exports = (ctx) => {
  if (!privateProps.has(ctx)) {
    privateProps.set(ctx, new Map([['metadata', new Map()]]));
  }
  return privateProps.get(ctx);
};


/***/ }),

/***/ 27416:
/***/ ((module) => {

// Credit: https://github.com/rohe/pyoidc/blob/master/src/oic/utils/webfinger.py

// -- Normalization --
// A string of any other type is interpreted as a URI either the form of scheme
// "://" authority path-abempty [ "?" query ] [ "#" fragment ] or authority
// path-abempty [ "?" query ] [ "#" fragment ] per RFC 3986 [RFC3986] and is
// normalized according to the following rules:
//
// If the user input Identifier does not have an RFC 3986 [RFC3986] scheme
// portion, the string is interpreted as [userinfo "@"] host [":" port]
// path-abempty [ "?" query ] [ "#" fragment ] per RFC 3986 [RFC3986].
// If the userinfo component is present and all of the path component, query
// component, and port component are empty, the acct scheme is assumed. In this
// case, the normalized URI is formed by prefixing acct: to the string as the
// scheme. Per the 'acct' URI Scheme [I‑D.ietf‑appsawg‑acct‑uri], if there is an
// at-sign character ('@') in the userinfo component, it needs to be
// percent-encoded as described in RFC 3986 [RFC3986].
// For all other inputs without a scheme portion, the https scheme is assumed,
// and the normalized URI is formed by prefixing https:// to the string as the
// scheme.
// If the resulting URI contains a fragment portion, it MUST be stripped off
// together with the fragment delimiter character "#".
// The WebFinger [I‑D.ietf‑appsawg‑webfinger] Resource in this case is the
// resulting URI, and the WebFinger Host is the authority component.
//
// Note: Since the definition of authority in RFC 3986 [RFC3986] is
// [ userinfo "@" ] host [ ":" port ], it is legal to have a user input
// identifier like userinfo@host:port, e.g., alice@example.com:8080.

const PORT = /^\d+$/;

function hasScheme(input) {
  if (input.includes('://')) return true;

  const authority = input.replace(/(\/|\?)/g, '#').split('#')[0];
  if (authority.includes(':')) {
    const index = authority.indexOf(':');
    const hostOrPort = authority.slice(index + 1);
    if (!PORT.test(hostOrPort)) {
      return true;
    }
  }

  return false;
}

function acctSchemeAssumed(input) {
  if (!input.includes('@')) return false;
  const parts = input.split('@');
  const host = parts[parts.length - 1];
  return !(host.includes(':') || host.includes('/') || host.includes('?'));
}

function normalize(input) {
  if (typeof input !== 'string') {
    throw new TypeError('input must be a string');
  }

  let output;
  if (hasScheme(input)) {
    output = input;
  } else if (acctSchemeAssumed(input)) {
    output = `acct:${input}`;
  } else {
    output = `https://${input}`;
  }

  return output.split('#')[0];
}

module.exports = normalize;


/***/ }),

/***/ 53140:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Issuer = __webpack_require__(27213);
const { OPError, RPError } = __webpack_require__(45061);
const Registry = __webpack_require__(30730);
const Strategy = __webpack_require__(22134);
const TokenSet = __webpack_require__(39029);
const { CLOCK_TOLERANCE, HTTP_OPTIONS } = __webpack_require__(27556);
const generators = __webpack_require__(75421);
const { setDefaults } = __webpack_require__(92946);

module.exports = {
  Issuer,
  Registry,
  Strategy,
  TokenSet,
  errors: {
    OPError,
    RPError,
  },
  custom: {
    setHttpOptionsDefaults: setDefaults,
    http_options: HTTP_OPTIONS,
    clock_tolerance: CLOCK_TOLERANCE,
  },
  generators,
};


/***/ }),

/***/ 27213:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable max-classes-per-file */

const { inspect, deprecate } = __webpack_require__(31669);
const url = __webpack_require__(78835);

const jose = __webpack_require__(16425);
const pAny = __webpack_require__(56693);
const LRU = __webpack_require__(7129);
const objectHash = __webpack_require__(24856);

const { RPError } = __webpack_require__(45061);
const getClient = __webpack_require__(28300);
const registry = __webpack_require__(30730);
const processResponse = __webpack_require__(28576);
const webfingerNormalize = __webpack_require__(27416);
const instance = __webpack_require__(36546);
const request = __webpack_require__(92946);
const { assertIssuerConfiguration } = __webpack_require__(63217);
const {
  ISSUER_DEFAULTS, OIDC_DISCOVERY, OAUTH2_DISCOVERY, WEBFINGER, REL, AAD_MULTITENANT_DISCOVERY,
} = __webpack_require__(27556);

const AAD_MULTITENANT = Symbol('AAD_MULTITENANT');

class Issuer {
  /**
   * @name constructor
   * @api public
   */
  constructor(meta = {}) {
    const aadIssValidation = meta[AAD_MULTITENANT];
    delete meta[AAD_MULTITENANT];

    ['introspection', 'revocation'].forEach((endpoint) => {
      // if intro/revocation endpoint auth specific meta is missing use the token ones if they
      // are defined
      if (
        meta[`${endpoint}_endpoint`]
        && meta[`${endpoint}_endpoint_auth_methods_supported`] === undefined
        && meta[`${endpoint}_endpoint_auth_signing_alg_values_supported`] === undefined
      ) {
        if (meta.token_endpoint_auth_methods_supported) {
          meta[`${endpoint}_endpoint_auth_methods_supported`] = meta.token_endpoint_auth_methods_supported;
        }
        if (meta.token_endpoint_auth_signing_alg_values_supported) {
          meta[`${endpoint}_endpoint_auth_signing_alg_values_supported`] = meta.token_endpoint_auth_signing_alg_values_supported;
        }
      }
    });

    Object.entries(meta).forEach(([key, value]) => {
      instance(this).get('metadata').set(key, value);
      if (!this[key]) {
        Object.defineProperty(this, key, {
          get() { return instance(this).get('metadata').get(key); },
          enumerable: true,
        });
      }
    });

    instance(this).set('cache', new LRU({ max: 100 }));

    registry.set(this.issuer, this);

    Object.defineProperty(this, 'Client', {
      value: getClient(this, aadIssValidation),
    });

    Object.defineProperty(this, 'FAPIClient', {
      value: class FAPIClient extends this.Client {},
    });
  }

  /**
   * @name keystore
   * @api public
   */
  async keystore(reload = false) {
    assertIssuerConfiguration(this, 'jwks_uri');

    const keystore = instance(this).get('keystore');
    const cache = instance(this).get('cache');

    if (reload || !keystore) {
      cache.reset();
      const response = await request.call(this, {
        method: 'GET',
        json: true,
        url: this.jwks_uri,
      });
      const jwks = processResponse(response);

      const joseKeyStore = jose.JWKS.asKeyStore(jwks, { ignoreErrors: true });
      cache.set('throttle', true, 60 * 1000);
      instance(this).set('keystore', joseKeyStore);
      return joseKeyStore;
    }

    return keystore;
  }

  /**
   * @name queryKeyStore
   * @api private
   */
  async queryKeyStore({
    kid, kty, alg, use, key_ops: ops,
  }, { allowMulti = false } = {}) {
    const cache = instance(this).get('cache');

    const def = {
      kid, kty, alg, use, key_ops: ops,
    };

    const defHash = objectHash(def, {
      algorithm: 'sha256',
      ignoreUnknown: true,
      unorderedArrays: true,
      unorderedSets: true,
    });

    // refresh keystore on every unknown key but also only upto once every minute
    const freshJwksUri = cache.get(defHash) || cache.get('throttle');

    const keystore = await this.keystore(!freshJwksUri);
    const keys = keystore.all(def);

    if (keys.length === 0) {
      throw new RPError({
        printf: ["no valid key found in issuer's jwks_uri for key parameters %j", def],
        jwks: keystore,
      });
    }

    if (!allowMulti && keys.length > 1 && !kid) {
      throw new RPError({
        printf: ["multiple matching keys found in issuer's jwks_uri for key parameters %j, kid must be provided in this case", def],
        jwks: keystore,
      });
    }

    cache.set(defHash, true);

    return new jose.JWKS.KeyStore(keys);
  }

  /**
   * @name metadata
   * @api public
   */
  get metadata() {
    const copy = {};
    instance(this).get('metadata').forEach((value, key) => {
      copy[key] = value;
    });
    return copy;
  }

  /**
   * @name webfinger
   * @api public
   */
  static async webfinger(input) {
    const resource = webfingerNormalize(input);
    const { host } = url.parse(resource);
    const webfingerUrl = `https://${host}${WEBFINGER}`;

    const response = await request.call(this, {
      method: 'GET',
      url: webfingerUrl,
      json: true,
      query: { resource, rel: REL },
      followRedirect: true,
    });
    const body = processResponse(response);

    const location = Array.isArray(body.links) && body.links.find((link) => typeof link === 'object' && link.rel === REL && link.href);

    if (!location) {
      throw new RPError({
        message: 'no issuer found in webfinger response',
        body,
      });
    }

    if (typeof location.href !== 'string' || !location.href.startsWith('https://')) {
      throw new RPError({
        printf: ['invalid issuer location %s', location.href],
        body,
      });
    }

    const expectedIssuer = location.href;
    if (registry.has(expectedIssuer)) {
      return registry.get(expectedIssuer);
    }

    const issuer = await this.discover(expectedIssuer);

    if (issuer.issuer !== expectedIssuer) {
      registry.delete(issuer.issuer);
      throw new RPError('discovered issuer mismatch, expected %s, got: %s', expectedIssuer, issuer.issuer);
    }
    return issuer;
  }

  /**
   * @name discover
   * @api public
   */
  static async discover(uri) {
    const parsed = url.parse(uri);

    if (parsed.pathname.includes('/.well-known/')) {
      const response = await request.call(this, {
        method: 'GET',
        json: true,
        url: uri,
      });
      const body = processResponse(response);
      return new Issuer({
        ...ISSUER_DEFAULTS,
        ...body,
        [AAD_MULTITENANT]: !!AAD_MULTITENANT_DISCOVERY.find(
          (discoveryURL) => uri.startsWith(discoveryURL),
        ),
      });
    }

    const uris = [];
    if (parsed.pathname === '/') {
      uris.push(`${OAUTH2_DISCOVERY}`);
    } else {
      uris.push(`${OAUTH2_DISCOVERY}${parsed.pathname}`);
    }
    if (parsed.pathname.endsWith('/')) {
      uris.push(`${parsed.pathname}${OIDC_DISCOVERY.substring(1)}`);
    } else {
      uris.push(`${parsed.pathname}${OIDC_DISCOVERY}`);
    }

    return pAny(uris.map(async (pathname) => {
      const wellKnownUri = url.format({ ...parsed, pathname });
      const response = await request.call(this, {
        method: 'GET',
        json: true,
        url: wellKnownUri,
      });
      const body = processResponse(response);
      return new Issuer({
        ...ISSUER_DEFAULTS,
        ...body,
        [AAD_MULTITENANT]: !!AAD_MULTITENANT_DISCOVERY.find(
          (discoveryURL) => wellKnownUri.startsWith(discoveryURL),
        ),
      });
    }));
  }

  /* istanbul ignore next */
  [inspect.custom]() {
    return `${this.constructor.name} ${inspect(this.metadata, {
      depth: Infinity,
      colors: process.stdout.isTTY,
      compact: false,
      sorted: true,
    })}`;
  }
}

/**
 * @name key
 * @api private
 */
Issuer.prototype.key = deprecate(async function key({
  kid, kty, alg, use, key_ops: ops,
}, allowMulti = false) {
  const cache = instance(this).get('cache');

  const def = {
    kid, kty, alg, use, key_ops: ops,
  };

  const defHash = objectHash(def, {
    algorithm: 'sha256',
    ignoreUnknown: true,
    unorderedArrays: true,
    unorderedSets: true,
  });

  // refresh keystore on every unknown key but also only upto once every minute
  const freshJwksUri = cache.get(defHash) || cache.get('throttle');

  const keystore = await this.keystore(!freshJwksUri);
  const keys = keystore.all(def);

  if (keys.length === 0) {
    throw new RPError({
      printf: ["no valid key found in issuer's jwks_uri for key parameters %j", def],
      jwks: keystore,
    });
  }
  if (!allowMulti) {
    if (keys.length !== 1) {
      throw new RPError({
        printf: ["multiple matching keys found in issuer's jwks_uri for key parameters %j, kid must be provided in this case", def],
        jwks: keystore,
      });
    }
    cache.set(defHash, true);
  }
  return keys[0];
}, 'issuer.key is not only a private API, it is also deprecated');

module.exports = Issuer;


/***/ }),

/***/ 30730:
/***/ ((module) => {

const REGISTRY = new Map();

module.exports = REGISTRY;


/***/ }),

/***/ 22134:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable no-underscore-dangle */

const url = __webpack_require__(78835);
const { format } = __webpack_require__(31669);

const cloneDeep = __webpack_require__(21004);
const { RPError, OPError } = __webpack_require__(45061);
const { BaseClient } = __webpack_require__(28300);
const { random, codeChallenge } = __webpack_require__(75421);
const pick = __webpack_require__(78857);
const { resolveResponseType, resolveRedirectUri } = __webpack_require__(7619);

function verified(err, user, info = {}) {
  if (err) {
    this.error(err);
  } else if (!user) {
    this.fail(info);
  } else {
    this.success(user, info);
  }
}

/**
 * @name constructor
 * @api public
 */
function OpenIDConnectStrategy({
  client,
  params = {},
  passReqToCallback = false,
  sessionKey,
  usePKCE = false,
} = {}, verify) {
  if (!(client instanceof BaseClient)) {
    throw new TypeError('client must be an instance of openid-client Client');
  }

  if (typeof verify !== 'function') {
    throw new TypeError('verify callback must be a function');
  }

  if (!client.issuer || !client.issuer.issuer) {
    throw new TypeError('client must have an issuer with an identifier');
  }

  this._client = client;
  this._issuer = client.issuer;
  this._verify = verify;
  this._passReqToCallback = passReqToCallback;
  this._usePKCE = usePKCE;
  this._key = sessionKey || `oidc:${url.parse(this._issuer.issuer).hostname}`;
  this._params = cloneDeep(params);

  if (this._usePKCE === true) {
    const supportedMethods = this._issuer.code_challenge_methods_supported;
    if (!Array.isArray(supportedMethods)) {
      throw new TypeError('code_challenge_methods_supported is not properly set on issuer');
    }
    if (supportedMethods.includes('S256')) {
      this._usePKCE = 'S256';
    } else if (supportedMethods.includes('plain')) {
      this._usePKCE = 'plain';
    } else {
      throw new TypeError('neither supported code_challenge_method is supported by the issuer');
    }
  } else if (typeof this._usePKCE === 'string' && !['plain', 'S256'].includes(this._usePKCE)) {
    throw new TypeError(`${this._usePKCE} is not valid/implemented PKCE code_challenge_method`);
  }

  this.name = url.parse(client.issuer.issuer).hostname;

  if (!this._params.response_type) this._params.response_type = resolveResponseType.call(client);
  if (!this._params.redirect_uri) this._params.redirect_uri = resolveRedirectUri.call(client);
  if (!this._params.scope) this._params.scope = 'openid';
}

OpenIDConnectStrategy.prototype.authenticate = function authenticate(req, options) {
  (async () => {
    const client = this._client;
    if (!req.session) {
      throw new TypeError('authentication requires session support');
    }
    const reqParams = client.callbackParams(req);
    const sessionKey = this._key;

    /* start authentication request */
    if (Object.keys(reqParams).length === 0) {
      // provide options object with extra authentication parameters
      const params = {
        state: random(),
        ...this._params,
        ...options,
      };

      if (!params.nonce && params.response_type.includes('id_token')) {
        params.nonce = random();
      }

      req.session[sessionKey] = pick(params, 'nonce', 'state', 'max_age', 'response_type');

      if (this._usePKCE) {
        const verifier = random();
        req.session[sessionKey].code_verifier = verifier;

        switch (this._usePKCE) { // eslint-disable-line default-case
          case 'S256':
            params.code_challenge = codeChallenge(verifier);
            params.code_challenge_method = 'S256';
            break;
          case 'plain':
            params.code_challenge = verifier;
            break;
        }
      }

      this.redirect(client.authorizationUrl(params));
      return;
    }
    /* end authentication request */

    /* start authentication response */

    const session = req.session[sessionKey];
    if (Object.keys(session || {}).length === 0) {
      throw new Error(format('did not find expected authorization request details in session, req.session["%s"] is %j', sessionKey, session));
    }

    const {
      state, nonce, max_age: maxAge, code_verifier: codeVerifier, response_type: responseType,
    } = session;

    try {
      delete req.session[sessionKey];
    } catch (err) {}

    const opts = {
      redirect_uri: this._params.redirect_uri,
      ...options,
    };

    const checks = {
      state,
      nonce,
      max_age: maxAge,
      code_verifier: codeVerifier,
      response_type: responseType,
    };

    const tokenset = await client.callback(opts.redirect_uri, reqParams, checks);

    const passReq = this._passReqToCallback;
    const loadUserinfo = this._verify.length > (passReq ? 3 : 2) && client.issuer.userinfo_endpoint;

    const args = [tokenset, verified.bind(this)];

    if (loadUserinfo) {
      if (!tokenset.access_token) {
        throw new RPError({
          message: 'expected access_token to be returned when asking for userinfo in verify callback',
          tokenset,
        });
      }
      const userinfo = await client.userinfo(tokenset);
      args.splice(1, 0, userinfo);
    }

    if (passReq) {
      args.unshift(req);
    }

    this._verify(...args);
    /* end authentication response */
  })().catch((error) => {
    if (
      (error instanceof OPError && error.error !== 'server_error' && !error.error.startsWith('invalid'))
      || error instanceof RPError
    ) {
      this.fail(error);
    } else {
      this.error(error);
    }
  });
};

module.exports = OpenIDConnectStrategy;


/***/ }),

/***/ 39029:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const base64url = __webpack_require__(27291);

const now = __webpack_require__(8542);

class TokenSet {
  /**
   * @name constructor
   * @api public
   */
  constructor(values) {
    Object.assign(this, values);
  }

  /**
   * @name expires_in=
   * @api public
   */
  set expires_in(value) { // eslint-disable-line camelcase
    this.expires_at = now() + Number(value);
  }

  /**
   * @name expires_in
   * @api public
   */
  get expires_in() { // eslint-disable-line camelcase
    return Math.max.apply(null, [this.expires_at - now(), 0]);
  }

  /**
   * @name expired
   * @api public
   */
  expired() {
    return this.expires_in === 0;
  }

  /**
   * @name claims
   * @api public
   */
  claims() {
    if (!this.id_token) {
      throw new TypeError('id_token not present in TokenSet');
    }

    return JSON.parse(base64url.decode(this.id_token.split('.')[1]));
  }
}

module.exports = TokenSet;


/***/ }),

/***/ 56693:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const pSome = __webpack_require__(82822);
const PCancelable = __webpack_require__(19072);

module.exports = (iterable, options) => {
	const anyCancelable = pSome(iterable, {...options, count: 1});

	return PCancelable.fn(async onCancel => {
		onCancel(() => {
			anyCancelable.cancel();
		});

		const [value] = await anyCancelable;
		return value;
	})();
};

module.exports.AggregateError = pSome.AggregateError;


/***/ }),

/***/ 19072:
/***/ ((module) => {

"use strict";


class CancelError extends Error {
	constructor(reason) {
		super(reason || 'Promise was canceled');
		this.name = 'CancelError';
	}

	get isCanceled() {
		return true;
	}
}

class PCancelable {
	static fn(userFn) {
		return (...arguments_) => {
			return new PCancelable((resolve, reject, onCancel) => {
				arguments_.push(onCancel);
				// eslint-disable-next-line promise/prefer-await-to-then
				userFn(...arguments_).then(resolve, reject);
			});
		};
	}

	constructor(executor) {
		this._cancelHandlers = [];
		this._isPending = true;
		this._isCanceled = false;
		this._rejectOnCancel = true;

		this._promise = new Promise((resolve, reject) => {
			this._reject = reject;

			const onResolve = value => {
				if (!this._isCanceled || !onCancel.shouldReject) {
					this._isPending = false;
					resolve(value);
				}
			};

			const onReject = error => {
				this._isPending = false;
				reject(error);
			};

			const onCancel = handler => {
				if (!this._isPending) {
					throw new Error('The `onCancel` handler was attached after the promise settled.');
				}

				this._cancelHandlers.push(handler);
			};

			Object.defineProperties(onCancel, {
				shouldReject: {
					get: () => this._rejectOnCancel,
					set: boolean => {
						this._rejectOnCancel = boolean;
					}
				}
			});

			return executor(onResolve, onReject, onCancel);
		});
	}

	then(onFulfilled, onRejected) {
		// eslint-disable-next-line promise/prefer-await-to-then
		return this._promise.then(onFulfilled, onRejected);
	}

	catch(onRejected) {
		return this._promise.catch(onRejected);
	}

	finally(onFinally) {
		return this._promise.finally(onFinally);
	}

	cancel(reason) {
		if (!this._isPending || this._isCanceled) {
			return;
		}

		this._isCanceled = true;

		if (this._cancelHandlers.length > 0) {
			try {
				for (const handler of this._cancelHandlers) {
					handler();
				}
			} catch (error) {
				this._reject(error);
				return;
			}
		}

		if (this._rejectOnCancel) {
			this._reject(new CancelError(reason));
		}
	}

	get isCanceled() {
		return this._isCanceled;
	}
}

Object.setPrototypeOf(PCancelable.prototype, Promise.prototype);

module.exports = PCancelable;
module.exports.CancelError = CancelError;


/***/ }),

/***/ 82822:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const AggregateError = __webpack_require__(61231);
const PCancelable = __webpack_require__(19072);

class FilterError extends Error { }

const pSome = (iterable, options) => new PCancelable((resolve, reject, onCancel) => {
	const {
		count,
		filter = () => true
	} = options;

	if (!Number.isFinite(count)) {
		reject(new TypeError(`Expected a finite number, got ${typeof options.count}`));
		return;
	}

	const values = [];
	const errors = [];
	let elementCount = 0;
	let isSettled = false;

	const completed = new Set();
	const maybeSettle = () => {
		if (values.length === count) {
			resolve(values);
			isSettled = true;
		}

		if (elementCount - errors.length < count) {
			reject(new AggregateError(errors));
			isSettled = true;
		}

		return isSettled;
	};

	const cancelPending = () => {
		for (const promise of iterable) {
			if (!completed.has(promise) && typeof promise.cancel === 'function') {
				promise.cancel();
			}
		}
	};

	onCancel(cancelPending);

	for (const element of iterable) {
		elementCount++;

		(async () => {
			try {
				const value = await element;

				if (isSettled) {
					return;
				}

				if (!filter(value)) {
					throw new FilterError('Value does not satisfy filter');
				}

				values.push(value);
			} catch (error) {
				errors.push(error);
			} finally {
				completed.add(element);

				if (!isSettled && maybeSettle()) {
					cancelPending();
				}
			}
		})();
	}

	if (count > elementCount) {
		reject(new RangeError(`Expected input to contain at least ${options.count} items, but contains ${elementCount} items`));
		cancelPending();
	}
});

module.exports = pSome;
module.exports.AggregateError = AggregateError;
module.exports.FilterError = FilterError;


/***/ }),

/***/ 38714:
/***/ ((module) => {

"use strict";


function posix(path) {
	return path.charAt(0) === '/';
}

function win32(path) {
	// https://github.com/nodejs/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56
	var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
	var result = splitDeviceRe.exec(path);
	var device = result[1] || '';
	var isUnc = Boolean(device && device.charAt(1) !== ':');

	// UNC paths are always absolute
	return Boolean(result[2] || isUnc);
}

module.exports = process.platform === 'win32' ? win32 : posix;
module.exports.posix = posix;
module.exports.win32 = win32;


/***/ }),

/***/ 85644:
/***/ (function(module) {

// Generated by CoffeeScript 1.12.2
(function() {
  var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;

  if ((typeof performance !== "undefined" && performance !== null) && performance.now) {
    module.exports = function() {
      return performance.now();
    };
  } else if ((typeof process !== "undefined" && process !== null) && process.hrtime) {
    module.exports = function() {
      return (getNanoSeconds() - nodeLoadTime) / 1e6;
    };
    hrtime = process.hrtime;
    getNanoSeconds = function() {
      var hr;
      hr = hrtime();
      return hr[0] * 1e9 + hr[1];
    };
    moduleLoadTime = getNanoSeconds();
    upTime = process.uptime() * 1e9;
    nodeLoadTime = moduleLoadTime - upTime;
  } else if (Date.now) {
    module.exports = function() {
      return Date.now() - loadTime;
    };
    loadTime = Date.now();
  } else {
    module.exports = function() {
      return new Date().getTime() - loadTime;
    };
    loadTime = new Date().getTime();
  }

}).call(this);

//# sourceMappingURL=performance-now.js.map


/***/ }),

/***/ 56143:
/***/ ((module) => {

"use strict";

module.exports = (url, opts) => {
	if (typeof url !== 'string') {
		throw new TypeError(`Expected \`url\` to be of type \`string\`, got \`${typeof url}\``);
	}

	url = url.trim();
	opts = Object.assign({https: false}, opts);

	if (/^\.*\/|^(?!localhost)\w+:/.test(url)) {
		return url;
	}

	return url.replace(/^(?!(?:\w+:)?\/\/)/, opts.https ? 'https://' : 'http://');
};


/***/ }),

/***/ 29975:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/*eslint no-var:0, prefer-arrow-callback: 0, object-shorthand: 0 */



var Punycode = __webpack_require__(94213);


var internals = {};


//
// Read rules from file.
//
internals.rules = __webpack_require__(2156).map(function (rule) {

  return {
    rule: rule,
    suffix: rule.replace(/^(\*\.|\!)/, ''),
    punySuffix: -1,
    wildcard: rule.charAt(0) === '*',
    exception: rule.charAt(0) === '!'
  };
});


//
// Check is given string ends with `suffix`.
//
internals.endsWith = function (str, suffix) {

  return str.indexOf(suffix, str.length - suffix.length) !== -1;
};


//
// Find rule for a given domain.
//
internals.findRule = function (domain) {

  var punyDomain = Punycode.toASCII(domain);
  return internals.rules.reduce(function (memo, rule) {

    if (rule.punySuffix === -1){
      rule.punySuffix = Punycode.toASCII(rule.suffix);
    }
    if (!internals.endsWith(punyDomain, '.' + rule.punySuffix) && punyDomain !== rule.punySuffix) {
      return memo;
    }
    // This has been commented out as it never seems to run. This is because
    // sub tlds always appear after their parents and we never find a shorter
    // match.
    //if (memo) {
    //  var memoSuffix = Punycode.toASCII(memo.suffix);
    //  if (memoSuffix.length >= punySuffix.length) {
    //    return memo;
    //  }
    //}
    return rule;
  }, null);
};


//
// Error codes and messages.
//
exports.errorCodes = {
  DOMAIN_TOO_SHORT: 'Domain name too short.',
  DOMAIN_TOO_LONG: 'Domain name too long. It should be no more than 255 chars.',
  LABEL_STARTS_WITH_DASH: 'Domain name label can not start with a dash.',
  LABEL_ENDS_WITH_DASH: 'Domain name label can not end with a dash.',
  LABEL_TOO_LONG: 'Domain name label should be at most 63 chars long.',
  LABEL_TOO_SHORT: 'Domain name label should be at least 1 character long.',
  LABEL_INVALID_CHARS: 'Domain name label can only contain alphanumeric characters or dashes.'
};


//
// Validate domain name and throw if not valid.
//
// From wikipedia:
//
// Hostnames are composed of series of labels concatenated with dots, as are all
// domain names. Each label must be between 1 and 63 characters long, and the
// entire hostname (including the delimiting dots) has a maximum of 255 chars.
//
// Allowed chars:
//
// * `a-z`
// * `0-9`
// * `-` but not as a starting or ending character
// * `.` as a separator for the textual portions of a domain name
//
// * http://en.wikipedia.org/wiki/Domain_name
// * http://en.wikipedia.org/wiki/Hostname
//
internals.validate = function (input) {

  // Before we can validate we need to take care of IDNs with unicode chars.
  var ascii = Punycode.toASCII(input);

  if (ascii.length < 1) {
    return 'DOMAIN_TOO_SHORT';
  }
  if (ascii.length > 255) {
    return 'DOMAIN_TOO_LONG';
  }

  // Check each part's length and allowed chars.
  var labels = ascii.split('.');
  var label;

  for (var i = 0; i < labels.length; ++i) {
    label = labels[i];
    if (!label.length) {
      return 'LABEL_TOO_SHORT';
    }
    if (label.length > 63) {
      return 'LABEL_TOO_LONG';
    }
    if (label.charAt(0) === '-') {
      return 'LABEL_STARTS_WITH_DASH';
    }
    if (label.charAt(label.length - 1) === '-') {
      return 'LABEL_ENDS_WITH_DASH';
    }
    if (!/^[a-z0-9\-]+$/.test(label)) {
      return 'LABEL_INVALID_CHARS';
    }
  }
};


//
// Public API
//


//
// Parse domain.
//
exports.parse = function (input) {

  if (typeof input !== 'string') {
    throw new TypeError('Domain name must be a string.');
  }

  // Force domain to lowercase.
  var domain = input.slice(0).toLowerCase();

  // Handle FQDN.
  // TODO: Simply remove trailing dot?
  if (domain.charAt(domain.length - 1) === '.') {
    domain = domain.slice(0, domain.length - 1);
  }

  // Validate and sanitise input.
  var error = internals.validate(domain);
  if (error) {
    return {
      input: input,
      error: {
        message: exports.errorCodes[error],
        code: error
      }
    };
  }

  var parsed = {
    input: input,
    tld: null,
    sld: null,
    domain: null,
    subdomain: null,
    listed: false
  };

  var domainParts = domain.split('.');

  // Non-Internet TLD
  if (domainParts[domainParts.length - 1] === 'local') {
    return parsed;
  }

  var handlePunycode = function () {

    if (!/xn--/.test(domain)) {
      return parsed;
    }
    if (parsed.domain) {
      parsed.domain = Punycode.toASCII(parsed.domain);
    }
    if (parsed.subdomain) {
      parsed.subdomain = Punycode.toASCII(parsed.subdomain);
    }
    return parsed;
  };

  var rule = internals.findRule(domain);

  // Unlisted tld.
  if (!rule) {
    if (domainParts.length < 2) {
      return parsed;
    }
    parsed.tld = domainParts.pop();
    parsed.sld = domainParts.pop();
    parsed.domain = [parsed.sld, parsed.tld].join('.');
    if (domainParts.length) {
      parsed.subdomain = domainParts.pop();
    }
    return handlePunycode();
  }

  // At this point we know the public suffix is listed.
  parsed.listed = true;

  var tldParts = rule.suffix.split('.');
  var privateParts = domainParts.slice(0, domainParts.length - tldParts.length);

  if (rule.exception) {
    privateParts.push(tldParts.shift());
  }

  parsed.tld = tldParts.join('.');

  if (!privateParts.length) {
    return handlePunycode();
  }

  if (rule.wildcard) {
    tldParts.unshift(privateParts.pop());
    parsed.tld = tldParts.join('.');
  }

  if (!privateParts.length) {
    return handlePunycode();
  }

  parsed.sld = privateParts.pop();
  parsed.domain = [parsed.sld,  parsed.tld].join('.');

  if (privateParts.length) {
    parsed.subdomain = privateParts.join('.');
  }

  return handlePunycode();
};


//
// Get domain.
//
exports.get = function (domain) {

  if (!domain) {
    return null;
  }
  return exports.parse(domain).domain || null;
};


//
// Check whether domain belongs to a known public suffix.
//
exports.isValid = function (domain) {

  var parsed = exports.parse(domain);
  return Boolean(parsed.domain && parsed.listed);
};


/***/ }),

/***/ 18341:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var once = __webpack_require__(1223)
var eos = __webpack_require__(81205)
var fs = __webpack_require__(35747) // we only need fs to get the ReadStream and WriteStream prototypes

var noop = function () {}
var ancient = /^v?\.0/.test(process.version)

var isFn = function (fn) {
  return typeof fn === 'function'
}

var isFS = function (stream) {
  if (!ancient) return false // newer node version do not need to care about fs is a special way
  if (!fs) return false // browser
  return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close)
}

var isRequest = function (stream) {
  return stream.setHeader && isFn(stream.abort)
}

var destroyer = function (stream, reading, writing, callback) {
  callback = once(callback)

  var closed = false
  stream.on('close', function () {
    closed = true
  })

  eos(stream, {readable: reading, writable: writing}, function (err) {
    if (err) return callback(err)
    closed = true
    callback()
  })

  var destroyed = false
  return function (err) {
    if (closed) return
    if (destroyed) return
    destroyed = true

    if (isFS(stream)) return stream.close(noop) // use close for fs streams to avoid fd leaks
    if (isRequest(stream)) return stream.abort() // request.destroy just do .end - .abort is what we want

    if (isFn(stream.destroy)) return stream.destroy()

    callback(err || new Error('stream was destroyed'))
  }
}

var call = function (fn) {
  fn()
}

var pipe = function (from, to) {
  return from.pipe(to)
}

var pump = function () {
  var streams = Array.prototype.slice.call(arguments)
  var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop

  if (Array.isArray(streams[0])) streams = streams[0]
  if (streams.length < 2) throw new Error('pump requires two streams per minimum')

  var error
  var destroys = streams.map(function (stream, i) {
    var reading = i < streams.length - 1
    var writing = i > 0
    return destroyer(stream, reading, writing, function (err) {
      if (!error) error = err
      if (err) destroys.forEach(call)
      if (reading) return
      destroys.forEach(call)
      callback(error)
    })
  })

  return streams.reduce(pipe)
}

module.exports = pump


/***/ }),

/***/ 74907:
/***/ ((module) => {

"use strict";


var replace = String.prototype.replace;
var percentTwenties = /%20/g;

var Format = {
    RFC1738: 'RFC1738',
    RFC3986: 'RFC3986'
};

module.exports = {
    'default': Format.RFC3986,
    formatters: {
        RFC1738: function (value) {
            return replace.call(value, percentTwenties, '+');
        },
        RFC3986: function (value) {
            return String(value);
        }
    },
    RFC1738: Format.RFC1738,
    RFC3986: Format.RFC3986
};


/***/ }),

/***/ 22760:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var stringify = __webpack_require__(79954);
var parse = __webpack_require__(33912);
var formats = __webpack_require__(74907);

module.exports = {
    formats: formats,
    parse: parse,
    stringify: stringify
};


/***/ }),

/***/ 33912:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var utils = __webpack_require__(72360);

var has = Object.prototype.hasOwnProperty;
var isArray = Array.isArray;

var defaults = {
    allowDots: false,
    allowPrototypes: false,
    allowSparse: false,
    arrayLimit: 20,
    charset: 'utf-8',
    charsetSentinel: false,
    comma: false,
    decoder: utils.decode,
    delimiter: '&',
    depth: 5,
    ignoreQueryPrefix: false,
    interpretNumericEntities: false,
    parameterLimit: 1000,
    parseArrays: true,
    plainObjects: false,
    strictNullHandling: false
};

var interpretNumericEntities = function (str) {
    return str.replace(/&#(\d+);/g, function ($0, numberStr) {
        return String.fromCharCode(parseInt(numberStr, 10));
    });
};

var parseArrayValue = function (val, options) {
    if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {
        return val.split(',');
    }

    return val;
};

// This is what browsers will submit when the ✓ character occurs in an
// application/x-www-form-urlencoded body and the encoding of the page containing
// the form is iso-8859-1, or when the submitted form has an accept-charset
// attribute of iso-8859-1. Presumably also with other charsets that do not contain
// the ✓ character, such as us-ascii.
var isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('&#10003;')

// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.
var charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')

var parseValues = function parseQueryStringValues(str, options) {
    var obj = {};
    var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str;
    var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;
    var parts = cleanStr.split(options.delimiter, limit);
    var skipIndex = -1; // Keep track of where the utf8 sentinel was found
    var i;

    var charset = options.charset;
    if (options.charsetSentinel) {
        for (i = 0; i < parts.length; ++i) {
            if (parts[i].indexOf('utf8=') === 0) {
                if (parts[i] === charsetSentinel) {
                    charset = 'utf-8';
                } else if (parts[i] === isoSentinel) {
                    charset = 'iso-8859-1';
                }
                skipIndex = i;
                i = parts.length; // The eslint settings do not allow break;
            }
        }
    }

    for (i = 0; i < parts.length; ++i) {
        if (i === skipIndex) {
            continue;
        }
        var part = parts[i];

        var bracketEqualsPos = part.indexOf(']=');
        var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;

        var key, val;
        if (pos === -1) {
            key = options.decoder(part, defaults.decoder, charset, 'key');
            val = options.strictNullHandling ? null : '';
        } else {
            key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');
            val = utils.maybeMap(
                parseArrayValue(part.slice(pos + 1), options),
                function (encodedVal) {
                    return options.decoder(encodedVal, defaults.decoder, charset, 'value');
                }
            );
        }

        if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {
            val = interpretNumericEntities(val);
        }

        if (part.indexOf('[]=') > -1) {
            val = isArray(val) ? [val] : val;
        }

        if (has.call(obj, key)) {
            obj[key] = utils.combine(obj[key], val);
        } else {
            obj[key] = val;
        }
    }

    return obj;
};

var parseObject = function (chain, val, options, valuesParsed) {
    var leaf = valuesParsed ? val : parseArrayValue(val, options);

    for (var i = chain.length - 1; i >= 0; --i) {
        var obj;
        var root = chain[i];

        if (root === '[]' && options.parseArrays) {
            obj = [].concat(leaf);
        } else {
            obj = options.plainObjects ? Object.create(null) : {};
            var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
            var index = parseInt(cleanRoot, 10);
            if (!options.parseArrays && cleanRoot === '') {
                obj = { 0: leaf };
            } else if (
                !isNaN(index)
                && root !== cleanRoot
                && String(index) === cleanRoot
                && index >= 0
                && (options.parseArrays && index <= options.arrayLimit)
            ) {
                obj = [];
                obj[index] = leaf;
            } else {
                obj[cleanRoot] = leaf;
            }
        }

        leaf = obj;
    }

    return leaf;
};

var parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {
    if (!givenKey) {
        return;
    }

    // Transform dot notation to bracket notation
    var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey;

    // The regex chunks

    var brackets = /(\[[^[\]]*])/;
    var child = /(\[[^[\]]*])/g;

    // Get the parent

    var segment = options.depth > 0 && brackets.exec(key);
    var parent = segment ? key.slice(0, segment.index) : key;

    // Stash the parent if it exists

    var keys = [];
    if (parent) {
        // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties
        if (!options.plainObjects && has.call(Object.prototype, parent)) {
            if (!options.allowPrototypes) {
                return;
            }
        }

        keys.push(parent);
    }

    // Loop through children appending to the array until we hit depth

    var i = 0;
    while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {
        i += 1;
        if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {
            if (!options.allowPrototypes) {
                return;
            }
        }
        keys.push(segment[1]);
    }

    // If there's a remainder, just add whatever is left

    if (segment) {
        keys.push('[' + key.slice(segment.index) + ']');
    }

    return parseObject(keys, val, options, valuesParsed);
};

var normalizeParseOptions = function normalizeParseOptions(opts) {
    if (!opts) {
        return defaults;
    }

    if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {
        throw new TypeError('Decoder has to be a function.');
    }

    if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {
        throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');
    }
    var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;

    return {
        allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
        allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,
        allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,
        arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,
        charset: charset,
        charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
        comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,
        decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,
        delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
        // eslint-disable-next-line no-implicit-coercion, no-extra-parens
        depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,
        ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
        interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
        parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,
        parseArrays: opts.parseArrays !== false,
        plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,
        strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
    };
};

module.exports = function (str, opts) {
    var options = normalizeParseOptions(opts);

    if (str === '' || str === null || typeof str === 'undefined') {
        return options.plainObjects ? Object.create(null) : {};
    }

    var tempObj = typeof str === 'string' ? parseValues(str, options) : str;
    var obj = options.plainObjects ? Object.create(null) : {};

    // Iterate over the keys and setup the new object

    var keys = Object.keys(tempObj);
    for (var i = 0; i < keys.length; ++i) {
        var key = keys[i];
        var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');
        obj = utils.merge(obj, newObj, options);
    }

    if (options.allowSparse === true) {
        return obj;
    }

    return utils.compact(obj);
};


/***/ }),

/***/ 79954:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var getSideChannel = __webpack_require__(14334);
var utils = __webpack_require__(72360);
var formats = __webpack_require__(74907);
var has = Object.prototype.hasOwnProperty;

var arrayPrefixGenerators = {
    brackets: function brackets(prefix) {
        return prefix + '[]';
    },
    comma: 'comma',
    indices: function indices(prefix, key) {
        return prefix + '[' + key + ']';
    },
    repeat: function repeat(prefix) {
        return prefix;
    }
};

var isArray = Array.isArray;
var push = Array.prototype.push;
var pushToArray = function (arr, valueOrArray) {
    push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);
};

var toISO = Date.prototype.toISOString;

var defaultFormat = formats['default'];
var defaults = {
    addQueryPrefix: false,
    allowDots: false,
    charset: 'utf-8',
    charsetSentinel: false,
    delimiter: '&',
    encode: true,
    encoder: utils.encode,
    encodeValuesOnly: false,
    format: defaultFormat,
    formatter: formats.formatters[defaultFormat],
    // deprecated
    indices: false,
    serializeDate: function serializeDate(date) {
        return toISO.call(date);
    },
    skipNulls: false,
    strictNullHandling: false
};

var isNonNullishPrimitive = function isNonNullishPrimitive(v) {
    return typeof v === 'string'
        || typeof v === 'number'
        || typeof v === 'boolean'
        || typeof v === 'symbol'
        || typeof v === 'bigint';
};

var stringify = function stringify(
    object,
    prefix,
    generateArrayPrefix,
    strictNullHandling,
    skipNulls,
    encoder,
    filter,
    sort,
    allowDots,
    serializeDate,
    format,
    formatter,
    encodeValuesOnly,
    charset,
    sideChannel
) {
    var obj = object;

    if (sideChannel.has(object)) {
        throw new RangeError('Cyclic object value');
    }

    if (typeof filter === 'function') {
        obj = filter(prefix, obj);
    } else if (obj instanceof Date) {
        obj = serializeDate(obj);
    } else if (generateArrayPrefix === 'comma' && isArray(obj)) {
        obj = utils.maybeMap(obj, function (value) {
            if (value instanceof Date) {
                return serializeDate(value);
            }
            return value;
        });
    }

    if (obj === null) {
        if (strictNullHandling) {
            return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;
        }

        obj = '';
    }

    if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
        if (encoder) {
            var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);
            return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];
        }
        return [formatter(prefix) + '=' + formatter(String(obj))];
    }

    var values = [];

    if (typeof obj === 'undefined') {
        return values;
    }

    var objKeys;
    if (generateArrayPrefix === 'comma' && isArray(obj)) {
        // we need to join elements in
        objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : undefined }];
    } else if (isArray(filter)) {
        objKeys = filter;
    } else {
        var keys = Object.keys(obj);
        objKeys = sort ? keys.sort(sort) : keys;
    }

    for (var i = 0; i < objKeys.length; ++i) {
        var key = objKeys[i];
        var value = typeof key === 'object' && key.value !== undefined ? key.value : obj[key];

        if (skipNulls && value === null) {
            continue;
        }

        var keyPrefix = isArray(obj)
            ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(prefix, key) : prefix
            : prefix + (allowDots ? '.' + key : '[' + key + ']');

        sideChannel.set(object, true);
        var valueSideChannel = getSideChannel();
        pushToArray(values, stringify(
            value,
            keyPrefix,
            generateArrayPrefix,
            strictNullHandling,
            skipNulls,
            encoder,
            filter,
            sort,
            allowDots,
            serializeDate,
            format,
            formatter,
            encodeValuesOnly,
            charset,
            valueSideChannel
        ));
    }

    return values;
};

var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
    if (!opts) {
        return defaults;
    }

    if (opts.encoder !== null && opts.encoder !== undefined && typeof opts.encoder !== 'function') {
        throw new TypeError('Encoder has to be a function.');
    }

    var charset = opts.charset || defaults.charset;
    if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {
        throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');
    }

    var format = formats['default'];
    if (typeof opts.format !== 'undefined') {
        if (!has.call(formats.formatters, opts.format)) {
            throw new TypeError('Unknown format option provided.');
        }
        format = opts.format;
    }
    var formatter = formats.formatters[format];

    var filter = defaults.filter;
    if (typeof opts.filter === 'function' || isArray(opts.filter)) {
        filter = opts.filter;
    }

    return {
        addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,
        allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,
        charset: charset,
        charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
        delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,
        encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,
        encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
        encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
        filter: filter,
        format: format,
        formatter: formatter,
        serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,
        skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,
        sort: typeof opts.sort === 'function' ? opts.sort : null,
        strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
    };
};

module.exports = function (object, opts) {
    var obj = object;
    var options = normalizeStringifyOptions(opts);

    var objKeys;
    var filter;

    if (typeof options.filter === 'function') {
        filter = options.filter;
        obj = filter('', obj);
    } else if (isArray(options.filter)) {
        filter = options.filter;
        objKeys = filter;
    }

    var keys = [];

    if (typeof obj !== 'object' || obj === null) {
        return '';
    }

    var arrayFormat;
    if (opts && opts.arrayFormat in arrayPrefixGenerators) {
        arrayFormat = opts.arrayFormat;
    } else if (opts && 'indices' in opts) {
        arrayFormat = opts.indices ? 'indices' : 'repeat';
    } else {
        arrayFormat = 'indices';
    }

    var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];

    if (!objKeys) {
        objKeys = Object.keys(obj);
    }

    if (options.sort) {
        objKeys.sort(options.sort);
    }

    var sideChannel = getSideChannel();
    for (var i = 0; i < objKeys.length; ++i) {
        var key = objKeys[i];

        if (options.skipNulls && obj[key] === null) {
            continue;
        }
        pushToArray(keys, stringify(
            obj[key],
            key,
            generateArrayPrefix,
            options.strictNullHandling,
            options.skipNulls,
            options.encode ? options.encoder : null,
            options.filter,
            options.sort,
            options.allowDots,
            options.serializeDate,
            options.format,
            options.formatter,
            options.encodeValuesOnly,
            options.charset,
            sideChannel
        ));
    }

    var joined = keys.join(options.delimiter);
    var prefix = options.addQueryPrefix === true ? '?' : '';

    if (options.charsetSentinel) {
        if (options.charset === 'iso-8859-1') {
            // encodeURIComponent('&#10003;'), the "numeric entity" representation of a checkmark
            prefix += 'utf8=%26%2310003%3B&';
        } else {
            // encodeURIComponent('✓')
            prefix += 'utf8=%E2%9C%93&';
        }
    }

    return joined.length > 0 ? prefix + joined : '';
};


/***/ }),

/***/ 72360:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var formats = __webpack_require__(74907);

var has = Object.prototype.hasOwnProperty;
var isArray = Array.isArray;

var hexTable = (function () {
    var array = [];
    for (var i = 0; i < 256; ++i) {
        array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
    }

    return array;
}());

var compactQueue = function compactQueue(queue) {
    while (queue.length > 1) {
        var item = queue.pop();
        var obj = item.obj[item.prop];

        if (isArray(obj)) {
            var compacted = [];

            for (var j = 0; j < obj.length; ++j) {
                if (typeof obj[j] !== 'undefined') {
                    compacted.push(obj[j]);
                }
            }

            item.obj[item.prop] = compacted;
        }
    }
};

var arrayToObject = function arrayToObject(source, options) {
    var obj = options && options.plainObjects ? Object.create(null) : {};
    for (var i = 0; i < source.length; ++i) {
        if (typeof source[i] !== 'undefined') {
            obj[i] = source[i];
        }
    }

    return obj;
};

var merge = function merge(target, source, options) {
    /* eslint no-param-reassign: 0 */
    if (!source) {
        return target;
    }

    if (typeof source !== 'object') {
        if (isArray(target)) {
            target.push(source);
        } else if (target && typeof target === 'object') {
            if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {
                target[source] = true;
            }
        } else {
            return [target, source];
        }

        return target;
    }

    if (!target || typeof target !== 'object') {
        return [target].concat(source);
    }

    var mergeTarget = target;
    if (isArray(target) && !isArray(source)) {
        mergeTarget = arrayToObject(target, options);
    }

    if (isArray(target) && isArray(source)) {
        source.forEach(function (item, i) {
            if (has.call(target, i)) {
                var targetItem = target[i];
                if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
                    target[i] = merge(targetItem, item, options);
                } else {
                    target.push(item);
                }
            } else {
                target[i] = item;
            }
        });
        return target;
    }

    return Object.keys(source).reduce(function (acc, key) {
        var value = source[key];

        if (has.call(acc, key)) {
            acc[key] = merge(acc[key], value, options);
        } else {
            acc[key] = value;
        }
        return acc;
    }, mergeTarget);
};

var assign = function assignSingleSource(target, source) {
    return Object.keys(source).reduce(function (acc, key) {
        acc[key] = source[key];
        return acc;
    }, target);
};

var decode = function (str, decoder, charset) {
    var strWithoutPlus = str.replace(/\+/g, ' ');
    if (charset === 'iso-8859-1') {
        // unescape never throws, no try...catch needed:
        return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
    }
    // utf-8
    try {
        return decodeURIComponent(strWithoutPlus);
    } catch (e) {
        return strWithoutPlus;
    }
};

var encode = function encode(str, defaultEncoder, charset, kind, format) {
    // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
    // It has been adapted here for stricter adherence to RFC 3986
    if (str.length === 0) {
        return str;
    }

    var string = str;
    if (typeof str === 'symbol') {
        string = Symbol.prototype.toString.call(str);
    } else if (typeof str !== 'string') {
        string = String(str);
    }

    if (charset === 'iso-8859-1') {
        return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {
            return '%26%23' + parseInt($0.slice(2), 16) + '%3B';
        });
    }

    var out = '';
    for (var i = 0; i < string.length; ++i) {
        var c = string.charCodeAt(i);

        if (
            c === 0x2D // -
            || c === 0x2E // .
            || c === 0x5F // _
            || c === 0x7E // ~
            || (c >= 0x30 && c <= 0x39) // 0-9
            || (c >= 0x41 && c <= 0x5A) // a-z
            || (c >= 0x61 && c <= 0x7A) // A-Z
            || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
        ) {
            out += string.charAt(i);
            continue;
        }

        if (c < 0x80) {
            out = out + hexTable[c];
            continue;
        }

        if (c < 0x800) {
            out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);
            continue;
        }

        if (c < 0xD800 || c >= 0xE000) {
            out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
            continue;
        }

        i += 1;
        c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
        out += hexTable[0xF0 | (c >> 18)]
            + hexTable[0x80 | ((c >> 12) & 0x3F)]
            + hexTable[0x80 | ((c >> 6) & 0x3F)]
            + hexTable[0x80 | (c & 0x3F)];
    }

    return out;
};

var compact = function compact(value) {
    var queue = [{ obj: { o: value }, prop: 'o' }];
    var refs = [];

    for (var i = 0; i < queue.length; ++i) {
        var item = queue[i];
        var obj = item.obj[item.prop];

        var keys = Object.keys(obj);
        for (var j = 0; j < keys.length; ++j) {
            var key = keys[j];
            var val = obj[key];
            if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
                queue.push({ obj: obj, prop: key });
                refs.push(val);
            }
        }
    }

    compactQueue(queue);

    return value;
};

var isRegExp = function isRegExp(obj) {
    return Object.prototype.toString.call(obj) === '[object RegExp]';
};

var isBuffer = function isBuffer(obj) {
    if (!obj || typeof obj !== 'object') {
        return false;
    }

    return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
};

var combine = function combine(a, b) {
    return [].concat(a, b);
};

var maybeMap = function maybeMap(val, fn) {
    if (isArray(val)) {
        var mapped = [];
        for (var i = 0; i < val.length; i += 1) {
            mapped.push(fn(val[i]));
        }
        return mapped;
    }
    return fn(val);
};

module.exports = {
    arrayToObject: arrayToObject,
    assign: assign,
    combine: combine,
    compact: compact,
    decode: decode,
    encode: encode,
    isBuffer: isBuffer,
    isRegExp: isRegExp,
    maybeMap: maybeMap,
    merge: merge
};


/***/ }),

/***/ 48699:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// Copyright 2010-2012 Mikeal Rogers
//
//    Licensed under the Apache License, Version 2.0 (the "License");
//    you may not use this file except in compliance with the License.
//    You may obtain a copy of the License at
//
//        http://www.apache.org/licenses/LICENSE-2.0
//
//    Unless required by applicable law or agreed to in writing, software
//    distributed under the License is distributed on an "AS IS" BASIS,
//    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//    See the License for the specific language governing permissions and
//    limitations under the License.



var extend = __webpack_require__(38171)
var cookies = __webpack_require__(50976)
var helpers = __webpack_require__(74845)

var paramsHaveRequestBody = helpers.paramsHaveRequestBody

// organize params for patch, post, put, head, del
function initParams (uri, options, callback) {
  if (typeof options === 'function') {
    callback = options
  }

  var params = {}
  if (options !== null && typeof options === 'object') {
    extend(params, options, {uri: uri})
  } else if (typeof uri === 'string') {
    extend(params, {uri: uri})
  } else {
    extend(params, uri)
  }

  params.callback = callback || params.callback
  return params
}

function request (uri, options, callback) {
  if (typeof uri === 'undefined') {
    throw new Error('undefined is not a valid uri or options object.')
  }

  var params = initParams(uri, options, callback)

  if (params.method === 'HEAD' && paramsHaveRequestBody(params)) {
    throw new Error('HTTP HEAD requests MUST NOT include a request body.')
  }

  return new request.Request(params)
}

function verbFunc (verb) {
  var method = verb.toUpperCase()
  return function (uri, options, callback) {
    var params = initParams(uri, options, callback)
    params.method = method
    return request(params, params.callback)
  }
}

// define like this to please codeintel/intellisense IDEs
request.get = verbFunc('get')
request.head = verbFunc('head')
request.options = verbFunc('options')
request.post = verbFunc('post')
request.put = verbFunc('put')
request.patch = verbFunc('patch')
request.del = verbFunc('delete')
request['delete'] = verbFunc('delete')

request.jar = function (store) {
  return cookies.jar(store)
}

request.cookie = function (str) {
  return cookies.parse(str)
}

function wrapRequestMethod (method, options, requester, verb) {
  return function (uri, opts, callback) {
    var params = initParams(uri, opts, callback)

    var target = {}
    extend(true, target, options, params)

    target.pool = params.pool || options.pool

    if (verb) {
      target.method = verb.toUpperCase()
    }

    if (typeof requester === 'function') {
      method = requester
    }

    return method(target, target.callback)
  }
}

request.defaults = function (options, requester) {
  var self = this

  options = options || {}

  if (typeof options === 'function') {
    requester = options
    options = {}
  }

  var defaults = wrapRequestMethod(self, options, requester)

  var verbs = ['get', 'head', 'post', 'put', 'patch', 'del', 'delete']
  verbs.forEach(function (verb) {
    defaults[verb] = wrapRequestMethod(self[verb], options, requester, verb)
  })

  defaults.cookie = wrapRequestMethod(self.cookie, options, requester)
  defaults.jar = self.jar
  defaults.defaults = self.defaults
  return defaults
}

request.forever = function (agentOptions, optionsArg) {
  var options = {}
  if (optionsArg) {
    extend(options, optionsArg)
  }
  if (agentOptions) {
    options.agentOptions = agentOptions
  }

  options.forever = true
  return request.defaults(options)
}

// Exports

module.exports = request
request.Request = __webpack_require__(70304)
request.initParams = initParams

// Backwards compatibility for request.debug
Object.defineProperty(request, 'debug', {
  enumerable: true,
  get: function () {
    return request.Request.debug
  },
  set: function (debug) {
    request.Request.debug = debug
  }
})


/***/ }),

/***/ 76996:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var caseless = __webpack_require__(35684)
var uuid = __webpack_require__(71435)
var helpers = __webpack_require__(74845)

var md5 = helpers.md5
var toBase64 = helpers.toBase64

function Auth (request) {
  // define all public properties here
  this.request = request
  this.hasAuth = false
  this.sentAuth = false
  this.bearerToken = null
  this.user = null
  this.pass = null
}

Auth.prototype.basic = function (user, pass, sendImmediately) {
  var self = this
  if (typeof user !== 'string' || (pass !== undefined && typeof pass !== 'string')) {
    self.request.emit('error', new Error('auth() received invalid user or password'))
  }
  self.user = user
  self.pass = pass
  self.hasAuth = true
  var header = user + ':' + (pass || '')
  if (sendImmediately || typeof sendImmediately === 'undefined') {
    var authHeader = 'Basic ' + toBase64(header)
    self.sentAuth = true
    return authHeader
  }
}

Auth.prototype.bearer = function (bearer, sendImmediately) {
  var self = this
  self.bearerToken = bearer
  self.hasAuth = true
  if (sendImmediately || typeof sendImmediately === 'undefined') {
    if (typeof bearer === 'function') {
      bearer = bearer()
    }
    var authHeader = 'Bearer ' + (bearer || '')
    self.sentAuth = true
    return authHeader
  }
}

Auth.prototype.digest = function (method, path, authHeader) {
  // TODO: More complete implementation of RFC 2617.
  //   - handle challenge.domain
  //   - support qop="auth-int" only
  //   - handle Authentication-Info (not necessarily?)
  //   - check challenge.stale (not necessarily?)
  //   - increase nc (not necessarily?)
  // For reference:
  // http://tools.ietf.org/html/rfc2617#section-3
  // https://github.com/bagder/curl/blob/master/lib/http_digest.c

  var self = this

  var challenge = {}
  var re = /([a-z0-9_-]+)=(?:"([^"]+)"|([a-z0-9_-]+))/gi
  while (true) {
    var match = re.exec(authHeader)
    if (!match) {
      break
    }
    challenge[match[1]] = match[2] || match[3]
  }

  /**
   * RFC 2617: handle both MD5 and MD5-sess algorithms.
   *
   * If the algorithm directive's value is "MD5" or unspecified, then HA1 is
   *   HA1=MD5(username:realm:password)
   * If the algorithm directive's value is "MD5-sess", then HA1 is
   *   HA1=MD5(MD5(username:realm:password):nonce:cnonce)
   */
  var ha1Compute = function (algorithm, user, realm, pass, nonce, cnonce) {
    var ha1 = md5(user + ':' + realm + ':' + pass)
    if (algorithm && algorithm.toLowerCase() === 'md5-sess') {
      return md5(ha1 + ':' + nonce + ':' + cnonce)
    } else {
      return ha1
    }
  }

  var qop = /(^|,)\s*auth\s*($|,)/.test(challenge.qop) && 'auth'
  var nc = qop && '00000001'
  var cnonce = qop && uuid().replace(/-/g, '')
  var ha1 = ha1Compute(challenge.algorithm, self.user, challenge.realm, self.pass, challenge.nonce, cnonce)
  var ha2 = md5(method + ':' + path)
  var digestResponse = qop
    ? md5(ha1 + ':' + challenge.nonce + ':' + nc + ':' + cnonce + ':' + qop + ':' + ha2)
    : md5(ha1 + ':' + challenge.nonce + ':' + ha2)
  var authValues = {
    username: self.user,
    realm: challenge.realm,
    nonce: challenge.nonce,
    uri: path,
    qop: qop,
    response: digestResponse,
    nc: nc,
    cnonce: cnonce,
    algorithm: challenge.algorithm,
    opaque: challenge.opaque
  }

  authHeader = []
  for (var k in authValues) {
    if (authValues[k]) {
      if (k === 'qop' || k === 'nc' || k === 'algorithm') {
        authHeader.push(k + '=' + authValues[k])
      } else {
        authHeader.push(k + '="' + authValues[k] + '"')
      }
    }
  }
  authHeader = 'Digest ' + authHeader.join(', ')
  self.sentAuth = true
  return authHeader
}

Auth.prototype.onRequest = function (user, pass, sendImmediately, bearer) {
  var self = this
  var request = self.request

  var authHeader
  if (bearer === undefined && user === undefined) {
    self.request.emit('error', new Error('no auth mechanism defined'))
  } else if (bearer !== undefined) {
    authHeader = self.bearer(bearer, sendImmediately)
  } else {
    authHeader = self.basic(user, pass, sendImmediately)
  }
  if (authHeader) {
    request.setHeader('authorization', authHeader)
  }
}

Auth.prototype.onResponse = function (response) {
  var self = this
  var request = self.request

  if (!self.hasAuth || self.sentAuth) { return null }

  var c = caseless(response.headers)

  var authHeader = c.get('www-authenticate')
  var authVerb = authHeader && authHeader.split(' ')[0].toLowerCase()
  request.debug('reauth', authVerb)

  switch (authVerb) {
    case 'basic':
      return self.basic(self.user, self.pass, true)

    case 'bearer':
      return self.bearer(self.bearerToken, true)

    case 'digest':
      return self.digest(request.method, request.path, authHeader)
  }
}

exports.g = Auth


/***/ }),

/***/ 50976:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var tough = __webpack_require__(47372)

var Cookie = tough.Cookie
var CookieJar = tough.CookieJar

exports.parse = function (str) {
  if (str && str.uri) {
    str = str.uri
  }
  if (typeof str !== 'string') {
    throw new Error('The cookie function only accepts STRING as param')
  }
  return Cookie.parse(str, {loose: true})
}

// Adapt the sometimes-Async api of tough.CookieJar to our requirements
function RequestJar (store) {
  var self = this
  self._jar = new CookieJar(store, {looseMode: true})
}
RequestJar.prototype.setCookie = function (cookieOrStr, uri, options) {
  var self = this
  return self._jar.setCookieSync(cookieOrStr, uri, options || {})
}
RequestJar.prototype.getCookieString = function (uri) {
  var self = this
  return self._jar.getCookieStringSync(uri)
}
RequestJar.prototype.getCookies = function (uri) {
  var self = this
  return self._jar.getCookiesSync(uri)
}

exports.jar = function (store) {
  return new RequestJar(store)
}


/***/ }),

/***/ 75654:
/***/ ((module) => {

"use strict";


function formatHostname (hostname) {
  // canonicalize the hostname, so that 'oogle.com' won't match 'google.com'
  return hostname.replace(/^\.*/, '.').toLowerCase()
}

function parseNoProxyZone (zone) {
  zone = zone.trim().toLowerCase()

  var zoneParts = zone.split(':', 2)
  var zoneHost = formatHostname(zoneParts[0])
  var zonePort = zoneParts[1]
  var hasPort = zone.indexOf(':') > -1

  return {hostname: zoneHost, port: zonePort, hasPort: hasPort}
}

function uriInNoProxy (uri, noProxy) {
  var port = uri.port || (uri.protocol === 'https:' ? '443' : '80')
  var hostname = formatHostname(uri.hostname)
  var noProxyList = noProxy.split(',')

  // iterate through the noProxyList until it finds a match.
  return noProxyList.map(parseNoProxyZone).some(function (noProxyZone) {
    var isMatchedAt = hostname.indexOf(noProxyZone.hostname)
    var hostnameMatched = (
      isMatchedAt > -1 &&
        (isMatchedAt === hostname.length - noProxyZone.hostname.length)
    )

    if (noProxyZone.hasPort) {
      return (port === noProxyZone.port) && hostnameMatched
    }

    return hostnameMatched
  })
}

function getProxyFromURI (uri) {
  // Decide the proper request proxy to use based on the request URI object and the
  // environmental variables (NO_PROXY, HTTP_PROXY, etc.)
  // respect NO_PROXY environment variables (see: https://lynx.invisible-island.net/lynx2.8.7/breakout/lynx_help/keystrokes/environments.html)

  var noProxy = process.env.NO_PROXY || process.env.no_proxy || ''

  // if the noProxy is a wildcard then return null

  if (noProxy === '*') {
    return null
  }

  // if the noProxy is not empty and the uri is found return null

  if (noProxy !== '' && uriInNoProxy(uri, noProxy)) {
    return null
  }

  // Check for HTTP or HTTPS Proxy in environment Else default to null

  if (uri.protocol === 'http:') {
    return process.env.HTTP_PROXY ||
      process.env.http_proxy || null
  }

  if (uri.protocol === 'https:') {
    return process.env.HTTPS_PROXY ||
      process.env.https_proxy ||
      process.env.HTTP_PROXY ||
      process.env.http_proxy || null
  }

  // if none of that works, return null
  // (What uri protocol are you using then?)

  return null
}

module.exports = getProxyFromURI


/***/ }),

/***/ 3248:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var fs = __webpack_require__(35747)
var qs = __webpack_require__(71191)
var validate = __webpack_require__(75697)
var extend = __webpack_require__(38171)

function Har (request) {
  this.request = request
}

Har.prototype.reducer = function (obj, pair) {
  // new property ?
  if (obj[pair.name] === undefined) {
    obj[pair.name] = pair.value
    return obj
  }

  // existing? convert to array
  var arr = [
    obj[pair.name],
    pair.value
  ]

  obj[pair.name] = arr

  return obj
}

Har.prototype.prep = function (data) {
  // construct utility properties
  data.queryObj = {}
  data.headersObj = {}
  data.postData.jsonObj = false
  data.postData.paramsObj = false

  // construct query objects
  if (data.queryString && data.queryString.length) {
    data.queryObj = data.queryString.reduce(this.reducer, {})
  }

  // construct headers objects
  if (data.headers && data.headers.length) {
    // loweCase header keys
    data.headersObj = data.headers.reduceRight(function (headers, header) {
      headers[header.name] = header.value
      return headers
    }, {})
  }

  // construct Cookie header
  if (data.cookies && data.cookies.length) {
    var cookies = data.cookies.map(function (cookie) {
      return cookie.name + '=' + cookie.value
    })

    if (cookies.length) {
      data.headersObj.cookie = cookies.join('; ')
    }
  }

  // prep body
  function some (arr) {
    return arr.some(function (type) {
      return data.postData.mimeType.indexOf(type) === 0
    })
  }

  if (some([
    'multipart/mixed',
    'multipart/related',
    'multipart/form-data',
    'multipart/alternative'])) {
    // reset values
    data.postData.mimeType = 'multipart/form-data'
  } else if (some([
    'application/x-www-form-urlencoded'])) {
    if (!data.postData.params) {
      data.postData.text = ''
    } else {
      data.postData.paramsObj = data.postData.params.reduce(this.reducer, {})

      // always overwrite
      data.postData.text = qs.stringify(data.postData.paramsObj)
    }
  } else if (some([
    'text/json',
    'text/x-json',
    'application/json',
    'application/x-json'])) {
    data.postData.mimeType = 'application/json'

    if (data.postData.text) {
      try {
        data.postData.jsonObj = JSON.parse(data.postData.text)
      } catch (e) {
        this.request.debug(e)

        // force back to text/plain
        data.postData.mimeType = 'text/plain'
      }
    }
  }

  return data
}

Har.prototype.options = function (options) {
  // skip if no har property defined
  if (!options.har) {
    return options
  }

  var har = {}
  extend(har, options.har)

  // only process the first entry
  if (har.log && har.log.entries) {
    har = har.log.entries[0]
  }

  // add optional properties to make validation successful
  har.url = har.url || options.url || options.uri || options.baseUrl || '/'
  har.httpVersion = har.httpVersion || 'HTTP/1.1'
  har.queryString = har.queryString || []
  har.headers = har.headers || []
  har.cookies = har.cookies || []
  har.postData = har.postData || {}
  har.postData.mimeType = har.postData.mimeType || 'application/octet-stream'

  har.bodySize = 0
  har.headersSize = 0
  har.postData.size = 0

  if (!validate.request(har)) {
    return options
  }

  // clean up and get some utility properties
  var req = this.prep(har)

  // construct new options
  if (req.url) {
    options.url = req.url
  }

  if (req.method) {
    options.method = req.method
  }

  if (Object.keys(req.queryObj).length) {
    options.qs = req.queryObj
  }

  if (Object.keys(req.headersObj).length) {
    options.headers = req.headersObj
  }

  function test (type) {
    return req.postData.mimeType.indexOf(type) === 0
  }
  if (test('application/x-www-form-urlencoded')) {
    options.form = req.postData.paramsObj
  } else if (test('application/json')) {
    if (req.postData.jsonObj) {
      options.body = req.postData.jsonObj
      options.json = true
    }
  } else if (test('multipart/form-data')) {
    options.formData = {}

    req.postData.params.forEach(function (param) {
      var attachment = {}

      if (!param.fileName && !param.contentType) {
        options.formData[param.name] = param.value
        return
      }

      // attempt to read from disk!
      if (param.fileName && !param.value) {
        attachment.value = fs.createReadStream(param.fileName)
      } else if (param.value) {
        attachment.value = param.value
      }

      if (param.fileName) {
        attachment.options = {
          filename: param.fileName,
          contentType: param.contentType ? param.contentType : null
        }
      }

      options.formData[param.name] = attachment
    })
  } else {
    if (req.postData.text) {
      options.body = req.postData.text
    }
  }

  return options
}

exports.t = Har


/***/ }),

/***/ 34473:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var crypto = __webpack_require__(33373)

function randomString (size) {
  var bits = (size + 1) * 6
  var buffer = crypto.randomBytes(Math.ceil(bits / 8))
  var string = buffer.toString('base64').replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '')
  return string.slice(0, size)
}

function calculatePayloadHash (payload, algorithm, contentType) {
  var hash = crypto.createHash(algorithm)
  hash.update('hawk.1.payload\n')
  hash.update((contentType ? contentType.split(';')[0].trim().toLowerCase() : '') + '\n')
  hash.update(payload || '')
  hash.update('\n')
  return hash.digest('base64')
}

exports.calculateMac = function (credentials, opts) {
  var normalized = 'hawk.1.header\n' +
    opts.ts + '\n' +
    opts.nonce + '\n' +
    (opts.method || '').toUpperCase() + '\n' +
    opts.resource + '\n' +
    opts.host.toLowerCase() + '\n' +
    opts.port + '\n' +
    (opts.hash || '') + '\n'

  if (opts.ext) {
    normalized = normalized + opts.ext.replace('\\', '\\\\').replace('\n', '\\n')
  }

  normalized = normalized + '\n'

  if (opts.app) {
    normalized = normalized + opts.app + '\n' + (opts.dlg || '') + '\n'
  }

  var hmac = crypto.createHmac(credentials.algorithm, credentials.key).update(normalized)
  var digest = hmac.digest('base64')
  return digest
}

exports.header = function (uri, method, opts) {
  var timestamp = opts.timestamp || Math.floor((Date.now() + (opts.localtimeOffsetMsec || 0)) / 1000)
  var credentials = opts.credentials
  if (!credentials || !credentials.id || !credentials.key || !credentials.algorithm) {
    return ''
  }

  if (['sha1', 'sha256'].indexOf(credentials.algorithm) === -1) {
    return ''
  }

  var artifacts = {
    ts: timestamp,
    nonce: opts.nonce || randomString(6),
    method: method,
    resource: uri.pathname + (uri.search || ''),
    host: uri.hostname,
    port: uri.port || (uri.protocol === 'http:' ? 80 : 443),
    hash: opts.hash,
    ext: opts.ext,
    app: opts.app,
    dlg: opts.dlg
  }

  if (!artifacts.hash && (opts.payload || opts.payload === '')) {
    artifacts.hash = calculatePayloadHash(opts.payload, credentials.algorithm, opts.contentType)
  }

  var mac = exports.calculateMac(credentials, artifacts)

  var hasExt = artifacts.ext !== null && artifacts.ext !== undefined && artifacts.ext !== ''
  var header = 'Hawk id="' + credentials.id +
    '", ts="' + artifacts.ts +
    '", nonce="' + artifacts.nonce +
    (artifacts.hash ? '", hash="' + artifacts.hash : '') +
    (hasExt ? '", ext="' + artifacts.ext.replace(/\\/g, '\\\\').replace(/"/g, '\\"') : '') +
    '", mac="' + mac + '"'

  if (artifacts.app) {
    header = header + ', app="' + artifacts.app + (artifacts.dlg ? '", dlg="' + artifacts.dlg : '') + '"'
  }

  return header
}


/***/ }),

/***/ 74845:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var jsonSafeStringify = __webpack_require__(57073)
var crypto = __webpack_require__(33373)
var Buffer = __webpack_require__(21867).Buffer

var defer = typeof setImmediate === 'undefined'
  ? process.nextTick
  : setImmediate

function paramsHaveRequestBody (params) {
  return (
    params.body ||
    params.requestBodyStream ||
    (params.json && typeof params.json !== 'boolean') ||
    params.multipart
  )
}

function safeStringify (obj, replacer) {
  var ret
  try {
    ret = JSON.stringify(obj, replacer)
  } catch (e) {
    ret = jsonSafeStringify(obj, replacer)
  }
  return ret
}

function md5 (str) {
  return crypto.createHash('md5').update(str).digest('hex')
}

function isReadStream (rs) {
  return rs.readable && rs.path && rs.mode
}

function toBase64 (str) {
  return Buffer.from(str || '', 'utf8').toString('base64')
}

function copy (obj) {
  var o = {}
  Object.keys(obj).forEach(function (i) {
    o[i] = obj[i]
  })
  return o
}

function version () {
  var numbers = process.version.replace('v', '').split('.')
  return {
    major: parseInt(numbers[0], 10),
    minor: parseInt(numbers[1], 10),
    patch: parseInt(numbers[2], 10)
  }
}

exports.paramsHaveRequestBody = paramsHaveRequestBody
exports.safeStringify = safeStringify
exports.md5 = md5
exports.isReadStream = isReadStream
exports.toBase64 = toBase64
exports.copy = copy
exports.version = version
exports.defer = defer


/***/ }),

/***/ 87810:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var uuid = __webpack_require__(71435)
var CombinedStream = __webpack_require__(85443)
var isstream = __webpack_require__(83362)
var Buffer = __webpack_require__(21867).Buffer

function Multipart (request) {
  this.request = request
  this.boundary = uuid()
  this.chunked = false
  this.body = null
}

Multipart.prototype.isChunked = function (options) {
  var self = this
  var chunked = false
  var parts = options.data || options

  if (!parts.forEach) {
    self.request.emit('error', new Error('Argument error, options.multipart.'))
  }

  if (options.chunked !== undefined) {
    chunked = options.chunked
  }

  if (self.request.getHeader('transfer-encoding') === 'chunked') {
    chunked = true
  }

  if (!chunked) {
    parts.forEach(function (part) {
      if (typeof part.body === 'undefined') {
        self.request.emit('error', new Error('Body attribute missing in multipart.'))
      }
      if (isstream(part.body)) {
        chunked = true
      }
    })
  }

  return chunked
}

Multipart.prototype.setHeaders = function (chunked) {
  var self = this

  if (chunked && !self.request.hasHeader('transfer-encoding')) {
    self.request.setHeader('transfer-encoding', 'chunked')
  }

  var header = self.request.getHeader('content-type')

  if (!header || header.indexOf('multipart') === -1) {
    self.request.setHeader('content-type', 'multipart/related; boundary=' + self.boundary)
  } else {
    if (header.indexOf('boundary') !== -1) {
      self.boundary = header.replace(/.*boundary=([^\s;]+).*/, '$1')
    } else {
      self.request.setHeader('content-type', header + '; boundary=' + self.boundary)
    }
  }
}

Multipart.prototype.build = function (parts, chunked) {
  var self = this
  var body = chunked ? new CombinedStream() : []

  function add (part) {
    if (typeof part === 'number') {
      part = part.toString()
    }
    return chunked ? body.append(part) : body.push(Buffer.from(part))
  }

  if (self.request.preambleCRLF) {
    add('\r\n')
  }

  parts.forEach(function (part) {
    var preamble = '--' + self.boundary + '\r\n'
    Object.keys(part).forEach(function (key) {
      if (key === 'body') { return }
      preamble += key + ': ' + part[key] + '\r\n'
    })
    preamble += '\r\n'
    add(preamble)
    add(part.body)
    add('\r\n')
  })
  add('--' + self.boundary + '--')

  if (self.request.postambleCRLF) {
    add('\r\n')
  }

  return body
}

Multipart.prototype.onRequest = function (options) {
  var self = this

  var chunked = self.isChunked(options)
  var parts = options.data || options

  self.setHeaders(chunked)
  self.chunked = chunked
  self.body = self.build(parts, chunked)
}

exports.$ = Multipart


/***/ }),

/***/ 41174:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var url = __webpack_require__(78835)
var qs = __webpack_require__(47457)
var caseless = __webpack_require__(35684)
var uuid = __webpack_require__(71435)
var oauth = __webpack_require__(43248)
var crypto = __webpack_require__(33373)
var Buffer = __webpack_require__(21867).Buffer

function OAuth (request) {
  this.request = request
  this.params = null
}

OAuth.prototype.buildParams = function (_oauth, uri, method, query, form, qsLib) {
  var oa = {}
  for (var i in _oauth) {
    oa['oauth_' + i] = _oauth[i]
  }
  if (!oa.oauth_version) {
    oa.oauth_version = '1.0'
  }
  if (!oa.oauth_timestamp) {
    oa.oauth_timestamp = Math.floor(Date.now() / 1000).toString()
  }
  if (!oa.oauth_nonce) {
    oa.oauth_nonce = uuid().replace(/-/g, '')
  }
  if (!oa.oauth_signature_method) {
    oa.oauth_signature_method = 'HMAC-SHA1'
  }

  var consumer_secret_or_private_key = oa.oauth_consumer_secret || oa.oauth_private_key // eslint-disable-line camelcase
  delete oa.oauth_consumer_secret
  delete oa.oauth_private_key

  var token_secret = oa.oauth_token_secret // eslint-disable-line camelcase
  delete oa.oauth_token_secret

  var realm = oa.oauth_realm
  delete oa.oauth_realm
  delete oa.oauth_transport_method

  var baseurl = uri.protocol + '//' + uri.host + uri.pathname
  var params = qsLib.parse([].concat(query, form, qsLib.stringify(oa)).join('&'))

  oa.oauth_signature = oauth.sign(
    oa.oauth_signature_method,
    method,
    baseurl,
    params,
    consumer_secret_or_private_key, // eslint-disable-line camelcase
    token_secret // eslint-disable-line camelcase
  )

  if (realm) {
    oa.realm = realm
  }

  return oa
}

OAuth.prototype.buildBodyHash = function (_oauth, body) {
  if (['HMAC-SHA1', 'RSA-SHA1'].indexOf(_oauth.signature_method || 'HMAC-SHA1') < 0) {
    this.request.emit('error', new Error('oauth: ' + _oauth.signature_method +
      ' signature_method not supported with body_hash signing.'))
  }

  var shasum = crypto.createHash('sha1')
  shasum.update(body || '')
  var sha1 = shasum.digest('hex')

  return Buffer.from(sha1, 'hex').toString('base64')
}

OAuth.prototype.concatParams = function (oa, sep, wrap) {
  wrap = wrap || ''

  var params = Object.keys(oa).filter(function (i) {
    return i !== 'realm' && i !== 'oauth_signature'
  }).sort()

  if (oa.realm) {
    params.splice(0, 0, 'realm')
  }
  params.push('oauth_signature')

  return params.map(function (i) {
    return i + '=' + wrap + oauth.rfc3986(oa[i]) + wrap
  }).join(sep)
}

OAuth.prototype.onRequest = function (_oauth) {
  var self = this
  self.params = _oauth

  var uri = self.request.uri || {}
  var method = self.request.method || ''
  var headers = caseless(self.request.headers)
  var body = self.request.body || ''
  var qsLib = self.request.qsLib || qs

  var form
  var query
  var contentType = headers.get('content-type') || ''
  var formContentType = 'application/x-www-form-urlencoded'
  var transport = _oauth.transport_method || 'header'

  if (contentType.slice(0, formContentType.length) === formContentType) {
    contentType = formContentType
    form = body
  }
  if (uri.query) {
    query = uri.query
  }
  if (transport === 'body' && (method !== 'POST' || contentType !== formContentType)) {
    self.request.emit('error', new Error('oauth: transport_method of body requires POST ' +
      'and content-type ' + formContentType))
  }

  if (!form && typeof _oauth.body_hash === 'boolean') {
    _oauth.body_hash = self.buildBodyHash(_oauth, self.request.body.toString())
  }

  var oa = self.buildParams(_oauth, uri, method, query, form, qsLib)

  switch (transport) {
    case 'header':
      self.request.setHeader('Authorization', 'OAuth ' + self.concatParams(oa, ',', '"'))
      break

    case 'query':
      var href = self.request.uri.href += (query ? '&' : '?') + self.concatParams(oa, '&')
      self.request.uri = url.parse(href)
      self.request.path = self.request.uri.path
      break

    case 'body':
      self.request.body = (form ? form + '&' : '') + self.concatParams(oa, '&')
      break

    default:
      self.request.emit('error', new Error('oauth: transport_method invalid'))
  }
}

exports.f = OAuth


/***/ }),

/***/ 66476:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var qs = __webpack_require__(47457)
var querystring = __webpack_require__(71191)

function Querystring (request) {
  this.request = request
  this.lib = null
  this.useQuerystring = null
  this.parseOptions = null
  this.stringifyOptions = null
}

Querystring.prototype.init = function (options) {
  if (this.lib) { return }

  this.useQuerystring = options.useQuerystring
  this.lib = (this.useQuerystring ? querystring : qs)

  this.parseOptions = options.qsParseOptions || {}
  this.stringifyOptions = options.qsStringifyOptions || {}
}

Querystring.prototype.stringify = function (obj) {
  return (this.useQuerystring)
    ? this.rfc3986(this.lib.stringify(obj,
      this.stringifyOptions.sep || null,
      this.stringifyOptions.eq || null,
      this.stringifyOptions))
    : this.lib.stringify(obj, this.stringifyOptions)
}

Querystring.prototype.parse = function (str) {
  return (this.useQuerystring)
    ? this.lib.parse(str,
      this.parseOptions.sep || null,
      this.parseOptions.eq || null,
      this.parseOptions)
    : this.lib.parse(str, this.parseOptions)
}

Querystring.prototype.rfc3986 = function (str) {
  return str.replace(/[!'()*]/g, function (c) {
    return '%' + c.charCodeAt(0).toString(16).toUpperCase()
  })
}

Querystring.prototype.unescape = querystring.unescape

exports.h = Querystring


/***/ }),

/***/ 3048:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var url = __webpack_require__(78835)
var isUrl = /^https?:/

function Redirect (request) {
  this.request = request
  this.followRedirect = true
  this.followRedirects = true
  this.followAllRedirects = false
  this.followOriginalHttpMethod = false
  this.allowRedirect = function () { return true }
  this.maxRedirects = 10
  this.redirects = []
  this.redirectsFollowed = 0
  this.removeRefererHeader = false
}

Redirect.prototype.onRequest = function (options) {
  var self = this

  if (options.maxRedirects !== undefined) {
    self.maxRedirects = options.maxRedirects
  }
  if (typeof options.followRedirect === 'function') {
    self.allowRedirect = options.followRedirect
  }
  if (options.followRedirect !== undefined) {
    self.followRedirects = !!options.followRedirect
  }
  if (options.followAllRedirects !== undefined) {
    self.followAllRedirects = options.followAllRedirects
  }
  if (self.followRedirects || self.followAllRedirects) {
    self.redirects = self.redirects || []
  }
  if (options.removeRefererHeader !== undefined) {
    self.removeRefererHeader = options.removeRefererHeader
  }
  if (options.followOriginalHttpMethod !== undefined) {
    self.followOriginalHttpMethod = options.followOriginalHttpMethod
  }
}

Redirect.prototype.redirectTo = function (response) {
  var self = this
  var request = self.request

  var redirectTo = null
  if (response.statusCode >= 300 && response.statusCode < 400 && response.caseless.has('location')) {
    var location = response.caseless.get('location')
    request.debug('redirect', location)

    if (self.followAllRedirects) {
      redirectTo = location
    } else if (self.followRedirects) {
      switch (request.method) {
        case 'PATCH':
        case 'PUT':
        case 'POST':
        case 'DELETE':
          // Do not follow redirects
          break
        default:
          redirectTo = location
          break
      }
    }
  } else if (response.statusCode === 401) {
    var authHeader = request._auth.onResponse(response)
    if (authHeader) {
      request.setHeader('authorization', authHeader)
      redirectTo = request.uri
    }
  }
  return redirectTo
}

Redirect.prototype.onResponse = function (response) {
  var self = this
  var request = self.request

  var redirectTo = self.redirectTo(response)
  if (!redirectTo || !self.allowRedirect.call(request, response)) {
    return false
  }

  request.debug('redirect to', redirectTo)

  // ignore any potential response body.  it cannot possibly be useful
  // to us at this point.
  // response.resume should be defined, but check anyway before calling. Workaround for browserify.
  if (response.resume) {
    response.resume()
  }

  if (self.redirectsFollowed >= self.maxRedirects) {
    request.emit('error', new Error('Exceeded maxRedirects. Probably stuck in a redirect loop ' + request.uri.href))
    return false
  }
  self.redirectsFollowed += 1

  if (!isUrl.test(redirectTo)) {
    redirectTo = url.resolve(request.uri.href, redirectTo)
  }

  var uriPrev = request.uri
  request.uri = url.parse(redirectTo)

  // handle the case where we change protocol from https to http or vice versa
  if (request.uri.protocol !== uriPrev.protocol) {
    delete request.agent
  }

  self.redirects.push({ statusCode: response.statusCode, redirectUri: redirectTo })

  if (self.followAllRedirects && request.method !== 'HEAD' &&
    response.statusCode !== 401 && response.statusCode !== 307) {
    request.method = self.followOriginalHttpMethod ? request.method : 'GET'
  }
  // request.method = 'GET' // Force all redirects to use GET || commented out fixes #215
  delete request.src
  delete request.req
  delete request._started
  if (response.statusCode !== 401 && response.statusCode !== 307) {
    // Remove parameters from the previous response, unless this is the second request
    // for a server that requires digest authentication.
    delete request.body
    delete request._form
    if (request.headers) {
      request.removeHeader('host')
      request.removeHeader('content-type')
      request.removeHeader('content-length')
      if (request.uri.hostname !== request.originalHost.split(':')[0]) {
        // Remove authorization if changing hostnames (but not if just
        // changing ports or protocols).  This matches the behavior of curl:
        // https://github.com/bagder/curl/blob/6beb0eee/lib/http.c#L710
        request.removeHeader('authorization')
      }
    }
  }

  if (!self.removeRefererHeader) {
    request.setHeader('referer', uriPrev.href)
  }

  request.emit('redirect')

  request.init()

  return true
}

exports.l = Redirect


/***/ }),

/***/ 17619:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var url = __webpack_require__(78835)
var tunnel = __webpack_require__(11137)

var defaultProxyHeaderWhiteList = [
  'accept',
  'accept-charset',
  'accept-encoding',
  'accept-language',
  'accept-ranges',
  'cache-control',
  'content-encoding',
  'content-language',
  'content-location',
  'content-md5',
  'content-range',
  'content-type',
  'connection',
  'date',
  'expect',
  'max-forwards',
  'pragma',
  'referer',
  'te',
  'user-agent',
  'via'
]

var defaultProxyHeaderExclusiveList = [
  'proxy-authorization'
]

function constructProxyHost (uriObject) {
  var port = uriObject.port
  var protocol = uriObject.protocol
  var proxyHost = uriObject.hostname + ':'

  if (port) {
    proxyHost += port
  } else if (protocol === 'https:') {
    proxyHost += '443'
  } else {
    proxyHost += '80'
  }

  return proxyHost
}

function constructProxyHeaderWhiteList (headers, proxyHeaderWhiteList) {
  var whiteList = proxyHeaderWhiteList
    .reduce(function (set, header) {
      set[header.toLowerCase()] = true
      return set
    }, {})

  return Object.keys(headers)
    .filter(function (header) {
      return whiteList[header.toLowerCase()]
    })
    .reduce(function (set, header) {
      set[header] = headers[header]
      return set
    }, {})
}

function constructTunnelOptions (request, proxyHeaders) {
  var proxy = request.proxy

  var tunnelOptions = {
    proxy: {
      host: proxy.hostname,
      port: +proxy.port,
      proxyAuth: proxy.auth,
      headers: proxyHeaders
    },
    headers: request.headers,
    ca: request.ca,
    cert: request.cert,
    key: request.key,
    passphrase: request.passphrase,
    pfx: request.pfx,
    ciphers: request.ciphers,
    rejectUnauthorized: request.rejectUnauthorized,
    secureOptions: request.secureOptions,
    secureProtocol: request.secureProtocol
  }

  return tunnelOptions
}

function constructTunnelFnName (uri, proxy) {
  var uriProtocol = (uri.protocol === 'https:' ? 'https' : 'http')
  var proxyProtocol = (proxy.protocol === 'https:' ? 'Https' : 'Http')
  return [uriProtocol, proxyProtocol].join('Over')
}

function getTunnelFn (request) {
  var uri = request.uri
  var proxy = request.proxy
  var tunnelFnName = constructTunnelFnName(uri, proxy)
  return tunnel[tunnelFnName]
}

function Tunnel (request) {
  this.request = request
  this.proxyHeaderWhiteList = defaultProxyHeaderWhiteList
  this.proxyHeaderExclusiveList = []
  if (typeof request.tunnel !== 'undefined') {
    this.tunnelOverride = request.tunnel
  }
}

Tunnel.prototype.isEnabled = function () {
  var self = this
  var request = self.request
    // Tunnel HTTPS by default. Allow the user to override this setting.

  // If self.tunnelOverride is set (the user specified a value), use it.
  if (typeof self.tunnelOverride !== 'undefined') {
    return self.tunnelOverride
  }

  // If the destination is HTTPS, tunnel.
  if (request.uri.protocol === 'https:') {
    return true
  }

  // Otherwise, do not use tunnel.
  return false
}

Tunnel.prototype.setup = function (options) {
  var self = this
  var request = self.request

  options = options || {}

  if (typeof request.proxy === 'string') {
    request.proxy = url.parse(request.proxy)
  }

  if (!request.proxy || !request.tunnel) {
    return false
  }

  // Setup Proxy Header Exclusive List and White List
  if (options.proxyHeaderWhiteList) {
    self.proxyHeaderWhiteList = options.proxyHeaderWhiteList
  }
  if (options.proxyHeaderExclusiveList) {
    self.proxyHeaderExclusiveList = options.proxyHeaderExclusiveList
  }

  var proxyHeaderExclusiveList = self.proxyHeaderExclusiveList.concat(defaultProxyHeaderExclusiveList)
  var proxyHeaderWhiteList = self.proxyHeaderWhiteList.concat(proxyHeaderExclusiveList)

  // Setup Proxy Headers and Proxy Headers Host
  // Only send the Proxy White Listed Header names
  var proxyHeaders = constructProxyHeaderWhiteList(request.headers, proxyHeaderWhiteList)
  proxyHeaders.host = constructProxyHost(request.uri)

  proxyHeaderExclusiveList.forEach(request.removeHeader, request)

  // Set Agent from Tunnel Data
  var tunnelFn = getTunnelFn(request)
  var tunnelOptions = constructTunnelOptions(request, proxyHeaders)
  request.agent = tunnelFn(tunnelOptions)

  return true
}

Tunnel.defaultProxyHeaderWhiteList = defaultProxyHeaderWhiteList
Tunnel.defaultProxyHeaderExclusiveList = defaultProxyHeaderExclusiveList
exports.n = Tunnel


/***/ }),

/***/ 11377:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var CombinedStream = __webpack_require__(85443);
var util = __webpack_require__(31669);
var path = __webpack_require__(85622);
var http = __webpack_require__(98605);
var https = __webpack_require__(57211);
var parseUrl = __webpack_require__(78835).parse;
var fs = __webpack_require__(35747);
var mime = __webpack_require__(43583);
var asynckit = __webpack_require__(14812);
var populate = __webpack_require__(94932);

// Public API
module.exports = FormData;

// make it a Stream
util.inherits(FormData, CombinedStream);

/**
 * Create readable "multipart/form-data" streams.
 * Can be used to submit forms
 * and file uploads to other web applications.
 *
 * @constructor
 * @param {Object} options - Properties to be added/overriden for FormData and CombinedStream
 */
function FormData(options) {
  if (!(this instanceof FormData)) {
    return new FormData();
  }

  this._overheadLength = 0;
  this._valueLength = 0;
  this._valuesToMeasure = [];

  CombinedStream.call(this);

  options = options || {};
  for (var option in options) {
    this[option] = options[option];
  }
}

FormData.LINE_BREAK = '\r\n';
FormData.DEFAULT_CONTENT_TYPE = 'application/octet-stream';

FormData.prototype.append = function(field, value, options) {

  options = options || {};

  // allow filename as single option
  if (typeof options == 'string') {
    options = {filename: options};
  }

  var append = CombinedStream.prototype.append.bind(this);

  // all that streamy business can't handle numbers
  if (typeof value == 'number') {
    value = '' + value;
  }

  // https://github.com/felixge/node-form-data/issues/38
  if (util.isArray(value)) {
    // Please convert your array into string
    // the way web server expects it
    this._error(new Error('Arrays are not supported.'));
    return;
  }

  var header = this._multiPartHeader(field, value, options);
  var footer = this._multiPartFooter();

  append(header);
  append(value);
  append(footer);

  // pass along options.knownLength
  this._trackLength(header, value, options);
};

FormData.prototype._trackLength = function(header, value, options) {
  var valueLength = 0;

  // used w/ getLengthSync(), when length is known.
  // e.g. for streaming directly from a remote server,
  // w/ a known file a size, and not wanting to wait for
  // incoming file to finish to get its size.
  if (options.knownLength != null) {
    valueLength += +options.knownLength;
  } else if (Buffer.isBuffer(value)) {
    valueLength = value.length;
  } else if (typeof value === 'string') {
    valueLength = Buffer.byteLength(value);
  }

  this._valueLength += valueLength;

  // @check why add CRLF? does this account for custom/multiple CRLFs?
  this._overheadLength +=
    Buffer.byteLength(header) +
    FormData.LINE_BREAK.length;

  // empty or either doesn't have path or not an http response
  if (!value || ( !value.path && !(value.readable && value.hasOwnProperty('httpVersion')) )) {
    return;
  }

  // no need to bother with the length
  if (!options.knownLength) {
    this._valuesToMeasure.push(value);
  }
};

FormData.prototype._lengthRetriever = function(value, callback) {

  if (value.hasOwnProperty('fd')) {

    // take read range into a account
    // `end` = Infinity –> read file till the end
    //
    // TODO: Looks like there is bug in Node fs.createReadStream
    // it doesn't respect `end` options without `start` options
    // Fix it when node fixes it.
    // https://github.com/joyent/node/issues/7819
    if (value.end != undefined && value.end != Infinity && value.start != undefined) {

      // when end specified
      // no need to calculate range
      // inclusive, starts with 0
      callback(null, value.end + 1 - (value.start ? value.start : 0));

    // not that fast snoopy
    } else {
      // still need to fetch file size from fs
      fs.stat(value.path, function(err, stat) {

        var fileSize;

        if (err) {
          callback(err);
          return;
        }

        // update final size based on the range options
        fileSize = stat.size - (value.start ? value.start : 0);
        callback(null, fileSize);
      });
    }

  // or http response
  } else if (value.hasOwnProperty('httpVersion')) {
    callback(null, +value.headers['content-length']);

  // or request stream http://github.com/mikeal/request
  } else if (value.hasOwnProperty('httpModule')) {
    // wait till response come back
    value.on('response', function(response) {
      value.pause();
      callback(null, +response.headers['content-length']);
    });
    value.resume();

  // something else
  } else {
    callback('Unknown stream');
  }
};

FormData.prototype._multiPartHeader = function(field, value, options) {
  // custom header specified (as string)?
  // it becomes responsible for boundary
  // (e.g. to handle extra CRLFs on .NET servers)
  if (typeof options.header == 'string') {
    return options.header;
  }

  var contentDisposition = this._getContentDisposition(value, options);
  var contentType = this._getContentType(value, options);

  var contents = '';
  var headers  = {
    // add custom disposition as third element or keep it two elements if not
    'Content-Disposition': ['form-data', 'name="' + field + '"'].concat(contentDisposition || []),
    // if no content type. allow it to be empty array
    'Content-Type': [].concat(contentType || [])
  };

  // allow custom headers.
  if (typeof options.header == 'object') {
    populate(headers, options.header);
  }

  var header;
  for (var prop in headers) {
    if (!headers.hasOwnProperty(prop)) continue;
    header = headers[prop];

    // skip nullish headers.
    if (header == null) {
      continue;
    }

    // convert all headers to arrays.
    if (!Array.isArray(header)) {
      header = [header];
    }

    // add non-empty headers.
    if (header.length) {
      contents += prop + ': ' + header.join('; ') + FormData.LINE_BREAK;
    }
  }

  return '--' + this.getBoundary() + FormData.LINE_BREAK + contents + FormData.LINE_BREAK;
};

FormData.prototype._getContentDisposition = function(value, options) {

  var filename
    , contentDisposition
    ;

  if (typeof options.filepath === 'string') {
    // custom filepath for relative paths
    filename = path.normalize(options.filepath).replace(/\\/g, '/');
  } else if (options.filename || value.name || value.path) {
    // custom filename take precedence
    // formidable and the browser add a name property
    // fs- and request- streams have path property
    filename = path.basename(options.filename || value.name || value.path);
  } else if (value.readable && value.hasOwnProperty('httpVersion')) {
    // or try http response
    filename = path.basename(value.client._httpMessage.path);
  }

  if (filename) {
    contentDisposition = 'filename="' + filename + '"';
  }

  return contentDisposition;
};

FormData.prototype._getContentType = function(value, options) {

  // use custom content-type above all
  var contentType = options.contentType;

  // or try `name` from formidable, browser
  if (!contentType && value.name) {
    contentType = mime.lookup(value.name);
  }

  // or try `path` from fs-, request- streams
  if (!contentType && value.path) {
    contentType = mime.lookup(value.path);
  }

  // or if it's http-reponse
  if (!contentType && value.readable && value.hasOwnProperty('httpVersion')) {
    contentType = value.headers['content-type'];
  }

  // or guess it from the filepath or filename
  if (!contentType && (options.filepath || options.filename)) {
    contentType = mime.lookup(options.filepath || options.filename);
  }

  // fallback to the default content type if `value` is not simple value
  if (!contentType && typeof value == 'object') {
    contentType = FormData.DEFAULT_CONTENT_TYPE;
  }

  return contentType;
};

FormData.prototype._multiPartFooter = function() {
  return function(next) {
    var footer = FormData.LINE_BREAK;

    var lastPart = (this._streams.length === 0);
    if (lastPart) {
      footer += this._lastBoundary();
    }

    next(footer);
  }.bind(this);
};

FormData.prototype._lastBoundary = function() {
  return '--' + this.getBoundary() + '--' + FormData.LINE_BREAK;
};

FormData.prototype.getHeaders = function(userHeaders) {
  var header;
  var formHeaders = {
    'content-type': 'multipart/form-data; boundary=' + this.getBoundary()
  };

  for (header in userHeaders) {
    if (userHeaders.hasOwnProperty(header)) {
      formHeaders[header.toLowerCase()] = userHeaders[header];
    }
  }

  return formHeaders;
};

FormData.prototype.getBoundary = function() {
  if (!this._boundary) {
    this._generateBoundary();
  }

  return this._boundary;
};

FormData.prototype._generateBoundary = function() {
  // This generates a 50 character boundary similar to those used by Firefox.
  // They are optimized for boyer-moore parsing.
  var boundary = '--------------------------';
  for (var i = 0; i < 24; i++) {
    boundary += Math.floor(Math.random() * 10).toString(16);
  }

  this._boundary = boundary;
};

// Note: getLengthSync DOESN'T calculate streams length
// As workaround one can calculate file size manually
// and add it as knownLength option
FormData.prototype.getLengthSync = function() {
  var knownLength = this._overheadLength + this._valueLength;

  // Don't get confused, there are 3 "internal" streams for each keyval pair
  // so it basically checks if there is any value added to the form
  if (this._streams.length) {
    knownLength += this._lastBoundary().length;
  }

  // https://github.com/form-data/form-data/issues/40
  if (!this.hasKnownLength()) {
    // Some async length retrievers are present
    // therefore synchronous length calculation is false.
    // Please use getLength(callback) to get proper length
    this._error(new Error('Cannot calculate proper length in synchronous way.'));
  }

  return knownLength;
};

// Public API to check if length of added values is known
// https://github.com/form-data/form-data/issues/196
// https://github.com/form-data/form-data/issues/262
FormData.prototype.hasKnownLength = function() {
  var hasKnownLength = true;

  if (this._valuesToMeasure.length) {
    hasKnownLength = false;
  }

  return hasKnownLength;
};

FormData.prototype.getLength = function(cb) {
  var knownLength = this._overheadLength + this._valueLength;

  if (this._streams.length) {
    knownLength += this._lastBoundary().length;
  }

  if (!this._valuesToMeasure.length) {
    process.nextTick(cb.bind(this, null, knownLength));
    return;
  }

  asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function(err, values) {
    if (err) {
      cb(err);
      return;
    }

    values.forEach(function(length) {
      knownLength += length;
    });

    cb(null, knownLength);
  });
};

FormData.prototype.submit = function(params, cb) {
  var request
    , options
    , defaults = {method: 'post'}
    ;

  // parse provided url if it's string
  // or treat it as options object
  if (typeof params == 'string') {

    params = parseUrl(params);
    options = populate({
      port: params.port,
      path: params.pathname,
      host: params.hostname,
      protocol: params.protocol
    }, defaults);

  // use custom params
  } else {

    options = populate(params, defaults);
    // if no port provided use default one
    if (!options.port) {
      options.port = options.protocol == 'https:' ? 443 : 80;
    }
  }

  // put that good code in getHeaders to some use
  options.headers = this.getHeaders(params.headers);

  // https if specified, fallback to http in any other case
  if (options.protocol == 'https:') {
    request = https.request(options);
  } else {
    request = http.request(options);
  }

  // get content length and fire away
  this.getLength(function(err, length) {
    if (err) {
      this._error(err);
      return;
    }

    // add content length
    request.setHeader('Content-Length', length);

    this.pipe(request);
    if (cb) {
      request.on('error', cb);
      request.on('response', cb.bind(this, null));
    }
  }.bind(this));

  return request;
};

FormData.prototype._error = function(err) {
  if (!this.error) {
    this.error = err;
    this.pause();
    this.emit('error', err);
  }
};

FormData.prototype.toString = function () {
  return '[object FormData]';
};


/***/ }),

/***/ 94932:
/***/ ((module) => {

// populates missing values
module.exports = function(dst, src) {

  Object.keys(src).forEach(function(prop)
  {
    dst[prop] = dst[prop] || src[prop];
  });

  return dst;
};


/***/ }),

/***/ 28321:
/***/ ((module) => {

"use strict";


var replace = String.prototype.replace;
var percentTwenties = /%20/g;

module.exports = {
    'default': 'RFC3986',
    formatters: {
        RFC1738: function (value) {
            return replace.call(value, percentTwenties, '+');
        },
        RFC3986: function (value) {
            return value;
        }
    },
    RFC1738: 'RFC1738',
    RFC3986: 'RFC3986'
};


/***/ }),

/***/ 47457:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var stringify = __webpack_require__(64021);
var parse = __webpack_require__(90693);
var formats = __webpack_require__(28321);

module.exports = {
    formats: formats,
    parse: parse,
    stringify: stringify
};


/***/ }),

/***/ 90693:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var utils = __webpack_require__(17409);

var has = Object.prototype.hasOwnProperty;

var defaults = {
    allowDots: false,
    allowPrototypes: false,
    arrayLimit: 20,
    decoder: utils.decode,
    delimiter: '&',
    depth: 5,
    parameterLimit: 1000,
    plainObjects: false,
    strictNullHandling: false
};

var parseValues = function parseQueryStringValues(str, options) {
    var obj = {};
    var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str;
    var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;
    var parts = cleanStr.split(options.delimiter, limit);

    for (var i = 0; i < parts.length; ++i) {
        var part = parts[i];

        var bracketEqualsPos = part.indexOf(']=');
        var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;

        var key, val;
        if (pos === -1) {
            key = options.decoder(part, defaults.decoder);
            val = options.strictNullHandling ? null : '';
        } else {
            key = options.decoder(part.slice(0, pos), defaults.decoder);
            val = options.decoder(part.slice(pos + 1), defaults.decoder);
        }
        if (has.call(obj, key)) {
            obj[key] = [].concat(obj[key]).concat(val);
        } else {
            obj[key] = val;
        }
    }

    return obj;
};

var parseObject = function (chain, val, options) {
    var leaf = val;

    for (var i = chain.length - 1; i >= 0; --i) {
        var obj;
        var root = chain[i];

        if (root === '[]') {
            obj = [];
            obj = obj.concat(leaf);
        } else {
            obj = options.plainObjects ? Object.create(null) : {};
            var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
            var index = parseInt(cleanRoot, 10);
            if (
                !isNaN(index)
                && root !== cleanRoot
                && String(index) === cleanRoot
                && index >= 0
                && (options.parseArrays && index <= options.arrayLimit)
            ) {
                obj = [];
                obj[index] = leaf;
            } else {
                obj[cleanRoot] = leaf;
            }
        }

        leaf = obj;
    }

    return leaf;
};

var parseKeys = function parseQueryStringKeys(givenKey, val, options) {
    if (!givenKey) {
        return;
    }

    // Transform dot notation to bracket notation
    var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey;

    // The regex chunks

    var brackets = /(\[[^[\]]*])/;
    var child = /(\[[^[\]]*])/g;

    // Get the parent

    var segment = brackets.exec(key);
    var parent = segment ? key.slice(0, segment.index) : key;

    // Stash the parent if it exists

    var keys = [];
    if (parent) {
        // If we aren't using plain objects, optionally prefix keys
        // that would overwrite object prototype properties
        if (!options.plainObjects && has.call(Object.prototype, parent)) {
            if (!options.allowPrototypes) {
                return;
            }
        }

        keys.push(parent);
    }

    // Loop through children appending to the array until we hit depth

    var i = 0;
    while ((segment = child.exec(key)) !== null && i < options.depth) {
        i += 1;
        if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {
            if (!options.allowPrototypes) {
                return;
            }
        }
        keys.push(segment[1]);
    }

    // If there's a remainder, just add whatever is left

    if (segment) {
        keys.push('[' + key.slice(segment.index) + ']');
    }

    return parseObject(keys, val, options);
};

module.exports = function (str, opts) {
    var options = opts ? utils.assign({}, opts) : {};

    if (options.decoder !== null && options.decoder !== undefined && typeof options.decoder !== 'function') {
        throw new TypeError('Decoder has to be a function.');
    }

    options.ignoreQueryPrefix = options.ignoreQueryPrefix === true;
    options.delimiter = typeof options.delimiter === 'string' || utils.isRegExp(options.delimiter) ? options.delimiter : defaults.delimiter;
    options.depth = typeof options.depth === 'number' ? options.depth : defaults.depth;
    options.arrayLimit = typeof options.arrayLimit === 'number' ? options.arrayLimit : defaults.arrayLimit;
    options.parseArrays = options.parseArrays !== false;
    options.decoder = typeof options.decoder === 'function' ? options.decoder : defaults.decoder;
    options.allowDots = typeof options.allowDots === 'boolean' ? options.allowDots : defaults.allowDots;
    options.plainObjects = typeof options.plainObjects === 'boolean' ? options.plainObjects : defaults.plainObjects;
    options.allowPrototypes = typeof options.allowPrototypes === 'boolean' ? options.allowPrototypes : defaults.allowPrototypes;
    options.parameterLimit = typeof options.parameterLimit === 'number' ? options.parameterLimit : defaults.parameterLimit;
    options.strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling;

    if (str === '' || str === null || typeof str === 'undefined') {
        return options.plainObjects ? Object.create(null) : {};
    }

    var tempObj = typeof str === 'string' ? parseValues(str, options) : str;
    var obj = options.plainObjects ? Object.create(null) : {};

    // Iterate over the keys and setup the new object

    var keys = Object.keys(tempObj);
    for (var i = 0; i < keys.length; ++i) {
        var key = keys[i];
        var newObj = parseKeys(key, tempObj[key], options);
        obj = utils.merge(obj, newObj, options);
    }

    return utils.compact(obj);
};


/***/ }),

/***/ 64021:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var utils = __webpack_require__(17409);
var formats = __webpack_require__(28321);

var arrayPrefixGenerators = {
    brackets: function brackets(prefix) { // eslint-disable-line func-name-matching
        return prefix + '[]';
    },
    indices: function indices(prefix, key) { // eslint-disable-line func-name-matching
        return prefix + '[' + key + ']';
    },
    repeat: function repeat(prefix) { // eslint-disable-line func-name-matching
        return prefix;
    }
};

var toISO = Date.prototype.toISOString;

var defaults = {
    delimiter: '&',
    encode: true,
    encoder: utils.encode,
    encodeValuesOnly: false,
    serializeDate: function serializeDate(date) { // eslint-disable-line func-name-matching
        return toISO.call(date);
    },
    skipNulls: false,
    strictNullHandling: false
};

var stringify = function stringify( // eslint-disable-line func-name-matching
    object,
    prefix,
    generateArrayPrefix,
    strictNullHandling,
    skipNulls,
    encoder,
    filter,
    sort,
    allowDots,
    serializeDate,
    formatter,
    encodeValuesOnly
) {
    var obj = object;
    if (typeof filter === 'function') {
        obj = filter(prefix, obj);
    } else if (obj instanceof Date) {
        obj = serializeDate(obj);
    } else if (obj === null) {
        if (strictNullHandling) {
            return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder) : prefix;
        }

        obj = '';
    }

    if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || utils.isBuffer(obj)) {
        if (encoder) {
            var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder);
            return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder))];
        }
        return [formatter(prefix) + '=' + formatter(String(obj))];
    }

    var values = [];

    if (typeof obj === 'undefined') {
        return values;
    }

    var objKeys;
    if (Array.isArray(filter)) {
        objKeys = filter;
    } else {
        var keys = Object.keys(obj);
        objKeys = sort ? keys.sort(sort) : keys;
    }

    for (var i = 0; i < objKeys.length; ++i) {
        var key = objKeys[i];

        if (skipNulls && obj[key] === null) {
            continue;
        }

        if (Array.isArray(obj)) {
            values = values.concat(stringify(
                obj[key],
                generateArrayPrefix(prefix, key),
                generateArrayPrefix,
                strictNullHandling,
                skipNulls,
                encoder,
                filter,
                sort,
                allowDots,
                serializeDate,
                formatter,
                encodeValuesOnly
            ));
        } else {
            values = values.concat(stringify(
                obj[key],
                prefix + (allowDots ? '.' + key : '[' + key + ']'),
                generateArrayPrefix,
                strictNullHandling,
                skipNulls,
                encoder,
                filter,
                sort,
                allowDots,
                serializeDate,
                formatter,
                encodeValuesOnly
            ));
        }
    }

    return values;
};

module.exports = function (object, opts) {
    var obj = object;
    var options = opts ? utils.assign({}, opts) : {};

    if (options.encoder !== null && options.encoder !== undefined && typeof options.encoder !== 'function') {
        throw new TypeError('Encoder has to be a function.');
    }

    var delimiter = typeof options.delimiter === 'undefined' ? defaults.delimiter : options.delimiter;
    var strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling;
    var skipNulls = typeof options.skipNulls === 'boolean' ? options.skipNulls : defaults.skipNulls;
    var encode = typeof options.encode === 'boolean' ? options.encode : defaults.encode;
    var encoder = typeof options.encoder === 'function' ? options.encoder : defaults.encoder;
    var sort = typeof options.sort === 'function' ? options.sort : null;
    var allowDots = typeof options.allowDots === 'undefined' ? false : options.allowDots;
    var serializeDate = typeof options.serializeDate === 'function' ? options.serializeDate : defaults.serializeDate;
    var encodeValuesOnly = typeof options.encodeValuesOnly === 'boolean' ? options.encodeValuesOnly : defaults.encodeValuesOnly;
    if (typeof options.format === 'undefined') {
        options.format = formats['default'];
    } else if (!Object.prototype.hasOwnProperty.call(formats.formatters, options.format)) {
        throw new TypeError('Unknown format option provided.');
    }
    var formatter = formats.formatters[options.format];
    var objKeys;
    var filter;

    if (typeof options.filter === 'function') {
        filter = options.filter;
        obj = filter('', obj);
    } else if (Array.isArray(options.filter)) {
        filter = options.filter;
        objKeys = filter;
    }

    var keys = [];

    if (typeof obj !== 'object' || obj === null) {
        return '';
    }

    var arrayFormat;
    if (options.arrayFormat in arrayPrefixGenerators) {
        arrayFormat = options.arrayFormat;
    } else if ('indices' in options) {
        arrayFormat = options.indices ? 'indices' : 'repeat';
    } else {
        arrayFormat = 'indices';
    }

    var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];

    if (!objKeys) {
        objKeys = Object.keys(obj);
    }

    if (sort) {
        objKeys.sort(sort);
    }

    for (var i = 0; i < objKeys.length; ++i) {
        var key = objKeys[i];

        if (skipNulls && obj[key] === null) {
            continue;
        }

        keys = keys.concat(stringify(
            obj[key],
            key,
            generateArrayPrefix,
            strictNullHandling,
            skipNulls,
            encode ? encoder : null,
            filter,
            sort,
            allowDots,
            serializeDate,
            formatter,
            encodeValuesOnly
        ));
    }

    var joined = keys.join(delimiter);
    var prefix = options.addQueryPrefix === true ? '?' : '';

    return joined.length > 0 ? prefix + joined : '';
};


/***/ }),

/***/ 17409:
/***/ ((module) => {

"use strict";


var has = Object.prototype.hasOwnProperty;

var hexTable = (function () {
    var array = [];
    for (var i = 0; i < 256; ++i) {
        array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
    }

    return array;
}());

var compactQueue = function compactQueue(queue) {
    var obj;

    while (queue.length) {
        var item = queue.pop();
        obj = item.obj[item.prop];

        if (Array.isArray(obj)) {
            var compacted = [];

            for (var j = 0; j < obj.length; ++j) {
                if (typeof obj[j] !== 'undefined') {
                    compacted.push(obj[j]);
                }
            }

            item.obj[item.prop] = compacted;
        }
    }

    return obj;
};

var arrayToObject = function arrayToObject(source, options) {
    var obj = options && options.plainObjects ? Object.create(null) : {};
    for (var i = 0; i < source.length; ++i) {
        if (typeof source[i] !== 'undefined') {
            obj[i] = source[i];
        }
    }

    return obj;
};

var merge = function merge(target, source, options) {
    if (!source) {
        return target;
    }

    if (typeof source !== 'object') {
        if (Array.isArray(target)) {
            target.push(source);
        } else if (typeof target === 'object') {
            if (options.plainObjects || options.allowPrototypes || !has.call(Object.prototype, source)) {
                target[source] = true;
            }
        } else {
            return [target, source];
        }

        return target;
    }

    if (typeof target !== 'object') {
        return [target].concat(source);
    }

    var mergeTarget = target;
    if (Array.isArray(target) && !Array.isArray(source)) {
        mergeTarget = arrayToObject(target, options);
    }

    if (Array.isArray(target) && Array.isArray(source)) {
        source.forEach(function (item, i) {
            if (has.call(target, i)) {
                if (target[i] && typeof target[i] === 'object') {
                    target[i] = merge(target[i], item, options);
                } else {
                    target.push(item);
                }
            } else {
                target[i] = item;
            }
        });
        return target;
    }

    return Object.keys(source).reduce(function (acc, key) {
        var value = source[key];

        if (has.call(acc, key)) {
            acc[key] = merge(acc[key], value, options);
        } else {
            acc[key] = value;
        }
        return acc;
    }, mergeTarget);
};

var assign = function assignSingleSource(target, source) {
    return Object.keys(source).reduce(function (acc, key) {
        acc[key] = source[key];
        return acc;
    }, target);
};

var decode = function (str) {
    try {
        return decodeURIComponent(str.replace(/\+/g, ' '));
    } catch (e) {
        return str;
    }
};

var encode = function encode(str) {
    // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
    // It has been adapted here for stricter adherence to RFC 3986
    if (str.length === 0) {
        return str;
    }

    var string = typeof str === 'string' ? str : String(str);

    var out = '';
    for (var i = 0; i < string.length; ++i) {
        var c = string.charCodeAt(i);

        if (
            c === 0x2D // -
            || c === 0x2E // .
            || c === 0x5F // _
            || c === 0x7E // ~
            || (c >= 0x30 && c <= 0x39) // 0-9
            || (c >= 0x41 && c <= 0x5A) // a-z
            || (c >= 0x61 && c <= 0x7A) // A-Z
        ) {
            out += string.charAt(i);
            continue;
        }

        if (c < 0x80) {
            out = out + hexTable[c];
            continue;
        }

        if (c < 0x800) {
            out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);
            continue;
        }

        if (c < 0xD800 || c >= 0xE000) {
            out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
            continue;
        }

        i += 1;
        c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
        out += hexTable[0xF0 | (c >> 18)]
            + hexTable[0x80 | ((c >> 12) & 0x3F)]
            + hexTable[0x80 | ((c >> 6) & 0x3F)]
            + hexTable[0x80 | (c & 0x3F)];
    }

    return out;
};

var compact = function compact(value) {
    var queue = [{ obj: { o: value }, prop: 'o' }];
    var refs = [];

    for (var i = 0; i < queue.length; ++i) {
        var item = queue[i];
        var obj = item.obj[item.prop];

        var keys = Object.keys(obj);
        for (var j = 0; j < keys.length; ++j) {
            var key = keys[j];
            var val = obj[key];
            if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
                queue.push({ obj: obj, prop: key });
                refs.push(val);
            }
        }
    }

    return compactQueue(queue);
};

var isRegExp = function isRegExp(obj) {
    return Object.prototype.toString.call(obj) === '[object RegExp]';
};

var isBuffer = function isBuffer(obj) {
    if (obj === null || typeof obj === 'undefined') {
        return false;
    }

    return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
};

module.exports = {
    arrayToObject: arrayToObject,
    assign: assign,
    compact: compact,
    decode: decode,
    encode: encode,
    isBuffer: isBuffer,
    isRegExp: isRegExp,
    merge: merge
};


/***/ }),

/***/ 67087:
/***/ ((module) => {

/**
 * Convert array of 16 byte values to UUID string format of the form:
 * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
 */
var byteToHex = [];
for (var i = 0; i < 256; ++i) {
  byteToHex[i] = (i + 0x100).toString(16).substr(1);
}

function bytesToUuid(buf, offset) {
  var i = offset || 0;
  var bth = byteToHex;
  // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
  return ([
    bth[buf[i++]], bth[buf[i++]],
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]],
    bth[buf[i++]], bth[buf[i++]],
    bth[buf[i++]], bth[buf[i++]]
  ]).join('');
}

module.exports = bytesToUuid;


/***/ }),

/***/ 9117:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Unique ID creation requires a high quality random # generator.  In node.js
// this is pretty straight-forward - we use the crypto API.

var crypto = __webpack_require__(33373);

module.exports = function nodeRNG() {
  return crypto.randomBytes(16);
};


/***/ }),

/***/ 71435:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var rng = __webpack_require__(9117);
var bytesToUuid = __webpack_require__(67087);

function v4(options, buf, offset) {
  var i = buf && offset || 0;

  if (typeof(options) == 'string') {
    buf = options === 'binary' ? new Array(16) : null;
    options = null;
  }
  options = options || {};

  var rnds = options.random || (options.rng || rng)();

  // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
  rnds[6] = (rnds[6] & 0x0f) | 0x40;
  rnds[8] = (rnds[8] & 0x3f) | 0x80;

  // Copy bytes to buffer, if provided
  if (buf) {
    for (var ii = 0; ii < 16; ++ii) {
      buf[i + ii] = rnds[ii];
    }
  }

  return buf || bytesToUuid(rnds);
}

module.exports = v4;


/***/ }),

/***/ 70304:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var http = __webpack_require__(98605)
var https = __webpack_require__(57211)
var url = __webpack_require__(78835)
var util = __webpack_require__(31669)
var stream = __webpack_require__(92413)
var zlib = __webpack_require__(78761)
var aws2 = __webpack_require__(96342)
var aws4 = __webpack_require__(16071)
var httpSignature = __webpack_require__(42479)
var mime = __webpack_require__(43583)
var caseless = __webpack_require__(35684)
var ForeverAgent = __webpack_require__(47568)
var FormData = __webpack_require__(11377)
var extend = __webpack_require__(38171)
var isstream = __webpack_require__(83362)
var isTypedArray = __webpack_require__(10657).strict
var helpers = __webpack_require__(74845)
var cookies = __webpack_require__(50976)
var getProxyFromURI = __webpack_require__(75654)
var Querystring = __webpack_require__(66476)/* .Querystring */ .h
var Har = __webpack_require__(3248)/* .Har */ .t
var Auth = __webpack_require__(76996)/* .Auth */ .g
var OAuth = __webpack_require__(41174)/* .OAuth */ .f
var hawk = __webpack_require__(34473)
var Multipart = __webpack_require__(87810)/* .Multipart */ .$
var Redirect = __webpack_require__(3048)/* .Redirect */ .l
var Tunnel = __webpack_require__(17619)/* .Tunnel */ .n
var now = __webpack_require__(85644)
var Buffer = __webpack_require__(21867).Buffer

var safeStringify = helpers.safeStringify
var isReadStream = helpers.isReadStream
var toBase64 = helpers.toBase64
var defer = helpers.defer
var copy = helpers.copy
var version = helpers.version
var globalCookieJar = cookies.jar()

var globalPool = {}

function filterForNonReserved (reserved, options) {
  // Filter out properties that are not reserved.
  // Reserved values are passed in at call site.

  var object = {}
  for (var i in options) {
    var notReserved = (reserved.indexOf(i) === -1)
    if (notReserved) {
      object[i] = options[i]
    }
  }
  return object
}

function filterOutReservedFunctions (reserved, options) {
  // Filter out properties that are functions and are reserved.
  // Reserved values are passed in at call site.

  var object = {}
  for (var i in options) {
    var isReserved = !(reserved.indexOf(i) === -1)
    var isFunction = (typeof options[i] === 'function')
    if (!(isReserved && isFunction)) {
      object[i] = options[i]
    }
  }
  return object
}

// Return a simpler request object to allow serialization
function requestToJSON () {
  var self = this
  return {
    uri: self.uri,
    method: self.method,
    headers: self.headers
  }
}

// Return a simpler response object to allow serialization
function responseToJSON () {
  var self = this
  return {
    statusCode: self.statusCode,
    body: self.body,
    headers: self.headers,
    request: requestToJSON.call(self.request)
  }
}

function Request (options) {
  // if given the method property in options, set property explicitMethod to true

  // extend the Request instance with any non-reserved properties
  // remove any reserved functions from the options object
  // set Request instance to be readable and writable
  // call init

  var self = this

  // start with HAR, then override with additional options
  if (options.har) {
    self._har = new Har(self)
    options = self._har.options(options)
  }

  stream.Stream.call(self)
  var reserved = Object.keys(Request.prototype)
  var nonReserved = filterForNonReserved(reserved, options)

  extend(self, nonReserved)
  options = filterOutReservedFunctions(reserved, options)

  self.readable = true
  self.writable = true
  if (options.method) {
    self.explicitMethod = true
  }
  self._qs = new Querystring(self)
  self._auth = new Auth(self)
  self._oauth = new OAuth(self)
  self._multipart = new Multipart(self)
  self._redirect = new Redirect(self)
  self._tunnel = new Tunnel(self)
  self.init(options)
}

util.inherits(Request, stream.Stream)

// Debugging
Request.debug = process.env.NODE_DEBUG && /\brequest\b/.test(process.env.NODE_DEBUG)
function debug () {
  if (Request.debug) {
    console.error('REQUEST %s', util.format.apply(util, arguments))
  }
}
Request.prototype.debug = debug

Request.prototype.init = function (options) {
  // init() contains all the code to setup the request object.
  // the actual outgoing request is not started until start() is called
  // this function is called from both the constructor and on redirect.
  var self = this
  if (!options) {
    options = {}
  }
  self.headers = self.headers ? copy(self.headers) : {}

  // Delete headers with value undefined since they break
  // ClientRequest.OutgoingMessage.setHeader in node 0.12
  for (var headerName in self.headers) {
    if (typeof self.headers[headerName] === 'undefined') {
      delete self.headers[headerName]
    }
  }

  caseless.httpify(self, self.headers)

  if (!self.method) {
    self.method = options.method || 'GET'
  }
  if (!self.localAddress) {
    self.localAddress = options.localAddress
  }

  self._qs.init(options)

  debug(options)
  if (!self.pool && self.pool !== false) {
    self.pool = globalPool
  }
  self.dests = self.dests || []
  self.__isRequestRequest = true

  // Protect against double callback
  if (!self._callback && self.callback) {
    self._callback = self.callback
    self.callback = function () {
      if (self._callbackCalled) {
        return // Print a warning maybe?
      }
      self._callbackCalled = true
      self._callback.apply(self, arguments)
    }
    self.on('error', self.callback.bind())
    self.on('complete', self.callback.bind(self, null))
  }

  // People use this property instead all the time, so support it
  if (!self.uri && self.url) {
    self.uri = self.url
    delete self.url
  }

  // If there's a baseUrl, then use it as the base URL (i.e. uri must be
  // specified as a relative path and is appended to baseUrl).
  if (self.baseUrl) {
    if (typeof self.baseUrl !== 'string') {
      return self.emit('error', new Error('options.baseUrl must be a string'))
    }

    if (typeof self.uri !== 'string') {
      return self.emit('error', new Error('options.uri must be a string when using options.baseUrl'))
    }

    if (self.uri.indexOf('//') === 0 || self.uri.indexOf('://') !== -1) {
      return self.emit('error', new Error('options.uri must be a path when using options.baseUrl'))
    }

    // Handle all cases to make sure that there's only one slash between
    // baseUrl and uri.
    var baseUrlEndsWithSlash = self.baseUrl.lastIndexOf('/') === self.baseUrl.length - 1
    var uriStartsWithSlash = self.uri.indexOf('/') === 0

    if (baseUrlEndsWithSlash && uriStartsWithSlash) {
      self.uri = self.baseUrl + self.uri.slice(1)
    } else if (baseUrlEndsWithSlash || uriStartsWithSlash) {
      self.uri = self.baseUrl + self.uri
    } else if (self.uri === '') {
      self.uri = self.baseUrl
    } else {
      self.uri = self.baseUrl + '/' + self.uri
    }
    delete self.baseUrl
  }

  // A URI is needed by this point, emit error if we haven't been able to get one
  if (!self.uri) {
    return self.emit('error', new Error('options.uri is a required argument'))
  }

  // If a string URI/URL was given, parse it into a URL object
  if (typeof self.uri === 'string') {
    self.uri = url.parse(self.uri)
  }

  // Some URL objects are not from a URL parsed string and need href added
  if (!self.uri.href) {
    self.uri.href = url.format(self.uri)
  }

  // DEPRECATED: Warning for users of the old Unix Sockets URL Scheme
  if (self.uri.protocol === 'unix:') {
    return self.emit('error', new Error('`unix://` URL scheme is no longer supported. Please use the format `http://unix:SOCKET:PATH`'))
  }

  // Support Unix Sockets
  if (self.uri.host === 'unix') {
    self.enableUnixSocket()
  }

  if (self.strictSSL === false) {
    self.rejectUnauthorized = false
  }

  if (!self.uri.pathname) { self.uri.pathname = '/' }

  if (!(self.uri.host || (self.uri.hostname && self.uri.port)) && !self.uri.isUnix) {
    // Invalid URI: it may generate lot of bad errors, like 'TypeError: Cannot call method `indexOf` of undefined' in CookieJar
    // Detect and reject it as soon as possible
    var faultyUri = url.format(self.uri)
    var message = 'Invalid URI "' + faultyUri + '"'
    if (Object.keys(options).length === 0) {
      // No option ? This can be the sign of a redirect
      // As this is a case where the user cannot do anything (they didn't call request directly with this URL)
      // they should be warned that it can be caused by a redirection (can save some hair)
      message += '. This can be caused by a crappy redirection.'
    }
    // This error was fatal
    self.abort()
    return self.emit('error', new Error(message))
  }

  if (!self.hasOwnProperty('proxy')) {
    self.proxy = getProxyFromURI(self.uri)
  }

  self.tunnel = self._tunnel.isEnabled()
  if (self.proxy) {
    self._tunnel.setup(options)
  }

  self._redirect.onRequest(options)

  self.setHost = false
  if (!self.hasHeader('host')) {
    var hostHeaderName = self.originalHostHeaderName || 'host'
    self.setHeader(hostHeaderName, self.uri.host)
    // Drop :port suffix from Host header if known protocol.
    if (self.uri.port) {
      if ((self.uri.port === '80' && self.uri.protocol === 'http:') ||
          (self.uri.port === '443' && self.uri.protocol === 'https:')) {
        self.setHeader(hostHeaderName, self.uri.hostname)
      }
    }
    self.setHost = true
  }

  self.jar(self._jar || options.jar)

  if (!self.uri.port) {
    if (self.uri.protocol === 'http:') { self.uri.port = 80 } else if (self.uri.protocol === 'https:') { self.uri.port = 443 }
  }

  if (self.proxy && !self.tunnel) {
    self.port = self.proxy.port
    self.host = self.proxy.hostname
  } else {
    self.port = self.uri.port
    self.host = self.uri.hostname
  }

  if (options.form) {
    self.form(options.form)
  }

  if (options.formData) {
    var formData = options.formData
    var requestForm = self.form()
    var appendFormValue = function (key, value) {
      if (value && value.hasOwnProperty('value') && value.hasOwnProperty('options')) {
        requestForm.append(key, value.value, value.options)
      } else {
        requestForm.append(key, value)
      }
    }
    for (var formKey in formData) {
      if (formData.hasOwnProperty(formKey)) {
        var formValue = formData[formKey]
        if (formValue instanceof Array) {
          for (var j = 0; j < formValue.length; j++) {
            appendFormValue(formKey, formValue[j])
          }
        } else {
          appendFormValue(formKey, formValue)
        }
      }
    }
  }

  if (options.qs) {
    self.qs(options.qs)
  }

  if (self.uri.path) {
    self.path = self.uri.path
  } else {
    self.path = self.uri.pathname + (self.uri.search || '')
  }

  if (self.path.length === 0) {
    self.path = '/'
  }

  // Auth must happen last in case signing is dependent on other headers
  if (options.aws) {
    self.aws(options.aws)
  }

  if (options.hawk) {
    self.hawk(options.hawk)
  }

  if (options.httpSignature) {
    self.httpSignature(options.httpSignature)
  }

  if (options.auth) {
    if (Object.prototype.hasOwnProperty.call(options.auth, 'username')) {
      options.auth.user = options.auth.username
    }
    if (Object.prototype.hasOwnProperty.call(options.auth, 'password')) {
      options.auth.pass = options.auth.password
    }

    self.auth(
      options.auth.user,
      options.auth.pass,
      options.auth.sendImmediately,
      options.auth.bearer
    )
  }

  if (self.gzip && !self.hasHeader('accept-encoding')) {
    self.setHeader('accept-encoding', 'gzip, deflate')
  }

  if (self.uri.auth && !self.hasHeader('authorization')) {
    var uriAuthPieces = self.uri.auth.split(':').map(function (item) { return self._qs.unescape(item) })
    self.auth(uriAuthPieces[0], uriAuthPieces.slice(1).join(':'), true)
  }

  if (!self.tunnel && self.proxy && self.proxy.auth && !self.hasHeader('proxy-authorization')) {
    var proxyAuthPieces = self.proxy.auth.split(':').map(function (item) { return self._qs.unescape(item) })
    var authHeader = 'Basic ' + toBase64(proxyAuthPieces.join(':'))
    self.setHeader('proxy-authorization', authHeader)
  }

  if (self.proxy && !self.tunnel) {
    self.path = (self.uri.protocol + '//' + self.uri.host + self.path)
  }

  if (options.json) {
    self.json(options.json)
  }
  if (options.multipart) {
    self.multipart(options.multipart)
  }

  if (options.time) {
    self.timing = true

    // NOTE: elapsedTime is deprecated in favor of .timings
    self.elapsedTime = self.elapsedTime || 0
  }

  function setContentLength () {
    if (isTypedArray(self.body)) {
      self.body = Buffer.from(self.body)
    }

    if (!self.hasHeader('content-length')) {
      var length
      if (typeof self.body === 'string') {
        length = Buffer.byteLength(self.body)
      } else if (Array.isArray(self.body)) {
        length = self.body.reduce(function (a, b) { return a + b.length }, 0)
      } else {
        length = self.body.length
      }

      if (length) {
        self.setHeader('content-length', length)
      } else {
        self.emit('error', new Error('Argument error, options.body.'))
      }
    }
  }
  if (self.body && !isstream(self.body)) {
    setContentLength()
  }

  if (options.oauth) {
    self.oauth(options.oauth)
  } else if (self._oauth.params && self.hasHeader('authorization')) {
    self.oauth(self._oauth.params)
  }

  var protocol = self.proxy && !self.tunnel ? self.proxy.protocol : self.uri.protocol
  var defaultModules = {'http:': http, 'https:': https}
  var httpModules = self.httpModules || {}

  self.httpModule = httpModules[protocol] || defaultModules[protocol]

  if (!self.httpModule) {
    return self.emit('error', new Error('Invalid protocol: ' + protocol))
  }

  if (options.ca) {
    self.ca = options.ca
  }

  if (!self.agent) {
    if (options.agentOptions) {
      self.agentOptions = options.agentOptions
    }

    if (options.agentClass) {
      self.agentClass = options.agentClass
    } else if (options.forever) {
      var v = version()
      // use ForeverAgent in node 0.10- only
      if (v.major === 0 && v.minor <= 10) {
        self.agentClass = protocol === 'http:' ? ForeverAgent : ForeverAgent.SSL
      } else {
        self.agentClass = self.httpModule.Agent
        self.agentOptions = self.agentOptions || {}
        self.agentOptions.keepAlive = true
      }
    } else {
      self.agentClass = self.httpModule.Agent
    }
  }

  if (self.pool === false) {
    self.agent = false
  } else {
    self.agent = self.agent || self.getNewAgent()
  }

  self.on('pipe', function (src) {
    if (self.ntick && self._started) {
      self.emit('error', new Error('You cannot pipe to this stream after the outbound request has started.'))
    }
    self.src = src
    if (isReadStream(src)) {
      if (!self.hasHeader('content-type')) {
        self.setHeader('content-type', mime.lookup(src.path))
      }
    } else {
      if (src.headers) {
        for (var i in src.headers) {
          if (!self.hasHeader(i)) {
            self.setHeader(i, src.headers[i])
          }
        }
      }
      if (self._json && !self.hasHeader('content-type')) {
        self.setHeader('content-type', 'application/json')
      }
      if (src.method && !self.explicitMethod) {
        self.method = src.method
      }
    }

  // self.on('pipe', function () {
  //   console.error('You have already piped to this stream. Pipeing twice is likely to break the request.')
  // })
  })

  defer(function () {
    if (self._aborted) {
      return
    }

    var end = function () {
      if (self._form) {
        if (!self._auth.hasAuth) {
          self._form.pipe(self)
        } else if (self._auth.hasAuth && self._auth.sentAuth) {
          self._form.pipe(self)
        }
      }
      if (self._multipart && self._multipart.chunked) {
        self._multipart.body.pipe(self)
      }
      if (self.body) {
        if (isstream(self.body)) {
          self.body.pipe(self)
        } else {
          setContentLength()
          if (Array.isArray(self.body)) {
            self.body.forEach(function (part) {
              self.write(part)
            })
          } else {
            self.write(self.body)
          }
          self.end()
        }
      } else if (self.requestBodyStream) {
        console.warn('options.requestBodyStream is deprecated, please pass the request object to stream.pipe.')
        self.requestBodyStream.pipe(self)
      } else if (!self.src) {
        if (self._auth.hasAuth && !self._auth.sentAuth) {
          self.end()
          return
        }
        if (self.method !== 'GET' && typeof self.method !== 'undefined') {
          self.setHeader('content-length', 0)
        }
        self.end()
      }
    }

    if (self._form && !self.hasHeader('content-length')) {
      // Before ending the request, we had to compute the length of the whole form, asyncly
      self.setHeader(self._form.getHeaders(), true)
      self._form.getLength(function (err, length) {
        if (!err && !isNaN(length)) {
          self.setHeader('content-length', length)
        }
        end()
      })
    } else {
      end()
    }

    self.ntick = true
  })
}

Request.prototype.getNewAgent = function () {
  var self = this
  var Agent = self.agentClass
  var options = {}
  if (self.agentOptions) {
    for (var i in self.agentOptions) {
      options[i] = self.agentOptions[i]
    }
  }
  if (self.ca) {
    options.ca = self.ca
  }
  if (self.ciphers) {
    options.ciphers = self.ciphers
  }
  if (self.secureProtocol) {
    options.secureProtocol = self.secureProtocol
  }
  if (self.secureOptions) {
    options.secureOptions = self.secureOptions
  }
  if (typeof self.rejectUnauthorized !== 'undefined') {
    options.rejectUnauthorized = self.rejectUnauthorized
  }

  if (self.cert && self.key) {
    options.key = self.key
    options.cert = self.cert
  }

  if (self.pfx) {
    options.pfx = self.pfx
  }

  if (self.passphrase) {
    options.passphrase = self.passphrase
  }

  var poolKey = ''

  // different types of agents are in different pools
  if (Agent !== self.httpModule.Agent) {
    poolKey += Agent.name
  }

  // ca option is only relevant if proxy or destination are https
  var proxy = self.proxy
  if (typeof proxy === 'string') {
    proxy = url.parse(proxy)
  }
  var isHttps = (proxy && proxy.protocol === 'https:') || this.uri.protocol === 'https:'

  if (isHttps) {
    if (options.ca) {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.ca
    }

    if (typeof options.rejectUnauthorized !== 'undefined') {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.rejectUnauthorized
    }

    if (options.cert) {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.cert.toString('ascii') + options.key.toString('ascii')
    }

    if (options.pfx) {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.pfx.toString('ascii')
    }

    if (options.ciphers) {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.ciphers
    }

    if (options.secureProtocol) {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.secureProtocol
    }

    if (options.secureOptions) {
      if (poolKey) {
        poolKey += ':'
      }
      poolKey += options.secureOptions
    }
  }

  if (self.pool === globalPool && !poolKey && Object.keys(options).length === 0 && self.httpModule.globalAgent) {
    // not doing anything special.  Use the globalAgent
    return self.httpModule.globalAgent
  }

  // we're using a stored agent.  Make sure it's protocol-specific
  poolKey = self.uri.protocol + poolKey

  // generate a new agent for this setting if none yet exists
  if (!self.pool[poolKey]) {
    self.pool[poolKey] = new Agent(options)
    // properly set maxSockets on new agents
    if (self.pool.maxSockets) {
      self.pool[poolKey].maxSockets = self.pool.maxSockets
    }
  }

  return self.pool[poolKey]
}

Request.prototype.start = function () {
  // start() is called once we are ready to send the outgoing HTTP request.
  // this is usually called on the first write(), end() or on nextTick()
  var self = this

  if (self.timing) {
    // All timings will be relative to this request's startTime.  In order to do this,
    // we need to capture the wall-clock start time (via Date), immediately followed
    // by the high-resolution timer (via now()).  While these two won't be set
    // at the _exact_ same time, they should be close enough to be able to calculate
    // high-resolution, monotonically non-decreasing timestamps relative to startTime.
    var startTime = new Date().getTime()
    var startTimeNow = now()
  }

  if (self._aborted) {
    return
  }

  self._started = true
  self.method = self.method || 'GET'
  self.href = self.uri.href

  if (self.src && self.src.stat && self.src.stat.size && !self.hasHeader('content-length')) {
    self.setHeader('content-length', self.src.stat.size)
  }
  if (self._aws) {
    self.aws(self._aws, true)
  }

  // We have a method named auth, which is completely different from the http.request
  // auth option.  If we don't remove it, we're gonna have a bad time.
  var reqOptions = copy(self)
  delete reqOptions.auth

  debug('make request', self.uri.href)

  // node v6.8.0 now supports a `timeout` value in `http.request()`, but we
  // should delete it for now since we handle timeouts manually for better
  // consistency with node versions before v6.8.0
  delete reqOptions.timeout

  try {
    self.req = self.httpModule.request(reqOptions)
  } catch (err) {
    self.emit('error', err)
    return
  }

  if (self.timing) {
    self.startTime = startTime
    self.startTimeNow = startTimeNow

    // Timing values will all be relative to startTime (by comparing to startTimeNow
    // so we have an accurate clock)
    self.timings = {}
  }

  var timeout
  if (self.timeout && !self.timeoutTimer) {
    if (self.timeout < 0) {
      timeout = 0
    } else if (typeof self.timeout === 'number' && isFinite(self.timeout)) {
      timeout = self.timeout
    }
  }

  self.req.on('response', self.onRequestResponse.bind(self))
  self.req.on('error', self.onRequestError.bind(self))
  self.req.on('drain', function () {
    self.emit('drain')
  })

  self.req.on('socket', function (socket) {
    // `._connecting` was the old property which was made public in node v6.1.0
    var isConnecting = socket._connecting || socket.connecting
    if (self.timing) {
      self.timings.socket = now() - self.startTimeNow

      if (isConnecting) {
        var onLookupTiming = function () {
          self.timings.lookup = now() - self.startTimeNow
        }

        var onConnectTiming = function () {
          self.timings.connect = now() - self.startTimeNow
        }

        socket.once('lookup', onLookupTiming)
        socket.once('connect', onConnectTiming)

        // clean up timing event listeners if needed on error
        self.req.once('error', function () {
          socket.removeListener('lookup', onLookupTiming)
          socket.removeListener('connect', onConnectTiming)
        })
      }
    }

    var setReqTimeout = function () {
      // This timeout sets the amount of time to wait *between* bytes sent
      // from the server once connected.
      //
      // In particular, it's useful for erroring if the server fails to send
      // data halfway through streaming a response.
      self.req.setTimeout(timeout, function () {
        if (self.req) {
          self.abort()
          var e = new Error('ESOCKETTIMEDOUT')
          e.code = 'ESOCKETTIMEDOUT'
          e.connect = false
          self.emit('error', e)
        }
      })
    }
    if (timeout !== undefined) {
      // Only start the connection timer if we're actually connecting a new
      // socket, otherwise if we're already connected (because this is a
      // keep-alive connection) do not bother. This is important since we won't
      // get a 'connect' event for an already connected socket.
      if (isConnecting) {
        var onReqSockConnect = function () {
          socket.removeListener('connect', onReqSockConnect)
          self.clearTimeout()
          setReqTimeout()
        }

        socket.on('connect', onReqSockConnect)

        self.req.on('error', function (err) { // eslint-disable-line handle-callback-err
          socket.removeListener('connect', onReqSockConnect)
        })

        // Set a timeout in memory - this block will throw if the server takes more
        // than `timeout` to write the HTTP status and headers (corresponding to
        // the on('response') event on the client). NB: this measures wall-clock
        // time, not the time between bytes sent by the server.
        self.timeoutTimer = setTimeout(function () {
          socket.removeListener('connect', onReqSockConnect)
          self.abort()
          var e = new Error('ETIMEDOUT')
          e.code = 'ETIMEDOUT'
          e.connect = true
          self.emit('error', e)
        }, timeout)
      } else {
        // We're already connected
        setReqTimeout()
      }
    }
    self.emit('socket', socket)
  })

  self.emit('request', self.req)
}

Request.prototype.onRequestError = function (error) {
  var self = this
  if (self._aborted) {
    return
  }
  if (self.req && self.req._reusedSocket && error.code === 'ECONNRESET' &&
    self.agent.addRequestNoreuse) {
    self.agent = { addRequest: self.agent.addRequestNoreuse.bind(self.agent) }
    self.start()
    self.req.end()
    return
  }
  self.clearTimeout()
  self.emit('error', error)
}

Request.prototype.onRequestResponse = function (response) {
  var self = this

  if (self.timing) {
    self.timings.response = now() - self.startTimeNow
  }

  debug('onRequestResponse', self.uri.href, response.statusCode, response.headers)
  response.on('end', function () {
    if (self.timing) {
      self.timings.end = now() - self.startTimeNow
      response.timingStart = self.startTime

      // fill in the blanks for any periods that didn't trigger, such as
      // no lookup or connect due to keep alive
      if (!self.timings.socket) {
        self.timings.socket = 0
      }
      if (!self.timings.lookup) {
        self.timings.lookup = self.timings.socket
      }
      if (!self.timings.connect) {
        self.timings.connect = self.timings.lookup
      }
      if (!self.timings.response) {
        self.timings.response = self.timings.connect
      }

      debug('elapsed time', self.timings.end)

      // elapsedTime includes all redirects
      self.elapsedTime += Math.round(self.timings.end)

      // NOTE: elapsedTime is deprecated in favor of .timings
      response.elapsedTime = self.elapsedTime

      // timings is just for the final fetch
      response.timings = self.timings

      // pre-calculate phase timings as well
      response.timingPhases = {
        wait: self.timings.socket,
        dns: self.timings.lookup - self.timings.socket,
        tcp: self.timings.connect - self.timings.lookup,
        firstByte: self.timings.response - self.timings.connect,
        download: self.timings.end - self.timings.response,
        total: self.timings.end
      }
    }
    debug('response end', self.uri.href, response.statusCode, response.headers)
  })

  if (self._aborted) {
    debug('aborted', self.uri.href)
    response.resume()
    return
  }

  self.response = response
  response.request = self
  response.toJSON = responseToJSON

  // XXX This is different on 0.10, because SSL is strict by default
  if (self.httpModule === https &&
    self.strictSSL && (!response.hasOwnProperty('socket') ||
    !response.socket.authorized)) {
    debug('strict ssl error', self.uri.href)
    var sslErr = response.hasOwnProperty('socket') ? response.socket.authorizationError : self.uri.href + ' does not support SSL'
    self.emit('error', new Error('SSL Error: ' + sslErr))
    return
  }

  // Save the original host before any redirect (if it changes, we need to
  // remove any authorization headers).  Also remember the case of the header
  // name because lots of broken servers expect Host instead of host and we
  // want the caller to be able to specify this.
  self.originalHost = self.getHeader('host')
  if (!self.originalHostHeaderName) {
    self.originalHostHeaderName = self.hasHeader('host')
  }
  if (self.setHost) {
    self.removeHeader('host')
  }
  self.clearTimeout()

  var targetCookieJar = (self._jar && self._jar.setCookie) ? self._jar : globalCookieJar
  var addCookie = function (cookie) {
    // set the cookie if it's domain in the href's domain.
    try {
      targetCookieJar.setCookie(cookie, self.uri.href, {ignoreError: true})
    } catch (e) {
      self.emit('error', e)
    }
  }

  response.caseless = caseless(response.headers)

  if (response.caseless.has('set-cookie') && (!self._disableCookies)) {
    var headerName = response.caseless.has('set-cookie')
    if (Array.isArray(response.headers[headerName])) {
      response.headers[headerName].forEach(addCookie)
    } else {
      addCookie(response.headers[headerName])
    }
  }

  if (self._redirect.onResponse(response)) {
    return // Ignore the rest of the response
  } else {
    // Be a good stream and emit end when the response is finished.
    // Hack to emit end on close because of a core bug that never fires end
    response.on('close', function () {
      if (!self._ended) {
        self.response.emit('end')
      }
    })

    response.once('end', function () {
      self._ended = true
    })

    var noBody = function (code) {
      return (
        self.method === 'HEAD' ||
        // Informational
        (code >= 100 && code < 200) ||
        // No Content
        code === 204 ||
        // Not Modified
        code === 304
      )
    }

    var responseContent
    if (self.gzip && !noBody(response.statusCode)) {
      var contentEncoding = response.headers['content-encoding'] || 'identity'
      contentEncoding = contentEncoding.trim().toLowerCase()

      // Be more lenient with decoding compressed responses, since (very rarely)
      // servers send slightly invalid gzip responses that are still accepted
      // by common browsers.
      // Always using Z_SYNC_FLUSH is what cURL does.
      var zlibOptions = {
        flush: zlib.Z_SYNC_FLUSH,
        finishFlush: zlib.Z_SYNC_FLUSH
      }

      if (contentEncoding === 'gzip') {
        responseContent = zlib.createGunzip(zlibOptions)
        response.pipe(responseContent)
      } else if (contentEncoding === 'deflate') {
        responseContent = zlib.createInflate(zlibOptions)
        response.pipe(responseContent)
      } else {
        // Since previous versions didn't check for Content-Encoding header,
        // ignore any invalid values to preserve backwards-compatibility
        if (contentEncoding !== 'identity') {
          debug('ignoring unrecognized Content-Encoding ' + contentEncoding)
        }
        responseContent = response
      }
    } else {
      responseContent = response
    }

    if (self.encoding) {
      if (self.dests.length !== 0) {
        console.error('Ignoring encoding parameter as this stream is being piped to another stream which makes the encoding option invalid.')
      } else {
        responseContent.setEncoding(self.encoding)
      }
    }

    if (self._paused) {
      responseContent.pause()
    }

    self.responseContent = responseContent

    self.emit('response', response)

    self.dests.forEach(function (dest) {
      self.pipeDest(dest)
    })

    responseContent.on('data', function (chunk) {
      if (self.timing && !self.responseStarted) {
        self.responseStartTime = (new Date()).getTime()

        // NOTE: responseStartTime is deprecated in favor of .timings
        response.responseStartTime = self.responseStartTime
      }
      self._destdata = true
      self.emit('data', chunk)
    })
    responseContent.once('end', function (chunk) {
      self.emit('end', chunk)
    })
    responseContent.on('error', function (error) {
      self.emit('error', error)
    })
    responseContent.on('close', function () { self.emit('close') })

    if (self.callback) {
      self.readResponseBody(response)
    } else { // if no callback
      self.on('end', function () {
        if (self._aborted) {
          debug('aborted', self.uri.href)
          return
        }
        self.emit('complete', response)
      })
    }
  }
  debug('finish init function', self.uri.href)
}

Request.prototype.readResponseBody = function (response) {
  var self = this
  debug("reading response's body")
  var buffers = []
  var bufferLength = 0
  var strings = []

  self.on('data', function (chunk) {
    if (!Buffer.isBuffer(chunk)) {
      strings.push(chunk)
    } else if (chunk.length) {
      bufferLength += chunk.length
      buffers.push(chunk)
    }
  })
  self.on('end', function () {
    debug('end event', self.uri.href)
    if (self._aborted) {
      debug('aborted', self.uri.href)
      // `buffer` is defined in the parent scope and used in a closure it exists for the life of the request.
      // This can lead to leaky behavior if the user retains a reference to the request object.
      buffers = []
      bufferLength = 0
      return
    }

    if (bufferLength) {
      debug('has body', self.uri.href, bufferLength)
      response.body = Buffer.concat(buffers, bufferLength)
      if (self.encoding !== null) {
        response.body = response.body.toString(self.encoding)
      }
      // `buffer` is defined in the parent scope and used in a closure it exists for the life of the Request.
      // This can lead to leaky behavior if the user retains a reference to the request object.
      buffers = []
      bufferLength = 0
    } else if (strings.length) {
      // The UTF8 BOM [0xEF,0xBB,0xBF] is converted to [0xFE,0xFF] in the JS UTC16/UCS2 representation.
      // Strip this value out when the encoding is set to 'utf8', as upstream consumers won't expect it and it breaks JSON.parse().
      if (self.encoding === 'utf8' && strings[0].length > 0 && strings[0][0] === '\uFEFF') {
        strings[0] = strings[0].substring(1)
      }
      response.body = strings.join('')
    }

    if (self._json) {
      try {
        response.body = JSON.parse(response.body, self._jsonReviver)
      } catch (e) {
        debug('invalid JSON received', self.uri.href)
      }
    }
    debug('emitting complete', self.uri.href)
    if (typeof response.body === 'undefined' && !self._json) {
      response.body = self.encoding === null ? Buffer.alloc(0) : ''
    }
    self.emit('complete', response, response.body)
  })
}

Request.prototype.abort = function () {
  var self = this
  self._aborted = true

  if (self.req) {
    self.req.abort()
  } else if (self.response) {
    self.response.destroy()
  }

  self.clearTimeout()
  self.emit('abort')
}

Request.prototype.pipeDest = function (dest) {
  var self = this
  var response = self.response
  // Called after the response is received
  if (dest.headers && !dest.headersSent) {
    if (response.caseless.has('content-type')) {
      var ctname = response.caseless.has('content-type')
      if (dest.setHeader) {
        dest.setHeader(ctname, response.headers[ctname])
      } else {
        dest.headers[ctname] = response.headers[ctname]
      }
    }

    if (response.caseless.has('content-length')) {
      var clname = response.caseless.has('content-length')
      if (dest.setHeader) {
        dest.setHeader(clname, response.headers[clname])
      } else {
        dest.headers[clname] = response.headers[clname]
      }
    }
  }
  if (dest.setHeader && !dest.headersSent) {
    for (var i in response.headers) {
      // If the response content is being decoded, the Content-Encoding header
      // of the response doesn't represent the piped content, so don't pass it.
      if (!self.gzip || i !== 'content-encoding') {
        dest.setHeader(i, response.headers[i])
      }
    }
    dest.statusCode = response.statusCode
  }
  if (self.pipefilter) {
    self.pipefilter(response, dest)
  }
}

Request.prototype.qs = function (q, clobber) {
  var self = this
  var base
  if (!clobber && self.uri.query) {
    base = self._qs.parse(self.uri.query)
  } else {
    base = {}
  }

  for (var i in q) {
    base[i] = q[i]
  }

  var qs = self._qs.stringify(base)

  if (qs === '') {
    return self
  }

  self.uri = url.parse(self.uri.href.split('?')[0] + '?' + qs)
  self.url = self.uri
  self.path = self.uri.path

  if (self.uri.host === 'unix') {
    self.enableUnixSocket()
  }

  return self
}
Request.prototype.form = function (form) {
  var self = this
  if (form) {
    if (!/^application\/x-www-form-urlencoded\b/.test(self.getHeader('content-type'))) {
      self.setHeader('content-type', 'application/x-www-form-urlencoded')
    }
    self.body = (typeof form === 'string')
      ? self._qs.rfc3986(form.toString('utf8'))
      : self._qs.stringify(form).toString('utf8')
    return self
  }
  // create form-data object
  self._form = new FormData()
  self._form.on('error', function (err) {
    err.message = 'form-data: ' + err.message
    self.emit('error', err)
    self.abort()
  })
  return self._form
}
Request.prototype.multipart = function (multipart) {
  var self = this

  self._multipart.onRequest(multipart)

  if (!self._multipart.chunked) {
    self.body = self._multipart.body
  }

  return self
}
Request.prototype.json = function (val) {
  var self = this

  if (!self.hasHeader('accept')) {
    self.setHeader('accept', 'application/json')
  }

  if (typeof self.jsonReplacer === 'function') {
    self._jsonReplacer = self.jsonReplacer
  }

  self._json = true
  if (typeof val === 'boolean') {
    if (self.body !== undefined) {
      if (!/^application\/x-www-form-urlencoded\b/.test(self.getHeader('content-type'))) {
        self.body = safeStringify(self.body, self._jsonReplacer)
      } else {
        self.body = self._qs.rfc3986(self.body)
      }
      if (!self.hasHeader('content-type')) {
        self.setHeader('content-type', 'application/json')
      }
    }
  } else {
    self.body = safeStringify(val, self._jsonReplacer)
    if (!self.hasHeader('content-type')) {
      self.setHeader('content-type', 'application/json')
    }
  }

  if (typeof self.jsonReviver === 'function') {
    self._jsonReviver = self.jsonReviver
  }

  return self
}
Request.prototype.getHeader = function (name, headers) {
  var self = this
  var result, re, match
  if (!headers) {
    headers = self.headers
  }
  Object.keys(headers).forEach(function (key) {
    if (key.length !== name.length) {
      return
    }
    re = new RegExp(name, 'i')
    match = key.match(re)
    if (match) {
      result = headers[key]
    }
  })
  return result
}
Request.prototype.enableUnixSocket = function () {
  // Get the socket & request paths from the URL
  var unixParts = this.uri.path.split(':')
  var host = unixParts[0]
  var path = unixParts[1]
  // Apply unix properties to request
  this.socketPath = host
  this.uri.pathname = path
  this.uri.path = path
  this.uri.host = host
  this.uri.hostname = host
  this.uri.isUnix = true
}

Request.prototype.auth = function (user, pass, sendImmediately, bearer) {
  var self = this

  self._auth.onRequest(user, pass, sendImmediately, bearer)

  return self
}
Request.prototype.aws = function (opts, now) {
  var self = this

  if (!now) {
    self._aws = opts
    return self
  }

  if (opts.sign_version === 4 || opts.sign_version === '4') {
    // use aws4
    var options = {
      host: self.uri.host,
      path: self.uri.path,
      method: self.method,
      headers: self.headers,
      body: self.body
    }
    if (opts.service) {
      options.service = opts.service
    }
    var signRes = aws4.sign(options, {
      accessKeyId: opts.key,
      secretAccessKey: opts.secret,
      sessionToken: opts.session
    })
    self.setHeader('authorization', signRes.headers.Authorization)
    self.setHeader('x-amz-date', signRes.headers['X-Amz-Date'])
    if (signRes.headers['X-Amz-Security-Token']) {
      self.setHeader('x-amz-security-token', signRes.headers['X-Amz-Security-Token'])
    }
  } else {
    // default: use aws-sign2
    var date = new Date()
    self.setHeader('date', date.toUTCString())
    var auth = {
      key: opts.key,
      secret: opts.secret,
      verb: self.method.toUpperCase(),
      date: date,
      contentType: self.getHeader('content-type') || '',
      md5: self.getHeader('content-md5') || '',
      amazonHeaders: aws2.canonicalizeHeaders(self.headers)
    }
    var path = self.uri.path
    if (opts.bucket && path) {
      auth.resource = '/' + opts.bucket + path
    } else if (opts.bucket && !path) {
      auth.resource = '/' + opts.bucket
    } else if (!opts.bucket && path) {
      auth.resource = path
    } else if (!opts.bucket && !path) {
      auth.resource = '/'
    }
    auth.resource = aws2.canonicalizeResource(auth.resource)
    self.setHeader('authorization', aws2.authorization(auth))
  }

  return self
}
Request.prototype.httpSignature = function (opts) {
  var self = this
  httpSignature.signRequest({
    getHeader: function (header) {
      return self.getHeader(header, self.headers)
    },
    setHeader: function (header, value) {
      self.setHeader(header, value)
    },
    method: self.method,
    path: self.path
  }, opts)
  debug('httpSignature authorization', self.getHeader('authorization'))

  return self
}
Request.prototype.hawk = function (opts) {
  var self = this
  self.setHeader('Authorization', hawk.header(self.uri, self.method, opts))
}
Request.prototype.oauth = function (_oauth) {
  var self = this

  self._oauth.onRequest(_oauth)

  return self
}

Request.prototype.jar = function (jar) {
  var self = this
  var cookies

  if (self._redirect.redirectsFollowed === 0) {
    self.originalCookieHeader = self.getHeader('cookie')
  }

  if (!jar) {
    // disable cookies
    cookies = false
    self._disableCookies = true
  } else {
    var targetCookieJar = jar.getCookieString ? jar : globalCookieJar
    var urihref = self.uri.href
    // fetch cookie in the Specified host
    if (targetCookieJar) {
      cookies = targetCookieJar.getCookieString(urihref)
    }
  }

  // if need cookie and cookie is not empty
  if (cookies && cookies.length) {
    if (self.originalCookieHeader) {
      // Don't overwrite existing Cookie header
      self.setHeader('cookie', self.originalCookieHeader + '; ' + cookies)
    } else {
      self.setHeader('cookie', cookies)
    }
  }
  self._jar = jar
  return self
}

// Stream API
Request.prototype.pipe = function (dest, opts) {
  var self = this

  if (self.response) {
    if (self._destdata) {
      self.emit('error', new Error('You cannot pipe after data has been emitted from the response.'))
    } else if (self._ended) {
      self.emit('error', new Error('You cannot pipe after the response has been ended.'))
    } else {
      stream.Stream.prototype.pipe.call(self, dest, opts)
      self.pipeDest(dest)
      return dest
    }
  } else {
    self.dests.push(dest)
    stream.Stream.prototype.pipe.call(self, dest, opts)
    return dest
  }
}
Request.prototype.write = function () {
  var self = this
  if (self._aborted) { return }

  if (!self._started) {
    self.start()
  }
  if (self.req) {
    return self.req.write.apply(self.req, arguments)
  }
}
Request.prototype.end = function (chunk) {
  var self = this
  if (self._aborted) { return }

  if (chunk) {
    self.write(chunk)
  }
  if (!self._started) {
    self.start()
  }
  if (self.req) {
    self.req.end()
  }
}
Request.prototype.pause = function () {
  var self = this
  if (!self.responseContent) {
    self._paused = true
  } else {
    self.responseContent.pause.apply(self.responseContent, arguments)
  }
}
Request.prototype.resume = function () {
  var self = this
  if (!self.responseContent) {
    self._paused = false
  } else {
    self.responseContent.resume.apply(self.responseContent, arguments)
  }
}
Request.prototype.destroy = function () {
  var self = this
  this.clearTimeout()
  if (!self._ended) {
    self.end()
  } else if (self.response) {
    self.response.destroy()
  }
}

Request.prototype.clearTimeout = function () {
  if (this.timeoutTimer) {
    clearTimeout(this.timeoutTimer)
    this.timeoutTimer = null
  }
}

Request.defaultProxyHeaderWhiteList =
  Tunnel.defaultProxyHeaderWhiteList.slice()

Request.defaultProxyHeaderExclusiveList =
  Tunnel.defaultProxyHeaderExclusiveList.slice()

// Exports

Request.prototype.toJSON = requestToJSON
module.exports = Request


/***/ }),

/***/ 9004:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const Readable = __webpack_require__(92413).Readable;
const lowercaseKeys = __webpack_require__(9662);

class Response extends Readable {
	constructor(statusCode, headers, body, url) {
		if (typeof statusCode !== 'number') {
			throw new TypeError('Argument `statusCode` should be a number');
		}
		if (typeof headers !== 'object') {
			throw new TypeError('Argument `headers` should be an object');
		}
		if (!(body instanceof Buffer)) {
			throw new TypeError('Argument `body` should be a buffer');
		}
		if (typeof url !== 'string') {
			throw new TypeError('Argument `url` should be a string');
		}

		super();
		this.statusCode = statusCode;
		this.headers = lowercaseKeys(headers);
		this.body = body;
		this.url = url;
	}

	_read() {
		this.push(this.body);
		this.push(null);
	}
}

module.exports = Response;


/***/ }),

/***/ 21867:
/***/ ((module, exports, __webpack_require__) => {

/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
/* eslint-disable node/no-deprecated-api */
var buffer = __webpack_require__(64293)
var Buffer = buffer.Buffer

// alternative to using Object.keys for old browsers
function copyProps (src, dst) {
  for (var key in src) {
    dst[key] = src[key]
  }
}
if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {
  module.exports = buffer
} else {
  // Copy properties from require('buffer')
  copyProps(buffer, exports)
  exports.Buffer = SafeBuffer
}

function SafeBuffer (arg, encodingOrOffset, length) {
  return Buffer(arg, encodingOrOffset, length)
}

SafeBuffer.prototype = Object.create(Buffer.prototype)

// Copy static methods from Buffer
copyProps(Buffer, SafeBuffer)

SafeBuffer.from = function (arg, encodingOrOffset, length) {
  if (typeof arg === 'number') {
    throw new TypeError('Argument must not be a number')
  }
  return Buffer(arg, encodingOrOffset, length)
}

SafeBuffer.alloc = function (size, fill, encoding) {
  if (typeof size !== 'number') {
    throw new TypeError('Argument must be a number')
  }
  var buf = Buffer(size)
  if (fill !== undefined) {
    if (typeof encoding === 'string') {
      buf.fill(fill, encoding)
    } else {
      buf.fill(fill)
    }
  } else {
    buf.fill(0)
  }
  return buf
}

SafeBuffer.allocUnsafe = function (size) {
  if (typeof size !== 'number') {
    throw new TypeError('Argument must be a number')
  }
  return Buffer(size)
}

SafeBuffer.allocUnsafeSlow = function (size) {
  if (typeof size !== 'number') {
    throw new TypeError('Argument must be a number')
  }
  return buffer.SlowBuffer(size)
}


/***/ }),

/***/ 15118:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* eslint-disable node/no-deprecated-api */



var buffer = __webpack_require__(64293)
var Buffer = buffer.Buffer

var safer = {}

var key

for (key in buffer) {
  if (!buffer.hasOwnProperty(key)) continue
  if (key === 'SlowBuffer' || key === 'Buffer') continue
  safer[key] = buffer[key]
}

var Safer = safer.Buffer = {}
for (key in Buffer) {
  if (!Buffer.hasOwnProperty(key)) continue
  if (key === 'allocUnsafe' || key === 'allocUnsafeSlow') continue
  Safer[key] = Buffer[key]
}

safer.Buffer.prototype = Buffer.prototype

if (!Safer.from || Safer.from === Uint8Array.from) {
  Safer.from = function (value, encodingOrOffset, length) {
    if (typeof value === 'number') {
      throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value)
    }
    if (value && typeof value.length === 'undefined') {
      throw new TypeError('The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + typeof value)
    }
    return Buffer(value, encodingOrOffset, length)
  }
}

if (!Safer.alloc) {
  Safer.alloc = function (size, fill, encoding) {
    if (typeof size !== 'number') {
      throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size)
    }
    if (size < 0 || size >= 2 * (1 << 30)) {
      throw new RangeError('The value "' + size + '" is invalid for option "size"')
    }
    var buf = Buffer(size)
    if (!fill || fill.length === 0) {
      buf.fill(0)
    } else if (typeof encoding === 'string') {
      buf.fill(fill, encoding)
    } else {
      buf.fill(fill)
    }
    return buf
  }
}

if (!safer.kStringMaxLength) {
  try {
    safer.kStringMaxLength = process.binding('buffer').kStringMaxLength
  } catch (e) {
    // we can't determine kStringMaxLength in environments where process.binding
    // is unsupported, so let's not set it
  }
}

if (!safer.constants) {
  safer.constants = {
    MAX_LENGTH: safer.kMaxLength
  }
  if (safer.kStringMaxLength) {
    safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength
  }
}

module.exports = safer


/***/ }),

/***/ 91532:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const ANY = Symbol('SemVer ANY')
// hoisted class for cyclic dependency
class Comparator {
  static get ANY () {
    return ANY
  }
  constructor (comp, options) {
    options = parseOptions(options)

    if (comp instanceof Comparator) {
      if (comp.loose === !!options.loose) {
        return comp
      } else {
        comp = comp.value
      }
    }

    debug('comparator', comp, options)
    this.options = options
    this.loose = !!options.loose
    this.parse(comp)

    if (this.semver === ANY) {
      this.value = ''
    } else {
      this.value = this.operator + this.semver.version
    }

    debug('comp', this)
  }

  parse (comp) {
    const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
    const m = comp.match(r)

    if (!m) {
      throw new TypeError(`Invalid comparator: ${comp}`)
    }

    this.operator = m[1] !== undefined ? m[1] : ''
    if (this.operator === '=') {
      this.operator = ''
    }

    // if it literally is just '>' or '' then allow anything.
    if (!m[2]) {
      this.semver = ANY
    } else {
      this.semver = new SemVer(m[2], this.options.loose)
    }
  }

  toString () {
    return this.value
  }

  test (version) {
    debug('Comparator.test', version, this.options.loose)

    if (this.semver === ANY || version === ANY) {
      return true
    }

    if (typeof version === 'string') {
      try {
        version = new SemVer(version, this.options)
      } catch (er) {
        return false
      }
    }

    return cmp(version, this.operator, this.semver, this.options)
  }

  intersects (comp, options) {
    if (!(comp instanceof Comparator)) {
      throw new TypeError('a Comparator is required')
    }

    if (!options || typeof options !== 'object') {
      options = {
        loose: !!options,
        includePrerelease: false
      }
    }

    if (this.operator === '') {
      if (this.value === '') {
        return true
      }
      return new Range(comp.value, options).test(this.value)
    } else if (comp.operator === '') {
      if (comp.value === '') {
        return true
      }
      return new Range(this.value, options).test(comp.semver)
    }

    const sameDirectionIncreasing =
      (this.operator === '>=' || this.operator === '>') &&
      (comp.operator === '>=' || comp.operator === '>')
    const sameDirectionDecreasing =
      (this.operator === '<=' || this.operator === '<') &&
      (comp.operator === '<=' || comp.operator === '<')
    const sameSemVer = this.semver.version === comp.semver.version
    const differentDirectionsInclusive =
      (this.operator === '>=' || this.operator === '<=') &&
      (comp.operator === '>=' || comp.operator === '<=')
    const oppositeDirectionsLessThan =
      cmp(this.semver, '<', comp.semver, options) &&
      (this.operator === '>=' || this.operator === '>') &&
        (comp.operator === '<=' || comp.operator === '<')
    const oppositeDirectionsGreaterThan =
      cmp(this.semver, '>', comp.semver, options) &&
      (this.operator === '<=' || this.operator === '<') &&
        (comp.operator === '>=' || comp.operator === '>')

    return (
      sameDirectionIncreasing ||
      sameDirectionDecreasing ||
      (sameSemVer && differentDirectionsInclusive) ||
      oppositeDirectionsLessThan ||
      oppositeDirectionsGreaterThan
    )
  }
}

module.exports = Comparator

const parseOptions = __webpack_require__(40785)
const {re, t} = __webpack_require__(9523)
const cmp = __webpack_require__(75098)
const debug = __webpack_require__(50427)
const SemVer = __webpack_require__(48088)
const Range = __webpack_require__(9828)


/***/ }),

/***/ 9828:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// hoisted class for cyclic dependency
class Range {
  constructor (range, options) {
    options = parseOptions(options)

    if (range instanceof Range) {
      if (
        range.loose === !!options.loose &&
        range.includePrerelease === !!options.includePrerelease
      ) {
        return range
      } else {
        return new Range(range.raw, options)
      }
    }

    if (range instanceof Comparator) {
      // just put it in the set and return
      this.raw = range.value
      this.set = [[range]]
      this.format()
      return this
    }

    this.options = options
    this.loose = !!options.loose
    this.includePrerelease = !!options.includePrerelease

    // First, split based on boolean or ||
    this.raw = range
    this.set = range
      .split(/\s*\|\|\s*/)
      // map the range to a 2d array of comparators
      .map(range => this.parseRange(range.trim()))
      // throw out any comparator lists that are empty
      // this generally means that it was not a valid range, which is allowed
      // in loose mode, but will still throw if the WHOLE range is invalid.
      .filter(c => c.length)

    if (!this.set.length) {
      throw new TypeError(`Invalid SemVer Range: ${range}`)
    }

    // if we have any that are not the null set, throw out null sets.
    if (this.set.length > 1) {
      // keep the first one, in case they're all null sets
      const first = this.set[0]
      this.set = this.set.filter(c => !isNullSet(c[0]))
      if (this.set.length === 0)
        this.set = [first]
      else if (this.set.length > 1) {
        // if we have any that are *, then the range is just *
        for (const c of this.set) {
          if (c.length === 1 && isAny(c[0])) {
            this.set = [c]
            break
          }
        }
      }
    }

    this.format()
  }

  format () {
    this.range = this.set
      .map((comps) => {
        return comps.join(' ').trim()
      })
      .join('||')
      .trim()
    return this.range
  }

  toString () {
    return this.range
  }

  parseRange (range) {
    range = range.trim()

    // memoize range parsing for performance.
    // this is a very hot path, and fully deterministic.
    const memoOpts = Object.keys(this.options).join(',')
    const memoKey = `parseRange:${memoOpts}:${range}`
    const cached = cache.get(memoKey)
    if (cached)
      return cached

    const loose = this.options.loose
    // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
    const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]
    range = range.replace(hr, hyphenReplace(this.options.includePrerelease))
    debug('hyphen replace', range)
    // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
    range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)
    debug('comparator trim', range, re[t.COMPARATORTRIM])

    // `~ 1.2.3` => `~1.2.3`
    range = range.replace(re[t.TILDETRIM], tildeTrimReplace)

    // `^ 1.2.3` => `^1.2.3`
    range = range.replace(re[t.CARETTRIM], caretTrimReplace)

    // normalize spaces
    range = range.split(/\s+/).join(' ')

    // At this point, the range is completely trimmed and
    // ready to be split into comparators.

    const compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]
    const rangeList = range
      .split(' ')
      .map(comp => parseComparator(comp, this.options))
      .join(' ')
      .split(/\s+/)
      // >=0.0.0 is equivalent to *
      .map(comp => replaceGTE0(comp, this.options))
      // in loose mode, throw out any that are not valid comparators
      .filter(this.options.loose ? comp => !!comp.match(compRe) : () => true)
      .map(comp => new Comparator(comp, this.options))

    // if any comparators are the null set, then replace with JUST null set
    // if more than one comparator, remove any * comparators
    // also, don't include the same comparator more than once
    const l = rangeList.length
    const rangeMap = new Map()
    for (const comp of rangeList) {
      if (isNullSet(comp))
        return [comp]
      rangeMap.set(comp.value, comp)
    }
    if (rangeMap.size > 1 && rangeMap.has(''))
      rangeMap.delete('')

    const result = [...rangeMap.values()]
    cache.set(memoKey, result)
    return result
  }

  intersects (range, options) {
    if (!(range instanceof Range)) {
      throw new TypeError('a Range is required')
    }

    return this.set.some((thisComparators) => {
      return (
        isSatisfiable(thisComparators, options) &&
        range.set.some((rangeComparators) => {
          return (
            isSatisfiable(rangeComparators, options) &&
            thisComparators.every((thisComparator) => {
              return rangeComparators.every((rangeComparator) => {
                return thisComparator.intersects(rangeComparator, options)
              })
            })
          )
        })
      )
    })
  }

  // if ANY of the sets match ALL of its comparators, then pass
  test (version) {
    if (!version) {
      return false
    }

    if (typeof version === 'string') {
      try {
        version = new SemVer(version, this.options)
      } catch (er) {
        return false
      }
    }

    for (let i = 0; i < this.set.length; i++) {
      if (testSet(this.set[i], version, this.options)) {
        return true
      }
    }
    return false
  }
}
module.exports = Range

const LRU = __webpack_require__(7129)
const cache = new LRU({ max: 1000 })

const parseOptions = __webpack_require__(40785)
const Comparator = __webpack_require__(91532)
const debug = __webpack_require__(50427)
const SemVer = __webpack_require__(48088)
const {
  re,
  t,
  comparatorTrimReplace,
  tildeTrimReplace,
  caretTrimReplace
} = __webpack_require__(9523)

const isNullSet = c => c.value === '<0.0.0-0'
const isAny = c => c.value === ''

// take a set of comparators and determine whether there
// exists a version which can satisfy it
const isSatisfiable = (comparators, options) => {
  let result = true
  const remainingComparators = comparators.slice()
  let testComparator = remainingComparators.pop()

  while (result && remainingComparators.length) {
    result = remainingComparators.every((otherComparator) => {
      return testComparator.intersects(otherComparator, options)
    })

    testComparator = remainingComparators.pop()
  }

  return result
}

// comprised of xranges, tildes, stars, and gtlt's at this point.
// already replaced the hyphen ranges
// turn into a set of JUST comparators.
const parseComparator = (comp, options) => {
  debug('comp', comp, options)
  comp = replaceCarets(comp, options)
  debug('caret', comp)
  comp = replaceTildes(comp, options)
  debug('tildes', comp)
  comp = replaceXRanges(comp, options)
  debug('xrange', comp)
  comp = replaceStars(comp, options)
  debug('stars', comp)
  return comp
}

const isX = id => !id || id.toLowerCase() === 'x' || id === '*'

// ~, ~> --> * (any, kinda silly)
// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0
// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0
// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0
// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0
// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0
const replaceTildes = (comp, options) =>
  comp.trim().split(/\s+/).map((comp) => {
    return replaceTilde(comp, options)
  }).join(' ')

const replaceTilde = (comp, options) => {
  const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]
  return comp.replace(r, (_, M, m, p, pr) => {
    debug('tilde', comp, _, M, m, p, pr)
    let ret

    if (isX(M)) {
      ret = ''
    } else if (isX(m)) {
      ret = `>=${M}.0.0 <${+M + 1}.0.0-0`
    } else if (isX(p)) {
      // ~1.2 == >=1.2.0 <1.3.0-0
      ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`
    } else if (pr) {
      debug('replaceTilde pr', pr)
      ret = `>=${M}.${m}.${p}-${pr
      } <${M}.${+m + 1}.0-0`
    } else {
      // ~1.2.3 == >=1.2.3 <1.3.0-0
      ret = `>=${M}.${m}.${p
      } <${M}.${+m + 1}.0-0`
    }

    debug('tilde return', ret)
    return ret
  })
}

// ^ --> * (any, kinda silly)
// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0
// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0
// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0
// ^1.2.3 --> >=1.2.3 <2.0.0-0
// ^1.2.0 --> >=1.2.0 <2.0.0-0
const replaceCarets = (comp, options) =>
  comp.trim().split(/\s+/).map((comp) => {
    return replaceCaret(comp, options)
  }).join(' ')

const replaceCaret = (comp, options) => {
  debug('caret', comp, options)
  const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]
  const z = options.includePrerelease ? '-0' : ''
  return comp.replace(r, (_, M, m, p, pr) => {
    debug('caret', comp, _, M, m, p, pr)
    let ret

    if (isX(M)) {
      ret = ''
    } else if (isX(m)) {
      ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`
    } else if (isX(p)) {
      if (M === '0') {
        ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`
      } else {
        ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`
      }
    } else if (pr) {
      debug('replaceCaret pr', pr)
      if (M === '0') {
        if (m === '0') {
          ret = `>=${M}.${m}.${p}-${pr
          } <${M}.${m}.${+p + 1}-0`
        } else {
          ret = `>=${M}.${m}.${p}-${pr
          } <${M}.${+m + 1}.0-0`
        }
      } else {
        ret = `>=${M}.${m}.${p}-${pr
        } <${+M + 1}.0.0-0`
      }
    } else {
      debug('no pr')
      if (M === '0') {
        if (m === '0') {
          ret = `>=${M}.${m}.${p
          }${z} <${M}.${m}.${+p + 1}-0`
        } else {
          ret = `>=${M}.${m}.${p
          }${z} <${M}.${+m + 1}.0-0`
        }
      } else {
        ret = `>=${M}.${m}.${p
        } <${+M + 1}.0.0-0`
      }
    }

    debug('caret return', ret)
    return ret
  })
}

const replaceXRanges = (comp, options) => {
  debug('replaceXRanges', comp, options)
  return comp.split(/\s+/).map((comp) => {
    return replaceXRange(comp, options)
  }).join(' ')
}

const replaceXRange = (comp, options) => {
  comp = comp.trim()
  const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]
  return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
    debug('xRange', comp, ret, gtlt, M, m, p, pr)
    const xM = isX(M)
    const xm = xM || isX(m)
    const xp = xm || isX(p)
    const anyX = xp

    if (gtlt === '=' && anyX) {
      gtlt = ''
    }

    // if we're including prereleases in the match, then we need
    // to fix this to -0, the lowest possible prerelease value
    pr = options.includePrerelease ? '-0' : ''

    if (xM) {
      if (gtlt === '>' || gtlt === '<') {
        // nothing is allowed
        ret = '<0.0.0-0'
      } else {
        // nothing is forbidden
        ret = '*'
      }
    } else if (gtlt && anyX) {
      // we know patch is an x, because we have any x at all.
      // replace X with 0
      if (xm) {
        m = 0
      }
      p = 0

      if (gtlt === '>') {
        // >1 => >=2.0.0
        // >1.2 => >=1.3.0
        gtlt = '>='
        if (xm) {
          M = +M + 1
          m = 0
          p = 0
        } else {
          m = +m + 1
          p = 0
        }
      } else if (gtlt === '<=') {
        // <=0.7.x is actually <0.8.0, since any 0.7.x should
        // pass.  Similarly, <=7.x is actually <8.0.0, etc.
        gtlt = '<'
        if (xm) {
          M = +M + 1
        } else {
          m = +m + 1
        }
      }

      if (gtlt === '<')
        pr = '-0'

      ret = `${gtlt + M}.${m}.${p}${pr}`
    } else if (xm) {
      ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`
    } else if (xp) {
      ret = `>=${M}.${m}.0${pr
      } <${M}.${+m + 1}.0-0`
    }

    debug('xRange return', ret)

    return ret
  })
}

// Because * is AND-ed with everything else in the comparator,
// and '' means "any version", just remove the *s entirely.
const replaceStars = (comp, options) => {
  debug('replaceStars', comp, options)
  // Looseness is ignored here.  star is always as loose as it gets!
  return comp.trim().replace(re[t.STAR], '')
}

const replaceGTE0 = (comp, options) => {
  debug('replaceGTE0', comp, options)
  return comp.trim()
    .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')
}

// This function is passed to string.replace(re[t.HYPHENRANGE])
// M, m, patch, prerelease, build
// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5
// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do
// 1.2 - 3.4 => >=1.2.0 <3.5.0-0
const hyphenReplace = incPr => ($0,
  from, fM, fm, fp, fpr, fb,
  to, tM, tm, tp, tpr, tb) => {
  if (isX(fM)) {
    from = ''
  } else if (isX(fm)) {
    from = `>=${fM}.0.0${incPr ? '-0' : ''}`
  } else if (isX(fp)) {
    from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`
  } else if (fpr) {
    from = `>=${from}`
  } else {
    from = `>=${from}${incPr ? '-0' : ''}`
  }

  if (isX(tM)) {
    to = ''
  } else if (isX(tm)) {
    to = `<${+tM + 1}.0.0-0`
  } else if (isX(tp)) {
    to = `<${tM}.${+tm + 1}.0-0`
  } else if (tpr) {
    to = `<=${tM}.${tm}.${tp}-${tpr}`
  } else if (incPr) {
    to = `<${tM}.${tm}.${+tp + 1}-0`
  } else {
    to = `<=${to}`
  }

  return (`${from} ${to}`).trim()
}

const testSet = (set, version, options) => {
  for (let i = 0; i < set.length; i++) {
    if (!set[i].test(version)) {
      return false
    }
  }

  if (version.prerelease.length && !options.includePrerelease) {
    // Find the set of versions that are allowed to have prereleases
    // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0
    // That should allow `1.2.3-pr.2` to pass.
    // However, `1.2.4-alpha.notready` should NOT be allowed,
    // even though it's within the range set by the comparators.
    for (let i = 0; i < set.length; i++) {
      debug(set[i].semver)
      if (set[i].semver === Comparator.ANY) {
        continue
      }

      if (set[i].semver.prerelease.length > 0) {
        const allowed = set[i].semver
        if (allowed.major === version.major &&
            allowed.minor === version.minor &&
            allowed.patch === version.patch) {
          return true
        }
      }
    }

    // Version has a -pre, but it's not one of the ones we like.
    return false
  }

  return true
}


/***/ }),

/***/ 48088:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const debug = __webpack_require__(50427)
const { MAX_LENGTH, MAX_SAFE_INTEGER } = __webpack_require__(42293)
const { re, t } = __webpack_require__(9523)

const parseOptions = __webpack_require__(40785)
const { compareIdentifiers } = __webpack_require__(92463)
class SemVer {
  constructor (version, options) {
    options = parseOptions(options)

    if (version instanceof SemVer) {
      if (version.loose === !!options.loose &&
          version.includePrerelease === !!options.includePrerelease) {
        return version
      } else {
        version = version.version
      }
    } else if (typeof version !== 'string') {
      throw new TypeError(`Invalid Version: ${version}`)
    }

    if (version.length > MAX_LENGTH) {
      throw new TypeError(
        `version is longer than ${MAX_LENGTH} characters`
      )
    }

    debug('SemVer', version, options)
    this.options = options
    this.loose = !!options.loose
    // this isn't actually relevant for versions, but keep it so that we
    // don't run into trouble passing this.options around.
    this.includePrerelease = !!options.includePrerelease

    const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])

    if (!m) {
      throw new TypeError(`Invalid Version: ${version}`)
    }

    this.raw = version

    // these are actually numbers
    this.major = +m[1]
    this.minor = +m[2]
    this.patch = +m[3]

    if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
      throw new TypeError('Invalid major version')
    }

    if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
      throw new TypeError('Invalid minor version')
    }

    if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
      throw new TypeError('Invalid patch version')
    }

    // numberify any prerelease numeric ids
    if (!m[4]) {
      this.prerelease = []
    } else {
      this.prerelease = m[4].split('.').map((id) => {
        if (/^[0-9]+$/.test(id)) {
          const num = +id
          if (num >= 0 && num < MAX_SAFE_INTEGER) {
            return num
          }
        }
        return id
      })
    }

    this.build = m[5] ? m[5].split('.') : []
    this.format()
  }

  format () {
    this.version = `${this.major}.${this.minor}.${this.patch}`
    if (this.prerelease.length) {
      this.version += `-${this.prerelease.join('.')}`
    }
    return this.version
  }

  toString () {
    return this.version
  }

  compare (other) {
    debug('SemVer.compare', this.version, this.options, other)
    if (!(other instanceof SemVer)) {
      if (typeof other === 'string' && other === this.version) {
        return 0
      }
      other = new SemVer(other, this.options)
    }

    if (other.version === this.version) {
      return 0
    }

    return this.compareMain(other) || this.comparePre(other)
  }

  compareMain (other) {
    if (!(other instanceof SemVer)) {
      other = new SemVer(other, this.options)
    }

    return (
      compareIdentifiers(this.major, other.major) ||
      compareIdentifiers(this.minor, other.minor) ||
      compareIdentifiers(this.patch, other.patch)
    )
  }

  comparePre (other) {
    if (!(other instanceof SemVer)) {
      other = new SemVer(other, this.options)
    }

    // NOT having a prerelease is > having one
    if (this.prerelease.length && !other.prerelease.length) {
      return -1
    } else if (!this.prerelease.length && other.prerelease.length) {
      return 1
    } else if (!this.prerelease.length && !other.prerelease.length) {
      return 0
    }

    let i = 0
    do {
      const a = this.prerelease[i]
      const b = other.prerelease[i]
      debug('prerelease compare', i, a, b)
      if (a === undefined && b === undefined) {
        return 0
      } else if (b === undefined) {
        return 1
      } else if (a === undefined) {
        return -1
      } else if (a === b) {
        continue
      } else {
        return compareIdentifiers(a, b)
      }
    } while (++i)
  }

  compareBuild (other) {
    if (!(other instanceof SemVer)) {
      other = new SemVer(other, this.options)
    }

    let i = 0
    do {
      const a = this.build[i]
      const b = other.build[i]
      debug('prerelease compare', i, a, b)
      if (a === undefined && b === undefined) {
        return 0
      } else if (b === undefined) {
        return 1
      } else if (a === undefined) {
        return -1
      } else if (a === b) {
        continue
      } else {
        return compareIdentifiers(a, b)
      }
    } while (++i)
  }

  // preminor will bump the version up to the next minor release, and immediately
  // down to pre-release. premajor and prepatch work the same way.
  inc (release, identifier) {
    switch (release) {
      case 'premajor':
        this.prerelease.length = 0
        this.patch = 0
        this.minor = 0
        this.major++
        this.inc('pre', identifier)
        break
      case 'preminor':
        this.prerelease.length = 0
        this.patch = 0
        this.minor++
        this.inc('pre', identifier)
        break
      case 'prepatch':
        // If this is already a prerelease, it will bump to the next version
        // drop any prereleases that might already exist, since they are not
        // relevant at this point.
        this.prerelease.length = 0
        this.inc('patch', identifier)
        this.inc('pre', identifier)
        break
      // If the input is a non-prerelease version, this acts the same as
      // prepatch.
      case 'prerelease':
        if (this.prerelease.length === 0) {
          this.inc('patch', identifier)
        }
        this.inc('pre', identifier)
        break

      case 'major':
        // If this is a pre-major version, bump up to the same major version.
        // Otherwise increment major.
        // 1.0.0-5 bumps to 1.0.0
        // 1.1.0 bumps to 2.0.0
        if (
          this.minor !== 0 ||
          this.patch !== 0 ||
          this.prerelease.length === 0
        ) {
          this.major++
        }
        this.minor = 0
        this.patch = 0
        this.prerelease = []
        break
      case 'minor':
        // If this is a pre-minor version, bump up to the same minor version.
        // Otherwise increment minor.
        // 1.2.0-5 bumps to 1.2.0
        // 1.2.1 bumps to 1.3.0
        if (this.patch !== 0 || this.prerelease.length === 0) {
          this.minor++
        }
        this.patch = 0
        this.prerelease = []
        break
      case 'patch':
        // If this is not a pre-release version, it will increment the patch.
        // If it is a pre-release it will bump up to the same patch version.
        // 1.2.0-5 patches to 1.2.0
        // 1.2.0 patches to 1.2.1
        if (this.prerelease.length === 0) {
          this.patch++
        }
        this.prerelease = []
        break
      // This probably shouldn't be used publicly.
      // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
      case 'pre':
        if (this.prerelease.length === 0) {
          this.prerelease = [0]
        } else {
          let i = this.prerelease.length
          while (--i >= 0) {
            if (typeof this.prerelease[i] === 'number') {
              this.prerelease[i]++
              i = -2
            }
          }
          if (i === -1) {
            // didn't increment anything
            this.prerelease.push(0)
          }
        }
        if (identifier) {
          // 1.2.0-beta.1 bumps to 1.2.0-beta.2,
          // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
          if (this.prerelease[0] === identifier) {
            if (isNaN(this.prerelease[1])) {
              this.prerelease = [identifier, 0]
            }
          } else {
            this.prerelease = [identifier, 0]
          }
        }
        break

      default:
        throw new Error(`invalid increment argument: ${release}`)
    }
    this.format()
    this.raw = this.version
    return this
  }
}

module.exports = SemVer


/***/ }),

/***/ 48848:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const parse = __webpack_require__(75925)
const clean = (version, options) => {
  const s = parse(version.trim().replace(/^[=v]+/, ''), options)
  return s ? s.version : null
}
module.exports = clean


/***/ }),

/***/ 75098:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const eq = __webpack_require__(91898)
const neq = __webpack_require__(6017)
const gt = __webpack_require__(84123)
const gte = __webpack_require__(15522)
const lt = __webpack_require__(80194)
const lte = __webpack_require__(77520)

const cmp = (a, op, b, loose) => {
  switch (op) {
    case '===':
      if (typeof a === 'object')
        a = a.version
      if (typeof b === 'object')
        b = b.version
      return a === b

    case '!==':
      if (typeof a === 'object')
        a = a.version
      if (typeof b === 'object')
        b = b.version
      return a !== b

    case '':
    case '=':
    case '==':
      return eq(a, b, loose)

    case '!=':
      return neq(a, b, loose)

    case '>':
      return gt(a, b, loose)

    case '>=':
      return gte(a, b, loose)

    case '<':
      return lt(a, b, loose)

    case '<=':
      return lte(a, b, loose)

    default:
      throw new TypeError(`Invalid operator: ${op}`)
  }
}
module.exports = cmp


/***/ }),

/***/ 13466:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const parse = __webpack_require__(75925)
const {re, t} = __webpack_require__(9523)

const coerce = (version, options) => {
  if (version instanceof SemVer) {
    return version
  }

  if (typeof version === 'number') {
    version = String(version)
  }

  if (typeof version !== 'string') {
    return null
  }

  options = options || {}

  let match = null
  if (!options.rtl) {
    match = version.match(re[t.COERCE])
  } else {
    // Find the right-most coercible string that does not share
    // a terminus with a more left-ward coercible string.
    // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'
    //
    // Walk through the string checking with a /g regexp
    // Manually set the index so as to pick up overlapping matches.
    // Stop when we get a match that ends at the string end, since no
    // coercible string can be more right-ward without the same terminus.
    let next
    while ((next = re[t.COERCERTL].exec(version)) &&
        (!match || match.index + match[0].length !== version.length)
    ) {
      if (!match ||
            next.index + next[0].length !== match.index + match[0].length) {
        match = next
      }
      re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length
    }
    // leave it in a clean state
    re[t.COERCERTL].lastIndex = -1
  }

  if (match === null)
    return null

  return parse(`${match[2]}.${match[3] || '0'}.${match[4] || '0'}`, options)
}
module.exports = coerce


/***/ }),

/***/ 92156:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const compareBuild = (a, b, loose) => {
  const versionA = new SemVer(a, loose)
  const versionB = new SemVer(b, loose)
  return versionA.compare(versionB) || versionA.compareBuild(versionB)
}
module.exports = compareBuild


/***/ }),

/***/ 62804:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const compareLoose = (a, b) => compare(a, b, true)
module.exports = compareLoose


/***/ }),

/***/ 44309:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const compare = (a, b, loose) =>
  new SemVer(a, loose).compare(new SemVer(b, loose))

module.exports = compare


/***/ }),

/***/ 64297:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const parse = __webpack_require__(75925)
const eq = __webpack_require__(91898)

const diff = (version1, version2) => {
  if (eq(version1, version2)) {
    return null
  } else {
    const v1 = parse(version1)
    const v2 = parse(version2)
    const hasPre = v1.prerelease.length || v2.prerelease.length
    const prefix = hasPre ? 'pre' : ''
    const defaultResult = hasPre ? 'prerelease' : ''
    for (const key in v1) {
      if (key === 'major' || key === 'minor' || key === 'patch') {
        if (v1[key] !== v2[key]) {
          return prefix + key
        }
      }
    }
    return defaultResult // may be undefined
  }
}
module.exports = diff


/***/ }),

/***/ 91898:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const eq = (a, b, loose) => compare(a, b, loose) === 0
module.exports = eq


/***/ }),

/***/ 84123:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const gt = (a, b, loose) => compare(a, b, loose) > 0
module.exports = gt


/***/ }),

/***/ 15522:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const gte = (a, b, loose) => compare(a, b, loose) >= 0
module.exports = gte


/***/ }),

/***/ 30900:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)

const inc = (version, release, options, identifier) => {
  if (typeof (options) === 'string') {
    identifier = options
    options = undefined
  }

  try {
    return new SemVer(version, options).inc(release, identifier).version
  } catch (er) {
    return null
  }
}
module.exports = inc


/***/ }),

/***/ 80194:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const lt = (a, b, loose) => compare(a, b, loose) < 0
module.exports = lt


/***/ }),

/***/ 77520:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const lte = (a, b, loose) => compare(a, b, loose) <= 0
module.exports = lte


/***/ }),

/***/ 76688:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const major = (a, loose) => new SemVer(a, loose).major
module.exports = major


/***/ }),

/***/ 38447:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const minor = (a, loose) => new SemVer(a, loose).minor
module.exports = minor


/***/ }),

/***/ 6017:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const neq = (a, b, loose) => compare(a, b, loose) !== 0
module.exports = neq


/***/ }),

/***/ 75925:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const {MAX_LENGTH} = __webpack_require__(42293)
const { re, t } = __webpack_require__(9523)
const SemVer = __webpack_require__(48088)

const parseOptions = __webpack_require__(40785)
const parse = (version, options) => {
  options = parseOptions(options)

  if (version instanceof SemVer) {
    return version
  }

  if (typeof version !== 'string') {
    return null
  }

  if (version.length > MAX_LENGTH) {
    return null
  }

  const r = options.loose ? re[t.LOOSE] : re[t.FULL]
  if (!r.test(version)) {
    return null
  }

  try {
    return new SemVer(version, options)
  } catch (er) {
    return null
  }
}

module.exports = parse


/***/ }),

/***/ 42866:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const patch = (a, loose) => new SemVer(a, loose).patch
module.exports = patch


/***/ }),

/***/ 24016:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const parse = __webpack_require__(75925)
const prerelease = (version, options) => {
  const parsed = parse(version, options)
  return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
}
module.exports = prerelease


/***/ }),

/***/ 76417:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compare = __webpack_require__(44309)
const rcompare = (a, b, loose) => compare(b, a, loose)
module.exports = rcompare


/***/ }),

/***/ 8701:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compareBuild = __webpack_require__(92156)
const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
module.exports = rsort


/***/ }),

/***/ 6055:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Range = __webpack_require__(9828)
const satisfies = (version, range, options) => {
  try {
    range = new Range(range, options)
  } catch (er) {
    return false
  }
  return range.test(version)
}
module.exports = satisfies


/***/ }),

/***/ 61426:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const compareBuild = __webpack_require__(92156)
const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
module.exports = sort


/***/ }),

/***/ 19601:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const parse = __webpack_require__(75925)
const valid = (version, options) => {
  const v = parse(version, options)
  return v ? v.version : null
}
module.exports = valid


/***/ }),

/***/ 11383:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// just pre-load all the stuff that index.js lazily exports
const internalRe = __webpack_require__(9523)
module.exports = {
  re: internalRe.re,
  src: internalRe.src,
  tokens: internalRe.t,
  SEMVER_SPEC_VERSION: __webpack_require__(42293).SEMVER_SPEC_VERSION,
  SemVer: __webpack_require__(48088),
  compareIdentifiers: __webpack_require__(92463).compareIdentifiers,
  rcompareIdentifiers: __webpack_require__(92463).rcompareIdentifiers,
  parse: __webpack_require__(75925),
  valid: __webpack_require__(19601),
  clean: __webpack_require__(48848),
  inc: __webpack_require__(30900),
  diff: __webpack_require__(64297),
  major: __webpack_require__(76688),
  minor: __webpack_require__(38447),
  patch: __webpack_require__(42866),
  prerelease: __webpack_require__(24016),
  compare: __webpack_require__(44309),
  rcompare: __webpack_require__(76417),
  compareLoose: __webpack_require__(62804),
  compareBuild: __webpack_require__(92156),
  sort: __webpack_require__(61426),
  rsort: __webpack_require__(8701),
  gt: __webpack_require__(84123),
  lt: __webpack_require__(80194),
  eq: __webpack_require__(91898),
  neq: __webpack_require__(6017),
  gte: __webpack_require__(15522),
  lte: __webpack_require__(77520),
  cmp: __webpack_require__(75098),
  coerce: __webpack_require__(13466),
  Comparator: __webpack_require__(91532),
  Range: __webpack_require__(9828),
  satisfies: __webpack_require__(6055),
  toComparators: __webpack_require__(52706),
  maxSatisfying: __webpack_require__(20579),
  minSatisfying: __webpack_require__(10832),
  minVersion: __webpack_require__(34179),
  validRange: __webpack_require__(2098),
  outside: __webpack_require__(60420),
  gtr: __webpack_require__(9380),
  ltr: __webpack_require__(33323),
  intersects: __webpack_require__(27008),
  simplifyRange: __webpack_require__(75297),
  subset: __webpack_require__(7863),
}


/***/ }),

/***/ 42293:
/***/ ((module) => {

// Note: this is the semver.org version of the spec that it implements
// Not necessarily the package version of this code.
const SEMVER_SPEC_VERSION = '2.0.0'

const MAX_LENGTH = 256
const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
  /* istanbul ignore next */ 9007199254740991

// Max safe segment length for coercion.
const MAX_SAFE_COMPONENT_LENGTH = 16

module.exports = {
  SEMVER_SPEC_VERSION,
  MAX_LENGTH,
  MAX_SAFE_INTEGER,
  MAX_SAFE_COMPONENT_LENGTH
}


/***/ }),

/***/ 50427:
/***/ ((module) => {

const debug = (
  typeof process === 'object' &&
  process.env &&
  process.env.NODE_DEBUG &&
  /\bsemver\b/i.test(process.env.NODE_DEBUG)
) ? (...args) => console.error('SEMVER', ...args)
  : () => {}

module.exports = debug


/***/ }),

/***/ 92463:
/***/ ((module) => {

const numeric = /^[0-9]+$/
const compareIdentifiers = (a, b) => {
  const anum = numeric.test(a)
  const bnum = numeric.test(b)

  if (anum && bnum) {
    a = +a
    b = +b
  }

  return a === b ? 0
    : (anum && !bnum) ? -1
    : (bnum && !anum) ? 1
    : a < b ? -1
    : 1
}

const rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)

module.exports = {
  compareIdentifiers,
  rcompareIdentifiers
}


/***/ }),

/***/ 40785:
/***/ ((module) => {

// parse out just the options we care about so we always get a consistent
// obj with keys in a consistent order.
const opts = ['includePrerelease', 'loose', 'rtl']
const parseOptions = options =>
  !options ? {}
  : typeof options !== 'object' ? { loose: true }
  : opts.filter(k => options[k]).reduce((options, k) => {
    options[k] = true
    return options
  }, {})
module.exports = parseOptions


/***/ }),

/***/ 9523:
/***/ ((module, exports, __webpack_require__) => {

const { MAX_SAFE_COMPONENT_LENGTH } = __webpack_require__(42293)
const debug = __webpack_require__(50427)
exports = module.exports = {}

// The actual regexps go on exports.re
const re = exports.re = []
const src = exports.src = []
const t = exports.t = {}
let R = 0

const createToken = (name, value, isGlobal) => {
  const index = R++
  debug(index, value)
  t[name] = index
  src[index] = value
  re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
}

// The following Regular Expressions can be used for tokenizing,
// validating, and parsing SemVer version strings.

// ## Numeric Identifier
// A single `0`, or a non-zero digit followed by zero or more digits.

createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*')
createToken('NUMERICIDENTIFIERLOOSE', '[0-9]+')

// ## Non-numeric Identifier
// Zero or more digits, followed by a letter or hyphen, and then zero or
// more letters, digits, or hyphens.

createToken('NONNUMERICIDENTIFIER', '\\d*[a-zA-Z-][a-zA-Z0-9-]*')

// ## Main Version
// Three dot-separated numeric identifiers.

createToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\.` +
                   `(${src[t.NUMERICIDENTIFIER]})\\.` +
                   `(${src[t.NUMERICIDENTIFIER]})`)

createToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
                        `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
                        `(${src[t.NUMERICIDENTIFIERLOOSE]})`)

// ## Pre-release Version Identifier
// A numeric identifier, or a non-numeric identifier.

createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]
}|${src[t.NONNUMERICIDENTIFIER]})`)

createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]
}|${src[t.NONNUMERICIDENTIFIER]})`)

// ## Pre-release Version
// Hyphen, followed by one or more dot-separated pre-release version
// identifiers.

createToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]
}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`)

createToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]
}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)

// ## Build Metadata Identifier
// Any combination of digits, letters, or hyphens.

createToken('BUILDIDENTIFIER', '[0-9A-Za-z-]+')

// ## Build Metadata
// Plus sign, followed by one or more period-separated build metadata
// identifiers.

createToken('BUILD', `(?:\\+(${src[t.BUILDIDENTIFIER]
}(?:\\.${src[t.BUILDIDENTIFIER]})*))`)

// ## Full Version String
// A main version, followed optionally by a pre-release version and
// build metadata.

// Note that the only major, minor, patch, and pre-release sections of
// the version string are capturing groups.  The build metadata is not a
// capturing group, because it should not ever be used in version
// comparison.

createToken('FULLPLAIN', `v?${src[t.MAINVERSION]
}${src[t.PRERELEASE]}?${
  src[t.BUILD]}?`)

createToken('FULL', `^${src[t.FULLPLAIN]}$`)

// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.
// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty
// common in the npm registry.
createToken('LOOSEPLAIN', `[v=\\s]*${src[t.MAINVERSIONLOOSE]
}${src[t.PRERELEASELOOSE]}?${
  src[t.BUILD]}?`)

createToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)

createToken('GTLT', '((?:<|>)?=?)')

// Something like "2.*" or "1.2.x".
// Note that "x.x" is a valid xRange identifer, meaning "any version"
// Only the first item is strictly required.
createToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`)
createToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`)

createToken('XRANGEPLAIN', `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})` +
                   `(?:\\.(${src[t.XRANGEIDENTIFIER]})` +
                   `(?:\\.(${src[t.XRANGEIDENTIFIER]})` +
                   `(?:${src[t.PRERELEASE]})?${
                     src[t.BUILD]}?` +
                   `)?)?`)

createToken('XRANGEPLAINLOOSE', `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +
                        `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +
                        `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +
                        `(?:${src[t.PRERELEASELOOSE]})?${
                          src[t.BUILD]}?` +
                        `)?)?`)

createToken('XRANGE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`)
createToken('XRANGELOOSE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`)

// Coercion.
// Extract anything that could conceivably be a part of a valid semver
createToken('COERCE', `${'(^|[^\\d])' +
              '(\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +
              `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +
              `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +
              `(?:$|[^\\d])`)
createToken('COERCERTL', src[t.COERCE], true)

// Tilde ranges.
// Meaning is "reasonably at or greater than"
createToken('LONETILDE', '(?:~>?)')

createToken('TILDETRIM', `(\\s*)${src[t.LONETILDE]}\\s+`, true)
exports.tildeTrimReplace = '$1~'

createToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)
createToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)

// Caret ranges.
// Meaning is "at least and backwards compatible with"
createToken('LONECARET', '(?:\\^)')

createToken('CARETTRIM', `(\\s*)${src[t.LONECARET]}\\s+`, true)
exports.caretTrimReplace = '$1^'

createToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)
createToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)

// A simple gt/lt/eq thing, or just "" to indicate "any version"
createToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`)
createToken('COMPARATOR', `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`)

// An expression to strip any whitespace between the gtlt and the thing
// it modifies, so that `> 1.2.3` ==> `>1.2.3`
createToken('COMPARATORTRIM', `(\\s*)${src[t.GTLT]
}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)
exports.comparatorTrimReplace = '$1$2$3'

// Something like `1.2.3 - 1.2.4`
// Note that these all use the loose form, because they'll be
// checked against either the strict or loose comparator form
// later.
createToken('HYPHENRANGE', `^\\s*(${src[t.XRANGEPLAIN]})` +
                   `\\s+-\\s+` +
                   `(${src[t.XRANGEPLAIN]})` +
                   `\\s*$`)

createToken('HYPHENRANGELOOSE', `^\\s*(${src[t.XRANGEPLAINLOOSE]})` +
                        `\\s+-\\s+` +
                        `(${src[t.XRANGEPLAINLOOSE]})` +
                        `\\s*$`)

// Star ranges basically just allow anything at all.
createToken('STAR', '(<|>)?=?\\s*\\*')
// >=0.0.0 is like a star
createToken('GTE0', '^\\s*>=\\s*0\.0\.0\\s*$')
createToken('GTE0PRE', '^\\s*>=\\s*0\.0\.0-0\\s*$')


/***/ }),

/***/ 9380:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Determine if version is greater than all the versions possible in the range.
const outside = __webpack_require__(60420)
const gtr = (version, range, options) => outside(version, range, '>', options)
module.exports = gtr


/***/ }),

/***/ 27008:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Range = __webpack_require__(9828)
const intersects = (r1, r2, options) => {
  r1 = new Range(r1, options)
  r2 = new Range(r2, options)
  return r1.intersects(r2)
}
module.exports = intersects


/***/ }),

/***/ 33323:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const outside = __webpack_require__(60420)
// Determine if version is less than all the versions possible in the range
const ltr = (version, range, options) => outside(version, range, '<', options)
module.exports = ltr


/***/ }),

/***/ 20579:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const Range = __webpack_require__(9828)

const maxSatisfying = (versions, range, options) => {
  let max = null
  let maxSV = null
  let rangeObj = null
  try {
    rangeObj = new Range(range, options)
  } catch (er) {
    return null
  }
  versions.forEach((v) => {
    if (rangeObj.test(v)) {
      // satisfies(v, range, options)
      if (!max || maxSV.compare(v) === -1) {
        // compare(max, v, true)
        max = v
        maxSV = new SemVer(max, options)
      }
    }
  })
  return max
}
module.exports = maxSatisfying


/***/ }),

/***/ 10832:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const Range = __webpack_require__(9828)
const minSatisfying = (versions, range, options) => {
  let min = null
  let minSV = null
  let rangeObj = null
  try {
    rangeObj = new Range(range, options)
  } catch (er) {
    return null
  }
  versions.forEach((v) => {
    if (rangeObj.test(v)) {
      // satisfies(v, range, options)
      if (!min || minSV.compare(v) === 1) {
        // compare(min, v, true)
        min = v
        minSV = new SemVer(min, options)
      }
    }
  })
  return min
}
module.exports = minSatisfying


/***/ }),

/***/ 34179:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const Range = __webpack_require__(9828)
const gt = __webpack_require__(84123)

const minVersion = (range, loose) => {
  range = new Range(range, loose)

  let minver = new SemVer('0.0.0')
  if (range.test(minver)) {
    return minver
  }

  minver = new SemVer('0.0.0-0')
  if (range.test(minver)) {
    return minver
  }

  minver = null
  for (let i = 0; i < range.set.length; ++i) {
    const comparators = range.set[i]

    let setMin = null
    comparators.forEach((comparator) => {
      // Clone to avoid manipulating the comparator's semver object.
      const compver = new SemVer(comparator.semver.version)
      switch (comparator.operator) {
        case '>':
          if (compver.prerelease.length === 0) {
            compver.patch++
          } else {
            compver.prerelease.push(0)
          }
          compver.raw = compver.format()
          /* fallthrough */
        case '':
        case '>=':
          if (!setMin || gt(compver, setMin)) {
            setMin = compver
          }
          break
        case '<':
        case '<=':
          /* Ignore maximum versions */
          break
        /* istanbul ignore next */
        default:
          throw new Error(`Unexpected operation: ${comparator.operator}`)
      }
    })
    if (setMin && (!minver || gt(minver, setMin)))
      minver = setMin
  }

  if (minver && range.test(minver)) {
    return minver
  }

  return null
}
module.exports = minVersion


/***/ }),

/***/ 60420:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const SemVer = __webpack_require__(48088)
const Comparator = __webpack_require__(91532)
const {ANY} = Comparator
const Range = __webpack_require__(9828)
const satisfies = __webpack_require__(6055)
const gt = __webpack_require__(84123)
const lt = __webpack_require__(80194)
const lte = __webpack_require__(77520)
const gte = __webpack_require__(15522)

const outside = (version, range, hilo, options) => {
  version = new SemVer(version, options)
  range = new Range(range, options)

  let gtfn, ltefn, ltfn, comp, ecomp
  switch (hilo) {
    case '>':
      gtfn = gt
      ltefn = lte
      ltfn = lt
      comp = '>'
      ecomp = '>='
      break
    case '<':
      gtfn = lt
      ltefn = gte
      ltfn = gt
      comp = '<'
      ecomp = '<='
      break
    default:
      throw new TypeError('Must provide a hilo val of "<" or ">"')
  }

  // If it satisfies the range it is not outside
  if (satisfies(version, range, options)) {
    return false
  }

  // From now on, variable terms are as if we're in "gtr" mode.
  // but note that everything is flipped for the "ltr" function.

  for (let i = 0; i < range.set.length; ++i) {
    const comparators = range.set[i]

    let high = null
    let low = null

    comparators.forEach((comparator) => {
      if (comparator.semver === ANY) {
        comparator = new Comparator('>=0.0.0')
      }
      high = high || comparator
      low = low || comparator
      if (gtfn(comparator.semver, high.semver, options)) {
        high = comparator
      } else if (ltfn(comparator.semver, low.semver, options)) {
        low = comparator
      }
    })

    // If the edge version comparator has a operator then our version
    // isn't outside it
    if (high.operator === comp || high.operator === ecomp) {
      return false
    }

    // If the lowest version comparator has an operator and our version
    // is less than it then it isn't higher than the range
    if ((!low.operator || low.operator === comp) &&
        ltefn(version, low.semver)) {
      return false
    } else if (low.operator === ecomp && ltfn(version, low.semver)) {
      return false
    }
  }
  return true
}

module.exports = outside


/***/ }),

/***/ 75297:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// given a set of versions and a range, create a "simplified" range
// that includes the same versions that the original range does
// If the original range is shorter than the simplified one, return that.
const satisfies = __webpack_require__(6055)
const compare = __webpack_require__(44309)
module.exports = (versions, range, options) => {
  const set = []
  let min = null
  let prev = null
  const v = versions.sort((a, b) => compare(a, b, options))
  for (const version of v) {
    const included = satisfies(version, range, options)
    if (included) {
      prev = version
      if (!min)
        min = version
    } else {
      if (prev) {
        set.push([min, prev])
      }
      prev = null
      min = null
    }
  }
  if (min)
    set.push([min, null])

  const ranges = []
  for (const [min, max] of set) {
    if (min === max)
      ranges.push(min)
    else if (!max && min === v[0])
      ranges.push('*')
    else if (!max)
      ranges.push(`>=${min}`)
    else if (min === v[0])
      ranges.push(`<=${max}`)
    else
      ranges.push(`${min} - ${max}`)
  }
  const simplified = ranges.join(' || ')
  const original = typeof range.raw === 'string' ? range.raw : String(range)
  return simplified.length < original.length ? simplified : range
}


/***/ }),

/***/ 7863:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Range = __webpack_require__(9828)
const Comparator = __webpack_require__(91532)
const { ANY } = Comparator
const satisfies = __webpack_require__(6055)
const compare = __webpack_require__(44309)

// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:
// - Every simple range `r1, r2, ...` is a null set, OR
// - Every simple range `r1, r2, ...` which is not a null set is a subset of
//   some `R1, R2, ...`
//
// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:
// - If c is only the ANY comparator
//   - If C is only the ANY comparator, return true
//   - Else if in prerelease mode, return false
//   - else replace c with `[>=0.0.0]`
// - If C is only the ANY comparator
//   - if in prerelease mode, return true
//   - else replace C with `[>=0.0.0]`
// - Let EQ be the set of = comparators in c
// - If EQ is more than one, return true (null set)
// - Let GT be the highest > or >= comparator in c
// - Let LT be the lowest < or <= comparator in c
// - If GT and LT, and GT.semver > LT.semver, return true (null set)
// - If any C is a = range, and GT or LT are set, return false
// - If EQ
//   - If GT, and EQ does not satisfy GT, return true (null set)
//   - If LT, and EQ does not satisfy LT, return true (null set)
//   - If EQ satisfies every C, return true
//   - Else return false
// - If GT
//   - If GT.semver is lower than any > or >= comp in C, return false
//   - If GT is >=, and GT.semver does not satisfy every C, return false
//   - If GT.semver has a prerelease, and not in prerelease mode
//     - If no C has a prerelease and the GT.semver tuple, return false
// - If LT
//   - If LT.semver is greater than any < or <= comp in C, return false
//   - If LT is <=, and LT.semver does not satisfy every C, return false
//   - If GT.semver has a prerelease, and not in prerelease mode
//     - If no C has a prerelease and the LT.semver tuple, return false
// - Else return true

const subset = (sub, dom, options = {}) => {
  if (sub === dom)
    return true

  sub = new Range(sub, options)
  dom = new Range(dom, options)
  let sawNonNull = false

  OUTER: for (const simpleSub of sub.set) {
    for (const simpleDom of dom.set) {
      const isSub = simpleSubset(simpleSub, simpleDom, options)
      sawNonNull = sawNonNull || isSub !== null
      if (isSub)
        continue OUTER
    }
    // the null set is a subset of everything, but null simple ranges in
    // a complex range should be ignored.  so if we saw a non-null range,
    // then we know this isn't a subset, but if EVERY simple range was null,
    // then it is a subset.
    if (sawNonNull)
      return false
  }
  return true
}

const simpleSubset = (sub, dom, options) => {
  if (sub === dom)
    return true

  if (sub.length === 1 && sub[0].semver === ANY) {
    if (dom.length === 1 && dom[0].semver === ANY)
      return true
    else if (options.includePrerelease)
      sub = [ new Comparator('>=0.0.0-0') ]
    else
      sub = [ new Comparator('>=0.0.0') ]
  }

  if (dom.length === 1 && dom[0].semver === ANY) {
    if (options.includePrerelease)
      return true
    else
      dom = [ new Comparator('>=0.0.0') ]
  }

  const eqSet = new Set()
  let gt, lt
  for (const c of sub) {
    if (c.operator === '>' || c.operator === '>=')
      gt = higherGT(gt, c, options)
    else if (c.operator === '<' || c.operator === '<=')
      lt = lowerLT(lt, c, options)
    else
      eqSet.add(c.semver)
  }

  if (eqSet.size > 1)
    return null

  let gtltComp
  if (gt && lt) {
    gtltComp = compare(gt.semver, lt.semver, options)
    if (gtltComp > 0)
      return null
    else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<='))
      return null
  }

  // will iterate one or zero times
  for (const eq of eqSet) {
    if (gt && !satisfies(eq, String(gt), options))
      return null

    if (lt && !satisfies(eq, String(lt), options))
      return null

    for (const c of dom) {
      if (!satisfies(eq, String(c), options))
        return false
    }

    return true
  }

  let higher, lower
  let hasDomLT, hasDomGT
  // if the subset has a prerelease, we need a comparator in the superset
  // with the same tuple and a prerelease, or it's not a subset
  let needDomLTPre = lt &&
    !options.includePrerelease &&
    lt.semver.prerelease.length ? lt.semver : false
  let needDomGTPre = gt &&
    !options.includePrerelease &&
    gt.semver.prerelease.length ? gt.semver : false
  // exception: <1.2.3-0 is the same as <1.2.3
  if (needDomLTPre && needDomLTPre.prerelease.length === 1 &&
      lt.operator === '<' && needDomLTPre.prerelease[0] === 0) {
    needDomLTPre = false
  }

  for (const c of dom) {
    hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='
    hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='
    if (gt) {
      if (needDomGTPre) {
        if (c.semver.prerelease && c.semver.prerelease.length &&
            c.semver.major === needDomGTPre.major &&
            c.semver.minor === needDomGTPre.minor &&
            c.semver.patch === needDomGTPre.patch) {
          needDomGTPre = false
        }
      }
      if (c.operator === '>' || c.operator === '>=') {
        higher = higherGT(gt, c, options)
        if (higher === c && higher !== gt)
          return false
      } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options))
        return false
    }
    if (lt) {
      if (needDomLTPre) {
        if (c.semver.prerelease && c.semver.prerelease.length &&
            c.semver.major === needDomLTPre.major &&
            c.semver.minor === needDomLTPre.minor &&
            c.semver.patch === needDomLTPre.patch) {
          needDomLTPre = false
        }
      }
      if (c.operator === '<' || c.operator === '<=') {
        lower = lowerLT(lt, c, options)
        if (lower === c && lower !== lt)
          return false
      } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options))
        return false
    }
    if (!c.operator && (lt || gt) && gtltComp !== 0)
      return false
  }

  // if there was a < or >, and nothing in the dom, then must be false
  // UNLESS it was limited by another range in the other direction.
  // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0
  if (gt && hasDomLT && !lt && gtltComp !== 0)
    return false

  if (lt && hasDomGT && !gt && gtltComp !== 0)
    return false

  // we needed a prerelease range in a specific tuple, but didn't get one
  // then this isn't a subset.  eg >=1.2.3-pre is not a subset of >=1.0.0,
  // because it includes prereleases in the 1.2.3 tuple
  if (needDomGTPre || needDomLTPre)
    return false

  return true
}

// >=1.2.3 is lower than >1.2.3
const higherGT = (a, b, options) => {
  if (!a)
    return b
  const comp = compare(a.semver, b.semver, options)
  return comp > 0 ? a
    : comp < 0 ? b
    : b.operator === '>' && a.operator === '>=' ? b
    : a
}

// <=1.2.3 is higher than <1.2.3
const lowerLT = (a, b, options) => {
  if (!a)
    return b
  const comp = compare(a.semver, b.semver, options)
  return comp < 0 ? a
    : comp > 0 ? b
    : b.operator === '<' && a.operator === '<=' ? b
    : a
}

module.exports = subset


/***/ }),

/***/ 52706:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Range = __webpack_require__(9828)

// Mostly just for testing and legacy API reasons
const toComparators = (range, options) =>
  new Range(range, options).set
    .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))

module.exports = toComparators


/***/ }),

/***/ 2098:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Range = __webpack_require__(9828)
const validRange = (range, options) => {
  try {
    // Return '*' instead of '' so that truthiness works.
    // This will throw if it's invalid anyway
    return new Range(range, options).range || '*'
  } catch (er) {
    return null
  }
}
module.exports = validRange


/***/ }),

/***/ 45123:
/***/ ((module) => {

module.exports = [
  'cat',
  'cd',
  'chmod',
  'cp',
  'dirs',
  'echo',
  'exec',
  'find',
  'grep',
  'head',
  'ln',
  'ls',
  'mkdir',
  'mv',
  'pwd',
  'rm',
  'sed',
  'set',
  'sort',
  'tail',
  'tempdir',
  'test',
  'to',
  'toEnd',
  'touch',
  'uniq',
  'which',
];


/***/ }),

/***/ 33516:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

//
// ShellJS
// Unix shell commands on top of Node's API
//
// Copyright (c) 2012 Artur Adib
// http://github.com/shelljs/shelljs
//

function __ncc_wildcard$0 (arg) {
  if (arg === "cat.js" || arg === "cat") return __webpack_require__(30271);
  else if (arg === "cd.js" || arg === "cd") return __webpack_require__(42051);
  else if (arg === "chmod.js" || arg === "chmod") return __webpack_require__(24975);
  else if (arg === "common.js" || arg === "common") return __webpack_require__(53687);
  else if (arg === "cp.js" || arg === "cp") return __webpack_require__(34932);
  else if (arg === "dirs.js" || arg === "dirs") return __webpack_require__(41178);
  else if (arg === "echo.js" || arg === "echo") return __webpack_require__(10243);
  else if (arg === "error.js" || arg === "error") return __webpack_require__(10232);
  else if (arg === "exec-child.js" || arg === "exec-child") return __webpack_require__(69607);
  else if (arg === "exec.js" || arg === "exec") return __webpack_require__(10896);
  else if (arg === "find.js" || arg === "find") return __webpack_require__(47838);
  else if (arg === "grep.js" || arg === "grep") return __webpack_require__(17417);
  else if (arg === "head.js" || arg === "head") return __webpack_require__(6613);
  else if (arg === "ln.js" || arg === "ln") return __webpack_require__(15787);
  else if (arg === "ls.js" || arg === "ls") return __webpack_require__(35561);
  else if (arg === "mkdir.js" || arg === "mkdir") return __webpack_require__(72695);
  else if (arg === "mv.js" || arg === "mv") return __webpack_require__(39849);
  else if (arg === "popd.js" || arg === "popd") return __webpack_require__(50227);
  else if (arg === "pushd.js" || arg === "pushd") return __webpack_require__(44177);
  else if (arg === "pwd.js" || arg === "pwd") return __webpack_require__(58553);
  else if (arg === "rm.js" || arg === "rm") return __webpack_require__(22830);
  else if (arg === "sed.js" || arg === "sed") return __webpack_require__(25899);
  else if (arg === "set.js" || arg === "set") return __webpack_require__(11411);
  else if (arg === "sort.js" || arg === "sort") return __webpack_require__(72116);
  else if (arg === "tail.js" || arg === "tail") return __webpack_require__(42284);
  else if (arg === "tempdir.js" || arg === "tempdir") return __webpack_require__(76150);
  else if (arg === "test.js" || arg === "test") return __webpack_require__(79723);
  else if (arg === "to.js" || arg === "to") return __webpack_require__(71961);
  else if (arg === "toEnd.js" || arg === "toEnd") return __webpack_require__(33736);
  else if (arg === "touch.js" || arg === "touch") return __webpack_require__(28358);
  else if (arg === "uniq.js" || arg === "uniq") return __webpack_require__(77286);
  else if (arg === "which.js" || arg === "which") return __webpack_require__(64766);
}
var common = __webpack_require__(53687);

//@
//@ All commands run synchronously, unless otherwise stated.
//@ All commands accept standard bash globbing characters (`*`, `?`, etc.),
//@ compatible with the [node `glob` module](https://github.com/isaacs/node-glob).
//@
//@ For less-commonly used commands and features, please check out our [wiki
//@ page](https://github.com/shelljs/shelljs/wiki).
//@

// Include the docs for all the default commands
//@commands

// Load all default commands
__webpack_require__(45123).forEach(function (command) {
  __ncc_wildcard$0(command);
});

//@
//@ ### exit(code)
//@
//@ Exits the current process with the given exit `code`.
exports.exit = process.exit;

//@include ./src/error
exports.error = __webpack_require__(10232);

//@include ./src/common
exports.ShellString = common.ShellString;

//@
//@ ### env['VAR_NAME']
//@
//@ Object containing environment variables (both getter and setter). Shortcut
//@ to `process.env`.
exports.env = process.env;

//@
//@ ### Pipes
//@
//@ Examples:
//@
//@ ```javascript
//@ grep('foo', 'file1.txt', 'file2.txt').sed(/o/g, 'a').to('output.txt');
//@ echo('files with o\'s in the name:\n' + ls().grep('o'));
//@ cat('test.js').exec('node'); // pipe to exec() call
//@ ```
//@
//@ Commands can send their output to another command in a pipe-like fashion.
//@ `sed`, `grep`, `cat`, `exec`, `to`, and `toEnd` can appear on the right-hand
//@ side of a pipe. Pipes can be chained.

//@
//@ ## Configuration
//@

exports.config = common.config;

//@
//@ ### config.silent
//@
//@ Example:
//@
//@ ```javascript
//@ var sh = require('shelljs');
//@ var silentState = sh.config.silent; // save old silent state
//@ sh.config.silent = true;
//@ /* ... */
//@ sh.config.silent = silentState; // restore old silent state
//@ ```
//@
//@ Suppresses all command output if `true`, except for `echo()` calls.
//@ Default is `false`.

//@
//@ ### config.fatal
//@
//@ Example:
//@
//@ ```javascript
//@ require('shelljs/global');
//@ config.fatal = true; // or set('-e');
//@ cp('this_file_does_not_exist', '/dev/null'); // throws Error here
//@ /* more commands... */
//@ ```
//@
//@ If `true`, the script will throw a Javascript error when any shell.js
//@ command encounters an error. Default is `false`. This is analogous to
//@ Bash's `set -e`.

//@
//@ ### config.verbose
//@
//@ Example:
//@
//@ ```javascript
//@ config.verbose = true; // or set('-v');
//@ cd('dir/');
//@ rm('-rf', 'foo.txt', 'bar.txt');
//@ exec('echo hello');
//@ ```
//@
//@ Will print each command as follows:
//@
//@ ```
//@ cd dir/
//@ rm -rf foo.txt bar.txt
//@ exec echo hello
//@ ```

//@
//@ ### config.globOptions
//@
//@ Example:
//@
//@ ```javascript
//@ config.globOptions = {nodir: true};
//@ ```
//@
//@ Use this value for calls to `glob.sync()` instead of the default options.

//@
//@ ### config.reset()
//@
//@ Example:
//@
//@ ```javascript
//@ var shell = require('shelljs');
//@ // Make changes to shell.config, and do stuff...
//@ /* ... */
//@ shell.config.reset(); // reset to original state
//@ // Do more stuff, but with original settings
//@ /* ... */
//@ ```
//@
//@ Reset `shell.config` to the defaults:
//@
//@ ```javascript
//@ {
//@   fatal: false,
//@   globOptions: {},
//@   maxdepth: 255,
//@   noglob: false,
//@   silent: false,
//@   verbose: false,
//@ }
//@ ```


/***/ }),

/***/ 30271:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('cat', _cat, {
  canReceivePipe: true,
  cmdOptions: {
    'n': 'number',
  },
});

//@
//@ ### cat([options,] file [, file ...])
//@ ### cat([options,] file_array)
//@
//@ Available options:
//@
//@ + `-n`: number all output lines
//@
//@ Examples:
//@
//@ ```javascript
//@ var str = cat('file*.txt');
//@ var str = cat('file1', 'file2');
//@ var str = cat(['file1', 'file2']); // same as above
//@ ```
//@
//@ Returns a string containing the given file, or a concatenated string
//@ containing the files if more than one file is given (a new line character is
//@ introduced between each file).
function _cat(options, files) {
  var cat = common.readFromPipe();

  if (!files && !cat) common.error('no paths given');

  files = [].slice.call(arguments, 1);

  files.forEach(function (file) {
    if (!fs.existsSync(file)) {
      common.error('no such file or directory: ' + file);
    } else if (common.statFollowLinks(file).isDirectory()) {
      common.error(file + ': Is a directory');
    }

    cat += fs.readFileSync(file, 'utf8');
  });

  if (options.number) {
    cat = addNumbers(cat);
  }

  return cat;
}
module.exports = _cat;

function addNumbers(cat) {
  var lines = cat.split('\n');
  var lastLine = lines.pop();

  lines = lines.map(function (line, i) {
    return numberedLine(i + 1, line);
  });

  if (lastLine.length) {
    lastLine = numberedLine(lines.length + 1, lastLine);
  }
  lines.push(lastLine);

  return lines.join('\n');
}

function numberedLine(n, line) {
  // GNU cat use six pad start number + tab. See http://lingrok.org/xref/coreutils/src/cat.c#57
  // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart
  var number = ('     ' + n).slice(-6) + '\t';
  return number + line;
}


/***/ }),

/***/ 42051:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var os = __webpack_require__(12087);
var common = __webpack_require__(53687);

common.register('cd', _cd, {});

//@
//@ ### cd([dir])
//@
//@ Changes to directory `dir` for the duration of the script. Changes to home
//@ directory if no argument is supplied.
function _cd(options, dir) {
  if (!dir) dir = os.homedir();

  if (dir === '-') {
    if (!process.env.OLDPWD) {
      common.error('could not find previous directory');
    } else {
      dir = process.env.OLDPWD;
    }
  }

  try {
    var curDir = process.cwd();
    process.chdir(dir);
    process.env.OLDPWD = curDir;
  } catch (e) {
    // something went wrong, let's figure out the error
    var err;
    try {
      common.statFollowLinks(dir); // if this succeeds, it must be some sort of file
      err = 'not a directory: ' + dir;
    } catch (e2) {
      err = 'no such file or directory: ' + dir;
    }
    if (err) common.error(err);
  }
  return '';
}
module.exports = _cd;


/***/ }),

/***/ 24975:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);

var PERMS = (function (base) {
  return {
    OTHER_EXEC: base.EXEC,
    OTHER_WRITE: base.WRITE,
    OTHER_READ: base.READ,

    GROUP_EXEC: base.EXEC << 3,
    GROUP_WRITE: base.WRITE << 3,
    GROUP_READ: base.READ << 3,

    OWNER_EXEC: base.EXEC << 6,
    OWNER_WRITE: base.WRITE << 6,
    OWNER_READ: base.READ << 6,

    // Literal octal numbers are apparently not allowed in "strict" javascript.
    STICKY: parseInt('01000', 8),
    SETGID: parseInt('02000', 8),
    SETUID: parseInt('04000', 8),

    TYPE_MASK: parseInt('0770000', 8),
  };
}({
  EXEC: 1,
  WRITE: 2,
  READ: 4,
}));

common.register('chmod', _chmod, {
});

//@
//@ ### chmod([options,] octal_mode || octal_string, file)
//@ ### chmod([options,] symbolic_mode, file)
//@
//@ Available options:
//@
//@ + `-v`: output a diagnostic for every file processed//@
//@ + `-c`: like verbose, but report only when a change is made//@
//@ + `-R`: change files and directories recursively//@
//@
//@ Examples:
//@
//@ ```javascript
//@ chmod(755, '/Users/brandon');
//@ chmod('755', '/Users/brandon'); // same as above
//@ chmod('u+x', '/Users/brandon');
//@ chmod('-R', 'a-w', '/Users/brandon');
//@ ```
//@
//@ Alters the permissions of a file or directory by either specifying the
//@ absolute permissions in octal form or expressing the changes in symbols.
//@ This command tries to mimic the POSIX behavior as much as possible.
//@ Notable exceptions:
//@
//@ + In symbolic modes, `a-r` and `-r` are identical.  No consideration is
//@   given to the `umask`.
//@ + There is no "quiet" option, since default behavior is to run silent.
function _chmod(options, mode, filePattern) {
  if (!filePattern) {
    if (options.length > 0 && options.charAt(0) === '-') {
      // Special case where the specified file permissions started with - to subtract perms, which
      // get picked up by the option parser as command flags.
      // If we are down by one argument and options starts with -, shift everything over.
      [].unshift.call(arguments, '');
    } else {
      common.error('You must specify a file.');
    }
  }

  options = common.parseOptions(options, {
    'R': 'recursive',
    'c': 'changes',
    'v': 'verbose',
  });

  filePattern = [].slice.call(arguments, 2);

  var files;

  // TODO: replace this with a call to common.expand()
  if (options.recursive) {
    files = [];
    filePattern.forEach(function addFile(expandedFile) {
      var stat = common.statNoFollowLinks(expandedFile);

      if (!stat.isSymbolicLink()) {
        files.push(expandedFile);

        if (stat.isDirectory()) {  // intentionally does not follow symlinks.
          fs.readdirSync(expandedFile).forEach(function (child) {
            addFile(expandedFile + '/' + child);
          });
        }
      }
    });
  } else {
    files = filePattern;
  }

  files.forEach(function innerChmod(file) {
    file = path.resolve(file);
    if (!fs.existsSync(file)) {
      common.error('File not found: ' + file);
    }

    // When recursing, don't follow symlinks.
    if (options.recursive && common.statNoFollowLinks(file).isSymbolicLink()) {
      return;
    }

    var stat = common.statFollowLinks(file);
    var isDir = stat.isDirectory();
    var perms = stat.mode;
    var type = perms & PERMS.TYPE_MASK;

    var newPerms = perms;

    if (isNaN(parseInt(mode, 8))) {
      // parse options
      mode.split(',').forEach(function (symbolicMode) {
        var pattern = /([ugoa]*)([=\+-])([rwxXst]*)/i;
        var matches = pattern.exec(symbolicMode);

        if (matches) {
          var applyTo = matches[1];
          var operator = matches[2];
          var change = matches[3];

          var changeOwner = applyTo.indexOf('u') !== -1 || applyTo === 'a' || applyTo === '';
          var changeGroup = applyTo.indexOf('g') !== -1 || applyTo === 'a' || applyTo === '';
          var changeOther = applyTo.indexOf('o') !== -1 || applyTo === 'a' || applyTo === '';

          var changeRead = change.indexOf('r') !== -1;
          var changeWrite = change.indexOf('w') !== -1;
          var changeExec = change.indexOf('x') !== -1;
          var changeExecDir = change.indexOf('X') !== -1;
          var changeSticky = change.indexOf('t') !== -1;
          var changeSetuid = change.indexOf('s') !== -1;

          if (changeExecDir && isDir) {
            changeExec = true;
          }

          var mask = 0;
          if (changeOwner) {
            mask |= (changeRead ? PERMS.OWNER_READ : 0) + (changeWrite ? PERMS.OWNER_WRITE : 0) + (changeExec ? PERMS.OWNER_EXEC : 0) + (changeSetuid ? PERMS.SETUID : 0);
          }
          if (changeGroup) {
            mask |= (changeRead ? PERMS.GROUP_READ : 0) + (changeWrite ? PERMS.GROUP_WRITE : 0) + (changeExec ? PERMS.GROUP_EXEC : 0) + (changeSetuid ? PERMS.SETGID : 0);
          }
          if (changeOther) {
            mask |= (changeRead ? PERMS.OTHER_READ : 0) + (changeWrite ? PERMS.OTHER_WRITE : 0) + (changeExec ? PERMS.OTHER_EXEC : 0);
          }

          // Sticky bit is special - it's not tied to user, group or other.
          if (changeSticky) {
            mask |= PERMS.STICKY;
          }

          switch (operator) {
            case '+':
              newPerms |= mask;
              break;

            case '-':
              newPerms &= ~mask;
              break;

            case '=':
              newPerms = type + mask;

              // According to POSIX, when using = to explicitly set the
              // permissions, setuid and setgid can never be cleared.
              if (common.statFollowLinks(file).isDirectory()) {
                newPerms |= (PERMS.SETUID + PERMS.SETGID) & perms;
              }
              break;
            default:
              common.error('Could not recognize operator: `' + operator + '`');
          }

          if (options.verbose) {
            console.log(file + ' -> ' + newPerms.toString(8));
          }

          if (perms !== newPerms) {
            if (!options.verbose && options.changes) {
              console.log(file + ' -> ' + newPerms.toString(8));
            }
            fs.chmodSync(file, newPerms);
            perms = newPerms; // for the next round of changes!
          }
        } else {
          common.error('Invalid symbolic mode change: ' + symbolicMode);
        }
      });
    } else {
      // they gave us a full number
      newPerms = type + parseInt(mode, 8);

      // POSIX rules are that setuid and setgid can only be added using numeric
      // form, but not cleared.
      if (common.statFollowLinks(file).isDirectory()) {
        newPerms |= (PERMS.SETUID + PERMS.SETGID) & perms;
      }

      fs.chmodSync(file, newPerms);
    }
  });
  return '';
}
module.exports = _chmod;


/***/ }),

/***/ 53687:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
// Ignore warning about 'new String()'
/* eslint no-new-wrappers: 0 */


var os = __webpack_require__(12087);
var fs = __webpack_require__(35747);
var glob = __webpack_require__(91957);
var shell = __webpack_require__(33516);

var shellMethods = Object.create(shell);

exports.extend = Object.assign;

// Check if we're running under electron
var isElectron = Boolean(process.versions.electron);

// Module globals (assume no execPath by default)
var DEFAULT_CONFIG = {
  fatal: false,
  globOptions: {},
  maxdepth: 255,
  noglob: false,
  silent: false,
  verbose: false,
  execPath: null,
  bufLength: 64 * 1024, // 64KB
};

var config = {
  reset: function () {
    Object.assign(this, DEFAULT_CONFIG);
    if (!isElectron) {
      this.execPath = process.execPath;
    }
  },
  resetForTesting: function () {
    this.reset();
    this.silent = true;
  },
};

config.reset();
exports.config = config;

// Note: commands should generally consider these as read-only values.
var state = {
  error: null,
  errorCode: 0,
  currentCmd: 'shell.js',
};
exports.state = state;

delete process.env.OLDPWD; // initially, there's no previous directory

// Reliably test if something is any sort of javascript object
function isObject(a) {
  return typeof a === 'object' && a !== null;
}
exports.isObject = isObject;

function log() {
  /* istanbul ignore next */
  if (!config.silent) {
    console.error.apply(console, arguments);
  }
}
exports.log = log;

// Converts strings to be equivalent across all platforms. Primarily responsible
// for making sure we use '/' instead of '\' as path separators, but this may be
// expanded in the future if necessary
function convertErrorOutput(msg) {
  if (typeof msg !== 'string') {
    throw new TypeError('input must be a string');
  }
  return msg.replace(/\\/g, '/');
}
exports.convertErrorOutput = convertErrorOutput;

// Shows error message. Throws if config.fatal is true
function error(msg, _code, options) {
  // Validate input
  if (typeof msg !== 'string') throw new Error('msg must be a string');

  var DEFAULT_OPTIONS = {
    continue: false,
    code: 1,
    prefix: state.currentCmd + ': ',
    silent: false,
  };

  if (typeof _code === 'number' && isObject(options)) {
    options.code = _code;
  } else if (isObject(_code)) { // no 'code'
    options = _code;
  } else if (typeof _code === 'number') { // no 'options'
    options = { code: _code };
  } else if (typeof _code !== 'number') { // only 'msg'
    options = {};
  }
  options = Object.assign({}, DEFAULT_OPTIONS, options);

  if (!state.errorCode) state.errorCode = options.code;

  var logEntry = convertErrorOutput(options.prefix + msg);
  state.error = state.error ? state.error + '\n' : '';
  state.error += logEntry;

  // Throw an error, or log the entry
  if (config.fatal) throw new Error(logEntry);
  if (msg.length > 0 && !options.silent) log(logEntry);

  if (!options.continue) {
    throw {
      msg: 'earlyExit',
      retValue: (new ShellString('', state.error, state.errorCode)),
    };
  }
}
exports.error = error;

//@
//@ ### ShellString(str)
//@
//@ Examples:
//@
//@ ```javascript
//@ var foo = ShellString('hello world');
//@ ```
//@
//@ Turns a regular string into a string-like object similar to what each
//@ command returns. This has special methods, like `.to()` and `.toEnd()`.
function ShellString(stdout, stderr, code) {
  var that;
  if (stdout instanceof Array) {
    that = stdout;
    that.stdout = stdout.join('\n');
    if (stdout.length > 0) that.stdout += '\n';
  } else {
    that = new String(stdout);
    that.stdout = stdout;
  }
  that.stderr = stderr;
  that.code = code;
  // A list of all commands that can appear on the right-hand side of a pipe
  // (populated by calls to common.wrap())
  pipeMethods.forEach(function (cmd) {
    that[cmd] = shellMethods[cmd].bind(that);
  });
  return that;
}

exports.ShellString = ShellString;

// Returns {'alice': true, 'bob': false} when passed a string and dictionary as follows:
//   parseOptions('-a', {'a':'alice', 'b':'bob'});
// Returns {'reference': 'string-value', 'bob': false} when passed two dictionaries of the form:
//   parseOptions({'-r': 'string-value'}, {'r':'reference', 'b':'bob'});
// Throws an error when passed a string that does not start with '-':
//   parseOptions('a', {'a':'alice'}); // throws
function parseOptions(opt, map, errorOptions) {
  // Validate input
  if (typeof opt !== 'string' && !isObject(opt)) {
    throw new Error('options must be strings or key-value pairs');
  } else if (!isObject(map)) {
    throw new Error('parseOptions() internal error: map must be an object');
  } else if (errorOptions && !isObject(errorOptions)) {
    throw new Error('parseOptions() internal error: errorOptions must be object');
  }

  if (opt === '--') {
    // This means there are no options.
    return {};
  }

  // All options are false by default
  var options = {};
  Object.keys(map).forEach(function (letter) {
    var optName = map[letter];
    if (optName[0] !== '!') {
      options[optName] = false;
    }
  });

  if (opt === '') return options; // defaults

  if (typeof opt === 'string') {
    if (opt[0] !== '-') {
      throw new Error("Options string must start with a '-'");
    }

    // e.g. chars = ['R', 'f']
    var chars = opt.slice(1).split('');

    chars.forEach(function (c) {
      if (c in map) {
        var optionName = map[c];
        if (optionName[0] === '!') {
          options[optionName.slice(1)] = false;
        } else {
          options[optionName] = true;
        }
      } else {
        error('option not recognized: ' + c, errorOptions || {});
      }
    });
  } else { // opt is an Object
    Object.keys(opt).forEach(function (key) {
      // key is a string of the form '-r', '-d', etc.
      var c = key[1];
      if (c in map) {
        var optionName = map[c];
        options[optionName] = opt[key]; // assign the given value
      } else {
        error('option not recognized: ' + c, errorOptions || {});
      }
    });
  }
  return options;
}
exports.parseOptions = parseOptions;

// Expands wildcards with matching (ie. existing) file names.
// For example:
//   expand(['file*.js']) = ['file1.js', 'file2.js', ...]
//   (if the files 'file1.js', 'file2.js', etc, exist in the current dir)
function expand(list) {
  if (!Array.isArray(list)) {
    throw new TypeError('must be an array');
  }
  var expanded = [];
  list.forEach(function (listEl) {
    // Don't expand non-strings
    if (typeof listEl !== 'string') {
      expanded.push(listEl);
    } else {
      var ret;
      try {
        ret = glob.sync(listEl, config.globOptions);
        // if nothing matched, interpret the string literally
        ret = ret.length > 0 ? ret : [listEl];
      } catch (e) {
        // if glob fails, interpret the string literally
        ret = [listEl];
      }
      expanded = expanded.concat(ret);
    }
  });
  return expanded;
}
exports.expand = expand;

// Normalizes Buffer creation, using Buffer.alloc if possible.
// Also provides a good default buffer length for most use cases.
var buffer = typeof Buffer.alloc === 'function' ?
  function (len) {
    return Buffer.alloc(len || config.bufLength);
  } :
  function (len) {
    return new Buffer(len || config.bufLength);
  };
exports.buffer = buffer;

// Normalizes _unlinkSync() across platforms to match Unix behavior, i.e.
// file can be unlinked even if it's read-only, see https://github.com/joyent/node/issues/3006
function unlinkSync(file) {
  try {
    fs.unlinkSync(file);
  } catch (e) {
    // Try to override file permission
    /* istanbul ignore next */
    if (e.code === 'EPERM') {
      fs.chmodSync(file, '0666');
      fs.unlinkSync(file);
    } else {
      throw e;
    }
  }
}
exports.unlinkSync = unlinkSync;

// wrappers around common.statFollowLinks and common.statNoFollowLinks that clarify intent
// and improve readability
function statFollowLinks() {
  return fs.statSync.apply(fs, arguments);
}
exports.statFollowLinks = statFollowLinks;

function statNoFollowLinks() {
  return fs.lstatSync.apply(fs, arguments);
}
exports.statNoFollowLinks = statNoFollowLinks;

// e.g. 'shelljs_a5f185d0443ca...'
function randomFileName() {
  function randomHash(count) {
    if (count === 1) {
      return parseInt(16 * Math.random(), 10).toString(16);
    }
    var hash = '';
    for (var i = 0; i < count; i++) {
      hash += randomHash(1);
    }
    return hash;
  }

  return 'shelljs_' + randomHash(20);
}
exports.randomFileName = randomFileName;

// Common wrapper for all Unix-like commands that performs glob expansion,
// command-logging, and other nice things
function wrap(cmd, fn, options) {
  options = options || {};
  return function () {
    var retValue = null;

    state.currentCmd = cmd;
    state.error = null;
    state.errorCode = 0;

    try {
      var args = [].slice.call(arguments, 0);

      // Log the command to stderr, if appropriate
      if (config.verbose) {
        console.error.apply(console, [cmd].concat(args));
      }

      // If this is coming from a pipe, let's set the pipedValue (otherwise, set
      // it to the empty string)
      state.pipedValue = (this && typeof this.stdout === 'string') ? this.stdout : '';

      if (options.unix === false) { // this branch is for exec()
        retValue = fn.apply(this, args);
      } else { // and this branch is for everything else
        if (isObject(args[0]) && args[0].constructor.name === 'Object') {
          // a no-op, allowing the syntax `touch({'-r': file}, ...)`
        } else if (args.length === 0 || typeof args[0] !== 'string' || args[0].length <= 1 || args[0][0] !== '-') {
          args.unshift(''); // only add dummy option if '-option' not already present
        }

        // flatten out arrays that are arguments, to make the syntax:
        //    `cp([file1, file2, file3], dest);`
        // equivalent to:
        //    `cp(file1, file2, file3, dest);`
        args = args.reduce(function (accum, cur) {
          if (Array.isArray(cur)) {
            return accum.concat(cur);
          }
          accum.push(cur);
          return accum;
        }, []);

        // Convert ShellStrings (basically just String objects) to regular strings
        args = args.map(function (arg) {
          if (isObject(arg) && arg.constructor.name === 'String') {
            return arg.toString();
          }
          return arg;
        });

        // Expand the '~' if appropriate
        var homeDir = os.homedir();
        args = args.map(function (arg) {
          if (typeof arg === 'string' && arg.slice(0, 2) === '~/' || arg === '~') {
            return arg.replace(/^~/, homeDir);
          }
          return arg;
        });

        // Perform glob-expansion on all arguments after globStart, but preserve
        // the arguments before it (like regexes for sed and grep)
        if (!config.noglob && options.allowGlobbing === true) {
          args = args.slice(0, options.globStart).concat(expand(args.slice(options.globStart)));
        }

        try {
          // parse options if options are provided
          if (isObject(options.cmdOptions)) {
            args[0] = parseOptions(args[0], options.cmdOptions);
          }

          retValue = fn.apply(this, args);
        } catch (e) {
          /* istanbul ignore else */
          if (e.msg === 'earlyExit') {
            retValue = e.retValue;
          } else {
            throw e; // this is probably a bug that should be thrown up the call stack
          }
        }
      }
    } catch (e) {
      /* istanbul ignore next */
      if (!state.error) {
        // If state.error hasn't been set it's an error thrown by Node, not us - probably a bug...
        e.name = 'ShellJSInternalError';
        throw e;
      }
      if (config.fatal) throw e;
    }

    if (options.wrapOutput &&
        (typeof retValue === 'string' || Array.isArray(retValue))) {
      retValue = new ShellString(retValue, state.error, state.errorCode);
    }

    state.currentCmd = 'shell.js';
    return retValue;
  };
} // wrap
exports.wrap = wrap;

// This returns all the input that is piped into the current command (or the
// empty string, if this isn't on the right-hand side of a pipe
function _readFromPipe() {
  return state.pipedValue;
}
exports.readFromPipe = _readFromPipe;

var DEFAULT_WRAP_OPTIONS = {
  allowGlobbing: true,
  canReceivePipe: false,
  cmdOptions: null,
  globStart: 1,
  pipeOnly: false,
  wrapOutput: true,
  unix: true,
};

// This is populated during plugin registration
var pipeMethods = [];

// Register a new ShellJS command
function _register(name, implementation, wrapOptions) {
  wrapOptions = wrapOptions || {};

  // Validate options
  Object.keys(wrapOptions).forEach(function (option) {
    if (!DEFAULT_WRAP_OPTIONS.hasOwnProperty(option)) {
      throw new Error("Unknown option '" + option + "'");
    }
    if (typeof wrapOptions[option] !== typeof DEFAULT_WRAP_OPTIONS[option]) {
      throw new TypeError("Unsupported type '" + typeof wrapOptions[option] +
        "' for option '" + option + "'");
    }
  });

  // If an option isn't specified, use the default
  wrapOptions = Object.assign({}, DEFAULT_WRAP_OPTIONS, wrapOptions);

  if (shell.hasOwnProperty(name)) {
    throw new Error('Command `' + name + '` already exists');
  }

  if (wrapOptions.pipeOnly) {
    wrapOptions.canReceivePipe = true;
    shellMethods[name] = wrap(name, implementation, wrapOptions);
  } else {
    shell[name] = wrap(name, implementation, wrapOptions);
  }

  if (wrapOptions.canReceivePipe) {
    pipeMethods.push(name);
  }
}
exports.register = _register;


/***/ }),

/***/ 34932:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);
var common = __webpack_require__(53687);

common.register('cp', _cp, {
  cmdOptions: {
    'f': '!no_force',
    'n': 'no_force',
    'u': 'update',
    'R': 'recursive',
    'r': 'recursive',
    'L': 'followsymlink',
    'P': 'noFollowsymlink',
  },
  wrapOutput: false,
});

// Buffered file copy, synchronous
// (Using readFileSync() + writeFileSync() could easily cause a memory overflow
//  with large files)
function copyFileSync(srcFile, destFile, options) {
  if (!fs.existsSync(srcFile)) {
    common.error('copyFileSync: no such file or directory: ' + srcFile);
  }

  var isWindows = process.platform === 'win32';

  // Check the mtimes of the files if the '-u' flag is provided
  try {
    if (options.update && common.statFollowLinks(srcFile).mtime < fs.statSync(destFile).mtime) {
      return;
    }
  } catch (e) {
    // If we're here, destFile probably doesn't exist, so just do a normal copy
  }

  if (common.statNoFollowLinks(srcFile).isSymbolicLink() && !options.followsymlink) {
    try {
      common.statNoFollowLinks(destFile);
      common.unlinkSync(destFile); // re-link it
    } catch (e) {
      // it doesn't exist, so no work needs to be done
    }

    var symlinkFull = fs.readlinkSync(srcFile);
    fs.symlinkSync(symlinkFull, destFile, isWindows ? 'junction' : null);
  } else {
    var buf = common.buffer();
    var bufLength = buf.length;
    var bytesRead = bufLength;
    var pos = 0;
    var fdr = null;
    var fdw = null;

    try {
      fdr = fs.openSync(srcFile, 'r');
    } catch (e) {
      /* istanbul ignore next */
      common.error('copyFileSync: could not read src file (' + srcFile + ')');
    }

    try {
      fdw = fs.openSync(destFile, 'w');
    } catch (e) {
      /* istanbul ignore next */
      common.error('copyFileSync: could not write to dest file (code=' + e.code + '):' + destFile);
    }

    while (bytesRead === bufLength) {
      bytesRead = fs.readSync(fdr, buf, 0, bufLength, pos);
      fs.writeSync(fdw, buf, 0, bytesRead);
      pos += bytesRead;
    }

    fs.closeSync(fdr);
    fs.closeSync(fdw);

    fs.chmodSync(destFile, common.statFollowLinks(srcFile).mode);
  }
}

// Recursively copies 'sourceDir' into 'destDir'
// Adapted from https://github.com/ryanmcgrath/wrench-js
//
// Copyright (c) 2010 Ryan McGrath
// Copyright (c) 2012 Artur Adib
//
// Licensed under the MIT License
// http://www.opensource.org/licenses/mit-license.php
function cpdirSyncRecursive(sourceDir, destDir, currentDepth, opts) {
  if (!opts) opts = {};

  // Ensure there is not a run away recursive copy
  if (currentDepth >= common.config.maxdepth) return;
  currentDepth++;

  var isWindows = process.platform === 'win32';

  // Create the directory where all our junk is moving to; read the mode of the
  // source directory and mirror it
  try {
    fs.mkdirSync(destDir);
  } catch (e) {
    // if the directory already exists, that's okay
    if (e.code !== 'EEXIST') throw e;
  }

  var files = fs.readdirSync(sourceDir);

  for (var i = 0; i < files.length; i++) {
    var srcFile = sourceDir + '/' + files[i];
    var destFile = destDir + '/' + files[i];
    var srcFileStat = common.statNoFollowLinks(srcFile);

    var symlinkFull;
    if (opts.followsymlink) {
      if (cpcheckcycle(sourceDir, srcFile)) {
        // Cycle link found.
        console.error('Cycle link found.');
        symlinkFull = fs.readlinkSync(srcFile);
        fs.symlinkSync(symlinkFull, destFile, isWindows ? 'junction' : null);
        continue;
      }
    }
    if (srcFileStat.isDirectory()) {
      /* recursion this thing right on back. */
      cpdirSyncRecursive(srcFile, destFile, currentDepth, opts);
    } else if (srcFileStat.isSymbolicLink() && !opts.followsymlink) {
      symlinkFull = fs.readlinkSync(srcFile);
      try {
        common.statNoFollowLinks(destFile);
        common.unlinkSync(destFile); // re-link it
      } catch (e) {
        // it doesn't exist, so no work needs to be done
      }
      fs.symlinkSync(symlinkFull, destFile, isWindows ? 'junction' : null);
    } else if (srcFileStat.isSymbolicLink() && opts.followsymlink) {
      srcFileStat = common.statFollowLinks(srcFile);
      if (srcFileStat.isDirectory()) {
        cpdirSyncRecursive(srcFile, destFile, currentDepth, opts);
      } else {
        copyFileSync(srcFile, destFile, opts);
      }
    } else {
      /* At this point, we've hit a file actually worth copying... so copy it on over. */
      if (fs.existsSync(destFile) && opts.no_force) {
        common.log('skipping existing file: ' + files[i]);
      } else {
        copyFileSync(srcFile, destFile, opts);
      }
    }
  } // for files

  // finally change the mode for the newly created directory (otherwise, we
  // couldn't add files to a read-only directory).
  var checkDir = common.statFollowLinks(sourceDir);
  fs.chmodSync(destDir, checkDir.mode);
} // cpdirSyncRecursive

// Checks if cureent file was created recently
function checkRecentCreated(sources, index) {
  var lookedSource = sources[index];
  return sources.slice(0, index).some(function (src) {
    return path.basename(src) === path.basename(lookedSource);
  });
}

function cpcheckcycle(sourceDir, srcFile) {
  var srcFileStat = common.statNoFollowLinks(srcFile);
  if (srcFileStat.isSymbolicLink()) {
    // Do cycle check. For example:
    //   $ mkdir -p 1/2/3/4
    //   $ cd  1/2/3/4
    //   $ ln -s ../../3 link
    //   $ cd ../../../..
    //   $ cp -RL 1 copy
    var cyclecheck = common.statFollowLinks(srcFile);
    if (cyclecheck.isDirectory()) {
      var sourcerealpath = fs.realpathSync(sourceDir);
      var symlinkrealpath = fs.realpathSync(srcFile);
      var re = new RegExp(symlinkrealpath);
      if (re.test(sourcerealpath)) {
        return true;
      }
    }
  }
  return false;
}

//@
//@ ### cp([options,] source [, source ...], dest)
//@ ### cp([options,] source_array, dest)
//@
//@ Available options:
//@
//@ + `-f`: force (default behavior)
//@ + `-n`: no-clobber
//@ + `-u`: only copy if `source` is newer than `dest`
//@ + `-r`, `-R`: recursive
//@ + `-L`: follow symlinks
//@ + `-P`: don't follow symlinks
//@
//@ Examples:
//@
//@ ```javascript
//@ cp('file1', 'dir1');
//@ cp('-R', 'path/to/dir/', '~/newCopy/');
//@ cp('-Rf', '/tmp/*', '/usr/local/*', '/home/tmp');
//@ cp('-Rf', ['/tmp/*', '/usr/local/*'], '/home/tmp'); // same as above
//@ ```
//@
//@ Copies files.
function _cp(options, sources, dest) {
  // If we're missing -R, it actually implies -L (unless -P is explicit)
  if (options.followsymlink) {
    options.noFollowsymlink = false;
  }
  if (!options.recursive && !options.noFollowsymlink) {
    options.followsymlink = true;
  }

  // Get sources, dest
  if (arguments.length < 3) {
    common.error('missing <source> and/or <dest>');
  } else {
    sources = [].slice.call(arguments, 1, arguments.length - 1);
    dest = arguments[arguments.length - 1];
  }

  var destExists = fs.existsSync(dest);
  var destStat = destExists && common.statFollowLinks(dest);

  // Dest is not existing dir, but multiple sources given
  if ((!destExists || !destStat.isDirectory()) && sources.length > 1) {
    common.error('dest is not a directory (too many sources)');
  }

  // Dest is an existing file, but -n is given
  if (destExists && destStat.isFile() && options.no_force) {
    return new common.ShellString('', '', 0);
  }

  sources.forEach(function (src, srcIndex) {
    if (!fs.existsSync(src)) {
      if (src === '') src = "''"; // if src was empty string, display empty string
      common.error('no such file or directory: ' + src, { continue: true });
      return; // skip file
    }
    var srcStat = common.statFollowLinks(src);
    if (!options.noFollowsymlink && srcStat.isDirectory()) {
      if (!options.recursive) {
        // Non-Recursive
        common.error("omitting directory '" + src + "'", { continue: true });
      } else {
        // Recursive
        // 'cp /a/source dest' should create 'source' in 'dest'
        var newDest = (destStat && destStat.isDirectory()) ?
            path.join(dest, path.basename(src)) :
            dest;

        try {
          common.statFollowLinks(path.dirname(dest));
          cpdirSyncRecursive(src, newDest, 0, { no_force: options.no_force, followsymlink: options.followsymlink });
        } catch (e) {
          /* istanbul ignore next */
          common.error("cannot create directory '" + dest + "': No such file or directory");
        }
      }
    } else {
      // If here, src is a file

      // When copying to '/path/dir':
      //    thisDest = '/path/dir/file1'
      var thisDest = dest;
      if (destStat && destStat.isDirectory()) {
        thisDest = path.normalize(dest + '/' + path.basename(src));
      }

      var thisDestExists = fs.existsSync(thisDest);
      if (thisDestExists && checkRecentCreated(sources, srcIndex)) {
        // cannot overwrite file created recently in current execution, but we want to continue copying other files
        if (!options.no_force) {
          common.error("will not overwrite just-created '" + thisDest + "' with '" + src + "'", { continue: true });
        }
        return;
      }

      if (thisDestExists && options.no_force) {
        return; // skip file
      }

      if (path.relative(src, thisDest) === '') {
        // a file cannot be copied to itself, but we want to continue copying other files
        common.error("'" + thisDest + "' and '" + src + "' are the same file", { continue: true });
        return;
      }

      copyFileSync(src, thisDest, options);
    }
  }); // forEach(src)

  return new common.ShellString('', common.state.error, common.state.errorCode);
}
module.exports = _cp;


/***/ }),

/***/ 41178:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var _cd = __webpack_require__(42051);
var path = __webpack_require__(85622);

common.register('dirs', _dirs, {
  wrapOutput: false,
});
common.register('pushd', _pushd, {
  wrapOutput: false,
});
common.register('popd', _popd, {
  wrapOutput: false,
});

// Pushd/popd/dirs internals
var _dirStack = [];

function _isStackIndex(index) {
  return (/^[\-+]\d+$/).test(index);
}

function _parseStackIndex(index) {
  if (_isStackIndex(index)) {
    if (Math.abs(index) < _dirStack.length + 1) { // +1 for pwd
      return (/^-/).test(index) ? Number(index) - 1 : Number(index);
    }
    common.error(index + ': directory stack index out of range');
  } else {
    common.error(index + ': invalid number');
  }
}

function _actualDirStack() {
  return [process.cwd()].concat(_dirStack);
}

//@
//@ ### pushd([options,] [dir | '-N' | '+N'])
//@
//@ Available options:
//@
//@ + `-n`: Suppresses the normal change of directory when adding directories to the stack, so that only the stack is manipulated.
//@ + `-q`: Supresses output to the console.
//@
//@ Arguments:
//@
//@ + `dir`: Sets the current working directory to the top of the stack, then executes the equivalent of `cd dir`.
//@ + `+N`: Brings the Nth directory (counting from the left of the list printed by dirs, starting with zero) to the top of the list by rotating the stack.
//@ + `-N`: Brings the Nth directory (counting from the right of the list printed by dirs, starting with zero) to the top of the list by rotating the stack.
//@
//@ Examples:
//@
//@ ```javascript
//@ // process.cwd() === '/usr'
//@ pushd('/etc'); // Returns /etc /usr
//@ pushd('+1');   // Returns /usr /etc
//@ ```
//@
//@ Save the current directory on the top of the directory stack and then `cd` to `dir`. With no arguments, `pushd` exchanges the top two directories. Returns an array of paths in the stack.
function _pushd(options, dir) {
  if (_isStackIndex(options)) {
    dir = options;
    options = '';
  }

  options = common.parseOptions(options, {
    'n': 'no-cd',
    'q': 'quiet',
  });

  var dirs = _actualDirStack();

  if (dir === '+0') {
    return dirs; // +0 is a noop
  } else if (!dir) {
    if (dirs.length > 1) {
      dirs = dirs.splice(1, 1).concat(dirs);
    } else {
      return common.error('no other directory');
    }
  } else if (_isStackIndex(dir)) {
    var n = _parseStackIndex(dir);
    dirs = dirs.slice(n).concat(dirs.slice(0, n));
  } else {
    if (options['no-cd']) {
      dirs.splice(1, 0, dir);
    } else {
      dirs.unshift(dir);
    }
  }

  if (options['no-cd']) {
    dirs = dirs.slice(1);
  } else {
    dir = path.resolve(dirs.shift());
    _cd('', dir);
  }

  _dirStack = dirs;
  return _dirs(options.quiet ? '-q' : '');
}
exports.pushd = _pushd;

//@
//@
//@ ### popd([options,] ['-N' | '+N'])
//@
//@ Available options:
//@
//@ + `-n`: Suppress the normal directory change when removing directories from the stack, so that only the stack is manipulated.
//@ + `-q`: Supresses output to the console.
//@
//@ Arguments:
//@
//@ + `+N`: Removes the Nth directory (counting from the left of the list printed by dirs), starting with zero.
//@ + `-N`: Removes the Nth directory (counting from the right of the list printed by dirs), starting with zero.
//@
//@ Examples:
//@
//@ ```javascript
//@ echo(process.cwd()); // '/usr'
//@ pushd('/etc');       // '/etc /usr'
//@ echo(process.cwd()); // '/etc'
//@ popd();              // '/usr'
//@ echo(process.cwd()); // '/usr'
//@ ```
//@
//@ When no arguments are given, `popd` removes the top directory from the stack and performs a `cd` to the new top directory. The elements are numbered from 0, starting at the first directory listed with dirs (i.e., `popd` is equivalent to `popd +0`). Returns an array of paths in the stack.
function _popd(options, index) {
  if (_isStackIndex(options)) {
    index = options;
    options = '';
  }

  options = common.parseOptions(options, {
    'n': 'no-cd',
    'q': 'quiet',
  });

  if (!_dirStack.length) {
    return common.error('directory stack empty');
  }

  index = _parseStackIndex(index || '+0');

  if (options['no-cd'] || index > 0 || _dirStack.length + index === 0) {
    index = index > 0 ? index - 1 : index;
    _dirStack.splice(index, 1);
  } else {
    var dir = path.resolve(_dirStack.shift());
    _cd('', dir);
  }

  return _dirs(options.quiet ? '-q' : '');
}
exports.popd = _popd;

//@
//@
//@ ### dirs([options | '+N' | '-N'])
//@
//@ Available options:
//@
//@ + `-c`: Clears the directory stack by deleting all of the elements.
//@ + `-q`: Supresses output to the console.
//@
//@ Arguments:
//@
//@ + `+N`: Displays the Nth directory (counting from the left of the list printed by dirs when invoked without options), starting with zero.
//@ + `-N`: Displays the Nth directory (counting from the right of the list printed by dirs when invoked without options), starting with zero.
//@
//@ Display the list of currently remembered directories. Returns an array of paths in the stack, or a single path if `+N` or `-N` was specified.
//@
//@ See also: `pushd`, `popd`
function _dirs(options, index) {
  if (_isStackIndex(options)) {
    index = options;
    options = '';
  }

  options = common.parseOptions(options, {
    'c': 'clear',
    'q': 'quiet',
  });

  if (options.clear) {
    _dirStack = [];
    return _dirStack;
  }

  var stack = _actualDirStack();

  if (index) {
    index = _parseStackIndex(index);

    if (index < 0) {
      index = stack.length + index;
    }

    if (!options.quiet) {
      common.log(stack[index]);
    }
    return stack[index];
  }

  if (!options.quiet) {
    common.log(stack.join(' '));
  }

  return stack;
}
exports.dirs = _dirs;


/***/ }),

/***/ 10243:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var format = __webpack_require__(31669).format;

var common = __webpack_require__(53687);

common.register('echo', _echo, {
  allowGlobbing: false,
});

//@
//@ ### echo([options,] string [, string ...])
//@
//@ Available options:
//@
//@ + `-e`: interpret backslash escapes (default)
//@ + `-n`: remove trailing newline from output
//@
//@ Examples:
//@
//@ ```javascript
//@ echo('hello world');
//@ var str = echo('hello world');
//@ echo('-n', 'no newline at end');
//@ ```
//@
//@ Prints `string` to stdout, and returns string with additional utility methods
//@ like `.to()`.
function _echo(opts) {
  // allow strings starting with '-', see issue #20
  var messages = [].slice.call(arguments, opts ? 0 : 1);
  var options = {};

  // If the first argument starts with '-', parse it as options string.
  // If parseOptions throws, it wasn't an options string.
  try {
    options = common.parseOptions(messages[0], {
      'e': 'escapes',
      'n': 'no_newline',
    }, {
      silent: true,
    });

    // Allow null to be echoed
    if (messages[0]) {
      messages.shift();
    }
  } catch (_) {
    // Clear out error if an error occurred
    common.state.error = null;
  }

  var output = format.apply(null, messages);

  // Add newline if -n is not passed.
  if (!options.no_newline) {
    output += '\n';
  }

  process.stdout.write(output);

  return output;
}

module.exports = _echo;


/***/ }),

/***/ 10232:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);

//@
//@ ### error()
//@
//@ Tests if error occurred in the last command. Returns a truthy value if an
//@ error returned, or a falsy value otherwise.
//@
//@ **Note**: do not rely on the
//@ return value to be an error message. If you need the last error message, use
//@ the `.stderr` attribute from the last command's return value instead.
function error() {
  return common.state.error;
}
module.exports = error;


/***/ }),

/***/ 69607:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* module decorator */ module = __webpack_require__.nmd(module);
if (require.main !== module) {
  throw new Error('This file should not be required');
}

var childProcess = __webpack_require__(63129);
var fs = __webpack_require__(35747);

var paramFilePath = process.argv[2];

var serializedParams = fs.readFileSync(paramFilePath, 'utf8');
var params = JSON.parse(serializedParams);

var cmd = params.command;
var execOptions = params.execOptions;
var pipe = params.pipe;
var stdoutFile = params.stdoutFile;
var stderrFile = params.stderrFile;

var c = childProcess.exec(cmd, execOptions, function (err) {
  if (!err) {
    process.exitCode = 0;
  } else if (err.code === undefined) {
    process.exitCode = 1;
  } else {
    process.exitCode = err.code;
  }
});

var stdoutStream = fs.createWriteStream(stdoutFile);
var stderrStream = fs.createWriteStream(stderrFile);

c.stdout.pipe(stdoutStream);
c.stderr.pipe(stderrStream);
c.stdout.pipe(process.stdout);
c.stderr.pipe(process.stderr);

if (pipe) {
  c.stdin.end(pipe);
}


/***/ }),

/***/ 10896:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var _tempDir = __webpack_require__(76150).tempDir;
var _pwd = __webpack_require__(58553);
var path = __webpack_require__(85622);
var fs = __webpack_require__(35747);
var child = __webpack_require__(63129);

var DEFAULT_MAXBUFFER_SIZE = 20 * 1024 * 1024;
var DEFAULT_ERROR_CODE = 1;

common.register('exec', _exec, {
  unix: false,
  canReceivePipe: true,
  wrapOutput: false,
});

// We use this function to run `exec` synchronously while also providing realtime
// output.
function execSync(cmd, opts, pipe) {
  if (!common.config.execPath) {
    common.error('Unable to find a path to the node binary. Please manually set config.execPath');
  }

  var tempDir = _tempDir();
  var paramsFile = path.resolve(tempDir + '/' + common.randomFileName());
  var stderrFile = path.resolve(tempDir + '/' + common.randomFileName());
  var stdoutFile = path.resolve(tempDir + '/' + common.randomFileName());

  opts = common.extend({
    silent: common.config.silent,
    cwd: _pwd().toString(),
    env: process.env,
    maxBuffer: DEFAULT_MAXBUFFER_SIZE,
    encoding: 'utf8',
  }, opts);

  if (fs.existsSync(paramsFile)) common.unlinkSync(paramsFile);
  if (fs.existsSync(stderrFile)) common.unlinkSync(stderrFile);
  if (fs.existsSync(stdoutFile)) common.unlinkSync(stdoutFile);

  opts.cwd = path.resolve(opts.cwd);

  var paramsToSerialize = {
    command: cmd,
    execOptions: opts,
    pipe: pipe,
    stdoutFile: stdoutFile,
    stderrFile: stderrFile,
  };

  fs.writeFileSync(paramsFile, JSON.stringify(paramsToSerialize), 'utf8');

  var execArgs = [
    __webpack_require__.ab + "exec-child.js",
    paramsFile,
  ];

  /* istanbul ignore else */
  if (opts.silent) {
    opts.stdio = 'ignore';
  } else {
    opts.stdio = [0, 1, 2];
  }

  var code = 0;

  // Welcome to the future
  try {
    // Bad things if we pass in a `shell` option to child_process.execFileSync,
    // so we need to explicitly remove it here.
    delete opts.shell;

    child.execFileSync(common.config.execPath, execArgs, opts);
  } catch (e) {
    // Commands with non-zero exit code raise an exception.
    code = e.status || DEFAULT_ERROR_CODE;
  }

  // fs.readFileSync uses buffer encoding by default, so call
  // it without the encoding option if the encoding is 'buffer'.
  // Also, if the exec timeout is too short for node to start up,
  // the files will not be created, so these calls will throw.
  var stdout = '';
  var stderr = '';
  if (opts.encoding === 'buffer') {
    stdout = fs.readFileSync(stdoutFile);
    stderr = fs.readFileSync(stderrFile);
  } else {
    stdout = fs.readFileSync(stdoutFile, opts.encoding);
    stderr = fs.readFileSync(stderrFile, opts.encoding);
  }

  // No biggie if we can't erase the files now -- they're in a temp dir anyway
  try { common.unlinkSync(paramsFile); } catch (e) {}
  try { common.unlinkSync(stderrFile); } catch (e) {}
  try { common.unlinkSync(stdoutFile); } catch (e) {}

  if (code !== 0) {
    // Note: `silent` should be unconditionally true to avoid double-printing
    // the command's stderr, and to avoid printing any stderr when the user has
    // set `shell.config.silent`.
    common.error(stderr, code, { continue: true, silent: true });
  }
  var obj = common.ShellString(stdout, stderr, code);
  return obj;
} // execSync()

// Wrapper around exec() to enable echoing output to console in real time
function execAsync(cmd, opts, pipe, callback) {
  opts = common.extend({
    silent: common.config.silent,
    cwd: _pwd().toString(),
    env: process.env,
    maxBuffer: DEFAULT_MAXBUFFER_SIZE,
    encoding: 'utf8',
  }, opts);

  var c = child.exec(cmd, opts, function (err, stdout, stderr) {
    if (callback) {
      if (!err) {
        callback(0, stdout, stderr);
      } else if (err.code === undefined) {
        // See issue #536
        /* istanbul ignore next */
        callback(1, stdout, stderr);
      } else {
        callback(err.code, stdout, stderr);
      }
    }
  });

  if (pipe) c.stdin.end(pipe);

  if (!opts.silent) {
    c.stdout.pipe(process.stdout);
    c.stderr.pipe(process.stderr);
  }

  return c;
}

//@
//@ ### exec(command [, options] [, callback])
//@
//@ Available options:
//@
//@ + `async`: Asynchronous execution. If a callback is provided, it will be set to
//@   `true`, regardless of the passed value (default: `false`).
//@ + `silent`: Do not echo program output to console (default: `false`).
//@ + `encoding`: Character encoding to use. Affects the values returned to stdout and stderr, and
//@   what is written to stdout and stderr when not in silent mode (default: `'utf8'`).
//@ + and any option available to Node.js's
//@   [`child_process.exec()`](https://nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback)
//@
//@ Examples:
//@
//@ ```javascript
//@ var version = exec('node --version', {silent:true}).stdout;
//@
//@ var child = exec('some_long_running_process', {async:true});
//@ child.stdout.on('data', function(data) {
//@   /* ... do something with data ... */
//@ });
//@
//@ exec('some_long_running_process', function(code, stdout, stderr) {
//@   console.log('Exit code:', code);
//@   console.log('Program output:', stdout);
//@   console.log('Program stderr:', stderr);
//@ });
//@ ```
//@
//@ Executes the given `command` _synchronously_, unless otherwise specified.  When in synchronous
//@ mode, this returns a `ShellString` (compatible with ShellJS v0.6.x, which returns an object
//@ of the form `{ code:..., stdout:... , stderr:... }`). Otherwise, this returns the child process
//@ object, and the `callback` receives the arguments `(code, stdout, stderr)`.
//@
//@ Not seeing the behavior you want? `exec()` runs everything through `sh`
//@ by default (or `cmd.exe` on Windows), which differs from `bash`. If you
//@ need bash-specific behavior, try out the `{shell: 'path/to/bash'}` option.
function _exec(command, options, callback) {
  options = options || {};
  if (!command) common.error('must specify command');

  var pipe = common.readFromPipe();

  // Callback is defined instead of options.
  if (typeof options === 'function') {
    callback = options;
    options = { async: true };
  }

  // Callback is defined with options.
  if (typeof options === 'object' && typeof callback === 'function') {
    options.async = true;
  }

  options = common.extend({
    silent: common.config.silent,
    async: false,
  }, options);

  if (options.async) {
    return execAsync(command, options, pipe, callback);
  } else {
    return execSync(command, options, pipe);
  }
}
module.exports = _exec;


/***/ }),

/***/ 47838:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var path = __webpack_require__(85622);
var common = __webpack_require__(53687);
var _ls = __webpack_require__(35561);

common.register('find', _find, {});

//@
//@ ### find(path [, path ...])
//@ ### find(path_array)
//@
//@ Examples:
//@
//@ ```javascript
//@ find('src', 'lib');
//@ find(['src', 'lib']); // same as above
//@ find('.').filter(function(file) { return file.match(/\.js$/); });
//@ ```
//@
//@ Returns array of all files (however deep) in the given paths.
//@
//@ The main difference from `ls('-R', path)` is that the resulting file names
//@ include the base directories (e.g., `lib/resources/file1` instead of just `file1`).
function _find(options, paths) {
  if (!paths) {
    common.error('no path specified');
  } else if (typeof paths === 'string') {
    paths = [].slice.call(arguments, 1);
  }

  var list = [];

  function pushFile(file) {
    if (process.platform === 'win32') {
      file = file.replace(/\\/g, '/');
    }
    list.push(file);
  }

  // why not simply do `ls('-R', paths)`? because the output wouldn't give the base dirs
  // to get the base dir in the output, we need instead `ls('-R', 'dir/*')` for every directory

  paths.forEach(function (file) {
    var stat;
    try {
      stat = common.statFollowLinks(file);
    } catch (e) {
      common.error('no such file or directory: ' + file);
    }

    pushFile(file);

    if (stat.isDirectory()) {
      _ls({ recursive: true, all: true }, file).forEach(function (subfile) {
        pushFile(path.join(file, subfile));
      });
    }
  });

  return list;
}
module.exports = _find;


/***/ }),

/***/ 17417:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('grep', _grep, {
  globStart: 2, // don't glob-expand the regex
  canReceivePipe: true,
  cmdOptions: {
    'v': 'inverse',
    'l': 'nameOnly',
    'i': 'ignoreCase',
  },
});

//@
//@ ### grep([options,] regex_filter, file [, file ...])
//@ ### grep([options,] regex_filter, file_array)
//@
//@ Available options:
//@
//@ + `-v`: Invert `regex_filter` (only print non-matching lines).
//@ + `-l`: Print only filenames of matching files.
//@ + `-i`: Ignore case.
//@
//@ Examples:
//@
//@ ```javascript
//@ grep('-v', 'GLOBAL_VARIABLE', '*.js');
//@ grep('GLOBAL_VARIABLE', '*.js');
//@ ```
//@
//@ Reads input string from given files and returns a string containing all lines of the
//@ file that match the given `regex_filter`.
function _grep(options, regex, files) {
  // Check if this is coming from a pipe
  var pipe = common.readFromPipe();

  if (!files && !pipe) common.error('no paths given', 2);

  files = [].slice.call(arguments, 2);

  if (pipe) {
    files.unshift('-');
  }

  var grep = [];
  if (options.ignoreCase) {
    regex = new RegExp(regex, 'i');
  }
  files.forEach(function (file) {
    if (!fs.existsSync(file) && file !== '-') {
      common.error('no such file or directory: ' + file, 2, { continue: true });
      return;
    }

    var contents = file === '-' ? pipe : fs.readFileSync(file, 'utf8');
    if (options.nameOnly) {
      if (contents.match(regex)) {
        grep.push(file);
      }
    } else {
      var lines = contents.split('\n');
      lines.forEach(function (line) {
        var matched = line.match(regex);
        if ((options.inverse && !matched) || (!options.inverse && matched)) {
          grep.push(line);
        }
      });
    }
  });

  return grep.join('\n') + '\n';
}
module.exports = _grep;


/***/ }),

/***/ 6613:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('head', _head, {
  canReceivePipe: true,
  cmdOptions: {
    'n': 'numLines',
  },
});

// Reads |numLines| lines or the entire file, whichever is less.
function readSomeLines(file, numLines) {
  var buf = common.buffer();
  var bufLength = buf.length;
  var bytesRead = bufLength;
  var pos = 0;

  var fdr = fs.openSync(file, 'r');
  var numLinesRead = 0;
  var ret = '';
  while (bytesRead === bufLength && numLinesRead < numLines) {
    bytesRead = fs.readSync(fdr, buf, 0, bufLength, pos);
    var bufStr = buf.toString('utf8', 0, bytesRead);
    numLinesRead += bufStr.split('\n').length - 1;
    ret += bufStr;
    pos += bytesRead;
  }

  fs.closeSync(fdr);
  return ret;
}

//@
//@ ### head([{'-n': \<num\>},] file [, file ...])
//@ ### head([{'-n': \<num\>},] file_array)
//@
//@ Available options:
//@
//@ + `-n <num>`: Show the first `<num>` lines of the files
//@
//@ Examples:
//@
//@ ```javascript
//@ var str = head({'-n': 1}, 'file*.txt');
//@ var str = head('file1', 'file2');
//@ var str = head(['file1', 'file2']); // same as above
//@ ```
//@
//@ Read the start of a file.
function _head(options, files) {
  var head = [];
  var pipe = common.readFromPipe();

  if (!files && !pipe) common.error('no paths given');

  var idx = 1;
  if (options.numLines === true) {
    idx = 2;
    options.numLines = Number(arguments[1]);
  } else if (options.numLines === false) {
    options.numLines = 10;
  }
  files = [].slice.call(arguments, idx);

  if (pipe) {
    files.unshift('-');
  }

  var shouldAppendNewline = false;
  files.forEach(function (file) {
    if (file !== '-') {
      if (!fs.existsSync(file)) {
        common.error('no such file or directory: ' + file, { continue: true });
        return;
      } else if (common.statFollowLinks(file).isDirectory()) {
        common.error("error reading '" + file + "': Is a directory", {
          continue: true,
        });
        return;
      }
    }

    var contents;
    if (file === '-') {
      contents = pipe;
    } else if (options.numLines < 0) {
      contents = fs.readFileSync(file, 'utf8');
    } else {
      contents = readSomeLines(file, options.numLines);
    }

    var lines = contents.split('\n');
    var hasTrailingNewline = (lines[lines.length - 1] === '');
    if (hasTrailingNewline) {
      lines.pop();
    }
    shouldAppendNewline = (hasTrailingNewline || options.numLines < lines.length);

    head = head.concat(lines.slice(0, options.numLines));
  });

  if (shouldAppendNewline) {
    head.push(''); // to add a trailing newline once we join
  }
  return head.join('\n');
}
module.exports = _head;


/***/ }),

/***/ 15787:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);
var common = __webpack_require__(53687);

common.register('ln', _ln, {
  cmdOptions: {
    's': 'symlink',
    'f': 'force',
  },
});

//@
//@ ### ln([options,] source, dest)
//@
//@ Available options:
//@
//@ + `-s`: symlink
//@ + `-f`: force
//@
//@ Examples:
//@
//@ ```javascript
//@ ln('file', 'newlink');
//@ ln('-sf', 'file', 'existing');
//@ ```
//@
//@ Links `source` to `dest`. Use `-f` to force the link, should `dest` already exist.
function _ln(options, source, dest) {
  if (!source || !dest) {
    common.error('Missing <source> and/or <dest>');
  }

  source = String(source);
  var sourcePath = path.normalize(source).replace(RegExp(path.sep + '$'), '');
  var isAbsolute = (path.resolve(source) === sourcePath);
  dest = path.resolve(process.cwd(), String(dest));

  if (fs.existsSync(dest)) {
    if (!options.force) {
      common.error('Destination file exists', { continue: true });
    }

    fs.unlinkSync(dest);
  }

  if (options.symlink) {
    var isWindows = process.platform === 'win32';
    var linkType = isWindows ? 'file' : null;
    var resolvedSourcePath = isAbsolute ? sourcePath : path.resolve(process.cwd(), path.dirname(dest), source);
    if (!fs.existsSync(resolvedSourcePath)) {
      common.error('Source file does not exist', { continue: true });
    } else if (isWindows && common.statFollowLinks(resolvedSourcePath).isDirectory()) {
      linkType = 'junction';
    }

    try {
      fs.symlinkSync(linkType === 'junction' ? resolvedSourcePath : source, dest, linkType);
    } catch (err) {
      common.error(err.message);
    }
  } else {
    if (!fs.existsSync(source)) {
      common.error('Source file does not exist', { continue: true });
    }
    try {
      fs.linkSync(source, dest);
    } catch (err) {
      common.error(err.message);
    }
  }
  return '';
}
module.exports = _ln;


/***/ }),

/***/ 35561:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var path = __webpack_require__(85622);
var fs = __webpack_require__(35747);
var common = __webpack_require__(53687);
var glob = __webpack_require__(91957);

var globPatternRecursive = path.sep + '**';

common.register('ls', _ls, {
  cmdOptions: {
    'R': 'recursive',
    'A': 'all',
    'L': 'link',
    'a': 'all_deprecated',
    'd': 'directory',
    'l': 'long',
  },
});

//@
//@ ### ls([options,] [path, ...])
//@ ### ls([options,] path_array)
//@
//@ Available options:
//@
//@ + `-R`: recursive
//@ + `-A`: all files (include files beginning with `.`, except for `.` and `..`)
//@ + `-L`: follow symlinks
//@ + `-d`: list directories themselves, not their contents
//@ + `-l`: list objects representing each file, each with fields containing `ls
//@         -l` output fields. See
//@         [`fs.Stats`](https://nodejs.org/api/fs.html#fs_class_fs_stats)
//@         for more info
//@
//@ Examples:
//@
//@ ```javascript
//@ ls('projs/*.js');
//@ ls('-R', '/users/me', '/tmp');
//@ ls('-R', ['/users/me', '/tmp']); // same as above
//@ ls('-l', 'file.txt'); // { name: 'file.txt', mode: 33188, nlink: 1, ...}
//@ ```
//@
//@ Returns array of files in the given `path`, or files in
//@ the current directory if no `path` is  provided.
function _ls(options, paths) {
  if (options.all_deprecated) {
    // We won't support the -a option as it's hard to image why it's useful
    // (it includes '.' and '..' in addition to '.*' files)
    // For backwards compatibility we'll dump a deprecated message and proceed as before
    common.log('ls: Option -a is deprecated. Use -A instead');
    options.all = true;
  }

  if (!paths) {
    paths = ['.'];
  } else {
    paths = [].slice.call(arguments, 1);
  }

  var list = [];

  function pushFile(abs, relName, stat) {
    if (process.platform === 'win32') {
      relName = relName.replace(/\\/g, '/');
    }
    if (options.long) {
      stat = stat || (options.link ? common.statFollowLinks(abs) : common.statNoFollowLinks(abs));
      list.push(addLsAttributes(relName, stat));
    } else {
      // list.push(path.relative(rel || '.', file));
      list.push(relName);
    }
  }

  paths.forEach(function (p) {
    var stat;

    try {
      stat = options.link ? common.statFollowLinks(p) : common.statNoFollowLinks(p);
      // follow links to directories by default
      if (stat.isSymbolicLink()) {
        /* istanbul ignore next */
        // workaround for https://github.com/shelljs/shelljs/issues/795
        // codecov seems to have a bug that miscalculate this block as uncovered.
        // but according to nyc report this block does get covered.
        try {
          var _stat = common.statFollowLinks(p);
          if (_stat.isDirectory()) {
            stat = _stat;
          }
        } catch (_) {} // bad symlink, treat it like a file
      }
    } catch (e) {
      common.error('no such file or directory: ' + p, 2, { continue: true });
      return;
    }

    // If the stat succeeded
    if (stat.isDirectory() && !options.directory) {
      if (options.recursive) {
        // use glob, because it's simple
        glob.sync(p + globPatternRecursive, { dot: options.all, follow: options.link })
          .forEach(function (item) {
            // Glob pattern returns the directory itself and needs to be filtered out.
            if (path.relative(p, item)) {
              pushFile(item, path.relative(p, item));
            }
          });
      } else if (options.all) {
        // use fs.readdirSync, because it's fast
        fs.readdirSync(p).forEach(function (item) {
          pushFile(path.join(p, item), item);
        });
      } else {
        // use fs.readdirSync and then filter out secret files
        fs.readdirSync(p).forEach(function (item) {
          if (item[0] !== '.') {
            pushFile(path.join(p, item), item);
          }
        });
      }
    } else {
      pushFile(p, p, stat);
    }
  });

  // Add methods, to make this more compatible with ShellStrings
  return list;
}

function addLsAttributes(pathName, stats) {
  // Note: this object will contain more information than .toString() returns
  stats.name = pathName;
  stats.toString = function () {
    // Return a string resembling unix's `ls -l` format
    return [this.mode, this.nlink, this.uid, this.gid, this.size, this.mtime, this.name].join(' ');
  };
  return stats;
}

module.exports = _ls;


/***/ }),

/***/ 72695:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);

common.register('mkdir', _mkdir, {
  cmdOptions: {
    'p': 'fullpath',
  },
});

// Recursively creates `dir`
function mkdirSyncRecursive(dir) {
  var baseDir = path.dirname(dir);

  // Prevents some potential problems arising from malformed UNCs or
  // insufficient permissions.
  /* istanbul ignore next */
  if (baseDir === dir) {
    common.error('dirname() failed: [' + dir + ']');
  }

  // Base dir exists, no recursion necessary
  if (fs.existsSync(baseDir)) {
    fs.mkdirSync(dir, parseInt('0777', 8));
    return;
  }

  // Base dir does not exist, go recursive
  mkdirSyncRecursive(baseDir);

  // Base dir created, can create dir
  fs.mkdirSync(dir, parseInt('0777', 8));
}

//@
//@ ### mkdir([options,] dir [, dir ...])
//@ ### mkdir([options,] dir_array)
//@
//@ Available options:
//@
//@ + `-p`: full path (and create intermediate directories, if necessary)
//@
//@ Examples:
//@
//@ ```javascript
//@ mkdir('-p', '/tmp/a/b/c/d', '/tmp/e/f/g');
//@ mkdir('-p', ['/tmp/a/b/c/d', '/tmp/e/f/g']); // same as above
//@ ```
//@
//@ Creates directories.
function _mkdir(options, dirs) {
  if (!dirs) common.error('no paths given');

  if (typeof dirs === 'string') {
    dirs = [].slice.call(arguments, 1);
  }
  // if it's array leave it as it is

  dirs.forEach(function (dir) {
    try {
      var stat = common.statNoFollowLinks(dir);
      if (!options.fullpath) {
        common.error('path already exists: ' + dir, { continue: true });
      } else if (stat.isFile()) {
        common.error('cannot create directory ' + dir + ': File exists', { continue: true });
      }
      return; // skip dir
    } catch (e) {
      // do nothing
    }

    // Base dir does not exist, and no -p option given
    var baseDir = path.dirname(dir);
    if (!fs.existsSync(baseDir) && !options.fullpath) {
      common.error('no such file or directory: ' + baseDir, { continue: true });
      return; // skip dir
    }

    try {
      if (options.fullpath) {
        mkdirSyncRecursive(path.resolve(dir));
      } else {
        fs.mkdirSync(dir, parseInt('0777', 8));
      }
    } catch (e) {
      var reason;
      if (e.code === 'EACCES') {
        reason = 'Permission denied';
      } else if (e.code === 'ENOTDIR' || e.code === 'ENOENT') {
        reason = 'Not a directory';
      } else {
        /* istanbul ignore next */
        throw e;
      }
      common.error('cannot create directory ' + dir + ': ' + reason, { continue: true });
    }
  });
  return '';
} // mkdir
module.exports = _mkdir;


/***/ }),

/***/ 39849:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);
var common = __webpack_require__(53687);
var cp = __webpack_require__(34932);
var rm = __webpack_require__(22830);

common.register('mv', _mv, {
  cmdOptions: {
    'f': '!no_force',
    'n': 'no_force',
  },
});

// Checks if cureent file was created recently
function checkRecentCreated(sources, index) {
  var lookedSource = sources[index];
  return sources.slice(0, index).some(function (src) {
    return path.basename(src) === path.basename(lookedSource);
  });
}

//@
//@ ### mv([options ,] source [, source ...], dest')
//@ ### mv([options ,] source_array, dest')
//@
//@ Available options:
//@
//@ + `-f`: force (default behavior)
//@ + `-n`: no-clobber
//@
//@ Examples:
//@
//@ ```javascript
//@ mv('-n', 'file', 'dir/');
//@ mv('file1', 'file2', 'dir/');
//@ mv(['file1', 'file2'], 'dir/'); // same as above
//@ ```
//@
//@ Moves `source` file(s) to `dest`.
function _mv(options, sources, dest) {
  // Get sources, dest
  if (arguments.length < 3) {
    common.error('missing <source> and/or <dest>');
  } else if (arguments.length > 3) {
    sources = [].slice.call(arguments, 1, arguments.length - 1);
    dest = arguments[arguments.length - 1];
  } else if (typeof sources === 'string') {
    sources = [sources];
  } else {
    // TODO(nate): figure out if we actually need this line
    common.error('invalid arguments');
  }

  var exists = fs.existsSync(dest);
  var stats = exists && common.statFollowLinks(dest);

  // Dest is not existing dir, but multiple sources given
  if ((!exists || !stats.isDirectory()) && sources.length > 1) {
    common.error('dest is not a directory (too many sources)');
  }

  // Dest is an existing file, but no -f given
  if (exists && stats.isFile() && options.no_force) {
    common.error('dest file already exists: ' + dest);
  }

  sources.forEach(function (src, srcIndex) {
    if (!fs.existsSync(src)) {
      common.error('no such file or directory: ' + src, { continue: true });
      return; // skip file
    }

    // If here, src exists

    // When copying to '/path/dir':
    //    thisDest = '/path/dir/file1'
    var thisDest = dest;
    if (fs.existsSync(dest) && common.statFollowLinks(dest).isDirectory()) {
      thisDest = path.normalize(dest + '/' + path.basename(src));
    }

    var thisDestExists = fs.existsSync(thisDest);

    if (thisDestExists && checkRecentCreated(sources, srcIndex)) {
      // cannot overwrite file created recently in current execution, but we want to continue copying other files
      if (!options.no_force) {
        common.error("will not overwrite just-created '" + thisDest + "' with '" + src + "'", { continue: true });
      }
      return;
    }

    if (fs.existsSync(thisDest) && options.no_force) {
      common.error('dest file already exists: ' + thisDest, { continue: true });
      return; // skip file
    }

    if (path.resolve(src) === path.dirname(path.resolve(thisDest))) {
      common.error('cannot move to self: ' + src, { continue: true });
      return; // skip file
    }

    try {
      fs.renameSync(src, thisDest);
    } catch (e) {
      /* istanbul ignore next */
      if (e.code === 'EXDEV') {
        // If we're trying to `mv` to an external partition, we'll actually need
        // to perform a copy and then clean up the original file. If either the
        // copy or the rm fails with an exception, we should allow this
        // exception to pass up to the top level.
        cp('-r', src, thisDest);
        rm('-rf', src);
      }
    }
  }); // forEach(src)
  return '';
} // mv
module.exports = _mv;


/***/ }),

/***/ 50227:
/***/ (() => {

// see dirs.js


/***/ }),

/***/ 44177:
/***/ (() => {

// see dirs.js


/***/ }),

/***/ 58553:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var path = __webpack_require__(85622);
var common = __webpack_require__(53687);

common.register('pwd', _pwd, {
  allowGlobbing: false,
});

//@
//@ ### pwd()
//@
//@ Returns the current directory.
function _pwd() {
  var pwd = path.resolve(process.cwd());
  return pwd;
}
module.exports = _pwd;


/***/ }),

/***/ 22830:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('rm', _rm, {
  cmdOptions: {
    'f': 'force',
    'r': 'recursive',
    'R': 'recursive',
  },
});

// Recursively removes 'dir'
// Adapted from https://github.com/ryanmcgrath/wrench-js
//
// Copyright (c) 2010 Ryan McGrath
// Copyright (c) 2012 Artur Adib
//
// Licensed under the MIT License
// http://www.opensource.org/licenses/mit-license.php
function rmdirSyncRecursive(dir, force, fromSymlink) {
  var files;

  files = fs.readdirSync(dir);

  // Loop through and delete everything in the sub-tree after checking it
  for (var i = 0; i < files.length; i++) {
    var file = dir + '/' + files[i];
    var currFile = common.statNoFollowLinks(file);

    if (currFile.isDirectory()) { // Recursive function back to the beginning
      rmdirSyncRecursive(file, force);
    } else { // Assume it's a file - perhaps a try/catch belongs here?
      if (force || isWriteable(file)) {
        try {
          common.unlinkSync(file);
        } catch (e) {
          /* istanbul ignore next */
          common.error('could not remove file (code ' + e.code + '): ' + file, {
            continue: true,
          });
        }
      }
    }
  }

  // if was directory was referenced through a symbolic link,
  // the contents should be removed, but not the directory itself
  if (fromSymlink) return;

  // Now that we know everything in the sub-tree has been deleted, we can delete the main directory.
  // Huzzah for the shopkeep.

  var result;
  try {
    // Retry on windows, sometimes it takes a little time before all the files in the directory are gone
    var start = Date.now();

    // TODO: replace this with a finite loop
    for (;;) {
      try {
        result = fs.rmdirSync(dir);
        if (fs.existsSync(dir)) throw { code: 'EAGAIN' };
        break;
      } catch (er) {
        /* istanbul ignore next */
        // In addition to error codes, also check if the directory still exists and loop again if true
        if (process.platform === 'win32' && (er.code === 'ENOTEMPTY' || er.code === 'EBUSY' || er.code === 'EPERM' || er.code === 'EAGAIN')) {
          if (Date.now() - start > 1000) throw er;
        } else if (er.code === 'ENOENT') {
          // Directory did not exist, deletion was successful
          break;
        } else {
          throw er;
        }
      }
    }
  } catch (e) {
    common.error('could not remove directory (code ' + e.code + '): ' + dir, { continue: true });
  }

  return result;
} // rmdirSyncRecursive

// Hack to determine if file has write permissions for current user
// Avoids having to check user, group, etc, but it's probably slow
function isWriteable(file) {
  var writePermission = true;
  try {
    var __fd = fs.openSync(file, 'a');
    fs.closeSync(__fd);
  } catch (e) {
    writePermission = false;
  }

  return writePermission;
}

function handleFile(file, options) {
  if (options.force || isWriteable(file)) {
    // -f was passed, or file is writable, so it can be removed
    common.unlinkSync(file);
  } else {
    common.error('permission denied: ' + file, { continue: true });
  }
}

function handleDirectory(file, options) {
  if (options.recursive) {
    // -r was passed, so directory can be removed
    rmdirSyncRecursive(file, options.force);
  } else {
    common.error('path is a directory', { continue: true });
  }
}

function handleSymbolicLink(file, options) {
  var stats;
  try {
    stats = common.statFollowLinks(file);
  } catch (e) {
    // symlink is broken, so remove the symlink itself
    common.unlinkSync(file);
    return;
  }

  if (stats.isFile()) {
    common.unlinkSync(file);
  } else if (stats.isDirectory()) {
    if (file[file.length - 1] === '/') {
      // trailing separator, so remove the contents, not the link
      if (options.recursive) {
        // -r was passed, so directory can be removed
        var fromSymlink = true;
        rmdirSyncRecursive(file, options.force, fromSymlink);
      } else {
        common.error('path is a directory', { continue: true });
      }
    } else {
      // no trailing separator, so remove the link
      common.unlinkSync(file);
    }
  }
}

function handleFIFO(file) {
  common.unlinkSync(file);
}

//@
//@ ### rm([options,] file [, file ...])
//@ ### rm([options,] file_array)
//@
//@ Available options:
//@
//@ + `-f`: force
//@ + `-r, -R`: recursive
//@
//@ Examples:
//@
//@ ```javascript
//@ rm('-rf', '/tmp/*');
//@ rm('some_file.txt', 'another_file.txt');
//@ rm(['some_file.txt', 'another_file.txt']); // same as above
//@ ```
//@
//@ Removes files.
function _rm(options, files) {
  if (!files) common.error('no paths given');

  // Convert to array
  files = [].slice.call(arguments, 1);

  files.forEach(function (file) {
    var lstats;
    try {
      var filepath = (file[file.length - 1] === '/')
        ? file.slice(0, -1) // remove the '/' so lstatSync can detect symlinks
        : file;
      lstats = common.statNoFollowLinks(filepath); // test for existence
    } catch (e) {
      // Path does not exist, no force flag given
      if (!options.force) {
        common.error('no such file or directory: ' + file, { continue: true });
      }
      return; // skip file
    }

    // If here, path exists
    if (lstats.isFile()) {
      handleFile(file, options);
    } else if (lstats.isDirectory()) {
      handleDirectory(file, options);
    } else if (lstats.isSymbolicLink()) {
      handleSymbolicLink(file, options);
    } else if (lstats.isFIFO()) {
      handleFIFO(file);
    }
  }); // forEach(file)
  return '';
} // rm
module.exports = _rm;


/***/ }),

/***/ 25899:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('sed', _sed, {
  globStart: 3, // don't glob-expand regexes
  canReceivePipe: true,
  cmdOptions: {
    'i': 'inplace',
  },
});

//@
//@ ### sed([options,] search_regex, replacement, file [, file ...])
//@ ### sed([options,] search_regex, replacement, file_array)
//@
//@ Available options:
//@
//@ + `-i`: Replace contents of `file` in-place. _Note that no backups will be created!_
//@
//@ Examples:
//@
//@ ```javascript
//@ sed('-i', 'PROGRAM_VERSION', 'v0.1.3', 'source.js');
//@ sed(/.*DELETE_THIS_LINE.*\n/, '', 'source.js');
//@ ```
//@
//@ Reads an input string from `file`s, and performs a JavaScript `replace()` on the input
//@ using the given `search_regex` and `replacement` string or function. Returns the new string after replacement.
//@
//@ Note:
//@
//@ Like unix `sed`, ShellJS `sed` supports capture groups. Capture groups are specified
//@ using the `$n` syntax:
//@
//@ ```javascript
//@ sed(/(\w+)\s(\w+)/, '$2, $1', 'file.txt');
//@ ```
function _sed(options, regex, replacement, files) {
  // Check if this is coming from a pipe
  var pipe = common.readFromPipe();

  if (typeof replacement !== 'string' && typeof replacement !== 'function') {
    if (typeof replacement === 'number') {
      replacement = replacement.toString(); // fallback
    } else {
      common.error('invalid replacement string');
    }
  }

  // Convert all search strings to RegExp
  if (typeof regex === 'string') {
    regex = RegExp(regex);
  }

  if (!files && !pipe) {
    common.error('no files given');
  }

  files = [].slice.call(arguments, 3);

  if (pipe) {
    files.unshift('-');
  }

  var sed = [];
  files.forEach(function (file) {
    if (!fs.existsSync(file) && file !== '-') {
      common.error('no such file or directory: ' + file, 2, { continue: true });
      return;
    }

    var contents = file === '-' ? pipe : fs.readFileSync(file, 'utf8');
    var lines = contents.split('\n');
    var result = lines.map(function (line) {
      return line.replace(regex, replacement);
    }).join('\n');

    sed.push(result);

    if (options.inplace) {
      fs.writeFileSync(file, result, 'utf8');
    }
  });

  return sed.join('\n');
}
module.exports = _sed;


/***/ }),

/***/ 11411:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);

common.register('set', _set, {
  allowGlobbing: false,
  wrapOutput: false,
});

//@
//@ ### set(options)
//@
//@ Available options:
//@
//@ + `+/-e`: exit upon error (`config.fatal`)
//@ + `+/-v`: verbose: show all commands (`config.verbose`)
//@ + `+/-f`: disable filename expansion (globbing)
//@
//@ Examples:
//@
//@ ```javascript
//@ set('-e'); // exit upon first error
//@ set('+e'); // this undoes a "set('-e')"
//@ ```
//@
//@ Sets global configuration variables.
function _set(options) {
  if (!options) {
    var args = [].slice.call(arguments, 0);
    if (args.length < 2) common.error('must provide an argument');
    options = args[1];
  }
  var negate = (options[0] === '+');
  if (negate) {
    options = '-' + options.slice(1); // parseOptions needs a '-' prefix
  }
  options = common.parseOptions(options, {
    'e': 'fatal',
    'v': 'verbose',
    'f': 'noglob',
  });

  if (negate) {
    Object.keys(options).forEach(function (key) {
      options[key] = !options[key];
    });
  }

  Object.keys(options).forEach(function (key) {
    // Only change the global config if `negate` is false and the option is true
    // or if `negate` is true and the option is false (aka negate !== option)
    if (negate !== options[key]) {
      common.config[key] = options[key];
    }
  });
  return;
}
module.exports = _set;


/***/ }),

/***/ 72116:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('sort', _sort, {
  canReceivePipe: true,
  cmdOptions: {
    'r': 'reverse',
    'n': 'numerical',
  },
});

// parse out the number prefix of a line
function parseNumber(str) {
  var match = str.match(/^\s*(\d*)\s*(.*)$/);
  return { num: Number(match[1]), value: match[2] };
}

// compare two strings case-insensitively, but examine case for strings that are
// case-insensitive equivalent
function unixCmp(a, b) {
  var aLower = a.toLowerCase();
  var bLower = b.toLowerCase();
  return (aLower === bLower ?
      -1 * a.localeCompare(b) : // unix sort treats case opposite how javascript does
      aLower.localeCompare(bLower));
}

// compare two strings in the fashion that unix sort's -n option works
function numericalCmp(a, b) {
  var objA = parseNumber(a);
  var objB = parseNumber(b);
  if (objA.hasOwnProperty('num') && objB.hasOwnProperty('num')) {
    return ((objA.num !== objB.num) ?
        (objA.num - objB.num) :
        unixCmp(objA.value, objB.value));
  } else {
    return unixCmp(objA.value, objB.value);
  }
}

//@
//@ ### sort([options,] file [, file ...])
//@ ### sort([options,] file_array)
//@
//@ Available options:
//@
//@ + `-r`: Reverse the results
//@ + `-n`: Compare according to numerical value
//@
//@ Examples:
//@
//@ ```javascript
//@ sort('foo.txt', 'bar.txt');
//@ sort('-r', 'foo.txt');
//@ ```
//@
//@ Return the contents of the `file`s, sorted line-by-line. Sorting multiple
//@ files mixes their content (just as unix `sort` does).
function _sort(options, files) {
  // Check if this is coming from a pipe
  var pipe = common.readFromPipe();

  if (!files && !pipe) common.error('no files given');

  files = [].slice.call(arguments, 1);

  if (pipe) {
    files.unshift('-');
  }

  var lines = files.reduce(function (accum, file) {
    if (file !== '-') {
      if (!fs.existsSync(file)) {
        common.error('no such file or directory: ' + file, { continue: true });
        return accum;
      } else if (common.statFollowLinks(file).isDirectory()) {
        common.error('read failed: ' + file + ': Is a directory', {
          continue: true,
        });
        return accum;
      }
    }

    var contents = file === '-' ? pipe : fs.readFileSync(file, 'utf8');
    return accum.concat(contents.trimRight().split('\n'));
  }, []);

  var sorted = lines.sort(options.numerical ? numericalCmp : unixCmp);

  if (options.reverse) {
    sorted = sorted.reverse();
  }

  return sorted.join('\n') + '\n';
}

module.exports = _sort;


/***/ }),

/***/ 42284:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('tail', _tail, {
  canReceivePipe: true,
  cmdOptions: {
    'n': 'numLines',
  },
});

//@
//@ ### tail([{'-n': \<num\>},] file [, file ...])
//@ ### tail([{'-n': \<num\>},] file_array)
//@
//@ Available options:
//@
//@ + `-n <num>`: Show the last `<num>` lines of `file`s
//@
//@ Examples:
//@
//@ ```javascript
//@ var str = tail({'-n': 1}, 'file*.txt');
//@ var str = tail('file1', 'file2');
//@ var str = tail(['file1', 'file2']); // same as above
//@ ```
//@
//@ Read the end of a `file`.
function _tail(options, files) {
  var tail = [];
  var pipe = common.readFromPipe();

  if (!files && !pipe) common.error('no paths given');

  var idx = 1;
  if (options.numLines === true) {
    idx = 2;
    options.numLines = Number(arguments[1]);
  } else if (options.numLines === false) {
    options.numLines = 10;
  }
  options.numLines = -1 * Math.abs(options.numLines);
  files = [].slice.call(arguments, idx);

  if (pipe) {
    files.unshift('-');
  }

  var shouldAppendNewline = false;
  files.forEach(function (file) {
    if (file !== '-') {
      if (!fs.existsSync(file)) {
        common.error('no such file or directory: ' + file, { continue: true });
        return;
      } else if (common.statFollowLinks(file).isDirectory()) {
        common.error("error reading '" + file + "': Is a directory", {
          continue: true,
        });
        return;
      }
    }

    var contents = file === '-' ? pipe : fs.readFileSync(file, 'utf8');

    var lines = contents.split('\n');
    if (lines[lines.length - 1] === '') {
      lines.pop();
      shouldAppendNewline = true;
    } else {
      shouldAppendNewline = false;
    }

    tail = tail.concat(lines.slice(options.numLines));
  });

  if (shouldAppendNewline) {
    tail.push(''); // to add a trailing newline once we join
  }
  return tail.join('\n');
}
module.exports = _tail;


/***/ }),

/***/ 76150:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var os = __webpack_require__(12087);
var fs = __webpack_require__(35747);

common.register('tempdir', _tempDir, {
  allowGlobbing: false,
  wrapOutput: false,
});

// Returns false if 'dir' is not a writeable directory, 'dir' otherwise
function writeableDir(dir) {
  if (!dir || !fs.existsSync(dir)) return false;

  if (!common.statFollowLinks(dir).isDirectory()) return false;

  var testFile = dir + '/' + common.randomFileName();
  try {
    fs.writeFileSync(testFile, ' ');
    common.unlinkSync(testFile);
    return dir;
  } catch (e) {
    /* istanbul ignore next */
    return false;
  }
}

// Variable to cache the tempdir value for successive lookups.
var cachedTempDir;

//@
//@ ### tempdir()
//@
//@ Examples:
//@
//@ ```javascript
//@ var tmp = tempdir(); // "/tmp" for most *nix platforms
//@ ```
//@
//@ Searches and returns string containing a writeable, platform-dependent temporary directory.
//@ Follows Python's [tempfile algorithm](http://docs.python.org/library/tempfile.html#tempfile.tempdir).
function _tempDir() {
  if (cachedTempDir) return cachedTempDir;

  cachedTempDir = writeableDir(os.tmpdir()) ||
                  writeableDir(process.env.TMPDIR) ||
                  writeableDir(process.env.TEMP) ||
                  writeableDir(process.env.TMP) ||
                  writeableDir(process.env.Wimp$ScrapDir) || // RiscOS
                  writeableDir('C:\\TEMP') || // Windows
                  writeableDir('C:\\TMP') || // Windows
                  writeableDir('\\TEMP') || // Windows
                  writeableDir('\\TMP') || // Windows
                  writeableDir('/tmp') ||
                  writeableDir('/var/tmp') ||
                  writeableDir('/usr/tmp') ||
                  writeableDir('.'); // last resort

  return cachedTempDir;
}

// Indicates if the tempdir value is currently cached. This is exposed for tests
// only. The return value should only be tested for truthiness.
function isCached() {
  return cachedTempDir;
}

// Clears the cached tempDir value, if one is cached. This is exposed for tests
// only.
function clearCache() {
  cachedTempDir = undefined;
}

module.exports.tempDir = _tempDir;
module.exports.isCached = isCached;
module.exports.clearCache = clearCache;


/***/ }),

/***/ 79723:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('test', _test, {
  cmdOptions: {
    'b': 'block',
    'c': 'character',
    'd': 'directory',
    'e': 'exists',
    'f': 'file',
    'L': 'link',
    'p': 'pipe',
    'S': 'socket',
  },
  wrapOutput: false,
  allowGlobbing: false,
});


//@
//@ ### test(expression)
//@
//@ Available expression primaries:
//@
//@ + `'-b', 'path'`: true if path is a block device
//@ + `'-c', 'path'`: true if path is a character device
//@ + `'-d', 'path'`: true if path is a directory
//@ + `'-e', 'path'`: true if path exists
//@ + `'-f', 'path'`: true if path is a regular file
//@ + `'-L', 'path'`: true if path is a symbolic link
//@ + `'-p', 'path'`: true if path is a pipe (FIFO)
//@ + `'-S', 'path'`: true if path is a socket
//@
//@ Examples:
//@
//@ ```javascript
//@ if (test('-d', path)) { /* do something with dir */ };
//@ if (!test('-f', path)) continue; // skip if it's a regular file
//@ ```
//@
//@ Evaluates `expression` using the available primaries and returns corresponding value.
function _test(options, path) {
  if (!path) common.error('no path given');

  var canInterpret = false;
  Object.keys(options).forEach(function (key) {
    if (options[key] === true) {
      canInterpret = true;
    }
  });

  if (!canInterpret) common.error('could not interpret expression');

  if (options.link) {
    try {
      return common.statNoFollowLinks(path).isSymbolicLink();
    } catch (e) {
      return false;
    }
  }

  if (!fs.existsSync(path)) return false;

  if (options.exists) return true;

  var stats = common.statFollowLinks(path);

  if (options.block) return stats.isBlockDevice();

  if (options.character) return stats.isCharacterDevice();

  if (options.directory) return stats.isDirectory();

  if (options.file) return stats.isFile();

  /* istanbul ignore next */
  if (options.pipe) return stats.isFIFO();

  /* istanbul ignore next */
  if (options.socket) return stats.isSocket();

  /* istanbul ignore next */
  return false; // fallback
} // test
module.exports = _test;


/***/ }),

/***/ 71961:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);

common.register('to', _to, {
  pipeOnly: true,
  wrapOutput: false,
});

//@
//@ ### ShellString.prototype.to(file)
//@
//@ Examples:
//@
//@ ```javascript
//@ cat('input.txt').to('output.txt');
//@ ```
//@
//@ Analogous to the redirection operator `>` in Unix, but works with
//@ `ShellStrings` (such as those returned by `cat`, `grep`, etc.). _Like Unix
//@ redirections, `to()` will overwrite any existing file!_
function _to(options, file) {
  if (!file) common.error('wrong arguments');

  if (!fs.existsSync(path.dirname(file))) {
    common.error('no such file or directory: ' + path.dirname(file));
  }

  try {
    fs.writeFileSync(file, this.stdout || this.toString(), 'utf8');
    return this;
  } catch (e) {
    /* istanbul ignore next */
    common.error('could not write to file (code ' + e.code + '): ' + file, { continue: true });
  }
}
module.exports = _to;


/***/ }),

/***/ 33736:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);

common.register('toEnd', _toEnd, {
  pipeOnly: true,
  wrapOutput: false,
});

//@
//@ ### ShellString.prototype.toEnd(file)
//@
//@ Examples:
//@
//@ ```javascript
//@ cat('input.txt').toEnd('output.txt');
//@ ```
//@
//@ Analogous to the redirect-and-append operator `>>` in Unix, but works with
//@ `ShellStrings` (such as those returned by `cat`, `grep`, etc.).
function _toEnd(options, file) {
  if (!file) common.error('wrong arguments');

  if (!fs.existsSync(path.dirname(file))) {
    common.error('no such file or directory: ' + path.dirname(file));
  }

  try {
    fs.appendFileSync(file, this.stdout || this.toString(), 'utf8');
    return this;
  } catch (e) {
    /* istanbul ignore next */
    common.error('could not append to file (code ' + e.code + '): ' + file, { continue: true });
  }
}
module.exports = _toEnd;


/***/ }),

/***/ 28358:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

common.register('touch', _touch, {
  cmdOptions: {
    'a': 'atime_only',
    'c': 'no_create',
    'd': 'date',
    'm': 'mtime_only',
    'r': 'reference',
  },
});

//@
//@ ### touch([options,] file [, file ...])
//@ ### touch([options,] file_array)
//@
//@ Available options:
//@
//@ + `-a`: Change only the access time
//@ + `-c`: Do not create any files
//@ + `-m`: Change only the modification time
//@ + `-d DATE`: Parse `DATE` and use it instead of current time
//@ + `-r FILE`: Use `FILE`'s times instead of current time
//@
//@ Examples:
//@
//@ ```javascript
//@ touch('source.js');
//@ touch('-c', '/path/to/some/dir/source.js');
//@ touch({ '-r': FILE }, '/path/to/some/dir/source.js');
//@ ```
//@
//@ Update the access and modification times of each `FILE` to the current time.
//@ A `FILE` argument that does not exist is created empty, unless `-c` is supplied.
//@ This is a partial implementation of [`touch(1)`](http://linux.die.net/man/1/touch).
function _touch(opts, files) {
  if (!files) {
    common.error('no files given');
  } else if (typeof files === 'string') {
    files = [].slice.call(arguments, 1);
  } else {
    common.error('file arg should be a string file path or an Array of string file paths');
  }

  files.forEach(function (f) {
    touchFile(opts, f);
  });
  return '';
}

function touchFile(opts, file) {
  var stat = tryStatFile(file);

  if (stat && stat.isDirectory()) {
    // don't error just exit
    return;
  }

  // if the file doesn't already exist and the user has specified --no-create then
  // this script is finished
  if (!stat && opts.no_create) {
    return;
  }

  // open the file and then close it. this will create it if it doesn't exist but will
  // not truncate the file
  fs.closeSync(fs.openSync(file, 'a'));

  //
  // Set timestamps
  //

  // setup some defaults
  var now = new Date();
  var mtime = opts.date || now;
  var atime = opts.date || now;

  // use reference file
  if (opts.reference) {
    var refStat = tryStatFile(opts.reference);
    if (!refStat) {
      common.error('failed to get attributess of ' + opts.reference);
    }
    mtime = refStat.mtime;
    atime = refStat.atime;
  } else if (opts.date) {
    mtime = opts.date;
    atime = opts.date;
  }

  if (opts.atime_only && opts.mtime_only) {
    // keep the new values of mtime and atime like GNU
  } else if (opts.atime_only) {
    mtime = stat.mtime;
  } else if (opts.mtime_only) {
    atime = stat.atime;
  }

  fs.utimesSync(file, atime, mtime);
}

module.exports = _touch;

function tryStatFile(filePath) {
  try {
    return common.statFollowLinks(filePath);
  } catch (e) {
    return null;
  }
}


/***/ }),

/***/ 77286:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);

// add c spaces to the left of str
function lpad(c, str) {
  var res = '' + str;
  if (res.length < c) {
    res = Array((c - res.length) + 1).join(' ') + res;
  }
  return res;
}

common.register('uniq', _uniq, {
  canReceivePipe: true,
  cmdOptions: {
    'i': 'ignoreCase',
    'c': 'count',
    'd': 'duplicates',
  },
});

//@
//@ ### uniq([options,] [input, [output]])
//@
//@ Available options:
//@
//@ + `-i`: Ignore case while comparing
//@ + `-c`: Prefix lines by the number of occurrences
//@ + `-d`: Only print duplicate lines, one for each group of identical lines
//@
//@ Examples:
//@
//@ ```javascript
//@ uniq('foo.txt');
//@ uniq('-i', 'foo.txt');
//@ uniq('-cd', 'foo.txt', 'bar.txt');
//@ ```
//@
//@ Filter adjacent matching lines from `input`.
function _uniq(options, input, output) {
  // Check if this is coming from a pipe
  var pipe = common.readFromPipe();

  if (!pipe) {
    if (!input) common.error('no input given');

    if (!fs.existsSync(input)) {
      common.error(input + ': No such file or directory');
    } else if (common.statFollowLinks(input).isDirectory()) {
      common.error("error reading '" + input + "'");
    }
  }
  if (output && fs.existsSync(output) && common.statFollowLinks(output).isDirectory()) {
    common.error(output + ': Is a directory');
  }

  var lines = (input ? fs.readFileSync(input, 'utf8') : pipe).
              trimRight().
              split('\n');

  var compare = function (a, b) {
    return options.ignoreCase ?
           a.toLocaleLowerCase().localeCompare(b.toLocaleLowerCase()) :
           a.localeCompare(b);
  };
  var uniqed = lines.reduceRight(function (res, e) {
    // Perform uniq -c on the input
    if (res.length === 0) {
      return [{ count: 1, ln: e }];
    } else if (compare(res[0].ln, e) === 0) {
      return [{ count: res[0].count + 1, ln: e }].concat(res.slice(1));
    } else {
      return [{ count: 1, ln: e }].concat(res);
    }
  }, []).filter(function (obj) {
                 // Do we want only duplicated objects?
    return options.duplicates ? obj.count > 1 : true;
  }).map(function (obj) {
                 // Are we tracking the counts of each line?
    return (options.count ? (lpad(7, obj.count) + ' ') : '') + obj.ln;
  }).join('\n') + '\n';

  if (output) {
    (new common.ShellString(uniqed)).to(output);
    // if uniq writes to output, nothing is passed to the next command in the pipeline (if any)
    return '';
  } else {
    return uniqed;
  }
}

module.exports = _uniq;


/***/ }),

/***/ 64766:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var common = __webpack_require__(53687);
var fs = __webpack_require__(35747);
var path = __webpack_require__(85622);

common.register('which', _which, {
  allowGlobbing: false,
  cmdOptions: {
    'a': 'all',
  },
});

// XP's system default value for `PATHEXT` system variable, just in case it's not
// set on Windows.
var XP_DEFAULT_PATHEXT = '.com;.exe;.bat;.cmd;.vbs;.vbe;.js;.jse;.wsf;.wsh';

// For earlier versions of NodeJS that doesn't have a list of constants (< v6)
var FILE_EXECUTABLE_MODE = 1;

function isWindowsPlatform() {
  return process.platform === 'win32';
}

// Cross-platform method for splitting environment `PATH` variables
function splitPath(p) {
  return p ? p.split(path.delimiter) : [];
}

// Tests are running all cases for this func but it stays uncovered by codecov due to unknown reason
/* istanbul ignore next */
function isExecutable(pathName) {
  try {
    // TODO(node-support): replace with fs.constants.X_OK once remove support for node < v6
    fs.accessSync(pathName, FILE_EXECUTABLE_MODE);
  } catch (err) {
    return false;
  }
  return true;
}

function checkPath(pathName) {
  return fs.existsSync(pathName) && !common.statFollowLinks(pathName).isDirectory()
    && (isWindowsPlatform() || isExecutable(pathName));
}

//@
//@ ### which(command)
//@
//@ Examples:
//@
//@ ```javascript
//@ var nodeExec = which('node');
//@ ```
//@
//@ Searches for `command` in the system's `PATH`. On Windows, this uses the
//@ `PATHEXT` variable to append the extension if it's not already executable.
//@ Returns string containing the absolute path to `command`.
function _which(options, cmd) {
  if (!cmd) common.error('must specify command');

  var isWindows = isWindowsPlatform();
  var pathArray = splitPath(process.env.PATH);

  var queryMatches = [];

  // No relative/absolute paths provided?
  if (cmd.indexOf('/') === -1) {
    // Assume that there are no extensions to append to queries (this is the
    // case for unix)
    var pathExtArray = [''];
    if (isWindows) {
      // In case the PATHEXT variable is somehow not set (e.g.
      // child_process.spawn with an empty environment), use the XP default.
      var pathExtEnv = process.env.PATHEXT || XP_DEFAULT_PATHEXT;
      pathExtArray = splitPath(pathExtEnv.toUpperCase());
    }

    // Search for command in PATH
    for (var k = 0; k < pathArray.length; k++) {
      // already found it
      if (queryMatches.length > 0 && !options.all) break;

      var attempt = path.resolve(pathArray[k], cmd);

      if (isWindows) {
        attempt = attempt.toUpperCase();
      }

      var match = attempt.match(/\.[^<>:"/\|?*.]+$/);
      if (match && pathExtArray.indexOf(match[0]) >= 0) { // this is Windows-only
        // The user typed a query with the file extension, like
        // `which('node.exe')`
        if (checkPath(attempt)) {
          queryMatches.push(attempt);
          break;
        }
      } else { // All-platforms
        // Cycle through the PATHEXT array, and check each extension
        // Note: the array is always [''] on Unix
        for (var i = 0; i < pathExtArray.length; i++) {
          var ext = pathExtArray[i];
          var newAttempt = attempt + ext;
          if (checkPath(newAttempt)) {
            queryMatches.push(newAttempt);
            break;
          }
        }
      }
    }
  } else if (checkPath(cmd)) { // a valid absolute or relative path
    queryMatches.push(path.resolve(cmd));
  }

  if (queryMatches.length > 0) {
    return options.all ? queryMatches : queryMatches[0];
  }
  return options.all ? [] : null;
}
module.exports = _which;


/***/ }),

/***/ 14334:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var GetIntrinsic = __webpack_require__(74538);
var callBound = __webpack_require__(28803);
var inspect = __webpack_require__(20504);

var $TypeError = GetIntrinsic('%TypeError%');
var $WeakMap = GetIntrinsic('%WeakMap%', true);
var $Map = GetIntrinsic('%Map%', true);

var $weakMapGet = callBound('WeakMap.prototype.get', true);
var $weakMapSet = callBound('WeakMap.prototype.set', true);
var $weakMapHas = callBound('WeakMap.prototype.has', true);
var $mapGet = callBound('Map.prototype.get', true);
var $mapSet = callBound('Map.prototype.set', true);
var $mapHas = callBound('Map.prototype.has', true);

/*
 * This function traverses the list returning the node corresponding to the
 * given key.
 *
 * That node is also moved to the head of the list, so that if it's accessed
 * again we don't need to traverse the whole list. By doing so, all the recently
 * used nodes can be accessed relatively quickly.
 */
var listGetNode = function (list, key) { // eslint-disable-line consistent-return
	for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {
		if (curr.key === key) {
			prev.next = curr.next;
			curr.next = list.next;
			list.next = curr; // eslint-disable-line no-param-reassign
			return curr;
		}
	}
};

var listGet = function (objects, key) {
	var node = listGetNode(objects, key);
	return node && node.value;
};
var listSet = function (objects, key, value) {
	var node = listGetNode(objects, key);
	if (node) {
		node.value = value;
	} else {
		// Prepend the new node to the beginning of the list
		objects.next = { // eslint-disable-line no-param-reassign
			key: key,
			next: objects.next,
			value: value
		};
	}
};
var listHas = function (objects, key) {
	return !!listGetNode(objects, key);
};

module.exports = function getSideChannel() {
	var $wm;
	var $m;
	var $o;
	var channel = {
		assert: function (key) {
			if (!channel.has(key)) {
				throw new $TypeError('Side channel does not contain ' + inspect(key));
			}
		},
		get: function (key) { // eslint-disable-line consistent-return
			if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
				if ($wm) {
					return $weakMapGet($wm, key);
				}
			} else if ($Map) {
				if ($m) {
					return $mapGet($m, key);
				}
			} else {
				if ($o) { // eslint-disable-line no-lonely-if
					return listGet($o, key);
				}
			}
		},
		has: function (key) {
			if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
				if ($wm) {
					return $weakMapHas($wm, key);
				}
			} else if ($Map) {
				if ($m) {
					return $mapHas($m, key);
				}
			} else {
				if ($o) { // eslint-disable-line no-lonely-if
					return listHas($o, key);
				}
			}
			return false;
		},
		set: function (key, value) {
			if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
				if (!$wm) {
					$wm = new $WeakMap();
				}
				$weakMapSet($wm, key, value);
			} else if ($Map) {
				if (!$m) {
					$m = new $Map();
				}
				$mapSet($m, key, value);
			} else {
				if (!$o) {
					/*
					 * Initialize the linked list as an empty node, so that we don't have
					 * to special-case handling of the first node: we can always refer to
					 * it as (previous node).next, instead of something like (list).head
					 */
					$o = { key: {}, next: null };
				}
				listSet($o, key, value);
			}
		}
	};
	return channel;
};


/***/ }),

/***/ 66126:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

var Buffer = __webpack_require__(15118).Buffer;

var algInfo = {
	'dsa': {
		parts: ['p', 'q', 'g', 'y'],
		sizePart: 'p'
	},
	'rsa': {
		parts: ['e', 'n'],
		sizePart: 'n'
	},
	'ecdsa': {
		parts: ['curve', 'Q'],
		sizePart: 'Q'
	},
	'ed25519': {
		parts: ['A'],
		sizePart: 'A'
	}
};
algInfo['curve25519'] = algInfo['ed25519'];

var algPrivInfo = {
	'dsa': {
		parts: ['p', 'q', 'g', 'y', 'x']
	},
	'rsa': {
		parts: ['n', 'e', 'd', 'iqmp', 'p', 'q']
	},
	'ecdsa': {
		parts: ['curve', 'Q', 'd']
	},
	'ed25519': {
		parts: ['A', 'k']
	}
};
algPrivInfo['curve25519'] = algPrivInfo['ed25519'];

var hashAlgs = {
	'md5': true,
	'sha1': true,
	'sha256': true,
	'sha384': true,
	'sha512': true
};

/*
 * Taken from
 * http://csrc.nist.gov/groups/ST/toolkit/documents/dss/NISTReCur.pdf
 */
var curves = {
	'nistp256': {
		size: 256,
		pkcs8oid: '1.2.840.10045.3.1.7',
		p: Buffer.from(('00' +
		    'ffffffff 00000001 00000000 00000000' +
		    '00000000 ffffffff ffffffff ffffffff').
		    replace(/ /g, ''), 'hex'),
		a: Buffer.from(('00' +
		    'FFFFFFFF 00000001 00000000 00000000' +
		    '00000000 FFFFFFFF FFFFFFFF FFFFFFFC').
		    replace(/ /g, ''), 'hex'),
		b: Buffer.from((
		    '5ac635d8 aa3a93e7 b3ebbd55 769886bc' +
		    '651d06b0 cc53b0f6 3bce3c3e 27d2604b').
		    replace(/ /g, ''), 'hex'),
		s: Buffer.from(('00' +
		    'c49d3608 86e70493 6a6678e1 139d26b7' +
		    '819f7e90').
		    replace(/ /g, ''), 'hex'),
		n: Buffer.from(('00' +
		    'ffffffff 00000000 ffffffff ffffffff' +
		    'bce6faad a7179e84 f3b9cac2 fc632551').
		    replace(/ /g, ''), 'hex'),
		G: Buffer.from(('04' +
		    '6b17d1f2 e12c4247 f8bce6e5 63a440f2' +
		    '77037d81 2deb33a0 f4a13945 d898c296' +
		    '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16' +
		    '2bce3357 6b315ece cbb64068 37bf51f5').
		    replace(/ /g, ''), 'hex')
	},
	'nistp384': {
		size: 384,
		pkcs8oid: '1.3.132.0.34',
		p: Buffer.from(('00' +
		    'ffffffff ffffffff ffffffff ffffffff' +
		    'ffffffff ffffffff ffffffff fffffffe' +
		    'ffffffff 00000000 00000000 ffffffff').
		    replace(/ /g, ''), 'hex'),
		a: Buffer.from(('00' +
		    'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' +
		    'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE' +
		    'FFFFFFFF 00000000 00000000 FFFFFFFC').
		    replace(/ /g, ''), 'hex'),
		b: Buffer.from((
		    'b3312fa7 e23ee7e4 988e056b e3f82d19' +
		    '181d9c6e fe814112 0314088f 5013875a' +
		    'c656398d 8a2ed19d 2a85c8ed d3ec2aef').
		    replace(/ /g, ''), 'hex'),
		s: Buffer.from(('00' +
		    'a335926a a319a27a 1d00896a 6773a482' +
		    '7acdac73').
		    replace(/ /g, ''), 'hex'),
		n: Buffer.from(('00' +
		    'ffffffff ffffffff ffffffff ffffffff' +
		    'ffffffff ffffffff c7634d81 f4372ddf' +
		    '581a0db2 48b0a77a ecec196a ccc52973').
		    replace(/ /g, ''), 'hex'),
		G: Buffer.from(('04' +
		    'aa87ca22 be8b0537 8eb1c71e f320ad74' +
		    '6e1d3b62 8ba79b98 59f741e0 82542a38' +
		    '5502f25d bf55296c 3a545e38 72760ab7' +
		    '3617de4a 96262c6f 5d9e98bf 9292dc29' +
		    'f8f41dbd 289a147c e9da3113 b5f0b8c0' +
		    '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f').
		    replace(/ /g, ''), 'hex')
	},
	'nistp521': {
		size: 521,
		pkcs8oid: '1.3.132.0.35',
		p: Buffer.from((
		    '01ffffff ffffffff ffffffff ffffffff' +
		    'ffffffff ffffffff ffffffff ffffffff' +
		    'ffffffff ffffffff ffffffff ffffffff' +
		    'ffffffff ffffffff ffffffff ffffffff' +
		    'ffff').replace(/ /g, ''), 'hex'),
		a: Buffer.from(('01FF' +
		    'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' +
		    'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' +
		    'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' +
		    'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFC').
		    replace(/ /g, ''), 'hex'),
		b: Buffer.from(('51' +
		    '953eb961 8e1c9a1f 929a21a0 b68540ee' +
		    'a2da725b 99b315f3 b8b48991 8ef109e1' +
		    '56193951 ec7e937b 1652c0bd 3bb1bf07' +
		    '3573df88 3d2c34f1 ef451fd4 6b503f00').
		    replace(/ /g, ''), 'hex'),
		s: Buffer.from(('00' +
		    'd09e8800 291cb853 96cc6717 393284aa' +
		    'a0da64ba').replace(/ /g, ''), 'hex'),
		n: Buffer.from(('01ff' +
		    'ffffffff ffffffff ffffffff ffffffff' +
		    'ffffffff ffffffff ffffffff fffffffa' +
		    '51868783 bf2f966b 7fcc0148 f709a5d0' +
		    '3bb5c9b8 899c47ae bb6fb71e 91386409').
		    replace(/ /g, ''), 'hex'),
		G: Buffer.from(('04' +
		    '00c6 858e06b7 0404e9cd 9e3ecb66 2395b442' +
		         '9c648139 053fb521 f828af60 6b4d3dba' +
		         'a14b5e77 efe75928 fe1dc127 a2ffa8de' +
		         '3348b3c1 856a429b f97e7e31 c2e5bd66' +
		    '0118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9' +
		         '98f54449 579b4468 17afbd17 273e662c' +
		         '97ee7299 5ef42640 c550b901 3fad0761' +
		         '353c7086 a272c240 88be9476 9fd16650').
		    replace(/ /g, ''), 'hex')
	}
};

module.exports = {
	info: algInfo,
	privInfo: algPrivInfo,
	hashAlgs: hashAlgs,
	curves: curves
};


/***/ }),

/***/ 7406:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2016 Joyent, Inc.

module.exports = Certificate;

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var crypto = __webpack_require__(33373);
var Fingerprint = __webpack_require__(13079);
var Signature = __webpack_require__(91394);
var errs = __webpack_require__(27979);
var util = __webpack_require__(31669);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var Identity = __webpack_require__(70508);

var formats = {};
formats['openssh'] = __webpack_require__(94033);
formats['x509'] = __webpack_require__(10267);
formats['pem'] = __webpack_require__(30217);

var CertificateParseError = errs.CertificateParseError;
var InvalidAlgorithmError = errs.InvalidAlgorithmError;

function Certificate(opts) {
	assert.object(opts, 'options');
	assert.arrayOfObject(opts.subjects, 'options.subjects');
	utils.assertCompatible(opts.subjects[0], Identity, [1, 0],
	    'options.subjects');
	utils.assertCompatible(opts.subjectKey, Key, [1, 0],
	    'options.subjectKey');
	utils.assertCompatible(opts.issuer, Identity, [1, 0], 'options.issuer');
	if (opts.issuerKey !== undefined) {
		utils.assertCompatible(opts.issuerKey, Key, [1, 0],
		    'options.issuerKey');
	}
	assert.object(opts.signatures, 'options.signatures');
	assert.buffer(opts.serial, 'options.serial');
	assert.date(opts.validFrom, 'options.validFrom');
	assert.date(opts.validUntil, 'optons.validUntil');

	assert.optionalArrayOfString(opts.purposes, 'options.purposes');

	this._hashCache = {};

	this.subjects = opts.subjects;
	this.issuer = opts.issuer;
	this.subjectKey = opts.subjectKey;
	this.issuerKey = opts.issuerKey;
	this.signatures = opts.signatures;
	this.serial = opts.serial;
	this.validFrom = opts.validFrom;
	this.validUntil = opts.validUntil;
	this.purposes = opts.purposes;
}

Certificate.formats = formats;

Certificate.prototype.toBuffer = function (format, options) {
	if (format === undefined)
		format = 'x509';
	assert.string(format, 'format');
	assert.object(formats[format], 'formats[format]');
	assert.optionalObject(options, 'options');

	return (formats[format].write(this, options));
};

Certificate.prototype.toString = function (format, options) {
	if (format === undefined)
		format = 'pem';
	return (this.toBuffer(format, options).toString());
};

Certificate.prototype.fingerprint = function (algo) {
	if (algo === undefined)
		algo = 'sha256';
	assert.string(algo, 'algorithm');
	var opts = {
		type: 'certificate',
		hash: this.hash(algo),
		algorithm: algo
	};
	return (new Fingerprint(opts));
};

Certificate.prototype.hash = function (algo) {
	assert.string(algo, 'algorithm');
	algo = algo.toLowerCase();
	if (algs.hashAlgs[algo] === undefined)
		throw (new InvalidAlgorithmError(algo));

	if (this._hashCache[algo])
		return (this._hashCache[algo]);

	var hash = crypto.createHash(algo).
	    update(this.toBuffer('x509')).digest();
	this._hashCache[algo] = hash;
	return (hash);
};

Certificate.prototype.isExpired = function (when) {
	if (when === undefined)
		when = new Date();
	return (!((when.getTime() >= this.validFrom.getTime()) &&
		(when.getTime() < this.validUntil.getTime())));
};

Certificate.prototype.isSignedBy = function (issuerCert) {
	utils.assertCompatible(issuerCert, Certificate, [1, 0], 'issuer');

	if (!this.issuer.equals(issuerCert.subjects[0]))
		return (false);
	if (this.issuer.purposes && this.issuer.purposes.length > 0 &&
	    this.issuer.purposes.indexOf('ca') === -1) {
		return (false);
	}

	return (this.isSignedByKey(issuerCert.subjectKey));
};

Certificate.prototype.getExtension = function (keyOrOid) {
	assert.string(keyOrOid, 'keyOrOid');
	var ext = this.getExtensions().filter(function (maybeExt) {
		if (maybeExt.format === 'x509')
			return (maybeExt.oid === keyOrOid);
		if (maybeExt.format === 'openssh')
			return (maybeExt.name === keyOrOid);
		return (false);
	})[0];
	return (ext);
};

Certificate.prototype.getExtensions = function () {
	var exts = [];
	var x509 = this.signatures.x509;
	if (x509 && x509.extras && x509.extras.exts) {
		x509.extras.exts.forEach(function (ext) {
			ext.format = 'x509';
			exts.push(ext);
		});
	}
	var openssh = this.signatures.openssh;
	if (openssh && openssh.exts) {
		openssh.exts.forEach(function (ext) {
			ext.format = 'openssh';
			exts.push(ext);
		});
	}
	return (exts);
};

Certificate.prototype.isSignedByKey = function (issuerKey) {
	utils.assertCompatible(issuerKey, Key, [1, 2], 'issuerKey');

	if (this.issuerKey !== undefined) {
		return (this.issuerKey.
		    fingerprint('sha512').matches(issuerKey));
	}

	var fmt = Object.keys(this.signatures)[0];
	var valid = formats[fmt].verify(this, issuerKey);
	if (valid)
		this.issuerKey = issuerKey;
	return (valid);
};

Certificate.prototype.signWith = function (key) {
	utils.assertCompatible(key, PrivateKey, [1, 2], 'key');
	var fmts = Object.keys(formats);
	var didOne = false;
	for (var i = 0; i < fmts.length; ++i) {
		if (fmts[i] !== 'pem') {
			var ret = formats[fmts[i]].sign(this, key);
			if (ret === true)
				didOne = true;
		}
	}
	if (!didOne) {
		throw (new Error('Failed to sign the certificate for any ' +
		    'available certificate formats'));
	}
};

Certificate.createSelfSigned = function (subjectOrSubjects, key, options) {
	var subjects;
	if (Array.isArray(subjectOrSubjects))
		subjects = subjectOrSubjects;
	else
		subjects = [subjectOrSubjects];

	assert.arrayOfObject(subjects);
	subjects.forEach(function (subject) {
		utils.assertCompatible(subject, Identity, [1, 0], 'subject');
	});

	utils.assertCompatible(key, PrivateKey, [1, 2], 'private key');

	assert.optionalObject(options, 'options');
	if (options === undefined)
		options = {};
	assert.optionalObject(options.validFrom, 'options.validFrom');
	assert.optionalObject(options.validUntil, 'options.validUntil');
	var validFrom = options.validFrom;
	var validUntil = options.validUntil;
	if (validFrom === undefined)
		validFrom = new Date();
	if (validUntil === undefined) {
		assert.optionalNumber(options.lifetime, 'options.lifetime');
		var lifetime = options.lifetime;
		if (lifetime === undefined)
			lifetime = 10*365*24*3600;
		validUntil = new Date();
		validUntil.setTime(validUntil.getTime() + lifetime*1000);
	}
	assert.optionalBuffer(options.serial, 'options.serial');
	var serial = options.serial;
	if (serial === undefined)
		serial = Buffer.from('0000000000000001', 'hex');

	var purposes = options.purposes;
	if (purposes === undefined)
		purposes = [];

	if (purposes.indexOf('signature') === -1)
		purposes.push('signature');

	/* Self-signed certs are always CAs. */
	if (purposes.indexOf('ca') === -1)
		purposes.push('ca');
	if (purposes.indexOf('crl') === -1)
		purposes.push('crl');

	/*
	 * If we weren't explicitly given any other purposes, do the sensible
	 * thing and add some basic ones depending on the subject type.
	 */
	if (purposes.length <= 3) {
		var hostSubjects = subjects.filter(function (subject) {
			return (subject.type === 'host');
		});
		var userSubjects = subjects.filter(function (subject) {
			return (subject.type === 'user');
		});
		if (hostSubjects.length > 0) {
			if (purposes.indexOf('serverAuth') === -1)
				purposes.push('serverAuth');
		}
		if (userSubjects.length > 0) {
			if (purposes.indexOf('clientAuth') === -1)
				purposes.push('clientAuth');
		}
		if (userSubjects.length > 0 || hostSubjects.length > 0) {
			if (purposes.indexOf('keyAgreement') === -1)
				purposes.push('keyAgreement');
			if (key.type === 'rsa' &&
			    purposes.indexOf('encryption') === -1)
				purposes.push('encryption');
		}
	}

	var cert = new Certificate({
		subjects: subjects,
		issuer: subjects[0],
		subjectKey: key.toPublic(),
		issuerKey: key.toPublic(),
		signatures: {},
		serial: serial,
		validFrom: validFrom,
		validUntil: validUntil,
		purposes: purposes
	});
	cert.signWith(key);

	return (cert);
};

Certificate.create =
    function (subjectOrSubjects, key, issuer, issuerKey, options) {
	var subjects;
	if (Array.isArray(subjectOrSubjects))
		subjects = subjectOrSubjects;
	else
		subjects = [subjectOrSubjects];

	assert.arrayOfObject(subjects);
	subjects.forEach(function (subject) {
		utils.assertCompatible(subject, Identity, [1, 0], 'subject');
	});

	utils.assertCompatible(key, Key, [1, 0], 'key');
	if (PrivateKey.isPrivateKey(key))
		key = key.toPublic();
	utils.assertCompatible(issuer, Identity, [1, 0], 'issuer');
	utils.assertCompatible(issuerKey, PrivateKey, [1, 2], 'issuer key');

	assert.optionalObject(options, 'options');
	if (options === undefined)
		options = {};
	assert.optionalObject(options.validFrom, 'options.validFrom');
	assert.optionalObject(options.validUntil, 'options.validUntil');
	var validFrom = options.validFrom;
	var validUntil = options.validUntil;
	if (validFrom === undefined)
		validFrom = new Date();
	if (validUntil === undefined) {
		assert.optionalNumber(options.lifetime, 'options.lifetime');
		var lifetime = options.lifetime;
		if (lifetime === undefined)
			lifetime = 10*365*24*3600;
		validUntil = new Date();
		validUntil.setTime(validUntil.getTime() + lifetime*1000);
	}
	assert.optionalBuffer(options.serial, 'options.serial');
	var serial = options.serial;
	if (serial === undefined)
		serial = Buffer.from('0000000000000001', 'hex');

	var purposes = options.purposes;
	if (purposes === undefined)
		purposes = [];

	if (purposes.indexOf('signature') === -1)
		purposes.push('signature');

	if (options.ca === true) {
		if (purposes.indexOf('ca') === -1)
			purposes.push('ca');
		if (purposes.indexOf('crl') === -1)
			purposes.push('crl');
	}

	var hostSubjects = subjects.filter(function (subject) {
		return (subject.type === 'host');
	});
	var userSubjects = subjects.filter(function (subject) {
		return (subject.type === 'user');
	});
	if (hostSubjects.length > 0) {
		if (purposes.indexOf('serverAuth') === -1)
			purposes.push('serverAuth');
	}
	if (userSubjects.length > 0) {
		if (purposes.indexOf('clientAuth') === -1)
			purposes.push('clientAuth');
	}
	if (userSubjects.length > 0 || hostSubjects.length > 0) {
		if (purposes.indexOf('keyAgreement') === -1)
			purposes.push('keyAgreement');
		if (key.type === 'rsa' &&
		    purposes.indexOf('encryption') === -1)
			purposes.push('encryption');
	}

	var cert = new Certificate({
		subjects: subjects,
		issuer: issuer,
		subjectKey: key,
		issuerKey: issuerKey.toPublic(),
		signatures: {},
		serial: serial,
		validFrom: validFrom,
		validUntil: validUntil,
		purposes: purposes
	});
	cert.signWith(issuerKey);

	return (cert);
};

Certificate.parse = function (data, format, options) {
	if (typeof (data) !== 'string')
		assert.buffer(data, 'data');
	if (format === undefined)
		format = 'auto';
	assert.string(format, 'format');
	if (typeof (options) === 'string')
		options = { filename: options };
	assert.optionalObject(options, 'options');
	if (options === undefined)
		options = {};
	assert.optionalString(options.filename, 'options.filename');
	if (options.filename === undefined)
		options.filename = '(unnamed)';

	assert.object(formats[format], 'formats[format]');

	try {
		var k = formats[format].read(data, options);
		return (k);
	} catch (e) {
		throw (new CertificateParseError(options.filename, format, e));
	}
};

Certificate.isCertificate = function (obj, ver) {
	return (utils.isCompatible(obj, Certificate, ver));
};

/*
 * API versions for Certificate:
 * [1,0] -- initial ver
 * [1,1] -- openssh format now unpacks extensions
 */
Certificate.prototype._sshpkApiVersion = [1, 1];

Certificate._oldVersionDetect = function (obj) {
	return ([1, 0]);
};


/***/ }),

/***/ 57602:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2017 Joyent, Inc.

module.exports = {
	DiffieHellman: DiffieHellman,
	generateECDSA: generateECDSA,
	generateED25519: generateED25519
};

var assert = __webpack_require__(66631);
var crypto = __webpack_require__(33373);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var nacl = __webpack_require__(68729);

var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);

var CRYPTO_HAVE_ECDH = (crypto.createECDH !== undefined);

var ecdh = __webpack_require__(49865);
var ec = __webpack_require__(3943);
var jsbn = __webpack_require__(85587).BigInteger;

function DiffieHellman(key) {
	utils.assertCompatible(key, Key, [1, 4], 'key');
	this._isPriv = PrivateKey.isPrivateKey(key, [1, 3]);
	this._algo = key.type;
	this._curve = key.curve;
	this._key = key;
	if (key.type === 'dsa') {
		if (!CRYPTO_HAVE_ECDH) {
			throw (new Error('Due to bugs in the node 0.10 ' +
			    'crypto API, node 0.12.x or later is required ' +
			    'to use DH'));
		}
		this._dh = crypto.createDiffieHellman(
		    key.part.p.data, undefined,
		    key.part.g.data, undefined);
		this._p = key.part.p;
		this._g = key.part.g;
		if (this._isPriv)
			this._dh.setPrivateKey(key.part.x.data);
		this._dh.setPublicKey(key.part.y.data);

	} else if (key.type === 'ecdsa') {
		if (!CRYPTO_HAVE_ECDH) {
			this._ecParams = new X9ECParameters(this._curve);

			if (this._isPriv) {
				this._priv = new ECPrivate(
				    this._ecParams, key.part.d.data);
			}
			return;
		}

		var curve = {
			'nistp256': 'prime256v1',
			'nistp384': 'secp384r1',
			'nistp521': 'secp521r1'
		}[key.curve];
		this._dh = crypto.createECDH(curve);
		if (typeof (this._dh) !== 'object' ||
		    typeof (this._dh.setPrivateKey) !== 'function') {
			CRYPTO_HAVE_ECDH = false;
			DiffieHellman.call(this, key);
			return;
		}
		if (this._isPriv)
			this._dh.setPrivateKey(key.part.d.data);
		this._dh.setPublicKey(key.part.Q.data);

	} else if (key.type === 'curve25519') {
		if (this._isPriv) {
			utils.assertCompatible(key, PrivateKey, [1, 5], 'key');
			this._priv = key.part.k.data;
		}

	} else {
		throw (new Error('DH not supported for ' + key.type + ' keys'));
	}
}

DiffieHellman.prototype.getPublicKey = function () {
	if (this._isPriv)
		return (this._key.toPublic());
	return (this._key);
};

DiffieHellman.prototype.getPrivateKey = function () {
	if (this._isPriv)
		return (this._key);
	else
		return (undefined);
};
DiffieHellman.prototype.getKey = DiffieHellman.prototype.getPrivateKey;

DiffieHellman.prototype._keyCheck = function (pk, isPub) {
	assert.object(pk, 'key');
	if (!isPub)
		utils.assertCompatible(pk, PrivateKey, [1, 3], 'key');
	utils.assertCompatible(pk, Key, [1, 4], 'key');

	if (pk.type !== this._algo) {
		throw (new Error('A ' + pk.type + ' key cannot be used in ' +
		    this._algo + ' Diffie-Hellman'));
	}

	if (pk.curve !== this._curve) {
		throw (new Error('A key from the ' + pk.curve + ' curve ' +
		    'cannot be used with a ' + this._curve +
		    ' Diffie-Hellman'));
	}

	if (pk.type === 'dsa') {
		assert.deepEqual(pk.part.p, this._p,
		    'DSA key prime does not match');
		assert.deepEqual(pk.part.g, this._g,
		    'DSA key generator does not match');
	}
};

DiffieHellman.prototype.setKey = function (pk) {
	this._keyCheck(pk);

	if (pk.type === 'dsa') {
		this._dh.setPrivateKey(pk.part.x.data);
		this._dh.setPublicKey(pk.part.y.data);

	} else if (pk.type === 'ecdsa') {
		if (CRYPTO_HAVE_ECDH) {
			this._dh.setPrivateKey(pk.part.d.data);
			this._dh.setPublicKey(pk.part.Q.data);
		} else {
			this._priv = new ECPrivate(
			    this._ecParams, pk.part.d.data);
		}

	} else if (pk.type === 'curve25519') {
		var k = pk.part.k;
		if (!pk.part.k)
			k = pk.part.r;
		this._priv = k.data;
		if (this._priv[0] === 0x00)
			this._priv = this._priv.slice(1);
		this._priv = this._priv.slice(0, 32);
	}
	this._key = pk;
	this._isPriv = true;
};
DiffieHellman.prototype.setPrivateKey = DiffieHellman.prototype.setKey;

DiffieHellman.prototype.computeSecret = function (otherpk) {
	this._keyCheck(otherpk, true);
	if (!this._isPriv)
		throw (new Error('DH exchange has not been initialized with ' +
		    'a private key yet'));

	var pub;
	if (this._algo === 'dsa') {
		return (this._dh.computeSecret(
		    otherpk.part.y.data));

	} else if (this._algo === 'ecdsa') {
		if (CRYPTO_HAVE_ECDH) {
			return (this._dh.computeSecret(
			    otherpk.part.Q.data));
		} else {
			pub = new ECPublic(
			    this._ecParams, otherpk.part.Q.data);
			return (this._priv.deriveSharedSecret(pub));
		}

	} else if (this._algo === 'curve25519') {
		pub = otherpk.part.A.data;
		while (pub[0] === 0x00 && pub.length > 32)
			pub = pub.slice(1);
		var priv = this._priv;
		assert.strictEqual(pub.length, 32);
		assert.strictEqual(priv.length, 32);

		var secret = nacl.box.before(new Uint8Array(pub),
		    new Uint8Array(priv));

		return (Buffer.from(secret));
	}

	throw (new Error('Invalid algorithm: ' + this._algo));
};

DiffieHellman.prototype.generateKey = function () {
	var parts = [];
	var priv, pub;
	if (this._algo === 'dsa') {
		this._dh.generateKeys();

		parts.push({name: 'p', data: this._p.data});
		parts.push({name: 'q', data: this._key.part.q.data});
		parts.push({name: 'g', data: this._g.data});
		parts.push({name: 'y', data: this._dh.getPublicKey()});
		parts.push({name: 'x', data: this._dh.getPrivateKey()});
		this._key = new PrivateKey({
			type: 'dsa',
			parts: parts
		});
		this._isPriv = true;
		return (this._key);

	} else if (this._algo === 'ecdsa') {
		if (CRYPTO_HAVE_ECDH) {
			this._dh.generateKeys();

			parts.push({name: 'curve',
			    data: Buffer.from(this._curve)});
			parts.push({name: 'Q', data: this._dh.getPublicKey()});
			parts.push({name: 'd', data: this._dh.getPrivateKey()});
			this._key = new PrivateKey({
				type: 'ecdsa',
				curve: this._curve,
				parts: parts
			});
			this._isPriv = true;
			return (this._key);

		} else {
			var n = this._ecParams.getN();
			var r = new jsbn(crypto.randomBytes(n.bitLength()));
			var n1 = n.subtract(jsbn.ONE);
			priv = r.mod(n1).add(jsbn.ONE);
			pub = this._ecParams.getG().multiply(priv);

			priv = Buffer.from(priv.toByteArray());
			pub = Buffer.from(this._ecParams.getCurve().
			    encodePointHex(pub), 'hex');

			this._priv = new ECPrivate(this._ecParams, priv);

			parts.push({name: 'curve',
			    data: Buffer.from(this._curve)});
			parts.push({name: 'Q', data: pub});
			parts.push({name: 'd', data: priv});

			this._key = new PrivateKey({
				type: 'ecdsa',
				curve: this._curve,
				parts: parts
			});
			this._isPriv = true;
			return (this._key);
		}

	} else if (this._algo === 'curve25519') {
		var pair = nacl.box.keyPair();
		priv = Buffer.from(pair.secretKey);
		pub = Buffer.from(pair.publicKey);
		priv = Buffer.concat([priv, pub]);
		assert.strictEqual(priv.length, 64);
		assert.strictEqual(pub.length, 32);

		parts.push({name: 'A', data: pub});
		parts.push({name: 'k', data: priv});
		this._key = new PrivateKey({
			type: 'curve25519',
			parts: parts
		});
		this._isPriv = true;
		return (this._key);
	}

	throw (new Error('Invalid algorithm: ' + this._algo));
};
DiffieHellman.prototype.generateKeys = DiffieHellman.prototype.generateKey;

/* These are helpers for using ecc-jsbn (for node 0.10 compatibility). */

function X9ECParameters(name) {
	var params = algs.curves[name];
	assert.object(params);

	var p = new jsbn(params.p);
	var a = new jsbn(params.a);
	var b = new jsbn(params.b);
	var n = new jsbn(params.n);
	var h = jsbn.ONE;
	var curve = new ec.ECCurveFp(p, a, b);
	var G = curve.decodePointHex(params.G.toString('hex'));

	this.curve = curve;
	this.g = G;
	this.n = n;
	this.h = h;
}
X9ECParameters.prototype.getCurve = function () { return (this.curve); };
X9ECParameters.prototype.getG = function () { return (this.g); };
X9ECParameters.prototype.getN = function () { return (this.n); };
X9ECParameters.prototype.getH = function () { return (this.h); };

function ECPublic(params, buffer) {
	this._params = params;
	if (buffer[0] === 0x00)
		buffer = buffer.slice(1);
	this._pub = params.getCurve().decodePointHex(buffer.toString('hex'));
}

function ECPrivate(params, buffer) {
	this._params = params;
	this._priv = new jsbn(utils.mpNormalize(buffer));
}
ECPrivate.prototype.deriveSharedSecret = function (pubKey) {
	assert.ok(pubKey instanceof ECPublic);
	var S = pubKey._pub.multiply(this._priv);
	return (Buffer.from(S.getX().toBigInteger().toByteArray()));
};

function generateED25519() {
	var pair = nacl.sign.keyPair();
	var priv = Buffer.from(pair.secretKey);
	var pub = Buffer.from(pair.publicKey);
	assert.strictEqual(priv.length, 64);
	assert.strictEqual(pub.length, 32);

	var parts = [];
	parts.push({name: 'A', data: pub});
	parts.push({name: 'k', data: priv.slice(0, 32)});
	var key = new PrivateKey({
		type: 'ed25519',
		parts: parts
	});
	return (key);
}

/* Generates a new ECDSA private key on a given curve. */
function generateECDSA(curve) {
	var parts = [];
	var key;

	if (CRYPTO_HAVE_ECDH) {
		/*
		 * Node crypto doesn't expose key generation directly, but the
		 * ECDH instances can generate keys. It turns out this just
		 * calls into the OpenSSL generic key generator, and we can
		 * read its output happily without doing an actual DH. So we
		 * use that here.
		 */
		var osCurve = {
			'nistp256': 'prime256v1',
			'nistp384': 'secp384r1',
			'nistp521': 'secp521r1'
		}[curve];

		var dh = crypto.createECDH(osCurve);
		dh.generateKeys();

		parts.push({name: 'curve',
		    data: Buffer.from(curve)});
		parts.push({name: 'Q', data: dh.getPublicKey()});
		parts.push({name: 'd', data: dh.getPrivateKey()});

		key = new PrivateKey({
			type: 'ecdsa',
			curve: curve,
			parts: parts
		});
		return (key);
	} else {

		var ecParams = new X9ECParameters(curve);

		/* This algorithm taken from FIPS PUB 186-4 (section B.4.1) */
		var n = ecParams.getN();
		/*
		 * The crypto.randomBytes() function can only give us whole
		 * bytes, so taking a nod from X9.62, we round up.
		 */
		var cByteLen = Math.ceil((n.bitLength() + 64) / 8);
		var c = new jsbn(crypto.randomBytes(cByteLen));

		var n1 = n.subtract(jsbn.ONE);
		var priv = c.mod(n1).add(jsbn.ONE);
		var pub = ecParams.getG().multiply(priv);

		priv = Buffer.from(priv.toByteArray());
		pub = Buffer.from(ecParams.getCurve().
		    encodePointHex(pub), 'hex');

		parts.push({name: 'curve', data: Buffer.from(curve)});
		parts.push({name: 'Q', data: pub});
		parts.push({name: 'd', data: priv});

		key = new PrivateKey({
			type: 'ecdsa',
			curve: curve,
			parts: parts
		});
		return (key);
	}
}


/***/ }),

/***/ 14694:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = {
	Verifier: Verifier,
	Signer: Signer
};

var nacl = __webpack_require__(68729);
var stream = __webpack_require__(92413);
var util = __webpack_require__(31669);
var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var Signature = __webpack_require__(91394);

function Verifier(key, hashAlgo) {
	if (hashAlgo.toLowerCase() !== 'sha512')
		throw (new Error('ED25519 only supports the use of ' +
		    'SHA-512 hashes'));

	this.key = key;
	this.chunks = [];

	stream.Writable.call(this, {});
}
util.inherits(Verifier, stream.Writable);

Verifier.prototype._write = function (chunk, enc, cb) {
	this.chunks.push(chunk);
	cb();
};

Verifier.prototype.update = function (chunk) {
	if (typeof (chunk) === 'string')
		chunk = Buffer.from(chunk, 'binary');
	this.chunks.push(chunk);
};

Verifier.prototype.verify = function (signature, fmt) {
	var sig;
	if (Signature.isSignature(signature, [2, 0])) {
		if (signature.type !== 'ed25519')
			return (false);
		sig = signature.toBuffer('raw');

	} else if (typeof (signature) === 'string') {
		sig = Buffer.from(signature, 'base64');

	} else if (Signature.isSignature(signature, [1, 0])) {
		throw (new Error('signature was created by too old ' +
		    'a version of sshpk and cannot be verified'));
	}

	assert.buffer(sig);
	return (nacl.sign.detached.verify(
	    new Uint8Array(Buffer.concat(this.chunks)),
	    new Uint8Array(sig),
	    new Uint8Array(this.key.part.A.data)));
};

function Signer(key, hashAlgo) {
	if (hashAlgo.toLowerCase() !== 'sha512')
		throw (new Error('ED25519 only supports the use of ' +
		    'SHA-512 hashes'));

	this.key = key;
	this.chunks = [];

	stream.Writable.call(this, {});
}
util.inherits(Signer, stream.Writable);

Signer.prototype._write = function (chunk, enc, cb) {
	this.chunks.push(chunk);
	cb();
};

Signer.prototype.update = function (chunk) {
	if (typeof (chunk) === 'string')
		chunk = Buffer.from(chunk, 'binary');
	this.chunks.push(chunk);
};

Signer.prototype.sign = function () {
	var sig = nacl.sign.detached(
	    new Uint8Array(Buffer.concat(this.chunks)),
	    new Uint8Array(Buffer.concat([
		this.key.part.k.data, this.key.part.A.data])));
	var sigBuf = Buffer.from(sig);
	var sigObj = Signature.parse(sigBuf, 'ed25519', 'raw');
	sigObj.hashAlgorithm = 'sha512';
	return (sigObj);
};


/***/ }),

/***/ 27979:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

var assert = __webpack_require__(66631);
var util = __webpack_require__(31669);

function FingerprintFormatError(fp, format) {
	if (Error.captureStackTrace)
		Error.captureStackTrace(this, FingerprintFormatError);
	this.name = 'FingerprintFormatError';
	this.fingerprint = fp;
	this.format = format;
	this.message = 'Fingerprint format is not supported, or is invalid: ';
	if (fp !== undefined)
		this.message += ' fingerprint = ' + fp;
	if (format !== undefined)
		this.message += ' format = ' + format;
}
util.inherits(FingerprintFormatError, Error);

function InvalidAlgorithmError(alg) {
	if (Error.captureStackTrace)
		Error.captureStackTrace(this, InvalidAlgorithmError);
	this.name = 'InvalidAlgorithmError';
	this.algorithm = alg;
	this.message = 'Algorithm "' + alg + '" is not supported';
}
util.inherits(InvalidAlgorithmError, Error);

function KeyParseError(name, format, innerErr) {
	if (Error.captureStackTrace)
		Error.captureStackTrace(this, KeyParseError);
	this.name = 'KeyParseError';
	this.format = format;
	this.keyName = name;
	this.innerErr = innerErr;
	this.message = 'Failed to parse ' + name + ' as a valid ' + format +
	    ' format key: ' + innerErr.message;
}
util.inherits(KeyParseError, Error);

function SignatureParseError(type, format, innerErr) {
	if (Error.captureStackTrace)
		Error.captureStackTrace(this, SignatureParseError);
	this.name = 'SignatureParseError';
	this.type = type;
	this.format = format;
	this.innerErr = innerErr;
	this.message = 'Failed to parse the given data as a ' + type +
	    ' signature in ' + format + ' format: ' + innerErr.message;
}
util.inherits(SignatureParseError, Error);

function CertificateParseError(name, format, innerErr) {
	if (Error.captureStackTrace)
		Error.captureStackTrace(this, CertificateParseError);
	this.name = 'CertificateParseError';
	this.format = format;
	this.certName = name;
	this.innerErr = innerErr;
	this.message = 'Failed to parse ' + name + ' as a valid ' + format +
	    ' format certificate: ' + innerErr.message;
}
util.inherits(CertificateParseError, Error);

function KeyEncryptedError(name, format) {
	if (Error.captureStackTrace)
		Error.captureStackTrace(this, KeyEncryptedError);
	this.name = 'KeyEncryptedError';
	this.format = format;
	this.keyName = name;
	this.message = 'The ' + format + ' format key ' + name + ' is ' +
	    'encrypted (password-protected), and no passphrase was ' +
	    'provided in `options`';
}
util.inherits(KeyEncryptedError, Error);

module.exports = {
	FingerprintFormatError: FingerprintFormatError,
	InvalidAlgorithmError: InvalidAlgorithmError,
	KeyParseError: KeyParseError,
	SignatureParseError: SignatureParseError,
	KeyEncryptedError: KeyEncryptedError,
	CertificateParseError: CertificateParseError
};


/***/ }),

/***/ 13079:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2018 Joyent, Inc.

module.exports = Fingerprint;

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var crypto = __webpack_require__(33373);
var errs = __webpack_require__(27979);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var Certificate = __webpack_require__(7406);
var utils = __webpack_require__(80575);

var FingerprintFormatError = errs.FingerprintFormatError;
var InvalidAlgorithmError = errs.InvalidAlgorithmError;

function Fingerprint(opts) {
	assert.object(opts, 'options');
	assert.string(opts.type, 'options.type');
	assert.buffer(opts.hash, 'options.hash');
	assert.string(opts.algorithm, 'options.algorithm');

	this.algorithm = opts.algorithm.toLowerCase();
	if (algs.hashAlgs[this.algorithm] !== true)
		throw (new InvalidAlgorithmError(this.algorithm));

	this.hash = opts.hash;
	this.type = opts.type;
	this.hashType = opts.hashType;
}

Fingerprint.prototype.toString = function (format) {
	if (format === undefined) {
		if (this.algorithm === 'md5' || this.hashType === 'spki')
			format = 'hex';
		else
			format = 'base64';
	}
	assert.string(format);

	switch (format) {
	case 'hex':
		if (this.hashType === 'spki')
			return (this.hash.toString('hex'));
		return (addColons(this.hash.toString('hex')));
	case 'base64':
		if (this.hashType === 'spki')
			return (this.hash.toString('base64'));
		return (sshBase64Format(this.algorithm,
		    this.hash.toString('base64')));
	default:
		throw (new FingerprintFormatError(undefined, format));
	}
};

Fingerprint.prototype.matches = function (other) {
	assert.object(other, 'key or certificate');
	if (this.type === 'key' && this.hashType !== 'ssh') {
		utils.assertCompatible(other, Key, [1, 7], 'key with spki');
		if (PrivateKey.isPrivateKey(other)) {
			utils.assertCompatible(other, PrivateKey, [1, 6],
			    'privatekey with spki support');
		}
	} else if (this.type === 'key') {
		utils.assertCompatible(other, Key, [1, 0], 'key');
	} else {
		utils.assertCompatible(other, Certificate, [1, 0],
		    'certificate');
	}

	var theirHash = other.hash(this.algorithm, this.hashType);
	var theirHash2 = crypto.createHash(this.algorithm).
	    update(theirHash).digest('base64');

	if (this.hash2 === undefined)
		this.hash2 = crypto.createHash(this.algorithm).
		    update(this.hash).digest('base64');

	return (this.hash2 === theirHash2);
};

/*JSSTYLED*/
var base64RE = /^[A-Za-z0-9+\/=]+$/;
/*JSSTYLED*/
var hexRE = /^[a-fA-F0-9]+$/;

Fingerprint.parse = function (fp, options) {
	assert.string(fp, 'fingerprint');

	var alg, hash, enAlgs;
	if (Array.isArray(options)) {
		enAlgs = options;
		options = {};
	}
	assert.optionalObject(options, 'options');
	if (options === undefined)
		options = {};
	if (options.enAlgs !== undefined)
		enAlgs = options.enAlgs;
	if (options.algorithms !== undefined)
		enAlgs = options.algorithms;
	assert.optionalArrayOfString(enAlgs, 'algorithms');

	var hashType = 'ssh';
	if (options.hashType !== undefined)
		hashType = options.hashType;
	assert.string(hashType, 'options.hashType');

	var parts = fp.split(':');
	if (parts.length == 2) {
		alg = parts[0].toLowerCase();
		if (!base64RE.test(parts[1]))
			throw (new FingerprintFormatError(fp));
		try {
			hash = Buffer.from(parts[1], 'base64');
		} catch (e) {
			throw (new FingerprintFormatError(fp));
		}
	} else if (parts.length > 2) {
		alg = 'md5';
		if (parts[0].toLowerCase() === 'md5')
			parts = parts.slice(1);
		parts = parts.map(function (p) {
			while (p.length < 2)
				p = '0' + p;
			if (p.length > 2)
				throw (new FingerprintFormatError(fp));
			return (p);
		});
		parts = parts.join('');
		if (!hexRE.test(parts) || parts.length % 2 !== 0)
			throw (new FingerprintFormatError(fp));
		try {
			hash = Buffer.from(parts, 'hex');
		} catch (e) {
			throw (new FingerprintFormatError(fp));
		}
	} else {
		if (hexRE.test(fp)) {
			hash = Buffer.from(fp, 'hex');
		} else if (base64RE.test(fp)) {
			hash = Buffer.from(fp, 'base64');
		} else {
			throw (new FingerprintFormatError(fp));
		}

		switch (hash.length) {
		case 32:
			alg = 'sha256';
			break;
		case 16:
			alg = 'md5';
			break;
		case 20:
			alg = 'sha1';
			break;
		case 64:
			alg = 'sha512';
			break;
		default:
			throw (new FingerprintFormatError(fp));
		}

		/* Plain hex/base64: guess it's probably SPKI unless told. */
		if (options.hashType === undefined)
			hashType = 'spki';
	}

	if (alg === undefined)
		throw (new FingerprintFormatError(fp));

	if (algs.hashAlgs[alg] === undefined)
		throw (new InvalidAlgorithmError(alg));

	if (enAlgs !== undefined) {
		enAlgs = enAlgs.map(function (a) { return a.toLowerCase(); });
		if (enAlgs.indexOf(alg) === -1)
			throw (new InvalidAlgorithmError(alg));
	}

	return (new Fingerprint({
		algorithm: alg,
		hash: hash,
		type: options.type || 'key',
		hashType: hashType
	}));
};

function addColons(s) {
	/*JSSTYLED*/
	return (s.replace(/(.{2})(?=.)/g, '$1:'));
}

function base64Strip(s) {
	/*JSSTYLED*/
	return (s.replace(/=*$/, ''));
}

function sshBase64Format(alg, h) {
	return (alg.toUpperCase() + ':' + base64Strip(h));
}

Fingerprint.isFingerprint = function (obj, ver) {
	return (utils.isCompatible(obj, Fingerprint, ver));
};

/*
 * API versions for Fingerprint:
 * [1,0] -- initial ver
 * [1,1] -- first tagged ver
 * [1,2] -- hashType and spki support
 */
Fingerprint.prototype._sshpkApiVersion = [1, 2];

Fingerprint._oldVersionDetect = function (obj) {
	assert.func(obj.toString);
	assert.func(obj.matches);
	return ([1, 0]);
};


/***/ }),

/***/ 8243:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2018 Joyent, Inc.

module.exports = {
	read: read,
	write: write
};

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);

var pem = __webpack_require__(14324);
var ssh = __webpack_require__(68927);
var rfc4253 = __webpack_require__(88688);
var dnssec = __webpack_require__(63561);
var putty = __webpack_require__(80974);

var DNSSEC_PRIVKEY_HEADER_PREFIX = 'Private-key-format: v1';

function read(buf, options) {
	if (typeof (buf) === 'string') {
		if (buf.trim().match(/^[-]+[ ]*BEGIN/))
			return (pem.read(buf, options));
		if (buf.match(/^\s*ssh-[a-z]/))
			return (ssh.read(buf, options));
		if (buf.match(/^\s*ecdsa-/))
			return (ssh.read(buf, options));
		if (buf.match(/^putty-user-key-file-2:/i))
			return (putty.read(buf, options));
		if (findDNSSECHeader(buf))
			return (dnssec.read(buf, options));
		buf = Buffer.from(buf, 'binary');
	} else {
		assert.buffer(buf);
		if (findPEMHeader(buf))
			return (pem.read(buf, options));
		if (findSSHHeader(buf))
			return (ssh.read(buf, options));
		if (findPuTTYHeader(buf))
			return (putty.read(buf, options));
		if (findDNSSECHeader(buf))
			return (dnssec.read(buf, options));
	}
	if (buf.readUInt32BE(0) < buf.length)
		return (rfc4253.read(buf, options));
	throw (new Error('Failed to auto-detect format of key'));
}

function findPuTTYHeader(buf) {
	var offset = 0;
	while (offset < buf.length &&
	    (buf[offset] === 32 || buf[offset] === 10 || buf[offset] === 9))
		++offset;
	if (offset + 22 <= buf.length &&
	    buf.slice(offset, offset + 22).toString('ascii').toLowerCase() ===
	    'putty-user-key-file-2:')
		return (true);
	return (false);
}

function findSSHHeader(buf) {
	var offset = 0;
	while (offset < buf.length &&
	    (buf[offset] === 32 || buf[offset] === 10 || buf[offset] === 9))
		++offset;
	if (offset + 4 <= buf.length &&
	    buf.slice(offset, offset + 4).toString('ascii') === 'ssh-')
		return (true);
	if (offset + 6 <= buf.length &&
	    buf.slice(offset, offset + 6).toString('ascii') === 'ecdsa-')
		return (true);
	return (false);
}

function findPEMHeader(buf) {
	var offset = 0;
	while (offset < buf.length &&
	    (buf[offset] === 32 || buf[offset] === 10))
		++offset;
	if (buf[offset] !== 45)
		return (false);
	while (offset < buf.length &&
	    (buf[offset] === 45))
		++offset;
	while (offset < buf.length &&
	    (buf[offset] === 32))
		++offset;
	if (offset + 5 > buf.length ||
	    buf.slice(offset, offset + 5).toString('ascii') !== 'BEGIN')
		return (false);
	return (true);
}

function findDNSSECHeader(buf) {
	// private case first
	if (buf.length <= DNSSEC_PRIVKEY_HEADER_PREFIX.length)
		return (false);
	var headerCheck = buf.slice(0, DNSSEC_PRIVKEY_HEADER_PREFIX.length);
	if (headerCheck.toString('ascii') === DNSSEC_PRIVKEY_HEADER_PREFIX)
		return (true);

	// public-key RFC3110 ?
	// 'domain.com. IN KEY ...' or 'domain.com. IN DNSKEY ...'
	// skip any comment-lines
	if (typeof (buf) !== 'string') {
		buf = buf.toString('ascii');
	}
	var lines = buf.split('\n');
	var line = 0;
	/* JSSTYLED */
	while (lines[line].match(/^\;/))
		line++;
	if (lines[line].toString('ascii').match(/\. IN KEY /))
		return (true);
	if (lines[line].toString('ascii').match(/\. IN DNSKEY /))
		return (true);
	return (false);
}

function write(key, options) {
	throw (new Error('"auto" format cannot be used for writing'));
}


/***/ }),

/***/ 63561:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2017 Joyent, Inc.

module.exports = {
	read: read,
	write: write
};

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var utils = __webpack_require__(80575);
var SSHBuffer = __webpack_require__(25621);
var Dhe = __webpack_require__(57602);

var supportedAlgos = {
	'rsa-sha1' : 5,
	'rsa-sha256' : 8,
	'rsa-sha512' : 10,
	'ecdsa-p256-sha256' : 13,
	'ecdsa-p384-sha384' : 14
	/*
	 * ed25519 is hypothetically supported with id 15
	 * but the common tools available don't appear to be
	 * capable of generating/using ed25519 keys
	 */
};

var supportedAlgosById = {};
Object.keys(supportedAlgos).forEach(function (k) {
	supportedAlgosById[supportedAlgos[k]] = k.toUpperCase();
});

function read(buf, options) {
	if (typeof (buf) !== 'string') {
		assert.buffer(buf, 'buf');
		buf = buf.toString('ascii');
	}
	var lines = buf.split('\n');
	if (lines[0].match(/^Private-key-format\: v1/)) {
		var algElems = lines[1].split(' ');
		var algoNum = parseInt(algElems[1], 10);
		var algoName = algElems[2];
		if (!supportedAlgosById[algoNum])
			throw (new Error('Unsupported algorithm: ' + algoName));
		return (readDNSSECPrivateKey(algoNum, lines.slice(2)));
	}

	// skip any comment-lines
	var line = 0;
	/* JSSTYLED */
	while (lines[line].match(/^\;/))
		line++;
	// we should now have *one single* line left with our KEY on it.
	if ((lines[line].match(/\. IN KEY /) ||
	    lines[line].match(/\. IN DNSKEY /)) && lines[line+1].length === 0) {
		return (readRFC3110(lines[line]));
	}
	throw (new Error('Cannot parse dnssec key'));
}

function readRFC3110(keyString) {
	var elems = keyString.split(' ');
	//unused var flags = parseInt(elems[3], 10);
	//unused var protocol = parseInt(elems[4], 10);
	var algorithm = parseInt(elems[5], 10);
	if (!supportedAlgosById[algorithm])
		throw (new Error('Unsupported algorithm: ' + algorithm));
	var base64key = elems.slice(6, elems.length).join();
	var keyBuffer = Buffer.from(base64key, 'base64');
	if (supportedAlgosById[algorithm].match(/^RSA-/)) {
		// join the rest of the body into a single base64-blob
		var publicExponentLen = keyBuffer.readUInt8(0);
		if (publicExponentLen != 3 && publicExponentLen != 1)
			throw (new Error('Cannot parse dnssec key: ' +
			    'unsupported exponent length'));

		var publicExponent = keyBuffer.slice(1, publicExponentLen+1);
		publicExponent = utils.mpNormalize(publicExponent);
		var modulus = keyBuffer.slice(1+publicExponentLen);
		modulus = utils.mpNormalize(modulus);
		// now, make the key
		var rsaKey = {
			type: 'rsa',
			parts: []
		};
		rsaKey.parts.push({ name: 'e', data: publicExponent});
		rsaKey.parts.push({ name: 'n', data: modulus});
		return (new Key(rsaKey));
	}
	if (supportedAlgosById[algorithm] === 'ECDSA-P384-SHA384' ||
	    supportedAlgosById[algorithm] === 'ECDSA-P256-SHA256') {
		var curve = 'nistp384';
		var size = 384;
		if (supportedAlgosById[algorithm].match(/^ECDSA-P256-SHA256/)) {
			curve = 'nistp256';
			size = 256;
		}

		var ecdsaKey = {
			type: 'ecdsa',
			curve: curve,
			size: size,
			parts: [
				{name: 'curve', data: Buffer.from(curve) },
				{name: 'Q', data: utils.ecNormalize(keyBuffer) }
			]
		};
		return (new Key(ecdsaKey));
	}
	throw (new Error('Unsupported algorithm: ' +
	    supportedAlgosById[algorithm]));
}

function elementToBuf(e) {
	return (Buffer.from(e.split(' ')[1], 'base64'));
}

function readDNSSECRSAPrivateKey(elements) {
	var rsaParams = {};
	elements.forEach(function (element) {
		if (element.split(' ')[0] === 'Modulus:')
			rsaParams['n'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'PublicExponent:')
			rsaParams['e'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'PrivateExponent:')
			rsaParams['d'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'Prime1:')
			rsaParams['p'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'Prime2:')
			rsaParams['q'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'Exponent1:')
			rsaParams['dmodp'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'Exponent2:')
			rsaParams['dmodq'] = elementToBuf(element);
		else if (element.split(' ')[0] === 'Coefficient:')
			rsaParams['iqmp'] = elementToBuf(element);
	});
	// now, make the key
	var key = {
		type: 'rsa',
		parts: [
			{ name: 'e', data: utils.mpNormalize(rsaParams['e'])},
			{ name: 'n', data: utils.mpNormalize(rsaParams['n'])},
			{ name: 'd', data: utils.mpNormalize(rsaParams['d'])},
			{ name: 'p', data: utils.mpNormalize(rsaParams['p'])},
			{ name: 'q', data: utils.mpNormalize(rsaParams['q'])},
			{ name: 'dmodp',
			    data: utils.mpNormalize(rsaParams['dmodp'])},
			{ name: 'dmodq',
			    data: utils.mpNormalize(rsaParams['dmodq'])},
			{ name: 'iqmp',
			    data: utils.mpNormalize(rsaParams['iqmp'])}
		]
	};
	return (new PrivateKey(key));
}

function readDNSSECPrivateKey(alg, elements) {
	if (supportedAlgosById[alg].match(/^RSA-/)) {
		return (readDNSSECRSAPrivateKey(elements));
	}
	if (supportedAlgosById[alg] === 'ECDSA-P384-SHA384' ||
	    supportedAlgosById[alg] === 'ECDSA-P256-SHA256') {
		var d = Buffer.from(elements[0].split(' ')[1], 'base64');
		var curve = 'nistp384';
		var size = 384;
		if (supportedAlgosById[alg] === 'ECDSA-P256-SHA256') {
			curve = 'nistp256';
			size = 256;
		}
		// DNSSEC generates the public-key on the fly (go calculate it)
		var publicKey = utils.publicFromPrivateECDSA(curve, d);
		var Q = publicKey.part['Q'].data;
		var ecdsaKey = {
			type: 'ecdsa',
			curve: curve,
			size: size,
			parts: [
				{name: 'curve', data: Buffer.from(curve) },
				{name: 'd', data: d },
				{name: 'Q', data: Q }
			]
		};
		return (new PrivateKey(ecdsaKey));
	}
	throw (new Error('Unsupported algorithm: ' + supportedAlgosById[alg]));
}

function dnssecTimestamp(date) {
	var year = date.getFullYear() + ''; //stringify
	var month = (date.getMonth() + 1);
	var timestampStr = year + month + date.getUTCDate();
	timestampStr += '' + date.getUTCHours() + date.getUTCMinutes();
	timestampStr += date.getUTCSeconds();
	return (timestampStr);
}

function rsaAlgFromOptions(opts) {
	if (!opts || !opts.hashAlgo || opts.hashAlgo === 'sha1')
		return ('5 (RSASHA1)');
	else if (opts.hashAlgo === 'sha256')
		return ('8 (RSASHA256)');
	else if (opts.hashAlgo === 'sha512')
		return ('10 (RSASHA512)');
	else
		throw (new Error('Unknown or unsupported hash: ' +
		    opts.hashAlgo));
}

function writeRSA(key, options) {
	// if we're missing parts, add them.
	if (!key.part.dmodp || !key.part.dmodq) {
		utils.addRSAMissing(key);
	}

	var out = '';
	out += 'Private-key-format: v1.3\n';
	out += 'Algorithm: ' + rsaAlgFromOptions(options) + '\n';
	var n = utils.mpDenormalize(key.part['n'].data);
	out += 'Modulus: ' + n.toString('base64') + '\n';
	var e = utils.mpDenormalize(key.part['e'].data);
	out += 'PublicExponent: ' + e.toString('base64') + '\n';
	var d = utils.mpDenormalize(key.part['d'].data);
	out += 'PrivateExponent: ' + d.toString('base64') + '\n';
	var p = utils.mpDenormalize(key.part['p'].data);
	out += 'Prime1: ' + p.toString('base64') + '\n';
	var q = utils.mpDenormalize(key.part['q'].data);
	out += 'Prime2: ' + q.toString('base64') + '\n';
	var dmodp = utils.mpDenormalize(key.part['dmodp'].data);
	out += 'Exponent1: ' + dmodp.toString('base64') + '\n';
	var dmodq = utils.mpDenormalize(key.part['dmodq'].data);
	out += 'Exponent2: ' + dmodq.toString('base64') + '\n';
	var iqmp = utils.mpDenormalize(key.part['iqmp'].data);
	out += 'Coefficient: ' + iqmp.toString('base64') + '\n';
	// Assume that we're valid as-of now
	var timestamp = new Date();
	out += 'Created: ' + dnssecTimestamp(timestamp) + '\n';
	out += 'Publish: ' + dnssecTimestamp(timestamp) + '\n';
	out += 'Activate: ' + dnssecTimestamp(timestamp) + '\n';
	return (Buffer.from(out, 'ascii'));
}

function writeECDSA(key, options) {
	var out = '';
	out += 'Private-key-format: v1.3\n';

	if (key.curve === 'nistp256') {
		out += 'Algorithm: 13 (ECDSAP256SHA256)\n';
	} else if (key.curve === 'nistp384') {
		out += 'Algorithm: 14 (ECDSAP384SHA384)\n';
	} else {
		throw (new Error('Unsupported curve'));
	}
	var base64Key = key.part['d'].data.toString('base64');
	out += 'PrivateKey: ' + base64Key + '\n';

	// Assume that we're valid as-of now
	var timestamp = new Date();
	out += 'Created: ' + dnssecTimestamp(timestamp) + '\n';
	out += 'Publish: ' + dnssecTimestamp(timestamp) + '\n';
	out += 'Activate: ' + dnssecTimestamp(timestamp) + '\n';

	return (Buffer.from(out, 'ascii'));
}

function write(key, options) {
	if (PrivateKey.isPrivateKey(key)) {
		if (key.type === 'rsa') {
			return (writeRSA(key, options));
		} else if (key.type === 'ecdsa') {
			return (writeECDSA(key, options));
		} else {
			throw (new Error('Unsupported algorithm: ' + key.type));
		}
	} else if (Key.isKey(key)) {
		/*
		 * RFC3110 requires a keyname, and a keytype, which we
		 * don't really have a mechanism for specifying such
		 * additional metadata.
		 */
		throw (new Error('Format "dnssec" only supports ' +
		    'writing private keys'));
	} else {
		throw (new Error('key is not a Key or PrivateKey'));
	}
}


/***/ }),

/***/ 94033:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2017 Joyent, Inc.

module.exports = {
	read: read,
	verify: verify,
	sign: sign,
	signAsync: signAsync,
	write: write,

	/* Internal private API */
	fromBuffer: fromBuffer,
	toBuffer: toBuffer
};

var assert = __webpack_require__(66631);
var SSHBuffer = __webpack_require__(25621);
var crypto = __webpack_require__(33373);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var Identity = __webpack_require__(70508);
var rfc4253 = __webpack_require__(88688);
var Signature = __webpack_require__(91394);
var utils = __webpack_require__(80575);
var Certificate = __webpack_require__(7406);

function verify(cert, key) {
	/*
	 * We always give an issuerKey, so if our verify() is being called then
	 * there was no signature. Return false.
	 */
	return (false);
}

var TYPES = {
	'user': 1,
	'host': 2
};
Object.keys(TYPES).forEach(function (k) { TYPES[TYPES[k]] = k; });

var ECDSA_ALGO = /^ecdsa-sha2-([^@-]+)-cert-v01@openssh.com$/;

function read(buf, options) {
	if (Buffer.isBuffer(buf))
		buf = buf.toString('ascii');
	var parts = buf.trim().split(/[ \t\n]+/g);
	if (parts.length < 2 || parts.length > 3)
		throw (new Error('Not a valid SSH certificate line'));

	var algo = parts[0];
	var data = parts[1];

	data = Buffer.from(data, 'base64');
	return (fromBuffer(data, algo));
}

function fromBuffer(data, algo, partial) {
	var sshbuf = new SSHBuffer({ buffer: data });
	var innerAlgo = sshbuf.readString();
	if (algo !== undefined && innerAlgo !== algo)
		throw (new Error('SSH certificate algorithm mismatch'));
	if (algo === undefined)
		algo = innerAlgo;

	var cert = {};
	cert.signatures = {};
	cert.signatures.openssh = {};

	cert.signatures.openssh.nonce = sshbuf.readBuffer();

	var key = {};
	var parts = (key.parts = []);
	key.type = getAlg(algo);

	var partCount = algs.info[key.type].parts.length;
	while (parts.length < partCount)
		parts.push(sshbuf.readPart());
	assert.ok(parts.length >= 1, 'key must have at least one part');

	var algInfo = algs.info[key.type];
	if (key.type === 'ecdsa') {
		var res = ECDSA_ALGO.exec(algo);
		assert.ok(res !== null);
		assert.strictEqual(res[1], parts[0].data.toString());
	}

	for (var i = 0; i < algInfo.parts.length; ++i) {
		parts[i].name = algInfo.parts[i];
		if (parts[i].name !== 'curve' &&
		    algInfo.normalize !== false) {
			var p = parts[i];
			p.data = utils.mpNormalize(p.data);
		}
	}

	cert.subjectKey = new Key(key);

	cert.serial = sshbuf.readInt64();

	var type = TYPES[sshbuf.readInt()];
	assert.string(type, 'valid cert type');

	cert.signatures.openssh.keyId = sshbuf.readString();

	var principals = [];
	var pbuf = sshbuf.readBuffer();
	var psshbuf = new SSHBuffer({ buffer: pbuf });
	while (!psshbuf.atEnd())
		principals.push(psshbuf.readString());
	if (principals.length === 0)
		principals = ['*'];

	cert.subjects = principals.map(function (pr) {
		if (type === 'user')
			return (Identity.forUser(pr));
		else if (type === 'host')
			return (Identity.forHost(pr));
		throw (new Error('Unknown identity type ' + type));
	});

	cert.validFrom = int64ToDate(sshbuf.readInt64());
	cert.validUntil = int64ToDate(sshbuf.readInt64());

	var exts = [];
	var extbuf = new SSHBuffer({ buffer: sshbuf.readBuffer() });
	var ext;
	while (!extbuf.atEnd()) {
		ext = { critical: true };
		ext.name = extbuf.readString();
		ext.data = extbuf.readBuffer();
		exts.push(ext);
	}
	extbuf = new SSHBuffer({ buffer: sshbuf.readBuffer() });
	while (!extbuf.atEnd()) {
		ext = { critical: false };
		ext.name = extbuf.readString();
		ext.data = extbuf.readBuffer();
		exts.push(ext);
	}
	cert.signatures.openssh.exts = exts;

	/* reserved */
	sshbuf.readBuffer();

	var signingKeyBuf = sshbuf.readBuffer();
	cert.issuerKey = rfc4253.read(signingKeyBuf);

	/*
	 * OpenSSH certs don't give the identity of the issuer, just their
	 * public key. So, we use an Identity that matches anything. The
	 * isSignedBy() function will later tell you if the key matches.
	 */
	cert.issuer = Identity.forHost('**');

	var sigBuf = sshbuf.readBuffer();
	cert.signatures.openssh.signature =
	    Signature.parse(sigBuf, cert.issuerKey.type, 'ssh');

	if (partial !== undefined) {
		partial.remainder = sshbuf.remainder();
		partial.consumed = sshbuf._offset;
	}

	return (new Certificate(cert));
}

function int64ToDate(buf) {
	var i = buf.readUInt32BE(0) * 4294967296;
	i += buf.readUInt32BE(4);
	var d = new Date();
	d.setTime(i * 1000);
	d.sourceInt64 = buf;
	return (d);
}

function dateToInt64(date) {
	if (date.sourceInt64 !== undefined)
		return (date.sourceInt64);
	var i = Math.round(date.getTime() / 1000);
	var upper = Math.floor(i / 4294967296);
	var lower = Math.floor(i % 4294967296);
	var buf = Buffer.alloc(8);
	buf.writeUInt32BE(upper, 0);
	buf.writeUInt32BE(lower, 4);
	return (buf);
}

function sign(cert, key) {
	if (cert.signatures.openssh === undefined)
		cert.signatures.openssh = {};
	try {
		var blob = toBuffer(cert, true);
	} catch (e) {
		delete (cert.signatures.openssh);
		return (false);
	}
	var sig = cert.signatures.openssh;
	var hashAlgo = undefined;
	if (key.type === 'rsa' || key.type === 'dsa')
		hashAlgo = 'sha1';
	var signer = key.createSign(hashAlgo);
	signer.write(blob);
	sig.signature = signer.sign();
	return (true);
}

function signAsync(cert, signer, done) {
	if (cert.signatures.openssh === undefined)
		cert.signatures.openssh = {};
	try {
		var blob = toBuffer(cert, true);
	} catch (e) {
		delete (cert.signatures.openssh);
		done(e);
		return;
	}
	var sig = cert.signatures.openssh;

	signer(blob, function (err, signature) {
		if (err) {
			done(err);
			return;
		}
		try {
			/*
			 * This will throw if the signature isn't of a
			 * type/algo that can be used for SSH.
			 */
			signature.toBuffer('ssh');
		} catch (e) {
			done(e);
			return;
		}
		sig.signature = signature;
		done();
	});
}

function write(cert, options) {
	if (options === undefined)
		options = {};

	var blob = toBuffer(cert);
	var out = getCertType(cert.subjectKey) + ' ' + blob.toString('base64');
	if (options.comment)
		out = out + ' ' + options.comment;
	return (out);
}


function toBuffer(cert, noSig) {
	assert.object(cert.signatures.openssh, 'signature for openssh format');
	var sig = cert.signatures.openssh;

	if (sig.nonce === undefined)
		sig.nonce = crypto.randomBytes(16);
	var buf = new SSHBuffer({});
	buf.writeString(getCertType(cert.subjectKey));
	buf.writeBuffer(sig.nonce);

	var key = cert.subjectKey;
	var algInfo = algs.info[key.type];
	algInfo.parts.forEach(function (part) {
		buf.writePart(key.part[part]);
	});

	buf.writeInt64(cert.serial);

	var type = cert.subjects[0].type;
	assert.notStrictEqual(type, 'unknown');
	cert.subjects.forEach(function (id) {
		assert.strictEqual(id.type, type);
	});
	type = TYPES[type];
	buf.writeInt(type);

	if (sig.keyId === undefined) {
		sig.keyId = cert.subjects[0].type + '_' +
		    (cert.subjects[0].uid || cert.subjects[0].hostname);
	}
	buf.writeString(sig.keyId);

	var sub = new SSHBuffer({});
	cert.subjects.forEach(function (id) {
		if (type === TYPES.host)
			sub.writeString(id.hostname);
		else if (type === TYPES.user)
			sub.writeString(id.uid);
	});
	buf.writeBuffer(sub.toBuffer());

	buf.writeInt64(dateToInt64(cert.validFrom));
	buf.writeInt64(dateToInt64(cert.validUntil));

	var exts = sig.exts;
	if (exts === undefined)
		exts = [];

	var extbuf = new SSHBuffer({});
	exts.forEach(function (ext) {
		if (ext.critical !== true)
			return;
		extbuf.writeString(ext.name);
		extbuf.writeBuffer(ext.data);
	});
	buf.writeBuffer(extbuf.toBuffer());

	extbuf = new SSHBuffer({});
	exts.forEach(function (ext) {
		if (ext.critical === true)
			return;
		extbuf.writeString(ext.name);
		extbuf.writeBuffer(ext.data);
	});
	buf.writeBuffer(extbuf.toBuffer());

	/* reserved */
	buf.writeBuffer(Buffer.alloc(0));

	sub = rfc4253.write(cert.issuerKey);
	buf.writeBuffer(sub);

	if (!noSig)
		buf.writeBuffer(sig.signature.toBuffer('ssh'));

	return (buf.toBuffer());
}

function getAlg(certType) {
	if (certType === 'ssh-rsa-cert-v01@openssh.com')
		return ('rsa');
	if (certType === 'ssh-dss-cert-v01@openssh.com')
		return ('dsa');
	if (certType.match(ECDSA_ALGO))
		return ('ecdsa');
	if (certType === 'ssh-ed25519-cert-v01@openssh.com')
		return ('ed25519');
	throw (new Error('Unsupported cert type ' + certType));
}

function getCertType(key) {
	if (key.type === 'rsa')
		return ('ssh-rsa-cert-v01@openssh.com');
	if (key.type === 'dsa')
		return ('ssh-dss-cert-v01@openssh.com');
	if (key.type === 'ecdsa')
		return ('ecdsa-sha2-' + key.curve + '-cert-v01@openssh.com');
	if (key.type === 'ed25519')
		return ('ssh-ed25519-cert-v01@openssh.com');
	throw (new Error('Unsupported key type ' + key.type));
}


/***/ }),

/***/ 14324:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2018 Joyent, Inc.

module.exports = {
	read: read,
	write: write
};

var assert = __webpack_require__(66631);
var asn1 = __webpack_require__(80970);
var crypto = __webpack_require__(33373);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);

var pkcs1 = __webpack_require__(69367);
var pkcs8 = __webpack_require__(4173);
var sshpriv = __webpack_require__(3923);
var rfc4253 = __webpack_require__(88688);

var errors = __webpack_require__(27979);

var OID_PBES2 = '1.2.840.113549.1.5.13';
var OID_PBKDF2 = '1.2.840.113549.1.5.12';

var OID_TO_CIPHER = {
	'1.2.840.113549.3.7': '3des-cbc',
	'2.16.840.1.101.3.4.1.2': 'aes128-cbc',
	'2.16.840.1.101.3.4.1.42': 'aes256-cbc'
};
var CIPHER_TO_OID = {};
Object.keys(OID_TO_CIPHER).forEach(function (k) {
	CIPHER_TO_OID[OID_TO_CIPHER[k]] = k;
});

var OID_TO_HASH = {
	'1.2.840.113549.2.7': 'sha1',
	'1.2.840.113549.2.9': 'sha256',
	'1.2.840.113549.2.11': 'sha512'
};
var HASH_TO_OID = {};
Object.keys(OID_TO_HASH).forEach(function (k) {
	HASH_TO_OID[OID_TO_HASH[k]] = k;
});

/*
 * For reading we support both PKCS#1 and PKCS#8. If we find a private key,
 * we just take the public component of it and use that.
 */
function read(buf, options, forceType) {
	var input = buf;
	if (typeof (buf) !== 'string') {
		assert.buffer(buf, 'buf');
		buf = buf.toString('ascii');
	}

	var lines = buf.trim().split(/[\r\n]+/g);

	var m;
	var si = -1;
	while (!m && si < lines.length) {
		m = lines[++si].match(/*JSSTYLED*/
		    /[-]+[ ]*BEGIN ([A-Z0-9][A-Za-z0-9]+ )?(PUBLIC|PRIVATE) KEY[ ]*[-]+/);
	}
	assert.ok(m, 'invalid PEM header');

	var m2;
	var ei = lines.length;
	while (!m2 && ei > 0) {
		m2 = lines[--ei].match(/*JSSTYLED*/
		    /[-]+[ ]*END ([A-Z0-9][A-Za-z0-9]+ )?(PUBLIC|PRIVATE) KEY[ ]*[-]+/);
	}
	assert.ok(m2, 'invalid PEM footer');

	/* Begin and end banners must match key type */
	assert.equal(m[2], m2[2]);
	var type = m[2].toLowerCase();

	var alg;
	if (m[1]) {
		/* They also must match algorithms, if given */
		assert.equal(m[1], m2[1], 'PEM header and footer mismatch');
		alg = m[1].trim();
	}

	lines = lines.slice(si, ei + 1);

	var headers = {};
	while (true) {
		lines = lines.slice(1);
		m = lines[0].match(/*JSSTYLED*/
		    /^([A-Za-z0-9-]+): (.+)$/);
		if (!m)
			break;
		headers[m[1].toLowerCase()] = m[2];
	}

	/* Chop off the first and last lines */
	lines = lines.slice(0, -1).join('');
	buf = Buffer.from(lines, 'base64');

	var cipher, key, iv;
	if (headers['proc-type']) {
		var parts = headers['proc-type'].split(',');
		if (parts[0] === '4' && parts[1] === 'ENCRYPTED') {
			if (typeof (options.passphrase) === 'string') {
				options.passphrase = Buffer.from(
				    options.passphrase, 'utf-8');
			}
			if (!Buffer.isBuffer(options.passphrase)) {
				throw (new errors.KeyEncryptedError(
				    options.filename, 'PEM'));
			} else {
				parts = headers['dek-info'].split(',');
				assert.ok(parts.length === 2);
				cipher = parts[0].toLowerCase();
				iv = Buffer.from(parts[1], 'hex');
				key = utils.opensslKeyDeriv(cipher, iv,
				    options.passphrase, 1).key;
			}
		}
	}

	if (alg && alg.toLowerCase() === 'encrypted') {
		var eder = new asn1.BerReader(buf);
		var pbesEnd;
		eder.readSequence();

		eder.readSequence();
		pbesEnd = eder.offset + eder.length;

		var method = eder.readOID();
		if (method !== OID_PBES2) {
			throw (new Error('Unsupported PEM/PKCS8 encryption ' +
			    'scheme: ' + method));
		}

		eder.readSequence();	/* PBES2-params */

		eder.readSequence();	/* keyDerivationFunc */
		var kdfEnd = eder.offset + eder.length;
		var kdfOid = eder.readOID();
		if (kdfOid !== OID_PBKDF2)
			throw (new Error('Unsupported PBES2 KDF: ' + kdfOid));
		eder.readSequence();
		var salt = eder.readString(asn1.Ber.OctetString, true);
		var iterations = eder.readInt();
		var hashAlg = 'sha1';
		if (eder.offset < kdfEnd) {
			eder.readSequence();
			var hashAlgOid = eder.readOID();
			hashAlg = OID_TO_HASH[hashAlgOid];
			if (hashAlg === undefined) {
				throw (new Error('Unsupported PBKDF2 hash: ' +
				    hashAlgOid));
			}
		}
		eder._offset = kdfEnd;

		eder.readSequence();	/* encryptionScheme */
		var cipherOid = eder.readOID();
		cipher = OID_TO_CIPHER[cipherOid];
		if (cipher === undefined) {
			throw (new Error('Unsupported PBES2 cipher: ' +
			    cipherOid));
		}
		iv = eder.readString(asn1.Ber.OctetString, true);

		eder._offset = pbesEnd;
		buf = eder.readString(asn1.Ber.OctetString, true);

		if (typeof (options.passphrase) === 'string') {
			options.passphrase = Buffer.from(
			    options.passphrase, 'utf-8');
		}
		if (!Buffer.isBuffer(options.passphrase)) {
			throw (new errors.KeyEncryptedError(
			    options.filename, 'PEM'));
		}

		var cinfo = utils.opensshCipherInfo(cipher);

		cipher = cinfo.opensslName;
		key = utils.pbkdf2(hashAlg, salt, iterations, cinfo.keySize,
		    options.passphrase);
		alg = undefined;
	}

	if (cipher && key && iv) {
		var cipherStream = crypto.createDecipheriv(cipher, key, iv);
		var chunk, chunks = [];
		cipherStream.once('error', function (e) {
			if (e.toString().indexOf('bad decrypt') !== -1) {
				throw (new Error('Incorrect passphrase ' +
				    'supplied, could not decrypt key'));
			}
			throw (e);
		});
		cipherStream.write(buf);
		cipherStream.end();
		while ((chunk = cipherStream.read()) !== null)
			chunks.push(chunk);
		buf = Buffer.concat(chunks);
	}

	/* The new OpenSSH internal format abuses PEM headers */
	if (alg && alg.toLowerCase() === 'openssh')
		return (sshpriv.readSSHPrivate(type, buf, options));
	if (alg && alg.toLowerCase() === 'ssh2')
		return (rfc4253.readType(type, buf, options));

	var der = new asn1.BerReader(buf);
	der.originalInput = input;

	/*
	 * All of the PEM file types start with a sequence tag, so chop it
	 * off here
	 */
	der.readSequence();

	/* PKCS#1 type keys name an algorithm in the banner explicitly */
	if (alg) {
		if (forceType)
			assert.strictEqual(forceType, 'pkcs1');
		return (pkcs1.readPkcs1(alg, type, der));
	} else {
		if (forceType)
			assert.strictEqual(forceType, 'pkcs8');
		return (pkcs8.readPkcs8(alg, type, der));
	}
}

function write(key, options, type) {
	assert.object(key);

	var alg = {
	    'ecdsa': 'EC',
	    'rsa': 'RSA',
	    'dsa': 'DSA',
	    'ed25519': 'EdDSA'
	}[key.type];
	var header;

	var der = new asn1.BerWriter();

	if (PrivateKey.isPrivateKey(key)) {
		if (type && type === 'pkcs8') {
			header = 'PRIVATE KEY';
			pkcs8.writePkcs8(der, key);
		} else {
			if (type)
				assert.strictEqual(type, 'pkcs1');
			header = alg + ' PRIVATE KEY';
			pkcs1.writePkcs1(der, key);
		}

	} else if (Key.isKey(key)) {
		if (type && type === 'pkcs1') {
			header = alg + ' PUBLIC KEY';
			pkcs1.writePkcs1(der, key);
		} else {
			if (type)
				assert.strictEqual(type, 'pkcs8');
			header = 'PUBLIC KEY';
			pkcs8.writePkcs8(der, key);
		}

	} else {
		throw (new Error('key is not a Key or PrivateKey'));
	}

	var tmp = der.buffer.toString('base64');
	var len = tmp.length + (tmp.length / 64) +
	    18 + 16 + header.length*2 + 10;
	var buf = Buffer.alloc(len);
	var o = 0;
	o += buf.write('-----BEGIN ' + header + '-----\n', o);
	for (var i = 0; i < tmp.length; ) {
		var limit = i + 64;
		if (limit > tmp.length)
			limit = tmp.length;
		o += buf.write(tmp.slice(i, limit), o);
		buf[o++] = 10;
		i = limit;
	}
	o += buf.write('-----END ' + header + '-----\n', o);

	return (buf.slice(0, o));
}


/***/ }),

/***/ 69367:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = {
	read: read,
	readPkcs1: readPkcs1,
	write: write,
	writePkcs1: writePkcs1
};

var assert = __webpack_require__(66631);
var asn1 = __webpack_require__(80970);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);

var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var pem = __webpack_require__(14324);

var pkcs8 = __webpack_require__(4173);
var readECDSACurve = pkcs8.readECDSACurve;

function read(buf, options) {
	return (pem.read(buf, options, 'pkcs1'));
}

function write(key, options) {
	return (pem.write(key, options, 'pkcs1'));
}

/* Helper to read in a single mpint */
function readMPInt(der, nm) {
	assert.strictEqual(der.peek(), asn1.Ber.Integer,
	    nm + ' is not an Integer');
	return (utils.mpNormalize(der.readString(asn1.Ber.Integer, true)));
}

function readPkcs1(alg, type, der) {
	switch (alg) {
	case 'RSA':
		if (type === 'public')
			return (readPkcs1RSAPublic(der));
		else if (type === 'private')
			return (readPkcs1RSAPrivate(der));
		throw (new Error('Unknown key type: ' + type));
	case 'DSA':
		if (type === 'public')
			return (readPkcs1DSAPublic(der));
		else if (type === 'private')
			return (readPkcs1DSAPrivate(der));
		throw (new Error('Unknown key type: ' + type));
	case 'EC':
	case 'ECDSA':
		if (type === 'private')
			return (readPkcs1ECDSAPrivate(der));
		else if (type === 'public')
			return (readPkcs1ECDSAPublic(der));
		throw (new Error('Unknown key type: ' + type));
	case 'EDDSA':
	case 'EdDSA':
		if (type === 'private')
			return (readPkcs1EdDSAPrivate(der));
		throw (new Error(type + ' keys not supported with EdDSA'));
	default:
		throw (new Error('Unknown key algo: ' + alg));
	}
}

function readPkcs1RSAPublic(der) {
	// modulus and exponent
	var n = readMPInt(der, 'modulus');
	var e = readMPInt(der, 'exponent');

	// now, make the key
	var key = {
		type: 'rsa',
		parts: [
			{ name: 'e', data: e },
			{ name: 'n', data: n }
		]
	};

	return (new Key(key));
}

function readPkcs1RSAPrivate(der) {
	var version = readMPInt(der, 'version');
	assert.strictEqual(version[0], 0);

	// modulus then public exponent
	var n = readMPInt(der, 'modulus');
	var e = readMPInt(der, 'public exponent');
	var d = readMPInt(der, 'private exponent');
	var p = readMPInt(der, 'prime1');
	var q = readMPInt(der, 'prime2');
	var dmodp = readMPInt(der, 'exponent1');
	var dmodq = readMPInt(der, 'exponent2');
	var iqmp = readMPInt(der, 'iqmp');

	// now, make the key
	var key = {
		type: 'rsa',
		parts: [
			{ name: 'n', data: n },
			{ name: 'e', data: e },
			{ name: 'd', data: d },
			{ name: 'iqmp', data: iqmp },
			{ name: 'p', data: p },
			{ name: 'q', data: q },
			{ name: 'dmodp', data: dmodp },
			{ name: 'dmodq', data: dmodq }
		]
	};

	return (new PrivateKey(key));
}

function readPkcs1DSAPrivate(der) {
	var version = readMPInt(der, 'version');
	assert.strictEqual(version.readUInt8(0), 0);

	var p = readMPInt(der, 'p');
	var q = readMPInt(der, 'q');
	var g = readMPInt(der, 'g');
	var y = readMPInt(der, 'y');
	var x = readMPInt(der, 'x');

	// now, make the key
	var key = {
		type: 'dsa',
		parts: [
			{ name: 'p', data: p },
			{ name: 'q', data: q },
			{ name: 'g', data: g },
			{ name: 'y', data: y },
			{ name: 'x', data: x }
		]
	};

	return (new PrivateKey(key));
}

function readPkcs1EdDSAPrivate(der) {
	var version = readMPInt(der, 'version');
	assert.strictEqual(version.readUInt8(0), 1);

	// private key
	var k = der.readString(asn1.Ber.OctetString, true);

	der.readSequence(0xa0);
	var oid = der.readOID();
	assert.strictEqual(oid, '1.3.101.112', 'the ed25519 curve identifier');

	der.readSequence(0xa1);
	var A = utils.readBitString(der);

	var key = {
		type: 'ed25519',
		parts: [
			{ name: 'A', data: utils.zeroPadToLength(A, 32) },
			{ name: 'k', data: k }
		]
	};

	return (new PrivateKey(key));
}

function readPkcs1DSAPublic(der) {
	var y = readMPInt(der, 'y');
	var p = readMPInt(der, 'p');
	var q = readMPInt(der, 'q');
	var g = readMPInt(der, 'g');

	var key = {
		type: 'dsa',
		parts: [
			{ name: 'y', data: y },
			{ name: 'p', data: p },
			{ name: 'q', data: q },
			{ name: 'g', data: g }
		]
	};

	return (new Key(key));
}

function readPkcs1ECDSAPublic(der) {
	der.readSequence();

	var oid = der.readOID();
	assert.strictEqual(oid, '1.2.840.10045.2.1', 'must be ecPublicKey');

	var curveOid = der.readOID();

	var curve;
	var curves = Object.keys(algs.curves);
	for (var j = 0; j < curves.length; ++j) {
		var c = curves[j];
		var cd = algs.curves[c];
		if (cd.pkcs8oid === curveOid) {
			curve = c;
			break;
		}
	}
	assert.string(curve, 'a known ECDSA named curve');

	var Q = der.readString(asn1.Ber.BitString, true);
	Q = utils.ecNormalize(Q);

	var key = {
		type: 'ecdsa',
		parts: [
			{ name: 'curve', data: Buffer.from(curve) },
			{ name: 'Q', data: Q }
		]
	};

	return (new Key(key));
}

function readPkcs1ECDSAPrivate(der) {
	var version = readMPInt(der, 'version');
	assert.strictEqual(version.readUInt8(0), 1);

	// private key
	var d = der.readString(asn1.Ber.OctetString, true);

	der.readSequence(0xa0);
	var curve = readECDSACurve(der);
	assert.string(curve, 'a known elliptic curve');

	der.readSequence(0xa1);
	var Q = der.readString(asn1.Ber.BitString, true);
	Q = utils.ecNormalize(Q);

	var key = {
		type: 'ecdsa',
		parts: [
			{ name: 'curve', data: Buffer.from(curve) },
			{ name: 'Q', data: Q },
			{ name: 'd', data: d }
		]
	};

	return (new PrivateKey(key));
}

function writePkcs1(der, key) {
	der.startSequence();

	switch (key.type) {
	case 'rsa':
		if (PrivateKey.isPrivateKey(key))
			writePkcs1RSAPrivate(der, key);
		else
			writePkcs1RSAPublic(der, key);
		break;
	case 'dsa':
		if (PrivateKey.isPrivateKey(key))
			writePkcs1DSAPrivate(der, key);
		else
			writePkcs1DSAPublic(der, key);
		break;
	case 'ecdsa':
		if (PrivateKey.isPrivateKey(key))
			writePkcs1ECDSAPrivate(der, key);
		else
			writePkcs1ECDSAPublic(der, key);
		break;
	case 'ed25519':
		if (PrivateKey.isPrivateKey(key))
			writePkcs1EdDSAPrivate(der, key);
		else
			writePkcs1EdDSAPublic(der, key);
		break;
	default:
		throw (new Error('Unknown key algo: ' + key.type));
	}

	der.endSequence();
}

function writePkcs1RSAPublic(der, key) {
	der.writeBuffer(key.part.n.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.e.data, asn1.Ber.Integer);
}

function writePkcs1RSAPrivate(der, key) {
	var ver = Buffer.from([0]);
	der.writeBuffer(ver, asn1.Ber.Integer);

	der.writeBuffer(key.part.n.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.e.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.d.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.p.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.q.data, asn1.Ber.Integer);
	if (!key.part.dmodp || !key.part.dmodq)
		utils.addRSAMissing(key);
	der.writeBuffer(key.part.dmodp.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.dmodq.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.iqmp.data, asn1.Ber.Integer);
}

function writePkcs1DSAPrivate(der, key) {
	var ver = Buffer.from([0]);
	der.writeBuffer(ver, asn1.Ber.Integer);

	der.writeBuffer(key.part.p.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.q.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.g.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.y.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.x.data, asn1.Ber.Integer);
}

function writePkcs1DSAPublic(der, key) {
	der.writeBuffer(key.part.y.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.p.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.q.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.g.data, asn1.Ber.Integer);
}

function writePkcs1ECDSAPublic(der, key) {
	der.startSequence();

	der.writeOID('1.2.840.10045.2.1'); /* ecPublicKey */
	var curve = key.part.curve.data.toString();
	var curveOid = algs.curves[curve].pkcs8oid;
	assert.string(curveOid, 'a known ECDSA named curve');
	der.writeOID(curveOid);

	der.endSequence();

	var Q = utils.ecNormalize(key.part.Q.data, true);
	der.writeBuffer(Q, asn1.Ber.BitString);
}

function writePkcs1ECDSAPrivate(der, key) {
	var ver = Buffer.from([1]);
	der.writeBuffer(ver, asn1.Ber.Integer);

	der.writeBuffer(key.part.d.data, asn1.Ber.OctetString);

	der.startSequence(0xa0);
	var curve = key.part.curve.data.toString();
	var curveOid = algs.curves[curve].pkcs8oid;
	assert.string(curveOid, 'a known ECDSA named curve');
	der.writeOID(curveOid);
	der.endSequence();

	der.startSequence(0xa1);
	var Q = utils.ecNormalize(key.part.Q.data, true);
	der.writeBuffer(Q, asn1.Ber.BitString);
	der.endSequence();
}

function writePkcs1EdDSAPrivate(der, key) {
	var ver = Buffer.from([1]);
	der.writeBuffer(ver, asn1.Ber.Integer);

	der.writeBuffer(key.part.k.data, asn1.Ber.OctetString);

	der.startSequence(0xa0);
	der.writeOID('1.3.101.112');
	der.endSequence();

	der.startSequence(0xa1);
	utils.writeBitString(der, key.part.A.data);
	der.endSequence();
}

function writePkcs1EdDSAPublic(der, key) {
	throw (new Error('Public keys are not supported for EdDSA PKCS#1'));
}


/***/ }),

/***/ 4173:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2018 Joyent, Inc.

module.exports = {
	read: read,
	readPkcs8: readPkcs8,
	write: write,
	writePkcs8: writePkcs8,
	pkcs8ToBuffer: pkcs8ToBuffer,

	readECDSACurve: readECDSACurve,
	writeECDSACurve: writeECDSACurve
};

var assert = __webpack_require__(66631);
var asn1 = __webpack_require__(80970);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var pem = __webpack_require__(14324);

function read(buf, options) {
	return (pem.read(buf, options, 'pkcs8'));
}

function write(key, options) {
	return (pem.write(key, options, 'pkcs8'));
}

/* Helper to read in a single mpint */
function readMPInt(der, nm) {
	assert.strictEqual(der.peek(), asn1.Ber.Integer,
	    nm + ' is not an Integer');
	return (utils.mpNormalize(der.readString(asn1.Ber.Integer, true)));
}

function readPkcs8(alg, type, der) {
	/* Private keys in pkcs#8 format have a weird extra int */
	if (der.peek() === asn1.Ber.Integer) {
		assert.strictEqual(type, 'private',
		    'unexpected Integer at start of public key');
		der.readString(asn1.Ber.Integer, true);
	}

	der.readSequence();
	var next = der.offset + der.length;

	var oid = der.readOID();
	switch (oid) {
	case '1.2.840.113549.1.1.1':
		der._offset = next;
		if (type === 'public')
			return (readPkcs8RSAPublic(der));
		else
			return (readPkcs8RSAPrivate(der));
	case '1.2.840.10040.4.1':
		if (type === 'public')
			return (readPkcs8DSAPublic(der));
		else
			return (readPkcs8DSAPrivate(der));
	case '1.2.840.10045.2.1':
		if (type === 'public')
			return (readPkcs8ECDSAPublic(der));
		else
			return (readPkcs8ECDSAPrivate(der));
	case '1.3.101.112':
		if (type === 'public') {
			return (readPkcs8EdDSAPublic(der));
		} else {
			return (readPkcs8EdDSAPrivate(der));
		}
	case '1.3.101.110':
		if (type === 'public') {
			return (readPkcs8X25519Public(der));
		} else {
			return (readPkcs8X25519Private(der));
		}
	default:
		throw (new Error('Unknown key type OID ' + oid));
	}
}

function readPkcs8RSAPublic(der) {
	// bit string sequence
	der.readSequence(asn1.Ber.BitString);
	der.readByte();
	der.readSequence();

	// modulus
	var n = readMPInt(der, 'modulus');
	var e = readMPInt(der, 'exponent');

	// now, make the key
	var key = {
		type: 'rsa',
		source: der.originalInput,
		parts: [
			{ name: 'e', data: e },
			{ name: 'n', data: n }
		]
	};

	return (new Key(key));
}

function readPkcs8RSAPrivate(der) {
	der.readSequence(asn1.Ber.OctetString);
	der.readSequence();

	var ver = readMPInt(der, 'version');
	assert.equal(ver[0], 0x0, 'unknown RSA private key version');

	// modulus then public exponent
	var n = readMPInt(der, 'modulus');
	var e = readMPInt(der, 'public exponent');
	var d = readMPInt(der, 'private exponent');
	var p = readMPInt(der, 'prime1');
	var q = readMPInt(der, 'prime2');
	var dmodp = readMPInt(der, 'exponent1');
	var dmodq = readMPInt(der, 'exponent2');
	var iqmp = readMPInt(der, 'iqmp');

	// now, make the key
	var key = {
		type: 'rsa',
		parts: [
			{ name: 'n', data: n },
			{ name: 'e', data: e },
			{ name: 'd', data: d },
			{ name: 'iqmp', data: iqmp },
			{ name: 'p', data: p },
			{ name: 'q', data: q },
			{ name: 'dmodp', data: dmodp },
			{ name: 'dmodq', data: dmodq }
		]
	};

	return (new PrivateKey(key));
}

function readPkcs8DSAPublic(der) {
	der.readSequence();

	var p = readMPInt(der, 'p');
	var q = readMPInt(der, 'q');
	var g = readMPInt(der, 'g');

	// bit string sequence
	der.readSequence(asn1.Ber.BitString);
	der.readByte();

	var y = readMPInt(der, 'y');

	// now, make the key
	var key = {
		type: 'dsa',
		parts: [
			{ name: 'p', data: p },
			{ name: 'q', data: q },
			{ name: 'g', data: g },
			{ name: 'y', data: y }
		]
	};

	return (new Key(key));
}

function readPkcs8DSAPrivate(der) {
	der.readSequence();

	var p = readMPInt(der, 'p');
	var q = readMPInt(der, 'q');
	var g = readMPInt(der, 'g');

	der.readSequence(asn1.Ber.OctetString);
	var x = readMPInt(der, 'x');

	/* The pkcs#8 format does not include the public key */
	var y = utils.calculateDSAPublic(g, p, x);

	var key = {
		type: 'dsa',
		parts: [
			{ name: 'p', data: p },
			{ name: 'q', data: q },
			{ name: 'g', data: g },
			{ name: 'y', data: y },
			{ name: 'x', data: x }
		]
	};

	return (new PrivateKey(key));
}

function readECDSACurve(der) {
	var curveName, curveNames;
	var j, c, cd;

	if (der.peek() === asn1.Ber.OID) {
		var oid = der.readOID();

		curveNames = Object.keys(algs.curves);
		for (j = 0; j < curveNames.length; ++j) {
			c = curveNames[j];
			cd = algs.curves[c];
			if (cd.pkcs8oid === oid) {
				curveName = c;
				break;
			}
		}

	} else {
		// ECParameters sequence
		der.readSequence();
		var version = der.readString(asn1.Ber.Integer, true);
		assert.strictEqual(version[0], 1, 'ECDSA key not version 1');

		var curve = {};

		// FieldID sequence
		der.readSequence();
		var fieldTypeOid = der.readOID();
		assert.strictEqual(fieldTypeOid, '1.2.840.10045.1.1',
		    'ECDSA key is not from a prime-field');
		var p = curve.p = utils.mpNormalize(
		    der.readString(asn1.Ber.Integer, true));
		/*
		 * p always starts with a 1 bit, so count the zeros to get its
		 * real size.
		 */
		curve.size = p.length * 8 - utils.countZeros(p);

		// Curve sequence
		der.readSequence();
		curve.a = utils.mpNormalize(
		    der.readString(asn1.Ber.OctetString, true));
		curve.b = utils.mpNormalize(
		    der.readString(asn1.Ber.OctetString, true));
		if (der.peek() === asn1.Ber.BitString)
			curve.s = der.readString(asn1.Ber.BitString, true);

		// Combined Gx and Gy
		curve.G = der.readString(asn1.Ber.OctetString, true);
		assert.strictEqual(curve.G[0], 0x4,
		    'uncompressed G is required');

		curve.n = utils.mpNormalize(
		    der.readString(asn1.Ber.Integer, true));
		curve.h = utils.mpNormalize(
		    der.readString(asn1.Ber.Integer, true));
		assert.strictEqual(curve.h[0], 0x1, 'a cofactor=1 curve is ' +
		    'required');

		curveNames = Object.keys(algs.curves);
		var ks = Object.keys(curve);
		for (j = 0; j < curveNames.length; ++j) {
			c = curveNames[j];
			cd = algs.curves[c];
			var equal = true;
			for (var i = 0; i < ks.length; ++i) {
				var k = ks[i];
				if (cd[k] === undefined)
					continue;
				if (typeof (cd[k]) === 'object' &&
				    cd[k].equals !== undefined) {
					if (!cd[k].equals(curve[k])) {
						equal = false;
						break;
					}
				} else if (Buffer.isBuffer(cd[k])) {
					if (cd[k].toString('binary')
					    !== curve[k].toString('binary')) {
						equal = false;
						break;
					}
				} else {
					if (cd[k] !== curve[k]) {
						equal = false;
						break;
					}
				}
			}
			if (equal) {
				curveName = c;
				break;
			}
		}
	}
	return (curveName);
}

function readPkcs8ECDSAPrivate(der) {
	var curveName = readECDSACurve(der);
	assert.string(curveName, 'a known elliptic curve');

	der.readSequence(asn1.Ber.OctetString);
	der.readSequence();

	var version = readMPInt(der, 'version');
	assert.equal(version[0], 1, 'unknown version of ECDSA key');

	var d = der.readString(asn1.Ber.OctetString, true);
	var Q;

	if (der.peek() == 0xa0) {
		der.readSequence(0xa0);
		der._offset += der.length;
	}
	if (der.peek() == 0xa1) {
		der.readSequence(0xa1);
		Q = der.readString(asn1.Ber.BitString, true);
		Q = utils.ecNormalize(Q);
	}

	if (Q === undefined) {
		var pub = utils.publicFromPrivateECDSA(curveName, d);
		Q = pub.part.Q.data;
	}

	var key = {
		type: 'ecdsa',
		parts: [
			{ name: 'curve', data: Buffer.from(curveName) },
			{ name: 'Q', data: Q },
			{ name: 'd', data: d }
		]
	};

	return (new PrivateKey(key));
}

function readPkcs8ECDSAPublic(der) {
	var curveName = readECDSACurve(der);
	assert.string(curveName, 'a known elliptic curve');

	var Q = der.readString(asn1.Ber.BitString, true);
	Q = utils.ecNormalize(Q);

	var key = {
		type: 'ecdsa',
		parts: [
			{ name: 'curve', data: Buffer.from(curveName) },
			{ name: 'Q', data: Q }
		]
	};

	return (new Key(key));
}

function readPkcs8EdDSAPublic(der) {
	if (der.peek() === 0x00)
		der.readByte();

	var A = utils.readBitString(der);

	var key = {
		type: 'ed25519',
		parts: [
			{ name: 'A', data: utils.zeroPadToLength(A, 32) }
		]
	};

	return (new Key(key));
}

function readPkcs8X25519Public(der) {
	var A = utils.readBitString(der);

	var key = {
		type: 'curve25519',
		parts: [
			{ name: 'A', data: utils.zeroPadToLength(A, 32) }
		]
	};

	return (new Key(key));
}

function readPkcs8EdDSAPrivate(der) {
	if (der.peek() === 0x00)
		der.readByte();

	der.readSequence(asn1.Ber.OctetString);
	var k = der.readString(asn1.Ber.OctetString, true);
	k = utils.zeroPadToLength(k, 32);

	var A;
	if (der.peek() === asn1.Ber.BitString) {
		A = utils.readBitString(der);
		A = utils.zeroPadToLength(A, 32);
	} else {
		A = utils.calculateED25519Public(k);
	}

	var key = {
		type: 'ed25519',
		parts: [
			{ name: 'A', data: utils.zeroPadToLength(A, 32) },
			{ name: 'k', data: utils.zeroPadToLength(k, 32) }
		]
	};

	return (new PrivateKey(key));
}

function readPkcs8X25519Private(der) {
	if (der.peek() === 0x00)
		der.readByte();

	der.readSequence(asn1.Ber.OctetString);
	var k = der.readString(asn1.Ber.OctetString, true);
	k = utils.zeroPadToLength(k, 32);

	var A = utils.calculateX25519Public(k);

	var key = {
		type: 'curve25519',
		parts: [
			{ name: 'A', data: utils.zeroPadToLength(A, 32) },
			{ name: 'k', data: utils.zeroPadToLength(k, 32) }
		]
	};

	return (new PrivateKey(key));
}

function pkcs8ToBuffer(key) {
	var der = new asn1.BerWriter();
	writePkcs8(der, key);
	return (der.buffer);
}

function writePkcs8(der, key) {
	der.startSequence();

	if (PrivateKey.isPrivateKey(key)) {
		var sillyInt = Buffer.from([0]);
		der.writeBuffer(sillyInt, asn1.Ber.Integer);
	}

	der.startSequence();
	switch (key.type) {
	case 'rsa':
		der.writeOID('1.2.840.113549.1.1.1');
		if (PrivateKey.isPrivateKey(key))
			writePkcs8RSAPrivate(key, der);
		else
			writePkcs8RSAPublic(key, der);
		break;
	case 'dsa':
		der.writeOID('1.2.840.10040.4.1');
		if (PrivateKey.isPrivateKey(key))
			writePkcs8DSAPrivate(key, der);
		else
			writePkcs8DSAPublic(key, der);
		break;
	case 'ecdsa':
		der.writeOID('1.2.840.10045.2.1');
		if (PrivateKey.isPrivateKey(key))
			writePkcs8ECDSAPrivate(key, der);
		else
			writePkcs8ECDSAPublic(key, der);
		break;
	case 'ed25519':
		der.writeOID('1.3.101.112');
		if (PrivateKey.isPrivateKey(key))
			throw (new Error('Ed25519 private keys in pkcs8 ' +
			    'format are not supported'));
		writePkcs8EdDSAPublic(key, der);
		break;
	default:
		throw (new Error('Unsupported key type: ' + key.type));
	}

	der.endSequence();
}

function writePkcs8RSAPrivate(key, der) {
	der.writeNull();
	der.endSequence();

	der.startSequence(asn1.Ber.OctetString);
	der.startSequence();

	var version = Buffer.from([0]);
	der.writeBuffer(version, asn1.Ber.Integer);

	der.writeBuffer(key.part.n.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.e.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.d.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.p.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.q.data, asn1.Ber.Integer);
	if (!key.part.dmodp || !key.part.dmodq)
		utils.addRSAMissing(key);
	der.writeBuffer(key.part.dmodp.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.dmodq.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.iqmp.data, asn1.Ber.Integer);

	der.endSequence();
	der.endSequence();
}

function writePkcs8RSAPublic(key, der) {
	der.writeNull();
	der.endSequence();

	der.startSequence(asn1.Ber.BitString);
	der.writeByte(0x00);

	der.startSequence();
	der.writeBuffer(key.part.n.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.e.data, asn1.Ber.Integer);
	der.endSequence();

	der.endSequence();
}

function writePkcs8DSAPrivate(key, der) {
	der.startSequence();
	der.writeBuffer(key.part.p.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.q.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.g.data, asn1.Ber.Integer);
	der.endSequence();

	der.endSequence();

	der.startSequence(asn1.Ber.OctetString);
	der.writeBuffer(key.part.x.data, asn1.Ber.Integer);
	der.endSequence();
}

function writePkcs8DSAPublic(key, der) {
	der.startSequence();
	der.writeBuffer(key.part.p.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.q.data, asn1.Ber.Integer);
	der.writeBuffer(key.part.g.data, asn1.Ber.Integer);
	der.endSequence();
	der.endSequence();

	der.startSequence(asn1.Ber.BitString);
	der.writeByte(0x00);
	der.writeBuffer(key.part.y.data, asn1.Ber.Integer);
	der.endSequence();
}

function writeECDSACurve(key, der) {
	var curve = algs.curves[key.curve];
	if (curve.pkcs8oid) {
		/* This one has a name in pkcs#8, so just write the oid */
		der.writeOID(curve.pkcs8oid);

	} else {
		// ECParameters sequence
		der.startSequence();

		var version = Buffer.from([1]);
		der.writeBuffer(version, asn1.Ber.Integer);

		// FieldID sequence
		der.startSequence();
		der.writeOID('1.2.840.10045.1.1'); // prime-field
		der.writeBuffer(curve.p, asn1.Ber.Integer);
		der.endSequence();

		// Curve sequence
		der.startSequence();
		var a = curve.p;
		if (a[0] === 0x0)
			a = a.slice(1);
		der.writeBuffer(a, asn1.Ber.OctetString);
		der.writeBuffer(curve.b, asn1.Ber.OctetString);
		der.writeBuffer(curve.s, asn1.Ber.BitString);
		der.endSequence();

		der.writeBuffer(curve.G, asn1.Ber.OctetString);
		der.writeBuffer(curve.n, asn1.Ber.Integer);
		var h = curve.h;
		if (!h) {
			h = Buffer.from([1]);
		}
		der.writeBuffer(h, asn1.Ber.Integer);

		// ECParameters
		der.endSequence();
	}
}

function writePkcs8ECDSAPublic(key, der) {
	writeECDSACurve(key, der);
	der.endSequence();

	var Q = utils.ecNormalize(key.part.Q.data, true);
	der.writeBuffer(Q, asn1.Ber.BitString);
}

function writePkcs8ECDSAPrivate(key, der) {
	writeECDSACurve(key, der);
	der.endSequence();

	der.startSequence(asn1.Ber.OctetString);
	der.startSequence();

	var version = Buffer.from([1]);
	der.writeBuffer(version, asn1.Ber.Integer);

	der.writeBuffer(key.part.d.data, asn1.Ber.OctetString);

	der.startSequence(0xa1);
	var Q = utils.ecNormalize(key.part.Q.data, true);
	der.writeBuffer(Q, asn1.Ber.BitString);
	der.endSequence();

	der.endSequence();
	der.endSequence();
}

function writePkcs8EdDSAPublic(key, der) {
	der.endSequence();

	utils.writeBitString(der, key.part.A.data);
}

function writePkcs8EdDSAPrivate(key, der) {
	der.endSequence();

	var k = utils.mpNormalize(key.part.k.data, true);
	der.startSequence(asn1.Ber.OctetString);
	der.writeBuffer(k, asn1.Ber.OctetString);
	der.endSequence();
}


/***/ }),

/***/ 80974:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2018 Joyent, Inc.

module.exports = {
	read: read,
	write: write
};

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var rfc4253 = __webpack_require__(88688);
var Key = __webpack_require__(36814);

var errors = __webpack_require__(27979);

function read(buf, options) {
	var lines = buf.toString('ascii').split(/[\r\n]+/);
	var found = false;
	var parts;
	var si = 0;
	while (si < lines.length) {
		parts = splitHeader(lines[si++]);
		if (parts &&
		    parts[0].toLowerCase() === 'putty-user-key-file-2') {
			found = true;
			break;
		}
	}
	if (!found) {
		throw (new Error('No PuTTY format first line found'));
	}
	var alg = parts[1];

	parts = splitHeader(lines[si++]);
	assert.equal(parts[0].toLowerCase(), 'encryption');

	parts = splitHeader(lines[si++]);
	assert.equal(parts[0].toLowerCase(), 'comment');
	var comment = parts[1];

	parts = splitHeader(lines[si++]);
	assert.equal(parts[0].toLowerCase(), 'public-lines');
	var publicLines = parseInt(parts[1], 10);
	if (!isFinite(publicLines) || publicLines < 0 ||
	    publicLines > lines.length) {
		throw (new Error('Invalid public-lines count'));
	}

	var publicBuf = Buffer.from(
	    lines.slice(si, si + publicLines).join(''), 'base64');
	var keyType = rfc4253.algToKeyType(alg);
	var key = rfc4253.read(publicBuf);
	if (key.type !== keyType) {
		throw (new Error('Outer key algorithm mismatch'));
	}
	key.comment = comment;
	return (key);
}

function splitHeader(line) {
	var idx = line.indexOf(':');
	if (idx === -1)
		return (null);
	var header = line.slice(0, idx);
	++idx;
	while (line[idx] === ' ')
		++idx;
	var rest = line.slice(idx);
	return ([header, rest]);
}

function write(key, options) {
	assert.object(key);
	if (!Key.isKey(key))
		throw (new Error('Must be a public key'));

	var alg = rfc4253.keyTypeToAlg(key);
	var buf = rfc4253.write(key);
	var comment = key.comment || '';

	var b64 = buf.toString('base64');
	var lines = wrap(b64, 64);

	lines.unshift('Public-Lines: ' + lines.length);
	lines.unshift('Comment: ' + comment);
	lines.unshift('Encryption: none');
	lines.unshift('PuTTY-User-Key-File-2: ' + alg);

	return (Buffer.from(lines.join('\n') + '\n'));
}

function wrap(txt, len) {
	var lines = [];
	var pos = 0;
	while (pos < txt.length) {
		lines.push(txt.slice(pos, pos + 64));
		pos += 64;
	}
	return (lines);
}


/***/ }),

/***/ 88688:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = {
	read: read.bind(undefined, false, undefined),
	readType: read.bind(undefined, false),
	write: write,
	/* semi-private api, used by sshpk-agent */
	readPartial: read.bind(undefined, true),

	/* shared with ssh format */
	readInternal: read,
	keyTypeToAlg: keyTypeToAlg,
	algToKeyType: algToKeyType
};

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var SSHBuffer = __webpack_require__(25621);

function algToKeyType(alg) {
	assert.string(alg);
	if (alg === 'ssh-dss')
		return ('dsa');
	else if (alg === 'ssh-rsa')
		return ('rsa');
	else if (alg === 'ssh-ed25519')
		return ('ed25519');
	else if (alg === 'ssh-curve25519')
		return ('curve25519');
	else if (alg.match(/^ecdsa-sha2-/))
		return ('ecdsa');
	else
		throw (new Error('Unknown algorithm ' + alg));
}

function keyTypeToAlg(key) {
	assert.object(key);
	if (key.type === 'dsa')
		return ('ssh-dss');
	else if (key.type === 'rsa')
		return ('ssh-rsa');
	else if (key.type === 'ed25519')
		return ('ssh-ed25519');
	else if (key.type === 'curve25519')
		return ('ssh-curve25519');
	else if (key.type === 'ecdsa')
		return ('ecdsa-sha2-' + key.part.curve.data.toString());
	else
		throw (new Error('Unknown key type ' + key.type));
}

function read(partial, type, buf, options) {
	if (typeof (buf) === 'string')
		buf = Buffer.from(buf);
	assert.buffer(buf, 'buf');

	var key = {};

	var parts = key.parts = [];
	var sshbuf = new SSHBuffer({buffer: buf});

	var alg = sshbuf.readString();
	assert.ok(!sshbuf.atEnd(), 'key must have at least one part');

	key.type = algToKeyType(alg);

	var partCount = algs.info[key.type].parts.length;
	if (type && type === 'private')
		partCount = algs.privInfo[key.type].parts.length;

	while (!sshbuf.atEnd() && parts.length < partCount)
		parts.push(sshbuf.readPart());
	while (!partial && !sshbuf.atEnd())
		parts.push(sshbuf.readPart());

	assert.ok(parts.length >= 1,
	    'key must have at least one part');
	assert.ok(partial || sshbuf.atEnd(),
	    'leftover bytes at end of key');

	var Constructor = Key;
	var algInfo = algs.info[key.type];
	if (type === 'private' || algInfo.parts.length !== parts.length) {
		algInfo = algs.privInfo[key.type];
		Constructor = PrivateKey;
	}
	assert.strictEqual(algInfo.parts.length, parts.length);

	if (key.type === 'ecdsa') {
		var res = /^ecdsa-sha2-(.+)$/.exec(alg);
		assert.ok(res !== null);
		assert.strictEqual(res[1], parts[0].data.toString());
	}

	var normalized = true;
	for (var i = 0; i < algInfo.parts.length; ++i) {
		var p = parts[i];
		p.name = algInfo.parts[i];
		/*
		 * OpenSSH stores ed25519 "private" keys as seed + public key
		 * concat'd together (k followed by A). We want to keep them
		 * separate for other formats that don't do this.
		 */
		if (key.type === 'ed25519' && p.name === 'k')
			p.data = p.data.slice(0, 32);

		if (p.name !== 'curve' && algInfo.normalize !== false) {
			var nd;
			if (key.type === 'ed25519') {
				nd = utils.zeroPadToLength(p.data, 32);
			} else {
				nd = utils.mpNormalize(p.data);
			}
			if (nd.toString('binary') !==
			    p.data.toString('binary')) {
				p.data = nd;
				normalized = false;
			}
		}
	}

	if (normalized)
		key._rfc4253Cache = sshbuf.toBuffer();

	if (partial && typeof (partial) === 'object') {
		partial.remainder = sshbuf.remainder();
		partial.consumed = sshbuf._offset;
	}

	return (new Constructor(key));
}

function write(key, options) {
	assert.object(key);

	var alg = keyTypeToAlg(key);
	var i;

	var algInfo = algs.info[key.type];
	if (PrivateKey.isPrivateKey(key))
		algInfo = algs.privInfo[key.type];
	var parts = algInfo.parts;

	var buf = new SSHBuffer({});

	buf.writeString(alg);

	for (i = 0; i < parts.length; ++i) {
		var data = key.part[parts[i]].data;
		if (algInfo.normalize !== false) {
			if (key.type === 'ed25519')
				data = utils.zeroPadToLength(data, 32);
			else
				data = utils.mpNormalize(data);
		}
		if (key.type === 'ed25519' && parts[i] === 'k')
			data = Buffer.concat([data, key.part.A.data]);
		buf.writeBuffer(data);
	}

	return (buf.toBuffer());
}


/***/ }),

/***/ 3923:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = {
	read: read,
	readSSHPrivate: readSSHPrivate,
	write: write
};

var assert = __webpack_require__(66631);
var asn1 = __webpack_require__(80970);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var crypto = __webpack_require__(33373);

var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var pem = __webpack_require__(14324);
var rfc4253 = __webpack_require__(88688);
var SSHBuffer = __webpack_require__(25621);
var errors = __webpack_require__(27979);

var bcrypt;

function read(buf, options) {
	return (pem.read(buf, options));
}

var MAGIC = 'openssh-key-v1';

function readSSHPrivate(type, buf, options) {
	buf = new SSHBuffer({buffer: buf});

	var magic = buf.readCString();
	assert.strictEqual(magic, MAGIC, 'bad magic string');

	var cipher = buf.readString();
	var kdf = buf.readString();
	var kdfOpts = buf.readBuffer();

	var nkeys = buf.readInt();
	if (nkeys !== 1) {
		throw (new Error('OpenSSH-format key file contains ' +
		    'multiple keys: this is unsupported.'));
	}

	var pubKey = buf.readBuffer();

	if (type === 'public') {
		assert.ok(buf.atEnd(), 'excess bytes left after key');
		return (rfc4253.read(pubKey));
	}

	var privKeyBlob = buf.readBuffer();
	assert.ok(buf.atEnd(), 'excess bytes left after key');

	var kdfOptsBuf = new SSHBuffer({ buffer: kdfOpts });
	switch (kdf) {
	case 'none':
		if (cipher !== 'none') {
			throw (new Error('OpenSSH-format key uses KDF "none" ' +
			     'but specifies a cipher other than "none"'));
		}
		break;
	case 'bcrypt':
		var salt = kdfOptsBuf.readBuffer();
		var rounds = kdfOptsBuf.readInt();
		var cinf = utils.opensshCipherInfo(cipher);
		if (bcrypt === undefined) {
			bcrypt = __webpack_require__(45447);
		}

		if (typeof (options.passphrase) === 'string') {
			options.passphrase = Buffer.from(options.passphrase,
			    'utf-8');
		}
		if (!Buffer.isBuffer(options.passphrase)) {
			throw (new errors.KeyEncryptedError(
			    options.filename, 'OpenSSH'));
		}

		var pass = new Uint8Array(options.passphrase);
		var salti = new Uint8Array(salt);
		/* Use the pbkdf to derive both the key and the IV. */
		var out = new Uint8Array(cinf.keySize + cinf.blockSize);
		var res = bcrypt.pbkdf(pass, pass.length, salti, salti.length,
		    out, out.length, rounds);
		if (res !== 0) {
			throw (new Error('bcrypt_pbkdf function returned ' +
			    'failure, parameters invalid'));
		}
		out = Buffer.from(out);
		var ckey = out.slice(0, cinf.keySize);
		var iv = out.slice(cinf.keySize, cinf.keySize + cinf.blockSize);
		var cipherStream = crypto.createDecipheriv(cinf.opensslName,
		    ckey, iv);
		cipherStream.setAutoPadding(false);
		var chunk, chunks = [];
		cipherStream.once('error', function (e) {
			if (e.toString().indexOf('bad decrypt') !== -1) {
				throw (new Error('Incorrect passphrase ' +
				    'supplied, could not decrypt key'));
			}
			throw (e);
		});
		cipherStream.write(privKeyBlob);
		cipherStream.end();
		while ((chunk = cipherStream.read()) !== null)
			chunks.push(chunk);
		privKeyBlob = Buffer.concat(chunks);
		break;
	default:
		throw (new Error(
		    'OpenSSH-format key uses unknown KDF "' + kdf + '"'));
	}

	buf = new SSHBuffer({buffer: privKeyBlob});

	var checkInt1 = buf.readInt();
	var checkInt2 = buf.readInt();
	if (checkInt1 !== checkInt2) {
		throw (new Error('Incorrect passphrase supplied, could not ' +
		    'decrypt key'));
	}

	var ret = {};
	var key = rfc4253.readInternal(ret, 'private', buf.remainder());

	buf.skip(ret.consumed);

	var comment = buf.readString();
	key.comment = comment;

	return (key);
}

function write(key, options) {
	var pubKey;
	if (PrivateKey.isPrivateKey(key))
		pubKey = key.toPublic();
	else
		pubKey = key;

	var cipher = 'none';
	var kdf = 'none';
	var kdfopts = Buffer.alloc(0);
	var cinf = { blockSize: 8 };
	var passphrase;
	if (options !== undefined) {
		passphrase = options.passphrase;
		if (typeof (passphrase) === 'string')
			passphrase = Buffer.from(passphrase, 'utf-8');
		if (passphrase !== undefined) {
			assert.buffer(passphrase, 'options.passphrase');
			assert.optionalString(options.cipher, 'options.cipher');
			cipher = options.cipher;
			if (cipher === undefined)
				cipher = 'aes128-ctr';
			cinf = utils.opensshCipherInfo(cipher);
			kdf = 'bcrypt';
		}
	}

	var privBuf;
	if (PrivateKey.isPrivateKey(key)) {
		privBuf = new SSHBuffer({});
		var checkInt = crypto.randomBytes(4).readUInt32BE(0);
		privBuf.writeInt(checkInt);
		privBuf.writeInt(checkInt);
		privBuf.write(key.toBuffer('rfc4253'));
		privBuf.writeString(key.comment || '');

		var n = 1;
		while (privBuf._offset % cinf.blockSize !== 0)
			privBuf.writeChar(n++);
		privBuf = privBuf.toBuffer();
	}

	switch (kdf) {
	case 'none':
		break;
	case 'bcrypt':
		var salt = crypto.randomBytes(16);
		var rounds = 16;
		var kdfssh = new SSHBuffer({});
		kdfssh.writeBuffer(salt);
		kdfssh.writeInt(rounds);
		kdfopts = kdfssh.toBuffer();

		if (bcrypt === undefined) {
			bcrypt = __webpack_require__(45447);
		}
		var pass = new Uint8Array(passphrase);
		var salti = new Uint8Array(salt);
		/* Use the pbkdf to derive both the key and the IV. */
		var out = new Uint8Array(cinf.keySize + cinf.blockSize);
		var res = bcrypt.pbkdf(pass, pass.length, salti, salti.length,
		    out, out.length, rounds);
		if (res !== 0) {
			throw (new Error('bcrypt_pbkdf function returned ' +
			    'failure, parameters invalid'));
		}
		out = Buffer.from(out);
		var ckey = out.slice(0, cinf.keySize);
		var iv = out.slice(cinf.keySize, cinf.keySize + cinf.blockSize);

		var cipherStream = crypto.createCipheriv(cinf.opensslName,
		    ckey, iv);
		cipherStream.setAutoPadding(false);
		var chunk, chunks = [];
		cipherStream.once('error', function (e) {
			throw (e);
		});
		cipherStream.write(privBuf);
		cipherStream.end();
		while ((chunk = cipherStream.read()) !== null)
			chunks.push(chunk);
		privBuf = Buffer.concat(chunks);
		break;
	default:
		throw (new Error('Unsupported kdf ' + kdf));
	}

	var buf = new SSHBuffer({});

	buf.writeCString(MAGIC);
	buf.writeString(cipher);	/* cipher */
	buf.writeString(kdf);		/* kdf */
	buf.writeBuffer(kdfopts);	/* kdfoptions */

	buf.writeInt(1);		/* nkeys */
	buf.writeBuffer(pubKey.toBuffer('rfc4253'));

	if (privBuf)
		buf.writeBuffer(privBuf);

	buf = buf.toBuffer();

	var header;
	if (PrivateKey.isPrivateKey(key))
		header = 'OPENSSH PRIVATE KEY';
	else
		header = 'OPENSSH PUBLIC KEY';

	var tmp = buf.toString('base64');
	var len = tmp.length + (tmp.length / 70) +
	    18 + 16 + header.length*2 + 10;
	buf = Buffer.alloc(len);
	var o = 0;
	o += buf.write('-----BEGIN ' + header + '-----\n', o);
	for (var i = 0; i < tmp.length; ) {
		var limit = i + 70;
		if (limit > tmp.length)
			limit = tmp.length;
		o += buf.write(tmp.slice(i, limit), o);
		buf[o++] = 10;
		i = limit;
	}
	o += buf.write('-----END ' + header + '-----\n', o);

	return (buf.slice(0, o));
}


/***/ }),

/***/ 68927:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = {
	read: read,
	write: write
};

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var rfc4253 = __webpack_require__(88688);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);

var sshpriv = __webpack_require__(3923);

/*JSSTYLED*/
var SSHKEY_RE = /^([a-z0-9-]+)[ \t]+([a-zA-Z0-9+\/]+[=]*)([ \t]+([^ \t][^\n]*[\n]*)?)?$/;
/*JSSTYLED*/
var SSHKEY_RE2 = /^([a-z0-9-]+)[ \t\n]+([a-zA-Z0-9+\/][a-zA-Z0-9+\/ \t\n=]*)([^a-zA-Z0-9+\/ \t\n=].*)?$/;

function read(buf, options) {
	if (typeof (buf) !== 'string') {
		assert.buffer(buf, 'buf');
		buf = buf.toString('ascii');
	}

	var trimmed = buf.trim().replace(/[\\\r]/g, '');
	var m = trimmed.match(SSHKEY_RE);
	if (!m)
		m = trimmed.match(SSHKEY_RE2);
	assert.ok(m, 'key must match regex');

	var type = rfc4253.algToKeyType(m[1]);
	var kbuf = Buffer.from(m[2], 'base64');

	/*
	 * This is a bit tricky. If we managed to parse the key and locate the
	 * key comment with the regex, then do a non-partial read and assert
	 * that we have consumed all bytes. If we couldn't locate the key
	 * comment, though, there may be whitespace shenanigans going on that
	 * have conjoined the comment to the rest of the key. We do a partial
	 * read in this case to try to make the best out of a sorry situation.
	 */
	var key;
	var ret = {};
	if (m[4]) {
		try {
			key = rfc4253.read(kbuf);

		} catch (e) {
			m = trimmed.match(SSHKEY_RE2);
			assert.ok(m, 'key must match regex');
			kbuf = Buffer.from(m[2], 'base64');
			key = rfc4253.readInternal(ret, 'public', kbuf);
		}
	} else {
		key = rfc4253.readInternal(ret, 'public', kbuf);
	}

	assert.strictEqual(type, key.type);

	if (m[4] && m[4].length > 0) {
		key.comment = m[4];

	} else if (ret.consumed) {
		/*
		 * Now the magic: trying to recover the key comment when it's
		 * gotten conjoined to the key or otherwise shenanigan'd.
		 *
		 * Work out how much base64 we used, then drop all non-base64
		 * chars from the beginning up to this point in the the string.
		 * Then offset in this and try to make up for missing = chars.
		 */
		var data = m[2] + (m[3] ? m[3] : '');
		var realOffset = Math.ceil(ret.consumed / 3) * 4;
		data = data.slice(0, realOffset - 2). /*JSSTYLED*/
		    replace(/[^a-zA-Z0-9+\/=]/g, '') +
		    data.slice(realOffset - 2);

		var padding = ret.consumed % 3;
		if (padding > 0 &&
		    data.slice(realOffset - 1, realOffset) !== '=')
			realOffset--;
		while (data.slice(realOffset, realOffset + 1) === '=')
			realOffset++;

		/* Finally, grab what we think is the comment & clean it up. */
		var trailer = data.slice(realOffset);
		trailer = trailer.replace(/[\r\n]/g, ' ').
		    replace(/^\s+/, '');
		if (trailer.match(/^[a-zA-Z0-9]/))
			key.comment = trailer;
	}

	return (key);
}

function write(key, options) {
	assert.object(key);
	if (!Key.isKey(key))
		throw (new Error('Must be a public key'));

	var parts = [];
	var alg = rfc4253.keyTypeToAlg(key);
	parts.push(alg);

	var buf = rfc4253.write(key);
	parts.push(buf.toString('base64'));

	if (key.comment)
		parts.push(key.comment);

	return (Buffer.from(parts.join(' ')));
}


/***/ }),

/***/ 30217:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2016 Joyent, Inc.

var x509 = __webpack_require__(10267);

module.exports = {
	read: read,
	verify: x509.verify,
	sign: x509.sign,
	write: write
};

var assert = __webpack_require__(66631);
var asn1 = __webpack_require__(80970);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var pem = __webpack_require__(14324);
var Identity = __webpack_require__(70508);
var Signature = __webpack_require__(91394);
var Certificate = __webpack_require__(7406);

function read(buf, options) {
	if (typeof (buf) !== 'string') {
		assert.buffer(buf, 'buf');
		buf = buf.toString('ascii');
	}

	var lines = buf.trim().split(/[\r\n]+/g);

	var m;
	var si = -1;
	while (!m && si < lines.length) {
		m = lines[++si].match(/*JSSTYLED*/
		    /[-]+[ ]*BEGIN CERTIFICATE[ ]*[-]+/);
	}
	assert.ok(m, 'invalid PEM header');

	var m2;
	var ei = lines.length;
	while (!m2 && ei > 0) {
		m2 = lines[--ei].match(/*JSSTYLED*/
		    /[-]+[ ]*END CERTIFICATE[ ]*[-]+/);
	}
	assert.ok(m2, 'invalid PEM footer');

	lines = lines.slice(si, ei + 1);

	var headers = {};
	while (true) {
		lines = lines.slice(1);
		m = lines[0].match(/*JSSTYLED*/
		    /^([A-Za-z0-9-]+): (.+)$/);
		if (!m)
			break;
		headers[m[1].toLowerCase()] = m[2];
	}

	/* Chop off the first and last lines */
	lines = lines.slice(0, -1).join('');
	buf = Buffer.from(lines, 'base64');

	return (x509.read(buf, options));
}

function write(cert, options) {
	var dbuf = x509.write(cert, options);

	var header = 'CERTIFICATE';
	var tmp = dbuf.toString('base64');
	var len = tmp.length + (tmp.length / 64) +
	    18 + 16 + header.length*2 + 10;
	var buf = Buffer.alloc(len);
	var o = 0;
	o += buf.write('-----BEGIN ' + header + '-----\n', o);
	for (var i = 0; i < tmp.length; ) {
		var limit = i + 64;
		if (limit > tmp.length)
			limit = tmp.length;
		o += buf.write(tmp.slice(i, limit), o);
		buf[o++] = 10;
		i = limit;
	}
	o += buf.write('-----END ' + header + '-----\n', o);

	return (buf.slice(0, o));
}


/***/ }),

/***/ 10267:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2017 Joyent, Inc.

module.exports = {
	read: read,
	verify: verify,
	sign: sign,
	signAsync: signAsync,
	write: write
};

var assert = __webpack_require__(66631);
var asn1 = __webpack_require__(80970);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var utils = __webpack_require__(80575);
var Key = __webpack_require__(36814);
var PrivateKey = __webpack_require__(29602);
var pem = __webpack_require__(14324);
var Identity = __webpack_require__(70508);
var Signature = __webpack_require__(91394);
var Certificate = __webpack_require__(7406);
var pkcs8 = __webpack_require__(4173);

/*
 * This file is based on RFC5280 (X.509).
 */

/* Helper to read in a single mpint */
function readMPInt(der, nm) {
	assert.strictEqual(der.peek(), asn1.Ber.Integer,
	    nm + ' is not an Integer');
	return (utils.mpNormalize(der.readString(asn1.Ber.Integer, true)));
}

function verify(cert, key) {
	var sig = cert.signatures.x509;
	assert.object(sig, 'x509 signature');

	var algParts = sig.algo.split('-');
	if (algParts[0] !== key.type)
		return (false);

	var blob = sig.cache;
	if (blob === undefined) {
		var der = new asn1.BerWriter();
		writeTBSCert(cert, der);
		blob = der.buffer;
	}

	var verifier = key.createVerify(algParts[1]);
	verifier.write(blob);
	return (verifier.verify(sig.signature));
}

function Local(i) {
	return (asn1.Ber.Context | asn1.Ber.Constructor | i);
}

function Context(i) {
	return (asn1.Ber.Context | i);
}

var SIGN_ALGS = {
	'rsa-md5': '1.2.840.113549.1.1.4',
	'rsa-sha1': '1.2.840.113549.1.1.5',
	'rsa-sha256': '1.2.840.113549.1.1.11',
	'rsa-sha384': '1.2.840.113549.1.1.12',
	'rsa-sha512': '1.2.840.113549.1.1.13',
	'dsa-sha1': '1.2.840.10040.4.3',
	'dsa-sha256': '2.16.840.1.101.3.4.3.2',
	'ecdsa-sha1': '1.2.840.10045.4.1',
	'ecdsa-sha256': '1.2.840.10045.4.3.2',
	'ecdsa-sha384': '1.2.840.10045.4.3.3',
	'ecdsa-sha512': '1.2.840.10045.4.3.4',
	'ed25519-sha512': '1.3.101.112'
};
Object.keys(SIGN_ALGS).forEach(function (k) {
	SIGN_ALGS[SIGN_ALGS[k]] = k;
});
SIGN_ALGS['1.3.14.3.2.3'] = 'rsa-md5';
SIGN_ALGS['1.3.14.3.2.29'] = 'rsa-sha1';

var EXTS = {
	'issuerKeyId': '2.5.29.35',
	'altName': '2.5.29.17',
	'basicConstraints': '2.5.29.19',
	'keyUsage': '2.5.29.15',
	'extKeyUsage': '2.5.29.37'
};

function read(buf, options) {
	if (typeof (buf) === 'string') {
		buf = Buffer.from(buf, 'binary');
	}
	assert.buffer(buf, 'buf');

	var der = new asn1.BerReader(buf);

	der.readSequence();
	if (Math.abs(der.length - der.remain) > 1) {
		throw (new Error('DER sequence does not contain whole byte ' +
		    'stream'));
	}

	var tbsStart = der.offset;
	der.readSequence();
	var sigOffset = der.offset + der.length;
	var tbsEnd = sigOffset;

	if (der.peek() === Local(0)) {
		der.readSequence(Local(0));
		var version = der.readInt();
		assert.ok(version <= 3,
		    'only x.509 versions up to v3 supported');
	}

	var cert = {};
	cert.signatures = {};
	var sig = (cert.signatures.x509 = {});
	sig.extras = {};

	cert.serial = readMPInt(der, 'serial');

	der.readSequence();
	var after = der.offset + der.length;
	var certAlgOid = der.readOID();
	var certAlg = SIGN_ALGS[certAlgOid];
	if (certAlg === undefined)
		throw (new Error('unknown signature algorithm ' + certAlgOid));

	der._offset = after;
	cert.issuer = Identity.parseAsn1(der);

	der.readSequence();
	cert.validFrom = readDate(der);
	cert.validUntil = readDate(der);

	cert.subjects = [Identity.parseAsn1(der)];

	der.readSequence();
	after = der.offset + der.length;
	cert.subjectKey = pkcs8.readPkcs8(undefined, 'public', der);
	der._offset = after;

	/* issuerUniqueID */
	if (der.peek() === Local(1)) {
		der.readSequence(Local(1));
		sig.extras.issuerUniqueID =
		    buf.slice(der.offset, der.offset + der.length);
		der._offset += der.length;
	}

	/* subjectUniqueID */
	if (der.peek() === Local(2)) {
		der.readSequence(Local(2));
		sig.extras.subjectUniqueID =
		    buf.slice(der.offset, der.offset + der.length);
		der._offset += der.length;
	}

	/* extensions */
	if (der.peek() === Local(3)) {
		der.readSequence(Local(3));
		var extEnd = der.offset + der.length;
		der.readSequence();

		while (der.offset < extEnd)
			readExtension(cert, buf, der);

		assert.strictEqual(der.offset, extEnd);
	}

	assert.strictEqual(der.offset, sigOffset);

	der.readSequence();
	after = der.offset + der.length;
	var sigAlgOid = der.readOID();
	var sigAlg = SIGN_ALGS[sigAlgOid];
	if (sigAlg === undefined)
		throw (new Error('unknown signature algorithm ' + sigAlgOid));
	der._offset = after;

	var sigData = der.readString(asn1.Ber.BitString, true);
	if (sigData[0] === 0)
		sigData = sigData.slice(1);
	var algParts = sigAlg.split('-');

	sig.signature = Signature.parse(sigData, algParts[0], 'asn1');
	sig.signature.hashAlgorithm = algParts[1];
	sig.algo = sigAlg;
	sig.cache = buf.slice(tbsStart, tbsEnd);

	return (new Certificate(cert));
}

function readDate(der) {
	if (der.peek() === asn1.Ber.UTCTime) {
		return (utcTimeToDate(der.readString(asn1.Ber.UTCTime)));
	} else if (der.peek() === asn1.Ber.GeneralizedTime) {
		return (gTimeToDate(der.readString(asn1.Ber.GeneralizedTime)));
	} else {
		throw (new Error('Unsupported date format'));
	}
}

function writeDate(der, date) {
	if (date.getUTCFullYear() >= 2050 || date.getUTCFullYear() < 1950) {
		der.writeString(dateToGTime(date), asn1.Ber.GeneralizedTime);
	} else {
		der.writeString(dateToUTCTime(date), asn1.Ber.UTCTime);
	}
}

/* RFC5280, section 4.2.1.6 (GeneralName type) */
var ALTNAME = {
	OtherName: Local(0),
	RFC822Name: Context(1),
	DNSName: Context(2),
	X400Address: Local(3),
	DirectoryName: Local(4),
	EDIPartyName: Local(5),
	URI: Context(6),
	IPAddress: Context(7),
	OID: Context(8)
};

/* RFC5280, section 4.2.1.12 (KeyPurposeId) */
var EXTPURPOSE = {
	'serverAuth': '1.3.6.1.5.5.7.3.1',
	'clientAuth': '1.3.6.1.5.5.7.3.2',
	'codeSigning': '1.3.6.1.5.5.7.3.3',

	/* See https://github.com/joyent/oid-docs/blob/master/root.md */
	'joyentDocker': '1.3.6.1.4.1.38678.1.4.1',
	'joyentCmon': '1.3.6.1.4.1.38678.1.4.2'
};
var EXTPURPOSE_REV = {};
Object.keys(EXTPURPOSE).forEach(function (k) {
	EXTPURPOSE_REV[EXTPURPOSE[k]] = k;
});

var KEYUSEBITS = [
	'signature', 'identity', 'keyEncryption',
	'encryption', 'keyAgreement', 'ca', 'crl'
];

function readExtension(cert, buf, der) {
	der.readSequence();
	var after = der.offset + der.length;
	var extId = der.readOID();
	var id;
	var sig = cert.signatures.x509;
	if (!sig.extras.exts)
		sig.extras.exts = [];

	var critical;
	if (der.peek() === asn1.Ber.Boolean)
		critical = der.readBoolean();

	switch (extId) {
	case (EXTS.basicConstraints):
		der.readSequence(asn1.Ber.OctetString);
		der.readSequence();
		var bcEnd = der.offset + der.length;
		var ca = false;
		if (der.peek() === asn1.Ber.Boolean)
			ca = der.readBoolean();
		if (cert.purposes === undefined)
			cert.purposes = [];
		if (ca === true)
			cert.purposes.push('ca');
		var bc = { oid: extId, critical: critical };
		if (der.offset < bcEnd && der.peek() === asn1.Ber.Integer)
			bc.pathLen = der.readInt();
		sig.extras.exts.push(bc);
		break;
	case (EXTS.extKeyUsage):
		der.readSequence(asn1.Ber.OctetString);
		der.readSequence();
		if (cert.purposes === undefined)
			cert.purposes = [];
		var ekEnd = der.offset + der.length;
		while (der.offset < ekEnd) {
			var oid = der.readOID();
			cert.purposes.push(EXTPURPOSE_REV[oid] || oid);
		}
		/*
		 * This is a bit of a hack: in the case where we have a cert
		 * that's only allowed to do serverAuth or clientAuth (and not
		 * the other), we want to make sure all our Subjects are of
		 * the right type. But we already parsed our Subjects and
		 * decided if they were hosts or users earlier (since it appears
		 * first in the cert).
		 *
		 * So we go through and mutate them into the right kind here if
		 * it doesn't match. This might not be hugely beneficial, as it
		 * seems that single-purpose certs are not often seen in the
		 * wild.
		 */
		if (cert.purposes.indexOf('serverAuth') !== -1 &&
		    cert.purposes.indexOf('clientAuth') === -1) {
			cert.subjects.forEach(function (ide) {
				if (ide.type !== 'host') {
					ide.type = 'host';
					ide.hostname = ide.uid ||
					    ide.email ||
					    ide.components[0].value;
				}
			});
		} else if (cert.purposes.indexOf('clientAuth') !== -1 &&
		    cert.purposes.indexOf('serverAuth') === -1) {
			cert.subjects.forEach(function (ide) {
				if (ide.type !== 'user') {
					ide.type = 'user';
					ide.uid = ide.hostname ||
					    ide.email ||
					    ide.components[0].value;
				}
			});
		}
		sig.extras.exts.push({ oid: extId, critical: critical });
		break;
	case (EXTS.keyUsage):
		der.readSequence(asn1.Ber.OctetString);
		var bits = der.readString(asn1.Ber.BitString, true);
		var setBits = readBitField(bits, KEYUSEBITS);
		setBits.forEach(function (bit) {
			if (cert.purposes === undefined)
				cert.purposes = [];
			if (cert.purposes.indexOf(bit) === -1)
				cert.purposes.push(bit);
		});
		sig.extras.exts.push({ oid: extId, critical: critical,
		    bits: bits });
		break;
	case (EXTS.altName):
		der.readSequence(asn1.Ber.OctetString);
		der.readSequence();
		var aeEnd = der.offset + der.length;
		while (der.offset < aeEnd) {
			switch (der.peek()) {
			case ALTNAME.OtherName:
			case ALTNAME.EDIPartyName:
				der.readSequence();
				der._offset += der.length;
				break;
			case ALTNAME.OID:
				der.readOID(ALTNAME.OID);
				break;
			case ALTNAME.RFC822Name:
				/* RFC822 specifies email addresses */
				var email = der.readString(ALTNAME.RFC822Name);
				id = Identity.forEmail(email);
				if (!cert.subjects[0].equals(id))
					cert.subjects.push(id);
				break;
			case ALTNAME.DirectoryName:
				der.readSequence(ALTNAME.DirectoryName);
				id = Identity.parseAsn1(der);
				if (!cert.subjects[0].equals(id))
					cert.subjects.push(id);
				break;
			case ALTNAME.DNSName:
				var host = der.readString(
				    ALTNAME.DNSName);
				id = Identity.forHost(host);
				if (!cert.subjects[0].equals(id))
					cert.subjects.push(id);
				break;
			default:
				der.readString(der.peek());
				break;
			}
		}
		sig.extras.exts.push({ oid: extId, critical: critical });
		break;
	default:
		sig.extras.exts.push({
			oid: extId,
			critical: critical,
			data: der.readString(asn1.Ber.OctetString, true)
		});
		break;
	}

	der._offset = after;
}

var UTCTIME_RE =
    /^([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})?Z$/;
function utcTimeToDate(t) {
	var m = t.match(UTCTIME_RE);
	assert.ok(m, 'timestamps must be in UTC');
	var d = new Date();

	var thisYear = d.getUTCFullYear();
	var century = Math.floor(thisYear / 100) * 100;

	var year = parseInt(m[1], 10);
	if (thisYear % 100 < 50 && year >= 60)
		year += (century - 1);
	else
		year += century;
	d.setUTCFullYear(year, parseInt(m[2], 10) - 1, parseInt(m[3], 10));
	d.setUTCHours(parseInt(m[4], 10), parseInt(m[5], 10));
	if (m[6] && m[6].length > 0)
		d.setUTCSeconds(parseInt(m[6], 10));
	return (d);
}

var GTIME_RE =
    /^([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})([0-9]{2})?Z$/;
function gTimeToDate(t) {
	var m = t.match(GTIME_RE);
	assert.ok(m);
	var d = new Date();

	d.setUTCFullYear(parseInt(m[1], 10), parseInt(m[2], 10) - 1,
	    parseInt(m[3], 10));
	d.setUTCHours(parseInt(m[4], 10), parseInt(m[5], 10));
	if (m[6] && m[6].length > 0)
		d.setUTCSeconds(parseInt(m[6], 10));
	return (d);
}

function zeroPad(n, m) {
	if (m === undefined)
		m = 2;
	var s = '' + n;
	while (s.length < m)
		s = '0' + s;
	return (s);
}

function dateToUTCTime(d) {
	var s = '';
	s += zeroPad(d.getUTCFullYear() % 100);
	s += zeroPad(d.getUTCMonth() + 1);
	s += zeroPad(d.getUTCDate());
	s += zeroPad(d.getUTCHours());
	s += zeroPad(d.getUTCMinutes());
	s += zeroPad(d.getUTCSeconds());
	s += 'Z';
	return (s);
}

function dateToGTime(d) {
	var s = '';
	s += zeroPad(d.getUTCFullYear(), 4);
	s += zeroPad(d.getUTCMonth() + 1);
	s += zeroPad(d.getUTCDate());
	s += zeroPad(d.getUTCHours());
	s += zeroPad(d.getUTCMinutes());
	s += zeroPad(d.getUTCSeconds());
	s += 'Z';
	return (s);
}

function sign(cert, key) {
	if (cert.signatures.x509 === undefined)
		cert.signatures.x509 = {};
	var sig = cert.signatures.x509;

	sig.algo = key.type + '-' + key.defaultHashAlgorithm();
	if (SIGN_ALGS[sig.algo] === undefined)
		return (false);

	var der = new asn1.BerWriter();
	writeTBSCert(cert, der);
	var blob = der.buffer;
	sig.cache = blob;

	var signer = key.createSign();
	signer.write(blob);
	cert.signatures.x509.signature = signer.sign();

	return (true);
}

function signAsync(cert, signer, done) {
	if (cert.signatures.x509 === undefined)
		cert.signatures.x509 = {};
	var sig = cert.signatures.x509;

	var der = new asn1.BerWriter();
	writeTBSCert(cert, der);
	var blob = der.buffer;
	sig.cache = blob;

	signer(blob, function (err, signature) {
		if (err) {
			done(err);
			return;
		}
		sig.algo = signature.type + '-' + signature.hashAlgorithm;
		if (SIGN_ALGS[sig.algo] === undefined) {
			done(new Error('Invalid signing algorithm "' +
			    sig.algo + '"'));
			return;
		}
		sig.signature = signature;
		done();
	});
}

function write(cert, options) {
	var sig = cert.signatures.x509;
	assert.object(sig, 'x509 signature');

	var der = new asn1.BerWriter();
	der.startSequence();
	if (sig.cache) {
		der._ensure(sig.cache.length);
		sig.cache.copy(der._buf, der._offset);
		der._offset += sig.cache.length;
	} else {
		writeTBSCert(cert, der);
	}

	der.startSequence();
	der.writeOID(SIGN_ALGS[sig.algo]);
	if (sig.algo.match(/^rsa-/))
		der.writeNull();
	der.endSequence();

	var sigData = sig.signature.toBuffer('asn1');
	var data = Buffer.alloc(sigData.length + 1);
	data[0] = 0;
	sigData.copy(data, 1);
	der.writeBuffer(data, asn1.Ber.BitString);
	der.endSequence();

	return (der.buffer);
}

function writeTBSCert(cert, der) {
	var sig = cert.signatures.x509;
	assert.object(sig, 'x509 signature');

	der.startSequence();

	der.startSequence(Local(0));
	der.writeInt(2);
	der.endSequence();

	der.writeBuffer(utils.mpNormalize(cert.serial), asn1.Ber.Integer);

	der.startSequence();
	der.writeOID(SIGN_ALGS[sig.algo]);
	if (sig.algo.match(/^rsa-/))
		der.writeNull();
	der.endSequence();

	cert.issuer.toAsn1(der);

	der.startSequence();
	writeDate(der, cert.validFrom);
	writeDate(der, cert.validUntil);
	der.endSequence();

	var subject = cert.subjects[0];
	var altNames = cert.subjects.slice(1);
	subject.toAsn1(der);

	pkcs8.writePkcs8(der, cert.subjectKey);

	if (sig.extras && sig.extras.issuerUniqueID) {
		der.writeBuffer(sig.extras.issuerUniqueID, Local(1));
	}

	if (sig.extras && sig.extras.subjectUniqueID) {
		der.writeBuffer(sig.extras.subjectUniqueID, Local(2));
	}

	if (altNames.length > 0 || subject.type === 'host' ||
	    (cert.purposes !== undefined && cert.purposes.length > 0) ||
	    (sig.extras && sig.extras.exts)) {
		der.startSequence(Local(3));
		der.startSequence();

		var exts = [];
		if (cert.purposes !== undefined && cert.purposes.length > 0) {
			exts.push({
				oid: EXTS.basicConstraints,
				critical: true
			});
			exts.push({
				oid: EXTS.keyUsage,
				critical: true
			});
			exts.push({
				oid: EXTS.extKeyUsage,
				critical: true
			});
		}
		exts.push({ oid: EXTS.altName });
		if (sig.extras && sig.extras.exts)
			exts = sig.extras.exts;

		for (var i = 0; i < exts.length; ++i) {
			der.startSequence();
			der.writeOID(exts[i].oid);

			if (exts[i].critical !== undefined)
				der.writeBoolean(exts[i].critical);

			if (exts[i].oid === EXTS.altName) {
				der.startSequence(asn1.Ber.OctetString);
				der.startSequence();
				if (subject.type === 'host') {
					der.writeString(subject.hostname,
					    Context(2));
				}
				for (var j = 0; j < altNames.length; ++j) {
					if (altNames[j].type === 'host') {
						der.writeString(
						    altNames[j].hostname,
						    ALTNAME.DNSName);
					} else if (altNames[j].type ===
					    'email') {
						der.writeString(
						    altNames[j].email,
						    ALTNAME.RFC822Name);
					} else {
						/*
						 * Encode anything else as a
						 * DN style name for now.
						 */
						der.startSequence(
						    ALTNAME.DirectoryName);
						altNames[j].toAsn1(der);
						der.endSequence();
					}
				}
				der.endSequence();
				der.endSequence();
			} else if (exts[i].oid === EXTS.basicConstraints) {
				der.startSequence(asn1.Ber.OctetString);
				der.startSequence();
				var ca = (cert.purposes.indexOf('ca') !== -1);
				var pathLen = exts[i].pathLen;
				der.writeBoolean(ca);
				if (pathLen !== undefined)
					der.writeInt(pathLen);
				der.endSequence();
				der.endSequence();
			} else if (exts[i].oid === EXTS.extKeyUsage) {
				der.startSequence(asn1.Ber.OctetString);
				der.startSequence();
				cert.purposes.forEach(function (purpose) {
					if (purpose === 'ca')
						return;
					if (KEYUSEBITS.indexOf(purpose) !== -1)
						return;
					var oid = purpose;
					if (EXTPURPOSE[purpose] !== undefined)
						oid = EXTPURPOSE[purpose];
					der.writeOID(oid);
				});
				der.endSequence();
				der.endSequence();
			} else if (exts[i].oid === EXTS.keyUsage) {
				der.startSequence(asn1.Ber.OctetString);
				/*
				 * If we parsed this certificate from a byte
				 * stream (i.e. we didn't generate it in sshpk)
				 * then we'll have a ".bits" property on the
				 * ext with the original raw byte contents.
				 *
				 * If we have this, use it here instead of
				 * regenerating it. This guarantees we output
				 * the same data we parsed, so signatures still
				 * validate.
				 */
				if (exts[i].bits !== undefined) {
					der.writeBuffer(exts[i].bits,
					    asn1.Ber.BitString);
				} else {
					var bits = writeBitField(cert.purposes,
					    KEYUSEBITS);
					der.writeBuffer(bits,
					    asn1.Ber.BitString);
				}
				der.endSequence();
			} else {
				der.writeBuffer(exts[i].data,
				    asn1.Ber.OctetString);
			}

			der.endSequence();
		}

		der.endSequence();
		der.endSequence();
	}

	der.endSequence();
}

/*
 * Reads an ASN.1 BER bitfield out of the Buffer produced by doing
 * `BerReader#readString(asn1.Ber.BitString)`. That function gives us the raw
 * contents of the BitString tag, which is a count of unused bits followed by
 * the bits as a right-padded byte string.
 *
 * `bits` is the Buffer, `bitIndex` should contain an array of string names
 * for the bits in the string, ordered starting with bit #0 in the ASN.1 spec.
 *
 * Returns an array of Strings, the names of the bits that were set to 1.
 */
function readBitField(bits, bitIndex) {
	var bitLen = 8 * (bits.length - 1) - bits[0];
	var setBits = {};
	for (var i = 0; i < bitLen; ++i) {
		var byteN = 1 + Math.floor(i / 8);
		var bit = 7 - (i % 8);
		var mask = 1 << bit;
		var bitVal = ((bits[byteN] & mask) !== 0);
		var name = bitIndex[i];
		if (bitVal && typeof (name) === 'string') {
			setBits[name] = true;
		}
	}
	return (Object.keys(setBits));
}

/*
 * `setBits` is an array of strings, containing the names for each bit that
 * sould be set to 1. `bitIndex` is same as in `readBitField()`.
 *
 * Returns a Buffer, ready to be written out with `BerWriter#writeString()`.
 */
function writeBitField(setBits, bitIndex) {
	var bitLen = bitIndex.length;
	var blen = Math.ceil(bitLen / 8);
	var unused = blen * 8 - bitLen;
	var bits = Buffer.alloc(1 + blen); // zero-filled
	bits[0] = unused;
	for (var i = 0; i < bitLen; ++i) {
		var byteN = 1 + Math.floor(i / 8);
		var bit = 7 - (i % 8);
		var mask = 1 << bit;
		var name = bitIndex[i];
		if (name === undefined)
			continue;
		var bitVal = (setBits.indexOf(name) !== -1);
		if (bitVal) {
			bits[byteN] |= mask;
		}
	}
	return (bits);
}


/***/ }),

/***/ 70508:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2017 Joyent, Inc.

module.exports = Identity;

var assert = __webpack_require__(66631);
var algs = __webpack_require__(66126);
var crypto = __webpack_require__(33373);
var Fingerprint = __webpack_require__(13079);
var Signature = __webpack_require__(91394);
var errs = __webpack_require__(27979);
var util = __webpack_require__(31669);
var utils = __webpack_require__(80575);
var asn1 = __webpack_require__(80970);
var Buffer = __webpack_require__(15118).Buffer;

/*JSSTYLED*/
var DNS_NAME_RE = /^([*]|[a-z0-9][a-z0-9\-]{0,62})(?:\.([*]|[a-z0-9][a-z0-9\-]{0,62}))*$/i;

var oids = {};
oids.cn = '2.5.4.3';
oids.o = '2.5.4.10';
oids.ou = '2.5.4.11';
oids.l = '2.5.4.7';
oids.s = '2.5.4.8';
oids.c = '2.5.4.6';
oids.sn = '2.5.4.4';
oids.postalCode = '2.5.4.17';
oids.serialNumber = '2.5.4.5';
oids.street = '2.5.4.9';
oids.x500UniqueIdentifier = '2.5.4.45';
oids.role = '2.5.4.72';
oids.telephoneNumber = '2.5.4.20';
oids.description = '2.5.4.13';
oids.dc = '0.9.2342.19200300.100.1.25';
oids.uid = '0.9.2342.19200300.100.1.1';
oids.mail = '0.9.2342.19200300.100.1.3';
oids.title = '2.5.4.12';
oids.gn = '2.5.4.42';
oids.initials = '2.5.4.43';
oids.pseudonym = '2.5.4.65';
oids.emailAddress = '1.2.840.113549.1.9.1';

var unoids = {};
Object.keys(oids).forEach(function (k) {
	unoids[oids[k]] = k;
});

function Identity(opts) {
	var self = this;
	assert.object(opts, 'options');
	assert.arrayOfObject(opts.components, 'options.components');
	this.components = opts.components;
	this.componentLookup = {};
	this.components.forEach(function (c) {
		if (c.name && !c.oid)
			c.oid = oids[c.name];
		if (c.oid && !c.name)
			c.name = unoids[c.oid];
		if (self.componentLookup[c.name] === undefined)
			self.componentLookup[c.name] = [];
		self.componentLookup[c.name].push(c);
	});
	if (this.componentLookup.cn && this.componentLookup.cn.length > 0) {
		this.cn = this.componentLookup.cn[0].value;
	}
	assert.optionalString(opts.type, 'options.type');
	if (opts.type === undefined) {
		if (this.components.length === 1 &&
		    this.componentLookup.cn &&
		    this.componentLookup.cn.length === 1 &&
		    this.componentLookup.cn[0].value.match(DNS_NAME_RE)) {
			this.type = 'host';
			this.hostname = this.componentLookup.cn[0].value;

		} else if (this.componentLookup.dc &&
		    this.components.length === this.componentLookup.dc.length) {
			this.type = 'host';
			this.hostname = this.componentLookup.dc.map(
			    function (c) {
				return (c.value);
			}).join('.');

		} else if (this.componentLookup.uid &&
		    this.components.length ===
		    this.componentLookup.uid.length) {
			this.type = 'user';
			this.uid = this.componentLookup.uid[0].value;

		} else if (this.componentLookup.cn &&
		    this.componentLookup.cn.length === 1 &&
		    this.componentLookup.cn[0].value.match(DNS_NAME_RE)) {
			this.type = 'host';
			this.hostname = this.componentLookup.cn[0].value;

		} else if (this.componentLookup.uid &&
		    this.componentLookup.uid.length === 1) {
			this.type = 'user';
			this.uid = this.componentLookup.uid[0].value;

		} else if (this.componentLookup.mail &&
		    this.componentLookup.mail.length === 1) {
			this.type = 'email';
			this.email = this.componentLookup.mail[0].value;

		} else if (this.componentLookup.cn &&
		    this.componentLookup.cn.length === 1) {
			this.type = 'user';
			this.uid = this.componentLookup.cn[0].value;

		} else {
			this.type = 'unknown';
		}
	} else {
		this.type = opts.type;
		if (this.type === 'host')
			this.hostname = opts.hostname;
		else if (this.type === 'user')
			this.uid = opts.uid;
		else if (this.type === 'email')
			this.email = opts.email;
		else
			throw (new Error('Unknown type ' + this.type));
	}
}

Identity.prototype.toString = function () {
	return (this.components.map(function (c) {
		var n = c.name.toUpperCase();
		/*JSSTYLED*/
		n = n.replace(/=/g, '\\=');
		var v = c.value;
		/*JSSTYLED*/
		v = v.replace(/,/g, '\\,');
		return (n + '=' + v);
	}).join(', '));
};

Identity.prototype.get = function (name, asArray) {
	assert.string(name, 'name');
	var arr = this.componentLookup[name];
	if (arr === undefined || arr.length === 0)
		return (undefined);
	if (!asArray && arr.length > 1)
		throw (new Error('Multiple values for attribute ' + name));
	if (!asArray)
		return (arr[0].value);
	return (arr.map(function (c) {
		return (c.value);
	}));
};

Identity.prototype.toArray = function (idx) {
	return (this.components.map(function (c) {
		return ({
			name: c.name,
			value: c.value
		});
	}));
};

/*
 * These are from X.680 -- PrintableString allowed chars are in section 37.4
 * table 8. Spec for IA5Strings is "1,6 + SPACE + DEL" where 1 refers to
 * ISO IR #001 (standard ASCII control characters) and 6 refers to ISO IR #006
 * (the basic ASCII character set).
 */
/* JSSTYLED */
var NOT_PRINTABLE = /[^a-zA-Z0-9 '(),+.\/:=?-]/;
/* JSSTYLED */
var NOT_IA5 = /[^\x00-\x7f]/;

Identity.prototype.toAsn1 = function (der, tag) {
	der.startSequence(tag);
	this.components.forEach(function (c) {
		der.startSequence(asn1.Ber.Constructor | asn1.Ber.Set);
		der.startSequence();
		der.writeOID(c.oid);
		/*
		 * If we fit in a PrintableString, use that. Otherwise use an
		 * IA5String or UTF8String.
		 *
		 * If this identity was parsed from a DN, use the ASN.1 types
		 * from the original representation (otherwise this might not
		 * be a full match for the original in some validators).
		 */
		if (c.asn1type === asn1.Ber.Utf8String ||
		    c.value.match(NOT_IA5)) {
			var v = Buffer.from(c.value, 'utf8');
			der.writeBuffer(v, asn1.Ber.Utf8String);

		} else if (c.asn1type === asn1.Ber.IA5String ||
		    c.value.match(NOT_PRINTABLE)) {
			der.writeString(c.value, asn1.Ber.IA5String);

		} else {
			var type = asn1.Ber.PrintableString;
			if (c.asn1type !== undefined)
				type = c.asn1type;
			der.writeString(c.value, type);
		}
		der.endSequence();
		der.endSequence();
	});
	der.endSequence();
};

function globMatch(a, b) {
	if (a === '**' || b === '**')
		return (true);
	var aParts = a.split('.');
	var bParts = b.split('.');
	if (aParts.length !== bParts.length)
		return (false);
	for (var i = 0; i < aParts.length; ++i) {
		if (aParts[i] === '*' || bParts[i] === '*')
			continue;
		if (aParts[i] !== bParts[i])
			return (false);
	}
	return (true);
}

Identity.prototype.equals = function (other) {
	if (!Identity.isIdentity(other, [1, 0]))
		return (false);
	if (other.components.length !== this.components.length)
		return (false);
	for (var i = 0; i < this.components.length; ++i) {
		if (this.components[i].oid !== other.components[i].oid)
			return (false);
		if (!globMatch(this.components[i].value,
		    other.components[i].value)) {
			return (false);
		}
	}
	return (true);
};

Identity.forHost = function (hostname) {
	assert.string(hostname, 'hostname');
	return (new Identity({
		type: 'host',
		hostname: hostname,
		components: [ { name: 'cn', value: hostname } ]
	}));
};

Identity.forUser = function (uid) {
	assert.string(uid, 'uid');
	return (new Identity({
		type: 'user',
		uid: uid,
		components: [ { name: 'uid', value: uid } ]
	}));
};

Identity.forEmail = function (email) {
	assert.string(email, 'email');
	return (new Identity({
		type: 'email',
		email: email,
		components: [ { name: 'mail', value: email } ]
	}));
};

Identity.parseDN = function (dn) {
	assert.string(dn, 'dn');
	var parts = [''];
	var idx = 0;
	var rem = dn;
	while (rem.length > 0) {
		var m;
		/*JSSTYLED*/
		if ((m = /^,/.exec(rem)) !== null) {
			parts[++idx] = '';
			rem = rem.slice(m[0].length);
		/*JSSTYLED*/
		} else if ((m = /^\\,/.exec(rem)) !== null) {
			parts[idx] += ',';
			rem = rem.slice(m[0].length);
		/*JSSTYLED*/
		} else if ((m = /^\\./.exec(rem)) !== null) {
			parts[idx] += m[0];
			rem = rem.slice(m[0].length);
		/*JSSTYLED*/
		} else if ((m = /^[^\\,]+/.exec(rem)) !== null) {
			parts[idx] += m[0];
			rem = rem.slice(m[0].length);
		} else {
			throw (new Error('Failed to parse DN'));
		}
	}
	var cmps = parts.map(function (c) {
		c = c.trim();
		var eqPos = c.indexOf('=');
		while (eqPos > 0 && c.charAt(eqPos - 1) === '\\')
			eqPos = c.indexOf('=', eqPos + 1);
		if (eqPos === -1) {
			throw (new Error('Failed to parse DN'));
		}
		/*JSSTYLED*/
		var name = c.slice(0, eqPos).toLowerCase().replace(/\\=/g, '=');
		var value = c.slice(eqPos + 1);
		return ({ name: name, value: value });
	});
	return (new Identity({ components: cmps }));
};

Identity.fromArray = function (components) {
	assert.arrayOfObject(components, 'components');
	components.forEach(function (cmp) {
		assert.object(cmp, 'component');
		assert.string(cmp.name, 'component.name');
		if (!Buffer.isBuffer(cmp.value) &&
		    !(typeof (cmp.value) === 'string')) {
			throw (new Error('Invalid component value'));
		}
	});
	return (new Identity({ components: components }));
};

Identity.parseAsn1 = function (der, top) {
	var components = [];
	der.readSequence(top);
	var end = der.offset + der.length;
	while (der.offset < end) {
		der.readSequence(asn1.Ber.Constructor | asn1.Ber.Set);
		var after = der.offset + der.length;
		der.readSequence();
		var oid = der.readOID();
		var type = der.peek();
		var value;
		switch (type) {
		case asn1.Ber.PrintableString:
		case asn1.Ber.IA5String:
		case asn1.Ber.OctetString:
		case asn1.Ber.T61String:
			value = der.readString(type);
			break;
		case asn1.Ber.Utf8String:
			value = der.readString(type, true);
			value = value.toString('utf8');
			break;
		case asn1.Ber.CharacterString:
		case asn1.Ber.BMPString:
			value = der.readString(type, true);
			value = value.toString('utf16le');
			break;
		default:
			throw (new Error('Unknown asn1 type ' + type));
		}
		components.push({ oid: oid, asn1type: type, value: value });
		der._offset = after;
	}
	der._offset = end;
	return (new Identity({
		components: components
	}));
};

Identity.isIdentity = function (obj, ver) {
	return (utils.isCompatible(obj, Identity, ver));
};

/*
 * API versions for Identity:
 * [1,0] -- initial ver
 */
Identity.prototype._sshpkApiVersion = [1, 0];

Identity._oldVersionDetect = function (obj) {
	return ([1, 0]);
};


/***/ }),

/***/ 87022:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

var Key = __webpack_require__(36814);
var Fingerprint = __webpack_require__(13079);
var Signature = __webpack_require__(91394);
var PrivateKey = __webpack_require__(29602);
var Certificate = __webpack_require__(7406);
var Identity = __webpack_require__(70508);
var errs = __webpack_require__(27979);

module.exports = {
	/* top-level classes */
	Key: Key,
	parseKey: Key.parse,
	Fingerprint: Fingerprint,
	parseFingerprint: Fingerprint.parse,
	Signature: Signature,
	parseSignature: Signature.parse,
	PrivateKey: PrivateKey,
	parsePrivateKey: PrivateKey.parse,
	generatePrivateKey: PrivateKey.generate,
	Certificate: Certificate,
	parseCertificate: Certificate.parse,
	createSelfSignedCertificate: Certificate.createSelfSigned,
	createCertificate: Certificate.create,
	Identity: Identity,
	identityFromDN: Identity.parseDN,
	identityForHost: Identity.forHost,
	identityForUser: Identity.forUser,
	identityForEmail: Identity.forEmail,
	identityFromArray: Identity.fromArray,

	/* errors */
	FingerprintFormatError: errs.FingerprintFormatError,
	InvalidAlgorithmError: errs.InvalidAlgorithmError,
	KeyParseError: errs.KeyParseError,
	SignatureParseError: errs.SignatureParseError,
	KeyEncryptedError: errs.KeyEncryptedError,
	CertificateParseError: errs.CertificateParseError
};


/***/ }),

/***/ 36814:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2018 Joyent, Inc.

module.exports = Key;

var assert = __webpack_require__(66631);
var algs = __webpack_require__(66126);
var crypto = __webpack_require__(33373);
var Fingerprint = __webpack_require__(13079);
var Signature = __webpack_require__(91394);
var DiffieHellman = __webpack_require__(57602).DiffieHellman;
var errs = __webpack_require__(27979);
var utils = __webpack_require__(80575);
var PrivateKey = __webpack_require__(29602);
var edCompat;

try {
	edCompat = __webpack_require__(14694);
} catch (e) {
	/* Just continue through, and bail out if we try to use it. */
}

var InvalidAlgorithmError = errs.InvalidAlgorithmError;
var KeyParseError = errs.KeyParseError;

var formats = {};
formats['auto'] = __webpack_require__(8243);
formats['pem'] = __webpack_require__(14324);
formats['pkcs1'] = __webpack_require__(69367);
formats['pkcs8'] = __webpack_require__(4173);
formats['rfc4253'] = __webpack_require__(88688);
formats['ssh'] = __webpack_require__(68927);
formats['ssh-private'] = __webpack_require__(3923);
formats['openssh'] = formats['ssh-private'];
formats['dnssec'] = __webpack_require__(63561);
formats['putty'] = __webpack_require__(80974);
formats['ppk'] = formats['putty'];

function Key(opts) {
	assert.object(opts, 'options');
	assert.arrayOfObject(opts.parts, 'options.parts');
	assert.string(opts.type, 'options.type');
	assert.optionalString(opts.comment, 'options.comment');

	var algInfo = algs.info[opts.type];
	if (typeof (algInfo) !== 'object')
		throw (new InvalidAlgorithmError(opts.type));

	var partLookup = {};
	for (var i = 0; i < opts.parts.length; ++i) {
		var part = opts.parts[i];
		partLookup[part.name] = part;
	}

	this.type = opts.type;
	this.parts = opts.parts;
	this.part = partLookup;
	this.comment = undefined;
	this.source = opts.source;

	/* for speeding up hashing/fingerprint operations */
	this._rfc4253Cache = opts._rfc4253Cache;
	this._hashCache = {};

	var sz;
	this.curve = undefined;
	if (this.type === 'ecdsa') {
		var curve = this.part.curve.data.toString();
		this.curve = curve;
		sz = algs.curves[curve].size;
	} else if (this.type === 'ed25519' || this.type === 'curve25519') {
		sz = 256;
		this.curve = 'curve25519';
	} else {
		var szPart = this.part[algInfo.sizePart];
		sz = szPart.data.length;
		sz = sz * 8 - utils.countZeros(szPart.data);
	}
	this.size = sz;
}

Key.formats = formats;

Key.prototype.toBuffer = function (format, options) {
	if (format === undefined)
		format = 'ssh';
	assert.string(format, 'format');
	assert.object(formats[format], 'formats[format]');
	assert.optionalObject(options, 'options');

	if (format === 'rfc4253') {
		if (this._rfc4253Cache === undefined)
			this._rfc4253Cache = formats['rfc4253'].write(this);
		return (this._rfc4253Cache);
	}

	return (formats[format].write(this, options));
};

Key.prototype.toString = function (format, options) {
	return (this.toBuffer(format, options).toString());
};

Key.prototype.hash = function (algo, type) {
	assert.string(algo, 'algorithm');
	assert.optionalString(type, 'type');
	if (type === undefined)
		type = 'ssh';
	algo = algo.toLowerCase();
	if (algs.hashAlgs[algo] === undefined)
		throw (new InvalidAlgorithmError(algo));

	var cacheKey = algo + '||' + type;
	if (this._hashCache[cacheKey])
		return (this._hashCache[cacheKey]);

	var buf;
	if (type === 'ssh') {
		buf = this.toBuffer('rfc4253');
	} else if (type === 'spki') {
		buf = formats.pkcs8.pkcs8ToBuffer(this);
	} else {
		throw (new Error('Hash type ' + type + ' not supported'));
	}
	var hash = crypto.createHash(algo).update(buf).digest();
	this._hashCache[cacheKey] = hash;
	return (hash);
};

Key.prototype.fingerprint = function (algo, type) {
	if (algo === undefined)
		algo = 'sha256';
	if (type === undefined)
		type = 'ssh';
	assert.string(algo, 'algorithm');
	assert.string(type, 'type');
	var opts = {
		type: 'key',
		hash: this.hash(algo, type),
		algorithm: algo,
		hashType: type
	};
	return (new Fingerprint(opts));
};

Key.prototype.defaultHashAlgorithm = function () {
	var hashAlgo = 'sha1';
	if (this.type === 'rsa')
		hashAlgo = 'sha256';
	if (this.type === 'dsa' && this.size > 1024)
		hashAlgo = 'sha256';
	if (this.type === 'ed25519')
		hashAlgo = 'sha512';
	if (this.type === 'ecdsa') {
		if (this.size <= 256)
			hashAlgo = 'sha256';
		else if (this.size <= 384)
			hashAlgo = 'sha384';
		else
			hashAlgo = 'sha512';
	}
	return (hashAlgo);
};

Key.prototype.createVerify = function (hashAlgo) {
	if (hashAlgo === undefined)
		hashAlgo = this.defaultHashAlgorithm();
	assert.string(hashAlgo, 'hash algorithm');

	/* ED25519 is not supported by OpenSSL, use a javascript impl. */
	if (this.type === 'ed25519' && edCompat !== undefined)
		return (new edCompat.Verifier(this, hashAlgo));
	if (this.type === 'curve25519')
		throw (new Error('Curve25519 keys are not suitable for ' +
		    'signing or verification'));

	var v, nm, err;
	try {
		nm = hashAlgo.toUpperCase();
		v = crypto.createVerify(nm);
	} catch (e) {
		err = e;
	}
	if (v === undefined || (err instanceof Error &&
	    err.message.match(/Unknown message digest/))) {
		nm = 'RSA-';
		nm += hashAlgo.toUpperCase();
		v = crypto.createVerify(nm);
	}
	assert.ok(v, 'failed to create verifier');
	var oldVerify = v.verify.bind(v);
	var key = this.toBuffer('pkcs8');
	var curve = this.curve;
	var self = this;
	v.verify = function (signature, fmt) {
		if (Signature.isSignature(signature, [2, 0])) {
			if (signature.type !== self.type)
				return (false);
			if (signature.hashAlgorithm &&
			    signature.hashAlgorithm !== hashAlgo)
				return (false);
			if (signature.curve && self.type === 'ecdsa' &&
			    signature.curve !== curve)
				return (false);
			return (oldVerify(key, signature.toBuffer('asn1')));

		} else if (typeof (signature) === 'string' ||
		    Buffer.isBuffer(signature)) {
			return (oldVerify(key, signature, fmt));

		/*
		 * Avoid doing this on valid arguments, walking the prototype
		 * chain can be quite slow.
		 */
		} else if (Signature.isSignature(signature, [1, 0])) {
			throw (new Error('signature was created by too old ' +
			    'a version of sshpk and cannot be verified'));

		} else {
			throw (new TypeError('signature must be a string, ' +
			    'Buffer, or Signature object'));
		}
	};
	return (v);
};

Key.prototype.createDiffieHellman = function () {
	if (this.type === 'rsa')
		throw (new Error('RSA keys do not support Diffie-Hellman'));

	return (new DiffieHellman(this));
};
Key.prototype.createDH = Key.prototype.createDiffieHellman;

Key.parse = function (data, format, options) {
	if (typeof (data) !== 'string')
		assert.buffer(data, 'data');
	if (format === undefined)
		format = 'auto';
	assert.string(format, 'format');
	if (typeof (options) === 'string')
		options = { filename: options };
	assert.optionalObject(options, 'options');
	if (options === undefined)
		options = {};
	assert.optionalString(options.filename, 'options.filename');
	if (options.filename === undefined)
		options.filename = '(unnamed)';

	assert.object(formats[format], 'formats[format]');

	try {
		var k = formats[format].read(data, options);
		if (k instanceof PrivateKey)
			k = k.toPublic();
		if (!k.comment)
			k.comment = options.filename;
		return (k);
	} catch (e) {
		if (e.name === 'KeyEncryptedError')
			throw (e);
		throw (new KeyParseError(options.filename, format, e));
	}
};

Key.isKey = function (obj, ver) {
	return (utils.isCompatible(obj, Key, ver));
};

/*
 * API versions for Key:
 * [1,0] -- initial ver, may take Signature for createVerify or may not
 * [1,1] -- added pkcs1, pkcs8 formats
 * [1,2] -- added auto, ssh-private, openssh formats
 * [1,3] -- added defaultHashAlgorithm
 * [1,4] -- added ed support, createDH
 * [1,5] -- first explicitly tagged version
 * [1,6] -- changed ed25519 part names
 * [1,7] -- spki hash types
 */
Key.prototype._sshpkApiVersion = [1, 7];

Key._oldVersionDetect = function (obj) {
	assert.func(obj.toBuffer);
	assert.func(obj.fingerprint);
	if (obj.createDH)
		return ([1, 4]);
	if (obj.defaultHashAlgorithm)
		return ([1, 3]);
	if (obj.formats['auto'])
		return ([1, 2]);
	if (obj.formats['pkcs1'])
		return ([1, 1]);
	return ([1, 0]);
};


/***/ }),

/***/ 29602:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2017 Joyent, Inc.

module.exports = PrivateKey;

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var crypto = __webpack_require__(33373);
var Fingerprint = __webpack_require__(13079);
var Signature = __webpack_require__(91394);
var errs = __webpack_require__(27979);
var util = __webpack_require__(31669);
var utils = __webpack_require__(80575);
var dhe = __webpack_require__(57602);
var generateECDSA = dhe.generateECDSA;
var generateED25519 = dhe.generateED25519;
var edCompat = __webpack_require__(14694);
var nacl = __webpack_require__(68729);

var Key = __webpack_require__(36814);

var InvalidAlgorithmError = errs.InvalidAlgorithmError;
var KeyParseError = errs.KeyParseError;
var KeyEncryptedError = errs.KeyEncryptedError;

var formats = {};
formats['auto'] = __webpack_require__(8243);
formats['pem'] = __webpack_require__(14324);
formats['pkcs1'] = __webpack_require__(69367);
formats['pkcs8'] = __webpack_require__(4173);
formats['rfc4253'] = __webpack_require__(88688);
formats['ssh-private'] = __webpack_require__(3923);
formats['openssh'] = formats['ssh-private'];
formats['ssh'] = formats['ssh-private'];
formats['dnssec'] = __webpack_require__(63561);

function PrivateKey(opts) {
	assert.object(opts, 'options');
	Key.call(this, opts);

	this._pubCache = undefined;
}
util.inherits(PrivateKey, Key);

PrivateKey.formats = formats;

PrivateKey.prototype.toBuffer = function (format, options) {
	if (format === undefined)
		format = 'pkcs1';
	assert.string(format, 'format');
	assert.object(formats[format], 'formats[format]');
	assert.optionalObject(options, 'options');

	return (formats[format].write(this, options));
};

PrivateKey.prototype.hash = function (algo, type) {
	return (this.toPublic().hash(algo, type));
};

PrivateKey.prototype.fingerprint = function (algo, type) {
	return (this.toPublic().fingerprint(algo, type));
};

PrivateKey.prototype.toPublic = function () {
	if (this._pubCache)
		return (this._pubCache);

	var algInfo = algs.info[this.type];
	var pubParts = [];
	for (var i = 0; i < algInfo.parts.length; ++i) {
		var p = algInfo.parts[i];
		pubParts.push(this.part[p]);
	}

	this._pubCache = new Key({
		type: this.type,
		source: this,
		parts: pubParts
	});
	if (this.comment)
		this._pubCache.comment = this.comment;
	return (this._pubCache);
};

PrivateKey.prototype.derive = function (newType) {
	assert.string(newType, 'type');
	var priv, pub, pair;

	if (this.type === 'ed25519' && newType === 'curve25519') {
		priv = this.part.k.data;
		if (priv[0] === 0x00)
			priv = priv.slice(1);

		pair = nacl.box.keyPair.fromSecretKey(new Uint8Array(priv));
		pub = Buffer.from(pair.publicKey);

		return (new PrivateKey({
			type: 'curve25519',
			parts: [
				{ name: 'A', data: utils.mpNormalize(pub) },
				{ name: 'k', data: utils.mpNormalize(priv) }
			]
		}));
	} else if (this.type === 'curve25519' && newType === 'ed25519') {
		priv = this.part.k.data;
		if (priv[0] === 0x00)
			priv = priv.slice(1);

		pair = nacl.sign.keyPair.fromSeed(new Uint8Array(priv));
		pub = Buffer.from(pair.publicKey);

		return (new PrivateKey({
			type: 'ed25519',
			parts: [
				{ name: 'A', data: utils.mpNormalize(pub) },
				{ name: 'k', data: utils.mpNormalize(priv) }
			]
		}));
	}
	throw (new Error('Key derivation not supported from ' + this.type +
	    ' to ' + newType));
};

PrivateKey.prototype.createVerify = function (hashAlgo) {
	return (this.toPublic().createVerify(hashAlgo));
};

PrivateKey.prototype.createSign = function (hashAlgo) {
	if (hashAlgo === undefined)
		hashAlgo = this.defaultHashAlgorithm();
	assert.string(hashAlgo, 'hash algorithm');

	/* ED25519 is not supported by OpenSSL, use a javascript impl. */
	if (this.type === 'ed25519' && edCompat !== undefined)
		return (new edCompat.Signer(this, hashAlgo));
	if (this.type === 'curve25519')
		throw (new Error('Curve25519 keys are not suitable for ' +
		    'signing or verification'));

	var v, nm, err;
	try {
		nm = hashAlgo.toUpperCase();
		v = crypto.createSign(nm);
	} catch (e) {
		err = e;
	}
	if (v === undefined || (err instanceof Error &&
	    err.message.match(/Unknown message digest/))) {
		nm = 'RSA-';
		nm += hashAlgo.toUpperCase();
		v = crypto.createSign(nm);
	}
	assert.ok(v, 'failed to create verifier');
	var oldSign = v.sign.bind(v);
	var key = this.toBuffer('pkcs1');
	var type = this.type;
	var curve = this.curve;
	v.sign = function () {
		var sig = oldSign(key);
		if (typeof (sig) === 'string')
			sig = Buffer.from(sig, 'binary');
		sig = Signature.parse(sig, type, 'asn1');
		sig.hashAlgorithm = hashAlgo;
		sig.curve = curve;
		return (sig);
	};
	return (v);
};

PrivateKey.parse = function (data, format, options) {
	if (typeof (data) !== 'string')
		assert.buffer(data, 'data');
	if (format === undefined)
		format = 'auto';
	assert.string(format, 'format');
	if (typeof (options) === 'string')
		options = { filename: options };
	assert.optionalObject(options, 'options');
	if (options === undefined)
		options = {};
	assert.optionalString(options.filename, 'options.filename');
	if (options.filename === undefined)
		options.filename = '(unnamed)';

	assert.object(formats[format], 'formats[format]');

	try {
		var k = formats[format].read(data, options);
		assert.ok(k instanceof PrivateKey, 'key is not a private key');
		if (!k.comment)
			k.comment = options.filename;
		return (k);
	} catch (e) {
		if (e.name === 'KeyEncryptedError')
			throw (e);
		throw (new KeyParseError(options.filename, format, e));
	}
};

PrivateKey.isPrivateKey = function (obj, ver) {
	return (utils.isCompatible(obj, PrivateKey, ver));
};

PrivateKey.generate = function (type, options) {
	if (options === undefined)
		options = {};
	assert.object(options, 'options');

	switch (type) {
	case 'ecdsa':
		if (options.curve === undefined)
			options.curve = 'nistp256';
		assert.string(options.curve, 'options.curve');
		return (generateECDSA(options.curve));
	case 'ed25519':
		return (generateED25519());
	default:
		throw (new Error('Key generation not supported with key ' +
		    'type "' + type + '"'));
	}
};

/*
 * API versions for PrivateKey:
 * [1,0] -- initial ver
 * [1,1] -- added auto, pkcs[18], openssh/ssh-private formats
 * [1,2] -- added defaultHashAlgorithm
 * [1,3] -- added derive, ed, createDH
 * [1,4] -- first tagged version
 * [1,5] -- changed ed25519 part names and format
 * [1,6] -- type arguments for hash() and fingerprint()
 */
PrivateKey.prototype._sshpkApiVersion = [1, 6];

PrivateKey._oldVersionDetect = function (obj) {
	assert.func(obj.toPublic);
	assert.func(obj.createSign);
	if (obj.derive)
		return ([1, 3]);
	if (obj.defaultHashAlgorithm)
		return ([1, 2]);
	if (obj.formats['auto'])
		return ([1, 1]);
	return ([1, 0]);
};


/***/ }),

/***/ 91394:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = Signature;

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var algs = __webpack_require__(66126);
var crypto = __webpack_require__(33373);
var errs = __webpack_require__(27979);
var utils = __webpack_require__(80575);
var asn1 = __webpack_require__(80970);
var SSHBuffer = __webpack_require__(25621);

var InvalidAlgorithmError = errs.InvalidAlgorithmError;
var SignatureParseError = errs.SignatureParseError;

function Signature(opts) {
	assert.object(opts, 'options');
	assert.arrayOfObject(opts.parts, 'options.parts');
	assert.string(opts.type, 'options.type');

	var partLookup = {};
	for (var i = 0; i < opts.parts.length; ++i) {
		var part = opts.parts[i];
		partLookup[part.name] = part;
	}

	this.type = opts.type;
	this.hashAlgorithm = opts.hashAlgo;
	this.curve = opts.curve;
	this.parts = opts.parts;
	this.part = partLookup;
}

Signature.prototype.toBuffer = function (format) {
	if (format === undefined)
		format = 'asn1';
	assert.string(format, 'format');

	var buf;
	var stype = 'ssh-' + this.type;

	switch (this.type) {
	case 'rsa':
		switch (this.hashAlgorithm) {
		case 'sha256':
			stype = 'rsa-sha2-256';
			break;
		case 'sha512':
			stype = 'rsa-sha2-512';
			break;
		case 'sha1':
		case undefined:
			break;
		default:
			throw (new Error('SSH signature ' +
			    'format does not support hash ' +
			    'algorithm ' + this.hashAlgorithm));
		}
		if (format === 'ssh') {
			buf = new SSHBuffer({});
			buf.writeString(stype);
			buf.writePart(this.part.sig);
			return (buf.toBuffer());
		} else {
			return (this.part.sig.data);
		}
		break;

	case 'ed25519':
		if (format === 'ssh') {
			buf = new SSHBuffer({});
			buf.writeString(stype);
			buf.writePart(this.part.sig);
			return (buf.toBuffer());
		} else {
			return (this.part.sig.data);
		}
		break;

	case 'dsa':
	case 'ecdsa':
		var r, s;
		if (format === 'asn1') {
			var der = new asn1.BerWriter();
			der.startSequence();
			r = utils.mpNormalize(this.part.r.data);
			s = utils.mpNormalize(this.part.s.data);
			der.writeBuffer(r, asn1.Ber.Integer);
			der.writeBuffer(s, asn1.Ber.Integer);
			der.endSequence();
			return (der.buffer);
		} else if (format === 'ssh' && this.type === 'dsa') {
			buf = new SSHBuffer({});
			buf.writeString('ssh-dss');
			r = this.part.r.data;
			if (r.length > 20 && r[0] === 0x00)
				r = r.slice(1);
			s = this.part.s.data;
			if (s.length > 20 && s[0] === 0x00)
				s = s.slice(1);
			if ((this.hashAlgorithm &&
			    this.hashAlgorithm !== 'sha1') ||
			    r.length + s.length !== 40) {
				throw (new Error('OpenSSH only supports ' +
				    'DSA signatures with SHA1 hash'));
			}
			buf.writeBuffer(Buffer.concat([r, s]));
			return (buf.toBuffer());
		} else if (format === 'ssh' && this.type === 'ecdsa') {
			var inner = new SSHBuffer({});
			r = this.part.r.data;
			inner.writeBuffer(r);
			inner.writePart(this.part.s);

			buf = new SSHBuffer({});
			/* XXX: find a more proper way to do this? */
			var curve;
			if (r[0] === 0x00)
				r = r.slice(1);
			var sz = r.length * 8;
			if (sz === 256)
				curve = 'nistp256';
			else if (sz === 384)
				curve = 'nistp384';
			else if (sz === 528)
				curve = 'nistp521';
			buf.writeString('ecdsa-sha2-' + curve);
			buf.writeBuffer(inner.toBuffer());
			return (buf.toBuffer());
		}
		throw (new Error('Invalid signature format'));
	default:
		throw (new Error('Invalid signature data'));
	}
};

Signature.prototype.toString = function (format) {
	assert.optionalString(format, 'format');
	return (this.toBuffer(format).toString('base64'));
};

Signature.parse = function (data, type, format) {
	if (typeof (data) === 'string')
		data = Buffer.from(data, 'base64');
	assert.buffer(data, 'data');
	assert.string(format, 'format');
	assert.string(type, 'type');

	var opts = {};
	opts.type = type.toLowerCase();
	opts.parts = [];

	try {
		assert.ok(data.length > 0, 'signature must not be empty');
		switch (opts.type) {
		case 'rsa':
			return (parseOneNum(data, type, format, opts));
		case 'ed25519':
			return (parseOneNum(data, type, format, opts));

		case 'dsa':
		case 'ecdsa':
			if (format === 'asn1')
				return (parseDSAasn1(data, type, format, opts));
			else if (opts.type === 'dsa')
				return (parseDSA(data, type, format, opts));
			else
				return (parseECDSA(data, type, format, opts));

		default:
			throw (new InvalidAlgorithmError(type));
		}

	} catch (e) {
		if (e instanceof InvalidAlgorithmError)
			throw (e);
		throw (new SignatureParseError(type, format, e));
	}
};

function parseOneNum(data, type, format, opts) {
	if (format === 'ssh') {
		try {
			var buf = new SSHBuffer({buffer: data});
			var head = buf.readString();
		} catch (e) {
			/* fall through */
		}
		if (buf !== undefined) {
			var msg = 'SSH signature does not match expected ' +
			    'type (expected ' + type + ', got ' + head + ')';
			switch (head) {
			case 'ssh-rsa':
				assert.strictEqual(type, 'rsa', msg);
				opts.hashAlgo = 'sha1';
				break;
			case 'rsa-sha2-256':
				assert.strictEqual(type, 'rsa', msg);
				opts.hashAlgo = 'sha256';
				break;
			case 'rsa-sha2-512':
				assert.strictEqual(type, 'rsa', msg);
				opts.hashAlgo = 'sha512';
				break;
			case 'ssh-ed25519':
				assert.strictEqual(type, 'ed25519', msg);
				opts.hashAlgo = 'sha512';
				break;
			default:
				throw (new Error('Unknown SSH signature ' +
				    'type: ' + head));
			}
			var sig = buf.readPart();
			assert.ok(buf.atEnd(), 'extra trailing bytes');
			sig.name = 'sig';
			opts.parts.push(sig);
			return (new Signature(opts));
		}
	}
	opts.parts.push({name: 'sig', data: data});
	return (new Signature(opts));
}

function parseDSAasn1(data, type, format, opts) {
	var der = new asn1.BerReader(data);
	der.readSequence();
	var r = der.readString(asn1.Ber.Integer, true);
	var s = der.readString(asn1.Ber.Integer, true);

	opts.parts.push({name: 'r', data: utils.mpNormalize(r)});
	opts.parts.push({name: 's', data: utils.mpNormalize(s)});

	return (new Signature(opts));
}

function parseDSA(data, type, format, opts) {
	if (data.length != 40) {
		var buf = new SSHBuffer({buffer: data});
		var d = buf.readBuffer();
		if (d.toString('ascii') === 'ssh-dss')
			d = buf.readBuffer();
		assert.ok(buf.atEnd(), 'extra trailing bytes');
		assert.strictEqual(d.length, 40, 'invalid inner length');
		data = d;
	}
	opts.parts.push({name: 'r', data: data.slice(0, 20)});
	opts.parts.push({name: 's', data: data.slice(20, 40)});
	return (new Signature(opts));
}

function parseECDSA(data, type, format, opts) {
	var buf = new SSHBuffer({buffer: data});

	var r, s;
	var inner = buf.readBuffer();
	var stype = inner.toString('ascii');
	if (stype.slice(0, 6) === 'ecdsa-') {
		var parts = stype.split('-');
		assert.strictEqual(parts[0], 'ecdsa');
		assert.strictEqual(parts[1], 'sha2');
		opts.curve = parts[2];
		switch (opts.curve) {
		case 'nistp256':
			opts.hashAlgo = 'sha256';
			break;
		case 'nistp384':
			opts.hashAlgo = 'sha384';
			break;
		case 'nistp521':
			opts.hashAlgo = 'sha512';
			break;
		default:
			throw (new Error('Unsupported ECDSA curve: ' +
			    opts.curve));
		}
		inner = buf.readBuffer();
		assert.ok(buf.atEnd(), 'extra trailing bytes on outer');
		buf = new SSHBuffer({buffer: inner});
		r = buf.readPart();
	} else {
		r = {data: inner};
	}

	s = buf.readPart();
	assert.ok(buf.atEnd(), 'extra trailing bytes');

	r.name = 'r';
	s.name = 's';

	opts.parts.push(r);
	opts.parts.push(s);
	return (new Signature(opts));
}

Signature.isSignature = function (obj, ver) {
	return (utils.isCompatible(obj, Signature, ver));
};

/*
 * API versions for Signature:
 * [1,0] -- initial ver
 * [2,0] -- support for rsa in full ssh format, compat with sshpk-agent
 *          hashAlgorithm property
 * [2,1] -- first tagged version
 */
Signature.prototype._sshpkApiVersion = [2, 1];

Signature._oldVersionDetect = function (obj) {
	assert.func(obj.toBuffer);
	if (obj.hasOwnProperty('hashAlgorithm'))
		return ([2, 0]);
	return ([1, 0]);
};


/***/ }),

/***/ 25621:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = SSHBuffer;

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;

function SSHBuffer(opts) {
	assert.object(opts, 'options');
	if (opts.buffer !== undefined)
		assert.buffer(opts.buffer, 'options.buffer');

	this._size = opts.buffer ? opts.buffer.length : 1024;
	this._buffer = opts.buffer || Buffer.alloc(this._size);
	this._offset = 0;
}

SSHBuffer.prototype.toBuffer = function () {
	return (this._buffer.slice(0, this._offset));
};

SSHBuffer.prototype.atEnd = function () {
	return (this._offset >= this._buffer.length);
};

SSHBuffer.prototype.remainder = function () {
	return (this._buffer.slice(this._offset));
};

SSHBuffer.prototype.skip = function (n) {
	this._offset += n;
};

SSHBuffer.prototype.expand = function () {
	this._size *= 2;
	var buf = Buffer.alloc(this._size);
	this._buffer.copy(buf, 0);
	this._buffer = buf;
};

SSHBuffer.prototype.readPart = function () {
	return ({data: this.readBuffer()});
};

SSHBuffer.prototype.readBuffer = function () {
	var len = this._buffer.readUInt32BE(this._offset);
	this._offset += 4;
	assert.ok(this._offset + len <= this._buffer.length,
	    'length out of bounds at +0x' + this._offset.toString(16) +
	    ' (data truncated?)');
	var buf = this._buffer.slice(this._offset, this._offset + len);
	this._offset += len;
	return (buf);
};

SSHBuffer.prototype.readString = function () {
	return (this.readBuffer().toString());
};

SSHBuffer.prototype.readCString = function () {
	var offset = this._offset;
	while (offset < this._buffer.length &&
	    this._buffer[offset] !== 0x00)
		offset++;
	assert.ok(offset < this._buffer.length, 'c string does not terminate');
	var str = this._buffer.slice(this._offset, offset).toString();
	this._offset = offset + 1;
	return (str);
};

SSHBuffer.prototype.readInt = function () {
	var v = this._buffer.readUInt32BE(this._offset);
	this._offset += 4;
	return (v);
};

SSHBuffer.prototype.readInt64 = function () {
	assert.ok(this._offset + 8 < this._buffer.length,
	    'buffer not long enough to read Int64');
	var v = this._buffer.slice(this._offset, this._offset + 8);
	this._offset += 8;
	return (v);
};

SSHBuffer.prototype.readChar = function () {
	var v = this._buffer[this._offset++];
	return (v);
};

SSHBuffer.prototype.writeBuffer = function (buf) {
	while (this._offset + 4 + buf.length > this._size)
		this.expand();
	this._buffer.writeUInt32BE(buf.length, this._offset);
	this._offset += 4;
	buf.copy(this._buffer, this._offset);
	this._offset += buf.length;
};

SSHBuffer.prototype.writeString = function (str) {
	this.writeBuffer(Buffer.from(str, 'utf8'));
};

SSHBuffer.prototype.writeCString = function (str) {
	while (this._offset + 1 + str.length > this._size)
		this.expand();
	this._buffer.write(str, this._offset);
	this._offset += str.length;
	this._buffer[this._offset++] = 0;
};

SSHBuffer.prototype.writeInt = function (v) {
	while (this._offset + 4 > this._size)
		this.expand();
	this._buffer.writeUInt32BE(v, this._offset);
	this._offset += 4;
};

SSHBuffer.prototype.writeInt64 = function (v) {
	assert.buffer(v, 'value');
	if (v.length > 8) {
		var lead = v.slice(0, v.length - 8);
		for (var i = 0; i < lead.length; ++i) {
			assert.strictEqual(lead[i], 0,
			    'must fit in 64 bits of precision');
		}
		v = v.slice(v.length - 8, v.length);
	}
	while (this._offset + 8 > this._size)
		this.expand();
	v.copy(this._buffer, this._offset);
	this._offset += 8;
};

SSHBuffer.prototype.writeChar = function (v) {
	while (this._offset + 1 > this._size)
		this.expand();
	this._buffer[this._offset++] = v;
};

SSHBuffer.prototype.writePart = function (p) {
	this.writeBuffer(p.data);
};

SSHBuffer.prototype.write = function (buf) {
	while (this._offset + buf.length > this._size)
		this.expand();
	buf.copy(this._buffer, this._offset);
	this._offset += buf.length;
};


/***/ }),

/***/ 80575:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Copyright 2015 Joyent, Inc.

module.exports = {
	bufferSplit: bufferSplit,
	addRSAMissing: addRSAMissing,
	calculateDSAPublic: calculateDSAPublic,
	calculateED25519Public: calculateED25519Public,
	calculateX25519Public: calculateX25519Public,
	mpNormalize: mpNormalize,
	mpDenormalize: mpDenormalize,
	ecNormalize: ecNormalize,
	countZeros: countZeros,
	assertCompatible: assertCompatible,
	isCompatible: isCompatible,
	opensslKeyDeriv: opensslKeyDeriv,
	opensshCipherInfo: opensshCipherInfo,
	publicFromPrivateECDSA: publicFromPrivateECDSA,
	zeroPadToLength: zeroPadToLength,
	writeBitString: writeBitString,
	readBitString: readBitString,
	pbkdf2: pbkdf2
};

var assert = __webpack_require__(66631);
var Buffer = __webpack_require__(15118).Buffer;
var PrivateKey = __webpack_require__(29602);
var Key = __webpack_require__(36814);
var crypto = __webpack_require__(33373);
var algs = __webpack_require__(66126);
var asn1 = __webpack_require__(80970);

var ec = __webpack_require__(3943);
var jsbn = __webpack_require__(85587).BigInteger;
var nacl = __webpack_require__(68729);

var MAX_CLASS_DEPTH = 3;

function isCompatible(obj, klass, needVer) {
	if (obj === null || typeof (obj) !== 'object')
		return (false);
	if (needVer === undefined)
		needVer = klass.prototype._sshpkApiVersion;
	if (obj instanceof klass &&
	    klass.prototype._sshpkApiVersion[0] == needVer[0])
		return (true);
	var proto = Object.getPrototypeOf(obj);
	var depth = 0;
	while (proto.constructor.name !== klass.name) {
		proto = Object.getPrototypeOf(proto);
		if (!proto || ++depth > MAX_CLASS_DEPTH)
			return (false);
	}
	if (proto.constructor.name !== klass.name)
		return (false);
	var ver = proto._sshpkApiVersion;
	if (ver === undefined)
		ver = klass._oldVersionDetect(obj);
	if (ver[0] != needVer[0] || ver[1] < needVer[1])
		return (false);
	return (true);
}

function assertCompatible(obj, klass, needVer, name) {
	if (name === undefined)
		name = 'object';
	assert.ok(obj, name + ' must not be null');
	assert.object(obj, name + ' must be an object');
	if (needVer === undefined)
		needVer = klass.prototype._sshpkApiVersion;
	if (obj instanceof klass &&
	    klass.prototype._sshpkApiVersion[0] == needVer[0])
		return;
	var proto = Object.getPrototypeOf(obj);
	var depth = 0;
	while (proto.constructor.name !== klass.name) {
		proto = Object.getPrototypeOf(proto);
		assert.ok(proto && ++depth <= MAX_CLASS_DEPTH,
		    name + ' must be a ' + klass.name + ' instance');
	}
	assert.strictEqual(proto.constructor.name, klass.name,
	    name + ' must be a ' + klass.name + ' instance');
	var ver = proto._sshpkApiVersion;
	if (ver === undefined)
		ver = klass._oldVersionDetect(obj);
	assert.ok(ver[0] == needVer[0] && ver[1] >= needVer[1],
	    name + ' must be compatible with ' + klass.name + ' klass ' +
	    'version ' + needVer[0] + '.' + needVer[1]);
}

var CIPHER_LEN = {
	'des-ede3-cbc': { key: 24, iv: 8 },
	'aes-128-cbc': { key: 16, iv: 16 },
	'aes-256-cbc': { key: 32, iv: 16 }
};
var PKCS5_SALT_LEN = 8;

function opensslKeyDeriv(cipher, salt, passphrase, count) {
	assert.buffer(salt, 'salt');
	assert.buffer(passphrase, 'passphrase');
	assert.number(count, 'iteration count');

	var clen = CIPHER_LEN[cipher];
	assert.object(clen, 'supported cipher');

	salt = salt.slice(0, PKCS5_SALT_LEN);

	var D, D_prev, bufs;
	var material = Buffer.alloc(0);
	while (material.length < clen.key + clen.iv) {
		bufs = [];
		if (D_prev)
			bufs.push(D_prev);
		bufs.push(passphrase);
		bufs.push(salt);
		D = Buffer.concat(bufs);
		for (var j = 0; j < count; ++j)
			D = crypto.createHash('md5').update(D).digest();
		material = Buffer.concat([material, D]);
		D_prev = D;
	}

	return ({
	    key: material.slice(0, clen.key),
	    iv: material.slice(clen.key, clen.key + clen.iv)
	});
}

/* See: RFC2898 */
function pbkdf2(hashAlg, salt, iterations, size, passphrase) {
	var hkey = Buffer.alloc(salt.length + 4);
	salt.copy(hkey);

	var gen = 0, ts = [];
	var i = 1;
	while (gen < size) {
		var t = T(i++);
		gen += t.length;
		ts.push(t);
	}
	return (Buffer.concat(ts).slice(0, size));

	function T(I) {
		hkey.writeUInt32BE(I, hkey.length - 4);

		var hmac = crypto.createHmac(hashAlg, passphrase);
		hmac.update(hkey);

		var Ti = hmac.digest();
		var Uc = Ti;
		var c = 1;
		while (c++ < iterations) {
			hmac = crypto.createHmac(hashAlg, passphrase);
			hmac.update(Uc);
			Uc = hmac.digest();
			for (var x = 0; x < Ti.length; ++x)
				Ti[x] ^= Uc[x];
		}
		return (Ti);
	}
}

/* Count leading zero bits on a buffer */
function countZeros(buf) {
	var o = 0, obit = 8;
	while (o < buf.length) {
		var mask = (1 << obit);
		if ((buf[o] & mask) === mask)
			break;
		obit--;
		if (obit < 0) {
			o++;
			obit = 8;
		}
	}
	return (o*8 + (8 - obit) - 1);
}

function bufferSplit(buf, chr) {
	assert.buffer(buf);
	assert.string(chr);

	var parts = [];
	var lastPart = 0;
	var matches = 0;
	for (var i = 0; i < buf.length; ++i) {
		if (buf[i] === chr.charCodeAt(matches))
			++matches;
		else if (buf[i] === chr.charCodeAt(0))
			matches = 1;
		else
			matches = 0;

		if (matches >= chr.length) {
			var newPart = i + 1;
			parts.push(buf.slice(lastPart, newPart - matches));
			lastPart = newPart;
			matches = 0;
		}
	}
	if (lastPart <= buf.length)
		parts.push(buf.slice(lastPart, buf.length));

	return (parts);
}

function ecNormalize(buf, addZero) {
	assert.buffer(buf);
	if (buf[0] === 0x00 && buf[1] === 0x04) {
		if (addZero)
			return (buf);
		return (buf.slice(1));
	} else if (buf[0] === 0x04) {
		if (!addZero)
			return (buf);
	} else {
		while (buf[0] === 0x00)
			buf = buf.slice(1);
		if (buf[0] === 0x02 || buf[0] === 0x03)
			throw (new Error('Compressed elliptic curve points ' +
			    'are not supported'));
		if (buf[0] !== 0x04)
			throw (new Error('Not a valid elliptic curve point'));
		if (!addZero)
			return (buf);
	}
	var b = Buffer.alloc(buf.length + 1);
	b[0] = 0x0;
	buf.copy(b, 1);
	return (b);
}

function readBitString(der, tag) {
	if (tag === undefined)
		tag = asn1.Ber.BitString;
	var buf = der.readString(tag, true);
	assert.strictEqual(buf[0], 0x00, 'bit strings with unused bits are ' +
	    'not supported (0x' + buf[0].toString(16) + ')');
	return (buf.slice(1));
}

function writeBitString(der, buf, tag) {
	if (tag === undefined)
		tag = asn1.Ber.BitString;
	var b = Buffer.alloc(buf.length + 1);
	b[0] = 0x00;
	buf.copy(b, 1);
	der.writeBuffer(b, tag);
}

function mpNormalize(buf) {
	assert.buffer(buf);
	while (buf.length > 1 && buf[0] === 0x00 && (buf[1] & 0x80) === 0x00)
		buf = buf.slice(1);
	if ((buf[0] & 0x80) === 0x80) {
		var b = Buffer.alloc(buf.length + 1);
		b[0] = 0x00;
		buf.copy(b, 1);
		buf = b;
	}
	return (buf);
}

function mpDenormalize(buf) {
	assert.buffer(buf);
	while (buf.length > 1 && buf[0] === 0x00)
		buf = buf.slice(1);
	return (buf);
}

function zeroPadToLength(buf, len) {
	assert.buffer(buf);
	assert.number(len);
	while (buf.length > len) {
		assert.equal(buf[0], 0x00);
		buf = buf.slice(1);
	}
	while (buf.length < len) {
		var b = Buffer.alloc(buf.length + 1);
		b[0] = 0x00;
		buf.copy(b, 1);
		buf = b;
	}
	return (buf);
}

function bigintToMpBuf(bigint) {
	var buf = Buffer.from(bigint.toByteArray());
	buf = mpNormalize(buf);
	return (buf);
}

function calculateDSAPublic(g, p, x) {
	assert.buffer(g);
	assert.buffer(p);
	assert.buffer(x);
	g = new jsbn(g);
	p = new jsbn(p);
	x = new jsbn(x);
	var y = g.modPow(x, p);
	var ybuf = bigintToMpBuf(y);
	return (ybuf);
}

function calculateED25519Public(k) {
	assert.buffer(k);

	var kp = nacl.sign.keyPair.fromSeed(new Uint8Array(k));
	return (Buffer.from(kp.publicKey));
}

function calculateX25519Public(k) {
	assert.buffer(k);

	var kp = nacl.box.keyPair.fromSeed(new Uint8Array(k));
	return (Buffer.from(kp.publicKey));
}

function addRSAMissing(key) {
	assert.object(key);
	assertCompatible(key, PrivateKey, [1, 1]);

	var d = new jsbn(key.part.d.data);
	var buf;

	if (!key.part.dmodp) {
		var p = new jsbn(key.part.p.data);
		var dmodp = d.mod(p.subtract(1));

		buf = bigintToMpBuf(dmodp);
		key.part.dmodp = {name: 'dmodp', data: buf};
		key.parts.push(key.part.dmodp);
	}
	if (!key.part.dmodq) {
		var q = new jsbn(key.part.q.data);
		var dmodq = d.mod(q.subtract(1));

		buf = bigintToMpBuf(dmodq);
		key.part.dmodq = {name: 'dmodq', data: buf};
		key.parts.push(key.part.dmodq);
	}
}

function publicFromPrivateECDSA(curveName, priv) {
	assert.string(curveName, 'curveName');
	assert.buffer(priv);
	var params = algs.curves[curveName];
	var p = new jsbn(params.p);
	var a = new jsbn(params.a);
	var b = new jsbn(params.b);
	var curve = new ec.ECCurveFp(p, a, b);
	var G = curve.decodePointHex(params.G.toString('hex'));

	var d = new jsbn(mpNormalize(priv));
	var pub = G.multiply(d);
	pub = Buffer.from(curve.encodePointHex(pub), 'hex');

	var parts = [];
	parts.push({name: 'curve', data: Buffer.from(curveName)});
	parts.push({name: 'Q', data: pub});

	var key = new Key({type: 'ecdsa', curve: curve, parts: parts});
	return (key);
}

function opensshCipherInfo(cipher) {
	var inf = {};
	switch (cipher) {
	case '3des-cbc':
		inf.keySize = 24;
		inf.blockSize = 8;
		inf.opensslName = 'des-ede3-cbc';
		break;
	case 'blowfish-cbc':
		inf.keySize = 16;
		inf.blockSize = 8;
		inf.opensslName = 'bf-cbc';
		break;
	case 'aes128-cbc':
	case 'aes128-ctr':
	case 'aes128-gcm@openssh.com':
		inf.keySize = 16;
		inf.blockSize = 16;
		inf.opensslName = 'aes-128-' + cipher.slice(7, 10);
		break;
	case 'aes192-cbc':
	case 'aes192-ctr':
	case 'aes192-gcm@openssh.com':
		inf.keySize = 24;
		inf.blockSize = 16;
		inf.opensslName = 'aes-192-' + cipher.slice(7, 10);
		break;
	case 'aes256-cbc':
	case 'aes256-ctr':
	case 'aes256-gcm@openssh.com':
		inf.keySize = 32;
		inf.blockSize = 16;
		inf.opensslName = 'aes-256-' + cipher.slice(7, 10);
		break;
	default:
		throw (new Error(
		    'Unsupported openssl cipher "' + cipher + '"'));
	}
	return (inf);
}


/***/ }),

/***/ 91860:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Component = __webpack_require__(33314)

class Client {
  constructor (options) {
    const backend = options.backend
    if (!backend) throw new Error('expected "backend"')

    const root = new Component({ splits: [], backend, getNames: options.getNames })
    if (options.spec) root._addSpec(options.spec)
    return root
  }
}

module.exports = Client


/***/ }),

/***/ 96789:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

const Client = __webpack_require__(91860)
const Component = __webpack_require__(33314)

module.exports = {
  Client,
  Component
}


/***/ }),

/***/ 33314:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* eslint-disable no-sync */

/**
 * @file Convert a OpenAPI/Swagger specification into a API client.
 *
 * Represent Swagger a Path Item Object [1] with chains of objects:
 *
 *   /api/v1/namespaces -> api.v1.namespaces
 *
 * Associate operations on a Path Item Object with functions:
 *
 *   GET /api/v1/namespaces -> api.v1.namespaces.get()
 *
 * Represent Path Templating [2] with function calls:
 *
 *   /api/v1/namespaces/{namespace}/pods -> api.v1.namespaces(namespace).pods
 *
 * Iterate over a Paths Object [3] to generate whole API client.
 *
 * [1]: https://swagger.io/specification/#pathItemObject
 * [2]: https://swagger.io/specification/#pathTemplating
 * [3]: https://swagger.io/specification/#pathsObject
 */

const merge = __webpack_require__(56323)
const isPlainObject = __webpack_require__(69257)

class Endpoint {
  /**
   * Internal representation of a Swagger Path Item Object.
   * @param {object} options - Options object
   * @param {string} options.name - Path Item Object name
   * @param {array} options.splits - Pathname pieces split in '/'
   * @param {object} options.pathItem - Swagger Path Item Object.
   */
  constructor (options) {
    this.name = options.name
    this.splits = options.splits
    this.pathItem = options.pathItem
  }
}

class Component {
  /**
   * Represents a single path split, child Components, and potentially a Path
   * Item Object.
   * @param {object} options - Options object
   * @param {object} options.http - Request object
   * @param {array} options.splits - Absolute pathname (split on '/')
   * @param {string} options.parameters - Path Template values for parents
   * @param {string} options.template - Optional Path Template (e.g., {name})
   */
  constructor (options) {
    options = Object.assign({ splits: [], parameters: [] }, options)
    let component

    //
    // Support Path Templating: use a function to create a a Component-like
    // object if required. Otherwise use a vanilla object (that isn't callable).
    //
    if (options.templated) {
      component = name => {
        const splits = component.splits.concat([name])
        //
        // Assume that we'll never have a path with adjacent templates.
        // E.g., assume `/foo/{name}/{property}` cannot exist.
        //
        const namedComponent = new this.constructor({
          backend: component.backend,
          getNames: options.getNames,
          splits: splits,
          parameters: options.parameters.concat([name])
        })
        component.templatedEndpoints.forEach(child => {
          namedComponent._addEndpoint(child)
        })
        return namedComponent
      }
      component.templatedEndpoints = []

      //
      // Attach methods
      //
      Object.setPrototypeOf(component, this.constructor.prototype)
    } else {
      component = this
      component.templatedEndpoints = null
    }

    component.parameters = options.parameters
    component.templated = options.templated
    component.splits = options.splits.slice()
    component.backend = options.backend
    component.getNames = options.getNames || (split => [split])
    component.children = []
    return component
  }

  /**
   * Get the path.
   * @returns {string} path with '/' as the separator.
   */
  getPath () {
    return `/${this.splits.join('/')}`
  }

  /**
   * Return an object of pathname parameters.
   * @returns {object} object mapping each parameter name to its value.
   */
  getPathnameParameters () {
    const pathnameParameterNames = this.swaggerName
      .split('/')
      .filter(component => component.startsWith('{'))
      .map(component => component.slice(1, -1))

    return pathnameParameterNames.reduce((acc, value, index) => {
      acc[value] = this.parameters[index]
      return acc
    }, {})
  }

  /**
   * Add endpoints defined by a swagger spec to this component. You would
   * typically call this only on the root component to add API resources. For
   * example, during client initialization, to extend the client with CRDs.
   * @param {object} spec - Swagger specification
   */
  _addSpec (spec) {
    //
    // TODO(sbw): It's important to add endpoints with templating before adding
    // any endpoints with paths that are subpaths of templated paths.
    //
    // E.g., add /api/v1/namepaces/{namespace} before adding /api/v1/namepaces
    //
    // This is important because ._addEndpoint constructs Component objects on
    // demand, and Component requires specifying if it's templated or not. If we
    // cause ._addEndpoint to construct a un-templated Component, templated
    // operations that share the Components subpath will not work.
    //
    Object.keys(spec.paths)
      .map(name => {
        const leadingAndTrailingSlashes = /(^\/)|(\/$)/g
        const splits = name.replace(leadingAndTrailingSlashes, '').split('/')
        return new Endpoint({ name, splits, pathItem: spec.paths[name] })
      })
      .sort((endpoint0, endpoint1) => {
        return endpoint1.splits.length - endpoint0.splits.length
      }).forEach(endpoint => {
        this._addEndpoint(endpoint)
      })
  }

  _addChild (split, component) {
    this.getNames(split, this.splits).forEach(name => {
      this[name] = component
      this.children.push(name)
    })
  }

  _walkSplits (endpoint) {
    const splits = this.splits.slice()
    const nextSplits = endpoint.splits.slice()

    let parent = this
    while (nextSplits.length) {
      const split = nextSplits.shift()
      splits.push(split)

      let template = null
      if (nextSplits.length && nextSplits[0].startsWith('{')) {
        template = nextSplits.shift().slice(1, -1)
      }

      if (!(split in parent)) {
        const component = new this.constructor({
          getNames: this.getNames,
          backend: this.backend,
          parameters: this.parameters,
          templated: Boolean(template),
          splits
        })
        parent._addChild(split, component)
      }
      parent = parent[split]

      //
      // Path Template: save it and walk it once the user specifies
      // the value.
      //
      if (template) {
        if (!parent.templated) {
          throw new Error('Created Component, but require templated one. ' +
                          'This is a bug. Please report: ' +
                          'https://github.com/silasbw/fluent-openapi/issues')
        }
        parent.templatedEndpoints.push(new Endpoint({
          name: endpoint.name,
          splits: nextSplits,
          pathItem: endpoint.pathItem
        }))
        return null
      }
    }
    return parent
  }

  /**
   * Add an Endpoint by creating an object chain according to its pathname
   * splits; and adding operations according to the pathItem.
   * @param {Endpoint} endpoint - Endpoint object.
   * @returns {Component} Component object endpoint was added to.
   */
  _addEndpoint (endpoint) {
    const component = this._walkSplits(endpoint)
    if (!component) return null
    component.pathItemObject = endpoint.pathItem
    component.swaggerName = endpoint.name

    //
    // "Expose" operations by omitting the leading _ from the method name.
    //
    const supportedMethods = ['get', 'put', 'post', 'delete', 'patch']

    supportedMethods
      .filter(method => endpoint.pathItem[method])
      .forEach(method => {
        component[method] = component['_' + method]
        if (method === 'get') component.getStream = component._getStream
      })

    return component
  }

  /**
   * Invoke a REST method
   * @param {string} method - HTTP method
   * @param {ApiRequestOptions} options - Options object
   * @returns {(Promise|Stream)} Promise
   */
  _requestAsync (method, options) {
    return this.backend.http(Object.assign({
      method,
      pathItemObject: this.pathItemObject,
      pathname: this.getPath(),
      pathnameParameters: this.getPathnameParameters()
    }, options))
  }

  //
  // Supported operations.
  //

  /**
   * Invoke a GET request against the API server
   * @param {ApiRequestOptions} options - Options object.
   * @returns {Stream} Stream
   */
  _getStream (options) {
    return this._requestAsync('GET', Object.assign({ stream: true }, options))
  }

  /**
   * Invoke a GET request against the API server
   * @param {ApiRequestOptions} options - Options object.
   * @returns {Promise} Promise
   */
  _get (options) {
    return this._requestAsync('GET', options)
  }

  /**
   * Invoke a DELETE request against the API server
   * @param {ApiRequestOptions} options - Options object.
   * @returns {Promise} Promise
   */
  _delete (options) {
    return this._requestAsync('DELETE', options)
  }

  /**
   * Invoke a PATCH request against the API server
   * @param {ApiRequestOptions} options - Options object
   * @returns {Promise} Promise
   */
  _patch (options) {
    return this._requestAsync('PATCH', merge({
      headers: { 'content-type': 'application/strategic-merge-patch+json' }
    }, options, { isMergeableObject: isPlainObject }))
  }

  /**
   * Invoke a POST request against the API server
   * @param {ApiRequestOptions} options - Options object
   * @returns {Promise} Promise
   */
  _post (options) {
    return this._requestAsync('POST', merge({
      headers: { 'content-type': 'application/json' }
    }, options, { isMergeableObject: isPlainObject }))
  }

  /**
   * Invoke a PUT request against the API server
   * @param {ApiRequestOptions} options - Options object
   * @returns {Promise} Promise
   */
  _put (options) {
    return this._requestAsync('PUT', merge({
      headers: { 'content-type': 'application/json' }
    }, options, { isMergeableObject: isPlainObject }))
  }
}

module.exports = Component


/***/ }),

/***/ 69257:
/***/ ((module) => {

"use strict";


/*!
 * isobject <https://github.com/jonschlinkert/isobject>
 *
 * Copyright (c) 2014-2017, Jon Schlinkert.
 * Released under the MIT License.
 */

function isObject(val) {
  return val != null && typeof val === 'object' && Array.isArray(val) === false;
}

/*!
 * is-plain-object <https://github.com/jonschlinkert/is-plain-object>
 *
 * Copyright (c) 2014-2017, Jon Schlinkert.
 * Released under the MIT License.
 */

function isObjectObject(o) {
  return isObject(o) === true
    && Object.prototype.toString.call(o) === '[object Object]';
}

function isPlainObject(o) {
  var ctor,prot;

  if (isObjectObject(o) === false) return false;

  // If has modified constructor
  ctor = o.constructor;
  if (typeof ctor !== 'function') return false;

  // If has modified prototype
  prot = ctor.prototype;
  if (isObjectObject(prot) === false) return false;

  // If constructor does not have an Object-specific method
  if (prot.hasOwnProperty('isPrototypeOf') === false) {
    return false;
  }

  // Most likely a plain Object
  return true;
}

module.exports = isPlainObject;


/***/ }),

/***/ 53158:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const {Readable} = __webpack_require__(92413);

module.exports = input => (
	new Readable({
		read() {
			this.push(input);
			this.push(null);
		}
	})
);


/***/ }),

/***/ 47372:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/*!
 * Copyright (c) 2015, Salesforce.com, Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * 3. Neither the name of Salesforce.com nor the names of its contributors may
 * be used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

var net = __webpack_require__(11631);
var urlParse = __webpack_require__(78835).parse;
var util = __webpack_require__(31669);
var pubsuffix = __webpack_require__(94401);
var Store = __webpack_require__(460)/* .Store */ .y;
var MemoryCookieStore = __webpack_require__(52640)/* .MemoryCookieStore */ .m;
var pathMatch = __webpack_require__(54336)/* .pathMatch */ .U;
var VERSION = __webpack_require__(93199);

var punycode;
try {
  punycode = __webpack_require__(94213);
} catch(e) {
  console.warn("tough-cookie: can't load punycode; won't use punycode for domain normalization");
}

// From RFC6265 S4.1.1
// note that it excludes \x3B ";"
var COOKIE_OCTETS = /^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/;

var CONTROL_CHARS = /[\x00-\x1F]/;

// From Chromium // '\r', '\n' and '\0' should be treated as a terminator in
// the "relaxed" mode, see:
// https://github.com/ChromiumWebApps/chromium/blob/b3d3b4da8bb94c1b2e061600df106d590fda3620/net/cookies/parsed_cookie.cc#L60
var TERMINATORS = ['\n', '\r', '\0'];

// RFC6265 S4.1.1 defines path value as 'any CHAR except CTLs or ";"'
// Note ';' is \x3B
var PATH_VALUE = /[\x20-\x3A\x3C-\x7E]+/;

// date-time parsing constants (RFC6265 S5.1.1)

var DATE_DELIM = /[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]/;

var MONTH_TO_NUM = {
  jan:0, feb:1, mar:2, apr:3, may:4, jun:5,
  jul:6, aug:7, sep:8, oct:9, nov:10, dec:11
};
var NUM_TO_MONTH = [
  'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'
];
var NUM_TO_DAY = [
  'Sun','Mon','Tue','Wed','Thu','Fri','Sat'
];

var MAX_TIME = 2147483647000; // 31-bit max
var MIN_TIME = 0; // 31-bit min

/*
 * Parses a Natural number (i.e., non-negative integer) with either the
 *    <min>*<max>DIGIT ( non-digit *OCTET )
 * or
 *    <min>*<max>DIGIT
 * grammar (RFC6265 S5.1.1).
 *
 * The "trailingOK" boolean controls if the grammar accepts a
 * "( non-digit *OCTET )" trailer.
 */
function parseDigits(token, minDigits, maxDigits, trailingOK) {
  var count = 0;
  while (count < token.length) {
    var c = token.charCodeAt(count);
    // "non-digit = %x00-2F / %x3A-FF"
    if (c <= 0x2F || c >= 0x3A) {
      break;
    }
    count++;
  }

  // constrain to a minimum and maximum number of digits.
  if (count < minDigits || count > maxDigits) {
    return null;
  }

  if (!trailingOK && count != token.length) {
    return null;
  }

  return parseInt(token.substr(0,count), 10);
}

function parseTime(token) {
  var parts = token.split(':');
  var result = [0,0,0];

  /* RF6256 S5.1.1:
   *      time            = hms-time ( non-digit *OCTET )
   *      hms-time        = time-field ":" time-field ":" time-field
   *      time-field      = 1*2DIGIT
   */

  if (parts.length !== 3) {
    return null;
  }

  for (var i = 0; i < 3; i++) {
    // "time-field" must be strictly "1*2DIGIT", HOWEVER, "hms-time" can be
    // followed by "( non-digit *OCTET )" so therefore the last time-field can
    // have a trailer
    var trailingOK = (i == 2);
    var num = parseDigits(parts[i], 1, 2, trailingOK);
    if (num === null) {
      return null;
    }
    result[i] = num;
  }

  return result;
}

function parseMonth(token) {
  token = String(token).substr(0,3).toLowerCase();
  var num = MONTH_TO_NUM[token];
  return num >= 0 ? num : null;
}

/*
 * RFC6265 S5.1.1 date parser (see RFC for full grammar)
 */
function parseDate(str) {
  if (!str) {
    return;
  }

  /* RFC6265 S5.1.1:
   * 2. Process each date-token sequentially in the order the date-tokens
   * appear in the cookie-date
   */
  var tokens = str.split(DATE_DELIM);
  if (!tokens) {
    return;
  }

  var hour = null;
  var minute = null;
  var second = null;
  var dayOfMonth = null;
  var month = null;
  var year = null;

  for (var i=0; i<tokens.length; i++) {
    var token = tokens[i].trim();
    if (!token.length) {
      continue;
    }

    var result;

    /* 2.1. If the found-time flag is not set and the token matches the time
     * production, set the found-time flag and set the hour- value,
     * minute-value, and second-value to the numbers denoted by the digits in
     * the date-token, respectively.  Skip the remaining sub-steps and continue
     * to the next date-token.
     */
    if (second === null) {
      result = parseTime(token);
      if (result) {
        hour = result[0];
        minute = result[1];
        second = result[2];
        continue;
      }
    }

    /* 2.2. If the found-day-of-month flag is not set and the date-token matches
     * the day-of-month production, set the found-day-of- month flag and set
     * the day-of-month-value to the number denoted by the date-token.  Skip
     * the remaining sub-steps and continue to the next date-token.
     */
    if (dayOfMonth === null) {
      // "day-of-month = 1*2DIGIT ( non-digit *OCTET )"
      result = parseDigits(token, 1, 2, true);
      if (result !== null) {
        dayOfMonth = result;
        continue;
      }
    }

    /* 2.3. If the found-month flag is not set and the date-token matches the
     * month production, set the found-month flag and set the month-value to
     * the month denoted by the date-token.  Skip the remaining sub-steps and
     * continue to the next date-token.
     */
    if (month === null) {
      result = parseMonth(token);
      if (result !== null) {
        month = result;
        continue;
      }
    }

    /* 2.4. If the found-year flag is not set and the date-token matches the
     * year production, set the found-year flag and set the year-value to the
     * number denoted by the date-token.  Skip the remaining sub-steps and
     * continue to the next date-token.
     */
    if (year === null) {
      // "year = 2*4DIGIT ( non-digit *OCTET )"
      result = parseDigits(token, 2, 4, true);
      if (result !== null) {
        year = result;
        /* From S5.1.1:
         * 3.  If the year-value is greater than or equal to 70 and less
         * than or equal to 99, increment the year-value by 1900.
         * 4.  If the year-value is greater than or equal to 0 and less
         * than or equal to 69, increment the year-value by 2000.
         */
        if (year >= 70 && year <= 99) {
          year += 1900;
        } else if (year >= 0 && year <= 69) {
          year += 2000;
        }
      }
    }
  }

  /* RFC 6265 S5.1.1
   * "5. Abort these steps and fail to parse the cookie-date if:
   *     *  at least one of the found-day-of-month, found-month, found-
   *        year, or found-time flags is not set,
   *     *  the day-of-month-value is less than 1 or greater than 31,
   *     *  the year-value is less than 1601,
   *     *  the hour-value is greater than 23,
   *     *  the minute-value is greater than 59, or
   *     *  the second-value is greater than 59.
   *     (Note that leap seconds cannot be represented in this syntax.)"
   *
   * So, in order as above:
   */
  if (
    dayOfMonth === null || month === null || year === null || second === null ||
    dayOfMonth < 1 || dayOfMonth > 31 ||
    year < 1601 ||
    hour > 23 ||
    minute > 59 ||
    second > 59
  ) {
    return;
  }

  return new Date(Date.UTC(year, month, dayOfMonth, hour, minute, second));
}

function formatDate(date) {
  var d = date.getUTCDate(); d = d >= 10 ? d : '0'+d;
  var h = date.getUTCHours(); h = h >= 10 ? h : '0'+h;
  var m = date.getUTCMinutes(); m = m >= 10 ? m : '0'+m;
  var s = date.getUTCSeconds(); s = s >= 10 ? s : '0'+s;
  return NUM_TO_DAY[date.getUTCDay()] + ', ' +
    d+' '+ NUM_TO_MONTH[date.getUTCMonth()] +' '+ date.getUTCFullYear() +' '+
    h+':'+m+':'+s+' GMT';
}

// S5.1.2 Canonicalized Host Names
function canonicalDomain(str) {
  if (str == null) {
    return null;
  }
  str = str.trim().replace(/^\./,''); // S4.1.2.3 & S5.2.3: ignore leading .

  // convert to IDN if any non-ASCII characters
  if (punycode && /[^\u0001-\u007f]/.test(str)) {
    str = punycode.toASCII(str);
  }

  return str.toLowerCase();
}

// S5.1.3 Domain Matching
function domainMatch(str, domStr, canonicalize) {
  if (str == null || domStr == null) {
    return null;
  }
  if (canonicalize !== false) {
    str = canonicalDomain(str);
    domStr = canonicalDomain(domStr);
  }

  /*
   * "The domain string and the string are identical. (Note that both the
   * domain string and the string will have been canonicalized to lower case at
   * this point)"
   */
  if (str == domStr) {
    return true;
  }

  /* "All of the following [three] conditions hold:" (order adjusted from the RFC) */

  /* "* The string is a host name (i.e., not an IP address)." */
  if (net.isIP(str)) {
    return false;
  }

  /* "* The domain string is a suffix of the string" */
  var idx = str.indexOf(domStr);
  if (idx <= 0) {
    return false; // it's a non-match (-1) or prefix (0)
  }

  // e.g "a.b.c".indexOf("b.c") === 2
  // 5 === 3+2
  if (str.length !== domStr.length + idx) { // it's not a suffix
    return false;
  }

  /* "* The last character of the string that is not included in the domain
  * string is a %x2E (".") character." */
  if (str.substr(idx-1,1) !== '.') {
    return false;
  }

  return true;
}


// RFC6265 S5.1.4 Paths and Path-Match

/*
 * "The user agent MUST use an algorithm equivalent to the following algorithm
 * to compute the default-path of a cookie:"
 *
 * Assumption: the path (and not query part or absolute uri) is passed in.
 */
function defaultPath(path) {
  // "2. If the uri-path is empty or if the first character of the uri-path is not
  // a %x2F ("/") character, output %x2F ("/") and skip the remaining steps.
  if (!path || path.substr(0,1) !== "/") {
    return "/";
  }

  // "3. If the uri-path contains no more than one %x2F ("/") character, output
  // %x2F ("/") and skip the remaining step."
  if (path === "/") {
    return path;
  }

  var rightSlash = path.lastIndexOf("/");
  if (rightSlash === 0) {
    return "/";
  }

  // "4. Output the characters of the uri-path from the first character up to,
  // but not including, the right-most %x2F ("/")."
  return path.slice(0, rightSlash);
}

function trimTerminator(str) {
  for (var t = 0; t < TERMINATORS.length; t++) {
    var terminatorIdx = str.indexOf(TERMINATORS[t]);
    if (terminatorIdx !== -1) {
      str = str.substr(0,terminatorIdx);
    }
  }

  return str;
}

function parseCookiePair(cookiePair, looseMode) {
  cookiePair = trimTerminator(cookiePair);

  var firstEq = cookiePair.indexOf('=');
  if (looseMode) {
    if (firstEq === 0) { // '=' is immediately at start
      cookiePair = cookiePair.substr(1);
      firstEq = cookiePair.indexOf('='); // might still need to split on '='
    }
  } else { // non-loose mode
    if (firstEq <= 0) { // no '=' or is at start
      return; // needs to have non-empty "cookie-name"
    }
  }

  var cookieName, cookieValue;
  if (firstEq <= 0) {
    cookieName = "";
    cookieValue = cookiePair.trim();
  } else {
    cookieName = cookiePair.substr(0, firstEq).trim();
    cookieValue = cookiePair.substr(firstEq+1).trim();
  }

  if (CONTROL_CHARS.test(cookieName) || CONTROL_CHARS.test(cookieValue)) {
    return;
  }

  var c = new Cookie();
  c.key = cookieName;
  c.value = cookieValue;
  return c;
}

function parse(str, options) {
  if (!options || typeof options !== 'object') {
    options = {};
  }
  str = str.trim();

  // We use a regex to parse the "name-value-pair" part of S5.2
  var firstSemi = str.indexOf(';'); // S5.2 step 1
  var cookiePair = (firstSemi === -1) ? str : str.substr(0, firstSemi);
  var c = parseCookiePair(cookiePair, !!options.loose);
  if (!c) {
    return;
  }

  if (firstSemi === -1) {
    return c;
  }

  // S5.2.3 "unparsed-attributes consist of the remainder of the set-cookie-string
  // (including the %x3B (";") in question)." plus later on in the same section
  // "discard the first ";" and trim".
  var unparsed = str.slice(firstSemi + 1).trim();

  // "If the unparsed-attributes string is empty, skip the rest of these
  // steps."
  if (unparsed.length === 0) {
    return c;
  }

  /*
   * S5.2 says that when looping over the items "[p]rocess the attribute-name
   * and attribute-value according to the requirements in the following
   * subsections" for every item.  Plus, for many of the individual attributes
   * in S5.3 it says to use the "attribute-value of the last attribute in the
   * cookie-attribute-list".  Therefore, in this implementation, we overwrite
   * the previous value.
   */
  var cookie_avs = unparsed.split(';');
  while (cookie_avs.length) {
    var av = cookie_avs.shift().trim();
    if (av.length === 0) { // happens if ";;" appears
      continue;
    }
    var av_sep = av.indexOf('=');
    var av_key, av_value;

    if (av_sep === -1) {
      av_key = av;
      av_value = null;
    } else {
      av_key = av.substr(0,av_sep);
      av_value = av.substr(av_sep+1);
    }

    av_key = av_key.trim().toLowerCase();

    if (av_value) {
      av_value = av_value.trim();
    }

    switch(av_key) {
    case 'expires': // S5.2.1
      if (av_value) {
        var exp = parseDate(av_value);
        // "If the attribute-value failed to parse as a cookie date, ignore the
        // cookie-av."
        if (exp) {
          // over and underflow not realistically a concern: V8's getTime() seems to
          // store something larger than a 32-bit time_t (even with 32-bit node)
          c.expires = exp;
        }
      }
      break;

    case 'max-age': // S5.2.2
      if (av_value) {
        // "If the first character of the attribute-value is not a DIGIT or a "-"
        // character ...[or]... If the remainder of attribute-value contains a
        // non-DIGIT character, ignore the cookie-av."
        if (/^-?[0-9]+$/.test(av_value)) {
          var delta = parseInt(av_value, 10);
          // "If delta-seconds is less than or equal to zero (0), let expiry-time
          // be the earliest representable date and time."
          c.setMaxAge(delta);
        }
      }
      break;

    case 'domain': // S5.2.3
      // "If the attribute-value is empty, the behavior is undefined.  However,
      // the user agent SHOULD ignore the cookie-av entirely."
      if (av_value) {
        // S5.2.3 "Let cookie-domain be the attribute-value without the leading %x2E
        // (".") character."
        var domain = av_value.trim().replace(/^\./, '');
        if (domain) {
          // "Convert the cookie-domain to lower case."
          c.domain = domain.toLowerCase();
        }
      }
      break;

    case 'path': // S5.2.4
      /*
       * "If the attribute-value is empty or if the first character of the
       * attribute-value is not %x2F ("/"):
       *   Let cookie-path be the default-path.
       * Otherwise:
       *   Let cookie-path be the attribute-value."
       *
       * We'll represent the default-path as null since it depends on the
       * context of the parsing.
       */
      c.path = av_value && av_value[0] === "/" ? av_value : null;
      break;

    case 'secure': // S5.2.5
      /*
       * "If the attribute-name case-insensitively matches the string "Secure",
       * the user agent MUST append an attribute to the cookie-attribute-list
       * with an attribute-name of Secure and an empty attribute-value."
       */
      c.secure = true;
      break;

    case 'httponly': // S5.2.6 -- effectively the same as 'secure'
      c.httpOnly = true;
      break;

    default:
      c.extensions = c.extensions || [];
      c.extensions.push(av);
      break;
    }
  }

  return c;
}

// avoid the V8 deoptimization monster!
function jsonParse(str) {
  var obj;
  try {
    obj = JSON.parse(str);
  } catch (e) {
    return e;
  }
  return obj;
}

function fromJSON(str) {
  if (!str) {
    return null;
  }

  var obj;
  if (typeof str === 'string') {
    obj = jsonParse(str);
    if (obj instanceof Error) {
      return null;
    }
  } else {
    // assume it's an Object
    obj = str;
  }

  var c = new Cookie();
  for (var i=0; i<Cookie.serializableProperties.length; i++) {
    var prop = Cookie.serializableProperties[i];
    if (obj[prop] === undefined ||
        obj[prop] === Cookie.prototype[prop])
    {
      continue; // leave as prototype default
    }

    if (prop === 'expires' ||
        prop === 'creation' ||
        prop === 'lastAccessed')
    {
      if (obj[prop] === null) {
        c[prop] = null;
      } else {
        c[prop] = obj[prop] == "Infinity" ?
          "Infinity" : new Date(obj[prop]);
      }
    } else {
      c[prop] = obj[prop];
    }
  }

  return c;
}

/* Section 5.4 part 2:
 * "*  Cookies with longer paths are listed before cookies with
 *     shorter paths.
 *
 *  *  Among cookies that have equal-length path fields, cookies with
 *     earlier creation-times are listed before cookies with later
 *     creation-times."
 */

function cookieCompare(a,b) {
  var cmp = 0;

  // descending for length: b CMP a
  var aPathLen = a.path ? a.path.length : 0;
  var bPathLen = b.path ? b.path.length : 0;
  cmp = bPathLen - aPathLen;
  if (cmp !== 0) {
    return cmp;
  }

  // ascending for time: a CMP b
  var aTime = a.creation ? a.creation.getTime() : MAX_TIME;
  var bTime = b.creation ? b.creation.getTime() : MAX_TIME;
  cmp = aTime - bTime;
  if (cmp !== 0) {
    return cmp;
  }

  // break ties for the same millisecond (precision of JavaScript's clock)
  cmp = a.creationIndex - b.creationIndex;

  return cmp;
}

// Gives the permutation of all possible pathMatch()es of a given path. The
// array is in longest-to-shortest order.  Handy for indexing.
function permutePath(path) {
  if (path === '/') {
    return ['/'];
  }
  if (path.lastIndexOf('/') === path.length-1) {
    path = path.substr(0,path.length-1);
  }
  var permutations = [path];
  while (path.length > 1) {
    var lindex = path.lastIndexOf('/');
    if (lindex === 0) {
      break;
    }
    path = path.substr(0,lindex);
    permutations.push(path);
  }
  permutations.push('/');
  return permutations;
}

function getCookieContext(url) {
  if (url instanceof Object) {
    return url;
  }
  // NOTE: decodeURI will throw on malformed URIs (see GH-32).
  // Therefore, we will just skip decoding for such URIs.
  try {
    url = decodeURI(url);
  }
  catch(err) {
    // Silently swallow error
  }

  return urlParse(url);
}

function Cookie(options) {
  options = options || {};

  Object.keys(options).forEach(function(prop) {
    if (Cookie.prototype.hasOwnProperty(prop) &&
        Cookie.prototype[prop] !== options[prop] &&
        prop.substr(0,1) !== '_')
    {
      this[prop] = options[prop];
    }
  }, this);

  this.creation = this.creation || new Date();

  // used to break creation ties in cookieCompare():
  Object.defineProperty(this, 'creationIndex', {
    configurable: false,
    enumerable: false, // important for assert.deepEqual checks
    writable: true,
    value: ++Cookie.cookiesCreated
  });
}

Cookie.cookiesCreated = 0; // incremented each time a cookie is created

Cookie.parse = parse;
Cookie.fromJSON = fromJSON;

Cookie.prototype.key = "";
Cookie.prototype.value = "";

// the order in which the RFC has them:
Cookie.prototype.expires = "Infinity"; // coerces to literal Infinity
Cookie.prototype.maxAge = null; // takes precedence over expires for TTL
Cookie.prototype.domain = null;
Cookie.prototype.path = null;
Cookie.prototype.secure = false;
Cookie.prototype.httpOnly = false;
Cookie.prototype.extensions = null;

// set by the CookieJar:
Cookie.prototype.hostOnly = null; // boolean when set
Cookie.prototype.pathIsDefault = null; // boolean when set
Cookie.prototype.creation = null; // Date when set; defaulted by Cookie.parse
Cookie.prototype.lastAccessed = null; // Date when set
Object.defineProperty(Cookie.prototype, 'creationIndex', {
  configurable: true,
  enumerable: false,
  writable: true,
  value: 0
});

Cookie.serializableProperties = Object.keys(Cookie.prototype)
  .filter(function(prop) {
    return !(
      Cookie.prototype[prop] instanceof Function ||
      prop === 'creationIndex' ||
      prop.substr(0,1) === '_'
    );
  });

Cookie.prototype.inspect = function inspect() {
  var now = Date.now();
  return 'Cookie="'+this.toString() +
    '; hostOnly='+(this.hostOnly != null ? this.hostOnly : '?') +
    '; aAge='+(this.lastAccessed ? (now-this.lastAccessed.getTime())+'ms' : '?') +
    '; cAge='+(this.creation ? (now-this.creation.getTime())+'ms' : '?') +
    '"';
};

// Use the new custom inspection symbol to add the custom inspect function if
// available.
if (util.inspect.custom) {
  Cookie.prototype[util.inspect.custom] = Cookie.prototype.inspect;
}

Cookie.prototype.toJSON = function() {
  var obj = {};

  var props = Cookie.serializableProperties;
  for (var i=0; i<props.length; i++) {
    var prop = props[i];
    if (this[prop] === Cookie.prototype[prop]) {
      continue; // leave as prototype default
    }

    if (prop === 'expires' ||
        prop === 'creation' ||
        prop === 'lastAccessed')
    {
      if (this[prop] === null) {
        obj[prop] = null;
      } else {
        obj[prop] = this[prop] == "Infinity" ? // intentionally not ===
          "Infinity" : this[prop].toISOString();
      }
    } else if (prop === 'maxAge') {
      if (this[prop] !== null) {
        // again, intentionally not ===
        obj[prop] = (this[prop] == Infinity || this[prop] == -Infinity) ?
          this[prop].toString() : this[prop];
      }
    } else {
      if (this[prop] !== Cookie.prototype[prop]) {
        obj[prop] = this[prop];
      }
    }
  }

  return obj;
};

Cookie.prototype.clone = function() {
  return fromJSON(this.toJSON());
};

Cookie.prototype.validate = function validate() {
  if (!COOKIE_OCTETS.test(this.value)) {
    return false;
  }
  if (this.expires != Infinity && !(this.expires instanceof Date) && !parseDate(this.expires)) {
    return false;
  }
  if (this.maxAge != null && this.maxAge <= 0) {
    return false; // "Max-Age=" non-zero-digit *DIGIT
  }
  if (this.path != null && !PATH_VALUE.test(this.path)) {
    return false;
  }

  var cdomain = this.cdomain();
  if (cdomain) {
    if (cdomain.match(/\.$/)) {
      return false; // S4.1.2.3 suggests that this is bad. domainMatch() tests confirm this
    }
    var suffix = pubsuffix.getPublicSuffix(cdomain);
    if (suffix == null) { // it's a public suffix
      return false;
    }
  }
  return true;
};

Cookie.prototype.setExpires = function setExpires(exp) {
  if (exp instanceof Date) {
    this.expires = exp;
  } else {
    this.expires = parseDate(exp) || "Infinity";
  }
};

Cookie.prototype.setMaxAge = function setMaxAge(age) {
  if (age === Infinity || age === -Infinity) {
    this.maxAge = age.toString(); // so JSON.stringify() works
  } else {
    this.maxAge = age;
  }
};

// gives Cookie header format
Cookie.prototype.cookieString = function cookieString() {
  var val = this.value;
  if (val == null) {
    val = '';
  }
  if (this.key === '') {
    return val;
  }
  return this.key+'='+val;
};

// gives Set-Cookie header format
Cookie.prototype.toString = function toString() {
  var str = this.cookieString();

  if (this.expires != Infinity) {
    if (this.expires instanceof Date) {
      str += '; Expires='+formatDate(this.expires);
    } else {
      str += '; Expires='+this.expires;
    }
  }

  if (this.maxAge != null && this.maxAge != Infinity) {
    str += '; Max-Age='+this.maxAge;
  }

  if (this.domain && !this.hostOnly) {
    str += '; Domain='+this.domain;
  }
  if (this.path) {
    str += '; Path='+this.path;
  }

  if (this.secure) {
    str += '; Secure';
  }
  if (this.httpOnly) {
    str += '; HttpOnly';
  }
  if (this.extensions) {
    this.extensions.forEach(function(ext) {
      str += '; '+ext;
    });
  }

  return str;
};

// TTL() partially replaces the "expiry-time" parts of S5.3 step 3 (setCookie()
// elsewhere)
// S5.3 says to give the "latest representable date" for which we use Infinity
// For "expired" we use 0
Cookie.prototype.TTL = function TTL(now) {
  /* RFC6265 S4.1.2.2 If a cookie has both the Max-Age and the Expires
   * attribute, the Max-Age attribute has precedence and controls the
   * expiration date of the cookie.
   * (Concurs with S5.3 step 3)
   */
  if (this.maxAge != null) {
    return this.maxAge<=0 ? 0 : this.maxAge*1000;
  }

  var expires = this.expires;
  if (expires != Infinity) {
    if (!(expires instanceof Date)) {
      expires = parseDate(expires) || Infinity;
    }

    if (expires == Infinity) {
      return Infinity;
    }

    return expires.getTime() - (now || Date.now());
  }

  return Infinity;
};

// expiryTime() replaces the "expiry-time" parts of S5.3 step 3 (setCookie()
// elsewhere)
Cookie.prototype.expiryTime = function expiryTime(now) {
  if (this.maxAge != null) {
    var relativeTo = now || this.creation || new Date();
    var age = (this.maxAge <= 0) ? -Infinity : this.maxAge*1000;
    return relativeTo.getTime() + age;
  }

  if (this.expires == Infinity) {
    return Infinity;
  }
  return this.expires.getTime();
};

// expiryDate() replaces the "expiry-time" parts of S5.3 step 3 (setCookie()
// elsewhere), except it returns a Date
Cookie.prototype.expiryDate = function expiryDate(now) {
  var millisec = this.expiryTime(now);
  if (millisec == Infinity) {
    return new Date(MAX_TIME);
  } else if (millisec == -Infinity) {
    return new Date(MIN_TIME);
  } else {
    return new Date(millisec);
  }
};

// This replaces the "persistent-flag" parts of S5.3 step 3
Cookie.prototype.isPersistent = function isPersistent() {
  return (this.maxAge != null || this.expires != Infinity);
};

// Mostly S5.1.2 and S5.2.3:
Cookie.prototype.cdomain =
Cookie.prototype.canonicalizedDomain = function canonicalizedDomain() {
  if (this.domain == null) {
    return null;
  }
  return canonicalDomain(this.domain);
};

function CookieJar(store, options) {
  if (typeof options === "boolean") {
    options = {rejectPublicSuffixes: options};
  } else if (options == null) {
    options = {};
  }
  if (options.rejectPublicSuffixes != null) {
    this.rejectPublicSuffixes = options.rejectPublicSuffixes;
  }
  if (options.looseMode != null) {
    this.enableLooseMode = options.looseMode;
  }

  if (!store) {
    store = new MemoryCookieStore();
  }
  this.store = store;
}
CookieJar.prototype.store = null;
CookieJar.prototype.rejectPublicSuffixes = true;
CookieJar.prototype.enableLooseMode = false;
var CAN_BE_SYNC = [];

CAN_BE_SYNC.push('setCookie');
CookieJar.prototype.setCookie = function(cookie, url, options, cb) {
  var err;
  var context = getCookieContext(url);
  if (options instanceof Function) {
    cb = options;
    options = {};
  }

  var host = canonicalDomain(context.hostname);
  var loose = this.enableLooseMode;
  if (options.loose != null) {
    loose = options.loose;
  }

  // S5.3 step 1
  if (!(cookie instanceof Cookie)) {
    cookie = Cookie.parse(cookie, { loose: loose });
  }
  if (!cookie) {
    err = new Error("Cookie failed to parse");
    return cb(options.ignoreError ? null : err);
  }

  // S5.3 step 2
  var now = options.now || new Date(); // will assign later to save effort in the face of errors

  // S5.3 step 3: NOOP; persistent-flag and expiry-time is handled by getCookie()

  // S5.3 step 4: NOOP; domain is null by default

  // S5.3 step 5: public suffixes
  if (this.rejectPublicSuffixes && cookie.domain) {
    var suffix = pubsuffix.getPublicSuffix(cookie.cdomain());
    if (suffix == null) { // e.g. "com"
      err = new Error("Cookie has domain set to a public suffix");
      return cb(options.ignoreError ? null : err);
    }
  }

  // S5.3 step 6:
  if (cookie.domain) {
    if (!domainMatch(host, cookie.cdomain(), false)) {
      err = new Error("Cookie not in this host's domain. Cookie:"+cookie.cdomain()+" Request:"+host);
      return cb(options.ignoreError ? null : err);
    }

    if (cookie.hostOnly == null) { // don't reset if already set
      cookie.hostOnly = false;
    }

  } else {
    cookie.hostOnly = true;
    cookie.domain = host;
  }

  //S5.2.4 If the attribute-value is empty or if the first character of the
  //attribute-value is not %x2F ("/"):
  //Let cookie-path be the default-path.
  if (!cookie.path || cookie.path[0] !== '/') {
    cookie.path = defaultPath(context.pathname);
    cookie.pathIsDefault = true;
  }

  // S5.3 step 8: NOOP; secure attribute
  // S5.3 step 9: NOOP; httpOnly attribute

  // S5.3 step 10
  if (options.http === false && cookie.httpOnly) {
    err = new Error("Cookie is HttpOnly and this isn't an HTTP API");
    return cb(options.ignoreError ? null : err);
  }

  var store = this.store;

  if (!store.updateCookie) {
    store.updateCookie = function(oldCookie, newCookie, cb) {
      this.putCookie(newCookie, cb);
    };
  }

  function withCookie(err, oldCookie) {
    if (err) {
      return cb(err);
    }

    var next = function(err) {
      if (err) {
        return cb(err);
      } else {
        cb(null, cookie);
      }
    };

    if (oldCookie) {
      // S5.3 step 11 - "If the cookie store contains a cookie with the same name,
      // domain, and path as the newly created cookie:"
      if (options.http === false && oldCookie.httpOnly) { // step 11.2
        err = new Error("old Cookie is HttpOnly and this isn't an HTTP API");
        return cb(options.ignoreError ? null : err);
      }
      cookie.creation = oldCookie.creation; // step 11.3
      cookie.creationIndex = oldCookie.creationIndex; // preserve tie-breaker
      cookie.lastAccessed = now;
      // Step 11.4 (delete cookie) is implied by just setting the new one:
      store.updateCookie(oldCookie, cookie, next); // step 12

    } else {
      cookie.creation = cookie.lastAccessed = now;
      store.putCookie(cookie, next); // step 12
    }
  }

  store.findCookie(cookie.domain, cookie.path, cookie.key, withCookie);
};

// RFC6365 S5.4
CAN_BE_SYNC.push('getCookies');
CookieJar.prototype.getCookies = function(url, options, cb) {
  var context = getCookieContext(url);
  if (options instanceof Function) {
    cb = options;
    options = {};
  }

  var host = canonicalDomain(context.hostname);
  var path = context.pathname || '/';

  var secure = options.secure;
  if (secure == null && context.protocol &&
      (context.protocol == 'https:' || context.protocol == 'wss:'))
  {
    secure = true;
  }

  var http = options.http;
  if (http == null) {
    http = true;
  }

  var now = options.now || Date.now();
  var expireCheck = options.expire !== false;
  var allPaths = !!options.allPaths;
  var store = this.store;

  function matchingCookie(c) {
    // "Either:
    //   The cookie's host-only-flag is true and the canonicalized
    //   request-host is identical to the cookie's domain.
    // Or:
    //   The cookie's host-only-flag is false and the canonicalized
    //   request-host domain-matches the cookie's domain."
    if (c.hostOnly) {
      if (c.domain != host) {
        return false;
      }
    } else {
      if (!domainMatch(host, c.domain, false)) {
        return false;
      }
    }

    // "The request-uri's path path-matches the cookie's path."
    if (!allPaths && !pathMatch(path, c.path)) {
      return false;
    }

    // "If the cookie's secure-only-flag is true, then the request-uri's
    // scheme must denote a "secure" protocol"
    if (c.secure && !secure) {
      return false;
    }

    // "If the cookie's http-only-flag is true, then exclude the cookie if the
    // cookie-string is being generated for a "non-HTTP" API"
    if (c.httpOnly && !http) {
      return false;
    }

    // deferred from S5.3
    // non-RFC: allow retention of expired cookies by choice
    if (expireCheck && c.expiryTime() <= now) {
      store.removeCookie(c.domain, c.path, c.key, function(){}); // result ignored
      return false;
    }

    return true;
  }

  store.findCookies(host, allPaths ? null : path, function(err,cookies) {
    if (err) {
      return cb(err);
    }

    cookies = cookies.filter(matchingCookie);

    // sorting of S5.4 part 2
    if (options.sort !== false) {
      cookies = cookies.sort(cookieCompare);
    }

    // S5.4 part 3
    var now = new Date();
    cookies.forEach(function(c) {
      c.lastAccessed = now;
    });
    // TODO persist lastAccessed

    cb(null,cookies);
  });
};

CAN_BE_SYNC.push('getCookieString');
CookieJar.prototype.getCookieString = function(/*..., cb*/) {
  var args = Array.prototype.slice.call(arguments,0);
  var cb = args.pop();
  var next = function(err,cookies) {
    if (err) {
      cb(err);
    } else {
      cb(null, cookies
        .sort(cookieCompare)
        .map(function(c){
          return c.cookieString();
        })
        .join('; '));
    }
  };
  args.push(next);
  this.getCookies.apply(this,args);
};

CAN_BE_SYNC.push('getSetCookieStrings');
CookieJar.prototype.getSetCookieStrings = function(/*..., cb*/) {
  var args = Array.prototype.slice.call(arguments,0);
  var cb = args.pop();
  var next = function(err,cookies) {
    if (err) {
      cb(err);
    } else {
      cb(null, cookies.map(function(c){
        return c.toString();
      }));
    }
  };
  args.push(next);
  this.getCookies.apply(this,args);
};

CAN_BE_SYNC.push('serialize');
CookieJar.prototype.serialize = function(cb) {
  var type = this.store.constructor.name;
  if (type === 'Object') {
    type = null;
  }

  // update README.md "Serialization Format" if you change this, please!
  var serialized = {
    // The version of tough-cookie that serialized this jar. Generally a good
    // practice since future versions can make data import decisions based on
    // known past behavior. When/if this matters, use `semver`.
    version: 'tough-cookie@'+VERSION,

    // add the store type, to make humans happy:
    storeType: type,

    // CookieJar configuration:
    rejectPublicSuffixes: !!this.rejectPublicSuffixes,

    // this gets filled from getAllCookies:
    cookies: []
  };

  if (!(this.store.getAllCookies &&
        typeof this.store.getAllCookies === 'function'))
  {
    return cb(new Error('store does not support getAllCookies and cannot be serialized'));
  }

  this.store.getAllCookies(function(err,cookies) {
    if (err) {
      return cb(err);
    }

    serialized.cookies = cookies.map(function(cookie) {
      // convert to serialized 'raw' cookies
      cookie = (cookie instanceof Cookie) ? cookie.toJSON() : cookie;

      // Remove the index so new ones get assigned during deserialization
      delete cookie.creationIndex;

      return cookie;
    });

    return cb(null, serialized);
  });
};

// well-known name that JSON.stringify calls
CookieJar.prototype.toJSON = function() {
  return this.serializeSync();
};

// use the class method CookieJar.deserialize instead of calling this directly
CAN_BE_SYNC.push('_importCookies');
CookieJar.prototype._importCookies = function(serialized, cb) {
  var jar = this;
  var cookies = serialized.cookies;
  if (!cookies || !Array.isArray(cookies)) {
    return cb(new Error('serialized jar has no cookies array'));
  }
  cookies = cookies.slice(); // do not modify the original

  function putNext(err) {
    if (err) {
      return cb(err);
    }

    if (!cookies.length) {
      return cb(err, jar);
    }

    var cookie;
    try {
      cookie = fromJSON(cookies.shift());
    } catch (e) {
      return cb(e);
    }

    if (cookie === null) {
      return putNext(null); // skip this cookie
    }

    jar.store.putCookie(cookie, putNext);
  }

  putNext();
};

CookieJar.deserialize = function(strOrObj, store, cb) {
  if (arguments.length !== 3) {
    // store is optional
    cb = store;
    store = null;
  }

  var serialized;
  if (typeof strOrObj === 'string') {
    serialized = jsonParse(strOrObj);
    if (serialized instanceof Error) {
      return cb(serialized);
    }
  } else {
    serialized = strOrObj;
  }

  var jar = new CookieJar(store, serialized.rejectPublicSuffixes);
  jar._importCookies(serialized, function(err) {
    if (err) {
      return cb(err);
    }
    cb(null, jar);
  });
};

CookieJar.deserializeSync = function(strOrObj, store) {
  var serialized = typeof strOrObj === 'string' ?
    JSON.parse(strOrObj) : strOrObj;
  var jar = new CookieJar(store, serialized.rejectPublicSuffixes);

  // catch this mistake early:
  if (!jar.store.synchronous) {
    throw new Error('CookieJar store is not synchronous; use async API instead.');
  }

  jar._importCookiesSync(serialized);
  return jar;
};
CookieJar.fromJSON = CookieJar.deserializeSync;

CookieJar.prototype.clone = function(newStore, cb) {
  if (arguments.length === 1) {
    cb = newStore;
    newStore = null;
  }

  this.serialize(function(err,serialized) {
    if (err) {
      return cb(err);
    }
    CookieJar.deserialize(serialized, newStore, cb);
  });
};

CAN_BE_SYNC.push('removeAllCookies');
CookieJar.prototype.removeAllCookies = function(cb) {
  var store = this.store;

  // Check that the store implements its own removeAllCookies(). The default
  // implementation in Store will immediately call the callback with a "not
  // implemented" Error.
  if (store.removeAllCookies instanceof Function &&
      store.removeAllCookies !== Store.prototype.removeAllCookies)
  {
    return store.removeAllCookies(cb);
  }

  store.getAllCookies(function(err, cookies) {
    if (err) {
      return cb(err);
    }

    if (cookies.length === 0) {
      return cb(null);
    }

    var completedCount = 0;
    var removeErrors = [];

    function removeCookieCb(removeErr) {
      if (removeErr) {
        removeErrors.push(removeErr);
      }

      completedCount++;

      if (completedCount === cookies.length) {
        return cb(removeErrors.length ? removeErrors[0] : null);
      }
    }

    cookies.forEach(function(cookie) {
      store.removeCookie(cookie.domain, cookie.path, cookie.key, removeCookieCb);
    });
  });
};

CookieJar.prototype._cloneSync = syncWrap('clone');
CookieJar.prototype.cloneSync = function(newStore) {
  if (!newStore.synchronous) {
    throw new Error('CookieJar clone destination store is not synchronous; use async API instead.');
  }
  return this._cloneSync(newStore);
};

// Use a closure to provide a true imperative API for synchronous stores.
function syncWrap(method) {
  return function() {
    if (!this.store.synchronous) {
      throw new Error('CookieJar store is not synchronous; use async API instead.');
    }

    var args = Array.prototype.slice.call(arguments);
    var syncErr, syncResult;
    args.push(function syncCb(err, result) {
      syncErr = err;
      syncResult = result;
    });
    this[method].apply(this, args);

    if (syncErr) {
      throw syncErr;
    }
    return syncResult;
  };
}

// wrap all declared CAN_BE_SYNC methods in the sync wrapper
CAN_BE_SYNC.forEach(function(method) {
  CookieJar.prototype[method+'Sync'] = syncWrap(method);
});

exports.version = VERSION;
exports.CookieJar = CookieJar;
exports.Cookie = Cookie;
exports.Store = Store;
exports.MemoryCookieStore = MemoryCookieStore;
exports.parseDate = parseDate;
exports.formatDate = formatDate;
exports.parse = parse;
exports.fromJSON = fromJSON;
exports.domainMatch = domainMatch;
exports.defaultPath = defaultPath;
exports.pathMatch = pathMatch;
exports.getPublicSuffix = pubsuffix.getPublicSuffix;
exports.cookieCompare = cookieCompare;
exports.permuteDomain = __webpack_require__(55986).permuteDomain;
exports.permutePath = permutePath;
exports.canonicalDomain = canonicalDomain;


/***/ }),

/***/ 52640:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/*!
 * Copyright (c) 2015, Salesforce.com, Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * 3. Neither the name of Salesforce.com nor the names of its contributors may
 * be used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

var Store = __webpack_require__(460)/* .Store */ .y;
var permuteDomain = __webpack_require__(55986).permuteDomain;
var pathMatch = __webpack_require__(54336)/* .pathMatch */ .U;
var util = __webpack_require__(31669);

function MemoryCookieStore() {
  Store.call(this);
  this.idx = {};
}
util.inherits(MemoryCookieStore, Store);
exports.m = MemoryCookieStore;
MemoryCookieStore.prototype.idx = null;

// Since it's just a struct in RAM, this Store is synchronous
MemoryCookieStore.prototype.synchronous = true;

// force a default depth:
MemoryCookieStore.prototype.inspect = function() {
  return "{ idx: "+util.inspect(this.idx, false, 2)+' }';
};

// Use the new custom inspection symbol to add the custom inspect function if
// available.
if (util.inspect.custom) {
  MemoryCookieStore.prototype[util.inspect.custom] = MemoryCookieStore.prototype.inspect;
}

MemoryCookieStore.prototype.findCookie = function(domain, path, key, cb) {
  if (!this.idx[domain]) {
    return cb(null,undefined);
  }
  if (!this.idx[domain][path]) {
    return cb(null,undefined);
  }
  return cb(null,this.idx[domain][path][key]||null);
};

MemoryCookieStore.prototype.findCookies = function(domain, path, cb) {
  var results = [];
  if (!domain) {
    return cb(null,[]);
  }

  var pathMatcher;
  if (!path) {
    // null means "all paths"
    pathMatcher = function matchAll(domainIndex) {
      for (var curPath in domainIndex) {
        var pathIndex = domainIndex[curPath];
        for (var key in pathIndex) {
          results.push(pathIndex[key]);
        }
      }
    };

  } else {
    pathMatcher = function matchRFC(domainIndex) {
       //NOTE: we should use path-match algorithm from S5.1.4 here
       //(see : https://github.com/ChromiumWebApps/chromium/blob/b3d3b4da8bb94c1b2e061600df106d590fda3620/net/cookies/canonical_cookie.cc#L299)
       Object.keys(domainIndex).forEach(function (cookiePath) {
         if (pathMatch(path, cookiePath)) {
           var pathIndex = domainIndex[cookiePath];

           for (var key in pathIndex) {
             results.push(pathIndex[key]);
           }
         }
       });
     };
  }

  var domains = permuteDomain(domain) || [domain];
  var idx = this.idx;
  domains.forEach(function(curDomain) {
    var domainIndex = idx[curDomain];
    if (!domainIndex) {
      return;
    }
    pathMatcher(domainIndex);
  });

  cb(null,results);
};

MemoryCookieStore.prototype.putCookie = function(cookie, cb) {
  if (!this.idx[cookie.domain]) {
    this.idx[cookie.domain] = {};
  }
  if (!this.idx[cookie.domain][cookie.path]) {
    this.idx[cookie.domain][cookie.path] = {};
  }
  this.idx[cookie.domain][cookie.path][cookie.key] = cookie;
  cb(null);
};

MemoryCookieStore.prototype.updateCookie = function(oldCookie, newCookie, cb) {
  // updateCookie() may avoid updating cookies that are identical.  For example,
  // lastAccessed may not be important to some stores and an equality
  // comparison could exclude that field.
  this.putCookie(newCookie,cb);
};

MemoryCookieStore.prototype.removeCookie = function(domain, path, key, cb) {
  if (this.idx[domain] && this.idx[domain][path] && this.idx[domain][path][key]) {
    delete this.idx[domain][path][key];
  }
  cb(null);
};

MemoryCookieStore.prototype.removeCookies = function(domain, path, cb) {
  if (this.idx[domain]) {
    if (path) {
      delete this.idx[domain][path];
    } else {
      delete this.idx[domain];
    }
  }
  return cb(null);
};

MemoryCookieStore.prototype.removeAllCookies = function(cb) {
  this.idx = {};
  return cb(null);
}

MemoryCookieStore.prototype.getAllCookies = function(cb) {
  var cookies = [];
  var idx = this.idx;

  var domains = Object.keys(idx);
  domains.forEach(function(domain) {
    var paths = Object.keys(idx[domain]);
    paths.forEach(function(path) {
      var keys = Object.keys(idx[domain][path]);
      keys.forEach(function(key) {
        if (key !== null) {
          cookies.push(idx[domain][path][key]);
        }
      });
    });
  });

  // Sort by creationIndex so deserializing retains the creation order.
  // When implementing your own store, this SHOULD retain the order too
  cookies.sort(function(a,b) {
    return (a.creationIndex||0) - (b.creationIndex||0);
  });

  cb(null, cookies);
};


/***/ }),

/***/ 54336:
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/*!
 * Copyright (c) 2015, Salesforce.com, Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * 3. Neither the name of Salesforce.com nor the names of its contributors may
 * be used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

/*
 * "A request-path path-matches a given cookie-path if at least one of the
 * following conditions holds:"
 */
function pathMatch (reqPath, cookiePath) {
  // "o  The cookie-path and the request-path are identical."
  if (cookiePath === reqPath) {
    return true;
  }

  var idx = reqPath.indexOf(cookiePath);
  if (idx === 0) {
    // "o  The cookie-path is a prefix of the request-path, and the last
    // character of the cookie-path is %x2F ("/")."
    if (cookiePath.substr(-1) === "/") {
      return true;
    }

    // " o  The cookie-path is a prefix of the request-path, and the first
    // character of the request-path that is not included in the cookie- path
    // is a %x2F ("/") character."
    if (reqPath.substr(cookiePath.length, 1) === "/") {
      return true;
    }
  }

  return false;
}

exports.U = pathMatch;


/***/ }),

/***/ 55986:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/*!
 * Copyright (c) 2015, Salesforce.com, Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * 3. Neither the name of Salesforce.com nor the names of its contributors may
 * be used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

var pubsuffix = __webpack_require__(94401);

// Gives the permutation of all possible domainMatch()es of a given domain. The
// array is in shortest-to-longest order.  Handy for indexing.
function permuteDomain (domain) {
  var pubSuf = pubsuffix.getPublicSuffix(domain);
  if (!pubSuf) {
    return null;
  }
  if (pubSuf == domain) {
    return [domain];
  }

  var prefix = domain.slice(0, -(pubSuf.length + 1)); // ".example.com"
  var parts = prefix.split('.').reverse();
  var cur = pubSuf;
  var permutations = [cur];
  while (parts.length) {
    cur = parts.shift() + '.' + cur;
    permutations.push(cur);
  }
  return permutations;
}

exports.permuteDomain = permuteDomain;


/***/ }),

/***/ 94401:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/*!
 * Copyright (c) 2018, Salesforce.com, Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * 3. Neither the name of Salesforce.com nor the names of its contributors may
 * be used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

var psl = __webpack_require__(29975);

function getPublicSuffix(domain) {
  return psl.get(domain);
}

exports.getPublicSuffix = getPublicSuffix;


/***/ }),

/***/ 460:
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/*!
 * Copyright (c) 2015, Salesforce.com, Inc.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * 3. Neither the name of Salesforce.com nor the names of its contributors may
 * be used to endorse or promote products derived from this software without
 * specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

/*jshint unused:false */

function Store() {
}
exports.y = Store;

// Stores may be synchronous, but are still required to use a
// Continuation-Passing Style API.  The CookieJar itself will expose a "*Sync"
// API that converts from synchronous-callbacks to imperative style.
Store.prototype.synchronous = false;

Store.prototype.findCookie = function(domain, path, key, cb) {
  throw new Error('findCookie is not implemented');
};

Store.prototype.findCookies = function(domain, path, cb) {
  throw new Error('findCookies is not implemented');
};

Store.prototype.putCookie = function(cookie, cb) {
  throw new Error('putCookie is not implemented');
};

Store.prototype.updateCookie = function(oldCookie, newCookie, cb) {
  // recommended default implementation:
  // return this.putCookie(newCookie, cb);
  throw new Error('updateCookie is not implemented');
};

Store.prototype.removeCookie = function(domain, path, key, cb) {
  throw new Error('removeCookie is not implemented');
};

Store.prototype.removeCookies = function(domain, path, cb) {
  throw new Error('removeCookies is not implemented');
};

Store.prototype.removeAllCookies = function(cb) {
  throw new Error('removeAllCookies is not implemented');
}

Store.prototype.getAllCookies = function(cb) {
  throw new Error('getAllCookies is not implemented (therefore jar cannot be serialized)');
};


/***/ }),

/***/ 93199:
/***/ ((module) => {

// generated by genversion
module.exports = '2.5.0'


/***/ }),

/***/ 75636:
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "__extends": () => /* binding */ __extends,
/* harmony export */   "__assign": () => /* binding */ __assign,
/* harmony export */   "__rest": () => /* binding */ __rest,
/* harmony export */   "__decorate": () => /* binding */ __decorate,
/* harmony export */   "__param": () => /* binding */ __param,
/* harmony export */   "__metadata": () => /* binding */ __metadata,
/* harmony export */   "__awaiter": () => /* binding */ __awaiter,
/* harmony export */   "__generator": () => /* binding */ __generator,
/* harmony export */   "__createBinding": () => /* binding */ __createBinding,
/* harmony export */   "__exportStar": () => /* binding */ __exportStar,
/* harmony export */   "__values": () => /* binding */ __values,
/* harmony export */   "__read": () => /* binding */ __read,
/* harmony export */   "__spread": () => /* binding */ __spread,
/* harmony export */   "__spreadArrays": () => /* binding */ __spreadArrays,
/* harmony export */   "__await": () => /* binding */ __await,
/* harmony export */   "__asyncGenerator": () => /* binding */ __asyncGenerator,
/* harmony export */   "__asyncDelegator": () => /* binding */ __asyncDelegator,
/* harmony export */   "__asyncValues": () => /* binding */ __asyncValues,
/* harmony export */   "__makeTemplateObject": () => /* binding */ __makeTemplateObject,
/* harmony export */   "__importStar": () => /* binding */ __importStar,
/* harmony export */   "__importDefault": () => /* binding */ __importDefault,
/* harmony export */   "__classPrivateFieldGet": () => /* binding */ __classPrivateFieldGet,
/* harmony export */   "__classPrivateFieldSet": () => /* binding */ __classPrivateFieldSet
/* harmony export */ });
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise */

var extendStatics = function(d, b) {
    extendStatics = Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
    return extendStatics(d, b);
};

function __extends(d, b) {
    extendStatics(d, b);
    function __() { this.constructor = d; }
    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}

var __assign = function() {
    __assign = Object.assign || function __assign(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
        }
        return t;
    }
    return __assign.apply(this, arguments);
}

function __rest(s, e) {
    var t = {};
    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
        t[p] = s[p];
    if (s != null && typeof Object.getOwnPropertySymbols === "function")
        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
                t[p[i]] = s[p[i]];
        }
    return t;
}

function __decorate(decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    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;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
}

function __param(paramIndex, decorator) {
    return function (target, key) { decorator(target, key, paramIndex); }
}

function __metadata(metadataKey, metadataValue) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}

function __awaiter(thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
}

function __generator(thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (_) try {
            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;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
}

function __createBinding(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}

function __exportStar(m, exports) {
    for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p];
}

function __values(o) {
    var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
    if (m) return m.call(o);
    if (o && typeof o.length === "number") return {
        next: function () {
            if (o && i >= o.length) o = void 0;
            return { value: o && o[i++], done: !o };
        }
    };
    throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}

function __read(o, n) {
    var m = typeof Symbol === "function" && o[Symbol.iterator];
    if (!m) return o;
    var i = m.call(o), r, ar = [], e;
    try {
        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
    }
    catch (error) { e = { error: error }; }
    finally {
        try {
            if (r && !r.done && (m = i["return"])) m.call(i);
        }
        finally { if (e) throw e.error; }
    }
    return ar;
}

function __spread() {
    for (var ar = [], i = 0; i < arguments.length; i++)
        ar = ar.concat(__read(arguments[i]));
    return ar;
}

function __spreadArrays() {
    for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
    for (var r = Array(s), k = 0, i = 0; i < il; i++)
        for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
            r[k] = a[j];
    return r;
};

function __await(v) {
    return this instanceof __await ? (this.v = v, this) : new __await(v);
}

function __asyncGenerator(thisArg, _arguments, generator) {
    if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
    var g = generator.apply(thisArg, _arguments || []), i, q = [];
    return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
    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); }); }; }
    function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
    function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
    function fulfill(value) { resume("next", value); }
    function reject(value) { resume("throw", value); }
    function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}

function __asyncDelegator(o) {
    var i, p;
    return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
    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; }
}

function __asyncValues(o) {
    if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
    var m = o[Symbol.asyncIterator], i;
    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);
    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); }); }; }
    function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
}

function __makeTemplateObject(cooked, raw) {
    if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
    return cooked;
};

function __importStar(mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
    result.default = mod;
    return result;
}

function __importDefault(mod) {
    return (mod && mod.__esModule) ? mod : { default: mod };
}

function __classPrivateFieldGet(receiver, privateMap) {
    if (!privateMap.has(receiver)) {
        throw new TypeError("attempted to get private field on non-instance");
    }
    return privateMap.get(receiver);
}

function __classPrivateFieldSet(receiver, privateMap, value) {
    if (!privateMap.has(receiver)) {
        throw new TypeError("attempted to set private field on non-instance");
    }
    privateMap.set(receiver, value);
    return value;
}


/***/ }),

/***/ 11137:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var net = __webpack_require__(11631)
  , tls = __webpack_require__(4016)
  , http = __webpack_require__(98605)
  , https = __webpack_require__(57211)
  , events = __webpack_require__(28614)
  , assert = __webpack_require__(42357)
  , util = __webpack_require__(31669)
  , Buffer = __webpack_require__(21867).Buffer
  ;

exports.httpOverHttp = httpOverHttp
exports.httpsOverHttp = httpsOverHttp
exports.httpOverHttps = httpOverHttps
exports.httpsOverHttps = httpsOverHttps


function httpOverHttp(options) {
  var agent = new TunnelingAgent(options)
  agent.request = http.request
  return agent
}

function httpsOverHttp(options) {
  var agent = new TunnelingAgent(options)
  agent.request = http.request
  agent.createSocket = createSecureSocket
  agent.defaultPort = 443
  return agent
}

function httpOverHttps(options) {
  var agent = new TunnelingAgent(options)
  agent.request = https.request
  return agent
}

function httpsOverHttps(options) {
  var agent = new TunnelingAgent(options)
  agent.request = https.request
  agent.createSocket = createSecureSocket
  agent.defaultPort = 443
  return agent
}


function TunnelingAgent(options) {
  var self = this
  self.options = options || {}
  self.proxyOptions = self.options.proxy || {}
  self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets
  self.requests = []
  self.sockets = []

  self.on('free', function onFree(socket, host, port) {
    for (var i = 0, len = self.requests.length; i < len; ++i) {
      var pending = self.requests[i]
      if (pending.host === host && pending.port === port) {
        // Detect the request to connect same origin server,
        // reuse the connection.
        self.requests.splice(i, 1)
        pending.request.onSocket(socket)
        return
      }
    }
    socket.destroy()
    self.removeSocket(socket)
  })
}
util.inherits(TunnelingAgent, events.EventEmitter)

TunnelingAgent.prototype.addRequest = function addRequest(req, options) {
  var self = this

   // Legacy API: addRequest(req, host, port, path)
  if (typeof options === 'string') {
    options = {
      host: options,
      port: arguments[2],
      path: arguments[3]
    };
  }

  if (self.sockets.length >= this.maxSockets) {
    // We are over limit so we'll add it to the queue.
    self.requests.push({host: options.host, port: options.port, request: req})
    return
  }

  // If we are under maxSockets create a new one.
  self.createConnection({host: options.host, port: options.port, request: req})
}

TunnelingAgent.prototype.createConnection = function createConnection(pending) {
  var self = this

  self.createSocket(pending, function(socket) {
    socket.on('free', onFree)
    socket.on('close', onCloseOrRemove)
    socket.on('agentRemove', onCloseOrRemove)
    pending.request.onSocket(socket)

    function onFree() {
      self.emit('free', socket, pending.host, pending.port)
    }

    function onCloseOrRemove(err) {
      self.removeSocket(socket)
      socket.removeListener('free', onFree)
      socket.removeListener('close', onCloseOrRemove)
      socket.removeListener('agentRemove', onCloseOrRemove)
    }
  })
}

TunnelingAgent.prototype.createSocket = function createSocket(options, cb) {
  var self = this
  var placeholder = {}
  self.sockets.push(placeholder)

  var connectOptions = mergeOptions({}, self.proxyOptions,
    { method: 'CONNECT'
    , path: options.host + ':' + options.port
    , agent: false
    }
  )
  if (connectOptions.proxyAuth) {
    connectOptions.headers = connectOptions.headers || {}
    connectOptions.headers['Proxy-Authorization'] = 'Basic ' +
        Buffer.from(connectOptions.proxyAuth).toString('base64')
  }

  debug('making CONNECT request')
  var connectReq = self.request(connectOptions)
  connectReq.useChunkedEncodingByDefault = false // for v0.6
  connectReq.once('response', onResponse) // for v0.6
  connectReq.once('upgrade', onUpgrade)   // for v0.6
  connectReq.once('connect', onConnect)   // for v0.7 or later
  connectReq.once('error', onError)
  connectReq.end()

  function onResponse(res) {
    // Very hacky. This is necessary to avoid http-parser leaks.
    res.upgrade = true
  }

  function onUpgrade(res, socket, head) {
    // Hacky.
    process.nextTick(function() {
      onConnect(res, socket, head)
    })
  }

  function onConnect(res, socket, head) {
    connectReq.removeAllListeners()
    socket.removeAllListeners()

    if (res.statusCode === 200) {
      assert.equal(head.length, 0)
      debug('tunneling connection has established')
      self.sockets[self.sockets.indexOf(placeholder)] = socket
      cb(socket)
    } else {
      debug('tunneling socket could not be established, statusCode=%d', res.statusCode)
      var error = new Error('tunneling socket could not be established, ' + 'statusCode=' + res.statusCode)
      error.code = 'ECONNRESET'
      options.request.emit('error', error)
      self.removeSocket(placeholder)
    }
  }

  function onError(cause) {
    connectReq.removeAllListeners()

    debug('tunneling socket could not be established, cause=%s\n', cause.message, cause.stack)
    var error = new Error('tunneling socket could not be established, ' + 'cause=' + cause.message)
    error.code = 'ECONNRESET'
    options.request.emit('error', error)
    self.removeSocket(placeholder)
  }
}

TunnelingAgent.prototype.removeSocket = function removeSocket(socket) {
  var pos = this.sockets.indexOf(socket)
  if (pos === -1) return

  this.sockets.splice(pos, 1)

  var pending = this.requests.shift()
  if (pending) {
    // If we have pending requests and a socket gets closed a new one
    // needs to be created to take over in the pool for the one that closed.
    this.createConnection(pending)
  }
}

function createSecureSocket(options, cb) {
  var self = this
  TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {
    // 0 is dummy port for v0.6
    var secureSocket = tls.connect(0, mergeOptions({}, self.options,
      { servername: options.host
      , socket: socket
      }
    ))
    self.sockets[self.sockets.indexOf(socket)] = secureSocket
    cb(secureSocket)
  })
}


function mergeOptions(target) {
  for (var i = 1, len = arguments.length; i < len; ++i) {
    var overrides = arguments[i]
    if (typeof overrides === 'object') {
      var keys = Object.keys(overrides)
      for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {
        var k = keys[j]
        if (overrides[k] !== undefined) {
          target[k] = overrides[k]
        }
      }
    }
  }
  return target
}


var debug
if (process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG)) {
  debug = function() {
    var args = Array.prototype.slice.call(arguments)
    if (typeof args[0] === 'string') {
      args[0] = 'TUNNEL: ' + args[0]
    } else {
      args.unshift('TUNNEL:')
    }
    console.error.apply(console, args)
  }
} else {
  debug = function() {}
}
exports.debug = debug // for test


/***/ }),

/***/ 68729:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

(function(nacl) {
'use strict';

// Ported in 2014 by Dmitry Chestnykh and Devi Mandiri.
// Public domain.
//
// Implementation derived from TweetNaCl version 20140427.
// See for details: http://tweetnacl.cr.yp.to/

var gf = function(init) {
  var i, r = new Float64Array(16);
  if (init) for (i = 0; i < init.length; i++) r[i] = init[i];
  return r;
};

//  Pluggable, initialized in high-level API below.
var randombytes = function(/* x, n */) { throw new Error('no PRNG'); };

var _0 = new Uint8Array(16);
var _9 = new Uint8Array(32); _9[0] = 9;

var gf0 = gf(),
    gf1 = gf([1]),
    _121665 = gf([0xdb41, 1]),
    D = gf([0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070, 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203]),
    D2 = gf([0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0, 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406]),
    X = gf([0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c, 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169]),
    Y = gf([0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666]),
    I = gf([0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43, 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83]);

function ts64(x, i, h, l) {
  x[i]   = (h >> 24) & 0xff;
  x[i+1] = (h >> 16) & 0xff;
  x[i+2] = (h >>  8) & 0xff;
  x[i+3] = h & 0xff;
  x[i+4] = (l >> 24)  & 0xff;
  x[i+5] = (l >> 16)  & 0xff;
  x[i+6] = (l >>  8)  & 0xff;
  x[i+7] = l & 0xff;
}

function vn(x, xi, y, yi, n) {
  var i,d = 0;
  for (i = 0; i < n; i++) d |= x[xi+i]^y[yi+i];
  return (1 & ((d - 1) >>> 8)) - 1;
}

function crypto_verify_16(x, xi, y, yi) {
  return vn(x,xi,y,yi,16);
}

function crypto_verify_32(x, xi, y, yi) {
  return vn(x,xi,y,yi,32);
}

function core_salsa20(o, p, k, c) {
  var j0  = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,
      j1  = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,
      j2  = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,
      j3  = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,
      j4  = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,
      j5  = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,
      j6  = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,
      j7  = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,
      j8  = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,
      j9  = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,
      j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,
      j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,
      j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,
      j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,
      j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,
      j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;

  var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,
      x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,
      x15 = j15, u;

  for (var i = 0; i < 20; i += 2) {
    u = x0 + x12 | 0;
    x4 ^= u<<7 | u>>>(32-7);
    u = x4 + x0 | 0;
    x8 ^= u<<9 | u>>>(32-9);
    u = x8 + x4 | 0;
    x12 ^= u<<13 | u>>>(32-13);
    u = x12 + x8 | 0;
    x0 ^= u<<18 | u>>>(32-18);

    u = x5 + x1 | 0;
    x9 ^= u<<7 | u>>>(32-7);
    u = x9 + x5 | 0;
    x13 ^= u<<9 | u>>>(32-9);
    u = x13 + x9 | 0;
    x1 ^= u<<13 | u>>>(32-13);
    u = x1 + x13 | 0;
    x5 ^= u<<18 | u>>>(32-18);

    u = x10 + x6 | 0;
    x14 ^= u<<7 | u>>>(32-7);
    u = x14 + x10 | 0;
    x2 ^= u<<9 | u>>>(32-9);
    u = x2 + x14 | 0;
    x6 ^= u<<13 | u>>>(32-13);
    u = x6 + x2 | 0;
    x10 ^= u<<18 | u>>>(32-18);

    u = x15 + x11 | 0;
    x3 ^= u<<7 | u>>>(32-7);
    u = x3 + x15 | 0;
    x7 ^= u<<9 | u>>>(32-9);
    u = x7 + x3 | 0;
    x11 ^= u<<13 | u>>>(32-13);
    u = x11 + x7 | 0;
    x15 ^= u<<18 | u>>>(32-18);

    u = x0 + x3 | 0;
    x1 ^= u<<7 | u>>>(32-7);
    u = x1 + x0 | 0;
    x2 ^= u<<9 | u>>>(32-9);
    u = x2 + x1 | 0;
    x3 ^= u<<13 | u>>>(32-13);
    u = x3 + x2 | 0;
    x0 ^= u<<18 | u>>>(32-18);

    u = x5 + x4 | 0;
    x6 ^= u<<7 | u>>>(32-7);
    u = x6 + x5 | 0;
    x7 ^= u<<9 | u>>>(32-9);
    u = x7 + x6 | 0;
    x4 ^= u<<13 | u>>>(32-13);
    u = x4 + x7 | 0;
    x5 ^= u<<18 | u>>>(32-18);

    u = x10 + x9 | 0;
    x11 ^= u<<7 | u>>>(32-7);
    u = x11 + x10 | 0;
    x8 ^= u<<9 | u>>>(32-9);
    u = x8 + x11 | 0;
    x9 ^= u<<13 | u>>>(32-13);
    u = x9 + x8 | 0;
    x10 ^= u<<18 | u>>>(32-18);

    u = x15 + x14 | 0;
    x12 ^= u<<7 | u>>>(32-7);
    u = x12 + x15 | 0;
    x13 ^= u<<9 | u>>>(32-9);
    u = x13 + x12 | 0;
    x14 ^= u<<13 | u>>>(32-13);
    u = x14 + x13 | 0;
    x15 ^= u<<18 | u>>>(32-18);
  }
   x0 =  x0 +  j0 | 0;
   x1 =  x1 +  j1 | 0;
   x2 =  x2 +  j2 | 0;
   x3 =  x3 +  j3 | 0;
   x4 =  x4 +  j4 | 0;
   x5 =  x5 +  j5 | 0;
   x6 =  x6 +  j6 | 0;
   x7 =  x7 +  j7 | 0;
   x8 =  x8 +  j8 | 0;
   x9 =  x9 +  j9 | 0;
  x10 = x10 + j10 | 0;
  x11 = x11 + j11 | 0;
  x12 = x12 + j12 | 0;
  x13 = x13 + j13 | 0;
  x14 = x14 + j14 | 0;
  x15 = x15 + j15 | 0;

  o[ 0] = x0 >>>  0 & 0xff;
  o[ 1] = x0 >>>  8 & 0xff;
  o[ 2] = x0 >>> 16 & 0xff;
  o[ 3] = x0 >>> 24 & 0xff;

  o[ 4] = x1 >>>  0 & 0xff;
  o[ 5] = x1 >>>  8 & 0xff;
  o[ 6] = x1 >>> 16 & 0xff;
  o[ 7] = x1 >>> 24 & 0xff;

  o[ 8] = x2 >>>  0 & 0xff;
  o[ 9] = x2 >>>  8 & 0xff;
  o[10] = x2 >>> 16 & 0xff;
  o[11] = x2 >>> 24 & 0xff;

  o[12] = x3 >>>  0 & 0xff;
  o[13] = x3 >>>  8 & 0xff;
  o[14] = x3 >>> 16 & 0xff;
  o[15] = x3 >>> 24 & 0xff;

  o[16] = x4 >>>  0 & 0xff;
  o[17] = x4 >>>  8 & 0xff;
  o[18] = x4 >>> 16 & 0xff;
  o[19] = x4 >>> 24 & 0xff;

  o[20] = x5 >>>  0 & 0xff;
  o[21] = x5 >>>  8 & 0xff;
  o[22] = x5 >>> 16 & 0xff;
  o[23] = x5 >>> 24 & 0xff;

  o[24] = x6 >>>  0 & 0xff;
  o[25] = x6 >>>  8 & 0xff;
  o[26] = x6 >>> 16 & 0xff;
  o[27] = x6 >>> 24 & 0xff;

  o[28] = x7 >>>  0 & 0xff;
  o[29] = x7 >>>  8 & 0xff;
  o[30] = x7 >>> 16 & 0xff;
  o[31] = x7 >>> 24 & 0xff;

  o[32] = x8 >>>  0 & 0xff;
  o[33] = x8 >>>  8 & 0xff;
  o[34] = x8 >>> 16 & 0xff;
  o[35] = x8 >>> 24 & 0xff;

  o[36] = x9 >>>  0 & 0xff;
  o[37] = x9 >>>  8 & 0xff;
  o[38] = x9 >>> 16 & 0xff;
  o[39] = x9 >>> 24 & 0xff;

  o[40] = x10 >>>  0 & 0xff;
  o[41] = x10 >>>  8 & 0xff;
  o[42] = x10 >>> 16 & 0xff;
  o[43] = x10 >>> 24 & 0xff;

  o[44] = x11 >>>  0 & 0xff;
  o[45] = x11 >>>  8 & 0xff;
  o[46] = x11 >>> 16 & 0xff;
  o[47] = x11 >>> 24 & 0xff;

  o[48] = x12 >>>  0 & 0xff;
  o[49] = x12 >>>  8 & 0xff;
  o[50] = x12 >>> 16 & 0xff;
  o[51] = x12 >>> 24 & 0xff;

  o[52] = x13 >>>  0 & 0xff;
  o[53] = x13 >>>  8 & 0xff;
  o[54] = x13 >>> 16 & 0xff;
  o[55] = x13 >>> 24 & 0xff;

  o[56] = x14 >>>  0 & 0xff;
  o[57] = x14 >>>  8 & 0xff;
  o[58] = x14 >>> 16 & 0xff;
  o[59] = x14 >>> 24 & 0xff;

  o[60] = x15 >>>  0 & 0xff;
  o[61] = x15 >>>  8 & 0xff;
  o[62] = x15 >>> 16 & 0xff;
  o[63] = x15 >>> 24 & 0xff;
}

function core_hsalsa20(o,p,k,c) {
  var j0  = c[ 0] & 0xff | (c[ 1] & 0xff)<<8 | (c[ 2] & 0xff)<<16 | (c[ 3] & 0xff)<<24,
      j1  = k[ 0] & 0xff | (k[ 1] & 0xff)<<8 | (k[ 2] & 0xff)<<16 | (k[ 3] & 0xff)<<24,
      j2  = k[ 4] & 0xff | (k[ 5] & 0xff)<<8 | (k[ 6] & 0xff)<<16 | (k[ 7] & 0xff)<<24,
      j3  = k[ 8] & 0xff | (k[ 9] & 0xff)<<8 | (k[10] & 0xff)<<16 | (k[11] & 0xff)<<24,
      j4  = k[12] & 0xff | (k[13] & 0xff)<<8 | (k[14] & 0xff)<<16 | (k[15] & 0xff)<<24,
      j5  = c[ 4] & 0xff | (c[ 5] & 0xff)<<8 | (c[ 6] & 0xff)<<16 | (c[ 7] & 0xff)<<24,
      j6  = p[ 0] & 0xff | (p[ 1] & 0xff)<<8 | (p[ 2] & 0xff)<<16 | (p[ 3] & 0xff)<<24,
      j7  = p[ 4] & 0xff | (p[ 5] & 0xff)<<8 | (p[ 6] & 0xff)<<16 | (p[ 7] & 0xff)<<24,
      j8  = p[ 8] & 0xff | (p[ 9] & 0xff)<<8 | (p[10] & 0xff)<<16 | (p[11] & 0xff)<<24,
      j9  = p[12] & 0xff | (p[13] & 0xff)<<8 | (p[14] & 0xff)<<16 | (p[15] & 0xff)<<24,
      j10 = c[ 8] & 0xff | (c[ 9] & 0xff)<<8 | (c[10] & 0xff)<<16 | (c[11] & 0xff)<<24,
      j11 = k[16] & 0xff | (k[17] & 0xff)<<8 | (k[18] & 0xff)<<16 | (k[19] & 0xff)<<24,
      j12 = k[20] & 0xff | (k[21] & 0xff)<<8 | (k[22] & 0xff)<<16 | (k[23] & 0xff)<<24,
      j13 = k[24] & 0xff | (k[25] & 0xff)<<8 | (k[26] & 0xff)<<16 | (k[27] & 0xff)<<24,
      j14 = k[28] & 0xff | (k[29] & 0xff)<<8 | (k[30] & 0xff)<<16 | (k[31] & 0xff)<<24,
      j15 = c[12] & 0xff | (c[13] & 0xff)<<8 | (c[14] & 0xff)<<16 | (c[15] & 0xff)<<24;

  var x0 = j0, x1 = j1, x2 = j2, x3 = j3, x4 = j4, x5 = j5, x6 = j6, x7 = j7,
      x8 = j8, x9 = j9, x10 = j10, x11 = j11, x12 = j12, x13 = j13, x14 = j14,
      x15 = j15, u;

  for (var i = 0; i < 20; i += 2) {
    u = x0 + x12 | 0;
    x4 ^= u<<7 | u>>>(32-7);
    u = x4 + x0 | 0;
    x8 ^= u<<9 | u>>>(32-9);
    u = x8 + x4 | 0;
    x12 ^= u<<13 | u>>>(32-13);
    u = x12 + x8 | 0;
    x0 ^= u<<18 | u>>>(32-18);

    u = x5 + x1 | 0;
    x9 ^= u<<7 | u>>>(32-7);
    u = x9 + x5 | 0;
    x13 ^= u<<9 | u>>>(32-9);
    u = x13 + x9 | 0;
    x1 ^= u<<13 | u>>>(32-13);
    u = x1 + x13 | 0;
    x5 ^= u<<18 | u>>>(32-18);

    u = x10 + x6 | 0;
    x14 ^= u<<7 | u>>>(32-7);
    u = x14 + x10 | 0;
    x2 ^= u<<9 | u>>>(32-9);
    u = x2 + x14 | 0;
    x6 ^= u<<13 | u>>>(32-13);
    u = x6 + x2 | 0;
    x10 ^= u<<18 | u>>>(32-18);

    u = x15 + x11 | 0;
    x3 ^= u<<7 | u>>>(32-7);
    u = x3 + x15 | 0;
    x7 ^= u<<9 | u>>>(32-9);
    u = x7 + x3 | 0;
    x11 ^= u<<13 | u>>>(32-13);
    u = x11 + x7 | 0;
    x15 ^= u<<18 | u>>>(32-18);

    u = x0 + x3 | 0;
    x1 ^= u<<7 | u>>>(32-7);
    u = x1 + x0 | 0;
    x2 ^= u<<9 | u>>>(32-9);
    u = x2 + x1 | 0;
    x3 ^= u<<13 | u>>>(32-13);
    u = x3 + x2 | 0;
    x0 ^= u<<18 | u>>>(32-18);

    u = x5 + x4 | 0;
    x6 ^= u<<7 | u>>>(32-7);
    u = x6 + x5 | 0;
    x7 ^= u<<9 | u>>>(32-9);
    u = x7 + x6 | 0;
    x4 ^= u<<13 | u>>>(32-13);
    u = x4 + x7 | 0;
    x5 ^= u<<18 | u>>>(32-18);

    u = x10 + x9 | 0;
    x11 ^= u<<7 | u>>>(32-7);
    u = x11 + x10 | 0;
    x8 ^= u<<9 | u>>>(32-9);
    u = x8 + x11 | 0;
    x9 ^= u<<13 | u>>>(32-13);
    u = x9 + x8 | 0;
    x10 ^= u<<18 | u>>>(32-18);

    u = x15 + x14 | 0;
    x12 ^= u<<7 | u>>>(32-7);
    u = x12 + x15 | 0;
    x13 ^= u<<9 | u>>>(32-9);
    u = x13 + x12 | 0;
    x14 ^= u<<13 | u>>>(32-13);
    u = x14 + x13 | 0;
    x15 ^= u<<18 | u>>>(32-18);
  }

  o[ 0] = x0 >>>  0 & 0xff;
  o[ 1] = x0 >>>  8 & 0xff;
  o[ 2] = x0 >>> 16 & 0xff;
  o[ 3] = x0 >>> 24 & 0xff;

  o[ 4] = x5 >>>  0 & 0xff;
  o[ 5] = x5 >>>  8 & 0xff;
  o[ 6] = x5 >>> 16 & 0xff;
  o[ 7] = x5 >>> 24 & 0xff;

  o[ 8] = x10 >>>  0 & 0xff;
  o[ 9] = x10 >>>  8 & 0xff;
  o[10] = x10 >>> 16 & 0xff;
  o[11] = x10 >>> 24 & 0xff;

  o[12] = x15 >>>  0 & 0xff;
  o[13] = x15 >>>  8 & 0xff;
  o[14] = x15 >>> 16 & 0xff;
  o[15] = x15 >>> 24 & 0xff;

  o[16] = x6 >>>  0 & 0xff;
  o[17] = x6 >>>  8 & 0xff;
  o[18] = x6 >>> 16 & 0xff;
  o[19] = x6 >>> 24 & 0xff;

  o[20] = x7 >>>  0 & 0xff;
  o[21] = x7 >>>  8 & 0xff;
  o[22] = x7 >>> 16 & 0xff;
  o[23] = x7 >>> 24 & 0xff;

  o[24] = x8 >>>  0 & 0xff;
  o[25] = x8 >>>  8 & 0xff;
  o[26] = x8 >>> 16 & 0xff;
  o[27] = x8 >>> 24 & 0xff;

  o[28] = x9 >>>  0 & 0xff;
  o[29] = x9 >>>  8 & 0xff;
  o[30] = x9 >>> 16 & 0xff;
  o[31] = x9 >>> 24 & 0xff;
}

function crypto_core_salsa20(out,inp,k,c) {
  core_salsa20(out,inp,k,c);
}

function crypto_core_hsalsa20(out,inp,k,c) {
  core_hsalsa20(out,inp,k,c);
}

var sigma = new Uint8Array([101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107]);
            // "expand 32-byte k"

function crypto_stream_salsa20_xor(c,cpos,m,mpos,b,n,k) {
  var z = new Uint8Array(16), x = new Uint8Array(64);
  var u, i;
  for (i = 0; i < 16; i++) z[i] = 0;
  for (i = 0; i < 8; i++) z[i] = n[i];
  while (b >= 64) {
    crypto_core_salsa20(x,z,k,sigma);
    for (i = 0; i < 64; i++) c[cpos+i] = m[mpos+i] ^ x[i];
    u = 1;
    for (i = 8; i < 16; i++) {
      u = u + (z[i] & 0xff) | 0;
      z[i] = u & 0xff;
      u >>>= 8;
    }
    b -= 64;
    cpos += 64;
    mpos += 64;
  }
  if (b > 0) {
    crypto_core_salsa20(x,z,k,sigma);
    for (i = 0; i < b; i++) c[cpos+i] = m[mpos+i] ^ x[i];
  }
  return 0;
}

function crypto_stream_salsa20(c,cpos,b,n,k) {
  var z = new Uint8Array(16), x = new Uint8Array(64);
  var u, i;
  for (i = 0; i < 16; i++) z[i] = 0;
  for (i = 0; i < 8; i++) z[i] = n[i];
  while (b >= 64) {
    crypto_core_salsa20(x,z,k,sigma);
    for (i = 0; i < 64; i++) c[cpos+i] = x[i];
    u = 1;
    for (i = 8; i < 16; i++) {
      u = u + (z[i] & 0xff) | 0;
      z[i] = u & 0xff;
      u >>>= 8;
    }
    b -= 64;
    cpos += 64;
  }
  if (b > 0) {
    crypto_core_salsa20(x,z,k,sigma);
    for (i = 0; i < b; i++) c[cpos+i] = x[i];
  }
  return 0;
}

function crypto_stream(c,cpos,d,n,k) {
  var s = new Uint8Array(32);
  crypto_core_hsalsa20(s,n,k,sigma);
  var sn = new Uint8Array(8);
  for (var i = 0; i < 8; i++) sn[i] = n[i+16];
  return crypto_stream_salsa20(c,cpos,d,sn,s);
}

function crypto_stream_xor(c,cpos,m,mpos,d,n,k) {
  var s = new Uint8Array(32);
  crypto_core_hsalsa20(s,n,k,sigma);
  var sn = new Uint8Array(8);
  for (var i = 0; i < 8; i++) sn[i] = n[i+16];
  return crypto_stream_salsa20_xor(c,cpos,m,mpos,d,sn,s);
}

/*
* Port of Andrew Moon's Poly1305-donna-16. Public domain.
* https://github.com/floodyberry/poly1305-donna
*/

var poly1305 = function(key) {
  this.buffer = new Uint8Array(16);
  this.r = new Uint16Array(10);
  this.h = new Uint16Array(10);
  this.pad = new Uint16Array(8);
  this.leftover = 0;
  this.fin = 0;

  var t0, t1, t2, t3, t4, t5, t6, t7;

  t0 = key[ 0] & 0xff | (key[ 1] & 0xff) << 8; this.r[0] = ( t0                     ) & 0x1fff;
  t1 = key[ 2] & 0xff | (key[ 3] & 0xff) << 8; this.r[1] = ((t0 >>> 13) | (t1 <<  3)) & 0x1fff;
  t2 = key[ 4] & 0xff | (key[ 5] & 0xff) << 8; this.r[2] = ((t1 >>> 10) | (t2 <<  6)) & 0x1f03;
  t3 = key[ 6] & 0xff | (key[ 7] & 0xff) << 8; this.r[3] = ((t2 >>>  7) | (t3 <<  9)) & 0x1fff;
  t4 = key[ 8] & 0xff | (key[ 9] & 0xff) << 8; this.r[4] = ((t3 >>>  4) | (t4 << 12)) & 0x00ff;
  this.r[5] = ((t4 >>>  1)) & 0x1ffe;
  t5 = key[10] & 0xff | (key[11] & 0xff) << 8; this.r[6] = ((t4 >>> 14) | (t5 <<  2)) & 0x1fff;
  t6 = key[12] & 0xff | (key[13] & 0xff) << 8; this.r[7] = ((t5 >>> 11) | (t6 <<  5)) & 0x1f81;
  t7 = key[14] & 0xff | (key[15] & 0xff) << 8; this.r[8] = ((t6 >>>  8) | (t7 <<  8)) & 0x1fff;
  this.r[9] = ((t7 >>>  5)) & 0x007f;

  this.pad[0] = key[16] & 0xff | (key[17] & 0xff) << 8;
  this.pad[1] = key[18] & 0xff | (key[19] & 0xff) << 8;
  this.pad[2] = key[20] & 0xff | (key[21] & 0xff) << 8;
  this.pad[3] = key[22] & 0xff | (key[23] & 0xff) << 8;
  this.pad[4] = key[24] & 0xff | (key[25] & 0xff) << 8;
  this.pad[5] = key[26] & 0xff | (key[27] & 0xff) << 8;
  this.pad[6] = key[28] & 0xff | (key[29] & 0xff) << 8;
  this.pad[7] = key[30] & 0xff | (key[31] & 0xff) << 8;
};

poly1305.prototype.blocks = function(m, mpos, bytes) {
  var hibit = this.fin ? 0 : (1 << 11);
  var t0, t1, t2, t3, t4, t5, t6, t7, c;
  var d0, d1, d2, d3, d4, d5, d6, d7, d8, d9;

  var h0 = this.h[0],
      h1 = this.h[1],
      h2 = this.h[2],
      h3 = this.h[3],
      h4 = this.h[4],
      h5 = this.h[5],
      h6 = this.h[6],
      h7 = this.h[7],
      h8 = this.h[8],
      h9 = this.h[9];

  var r0 = this.r[0],
      r1 = this.r[1],
      r2 = this.r[2],
      r3 = this.r[3],
      r4 = this.r[4],
      r5 = this.r[5],
      r6 = this.r[6],
      r7 = this.r[7],
      r8 = this.r[8],
      r9 = this.r[9];

  while (bytes >= 16) {
    t0 = m[mpos+ 0] & 0xff | (m[mpos+ 1] & 0xff) << 8; h0 += ( t0                     ) & 0x1fff;
    t1 = m[mpos+ 2] & 0xff | (m[mpos+ 3] & 0xff) << 8; h1 += ((t0 >>> 13) | (t1 <<  3)) & 0x1fff;
    t2 = m[mpos+ 4] & 0xff | (m[mpos+ 5] & 0xff) << 8; h2 += ((t1 >>> 10) | (t2 <<  6)) & 0x1fff;
    t3 = m[mpos+ 6] & 0xff | (m[mpos+ 7] & 0xff) << 8; h3 += ((t2 >>>  7) | (t3 <<  9)) & 0x1fff;
    t4 = m[mpos+ 8] & 0xff | (m[mpos+ 9] & 0xff) << 8; h4 += ((t3 >>>  4) | (t4 << 12)) & 0x1fff;
    h5 += ((t4 >>>  1)) & 0x1fff;
    t5 = m[mpos+10] & 0xff | (m[mpos+11] & 0xff) << 8; h6 += ((t4 >>> 14) | (t5 <<  2)) & 0x1fff;
    t6 = m[mpos+12] & 0xff | (m[mpos+13] & 0xff) << 8; h7 += ((t5 >>> 11) | (t6 <<  5)) & 0x1fff;
    t7 = m[mpos+14] & 0xff | (m[mpos+15] & 0xff) << 8; h8 += ((t6 >>>  8) | (t7 <<  8)) & 0x1fff;
    h9 += ((t7 >>> 5)) | hibit;

    c = 0;

    d0 = c;
    d0 += h0 * r0;
    d0 += h1 * (5 * r9);
    d0 += h2 * (5 * r8);
    d0 += h3 * (5 * r7);
    d0 += h4 * (5 * r6);
    c = (d0 >>> 13); d0 &= 0x1fff;
    d0 += h5 * (5 * r5);
    d0 += h6 * (5 * r4);
    d0 += h7 * (5 * r3);
    d0 += h8 * (5 * r2);
    d0 += h9 * (5 * r1);
    c += (d0 >>> 13); d0 &= 0x1fff;

    d1 = c;
    d1 += h0 * r1;
    d1 += h1 * r0;
    d1 += h2 * (5 * r9);
    d1 += h3 * (5 * r8);
    d1 += h4 * (5 * r7);
    c = (d1 >>> 13); d1 &= 0x1fff;
    d1 += h5 * (5 * r6);
    d1 += h6 * (5 * r5);
    d1 += h7 * (5 * r4);
    d1 += h8 * (5 * r3);
    d1 += h9 * (5 * r2);
    c += (d1 >>> 13); d1 &= 0x1fff;

    d2 = c;
    d2 += h0 * r2;
    d2 += h1 * r1;
    d2 += h2 * r0;
    d2 += h3 * (5 * r9);
    d2 += h4 * (5 * r8);
    c = (d2 >>> 13); d2 &= 0x1fff;
    d2 += h5 * (5 * r7);
    d2 += h6 * (5 * r6);
    d2 += h7 * (5 * r5);
    d2 += h8 * (5 * r4);
    d2 += h9 * (5 * r3);
    c += (d2 >>> 13); d2 &= 0x1fff;

    d3 = c;
    d3 += h0 * r3;
    d3 += h1 * r2;
    d3 += h2 * r1;
    d3 += h3 * r0;
    d3 += h4 * (5 * r9);
    c = (d3 >>> 13); d3 &= 0x1fff;
    d3 += h5 * (5 * r8);
    d3 += h6 * (5 * r7);
    d3 += h7 * (5 * r6);
    d3 += h8 * (5 * r5);
    d3 += h9 * (5 * r4);
    c += (d3 >>> 13); d3 &= 0x1fff;

    d4 = c;
    d4 += h0 * r4;
    d4 += h1 * r3;
    d4 += h2 * r2;
    d4 += h3 * r1;
    d4 += h4 * r0;
    c = (d4 >>> 13); d4 &= 0x1fff;
    d4 += h5 * (5 * r9);
    d4 += h6 * (5 * r8);
    d4 += h7 * (5 * r7);
    d4 += h8 * (5 * r6);
    d4 += h9 * (5 * r5);
    c += (d4 >>> 13); d4 &= 0x1fff;

    d5 = c;
    d5 += h0 * r5;
    d5 += h1 * r4;
    d5 += h2 * r3;
    d5 += h3 * r2;
    d5 += h4 * r1;
    c = (d5 >>> 13); d5 &= 0x1fff;
    d5 += h5 * r0;
    d5 += h6 * (5 * r9);
    d5 += h7 * (5 * r8);
    d5 += h8 * (5 * r7);
    d5 += h9 * (5 * r6);
    c += (d5 >>> 13); d5 &= 0x1fff;

    d6 = c;
    d6 += h0 * r6;
    d6 += h1 * r5;
    d6 += h2 * r4;
    d6 += h3 * r3;
    d6 += h4 * r2;
    c = (d6 >>> 13); d6 &= 0x1fff;
    d6 += h5 * r1;
    d6 += h6 * r0;
    d6 += h7 * (5 * r9);
    d6 += h8 * (5 * r8);
    d6 += h9 * (5 * r7);
    c += (d6 >>> 13); d6 &= 0x1fff;

    d7 = c;
    d7 += h0 * r7;
    d7 += h1 * r6;
    d7 += h2 * r5;
    d7 += h3 * r4;
    d7 += h4 * r3;
    c = (d7 >>> 13); d7 &= 0x1fff;
    d7 += h5 * r2;
    d7 += h6 * r1;
    d7 += h7 * r0;
    d7 += h8 * (5 * r9);
    d7 += h9 * (5 * r8);
    c += (d7 >>> 13); d7 &= 0x1fff;

    d8 = c;
    d8 += h0 * r8;
    d8 += h1 * r7;
    d8 += h2 * r6;
    d8 += h3 * r5;
    d8 += h4 * r4;
    c = (d8 >>> 13); d8 &= 0x1fff;
    d8 += h5 * r3;
    d8 += h6 * r2;
    d8 += h7 * r1;
    d8 += h8 * r0;
    d8 += h9 * (5 * r9);
    c += (d8 >>> 13); d8 &= 0x1fff;

    d9 = c;
    d9 += h0 * r9;
    d9 += h1 * r8;
    d9 += h2 * r7;
    d9 += h3 * r6;
    d9 += h4 * r5;
    c = (d9 >>> 13); d9 &= 0x1fff;
    d9 += h5 * r4;
    d9 += h6 * r3;
    d9 += h7 * r2;
    d9 += h8 * r1;
    d9 += h9 * r0;
    c += (d9 >>> 13); d9 &= 0x1fff;

    c = (((c << 2) + c)) | 0;
    c = (c + d0) | 0;
    d0 = c & 0x1fff;
    c = (c >>> 13);
    d1 += c;

    h0 = d0;
    h1 = d1;
    h2 = d2;
    h3 = d3;
    h4 = d4;
    h5 = d5;
    h6 = d6;
    h7 = d7;
    h8 = d8;
    h9 = d9;

    mpos += 16;
    bytes -= 16;
  }
  this.h[0] = h0;
  this.h[1] = h1;
  this.h[2] = h2;
  this.h[3] = h3;
  this.h[4] = h4;
  this.h[5] = h5;
  this.h[6] = h6;
  this.h[7] = h7;
  this.h[8] = h8;
  this.h[9] = h9;
};

poly1305.prototype.finish = function(mac, macpos) {
  var g = new Uint16Array(10);
  var c, mask, f, i;

  if (this.leftover) {
    i = this.leftover;
    this.buffer[i++] = 1;
    for (; i < 16; i++) this.buffer[i] = 0;
    this.fin = 1;
    this.blocks(this.buffer, 0, 16);
  }

  c = this.h[1] >>> 13;
  this.h[1] &= 0x1fff;
  for (i = 2; i < 10; i++) {
    this.h[i] += c;
    c = this.h[i] >>> 13;
    this.h[i] &= 0x1fff;
  }
  this.h[0] += (c * 5);
  c = this.h[0] >>> 13;
  this.h[0] &= 0x1fff;
  this.h[1] += c;
  c = this.h[1] >>> 13;
  this.h[1] &= 0x1fff;
  this.h[2] += c;

  g[0] = this.h[0] + 5;
  c = g[0] >>> 13;
  g[0] &= 0x1fff;
  for (i = 1; i < 10; i++) {
    g[i] = this.h[i] + c;
    c = g[i] >>> 13;
    g[i] &= 0x1fff;
  }
  g[9] -= (1 << 13);

  mask = (c ^ 1) - 1;
  for (i = 0; i < 10; i++) g[i] &= mask;
  mask = ~mask;
  for (i = 0; i < 10; i++) this.h[i] = (this.h[i] & mask) | g[i];

  this.h[0] = ((this.h[0]       ) | (this.h[1] << 13)                    ) & 0xffff;
  this.h[1] = ((this.h[1] >>>  3) | (this.h[2] << 10)                    ) & 0xffff;
  this.h[2] = ((this.h[2] >>>  6) | (this.h[3] <<  7)                    ) & 0xffff;
  this.h[3] = ((this.h[3] >>>  9) | (this.h[4] <<  4)                    ) & 0xffff;
  this.h[4] = ((this.h[4] >>> 12) | (this.h[5] <<  1) | (this.h[6] << 14)) & 0xffff;
  this.h[5] = ((this.h[6] >>>  2) | (this.h[7] << 11)                    ) & 0xffff;
  this.h[6] = ((this.h[7] >>>  5) | (this.h[8] <<  8)                    ) & 0xffff;
  this.h[7] = ((this.h[8] >>>  8) | (this.h[9] <<  5)                    ) & 0xffff;

  f = this.h[0] + this.pad[0];
  this.h[0] = f & 0xffff;
  for (i = 1; i < 8; i++) {
    f = (((this.h[i] + this.pad[i]) | 0) + (f >>> 16)) | 0;
    this.h[i] = f & 0xffff;
  }

  mac[macpos+ 0] = (this.h[0] >>> 0) & 0xff;
  mac[macpos+ 1] = (this.h[0] >>> 8) & 0xff;
  mac[macpos+ 2] = (this.h[1] >>> 0) & 0xff;
  mac[macpos+ 3] = (this.h[1] >>> 8) & 0xff;
  mac[macpos+ 4] = (this.h[2] >>> 0) & 0xff;
  mac[macpos+ 5] = (this.h[2] >>> 8) & 0xff;
  mac[macpos+ 6] = (this.h[3] >>> 0) & 0xff;
  mac[macpos+ 7] = (this.h[3] >>> 8) & 0xff;
  mac[macpos+ 8] = (this.h[4] >>> 0) & 0xff;
  mac[macpos+ 9] = (this.h[4] >>> 8) & 0xff;
  mac[macpos+10] = (this.h[5] >>> 0) & 0xff;
  mac[macpos+11] = (this.h[5] >>> 8) & 0xff;
  mac[macpos+12] = (this.h[6] >>> 0) & 0xff;
  mac[macpos+13] = (this.h[6] >>> 8) & 0xff;
  mac[macpos+14] = (this.h[7] >>> 0) & 0xff;
  mac[macpos+15] = (this.h[7] >>> 8) & 0xff;
};

poly1305.prototype.update = function(m, mpos, bytes) {
  var i, want;

  if (this.leftover) {
    want = (16 - this.leftover);
    if (want > bytes)
      want = bytes;
    for (i = 0; i < want; i++)
      this.buffer[this.leftover + i] = m[mpos+i];
    bytes -= want;
    mpos += want;
    this.leftover += want;
    if (this.leftover < 16)
      return;
    this.blocks(this.buffer, 0, 16);
    this.leftover = 0;
  }

  if (bytes >= 16) {
    want = bytes - (bytes % 16);
    this.blocks(m, mpos, want);
    mpos += want;
    bytes -= want;
  }

  if (bytes) {
    for (i = 0; i < bytes; i++)
      this.buffer[this.leftover + i] = m[mpos+i];
    this.leftover += bytes;
  }
};

function crypto_onetimeauth(out, outpos, m, mpos, n, k) {
  var s = new poly1305(k);
  s.update(m, mpos, n);
  s.finish(out, outpos);
  return 0;
}

function crypto_onetimeauth_verify(h, hpos, m, mpos, n, k) {
  var x = new Uint8Array(16);
  crypto_onetimeauth(x,0,m,mpos,n,k);
  return crypto_verify_16(h,hpos,x,0);
}

function crypto_secretbox(c,m,d,n,k) {
  var i;
  if (d < 32) return -1;
  crypto_stream_xor(c,0,m,0,d,n,k);
  crypto_onetimeauth(c, 16, c, 32, d - 32, c);
  for (i = 0; i < 16; i++) c[i] = 0;
  return 0;
}

function crypto_secretbox_open(m,c,d,n,k) {
  var i;
  var x = new Uint8Array(32);
  if (d < 32) return -1;
  crypto_stream(x,0,32,n,k);
  if (crypto_onetimeauth_verify(c, 16,c, 32,d - 32,x) !== 0) return -1;
  crypto_stream_xor(m,0,c,0,d,n,k);
  for (i = 0; i < 32; i++) m[i] = 0;
  return 0;
}

function set25519(r, a) {
  var i;
  for (i = 0; i < 16; i++) r[i] = a[i]|0;
}

function car25519(o) {
  var i, v, c = 1;
  for (i = 0; i < 16; i++) {
    v = o[i] + c + 65535;
    c = Math.floor(v / 65536);
    o[i] = v - c * 65536;
  }
  o[0] += c-1 + 37 * (c-1);
}

function sel25519(p, q, b) {
  var t, c = ~(b-1);
  for (var i = 0; i < 16; i++) {
    t = c & (p[i] ^ q[i]);
    p[i] ^= t;
    q[i] ^= t;
  }
}

function pack25519(o, n) {
  var i, j, b;
  var m = gf(), t = gf();
  for (i = 0; i < 16; i++) t[i] = n[i];
  car25519(t);
  car25519(t);
  car25519(t);
  for (j = 0; j < 2; j++) {
    m[0] = t[0] - 0xffed;
    for (i = 1; i < 15; i++) {
      m[i] = t[i] - 0xffff - ((m[i-1]>>16) & 1);
      m[i-1] &= 0xffff;
    }
    m[15] = t[15] - 0x7fff - ((m[14]>>16) & 1);
    b = (m[15]>>16) & 1;
    m[14] &= 0xffff;
    sel25519(t, m, 1-b);
  }
  for (i = 0; i < 16; i++) {
    o[2*i] = t[i] & 0xff;
    o[2*i+1] = t[i]>>8;
  }
}

function neq25519(a, b) {
  var c = new Uint8Array(32), d = new Uint8Array(32);
  pack25519(c, a);
  pack25519(d, b);
  return crypto_verify_32(c, 0, d, 0);
}

function par25519(a) {
  var d = new Uint8Array(32);
  pack25519(d, a);
  return d[0] & 1;
}

function unpack25519(o, n) {
  var i;
  for (i = 0; i < 16; i++) o[i] = n[2*i] + (n[2*i+1] << 8);
  o[15] &= 0x7fff;
}

function A(o, a, b) {
  for (var i = 0; i < 16; i++) o[i] = a[i] + b[i];
}

function Z(o, a, b) {
  for (var i = 0; i < 16; i++) o[i] = a[i] - b[i];
}

function M(o, a, b) {
  var v, c,
     t0 = 0,  t1 = 0,  t2 = 0,  t3 = 0,  t4 = 0,  t5 = 0,  t6 = 0,  t7 = 0,
     t8 = 0,  t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,
    t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,
    t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,
    b0 = b[0],
    b1 = b[1],
    b2 = b[2],
    b3 = b[3],
    b4 = b[4],
    b5 = b[5],
    b6 = b[6],
    b7 = b[7],
    b8 = b[8],
    b9 = b[9],
    b10 = b[10],
    b11 = b[11],
    b12 = b[12],
    b13 = b[13],
    b14 = b[14],
    b15 = b[15];

  v = a[0];
  t0 += v * b0;
  t1 += v * b1;
  t2 += v * b2;
  t3 += v * b3;
  t4 += v * b4;
  t5 += v * b5;
  t6 += v * b6;
  t7 += v * b7;
  t8 += v * b8;
  t9 += v * b9;
  t10 += v * b10;
  t11 += v * b11;
  t12 += v * b12;
  t13 += v * b13;
  t14 += v * b14;
  t15 += v * b15;
  v = a[1];
  t1 += v * b0;
  t2 += v * b1;
  t3 += v * b2;
  t4 += v * b3;
  t5 += v * b4;
  t6 += v * b5;
  t7 += v * b6;
  t8 += v * b7;
  t9 += v * b8;
  t10 += v * b9;
  t11 += v * b10;
  t12 += v * b11;
  t13 += v * b12;
  t14 += v * b13;
  t15 += v * b14;
  t16 += v * b15;
  v = a[2];
  t2 += v * b0;
  t3 += v * b1;
  t4 += v * b2;
  t5 += v * b3;
  t6 += v * b4;
  t7 += v * b5;
  t8 += v * b6;
  t9 += v * b7;
  t10 += v * b8;
  t11 += v * b9;
  t12 += v * b10;
  t13 += v * b11;
  t14 += v * b12;
  t15 += v * b13;
  t16 += v * b14;
  t17 += v * b15;
  v = a[3];
  t3 += v * b0;
  t4 += v * b1;
  t5 += v * b2;
  t6 += v * b3;
  t7 += v * b4;
  t8 += v * b5;
  t9 += v * b6;
  t10 += v * b7;
  t11 += v * b8;
  t12 += v * b9;
  t13 += v * b10;
  t14 += v * b11;
  t15 += v * b12;
  t16 += v * b13;
  t17 += v * b14;
  t18 += v * b15;
  v = a[4];
  t4 += v * b0;
  t5 += v * b1;
  t6 += v * b2;
  t7 += v * b3;
  t8 += v * b4;
  t9 += v * b5;
  t10 += v * b6;
  t11 += v * b7;
  t12 += v * b8;
  t13 += v * b9;
  t14 += v * b10;
  t15 += v * b11;
  t16 += v * b12;
  t17 += v * b13;
  t18 += v * b14;
  t19 += v * b15;
  v = a[5];
  t5 += v * b0;
  t6 += v * b1;
  t7 += v * b2;
  t8 += v * b3;
  t9 += v * b4;
  t10 += v * b5;
  t11 += v * b6;
  t12 += v * b7;
  t13 += v * b8;
  t14 += v * b9;
  t15 += v * b10;
  t16 += v * b11;
  t17 += v * b12;
  t18 += v * b13;
  t19 += v * b14;
  t20 += v * b15;
  v = a[6];
  t6 += v * b0;
  t7 += v * b1;
  t8 += v * b2;
  t9 += v * b3;
  t10 += v * b4;
  t11 += v * b5;
  t12 += v * b6;
  t13 += v * b7;
  t14 += v * b8;
  t15 += v * b9;
  t16 += v * b10;
  t17 += v * b11;
  t18 += v * b12;
  t19 += v * b13;
  t20 += v * b14;
  t21 += v * b15;
  v = a[7];
  t7 += v * b0;
  t8 += v * b1;
  t9 += v * b2;
  t10 += v * b3;
  t11 += v * b4;
  t12 += v * b5;
  t13 += v * b6;
  t14 += v * b7;
  t15 += v * b8;
  t16 += v * b9;
  t17 += v * b10;
  t18 += v * b11;
  t19 += v * b12;
  t20 += v * b13;
  t21 += v * b14;
  t22 += v * b15;
  v = a[8];
  t8 += v * b0;
  t9 += v * b1;
  t10 += v * b2;
  t11 += v * b3;
  t12 += v * b4;
  t13 += v * b5;
  t14 += v * b6;
  t15 += v * b7;
  t16 += v * b8;
  t17 += v * b9;
  t18 += v * b10;
  t19 += v * b11;
  t20 += v * b12;
  t21 += v * b13;
  t22 += v * b14;
  t23 += v * b15;
  v = a[9];
  t9 += v * b0;
  t10 += v * b1;
  t11 += v * b2;
  t12 += v * b3;
  t13 += v * b4;
  t14 += v * b5;
  t15 += v * b6;
  t16 += v * b7;
  t17 += v * b8;
  t18 += v * b9;
  t19 += v * b10;
  t20 += v * b11;
  t21 += v * b12;
  t22 += v * b13;
  t23 += v * b14;
  t24 += v * b15;
  v = a[10];
  t10 += v * b0;
  t11 += v * b1;
  t12 += v * b2;
  t13 += v * b3;
  t14 += v * b4;
  t15 += v * b5;
  t16 += v * b6;
  t17 += v * b7;
  t18 += v * b8;
  t19 += v * b9;
  t20 += v * b10;
  t21 += v * b11;
  t22 += v * b12;
  t23 += v * b13;
  t24 += v * b14;
  t25 += v * b15;
  v = a[11];
  t11 += v * b0;
  t12 += v * b1;
  t13 += v * b2;
  t14 += v * b3;
  t15 += v * b4;
  t16 += v * b5;
  t17 += v * b6;
  t18 += v * b7;
  t19 += v * b8;
  t20 += v * b9;
  t21 += v * b10;
  t22 += v * b11;
  t23 += v * b12;
  t24 += v * b13;
  t25 += v * b14;
  t26 += v * b15;
  v = a[12];
  t12 += v * b0;
  t13 += v * b1;
  t14 += v * b2;
  t15 += v * b3;
  t16 += v * b4;
  t17 += v * b5;
  t18 += v * b6;
  t19 += v * b7;
  t20 += v * b8;
  t21 += v * b9;
  t22 += v * b10;
  t23 += v * b11;
  t24 += v * b12;
  t25 += v * b13;
  t26 += v * b14;
  t27 += v * b15;
  v = a[13];
  t13 += v * b0;
  t14 += v * b1;
  t15 += v * b2;
  t16 += v * b3;
  t17 += v * b4;
  t18 += v * b5;
  t19 += v * b6;
  t20 += v * b7;
  t21 += v * b8;
  t22 += v * b9;
  t23 += v * b10;
  t24 += v * b11;
  t25 += v * b12;
  t26 += v * b13;
  t27 += v * b14;
  t28 += v * b15;
  v = a[14];
  t14 += v * b0;
  t15 += v * b1;
  t16 += v * b2;
  t17 += v * b3;
  t18 += v * b4;
  t19 += v * b5;
  t20 += v * b6;
  t21 += v * b7;
  t22 += v * b8;
  t23 += v * b9;
  t24 += v * b10;
  t25 += v * b11;
  t26 += v * b12;
  t27 += v * b13;
  t28 += v * b14;
  t29 += v * b15;
  v = a[15];
  t15 += v * b0;
  t16 += v * b1;
  t17 += v * b2;
  t18 += v * b3;
  t19 += v * b4;
  t20 += v * b5;
  t21 += v * b6;
  t22 += v * b7;
  t23 += v * b8;
  t24 += v * b9;
  t25 += v * b10;
  t26 += v * b11;
  t27 += v * b12;
  t28 += v * b13;
  t29 += v * b14;
  t30 += v * b15;

  t0  += 38 * t16;
  t1  += 38 * t17;
  t2  += 38 * t18;
  t3  += 38 * t19;
  t4  += 38 * t20;
  t5  += 38 * t21;
  t6  += 38 * t22;
  t7  += 38 * t23;
  t8  += 38 * t24;
  t9  += 38 * t25;
  t10 += 38 * t26;
  t11 += 38 * t27;
  t12 += 38 * t28;
  t13 += 38 * t29;
  t14 += 38 * t30;
  // t15 left as is

  // first car
  c = 1;
  v =  t0 + c + 65535; c = Math.floor(v / 65536);  t0 = v - c * 65536;
  v =  t1 + c + 65535; c = Math.floor(v / 65536);  t1 = v - c * 65536;
  v =  t2 + c + 65535; c = Math.floor(v / 65536);  t2 = v - c * 65536;
  v =  t3 + c + 65535; c = Math.floor(v / 65536);  t3 = v - c * 65536;
  v =  t4 + c + 65535; c = Math.floor(v / 65536);  t4 = v - c * 65536;
  v =  t5 + c + 65535; c = Math.floor(v / 65536);  t5 = v - c * 65536;
  v =  t6 + c + 65535; c = Math.floor(v / 65536);  t6 = v - c * 65536;
  v =  t7 + c + 65535; c = Math.floor(v / 65536);  t7 = v - c * 65536;
  v =  t8 + c + 65535; c = Math.floor(v / 65536);  t8 = v - c * 65536;
  v =  t9 + c + 65535; c = Math.floor(v / 65536);  t9 = v - c * 65536;
  v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;
  v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;
  v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;
  v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;
  v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;
  v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;
  t0 += c-1 + 37 * (c-1);

  // second car
  c = 1;
  v =  t0 + c + 65535; c = Math.floor(v / 65536);  t0 = v - c * 65536;
  v =  t1 + c + 65535; c = Math.floor(v / 65536);  t1 = v - c * 65536;
  v =  t2 + c + 65535; c = Math.floor(v / 65536);  t2 = v - c * 65536;
  v =  t3 + c + 65535; c = Math.floor(v / 65536);  t3 = v - c * 65536;
  v =  t4 + c + 65535; c = Math.floor(v / 65536);  t4 = v - c * 65536;
  v =  t5 + c + 65535; c = Math.floor(v / 65536);  t5 = v - c * 65536;
  v =  t6 + c + 65535; c = Math.floor(v / 65536);  t6 = v - c * 65536;
  v =  t7 + c + 65535; c = Math.floor(v / 65536);  t7 = v - c * 65536;
  v =  t8 + c + 65535; c = Math.floor(v / 65536);  t8 = v - c * 65536;
  v =  t9 + c + 65535; c = Math.floor(v / 65536);  t9 = v - c * 65536;
  v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;
  v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;
  v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;
  v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;
  v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;
  v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;
  t0 += c-1 + 37 * (c-1);

  o[ 0] = t0;
  o[ 1] = t1;
  o[ 2] = t2;
  o[ 3] = t3;
  o[ 4] = t4;
  o[ 5] = t5;
  o[ 6] = t6;
  o[ 7] = t7;
  o[ 8] = t8;
  o[ 9] = t9;
  o[10] = t10;
  o[11] = t11;
  o[12] = t12;
  o[13] = t13;
  o[14] = t14;
  o[15] = t15;
}

function S(o, a) {
  M(o, a, a);
}

function inv25519(o, i) {
  var c = gf();
  var a;
  for (a = 0; a < 16; a++) c[a] = i[a];
  for (a = 253; a >= 0; a--) {
    S(c, c);
    if(a !== 2 && a !== 4) M(c, c, i);
  }
  for (a = 0; a < 16; a++) o[a] = c[a];
}

function pow2523(o, i) {
  var c = gf();
  var a;
  for (a = 0; a < 16; a++) c[a] = i[a];
  for (a = 250; a >= 0; a--) {
      S(c, c);
      if(a !== 1) M(c, c, i);
  }
  for (a = 0; a < 16; a++) o[a] = c[a];
}

function crypto_scalarmult(q, n, p) {
  var z = new Uint8Array(32);
  var x = new Float64Array(80), r, i;
  var a = gf(), b = gf(), c = gf(),
      d = gf(), e = gf(), f = gf();
  for (i = 0; i < 31; i++) z[i] = n[i];
  z[31]=(n[31]&127)|64;
  z[0]&=248;
  unpack25519(x,p);
  for (i = 0; i < 16; i++) {
    b[i]=x[i];
    d[i]=a[i]=c[i]=0;
  }
  a[0]=d[0]=1;
  for (i=254; i>=0; --i) {
    r=(z[i>>>3]>>>(i&7))&1;
    sel25519(a,b,r);
    sel25519(c,d,r);
    A(e,a,c);
    Z(a,a,c);
    A(c,b,d);
    Z(b,b,d);
    S(d,e);
    S(f,a);
    M(a,c,a);
    M(c,b,e);
    A(e,a,c);
    Z(a,a,c);
    S(b,a);
    Z(c,d,f);
    M(a,c,_121665);
    A(a,a,d);
    M(c,c,a);
    M(a,d,f);
    M(d,b,x);
    S(b,e);
    sel25519(a,b,r);
    sel25519(c,d,r);
  }
  for (i = 0; i < 16; i++) {
    x[i+16]=a[i];
    x[i+32]=c[i];
    x[i+48]=b[i];
    x[i+64]=d[i];
  }
  var x32 = x.subarray(32);
  var x16 = x.subarray(16);
  inv25519(x32,x32);
  M(x16,x16,x32);
  pack25519(q,x16);
  return 0;
}

function crypto_scalarmult_base(q, n) {
  return crypto_scalarmult(q, n, _9);
}

function crypto_box_keypair(y, x) {
  randombytes(x, 32);
  return crypto_scalarmult_base(y, x);
}

function crypto_box_beforenm(k, y, x) {
  var s = new Uint8Array(32);
  crypto_scalarmult(s, x, y);
  return crypto_core_hsalsa20(k, _0, s, sigma);
}

var crypto_box_afternm = crypto_secretbox;
var crypto_box_open_afternm = crypto_secretbox_open;

function crypto_box(c, m, d, n, y, x) {
  var k = new Uint8Array(32);
  crypto_box_beforenm(k, y, x);
  return crypto_box_afternm(c, m, d, n, k);
}

function crypto_box_open(m, c, d, n, y, x) {
  var k = new Uint8Array(32);
  crypto_box_beforenm(k, y, x);
  return crypto_box_open_afternm(m, c, d, n, k);
}

var K = [
  0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,
  0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,
  0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,
  0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,
  0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,
  0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,
  0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,
  0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,
  0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,
  0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,
  0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,
  0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,
  0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,
  0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,
  0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,
  0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,
  0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,
  0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,
  0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,
  0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,
  0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,
  0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,
  0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,
  0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,
  0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,
  0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,
  0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,
  0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,
  0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,
  0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,
  0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,
  0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,
  0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,
  0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,
  0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,
  0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,
  0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,
  0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,
  0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,
  0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817
];

function crypto_hashblocks_hl(hh, hl, m, n) {
  var wh = new Int32Array(16), wl = new Int32Array(16),
      bh0, bh1, bh2, bh3, bh4, bh5, bh6, bh7,
      bl0, bl1, bl2, bl3, bl4, bl5, bl6, bl7,
      th, tl, i, j, h, l, a, b, c, d;

  var ah0 = hh[0],
      ah1 = hh[1],
      ah2 = hh[2],
      ah3 = hh[3],
      ah4 = hh[4],
      ah5 = hh[5],
      ah6 = hh[6],
      ah7 = hh[7],

      al0 = hl[0],
      al1 = hl[1],
      al2 = hl[2],
      al3 = hl[3],
      al4 = hl[4],
      al5 = hl[5],
      al6 = hl[6],
      al7 = hl[7];

  var pos = 0;
  while (n >= 128) {
    for (i = 0; i < 16; i++) {
      j = 8 * i + pos;
      wh[i] = (m[j+0] << 24) | (m[j+1] << 16) | (m[j+2] << 8) | m[j+3];
      wl[i] = (m[j+4] << 24) | (m[j+5] << 16) | (m[j+6] << 8) | m[j+7];
    }
    for (i = 0; i < 80; i++) {
      bh0 = ah0;
      bh1 = ah1;
      bh2 = ah2;
      bh3 = ah3;
      bh4 = ah4;
      bh5 = ah5;
      bh6 = ah6;
      bh7 = ah7;

      bl0 = al0;
      bl1 = al1;
      bl2 = al2;
      bl3 = al3;
      bl4 = al4;
      bl5 = al5;
      bl6 = al6;
      bl7 = al7;

      // add
      h = ah7;
      l = al7;

      a = l & 0xffff; b = l >>> 16;
      c = h & 0xffff; d = h >>> 16;

      // Sigma1
      h = ((ah4 >>> 14) | (al4 << (32-14))) ^ ((ah4 >>> 18) | (al4 << (32-18))) ^ ((al4 >>> (41-32)) | (ah4 << (32-(41-32))));
      l = ((al4 >>> 14) | (ah4 << (32-14))) ^ ((al4 >>> 18) | (ah4 << (32-18))) ^ ((ah4 >>> (41-32)) | (al4 << (32-(41-32))));

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      // Ch
      h = (ah4 & ah5) ^ (~ah4 & ah6);
      l = (al4 & al5) ^ (~al4 & al6);

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      // K
      h = K[i*2];
      l = K[i*2+1];

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      // w
      h = wh[i%16];
      l = wl[i%16];

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      b += a >>> 16;
      c += b >>> 16;
      d += c >>> 16;

      th = c & 0xffff | d << 16;
      tl = a & 0xffff | b << 16;

      // add
      h = th;
      l = tl;

      a = l & 0xffff; b = l >>> 16;
      c = h & 0xffff; d = h >>> 16;

      // Sigma0
      h = ((ah0 >>> 28) | (al0 << (32-28))) ^ ((al0 >>> (34-32)) | (ah0 << (32-(34-32)))) ^ ((al0 >>> (39-32)) | (ah0 << (32-(39-32))));
      l = ((al0 >>> 28) | (ah0 << (32-28))) ^ ((ah0 >>> (34-32)) | (al0 << (32-(34-32)))) ^ ((ah0 >>> (39-32)) | (al0 << (32-(39-32))));

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      // Maj
      h = (ah0 & ah1) ^ (ah0 & ah2) ^ (ah1 & ah2);
      l = (al0 & al1) ^ (al0 & al2) ^ (al1 & al2);

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      b += a >>> 16;
      c += b >>> 16;
      d += c >>> 16;

      bh7 = (c & 0xffff) | (d << 16);
      bl7 = (a & 0xffff) | (b << 16);

      // add
      h = bh3;
      l = bl3;

      a = l & 0xffff; b = l >>> 16;
      c = h & 0xffff; d = h >>> 16;

      h = th;
      l = tl;

      a += l & 0xffff; b += l >>> 16;
      c += h & 0xffff; d += h >>> 16;

      b += a >>> 16;
      c += b >>> 16;
      d += c >>> 16;

      bh3 = (c & 0xffff) | (d << 16);
      bl3 = (a & 0xffff) | (b << 16);

      ah1 = bh0;
      ah2 = bh1;
      ah3 = bh2;
      ah4 = bh3;
      ah5 = bh4;
      ah6 = bh5;
      ah7 = bh6;
      ah0 = bh7;

      al1 = bl0;
      al2 = bl1;
      al3 = bl2;
      al4 = bl3;
      al5 = bl4;
      al6 = bl5;
      al7 = bl6;
      al0 = bl7;

      if (i%16 === 15) {
        for (j = 0; j < 16; j++) {
          // add
          h = wh[j];
          l = wl[j];

          a = l & 0xffff; b = l >>> 16;
          c = h & 0xffff; d = h >>> 16;

          h = wh[(j+9)%16];
          l = wl[(j+9)%16];

          a += l & 0xffff; b += l >>> 16;
          c += h & 0xffff; d += h >>> 16;

          // sigma0
          th = wh[(j+1)%16];
          tl = wl[(j+1)%16];
          h = ((th >>> 1) | (tl << (32-1))) ^ ((th >>> 8) | (tl << (32-8))) ^ (th >>> 7);
          l = ((tl >>> 1) | (th << (32-1))) ^ ((tl >>> 8) | (th << (32-8))) ^ ((tl >>> 7) | (th << (32-7)));

          a += l & 0xffff; b += l >>> 16;
          c += h & 0xffff; d += h >>> 16;

          // sigma1
          th = wh[(j+14)%16];
          tl = wl[(j+14)%16];
          h = ((th >>> 19) | (tl << (32-19))) ^ ((tl >>> (61-32)) | (th << (32-(61-32)))) ^ (th >>> 6);
          l = ((tl >>> 19) | (th << (32-19))) ^ ((th >>> (61-32)) | (tl << (32-(61-32)))) ^ ((tl >>> 6) | (th << (32-6)));

          a += l & 0xffff; b += l >>> 16;
          c += h & 0xffff; d += h >>> 16;

          b += a >>> 16;
          c += b >>> 16;
          d += c >>> 16;

          wh[j] = (c & 0xffff) | (d << 16);
          wl[j] = (a & 0xffff) | (b << 16);
        }
      }
    }

    // add
    h = ah0;
    l = al0;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[0];
    l = hl[0];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[0] = ah0 = (c & 0xffff) | (d << 16);
    hl[0] = al0 = (a & 0xffff) | (b << 16);

    h = ah1;
    l = al1;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[1];
    l = hl[1];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[1] = ah1 = (c & 0xffff) | (d << 16);
    hl[1] = al1 = (a & 0xffff) | (b << 16);

    h = ah2;
    l = al2;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[2];
    l = hl[2];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[2] = ah2 = (c & 0xffff) | (d << 16);
    hl[2] = al2 = (a & 0xffff) | (b << 16);

    h = ah3;
    l = al3;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[3];
    l = hl[3];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[3] = ah3 = (c & 0xffff) | (d << 16);
    hl[3] = al3 = (a & 0xffff) | (b << 16);

    h = ah4;
    l = al4;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[4];
    l = hl[4];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[4] = ah4 = (c & 0xffff) | (d << 16);
    hl[4] = al4 = (a & 0xffff) | (b << 16);

    h = ah5;
    l = al5;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[5];
    l = hl[5];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[5] = ah5 = (c & 0xffff) | (d << 16);
    hl[5] = al5 = (a & 0xffff) | (b << 16);

    h = ah6;
    l = al6;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[6];
    l = hl[6];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[6] = ah6 = (c & 0xffff) | (d << 16);
    hl[6] = al6 = (a & 0xffff) | (b << 16);

    h = ah7;
    l = al7;

    a = l & 0xffff; b = l >>> 16;
    c = h & 0xffff; d = h >>> 16;

    h = hh[7];
    l = hl[7];

    a += l & 0xffff; b += l >>> 16;
    c += h & 0xffff; d += h >>> 16;

    b += a >>> 16;
    c += b >>> 16;
    d += c >>> 16;

    hh[7] = ah7 = (c & 0xffff) | (d << 16);
    hl[7] = al7 = (a & 0xffff) | (b << 16);

    pos += 128;
    n -= 128;
  }

  return n;
}

function crypto_hash(out, m, n) {
  var hh = new Int32Array(8),
      hl = new Int32Array(8),
      x = new Uint8Array(256),
      i, b = n;

  hh[0] = 0x6a09e667;
  hh[1] = 0xbb67ae85;
  hh[2] = 0x3c6ef372;
  hh[3] = 0xa54ff53a;
  hh[4] = 0x510e527f;
  hh[5] = 0x9b05688c;
  hh[6] = 0x1f83d9ab;
  hh[7] = 0x5be0cd19;

  hl[0] = 0xf3bcc908;
  hl[1] = 0x84caa73b;
  hl[2] = 0xfe94f82b;
  hl[3] = 0x5f1d36f1;
  hl[4] = 0xade682d1;
  hl[5] = 0x2b3e6c1f;
  hl[6] = 0xfb41bd6b;
  hl[7] = 0x137e2179;

  crypto_hashblocks_hl(hh, hl, m, n);
  n %= 128;

  for (i = 0; i < n; i++) x[i] = m[b-n+i];
  x[n] = 128;

  n = 256-128*(n<112?1:0);
  x[n-9] = 0;
  ts64(x, n-8,  (b / 0x20000000) | 0, b << 3);
  crypto_hashblocks_hl(hh, hl, x, n);

  for (i = 0; i < 8; i++) ts64(out, 8*i, hh[i], hl[i]);

  return 0;
}

function add(p, q) {
  var a = gf(), b = gf(), c = gf(),
      d = gf(), e = gf(), f = gf(),
      g = gf(), h = gf(), t = gf();

  Z(a, p[1], p[0]);
  Z(t, q[1], q[0]);
  M(a, a, t);
  A(b, p[0], p[1]);
  A(t, q[0], q[1]);
  M(b, b, t);
  M(c, p[3], q[3]);
  M(c, c, D2);
  M(d, p[2], q[2]);
  A(d, d, d);
  Z(e, b, a);
  Z(f, d, c);
  A(g, d, c);
  A(h, b, a);

  M(p[0], e, f);
  M(p[1], h, g);
  M(p[2], g, f);
  M(p[3], e, h);
}

function cswap(p, q, b) {
  var i;
  for (i = 0; i < 4; i++) {
    sel25519(p[i], q[i], b);
  }
}

function pack(r, p) {
  var tx = gf(), ty = gf(), zi = gf();
  inv25519(zi, p[2]);
  M(tx, p[0], zi);
  M(ty, p[1], zi);
  pack25519(r, ty);
  r[31] ^= par25519(tx) << 7;
}

function scalarmult(p, q, s) {
  var b, i;
  set25519(p[0], gf0);
  set25519(p[1], gf1);
  set25519(p[2], gf1);
  set25519(p[3], gf0);
  for (i = 255; i >= 0; --i) {
    b = (s[(i/8)|0] >> (i&7)) & 1;
    cswap(p, q, b);
    add(q, p);
    add(p, p);
    cswap(p, q, b);
  }
}

function scalarbase(p, s) {
  var q = [gf(), gf(), gf(), gf()];
  set25519(q[0], X);
  set25519(q[1], Y);
  set25519(q[2], gf1);
  M(q[3], X, Y);
  scalarmult(p, q, s);
}

function crypto_sign_keypair(pk, sk, seeded) {
  var d = new Uint8Array(64);
  var p = [gf(), gf(), gf(), gf()];
  var i;

  if (!seeded) randombytes(sk, 32);
  crypto_hash(d, sk, 32);
  d[0] &= 248;
  d[31] &= 127;
  d[31] |= 64;

  scalarbase(p, d);
  pack(pk, p);

  for (i = 0; i < 32; i++) sk[i+32] = pk[i];
  return 0;
}

var L = new Float64Array([0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10]);

function modL(r, x) {
  var carry, i, j, k;
  for (i = 63; i >= 32; --i) {
    carry = 0;
    for (j = i - 32, k = i - 12; j < k; ++j) {
      x[j] += carry - 16 * x[i] * L[j - (i - 32)];
      carry = (x[j] + 128) >> 8;
      x[j] -= carry * 256;
    }
    x[j] += carry;
    x[i] = 0;
  }
  carry = 0;
  for (j = 0; j < 32; j++) {
    x[j] += carry - (x[31] >> 4) * L[j];
    carry = x[j] >> 8;
    x[j] &= 255;
  }
  for (j = 0; j < 32; j++) x[j] -= carry * L[j];
  for (i = 0; i < 32; i++) {
    x[i+1] += x[i] >> 8;
    r[i] = x[i] & 255;
  }
}

function reduce(r) {
  var x = new Float64Array(64), i;
  for (i = 0; i < 64; i++) x[i] = r[i];
  for (i = 0; i < 64; i++) r[i] = 0;
  modL(r, x);
}

// Note: difference from C - smlen returned, not passed as argument.
function crypto_sign(sm, m, n, sk) {
  var d = new Uint8Array(64), h = new Uint8Array(64), r = new Uint8Array(64);
  var i, j, x = new Float64Array(64);
  var p = [gf(), gf(), gf(), gf()];

  crypto_hash(d, sk, 32);
  d[0] &= 248;
  d[31] &= 127;
  d[31] |= 64;

  var smlen = n + 64;
  for (i = 0; i < n; i++) sm[64 + i] = m[i];
  for (i = 0; i < 32; i++) sm[32 + i] = d[32 + i];

  crypto_hash(r, sm.subarray(32), n+32);
  reduce(r);
  scalarbase(p, r);
  pack(sm, p);

  for (i = 32; i < 64; i++) sm[i] = sk[i];
  crypto_hash(h, sm, n + 64);
  reduce(h);

  for (i = 0; i < 64; i++) x[i] = 0;
  for (i = 0; i < 32; i++) x[i] = r[i];
  for (i = 0; i < 32; i++) {
    for (j = 0; j < 32; j++) {
      x[i+j] += h[i] * d[j];
    }
  }

  modL(sm.subarray(32), x);
  return smlen;
}

function unpackneg(r, p) {
  var t = gf(), chk = gf(), num = gf(),
      den = gf(), den2 = gf(), den4 = gf(),
      den6 = gf();

  set25519(r[2], gf1);
  unpack25519(r[1], p);
  S(num, r[1]);
  M(den, num, D);
  Z(num, num, r[2]);
  A(den, r[2], den);

  S(den2, den);
  S(den4, den2);
  M(den6, den4, den2);
  M(t, den6, num);
  M(t, t, den);

  pow2523(t, t);
  M(t, t, num);
  M(t, t, den);
  M(t, t, den);
  M(r[0], t, den);

  S(chk, r[0]);
  M(chk, chk, den);
  if (neq25519(chk, num)) M(r[0], r[0], I);

  S(chk, r[0]);
  M(chk, chk, den);
  if (neq25519(chk, num)) return -1;

  if (par25519(r[0]) === (p[31]>>7)) Z(r[0], gf0, r[0]);

  M(r[3], r[0], r[1]);
  return 0;
}

function crypto_sign_open(m, sm, n, pk) {
  var i, mlen;
  var t = new Uint8Array(32), h = new Uint8Array(64);
  var p = [gf(), gf(), gf(), gf()],
      q = [gf(), gf(), gf(), gf()];

  mlen = -1;
  if (n < 64) return -1;

  if (unpackneg(q, pk)) return -1;

  for (i = 0; i < n; i++) m[i] = sm[i];
  for (i = 0; i < 32; i++) m[i+32] = pk[i];
  crypto_hash(h, m, n);
  reduce(h);
  scalarmult(p, q, h);

  scalarbase(q, sm.subarray(32));
  add(p, q);
  pack(t, p);

  n -= 64;
  if (crypto_verify_32(sm, 0, t, 0)) {
    for (i = 0; i < n; i++) m[i] = 0;
    return -1;
  }

  for (i = 0; i < n; i++) m[i] = sm[i + 64];
  mlen = n;
  return mlen;
}

var crypto_secretbox_KEYBYTES = 32,
    crypto_secretbox_NONCEBYTES = 24,
    crypto_secretbox_ZEROBYTES = 32,
    crypto_secretbox_BOXZEROBYTES = 16,
    crypto_scalarmult_BYTES = 32,
    crypto_scalarmult_SCALARBYTES = 32,
    crypto_box_PUBLICKEYBYTES = 32,
    crypto_box_SECRETKEYBYTES = 32,
    crypto_box_BEFORENMBYTES = 32,
    crypto_box_NONCEBYTES = crypto_secretbox_NONCEBYTES,
    crypto_box_ZEROBYTES = crypto_secretbox_ZEROBYTES,
    crypto_box_BOXZEROBYTES = crypto_secretbox_BOXZEROBYTES,
    crypto_sign_BYTES = 64,
    crypto_sign_PUBLICKEYBYTES = 32,
    crypto_sign_SECRETKEYBYTES = 64,
    crypto_sign_SEEDBYTES = 32,
    crypto_hash_BYTES = 64;

nacl.lowlevel = {
  crypto_core_hsalsa20: crypto_core_hsalsa20,
  crypto_stream_xor: crypto_stream_xor,
  crypto_stream: crypto_stream,
  crypto_stream_salsa20_xor: crypto_stream_salsa20_xor,
  crypto_stream_salsa20: crypto_stream_salsa20,
  crypto_onetimeauth: crypto_onetimeauth,
  crypto_onetimeauth_verify: crypto_onetimeauth_verify,
  crypto_verify_16: crypto_verify_16,
  crypto_verify_32: crypto_verify_32,
  crypto_secretbox: crypto_secretbox,
  crypto_secretbox_open: crypto_secretbox_open,
  crypto_scalarmult: crypto_scalarmult,
  crypto_scalarmult_base: crypto_scalarmult_base,
  crypto_box_beforenm: crypto_box_beforenm,
  crypto_box_afternm: crypto_box_afternm,
  crypto_box: crypto_box,
  crypto_box_open: crypto_box_open,
  crypto_box_keypair: crypto_box_keypair,
  crypto_hash: crypto_hash,
  crypto_sign: crypto_sign,
  crypto_sign_keypair: crypto_sign_keypair,
  crypto_sign_open: crypto_sign_open,

  crypto_secretbox_KEYBYTES: crypto_secretbox_KEYBYTES,
  crypto_secretbox_NONCEBYTES: crypto_secretbox_NONCEBYTES,
  crypto_secretbox_ZEROBYTES: crypto_secretbox_ZEROBYTES,
  crypto_secretbox_BOXZEROBYTES: crypto_secretbox_BOXZEROBYTES,
  crypto_scalarmult_BYTES: crypto_scalarmult_BYTES,
  crypto_scalarmult_SCALARBYTES: crypto_scalarmult_SCALARBYTES,
  crypto_box_PUBLICKEYBYTES: crypto_box_PUBLICKEYBYTES,
  crypto_box_SECRETKEYBYTES: crypto_box_SECRETKEYBYTES,
  crypto_box_BEFORENMBYTES: crypto_box_BEFORENMBYTES,
  crypto_box_NONCEBYTES: crypto_box_NONCEBYTES,
  crypto_box_ZEROBYTES: crypto_box_ZEROBYTES,
  crypto_box_BOXZEROBYTES: crypto_box_BOXZEROBYTES,
  crypto_sign_BYTES: crypto_sign_BYTES,
  crypto_sign_PUBLICKEYBYTES: crypto_sign_PUBLICKEYBYTES,
  crypto_sign_SECRETKEYBYTES: crypto_sign_SECRETKEYBYTES,
  crypto_sign_SEEDBYTES: crypto_sign_SEEDBYTES,
  crypto_hash_BYTES: crypto_hash_BYTES
};

/* High-level API */

function checkLengths(k, n) {
  if (k.length !== crypto_secretbox_KEYBYTES) throw new Error('bad key size');
  if (n.length !== crypto_secretbox_NONCEBYTES) throw new Error('bad nonce size');
}

function checkBoxLengths(pk, sk) {
  if (pk.length !== crypto_box_PUBLICKEYBYTES) throw new Error('bad public key size');
  if (sk.length !== crypto_box_SECRETKEYBYTES) throw new Error('bad secret key size');
}

function checkArrayTypes() {
  var t, i;
  for (i = 0; i < arguments.length; i++) {
     if ((t = Object.prototype.toString.call(arguments[i])) !== '[object Uint8Array]')
       throw new TypeError('unexpected type ' + t + ', use Uint8Array');
  }
}

function cleanup(arr) {
  for (var i = 0; i < arr.length; i++) arr[i] = 0;
}

// TODO: Completely remove this in v0.15.
if (!nacl.util) {
  nacl.util = {};
  nacl.util.decodeUTF8 = nacl.util.encodeUTF8 = nacl.util.encodeBase64 = nacl.util.decodeBase64 = function() {
    throw new Error('nacl.util moved into separate package: https://github.com/dchest/tweetnacl-util-js');
  };
}

nacl.randomBytes = function(n) {
  var b = new Uint8Array(n);
  randombytes(b, n);
  return b;
};

nacl.secretbox = function(msg, nonce, key) {
  checkArrayTypes(msg, nonce, key);
  checkLengths(key, nonce);
  var m = new Uint8Array(crypto_secretbox_ZEROBYTES + msg.length);
  var c = new Uint8Array(m.length);
  for (var i = 0; i < msg.length; i++) m[i+crypto_secretbox_ZEROBYTES] = msg[i];
  crypto_secretbox(c, m, m.length, nonce, key);
  return c.subarray(crypto_secretbox_BOXZEROBYTES);
};

nacl.secretbox.open = function(box, nonce, key) {
  checkArrayTypes(box, nonce, key);
  checkLengths(key, nonce);
  var c = new Uint8Array(crypto_secretbox_BOXZEROBYTES + box.length);
  var m = new Uint8Array(c.length);
  for (var i = 0; i < box.length; i++) c[i+crypto_secretbox_BOXZEROBYTES] = box[i];
  if (c.length < 32) return false;
  if (crypto_secretbox_open(m, c, c.length, nonce, key) !== 0) return false;
  return m.subarray(crypto_secretbox_ZEROBYTES);
};

nacl.secretbox.keyLength = crypto_secretbox_KEYBYTES;
nacl.secretbox.nonceLength = crypto_secretbox_NONCEBYTES;
nacl.secretbox.overheadLength = crypto_secretbox_BOXZEROBYTES;

nacl.scalarMult = function(n, p) {
  checkArrayTypes(n, p);
  if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');
  if (p.length !== crypto_scalarmult_BYTES) throw new Error('bad p size');
  var q = new Uint8Array(crypto_scalarmult_BYTES);
  crypto_scalarmult(q, n, p);
  return q;
};

nacl.scalarMult.base = function(n) {
  checkArrayTypes(n);
  if (n.length !== crypto_scalarmult_SCALARBYTES) throw new Error('bad n size');
  var q = new Uint8Array(crypto_scalarmult_BYTES);
  crypto_scalarmult_base(q, n);
  return q;
};

nacl.scalarMult.scalarLength = crypto_scalarmult_SCALARBYTES;
nacl.scalarMult.groupElementLength = crypto_scalarmult_BYTES;

nacl.box = function(msg, nonce, publicKey, secretKey) {
  var k = nacl.box.before(publicKey, secretKey);
  return nacl.secretbox(msg, nonce, k);
};

nacl.box.before = function(publicKey, secretKey) {
  checkArrayTypes(publicKey, secretKey);
  checkBoxLengths(publicKey, secretKey);
  var k = new Uint8Array(crypto_box_BEFORENMBYTES);
  crypto_box_beforenm(k, publicKey, secretKey);
  return k;
};

nacl.box.after = nacl.secretbox;

nacl.box.open = function(msg, nonce, publicKey, secretKey) {
  var k = nacl.box.before(publicKey, secretKey);
  return nacl.secretbox.open(msg, nonce, k);
};

nacl.box.open.after = nacl.secretbox.open;

nacl.box.keyPair = function() {
  var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);
  var sk = new Uint8Array(crypto_box_SECRETKEYBYTES);
  crypto_box_keypair(pk, sk);
  return {publicKey: pk, secretKey: sk};
};

nacl.box.keyPair.fromSecretKey = function(secretKey) {
  checkArrayTypes(secretKey);
  if (secretKey.length !== crypto_box_SECRETKEYBYTES)
    throw new Error('bad secret key size');
  var pk = new Uint8Array(crypto_box_PUBLICKEYBYTES);
  crypto_scalarmult_base(pk, secretKey);
  return {publicKey: pk, secretKey: new Uint8Array(secretKey)};
};

nacl.box.publicKeyLength = crypto_box_PUBLICKEYBYTES;
nacl.box.secretKeyLength = crypto_box_SECRETKEYBYTES;
nacl.box.sharedKeyLength = crypto_box_BEFORENMBYTES;
nacl.box.nonceLength = crypto_box_NONCEBYTES;
nacl.box.overheadLength = nacl.secretbox.overheadLength;

nacl.sign = function(msg, secretKey) {
  checkArrayTypes(msg, secretKey);
  if (secretKey.length !== crypto_sign_SECRETKEYBYTES)
    throw new Error('bad secret key size');
  var signedMsg = new Uint8Array(crypto_sign_BYTES+msg.length);
  crypto_sign(signedMsg, msg, msg.length, secretKey);
  return signedMsg;
};

nacl.sign.open = function(signedMsg, publicKey) {
  if (arguments.length !== 2)
    throw new Error('nacl.sign.open accepts 2 arguments; did you mean to use nacl.sign.detached.verify?');
  checkArrayTypes(signedMsg, publicKey);
  if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)
    throw new Error('bad public key size');
  var tmp = new Uint8Array(signedMsg.length);
  var mlen = crypto_sign_open(tmp, signedMsg, signedMsg.length, publicKey);
  if (mlen < 0) return null;
  var m = new Uint8Array(mlen);
  for (var i = 0; i < m.length; i++) m[i] = tmp[i];
  return m;
};

nacl.sign.detached = function(msg, secretKey) {
  var signedMsg = nacl.sign(msg, secretKey);
  var sig = new Uint8Array(crypto_sign_BYTES);
  for (var i = 0; i < sig.length; i++) sig[i] = signedMsg[i];
  return sig;
};

nacl.sign.detached.verify = function(msg, sig, publicKey) {
  checkArrayTypes(msg, sig, publicKey);
  if (sig.length !== crypto_sign_BYTES)
    throw new Error('bad signature size');
  if (publicKey.length !== crypto_sign_PUBLICKEYBYTES)
    throw new Error('bad public key size');
  var sm = new Uint8Array(crypto_sign_BYTES + msg.length);
  var m = new Uint8Array(crypto_sign_BYTES + msg.length);
  var i;
  for (i = 0; i < crypto_sign_BYTES; i++) sm[i] = sig[i];
  for (i = 0; i < msg.length; i++) sm[i+crypto_sign_BYTES] = msg[i];
  return (crypto_sign_open(m, sm, sm.length, publicKey) >= 0);
};

nacl.sign.keyPair = function() {
  var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);
  var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);
  crypto_sign_keypair(pk, sk);
  return {publicKey: pk, secretKey: sk};
};

nacl.sign.keyPair.fromSecretKey = function(secretKey) {
  checkArrayTypes(secretKey);
  if (secretKey.length !== crypto_sign_SECRETKEYBYTES)
    throw new Error('bad secret key size');
  var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);
  for (var i = 0; i < pk.length; i++) pk[i] = secretKey[32+i];
  return {publicKey: pk, secretKey: new Uint8Array(secretKey)};
};

nacl.sign.keyPair.fromSeed = function(seed) {
  checkArrayTypes(seed);
  if (seed.length !== crypto_sign_SEEDBYTES)
    throw new Error('bad seed size');
  var pk = new Uint8Array(crypto_sign_PUBLICKEYBYTES);
  var sk = new Uint8Array(crypto_sign_SECRETKEYBYTES);
  for (var i = 0; i < 32; i++) sk[i] = seed[i];
  crypto_sign_keypair(pk, sk, true);
  return {publicKey: pk, secretKey: sk};
};

nacl.sign.publicKeyLength = crypto_sign_PUBLICKEYBYTES;
nacl.sign.secretKeyLength = crypto_sign_SECRETKEYBYTES;
nacl.sign.seedLength = crypto_sign_SEEDBYTES;
nacl.sign.signatureLength = crypto_sign_BYTES;

nacl.hash = function(msg) {
  checkArrayTypes(msg);
  var h = new Uint8Array(crypto_hash_BYTES);
  crypto_hash(h, msg, msg.length);
  return h;
};

nacl.hash.hashLength = crypto_hash_BYTES;

nacl.verify = function(x, y) {
  checkArrayTypes(x, y);
  // Zero length arguments are considered not equal.
  if (x.length === 0 || y.length === 0) return false;
  if (x.length !== y.length) return false;
  return (vn(x, 0, y, 0, x.length) === 0) ? true : false;
};

nacl.setPRNG = function(fn) {
  randombytes = fn;
};

(function() {
  // Initialize PRNG if environment provides CSPRNG.
  // If not, methods calling randombytes will throw.
  var crypto = typeof self !== 'undefined' ? (self.crypto || self.msCrypto) : null;
  if (crypto && crypto.getRandomValues) {
    // Browsers.
    var QUOTA = 65536;
    nacl.setPRNG(function(x, n) {
      var i, v = new Uint8Array(n);
      for (i = 0; i < n; i += QUOTA) {
        crypto.getRandomValues(v.subarray(i, i + Math.min(n - i, QUOTA)));
      }
      for (i = 0; i < n; i++) x[i] = v[i];
      cleanup(v);
    });
  } else if (true) {
    // Node.js.
    crypto = __webpack_require__(33373);
    if (crypto && crypto.randomBytes) {
      nacl.setPRNG(function(x, n) {
        var i, v = crypto.randomBytes(n);
        for (i = 0; i < n; i++) x[i] = v[i];
        cleanup(v);
      });
    }
  }
})();

})( true && module.exports ? module.exports : (self.nacl = self.nacl || {}));


/***/ }),

/***/ 70020:
/***/ (function(__unused_webpack_module, exports) {

/** @license URI.js v4.4.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */
(function (global, factory) {
	 true ? factory(exports) :
	0;
}(this, (function (exports) { 'use strict';

function merge() {
    for (var _len = arguments.length, sets = Array(_len), _key = 0; _key < _len; _key++) {
        sets[_key] = arguments[_key];
    }

    if (sets.length > 1) {
        sets[0] = sets[0].slice(0, -1);
        var xl = sets.length - 1;
        for (var x = 1; x < xl; ++x) {
            sets[x] = sets[x].slice(1, -1);
        }
        sets[xl] = sets[xl].slice(1);
        return sets.join('');
    } else {
        return sets[0];
    }
}
function subexp(str) {
    return "(?:" + str + ")";
}
function typeOf(o) {
    return o === undefined ? "undefined" : o === null ? "null" : Object.prototype.toString.call(o).split(" ").pop().split("]").shift().toLowerCase();
}
function toUpperCase(str) {
    return str.toUpperCase();
}
function toArray(obj) {
    return obj !== undefined && obj !== null ? obj instanceof Array ? obj : typeof obj.length !== "number" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj) : [];
}
function assign(target, source) {
    var obj = target;
    if (source) {
        for (var key in source) {
            obj[key] = source[key];
        }
    }
    return obj;
}

function buildExps(isIRI) {
    var ALPHA$$ = "[A-Za-z]",
        CR$ = "[\\x0D]",
        DIGIT$$ = "[0-9]",
        DQUOTE$$ = "[\\x22]",
        HEXDIG$$ = merge(DIGIT$$, "[A-Fa-f]"),
        //case-insensitive
    LF$$ = "[\\x0A]",
        SP$$ = "[\\x20]",
        PCT_ENCODED$ = subexp(subexp("%[EFef]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%[89A-Fa-f]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%" + HEXDIG$$ + HEXDIG$$)),
        //expanded
    GEN_DELIMS$$ = "[\\:\\/\\?\\#\\[\\]\\@]",
        SUB_DELIMS$$ = "[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",
        RESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$),
        UCSCHAR$$ = isIRI ? "[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]" : "[]",
        //subset, excludes bidi control characters
    IPRIVATE$$ = isIRI ? "[\\uE000-\\uF8FF]" : "[]",
        //subset
    UNRESERVED$$ = merge(ALPHA$$, DIGIT$$, "[\\-\\.\\_\\~]", UCSCHAR$$),
        SCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, "[\\+\\-\\.]") + "*"),
        USERINFO$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:]")) + "*"),
        DEC_OCTET$ = subexp(subexp("25[0-5]") + "|" + subexp("2[0-4]" + DIGIT$$) + "|" + subexp("1" + DIGIT$$ + DIGIT$$) + "|" + subexp("[1-9]" + DIGIT$$) + "|" + DIGIT$$),
        DEC_OCTET_RELAXED$ = subexp(subexp("25[0-5]") + "|" + subexp("2[0-4]" + DIGIT$$) + "|" + subexp("1" + DIGIT$$ + DIGIT$$) + "|" + subexp("0?[1-9]" + DIGIT$$) + "|0?0?" + DIGIT$$),
        //relaxed parsing rules
    IPV4ADDRESS$ = subexp(DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$ + "\\." + DEC_OCTET_RELAXED$),
        H16$ = subexp(HEXDIG$$ + "{1,4}"),
        LS32$ = subexp(subexp(H16$ + "\\:" + H16$) + "|" + IPV4ADDRESS$),
        IPV6ADDRESS1$ = subexp(subexp(H16$ + "\\:") + "{6}" + LS32$),
        //                           6( h16 ":" ) ls32
    IPV6ADDRESS2$ = subexp("\\:\\:" + subexp(H16$ + "\\:") + "{5}" + LS32$),
        //                      "::" 5( h16 ":" ) ls32
    IPV6ADDRESS3$ = subexp(subexp(H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{4}" + LS32$),
        //[               h16 ] "::" 4( h16 ":" ) ls32
    IPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,1}" + H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{3}" + LS32$),
        //[ *1( h16 ":" ) h16 ] "::" 3( h16 ":" ) ls32
    IPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,2}" + H16$) + "?\\:\\:" + subexp(H16$ + "\\:") + "{2}" + LS32$),
        //[ *2( h16 ":" ) h16 ] "::" 2( h16 ":" ) ls32
    IPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,3}" + H16$) + "?\\:\\:" + H16$ + "\\:" + LS32$),
        //[ *3( h16 ":" ) h16 ] "::"    h16 ":"   ls32
    IPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,4}" + H16$) + "?\\:\\:" + LS32$),
        //[ *4( h16 ":" ) h16 ] "::"              ls32
    IPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,5}" + H16$) + "?\\:\\:" + H16$),
        //[ *5( h16 ":" ) h16 ] "::"              h16
    IPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + "\\:") + "{0,6}" + H16$) + "?\\:\\:"),
        //[ *6( h16 ":" ) h16 ] "::"
    IPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join("|")),
        ZONEID$ = subexp(subexp(UNRESERVED$$ + "|" + PCT_ENCODED$) + "+"),
        //RFC 6874
    IPV6ADDRZ$ = subexp(IPV6ADDRESS$ + "\\%25" + ZONEID$),
        //RFC 6874
    IPV6ADDRZ_RELAXED$ = subexp(IPV6ADDRESS$ + subexp("\\%25|\\%(?!" + HEXDIG$$ + "{2})") + ZONEID$),
        //RFC 6874, with relaxed parsing rules
    IPVFUTURE$ = subexp("[vV]" + HEXDIG$$ + "+\\." + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:]") + "+"),
        IP_LITERAL$ = subexp("\\[" + subexp(IPV6ADDRZ_RELAXED$ + "|" + IPV6ADDRESS$ + "|" + IPVFUTURE$) + "\\]"),
        //RFC 6874
    REG_NAME$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$)) + "*"),
        HOST$ = subexp(IP_LITERAL$ + "|" + IPV4ADDRESS$ + "(?!" + REG_NAME$ + ")" + "|" + REG_NAME$),
        PORT$ = subexp(DIGIT$$ + "*"),
        AUTHORITY$ = subexp(subexp(USERINFO$ + "@") + "?" + HOST$ + subexp("\\:" + PORT$) + "?"),
        PCHAR$ = subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@]")),
        SEGMENT$ = subexp(PCHAR$ + "*"),
        SEGMENT_NZ$ = subexp(PCHAR$ + "+"),
        SEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + "|" + merge(UNRESERVED$$, SUB_DELIMS$$, "[\\@]")) + "+"),
        PATH_ABEMPTY$ = subexp(subexp("\\/" + SEGMENT$) + "*"),
        PATH_ABSOLUTE$ = subexp("\\/" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + "?"),
        //simplified
    PATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$),
        //simplified
    PATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$),
        //simplified
    PATH_EMPTY$ = "(?!" + PCHAR$ + ")",
        PATH$ = subexp(PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$),
        QUERY$ = subexp(subexp(PCHAR$ + "|" + merge("[\\/\\?]", IPRIVATE$$)) + "*"),
        FRAGMENT$ = subexp(subexp(PCHAR$ + "|[\\/\\?]") + "*"),
        HIER_PART$ = subexp(subexp("\\/\\/" + AUTHORITY$ + PATH_ABEMPTY$) + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$),
        URI$ = subexp(SCHEME$ + "\\:" + HIER_PART$ + subexp("\\?" + QUERY$) + "?" + subexp("\\#" + FRAGMENT$) + "?"),
        RELATIVE_PART$ = subexp(subexp("\\/\\/" + AUTHORITY$ + PATH_ABEMPTY$) + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_EMPTY$),
        RELATIVE$ = subexp(RELATIVE_PART$ + subexp("\\?" + QUERY$) + "?" + subexp("\\#" + FRAGMENT$) + "?"),
        URI_REFERENCE$ = subexp(URI$ + "|" + RELATIVE$),
        ABSOLUTE_URI$ = subexp(SCHEME$ + "\\:" + HIER_PART$ + subexp("\\?" + QUERY$) + "?"),
        GENERIC_REF$ = "^(" + SCHEME$ + ")\\:" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?" + subexp("\\#(" + FRAGMENT$ + ")") + "?$",
        RELATIVE_REF$ = "^(){0}" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_NOSCHEME$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?" + subexp("\\#(" + FRAGMENT$ + ")") + "?$",
        ABSOLUTE_REF$ = "^(" + SCHEME$ + ")\\:" + subexp(subexp("\\/\\/(" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?)") + "?(" + PATH_ABEMPTY$ + "|" + PATH_ABSOLUTE$ + "|" + PATH_ROOTLESS$ + "|" + PATH_EMPTY$ + ")") + subexp("\\?(" + QUERY$ + ")") + "?$",
        SAMEDOC_REF$ = "^" + subexp("\\#(" + FRAGMENT$ + ")") + "?$",
        AUTHORITY_REF$ = "^" + subexp("(" + USERINFO$ + ")@") + "?(" + HOST$ + ")" + subexp("\\:(" + PORT$ + ")") + "?$";
    return {
        NOT_SCHEME: new RegExp(merge("[^]", ALPHA$$, DIGIT$$, "[\\+\\-\\.]"), "g"),
        NOT_USERINFO: new RegExp(merge("[^\\%\\:]", UNRESERVED$$, SUB_DELIMS$$), "g"),
        NOT_HOST: new RegExp(merge("[^\\%\\[\\]\\:]", UNRESERVED$$, SUB_DELIMS$$), "g"),
        NOT_PATH: new RegExp(merge("[^\\%\\/\\:\\@]", UNRESERVED$$, SUB_DELIMS$$), "g"),
        NOT_PATH_NOSCHEME: new RegExp(merge("[^\\%\\/\\@]", UNRESERVED$$, SUB_DELIMS$$), "g"),
        NOT_QUERY: new RegExp(merge("[^\\%]", UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@\\/\\?]", IPRIVATE$$), "g"),
        NOT_FRAGMENT: new RegExp(merge("[^\\%]", UNRESERVED$$, SUB_DELIMS$$, "[\\:\\@\\/\\?]"), "g"),
        ESCAPE: new RegExp(merge("[^]", UNRESERVED$$, SUB_DELIMS$$), "g"),
        UNRESERVED: new RegExp(UNRESERVED$$, "g"),
        OTHER_CHARS: new RegExp(merge("[^\\%]", UNRESERVED$$, RESERVED$$), "g"),
        PCT_ENCODED: new RegExp(PCT_ENCODED$, "g"),
        IPV4ADDRESS: new RegExp("^(" + IPV4ADDRESS$ + ")$"),
        IPV6ADDRESS: new RegExp("^\\[?(" + IPV6ADDRESS$ + ")" + subexp(subexp("\\%25|\\%(?!" + HEXDIG$$ + "{2})") + "(" + ZONEID$ + ")") + "?\\]?$") //RFC 6874, with relaxed parsing rules
    };
}
var URI_PROTOCOL = buildExps(false);

var IRI_PROTOCOL = buildExps(true);

var slicedToArray = function () {
  function sliceIterator(arr, i) {
    var _arr = [];
    var _n = true;
    var _d = false;
    var _e = undefined;

    try {
      for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
        _arr.push(_s.value);

        if (i && _arr.length === i) break;
      }
    } catch (err) {
      _d = true;
      _e = err;
    } finally {
      try {
        if (!_n && _i["return"]) _i["return"]();
      } finally {
        if (_d) throw _e;
      }
    }

    return _arr;
  }

  return function (arr, i) {
    if (Array.isArray(arr)) {
      return arr;
    } else if (Symbol.iterator in Object(arr)) {
      return sliceIterator(arr, i);
    } else {
      throw new TypeError("Invalid attempt to destructure non-iterable instance");
    }
  };
}();













var toConsumableArray = function (arr) {
  if (Array.isArray(arr)) {
    for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];

    return arr2;
  } else {
    return Array.from(arr);
  }
};

/** Highest positive signed 32-bit float value */

var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1

/** Bootstring parameters */
var base = 36;
var tMin = 1;
var tMax = 26;
var skew = 38;
var damp = 700;
var initialBias = 72;
var initialN = 128; // 0x80
var delimiter = '-'; // '\x2D'

/** Regular expressions */
var regexPunycode = /^xn--/;
var regexNonASCII = /[^\0-\x7E]/; // non-ASCII chars
var regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; // RFC 3490 separators

/** Error messages */
var errors = {
	'overflow': 'Overflow: input needs wider integers to process',
	'not-basic': 'Illegal input >= 0x80 (not a basic code point)',
	'invalid-input': 'Invalid input'
};

/** Convenience shortcuts */
var baseMinusTMin = base - tMin;
var floor = Math.floor;
var stringFromCharCode = String.fromCharCode;

/*--------------------------------------------------------------------------*/

/**
 * A generic error utility function.
 * @private
 * @param {String} type The error type.
 * @returns {Error} Throws a `RangeError` with the applicable error message.
 */
function error$1(type) {
	throw new RangeError(errors[type]);
}

/**
 * A generic `Array#map` utility function.
 * @private
 * @param {Array} array The array to iterate over.
 * @param {Function} callback The function that gets called for every array
 * item.
 * @returns {Array} A new array of values returned by the callback function.
 */
function map(array, fn) {
	var result = [];
	var length = array.length;
	while (length--) {
		result[length] = fn(array[length]);
	}
	return result;
}

/**
 * A simple `Array#map`-like wrapper to work with domain name strings or email
 * addresses.
 * @private
 * @param {String} domain The domain name or email address.
 * @param {Function} callback The function that gets called for every
 * character.
 * @returns {Array} A new string of characters returned by the callback
 * function.
 */
function mapDomain(string, fn) {
	var parts = string.split('@');
	var result = '';
	if (parts.length > 1) {
		// In email addresses, only the domain name should be punycoded. Leave
		// the local part (i.e. everything up to `@`) intact.
		result = parts[0] + '@';
		string = parts[1];
	}
	// Avoid `split(regex)` for IE8 compatibility. See #17.
	string = string.replace(regexSeparators, '\x2E');
	var labels = string.split('.');
	var encoded = map(labels, fn).join('.');
	return result + encoded;
}

/**
 * Creates an array containing the numeric code points of each Unicode
 * character in the string. While JavaScript uses UCS-2 internally,
 * this function will convert a pair of surrogate halves (each of which
 * UCS-2 exposes as separate characters) into a single code point,
 * matching UTF-16.
 * @see `punycode.ucs2.encode`
 * @see <https://mathiasbynens.be/notes/javascript-encoding>
 * @memberOf punycode.ucs2
 * @name decode
 * @param {String} string The Unicode input string (UCS-2).
 * @returns {Array} The new array of code points.
 */
function ucs2decode(string) {
	var output = [];
	var counter = 0;
	var length = string.length;
	while (counter < length) {
		var value = string.charCodeAt(counter++);
		if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
			// It's a high surrogate, and there is a next character.
			var extra = string.charCodeAt(counter++);
			if ((extra & 0xFC00) == 0xDC00) {
				// Low surrogate.
				output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
			} else {
				// It's an unmatched surrogate; only append this code unit, in case the
				// next code unit is the high surrogate of a surrogate pair.
				output.push(value);
				counter--;
			}
		} else {
			output.push(value);
		}
	}
	return output;
}

/**
 * Creates a string based on an array of numeric code points.
 * @see `punycode.ucs2.decode`
 * @memberOf punycode.ucs2
 * @name encode
 * @param {Array} codePoints The array of numeric code points.
 * @returns {String} The new Unicode string (UCS-2).
 */
var ucs2encode = function ucs2encode(array) {
	return String.fromCodePoint.apply(String, toConsumableArray(array));
};

/**
 * Converts a basic code point into a digit/integer.
 * @see `digitToBasic()`
 * @private
 * @param {Number} codePoint The basic numeric code point value.
 * @returns {Number} The numeric value of a basic code point (for use in
 * representing integers) in the range `0` to `base - 1`, or `base` if
 * the code point does not represent a value.
 */
var basicToDigit = function basicToDigit(codePoint) {
	if (codePoint - 0x30 < 0x0A) {
		return codePoint - 0x16;
	}
	if (codePoint - 0x41 < 0x1A) {
		return codePoint - 0x41;
	}
	if (codePoint - 0x61 < 0x1A) {
		return codePoint - 0x61;
	}
	return base;
};

/**
 * Converts a digit/integer into a basic code point.
 * @see `basicToDigit()`
 * @private
 * @param {Number} digit The numeric value of a basic code point.
 * @returns {Number} The basic code point whose value (when used for
 * representing integers) is `digit`, which needs to be in the range
 * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is
 * used; else, the lowercase form is used. The behavior is undefined
 * if `flag` is non-zero and `digit` has no uppercase form.
 */
var digitToBasic = function digitToBasic(digit, flag) {
	//  0..25 map to ASCII a..z or A..Z
	// 26..35 map to ASCII 0..9
	return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);
};

/**
 * Bias adaptation function as per section 3.4 of RFC 3492.
 * https://tools.ietf.org/html/rfc3492#section-3.4
 * @private
 */
var adapt = function adapt(delta, numPoints, firstTime) {
	var k = 0;
	delta = firstTime ? floor(delta / damp) : delta >> 1;
	delta += floor(delta / numPoints);
	for (; /* no initialization */delta > baseMinusTMin * tMax >> 1; k += base) {
		delta = floor(delta / baseMinusTMin);
	}
	return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));
};

/**
 * Converts a Punycode string of ASCII-only symbols to a string of Unicode
 * symbols.
 * @memberOf punycode
 * @param {String} input The Punycode string of ASCII-only symbols.
 * @returns {String} The resulting string of Unicode symbols.
 */
var decode = function decode(input) {
	// Don't use UCS-2.
	var output = [];
	var inputLength = input.length;
	var i = 0;
	var n = initialN;
	var bias = initialBias;

	// Handle the basic code points: let `basic` be the number of input code
	// points before the last delimiter, or `0` if there is none, then copy
	// the first basic code points to the output.

	var basic = input.lastIndexOf(delimiter);
	if (basic < 0) {
		basic = 0;
	}

	for (var j = 0; j < basic; ++j) {
		// if it's not a basic code point
		if (input.charCodeAt(j) >= 0x80) {
			error$1('not-basic');
		}
		output.push(input.charCodeAt(j));
	}

	// Main decoding loop: start just after the last delimiter if any basic code
	// points were copied; start at the beginning otherwise.

	for (var index = basic > 0 ? basic + 1 : 0; index < inputLength;) /* no final expression */{

		// `index` is the index of the next character to be consumed.
		// Decode a generalized variable-length integer into `delta`,
		// which gets added to `i`. The overflow checking is easier
		// if we increase `i` as we go, then subtract off its starting
		// value at the end to obtain `delta`.
		var oldi = i;
		for (var w = 1, k = base;; /* no condition */k += base) {

			if (index >= inputLength) {
				error$1('invalid-input');
			}

			var digit = basicToDigit(input.charCodeAt(index++));

			if (digit >= base || digit > floor((maxInt - i) / w)) {
				error$1('overflow');
			}

			i += digit * w;
			var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;

			if (digit < t) {
				break;
			}

			var baseMinusT = base - t;
			if (w > floor(maxInt / baseMinusT)) {
				error$1('overflow');
			}

			w *= baseMinusT;
		}

		var out = output.length + 1;
		bias = adapt(i - oldi, out, oldi == 0);

		// `i` was supposed to wrap around from `out` to `0`,
		// incrementing `n` each time, so we'll fix that now:
		if (floor(i / out) > maxInt - n) {
			error$1('overflow');
		}

		n += floor(i / out);
		i %= out;

		// Insert `n` at position `i` of the output.
		output.splice(i++, 0, n);
	}

	return String.fromCodePoint.apply(String, output);
};

/**
 * Converts a string of Unicode symbols (e.g. a domain name label) to a
 * Punycode string of ASCII-only symbols.
 * @memberOf punycode
 * @param {String} input The string of Unicode symbols.
 * @returns {String} The resulting Punycode string of ASCII-only symbols.
 */
var encode = function encode(input) {
	var output = [];

	// Convert the input in UCS-2 to an array of Unicode code points.
	input = ucs2decode(input);

	// Cache the length.
	var inputLength = input.length;

	// Initialize the state.
	var n = initialN;
	var delta = 0;
	var bias = initialBias;

	// Handle the basic code points.
	var _iteratorNormalCompletion = true;
	var _didIteratorError = false;
	var _iteratorError = undefined;

	try {
		for (var _iterator = input[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
			var _currentValue2 = _step.value;

			if (_currentValue2 < 0x80) {
				output.push(stringFromCharCode(_currentValue2));
			}
		}
	} catch (err) {
		_didIteratorError = true;
		_iteratorError = err;
	} finally {
		try {
			if (!_iteratorNormalCompletion && _iterator.return) {
				_iterator.return();
			}
		} finally {
			if (_didIteratorError) {
				throw _iteratorError;
			}
		}
	}

	var basicLength = output.length;
	var handledCPCount = basicLength;

	// `handledCPCount` is the number of code points that have been handled;
	// `basicLength` is the number of basic code points.

	// Finish the basic string with a delimiter unless it's empty.
	if (basicLength) {
		output.push(delimiter);
	}

	// Main encoding loop:
	while (handledCPCount < inputLength) {

		// All non-basic code points < n have been handled already. Find the next
		// larger one:
		var m = maxInt;
		var _iteratorNormalCompletion2 = true;
		var _didIteratorError2 = false;
		var _iteratorError2 = undefined;

		try {
			for (var _iterator2 = input[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
				var currentValue = _step2.value;

				if (currentValue >= n && currentValue < m) {
					m = currentValue;
				}
			}

			// Increase `delta` enough to advance the decoder's <n,i> state to <m,0>,
			// but guard against overflow.
		} catch (err) {
			_didIteratorError2 = true;
			_iteratorError2 = err;
		} finally {
			try {
				if (!_iteratorNormalCompletion2 && _iterator2.return) {
					_iterator2.return();
				}
			} finally {
				if (_didIteratorError2) {
					throw _iteratorError2;
				}
			}
		}

		var handledCPCountPlusOne = handledCPCount + 1;
		if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
			error$1('overflow');
		}

		delta += (m - n) * handledCPCountPlusOne;
		n = m;

		var _iteratorNormalCompletion3 = true;
		var _didIteratorError3 = false;
		var _iteratorError3 = undefined;

		try {
			for (var _iterator3 = input[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
				var _currentValue = _step3.value;

				if (_currentValue < n && ++delta > maxInt) {
					error$1('overflow');
				}
				if (_currentValue == n) {
					// Represent delta as a generalized variable-length integer.
					var q = delta;
					for (var k = base;; /* no condition */k += base) {
						var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;
						if (q < t) {
							break;
						}
						var qMinusT = q - t;
						var baseMinusT = base - t;
						output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)));
						q = floor(qMinusT / baseMinusT);
					}

					output.push(stringFromCharCode(digitToBasic(q, 0)));
					bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);
					delta = 0;
					++handledCPCount;
				}
			}
		} catch (err) {
			_didIteratorError3 = true;
			_iteratorError3 = err;
		} finally {
			try {
				if (!_iteratorNormalCompletion3 && _iterator3.return) {
					_iterator3.return();
				}
			} finally {
				if (_didIteratorError3) {
					throw _iteratorError3;
				}
			}
		}

		++delta;
		++n;
	}
	return output.join('');
};

/**
 * Converts a Punycode string representing a domain name or an email address
 * to Unicode. Only the Punycoded parts of the input will be converted, i.e.
 * it doesn't matter if you call it on a string that has already been
 * converted to Unicode.
 * @memberOf punycode
 * @param {String} input The Punycoded domain name or email address to
 * convert to Unicode.
 * @returns {String} The Unicode representation of the given Punycode
 * string.
 */
var toUnicode = function toUnicode(input) {
	return mapDomain(input, function (string) {
		return regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string;
	});
};

/**
 * Converts a Unicode string representing a domain name or an email address to
 * Punycode. Only the non-ASCII parts of the domain name will be converted,
 * i.e. it doesn't matter if you call it with a domain that's already in
 * ASCII.
 * @memberOf punycode
 * @param {String} input The domain name or email address to convert, as a
 * Unicode string.
 * @returns {String} The Punycode representation of the given domain name or
 * email address.
 */
var toASCII = function toASCII(input) {
	return mapDomain(input, function (string) {
		return regexNonASCII.test(string) ? 'xn--' + encode(string) : string;
	});
};

/*--------------------------------------------------------------------------*/

/** Define the public API */
var punycode = {
	/**
  * A string representing the current Punycode.js version number.
  * @memberOf punycode
  * @type String
  */
	'version': '2.1.0',
	/**
  * An object of methods to convert from JavaScript's internal character
  * representation (UCS-2) to Unicode code points, and back.
  * @see <https://mathiasbynens.be/notes/javascript-encoding>
  * @memberOf punycode
  * @type Object
  */
	'ucs2': {
		'decode': ucs2decode,
		'encode': ucs2encode
	},
	'decode': decode,
	'encode': encode,
	'toASCII': toASCII,
	'toUnicode': toUnicode
};

/**
 * URI.js
 *
 * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript.
 * @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
 * @see http://github.com/garycourt/uri-js
 */
/**
 * Copyright 2011 Gary Court. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without modification, are
 * permitted provided that the following conditions are met:
 *
 *    1. Redistributions of source code must retain the above copyright notice, this list of
 *       conditions and the following disclaimer.
 *
 *    2. Redistributions in binary form must reproduce the above copyright notice, this list
 *       of conditions and the following disclaimer in the documentation and/or other materials
 *       provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY GARY COURT ``AS IS'' AND ANY EXPRESS OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARY COURT OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * The views and conclusions contained in the software and documentation are those of the
 * authors and should not be interpreted as representing official policies, either expressed
 * or implied, of Gary Court.
 */
var SCHEMES = {};
function pctEncChar(chr) {
    var c = chr.charCodeAt(0);
    var e = void 0;
    if (c < 16) e = "%0" + c.toString(16).toUpperCase();else if (c < 128) e = "%" + c.toString(16).toUpperCase();else if (c < 2048) e = "%" + (c >> 6 | 192).toString(16).toUpperCase() + "%" + (c & 63 | 128).toString(16).toUpperCase();else e = "%" + (c >> 12 | 224).toString(16).toUpperCase() + "%" + (c >> 6 & 63 | 128).toString(16).toUpperCase() + "%" + (c & 63 | 128).toString(16).toUpperCase();
    return e;
}
function pctDecChars(str) {
    var newStr = "";
    var i = 0;
    var il = str.length;
    while (i < il) {
        var c = parseInt(str.substr(i + 1, 2), 16);
        if (c < 128) {
            newStr += String.fromCharCode(c);
            i += 3;
        } else if (c >= 194 && c < 224) {
            if (il - i >= 6) {
                var c2 = parseInt(str.substr(i + 4, 2), 16);
                newStr += String.fromCharCode((c & 31) << 6 | c2 & 63);
            } else {
                newStr += str.substr(i, 6);
            }
            i += 6;
        } else if (c >= 224) {
            if (il - i >= 9) {
                var _c = parseInt(str.substr(i + 4, 2), 16);
                var c3 = parseInt(str.substr(i + 7, 2), 16);
                newStr += String.fromCharCode((c & 15) << 12 | (_c & 63) << 6 | c3 & 63);
            } else {
                newStr += str.substr(i, 9);
            }
            i += 9;
        } else {
            newStr += str.substr(i, 3);
            i += 3;
        }
    }
    return newStr;
}
function _normalizeComponentEncoding(components, protocol) {
    function decodeUnreserved(str) {
        var decStr = pctDecChars(str);
        return !decStr.match(protocol.UNRESERVED) ? str : decStr;
    }
    if (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, "");
    if (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
    if (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
    if (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
    if (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
    if (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);
    return components;
}

function _stripLeadingZeros(str) {
    return str.replace(/^0*(.*)/, "$1") || "0";
}
function _normalizeIPv4(host, protocol) {
    var matches = host.match(protocol.IPV4ADDRESS) || [];

    var _matches = slicedToArray(matches, 2),
        address = _matches[1];

    if (address) {
        return address.split(".").map(_stripLeadingZeros).join(".");
    } else {
        return host;
    }
}
function _normalizeIPv6(host, protocol) {
    var matches = host.match(protocol.IPV6ADDRESS) || [];

    var _matches2 = slicedToArray(matches, 3),
        address = _matches2[1],
        zone = _matches2[2];

    if (address) {
        var _address$toLowerCase$ = address.toLowerCase().split('::').reverse(),
            _address$toLowerCase$2 = slicedToArray(_address$toLowerCase$, 2),
            last = _address$toLowerCase$2[0],
            first = _address$toLowerCase$2[1];

        var firstFields = first ? first.split(":").map(_stripLeadingZeros) : [];
        var lastFields = last.split(":").map(_stripLeadingZeros);
        var isLastFieldIPv4Address = protocol.IPV4ADDRESS.test(lastFields[lastFields.length - 1]);
        var fieldCount = isLastFieldIPv4Address ? 7 : 8;
        var lastFieldsStart = lastFields.length - fieldCount;
        var fields = Array(fieldCount);
        for (var x = 0; x < fieldCount; ++x) {
            fields[x] = firstFields[x] || lastFields[lastFieldsStart + x] || '';
        }
        if (isLastFieldIPv4Address) {
            fields[fieldCount - 1] = _normalizeIPv4(fields[fieldCount - 1], protocol);
        }
        var allZeroFields = fields.reduce(function (acc, field, index) {
            if (!field || field === "0") {
                var lastLongest = acc[acc.length - 1];
                if (lastLongest && lastLongest.index + lastLongest.length === index) {
                    lastLongest.length++;
                } else {
                    acc.push({ index: index, length: 1 });
                }
            }
            return acc;
        }, []);
        var longestZeroFields = allZeroFields.sort(function (a, b) {
            return b.length - a.length;
        })[0];
        var newHost = void 0;
        if (longestZeroFields && longestZeroFields.length > 1) {
            var newFirst = fields.slice(0, longestZeroFields.index);
            var newLast = fields.slice(longestZeroFields.index + longestZeroFields.length);
            newHost = newFirst.join(":") + "::" + newLast.join(":");
        } else {
            newHost = fields.join(":");
        }
        if (zone) {
            newHost += "%" + zone;
        }
        return newHost;
    } else {
        return host;
    }
}
var URI_PARSE = /^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i;
var NO_MATCH_IS_UNDEFINED = "".match(/(){0}/)[1] === undefined;
function parse(uriString) {
    var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

    var components = {};
    var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL;
    if (options.reference === "suffix") uriString = (options.scheme ? options.scheme + ":" : "") + "//" + uriString;
    var matches = uriString.match(URI_PARSE);
    if (matches) {
        if (NO_MATCH_IS_UNDEFINED) {
            //store each component
            components.scheme = matches[1];
            components.userinfo = matches[3];
            components.host = matches[4];
            components.port = parseInt(matches[5], 10);
            components.path = matches[6] || "";
            components.query = matches[7];
            components.fragment = matches[8];
            //fix port number
            if (isNaN(components.port)) {
                components.port = matches[5];
            }
        } else {
            //IE FIX for improper RegExp matching
            //store each component
            components.scheme = matches[1] || undefined;
            components.userinfo = uriString.indexOf("@") !== -1 ? matches[3] : undefined;
            components.host = uriString.indexOf("//") !== -1 ? matches[4] : undefined;
            components.port = parseInt(matches[5], 10);
            components.path = matches[6] || "";
            components.query = uriString.indexOf("?") !== -1 ? matches[7] : undefined;
            components.fragment = uriString.indexOf("#") !== -1 ? matches[8] : undefined;
            //fix port number
            if (isNaN(components.port)) {
                components.port = uriString.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/) ? matches[4] : undefined;
            }
        }
        if (components.host) {
            //normalize IP hosts
            components.host = _normalizeIPv6(_normalizeIPv4(components.host, protocol), protocol);
        }
        //determine reference type
        if (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) {
            components.reference = "same-document";
        } else if (components.scheme === undefined) {
            components.reference = "relative";
        } else if (components.fragment === undefined) {
            components.reference = "absolute";
        } else {
            components.reference = "uri";
        }
        //check for reference errors
        if (options.reference && options.reference !== "suffix" && options.reference !== components.reference) {
            components.error = components.error || "URI is not a " + options.reference + " reference.";
        }
        //find scheme handler
        var schemeHandler = SCHEMES[(options.scheme || components.scheme || "").toLowerCase()];
        //check if scheme can't handle IRIs
        if (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {
            //if host component is a domain name
            if (components.host && (options.domainHost || schemeHandler && schemeHandler.domainHost)) {
                //convert Unicode IDN -> ASCII IDN
                try {
                    components.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase());
                } catch (e) {
                    components.error = components.error || "Host's domain name can not be converted to ASCII via punycode: " + e;
                }
            }
            //convert IRI -> URI
            _normalizeComponentEncoding(components, URI_PROTOCOL);
        } else {
            //normalize encodings
            _normalizeComponentEncoding(components, protocol);
        }
        //perform scheme specific parsing
        if (schemeHandler && schemeHandler.parse) {
            schemeHandler.parse(components, options);
        }
    } else {
        components.error = components.error || "URI can not be parsed.";
    }
    return components;
}

function _recomposeAuthority(components, options) {
    var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL;
    var uriTokens = [];
    if (components.userinfo !== undefined) {
        uriTokens.push(components.userinfo);
        uriTokens.push("@");
    }
    if (components.host !== undefined) {
        //normalize IP hosts, add brackets and escape zone separator for IPv6
        uriTokens.push(_normalizeIPv6(_normalizeIPv4(String(components.host), protocol), protocol).replace(protocol.IPV6ADDRESS, function (_, $1, $2) {
            return "[" + $1 + ($2 ? "%25" + $2 : "") + "]";
        }));
    }
    if (typeof components.port === "number" || typeof components.port === "string") {
        uriTokens.push(":");
        uriTokens.push(String(components.port));
    }
    return uriTokens.length ? uriTokens.join("") : undefined;
}

var RDS1 = /^\.\.?\//;
var RDS2 = /^\/\.(\/|$)/;
var RDS3 = /^\/\.\.(\/|$)/;
var RDS5 = /^\/?(?:.|\n)*?(?=\/|$)/;
function removeDotSegments(input) {
    var output = [];
    while (input.length) {
        if (input.match(RDS1)) {
            input = input.replace(RDS1, "");
        } else if (input.match(RDS2)) {
            input = input.replace(RDS2, "/");
        } else if (input.match(RDS3)) {
            input = input.replace(RDS3, "/");
            output.pop();
        } else if (input === "." || input === "..") {
            input = "";
        } else {
            var im = input.match(RDS5);
            if (im) {
                var s = im[0];
                input = input.slice(s.length);
                output.push(s);
            } else {
                throw new Error("Unexpected dot segment condition");
            }
        }
    }
    return output.join("");
}

function serialize(components) {
    var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

    var protocol = options.iri ? IRI_PROTOCOL : URI_PROTOCOL;
    var uriTokens = [];
    //find scheme handler
    var schemeHandler = SCHEMES[(options.scheme || components.scheme || "").toLowerCase()];
    //perform scheme specific serialization
    if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options);
    if (components.host) {
        //if host component is an IPv6 address
        if (protocol.IPV6ADDRESS.test(components.host)) {}
        //TODO: normalize IPv6 address as per RFC 5952

        //if host component is a domain name
        else if (options.domainHost || schemeHandler && schemeHandler.domainHost) {
                //convert IDN via punycode
                try {
                    components.host = !options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host);
                } catch (e) {
                    components.error = components.error || "Host's domain name can not be converted to " + (!options.iri ? "ASCII" : "Unicode") + " via punycode: " + e;
                }
            }
    }
    //normalize encoding
    _normalizeComponentEncoding(components, protocol);
    if (options.reference !== "suffix" && components.scheme) {
        uriTokens.push(components.scheme);
        uriTokens.push(":");
    }
    var authority = _recomposeAuthority(components, options);
    if (authority !== undefined) {
        if (options.reference !== "suffix") {
            uriTokens.push("//");
        }
        uriTokens.push(authority);
        if (components.path && components.path.charAt(0) !== "/") {
            uriTokens.push("/");
        }
    }
    if (components.path !== undefined) {
        var s = components.path;
        if (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {
            s = removeDotSegments(s);
        }
        if (authority === undefined) {
            s = s.replace(/^\/\//, "/%2F"); //don't allow the path to start with "//"
        }
        uriTokens.push(s);
    }
    if (components.query !== undefined) {
        uriTokens.push("?");
        uriTokens.push(components.query);
    }
    if (components.fragment !== undefined) {
        uriTokens.push("#");
        uriTokens.push(components.fragment);
    }
    return uriTokens.join(""); //merge tokens into a string
}

function resolveComponents(base, relative) {
    var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
    var skipNormalization = arguments[3];

    var target = {};
    if (!skipNormalization) {
        base = parse(serialize(base, options), options); //normalize base components
        relative = parse(serialize(relative, options), options); //normalize relative components
    }
    options = options || {};
    if (!options.tolerant && relative.scheme) {
        target.scheme = relative.scheme;
        //target.authority = relative.authority;
        target.userinfo = relative.userinfo;
        target.host = relative.host;
        target.port = relative.port;
        target.path = removeDotSegments(relative.path || "");
        target.query = relative.query;
    } else {
        if (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) {
            //target.authority = relative.authority;
            target.userinfo = relative.userinfo;
            target.host = relative.host;
            target.port = relative.port;
            target.path = removeDotSegments(relative.path || "");
            target.query = relative.query;
        } else {
            if (!relative.path) {
                target.path = base.path;
                if (relative.query !== undefined) {
                    target.query = relative.query;
                } else {
                    target.query = base.query;
                }
            } else {
                if (relative.path.charAt(0) === "/") {
                    target.path = removeDotSegments(relative.path);
                } else {
                    if ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) {
                        target.path = "/" + relative.path;
                    } else if (!base.path) {
                        target.path = relative.path;
                    } else {
                        target.path = base.path.slice(0, base.path.lastIndexOf("/") + 1) + relative.path;
                    }
                    target.path = removeDotSegments(target.path);
                }
                target.query = relative.query;
            }
            //target.authority = base.authority;
            target.userinfo = base.userinfo;
            target.host = base.host;
            target.port = base.port;
        }
        target.scheme = base.scheme;
    }
    target.fragment = relative.fragment;
    return target;
}

function resolve(baseURI, relativeURI, options) {
    var schemelessOptions = assign({ scheme: 'null' }, options);
    return serialize(resolveComponents(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true), schemelessOptions);
}

function normalize(uri, options) {
    if (typeof uri === "string") {
        uri = serialize(parse(uri, options), options);
    } else if (typeOf(uri) === "object") {
        uri = parse(serialize(uri, options), options);
    }
    return uri;
}

function equal(uriA, uriB, options) {
    if (typeof uriA === "string") {
        uriA = serialize(parse(uriA, options), options);
    } else if (typeOf(uriA) === "object") {
        uriA = serialize(uriA, options);
    }
    if (typeof uriB === "string") {
        uriB = serialize(parse(uriB, options), options);
    } else if (typeOf(uriB) === "object") {
        uriB = serialize(uriB, options);
    }
    return uriA === uriB;
}

function escapeComponent(str, options) {
    return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE, pctEncChar);
}

function unescapeComponent(str, options) {
    return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED, pctDecChars);
}

var handler = {
    scheme: "http",
    domainHost: true,
    parse: function parse(components, options) {
        //report missing host
        if (!components.host) {
            components.error = components.error || "HTTP URIs must have a host.";
        }
        return components;
    },
    serialize: function serialize(components, options) {
        var secure = String(components.scheme).toLowerCase() === "https";
        //normalize the default port
        if (components.port === (secure ? 443 : 80) || components.port === "") {
            components.port = undefined;
        }
        //normalize the empty path
        if (!components.path) {
            components.path = "/";
        }
        //NOTE: We do not parse query strings for HTTP URIs
        //as WWW Form Url Encoded query strings are part of the HTML4+ spec,
        //and not the HTTP spec.
        return components;
    }
};

var handler$1 = {
    scheme: "https",
    domainHost: handler.domainHost,
    parse: handler.parse,
    serialize: handler.serialize
};

function isSecure(wsComponents) {
    return typeof wsComponents.secure === 'boolean' ? wsComponents.secure : String(wsComponents.scheme).toLowerCase() === "wss";
}
//RFC 6455
var handler$2 = {
    scheme: "ws",
    domainHost: true,
    parse: function parse(components, options) {
        var wsComponents = components;
        //indicate if the secure flag is set
        wsComponents.secure = isSecure(wsComponents);
        //construct resouce name
        wsComponents.resourceName = (wsComponents.path || '/') + (wsComponents.query ? '?' + wsComponents.query : '');
        wsComponents.path = undefined;
        wsComponents.query = undefined;
        return wsComponents;
    },
    serialize: function serialize(wsComponents, options) {
        //normalize the default port
        if (wsComponents.port === (isSecure(wsComponents) ? 443 : 80) || wsComponents.port === "") {
            wsComponents.port = undefined;
        }
        //ensure scheme matches secure flag
        if (typeof wsComponents.secure === 'boolean') {
            wsComponents.scheme = wsComponents.secure ? 'wss' : 'ws';
            wsComponents.secure = undefined;
        }
        //reconstruct path from resource name
        if (wsComponents.resourceName) {
            var _wsComponents$resourc = wsComponents.resourceName.split('?'),
                _wsComponents$resourc2 = slicedToArray(_wsComponents$resourc, 2),
                path = _wsComponents$resourc2[0],
                query = _wsComponents$resourc2[1];

            wsComponents.path = path && path !== '/' ? path : undefined;
            wsComponents.query = query;
            wsComponents.resourceName = undefined;
        }
        //forbid fragment component
        wsComponents.fragment = undefined;
        return wsComponents;
    }
};

var handler$3 = {
    scheme: "wss",
    domainHost: handler$2.domainHost,
    parse: handler$2.parse,
    serialize: handler$2.serialize
};

var O = {};
var isIRI = true;
//RFC 3986
var UNRESERVED$$ = "[A-Za-z0-9\\-\\.\\_\\~" + (isIRI ? "\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF" : "") + "]";
var HEXDIG$$ = "[0-9A-Fa-f]"; //case-insensitive
var PCT_ENCODED$ = subexp(subexp("%[EFef]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%[89A-Fa-f]" + HEXDIG$$ + "%" + HEXDIG$$ + HEXDIG$$) + "|" + subexp("%" + HEXDIG$$ + HEXDIG$$)); //expanded
//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; =
//const ATEXT$$ = "[A-Za-z0-9\\!\\#\\$\\%\\&\\'\\*\\+\\-\\/\\=\\?\\^\\_\\`\\{\\|\\}\\~]";
//const WSP$$ = "[\\x20\\x09]";
//const OBS_QTEXT$$ = "[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7F]";  //(%d1-8 / %d11-12 / %d14-31 / %d127)
//const QTEXT$$ = merge("[\\x21\\x23-\\x5B\\x5D-\\x7E]", OBS_QTEXT$$);  //%d33 / %d35-91 / %d93-126 / obs-qtext
//const VCHAR$$ = "[\\x21-\\x7E]";
//const WSP$$ = "[\\x20\\x09]";
//const OBS_QP$ = subexp("\\\\" + merge("[\\x00\\x0D\\x0A]", OBS_QTEXT$$));  //%d0 / CR / LF / obs-qtext
//const FWS$ = subexp(subexp(WSP$$ + "*" + "\\x0D\\x0A") + "?" + WSP$$ + "+");
//const QUOTED_PAIR$ = subexp(subexp("\\\\" + subexp(VCHAR$$ + "|" + WSP$$)) + "|" + OBS_QP$);
//const QUOTED_STRING$ = subexp('\\"' + subexp(FWS$ + "?" + QCONTENT$) + "*" + FWS$ + "?" + '\\"');
var ATEXT$$ = "[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]";
var QTEXT$$ = "[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]";
var VCHAR$$ = merge(QTEXT$$, "[\\\"\\\\]");
var SOME_DELIMS$$ = "[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]";
var UNRESERVED = new RegExp(UNRESERVED$$, "g");
var PCT_ENCODED = new RegExp(PCT_ENCODED$, "g");
var NOT_LOCAL_PART = new RegExp(merge("[^]", ATEXT$$, "[\\.]", '[\\"]', VCHAR$$), "g");
var NOT_HFNAME = new RegExp(merge("[^]", UNRESERVED$$, SOME_DELIMS$$), "g");
var NOT_HFVALUE = NOT_HFNAME;
function decodeUnreserved(str) {
    var decStr = pctDecChars(str);
    return !decStr.match(UNRESERVED) ? str : decStr;
}
var handler$4 = {
    scheme: "mailto",
    parse: function parse$$1(components, options) {
        var mailtoComponents = components;
        var to = mailtoComponents.to = mailtoComponents.path ? mailtoComponents.path.split(",") : [];
        mailtoComponents.path = undefined;
        if (mailtoComponents.query) {
            var unknownHeaders = false;
            var headers = {};
            var hfields = mailtoComponents.query.split("&");
            for (var x = 0, xl = hfields.length; x < xl; ++x) {
                var hfield = hfields[x].split("=");
                switch (hfield[0]) {
                    case "to":
                        var toAddrs = hfield[1].split(",");
                        for (var _x = 0, _xl = toAddrs.length; _x < _xl; ++_x) {
                            to.push(toAddrs[_x]);
                        }
                        break;
                    case "subject":
                        mailtoComponents.subject = unescapeComponent(hfield[1], options);
                        break;
                    case "body":
                        mailtoComponents.body = unescapeComponent(hfield[1], options);
                        break;
                    default:
                        unknownHeaders = true;
                        headers[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options);
                        break;
                }
            }
            if (unknownHeaders) mailtoComponents.headers = headers;
        }
        mailtoComponents.query = undefined;
        for (var _x2 = 0, _xl2 = to.length; _x2 < _xl2; ++_x2) {
            var addr = to[_x2].split("@");
            addr[0] = unescapeComponent(addr[0]);
            if (!options.unicodeSupport) {
                //convert Unicode IDN -> ASCII IDN
                try {
                    addr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase());
                } catch (e) {
                    mailtoComponents.error = mailtoComponents.error || "Email address's domain name can not be converted to ASCII via punycode: " + e;
                }
            } else {
                addr[1] = unescapeComponent(addr[1], options).toLowerCase();
            }
            to[_x2] = addr.join("@");
        }
        return mailtoComponents;
    },
    serialize: function serialize$$1(mailtoComponents, options) {
        var components = mailtoComponents;
        var to = toArray(mailtoComponents.to);
        if (to) {
            for (var x = 0, xl = to.length; x < xl; ++x) {
                var toAddr = String(to[x]);
                var atIdx = toAddr.lastIndexOf("@");
                var localPart = toAddr.slice(0, atIdx).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar);
                var domain = toAddr.slice(atIdx + 1);
                //convert IDN via punycode
                try {
                    domain = !options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain);
                } catch (e) {
                    components.error = components.error || "Email address's domain name can not be converted to " + (!options.iri ? "ASCII" : "Unicode") + " via punycode: " + e;
                }
                to[x] = localPart + "@" + domain;
            }
            components.path = to.join(",");
        }
        var headers = mailtoComponents.headers = mailtoComponents.headers || {};
        if (mailtoComponents.subject) headers["subject"] = mailtoComponents.subject;
        if (mailtoComponents.body) headers["body"] = mailtoComponents.body;
        var fields = [];
        for (var name in headers) {
            if (headers[name] !== O[name]) {
                fields.push(name.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) + "=" + headers[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar));
            }
        }
        if (fields.length) {
            components.query = fields.join("&");
        }
        return components;
    }
};

var URN_PARSE = /^([^\:]+)\:(.*)/;
//RFC 2141
var handler$5 = {
    scheme: "urn",
    parse: function parse$$1(components, options) {
        var matches = components.path && components.path.match(URN_PARSE);
        var urnComponents = components;
        if (matches) {
            var scheme = options.scheme || urnComponents.scheme || "urn";
            var nid = matches[1].toLowerCase();
            var nss = matches[2];
            var urnScheme = scheme + ":" + (options.nid || nid);
            var schemeHandler = SCHEMES[urnScheme];
            urnComponents.nid = nid;
            urnComponents.nss = nss;
            urnComponents.path = undefined;
            if (schemeHandler) {
                urnComponents = schemeHandler.parse(urnComponents, options);
            }
        } else {
            urnComponents.error = urnComponents.error || "URN can not be parsed.";
        }
        return urnComponents;
    },
    serialize: function serialize$$1(urnComponents, options) {
        var scheme = options.scheme || urnComponents.scheme || "urn";
        var nid = urnComponents.nid;
        var urnScheme = scheme + ":" + (options.nid || nid);
        var schemeHandler = SCHEMES[urnScheme];
        if (schemeHandler) {
            urnComponents = schemeHandler.serialize(urnComponents, options);
        }
        var uriComponents = urnComponents;
        var nss = urnComponents.nss;
        uriComponents.path = (nid || options.nid) + ":" + nss;
        return uriComponents;
    }
};

var UUID = /^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/;
//RFC 4122
var handler$6 = {
    scheme: "urn:uuid",
    parse: function parse(urnComponents, options) {
        var uuidComponents = urnComponents;
        uuidComponents.uuid = uuidComponents.nss;
        uuidComponents.nss = undefined;
        if (!options.tolerant && (!uuidComponents.uuid || !uuidComponents.uuid.match(UUID))) {
            uuidComponents.error = uuidComponents.error || "UUID is not valid.";
        }
        return uuidComponents;
    },
    serialize: function serialize(uuidComponents, options) {
        var urnComponents = uuidComponents;
        //normalize UUID
        urnComponents.nss = (uuidComponents.uuid || "").toLowerCase();
        return urnComponents;
    }
};

SCHEMES[handler.scheme] = handler;
SCHEMES[handler$1.scheme] = handler$1;
SCHEMES[handler$2.scheme] = handler$2;
SCHEMES[handler$3.scheme] = handler$3;
SCHEMES[handler$4.scheme] = handler$4;
SCHEMES[handler$5.scheme] = handler$5;
SCHEMES[handler$6.scheme] = handler$6;

exports.SCHEMES = SCHEMES;
exports.pctEncChar = pctEncChar;
exports.pctDecChars = pctDecChars;
exports.parse = parse;
exports.removeDotSegments = removeDotSegments;
exports.serialize = serialize;
exports.resolveComponents = resolveComponents;
exports.resolve = resolve;
exports.normalize = normalize;
exports.equal = equal;
exports.escapeComponent = escapeComponent;
exports.unescapeComponent = unescapeComponent;

Object.defineProperty(exports, '__esModule', { value: true });

})));
//# sourceMappingURL=uri.all.js.map


/***/ }),

/***/ 12821:
/***/ (function(module) {

(function (name, context, definition) {
  if ( true && module.exports) module.exports = definition();
  else if (typeof define === 'function' && define.amd) define(definition);
  else context[name] = definition();
})('urljoin', this, function () {

  function normalize (strArray) {
    var resultArray = [];
    if (strArray.length === 0) { return ''; }

    if (typeof strArray[0] !== 'string') {
      throw new TypeError('Url must be a string. Received ' + strArray[0]);
    }

    // If the first part is a plain protocol, we combine it with the next part.
    if (strArray[0].match(/^[^/:]+:\/*$/) && strArray.length > 1) {
      var first = strArray.shift();
      strArray[0] = first + strArray[0];
    }

    // There must be two or three slashes in the file protocol, two slashes in anything else.
    if (strArray[0].match(/^file:\/\/\//)) {
      strArray[0] = strArray[0].replace(/^([^/:]+):\/*/, '$1:///');
    } else {
      strArray[0] = strArray[0].replace(/^([^/:]+):\/*/, '$1://');
    }

    for (var i = 0; i < strArray.length; i++) {
      var component = strArray[i];

      if (typeof component !== 'string') {
        throw new TypeError('Url must be a string. Received ' + component);
      }

      if (component === '') { continue; }

      if (i > 0) {
        // Removing the starting slashes for each component but the first.
        component = component.replace(/^[\/]+/, '');
      }
      if (i < strArray.length - 1) {
        // Removing the ending slashes for each component but the last.
        component = component.replace(/[\/]+$/, '');
      } else {
        // For the last component we will combine multiple slashes to a single one.
        component = component.replace(/[\/]+$/, '/');
      }

      resultArray.push(component);

    }

    var str = resultArray.join('/');
    // Each input component is now separated by a single slash except the possible first plain protocol part.

    // remove trailing slash before parameters or hash
    str = str.replace(/\/(\?|&|#[^!])/g, '$1');

    // replace ? in parameters with &
    var parts = str.split('?');
    str = parts.shift() + (parts.length > 0 ? '?': '') + parts.join('&');

    return str;
  }

  return function () {
    var input;

    if (typeof arguments[0] === 'object') {
      input = arguments[0];
    } else {
      input = [].slice.call(arguments);
    }

    return normalize(input);
  };

});


/***/ }),

/***/ 13194:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

const url = __webpack_require__(78835);
const prependHttp = __webpack_require__(56143);

module.exports = (input, options) => {
	if (typeof input !== 'string') {
		throw new TypeError(`Expected \`url\` to be of type \`string\`, got \`${typeof input}\` instead.`);
	}

	const finalUrl = prependHttp(input, Object.assign({https: true}, options));
	return url.parse(finalUrl);
};


/***/ }),

/***/ 2155:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var v1 = __webpack_require__(18749);
var v4 = __webpack_require__(80824);

var uuid = v4;
uuid.v1 = v1;
uuid.v4 = v4;

module.exports = uuid;


/***/ }),

/***/ 92707:
/***/ ((module) => {

/**
 * Convert array of 16 byte values to UUID string format of the form:
 * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
 */
var byteToHex = [];
for (var i = 0; i < 256; ++i) {
  byteToHex[i] = (i + 0x100).toString(16).substr(1);
}

function bytesToUuid(buf, offset) {
  var i = offset || 0;
  var bth = byteToHex;
  // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
  return ([bth[buf[i++]], bth[buf[i++]], 
	bth[buf[i++]], bth[buf[i++]], '-',
	bth[buf[i++]], bth[buf[i++]], '-',
	bth[buf[i++]], bth[buf[i++]], '-',
	bth[buf[i++]], bth[buf[i++]], '-',
	bth[buf[i++]], bth[buf[i++]],
	bth[buf[i++]], bth[buf[i++]],
	bth[buf[i++]], bth[buf[i++]]]).join('');
}

module.exports = bytesToUuid;


/***/ }),

/***/ 15859:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Unique ID creation requires a high quality random # generator.  In node.js
// this is pretty straight-forward - we use the crypto API.

var crypto = __webpack_require__(33373);

module.exports = function nodeRNG() {
  return crypto.randomBytes(16);
};


/***/ }),

/***/ 18749:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var rng = __webpack_require__(15859);
var bytesToUuid = __webpack_require__(92707);

// **`v1()` - Generate time-based UUID**
//
// Inspired by https://github.com/LiosK/UUID.js
// and http://docs.python.org/library/uuid.html

var _nodeId;
var _clockseq;

// Previous uuid creation time
var _lastMSecs = 0;
var _lastNSecs = 0;

// See https://github.com/broofa/node-uuid for API details
function v1(options, buf, offset) {
  var i = buf && offset || 0;
  var b = buf || [];

  options = options || {};
  var node = options.node || _nodeId;
  var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;

  // node and clockseq need to be initialized to random values if they're not
  // specified.  We do this lazily to minimize issues related to insufficient
  // system entropy.  See #189
  if (node == null || clockseq == null) {
    var seedBytes = rng();
    if (node == null) {
      // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
      node = _nodeId = [
        seedBytes[0] | 0x01,
        seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]
      ];
    }
    if (clockseq == null) {
      // Per 4.2.2, randomize (14 bit) clockseq
      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;
    }
  }

  // UUID timestamps are 100 nano-second units since the Gregorian epoch,
  // (1582-10-15 00:00).  JSNumbers aren't precise enough for this, so
  // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
  // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
  var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();

  // Per 4.2.1.2, use count of uuid's generated during the current clock
  // cycle to simulate higher resolution clock
  var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;

  // Time since last uuid creation (in msecs)
  var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;

  // Per 4.2.1.2, Bump clockseq on clock regression
  if (dt < 0 && options.clockseq === undefined) {
    clockseq = clockseq + 1 & 0x3fff;
  }

  // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
  // time interval
  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {
    nsecs = 0;
  }

  // Per 4.2.1.2 Throw error if too many uuids are requested
  if (nsecs >= 10000) {
    throw new Error('uuid.v1(): Can\'t create more than 10M uuids/sec');
  }

  _lastMSecs = msecs;
  _lastNSecs = nsecs;
  _clockseq = clockseq;

  // Per 4.1.4 - Convert from unix epoch to Gregorian epoch
  msecs += 12219292800000;

  // `time_low`
  var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
  b[i++] = tl >>> 24 & 0xff;
  b[i++] = tl >>> 16 & 0xff;
  b[i++] = tl >>> 8 & 0xff;
  b[i++] = tl & 0xff;

  // `time_mid`
  var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;
  b[i++] = tmh >>> 8 & 0xff;
  b[i++] = tmh & 0xff;

  // `time_high_and_version`
  b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
  b[i++] = tmh >>> 16 & 0xff;

  // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
  b[i++] = clockseq >>> 8 | 0x80;

  // `clock_seq_low`
  b[i++] = clockseq & 0xff;

  // `node`
  for (var n = 0; n < 6; ++n) {
    b[i + n] = node[n];
  }

  return buf ? buf : bytesToUuid(b);
}

module.exports = v1;


/***/ }),

/***/ 80824:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var rng = __webpack_require__(15859);
var bytesToUuid = __webpack_require__(92707);

function v4(options, buf, offset) {
  var i = buf && offset || 0;

  if (typeof(options) == 'string') {
    buf = options === 'binary' ? new Array(16) : null;
    options = null;
  }
  options = options || {};

  var rnds = options.random || (options.rng || rng)();

  // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
  rnds[6] = (rnds[6] & 0x0f) | 0x40;
  rnds[8] = (rnds[8] & 0x3f) | 0x80;

  // Copy bytes to buffer, if provided
  if (buf) {
    for (var ii = 0; ii < 16; ++ii) {
      buf[i + ii] = rnds[ii];
    }
  }

  return buf || bytesToUuid(rnds);
}

module.exports = v4;


/***/ }),

/***/ 81692:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/*
 * verror.js: richer JavaScript errors
 */

var mod_assertplus = __webpack_require__(66631);
var mod_util = __webpack_require__(31669);

var mod_extsprintf = __webpack_require__(41508);
var mod_isError = __webpack_require__(95898)/* .isError */ .VZ;
var sprintf = mod_extsprintf.sprintf;

/*
 * Public interface
 */

/* So you can 'var VError = require('verror')' */
module.exports = VError;
/* For compatibility */
VError.VError = VError;
/* Other exported classes */
VError.SError = SError;
VError.WError = WError;
VError.MultiError = MultiError;

/*
 * Common function used to parse constructor arguments for VError, WError, and
 * SError.  Named arguments to this function:
 *
 *     strict		force strict interpretation of sprintf arguments, even
 *     			if the options in "argv" don't say so
 *
 *     argv		error's constructor arguments, which are to be
 *     			interpreted as described in README.md.  For quick
 *     			reference, "argv" has one of the following forms:
 *
 *          [ sprintf_args... ]           (argv[0] is a string)
 *          [ cause, sprintf_args... ]    (argv[0] is an Error)
 *          [ options, sprintf_args... ]  (argv[0] is an object)
 *
 * This function normalizes these forms, producing an object with the following
 * properties:
 *
 *    options           equivalent to "options" in third form.  This will never
 *    			be a direct reference to what the caller passed in
 *    			(i.e., it may be a shallow copy), so it can be freely
 *    			modified.
 *
 *    shortmessage      result of sprintf(sprintf_args), taking options.strict
 *    			into account as described in README.md.
 */
function parseConstructorArguments(args)
{
	var argv, options, sprintf_args, shortmessage, k;

	mod_assertplus.object(args, 'args');
	mod_assertplus.bool(args.strict, 'args.strict');
	mod_assertplus.array(args.argv, 'args.argv');
	argv = args.argv;

	/*
	 * First, figure out which form of invocation we've been given.
	 */
	if (argv.length === 0) {
		options = {};
		sprintf_args = [];
	} else if (mod_isError(argv[0])) {
		options = { 'cause': argv[0] };
		sprintf_args = argv.slice(1);
	} else if (typeof (argv[0]) === 'object') {
		options = {};
		for (k in argv[0]) {
			options[k] = argv[0][k];
		}
		sprintf_args = argv.slice(1);
	} else {
		mod_assertplus.string(argv[0],
		    'first argument to VError, SError, or WError ' +
		    'constructor must be a string, object, or Error');
		options = {};
		sprintf_args = argv;
	}

	/*
	 * Now construct the error's message.
	 *
	 * extsprintf (which we invoke here with our caller's arguments in order
	 * to construct this Error's message) is strict in its interpretation of
	 * values to be processed by the "%s" specifier.  The value passed to
	 * extsprintf must actually be a string or something convertible to a
	 * String using .toString().  Passing other values (notably "null" and
	 * "undefined") is considered a programmer error.  The assumption is
	 * that if you actually want to print the string "null" or "undefined",
	 * then that's easy to do that when you're calling extsprintf; on the
	 * other hand, if you did NOT want that (i.e., there's actually a bug
	 * where the program assumes some variable is non-null and tries to
	 * print it, which might happen when constructing a packet or file in
	 * some specific format), then it's better to stop immediately than
	 * produce bogus output.
	 *
	 * However, sometimes the bug is only in the code calling VError, and a
	 * programmer might prefer to have the error message contain "null" or
	 * "undefined" rather than have the bug in the error path crash the
	 * program (making the first bug harder to identify).  For that reason,
	 * by default VError converts "null" or "undefined" arguments to their
	 * string representations and passes those to extsprintf.  Programmers
	 * desiring the strict behavior can use the SError class or pass the
	 * "strict" option to the VError constructor.
	 */
	mod_assertplus.object(options);
	if (!options.strict && !args.strict) {
		sprintf_args = sprintf_args.map(function (a) {
			return (a === null ? 'null' :
			    a === undefined ? 'undefined' : a);
		});
	}

	if (sprintf_args.length === 0) {
		shortmessage = '';
	} else {
		shortmessage = sprintf.apply(null, sprintf_args);
	}

	return ({
	    'options': options,
	    'shortmessage': shortmessage
	});
}

/*
 * See README.md for reference documentation.
 */
function VError()
{
	var args, obj, parsed, cause, ctor, message, k;

	args = Array.prototype.slice.call(arguments, 0);

	/*
	 * This is a regrettable pattern, but JavaScript's built-in Error class
	 * is defined to work this way, so we allow the constructor to be called
	 * without "new".
	 */
	if (!(this instanceof VError)) {
		obj = Object.create(VError.prototype);
		VError.apply(obj, arguments);
		return (obj);
	}

	/*
	 * For convenience and backwards compatibility, we support several
	 * different calling forms.  Normalize them here.
	 */
	parsed = parseConstructorArguments({
	    'argv': args,
	    'strict': false
	});

	/*
	 * If we've been given a name, apply it now.
	 */
	if (parsed.options.name) {
		mod_assertplus.string(parsed.options.name,
		    'error\'s "name" must be a string');
		this.name = parsed.options.name;
	}

	/*
	 * For debugging, we keep track of the original short message (attached
	 * this Error particularly) separately from the complete message (which
	 * includes the messages of our cause chain).
	 */
	this.jse_shortmsg = parsed.shortmessage;
	message = parsed.shortmessage;

	/*
	 * If we've been given a cause, record a reference to it and update our
	 * message appropriately.
	 */
	cause = parsed.options.cause;
	if (cause) {
		mod_assertplus.ok(mod_isError(cause), 'cause is not an Error');
		this.jse_cause = cause;

		if (!parsed.options.skipCauseMessage) {
			message += ': ' + cause.message;
		}
	}

	/*
	 * If we've been given an object with properties, shallow-copy that
	 * here.  We don't want to use a deep copy in case there are non-plain
	 * objects here, but we don't want to use the original object in case
	 * the caller modifies it later.
	 */
	this.jse_info = {};
	if (parsed.options.info) {
		for (k in parsed.options.info) {
			this.jse_info[k] = parsed.options.info[k];
		}
	}

	this.message = message;
	Error.call(this, message);

	if (Error.captureStackTrace) {
		ctor = parsed.options.constructorOpt || this.constructor;
		Error.captureStackTrace(this, ctor);
	}

	return (this);
}

mod_util.inherits(VError, Error);
VError.prototype.name = 'VError';

VError.prototype.toString = function ve_toString()
{
	var str = (this.hasOwnProperty('name') && this.name ||
		this.constructor.name || this.constructor.prototype.name);
	if (this.message)
		str += ': ' + this.message;

	return (str);
};

/*
 * This method is provided for compatibility.  New callers should use
 * VError.cause() instead.  That method also uses the saner `null` return value
 * when there is no cause.
 */
VError.prototype.cause = function ve_cause()
{
	var cause = VError.cause(this);
	return (cause === null ? undefined : cause);
};

/*
 * Static methods
 *
 * These class-level methods are provided so that callers can use them on
 * instances of Errors that are not VErrors.  New interfaces should be provided
 * only using static methods to eliminate the class of programming mistake where
 * people fail to check whether the Error object has the corresponding methods.
 */

VError.cause = function (err)
{
	mod_assertplus.ok(mod_isError(err), 'err must be an Error');
	return (mod_isError(err.jse_cause) ? err.jse_cause : null);
};

VError.info = function (err)
{
	var rv, cause, k;

	mod_assertplus.ok(mod_isError(err), 'err must be an Error');
	cause = VError.cause(err);
	if (cause !== null) {
		rv = VError.info(cause);
	} else {
		rv = {};
	}

	if (typeof (err.jse_info) == 'object' && err.jse_info !== null) {
		for (k in err.jse_info) {
			rv[k] = err.jse_info[k];
		}
	}

	return (rv);
};

VError.findCauseByName = function (err, name)
{
	var cause;

	mod_assertplus.ok(mod_isError(err), 'err must be an Error');
	mod_assertplus.string(name, 'name');
	mod_assertplus.ok(name.length > 0, 'name cannot be empty');

	for (cause = err; cause !== null; cause = VError.cause(cause)) {
		mod_assertplus.ok(mod_isError(cause));
		if (cause.name == name) {
			return (cause);
		}
	}

	return (null);
};

VError.hasCauseWithName = function (err, name)
{
	return (VError.findCauseByName(err, name) !== null);
};

VError.fullStack = function (err)
{
	mod_assertplus.ok(mod_isError(err), 'err must be an Error');

	var cause = VError.cause(err);

	if (cause) {
		return (err.stack + '\ncaused by: ' + VError.fullStack(cause));
	}

	return (err.stack);
};

VError.errorFromList = function (errors)
{
	mod_assertplus.arrayOfObject(errors, 'errors');

	if (errors.length === 0) {
		return (null);
	}

	errors.forEach(function (e) {
		mod_assertplus.ok(mod_isError(e));
	});

	if (errors.length == 1) {
		return (errors[0]);
	}

	return (new MultiError(errors));
};

VError.errorForEach = function (err, func)
{
	mod_assertplus.ok(mod_isError(err), 'err must be an Error');
	mod_assertplus.func(func, 'func');

	if (err instanceof MultiError) {
		err.errors().forEach(function iterError(e) { func(e); });
	} else {
		func(err);
	}
};


/*
 * SError is like VError, but stricter about types.  You cannot pass "null" or
 * "undefined" as string arguments to the formatter.
 */
function SError()
{
	var args, obj, parsed, options;

	args = Array.prototype.slice.call(arguments, 0);
	if (!(this instanceof SError)) {
		obj = Object.create(SError.prototype);
		SError.apply(obj, arguments);
		return (obj);
	}

	parsed = parseConstructorArguments({
	    'argv': args,
	    'strict': true
	});

	options = parsed.options;
	VError.call(this, options, '%s', parsed.shortmessage);

	return (this);
}

/*
 * We don't bother setting SError.prototype.name because once constructed,
 * SErrors are just like VErrors.
 */
mod_util.inherits(SError, VError);


/*
 * Represents a collection of errors for the purpose of consumers that generally
 * only deal with one error.  Callers can extract the individual errors
 * contained in this object, but may also just treat it as a normal single
 * error, in which case a summary message will be printed.
 */
function MultiError(errors)
{
	mod_assertplus.array(errors, 'list of errors');
	mod_assertplus.ok(errors.length > 0, 'must be at least one error');
	this.ase_errors = errors;

	VError.call(this, {
	    'cause': errors[0]
	}, 'first of %d error%s', errors.length, errors.length == 1 ? '' : 's');
}

mod_util.inherits(MultiError, VError);
MultiError.prototype.name = 'MultiError';

MultiError.prototype.errors = function me_errors()
{
	return (this.ase_errors.slice(0));
};


/*
 * See README.md for reference details.
 */
function WError()
{
	var args, obj, parsed, options;

	args = Array.prototype.slice.call(arguments, 0);
	if (!(this instanceof WError)) {
		obj = Object.create(WError.prototype);
		WError.apply(obj, args);
		return (obj);
	}

	parsed = parseConstructorArguments({
	    'argv': args,
	    'strict': false
	});

	options = parsed.options;
	options['skipCauseMessage'] = true;
	VError.call(this, options, '%s', parsed.shortmessage);

	return (this);
}

mod_util.inherits(WError, VError);
WError.prototype.name = 'WError';

WError.prototype.toString = function we_toString()
{
	var str = (this.hasOwnProperty('name') && this.name ||
		this.constructor.name || this.constructor.prototype.name);
	if (this.message)
		str += ': ' + this.message;
	if (this.jse_cause && this.jse_cause.message)
		str += '; caused by ' + this.jse_cause.toString();

	return (str);
};

/*
 * For purely historical reasons, WError's cause() function allows you to set
 * the cause.
 */
WError.prototype.cause = function we_cause(c)
{
	if (mod_isError(c))
		this.jse_cause = c;

	return (this.jse_cause);
};


/***/ }),

/***/ 41508:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

/*
 * extsprintf.js: extended POSIX-style sprintf
 */

var mod_assert = __webpack_require__(42357);
var mod_util = __webpack_require__(31669);

/*
 * Public interface
 */
exports.sprintf = jsSprintf;
exports.printf = jsPrintf;
exports.fprintf = jsFprintf;

/*
 * Stripped down version of s[n]printf(3c).  We make a best effort to throw an
 * exception when given a format string we don't understand, rather than
 * ignoring it, so that we won't break existing programs if/when we go implement
 * the rest of this.
 *
 * This implementation currently supports specifying
 *	- field alignment ('-' flag),
 * 	- zero-pad ('0' flag)
 *	- always show numeric sign ('+' flag),
 *	- field width
 *	- conversions for strings, decimal integers, and floats (numbers).
 *	- argument size specifiers.  These are all accepted but ignored, since
 *	  Javascript has no notion of the physical size of an argument.
 *
 * Everything else is currently unsupported, most notably precision, unsigned
 * numbers, non-decimal numbers, and characters.
 */
function jsSprintf(ofmt)
{
	var regex = [
	    '([^%]*)',				/* normal text */
	    '%',				/* start of format */
	    '([\'\\-+ #0]*?)',			/* flags (optional) */
	    '([1-9]\\d*)?',			/* width (optional) */
	    '(\\.([1-9]\\d*))?',		/* precision (optional) */
	    '[lhjztL]*?',			/* length mods (ignored) */
	    '([diouxXfFeEgGaAcCsSp%jr])'	/* conversion */
	].join('');

	var re = new RegExp(regex);

	/* variadic arguments used to fill in conversion specifiers */
	var args = Array.prototype.slice.call(arguments, 1);
	/* remaining format string */
	var fmt = ofmt;

	/* components of the current conversion specifier */
	var flags, width, precision, conversion;
	var left, pad, sign, arg, match;

	/* return value */
	var ret = '';

	/* current variadic argument (1-based) */
	var argn = 1;
	/* 0-based position in the format string that we've read */
	var posn = 0;
	/* 1-based position in the format string of the current conversion */
	var convposn;
	/* current conversion specifier */
	var curconv;

	mod_assert.equal('string', typeof (fmt),
	    'first argument must be a format string');

	while ((match = re.exec(fmt)) !== null) {
		ret += match[1];
		fmt = fmt.substring(match[0].length);

		/*
		 * Update flags related to the current conversion specifier's
		 * position so that we can report clear error messages.
		 */
		curconv = match[0].substring(match[1].length);
		convposn = posn + match[1].length + 1;
		posn += match[0].length;

		flags = match[2] || '';
		width = match[3] || 0;
		precision = match[4] || '';
		conversion = match[6];
		left = false;
		sign = false;
		pad = ' ';

		if (conversion == '%') {
			ret += '%';
			continue;
		}

		if (args.length === 0) {
			throw (jsError(ofmt, convposn, curconv,
			    'has no matching argument ' +
			    '(too few arguments passed)'));
		}

		arg = args.shift();
		argn++;

		if (flags.match(/[\' #]/)) {
			throw (jsError(ofmt, convposn, curconv,
			    'uses unsupported flags'));
		}

		if (precision.length > 0) {
			throw (jsError(ofmt, convposn, curconv,
			    'uses non-zero precision (not supported)'));
		}

		if (flags.match(/-/))
			left = true;

		if (flags.match(/0/))
			pad = '0';

		if (flags.match(/\+/))
			sign = true;

		switch (conversion) {
		case 's':
			if (arg === undefined || arg === null) {
				throw (jsError(ofmt, convposn, curconv,
				    'attempted to print undefined or null ' +
				    'as a string (argument ' + argn + ' to ' +
				    'sprintf)'));
			}
			ret += doPad(pad, width, left, arg.toString());
			break;

		case 'd':
			arg = Math.floor(arg);
			/*jsl:fallthru*/
		case 'f':
			sign = sign && arg > 0 ? '+' : '';
			ret += sign + doPad(pad, width, left,
			    arg.toString());
			break;

		case 'x':
			ret += doPad(pad, width, left, arg.toString(16));
			break;

		case 'j': /* non-standard */
			if (width === 0)
				width = 10;
			ret += mod_util.inspect(arg, false, width);
			break;

		case 'r': /* non-standard */
			ret += dumpException(arg);
			break;

		default:
			throw (jsError(ofmt, convposn, curconv,
			    'is not supported'));
		}
	}

	ret += fmt;
	return (ret);
}

function jsError(fmtstr, convposn, curconv, reason) {
	mod_assert.equal(typeof (fmtstr), 'string');
	mod_assert.equal(typeof (curconv), 'string');
	mod_assert.equal(typeof (convposn), 'number');
	mod_assert.equal(typeof (reason), 'string');
	return (new Error('format string "' + fmtstr +
	    '": conversion specifier "' + curconv + '" at character ' +
	    convposn + ' ' + reason));
}

function jsPrintf() {
	var args = Array.prototype.slice.call(arguments);
	args.unshift(process.stdout);
	jsFprintf.apply(null, args);
}

function jsFprintf(stream) {
	var args = Array.prototype.slice.call(arguments, 1);
	return (stream.write(jsSprintf.apply(this, args)));
}

function doPad(chr, width, left, str)
{
	var ret = str;

	while (ret.length < width) {
		if (left)
			ret += chr;
		else
			ret = chr + ret;
	}

	return (ret);
}

/*
 * This function dumps long stack traces for exceptions having a cause() method.
 * See node-verror for an example.
 */
function dumpException(ex)
{
	var ret;

	if (!(ex instanceof Error))
		throw (new Error(jsSprintf('invalid type for %%r: %j', ex)));

	/* Note that V8 prepends "ex.stack" with ex.toString(). */
	ret = 'EXCEPTION: ' + ex.constructor.name + ': ' + ex.stack;

	if (ex.cause && typeof (ex.cause) === 'function') {
		var cex = ex.cause();
		if (cex) {
			ret += '\nCaused by: ' + dumpException(cex);
		}
	}

	return (ret);
}


/***/ }),

/***/ 62940:
/***/ ((module) => {

// Returns a wrapper function that returns a wrapped callback
// The wrapper function should do some stuff, and return a
// presumably different callback function.
// This makes sure that own properties are retained, so that
// decorations and such are not lost along the way.
module.exports = wrappy
function wrappy (fn, cb) {
  if (fn && cb) return wrappy(fn)(cb)

  if (typeof fn !== 'function')
    throw new TypeError('need wrapper function')

  Object.keys(fn).forEach(function (k) {
    wrapper[k] = fn[k]
  })

  return wrapper

  function wrapper() {
    var args = new Array(arguments.length)
    for (var i = 0; i < args.length; i++) {
      args[i] = arguments[i]
    }
    var ret = fn.apply(this, args)
    var cb = args[args.length-1]
    if (typeof ret === 'function' && ret !== cb) {
      Object.keys(cb).forEach(function (k) {
        ret[k] = cb[k]
      })
    }
    return ret
  }
}


/***/ }),

/***/ 88867:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const WebSocket = __webpack_require__(91518);

WebSocket.Server = __webpack_require__(58887);
WebSocket.Receiver = __webpack_require__(25066);
WebSocket.Sender = __webpack_require__(36947);

module.exports = WebSocket;


/***/ }),

/***/ 9436:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { EMPTY_BUFFER } = __webpack_require__(15949);

/**
 * Merges an array of buffers into a new buffer.
 *
 * @param {Buffer[]} list The array of buffers to concat
 * @param {Number} totalLength The total length of buffers in the list
 * @return {Buffer} The resulting buffer
 * @public
 */
function concat(list, totalLength) {
  if (list.length === 0) return EMPTY_BUFFER;
  if (list.length === 1) return list[0];

  const target = Buffer.allocUnsafe(totalLength);
  var offset = 0;

  for (var i = 0; i < list.length; i++) {
    const buf = list[i];
    buf.copy(target, offset);
    offset += buf.length;
  }

  return target;
}

/**
 * Masks a buffer using the given mask.
 *
 * @param {Buffer} source The buffer to mask
 * @param {Buffer} mask The mask to use
 * @param {Buffer} output The buffer where to store the result
 * @param {Number} offset The offset at which to start writing
 * @param {Number} length The number of bytes to mask.
 * @public
 */
function _mask(source, mask, output, offset, length) {
  for (var i = 0; i < length; i++) {
    output[offset + i] = source[i] ^ mask[i & 3];
  }
}

/**
 * Unmasks a buffer using the given mask.
 *
 * @param {Buffer} buffer The buffer to unmask
 * @param {Buffer} mask The mask to use
 * @public
 */
function _unmask(buffer, mask) {
  // Required until https://github.com/nodejs/node/issues/9006 is resolved.
  const length = buffer.length;
  for (var i = 0; i < length; i++) {
    buffer[i] ^= mask[i & 3];
  }
}

/**
 * Converts a buffer to an `ArrayBuffer`.
 *
 * @param {Buffer} buf The buffer to convert
 * @return {ArrayBuffer} Converted buffer
 * @public
 */
function toArrayBuffer(buf) {
  if (buf.byteLength === buf.buffer.byteLength) {
    return buf.buffer;
  }

  return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
}

/**
 * Converts `data` to a `Buffer`.
 *
 * @param {*} data The data to convert
 * @return {Buffer} The buffer
 * @throws {TypeError}
 * @public
 */
function toBuffer(data) {
  toBuffer.readOnly = true;

  if (Buffer.isBuffer(data)) return data;

  var buf;

  if (data instanceof ArrayBuffer) {
    buf = Buffer.from(data);
  } else if (ArrayBuffer.isView(data)) {
    buf = viewToBuffer(data);
  } else {
    buf = Buffer.from(data);
    toBuffer.readOnly = false;
  }

  return buf;
}

/**
 * Converts an `ArrayBuffer` view into a buffer.
 *
 * @param {(DataView|TypedArray)} view The view to convert
 * @return {Buffer} Converted view
 * @private
 */
function viewToBuffer(view) {
  const buf = Buffer.from(view.buffer);

  if (view.byteLength !== view.buffer.byteLength) {
    return buf.slice(view.byteOffset, view.byteOffset + view.byteLength);
  }

  return buf;
}

try {
  const bufferUtil = __webpack_require__(71269);
  const bu = bufferUtil.BufferUtil || bufferUtil;

  module.exports = {
    concat,
    mask(source, mask, output, offset, length) {
      if (length < 48) _mask(source, mask, output, offset, length);
      else bu.mask(source, mask, output, offset, length);
    },
    toArrayBuffer,
    toBuffer,
    unmask(buffer, mask) {
      if (buffer.length < 32) _unmask(buffer, mask);
      else bu.unmask(buffer, mask);
    }
  };
} catch (e) /* istanbul ignore next */ {
  module.exports = {
    concat,
    mask: _mask,
    toArrayBuffer,
    toBuffer,
    unmask: _unmask
  };
}


/***/ }),

/***/ 15949:
/***/ ((module) => {

"use strict";


module.exports = {
  BINARY_TYPES: ['nodebuffer', 'arraybuffer', 'fragments'],
  GUID: '258EAFA5-E914-47DA-95CA-C5AB0DC85B11',
  kStatusCode: Symbol('status-code'),
  kWebSocket: Symbol('websocket'),
  EMPTY_BUFFER: Buffer.alloc(0),
  NOOP: () => {}
};


/***/ }),

/***/ 64561:
/***/ ((module) => {

"use strict";


/**
 * Class representing an event.
 *
 * @private
 */
class Event {
  /**
   * Create a new `Event`.
   *
   * @param {String} type The name of the event
   * @param {Object} target A reference to the target to which the event was dispatched
   */
  constructor(type, target) {
    this.target = target;
    this.type = type;
  }
}

/**
 * Class representing a message event.
 *
 * @extends Event
 * @private
 */
class MessageEvent extends Event {
  /**
   * Create a new `MessageEvent`.
   *
   * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The received data
   * @param {WebSocket} target A reference to the target to which the event was dispatched
   */
  constructor(data, target) {
    super('message', target);

    this.data = data;
  }
}

/**
 * Class representing a close event.
 *
 * @extends Event
 * @private
 */
class CloseEvent extends Event {
  /**
   * Create a new `CloseEvent`.
   *
   * @param {Number} code The status code explaining why the connection is being closed
   * @param {String} reason A human-readable string explaining why the connection is closing
   * @param {WebSocket} target A reference to the target to which the event was dispatched
   */
  constructor(code, reason, target) {
    super('close', target);

    this.wasClean = target._closeFrameReceived && target._closeFrameSent;
    this.reason = reason;
    this.code = code;
  }
}

/**
 * Class representing an open event.
 *
 * @extends Event
 * @private
 */
class OpenEvent extends Event {
  /**
   * Create a new `OpenEvent`.
   *
   * @param {WebSocket} target A reference to the target to which the event was dispatched
   */
  constructor(target) {
    super('open', target);
  }
}

/**
 * Class representing an error event.
 *
 * @extends Event
 * @private
 */
class ErrorEvent extends Event {
  /**
   * Create a new `ErrorEvent`.
   *
   * @param {Object} error The error that generated this event
   * @param {WebSocket} target A reference to the target to which the event was dispatched
   */
  constructor(error, target) {
    super('error', target);

    this.message = error.message;
    this.error = error;
  }
}

/**
 * This provides methods for emulating the `EventTarget` interface. It's not
 * meant to be used directly.
 *
 * @mixin
 */
const EventTarget = {
  /**
   * Register an event listener.
   *
   * @param {String} method A string representing the event type to listen for
   * @param {Function} listener The listener to add
   * @public
   */
  addEventListener(method, listener) {
    if (typeof listener !== 'function') return;

    function onMessage(data) {
      listener.call(this, new MessageEvent(data, this));
    }

    function onClose(code, message) {
      listener.call(this, new CloseEvent(code, message, this));
    }

    function onError(error) {
      listener.call(this, new ErrorEvent(error, this));
    }

    function onOpen() {
      listener.call(this, new OpenEvent(this));
    }

    if (method === 'message') {
      onMessage._listener = listener;
      this.on(method, onMessage);
    } else if (method === 'close') {
      onClose._listener = listener;
      this.on(method, onClose);
    } else if (method === 'error') {
      onError._listener = listener;
      this.on(method, onError);
    } else if (method === 'open') {
      onOpen._listener = listener;
      this.on(method, onOpen);
    } else {
      this.on(method, listener);
    }
  },

  /**
   * Remove an event listener.
   *
   * @param {String} method A string representing the event type to remove
   * @param {Function} listener The listener to remove
   * @public
   */
  removeEventListener(method, listener) {
    const listeners = this.listeners(method);

    for (var i = 0; i < listeners.length; i++) {
      if (listeners[i] === listener || listeners[i]._listener === listener) {
        this.removeListener(method, listeners[i]);
      }
    }
  }
};

module.exports = EventTarget;


/***/ }),

/***/ 92035:
/***/ ((module) => {

"use strict";


//
// Allowed token characters:
//
// '!', '#', '$', '%', '&', ''', '*', '+', '-',
// '.', 0-9, A-Z, '^', '_', '`', a-z, '|', '~'
//
// tokenChars[32] === 0 // ' '
// tokenChars[33] === 1 // '!'
// tokenChars[34] === 0 // '"'
// ...
//
// prettier-ignore
const tokenChars = [
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 15
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 31
  0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, // 32 - 47
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // 48 - 63
  0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 64 - 79
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, // 80 - 95
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 96 - 111
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0 // 112 - 127
];

/**
 * Adds an offer to the map of extension offers or a parameter to the map of
 * parameters.
 *
 * @param {Object} dest The map of extension offers or parameters
 * @param {String} name The extension or parameter name
 * @param {(Object|Boolean|String)} elem The extension parameters or the
 *     parameter value
 * @private
 */
function push(dest, name, elem) {
  if (Object.prototype.hasOwnProperty.call(dest, name)) dest[name].push(elem);
  else dest[name] = [elem];
}

/**
 * Parses the `Sec-WebSocket-Extensions` header into an object.
 *
 * @param {String} header The field value of the header
 * @return {Object} The parsed object
 * @public
 */
function parse(header) {
  const offers = {};

  if (header === undefined || header === '') return offers;

  var params = {};
  var mustUnescape = false;
  var isEscaping = false;
  var inQuotes = false;
  var extensionName;
  var paramName;
  var start = -1;
  var end = -1;

  for (var i = 0; i < header.length; i++) {
    const code = header.charCodeAt(i);

    if (extensionName === undefined) {
      if (end === -1 && tokenChars[code] === 1) {
        if (start === -1) start = i;
      } else if (code === 0x20 /* ' ' */ || code === 0x09 /* '\t' */) {
        if (end === -1 && start !== -1) end = i;
      } else if (code === 0x3b /* ';' */ || code === 0x2c /* ',' */) {
        if (start === -1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }

        if (end === -1) end = i;
        const name = header.slice(start, end);
        if (code === 0x2c) {
          push(offers, name, params);
          params = {};
        } else {
          extensionName = name;
        }

        start = end = -1;
      } else {
        throw new SyntaxError(`Unexpected character at index ${i}`);
      }
    } else if (paramName === undefined) {
      if (end === -1 && tokenChars[code] === 1) {
        if (start === -1) start = i;
      } else if (code === 0x20 || code === 0x09) {
        if (end === -1 && start !== -1) end = i;
      } else if (code === 0x3b || code === 0x2c) {
        if (start === -1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }

        if (end === -1) end = i;
        push(params, header.slice(start, end), true);
        if (code === 0x2c) {
          push(offers, extensionName, params);
          params = {};
          extensionName = undefined;
        }

        start = end = -1;
      } else if (code === 0x3d /* '=' */ && start !== -1 && end === -1) {
        paramName = header.slice(start, i);
        start = end = -1;
      } else {
        throw new SyntaxError(`Unexpected character at index ${i}`);
      }
    } else {
      //
      // The value of a quoted-string after unescaping must conform to the
      // token ABNF, so only token characters are valid.
      // Ref: https://tools.ietf.org/html/rfc6455#section-9.1
      //
      if (isEscaping) {
        if (tokenChars[code] !== 1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }
        if (start === -1) start = i;
        else if (!mustUnescape) mustUnescape = true;
        isEscaping = false;
      } else if (inQuotes) {
        if (tokenChars[code] === 1) {
          if (start === -1) start = i;
        } else if (code === 0x22 /* '"' */ && start !== -1) {
          inQuotes = false;
          end = i;
        } else if (code === 0x5c /* '\' */) {
          isEscaping = true;
        } else {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }
      } else if (code === 0x22 && header.charCodeAt(i - 1) === 0x3d) {
        inQuotes = true;
      } else if (end === -1 && tokenChars[code] === 1) {
        if (start === -1) start = i;
      } else if (start !== -1 && (code === 0x20 || code === 0x09)) {
        if (end === -1) end = i;
      } else if (code === 0x3b || code === 0x2c) {
        if (start === -1) {
          throw new SyntaxError(`Unexpected character at index ${i}`);
        }

        if (end === -1) end = i;
        var value = header.slice(start, end);
        if (mustUnescape) {
          value = value.replace(/\\/g, '');
          mustUnescape = false;
        }
        push(params, paramName, value);
        if (code === 0x2c) {
          push(offers, extensionName, params);
          params = {};
          extensionName = undefined;
        }

        paramName = undefined;
        start = end = -1;
      } else {
        throw new SyntaxError(`Unexpected character at index ${i}`);
      }
    }
  }

  if (start === -1 || inQuotes) {
    throw new SyntaxError('Unexpected end of input');
  }

  if (end === -1) end = i;
  const token = header.slice(start, end);
  if (extensionName === undefined) {
    push(offers, token, {});
  } else {
    if (paramName === undefined) {
      push(params, token, true);
    } else if (mustUnescape) {
      push(params, paramName, token.replace(/\\/g, ''));
    } else {
      push(params, paramName, token);
    }
    push(offers, extensionName, params);
  }

  return offers;
}

/**
 * Builds the `Sec-WebSocket-Extensions` header field value.
 *
 * @param {Object} extensions The map of extensions and parameters to format
 * @return {String} A string representing the given object
 * @public
 */
function format(extensions) {
  return Object.keys(extensions)
    .map((extension) => {
      var configurations = extensions[extension];
      if (!Array.isArray(configurations)) configurations = [configurations];
      return configurations
        .map((params) => {
          return [extension]
            .concat(
              Object.keys(params).map((k) => {
                var values = params[k];
                if (!Array.isArray(values)) values = [values];
                return values
                  .map((v) => (v === true ? k : `${k}=${v}`))
                  .join('; ');
              })
            )
            .join('; ');
        })
        .join(', ');
    })
    .join(', ');
}

module.exports = { format, parse };


/***/ }),

/***/ 56684:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const Limiter = __webpack_require__(56964);
const zlib = __webpack_require__(78761);

const bufferUtil = __webpack_require__(9436);
const { kStatusCode, NOOP } = __webpack_require__(15949);

const TRAILER = Buffer.from([0x00, 0x00, 0xff, 0xff]);
const EMPTY_BLOCK = Buffer.from([0x00]);

const kPerMessageDeflate = Symbol('permessage-deflate');
const kTotalLength = Symbol('total-length');
const kCallback = Symbol('callback');
const kBuffers = Symbol('buffers');
const kError = Symbol('error');

//
// We limit zlib concurrency, which prevents severe memory fragmentation
// as documented in https://github.com/nodejs/node/issues/8871#issuecomment-250915913
// and https://github.com/websockets/ws/issues/1202
//
// Intentionally global; it's the global thread pool that's an issue.
//
let zlibLimiter;

/**
 * permessage-deflate implementation.
 */
class PerMessageDeflate {
  /**
   * Creates a PerMessageDeflate instance.
   *
   * @param {Object} options Configuration options
   * @param {Boolean} options.serverNoContextTakeover Request/accept disabling
   *     of server context takeover
   * @param {Boolean} options.clientNoContextTakeover Advertise/acknowledge
   *     disabling of client context takeover
   * @param {(Boolean|Number)} options.serverMaxWindowBits Request/confirm the
   *     use of a custom server window size
   * @param {(Boolean|Number)} options.clientMaxWindowBits Advertise support
   *     for, or request, a custom client window size
   * @param {Object} options.zlibDeflateOptions Options to pass to zlib on deflate
   * @param {Object} options.zlibInflateOptions Options to pass to zlib on inflate
   * @param {Number} options.threshold Size (in bytes) below which messages
   *     should not be compressed
   * @param {Number} options.concurrencyLimit The number of concurrent calls to
   *     zlib
   * @param {Boolean} isServer Create the instance in either server or client
   *     mode
   * @param {Number} maxPayload The maximum allowed message length
   */
  constructor(options, isServer, maxPayload) {
    this._maxPayload = maxPayload | 0;
    this._options = options || {};
    this._threshold =
      this._options.threshold !== undefined ? this._options.threshold : 1024;
    this._isServer = !!isServer;
    this._deflate = null;
    this._inflate = null;

    this.params = null;

    if (!zlibLimiter) {
      const concurrency =
        this._options.concurrencyLimit !== undefined
          ? this._options.concurrencyLimit
          : 10;
      zlibLimiter = new Limiter({ concurrency });
    }
  }

  /**
   * @type {String}
   */
  static get extensionName() {
    return 'permessage-deflate';
  }

  /**
   * Create an extension negotiation offer.
   *
   * @return {Object} Extension parameters
   * @public
   */
  offer() {
    const params = {};

    if (this._options.serverNoContextTakeover) {
      params.server_no_context_takeover = true;
    }
    if (this._options.clientNoContextTakeover) {
      params.client_no_context_takeover = true;
    }
    if (this._options.serverMaxWindowBits) {
      params.server_max_window_bits = this._options.serverMaxWindowBits;
    }
    if (this._options.clientMaxWindowBits) {
      params.client_max_window_bits = this._options.clientMaxWindowBits;
    } else if (this._options.clientMaxWindowBits == null) {
      params.client_max_window_bits = true;
    }

    return params;
  }

  /**
   * Accept an extension negotiation offer/response.
   *
   * @param {Array} configurations The extension negotiation offers/reponse
   * @return {Object} Accepted configuration
   * @public
   */
  accept(configurations) {
    configurations = this.normalizeParams(configurations);

    this.params = this._isServer
      ? this.acceptAsServer(configurations)
      : this.acceptAsClient(configurations);

    return this.params;
  }

  /**
   * Releases all resources used by the extension.
   *
   * @public
   */
  cleanup() {
    if (this._inflate) {
      this._inflate.close();
      this._inflate = null;
    }

    if (this._deflate) {
      this._deflate.close();
      this._deflate = null;
    }
  }

  /**
   *  Accept an extension negotiation offer.
   *
   * @param {Array} offers The extension negotiation offers
   * @return {Object} Accepted configuration
   * @private
   */
  acceptAsServer(offers) {
    const opts = this._options;
    const accepted = offers.find((params) => {
      if (
        (opts.serverNoContextTakeover === false &&
          params.server_no_context_takeover) ||
        (params.server_max_window_bits &&
          (opts.serverMaxWindowBits === false ||
            (typeof opts.serverMaxWindowBits === 'number' &&
              opts.serverMaxWindowBits > params.server_max_window_bits))) ||
        (typeof opts.clientMaxWindowBits === 'number' &&
          !params.client_max_window_bits)
      ) {
        return false;
      }

      return true;
    });

    if (!accepted) {
      throw new Error('None of the extension offers can be accepted');
    }

    if (opts.serverNoContextTakeover) {
      accepted.server_no_context_takeover = true;
    }
    if (opts.clientNoContextTakeover) {
      accepted.client_no_context_takeover = true;
    }
    if (typeof opts.serverMaxWindowBits === 'number') {
      accepted.server_max_window_bits = opts.serverMaxWindowBits;
    }
    if (typeof opts.clientMaxWindowBits === 'number') {
      accepted.client_max_window_bits = opts.clientMaxWindowBits;
    } else if (
      accepted.client_max_window_bits === true ||
      opts.clientMaxWindowBits === false
    ) {
      delete accepted.client_max_window_bits;
    }

    return accepted;
  }

  /**
   * Accept the extension negotiation response.
   *
   * @param {Array} response The extension negotiation response
   * @return {Object} Accepted configuration
   * @private
   */
  acceptAsClient(response) {
    const params = response[0];

    if (
      this._options.clientNoContextTakeover === false &&
      params.client_no_context_takeover
    ) {
      throw new Error('Unexpected parameter "client_no_context_takeover"');
    }

    if (!params.client_max_window_bits) {
      if (typeof this._options.clientMaxWindowBits === 'number') {
        params.client_max_window_bits = this._options.clientMaxWindowBits;
      }
    } else if (
      this._options.clientMaxWindowBits === false ||
      (typeof this._options.clientMaxWindowBits === 'number' &&
        params.client_max_window_bits > this._options.clientMaxWindowBits)
    ) {
      throw new Error(
        'Unexpected or invalid parameter "client_max_window_bits"'
      );
    }

    return params;
  }

  /**
   * Normalize parameters.
   *
   * @param {Array} configurations The extension negotiation offers/reponse
   * @return {Array} The offers/response with normalized parameters
   * @private
   */
  normalizeParams(configurations) {
    configurations.forEach((params) => {
      Object.keys(params).forEach((key) => {
        var value = params[key];

        if (value.length > 1) {
          throw new Error(`Parameter "${key}" must have only a single value`);
        }

        value = value[0];

        if (key === 'client_max_window_bits') {
          if (value !== true) {
            const num = +value;
            if (!Number.isInteger(num) || num < 8 || num > 15) {
              throw new TypeError(
                `Invalid value for parameter "${key}": ${value}`
              );
            }
            value = num;
          } else if (!this._isServer) {
            throw new TypeError(
              `Invalid value for parameter "${key}": ${value}`
            );
          }
        } else if (key === 'server_max_window_bits') {
          const num = +value;
          if (!Number.isInteger(num) || num < 8 || num > 15) {
            throw new TypeError(
              `Invalid value for parameter "${key}": ${value}`
            );
          }
          value = num;
        } else if (
          key === 'client_no_context_takeover' ||
          key === 'server_no_context_takeover'
        ) {
          if (value !== true) {
            throw new TypeError(
              `Invalid value for parameter "${key}": ${value}`
            );
          }
        } else {
          throw new Error(`Unknown parameter "${key}"`);
        }

        params[key] = value;
      });
    });

    return configurations;
  }

  /**
   * Decompress data. Concurrency limited by async-limiter.
   *
   * @param {Buffer} data Compressed data
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @public
   */
  decompress(data, fin, callback) {
    zlibLimiter.push((done) => {
      this._decompress(data, fin, (err, result) => {
        done();
        callback(err, result);
      });
    });
  }

  /**
   * Compress data. Concurrency limited by async-limiter.
   *
   * @param {Buffer} data Data to compress
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @public
   */
  compress(data, fin, callback) {
    zlibLimiter.push((done) => {
      this._compress(data, fin, (err, result) => {
        done();
        callback(err, result);
      });
    });
  }

  /**
   * Decompress data.
   *
   * @param {Buffer} data Compressed data
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @private
   */
  _decompress(data, fin, callback) {
    const endpoint = this._isServer ? 'client' : 'server';

    if (!this._inflate) {
      const key = `${endpoint}_max_window_bits`;
      const windowBits =
        typeof this.params[key] !== 'number'
          ? zlib.Z_DEFAULT_WINDOWBITS
          : this.params[key];

      this._inflate = zlib.createInflateRaw(
        Object.assign({}, this._options.zlibInflateOptions, { windowBits })
      );
      this._inflate[kPerMessageDeflate] = this;
      this._inflate[kTotalLength] = 0;
      this._inflate[kBuffers] = [];
      this._inflate.on('error', inflateOnError);
      this._inflate.on('data', inflateOnData);
    }

    this._inflate[kCallback] = callback;

    this._inflate.write(data);
    if (fin) this._inflate.write(TRAILER);

    this._inflate.flush(() => {
      const err = this._inflate[kError];

      if (err) {
        this._inflate.close();
        this._inflate = null;
        callback(err);
        return;
      }

      const data = bufferUtil.concat(
        this._inflate[kBuffers],
        this._inflate[kTotalLength]
      );

      if (fin && this.params[`${endpoint}_no_context_takeover`]) {
        this._inflate.close();
        this._inflate = null;
      } else {
        this._inflate[kTotalLength] = 0;
        this._inflate[kBuffers] = [];
      }

      callback(null, data);
    });
  }

  /**
   * Compress data.
   *
   * @param {Buffer} data Data to compress
   * @param {Boolean} fin Specifies whether or not this is the last fragment
   * @param {Function} callback Callback
   * @private
   */
  _compress(data, fin, callback) {
    if (!data || data.length === 0) {
      process.nextTick(callback, null, EMPTY_BLOCK);
      return;
    }

    const endpoint = this._isServer ? 'server' : 'client';

    if (!this._deflate) {
      const key = `${endpoint}_max_window_bits`;
      const windowBits =
        typeof this.params[key] !== 'number'
          ? zlib.Z_DEFAULT_WINDOWBITS
          : this.params[key];

      this._deflate = zlib.createDeflateRaw(
        Object.assign({}, this._options.zlibDeflateOptions, { windowBits })
      );

      this._deflate[kTotalLength] = 0;
      this._deflate[kBuffers] = [];

      //
      // An `'error'` event is emitted, only on Node.js < 10.0.0, if the
      // `zlib.DeflateRaw` instance is closed while data is being processed.
      // This can happen if `PerMessageDeflate#cleanup()` is called at the wrong
      // time due to an abnormal WebSocket closure.
      //
      this._deflate.on('error', NOOP);
      this._deflate.on('data', deflateOnData);
    }

    this._deflate.write(data);
    this._deflate.flush(zlib.Z_SYNC_FLUSH, () => {
      if (!this._deflate) {
        //
        // This `if` statement is only needed for Node.js < 10.0.0 because as of
        // commit https://github.com/nodejs/node/commit/5e3f5164, the flush
        // callback is no longer called if the deflate stream is closed while
        // data is being processed.
        //
        return;
      }

      var data = bufferUtil.concat(
        this._deflate[kBuffers],
        this._deflate[kTotalLength]
      );

      if (fin) data = data.slice(0, data.length - 4);

      if (fin && this.params[`${endpoint}_no_context_takeover`]) {
        this._deflate.close();
        this._deflate = null;
      } else {
        this._deflate[kTotalLength] = 0;
        this._deflate[kBuffers] = [];
      }

      callback(null, data);
    });
  }
}

module.exports = PerMessageDeflate;

/**
 * The listener of the `zlib.DeflateRaw` stream `'data'` event.
 *
 * @param {Buffer} chunk A chunk of data
 * @private
 */
function deflateOnData(chunk) {
  this[kBuffers].push(chunk);
  this[kTotalLength] += chunk.length;
}

/**
 * The listener of the `zlib.InflateRaw` stream `'data'` event.
 *
 * @param {Buffer} chunk A chunk of data
 * @private
 */
function inflateOnData(chunk) {
  this[kTotalLength] += chunk.length;

  if (
    this[kPerMessageDeflate]._maxPayload < 1 ||
    this[kTotalLength] <= this[kPerMessageDeflate]._maxPayload
  ) {
    this[kBuffers].push(chunk);
    return;
  }

  this[kError] = new RangeError('Max payload size exceeded');
  this[kError][kStatusCode] = 1009;
  this.removeListener('data', inflateOnData);
  this.reset();
}

/**
 * The listener of the `zlib.InflateRaw` stream `'error'` event.
 *
 * @param {Error} err The emitted error
 * @private
 */
function inflateOnError(err) {
  //
  // There is no need to call `Zlib#close()` as the handle is automatically
  // closed when an error is emitted.
  //
  this[kPerMessageDeflate]._inflate = null;
  err[kStatusCode] = 1007;
  this[kCallback](err);
}


/***/ }),

/***/ 25066:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { Writable } = __webpack_require__(92413);

const PerMessageDeflate = __webpack_require__(56684);
const {
  BINARY_TYPES,
  EMPTY_BUFFER,
  kStatusCode,
  kWebSocket
} = __webpack_require__(15949);
const { concat, toArrayBuffer, unmask } = __webpack_require__(9436);
const { isValidStatusCode, isValidUTF8 } = __webpack_require__(86279);

const GET_INFO = 0;
const GET_PAYLOAD_LENGTH_16 = 1;
const GET_PAYLOAD_LENGTH_64 = 2;
const GET_MASK = 3;
const GET_DATA = 4;
const INFLATING = 5;

/**
 * HyBi Receiver implementation.
 *
 * @extends stream.Writable
 */
class Receiver extends Writable {
  /**
   * Creates a Receiver instance.
   *
   * @param {String} binaryType The type for binary data
   * @param {Object} extensions An object containing the negotiated extensions
   * @param {Number} maxPayload The maximum allowed message length
   */
  constructor(binaryType, extensions, maxPayload) {
    super();

    this._binaryType = binaryType || BINARY_TYPES[0];
    this[kWebSocket] = undefined;
    this._extensions = extensions || {};
    this._maxPayload = maxPayload | 0;

    this._bufferedBytes = 0;
    this._buffers = [];

    this._compressed = false;
    this._payloadLength = 0;
    this._mask = undefined;
    this._fragmented = 0;
    this._masked = false;
    this._fin = false;
    this._opcode = 0;

    this._totalPayloadLength = 0;
    this._messageLength = 0;
    this._fragments = [];

    this._state = GET_INFO;
    this._loop = false;
  }

  /**
   * Implements `Writable.prototype._write()`.
   *
   * @param {Buffer} chunk The chunk of data to write
   * @param {String} encoding The character encoding of `chunk`
   * @param {Function} cb Callback
   */
  _write(chunk, encoding, cb) {
    if (this._opcode === 0x08 && this._state == GET_INFO) return cb();

    this._bufferedBytes += chunk.length;
    this._buffers.push(chunk);
    this.startLoop(cb);
  }

  /**
   * Consumes `n` bytes from the buffered data.
   *
   * @param {Number} n The number of bytes to consume
   * @return {Buffer} The consumed bytes
   * @private
   */
  consume(n) {
    this._bufferedBytes -= n;

    if (n === this._buffers[0].length) return this._buffers.shift();

    if (n < this._buffers[0].length) {
      const buf = this._buffers[0];
      this._buffers[0] = buf.slice(n);
      return buf.slice(0, n);
    }

    const dst = Buffer.allocUnsafe(n);

    do {
      const buf = this._buffers[0];

      if (n >= buf.length) {
        this._buffers.shift().copy(dst, dst.length - n);
      } else {
        buf.copy(dst, dst.length - n, 0, n);
        this._buffers[0] = buf.slice(n);
      }

      n -= buf.length;
    } while (n > 0);

    return dst;
  }

  /**
   * Starts the parsing loop.
   *
   * @param {Function} cb Callback
   * @private
   */
  startLoop(cb) {
    var err;
    this._loop = true;

    do {
      switch (this._state) {
        case GET_INFO:
          err = this.getInfo();
          break;
        case GET_PAYLOAD_LENGTH_16:
          err = this.getPayloadLength16();
          break;
        case GET_PAYLOAD_LENGTH_64:
          err = this.getPayloadLength64();
          break;
        case GET_MASK:
          this.getMask();
          break;
        case GET_DATA:
          err = this.getData(cb);
          break;
        default:
          // `INFLATING`
          this._loop = false;
          return;
      }
    } while (this._loop);

    cb(err);
  }

  /**
   * Reads the first two bytes of a frame.
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  getInfo() {
    if (this._bufferedBytes < 2) {
      this._loop = false;
      return;
    }

    const buf = this.consume(2);

    if ((buf[0] & 0x30) !== 0x00) {
      this._loop = false;
      return error(RangeError, 'RSV2 and RSV3 must be clear', true, 1002);
    }

    const compressed = (buf[0] & 0x40) === 0x40;

    if (compressed && !this._extensions[PerMessageDeflate.extensionName]) {
      this._loop = false;
      return error(RangeError, 'RSV1 must be clear', true, 1002);
    }

    this._fin = (buf[0] & 0x80) === 0x80;
    this._opcode = buf[0] & 0x0f;
    this._payloadLength = buf[1] & 0x7f;

    if (this._opcode === 0x00) {
      if (compressed) {
        this._loop = false;
        return error(RangeError, 'RSV1 must be clear', true, 1002);
      }

      if (!this._fragmented) {
        this._loop = false;
        return error(RangeError, 'invalid opcode 0', true, 1002);
      }

      this._opcode = this._fragmented;
    } else if (this._opcode === 0x01 || this._opcode === 0x02) {
      if (this._fragmented) {
        this._loop = false;
        return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002);
      }

      this._compressed = compressed;
    } else if (this._opcode > 0x07 && this._opcode < 0x0b) {
      if (!this._fin) {
        this._loop = false;
        return error(RangeError, 'FIN must be set', true, 1002);
      }

      if (compressed) {
        this._loop = false;
        return error(RangeError, 'RSV1 must be clear', true, 1002);
      }

      if (this._payloadLength > 0x7d) {
        this._loop = false;
        return error(
          RangeError,
          `invalid payload length ${this._payloadLength}`,
          true,
          1002
        );
      }
    } else {
      this._loop = false;
      return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002);
    }

    if (!this._fin && !this._fragmented) this._fragmented = this._opcode;
    this._masked = (buf[1] & 0x80) === 0x80;

    if (this._payloadLength === 126) this._state = GET_PAYLOAD_LENGTH_16;
    else if (this._payloadLength === 127) this._state = GET_PAYLOAD_LENGTH_64;
    else return this.haveLength();
  }

  /**
   * Gets extended payload length (7+16).
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  getPayloadLength16() {
    if (this._bufferedBytes < 2) {
      this._loop = false;
      return;
    }

    this._payloadLength = this.consume(2).readUInt16BE(0);
    return this.haveLength();
  }

  /**
   * Gets extended payload length (7+64).
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  getPayloadLength64() {
    if (this._bufferedBytes < 8) {
      this._loop = false;
      return;
    }

    const buf = this.consume(8);
    const num = buf.readUInt32BE(0);

    //
    // The maximum safe integer in JavaScript is 2^53 - 1. An error is returned
    // if payload length is greater than this number.
    //
    if (num > Math.pow(2, 53 - 32) - 1) {
      this._loop = false;
      return error(
        RangeError,
        'Unsupported WebSocket frame: payload length > 2^53 - 1',
        false,
        1009
      );
    }

    this._payloadLength = num * Math.pow(2, 32) + buf.readUInt32BE(4);
    return this.haveLength();
  }

  /**
   * Payload length has been read.
   *
   * @return {(RangeError|undefined)} A possible error
   * @private
   */
  haveLength() {
    if (this._payloadLength && this._opcode < 0x08) {
      this._totalPayloadLength += this._payloadLength;
      if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) {
        this._loop = false;
        return error(RangeError, 'Max payload size exceeded', false, 1009);
      }
    }

    if (this._masked) this._state = GET_MASK;
    else this._state = GET_DATA;
  }

  /**
   * Reads mask bytes.
   *
   * @private
   */
  getMask() {
    if (this._bufferedBytes < 4) {
      this._loop = false;
      return;
    }

    this._mask = this.consume(4);
    this._state = GET_DATA;
  }

  /**
   * Reads data bytes.
   *
   * @param {Function} cb Callback
   * @return {(Error|RangeError|undefined)} A possible error
   * @private
   */
  getData(cb) {
    var data = EMPTY_BUFFER;

    if (this._payloadLength) {
      if (this._bufferedBytes < this._payloadLength) {
        this._loop = false;
        return;
      }

      data = this.consume(this._payloadLength);
      if (this._masked) unmask(data, this._mask);
    }

    if (this._opcode > 0x07) return this.controlMessage(data);

    if (this._compressed) {
      this._state = INFLATING;
      this.decompress(data, cb);
      return;
    }

    if (data.length) {
      //
      // This message is not compressed so its lenght is the sum of the payload
      // length of all fragments.
      //
      this._messageLength = this._totalPayloadLength;
      this._fragments.push(data);
    }

    return this.dataMessage();
  }

  /**
   * Decompresses data.
   *
   * @param {Buffer} data Compressed data
   * @param {Function} cb Callback
   * @private
   */
  decompress(data, cb) {
    const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];

    perMessageDeflate.decompress(data, this._fin, (err, buf) => {
      if (err) return cb(err);

      if (buf.length) {
        this._messageLength += buf.length;
        if (this._messageLength > this._maxPayload && this._maxPayload > 0) {
          return cb(
            error(RangeError, 'Max payload size exceeded', false, 1009)
          );
        }

        this._fragments.push(buf);
      }

      const er = this.dataMessage();
      if (er) return cb(er);

      this.startLoop(cb);
    });
  }

  /**
   * Handles a data message.
   *
   * @return {(Error|undefined)} A possible error
   * @private
   */
  dataMessage() {
    if (this._fin) {
      const messageLength = this._messageLength;
      const fragments = this._fragments;

      this._totalPayloadLength = 0;
      this._messageLength = 0;
      this._fragmented = 0;
      this._fragments = [];

      if (this._opcode === 2) {
        var data;

        if (this._binaryType === 'nodebuffer') {
          data = concat(fragments, messageLength);
        } else if (this._binaryType === 'arraybuffer') {
          data = toArrayBuffer(concat(fragments, messageLength));
        } else {
          data = fragments;
        }

        this.emit('message', data);
      } else {
        const buf = concat(fragments, messageLength);

        if (!isValidUTF8(buf)) {
          this._loop = false;
          return error(Error, 'invalid UTF-8 sequence', true, 1007);
        }

        this.emit('message', buf.toString());
      }
    }

    this._state = GET_INFO;
  }

  /**
   * Handles a control message.
   *
   * @param {Buffer} data Data to handle
   * @return {(Error|RangeError|undefined)} A possible error
   * @private
   */
  controlMessage(data) {
    if (this._opcode === 0x08) {
      this._loop = false;

      if (data.length === 0) {
        this.emit('conclude', 1005, '');
        this.end();
      } else if (data.length === 1) {
        return error(RangeError, 'invalid payload length 1', true, 1002);
      } else {
        const code = data.readUInt16BE(0);

        if (!isValidStatusCode(code)) {
          return error(RangeError, `invalid status code ${code}`, true, 1002);
        }

        const buf = data.slice(2);

        if (!isValidUTF8(buf)) {
          return error(Error, 'invalid UTF-8 sequence', true, 1007);
        }

        this.emit('conclude', code, buf.toString());
        this.end();
      }
    } else if (this._opcode === 0x09) {
      this.emit('ping', data);
    } else {
      this.emit('pong', data);
    }

    this._state = GET_INFO;
  }
}

module.exports = Receiver;

/**
 * Builds an error object.
 *
 * @param {(Error|RangeError)} ErrorCtor The error constructor
 * @param {String} message The error message
 * @param {Boolean} prefix Specifies whether or not to add a default prefix to
 *     `message`
 * @param {Number} statusCode The status code
 * @return {(Error|RangeError)} The error
 * @private
 */
function error(ErrorCtor, message, prefix, statusCode) {
  const err = new ErrorCtor(
    prefix ? `Invalid WebSocket frame: ${message}` : message
  );

  Error.captureStackTrace(err, error);
  err[kStatusCode] = statusCode;
  return err;
}


/***/ }),

/***/ 36947:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const { randomBytes } = __webpack_require__(33373);

const PerMessageDeflate = __webpack_require__(56684);
const { EMPTY_BUFFER } = __webpack_require__(15949);
const { isValidStatusCode } = __webpack_require__(86279);
const { mask: applyMask, toBuffer } = __webpack_require__(9436);

/**
 * HyBi Sender implementation.
 */
class Sender {
  /**
   * Creates a Sender instance.
   *
   * @param {net.Socket} socket The connection socket
   * @param {Object} extensions An object containing the negotiated extensions
   */
  constructor(socket, extensions) {
    this._extensions = extensions || {};
    this._socket = socket;

    this._firstFragment = true;
    this._compress = false;

    this._bufferedBytes = 0;
    this._deflating = false;
    this._queue = [];
  }

  /**
   * Frames a piece of data according to the HyBi WebSocket protocol.
   *
   * @param {Buffer} data The data to frame
   * @param {Object} options Options object
   * @param {Number} options.opcode The opcode
   * @param {Boolean} options.readOnly Specifies whether `data` can be modified
   * @param {Boolean} options.fin Specifies whether or not to set the FIN bit
   * @param {Boolean} options.mask Specifies whether or not to mask `data`
   * @param {Boolean} options.rsv1 Specifies whether or not to set the RSV1 bit
   * @return {Buffer[]} The framed data as a list of `Buffer` instances
   * @public
   */
  static frame(data, options) {
    const merge = options.mask && options.readOnly;
    var offset = options.mask ? 6 : 2;
    var payloadLength = data.length;

    if (data.length >= 65536) {
      offset += 8;
      payloadLength = 127;
    } else if (data.length > 125) {
      offset += 2;
      payloadLength = 126;
    }

    const target = Buffer.allocUnsafe(merge ? data.length + offset : offset);

    target[0] = options.fin ? options.opcode | 0x80 : options.opcode;
    if (options.rsv1) target[0] |= 0x40;

    target[1] = payloadLength;

    if (payloadLength === 126) {
      target.writeUInt16BE(data.length, 2);
    } else if (payloadLength === 127) {
      target.writeUInt32BE(0, 2);
      target.writeUInt32BE(data.length, 6);
    }

    if (!options.mask) return [target, data];

    const mask = randomBytes(4);

    target[1] |= 0x80;
    target[offset - 4] = mask[0];
    target[offset - 3] = mask[1];
    target[offset - 2] = mask[2];
    target[offset - 1] = mask[3];

    if (merge) {
      applyMask(data, mask, target, offset, data.length);
      return [target];
    }

    applyMask(data, mask, data, 0, data.length);
    return [target, data];
  }

  /**
   * Sends a close message to the other peer.
   *
   * @param {(Number|undefined)} code The status code component of the body
   * @param {String} data The message component of the body
   * @param {Boolean} mask Specifies whether or not to mask the message
   * @param {Function} cb Callback
   * @public
   */
  close(code, data, mask, cb) {
    var buf;

    if (code === undefined) {
      buf = EMPTY_BUFFER;
    } else if (typeof code !== 'number' || !isValidStatusCode(code)) {
      throw new TypeError('First argument must be a valid error code number');
    } else if (data === undefined || data === '') {
      buf = Buffer.allocUnsafe(2);
      buf.writeUInt16BE(code, 0);
    } else {
      buf = Buffer.allocUnsafe(2 + Buffer.byteLength(data));
      buf.writeUInt16BE(code, 0);
      buf.write(data, 2);
    }

    if (this._deflating) {
      this.enqueue([this.doClose, buf, mask, cb]);
    } else {
      this.doClose(buf, mask, cb);
    }
  }

  /**
   * Frames and sends a close message.
   *
   * @param {Buffer} data The message to send
   * @param {Boolean} mask Specifies whether or not to mask `data`
   * @param {Function} cb Callback
   * @private
   */
  doClose(data, mask, cb) {
    this.sendFrame(
      Sender.frame(data, {
        fin: true,
        rsv1: false,
        opcode: 0x08,
        mask,
        readOnly: false
      }),
      cb
    );
  }

  /**
   * Sends a ping message to the other peer.
   *
   * @param {*} data The message to send
   * @param {Boolean} mask Specifies whether or not to mask `data`
   * @param {Function} cb Callback
   * @public
   */
  ping(data, mask, cb) {
    const buf = toBuffer(data);

    if (this._deflating) {
      this.enqueue([this.doPing, buf, mask, toBuffer.readOnly, cb]);
    } else {
      this.doPing(buf, mask, toBuffer.readOnly, cb);
    }
  }

  /**
   * Frames and sends a ping message.
   *
   * @param {*} data The message to send
   * @param {Boolean} mask Specifies whether or not to mask `data`
   * @param {Boolean} readOnly Specifies whether `data` can be modified
   * @param {Function} cb Callback
   * @private
   */
  doPing(data, mask, readOnly, cb) {
    this.sendFrame(
      Sender.frame(data, {
        fin: true,
        rsv1: false,
        opcode: 0x09,
        mask,
        readOnly
      }),
      cb
    );
  }

  /**
   * Sends a pong message to the other peer.
   *
   * @param {*} data The message to send
   * @param {Boolean} mask Specifies whether or not to mask `data`
   * @param {Function} cb Callback
   * @public
   */
  pong(data, mask, cb) {
    const buf = toBuffer(data);

    if (this._deflating) {
      this.enqueue([this.doPong, buf, mask, toBuffer.readOnly, cb]);
    } else {
      this.doPong(buf, mask, toBuffer.readOnly, cb);
    }
  }

  /**
   * Frames and sends a pong message.
   *
   * @param {*} data The message to send
   * @param {Boolean} mask Specifies whether or not to mask `data`
   * @param {Boolean} readOnly Specifies whether `data` can be modified
   * @param {Function} cb Callback
   * @private
   */
  doPong(data, mask, readOnly, cb) {
    this.sendFrame(
      Sender.frame(data, {
        fin: true,
        rsv1: false,
        opcode: 0x0a,
        mask,
        readOnly
      }),
      cb
    );
  }

  /**
   * Sends a data message to the other peer.
   *
   * @param {*} data The message to send
   * @param {Object} options Options object
   * @param {Boolean} options.compress Specifies whether or not to compress `data`
   * @param {Boolean} options.binary Specifies whether `data` is binary or text
   * @param {Boolean} options.fin Specifies whether the fragment is the last one
   * @param {Boolean} options.mask Specifies whether or not to mask `data`
   * @param {Function} cb Callback
   * @public
   */
  send(data, options, cb) {
    const buf = toBuffer(data);
    const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];
    var opcode = options.binary ? 2 : 1;
    var rsv1 = options.compress;

    if (this._firstFragment) {
      this._firstFragment = false;
      if (rsv1 && perMessageDeflate) {
        rsv1 = buf.length >= perMessageDeflate._threshold;
      }
      this._compress = rsv1;
    } else {
      rsv1 = false;
      opcode = 0;
    }

    if (options.fin) this._firstFragment = true;

    if (perMessageDeflate) {
      const opts = {
        fin: options.fin,
        rsv1,
        opcode,
        mask: options.mask,
        readOnly: toBuffer.readOnly
      };

      if (this._deflating) {
        this.enqueue([this.dispatch, buf, this._compress, opts, cb]);
      } else {
        this.dispatch(buf, this._compress, opts, cb);
      }
    } else {
      this.sendFrame(
        Sender.frame(buf, {
          fin: options.fin,
          rsv1: false,
          opcode,
          mask: options.mask,
          readOnly: toBuffer.readOnly
        }),
        cb
      );
    }
  }

  /**
   * Dispatches a data message.
   *
   * @param {Buffer} data The message to send
   * @param {Boolean} compress Specifies whether or not to compress `data`
   * @param {Object} options Options object
   * @param {Number} options.opcode The opcode
   * @param {Boolean} options.readOnly Specifies whether `data` can be modified
   * @param {Boolean} options.fin Specifies whether or not to set the FIN bit
   * @param {Boolean} options.mask Specifies whether or not to mask `data`
   * @param {Boolean} options.rsv1 Specifies whether or not to set the RSV1 bit
   * @param {Function} cb Callback
   * @private
   */
  dispatch(data, compress, options, cb) {
    if (!compress) {
      this.sendFrame(Sender.frame(data, options), cb);
      return;
    }

    const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName];

    this._deflating = true;
    perMessageDeflate.compress(data, options.fin, (_, buf) => {
      this._deflating = false;
      options.readOnly = false;
      this.sendFrame(Sender.frame(buf, options), cb);
      this.dequeue();
    });
  }

  /**
   * Executes queued send operations.
   *
   * @private
   */
  dequeue() {
    while (!this._deflating && this._queue.length) {
      const params = this._queue.shift();

      this._bufferedBytes -= params[1].length;
      params[0].apply(this, params.slice(1));
    }
  }

  /**
   * Enqueues a send operation.
   *
   * @param {Array} params Send operation parameters.
   * @private
   */
  enqueue(params) {
    this._bufferedBytes += params[1].length;
    this._queue.push(params);
  }

  /**
   * Sends a frame.
   *
   * @param {Buffer[]} list The frame to send
   * @param {Function} cb Callback
   * @private
   */
  sendFrame(list, cb) {
    if (list.length === 2) {
      this._socket.cork();
      this._socket.write(list[0]);
      this._socket.write(list[1], cb);
      this._socket.uncork();
    } else {
      this._socket.write(list[0], cb);
    }
  }
}

module.exports = Sender;


/***/ }),

/***/ 86279:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


try {
  const isValidUTF8 = __webpack_require__(24592);

  exports.isValidUTF8 =
    typeof isValidUTF8 === 'object'
      ? isValidUTF8.Validation.isValidUTF8 // utf-8-validate@<3.0.0
      : isValidUTF8;
} catch (e) /* istanbul ignore next */ {
  exports.isValidUTF8 = () => true;
}

/**
 * Checks if a status code is allowed in a close frame.
 *
 * @param {Number} code The status code
 * @return {Boolean} `true` if the status code is valid, else `false`
 * @public
 */
exports.isValidStatusCode = (code) => {
  return (
    (code >= 1000 &&
      code <= 1013 &&
      code !== 1004 &&
      code !== 1005 &&
      code !== 1006) ||
    (code >= 3000 && code <= 4999)
  );
};


/***/ }),

/***/ 58887:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const EventEmitter = __webpack_require__(28614);
const crypto = __webpack_require__(33373);
const http = __webpack_require__(98605);

const PerMessageDeflate = __webpack_require__(56684);
const extension = __webpack_require__(92035);
const WebSocket = __webpack_require__(91518);
const { GUID } = __webpack_require__(15949);

const keyRegex = /^[+/0-9A-Za-z]{22}==$/;

/**
 * Class representing a WebSocket server.
 *
 * @extends EventEmitter
 */
class WebSocketServer extends EventEmitter {
  /**
   * Create a `WebSocketServer` instance.
   *
   * @param {Object} options Configuration options
   * @param {Number} options.backlog The maximum length of the queue of pending
   *     connections
   * @param {Boolean} options.clientTracking Specifies whether or not to track
   *     clients
   * @param {Function} options.handleProtocols An hook to handle protocols
   * @param {String} options.host The hostname where to bind the server
   * @param {Number} options.maxPayload The maximum allowed message size
   * @param {Boolean} options.noServer Enable no server mode
   * @param {String} options.path Accept only connections matching this path
   * @param {(Boolean|Object)} options.perMessageDeflate Enable/disable
   *     permessage-deflate
   * @param {Number} options.port The port where to bind the server
   * @param {http.Server} options.server A pre-created HTTP/S server to use
   * @param {Function} options.verifyClient An hook to reject connections
   * @param {Function} callback A listener for the `listening` event
   */
  constructor(options, callback) {
    super();

    options = Object.assign(
      {
        maxPayload: 100 * 1024 * 1024,
        perMessageDeflate: false,
        handleProtocols: null,
        clientTracking: true,
        verifyClient: null,
        noServer: false,
        backlog: null, // use default (511 as implemented in net.js)
        server: null,
        host: null,
        path: null,
        port: null
      },
      options
    );

    if (options.port == null && !options.server && !options.noServer) {
      throw new TypeError(
        'One of the "port", "server", or "noServer" options must be specified'
      );
    }

    if (options.port != null) {
      this._server = http.createServer((req, res) => {
        const body = http.STATUS_CODES[426];

        res.writeHead(426, {
          'Content-Length': body.length,
          'Content-Type': 'text/plain'
        });
        res.end(body);
      });
      this._server.listen(
        options.port,
        options.host,
        options.backlog,
        callback
      );
    } else if (options.server) {
      this._server = options.server;
    }

    if (this._server) {
      this._removeListeners = addListeners(this._server, {
        listening: this.emit.bind(this, 'listening'),
        error: this.emit.bind(this, 'error'),
        upgrade: (req, socket, head) => {
          this.handleUpgrade(req, socket, head, (ws) => {
            this.emit('connection', ws, req);
          });
        }
      });
    }

    if (options.perMessageDeflate === true) options.perMessageDeflate = {};
    if (options.clientTracking) this.clients = new Set();
    this.options = options;
  }

  /**
   * Returns the bound address, the address family name, and port of the server
   * as reported by the operating system if listening on an IP socket.
   * If the server is listening on a pipe or UNIX domain socket, the name is
   * returned as a string.
   *
   * @return {(Object|String|null)} The address of the server
   * @public
   */
  address() {
    if (this.options.noServer) {
      throw new Error('The server is operating in "noServer" mode');
    }

    if (!this._server) return null;
    return this._server.address();
  }

  /**
   * Close the server.
   *
   * @param {Function} cb Callback
   * @public
   */
  close(cb) {
    if (cb) this.once('close', cb);

    //
    // Terminate all associated clients.
    //
    if (this.clients) {
      for (const client of this.clients) client.terminate();
    }

    const server = this._server;

    if (server) {
      this._removeListeners();
      this._removeListeners = this._server = null;

      //
      // Close the http server if it was internally created.
      //
      if (this.options.port != null) {
        server.close(() => this.emit('close'));
        return;
      }
    }

    process.nextTick(emitClose, this);
  }

  /**
   * See if a given request should be handled by this server instance.
   *
   * @param {http.IncomingMessage} req Request object to inspect
   * @return {Boolean} `true` if the request is valid, else `false`
   * @public
   */
  shouldHandle(req) {
    if (this.options.path) {
      const index = req.url.indexOf('?');
      const pathname = index !== -1 ? req.url.slice(0, index) : req.url;

      if (pathname !== this.options.path) return false;
    }

    return true;
  }

  /**
   * Handle a HTTP Upgrade request.
   *
   * @param {http.IncomingMessage} req The request object
   * @param {net.Socket} socket The network socket between the server and client
   * @param {Buffer} head The first packet of the upgraded stream
   * @param {Function} cb Callback
   * @public
   */
  handleUpgrade(req, socket, head, cb) {
    socket.on('error', socketOnError);

    const key =
      req.headers['sec-websocket-key'] !== undefined
        ? req.headers['sec-websocket-key'].trim()
        : false;
    const version = +req.headers['sec-websocket-version'];
    const extensions = {};

    if (
      req.method !== 'GET' ||
      req.headers.upgrade.toLowerCase() !== 'websocket' ||
      !key ||
      !keyRegex.test(key) ||
      (version !== 8 && version !== 13) ||
      !this.shouldHandle(req)
    ) {
      return abortHandshake(socket, 400);
    }

    if (this.options.perMessageDeflate) {
      const perMessageDeflate = new PerMessageDeflate(
        this.options.perMessageDeflate,
        true,
        this.options.maxPayload
      );

      try {
        const offers = extension.parse(req.headers['sec-websocket-extensions']);

        if (offers[PerMessageDeflate.extensionName]) {
          perMessageDeflate.accept(offers[PerMessageDeflate.extensionName]);
          extensions[PerMessageDeflate.extensionName] = perMessageDeflate;
        }
      } catch (err) {
        return abortHandshake(socket, 400);
      }
    }

    //
    // Optionally call external client verification handler.
    //
    if (this.options.verifyClient) {
      const info = {
        origin:
          req.headers[`${version === 8 ? 'sec-websocket-origin' : 'origin'}`],
        secure: !!(req.connection.authorized || req.connection.encrypted),
        req
      };

      if (this.options.verifyClient.length === 2) {
        this.options.verifyClient(info, (verified, code, message, headers) => {
          if (!verified) {
            return abortHandshake(socket, code || 401, message, headers);
          }

          this.completeUpgrade(key, extensions, req, socket, head, cb);
        });
        return;
      }

      if (!this.options.verifyClient(info)) return abortHandshake(socket, 401);
    }

    this.completeUpgrade(key, extensions, req, socket, head, cb);
  }

  /**
   * Upgrade the connection to WebSocket.
   *
   * @param {String} key The value of the `Sec-WebSocket-Key` header
   * @param {Object} extensions The accepted extensions
   * @param {http.IncomingMessage} req The request object
   * @param {net.Socket} socket The network socket between the server and client
   * @param {Buffer} head The first packet of the upgraded stream
   * @param {Function} cb Callback
   * @private
   */
  completeUpgrade(key, extensions, req, socket, head, cb) {
    //
    // Destroy the socket if the client has already sent a FIN packet.
    //
    if (!socket.readable || !socket.writable) return socket.destroy();

    const digest = crypto
      .createHash('sha1')
      .update(key + GUID)
      .digest('base64');

    const headers = [
      'HTTP/1.1 101 Switching Protocols',
      'Upgrade: websocket',
      'Connection: Upgrade',
      `Sec-WebSocket-Accept: ${digest}`
    ];

    const ws = new WebSocket(null);
    var protocol = req.headers['sec-websocket-protocol'];

    if (protocol) {
      protocol = protocol.trim().split(/ *, */);

      //
      // Optionally call external protocol selection handler.
      //
      if (this.options.handleProtocols) {
        protocol = this.options.handleProtocols(protocol, req);
      } else {
        protocol = protocol[0];
      }

      if (protocol) {
        headers.push(`Sec-WebSocket-Protocol: ${protocol}`);
        ws.protocol = protocol;
      }
    }

    if (extensions[PerMessageDeflate.extensionName]) {
      const params = extensions[PerMessageDeflate.extensionName].params;
      const value = extension.format({
        [PerMessageDeflate.extensionName]: [params]
      });
      headers.push(`Sec-WebSocket-Extensions: ${value}`);
      ws._extensions = extensions;
    }

    //
    // Allow external modification/inspection of handshake headers.
    //
    this.emit('headers', headers, req);

    socket.write(headers.concat('\r\n').join('\r\n'));
    socket.removeListener('error', socketOnError);

    ws.setSocket(socket, head, this.options.maxPayload);

    if (this.clients) {
      this.clients.add(ws);
      ws.on('close', () => this.clients.delete(ws));
    }

    cb(ws);
  }
}

module.exports = WebSocketServer;

/**
 * Add event listeners on an `EventEmitter` using a map of <event, listener>
 * pairs.
 *
 * @param {EventEmitter} server The event emitter
 * @param {Object.<String, Function>} map The listeners to add
 * @return {Function} A function that will remove the added listeners when called
 * @private
 */
function addListeners(server, map) {
  for (const event of Object.keys(map)) server.on(event, map[event]);

  return function removeListeners() {
    for (const event of Object.keys(map)) {
      server.removeListener(event, map[event]);
    }
  };
}

/**
 * Emit a `'close'` event on an `EventEmitter`.
 *
 * @param {EventEmitter} server The event emitter
 * @private
 */
function emitClose(server) {
  server.emit('close');
}

/**
 * Handle premature socket errors.
 *
 * @private
 */
function socketOnError() {
  this.destroy();
}

/**
 * Close the connection when preconditions are not fulfilled.
 *
 * @param {net.Socket} socket The socket of the upgrade request
 * @param {Number} code The HTTP response status code
 * @param {String} [message] The HTTP response body
 * @param {Object} [headers] Additional HTTP response headers
 * @private
 */
function abortHandshake(socket, code, message, headers) {
  if (socket.writable) {
    message = message || http.STATUS_CODES[code];
    headers = Object.assign(
      {
        Connection: 'close',
        'Content-type': 'text/html',
        'Content-Length': Buffer.byteLength(message)
      },
      headers
    );

    socket.write(
      `HTTP/1.1 ${code} ${http.STATUS_CODES[code]}\r\n` +
        Object.keys(headers)
          .map((h) => `${h}: ${headers[h]}`)
          .join('\r\n') +
        '\r\n\r\n' +
        message
    );
  }

  socket.removeListener('error', socketOnError);
  socket.destroy();
}


/***/ }),

/***/ 91518:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


const EventEmitter = __webpack_require__(28614);
const crypto = __webpack_require__(33373);
const https = __webpack_require__(57211);
const http = __webpack_require__(98605);
const net = __webpack_require__(11631);
const tls = __webpack_require__(4016);
const url = __webpack_require__(78835);

const PerMessageDeflate = __webpack_require__(56684);
const EventTarget = __webpack_require__(64561);
const extension = __webpack_require__(92035);
const Receiver = __webpack_require__(25066);
const Sender = __webpack_require__(36947);
const {
  BINARY_TYPES,
  EMPTY_BUFFER,
  GUID,
  kStatusCode,
  kWebSocket,
  NOOP
} = __webpack_require__(15949);

const readyStates = ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'];
const protocolVersions = [8, 13];
const closeTimeout = 30 * 1000;

/**
 * Class representing a WebSocket.
 *
 * @extends EventEmitter
 */
class WebSocket extends EventEmitter {
  /**
   * Create a new `WebSocket`.
   *
   * @param {(String|url.Url|url.URL)} address The URL to which to connect
   * @param {(String|String[])} protocols The subprotocols
   * @param {Object} options Connection options
   */
  constructor(address, protocols, options) {
    super();

    this.readyState = WebSocket.CONNECTING;
    this.protocol = '';

    this._binaryType = BINARY_TYPES[0];
    this._closeFrameReceived = false;
    this._closeFrameSent = false;
    this._closeMessage = '';
    this._closeTimer = null;
    this._closeCode = 1006;
    this._extensions = {};
    this._receiver = null;
    this._sender = null;
    this._socket = null;

    if (address !== null) {
      this._isServer = false;
      this._redirects = 0;

      if (Array.isArray(protocols)) {
        protocols = protocols.join(', ');
      } else if (typeof protocols === 'object' && protocols !== null) {
        options = protocols;
        protocols = undefined;
      }

      initAsClient(this, address, protocols, options);
    } else {
      this._isServer = true;
    }
  }

  get CONNECTING() {
    return WebSocket.CONNECTING;
  }
  get CLOSING() {
    return WebSocket.CLOSING;
  }
  get CLOSED() {
    return WebSocket.CLOSED;
  }
  get OPEN() {
    return WebSocket.OPEN;
  }

  /**
   * This deviates from the WHATWG interface since ws doesn't support the
   * required default "blob" type (instead we define a custom "nodebuffer"
   * type).
   *
   * @type {String}
   */
  get binaryType() {
    return this._binaryType;
  }

  set binaryType(type) {
    if (!BINARY_TYPES.includes(type)) return;

    this._binaryType = type;

    //
    // Allow to change `binaryType` on the fly.
    //
    if (this._receiver) this._receiver._binaryType = type;
  }

  /**
   * @type {Number}
   */
  get bufferedAmount() {
    if (!this._socket) return 0;

    //
    // `socket.bufferSize` is `undefined` if the socket is closed.
    //
    return (this._socket.bufferSize || 0) + this._sender._bufferedBytes;
  }

  /**
   * @type {String}
   */
  get extensions() {
    return Object.keys(this._extensions).join();
  }

  /**
   * Set up the socket and the internal resources.
   *
   * @param {net.Socket} socket The network socket between the server and client
   * @param {Buffer} head The first packet of the upgraded stream
   * @param {Number} maxPayload The maximum allowed message size
   * @private
   */
  setSocket(socket, head, maxPayload) {
    const receiver = new Receiver(
      this._binaryType,
      this._extensions,
      maxPayload
    );

    this._sender = new Sender(socket, this._extensions);
    this._receiver = receiver;
    this._socket = socket;

    receiver[kWebSocket] = this;
    socket[kWebSocket] = this;

    receiver.on('conclude', receiverOnConclude);
    receiver.on('drain', receiverOnDrain);
    receiver.on('error', receiverOnError);
    receiver.on('message', receiverOnMessage);
    receiver.on('ping', receiverOnPing);
    receiver.on('pong', receiverOnPong);

    socket.setTimeout(0);
    socket.setNoDelay();

    if (head.length > 0) socket.unshift(head);

    socket.on('close', socketOnClose);
    socket.on('data', socketOnData);
    socket.on('end', socketOnEnd);
    socket.on('error', socketOnError);

    this.readyState = WebSocket.OPEN;
    this.emit('open');
  }

  /**
   * Emit the `'close'` event.
   *
   * @private
   */
  emitClose() {
    this.readyState = WebSocket.CLOSED;

    if (!this._socket) {
      this.emit('close', this._closeCode, this._closeMessage);
      return;
    }

    if (this._extensions[PerMessageDeflate.extensionName]) {
      this._extensions[PerMessageDeflate.extensionName].cleanup();
    }

    this._receiver.removeAllListeners();
    this.emit('close', this._closeCode, this._closeMessage);
  }

  /**
   * Start a closing handshake.
   *
   *          +----------+   +-----------+   +----------+
   *     - - -|ws.close()|-->|close frame|-->|ws.close()|- - -
   *    |     +----------+   +-----------+   +----------+     |
   *          +----------+   +-----------+         |
   * CLOSING  |ws.close()|<--|close frame|<--+-----+       CLOSING
   *          +----------+   +-----------+   |
   *    |           |                        |   +---+        |
   *                +------------------------+-->|fin| - - - -
   *    |         +---+                      |   +---+
   *     - - - - -|fin|<---------------------+
   *              +---+
   *
   * @param {Number} code Status code explaining why the connection is closing
   * @param {String} data A string explaining why the connection is closing
   * @public
   */
  close(code, data) {
    if (this.readyState === WebSocket.CLOSED) return;
    if (this.readyState === WebSocket.CONNECTING) {
      const msg = 'WebSocket was closed before the connection was established';
      return abortHandshake(this, this._req, msg);
    }

    if (this.readyState === WebSocket.CLOSING) {
      if (this._closeFrameSent && this._closeFrameReceived) this._socket.end();
      return;
    }

    this.readyState = WebSocket.CLOSING;
    this._sender.close(code, data, !this._isServer, (err) => {
      //
      // This error is handled by the `'error'` listener on the socket. We only
      // want to know if the close frame has been sent here.
      //
      if (err) return;

      this._closeFrameSent = true;
      if (this._closeFrameReceived) this._socket.end();
    });

    //
    // Specify a timeout for the closing handshake to complete.
    //
    this._closeTimer = setTimeout(
      this._socket.destroy.bind(this._socket),
      closeTimeout
    );
  }

  /**
   * Send a ping.
   *
   * @param {*} data The data to send
   * @param {Boolean} mask Indicates whether or not to mask `data`
   * @param {Function} cb Callback which is executed when the ping is sent
   * @public
   */
  ping(data, mask, cb) {
    if (typeof data === 'function') {
      cb = data;
      data = mask = undefined;
    } else if (typeof mask === 'function') {
      cb = mask;
      mask = undefined;
    }

    if (this.readyState !== WebSocket.OPEN) {
      const err = new Error(
        `WebSocket is not open: readyState ${this.readyState} ` +
          `(${readyStates[this.readyState]})`
      );

      if (cb) return cb(err);
      throw err;
    }

    if (typeof data === 'number') data = data.toString();
    if (mask === undefined) mask = !this._isServer;
    this._sender.ping(data || EMPTY_BUFFER, mask, cb);
  }

  /**
   * Send a pong.
   *
   * @param {*} data The data to send
   * @param {Boolean} mask Indicates whether or not to mask `data`
   * @param {Function} cb Callback which is executed when the pong is sent
   * @public
   */
  pong(data, mask, cb) {
    if (typeof data === 'function') {
      cb = data;
      data = mask = undefined;
    } else if (typeof mask === 'function') {
      cb = mask;
      mask = undefined;
    }

    if (this.readyState !== WebSocket.OPEN) {
      const err = new Error(
        `WebSocket is not open: readyState ${this.readyState} ` +
          `(${readyStates[this.readyState]})`
      );

      if (cb) return cb(err);
      throw err;
    }

    if (typeof data === 'number') data = data.toString();
    if (mask === undefined) mask = !this._isServer;
    this._sender.pong(data || EMPTY_BUFFER, mask, cb);
  }

  /**
   * Send a data message.
   *
   * @param {*} data The message to send
   * @param {Object} options Options object
   * @param {Boolean} options.compress Specifies whether or not to compress `data`
   * @param {Boolean} options.binary Specifies whether `data` is binary or text
   * @param {Boolean} options.fin Specifies whether the fragment is the last one
   * @param {Boolean} options.mask Specifies whether or not to mask `data`
   * @param {Function} cb Callback which is executed when data is written out
   * @public
   */
  send(data, options, cb) {
    if (typeof options === 'function') {
      cb = options;
      options = {};
    }

    if (this.readyState !== WebSocket.OPEN) {
      const err = new Error(
        `WebSocket is not open: readyState ${this.readyState} ` +
          `(${readyStates[this.readyState]})`
      );

      if (cb) return cb(err);
      throw err;
    }

    if (typeof data === 'number') data = data.toString();

    const opts = Object.assign(
      {
        binary: typeof data !== 'string',
        mask: !this._isServer,
        compress: true,
        fin: true
      },
      options
    );

    if (!this._extensions[PerMessageDeflate.extensionName]) {
      opts.compress = false;
    }

    this._sender.send(data || EMPTY_BUFFER, opts, cb);
  }

  /**
   * Forcibly close the connection.
   *
   * @public
   */
  terminate() {
    if (this.readyState === WebSocket.CLOSED) return;
    if (this.readyState === WebSocket.CONNECTING) {
      const msg = 'WebSocket was closed before the connection was established';
      return abortHandshake(this, this._req, msg);
    }

    if (this._socket) {
      this.readyState = WebSocket.CLOSING;
      this._socket.destroy();
    }
  }
}

readyStates.forEach((readyState, i) => {
  WebSocket[readyState] = i;
});

//
// Add the `onopen`, `onerror`, `onclose`, and `onmessage` attributes.
// See https://html.spec.whatwg.org/multipage/comms.html#the-websocket-interface
//
['open', 'error', 'close', 'message'].forEach((method) => {
  Object.defineProperty(WebSocket.prototype, `on${method}`, {
    /**
     * Return the listener of the event.
     *
     * @return {(Function|undefined)} The event listener or `undefined`
     * @public
     */
    get() {
      const listeners = this.listeners(method);
      for (var i = 0; i < listeners.length; i++) {
        if (listeners[i]._listener) return listeners[i]._listener;
      }

      return undefined;
    },
    /**
     * Add a listener for the event.
     *
     * @param {Function} listener The listener to add
     * @public
     */
    set(listener) {
      const listeners = this.listeners(method);
      for (var i = 0; i < listeners.length; i++) {
        //
        // Remove only the listeners added via `addEventListener`.
        //
        if (listeners[i]._listener) this.removeListener(method, listeners[i]);
      }
      this.addEventListener(method, listener);
    }
  });
});

WebSocket.prototype.addEventListener = EventTarget.addEventListener;
WebSocket.prototype.removeEventListener = EventTarget.removeEventListener;

module.exports = WebSocket;

/**
 * Initialize a WebSocket client.
 *
 * @param {WebSocket} websocket The client to initialize
 * @param {(String|url.Url|url.URL)} address The URL to which to connect
 * @param {String} protocols The subprotocols
 * @param {Object} options Connection options
 * @param {(Boolean|Object)} options.perMessageDeflate Enable/disable
 *     permessage-deflate
 * @param {Number} options.handshakeTimeout Timeout in milliseconds for the
 *     handshake request
 * @param {Number} options.protocolVersion Value of the `Sec-WebSocket-Version`
 *     header
 * @param {String} options.origin Value of the `Origin` or
 *     `Sec-WebSocket-Origin` header
 * @param {Number} options.maxPayload The maximum allowed message size
 * @param {Boolean} options.followRedirects Whether or not to follow redirects
 * @param {Number} options.maxRedirects The maximum number of redirects allowed
 * @private
 */
function initAsClient(websocket, address, protocols, options) {
  const opts = Object.assign(
    {
      protocolVersion: protocolVersions[1],
      maxPayload: 100 * 1024 * 1024,
      perMessageDeflate: true,
      followRedirects: false,
      maxRedirects: 10
    },
    options,
    {
      createConnection: undefined,
      socketPath: undefined,
      hostname: undefined,
      protocol: undefined,
      timeout: undefined,
      method: undefined,
      auth: undefined,
      host: undefined,
      path: undefined,
      port: undefined
    }
  );

  if (!protocolVersions.includes(opts.protocolVersion)) {
    throw new RangeError(
      `Unsupported protocol version: ${opts.protocolVersion} ` +
        `(supported versions: ${protocolVersions.join(', ')})`
    );
  }

  var parsedUrl;

  if (typeof address === 'object' && address.href !== undefined) {
    parsedUrl = address;
    websocket.url = address.href;
  } else {
    //
    // The WHATWG URL constructor is not available on Node.js < 6.13.0
    //
    parsedUrl = url.URL ? new url.URL(address) : url.parse(address);
    websocket.url = address;
  }

  const isUnixSocket = parsedUrl.protocol === 'ws+unix:';

  if (!parsedUrl.host && (!isUnixSocket || !parsedUrl.pathname)) {
    throw new Error(`Invalid URL: ${websocket.url}`);
  }

  const isSecure =
    parsedUrl.protocol === 'wss:' || parsedUrl.protocol === 'https:';
  const defaultPort = isSecure ? 443 : 80;
  const key = crypto.randomBytes(16).toString('base64');
  const get = isSecure ? https.get : http.get;
  const path = parsedUrl.search
    ? `${parsedUrl.pathname || '/'}${parsedUrl.search}`
    : parsedUrl.pathname || '/';
  var perMessageDeflate;

  opts.createConnection = isSecure ? tlsConnect : netConnect;
  opts.defaultPort = opts.defaultPort || defaultPort;
  opts.port = parsedUrl.port || defaultPort;
  opts.host = parsedUrl.hostname.startsWith('[')
    ? parsedUrl.hostname.slice(1, -1)
    : parsedUrl.hostname;
  opts.headers = Object.assign(
    {
      'Sec-WebSocket-Version': opts.protocolVersion,
      'Sec-WebSocket-Key': key,
      Connection: 'Upgrade',
      Upgrade: 'websocket'
    },
    opts.headers
  );
  opts.path = path;
  opts.timeout = opts.handshakeTimeout;

  if (opts.perMessageDeflate) {
    perMessageDeflate = new PerMessageDeflate(
      opts.perMessageDeflate !== true ? opts.perMessageDeflate : {},
      false,
      opts.maxPayload
    );
    opts.headers['Sec-WebSocket-Extensions'] = extension.format({
      [PerMessageDeflate.extensionName]: perMessageDeflate.offer()
    });
  }
  if (protocols) {
    opts.headers['Sec-WebSocket-Protocol'] = protocols;
  }
  if (opts.origin) {
    if (opts.protocolVersion < 13) {
      opts.headers['Sec-WebSocket-Origin'] = opts.origin;
    } else {
      opts.headers.Origin = opts.origin;
    }
  }
  if (parsedUrl.auth) {
    opts.auth = parsedUrl.auth;
  } else if (parsedUrl.username || parsedUrl.password) {
    opts.auth = `${parsedUrl.username}:${parsedUrl.password}`;
  }

  if (isUnixSocket) {
    const parts = path.split(':');

    opts.socketPath = parts[0];
    opts.path = parts[1];
  }

  var req = (websocket._req = get(opts));

  if (opts.timeout) {
    req.on('timeout', () => {
      abortHandshake(websocket, req, 'Opening handshake has timed out');
    });
  }

  req.on('error', (err) => {
    if (websocket._req.aborted) return;

    req = websocket._req = null;
    websocket.readyState = WebSocket.CLOSING;
    websocket.emit('error', err);
    websocket.emitClose();
  });

  req.on('response', (res) => {
    const location = res.headers.location;
    const statusCode = res.statusCode;

    if (
      location &&
      opts.followRedirects &&
      statusCode >= 300 &&
      statusCode < 400
    ) {
      if (++websocket._redirects > opts.maxRedirects) {
        abortHandshake(websocket, req, 'Maximum redirects exceeded');
        return;
      }

      req.abort();

      const addr = url.URL
        ? new url.URL(location, address)
        : url.resolve(address, location);

      initAsClient(websocket, addr, protocols, options);
    } else if (!websocket.emit('unexpected-response', req, res)) {
      abortHandshake(
        websocket,
        req,
        `Unexpected server response: ${res.statusCode}`
      );
    }
  });

  req.on('upgrade', (res, socket, head) => {
    websocket.emit('upgrade', res);

    //
    // The user may have closed the connection from a listener of the `upgrade`
    // event.
    //
    if (websocket.readyState !== WebSocket.CONNECTING) return;

    req = websocket._req = null;

    const digest = crypto
      .createHash('sha1')
      .update(key + GUID)
      .digest('base64');

    if (res.headers['sec-websocket-accept'] !== digest) {
      abortHandshake(websocket, socket, 'Invalid Sec-WebSocket-Accept header');
      return;
    }

    const serverProt = res.headers['sec-websocket-protocol'];
    const protList = (protocols || '').split(/, */);
    var protError;

    if (!protocols && serverProt) {
      protError = 'Server sent a subprotocol but none was requested';
    } else if (protocols && !serverProt) {
      protError = 'Server sent no subprotocol';
    } else if (serverProt && !protList.includes(serverProt)) {
      protError = 'Server sent an invalid subprotocol';
    }

    if (protError) {
      abortHandshake(websocket, socket, protError);
      return;
    }

    if (serverProt) websocket.protocol = serverProt;

    if (perMessageDeflate) {
      try {
        const extensions = extension.parse(
          res.headers['sec-websocket-extensions']
        );

        if (extensions[PerMessageDeflate.extensionName]) {
          perMessageDeflate.accept(extensions[PerMessageDeflate.extensionName]);
          websocket._extensions[
            PerMessageDeflate.extensionName
          ] = perMessageDeflate;
        }
      } catch (err) {
        abortHandshake(
          websocket,
          socket,
          'Invalid Sec-WebSocket-Extensions header'
        );
        return;
      }
    }

    websocket.setSocket(socket, head, opts.maxPayload);
  });
}

/**
 * Create a `net.Socket` and initiate a connection.
 *
 * @param {Object} options Connection options
 * @return {net.Socket} The newly created socket used to start the connection
 * @private
 */
function netConnect(options) {
  //
  // Override `options.path` only if `options` is a copy of the original options
  // object. This is always true on Node.js >= 8 but not on Node.js 6 where
  // `options.socketPath` might be `undefined` even if the `socketPath` option
  // was originally set.
  //
  if (options.protocolVersion) options.path = options.socketPath;
  return net.connect(options);
}

/**
 * Create a `tls.TLSSocket` and initiate a connection.
 *
 * @param {Object} options Connection options
 * @return {tls.TLSSocket} The newly created socket used to start the connection
 * @private
 */
function tlsConnect(options) {
  options.path = undefined;
  options.servername = options.servername || options.host;
  return tls.connect(options);
}

/**
 * Abort the handshake and emit an error.
 *
 * @param {WebSocket} websocket The WebSocket instance
 * @param {(http.ClientRequest|net.Socket)} stream The request to abort or the
 *     socket to destroy
 * @param {String} message The error message
 * @private
 */
function abortHandshake(websocket, stream, message) {
  websocket.readyState = WebSocket.CLOSING;

  const err = new Error(message);
  Error.captureStackTrace(err, abortHandshake);

  if (stream.setHeader) {
    stream.abort();
    stream.once('abort', websocket.emitClose.bind(websocket));
    websocket.emit('error', err);
  } else {
    stream.destroy(err);
    stream.once('error', websocket.emit.bind(websocket, 'error'));
    stream.once('close', websocket.emitClose.bind(websocket));
  }
}

/**
 * The listener of the `Receiver` `'conclude'` event.
 *
 * @param {Number} code The status code
 * @param {String} reason The reason for closing
 * @private
 */
function receiverOnConclude(code, reason) {
  const websocket = this[kWebSocket];

  websocket._socket.removeListener('data', socketOnData);
  websocket._socket.resume();

  websocket._closeFrameReceived = true;
  websocket._closeMessage = reason;
  websocket._closeCode = code;

  if (code === 1005) websocket.close();
  else websocket.close(code, reason);
}

/**
 * The listener of the `Receiver` `'drain'` event.
 *
 * @private
 */
function receiverOnDrain() {
  this[kWebSocket]._socket.resume();
}

/**
 * The listener of the `Receiver` `'error'` event.
 *
 * @param {(RangeError|Error)} err The emitted error
 * @private
 */
function receiverOnError(err) {
  const websocket = this[kWebSocket];

  websocket._socket.removeListener('data', socketOnData);

  websocket.readyState = WebSocket.CLOSING;
  websocket._closeCode = err[kStatusCode];
  websocket.emit('error', err);
  websocket._socket.destroy();
}

/**
 * The listener of the `Receiver` `'finish'` event.
 *
 * @private
 */
function receiverOnFinish() {
  this[kWebSocket].emitClose();
}

/**
 * The listener of the `Receiver` `'message'` event.
 *
 * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The message
 * @private
 */
function receiverOnMessage(data) {
  this[kWebSocket].emit('message', data);
}

/**
 * The listener of the `Receiver` `'ping'` event.
 *
 * @param {Buffer} data The data included in the ping frame
 * @private
 */
function receiverOnPing(data) {
  const websocket = this[kWebSocket];

  websocket.pong(data, !websocket._isServer, NOOP);
  websocket.emit('ping', data);
}

/**
 * The listener of the `Receiver` `'pong'` event.
 *
 * @param {Buffer} data The data included in the pong frame
 * @private
 */
function receiverOnPong(data) {
  this[kWebSocket].emit('pong', data);
}

/**
 * The listener of the `net.Socket` `'close'` event.
 *
 * @private
 */
function socketOnClose() {
  const websocket = this[kWebSocket];

  this.removeListener('close', socketOnClose);
  this.removeListener('end', socketOnEnd);

  websocket.readyState = WebSocket.CLOSING;

  //
  // The close frame might not have been received or the `'end'` event emitted,
  // for example, if the socket was destroyed due to an error. Ensure that the
  // `receiver` stream is closed after writing any remaining buffered data to
  // it. If the readable side of the socket is in flowing mode then there is no
  // buffered data as everything has been already written and `readable.read()`
  // will return `null`. If instead, the socket is paused, any possible buffered
  // data will be read as a single chunk and emitted synchronously in a single
  // `'data'` event.
  //
  websocket._socket.read();
  websocket._receiver.end();

  this.removeListener('data', socketOnData);
  this[kWebSocket] = undefined;

  clearTimeout(websocket._closeTimer);

  if (
    websocket._receiver._writableState.finished ||
    websocket._receiver._writableState.errorEmitted
  ) {
    websocket.emitClose();
  } else {
    websocket._receiver.on('error', receiverOnFinish);
    websocket._receiver.on('finish', receiverOnFinish);
  }
}

/**
 * The listener of the `net.Socket` `'data'` event.
 *
 * @param {Buffer} chunk A chunk of data
 * @private
 */
function socketOnData(chunk) {
  if (!this[kWebSocket]._receiver.write(chunk)) {
    this.pause();
  }
}

/**
 * The listener of the `net.Socket` `'end'` event.
 *
 * @private
 */
function socketOnEnd() {
  const websocket = this[kWebSocket];

  websocket.readyState = WebSocket.CLOSING;
  websocket._receiver.end();
  this.end();
}

/**
 * The listener of the `net.Socket` `'error'` event.
 *
 * @private
 */
function socketOnError() {
  const websocket = this[kWebSocket];

  this.removeListener('error', socketOnError);
  this.on('error', NOOP);

  websocket.readyState = WebSocket.CLOSING;
  this.destroy();
}


/***/ }),

/***/ 22624:
/***/ (function(__unused_webpack_module, exports) {

// Generated by CoffeeScript 1.12.7
(function() {
  "use strict";
  exports.stripBOM = function(str) {
    if (str[0] === '\uFEFF') {
      return str.substring(1);
    } else {
      return str;
    }
  };

}).call(this);


/***/ }),

/***/ 43337:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  "use strict";
  var builder, defaults, escapeCDATA, requiresCDATA, wrapCDATA,
    hasProp = {}.hasOwnProperty;

  builder = __webpack_require__(52958);

  defaults = __webpack_require__(97251).defaults;

  requiresCDATA = function(entry) {
    return typeof entry === "string" && (entry.indexOf('&') >= 0 || entry.indexOf('>') >= 0 || entry.indexOf('<') >= 0);
  };

  wrapCDATA = function(entry) {
    return "<![CDATA[" + (escapeCDATA(entry)) + "]]>";
  };

  escapeCDATA = function(entry) {
    return entry.replace(']]>', ']]]]><![CDATA[>');
  };

  exports.Builder = (function() {
    function Builder(opts) {
      var key, ref, value;
      this.options = {};
      ref = defaults["0.2"];
      for (key in ref) {
        if (!hasProp.call(ref, key)) continue;
        value = ref[key];
        this.options[key] = value;
      }
      for (key in opts) {
        if (!hasProp.call(opts, key)) continue;
        value = opts[key];
        this.options[key] = value;
      }
    }

    Builder.prototype.buildObject = function(rootObj) {
      var attrkey, charkey, render, rootElement, rootName;
      attrkey = this.options.attrkey;
      charkey = this.options.charkey;
      if ((Object.keys(rootObj).length === 1) && (this.options.rootName === defaults['0.2'].rootName)) {
        rootName = Object.keys(rootObj)[0];
        rootObj = rootObj[rootName];
      } else {
        rootName = this.options.rootName;
      }
      render = (function(_this) {
        return function(element, obj) {
          var attr, child, entry, index, key, value;
          if (typeof obj !== 'object') {
            if (_this.options.cdata && requiresCDATA(obj)) {
              element.raw(wrapCDATA(obj));
            } else {
              element.txt(obj);
            }
          } else if (Array.isArray(obj)) {
            for (index in obj) {
              if (!hasProp.call(obj, index)) continue;
              child = obj[index];
              for (key in child) {
                entry = child[key];
                element = render(element.ele(key), entry).up();
              }
            }
          } else {
            for (key in obj) {
              if (!hasProp.call(obj, key)) continue;
              child = obj[key];
              if (key === attrkey) {
                if (typeof child === "object") {
                  for (attr in child) {
                    value = child[attr];
                    element = element.att(attr, value);
                  }
                }
              } else if (key === charkey) {
                if (_this.options.cdata && requiresCDATA(child)) {
                  element = element.raw(wrapCDATA(child));
                } else {
                  element = element.txt(child);
                }
              } else if (Array.isArray(child)) {
                for (index in child) {
                  if (!hasProp.call(child, index)) continue;
                  entry = child[index];
                  if (typeof entry === 'string') {
                    if (_this.options.cdata && requiresCDATA(entry)) {
                      element = element.ele(key).raw(wrapCDATA(entry)).up();
                    } else {
                      element = element.ele(key, entry).up();
                    }
                  } else {
                    element = render(element.ele(key), entry).up();
                  }
                }
              } else if (typeof child === "object") {
                element = render(element.ele(key), child).up();
              } else {
                if (typeof child === 'string' && _this.options.cdata && requiresCDATA(child)) {
                  element = element.ele(key).raw(wrapCDATA(child)).up();
                } else {
                  if (child == null) {
                    child = '';
                  }
                  element = element.ele(key, child.toString()).up();
                }
              }
            }
          }
          return element;
        };
      })(this);
      rootElement = builder.create(rootName, this.options.xmldec, this.options.doctype, {
        headless: this.options.headless,
        allowSurrogateChars: this.options.allowSurrogateChars
      });
      return render(rootElement, rootObj).end(this.options.renderOpts);
    };

    return Builder;

  })();

}).call(this);


/***/ }),

/***/ 97251:
/***/ (function(__unused_webpack_module, exports) {

// Generated by CoffeeScript 1.12.7
(function() {
  exports.defaults = {
    "0.1": {
      explicitCharkey: false,
      trim: true,
      normalize: true,
      normalizeTags: false,
      attrkey: "@",
      charkey: "#",
      explicitArray: false,
      ignoreAttrs: false,
      mergeAttrs: false,
      explicitRoot: false,
      validator: null,
      xmlns: false,
      explicitChildren: false,
      childkey: '@@',
      charsAsChildren: false,
      includeWhiteChars: false,
      async: false,
      strict: true,
      attrNameProcessors: null,
      attrValueProcessors: null,
      tagNameProcessors: null,
      valueProcessors: null,
      emptyTag: ''
    },
    "0.2": {
      explicitCharkey: false,
      trim: false,
      normalize: false,
      normalizeTags: false,
      attrkey: "$",
      charkey: "_",
      explicitArray: true,
      ignoreAttrs: false,
      mergeAttrs: false,
      explicitRoot: true,
      validator: null,
      xmlns: false,
      explicitChildren: false,
      preserveChildrenOrder: false,
      childkey: '$$',
      charsAsChildren: false,
      includeWhiteChars: false,
      async: false,
      strict: true,
      attrNameProcessors: null,
      attrValueProcessors: null,
      tagNameProcessors: null,
      valueProcessors: null,
      rootName: 'root',
      xmldec: {
        'version': '1.0',
        'encoding': 'UTF-8',
        'standalone': true
      },
      doctype: null,
      renderOpts: {
        'pretty': true,
        'indent': '  ',
        'newline': '\n'
      },
      headless: false,
      chunkSize: 10000,
      emptyTag: '',
      cdata: false
    }
  };

}).call(this);


/***/ }),

/***/ 83314:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  "use strict";
  var bom, defaults, events, isEmpty, processItem, processors, sax, setImmediate,
    bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  sax = __webpack_require__(41695);

  events = __webpack_require__(28614);

  bom = __webpack_require__(22624);

  processors = __webpack_require__(99236);

  setImmediate = __webpack_require__(78213).setImmediate;

  defaults = __webpack_require__(97251).defaults;

  isEmpty = function(thing) {
    return typeof thing === "object" && (thing != null) && Object.keys(thing).length === 0;
  };

  processItem = function(processors, item, key) {
    var i, len, process;
    for (i = 0, len = processors.length; i < len; i++) {
      process = processors[i];
      item = process(item, key);
    }
    return item;
  };

  exports.Parser = (function(superClass) {
    extend(Parser, superClass);

    function Parser(opts) {
      this.parseString = bind(this.parseString, this);
      this.reset = bind(this.reset, this);
      this.assignOrPush = bind(this.assignOrPush, this);
      this.processAsync = bind(this.processAsync, this);
      var key, ref, value;
      if (!(this instanceof exports.Parser)) {
        return new exports.Parser(opts);
      }
      this.options = {};
      ref = defaults["0.2"];
      for (key in ref) {
        if (!hasProp.call(ref, key)) continue;
        value = ref[key];
        this.options[key] = value;
      }
      for (key in opts) {
        if (!hasProp.call(opts, key)) continue;
        value = opts[key];
        this.options[key] = value;
      }
      if (this.options.xmlns) {
        this.options.xmlnskey = this.options.attrkey + "ns";
      }
      if (this.options.normalizeTags) {
        if (!this.options.tagNameProcessors) {
          this.options.tagNameProcessors = [];
        }
        this.options.tagNameProcessors.unshift(processors.normalize);
      }
      this.reset();
    }

    Parser.prototype.processAsync = function() {
      var chunk, err;
      try {
        if (this.remaining.length <= this.options.chunkSize) {
          chunk = this.remaining;
          this.remaining = '';
          this.saxParser = this.saxParser.write(chunk);
          return this.saxParser.close();
        } else {
          chunk = this.remaining.substr(0, this.options.chunkSize);
          this.remaining = this.remaining.substr(this.options.chunkSize, this.remaining.length);
          this.saxParser = this.saxParser.write(chunk);
          return setImmediate(this.processAsync);
        }
      } catch (error1) {
        err = error1;
        if (!this.saxParser.errThrown) {
          this.saxParser.errThrown = true;
          return this.emit(err);
        }
      }
    };

    Parser.prototype.assignOrPush = function(obj, key, newValue) {
      if (!(key in obj)) {
        if (!this.options.explicitArray) {
          return obj[key] = newValue;
        } else {
          return obj[key] = [newValue];
        }
      } else {
        if (!(obj[key] instanceof Array)) {
          obj[key] = [obj[key]];
        }
        return obj[key].push(newValue);
      }
    };

    Parser.prototype.reset = function() {
      var attrkey, charkey, ontext, stack;
      this.removeAllListeners();
      this.saxParser = sax.parser(this.options.strict, {
        trim: false,
        normalize: false,
        xmlns: this.options.xmlns
      });
      this.saxParser.errThrown = false;
      this.saxParser.onerror = (function(_this) {
        return function(error) {
          _this.saxParser.resume();
          if (!_this.saxParser.errThrown) {
            _this.saxParser.errThrown = true;
            return _this.emit("error", error);
          }
        };
      })(this);
      this.saxParser.onend = (function(_this) {
        return function() {
          if (!_this.saxParser.ended) {
            _this.saxParser.ended = true;
            return _this.emit("end", _this.resultObject);
          }
        };
      })(this);
      this.saxParser.ended = false;
      this.EXPLICIT_CHARKEY = this.options.explicitCharkey;
      this.resultObject = null;
      stack = [];
      attrkey = this.options.attrkey;
      charkey = this.options.charkey;
      this.saxParser.onopentag = (function(_this) {
        return function(node) {
          var key, newValue, obj, processedKey, ref;
          obj = {};
          obj[charkey] = "";
          if (!_this.options.ignoreAttrs) {
            ref = node.attributes;
            for (key in ref) {
              if (!hasProp.call(ref, key)) continue;
              if (!(attrkey in obj) && !_this.options.mergeAttrs) {
                obj[attrkey] = {};
              }
              newValue = _this.options.attrValueProcessors ? processItem(_this.options.attrValueProcessors, node.attributes[key], key) : node.attributes[key];
              processedKey = _this.options.attrNameProcessors ? processItem(_this.options.attrNameProcessors, key) : key;
              if (_this.options.mergeAttrs) {
                _this.assignOrPush(obj, processedKey, newValue);
              } else {
                obj[attrkey][processedKey] = newValue;
              }
            }
          }
          obj["#name"] = _this.options.tagNameProcessors ? processItem(_this.options.tagNameProcessors, node.name) : node.name;
          if (_this.options.xmlns) {
            obj[_this.options.xmlnskey] = {
              uri: node.uri,
              local: node.local
            };
          }
          return stack.push(obj);
        };
      })(this);
      this.saxParser.onclosetag = (function(_this) {
        return function() {
          var cdata, emptyStr, key, node, nodeName, obj, objClone, old, s, xpath;
          obj = stack.pop();
          nodeName = obj["#name"];
          if (!_this.options.explicitChildren || !_this.options.preserveChildrenOrder) {
            delete obj["#name"];
          }
          if (obj.cdata === true) {
            cdata = obj.cdata;
            delete obj.cdata;
          }
          s = stack[stack.length - 1];
          if (obj[charkey].match(/^\s*$/) && !cdata) {
            emptyStr = obj[charkey];
            delete obj[charkey];
          } else {
            if (_this.options.trim) {
              obj[charkey] = obj[charkey].trim();
            }
            if (_this.options.normalize) {
              obj[charkey] = obj[charkey].replace(/\s{2,}/g, " ").trim();
            }
            obj[charkey] = _this.options.valueProcessors ? processItem(_this.options.valueProcessors, obj[charkey], nodeName) : obj[charkey];
            if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {
              obj = obj[charkey];
            }
          }
          if (isEmpty(obj)) {
            obj = _this.options.emptyTag !== '' ? _this.options.emptyTag : emptyStr;
          }
          if (_this.options.validator != null) {
            xpath = "/" + ((function() {
              var i, len, results;
              results = [];
              for (i = 0, len = stack.length; i < len; i++) {
                node = stack[i];
                results.push(node["#name"]);
              }
              return results;
            })()).concat(nodeName).join("/");
            (function() {
              var err;
              try {
                return obj = _this.options.validator(xpath, s && s[nodeName], obj);
              } catch (error1) {
                err = error1;
                return _this.emit("error", err);
              }
            })();
          }
          if (_this.options.explicitChildren && !_this.options.mergeAttrs && typeof obj === 'object') {
            if (!_this.options.preserveChildrenOrder) {
              node = {};
              if (_this.options.attrkey in obj) {
                node[_this.options.attrkey] = obj[_this.options.attrkey];
                delete obj[_this.options.attrkey];
              }
              if (!_this.options.charsAsChildren && _this.options.charkey in obj) {
                node[_this.options.charkey] = obj[_this.options.charkey];
                delete obj[_this.options.charkey];
              }
              if (Object.getOwnPropertyNames(obj).length > 0) {
                node[_this.options.childkey] = obj;
              }
              obj = node;
            } else if (s) {
              s[_this.options.childkey] = s[_this.options.childkey] || [];
              objClone = {};
              for (key in obj) {
                if (!hasProp.call(obj, key)) continue;
                objClone[key] = obj[key];
              }
              s[_this.options.childkey].push(objClone);
              delete obj["#name"];
              if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {
                obj = obj[charkey];
              }
            }
          }
          if (stack.length > 0) {
            return _this.assignOrPush(s, nodeName, obj);
          } else {
            if (_this.options.explicitRoot) {
              old = obj;
              obj = {};
              obj[nodeName] = old;
            }
            _this.resultObject = obj;
            _this.saxParser.ended = true;
            return _this.emit("end", _this.resultObject);
          }
        };
      })(this);
      ontext = (function(_this) {
        return function(text) {
          var charChild, s;
          s = stack[stack.length - 1];
          if (s) {
            s[charkey] += text;
            if (_this.options.explicitChildren && _this.options.preserveChildrenOrder && _this.options.charsAsChildren && (_this.options.includeWhiteChars || text.replace(/\\n/g, '').trim() !== '')) {
              s[_this.options.childkey] = s[_this.options.childkey] || [];
              charChild = {
                '#name': '__text__'
              };
              charChild[charkey] = text;
              if (_this.options.normalize) {
                charChild[charkey] = charChild[charkey].replace(/\s{2,}/g, " ").trim();
              }
              s[_this.options.childkey].push(charChild);
            }
            return s;
          }
        };
      })(this);
      this.saxParser.ontext = ontext;
      return this.saxParser.oncdata = (function(_this) {
        return function(text) {
          var s;
          s = ontext(text);
          if (s) {
            return s.cdata = true;
          }
        };
      })(this);
    };

    Parser.prototype.parseString = function(str, cb) {
      var err;
      if ((cb != null) && typeof cb === "function") {
        this.on("end", function(result) {
          this.reset();
          return cb(null, result);
        });
        this.on("error", function(err) {
          this.reset();
          return cb(err);
        });
      }
      try {
        str = str.toString();
        if (str.trim() === '') {
          this.emit("end", null);
          return true;
        }
        str = bom.stripBOM(str);
        if (this.options.async) {
          this.remaining = str;
          setImmediate(this.processAsync);
          return this.saxParser;
        }
        return this.saxParser.write(str).close();
      } catch (error1) {
        err = error1;
        if (!(this.saxParser.errThrown || this.saxParser.ended)) {
          this.emit('error', err);
          return this.saxParser.errThrown = true;
        } else if (this.saxParser.ended) {
          throw err;
        }
      }
    };

    return Parser;

  })(events.EventEmitter);

  exports.parseString = function(str, a, b) {
    var cb, options, parser;
    if (b != null) {
      if (typeof b === 'function') {
        cb = b;
      }
      if (typeof a === 'object') {
        options = a;
      }
    } else {
      if (typeof a === 'function') {
        cb = a;
      }
      options = {};
    }
    parser = new exports.Parser(options);
    return parser.parseString(str, cb);
  };

}).call(this);


/***/ }),

/***/ 99236:
/***/ (function(__unused_webpack_module, exports) {

// Generated by CoffeeScript 1.12.7
(function() {
  "use strict";
  var prefixMatch;

  prefixMatch = new RegExp(/(?!xmlns)^.*:/);

  exports.normalize = function(str) {
    return str.toLowerCase();
  };

  exports.firstCharLowerCase = function(str) {
    return str.charAt(0).toLowerCase() + str.slice(1);
  };

  exports.stripPrefix = function(str) {
    return str.replace(prefixMatch, '');
  };

  exports.parseNumbers = function(str) {
    if (!isNaN(str)) {
      str = str % 1 === 0 ? parseInt(str, 10) : parseFloat(str);
    }
    return str;
  };

  exports.parseBooleans = function(str) {
    if (/^(?:true|false)$/i.test(str)) {
      str = str.toLowerCase() === 'true';
    }
    return str;
  };

}).call(this);


/***/ }),

/***/ 66189:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  "use strict";
  var builder, defaults, parser, processors,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  defaults = __webpack_require__(97251);

  builder = __webpack_require__(43337);

  parser = __webpack_require__(83314);

  processors = __webpack_require__(99236);

  exports.defaults = defaults.defaults;

  exports.processors = processors;

  exports.ValidationError = (function(superClass) {
    extend(ValidationError, superClass);

    function ValidationError(message) {
      this.message = message;
    }

    return ValidationError;

  })(Error);

  exports.Builder = builder.Builder;

  exports.Parser = parser.Parser;

  exports.parseString = parser.parseString;

}).call(this);


/***/ }),

/***/ 41695:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

;(function (sax) { // wrapper for non-node envs
  sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }
  sax.SAXParser = SAXParser
  sax.SAXStream = SAXStream
  sax.createStream = createStream

  // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.
  // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),
  // since that's the earliest that a buffer overrun could occur.  This way, checks are
  // as rare as required, but as often as necessary to ensure never crossing this bound.
  // Furthermore, buffers are only tested at most once per write(), so passing a very
  // large string into write() might have undesirable effects, but this is manageable by
  // the caller, so it is assumed to be safe.  Thus, a call to write() may, in the extreme
  // edge case, result in creating at most one complete copy of the string passed in.
  // Set to Infinity to have unlimited buffers.
  sax.MAX_BUFFER_LENGTH = 64 * 1024

  var buffers = [
    'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',
    'procInstName', 'procInstBody', 'entity', 'attribName',
    'attribValue', 'cdata', 'script'
  ]

  sax.EVENTS = [
    'text',
    'processinginstruction',
    'sgmldeclaration',
    'doctype',
    'comment',
    'opentagstart',
    'attribute',
    'opentag',
    'closetag',
    'opencdata',
    'cdata',
    'closecdata',
    'error',
    'end',
    'ready',
    'script',
    'opennamespace',
    'closenamespace'
  ]

  function SAXParser (strict, opt) {
    if (!(this instanceof SAXParser)) {
      return new SAXParser(strict, opt)
    }

    var parser = this
    clearBuffers(parser)
    parser.q = parser.c = ''
    parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH
    parser.opt = opt || {}
    parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags
    parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'
    parser.tags = []
    parser.closed = parser.closedRoot = parser.sawRoot = false
    parser.tag = parser.error = null
    parser.strict = !!strict
    parser.noscript = !!(strict || parser.opt.noscript)
    parser.state = S.BEGIN
    parser.strictEntities = parser.opt.strictEntities
    parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)
    parser.attribList = []

    // namespaces form a prototype chain.
    // it always points at the current tag,
    // which protos to its parent tag.
    if (parser.opt.xmlns) {
      parser.ns = Object.create(rootNS)
    }

    // mostly just for error reporting
    parser.trackPosition = parser.opt.position !== false
    if (parser.trackPosition) {
      parser.position = parser.line = parser.column = 0
    }
    emit(parser, 'onready')
  }

  if (!Object.create) {
    Object.create = function (o) {
      function F () {}
      F.prototype = o
      var newf = new F()
      return newf
    }
  }

  if (!Object.keys) {
    Object.keys = function (o) {
      var a = []
      for (var i in o) if (o.hasOwnProperty(i)) a.push(i)
      return a
    }
  }

  function checkBufferLength (parser) {
    var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)
    var maxActual = 0
    for (var i = 0, l = buffers.length; i < l; i++) {
      var len = parser[buffers[i]].length
      if (len > maxAllowed) {
        // Text/cdata nodes can get big, and since they're buffered,
        // we can get here under normal conditions.
        // Avoid issues by emitting the text node now,
        // so at least it won't get any bigger.
        switch (buffers[i]) {
          case 'textNode':
            closeText(parser)
            break

          case 'cdata':
            emitNode(parser, 'oncdata', parser.cdata)
            parser.cdata = ''
            break

          case 'script':
            emitNode(parser, 'onscript', parser.script)
            parser.script = ''
            break

          default:
            error(parser, 'Max buffer length exceeded: ' + buffers[i])
        }
      }
      maxActual = Math.max(maxActual, len)
    }
    // schedule the next check for the earliest possible buffer overrun.
    var m = sax.MAX_BUFFER_LENGTH - maxActual
    parser.bufferCheckPosition = m + parser.position
  }

  function clearBuffers (parser) {
    for (var i = 0, l = buffers.length; i < l; i++) {
      parser[buffers[i]] = ''
    }
  }

  function flushBuffers (parser) {
    closeText(parser)
    if (parser.cdata !== '') {
      emitNode(parser, 'oncdata', parser.cdata)
      parser.cdata = ''
    }
    if (parser.script !== '') {
      emitNode(parser, 'onscript', parser.script)
      parser.script = ''
    }
  }

  SAXParser.prototype = {
    end: function () { end(this) },
    write: write,
    resume: function () { this.error = null; return this },
    close: function () { return this.write(null) },
    flush: function () { flushBuffers(this) }
  }

  var Stream
  try {
    Stream = __webpack_require__(92413).Stream
  } catch (ex) {
    Stream = function () {}
  }

  var streamWraps = sax.EVENTS.filter(function (ev) {
    return ev !== 'error' && ev !== 'end'
  })

  function createStream (strict, opt) {
    return new SAXStream(strict, opt)
  }

  function SAXStream (strict, opt) {
    if (!(this instanceof SAXStream)) {
      return new SAXStream(strict, opt)
    }

    Stream.apply(this)

    this._parser = new SAXParser(strict, opt)
    this.writable = true
    this.readable = true

    var me = this

    this._parser.onend = function () {
      me.emit('end')
    }

    this._parser.onerror = function (er) {
      me.emit('error', er)

      // if didn't throw, then means error was handled.
      // go ahead and clear error, so we can write again.
      me._parser.error = null
    }

    this._decoder = null

    streamWraps.forEach(function (ev) {
      Object.defineProperty(me, 'on' + ev, {
        get: function () {
          return me._parser['on' + ev]
        },
        set: function (h) {
          if (!h) {
            me.removeAllListeners(ev)
            me._parser['on' + ev] = h
            return h
          }
          me.on(ev, h)
        },
        enumerable: true,
        configurable: false
      })
    })
  }

  SAXStream.prototype = Object.create(Stream.prototype, {
    constructor: {
      value: SAXStream
    }
  })

  SAXStream.prototype.write = function (data) {
    if (typeof Buffer === 'function' &&
      typeof Buffer.isBuffer === 'function' &&
      Buffer.isBuffer(data)) {
      if (!this._decoder) {
        var SD = __webpack_require__(24304).StringDecoder
        this._decoder = new SD('utf8')
      }
      data = this._decoder.write(data)
    }

    this._parser.write(data.toString())
    this.emit('data', data)
    return true
  }

  SAXStream.prototype.end = function (chunk) {
    if (chunk && chunk.length) {
      this.write(chunk)
    }
    this._parser.end()
    return true
  }

  SAXStream.prototype.on = function (ev, handler) {
    var me = this
    if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {
      me._parser['on' + ev] = function () {
        var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)
        args.splice(0, 0, ev)
        me.emit.apply(me, args)
      }
    }

    return Stream.prototype.on.call(me, ev, handler)
  }

  // this really needs to be replaced with character classes.
  // XML allows all manner of ridiculous numbers and digits.
  var CDATA = '[CDATA['
  var DOCTYPE = 'DOCTYPE'
  var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'
  var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'
  var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }

  // http://www.w3.org/TR/REC-xml/#NT-NameStartChar
  // This implementation works on strings, a single character at a time
  // as such, it cannot ever support astral-plane characters (10000-EFFFF)
  // without a significant breaking change to either this  parser, or the
  // JavaScript language.  Implementation of an emoji-capable xml parser
  // is left as an exercise for the reader.
  var nameStart = /[:_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]/

  var nameBody = /[:_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\u00B7\u0300-\u036F\u203F-\u2040.\d-]/

  var entityStart = /[#:_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]/
  var entityBody = /[#:_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\u00B7\u0300-\u036F\u203F-\u2040.\d-]/

  function isWhitespace (c) {
    return c === ' ' || c === '\n' || c === '\r' || c === '\t'
  }

  function isQuote (c) {
    return c === '"' || c === '\''
  }

  function isAttribEnd (c) {
    return c === '>' || isWhitespace(c)
  }

  function isMatch (regex, c) {
    return regex.test(c)
  }

  function notMatch (regex, c) {
    return !isMatch(regex, c)
  }

  var S = 0
  sax.STATE = {
    BEGIN: S++, // leading byte order mark or whitespace
    BEGIN_WHITESPACE: S++, // leading whitespace
    TEXT: S++, // general stuff
    TEXT_ENTITY: S++, // &amp and such.
    OPEN_WAKA: S++, // <
    SGML_DECL: S++, // <!BLARG
    SGML_DECL_QUOTED: S++, // <!BLARG foo "bar
    DOCTYPE: S++, // <!DOCTYPE
    DOCTYPE_QUOTED: S++, // <!DOCTYPE "//blah
    DOCTYPE_DTD: S++, // <!DOCTYPE "//blah" [ ...
    DOCTYPE_DTD_QUOTED: S++, // <!DOCTYPE "//blah" [ "foo
    COMMENT_STARTING: S++, // <!-
    COMMENT: S++, // <!--
    COMMENT_ENDING: S++, // <!-- blah -
    COMMENT_ENDED: S++, // <!-- blah --
    CDATA: S++, // <![CDATA[ something
    CDATA_ENDING: S++, // ]
    CDATA_ENDING_2: S++, // ]]
    PROC_INST: S++, // <?hi
    PROC_INST_BODY: S++, // <?hi there
    PROC_INST_ENDING: S++, // <?hi "there" ?
    OPEN_TAG: S++, // <strong
    OPEN_TAG_SLASH: S++, // <strong /
    ATTRIB: S++, // <a
    ATTRIB_NAME: S++, // <a foo
    ATTRIB_NAME_SAW_WHITE: S++, // <a foo _
    ATTRIB_VALUE: S++, // <a foo=
    ATTRIB_VALUE_QUOTED: S++, // <a foo="bar
    ATTRIB_VALUE_CLOSED: S++, // <a foo="bar"
    ATTRIB_VALUE_UNQUOTED: S++, // <a foo=bar
    ATTRIB_VALUE_ENTITY_Q: S++, // <foo bar="&quot;"
    ATTRIB_VALUE_ENTITY_U: S++, // <foo bar=&quot
    CLOSE_TAG: S++, // </a
    CLOSE_TAG_SAW_WHITE: S++, // </a   >
    SCRIPT: S++, // <script> ...
    SCRIPT_ENDING: S++ // <script> ... <
  }

  sax.XML_ENTITIES = {
    'amp': '&',
    'gt': '>',
    'lt': '<',
    'quot': '"',
    'apos': "'"
  }

  sax.ENTITIES = {
    'amp': '&',
    'gt': '>',
    'lt': '<',
    'quot': '"',
    'apos': "'",
    'AElig': 198,
    'Aacute': 193,
    'Acirc': 194,
    'Agrave': 192,
    'Aring': 197,
    'Atilde': 195,
    'Auml': 196,
    'Ccedil': 199,
    'ETH': 208,
    'Eacute': 201,
    'Ecirc': 202,
    'Egrave': 200,
    'Euml': 203,
    'Iacute': 205,
    'Icirc': 206,
    'Igrave': 204,
    'Iuml': 207,
    'Ntilde': 209,
    'Oacute': 211,
    'Ocirc': 212,
    'Ograve': 210,
    'Oslash': 216,
    'Otilde': 213,
    'Ouml': 214,
    'THORN': 222,
    'Uacute': 218,
    'Ucirc': 219,
    'Ugrave': 217,
    'Uuml': 220,
    'Yacute': 221,
    'aacute': 225,
    'acirc': 226,
    'aelig': 230,
    'agrave': 224,
    'aring': 229,
    'atilde': 227,
    'auml': 228,
    'ccedil': 231,
    'eacute': 233,
    'ecirc': 234,
    'egrave': 232,
    'eth': 240,
    'euml': 235,
    'iacute': 237,
    'icirc': 238,
    'igrave': 236,
    'iuml': 239,
    'ntilde': 241,
    'oacute': 243,
    'ocirc': 244,
    'ograve': 242,
    'oslash': 248,
    'otilde': 245,
    'ouml': 246,
    'szlig': 223,
    'thorn': 254,
    'uacute': 250,
    'ucirc': 251,
    'ugrave': 249,
    'uuml': 252,
    'yacute': 253,
    'yuml': 255,
    'copy': 169,
    'reg': 174,
    'nbsp': 160,
    'iexcl': 161,
    'cent': 162,
    'pound': 163,
    'curren': 164,
    'yen': 165,
    'brvbar': 166,
    'sect': 167,
    'uml': 168,
    'ordf': 170,
    'laquo': 171,
    'not': 172,
    'shy': 173,
    'macr': 175,
    'deg': 176,
    'plusmn': 177,
    'sup1': 185,
    'sup2': 178,
    'sup3': 179,
    'acute': 180,
    'micro': 181,
    'para': 182,
    'middot': 183,
    'cedil': 184,
    'ordm': 186,
    'raquo': 187,
    'frac14': 188,
    'frac12': 189,
    'frac34': 190,
    'iquest': 191,
    'times': 215,
    'divide': 247,
    'OElig': 338,
    'oelig': 339,
    'Scaron': 352,
    'scaron': 353,
    'Yuml': 376,
    'fnof': 402,
    'circ': 710,
    'tilde': 732,
    'Alpha': 913,
    'Beta': 914,
    'Gamma': 915,
    'Delta': 916,
    'Epsilon': 917,
    'Zeta': 918,
    'Eta': 919,
    'Theta': 920,
    'Iota': 921,
    'Kappa': 922,
    'Lambda': 923,
    'Mu': 924,
    'Nu': 925,
    'Xi': 926,
    'Omicron': 927,
    'Pi': 928,
    'Rho': 929,
    'Sigma': 931,
    'Tau': 932,
    'Upsilon': 933,
    'Phi': 934,
    'Chi': 935,
    'Psi': 936,
    'Omega': 937,
    'alpha': 945,
    'beta': 946,
    'gamma': 947,
    'delta': 948,
    'epsilon': 949,
    'zeta': 950,
    'eta': 951,
    'theta': 952,
    'iota': 953,
    'kappa': 954,
    'lambda': 955,
    'mu': 956,
    'nu': 957,
    'xi': 958,
    'omicron': 959,
    'pi': 960,
    'rho': 961,
    'sigmaf': 962,
    'sigma': 963,
    'tau': 964,
    'upsilon': 965,
    'phi': 966,
    'chi': 967,
    'psi': 968,
    'omega': 969,
    'thetasym': 977,
    'upsih': 978,
    'piv': 982,
    'ensp': 8194,
    'emsp': 8195,
    'thinsp': 8201,
    'zwnj': 8204,
    'zwj': 8205,
    'lrm': 8206,
    'rlm': 8207,
    'ndash': 8211,
    'mdash': 8212,
    'lsquo': 8216,
    'rsquo': 8217,
    'sbquo': 8218,
    'ldquo': 8220,
    'rdquo': 8221,
    'bdquo': 8222,
    'dagger': 8224,
    'Dagger': 8225,
    'bull': 8226,
    'hellip': 8230,
    'permil': 8240,
    'prime': 8242,
    'Prime': 8243,
    'lsaquo': 8249,
    'rsaquo': 8250,
    'oline': 8254,
    'frasl': 8260,
    'euro': 8364,
    'image': 8465,
    'weierp': 8472,
    'real': 8476,
    'trade': 8482,
    'alefsym': 8501,
    'larr': 8592,
    'uarr': 8593,
    'rarr': 8594,
    'darr': 8595,
    'harr': 8596,
    'crarr': 8629,
    'lArr': 8656,
    'uArr': 8657,
    'rArr': 8658,
    'dArr': 8659,
    'hArr': 8660,
    'forall': 8704,
    'part': 8706,
    'exist': 8707,
    'empty': 8709,
    'nabla': 8711,
    'isin': 8712,
    'notin': 8713,
    'ni': 8715,
    'prod': 8719,
    'sum': 8721,
    'minus': 8722,
    'lowast': 8727,
    'radic': 8730,
    'prop': 8733,
    'infin': 8734,
    'ang': 8736,
    'and': 8743,
    'or': 8744,
    'cap': 8745,
    'cup': 8746,
    'int': 8747,
    'there4': 8756,
    'sim': 8764,
    'cong': 8773,
    'asymp': 8776,
    'ne': 8800,
    'equiv': 8801,
    'le': 8804,
    'ge': 8805,
    'sub': 8834,
    'sup': 8835,
    'nsub': 8836,
    'sube': 8838,
    'supe': 8839,
    'oplus': 8853,
    'otimes': 8855,
    'perp': 8869,
    'sdot': 8901,
    'lceil': 8968,
    'rceil': 8969,
    'lfloor': 8970,
    'rfloor': 8971,
    'lang': 9001,
    'rang': 9002,
    'loz': 9674,
    'spades': 9824,
    'clubs': 9827,
    'hearts': 9829,
    'diams': 9830
  }

  Object.keys(sax.ENTITIES).forEach(function (key) {
    var e = sax.ENTITIES[key]
    var s = typeof e === 'number' ? String.fromCharCode(e) : e
    sax.ENTITIES[key] = s
  })

  for (var s in sax.STATE) {
    sax.STATE[sax.STATE[s]] = s
  }

  // shorthand
  S = sax.STATE

  function emit (parser, event, data) {
    parser[event] && parser[event](data)
  }

  function emitNode (parser, nodeType, data) {
    if (parser.textNode) closeText(parser)
    emit(parser, nodeType, data)
  }

  function closeText (parser) {
    parser.textNode = textopts(parser.opt, parser.textNode)
    if (parser.textNode) emit(parser, 'ontext', parser.textNode)
    parser.textNode = ''
  }

  function textopts (opt, text) {
    if (opt.trim) text = text.trim()
    if (opt.normalize) text = text.replace(/\s+/g, ' ')
    return text
  }

  function error (parser, er) {
    closeText(parser)
    if (parser.trackPosition) {
      er += '\nLine: ' + parser.line +
        '\nColumn: ' + parser.column +
        '\nChar: ' + parser.c
    }
    er = new Error(er)
    parser.error = er
    emit(parser, 'onerror', er)
    return parser
  }

  function end (parser) {
    if (parser.sawRoot && !parser.closedRoot) strictFail(parser, 'Unclosed root tag')
    if ((parser.state !== S.BEGIN) &&
      (parser.state !== S.BEGIN_WHITESPACE) &&
      (parser.state !== S.TEXT)) {
      error(parser, 'Unexpected end')
    }
    closeText(parser)
    parser.c = ''
    parser.closed = true
    emit(parser, 'onend')
    SAXParser.call(parser, parser.strict, parser.opt)
    return parser
  }

  function strictFail (parser, message) {
    if (typeof parser !== 'object' || !(parser instanceof SAXParser)) {
      throw new Error('bad call to strictFail')
    }
    if (parser.strict) {
      error(parser, message)
    }
  }

  function newTag (parser) {
    if (!parser.strict) parser.tagName = parser.tagName[parser.looseCase]()
    var parent = parser.tags[parser.tags.length - 1] || parser
    var tag = parser.tag = { name: parser.tagName, attributes: {} }

    // will be overridden if tag contails an xmlns="foo" or xmlns:foo="bar"
    if (parser.opt.xmlns) {
      tag.ns = parent.ns
    }
    parser.attribList.length = 0
    emitNode(parser, 'onopentagstart', tag)
  }

  function qname (name, attribute) {
    var i = name.indexOf(':')
    var qualName = i < 0 ? [ '', name ] : name.split(':')
    var prefix = qualName[0]
    var local = qualName[1]

    // <x "xmlns"="http://foo">
    if (attribute && name === 'xmlns') {
      prefix = 'xmlns'
      local = ''
    }

    return { prefix: prefix, local: local }
  }

  function attrib (parser) {
    if (!parser.strict) {
      parser.attribName = parser.attribName[parser.looseCase]()
    }

    if (parser.attribList.indexOf(parser.attribName) !== -1 ||
      parser.tag.attributes.hasOwnProperty(parser.attribName)) {
      parser.attribName = parser.attribValue = ''
      return
    }

    if (parser.opt.xmlns) {
      var qn = qname(parser.attribName, true)
      var prefix = qn.prefix
      var local = qn.local

      if (prefix === 'xmlns') {
        // namespace binding attribute. push the binding into scope
        if (local === 'xml' && parser.attribValue !== XML_NAMESPACE) {
          strictFail(parser,
            'xml: prefix must be bound to ' + XML_NAMESPACE + '\n' +
            'Actual: ' + parser.attribValue)
        } else if (local === 'xmlns' && parser.attribValue !== XMLNS_NAMESPACE) {
          strictFail(parser,
            'xmlns: prefix must be bound to ' + XMLNS_NAMESPACE + '\n' +
            'Actual: ' + parser.attribValue)
        } else {
          var tag = parser.tag
          var parent = parser.tags[parser.tags.length - 1] || parser
          if (tag.ns === parent.ns) {
            tag.ns = Object.create(parent.ns)
          }
          tag.ns[local] = parser.attribValue
        }
      }

      // defer onattribute events until all attributes have been seen
      // so any new bindings can take effect. preserve attribute order
      // so deferred events can be emitted in document order
      parser.attribList.push([parser.attribName, parser.attribValue])
    } else {
      // in non-xmlns mode, we can emit the event right away
      parser.tag.attributes[parser.attribName] = parser.attribValue
      emitNode(parser, 'onattribute', {
        name: parser.attribName,
        value: parser.attribValue
      })
    }

    parser.attribName = parser.attribValue = ''
  }

  function openTag (parser, selfClosing) {
    if (parser.opt.xmlns) {
      // emit namespace binding events
      var tag = parser.tag

      // add namespace info to tag
      var qn = qname(parser.tagName)
      tag.prefix = qn.prefix
      tag.local = qn.local
      tag.uri = tag.ns[qn.prefix] || ''

      if (tag.prefix && !tag.uri) {
        strictFail(parser, 'Unbound namespace prefix: ' +
          JSON.stringify(parser.tagName))
        tag.uri = qn.prefix
      }

      var parent = parser.tags[parser.tags.length - 1] || parser
      if (tag.ns && parent.ns !== tag.ns) {
        Object.keys(tag.ns).forEach(function (p) {
          emitNode(parser, 'onopennamespace', {
            prefix: p,
            uri: tag.ns[p]
          })
        })
      }

      // handle deferred onattribute events
      // Note: do not apply default ns to attributes:
      //   http://www.w3.org/TR/REC-xml-names/#defaulting
      for (var i = 0, l = parser.attribList.length; i < l; i++) {
        var nv = parser.attribList[i]
        var name = nv[0]
        var value = nv[1]
        var qualName = qname(name, true)
        var prefix = qualName.prefix
        var local = qualName.local
        var uri = prefix === '' ? '' : (tag.ns[prefix] || '')
        var a = {
          name: name,
          value: value,
          prefix: prefix,
          local: local,
          uri: uri
        }

        // if there's any attributes with an undefined namespace,
        // then fail on them now.
        if (prefix && prefix !== 'xmlns' && !uri) {
          strictFail(parser, 'Unbound namespace prefix: ' +
            JSON.stringify(prefix))
          a.uri = prefix
        }
        parser.tag.attributes[name] = a
        emitNode(parser, 'onattribute', a)
      }
      parser.attribList.length = 0
    }

    parser.tag.isSelfClosing = !!selfClosing

    // process the tag
    parser.sawRoot = true
    parser.tags.push(parser.tag)
    emitNode(parser, 'onopentag', parser.tag)
    if (!selfClosing) {
      // special case for <script> in non-strict mode.
      if (!parser.noscript && parser.tagName.toLowerCase() === 'script') {
        parser.state = S.SCRIPT
      } else {
        parser.state = S.TEXT
      }
      parser.tag = null
      parser.tagName = ''
    }
    parser.attribName = parser.attribValue = ''
    parser.attribList.length = 0
  }

  function closeTag (parser) {
    if (!parser.tagName) {
      strictFail(parser, 'Weird empty close tag.')
      parser.textNode += '</>'
      parser.state = S.TEXT
      return
    }

    if (parser.script) {
      if (parser.tagName !== 'script') {
        parser.script += '</' + parser.tagName + '>'
        parser.tagName = ''
        parser.state = S.SCRIPT
        return
      }
      emitNode(parser, 'onscript', parser.script)
      parser.script = ''
    }

    // first make sure that the closing tag actually exists.
    // <a><b></c></b></a> will close everything, otherwise.
    var t = parser.tags.length
    var tagName = parser.tagName
    if (!parser.strict) {
      tagName = tagName[parser.looseCase]()
    }
    var closeTo = tagName
    while (t--) {
      var close = parser.tags[t]
      if (close.name !== closeTo) {
        // fail the first time in strict mode
        strictFail(parser, 'Unexpected close tag')
      } else {
        break
      }
    }

    // didn't find it.  we already failed for strict, so just abort.
    if (t < 0) {
      strictFail(parser, 'Unmatched closing tag: ' + parser.tagName)
      parser.textNode += '</' + parser.tagName + '>'
      parser.state = S.TEXT
      return
    }
    parser.tagName = tagName
    var s = parser.tags.length
    while (s-- > t) {
      var tag = parser.tag = parser.tags.pop()
      parser.tagName = parser.tag.name
      emitNode(parser, 'onclosetag', parser.tagName)

      var x = {}
      for (var i in tag.ns) {
        x[i] = tag.ns[i]
      }

      var parent = parser.tags[parser.tags.length - 1] || parser
      if (parser.opt.xmlns && tag.ns !== parent.ns) {
        // remove namespace bindings introduced by tag
        Object.keys(tag.ns).forEach(function (p) {
          var n = tag.ns[p]
          emitNode(parser, 'onclosenamespace', { prefix: p, uri: n })
        })
      }
    }
    if (t === 0) parser.closedRoot = true
    parser.tagName = parser.attribValue = parser.attribName = ''
    parser.attribList.length = 0
    parser.state = S.TEXT
  }

  function parseEntity (parser) {
    var entity = parser.entity
    var entityLC = entity.toLowerCase()
    var num
    var numStr = ''

    if (parser.ENTITIES[entity]) {
      return parser.ENTITIES[entity]
    }
    if (parser.ENTITIES[entityLC]) {
      return parser.ENTITIES[entityLC]
    }
    entity = entityLC
    if (entity.charAt(0) === '#') {
      if (entity.charAt(1) === 'x') {
        entity = entity.slice(2)
        num = parseInt(entity, 16)
        numStr = num.toString(16)
      } else {
        entity = entity.slice(1)
        num = parseInt(entity, 10)
        numStr = num.toString(10)
      }
    }
    entity = entity.replace(/^0+/, '')
    if (isNaN(num) || numStr.toLowerCase() !== entity) {
      strictFail(parser, 'Invalid character entity')
      return '&' + parser.entity + ';'
    }

    return String.fromCodePoint(num)
  }

  function beginWhiteSpace (parser, c) {
    if (c === '<') {
      parser.state = S.OPEN_WAKA
      parser.startTagPosition = parser.position
    } else if (!isWhitespace(c)) {
      // have to process this as a text node.
      // weird, but happens.
      strictFail(parser, 'Non-whitespace before first tag.')
      parser.textNode = c
      parser.state = S.TEXT
    }
  }

  function charAt (chunk, i) {
    var result = ''
    if (i < chunk.length) {
      result = chunk.charAt(i)
    }
    return result
  }

  function write (chunk) {
    var parser = this
    if (this.error) {
      throw this.error
    }
    if (parser.closed) {
      return error(parser,
        'Cannot write after close. Assign an onready handler.')
    }
    if (chunk === null) {
      return end(parser)
    }
    if (typeof chunk === 'object') {
      chunk = chunk.toString()
    }
    var i = 0
    var c = ''
    while (true) {
      c = charAt(chunk, i++)
      parser.c = c

      if (!c) {
        break
      }

      if (parser.trackPosition) {
        parser.position++
        if (c === '\n') {
          parser.line++
          parser.column = 0
        } else {
          parser.column++
        }
      }

      switch (parser.state) {
        case S.BEGIN:
          parser.state = S.BEGIN_WHITESPACE
          if (c === '\uFEFF') {
            continue
          }
          beginWhiteSpace(parser, c)
          continue

        case S.BEGIN_WHITESPACE:
          beginWhiteSpace(parser, c)
          continue

        case S.TEXT:
          if (parser.sawRoot && !parser.closedRoot) {
            var starti = i - 1
            while (c && c !== '<' && c !== '&') {
              c = charAt(chunk, i++)
              if (c && parser.trackPosition) {
                parser.position++
                if (c === '\n') {
                  parser.line++
                  parser.column = 0
                } else {
                  parser.column++
                }
              }
            }
            parser.textNode += chunk.substring(starti, i - 1)
          }
          if (c === '<' && !(parser.sawRoot && parser.closedRoot && !parser.strict)) {
            parser.state = S.OPEN_WAKA
            parser.startTagPosition = parser.position
          } else {
            if (!isWhitespace(c) && (!parser.sawRoot || parser.closedRoot)) {
              strictFail(parser, 'Text data outside of root node.')
            }
            if (c === '&') {
              parser.state = S.TEXT_ENTITY
            } else {
              parser.textNode += c
            }
          }
          continue

        case S.SCRIPT:
          // only non-strict
          if (c === '<') {
            parser.state = S.SCRIPT_ENDING
          } else {
            parser.script += c
          }
          continue

        case S.SCRIPT_ENDING:
          if (c === '/') {
            parser.state = S.CLOSE_TAG
          } else {
            parser.script += '<' + c
            parser.state = S.SCRIPT
          }
          continue

        case S.OPEN_WAKA:
          // either a /, ?, !, or text is coming next.
          if (c === '!') {
            parser.state = S.SGML_DECL
            parser.sgmlDecl = ''
          } else if (isWhitespace(c)) {
            // wait for it...
          } else if (isMatch(nameStart, c)) {
            parser.state = S.OPEN_TAG
            parser.tagName = c
          } else if (c === '/') {
            parser.state = S.CLOSE_TAG
            parser.tagName = ''
          } else if (c === '?') {
            parser.state = S.PROC_INST
            parser.procInstName = parser.procInstBody = ''
          } else {
            strictFail(parser, 'Unencoded <')
            // if there was some whitespace, then add that in.
            if (parser.startTagPosition + 1 < parser.position) {
              var pad = parser.position - parser.startTagPosition
              c = new Array(pad).join(' ') + c
            }
            parser.textNode += '<' + c
            parser.state = S.TEXT
          }
          continue

        case S.SGML_DECL:
          if ((parser.sgmlDecl + c).toUpperCase() === CDATA) {
            emitNode(parser, 'onopencdata')
            parser.state = S.CDATA
            parser.sgmlDecl = ''
            parser.cdata = ''
          } else if (parser.sgmlDecl + c === '--') {
            parser.state = S.COMMENT
            parser.comment = ''
            parser.sgmlDecl = ''
          } else if ((parser.sgmlDecl + c).toUpperCase() === DOCTYPE) {
            parser.state = S.DOCTYPE
            if (parser.doctype || parser.sawRoot) {
              strictFail(parser,
                'Inappropriately located doctype declaration')
            }
            parser.doctype = ''
            parser.sgmlDecl = ''
          } else if (c === '>') {
            emitNode(parser, 'onsgmldeclaration', parser.sgmlDecl)
            parser.sgmlDecl = ''
            parser.state = S.TEXT
          } else if (isQuote(c)) {
            parser.state = S.SGML_DECL_QUOTED
            parser.sgmlDecl += c
          } else {
            parser.sgmlDecl += c
          }
          continue

        case S.SGML_DECL_QUOTED:
          if (c === parser.q) {
            parser.state = S.SGML_DECL
            parser.q = ''
          }
          parser.sgmlDecl += c
          continue

        case S.DOCTYPE:
          if (c === '>') {
            parser.state = S.TEXT
            emitNode(parser, 'ondoctype', parser.doctype)
            parser.doctype = true // just remember that we saw it.
          } else {
            parser.doctype += c
            if (c === '[') {
              parser.state = S.DOCTYPE_DTD
            } else if (isQuote(c)) {
              parser.state = S.DOCTYPE_QUOTED
              parser.q = c
            }
          }
          continue

        case S.DOCTYPE_QUOTED:
          parser.doctype += c
          if (c === parser.q) {
            parser.q = ''
            parser.state = S.DOCTYPE
          }
          continue

        case S.DOCTYPE_DTD:
          parser.doctype += c
          if (c === ']') {
            parser.state = S.DOCTYPE
          } else if (isQuote(c)) {
            parser.state = S.DOCTYPE_DTD_QUOTED
            parser.q = c
          }
          continue

        case S.DOCTYPE_DTD_QUOTED:
          parser.doctype += c
          if (c === parser.q) {
            parser.state = S.DOCTYPE_DTD
            parser.q = ''
          }
          continue

        case S.COMMENT:
          if (c === '-') {
            parser.state = S.COMMENT_ENDING
          } else {
            parser.comment += c
          }
          continue

        case S.COMMENT_ENDING:
          if (c === '-') {
            parser.state = S.COMMENT_ENDED
            parser.comment = textopts(parser.opt, parser.comment)
            if (parser.comment) {
              emitNode(parser, 'oncomment', parser.comment)
            }
            parser.comment = ''
          } else {
            parser.comment += '-' + c
            parser.state = S.COMMENT
          }
          continue

        case S.COMMENT_ENDED:
          if (c !== '>') {
            strictFail(parser, 'Malformed comment')
            // allow <!-- blah -- bloo --> in non-strict mode,
            // which is a comment of " blah -- bloo "
            parser.comment += '--' + c
            parser.state = S.COMMENT
          } else {
            parser.state = S.TEXT
          }
          continue

        case S.CDATA:
          if (c === ']') {
            parser.state = S.CDATA_ENDING
          } else {
            parser.cdata += c
          }
          continue

        case S.CDATA_ENDING:
          if (c === ']') {
            parser.state = S.CDATA_ENDING_2
          } else {
            parser.cdata += ']' + c
            parser.state = S.CDATA
          }
          continue

        case S.CDATA_ENDING_2:
          if (c === '>') {
            if (parser.cdata) {
              emitNode(parser, 'oncdata', parser.cdata)
            }
            emitNode(parser, 'onclosecdata')
            parser.cdata = ''
            parser.state = S.TEXT
          } else if (c === ']') {
            parser.cdata += ']'
          } else {
            parser.cdata += ']]' + c
            parser.state = S.CDATA
          }
          continue

        case S.PROC_INST:
          if (c === '?') {
            parser.state = S.PROC_INST_ENDING
          } else if (isWhitespace(c)) {
            parser.state = S.PROC_INST_BODY
          } else {
            parser.procInstName += c
          }
          continue

        case S.PROC_INST_BODY:
          if (!parser.procInstBody && isWhitespace(c)) {
            continue
          } else if (c === '?') {
            parser.state = S.PROC_INST_ENDING
          } else {
            parser.procInstBody += c
          }
          continue

        case S.PROC_INST_ENDING:
          if (c === '>') {
            emitNode(parser, 'onprocessinginstruction', {
              name: parser.procInstName,
              body: parser.procInstBody
            })
            parser.procInstName = parser.procInstBody = ''
            parser.state = S.TEXT
          } else {
            parser.procInstBody += '?' + c
            parser.state = S.PROC_INST_BODY
          }
          continue

        case S.OPEN_TAG:
          if (isMatch(nameBody, c)) {
            parser.tagName += c
          } else {
            newTag(parser)
            if (c === '>') {
              openTag(parser)
            } else if (c === '/') {
              parser.state = S.OPEN_TAG_SLASH
            } else {
              if (!isWhitespace(c)) {
                strictFail(parser, 'Invalid character in tag name')
              }
              parser.state = S.ATTRIB
            }
          }
          continue

        case S.OPEN_TAG_SLASH:
          if (c === '>') {
            openTag(parser, true)
            closeTag(parser)
          } else {
            strictFail(parser, 'Forward-slash in opening tag not followed by >')
            parser.state = S.ATTRIB
          }
          continue

        case S.ATTRIB:
          // haven't read the attribute name yet.
          if (isWhitespace(c)) {
            continue
          } else if (c === '>') {
            openTag(parser)
          } else if (c === '/') {
            parser.state = S.OPEN_TAG_SLASH
          } else if (isMatch(nameStart, c)) {
            parser.attribName = c
            parser.attribValue = ''
            parser.state = S.ATTRIB_NAME
          } else {
            strictFail(parser, 'Invalid attribute name')
          }
          continue

        case S.ATTRIB_NAME:
          if (c === '=') {
            parser.state = S.ATTRIB_VALUE
          } else if (c === '>') {
            strictFail(parser, 'Attribute without value')
            parser.attribValue = parser.attribName
            attrib(parser)
            openTag(parser)
          } else if (isWhitespace(c)) {
            parser.state = S.ATTRIB_NAME_SAW_WHITE
          } else if (isMatch(nameBody, c)) {
            parser.attribName += c
          } else {
            strictFail(parser, 'Invalid attribute name')
          }
          continue

        case S.ATTRIB_NAME_SAW_WHITE:
          if (c === '=') {
            parser.state = S.ATTRIB_VALUE
          } else if (isWhitespace(c)) {
            continue
          } else {
            strictFail(parser, 'Attribute without value')
            parser.tag.attributes[parser.attribName] = ''
            parser.attribValue = ''
            emitNode(parser, 'onattribute', {
              name: parser.attribName,
              value: ''
            })
            parser.attribName = ''
            if (c === '>') {
              openTag(parser)
            } else if (isMatch(nameStart, c)) {
              parser.attribName = c
              parser.state = S.ATTRIB_NAME
            } else {
              strictFail(parser, 'Invalid attribute name')
              parser.state = S.ATTRIB
            }
          }
          continue

        case S.ATTRIB_VALUE:
          if (isWhitespace(c)) {
            continue
          } else if (isQuote(c)) {
            parser.q = c
            parser.state = S.ATTRIB_VALUE_QUOTED
          } else {
            strictFail(parser, 'Unquoted attribute value')
            parser.state = S.ATTRIB_VALUE_UNQUOTED
            parser.attribValue = c
          }
          continue

        case S.ATTRIB_VALUE_QUOTED:
          if (c !== parser.q) {
            if (c === '&') {
              parser.state = S.ATTRIB_VALUE_ENTITY_Q
            } else {
              parser.attribValue += c
            }
            continue
          }
          attrib(parser)
          parser.q = ''
          parser.state = S.ATTRIB_VALUE_CLOSED
          continue

        case S.ATTRIB_VALUE_CLOSED:
          if (isWhitespace(c)) {
            parser.state = S.ATTRIB
          } else if (c === '>') {
            openTag(parser)
          } else if (c === '/') {
            parser.state = S.OPEN_TAG_SLASH
          } else if (isMatch(nameStart, c)) {
            strictFail(parser, 'No whitespace between attributes')
            parser.attribName = c
            parser.attribValue = ''
            parser.state = S.ATTRIB_NAME
          } else {
            strictFail(parser, 'Invalid attribute name')
          }
          continue

        case S.ATTRIB_VALUE_UNQUOTED:
          if (!isAttribEnd(c)) {
            if (c === '&') {
              parser.state = S.ATTRIB_VALUE_ENTITY_U
            } else {
              parser.attribValue += c
            }
            continue
          }
          attrib(parser)
          if (c === '>') {
            openTag(parser)
          } else {
            parser.state = S.ATTRIB
          }
          continue

        case S.CLOSE_TAG:
          if (!parser.tagName) {
            if (isWhitespace(c)) {
              continue
            } else if (notMatch(nameStart, c)) {
              if (parser.script) {
                parser.script += '</' + c
                parser.state = S.SCRIPT
              } else {
                strictFail(parser, 'Invalid tagname in closing tag.')
              }
            } else {
              parser.tagName = c
            }
          } else if (c === '>') {
            closeTag(parser)
          } else if (isMatch(nameBody, c)) {
            parser.tagName += c
          } else if (parser.script) {
            parser.script += '</' + parser.tagName
            parser.tagName = ''
            parser.state = S.SCRIPT
          } else {
            if (!isWhitespace(c)) {
              strictFail(parser, 'Invalid tagname in closing tag')
            }
            parser.state = S.CLOSE_TAG_SAW_WHITE
          }
          continue

        case S.CLOSE_TAG_SAW_WHITE:
          if (isWhitespace(c)) {
            continue
          }
          if (c === '>') {
            closeTag(parser)
          } else {
            strictFail(parser, 'Invalid characters in closing tag')
          }
          continue

        case S.TEXT_ENTITY:
        case S.ATTRIB_VALUE_ENTITY_Q:
        case S.ATTRIB_VALUE_ENTITY_U:
          var returnState
          var buffer
          switch (parser.state) {
            case S.TEXT_ENTITY:
              returnState = S.TEXT
              buffer = 'textNode'
              break

            case S.ATTRIB_VALUE_ENTITY_Q:
              returnState = S.ATTRIB_VALUE_QUOTED
              buffer = 'attribValue'
              break

            case S.ATTRIB_VALUE_ENTITY_U:
              returnState = S.ATTRIB_VALUE_UNQUOTED
              buffer = 'attribValue'
              break
          }

          if (c === ';') {
            parser[buffer] += parseEntity(parser)
            parser.entity = ''
            parser.state = returnState
          } else if (isMatch(parser.entity.length ? entityBody : entityStart, c)) {
            parser.entity += c
          } else {
            strictFail(parser, 'Invalid character in entity name')
            parser[buffer] += '&' + parser.entity + c
            parser.entity = ''
            parser.state = returnState
          }

          continue

        default:
          throw new Error(parser, 'Unknown state: ' + parser.state)
      }
    } // while

    if (parser.position >= parser.bufferCheckPosition) {
      checkBufferLength(parser)
    }
    return parser
  }

  /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */
  /* istanbul ignore next */
  if (!String.fromCodePoint) {
    (function () {
      var stringFromCharCode = String.fromCharCode
      var floor = Math.floor
      var fromCodePoint = function () {
        var MAX_SIZE = 0x4000
        var codeUnits = []
        var highSurrogate
        var lowSurrogate
        var index = -1
        var length = arguments.length
        if (!length) {
          return ''
        }
        var result = ''
        while (++index < length) {
          var codePoint = Number(arguments[index])
          if (
            !isFinite(codePoint) || // `NaN`, `+Infinity`, or `-Infinity`
            codePoint < 0 || // not a valid Unicode code point
            codePoint > 0x10FFFF || // not a valid Unicode code point
            floor(codePoint) !== codePoint // not an integer
          ) {
            throw RangeError('Invalid code point: ' + codePoint)
          }
          if (codePoint <= 0xFFFF) { // BMP code point
            codeUnits.push(codePoint)
          } else { // Astral code point; split in surrogate halves
            // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
            codePoint -= 0x10000
            highSurrogate = (codePoint >> 10) + 0xD800
            lowSurrogate = (codePoint % 0x400) + 0xDC00
            codeUnits.push(highSurrogate, lowSurrogate)
          }
          if (index + 1 === length || codeUnits.length > MAX_SIZE) {
            result += stringFromCharCode.apply(null, codeUnits)
            codeUnits.length = 0
          }
        }
        return result
      }
      /* istanbul ignore next */
      if (Object.defineProperty) {
        Object.defineProperty(String, 'fromCodePoint', {
          value: fromCodePoint,
          configurable: true,
          writable: true
        })
      } else {
        String.fromCodePoint = fromCodePoint
      }
    }())
  }
})( false ? 0 : exports)


/***/ }),

/***/ 58229:
/***/ (function(module) {

// Generated by CoffeeScript 1.12.7
(function() {
  var assign, isArray, isEmpty, isFunction, isObject, isPlainObject,
    slice = [].slice,
    hasProp = {}.hasOwnProperty;

  assign = function() {
    var i, key, len, source, sources, target;
    target = arguments[0], sources = 2 <= arguments.length ? slice.call(arguments, 1) : [];
    if (isFunction(Object.assign)) {
      Object.assign.apply(null, arguments);
    } else {
      for (i = 0, len = sources.length; i < len; i++) {
        source = sources[i];
        if (source != null) {
          for (key in source) {
            if (!hasProp.call(source, key)) continue;
            target[key] = source[key];
          }
        }
      }
    }
    return target;
  };

  isFunction = function(val) {
    return !!val && Object.prototype.toString.call(val) === '[object Function]';
  };

  isObject = function(val) {
    var ref;
    return !!val && ((ref = typeof val) === 'function' || ref === 'object');
  };

  isArray = function(val) {
    if (isFunction(Array.isArray)) {
      return Array.isArray(val);
    } else {
      return Object.prototype.toString.call(val) === '[object Array]';
    }
  };

  isEmpty = function(val) {
    var key;
    if (isArray(val)) {
      return !val.length;
    } else {
      for (key in val) {
        if (!hasProp.call(val, key)) continue;
        return false;
      }
      return true;
    }
  };

  isPlainObject = function(val) {
    var ctor, proto;
    return isObject(val) && (proto = Object.getPrototypeOf(val)) && (ctor = proto.constructor) && (typeof ctor === 'function') && (ctor instanceof ctor) && (Function.prototype.toString.call(ctor) === Function.prototype.toString.call(Object));
  };

  module.exports.assign = assign;

  module.exports.isFunction = isFunction;

  module.exports.isObject = isObject;

  module.exports.isArray = isArray;

  module.exports.isEmpty = isEmpty;

  module.exports.isPlainObject = isPlainObject;

}).call(this);


/***/ }),

/***/ 58376:
/***/ (function(module) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLAttribute;

  module.exports = XMLAttribute = (function() {
    function XMLAttribute(parent, name, value) {
      this.options = parent.options;
      this.stringify = parent.stringify;
      if (name == null) {
        throw new Error("Missing attribute name of element " + parent.name);
      }
      if (value == null) {
        throw new Error("Missing attribute value for attribute " + name + " of element " + parent.name);
      }
      this.name = this.stringify.attName(name);
      this.value = this.stringify.attValue(value);
    }

    XMLAttribute.prototype.clone = function() {
      return Object.create(this);
    };

    XMLAttribute.prototype.toString = function(options) {
      return this.options.writer.set(options).attribute(this);
    };

    return XMLAttribute;

  })();

}).call(this);


/***/ }),

/***/ 90333:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLCData, XMLNode,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLCData = (function(superClass) {
    extend(XMLCData, superClass);

    function XMLCData(parent, text) {
      XMLCData.__super__.constructor.call(this, parent);
      if (text == null) {
        throw new Error("Missing CDATA text");
      }
      this.text = this.stringify.cdata(text);
    }

    XMLCData.prototype.clone = function() {
      return Object.create(this);
    };

    XMLCData.prototype.toString = function(options) {
      return this.options.writer.set(options).cdata(this);
    };

    return XMLCData;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 74407:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLComment, XMLNode,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLComment = (function(superClass) {
    extend(XMLComment, superClass);

    function XMLComment(parent, text) {
      XMLComment.__super__.constructor.call(this, parent);
      if (text == null) {
        throw new Error("Missing comment text");
      }
      this.text = this.stringify.comment(text);
    }

    XMLComment.prototype.clone = function() {
      return Object.create(this);
    };

    XMLComment.prototype.toString = function(options) {
      return this.options.writer.set(options).comment(this);
    };

    return XMLComment;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 81015:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDTDAttList, XMLNode,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLDTDAttList = (function(superClass) {
    extend(XMLDTDAttList, superClass);

    function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {
      XMLDTDAttList.__super__.constructor.call(this, parent);
      if (elementName == null) {
        throw new Error("Missing DTD element name");
      }
      if (attributeName == null) {
        throw new Error("Missing DTD attribute name");
      }
      if (!attributeType) {
        throw new Error("Missing DTD attribute type");
      }
      if (!defaultValueType) {
        throw new Error("Missing DTD attribute default");
      }
      if (defaultValueType.indexOf('#') !== 0) {
        defaultValueType = '#' + defaultValueType;
      }
      if (!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)) {
        throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT");
      }
      if (defaultValue && !defaultValueType.match(/^(#FIXED|#DEFAULT)$/)) {
        throw new Error("Default value only applies to #FIXED or #DEFAULT");
      }
      this.elementName = this.stringify.eleName(elementName);
      this.attributeName = this.stringify.attName(attributeName);
      this.attributeType = this.stringify.dtdAttType(attributeType);
      this.defaultValue = this.stringify.dtdAttDefault(defaultValue);
      this.defaultValueType = defaultValueType;
    }

    XMLDTDAttList.prototype.toString = function(options) {
      return this.options.writer.set(options).dtdAttList(this);
    };

    return XMLDTDAttList;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 52421:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDTDElement, XMLNode,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLDTDElement = (function(superClass) {
    extend(XMLDTDElement, superClass);

    function XMLDTDElement(parent, name, value) {
      XMLDTDElement.__super__.constructor.call(this, parent);
      if (name == null) {
        throw new Error("Missing DTD element name");
      }
      if (!value) {
        value = '(#PCDATA)';
      }
      if (Array.isArray(value)) {
        value = '(' + value.join(',') + ')';
      }
      this.name = this.stringify.eleName(name);
      this.value = this.stringify.dtdElementValue(value);
    }

    XMLDTDElement.prototype.toString = function(options) {
      return this.options.writer.set(options).dtdElement(this);
    };

    return XMLDTDElement;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 40053:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDTDEntity, XMLNode, isObject,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  isObject = __webpack_require__(58229).isObject;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLDTDEntity = (function(superClass) {
    extend(XMLDTDEntity, superClass);

    function XMLDTDEntity(parent, pe, name, value) {
      XMLDTDEntity.__super__.constructor.call(this, parent);
      if (name == null) {
        throw new Error("Missing entity name");
      }
      if (value == null) {
        throw new Error("Missing entity value");
      }
      this.pe = !!pe;
      this.name = this.stringify.eleName(name);
      if (!isObject(value)) {
        this.value = this.stringify.dtdEntityValue(value);
      } else {
        if (!value.pubID && !value.sysID) {
          throw new Error("Public and/or system identifiers are required for an external entity");
        }
        if (value.pubID && !value.sysID) {
          throw new Error("System identifier is required for a public external entity");
        }
        if (value.pubID != null) {
          this.pubID = this.stringify.dtdPubID(value.pubID);
        }
        if (value.sysID != null) {
          this.sysID = this.stringify.dtdSysID(value.sysID);
        }
        if (value.nData != null) {
          this.nData = this.stringify.dtdNData(value.nData);
        }
        if (this.pe && this.nData) {
          throw new Error("Notation declaration is not allowed in a parameter entity");
        }
      }
    }

    XMLDTDEntity.prototype.toString = function(options) {
      return this.options.writer.set(options).dtdEntity(this);
    };

    return XMLDTDEntity;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 82837:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDTDNotation, XMLNode,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLDTDNotation = (function(superClass) {
    extend(XMLDTDNotation, superClass);

    function XMLDTDNotation(parent, name, value) {
      XMLDTDNotation.__super__.constructor.call(this, parent);
      if (name == null) {
        throw new Error("Missing notation name");
      }
      if (!value.pubID && !value.sysID) {
        throw new Error("Public or system identifiers are required for an external entity");
      }
      this.name = this.stringify.eleName(name);
      if (value.pubID != null) {
        this.pubID = this.stringify.dtdPubID(value.pubID);
      }
      if (value.sysID != null) {
        this.sysID = this.stringify.dtdSysID(value.sysID);
      }
    }

    XMLDTDNotation.prototype.toString = function(options) {
      return this.options.writer.set(options).dtdNotation(this);
    };

    return XMLDTDNotation;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 46364:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDeclaration, XMLNode, isObject,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  isObject = __webpack_require__(58229).isObject;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLDeclaration = (function(superClass) {
    extend(XMLDeclaration, superClass);

    function XMLDeclaration(parent, version, encoding, standalone) {
      var ref;
      XMLDeclaration.__super__.constructor.call(this, parent);
      if (isObject(version)) {
        ref = version, version = ref.version, encoding = ref.encoding, standalone = ref.standalone;
      }
      if (!version) {
        version = '1.0';
      }
      this.version = this.stringify.xmlVersion(version);
      if (encoding != null) {
        this.encoding = this.stringify.xmlEncoding(encoding);
      }
      if (standalone != null) {
        this.standalone = this.stringify.xmlStandalone(standalone);
      }
    }

    XMLDeclaration.prototype.toString = function(options) {
      return this.options.writer.set(options).declaration(this);
    };

    return XMLDeclaration;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 81801:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLNode, isObject,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  isObject = __webpack_require__(58229).isObject;

  XMLNode = __webpack_require__(67608);

  XMLDTDAttList = __webpack_require__(81015);

  XMLDTDEntity = __webpack_require__(40053);

  XMLDTDElement = __webpack_require__(52421);

  XMLDTDNotation = __webpack_require__(82837);

  module.exports = XMLDocType = (function(superClass) {
    extend(XMLDocType, superClass);

    function XMLDocType(parent, pubID, sysID) {
      var ref, ref1;
      XMLDocType.__super__.constructor.call(this, parent);
      this.documentObject = parent;
      if (isObject(pubID)) {
        ref = pubID, pubID = ref.pubID, sysID = ref.sysID;
      }
      if (sysID == null) {
        ref1 = [pubID, sysID], sysID = ref1[0], pubID = ref1[1];
      }
      if (pubID != null) {
        this.pubID = this.stringify.dtdPubID(pubID);
      }
      if (sysID != null) {
        this.sysID = this.stringify.dtdSysID(sysID);
      }
    }

    XMLDocType.prototype.element = function(name, value) {
      var child;
      child = new XMLDTDElement(this, name, value);
      this.children.push(child);
      return this;
    };

    XMLDocType.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {
      var child;
      child = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);
      this.children.push(child);
      return this;
    };

    XMLDocType.prototype.entity = function(name, value) {
      var child;
      child = new XMLDTDEntity(this, false, name, value);
      this.children.push(child);
      return this;
    };

    XMLDocType.prototype.pEntity = function(name, value) {
      var child;
      child = new XMLDTDEntity(this, true, name, value);
      this.children.push(child);
      return this;
    };

    XMLDocType.prototype.notation = function(name, value) {
      var child;
      child = new XMLDTDNotation(this, name, value);
      this.children.push(child);
      return this;
    };

    XMLDocType.prototype.toString = function(options) {
      return this.options.writer.set(options).docType(this);
    };

    XMLDocType.prototype.ele = function(name, value) {
      return this.element(name, value);
    };

    XMLDocType.prototype.att = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {
      return this.attList(elementName, attributeName, attributeType, defaultValueType, defaultValue);
    };

    XMLDocType.prototype.ent = function(name, value) {
      return this.entity(name, value);
    };

    XMLDocType.prototype.pent = function(name, value) {
      return this.pEntity(name, value);
    };

    XMLDocType.prototype.not = function(name, value) {
      return this.notation(name, value);
    };

    XMLDocType.prototype.up = function() {
      return this.root() || this.documentObject;
    };

    return XMLDocType;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 53730:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDocument, XMLNode, XMLStringWriter, XMLStringifier, isPlainObject,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  isPlainObject = __webpack_require__(58229).isPlainObject;

  XMLNode = __webpack_require__(67608);

  XMLStringifier = __webpack_require__(8594);

  XMLStringWriter = __webpack_require__(85913);

  module.exports = XMLDocument = (function(superClass) {
    extend(XMLDocument, superClass);

    function XMLDocument(options) {
      XMLDocument.__super__.constructor.call(this, null);
      options || (options = {});
      if (!options.writer) {
        options.writer = new XMLStringWriter();
      }
      this.options = options;
      this.stringify = new XMLStringifier(options);
      this.isDocument = true;
    }

    XMLDocument.prototype.end = function(writer) {
      var writerOptions;
      if (!writer) {
        writer = this.options.writer;
      } else if (isPlainObject(writer)) {
        writerOptions = writer;
        writer = this.options.writer.set(writerOptions);
      }
      return writer.document(this);
    };

    XMLDocument.prototype.toString = function(options) {
      return this.options.writer.set(options).document(this);
    };

    return XMLDocument;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 77356:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLAttribute, XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLDocumentCB, XMLElement, XMLProcessingInstruction, XMLRaw, XMLStringWriter, XMLStringifier, XMLText, isFunction, isObject, isPlainObject, ref,
    hasProp = {}.hasOwnProperty;

  ref = __webpack_require__(58229), isObject = ref.isObject, isFunction = ref.isFunction, isPlainObject = ref.isPlainObject;

  XMLElement = __webpack_require__(9437);

  XMLCData = __webpack_require__(90333);

  XMLComment = __webpack_require__(74407);

  XMLRaw = __webpack_require__(16329);

  XMLText = __webpack_require__(21318);

  XMLProcessingInstruction = __webpack_require__(56939);

  XMLDeclaration = __webpack_require__(46364);

  XMLDocType = __webpack_require__(81801);

  XMLDTDAttList = __webpack_require__(81015);

  XMLDTDEntity = __webpack_require__(40053);

  XMLDTDElement = __webpack_require__(52421);

  XMLDTDNotation = __webpack_require__(82837);

  XMLAttribute = __webpack_require__(58376);

  XMLStringifier = __webpack_require__(8594);

  XMLStringWriter = __webpack_require__(85913);

  module.exports = XMLDocumentCB = (function() {
    function XMLDocumentCB(options, onData, onEnd) {
      var writerOptions;
      options || (options = {});
      if (!options.writer) {
        options.writer = new XMLStringWriter(options);
      } else if (isPlainObject(options.writer)) {
        writerOptions = options.writer;
        options.writer = new XMLStringWriter(writerOptions);
      }
      this.options = options;
      this.writer = options.writer;
      this.stringify = new XMLStringifier(options);
      this.onDataCallback = onData || function() {};
      this.onEndCallback = onEnd || function() {};
      this.currentNode = null;
      this.currentLevel = -1;
      this.openTags = {};
      this.documentStarted = false;
      this.documentCompleted = false;
      this.root = null;
    }

    XMLDocumentCB.prototype.node = function(name, attributes, text) {
      var ref1;
      if (name == null) {
        throw new Error("Missing node name");
      }
      if (this.root && this.currentLevel === -1) {
        throw new Error("Document can only have one root node");
      }
      this.openCurrent();
      name = name.valueOf();
      if (attributes == null) {
        attributes = {};
      }
      attributes = attributes.valueOf();
      if (!isObject(attributes)) {
        ref1 = [attributes, text], text = ref1[0], attributes = ref1[1];
      }
      this.currentNode = new XMLElement(this, name, attributes);
      this.currentNode.children = false;
      this.currentLevel++;
      this.openTags[this.currentLevel] = this.currentNode;
      if (text != null) {
        this.text(text);
      }
      return this;
    };

    XMLDocumentCB.prototype.element = function(name, attributes, text) {
      if (this.currentNode && this.currentNode instanceof XMLDocType) {
        return this.dtdElement.apply(this, arguments);
      } else {
        return this.node(name, attributes, text);
      }
    };

    XMLDocumentCB.prototype.attribute = function(name, value) {
      var attName, attValue;
      if (!this.currentNode || this.currentNode.children) {
        throw new Error("att() can only be used immediately after an ele() call in callback mode");
      }
      if (name != null) {
        name = name.valueOf();
      }
      if (isObject(name)) {
        for (attName in name) {
          if (!hasProp.call(name, attName)) continue;
          attValue = name[attName];
          this.attribute(attName, attValue);
        }
      } else {
        if (isFunction(value)) {
          value = value.apply();
        }
        if (!this.options.skipNullAttributes || (value != null)) {
          this.currentNode.attributes[name] = new XMLAttribute(this, name, value);
        }
      }
      return this;
    };

    XMLDocumentCB.prototype.text = function(value) {
      var node;
      this.openCurrent();
      node = new XMLText(this, value);
      this.onData(this.writer.text(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.cdata = function(value) {
      var node;
      this.openCurrent();
      node = new XMLCData(this, value);
      this.onData(this.writer.cdata(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.comment = function(value) {
      var node;
      this.openCurrent();
      node = new XMLComment(this, value);
      this.onData(this.writer.comment(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.raw = function(value) {
      var node;
      this.openCurrent();
      node = new XMLRaw(this, value);
      this.onData(this.writer.raw(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.instruction = function(target, value) {
      var i, insTarget, insValue, len, node;
      this.openCurrent();
      if (target != null) {
        target = target.valueOf();
      }
      if (value != null) {
        value = value.valueOf();
      }
      if (Array.isArray(target)) {
        for (i = 0, len = target.length; i < len; i++) {
          insTarget = target[i];
          this.instruction(insTarget);
        }
      } else if (isObject(target)) {
        for (insTarget in target) {
          if (!hasProp.call(target, insTarget)) continue;
          insValue = target[insTarget];
          this.instruction(insTarget, insValue);
        }
      } else {
        if (isFunction(value)) {
          value = value.apply();
        }
        node = new XMLProcessingInstruction(this, target, value);
        this.onData(this.writer.processingInstruction(node, this.currentLevel + 1));
      }
      return this;
    };

    XMLDocumentCB.prototype.declaration = function(version, encoding, standalone) {
      var node;
      this.openCurrent();
      if (this.documentStarted) {
        throw new Error("declaration() must be the first node");
      }
      node = new XMLDeclaration(this, version, encoding, standalone);
      this.onData(this.writer.declaration(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.doctype = function(root, pubID, sysID) {
      this.openCurrent();
      if (root == null) {
        throw new Error("Missing root node name");
      }
      if (this.root) {
        throw new Error("dtd() must come before the root node");
      }
      this.currentNode = new XMLDocType(this, pubID, sysID);
      this.currentNode.rootNodeName = root;
      this.currentNode.children = false;
      this.currentLevel++;
      this.openTags[this.currentLevel] = this.currentNode;
      return this;
    };

    XMLDocumentCB.prototype.dtdElement = function(name, value) {
      var node;
      this.openCurrent();
      node = new XMLDTDElement(this, name, value);
      this.onData(this.writer.dtdElement(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {
      var node;
      this.openCurrent();
      node = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);
      this.onData(this.writer.dtdAttList(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.entity = function(name, value) {
      var node;
      this.openCurrent();
      node = new XMLDTDEntity(this, false, name, value);
      this.onData(this.writer.dtdEntity(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.pEntity = function(name, value) {
      var node;
      this.openCurrent();
      node = new XMLDTDEntity(this, true, name, value);
      this.onData(this.writer.dtdEntity(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.notation = function(name, value) {
      var node;
      this.openCurrent();
      node = new XMLDTDNotation(this, name, value);
      this.onData(this.writer.dtdNotation(node, this.currentLevel + 1));
      return this;
    };

    XMLDocumentCB.prototype.up = function() {
      if (this.currentLevel < 0) {
        throw new Error("The document node has no parent");
      }
      if (this.currentNode) {
        if (this.currentNode.children) {
          this.closeNode(this.currentNode);
        } else {
          this.openNode(this.currentNode);
        }
        this.currentNode = null;
      } else {
        this.closeNode(this.openTags[this.currentLevel]);
      }
      delete this.openTags[this.currentLevel];
      this.currentLevel--;
      return this;
    };

    XMLDocumentCB.prototype.end = function() {
      while (this.currentLevel >= 0) {
        this.up();
      }
      return this.onEnd();
    };

    XMLDocumentCB.prototype.openCurrent = function() {
      if (this.currentNode) {
        this.currentNode.children = true;
        return this.openNode(this.currentNode);
      }
    };

    XMLDocumentCB.prototype.openNode = function(node) {
      if (!node.isOpen) {
        if (!this.root && this.currentLevel === 0 && node instanceof XMLElement) {
          this.root = node;
        }
        this.onData(this.writer.openNode(node, this.currentLevel));
        return node.isOpen = true;
      }
    };

    XMLDocumentCB.prototype.closeNode = function(node) {
      if (!node.isClosed) {
        this.onData(this.writer.closeNode(node, this.currentLevel));
        return node.isClosed = true;
      }
    };

    XMLDocumentCB.prototype.onData = function(chunk) {
      this.documentStarted = true;
      return this.onDataCallback(chunk);
    };

    XMLDocumentCB.prototype.onEnd = function() {
      this.documentCompleted = true;
      return this.onEndCallback();
    };

    XMLDocumentCB.prototype.ele = function() {
      return this.element.apply(this, arguments);
    };

    XMLDocumentCB.prototype.nod = function(name, attributes, text) {
      return this.node(name, attributes, text);
    };

    XMLDocumentCB.prototype.txt = function(value) {
      return this.text(value);
    };

    XMLDocumentCB.prototype.dat = function(value) {
      return this.cdata(value);
    };

    XMLDocumentCB.prototype.com = function(value) {
      return this.comment(value);
    };

    XMLDocumentCB.prototype.ins = function(target, value) {
      return this.instruction(target, value);
    };

    XMLDocumentCB.prototype.dec = function(version, encoding, standalone) {
      return this.declaration(version, encoding, standalone);
    };

    XMLDocumentCB.prototype.dtd = function(root, pubID, sysID) {
      return this.doctype(root, pubID, sysID);
    };

    XMLDocumentCB.prototype.e = function(name, attributes, text) {
      return this.element(name, attributes, text);
    };

    XMLDocumentCB.prototype.n = function(name, attributes, text) {
      return this.node(name, attributes, text);
    };

    XMLDocumentCB.prototype.t = function(value) {
      return this.text(value);
    };

    XMLDocumentCB.prototype.d = function(value) {
      return this.cdata(value);
    };

    XMLDocumentCB.prototype.c = function(value) {
      return this.comment(value);
    };

    XMLDocumentCB.prototype.r = function(value) {
      return this.raw(value);
    };

    XMLDocumentCB.prototype.i = function(target, value) {
      return this.instruction(target, value);
    };

    XMLDocumentCB.prototype.att = function() {
      if (this.currentNode && this.currentNode instanceof XMLDocType) {
        return this.attList.apply(this, arguments);
      } else {
        return this.attribute.apply(this, arguments);
      }
    };

    XMLDocumentCB.prototype.a = function() {
      if (this.currentNode && this.currentNode instanceof XMLDocType) {
        return this.attList.apply(this, arguments);
      } else {
        return this.attribute.apply(this, arguments);
      }
    };

    XMLDocumentCB.prototype.ent = function(name, value) {
      return this.entity(name, value);
    };

    XMLDocumentCB.prototype.pent = function(name, value) {
      return this.pEntity(name, value);
    };

    XMLDocumentCB.prototype.not = function(name, value) {
      return this.notation(name, value);
    };

    return XMLDocumentCB;

  })();

}).call(this);


/***/ }),

/***/ 9437:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLAttribute, XMLElement, XMLNode, isFunction, isObject, ref,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  ref = __webpack_require__(58229), isObject = ref.isObject, isFunction = ref.isFunction;

  XMLNode = __webpack_require__(67608);

  XMLAttribute = __webpack_require__(58376);

  module.exports = XMLElement = (function(superClass) {
    extend(XMLElement, superClass);

    function XMLElement(parent, name, attributes) {
      XMLElement.__super__.constructor.call(this, parent);
      if (name == null) {
        throw new Error("Missing element name");
      }
      this.name = this.stringify.eleName(name);
      this.attributes = {};
      if (attributes != null) {
        this.attribute(attributes);
      }
      if (parent.isDocument) {
        this.isRoot = true;
        this.documentObject = parent;
        parent.rootObject = this;
      }
    }

    XMLElement.prototype.clone = function() {
      var att, attName, clonedSelf, ref1;
      clonedSelf = Object.create(this);
      if (clonedSelf.isRoot) {
        clonedSelf.documentObject = null;
      }
      clonedSelf.attributes = {};
      ref1 = this.attributes;
      for (attName in ref1) {
        if (!hasProp.call(ref1, attName)) continue;
        att = ref1[attName];
        clonedSelf.attributes[attName] = att.clone();
      }
      clonedSelf.children = [];
      this.children.forEach(function(child) {
        var clonedChild;
        clonedChild = child.clone();
        clonedChild.parent = clonedSelf;
        return clonedSelf.children.push(clonedChild);
      });
      return clonedSelf;
    };

    XMLElement.prototype.attribute = function(name, value) {
      var attName, attValue;
      if (name != null) {
        name = name.valueOf();
      }
      if (isObject(name)) {
        for (attName in name) {
          if (!hasProp.call(name, attName)) continue;
          attValue = name[attName];
          this.attribute(attName, attValue);
        }
      } else {
        if (isFunction(value)) {
          value = value.apply();
        }
        if (!this.options.skipNullAttributes || (value != null)) {
          this.attributes[name] = new XMLAttribute(this, name, value);
        }
      }
      return this;
    };

    XMLElement.prototype.removeAttribute = function(name) {
      var attName, i, len;
      if (name == null) {
        throw new Error("Missing attribute name");
      }
      name = name.valueOf();
      if (Array.isArray(name)) {
        for (i = 0, len = name.length; i < len; i++) {
          attName = name[i];
          delete this.attributes[attName];
        }
      } else {
        delete this.attributes[name];
      }
      return this;
    };

    XMLElement.prototype.toString = function(options) {
      return this.options.writer.set(options).element(this);
    };

    XMLElement.prototype.att = function(name, value) {
      return this.attribute(name, value);
    };

    XMLElement.prototype.a = function(name, value) {
      return this.attribute(name, value);
    };

    return XMLElement;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 67608:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLElement, XMLNode, XMLProcessingInstruction, XMLRaw, XMLText, isEmpty, isFunction, isObject, ref,
    hasProp = {}.hasOwnProperty;

  ref = __webpack_require__(58229), isObject = ref.isObject, isFunction = ref.isFunction, isEmpty = ref.isEmpty;

  XMLElement = null;

  XMLCData = null;

  XMLComment = null;

  XMLDeclaration = null;

  XMLDocType = null;

  XMLRaw = null;

  XMLText = null;

  XMLProcessingInstruction = null;

  module.exports = XMLNode = (function() {
    function XMLNode(parent) {
      this.parent = parent;
      if (this.parent) {
        this.options = this.parent.options;
        this.stringify = this.parent.stringify;
      }
      this.children = [];
      if (!XMLElement) {
        XMLElement = __webpack_require__(9437);
        XMLCData = __webpack_require__(90333);
        XMLComment = __webpack_require__(74407);
        XMLDeclaration = __webpack_require__(46364);
        XMLDocType = __webpack_require__(81801);
        XMLRaw = __webpack_require__(16329);
        XMLText = __webpack_require__(21318);
        XMLProcessingInstruction = __webpack_require__(56939);
      }
    }

    XMLNode.prototype.element = function(name, attributes, text) {
      var childNode, item, j, k, key, lastChild, len, len1, ref1, val;
      lastChild = null;
      if (attributes == null) {
        attributes = {};
      }
      attributes = attributes.valueOf();
      if (!isObject(attributes)) {
        ref1 = [attributes, text], text = ref1[0], attributes = ref1[1];
      }
      if (name != null) {
        name = name.valueOf();
      }
      if (Array.isArray(name)) {
        for (j = 0, len = name.length; j < len; j++) {
          item = name[j];
          lastChild = this.element(item);
        }
      } else if (isFunction(name)) {
        lastChild = this.element(name.apply());
      } else if (isObject(name)) {
        for (key in name) {
          if (!hasProp.call(name, key)) continue;
          val = name[key];
          if (isFunction(val)) {
            val = val.apply();
          }
          if ((isObject(val)) && (isEmpty(val))) {
            val = null;
          }
          if (!this.options.ignoreDecorators && this.stringify.convertAttKey && key.indexOf(this.stringify.convertAttKey) === 0) {
            lastChild = this.attribute(key.substr(this.stringify.convertAttKey.length), val);
          } else if (!this.options.separateArrayItems && Array.isArray(val)) {
            for (k = 0, len1 = val.length; k < len1; k++) {
              item = val[k];
              childNode = {};
              childNode[key] = item;
              lastChild = this.element(childNode);
            }
          } else if (isObject(val)) {
            lastChild = this.element(key);
            lastChild.element(val);
          } else {
            lastChild = this.element(key, val);
          }
        }
      } else {
        if (!this.options.ignoreDecorators && this.stringify.convertTextKey && name.indexOf(this.stringify.convertTextKey) === 0) {
          lastChild = this.text(text);
        } else if (!this.options.ignoreDecorators && this.stringify.convertCDataKey && name.indexOf(this.stringify.convertCDataKey) === 0) {
          lastChild = this.cdata(text);
        } else if (!this.options.ignoreDecorators && this.stringify.convertCommentKey && name.indexOf(this.stringify.convertCommentKey) === 0) {
          lastChild = this.comment(text);
        } else if (!this.options.ignoreDecorators && this.stringify.convertRawKey && name.indexOf(this.stringify.convertRawKey) === 0) {
          lastChild = this.raw(text);
        } else if (!this.options.ignoreDecorators && this.stringify.convertPIKey && name.indexOf(this.stringify.convertPIKey) === 0) {
          lastChild = this.instruction(name.substr(this.stringify.convertPIKey.length), text);
        } else {
          lastChild = this.node(name, attributes, text);
        }
      }
      if (lastChild == null) {
        throw new Error("Could not create any elements with: " + name);
      }
      return lastChild;
    };

    XMLNode.prototype.insertBefore = function(name, attributes, text) {
      var child, i, removed;
      if (this.isRoot) {
        throw new Error("Cannot insert elements at root level");
      }
      i = this.parent.children.indexOf(this);
      removed = this.parent.children.splice(i);
      child = this.parent.element(name, attributes, text);
      Array.prototype.push.apply(this.parent.children, removed);
      return child;
    };

    XMLNode.prototype.insertAfter = function(name, attributes, text) {
      var child, i, removed;
      if (this.isRoot) {
        throw new Error("Cannot insert elements at root level");
      }
      i = this.parent.children.indexOf(this);
      removed = this.parent.children.splice(i + 1);
      child = this.parent.element(name, attributes, text);
      Array.prototype.push.apply(this.parent.children, removed);
      return child;
    };

    XMLNode.prototype.remove = function() {
      var i, ref1;
      if (this.isRoot) {
        throw new Error("Cannot remove the root element");
      }
      i = this.parent.children.indexOf(this);
      [].splice.apply(this.parent.children, [i, i - i + 1].concat(ref1 = [])), ref1;
      return this.parent;
    };

    XMLNode.prototype.node = function(name, attributes, text) {
      var child, ref1;
      if (name != null) {
        name = name.valueOf();
      }
      attributes || (attributes = {});
      attributes = attributes.valueOf();
      if (!isObject(attributes)) {
        ref1 = [attributes, text], text = ref1[0], attributes = ref1[1];
      }
      child = new XMLElement(this, name, attributes);
      if (text != null) {
        child.text(text);
      }
      this.children.push(child);
      return child;
    };

    XMLNode.prototype.text = function(value) {
      var child;
      child = new XMLText(this, value);
      this.children.push(child);
      return this;
    };

    XMLNode.prototype.cdata = function(value) {
      var child;
      child = new XMLCData(this, value);
      this.children.push(child);
      return this;
    };

    XMLNode.prototype.comment = function(value) {
      var child;
      child = new XMLComment(this, value);
      this.children.push(child);
      return this;
    };

    XMLNode.prototype.commentBefore = function(value) {
      var child, i, removed;
      i = this.parent.children.indexOf(this);
      removed = this.parent.children.splice(i);
      child = this.parent.comment(value);
      Array.prototype.push.apply(this.parent.children, removed);
      return this;
    };

    XMLNode.prototype.commentAfter = function(value) {
      var child, i, removed;
      i = this.parent.children.indexOf(this);
      removed = this.parent.children.splice(i + 1);
      child = this.parent.comment(value);
      Array.prototype.push.apply(this.parent.children, removed);
      return this;
    };

    XMLNode.prototype.raw = function(value) {
      var child;
      child = new XMLRaw(this, value);
      this.children.push(child);
      return this;
    };

    XMLNode.prototype.instruction = function(target, value) {
      var insTarget, insValue, instruction, j, len;
      if (target != null) {
        target = target.valueOf();
      }
      if (value != null) {
        value = value.valueOf();
      }
      if (Array.isArray(target)) {
        for (j = 0, len = target.length; j < len; j++) {
          insTarget = target[j];
          this.instruction(insTarget);
        }
      } else if (isObject(target)) {
        for (insTarget in target) {
          if (!hasProp.call(target, insTarget)) continue;
          insValue = target[insTarget];
          this.instruction(insTarget, insValue);
        }
      } else {
        if (isFunction(value)) {
          value = value.apply();
        }
        instruction = new XMLProcessingInstruction(this, target, value);
        this.children.push(instruction);
      }
      return this;
    };

    XMLNode.prototype.instructionBefore = function(target, value) {
      var child, i, removed;
      i = this.parent.children.indexOf(this);
      removed = this.parent.children.splice(i);
      child = this.parent.instruction(target, value);
      Array.prototype.push.apply(this.parent.children, removed);
      return this;
    };

    XMLNode.prototype.instructionAfter = function(target, value) {
      var child, i, removed;
      i = this.parent.children.indexOf(this);
      removed = this.parent.children.splice(i + 1);
      child = this.parent.instruction(target, value);
      Array.prototype.push.apply(this.parent.children, removed);
      return this;
    };

    XMLNode.prototype.declaration = function(version, encoding, standalone) {
      var doc, xmldec;
      doc = this.document();
      xmldec = new XMLDeclaration(doc, version, encoding, standalone);
      if (doc.children[0] instanceof XMLDeclaration) {
        doc.children[0] = xmldec;
      } else {
        doc.children.unshift(xmldec);
      }
      return doc.root() || doc;
    };

    XMLNode.prototype.doctype = function(pubID, sysID) {
      var child, doc, doctype, i, j, k, len, len1, ref1, ref2;
      doc = this.document();
      doctype = new XMLDocType(doc, pubID, sysID);
      ref1 = doc.children;
      for (i = j = 0, len = ref1.length; j < len; i = ++j) {
        child = ref1[i];
        if (child instanceof XMLDocType) {
          doc.children[i] = doctype;
          return doctype;
        }
      }
      ref2 = doc.children;
      for (i = k = 0, len1 = ref2.length; k < len1; i = ++k) {
        child = ref2[i];
        if (child.isRoot) {
          doc.children.splice(i, 0, doctype);
          return doctype;
        }
      }
      doc.children.push(doctype);
      return doctype;
    };

    XMLNode.prototype.up = function() {
      if (this.isRoot) {
        throw new Error("The root node has no parent. Use doc() if you need to get the document object.");
      }
      return this.parent;
    };

    XMLNode.prototype.root = function() {
      var node;
      node = this;
      while (node) {
        if (node.isDocument) {
          return node.rootObject;
        } else if (node.isRoot) {
          return node;
        } else {
          node = node.parent;
        }
      }
    };

    XMLNode.prototype.document = function() {
      var node;
      node = this;
      while (node) {
        if (node.isDocument) {
          return node;
        } else {
          node = node.parent;
        }
      }
    };

    XMLNode.prototype.end = function(options) {
      return this.document().end(options);
    };

    XMLNode.prototype.prev = function() {
      var i;
      i = this.parent.children.indexOf(this);
      if (i < 1) {
        throw new Error("Already at the first node");
      }
      return this.parent.children[i - 1];
    };

    XMLNode.prototype.next = function() {
      var i;
      i = this.parent.children.indexOf(this);
      if (i === -1 || i === this.parent.children.length - 1) {
        throw new Error("Already at the last node");
      }
      return this.parent.children[i + 1];
    };

    XMLNode.prototype.importDocument = function(doc) {
      var clonedRoot;
      clonedRoot = doc.root().clone();
      clonedRoot.parent = this;
      clonedRoot.isRoot = false;
      this.children.push(clonedRoot);
      return this;
    };

    XMLNode.prototype.ele = function(name, attributes, text) {
      return this.element(name, attributes, text);
    };

    XMLNode.prototype.nod = function(name, attributes, text) {
      return this.node(name, attributes, text);
    };

    XMLNode.prototype.txt = function(value) {
      return this.text(value);
    };

    XMLNode.prototype.dat = function(value) {
      return this.cdata(value);
    };

    XMLNode.prototype.com = function(value) {
      return this.comment(value);
    };

    XMLNode.prototype.ins = function(target, value) {
      return this.instruction(target, value);
    };

    XMLNode.prototype.doc = function() {
      return this.document();
    };

    XMLNode.prototype.dec = function(version, encoding, standalone) {
      return this.declaration(version, encoding, standalone);
    };

    XMLNode.prototype.dtd = function(pubID, sysID) {
      return this.doctype(pubID, sysID);
    };

    XMLNode.prototype.e = function(name, attributes, text) {
      return this.element(name, attributes, text);
    };

    XMLNode.prototype.n = function(name, attributes, text) {
      return this.node(name, attributes, text);
    };

    XMLNode.prototype.t = function(value) {
      return this.text(value);
    };

    XMLNode.prototype.d = function(value) {
      return this.cdata(value);
    };

    XMLNode.prototype.c = function(value) {
      return this.comment(value);
    };

    XMLNode.prototype.r = function(value) {
      return this.raw(value);
    };

    XMLNode.prototype.i = function(target, value) {
      return this.instruction(target, value);
    };

    XMLNode.prototype.u = function() {
      return this.up();
    };

    XMLNode.prototype.importXMLBuilder = function(doc) {
      return this.importDocument(doc);
    };

    return XMLNode;

  })();

}).call(this);


/***/ }),

/***/ 56939:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLNode, XMLProcessingInstruction,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLProcessingInstruction = (function(superClass) {
    extend(XMLProcessingInstruction, superClass);

    function XMLProcessingInstruction(parent, target, value) {
      XMLProcessingInstruction.__super__.constructor.call(this, parent);
      if (target == null) {
        throw new Error("Missing instruction target");
      }
      this.target = this.stringify.insTarget(target);
      if (value) {
        this.value = this.stringify.insValue(value);
      }
    }

    XMLProcessingInstruction.prototype.clone = function() {
      return Object.create(this);
    };

    XMLProcessingInstruction.prototype.toString = function(options) {
      return this.options.writer.set(options).processingInstruction(this);
    };

    return XMLProcessingInstruction;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 16329:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLNode, XMLRaw,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLRaw = (function(superClass) {
    extend(XMLRaw, superClass);

    function XMLRaw(parent, text) {
      XMLRaw.__super__.constructor.call(this, parent);
      if (text == null) {
        throw new Error("Missing raw text");
      }
      this.value = this.stringify.raw(text);
    }

    XMLRaw.prototype.clone = function() {
      return Object.create(this);
    };

    XMLRaw.prototype.toString = function(options) {
      return this.options.writer.set(options).raw(this);
    };

    return XMLRaw;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 78601:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLElement, XMLProcessingInstruction, XMLRaw, XMLStreamWriter, XMLText, XMLWriterBase,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLDeclaration = __webpack_require__(46364);

  XMLDocType = __webpack_require__(81801);

  XMLCData = __webpack_require__(90333);

  XMLComment = __webpack_require__(74407);

  XMLElement = __webpack_require__(9437);

  XMLRaw = __webpack_require__(16329);

  XMLText = __webpack_require__(21318);

  XMLProcessingInstruction = __webpack_require__(56939);

  XMLDTDAttList = __webpack_require__(81015);

  XMLDTDElement = __webpack_require__(52421);

  XMLDTDEntity = __webpack_require__(40053);

  XMLDTDNotation = __webpack_require__(82837);

  XMLWriterBase = __webpack_require__(66752);

  module.exports = XMLStreamWriter = (function(superClass) {
    extend(XMLStreamWriter, superClass);

    function XMLStreamWriter(stream, options) {
      XMLStreamWriter.__super__.constructor.call(this, options);
      this.stream = stream;
    }

    XMLStreamWriter.prototype.document = function(doc) {
      var child, i, j, len, len1, ref, ref1, results;
      ref = doc.children;
      for (i = 0, len = ref.length; i < len; i++) {
        child = ref[i];
        child.isLastRootNode = false;
      }
      doc.children[doc.children.length - 1].isLastRootNode = true;
      ref1 = doc.children;
      results = [];
      for (j = 0, len1 = ref1.length; j < len1; j++) {
        child = ref1[j];
        switch (false) {
          case !(child instanceof XMLDeclaration):
            results.push(this.declaration(child));
            break;
          case !(child instanceof XMLDocType):
            results.push(this.docType(child));
            break;
          case !(child instanceof XMLComment):
            results.push(this.comment(child));
            break;
          case !(child instanceof XMLProcessingInstruction):
            results.push(this.processingInstruction(child));
            break;
          default:
            results.push(this.element(child));
        }
      }
      return results;
    };

    XMLStreamWriter.prototype.attribute = function(att) {
      return this.stream.write(' ' + att.name + '="' + att.value + '"');
    };

    XMLStreamWriter.prototype.cdata = function(node, level) {
      return this.stream.write(this.space(level) + '<![CDATA[' + node.text + ']]>' + this.endline(node));
    };

    XMLStreamWriter.prototype.comment = function(node, level) {
      return this.stream.write(this.space(level) + '<!-- ' + node.text + ' -->' + this.endline(node));
    };

    XMLStreamWriter.prototype.declaration = function(node, level) {
      this.stream.write(this.space(level));
      this.stream.write('<?xml version="' + node.version + '"');
      if (node.encoding != null) {
        this.stream.write(' encoding="' + node.encoding + '"');
      }
      if (node.standalone != null) {
        this.stream.write(' standalone="' + node.standalone + '"');
      }
      this.stream.write(this.spacebeforeslash + '?>');
      return this.stream.write(this.endline(node));
    };

    XMLStreamWriter.prototype.docType = function(node, level) {
      var child, i, len, ref;
      level || (level = 0);
      this.stream.write(this.space(level));
      this.stream.write('<!DOCTYPE ' + node.root().name);
      if (node.pubID && node.sysID) {
        this.stream.write(' PUBLIC "' + node.pubID + '" "' + node.sysID + '"');
      } else if (node.sysID) {
        this.stream.write(' SYSTEM "' + node.sysID + '"');
      }
      if (node.children.length > 0) {
        this.stream.write(' [');
        this.stream.write(this.endline(node));
        ref = node.children;
        for (i = 0, len = ref.length; i < len; i++) {
          child = ref[i];
          switch (false) {
            case !(child instanceof XMLDTDAttList):
              this.dtdAttList(child, level + 1);
              break;
            case !(child instanceof XMLDTDElement):
              this.dtdElement(child, level + 1);
              break;
            case !(child instanceof XMLDTDEntity):
              this.dtdEntity(child, level + 1);
              break;
            case !(child instanceof XMLDTDNotation):
              this.dtdNotation(child, level + 1);
              break;
            case !(child instanceof XMLCData):
              this.cdata(child, level + 1);
              break;
            case !(child instanceof XMLComment):
              this.comment(child, level + 1);
              break;
            case !(child instanceof XMLProcessingInstruction):
              this.processingInstruction(child, level + 1);
              break;
            default:
              throw new Error("Unknown DTD node type: " + child.constructor.name);
          }
        }
        this.stream.write(']');
      }
      this.stream.write(this.spacebeforeslash + '>');
      return this.stream.write(this.endline(node));
    };

    XMLStreamWriter.prototype.element = function(node, level) {
      var att, child, i, len, name, ref, ref1, space;
      level || (level = 0);
      space = this.space(level);
      this.stream.write(space + '<' + node.name);
      ref = node.attributes;
      for (name in ref) {
        if (!hasProp.call(ref, name)) continue;
        att = ref[name];
        this.attribute(att);
      }
      if (node.children.length === 0 || node.children.every(function(e) {
        return e.value === '';
      })) {
        if (this.allowEmpty) {
          this.stream.write('></' + node.name + '>');
        } else {
          this.stream.write(this.spacebeforeslash + '/>');
        }
      } else if (this.pretty && node.children.length === 1 && (node.children[0].value != null)) {
        this.stream.write('>');
        this.stream.write(node.children[0].value);
        this.stream.write('</' + node.name + '>');
      } else {
        this.stream.write('>' + this.newline);
        ref1 = node.children;
        for (i = 0, len = ref1.length; i < len; i++) {
          child = ref1[i];
          switch (false) {
            case !(child instanceof XMLCData):
              this.cdata(child, level + 1);
              break;
            case !(child instanceof XMLComment):
              this.comment(child, level + 1);
              break;
            case !(child instanceof XMLElement):
              this.element(child, level + 1);
              break;
            case !(child instanceof XMLRaw):
              this.raw(child, level + 1);
              break;
            case !(child instanceof XMLText):
              this.text(child, level + 1);
              break;
            case !(child instanceof XMLProcessingInstruction):
              this.processingInstruction(child, level + 1);
              break;
            default:
              throw new Error("Unknown XML node type: " + child.constructor.name);
          }
        }
        this.stream.write(space + '</' + node.name + '>');
      }
      return this.stream.write(this.endline(node));
    };

    XMLStreamWriter.prototype.processingInstruction = function(node, level) {
      this.stream.write(this.space(level) + '<?' + node.target);
      if (node.value) {
        this.stream.write(' ' + node.value);
      }
      return this.stream.write(this.spacebeforeslash + '?>' + this.endline(node));
    };

    XMLStreamWriter.prototype.raw = function(node, level) {
      return this.stream.write(this.space(level) + node.value + this.endline(node));
    };

    XMLStreamWriter.prototype.text = function(node, level) {
      return this.stream.write(this.space(level) + node.value + this.endline(node));
    };

    XMLStreamWriter.prototype.dtdAttList = function(node, level) {
      this.stream.write(this.space(level) + '<!ATTLIST ' + node.elementName + ' ' + node.attributeName + ' ' + node.attributeType);
      if (node.defaultValueType !== '#DEFAULT') {
        this.stream.write(' ' + node.defaultValueType);
      }
      if (node.defaultValue) {
        this.stream.write(' "' + node.defaultValue + '"');
      }
      return this.stream.write(this.spacebeforeslash + '>' + this.endline(node));
    };

    XMLStreamWriter.prototype.dtdElement = function(node, level) {
      this.stream.write(this.space(level) + '<!ELEMENT ' + node.name + ' ' + node.value);
      return this.stream.write(this.spacebeforeslash + '>' + this.endline(node));
    };

    XMLStreamWriter.prototype.dtdEntity = function(node, level) {
      this.stream.write(this.space(level) + '<!ENTITY');
      if (node.pe) {
        this.stream.write(' %');
      }
      this.stream.write(' ' + node.name);
      if (node.value) {
        this.stream.write(' "' + node.value + '"');
      } else {
        if (node.pubID && node.sysID) {
          this.stream.write(' PUBLIC "' + node.pubID + '" "' + node.sysID + '"');
        } else if (node.sysID) {
          this.stream.write(' SYSTEM "' + node.sysID + '"');
        }
        if (node.nData) {
          this.stream.write(' NDATA ' + node.nData);
        }
      }
      return this.stream.write(this.spacebeforeslash + '>' + this.endline(node));
    };

    XMLStreamWriter.prototype.dtdNotation = function(node, level) {
      this.stream.write(this.space(level) + '<!NOTATION ' + node.name);
      if (node.pubID && node.sysID) {
        this.stream.write(' PUBLIC "' + node.pubID + '" "' + node.sysID + '"');
      } else if (node.pubID) {
        this.stream.write(' PUBLIC "' + node.pubID + '"');
      } else if (node.sysID) {
        this.stream.write(' SYSTEM "' + node.sysID + '"');
      }
      return this.stream.write(this.spacebeforeslash + '>' + this.endline(node));
    };

    XMLStreamWriter.prototype.endline = function(node) {
      if (!node.isLastRootNode) {
        return this.newline;
      } else {
        return '';
      }
    };

    return XMLStreamWriter;

  })(XMLWriterBase);

}).call(this);


/***/ }),

/***/ 85913:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLElement, XMLProcessingInstruction, XMLRaw, XMLStringWriter, XMLText, XMLWriterBase,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLDeclaration = __webpack_require__(46364);

  XMLDocType = __webpack_require__(81801);

  XMLCData = __webpack_require__(90333);

  XMLComment = __webpack_require__(74407);

  XMLElement = __webpack_require__(9437);

  XMLRaw = __webpack_require__(16329);

  XMLText = __webpack_require__(21318);

  XMLProcessingInstruction = __webpack_require__(56939);

  XMLDTDAttList = __webpack_require__(81015);

  XMLDTDElement = __webpack_require__(52421);

  XMLDTDEntity = __webpack_require__(40053);

  XMLDTDNotation = __webpack_require__(82837);

  XMLWriterBase = __webpack_require__(66752);

  module.exports = XMLStringWriter = (function(superClass) {
    extend(XMLStringWriter, superClass);

    function XMLStringWriter(options) {
      XMLStringWriter.__super__.constructor.call(this, options);
    }

    XMLStringWriter.prototype.document = function(doc) {
      var child, i, len, r, ref;
      this.textispresent = false;
      r = '';
      ref = doc.children;
      for (i = 0, len = ref.length; i < len; i++) {
        child = ref[i];
        r += (function() {
          switch (false) {
            case !(child instanceof XMLDeclaration):
              return this.declaration(child);
            case !(child instanceof XMLDocType):
              return this.docType(child);
            case !(child instanceof XMLComment):
              return this.comment(child);
            case !(child instanceof XMLProcessingInstruction):
              return this.processingInstruction(child);
            default:
              return this.element(child, 0);
          }
        }).call(this);
      }
      if (this.pretty && r.slice(-this.newline.length) === this.newline) {
        r = r.slice(0, -this.newline.length);
      }
      return r;
    };

    XMLStringWriter.prototype.attribute = function(att) {
      return ' ' + att.name + '="' + att.value + '"';
    };

    XMLStringWriter.prototype.cdata = function(node, level) {
      return this.space(level) + '<![CDATA[' + node.text + ']]>' + this.newline;
    };

    XMLStringWriter.prototype.comment = function(node, level) {
      return this.space(level) + '<!-- ' + node.text + ' -->' + this.newline;
    };

    XMLStringWriter.prototype.declaration = function(node, level) {
      var r;
      r = this.space(level);
      r += '<?xml version="' + node.version + '"';
      if (node.encoding != null) {
        r += ' encoding="' + node.encoding + '"';
      }
      if (node.standalone != null) {
        r += ' standalone="' + node.standalone + '"';
      }
      r += this.spacebeforeslash + '?>';
      r += this.newline;
      return r;
    };

    XMLStringWriter.prototype.docType = function(node, level) {
      var child, i, len, r, ref;
      level || (level = 0);
      r = this.space(level);
      r += '<!DOCTYPE ' + node.root().name;
      if (node.pubID && node.sysID) {
        r += ' PUBLIC "' + node.pubID + '" "' + node.sysID + '"';
      } else if (node.sysID) {
        r += ' SYSTEM "' + node.sysID + '"';
      }
      if (node.children.length > 0) {
        r += ' [';
        r += this.newline;
        ref = node.children;
        for (i = 0, len = ref.length; i < len; i++) {
          child = ref[i];
          r += (function() {
            switch (false) {
              case !(child instanceof XMLDTDAttList):
                return this.dtdAttList(child, level + 1);
              case !(child instanceof XMLDTDElement):
                return this.dtdElement(child, level + 1);
              case !(child instanceof XMLDTDEntity):
                return this.dtdEntity(child, level + 1);
              case !(child instanceof XMLDTDNotation):
                return this.dtdNotation(child, level + 1);
              case !(child instanceof XMLCData):
                return this.cdata(child, level + 1);
              case !(child instanceof XMLComment):
                return this.comment(child, level + 1);
              case !(child instanceof XMLProcessingInstruction):
                return this.processingInstruction(child, level + 1);
              default:
                throw new Error("Unknown DTD node type: " + child.constructor.name);
            }
          }).call(this);
        }
        r += ']';
      }
      r += this.spacebeforeslash + '>';
      r += this.newline;
      return r;
    };

    XMLStringWriter.prototype.element = function(node, level) {
      var att, child, i, j, len, len1, name, r, ref, ref1, ref2, space, textispresentwasset;
      level || (level = 0);
      textispresentwasset = false;
      if (this.textispresent) {
        this.newline = '';
        this.pretty = false;
      } else {
        this.newline = this.newlinedefault;
        this.pretty = this.prettydefault;
      }
      space = this.space(level);
      r = '';
      r += space + '<' + node.name;
      ref = node.attributes;
      for (name in ref) {
        if (!hasProp.call(ref, name)) continue;
        att = ref[name];
        r += this.attribute(att);
      }
      if (node.children.length === 0 || node.children.every(function(e) {
        return e.value === '';
      })) {
        if (this.allowEmpty) {
          r += '></' + node.name + '>' + this.newline;
        } else {
          r += this.spacebeforeslash + '/>' + this.newline;
        }
      } else if (this.pretty && node.children.length === 1 && (node.children[0].value != null)) {
        r += '>';
        r += node.children[0].value;
        r += '</' + node.name + '>' + this.newline;
      } else {
        if (this.dontprettytextnodes) {
          ref1 = node.children;
          for (i = 0, len = ref1.length; i < len; i++) {
            child = ref1[i];
            if (child.value != null) {
              this.textispresent++;
              textispresentwasset = true;
              break;
            }
          }
        }
        if (this.textispresent) {
          this.newline = '';
          this.pretty = false;
          space = this.space(level);
        }
        r += '>' + this.newline;
        ref2 = node.children;
        for (j = 0, len1 = ref2.length; j < len1; j++) {
          child = ref2[j];
          r += (function() {
            switch (false) {
              case !(child instanceof XMLCData):
                return this.cdata(child, level + 1);
              case !(child instanceof XMLComment):
                return this.comment(child, level + 1);
              case !(child instanceof XMLElement):
                return this.element(child, level + 1);
              case !(child instanceof XMLRaw):
                return this.raw(child, level + 1);
              case !(child instanceof XMLText):
                return this.text(child, level + 1);
              case !(child instanceof XMLProcessingInstruction):
                return this.processingInstruction(child, level + 1);
              default:
                throw new Error("Unknown XML node type: " + child.constructor.name);
            }
          }).call(this);
        }
        if (textispresentwasset) {
          this.textispresent--;
        }
        if (!this.textispresent) {
          this.newline = this.newlinedefault;
          this.pretty = this.prettydefault;
        }
        r += space + '</' + node.name + '>' + this.newline;
      }
      return r;
    };

    XMLStringWriter.prototype.processingInstruction = function(node, level) {
      var r;
      r = this.space(level) + '<?' + node.target;
      if (node.value) {
        r += ' ' + node.value;
      }
      r += this.spacebeforeslash + '?>' + this.newline;
      return r;
    };

    XMLStringWriter.prototype.raw = function(node, level) {
      return this.space(level) + node.value + this.newline;
    };

    XMLStringWriter.prototype.text = function(node, level) {
      return this.space(level) + node.value + this.newline;
    };

    XMLStringWriter.prototype.dtdAttList = function(node, level) {
      var r;
      r = this.space(level) + '<!ATTLIST ' + node.elementName + ' ' + node.attributeName + ' ' + node.attributeType;
      if (node.defaultValueType !== '#DEFAULT') {
        r += ' ' + node.defaultValueType;
      }
      if (node.defaultValue) {
        r += ' "' + node.defaultValue + '"';
      }
      r += this.spacebeforeslash + '>' + this.newline;
      return r;
    };

    XMLStringWriter.prototype.dtdElement = function(node, level) {
      return this.space(level) + '<!ELEMENT ' + node.name + ' ' + node.value + this.spacebeforeslash + '>' + this.newline;
    };

    XMLStringWriter.prototype.dtdEntity = function(node, level) {
      var r;
      r = this.space(level) + '<!ENTITY';
      if (node.pe) {
        r += ' %';
      }
      r += ' ' + node.name;
      if (node.value) {
        r += ' "' + node.value + '"';
      } else {
        if (node.pubID && node.sysID) {
          r += ' PUBLIC "' + node.pubID + '" "' + node.sysID + '"';
        } else if (node.sysID) {
          r += ' SYSTEM "' + node.sysID + '"';
        }
        if (node.nData) {
          r += ' NDATA ' + node.nData;
        }
      }
      r += this.spacebeforeslash + '>' + this.newline;
      return r;
    };

    XMLStringWriter.prototype.dtdNotation = function(node, level) {
      var r;
      r = this.space(level) + '<!NOTATION ' + node.name;
      if (node.pubID && node.sysID) {
        r += ' PUBLIC "' + node.pubID + '" "' + node.sysID + '"';
      } else if (node.pubID) {
        r += ' PUBLIC "' + node.pubID + '"';
      } else if (node.sysID) {
        r += ' SYSTEM "' + node.sysID + '"';
      }
      r += this.spacebeforeslash + '>' + this.newline;
      return r;
    };

    XMLStringWriter.prototype.openNode = function(node, level) {
      var att, name, r, ref;
      level || (level = 0);
      if (node instanceof XMLElement) {
        r = this.space(level) + '<' + node.name;
        ref = node.attributes;
        for (name in ref) {
          if (!hasProp.call(ref, name)) continue;
          att = ref[name];
          r += this.attribute(att);
        }
        r += (node.children ? '>' : '/>') + this.newline;
        return r;
      } else {
        r = this.space(level) + '<!DOCTYPE ' + node.rootNodeName;
        if (node.pubID && node.sysID) {
          r += ' PUBLIC "' + node.pubID + '" "' + node.sysID + '"';
        } else if (node.sysID) {
          r += ' SYSTEM "' + node.sysID + '"';
        }
        r += (node.children ? ' [' : '>') + this.newline;
        return r;
      }
    };

    XMLStringWriter.prototype.closeNode = function(node, level) {
      level || (level = 0);
      switch (false) {
        case !(node instanceof XMLElement):
          return this.space(level) + '</' + node.name + '>' + this.newline;
        case !(node instanceof XMLDocType):
          return this.space(level) + ']>' + this.newline;
      }
    };

    return XMLStringWriter;

  })(XMLWriterBase);

}).call(this);


/***/ }),

/***/ 8594:
/***/ (function(module) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLStringifier,
    bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
    hasProp = {}.hasOwnProperty;

  module.exports = XMLStringifier = (function() {
    function XMLStringifier(options) {
      this.assertLegalChar = bind(this.assertLegalChar, this);
      var key, ref, value;
      options || (options = {});
      this.noDoubleEncoding = options.noDoubleEncoding;
      ref = options.stringify || {};
      for (key in ref) {
        if (!hasProp.call(ref, key)) continue;
        value = ref[key];
        this[key] = value;
      }
    }

    XMLStringifier.prototype.eleName = function(val) {
      val = '' + val || '';
      return this.assertLegalChar(val);
    };

    XMLStringifier.prototype.eleText = function(val) {
      val = '' + val || '';
      return this.assertLegalChar(this.elEscape(val));
    };

    XMLStringifier.prototype.cdata = function(val) {
      val = '' + val || '';
      val = val.replace(']]>', ']]]]><![CDATA[>');
      return this.assertLegalChar(val);
    };

    XMLStringifier.prototype.comment = function(val) {
      val = '' + val || '';
      if (val.match(/--/)) {
        throw new Error("Comment text cannot contain double-hypen: " + val);
      }
      return this.assertLegalChar(val);
    };

    XMLStringifier.prototype.raw = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.attName = function(val) {
      return val = '' + val || '';
    };

    XMLStringifier.prototype.attValue = function(val) {
      val = '' + val || '';
      return this.attEscape(val);
    };

    XMLStringifier.prototype.insTarget = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.insValue = function(val) {
      val = '' + val || '';
      if (val.match(/\?>/)) {
        throw new Error("Invalid processing instruction value: " + val);
      }
      return val;
    };

    XMLStringifier.prototype.xmlVersion = function(val) {
      val = '' + val || '';
      if (!val.match(/1\.[0-9]+/)) {
        throw new Error("Invalid version number: " + val);
      }
      return val;
    };

    XMLStringifier.prototype.xmlEncoding = function(val) {
      val = '' + val || '';
      if (!val.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/)) {
        throw new Error("Invalid encoding: " + val);
      }
      return val;
    };

    XMLStringifier.prototype.xmlStandalone = function(val) {
      if (val) {
        return "yes";
      } else {
        return "no";
      }
    };

    XMLStringifier.prototype.dtdPubID = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.dtdSysID = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.dtdElementValue = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.dtdAttType = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.dtdAttDefault = function(val) {
      if (val != null) {
        return '' + val || '';
      } else {
        return val;
      }
    };

    XMLStringifier.prototype.dtdEntityValue = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.dtdNData = function(val) {
      return '' + val || '';
    };

    XMLStringifier.prototype.convertAttKey = '@';

    XMLStringifier.prototype.convertPIKey = '?';

    XMLStringifier.prototype.convertTextKey = '#text';

    XMLStringifier.prototype.convertCDataKey = '#cdata';

    XMLStringifier.prototype.convertCommentKey = '#comment';

    XMLStringifier.prototype.convertRawKey = '#raw';

    XMLStringifier.prototype.assertLegalChar = function(str) {
      var res;
      res = str.match(/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/);
      if (res) {
        throw new Error("Invalid character in string: " + str + " at index " + res.index);
      }
      return str;
    };

    XMLStringifier.prototype.elEscape = function(str) {
      var ampregex;
      ampregex = this.noDoubleEncoding ? /(?!&\S+;)&/g : /&/g;
      return str.replace(ampregex, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\r/g, '&#xD;');
    };

    XMLStringifier.prototype.attEscape = function(str) {
      var ampregex;
      ampregex = this.noDoubleEncoding ? /(?!&\S+;)&/g : /&/g;
      return str.replace(ampregex, '&amp;').replace(/</g, '&lt;').replace(/"/g, '&quot;').replace(/\t/g, '&#x9;').replace(/\n/g, '&#xA;').replace(/\r/g, '&#xD;');
    };

    return XMLStringifier;

  })();

}).call(this);


/***/ }),

/***/ 21318:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLNode, XMLText,
    extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
    hasProp = {}.hasOwnProperty;

  XMLNode = __webpack_require__(67608);

  module.exports = XMLText = (function(superClass) {
    extend(XMLText, superClass);

    function XMLText(parent, text) {
      XMLText.__super__.constructor.call(this, parent);
      if (text == null) {
        throw new Error("Missing element text");
      }
      this.value = this.stringify.eleText(text);
    }

    XMLText.prototype.clone = function() {
      return Object.create(this);
    };

    XMLText.prototype.toString = function(options) {
      return this.options.writer.set(options).text(this);
    };

    return XMLText;

  })(XMLNode);

}).call(this);


/***/ }),

/***/ 66752:
/***/ (function(module) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLWriterBase,
    hasProp = {}.hasOwnProperty;

  module.exports = XMLWriterBase = (function() {
    function XMLWriterBase(options) {
      var key, ref, ref1, ref2, ref3, ref4, ref5, ref6, value;
      options || (options = {});
      this.pretty = options.pretty || false;
      this.allowEmpty = (ref = options.allowEmpty) != null ? ref : false;
      if (this.pretty) {
        this.indent = (ref1 = options.indent) != null ? ref1 : '  ';
        this.newline = (ref2 = options.newline) != null ? ref2 : '\n';
        this.offset = (ref3 = options.offset) != null ? ref3 : 0;
        this.dontprettytextnodes = (ref4 = options.dontprettytextnodes) != null ? ref4 : 0;
      } else {
        this.indent = '';
        this.newline = '';
        this.offset = 0;
        this.dontprettytextnodes = 0;
      }
      this.spacebeforeslash = (ref5 = options.spacebeforeslash) != null ? ref5 : '';
      if (this.spacebeforeslash === true) {
        this.spacebeforeslash = ' ';
      }
      this.newlinedefault = this.newline;
      this.prettydefault = this.pretty;
      ref6 = options.writer || {};
      for (key in ref6) {
        if (!hasProp.call(ref6, key)) continue;
        value = ref6[key];
        this[key] = value;
      }
    }

    XMLWriterBase.prototype.set = function(options) {
      var key, ref, value;
      options || (options = {});
      if ("pretty" in options) {
        this.pretty = options.pretty;
      }
      if ("allowEmpty" in options) {
        this.allowEmpty = options.allowEmpty;
      }
      if (this.pretty) {
        this.indent = "indent" in options ? options.indent : '  ';
        this.newline = "newline" in options ? options.newline : '\n';
        this.offset = "offset" in options ? options.offset : 0;
        this.dontprettytextnodes = "dontprettytextnodes" in options ? options.dontprettytextnodes : 0;
      } else {
        this.indent = '';
        this.newline = '';
        this.offset = 0;
        this.dontprettytextnodes = 0;
      }
      this.spacebeforeslash = "spacebeforeslash" in options ? options.spacebeforeslash : '';
      if (this.spacebeforeslash === true) {
        this.spacebeforeslash = ' ';
      }
      this.newlinedefault = this.newline;
      this.prettydefault = this.pretty;
      ref = options.writer || {};
      for (key in ref) {
        if (!hasProp.call(ref, key)) continue;
        value = ref[key];
        this[key] = value;
      }
      return this;
    };

    XMLWriterBase.prototype.space = function(level) {
      var indent;
      if (this.pretty) {
        indent = (level || 0) + this.offset + 1;
        if (indent > 0) {
          return new Array(indent).join(this.indent);
        } else {
          return '';
        }
      } else {
        return '';
      }
    };

    return XMLWriterBase;

  })();

}).call(this);


/***/ }),

/***/ 52958:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// Generated by CoffeeScript 1.12.7
(function() {
  var XMLDocument, XMLDocumentCB, XMLStreamWriter, XMLStringWriter, assign, isFunction, ref;

  ref = __webpack_require__(58229), assign = ref.assign, isFunction = ref.isFunction;

  XMLDocument = __webpack_require__(53730);

  XMLDocumentCB = __webpack_require__(77356);

  XMLStringWriter = __webpack_require__(85913);

  XMLStreamWriter = __webpack_require__(78601);

  module.exports.create = function(name, xmldec, doctype, options) {
    var doc, root;
    if (name == null) {
      throw new Error("Root element needs a name");
    }
    options = assign({}, xmldec, doctype, options);
    doc = new XMLDocument(options);
    root = doc.element(name);
    if (!options.headless) {
      doc.declaration(options);
      if ((options.pubID != null) || (options.sysID != null)) {
        doc.doctype(options);
      }
    }
    return root;
  };

  module.exports.begin = function(options, onData, onEnd) {
    var ref1;
    if (isFunction(options)) {
      ref1 = [options, onData], onData = ref1[0], onEnd = ref1[1];
      options = {};
    }
    if (onData) {
      return new XMLDocumentCB(options, onData, onEnd);
    } else {
      return new XMLDocument(options);
    }
  };

  module.exports.stringWriter = function(options) {
    return new XMLStringWriter(options);
  };

  module.exports.streamWriter = function(stream, options) {
    return new XMLStreamWriter(stream, options);
  };

}).call(this);


/***/ }),

/***/ 4091:
/***/ ((module) => {

"use strict";

module.exports = function (Yallist) {
  Yallist.prototype[Symbol.iterator] = function* () {
    for (let walker = this.head; walker; walker = walker.next) {
      yield walker.value
    }
  }
}


/***/ }),

/***/ 40665:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

module.exports = Yallist

Yallist.Node = Node
Yallist.create = Yallist

function Yallist (list) {
  var self = this
  if (!(self instanceof Yallist)) {
    self = new Yallist()
  }

  self.tail = null
  self.head = null
  self.length = 0

  if (list && typeof list.forEach === 'function') {
    list.forEach(function (item) {
      self.push(item)
    })
  } else if (arguments.length > 0) {
    for (var i = 0, l = arguments.length; i < l; i++) {
      self.push(arguments[i])
    }
  }

  return self
}

Yallist.prototype.removeNode = function (node) {
  if (node.list !== this) {
    throw new Error('removing node which does not belong to this list')
  }

  var next = node.next
  var prev = node.prev

  if (next) {
    next.prev = prev
  }

  if (prev) {
    prev.next = next
  }

  if (node === this.head) {
    this.head = next
  }
  if (node === this.tail) {
    this.tail = prev
  }

  node.list.length--
  node.next = null
  node.prev = null
  node.list = null

  return next
}

Yallist.prototype.unshiftNode = function (node) {
  if (node === this.head) {
    return
  }

  if (node.list) {
    node.list.removeNode(node)
  }

  var head = this.head
  node.list = this
  node.next = head
  if (head) {
    head.prev = node
  }

  this.head = node
  if (!this.tail) {
    this.tail = node
  }
  this.length++
}

Yallist.prototype.pushNode = function (node) {
  if (node === this.tail) {
    return
  }

  if (node.list) {
    node.list.removeNode(node)
  }

  var tail = this.tail
  node.list = this
  node.prev = tail
  if (tail) {
    tail.next = node
  }

  this.tail = node
  if (!this.head) {
    this.head = node
  }
  this.length++
}

Yallist.prototype.push = function () {
  for (var i = 0, l = arguments.length; i < l; i++) {
    push(this, arguments[i])
  }
  return this.length
}

Yallist.prototype.unshift = function () {
  for (var i = 0, l = arguments.length; i < l; i++) {
    unshift(this, arguments[i])
  }
  return this.length
}

Yallist.prototype.pop = function () {
  if (!this.tail) {
    return undefined
  }

  var res = this.tail.value
  this.tail = this.tail.prev
  if (this.tail) {
    this.tail.next = null
  } else {
    this.head = null
  }
  this.length--
  return res
}

Yallist.prototype.shift = function () {
  if (!this.head) {
    return undefined
  }

  var res = this.head.value
  this.head = this.head.next
  if (this.head) {
    this.head.prev = null
  } else {
    this.tail = null
  }
  this.length--
  return res
}

Yallist.prototype.forEach = function (fn, thisp) {
  thisp = thisp || this
  for (var walker = this.head, i = 0; walker !== null; i++) {
    fn.call(thisp, walker.value, i, this)
    walker = walker.next
  }
}

Yallist.prototype.forEachReverse = function (fn, thisp) {
  thisp = thisp || this
  for (var walker = this.tail, i = this.length - 1; walker !== null; i--) {
    fn.call(thisp, walker.value, i, this)
    walker = walker.prev
  }
}

Yallist.prototype.get = function (n) {
  for (var i = 0, walker = this.head; walker !== null && i < n; i++) {
    // abort out of the list early if we hit a cycle
    walker = walker.next
  }
  if (i === n && walker !== null) {
    return walker.value
  }
}

Yallist.prototype.getReverse = function (n) {
  for (var i = 0, walker = this.tail; walker !== null && i < n; i++) {
    // abort out of the list early if we hit a cycle
    walker = walker.prev
  }
  if (i === n && walker !== null) {
    return walker.value
  }
}

Yallist.prototype.map = function (fn, thisp) {
  thisp = thisp || this
  var res = new Yallist()
  for (var walker = this.head; walker !== null;) {
    res.push(fn.call(thisp, walker.value, this))
    walker = walker.next
  }
  return res
}

Yallist.prototype.mapReverse = function (fn, thisp) {
  thisp = thisp || this
  var res = new Yallist()
  for (var walker = this.tail; walker !== null;) {
    res.push(fn.call(thisp, walker.value, this))
    walker = walker.prev
  }
  return res
}

Yallist.prototype.reduce = function (fn, initial) {
  var acc
  var walker = this.head
  if (arguments.length > 1) {
    acc = initial
  } else if (this.head) {
    walker = this.head.next
    acc = this.head.value
  } else {
    throw new TypeError('Reduce of empty list with no initial value')
  }

  for (var i = 0; walker !== null; i++) {
    acc = fn(acc, walker.value, i)
    walker = walker.next
  }

  return acc
}

Yallist.prototype.reduceReverse = function (fn, initial) {
  var acc
  var walker = this.tail
  if (arguments.length > 1) {
    acc = initial
  } else if (this.tail) {
    walker = this.tail.prev
    acc = this.tail.value
  } else {
    throw new TypeError('Reduce of empty list with no initial value')
  }

  for (var i = this.length - 1; walker !== null; i--) {
    acc = fn(acc, walker.value, i)
    walker = walker.prev
  }

  return acc
}

Yallist.prototype.toArray = function () {
  var arr = new Array(this.length)
  for (var i = 0, walker = this.head; walker !== null; i++) {
    arr[i] = walker.value
    walker = walker.next
  }
  return arr
}

Yallist.prototype.toArrayReverse = function () {
  var arr = new Array(this.length)
  for (var i = 0, walker = this.tail; walker !== null; i++) {
    arr[i] = walker.value
    walker = walker.prev
  }
  return arr
}

Yallist.prototype.slice = function (from, to) {
  to = to || this.length
  if (to < 0) {
    to += this.length
  }
  from = from || 0
  if (from < 0) {
    from += this.length
  }
  var ret = new Yallist()
  if (to < from || to < 0) {
    return ret
  }
  if (from < 0) {
    from = 0
  }
  if (to > this.length) {
    to = this.length
  }
  for (var i = 0, walker = this.head; walker !== null && i < from; i++) {
    walker = walker.next
  }
  for (; walker !== null && i < to; i++, walker = walker.next) {
    ret.push(walker.value)
  }
  return ret
}

Yallist.prototype.sliceReverse = function (from, to) {
  to = to || this.length
  if (to < 0) {
    to += this.length
  }
  from = from || 0
  if (from < 0) {
    from += this.length
  }
  var ret = new Yallist()
  if (to < from || to < 0) {
    return ret
  }
  if (from < 0) {
    from = 0
  }
  if (to > this.length) {
    to = this.length
  }
  for (var i = this.length, walker = this.tail; walker !== null && i > to; i--) {
    walker = walker.prev
  }
  for (; walker !== null && i > from; i--, walker = walker.prev) {
    ret.push(walker.value)
  }
  return ret
}

Yallist.prototype.splice = function (start, deleteCount, ...nodes) {
  if (start > this.length) {
    start = this.length - 1
  }
  if (start < 0) {
    start = this.length + start;
  }

  for (var i = 0, walker = this.head; walker !== null && i < start; i++) {
    walker = walker.next
  }

  var ret = []
  for (var i = 0; walker && i < deleteCount; i++) {
    ret.push(walker.value)
    walker = this.removeNode(walker)
  }
  if (walker === null) {
    walker = this.tail
  }

  if (walker !== this.head && walker !== this.tail) {
    walker = walker.prev
  }

  for (var i = 0; i < nodes.length; i++) {
    walker = insert(this, walker, nodes[i])
  }
  return ret;
}

Yallist.prototype.reverse = function () {
  var head = this.head
  var tail = this.tail
  for (var walker = head; walker !== null; walker = walker.prev) {
    var p = walker.prev
    walker.prev = walker.next
    walker.next = p
  }
  this.head = tail
  this.tail = head
  return this
}

function insert (self, node, value) {
  var inserted = node === self.head ?
    new Node(value, null, node, self) :
    new Node(value, node, node.next, self)

  if (inserted.next === null) {
    self.tail = inserted
  }
  if (inserted.prev === null) {
    self.head = inserted
  }

  self.length++

  return inserted
}

function push (self, item) {
  self.tail = new Node(item, self.tail, null, self)
  if (!self.head) {
    self.head = self.tail
  }
  self.length++
}

function unshift (self, item) {
  self.head = new Node(item, null, self.head, self)
  if (!self.tail) {
    self.tail = self.head
  }
  self.length++
}

function Node (value, prev, next, list) {
  if (!(this instanceof Node)) {
    return new Node(value, prev, next, list)
  }

  this.list = list
  this.value = value

  if (prev) {
    prev.next = this
    this.prev = prev
  } else {
    this.prev = null
  }

  if (next) {
    next.prev = this
    this.next = next
  } else {
    this.next = null
  }
}

try {
  // add if support for Symbol.iterator is present
  __webpack_require__(4091)(Yallist)
} catch (er) {}


/***/ }),

/***/ 71269:
/***/ ((module) => {

module.exports = eval("require")("bufferutil");


/***/ }),

/***/ 24592:
/***/ ((module) => {

module.exports = eval("require")("utf-8-validate");


/***/ }),

/***/ 39140:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

let crypto = __webpack_require__(33373)

let { urlAlphabet } = __webpack_require__(53861)

// It is best to make fewer, larger requests to the crypto module to
// avoid system call overhead. So, random numbers are generated in a
// pool. The pool is a Buffer that is larger than the initial random
// request size by this multiplier. The pool is enlarged if subsequent
// requests exceed the maximum buffer size.
const POOL_SIZE_MULTIPLIER = 32
let pool, poolOffset

let random = bytes => {
  if (!pool || pool.length < bytes) {
    pool = Buffer.allocUnsafe(bytes * POOL_SIZE_MULTIPLIER)
    crypto.randomFillSync(pool)
    poolOffset = 0
  } else if (poolOffset + bytes > pool.length) {
    crypto.randomFillSync(pool)
    poolOffset = 0
  }

  let res = pool.subarray(poolOffset, poolOffset + bytes)
  poolOffset += bytes
  return res
}

let customRandom = (alphabet, size, getRandom) => {
  // First, a bitmask is necessary to generate the ID. The bitmask makes bytes
  // values closer to the alphabet size. The bitmask calculates the closest
  // `2^31 - 1` number, which exceeds the alphabet size.
  // For example, the bitmask for the alphabet size 30 is 31 (00011111).
  let mask = (2 << (31 - Math.clz32((alphabet.length - 1) | 1))) - 1
  // Though, the bitmask solution is not perfect since the bytes exceeding
  // the alphabet size are refused. Therefore, to reliably generate the ID,
  // the random bytes redundancy has to be satisfied.

  // Note: every hardware random generator call is performance expensive,
  // because the system call for entropy collection takes a lot of time.
  // So, to avoid additional system calls, extra bytes are requested in advance.

  // Next, a step determines how many random bytes to generate.
  // The number of random bytes gets decided upon the ID size, mask,
  // alphabet size, and magic number 1.6 (using 1.6 peaks at performance
  // according to benchmarks).
  let step = Math.ceil((1.6 * mask * size) / alphabet.length)

  return () => {
    let id = ''
    while (true) {
      let bytes = getRandom(step)
      // A compact alternative for `for (var i = 0; i < step; i++)`.
      let i = step
      while (i--) {
        // Adding `|| ''` refuses a random byte that exceeds the alphabet size.
        id += alphabet[bytes[i] & mask] || ''
        if (id.length === size) return id
      }
    }
  }
}

let customAlphabet = (alphabet, size) => customRandom(alphabet, size, random)

let nanoid = (size = 21) => {
  let bytes = random(size)
  let id = ''
  // A compact alternative for `for (var i = 0; i < step; i++)`.
  while (size--) {
    // It is incorrect to use bytes exceeding the alphabet size.
    // The following mask reduces the random byte in the 0-255 value
    // range to the 0-63 value range. Therefore, adding hacks, such
    // as empty string fallback or magic numbers, is unneccessary because
    // the bitmask trims bytes down to the alphabet size.
    id += urlAlphabet[bytes[size] & 63]
  }
  return id
}

module.exports = { nanoid, customAlphabet, customRandom, urlAlphabet, random }


/***/ }),

/***/ 53861:
/***/ ((module) => {

// This alphabet uses `A-Za-z0-9_-` symbols. The genetic algorithm helped
// optimize the gzip compression for this alphabet.
let urlAlphabet =
  'ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW'

module.exports = { urlAlphabet }


/***/ }),

/***/ 91641:
/***/ ((__unused_webpack_module, exports) => {

//     Underscore.js 1.13.1
//     https://underscorejs.org
//     (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors
//     Underscore may be freely distributed under the MIT license.

Object.defineProperty(exports, "__esModule", ({ value: true }));

// Current version.
var VERSION = '1.13.1';

// Establish the root object, `window` (`self`) in the browser, `global`
// on the server, or `this` in some virtual machines. We use `self`
// instead of `window` for `WebWorker` support.
var root = typeof self == 'object' && self.self === self && self ||
          typeof global == 'object' && global.global === global && global ||
          Function('return this')() ||
          {};

// Save bytes in the minified (but not gzipped) version:
var ArrayProto = Array.prototype, ObjProto = Object.prototype;
var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null;

// Create quick reference variables for speed access to core prototypes.
var push = ArrayProto.push,
    slice = ArrayProto.slice,
    toString = ObjProto.toString,
    hasOwnProperty = ObjProto.hasOwnProperty;

// Modern feature detection.
var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined',
    supportsDataView = typeof DataView !== 'undefined';

// All **ECMAScript 5+** native function implementations that we hope to use
// are declared here.
var nativeIsArray = Array.isArray,
    nativeKeys = Object.keys,
    nativeCreate = Object.create,
    nativeIsView = supportsArrayBuffer && ArrayBuffer.isView;

// Create references to these builtin functions because we override them.
var _isNaN = isNaN,
    _isFinite = isFinite;

// Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed.
var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString');
var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString',
  'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString'];

// The largest integer that can be represented exactly.
var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1;

// Some functions take a variable number of arguments, or a few expected
// arguments at the beginning and then a variable number of values to operate
// on. This helper accumulates all remaining arguments past the function’s
// argument length (or an explicit `startIndex`), into an array that becomes
// the last argument. Similar to ES6’s "rest parameter".
function restArguments(func, startIndex) {
  startIndex = startIndex == null ? func.length - 1 : +startIndex;
  return function() {
    var length = Math.max(arguments.length - startIndex, 0),
        rest = Array(length),
        index = 0;
    for (; index < length; index++) {
      rest[index] = arguments[index + startIndex];
    }
    switch (startIndex) {
      case 0: return func.call(this, rest);
      case 1: return func.call(this, arguments[0], rest);
      case 2: return func.call(this, arguments[0], arguments[1], rest);
    }
    var args = Array(startIndex + 1);
    for (index = 0; index < startIndex; index++) {
      args[index] = arguments[index];
    }
    args[startIndex] = rest;
    return func.apply(this, args);
  };
}

// Is a given variable an object?
function isObject(obj) {
  var type = typeof obj;
  return type === 'function' || type === 'object' && !!obj;
}

// Is a given value equal to null?
function isNull(obj) {
  return obj === null;
}

// Is a given variable undefined?
function isUndefined(obj) {
  return obj === void 0;
}

// Is a given value a boolean?
function isBoolean(obj) {
  return obj === true || obj === false || toString.call(obj) === '[object Boolean]';
}

// Is a given value a DOM element?
function isElement(obj) {
  return !!(obj && obj.nodeType === 1);
}

// Internal function for creating a `toString`-based type tester.
function tagTester(name) {
  var tag = '[object ' + name + ']';
  return function(obj) {
    return toString.call(obj) === tag;
  };
}

var isString = tagTester('String');

var isNumber = tagTester('Number');

var isDate = tagTester('Date');

var isRegExp = tagTester('RegExp');

var isError = tagTester('Error');

var isSymbol = tagTester('Symbol');

var isArrayBuffer = tagTester('ArrayBuffer');

var isFunction = tagTester('Function');

// Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old
// v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236).
var nodelist = root.document && root.document.childNodes;
if ( true && typeof Int8Array != 'object' && typeof nodelist != 'function') {
  isFunction = function(obj) {
    return typeof obj == 'function' || false;
  };
}

var isFunction$1 = isFunction;

var hasObjectTag = tagTester('Object');

// In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`.
// In IE 11, the most common among them, this problem also applies to
// `Map`, `WeakMap` and `Set`.
var hasStringTagBug = (
      supportsDataView && hasObjectTag(new DataView(new ArrayBuffer(8)))
    ),
    isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map));

var isDataView = tagTester('DataView');

// In IE 10 - Edge 13, we need a different heuristic
// to determine whether an object is a `DataView`.
function ie10IsDataView(obj) {
  return obj != null && isFunction$1(obj.getInt8) && isArrayBuffer(obj.buffer);
}

var isDataView$1 = (hasStringTagBug ? ie10IsDataView : isDataView);

// Is a given value an array?
// Delegates to ECMA5's native `Array.isArray`.
var isArray = nativeIsArray || tagTester('Array');

// Internal function to check whether `key` is an own property name of `obj`.
function has$1(obj, key) {
  return obj != null && hasOwnProperty.call(obj, key);
}

var isArguments = tagTester('Arguments');

// Define a fallback version of the method in browsers (ahem, IE < 9), where
// there isn't any inspectable "Arguments" type.
(function() {
  if (!isArguments(arguments)) {
    isArguments = function(obj) {
      return has$1(obj, 'callee');
    };
  }
}());

var isArguments$1 = isArguments;

// Is a given object a finite number?
function isFinite$1(obj) {
  return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj));
}

// Is the given value `NaN`?
function isNaN$1(obj) {
  return isNumber(obj) && _isNaN(obj);
}

// Predicate-generating function. Often useful outside of Underscore.
function constant(value) {
  return function() {
    return value;
  };
}

// Common internal logic for `isArrayLike` and `isBufferLike`.
function createSizePropertyCheck(getSizeProperty) {
  return function(collection) {
    var sizeProperty = getSizeProperty(collection);
    return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX;
  }
}

// Internal helper to generate a function to obtain property `key` from `obj`.
function shallowProperty(key) {
  return function(obj) {
    return obj == null ? void 0 : obj[key];
  };
}

// Internal helper to obtain the `byteLength` property of an object.
var getByteLength = shallowProperty('byteLength');

// Internal helper to determine whether we should spend extensive checks against
// `ArrayBuffer` et al.
var isBufferLike = createSizePropertyCheck(getByteLength);

// Is a given value a typed array?
var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;
function isTypedArray(obj) {
  // `ArrayBuffer.isView` is the most future-proof, so use it when available.
  // Otherwise, fall back on the above regular expression.
  return nativeIsView ? (nativeIsView(obj) && !isDataView$1(obj)) :
                isBufferLike(obj) && typedArrayPattern.test(toString.call(obj));
}

var isTypedArray$1 = supportsArrayBuffer ? isTypedArray : constant(false);

// Internal helper to obtain the `length` property of an object.
var getLength = shallowProperty('length');

// Internal helper to create a simple lookup structure.
// `collectNonEnumProps` used to depend on `_.contains`, but this led to
// circular imports. `emulatedSet` is a one-off solution that only works for
// arrays of strings.
function emulatedSet(keys) {
  var hash = {};
  for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true;
  return {
    contains: function(key) { return hash[key]; },
    push: function(key) {
      hash[key] = true;
      return keys.push(key);
    }
  };
}

// Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't
// be iterated by `for key in ...` and thus missed. Extends `keys` in place if
// needed.
function collectNonEnumProps(obj, keys) {
  keys = emulatedSet(keys);
  var nonEnumIdx = nonEnumerableProps.length;
  var constructor = obj.constructor;
  var proto = isFunction$1(constructor) && constructor.prototype || ObjProto;

  // Constructor is a special case.
  var prop = 'constructor';
  if (has$1(obj, prop) && !keys.contains(prop)) keys.push(prop);

  while (nonEnumIdx--) {
    prop = nonEnumerableProps[nonEnumIdx];
    if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) {
      keys.push(prop);
    }
  }
}

// Retrieve the names of an object's own properties.
// Delegates to **ECMAScript 5**'s native `Object.keys`.
function keys(obj) {
  if (!isObject(obj)) return [];
  if (nativeKeys) return nativeKeys(obj);
  var keys = [];
  for (var key in obj) if (has$1(obj, key)) keys.push(key);
  // Ahem, IE < 9.
  if (hasEnumBug) collectNonEnumProps(obj, keys);
  return keys;
}

// Is a given array, string, or object empty?
// An "empty" object has no enumerable own-properties.
function isEmpty(obj) {
  if (obj == null) return true;
  // Skip the more expensive `toString`-based type checks if `obj` has no
  // `.length`.
  var length = getLength(obj);
  if (typeof length == 'number' && (
    isArray(obj) || isString(obj) || isArguments$1(obj)
  )) return length === 0;
  return getLength(keys(obj)) === 0;
}

// Returns whether an object has a given set of `key:value` pairs.
function isMatch(object, attrs) {
  var _keys = keys(attrs), length = _keys.length;
  if (object == null) return !length;
  var obj = Object(object);
  for (var i = 0; i < length; i++) {
    var key = _keys[i];
    if (attrs[key] !== obj[key] || !(key in obj)) return false;
  }
  return true;
}

// If Underscore is called as a function, it returns a wrapped object that can
// be used OO-style. This wrapper holds altered versions of all functions added
// through `_.mixin`. Wrapped objects may be chained.
function _$1(obj) {
  if (obj instanceof _$1) return obj;
  if (!(this instanceof _$1)) return new _$1(obj);
  this._wrapped = obj;
}

_$1.VERSION = VERSION;

// Extracts the result from a wrapped and chained object.
_$1.prototype.value = function() {
  return this._wrapped;
};

// Provide unwrapping proxies for some methods used in engine operations
// such as arithmetic and JSON stringification.
_$1.prototype.valueOf = _$1.prototype.toJSON = _$1.prototype.value;

_$1.prototype.toString = function() {
  return String(this._wrapped);
};

// Internal function to wrap or shallow-copy an ArrayBuffer,
// typed array or DataView to a new view, reusing the buffer.
function toBufferView(bufferSource) {
  return new Uint8Array(
    bufferSource.buffer || bufferSource,
    bufferSource.byteOffset || 0,
    getByteLength(bufferSource)
  );
}

// We use this string twice, so give it a name for minification.
var tagDataView = '[object DataView]';

// Internal recursive comparison function for `_.isEqual`.
function eq(a, b, aStack, bStack) {
  // Identical objects are equal. `0 === -0`, but they aren't identical.
  // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).
  if (a === b) return a !== 0 || 1 / a === 1 / b;
  // `null` or `undefined` only equal to itself (strict comparison).
  if (a == null || b == null) return false;
  // `NaN`s are equivalent, but non-reflexive.
  if (a !== a) return b !== b;
  // Exhaust primitive checks
  var type = typeof a;
  if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;
  return deepEq(a, b, aStack, bStack);
}

// Internal recursive comparison function for `_.isEqual`.
function deepEq(a, b, aStack, bStack) {
  // Unwrap any wrapped objects.
  if (a instanceof _$1) a = a._wrapped;
  if (b instanceof _$1) b = b._wrapped;
  // Compare `[[Class]]` names.
  var className = toString.call(a);
  if (className !== toString.call(b)) return false;
  // Work around a bug in IE 10 - Edge 13.
  if (hasStringTagBug && className == '[object Object]' && isDataView$1(a)) {
    if (!isDataView$1(b)) return false;
    className = tagDataView;
  }
  switch (className) {
    // These types are compared by value.
    case '[object RegExp]':
      // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')
    case '[object String]':
      // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
      // equivalent to `new String("5")`.
      return '' + a === '' + b;
    case '[object Number]':
      // `NaN`s are equivalent, but non-reflexive.
      // Object(NaN) is equivalent to NaN.
      if (+a !== +a) return +b !== +b;
      // An `egal` comparison is performed for other numeric values.
      return +a === 0 ? 1 / +a === 1 / b : +a === +b;
    case '[object Date]':
    case '[object Boolean]':
      // Coerce dates and booleans to numeric primitive values. Dates are compared by their
      // millisecond representations. Note that invalid dates with millisecond representations
      // of `NaN` are not equivalent.
      return +a === +b;
    case '[object Symbol]':
      return SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b);
    case '[object ArrayBuffer]':
    case tagDataView:
      // Coerce to typed array so we can fall through.
      return deepEq(toBufferView(a), toBufferView(b), aStack, bStack);
  }

  var areArrays = className === '[object Array]';
  if (!areArrays && isTypedArray$1(a)) {
      var byteLength = getByteLength(a);
      if (byteLength !== getByteLength(b)) return false;
      if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) return true;
      areArrays = true;
  }
  if (!areArrays) {
    if (typeof a != 'object' || typeof b != 'object') return false;

    // Objects with different constructors are not equivalent, but `Object`s or `Array`s
    // from different frames are.
    var aCtor = a.constructor, bCtor = b.constructor;
    if (aCtor !== bCtor && !(isFunction$1(aCtor) && aCtor instanceof aCtor &&
                             isFunction$1(bCtor) && bCtor instanceof bCtor)
                        && ('constructor' in a && 'constructor' in b)) {
      return false;
    }
  }
  // Assume equality for cyclic structures. The algorithm for detecting cyclic
  // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.

  // Initializing stack of traversed objects.
  // It's done here since we only need them for objects and arrays comparison.
  aStack = aStack || [];
  bStack = bStack || [];
  var length = aStack.length;
  while (length--) {
    // Linear search. Performance is inversely proportional to the number of
    // unique nested structures.
    if (aStack[length] === a) return bStack[length] === b;
  }

  // Add the first object to the stack of traversed objects.
  aStack.push(a);
  bStack.push(b);

  // Recursively compare objects and arrays.
  if (areArrays) {
    // Compare array lengths to determine if a deep comparison is necessary.
    length = a.length;
    if (length !== b.length) return false;
    // Deep compare the contents, ignoring non-numeric properties.
    while (length--) {
      if (!eq(a[length], b[length], aStack, bStack)) return false;
    }
  } else {
    // Deep compare objects.
    var _keys = keys(a), key;
    length = _keys.length;
    // Ensure that both objects contain the same number of properties before comparing deep equality.
    if (keys(b).length !== length) return false;
    while (length--) {
      // Deep compare each member
      key = _keys[length];
      if (!(has$1(b, key) && eq(a[key], b[key], aStack, bStack))) return false;
    }
  }
  // Remove the first object from the stack of traversed objects.
  aStack.pop();
  bStack.pop();
  return true;
}

// Perform a deep comparison to check if two objects are equal.
function isEqual(a, b) {
  return eq(a, b);
}

// Retrieve all the enumerable property names of an object.
function allKeys(obj) {
  if (!isObject(obj)) return [];
  var keys = [];
  for (var key in obj) keys.push(key);
  // Ahem, IE < 9.
  if (hasEnumBug) collectNonEnumProps(obj, keys);
  return keys;
}

// Since the regular `Object.prototype.toString` type tests don't work for
// some types in IE 11, we use a fingerprinting heuristic instead, based
// on the methods. It's not great, but it's the best we got.
// The fingerprint method lists are defined below.
function ie11fingerprint(methods) {
  var length = getLength(methods);
  return function(obj) {
    if (obj == null) return false;
    // `Map`, `WeakMap` and `Set` have no enumerable keys.
    var keys = allKeys(obj);
    if (getLength(keys)) return false;
    for (var i = 0; i < length; i++) {
      if (!isFunction$1(obj[methods[i]])) return false;
    }
    // If we are testing against `WeakMap`, we need to ensure that
    // `obj` doesn't have a `forEach` method in order to distinguish
    // it from a regular `Map`.
    return methods !== weakMapMethods || !isFunction$1(obj[forEachName]);
  };
}

// In the interest of compact minification, we write
// each string in the fingerprints only once.
var forEachName = 'forEach',
    hasName = 'has',
    commonInit = ['clear', 'delete'],
    mapTail = ['get', hasName, 'set'];

// `Map`, `WeakMap` and `Set` each have slightly different
// combinations of the above sublists.
var mapMethods = commonInit.concat(forEachName, mapTail),
    weakMapMethods = commonInit.concat(mapTail),
    setMethods = ['add'].concat(commonInit, forEachName, hasName);

var isMap = isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map');

var isWeakMap = isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap');

var isSet = isIE11 ? ie11fingerprint(setMethods) : tagTester('Set');

var isWeakSet = tagTester('WeakSet');

// Retrieve the values of an object's properties.
function values(obj) {
  var _keys = keys(obj);
  var length = _keys.length;
  var values = Array(length);
  for (var i = 0; i < length; i++) {
    values[i] = obj[_keys[i]];
  }
  return values;
}

// Convert an object into a list of `[key, value]` pairs.
// The opposite of `_.object` with one argument.
function pairs(obj) {
  var _keys = keys(obj);
  var length = _keys.length;
  var pairs = Array(length);
  for (var i = 0; i < length; i++) {
    pairs[i] = [_keys[i], obj[_keys[i]]];
  }
  return pairs;
}

// Invert the keys and values of an object. The values must be serializable.
function invert(obj) {
  var result = {};
  var _keys = keys(obj);
  for (var i = 0, length = _keys.length; i < length; i++) {
    result[obj[_keys[i]]] = _keys[i];
  }
  return result;
}

// Return a sorted list of the function names available on the object.
function functions(obj) {
  var names = [];
  for (var key in obj) {
    if (isFunction$1(obj[key])) names.push(key);
  }
  return names.sort();
}

// An internal function for creating assigner functions.
function createAssigner(keysFunc, defaults) {
  return function(obj) {
    var length = arguments.length;
    if (defaults) obj = Object(obj);
    if (length < 2 || obj == null) return obj;
    for (var index = 1; index < length; index++) {
      var source = arguments[index],
          keys = keysFunc(source),
          l = keys.length;
      for (var i = 0; i < l; i++) {
        var key = keys[i];
        if (!defaults || obj[key] === void 0) obj[key] = source[key];
      }
    }
    return obj;
  };
}

// Extend a given object with all the properties in passed-in object(s).
var extend = createAssigner(allKeys);

// Assigns a given object with all the own properties in the passed-in
// object(s).
// (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)
var extendOwn = createAssigner(keys);

// Fill in a given object with default properties.
var defaults = createAssigner(allKeys, true);

// Create a naked function reference for surrogate-prototype-swapping.
function ctor() {
  return function(){};
}

// An internal function for creating a new object that inherits from another.
function baseCreate(prototype) {
  if (!isObject(prototype)) return {};
  if (nativeCreate) return nativeCreate(prototype);
  var Ctor = ctor();
  Ctor.prototype = prototype;
  var result = new Ctor;
  Ctor.prototype = null;
  return result;
}

// Creates an object that inherits from the given prototype object.
// If additional properties are provided then they will be added to the
// created object.
function create(prototype, props) {
  var result = baseCreate(prototype);
  if (props) extendOwn(result, props);
  return result;
}

// Create a (shallow-cloned) duplicate of an object.
function clone(obj) {
  if (!isObject(obj)) return obj;
  return isArray(obj) ? obj.slice() : extend({}, obj);
}

// Invokes `interceptor` with the `obj` and then returns `obj`.
// The primary purpose of this method is to "tap into" a method chain, in
// order to perform operations on intermediate results within the chain.
function tap(obj, interceptor) {
  interceptor(obj);
  return obj;
}

// Normalize a (deep) property `path` to array.
// Like `_.iteratee`, this function can be customized.
function toPath$1(path) {
  return isArray(path) ? path : [path];
}
_$1.toPath = toPath$1;

// Internal wrapper for `_.toPath` to enable minification.
// Similar to `cb` for `_.iteratee`.
function toPath(path) {
  return _$1.toPath(path);
}

// Internal function to obtain a nested property in `obj` along `path`.
function deepGet(obj, path) {
  var length = path.length;
  for (var i = 0; i < length; i++) {
    if (obj == null) return void 0;
    obj = obj[path[i]];
  }
  return length ? obj : void 0;
}

// Get the value of the (deep) property on `path` from `object`.
// If any property in `path` does not exist or if the value is
// `undefined`, return `defaultValue` instead.
// The `path` is normalized through `_.toPath`.
function get(object, path, defaultValue) {
  var value = deepGet(object, toPath(path));
  return isUndefined(value) ? defaultValue : value;
}

// Shortcut function for checking if an object has a given property directly on
// itself (in other words, not on a prototype). Unlike the internal `has`
// function, this public version can also traverse nested properties.
function has(obj, path) {
  path = toPath(path);
  var length = path.length;
  for (var i = 0; i < length; i++) {
    var key = path[i];
    if (!has$1(obj, key)) return false;
    obj = obj[key];
  }
  return !!length;
}

// Keep the identity function around for default iteratees.
function identity(value) {
  return value;
}

// Returns a predicate for checking whether an object has a given set of
// `key:value` pairs.
function matcher(attrs) {
  attrs = extendOwn({}, attrs);
  return function(obj) {
    return isMatch(obj, attrs);
  };
}

// Creates a function that, when passed an object, will traverse that object’s
// properties down the given `path`, specified as an array of keys or indices.
function property(path) {
  path = toPath(path);
  return function(obj) {
    return deepGet(obj, path);
  };
}

// Internal function that returns an efficient (for current engines) version
// of the passed-in callback, to be repeatedly applied in other Underscore
// functions.
function optimizeCb(func, context, argCount) {
  if (context === void 0) return func;
  switch (argCount == null ? 3 : argCount) {
    case 1: return function(value) {
      return func.call(context, value);
    };
    // The 2-argument case is omitted because we’re not using it.
    case 3: return function(value, index, collection) {
      return func.call(context, value, index, collection);
    };
    case 4: return function(accumulator, value, index, collection) {
      return func.call(context, accumulator, value, index, collection);
    };
  }
  return function() {
    return func.apply(context, arguments);
  };
}

// An internal function to generate callbacks that can be applied to each
// element in a collection, returning the desired result — either `_.identity`,
// an arbitrary callback, a property matcher, or a property accessor.
function baseIteratee(value, context, argCount) {
  if (value == null) return identity;
  if (isFunction$1(value)) return optimizeCb(value, context, argCount);
  if (isObject(value) && !isArray(value)) return matcher(value);
  return property(value);
}

// External wrapper for our callback generator. Users may customize
// `_.iteratee` if they want additional predicate/iteratee shorthand styles.
// This abstraction hides the internal-only `argCount` argument.
function iteratee(value, context) {
  return baseIteratee(value, context, Infinity);
}
_$1.iteratee = iteratee;

// The function we call internally to generate a callback. It invokes
// `_.iteratee` if overridden, otherwise `baseIteratee`.
function cb(value, context, argCount) {
  if (_$1.iteratee !== iteratee) return _$1.iteratee(value, context);
  return baseIteratee(value, context, argCount);
}

// Returns the results of applying the `iteratee` to each element of `obj`.
// In contrast to `_.map` it returns an object.
function mapObject(obj, iteratee, context) {
  iteratee = cb(iteratee, context);
  var _keys = keys(obj),
      length = _keys.length,
      results = {};
  for (var index = 0; index < length; index++) {
    var currentKey = _keys[index];
    results[currentKey] = iteratee(obj[currentKey], currentKey, obj);
  }
  return results;
}

// Predicate-generating function. Often useful outside of Underscore.
function noop(){}

// Generates a function for a given object that returns a given property.
function propertyOf(obj) {
  if (obj == null) return noop;
  return function(path) {
    return get(obj, path);
  };
}

// Run a function **n** times.
function times(n, iteratee, context) {
  var accum = Array(Math.max(0, n));
  iteratee = optimizeCb(iteratee, context, 1);
  for (var i = 0; i < n; i++) accum[i] = iteratee(i);
  return accum;
}

// Return a random integer between `min` and `max` (inclusive).
function random(min, max) {
  if (max == null) {
    max = min;
    min = 0;
  }
  return min + Math.floor(Math.random() * (max - min + 1));
}

// A (possibly faster) way to get the current timestamp as an integer.
var now = Date.now || function() {
  return new Date().getTime();
};

// Internal helper to generate functions for escaping and unescaping strings
// to/from HTML interpolation.
function createEscaper(map) {
  var escaper = function(match) {
    return map[match];
  };
  // Regexes for identifying a key that needs to be escaped.
  var source = '(?:' + keys(map).join('|') + ')';
  var testRegexp = RegExp(source);
  var replaceRegexp = RegExp(source, 'g');
  return function(string) {
    string = string == null ? '' : '' + string;
    return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string;
  };
}

// Internal list of HTML entities for escaping.
var escapeMap = {
  '&': '&amp;',
  '<': '&lt;',
  '>': '&gt;',
  '"': '&quot;',
  "'": '&#x27;',
  '`': '&#x60;'
};

// Function for escaping strings to HTML interpolation.
var _escape = createEscaper(escapeMap);

// Internal list of HTML entities for unescaping.
var unescapeMap = invert(escapeMap);

// Function for unescaping strings from HTML interpolation.
var _unescape = createEscaper(unescapeMap);

// By default, Underscore uses ERB-style template delimiters. Change the
// following template settings to use alternative delimiters.
var templateSettings = _$1.templateSettings = {
  evaluate: /<%([\s\S]+?)%>/g,
  interpolate: /<%=([\s\S]+?)%>/g,
  escape: /<%-([\s\S]+?)%>/g
};

// When customizing `_.templateSettings`, if you don't want to define an
// interpolation, evaluation or escaping regex, we need one that is
// guaranteed not to match.
var noMatch = /(.)^/;

// Certain characters need to be escaped so that they can be put into a
// string literal.
var escapes = {
  "'": "'",
  '\\': '\\',
  '\r': 'r',
  '\n': 'n',
  '\u2028': 'u2028',
  '\u2029': 'u2029'
};

var escapeRegExp = /\\|'|\r|\n|\u2028|\u2029/g;

function escapeChar(match) {
  return '\\' + escapes[match];
}

// In order to prevent third-party code injection through
// `_.templateSettings.variable`, we test it against the following regular
// expression. It is intentionally a bit more liberal than just matching valid
// identifiers, but still prevents possible loopholes through defaults or
// destructuring assignment.
var bareIdentifier = /^\s*(\w|\$)+\s*$/;

// JavaScript micro-templating, similar to John Resig's implementation.
// Underscore templating handles arbitrary delimiters, preserves whitespace,
// and correctly escapes quotes within interpolated code.
// NB: `oldSettings` only exists for backwards compatibility.
function template(text, settings, oldSettings) {
  if (!settings && oldSettings) settings = oldSettings;
  settings = defaults({}, settings, _$1.templateSettings);

  // Combine delimiters into one regular expression via alternation.
  var matcher = RegExp([
    (settings.escape || noMatch).source,
    (settings.interpolate || noMatch).source,
    (settings.evaluate || noMatch).source
  ].join('|') + '|$', 'g');

  // Compile the template source, escaping string literals appropriately.
  var index = 0;
  var source = "__p+='";
  text.replace(matcher, function(match, escape, interpolate, evaluate, offset) {
    source += text.slice(index, offset).replace(escapeRegExp, escapeChar);
    index = offset + match.length;

    if (escape) {
      source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'";
    } else if (interpolate) {
      source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'";
    } else if (evaluate) {
      source += "';\n" + evaluate + "\n__p+='";
    }

    // Adobe VMs need the match returned to produce the correct offset.
    return match;
  });
  source += "';\n";

  var argument = settings.variable;
  if (argument) {
    // Insure against third-party code injection. (CVE-2021-23358)
    if (!bareIdentifier.test(argument)) throw new Error(
      'variable is not a bare identifier: ' + argument
    );
  } else {
    // If a variable is not specified, place data values in local scope.
    source = 'with(obj||{}){\n' + source + '}\n';
    argument = 'obj';
  }

  source = "var __t,__p='',__j=Array.prototype.join," +
    "print=function(){__p+=__j.call(arguments,'');};\n" +
    source + 'return __p;\n';

  var render;
  try {
    render = new Function(argument, '_', source);
  } catch (e) {
    e.source = source;
    throw e;
  }

  var template = function(data) {
    return render.call(this, data, _$1);
  };

  // Provide the compiled source as a convenience for precompilation.
  template.source = 'function(' + argument + '){\n' + source + '}';

  return template;
}

// Traverses the children of `obj` along `path`. If a child is a function, it
// is invoked with its parent as context. Returns the value of the final
// child, or `fallback` if any child is undefined.
function result(obj, path, fallback) {
  path = toPath(path);
  var length = path.length;
  if (!length) {
    return isFunction$1(fallback) ? fallback.call(obj) : fallback;
  }
  for (var i = 0; i < length; i++) {
    var prop = obj == null ? void 0 : obj[path[i]];
    if (prop === void 0) {
      prop = fallback;
      i = length; // Ensure we don't continue iterating.
    }
    obj = isFunction$1(prop) ? prop.call(obj) : prop;
  }
  return obj;
}

// Generate a unique integer id (unique within the entire client session).
// Useful for temporary DOM ids.
var idCounter = 0;
function uniqueId(prefix) {
  var id = ++idCounter + '';
  return prefix ? prefix + id : id;
}

// Start chaining a wrapped Underscore object.
function chain(obj) {
  var instance = _$1(obj);
  instance._chain = true;
  return instance;
}

// Internal function to execute `sourceFunc` bound to `context` with optional
// `args`. Determines whether to execute a function as a constructor or as a
// normal function.
function executeBound(sourceFunc, boundFunc, context, callingContext, args) {
  if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);
  var self = baseCreate(sourceFunc.prototype);
  var result = sourceFunc.apply(self, args);
  if (isObject(result)) return result;
  return self;
}

// Partially apply a function by creating a version that has had some of its
// arguments pre-filled, without changing its dynamic `this` context. `_` acts
// as a placeholder by default, allowing any combination of arguments to be
// pre-filled. Set `_.partial.placeholder` for a custom placeholder argument.
var partial = restArguments(function(func, boundArgs) {
  var placeholder = partial.placeholder;
  var bound = function() {
    var position = 0, length = boundArgs.length;
    var args = Array(length);
    for (var i = 0; i < length; i++) {
      args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i];
    }
    while (position < arguments.length) args.push(arguments[position++]);
    return executeBound(func, bound, this, this, args);
  };
  return bound;
});

partial.placeholder = _$1;

// Create a function bound to a given object (assigning `this`, and arguments,
// optionally).
var bind = restArguments(function(func, context, args) {
  if (!isFunction$1(func)) throw new TypeError('Bind must be called on a function');
  var bound = restArguments(function(callArgs) {
    return executeBound(func, bound, context, this, args.concat(callArgs));
  });
  return bound;
});

// Internal helper for collection methods to determine whether a collection
// should be iterated as an array or as an object.
// Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
// Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094
var isArrayLike = createSizePropertyCheck(getLength);

// Internal implementation of a recursive `flatten` function.
function flatten$1(input, depth, strict, output) {
  output = output || [];
  if (!depth && depth !== 0) {
    depth = Infinity;
  } else if (depth <= 0) {
    return output.concat(input);
  }
  var idx = output.length;
  for (var i = 0, length = getLength(input); i < length; i++) {
    var value = input[i];
    if (isArrayLike(value) && (isArray(value) || isArguments$1(value))) {
      // Flatten current level of array or arguments object.
      if (depth > 1) {
        flatten$1(value, depth - 1, strict, output);
        idx = output.length;
      } else {
        var j = 0, len = value.length;
        while (j < len) output[idx++] = value[j++];
      }
    } else if (!strict) {
      output[idx++] = value;
    }
  }
  return output;
}

// Bind a number of an object's methods to that object. Remaining arguments
// are the method names to be bound. Useful for ensuring that all callbacks
// defined on an object belong to it.
var bindAll = restArguments(function(obj, keys) {
  keys = flatten$1(keys, false, false);
  var index = keys.length;
  if (index < 1) throw new Error('bindAll must be passed function names');
  while (index--) {
    var key = keys[index];
    obj[key] = bind(obj[key], obj);
  }
  return obj;
});

// Memoize an expensive function by storing its results.
function memoize(func, hasher) {
  var memoize = function(key) {
    var cache = memoize.cache;
    var address = '' + (hasher ? hasher.apply(this, arguments) : key);
    if (!has$1(cache, address)) cache[address] = func.apply(this, arguments);
    return cache[address];
  };
  memoize.cache = {};
  return memoize;
}

// Delays a function for the given number of milliseconds, and then calls
// it with the arguments supplied.
var delay = restArguments(function(func, wait, args) {
  return setTimeout(function() {
    return func.apply(null, args);
  }, wait);
});

// Defers a function, scheduling it to run after the current call stack has
// cleared.
var defer = partial(delay, _$1, 1);

// Returns a function, that, when invoked, will only be triggered at most once
// during a given window of time. Normally, the throttled function will run
// as much as it can, without ever going more than once per `wait` duration;
// but if you'd like to disable the execution on the leading edge, pass
// `{leading: false}`. To disable execution on the trailing edge, ditto.
function throttle(func, wait, options) {
  var timeout, context, args, result;
  var previous = 0;
  if (!options) options = {};

  var later = function() {
    previous = options.leading === false ? 0 : now();
    timeout = null;
    result = func.apply(context, args);
    if (!timeout) context = args = null;
  };

  var throttled = function() {
    var _now = now();
    if (!previous && options.leading === false) previous = _now;
    var remaining = wait - (_now - previous);
    context = this;
    args = arguments;
    if (remaining <= 0 || remaining > wait) {
      if (timeout) {
        clearTimeout(timeout);
        timeout = null;
      }
      previous = _now;
      result = func.apply(context, args);
      if (!timeout) context = args = null;
    } else if (!timeout && options.trailing !== false) {
      timeout = setTimeout(later, remaining);
    }
    return result;
  };

  throttled.cancel = function() {
    clearTimeout(timeout);
    previous = 0;
    timeout = context = args = null;
  };

  return throttled;
}

// When a sequence of calls of the returned function ends, the argument
// function is triggered. The end of a sequence is defined by the `wait`
// parameter. If `immediate` is passed, the argument function will be
// triggered at the beginning of the sequence instead of at the end.
function debounce(func, wait, immediate) {
  var timeout, previous, args, result, context;

  var later = function() {
    var passed = now() - previous;
    if (wait > passed) {
      timeout = setTimeout(later, wait - passed);
    } else {
      timeout = null;
      if (!immediate) result = func.apply(context, args);
      // This check is needed because `func` can recursively invoke `debounced`.
      if (!timeout) args = context = null;
    }
  };

  var debounced = restArguments(function(_args) {
    context = this;
    args = _args;
    previous = now();
    if (!timeout) {
      timeout = setTimeout(later, wait);
      if (immediate) result = func.apply(context, args);
    }
    return result;
  });

  debounced.cancel = function() {
    clearTimeout(timeout);
    timeout = args = context = null;
  };

  return debounced;
}

// Returns the first function passed as an argument to the second,
// allowing you to adjust arguments, run code before and after, and
// conditionally execute the original function.
function wrap(func, wrapper) {
  return partial(wrapper, func);
}

// Returns a negated version of the passed-in predicate.
function negate(predicate) {
  return function() {
    return !predicate.apply(this, arguments);
  };
}

// Returns a function that is the composition of a list of functions, each
// consuming the return value of the function that follows.
function compose() {
  var args = arguments;
  var start = args.length - 1;
  return function() {
    var i = start;
    var result = args[start].apply(this, arguments);
    while (i--) result = args[i].call(this, result);
    return result;
  };
}

// Returns a function that will only be executed on and after the Nth call.
function after(times, func) {
  return function() {
    if (--times < 1) {
      return func.apply(this, arguments);
    }
  };
}

// Returns a function that will only be executed up to (but not including) the
// Nth call.
function before(times, func) {
  var memo;
  return function() {
    if (--times > 0) {
      memo = func.apply(this, arguments);
    }
    if (times <= 1) func = null;
    return memo;
  };
}

// Returns a function that will be executed at most one time, no matter how
// often you call it. Useful for lazy initialization.
var once = partial(before, 2);

// Returns the first key on an object that passes a truth test.
function findKey(obj, predicate, context) {
  predicate = cb(predicate, context);
  var _keys = keys(obj), key;
  for (var i = 0, length = _keys.length; i < length; i++) {
    key = _keys[i];
    if (predicate(obj[key], key, obj)) return key;
  }
}

// Internal function to generate `_.findIndex` and `_.findLastIndex`.
function createPredicateIndexFinder(dir) {
  return function(array, predicate, context) {
    predicate = cb(predicate, context);
    var length = getLength(array);
    var index = dir > 0 ? 0 : length - 1;
    for (; index >= 0 && index < length; index += dir) {
      if (predicate(array[index], index, array)) return index;
    }
    return -1;
  };
}

// Returns the first index on an array-like that passes a truth test.
var findIndex = createPredicateIndexFinder(1);

// Returns the last index on an array-like that passes a truth test.
var findLastIndex = createPredicateIndexFinder(-1);

// Use a comparator function to figure out the smallest index at which
// an object should be inserted so as to maintain order. Uses binary search.
function sortedIndex(array, obj, iteratee, context) {
  iteratee = cb(iteratee, context, 1);
  var value = iteratee(obj);
  var low = 0, high = getLength(array);
  while (low < high) {
    var mid = Math.floor((low + high) / 2);
    if (iteratee(array[mid]) < value) low = mid + 1; else high = mid;
  }
  return low;
}

// Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions.
function createIndexFinder(dir, predicateFind, sortedIndex) {
  return function(array, item, idx) {
    var i = 0, length = getLength(array);
    if (typeof idx == 'number') {
      if (dir > 0) {
        i = idx >= 0 ? idx : Math.max(idx + length, i);
      } else {
        length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1;
      }
    } else if (sortedIndex && idx && length) {
      idx = sortedIndex(array, item);
      return array[idx] === item ? idx : -1;
    }
    if (item !== item) {
      idx = predicateFind(slice.call(array, i, length), isNaN$1);
      return idx >= 0 ? idx + i : -1;
    }
    for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) {
      if (array[idx] === item) return idx;
    }
    return -1;
  };
}

// Return the position of the first occurrence of an item in an array,
// or -1 if the item is not included in the array.
// If the array is large and already in sort order, pass `true`
// for **isSorted** to use binary search.
var indexOf = createIndexFinder(1, findIndex, sortedIndex);

// Return the position of the last occurrence of an item in an array,
// or -1 if the item is not included in the array.
var lastIndexOf = createIndexFinder(-1, findLastIndex);

// Return the first value which passes a truth test.
function find(obj, predicate, context) {
  var keyFinder = isArrayLike(obj) ? findIndex : findKey;
  var key = keyFinder(obj, predicate, context);
  if (key !== void 0 && key !== -1) return obj[key];
}

// Convenience version of a common use case of `_.find`: getting the first
// object containing specific `key:value` pairs.
function findWhere(obj, attrs) {
  return find(obj, matcher(attrs));
}

// The cornerstone for collection functions, an `each`
// implementation, aka `forEach`.
// Handles raw objects in addition to array-likes. Treats all
// sparse array-likes as if they were dense.
function each(obj, iteratee, context) {
  iteratee = optimizeCb(iteratee, context);
  var i, length;
  if (isArrayLike(obj)) {
    for (i = 0, length = obj.length; i < length; i++) {
      iteratee(obj[i], i, obj);
    }
  } else {
    var _keys = keys(obj);
    for (i = 0, length = _keys.length; i < length; i++) {
      iteratee(obj[_keys[i]], _keys[i], obj);
    }
  }
  return obj;
}

// Return the results of applying the iteratee to each element.
function map(obj, iteratee, context) {
  iteratee = cb(iteratee, context);
  var _keys = !isArrayLike(obj) && keys(obj),
      length = (_keys || obj).length,
      results = Array(length);
  for (var index = 0; index < length; index++) {
    var currentKey = _keys ? _keys[index] : index;
    results[index] = iteratee(obj[currentKey], currentKey, obj);
  }
  return results;
}

// Internal helper to create a reducing function, iterating left or right.
function createReduce(dir) {
  // Wrap code that reassigns argument variables in a separate function than
  // the one that accesses `arguments.length` to avoid a perf hit. (#1991)
  var reducer = function(obj, iteratee, memo, initial) {
    var _keys = !isArrayLike(obj) && keys(obj),
        length = (_keys || obj).length,
        index = dir > 0 ? 0 : length - 1;
    if (!initial) {
      memo = obj[_keys ? _keys[index] : index];
      index += dir;
    }
    for (; index >= 0 && index < length; index += dir) {
      var currentKey = _keys ? _keys[index] : index;
      memo = iteratee(memo, obj[currentKey], currentKey, obj);
    }
    return memo;
  };

  return function(obj, iteratee, memo, context) {
    var initial = arguments.length >= 3;
    return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial);
  };
}

// **Reduce** builds up a single result from a list of values, aka `inject`,
// or `foldl`.
var reduce = createReduce(1);

// The right-associative version of reduce, also known as `foldr`.
var reduceRight = createReduce(-1);

// Return all the elements that pass a truth test.
function filter(obj, predicate, context) {
  var results = [];
  predicate = cb(predicate, context);
  each(obj, function(value, index, list) {
    if (predicate(value, index, list)) results.push(value);
  });
  return results;
}

// Return all the elements for which a truth test fails.
function reject(obj, predicate, context) {
  return filter(obj, negate(cb(predicate)), context);
}

// Determine whether all of the elements pass a truth test.
function every(obj, predicate, context) {
  predicate = cb(predicate, context);
  var _keys = !isArrayLike(obj) && keys(obj),
      length = (_keys || obj).length;
  for (var index = 0; index < length; index++) {
    var currentKey = _keys ? _keys[index] : index;
    if (!predicate(obj[currentKey], currentKey, obj)) return false;
  }
  return true;
}

// Determine if at least one element in the object passes a truth test.
function some(obj, predicate, context) {
  predicate = cb(predicate, context);
  var _keys = !isArrayLike(obj) && keys(obj),
      length = (_keys || obj).length;
  for (var index = 0; index < length; index++) {
    var currentKey = _keys ? _keys[index] : index;
    if (predicate(obj[currentKey], currentKey, obj)) return true;
  }
  return false;
}

// Determine if the array or object contains a given item (using `===`).
function contains(obj, item, fromIndex, guard) {
  if (!isArrayLike(obj)) obj = values(obj);
  if (typeof fromIndex != 'number' || guard) fromIndex = 0;
  return indexOf(obj, item, fromIndex) >= 0;
}

// Invoke a method (with arguments) on every item in a collection.
var invoke = restArguments(function(obj, path, args) {
  var contextPath, func;
  if (isFunction$1(path)) {
    func = path;
  } else {
    path = toPath(path);
    contextPath = path.slice(0, -1);
    path = path[path.length - 1];
  }
  return map(obj, function(context) {
    var method = func;
    if (!method) {
      if (contextPath && contextPath.length) {
        context = deepGet(context, contextPath);
      }
      if (context == null) return void 0;
      method = context[path];
    }
    return method == null ? method : method.apply(context, args);
  });
});

// Convenience version of a common use case of `_.map`: fetching a property.
function pluck(obj, key) {
  return map(obj, property(key));
}

// Convenience version of a common use case of `_.filter`: selecting only
// objects containing specific `key:value` pairs.
function where(obj, attrs) {
  return filter(obj, matcher(attrs));
}

// Return the maximum element (or element-based computation).
function max(obj, iteratee, context) {
  var result = -Infinity, lastComputed = -Infinity,
      value, computed;
  if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) {
    obj = isArrayLike(obj) ? obj : values(obj);
    for (var i = 0, length = obj.length; i < length; i++) {
      value = obj[i];
      if (value != null && value > result) {
        result = value;
      }
    }
  } else {
    iteratee = cb(iteratee, context);
    each(obj, function(v, index, list) {
      computed = iteratee(v, index, list);
      if (computed > lastComputed || computed === -Infinity && result === -Infinity) {
        result = v;
        lastComputed = computed;
      }
    });
  }
  return result;
}

// Return the minimum element (or element-based computation).
function min(obj, iteratee, context) {
  var result = Infinity, lastComputed = Infinity,
      value, computed;
  if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) {
    obj = isArrayLike(obj) ? obj : values(obj);
    for (var i = 0, length = obj.length; i < length; i++) {
      value = obj[i];
      if (value != null && value < result) {
        result = value;
      }
    }
  } else {
    iteratee = cb(iteratee, context);
    each(obj, function(v, index, list) {
      computed = iteratee(v, index, list);
      if (computed < lastComputed || computed === Infinity && result === Infinity) {
        result = v;
        lastComputed = computed;
      }
    });
  }
  return result;
}

// Sample **n** random values from a collection using the modern version of the
// [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle).
// If **n** is not specified, returns a single random element.
// The internal `guard` argument allows it to work with `_.map`.
function sample(obj, n, guard) {
  if (n == null || guard) {
    if (!isArrayLike(obj)) obj = values(obj);
    return obj[random(obj.length - 1)];
  }
  var sample = isArrayLike(obj) ? clone(obj) : values(obj);
  var length = getLength(sample);
  n = Math.max(Math.min(n, length), 0);
  var last = length - 1;
  for (var index = 0; index < n; index++) {
    var rand = random(index, last);
    var temp = sample[index];
    sample[index] = sample[rand];
    sample[rand] = temp;
  }
  return sample.slice(0, n);
}

// Shuffle a collection.
function shuffle(obj) {
  return sample(obj, Infinity);
}

// Sort the object's values by a criterion produced by an iteratee.
function sortBy(obj, iteratee, context) {
  var index = 0;
  iteratee = cb(iteratee, context);
  return pluck(map(obj, function(value, key, list) {
    return {
      value: value,
      index: index++,
      criteria: iteratee(value, key, list)
    };
  }).sort(function(left, right) {
    var a = left.criteria;
    var b = right.criteria;
    if (a !== b) {
      if (a > b || a === void 0) return 1;
      if (a < b || b === void 0) return -1;
    }
    return left.index - right.index;
  }), 'value');
}

// An internal function used for aggregate "group by" operations.
function group(behavior, partition) {
  return function(obj, iteratee, context) {
    var result = partition ? [[], []] : {};
    iteratee = cb(iteratee, context);
    each(obj, function(value, index) {
      var key = iteratee(value, index, obj);
      behavior(result, value, key);
    });
    return result;
  };
}

// Groups the object's values by a criterion. Pass either a string attribute
// to group by, or a function that returns the criterion.
var groupBy = group(function(result, value, key) {
  if (has$1(result, key)) result[key].push(value); else result[key] = [value];
});

// Indexes the object's values by a criterion, similar to `_.groupBy`, but for
// when you know that your index values will be unique.
var indexBy = group(function(result, value, key) {
  result[key] = value;
});

// Counts instances of an object that group by a certain criterion. Pass
// either a string attribute to count by, or a function that returns the
// criterion.
var countBy = group(function(result, value, key) {
  if (has$1(result, key)) result[key]++; else result[key] = 1;
});

// Split a collection into two arrays: one whose elements all pass the given
// truth test, and one whose elements all do not pass the truth test.
var partition = group(function(result, value, pass) {
  result[pass ? 0 : 1].push(value);
}, true);

// Safely create a real, live array from anything iterable.
var reStrSymbol = /[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;
function toArray(obj) {
  if (!obj) return [];
  if (isArray(obj)) return slice.call(obj);
  if (isString(obj)) {
    // Keep surrogate pair characters together.
    return obj.match(reStrSymbol);
  }
  if (isArrayLike(obj)) return map(obj, identity);
  return values(obj);
}

// Return the number of elements in a collection.
function size(obj) {
  if (obj == null) return 0;
  return isArrayLike(obj) ? obj.length : keys(obj).length;
}

// Internal `_.pick` helper function to determine whether `key` is an enumerable
// property name of `obj`.
function keyInObj(value, key, obj) {
  return key in obj;
}

// Return a copy of the object only containing the allowed properties.
var pick = restArguments(function(obj, keys) {
  var result = {}, iteratee = keys[0];
  if (obj == null) return result;
  if (isFunction$1(iteratee)) {
    if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]);
    keys = allKeys(obj);
  } else {
    iteratee = keyInObj;
    keys = flatten$1(keys, false, false);
    obj = Object(obj);
  }
  for (var i = 0, length = keys.length; i < length; i++) {
    var key = keys[i];
    var value = obj[key];
    if (iteratee(value, key, obj)) result[key] = value;
  }
  return result;
});

// Return a copy of the object without the disallowed properties.
var omit = restArguments(function(obj, keys) {
  var iteratee = keys[0], context;
  if (isFunction$1(iteratee)) {
    iteratee = negate(iteratee);
    if (keys.length > 1) context = keys[1];
  } else {
    keys = map(flatten$1(keys, false, false), String);
    iteratee = function(value, key) {
      return !contains(keys, key);
    };
  }
  return pick(obj, iteratee, context);
});

// Returns everything but the last entry of the array. Especially useful on
// the arguments object. Passing **n** will return all the values in
// the array, excluding the last N.
function initial(array, n, guard) {
  return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n)));
}

// Get the first element of an array. Passing **n** will return the first N
// values in the array. The **guard** check allows it to work with `_.map`.
function first(array, n, guard) {
  if (array == null || array.length < 1) return n == null || guard ? void 0 : [];
  if (n == null || guard) return array[0];
  return initial(array, array.length - n);
}

// Returns everything but the first entry of the `array`. Especially useful on
// the `arguments` object. Passing an **n** will return the rest N values in the
// `array`.
function rest(array, n, guard) {
  return slice.call(array, n == null || guard ? 1 : n);
}

// Get the last element of an array. Passing **n** will return the last N
// values in the array.
function last(array, n, guard) {
  if (array == null || array.length < 1) return n == null || guard ? void 0 : [];
  if (n == null || guard) return array[array.length - 1];
  return rest(array, Math.max(0, array.length - n));
}

// Trim out all falsy values from an array.
function compact(array) {
  return filter(array, Boolean);
}

// Flatten out an array, either recursively (by default), or up to `depth`.
// Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively.
function flatten(array, depth) {
  return flatten$1(array, depth, false);
}

// Take the difference between one array and a number of other arrays.
// Only the elements present in just the first array will remain.
var difference = restArguments(function(array, rest) {
  rest = flatten$1(rest, true, true);
  return filter(array, function(value){
    return !contains(rest, value);
  });
});

// Return a version of the array that does not contain the specified value(s).
var without = restArguments(function(array, otherArrays) {
  return difference(array, otherArrays);
});

// Produce a duplicate-free version of the array. If the array has already
// been sorted, you have the option of using a faster algorithm.
// The faster algorithm will not work with an iteratee if the iteratee
// is not a one-to-one function, so providing an iteratee will disable
// the faster algorithm.
function uniq(array, isSorted, iteratee, context) {
  if (!isBoolean(isSorted)) {
    context = iteratee;
    iteratee = isSorted;
    isSorted = false;
  }
  if (iteratee != null) iteratee = cb(iteratee, context);
  var result = [];
  var seen = [];
  for (var i = 0, length = getLength(array); i < length; i++) {
    var value = array[i],
        computed = iteratee ? iteratee(value, i, array) : value;
    if (isSorted && !iteratee) {
      if (!i || seen !== computed) result.push(value);
      seen = computed;
    } else if (iteratee) {
      if (!contains(seen, computed)) {
        seen.push(computed);
        result.push(value);
      }
    } else if (!contains(result, value)) {
      result.push(value);
    }
  }
  return result;
}

// Produce an array that contains the union: each distinct element from all of
// the passed-in arrays.
var union = restArguments(function(arrays) {
  return uniq(flatten$1(arrays, true, true));
});

// Produce an array that contains every item shared between all the
// passed-in arrays.
function intersection(array) {
  var result = [];
  var argsLength = arguments.length;
  for (var i = 0, length = getLength(array); i < length; i++) {
    var item = array[i];
    if (contains(result, item)) continue;
    var j;
    for (j = 1; j < argsLength; j++) {
      if (!contains(arguments[j], item)) break;
    }
    if (j === argsLength) result.push(item);
  }
  return result;
}

// Complement of zip. Unzip accepts an array of arrays and groups
// each array's elements on shared indices.
function unzip(array) {
  var length = array && max(array, getLength).length || 0;
  var result = Array(length);

  for (var index = 0; index < length; index++) {
    result[index] = pluck(array, index);
  }
  return result;
}

// Zip together multiple lists into a single array -- elements that share
// an index go together.
var zip = restArguments(unzip);

// Converts lists into objects. Pass either a single array of `[key, value]`
// pairs, or two parallel arrays of the same length -- one of keys, and one of
// the corresponding values. Passing by pairs is the reverse of `_.pairs`.
function object(list, values) {
  var result = {};
  for (var i = 0, length = getLength(list); i < length; i++) {
    if (values) {
      result[list[i]] = values[i];
    } else {
      result[list[i][0]] = list[i][1];
    }
  }
  return result;
}

// Generate an integer Array containing an arithmetic progression. A port of
// the native Python `range()` function. See
// [the Python documentation](https://docs.python.org/library/functions.html#range).
function range(start, stop, step) {
  if (stop == null) {
    stop = start || 0;
    start = 0;
  }
  if (!step) {
    step = stop < start ? -1 : 1;
  }

  var length = Math.max(Math.ceil((stop - start) / step), 0);
  var range = Array(length);

  for (var idx = 0; idx < length; idx++, start += step) {
    range[idx] = start;
  }

  return range;
}

// Chunk a single array into multiple arrays, each containing `count` or fewer
// items.
function chunk(array, count) {
  if (count == null || count < 1) return [];
  var result = [];
  var i = 0, length = array.length;
  while (i < length) {
    result.push(slice.call(array, i, i += count));
  }
  return result;
}

// Helper function to continue chaining intermediate results.
function chainResult(instance, obj) {
  return instance._chain ? _$1(obj).chain() : obj;
}

// Add your own custom functions to the Underscore object.
function mixin(obj) {
  each(functions(obj), function(name) {
    var func = _$1[name] = obj[name];
    _$1.prototype[name] = function() {
      var args = [this._wrapped];
      push.apply(args, arguments);
      return chainResult(this, func.apply(_$1, args));
    };
  });
  return _$1;
}

// Add all mutator `Array` functions to the wrapper.
each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
  var method = ArrayProto[name];
  _$1.prototype[name] = function() {
    var obj = this._wrapped;
    if (obj != null) {
      method.apply(obj, arguments);
      if ((name === 'shift' || name === 'splice') && obj.length === 0) {
        delete obj[0];
      }
    }
    return chainResult(this, obj);
  };
});

// Add all accessor `Array` functions to the wrapper.
each(['concat', 'join', 'slice'], function(name) {
  var method = ArrayProto[name];
  _$1.prototype[name] = function() {
    var obj = this._wrapped;
    if (obj != null) obj = method.apply(obj, arguments);
    return chainResult(this, obj);
  };
});

// Named Exports

var allExports = {
  __proto__: null,
  VERSION: VERSION,
  restArguments: restArguments,
  isObject: isObject,
  isNull: isNull,
  isUndefined: isUndefined,
  isBoolean: isBoolean,
  isElement: isElement,
  isString: isString,
  isNumber: isNumber,
  isDate: isDate,
  isRegExp: isRegExp,
  isError: isError,
  isSymbol: isSymbol,
  isArrayBuffer: isArrayBuffer,
  isDataView: isDataView$1,
  isArray: isArray,
  isFunction: isFunction$1,
  isArguments: isArguments$1,
  isFinite: isFinite$1,
  isNaN: isNaN$1,
  isTypedArray: isTypedArray$1,
  isEmpty: isEmpty,
  isMatch: isMatch,
  isEqual: isEqual,
  isMap: isMap,
  isWeakMap: isWeakMap,
  isSet: isSet,
  isWeakSet: isWeakSet,
  keys: keys,
  allKeys: allKeys,
  values: values,
  pairs: pairs,
  invert: invert,
  functions: functions,
  methods: functions,
  extend: extend,
  extendOwn: extendOwn,
  assign: extendOwn,
  defaults: defaults,
  create: create,
  clone: clone,
  tap: tap,
  get: get,
  has: has,
  mapObject: mapObject,
  identity: identity,
  constant: constant,
  noop: noop,
  toPath: toPath$1,
  property: property,
  propertyOf: propertyOf,
  matcher: matcher,
  matches: matcher,
  times: times,
  random: random,
  now: now,
  escape: _escape,
  unescape: _unescape,
  templateSettings: templateSettings,
  template: template,
  result: result,
  uniqueId: uniqueId,
  chain: chain,
  iteratee: iteratee,
  partial: partial,
  bind: bind,
  bindAll: bindAll,
  memoize: memoize,
  delay: delay,
  defer: defer,
  throttle: throttle,
  debounce: debounce,
  wrap: wrap,
  negate: negate,
  compose: compose,
  after: after,
  before: before,
  once: once,
  findKey: findKey,
  findIndex: findIndex,
  findLastIndex: findLastIndex,
  sortedIndex: sortedIndex,
  indexOf: indexOf,
  lastIndexOf: lastIndexOf,
  find: find,
  detect: find,
  findWhere: findWhere,
  each: each,
  forEach: each,
  map: map,
  collect: map,
  reduce: reduce,
  foldl: reduce,
  inject: reduce,
  reduceRight: reduceRight,
  foldr: reduceRight,
  filter: filter,
  select: filter,
  reject: reject,
  every: every,
  all: every,
  some: some,
  any: some,
  contains: contains,
  includes: contains,
  include: contains,
  invoke: invoke,
  pluck: pluck,
  where: where,
  max: max,
  min: min,
  shuffle: shuffle,
  sample: sample,
  sortBy: sortBy,
  groupBy: groupBy,
  indexBy: indexBy,
  countBy: countBy,
  partition: partition,
  toArray: toArray,
  size: size,
  pick: pick,
  omit: omit,
  first: first,
  head: first,
  take: first,
  initial: initial,
  last: last,
  rest: rest,
  tail: rest,
  drop: rest,
  compact: compact,
  flatten: flatten,
  without: without,
  uniq: uniq,
  unique: uniq,
  union: union,
  intersection: intersection,
  difference: difference,
  unzip: unzip,
  transpose: unzip,
  zip: zip,
  object: object,
  range: range,
  chunk: chunk,
  mixin: mixin,
  'default': _$1
};

// Default Export

// Add all of the Underscore functions to the wrapper object.
var _ = mixin(allExports);
// Legacy Node.js API.
_._ = _;

exports.VERSION = VERSION;
exports._ = _;
exports._escape = _escape;
exports._unescape = _unescape;
exports.after = after;
exports.allKeys = allKeys;
exports.before = before;
exports.bind = bind;
exports.bindAll = bindAll;
exports.chain = chain;
exports.chunk = chunk;
exports.clone = clone;
exports.compact = compact;
exports.compose = compose;
exports.constant = constant;
exports.contains = contains;
exports.countBy = countBy;
exports.create = create;
exports.debounce = debounce;
exports.defaults = defaults;
exports.defer = defer;
exports.delay = delay;
exports.difference = difference;
exports.each = each;
exports.every = every;
exports.extend = extend;
exports.extendOwn = extendOwn;
exports.filter = filter;
exports.find = find;
exports.findIndex = findIndex;
exports.findKey = findKey;
exports.findLastIndex = findLastIndex;
exports.findWhere = findWhere;
exports.first = first;
exports.flatten = flatten;
exports.functions = functions;
exports.get = get;
exports.groupBy = groupBy;
exports.has = has;
exports.identity = identity;
exports.indexBy = indexBy;
exports.indexOf = indexOf;
exports.initial = initial;
exports.intersection = intersection;
exports.invert = invert;
exports.invoke = invoke;
exports.isArguments = isArguments$1;
exports.isArray = isArray;
exports.isArrayBuffer = isArrayBuffer;
exports.isBoolean = isBoolean;
exports.isDataView = isDataView$1;
exports.isDate = isDate;
exports.isElement = isElement;
exports.isEmpty = isEmpty;
exports.isEqual = isEqual;
exports.isError = isError;
exports.isFinite = isFinite$1;
exports.isFunction = isFunction$1;
exports.isMap = isMap;
exports.isMatch = isMatch;
exports.isNaN = isNaN$1;
exports.isNull = isNull;
exports.isNumber = isNumber;
exports.isObject = isObject;
exports.isRegExp = isRegExp;
exports.isSet = isSet;
exports.isString = isString;
exports.isSymbol = isSymbol;
exports.isTypedArray = isTypedArray$1;
exports.isUndefined = isUndefined;
exports.isWeakMap = isWeakMap;
exports.isWeakSet = isWeakSet;
exports.iteratee = iteratee;
exports.keys = keys;
exports.last = last;
exports.lastIndexOf = lastIndexOf;
exports.map = map;
exports.mapObject = mapObject;
exports.matcher = matcher;
exports.max = max;
exports.memoize = memoize;
exports.min = min;
exports.mixin = mixin;
exports.negate = negate;
exports.noop = noop;
exports.now = now;
exports.object = object;
exports.omit = omit;
exports.once = once;
exports.pairs = pairs;
exports.partial = partial;
exports.partition = partition;
exports.pick = pick;
exports.pluck = pluck;
exports.property = property;
exports.propertyOf = propertyOf;
exports.random = random;
exports.range = range;
exports.reduce = reduce;
exports.reduceRight = reduceRight;
exports.reject = reject;
exports.rest = rest;
exports.restArguments = restArguments;
exports.result = result;
exports.sample = sample;
exports.shuffle = shuffle;
exports.size = size;
exports.some = some;
exports.sortBy = sortBy;
exports.sortedIndex = sortedIndex;
exports.tap = tap;
exports.template = template;
exports.templateSettings = templateSettings;
exports.throttle = throttle;
exports.times = times;
exports.toArray = toArray;
exports.toPath = toPath$1;
exports.union = union;
exports.uniq = uniq;
exports.uniqueId = uniqueId;
exports.unzip = unzip;
exports.values = values;
exports.where = where;
exports.without = without;
exports.wrap = wrap;
exports.zip = zip;
//# sourceMappingURL=underscore-node-f.cjs.map


/***/ }),

/***/ 83571:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

//     Underscore.js 1.13.1
//     https://underscorejs.org
//     (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors
//     Underscore may be freely distributed under the MIT license.

var underscoreNodeF = __webpack_require__(91641);



module.exports = underscoreNodeF._;
//# sourceMappingURL=underscore-node.cjs.map


/***/ }),

/***/ 66835:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$schema\":\"http://json-schema.org/draft-07/schema#\",\"$id\":\"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#\",\"description\":\"Meta-schema for $data reference (JSON Schema extension proposal)\",\"type\":\"object\",\"required\":[\"$data\"],\"properties\":{\"$data\":{\"type\":\"string\",\"anyOf\":[{\"format\":\"relative-json-pointer\"},{\"format\":\"json-pointer\"}]}},\"additionalProperties\":false}");

/***/ }),

/***/ 81030:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"$id\":\"http://json-schema.org/draft-06/schema#\",\"title\":\"Core schema meta-schema\",\"definitions\":{\"schemaArray\":{\"type\":\"array\",\"minItems\":1,\"items\":{\"$ref\":\"#\"}},\"nonNegativeInteger\":{\"type\":\"integer\",\"minimum\":0},\"nonNegativeIntegerDefault0\":{\"allOf\":[{\"$ref\":\"#/definitions/nonNegativeInteger\"},{\"default\":0}]},\"simpleTypes\":{\"enum\":[\"array\",\"boolean\",\"integer\",\"null\",\"number\",\"object\",\"string\"]},\"stringArray\":{\"type\":\"array\",\"items\":{\"type\":\"string\"},\"uniqueItems\":true,\"default\":[]}},\"type\":[\"object\",\"boolean\"],\"properties\":{\"$id\":{\"type\":\"string\",\"format\":\"uri-reference\"},\"$schema\":{\"type\":\"string\",\"format\":\"uri\"},\"$ref\":{\"type\":\"string\",\"format\":\"uri-reference\"},\"title\":{\"type\":\"string\"},\"description\":{\"type\":\"string\"},\"default\":{},\"examples\":{\"type\":\"array\",\"items\":{}},\"multipleOf\":{\"type\":\"number\",\"exclusiveMinimum\":0},\"maximum\":{\"type\":\"number\"},\"exclusiveMaximum\":{\"type\":\"number\"},\"minimum\":{\"type\":\"number\"},\"exclusiveMinimum\":{\"type\":\"number\"},\"maxLength\":{\"$ref\":\"#/definitions/nonNegativeInteger\"},\"minLength\":{\"$ref\":\"#/definitions/nonNegativeIntegerDefault0\"},\"pattern\":{\"type\":\"string\",\"format\":\"regex\"},\"additionalItems\":{\"$ref\":\"#\"},\"items\":{\"anyOf\":[{\"$ref\":\"#\"},{\"$ref\":\"#/definitions/schemaArray\"}],\"default\":{}},\"maxItems\":{\"$ref\":\"#/definitions/nonNegativeInteger\"},\"minItems\":{\"$ref\":\"#/definitions/nonNegativeIntegerDefault0\"},\"uniqueItems\":{\"type\":\"boolean\",\"default\":false},\"contains\":{\"$ref\":\"#\"},\"maxProperties\":{\"$ref\":\"#/definitions/nonNegativeInteger\"},\"minProperties\":{\"$ref\":\"#/definitions/nonNegativeIntegerDefault0\"},\"required\":{\"$ref\":\"#/definitions/stringArray\"},\"additionalProperties\":{\"$ref\":\"#\"},\"definitions\":{\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#\"},\"default\":{}},\"properties\":{\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#\"},\"default\":{}},\"patternProperties\":{\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#\"},\"default\":{}},\"dependencies\":{\"type\":\"object\",\"additionalProperties\":{\"anyOf\":[{\"$ref\":\"#\"},{\"$ref\":\"#/definitions/stringArray\"}]}},\"propertyNames\":{\"$ref\":\"#\"},\"const\":{},\"enum\":{\"type\":\"array\",\"minItems\":1,\"uniqueItems\":true},\"type\":{\"anyOf\":[{\"$ref\":\"#/definitions/simpleTypes\"},{\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/simpleTypes\"},\"minItems\":1,\"uniqueItems\":true}]},\"format\":{\"type\":\"string\"},\"allOf\":{\"$ref\":\"#/definitions/schemaArray\"},\"anyOf\":{\"$ref\":\"#/definitions/schemaArray\"},\"oneOf\":{\"$ref\":\"#/definitions/schemaArray\"},\"not\":{\"$ref\":\"#\"}},\"default\":{}}");

/***/ }),

/***/ 40038:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$schema\":\"http://json-schema.org/draft-07/schema#\",\"$id\":\"http://json-schema.org/draft-07/schema#\",\"title\":\"Core schema meta-schema\",\"definitions\":{\"schemaArray\":{\"type\":\"array\",\"minItems\":1,\"items\":{\"$ref\":\"#\"}},\"nonNegativeInteger\":{\"type\":\"integer\",\"minimum\":0},\"nonNegativeIntegerDefault0\":{\"allOf\":[{\"$ref\":\"#/definitions/nonNegativeInteger\"},{\"default\":0}]},\"simpleTypes\":{\"enum\":[\"array\",\"boolean\",\"integer\",\"null\",\"number\",\"object\",\"string\"]},\"stringArray\":{\"type\":\"array\",\"items\":{\"type\":\"string\"},\"uniqueItems\":true,\"default\":[]}},\"type\":[\"object\",\"boolean\"],\"properties\":{\"$id\":{\"type\":\"string\",\"format\":\"uri-reference\"},\"$schema\":{\"type\":\"string\",\"format\":\"uri\"},\"$ref\":{\"type\":\"string\",\"format\":\"uri-reference\"},\"$comment\":{\"type\":\"string\"},\"title\":{\"type\":\"string\"},\"description\":{\"type\":\"string\"},\"default\":true,\"readOnly\":{\"type\":\"boolean\",\"default\":false},\"examples\":{\"type\":\"array\",\"items\":true},\"multipleOf\":{\"type\":\"number\",\"exclusiveMinimum\":0},\"maximum\":{\"type\":\"number\"},\"exclusiveMaximum\":{\"type\":\"number\"},\"minimum\":{\"type\":\"number\"},\"exclusiveMinimum\":{\"type\":\"number\"},\"maxLength\":{\"$ref\":\"#/definitions/nonNegativeInteger\"},\"minLength\":{\"$ref\":\"#/definitions/nonNegativeIntegerDefault0\"},\"pattern\":{\"type\":\"string\",\"format\":\"regex\"},\"additionalItems\":{\"$ref\":\"#\"},\"items\":{\"anyOf\":[{\"$ref\":\"#\"},{\"$ref\":\"#/definitions/schemaArray\"}],\"default\":true},\"maxItems\":{\"$ref\":\"#/definitions/nonNegativeInteger\"},\"minItems\":{\"$ref\":\"#/definitions/nonNegativeIntegerDefault0\"},\"uniqueItems\":{\"type\":\"boolean\",\"default\":false},\"contains\":{\"$ref\":\"#\"},\"maxProperties\":{\"$ref\":\"#/definitions/nonNegativeInteger\"},\"minProperties\":{\"$ref\":\"#/definitions/nonNegativeIntegerDefault0\"},\"required\":{\"$ref\":\"#/definitions/stringArray\"},\"additionalProperties\":{\"$ref\":\"#\"},\"definitions\":{\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#\"},\"default\":{}},\"properties\":{\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#\"},\"default\":{}},\"patternProperties\":{\"type\":\"object\",\"additionalProperties\":{\"$ref\":\"#\"},\"propertyNames\":{\"format\":\"regex\"},\"default\":{}},\"dependencies\":{\"type\":\"object\",\"additionalProperties\":{\"anyOf\":[{\"$ref\":\"#\"},{\"$ref\":\"#/definitions/stringArray\"}]}},\"propertyNames\":{\"$ref\":\"#\"},\"const\":true,\"enum\":{\"type\":\"array\",\"items\":true,\"minItems\":1,\"uniqueItems\":true},\"type\":{\"anyOf\":[{\"$ref\":\"#/definitions/simpleTypes\"},{\"type\":\"array\",\"items\":{\"$ref\":\"#/definitions/simpleTypes\"},\"minItems\":1,\"uniqueItems\":true}]},\"format\":{\"type\":\"string\"},\"contentMediaType\":{\"type\":\"string\"},\"contentEncoding\":{\"type\":\"string\"},\"if\":{\"$ref\":\"#\"},\"then\":{\"$ref\":\"#\"},\"else\":{\"$ref\":\"#\"},\"allOf\":{\"$ref\":\"#/definitions/schemaArray\"},\"anyOf\":{\"$ref\":\"#/definitions/schemaArray\"},\"oneOf\":{\"$ref\":\"#/definitions/schemaArray\"},\"not\":{\"$ref\":\"#\"}},\"default\":true}");

/***/ }),

/***/ 51639:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-05-31\",\"endpointPrefix\":\"mgh\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Migration Hub\",\"serviceId\":\"Migration Hub\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSMigrationHub\",\"uid\":\"AWSMigrationHub-2017-05-31\"},\"operations\":{\"AssociateCreatedArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\",\"CreatedArtifact\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"CreatedArtifact\":{\"shape\":\"S4\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateDiscoveredResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\",\"DiscoveredResource\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"DiscoveredResource\":{\"shape\":\"Sa\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateProgressUpdateStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStreamName\"],\"members\":{\"ProgressUpdateStreamName\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProgressUpdateStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStreamName\"],\"members\":{\"ProgressUpdateStreamName\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeApplicationState\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\"],\"members\":{\"ApplicationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationStatus\":{},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"DescribeMigrationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MigrationTask\":{\"type\":\"structure\",\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"Task\":{\"shape\":\"Sq\"},\"UpdateDateTime\":{\"type\":\"timestamp\"},\"ResourceAttributeList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}}}}}}},\"DisassociateCreatedArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\",\"CreatedArtifactName\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"CreatedArtifactName\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateDiscoveredResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\",\"ConfigurationId\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"ConfigurationId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ImportMigrationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListApplicationStates\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationStateList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"ApplicationStatus\":{},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListCreatedArtifacts\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"CreatedArtifactList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}}},\"ListDiscoveredResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DiscoveredResourceList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sa\"}}}}},\"ListMigrationTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResourceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MigrationTaskSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"Status\":{},\"ProgressPercent\":{\"type\":\"integer\"},\"StatusDetail\":{},\"UpdateDateTime\":{\"type\":\"timestamp\"}}}}}}},\"ListProgressUpdateStreams\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProgressUpdateStreamSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProgressUpdateStreamName\":{}}}},\"NextToken\":{}}}},\"NotifyApplicationState\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"Status\"],\"members\":{\"ApplicationId\":{},\"Status\":{},\"UpdateDateTime\":{\"type\":\"timestamp\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"NotifyMigrationTaskState\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\",\"Task\",\"UpdateDateTime\",\"NextUpdateSeconds\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"Task\":{\"shape\":\"Sq\"},\"UpdateDateTime\":{\"type\":\"timestamp\"},\"NextUpdateSeconds\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutResourceAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProgressUpdateStream\",\"MigrationTaskName\",\"ResourceAttributeList\"],\"members\":{\"ProgressUpdateStream\":{},\"MigrationTaskName\":{},\"ResourceAttributeList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{}}},\"Sa\":{\"type\":\"structure\",\"required\":[\"ConfigurationId\"],\"members\":{\"ConfigurationId\":{},\"Description\":{}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{},\"StatusDetail\":{},\"ProgressPercent\":{\"type\":\"integer\"}}},\"Sv\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{}}}}}");

/***/ }),

/***/ 63013:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplicationStates\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ApplicationStateList\"},\"ListCreatedArtifacts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CreatedArtifactList\"},\"ListDiscoveredResources\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DiscoveredResourceList\"},\"ListMigrationTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"MigrationTaskSummaryList\"},\"ListProgressUpdateStreams\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ProgressUpdateStreamSummaryList\"}}}");

/***/ }),

/***/ 24955:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-11-01\",\"endpointPrefix\":\"access-analyzer\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Access Analyzer\",\"serviceId\":\"AccessAnalyzer\",\"signatureVersion\":\"v4\",\"signingName\":\"access-analyzer\",\"uid\":\"accessanalyzer-2019-11-01\"},\"operations\":{\"ApplyArchiveRule\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/archive-rule\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"ruleName\"],\"members\":{\"analyzerArn\":{},\"clientToken\":{\"idempotencyToken\":true},\"ruleName\":{}}},\"idempotent\":true},\"CancelPolicyGeneration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/policy/generation/{jobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"CreateAccessPreview\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/access-preview\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"configurations\"],\"members\":{\"analyzerArn\":{},\"clientToken\":{\"idempotencyToken\":true},\"configurations\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"idempotent\":true},\"CreateAnalyzer\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/analyzer\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\",\"type\"],\"members\":{\"analyzerName\":{},\"archiveRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"filter\",\"ruleName\"],\"members\":{\"filter\":{\"shape\":\"S1l\"},\"ruleName\":{}}}},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S1o\"},\"type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{}}},\"idempotent\":true},\"CreateArchiveRule\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/analyzer/{analyzerName}/archive-rule\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\",\"filter\",\"ruleName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"},\"clientToken\":{\"idempotencyToken\":true},\"filter\":{\"shape\":\"S1l\"},\"ruleName\":{}}},\"idempotent\":true},\"DeleteAnalyzer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/analyzer/{analyzerName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"idempotent\":true},\"DeleteArchiveRule\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/analyzer/{analyzerName}/archive-rule/{ruleName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\",\"ruleName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"},\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}},\"idempotent\":true},\"GetAccessPreview\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/access-preview/{accessPreviewId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"accessPreviewId\",\"analyzerArn\"],\"members\":{\"accessPreviewId\":{\"location\":\"uri\",\"locationName\":\"accessPreviewId\"},\"analyzerArn\":{\"location\":\"querystring\",\"locationName\":\"analyzerArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"accessPreview\"],\"members\":{\"accessPreview\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"configurations\",\"createdAt\",\"id\",\"status\"],\"members\":{\"analyzerArn\":{},\"configurations\":{\"shape\":\"S9\"},\"createdAt\":{\"shape\":\"S1x\"},\"id\":{},\"status\":{},\"statusReason\":{\"shape\":\"S1z\"}}}}}},\"GetAnalyzedResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analyzed-resource\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"resourceArn\"],\"members\":{\"analyzerArn\":{\"location\":\"querystring\",\"locationName\":\"analyzerArn\"},\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resource\":{\"type\":\"structure\",\"required\":[\"analyzedAt\",\"createdAt\",\"isPublic\",\"resourceArn\",\"resourceOwnerAccount\",\"resourceType\",\"updatedAt\"],\"members\":{\"actions\":{\"shape\":\"S25\"},\"analyzedAt\":{\"shape\":\"S1x\"},\"createdAt\":{\"shape\":\"S1x\"},\"error\":{},\"isPublic\":{\"type\":\"boolean\"},\"resourceArn\":{},\"resourceOwnerAccount\":{},\"resourceType\":{},\"sharedVia\":{\"type\":\"list\",\"member\":{}},\"status\":{},\"updatedAt\":{\"shape\":\"S1x\"}}}}}},\"GetAnalyzer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analyzer/{analyzerName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"analyzer\"],\"members\":{\"analyzer\":{\"shape\":\"S2b\"}}}},\"GetArchiveRule\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analyzer/{analyzerName}/archive-rule/{ruleName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\",\"ruleName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"},\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"archiveRule\"],\"members\":{\"archiveRule\":{\"shape\":\"S2h\"}}}},\"GetFinding\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/finding/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"id\"],\"members\":{\"analyzerArn\":{\"location\":\"querystring\",\"locationName\":\"analyzerArn\"},\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"finding\":{\"type\":\"structure\",\"required\":[\"analyzedAt\",\"condition\",\"createdAt\",\"id\",\"resourceOwnerAccount\",\"resourceType\",\"status\",\"updatedAt\"],\"members\":{\"action\":{\"shape\":\"S25\"},\"analyzedAt\":{\"shape\":\"S1x\"},\"condition\":{\"shape\":\"S2m\"},\"createdAt\":{\"shape\":\"S1x\"},\"error\":{},\"id\":{},\"isPublic\":{\"type\":\"boolean\"},\"principal\":{\"shape\":\"S2n\"},\"resource\":{},\"resourceOwnerAccount\":{},\"resourceType\":{},\"sources\":{\"shape\":\"S2o\"},\"status\":{},\"updatedAt\":{\"shape\":\"S1x\"}}}}}},\"GetGeneratedPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policy/generation/{jobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"includeResourcePlaceholders\":{\"location\":\"querystring\",\"locationName\":\"includeResourcePlaceholders\",\"type\":\"boolean\"},\"includeServiceLevelTemplate\":{\"location\":\"querystring\",\"locationName\":\"includeServiceLevelTemplate\",\"type\":\"boolean\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"generatedPolicyResult\",\"jobDetails\"],\"members\":{\"generatedPolicyResult\":{\"type\":\"structure\",\"required\":[\"properties\"],\"members\":{\"generatedPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"policy\"],\"members\":{\"policy\":{}}}},\"properties\":{\"type\":\"structure\",\"required\":[\"principalArn\"],\"members\":{\"cloudTrailProperties\":{\"type\":\"structure\",\"required\":[\"endTime\",\"startTime\",\"trailProperties\"],\"members\":{\"endTime\":{\"shape\":\"S1x\"},\"startTime\":{\"shape\":\"S1x\"},\"trailProperties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"cloudTrailArn\"],\"members\":{\"allRegions\":{\"type\":\"boolean\"},\"cloudTrailArn\":{},\"regions\":{\"shape\":\"S32\"}}}}}},\"isComplete\":{\"type\":\"boolean\"},\"principalArn\":{}}}}},\"jobDetails\":{\"type\":\"structure\",\"required\":[\"jobId\",\"startedOn\",\"status\"],\"members\":{\"completedOn\":{\"shape\":\"S1x\"},\"jobError\":{\"type\":\"structure\",\"required\":[\"code\",\"message\"],\"members\":{\"code\":{},\"message\":{}}},\"jobId\":{},\"startedOn\":{\"shape\":\"S1x\"},\"status\":{}}}}}},\"ListAccessPreviewFindings\":{\"http\":{\"requestUri\":\"/access-preview/{accessPreviewId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"accessPreviewId\",\"analyzerArn\"],\"members\":{\"accessPreviewId\":{\"location\":\"uri\",\"locationName\":\"accessPreviewId\"},\"analyzerArn\":{},\"filter\":{\"shape\":\"S1l\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"findings\"],\"members\":{\"findings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"changeType\",\"createdAt\",\"id\",\"resourceOwnerAccount\",\"resourceType\",\"status\"],\"members\":{\"action\":{\"shape\":\"S25\"},\"changeType\":{},\"condition\":{\"shape\":\"S2m\"},\"createdAt\":{\"shape\":\"S1x\"},\"error\":{},\"existingFindingId\":{},\"existingFindingStatus\":{},\"id\":{},\"isPublic\":{\"type\":\"boolean\"},\"principal\":{\"shape\":\"S2n\"},\"resource\":{},\"resourceOwnerAccount\":{},\"resourceType\":{},\"sources\":{\"shape\":\"S2o\"},\"status\":{}}}},\"nextToken\":{}}}},\"ListAccessPreviews\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/access-preview\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\"],\"members\":{\"analyzerArn\":{\"location\":\"querystring\",\"locationName\":\"analyzerArn\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"accessPreviews\"],\"members\":{\"accessPreviews\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"createdAt\",\"id\",\"status\"],\"members\":{\"analyzerArn\":{},\"createdAt\":{\"shape\":\"S1x\"},\"id\":{},\"status\":{},\"statusReason\":{\"shape\":\"S1z\"}}}},\"nextToken\":{}}}},\"ListAnalyzedResources\":{\"http\":{\"requestUri\":\"/analyzed-resource\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\"],\"members\":{\"analyzerArn\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"resourceType\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"analyzedResources\"],\"members\":{\"analyzedResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"resourceOwnerAccount\",\"resourceType\"],\"members\":{\"resourceArn\":{},\"resourceOwnerAccount\":{},\"resourceType\":{}}}},\"nextToken\":{}}}},\"ListAnalyzers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analyzer\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"type\":{\"location\":\"querystring\",\"locationName\":\"type\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"analyzers\"],\"members\":{\"analyzers\":{\"type\":\"list\",\"member\":{\"shape\":\"S2b\"}},\"nextToken\":{}}}},\"ListArchiveRules\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analyzer/{analyzerName}/archive-rule\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"archiveRules\"],\"members\":{\"archiveRules\":{\"type\":\"list\",\"member\":{\"shape\":\"S2h\"}},\"nextToken\":{}}}},\"ListFindings\":{\"http\":{\"requestUri\":\"/finding\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\"],\"members\":{\"analyzerArn\":{},\"filter\":{\"shape\":\"S1l\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"sort\":{\"type\":\"structure\",\"members\":{\"attributeName\":{},\"orderBy\":{}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"findings\"],\"members\":{\"findings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"analyzedAt\",\"condition\",\"createdAt\",\"id\",\"resourceOwnerAccount\",\"resourceType\",\"status\",\"updatedAt\"],\"members\":{\"action\":{\"shape\":\"S25\"},\"analyzedAt\":{\"shape\":\"S1x\"},\"condition\":{\"shape\":\"S2m\"},\"createdAt\":{\"shape\":\"S1x\"},\"error\":{},\"id\":{},\"isPublic\":{\"type\":\"boolean\"},\"principal\":{\"shape\":\"S2n\"},\"resource\":{},\"resourceOwnerAccount\":{},\"resourceType\":{},\"sources\":{\"shape\":\"S2o\"},\"status\":{},\"updatedAt\":{\"shape\":\"S1x\"}}}},\"nextToken\":{}}}},\"ListPolicyGenerations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policy/generation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"principalArn\":{\"location\":\"querystring\",\"locationName\":\"principalArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"policyGenerations\"],\"members\":{\"nextToken\":{},\"policyGenerations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jobId\",\"principalArn\",\"startedOn\",\"status\"],\"members\":{\"completedOn\":{\"shape\":\"S1x\"},\"jobId\":{},\"principalArn\":{},\"startedOn\":{\"shape\":\"S1x\"},\"status\":{}}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1o\"}}}},\"StartPolicyGeneration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/policy/generation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"policyGenerationDetails\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"cloudTrailDetails\":{\"type\":\"structure\",\"required\":[\"accessRole\",\"startTime\",\"trails\"],\"members\":{\"accessRole\":{},\"endTime\":{\"shape\":\"S1x\"},\"startTime\":{\"shape\":\"S1x\"},\"trails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"cloudTrailArn\"],\"members\":{\"allRegions\":{\"type\":\"boolean\"},\"cloudTrailArn\":{},\"regions\":{\"shape\":\"S32\"}}}}}},\"policyGenerationDetails\":{\"type\":\"structure\",\"required\":[\"principalArn\"],\"members\":{\"principalArn\":{}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{}}},\"idempotent\":true},\"StartResourceScan\":{\"http\":{\"requestUri\":\"/resource/scan\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"resourceArn\"],\"members\":{\"analyzerArn\":{},\"resourceArn\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateArchiveRule\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/analyzer/{analyzerName}/archive-rule/{ruleName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerName\",\"filter\",\"ruleName\"],\"members\":{\"analyzerName\":{\"location\":\"uri\",\"locationName\":\"analyzerName\"},\"clientToken\":{\"idempotencyToken\":true},\"filter\":{\"shape\":\"S1l\"},\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}},\"idempotent\":true},\"UpdateFindings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/finding\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"analyzerArn\",\"status\"],\"members\":{\"analyzerArn\":{},\"clientToken\":{\"idempotencyToken\":true},\"ids\":{\"type\":\"list\",\"member\":{}},\"resourceArn\":{},\"status\":{}}},\"idempotent\":true},\"ValidatePolicy\":{\"http\":{\"requestUri\":\"/policy/validation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"policyDocument\",\"policyType\"],\"members\":{\"locale\":{},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"policyDocument\":{},\"policyType\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"findings\"],\"members\":{\"findings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"findingDetails\",\"findingType\",\"issueCode\",\"learnMoreLink\",\"locations\"],\"members\":{\"findingDetails\":{},\"findingType\":{},\"issueCode\":{},\"learnMoreLink\":{},\"locations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"path\",\"span\"],\"members\":{\"path\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"index\":{\"type\":\"integer\"},\"key\":{},\"substring\":{\"type\":\"structure\",\"required\":[\"length\",\"start\"],\"members\":{\"length\":{\"type\":\"integer\"},\"start\":{\"type\":\"integer\"}}},\"value\":{}},\"union\":true}},\"span\":{\"type\":\"structure\",\"required\":[\"end\",\"start\"],\"members\":{\"end\":{\"shape\":\"S54\"},\"start\":{\"shape\":\"S54\"}}}}}}}}},\"nextToken\":{}}}}},\"shapes\":{\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"iamRole\":{\"type\":\"structure\",\"members\":{\"trustPolicy\":{}}},\"kmsKey\":{\"type\":\"structure\",\"members\":{\"grants\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"granteePrincipal\",\"issuingAccount\",\"operations\"],\"members\":{\"constraints\":{\"type\":\"structure\",\"members\":{\"encryptionContextEquals\":{\"shape\":\"Si\"},\"encryptionContextSubset\":{\"shape\":\"Si\"}}},\"granteePrincipal\":{},\"issuingAccount\":{},\"operations\":{\"type\":\"list\",\"member\":{}},\"retiringPrincipal\":{}}}},\"keyPolicies\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"s3Bucket\":{\"type\":\"structure\",\"members\":{\"accessPoints\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"accessPointPolicy\":{},\"networkOrigin\":{\"type\":\"structure\",\"members\":{\"internetConfiguration\":{\"type\":\"structure\",\"members\":{}},\"vpcConfiguration\":{\"type\":\"structure\",\"required\":[\"vpcId\"],\"members\":{\"vpcId\":{}}}},\"union\":true},\"publicAccessBlock\":{\"shape\":\"S12\"}}}},\"bucketAclGrants\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"grantee\",\"permission\"],\"members\":{\"grantee\":{\"type\":\"structure\",\"members\":{\"id\":{},\"uri\":{}},\"union\":true},\"permission\":{}}}},\"bucketPolicy\":{},\"bucketPublicAccessBlock\":{\"shape\":\"S12\"}}},\"secretsManagerSecret\":{\"type\":\"structure\",\"members\":{\"kmsKeyId\":{},\"secretPolicy\":{}}},\"sqsQueue\":{\"type\":\"structure\",\"members\":{\"queuePolicy\":{}}}},\"union\":true}},\"Si\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S12\":{\"type\":\"structure\",\"required\":[\"ignorePublicAcls\",\"restrictPublicBuckets\"],\"members\":{\"ignorePublicAcls\":{\"type\":\"boolean\"},\"restrictPublicBuckets\":{\"type\":\"boolean\"}}},\"S1l\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"contains\":{\"shape\":\"S1n\"},\"eq\":{\"shape\":\"S1n\"},\"exists\":{\"type\":\"boolean\"},\"neq\":{\"shape\":\"S1n\"}}}},\"S1n\":{\"type\":\"list\",\"member\":{}},\"S1o\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1x\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S1z\":{\"type\":\"structure\",\"required\":[\"code\"],\"members\":{\"code\":{}}},\"S25\":{\"type\":\"list\",\"member\":{}},\"S2b\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"name\",\"status\",\"type\"],\"members\":{\"arn\":{},\"createdAt\":{\"shape\":\"S1x\"},\"lastResourceAnalyzed\":{},\"lastResourceAnalyzedAt\":{\"shape\":\"S1x\"},\"name\":{},\"status\":{},\"statusReason\":{\"type\":\"structure\",\"required\":[\"code\"],\"members\":{\"code\":{}}},\"tags\":{\"shape\":\"S1o\"},\"type\":{}}},\"S2h\":{\"type\":\"structure\",\"required\":[\"createdAt\",\"filter\",\"ruleName\",\"updatedAt\"],\"members\":{\"createdAt\":{\"shape\":\"S1x\"},\"filter\":{\"shape\":\"S1l\"},\"ruleName\":{},\"updatedAt\":{\"shape\":\"S1x\"}}},\"S2m\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2n\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"detail\":{\"type\":\"structure\",\"members\":{\"accessPointArn\":{}}},\"type\":{}}}},\"S32\":{\"type\":\"list\",\"member\":{}},\"S54\":{\"type\":\"structure\",\"required\":[\"column\",\"line\",\"offset\"],\"members\":{\"column\":{\"type\":\"integer\"},\"line\":{\"type\":\"integer\"},\"offset\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 7997:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccessPreviewFindings\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"findings\"},\"ListAccessPreviews\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"accessPreviews\"},\"ListAnalyzedResources\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"analyzedResources\"},\"ListAnalyzers\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"analyzers\"},\"ListArchiveRules\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"archiveRules\"},\"ListFindings\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"findings\"},\"ListPolicyGenerations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"policyGenerations\"},\"ValidatePolicy\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"findings\"}}}");

/***/ }),

/***/ 22335:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-12-08\",\"endpointPrefix\":\"acm\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"ACM\",\"serviceFullName\":\"AWS Certificate Manager\",\"serviceId\":\"ACM\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CertificateManager\",\"uid\":\"acm-2015-12-08\"},\"operations\":{\"AddTagsToCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\",\"Tags\"],\"members\":{\"CertificateArn\":{},\"Tags\":{\"shape\":\"S3\"}}}},\"DeleteCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}}},\"DescribeCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"DomainName\":{},\"SubjectAlternativeNames\":{\"shape\":\"Sc\"},\"DomainValidationOptions\":{\"shape\":\"Sd\"},\"Serial\":{},\"Subject\":{},\"Issuer\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"IssuedAt\":{\"type\":\"timestamp\"},\"ImportedAt\":{\"type\":\"timestamp\"},\"Status\":{},\"RevokedAt\":{\"type\":\"timestamp\"},\"RevocationReason\":{},\"NotBefore\":{\"type\":\"timestamp\"},\"NotAfter\":{\"type\":\"timestamp\"},\"KeyAlgorithm\":{},\"SignatureAlgorithm\":{},\"InUseBy\":{\"type\":\"list\",\"member\":{}},\"FailureReason\":{},\"Type\":{},\"RenewalSummary\":{\"type\":\"structure\",\"required\":[\"RenewalStatus\",\"DomainValidationOptions\",\"UpdatedAt\"],\"members\":{\"RenewalStatus\":{},\"DomainValidationOptions\":{\"shape\":\"Sd\"},\"RenewalStatusReason\":{},\"UpdatedAt\":{\"type\":\"timestamp\"}}},\"KeyUsages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"ExtendedKeyUsages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"OID\":{}}}},\"CertificateAuthorityArn\":{},\"RenewalEligibility\":{},\"Options\":{\"shape\":\"S11\"}}}}}},\"ExportCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\",\"Passphrase\"],\"members\":{\"CertificateArn\":{},\"Passphrase\":{\"type\":\"blob\",\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"CertificateChain\":{},\"PrivateKey\":{\"type\":\"string\",\"sensitive\":true}}}},\"GetAccountConfiguration\":{\"output\":{\"type\":\"structure\",\"members\":{\"ExpiryEvents\":{\"shape\":\"S1a\"}}}},\"GetCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"CertificateChain\":{}}}},\"ImportCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"Certificate\",\"PrivateKey\"],\"members\":{\"CertificateArn\":{},\"Certificate\":{\"type\":\"blob\"},\"PrivateKey\":{\"type\":\"blob\",\"sensitive\":true},\"CertificateChain\":{\"type\":\"blob\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{}}}},\"ListCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateStatuses\":{\"type\":\"list\",\"member\":{}},\"Includes\":{\"type\":\"structure\",\"members\":{\"extendedKeyUsage\":{\"type\":\"list\",\"member\":{}},\"keyUsage\":{\"type\":\"list\",\"member\":{}},\"keyTypes\":{\"type\":\"list\",\"member\":{}}}},\"NextToken\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"CertificateSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"DomainName\":{}}}}}}},\"ListTagsForCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S3\"}}}},\"PutAccountConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdempotencyToken\"],\"members\":{\"ExpiryEvents\":{\"shape\":\"S1a\"},\"IdempotencyToken\":{}}}},\"RemoveTagsFromCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\",\"Tags\"],\"members\":{\"CertificateArn\":{},\"Tags\":{\"shape\":\"S3\"}}}},\"RenewCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}}},\"RequestCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"ValidationMethod\":{},\"SubjectAlternativeNames\":{\"shape\":\"Sc\"},\"IdempotencyToken\":{},\"DomainValidationOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ValidationDomain\"],\"members\":{\"DomainName\":{},\"ValidationDomain\":{}}}},\"Options\":{\"shape\":\"S11\"},\"CertificateAuthorityArn\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{}}}},\"ResendValidationEmail\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\",\"Domain\",\"ValidationDomain\"],\"members\":{\"CertificateArn\":{},\"Domain\":{},\"ValidationDomain\":{}}}},\"UpdateCertificateOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\",\"Options\"],\"members\":{\"CertificateArn\":{},\"Options\":{\"shape\":\"S11\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sc\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"ValidationEmails\":{\"type\":\"list\",\"member\":{}},\"ValidationDomain\":{},\"ValidationStatus\":{},\"ResourceRecord\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\",\"Value\"],\"members\":{\"Name\":{},\"Type\":{},\"Value\":{}}},\"ValidationMethod\":{}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"CertificateTransparencyLoggingPreference\":{}}},\"S1a\":{\"type\":\"structure\",\"members\":{\"DaysBeforeExpiry\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 63763:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCertificates\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextToken\",\"result_key\":\"CertificateSummaryList\"}}}");

/***/ }),

/***/ 12336:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"CertificateValidated\":{\"delay\":60,\"maxAttempts\":40,\"operation\":\"DescribeCertificate\",\"acceptors\":[{\"matcher\":\"pathAll\",\"expected\":\"SUCCESS\",\"argument\":\"Certificate.DomainValidationOptions[].ValidationStatus\",\"state\":\"success\"},{\"matcher\":\"pathAny\",\"expected\":\"PENDING_VALIDATION\",\"argument\":\"Certificate.DomainValidationOptions[].ValidationStatus\",\"state\":\"retry\"},{\"matcher\":\"path\",\"expected\":\"FAILED\",\"argument\":\"Certificate.Status\",\"state\":\"failure\"},{\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\",\"state\":\"failure\"}]}}}");

/***/ }),

/***/ 2794:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-08-22\",\"endpointPrefix\":\"acm-pca\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"ACM-PCA\",\"serviceFullName\":\"AWS Certificate Manager Private Certificate Authority\",\"serviceId\":\"ACM PCA\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"ACMPrivateCA\",\"uid\":\"acm-pca-2017-08-22\"},\"operations\":{\"CreateCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityConfiguration\",\"CertificateAuthorityType\"],\"members\":{\"CertificateAuthorityConfiguration\":{\"shape\":\"S2\"},\"RevocationConfiguration\":{\"shape\":\"Ss\"},\"CertificateAuthorityType\":{},\"IdempotencyToken\":{},\"Tags\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorityArn\":{}}},\"idempotent\":true},\"CreateCertificateAuthorityAuditReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"S3BucketName\",\"AuditReportResponseFormat\"],\"members\":{\"CertificateAuthorityArn\":{},\"S3BucketName\":{},\"AuditReportResponseFormat\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuditReportId\":{},\"S3Key\":{}}},\"idempotent\":true},\"CreatePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"Principal\",\"Actions\"],\"members\":{\"CertificateAuthorityArn\":{},\"Principal\":{},\"SourceAccount\":{},\"Actions\":{\"shape\":\"S1d\"}}}},\"DeleteCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{},\"PermanentDeletionTimeInDays\":{\"type\":\"integer\"}}}},\"DeletePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"Principal\"],\"members\":{\"CertificateAuthorityArn\":{},\"Principal\":{},\"SourceAccount\":{}}}},\"DeletePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}}},\"DescribeCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateAuthority\":{\"shape\":\"S1l\"}}}},\"DescribeCertificateAuthorityAuditReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"AuditReportId\"],\"members\":{\"CertificateAuthorityArn\":{},\"AuditReportId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuditReportStatus\":{},\"S3BucketName\":{},\"S3Key\":{},\"CreatedAt\":{\"type\":\"timestamp\"}}}},\"GetCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"CertificateArn\"],\"members\":{\"CertificateAuthorityArn\":{},\"CertificateArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"CertificateChain\":{}}}},\"GetCertificateAuthorityCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"CertificateChain\":{}}}},\"GetCertificateAuthorityCsr\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Csr\":{}}}},\"GetPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"ImportCertificateAuthorityCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"Certificate\"],\"members\":{\"CertificateAuthorityArn\":{},\"Certificate\":{\"type\":\"blob\"},\"CertificateChain\":{\"type\":\"blob\"}}}},\"IssueCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"Csr\",\"SigningAlgorithm\",\"Validity\"],\"members\":{\"ApiPassthrough\":{\"type\":\"structure\",\"members\":{\"Extensions\":{\"type\":\"structure\",\"members\":{\"CertificatePolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CertPolicyId\"],\"members\":{\"CertPolicyId\":{},\"PolicyQualifiers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PolicyQualifierId\",\"Qualifier\"],\"members\":{\"PolicyQualifierId\":{},\"Qualifier\":{\"type\":\"structure\",\"required\":[\"CpsUri\"],\"members\":{\"CpsUri\":{}}}}}}}}},\"ExtendedKeyUsage\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ExtendedKeyUsageType\":{},\"ExtendedKeyUsageObjectIdentifier\":{}}}},\"KeyUsage\":{\"shape\":\"Sf\"},\"SubjectAlternativeNames\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}}}},\"Subject\":{\"shape\":\"S5\"}}},\"CertificateAuthorityArn\":{},\"Csr\":{\"type\":\"blob\"},\"SigningAlgorithm\":{},\"TemplateArn\":{},\"Validity\":{\"shape\":\"S2m\"},\"ValidityNotBefore\":{\"shape\":\"S2m\"},\"IdempotencyToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{}}},\"idempotent\":true},\"ListCertificateAuthorities\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResourceOwner\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorities\":{\"type\":\"list\",\"member\":{\"shape\":\"S1l\"}},\"NextToken\":{}}}},\"ListPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Permissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorityArn\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"Principal\":{},\"SourceAccount\":{},\"Actions\":{\"shape\":\"S1d\"},\"Policy\":{}}}},\"NextToken\":{}}}},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sy\"},\"NextToken\":{}}}},\"PutPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Policy\"],\"members\":{\"ResourceArn\":{},\"Policy\":{}}}},\"RestoreCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{}}}},\"RevokeCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"CertificateSerial\",\"RevocationReason\"],\"members\":{\"CertificateAuthorityArn\":{},\"CertificateSerial\":{},\"RevocationReason\":{}}}},\"TagCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"Tags\"],\"members\":{\"CertificateAuthorityArn\":{},\"Tags\":{\"shape\":\"Sy\"}}}},\"UntagCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\",\"Tags\"],\"members\":{\"CertificateAuthorityArn\":{},\"Tags\":{\"shape\":\"Sy\"}}}},\"UpdateCertificateAuthority\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateAuthorityArn\"],\"members\":{\"CertificateAuthorityArn\":{},\"RevocationConfiguration\":{\"shape\":\"Ss\"},\"Status\":{}}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"KeyAlgorithm\",\"SigningAlgorithm\",\"Subject\"],\"members\":{\"KeyAlgorithm\":{},\"SigningAlgorithm\":{},\"Subject\":{\"shape\":\"S5\"},\"CsrExtensions\":{\"type\":\"structure\",\"members\":{\"KeyUsage\":{\"shape\":\"Sf\"},\"SubjectInformationAccess\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccessMethod\",\"AccessLocation\"],\"members\":{\"AccessMethod\":{\"type\":\"structure\",\"members\":{\"CustomObjectIdentifier\":{},\"AccessMethodType\":{}}},\"AccessLocation\":{\"shape\":\"Sm\"}}}}}}}},\"S5\":{\"type\":\"structure\",\"members\":{\"Country\":{},\"Organization\":{},\"OrganizationalUnit\":{},\"DistinguishedNameQualifier\":{},\"State\":{},\"CommonName\":{},\"SerialNumber\":{},\"Locality\":{},\"Title\":{},\"Surname\":{},\"GivenName\":{},\"Initials\":{},\"Pseudonym\":{},\"GenerationQualifier\":{}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"DigitalSignature\":{\"type\":\"boolean\"},\"NonRepudiation\":{\"type\":\"boolean\"},\"KeyEncipherment\":{\"type\":\"boolean\"},\"DataEncipherment\":{\"type\":\"boolean\"},\"KeyAgreement\":{\"type\":\"boolean\"},\"KeyCertSign\":{\"type\":\"boolean\"},\"CRLSign\":{\"type\":\"boolean\"},\"EncipherOnly\":{\"type\":\"boolean\"},\"DecipherOnly\":{\"type\":\"boolean\"}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"OtherName\":{\"type\":\"structure\",\"required\":[\"TypeId\",\"Value\"],\"members\":{\"TypeId\":{},\"Value\":{}}},\"Rfc822Name\":{},\"DnsName\":{},\"DirectoryName\":{\"shape\":\"S5\"},\"EdiPartyName\":{\"type\":\"structure\",\"required\":[\"PartyName\"],\"members\":{\"PartyName\":{},\"NameAssigner\":{}}},\"UniformResourceIdentifier\":{},\"IpAddress\":{},\"RegisteredId\":{}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"CrlConfiguration\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"ExpirationInDays\":{\"type\":\"integer\"},\"CustomCname\":{},\"S3BucketName\":{}}}}},\"Sy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S1d\":{\"type\":\"list\",\"member\":{}},\"S1l\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"OwnerAccount\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastStateChangeAt\":{\"type\":\"timestamp\"},\"Type\":{},\"Serial\":{},\"Status\":{},\"NotBefore\":{\"type\":\"timestamp\"},\"NotAfter\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"CertificateAuthorityConfiguration\":{\"shape\":\"S2\"},\"RevocationConfiguration\":{\"shape\":\"Ss\"},\"RestorableUntil\":{\"type\":\"timestamp\"}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"Value\",\"Type\"],\"members\":{\"Value\":{\"type\":\"long\"},\"Type\":{}}}}}");

/***/ }),

/***/ 92031:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCertificateAuthorities\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CertificateAuthorities\"},\"ListPermissions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Permissions\"},\"ListTags\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"}}}");

/***/ }),

/***/ 50728:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"CertificateAuthorityCSRCreated\":{\"description\":\"Wait until a Certificate Authority CSR is created\",\"operation\":\"GetCertificateAuthorityCsr\",\"delay\":3,\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"RequestInProgressException\"}]},\"CertificateIssued\":{\"description\":\"Wait until a certificate is issued\",\"operation\":\"GetCertificate\",\"delay\":3,\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"RequestInProgressException\"}]},\"AuditReportCreated\":{\"description\":\"Wait until a Audit Report is created\",\"operation\":\"DescribeCertificateAuthorityAuditReport\",\"delay\":3,\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"AuditReportStatus\",\"expected\":\"SUCCESS\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"AuditReportStatus\",\"expected\":\"FAILED\"}]}}}");

/***/ }),

/***/ 4946:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-11-09\",\"endpointPrefix\":\"a4b\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Alexa For Business\",\"serviceId\":\"Alexa For Business\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AlexaForBusiness\",\"uid\":\"alexaforbusiness-2017-11-09\"},\"operations\":{\"ApproveSkill\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateContactWithAddressBook\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContactArn\",\"AddressBookArn\"],\"members\":{\"ContactArn\":{},\"AddressBookArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateDeviceWithNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceArn\",\"NetworkProfileArn\"],\"members\":{\"DeviceArn\":{},\"NetworkProfileArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateDeviceWithRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{},\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateSkillGroupWithRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{},\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateSkillWithSkillGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillGroupArn\":{},\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateSkillWithUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAddressBook\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AddressBookArn\":{}}}},\"CreateBusinessReportSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Format\",\"ContentRange\"],\"members\":{\"ScheduleName\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"Format\":{},\"ContentRange\":{\"shape\":\"Sv\"},\"Recurrence\":{\"shape\":\"Sx\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScheduleArn\":{}}}},\"CreateConferenceProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConferenceProviderName\",\"ConferenceProviderType\",\"MeetingSetting\"],\"members\":{\"ConferenceProviderName\":{},\"ConferenceProviderType\":{},\"IPDialIn\":{\"shape\":\"S13\"},\"PSTNDialIn\":{\"shape\":\"S16\"},\"MeetingSetting\":{\"shape\":\"S1b\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConferenceProviderArn\":{}}}},\"CreateContact\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirstName\"],\"members\":{\"DisplayName\":{},\"FirstName\":{},\"LastName\":{},\"PhoneNumber\":{\"shape\":\"S1g\"},\"PhoneNumbers\":{\"shape\":\"S1h\"},\"SipAddresses\":{\"shape\":\"S1k\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactArn\":{}}}},\"CreateGatewayGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ClientRequestToken\"],\"members\":{\"Name\":{},\"Description\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayGroupArn\":{}}}},\"CreateNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkProfileName\",\"Ssid\",\"SecurityType\",\"ClientRequestToken\"],\"members\":{\"NetworkProfileName\":{},\"Description\":{},\"Ssid\":{},\"SecurityType\":{},\"EapMethod\":{},\"CurrentPassword\":{\"shape\":\"S1z\"},\"NextPassword\":{\"shape\":\"S20\"},\"CertificateAuthorityArn\":{},\"TrustAnchors\":{\"shape\":\"S21\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkProfileArn\":{}}}},\"CreateProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProfileName\",\"Timezone\",\"Address\",\"DistanceUnit\",\"TemperatureUnit\",\"WakeWord\"],\"members\":{\"ProfileName\":{},\"Timezone\":{},\"Address\":{},\"DistanceUnit\":{},\"TemperatureUnit\":{},\"WakeWord\":{},\"Locale\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"SetupModeDisabled\":{\"type\":\"boolean\"},\"MaxVolumeLimit\":{\"type\":\"integer\"},\"PSTNEnabled\":{\"type\":\"boolean\"},\"DataRetentionOptIn\":{\"type\":\"boolean\"},\"MeetingRoomConfiguration\":{\"type\":\"structure\",\"members\":{\"RoomUtilizationMetricsEnabled\":{\"type\":\"boolean\"},\"EndOfMeetingReminder\":{\"type\":\"structure\",\"required\":[\"ReminderAtMinutes\",\"ReminderType\",\"Enabled\"],\"members\":{\"ReminderAtMinutes\":{\"shape\":\"S2g\"},\"ReminderType\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"InstantBooking\":{\"type\":\"structure\",\"required\":[\"DurationInMinutes\",\"Enabled\"],\"members\":{\"DurationInMinutes\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"}}},\"RequireCheckIn\":{\"type\":\"structure\",\"required\":[\"ReleaseAfterMinutes\",\"Enabled\"],\"members\":{\"ReleaseAfterMinutes\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"}}}}},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProfileArn\":{}}}},\"CreateRoom\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoomName\"],\"members\":{\"RoomName\":{},\"Description\":{},\"ProfileArn\":{},\"ProviderCalendarId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{}}}},\"CreateSkillGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillGroupName\"],\"members\":{\"SkillGroupName\":{},\"Description\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{}}}},\"CreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{},\"FirstName\":{},\"LastName\":{},\"Email\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserArn\":{}}}},\"DeleteAddressBook\":{\"input\":{\"type\":\"structure\",\"required\":[\"AddressBookArn\"],\"members\":{\"AddressBookArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteBusinessReportSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduleArn\"],\"members\":{\"ScheduleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConferenceProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConferenceProviderArn\"],\"members\":{\"ConferenceProviderArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteContact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContactArn\"],\"members\":{\"ContactArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceArn\"],\"members\":{\"DeviceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDeviceUsageData\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceArn\",\"DeviceUsageType\"],\"members\":{\"DeviceArn\":{},\"DeviceUsageType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteGatewayGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayGroupArn\"],\"members\":{\"GatewayGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkProfileArn\"],\"members\":{\"NetworkProfileArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProfile\":{\"input\":{\"type\":\"structure\",\"members\":{\"ProfileArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRoomSkillParameter\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\",\"ParameterKey\"],\"members\":{\"RoomArn\":{},\"SkillId\":{},\"ParameterKey\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSkillAuthorization\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillId\":{},\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSkillGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"EnrollmentId\"],\"members\":{\"UserArn\":{},\"EnrollmentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateContactFromAddressBook\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContactArn\",\"AddressBookArn\"],\"members\":{\"ContactArn\":{},\"AddressBookArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateDeviceFromRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateSkillFromSkillGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillGroupArn\":{},\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateSkillFromUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateSkillGroupFromRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{},\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ForgetSmartHomeAppliances\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoomArn\"],\"members\":{\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAddressBook\":{\"input\":{\"type\":\"structure\",\"required\":[\"AddressBookArn\"],\"members\":{\"AddressBookArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AddressBook\":{\"type\":\"structure\",\"members\":{\"AddressBookArn\":{},\"Name\":{},\"Description\":{}}}}}},\"GetConferencePreference\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Preference\":{\"shape\":\"S4d\"}}}},\"GetConferenceProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConferenceProviderArn\"],\"members\":{\"ConferenceProviderArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConferenceProvider\":{\"shape\":\"S4g\"}}}},\"GetContact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContactArn\"],\"members\":{\"ContactArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Contact\":{\"type\":\"structure\",\"members\":{\"ContactArn\":{},\"DisplayName\":{},\"FirstName\":{},\"LastName\":{},\"PhoneNumber\":{\"shape\":\"S1g\"},\"PhoneNumbers\":{\"shape\":\"S1h\"},\"SipAddresses\":{\"shape\":\"S1k\"}}}}}},\"GetDevice\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Device\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{},\"DeviceSerialNumber\":{},\"DeviceType\":{},\"DeviceName\":{},\"SoftwareVersion\":{},\"MacAddress\":{},\"RoomArn\":{},\"DeviceStatus\":{},\"DeviceStatusInfo\":{\"shape\":\"S4t\"},\"NetworkProfileInfo\":{\"type\":\"structure\",\"members\":{\"NetworkProfileArn\":{},\"CertificateArn\":{},\"CertificateExpirationTime\":{\"type\":\"timestamp\"}}}}}}}},\"GetGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayArn\"],\"members\":{\"GatewayArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Gateway\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Description\":{},\"GatewayGroupArn\":{},\"SoftwareVersion\":{}}}}}},\"GetGatewayGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayGroupArn\"],\"members\":{\"GatewayGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayGroup\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Description\":{}}}}}},\"GetInvitationConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationName\":{},\"ContactEmail\":{},\"PrivateSkillIds\":{\"shape\":\"S5e\"}}}},\"GetNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkProfileArn\"],\"members\":{\"NetworkProfileArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkProfile\":{\"type\":\"structure\",\"members\":{\"NetworkProfileArn\":{},\"NetworkProfileName\":{},\"Description\":{},\"Ssid\":{},\"SecurityType\":{},\"EapMethod\":{},\"CurrentPassword\":{\"shape\":\"S1z\"},\"NextPassword\":{\"shape\":\"S20\"},\"CertificateAuthorityArn\":{},\"TrustAnchors\":{\"shape\":\"S21\"}}}}}},\"GetProfile\":{\"input\":{\"type\":\"structure\",\"members\":{\"ProfileArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Profile\":{\"type\":\"structure\",\"members\":{\"ProfileArn\":{},\"ProfileName\":{},\"IsDefault\":{\"type\":\"boolean\"},\"Address\":{},\"Timezone\":{},\"DistanceUnit\":{},\"TemperatureUnit\":{},\"WakeWord\":{},\"Locale\":{},\"SetupModeDisabled\":{\"type\":\"boolean\"},\"MaxVolumeLimit\":{\"type\":\"integer\"},\"PSTNEnabled\":{\"type\":\"boolean\"},\"DataRetentionOptIn\":{\"type\":\"boolean\"},\"AddressBookArn\":{},\"MeetingRoomConfiguration\":{\"type\":\"structure\",\"members\":{\"RoomUtilizationMetricsEnabled\":{\"type\":\"boolean\"},\"EndOfMeetingReminder\":{\"type\":\"structure\",\"members\":{\"ReminderAtMinutes\":{\"shape\":\"S2g\"},\"ReminderType\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"InstantBooking\":{\"type\":\"structure\",\"members\":{\"DurationInMinutes\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"}}},\"RequireCheckIn\":{\"type\":\"structure\",\"members\":{\"ReleaseAfterMinutes\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"}}}}}}}}}},\"GetRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Room\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{},\"RoomName\":{},\"Description\":{},\"ProviderCalendarId\":{},\"ProfileArn\":{}}}}}},\"GetRoomSkillParameter\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\",\"ParameterKey\"],\"members\":{\"RoomArn\":{},\"SkillId\":{},\"ParameterKey\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoomSkillParameter\":{\"shape\":\"S5u\"}}}},\"GetSkillGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SkillGroup\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{},\"SkillGroupName\":{},\"Description\":{}}}}}},\"ListBusinessReportSchedules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BusinessReportSchedules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ScheduleArn\":{},\"ScheduleName\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"Format\":{},\"ContentRange\":{\"shape\":\"Sv\"},\"Recurrence\":{\"shape\":\"Sx\"},\"LastBusinessReport\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"FailureCode\":{},\"S3Location\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"BucketName\":{}}},\"DeliveryTime\":{\"type\":\"timestamp\"},\"DownloadUrl\":{}}}}}},\"NextToken\":{}}}},\"ListConferenceProviders\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConferenceProviders\":{\"type\":\"list\",\"member\":{\"shape\":\"S4g\"}},\"NextToken\":{}}}},\"ListDeviceEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceArn\"],\"members\":{\"DeviceArn\":{},\"EventType\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Value\":{},\"Timestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListGatewayGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Description\":{}}}},\"NextToken\":{}}}},\"ListGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"GatewayGroupArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Gateways\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Description\":{},\"GatewayGroupArn\":{},\"SoftwareVersion\":{}}}},\"NextToken\":{}}}},\"ListSkills\":{\"input\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{},\"EnablementType\":{},\"SkillType\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SkillSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SkillId\":{},\"SkillName\":{},\"SupportsLinking\":{\"type\":\"boolean\"},\"EnablementType\":{},\"SkillType\":{}}}},\"NextToken\":{}}}},\"ListSkillsStoreCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CategoryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CategoryId\":{\"type\":\"long\"},\"CategoryName\":{}}}},\"NextToken\":{}}}},\"ListSkillsStoreSkillsByCategory\":{\"input\":{\"type\":\"structure\",\"required\":[\"CategoryId\"],\"members\":{\"CategoryId\":{\"type\":\"long\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SkillsStoreSkills\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SkillId\":{},\"SkillName\":{},\"ShortDescription\":{},\"IconUrl\":{},\"SampleUtterances\":{\"type\":\"list\",\"member\":{}},\"SkillDetails\":{\"type\":\"structure\",\"members\":{\"ProductDescription\":{},\"InvocationPhrase\":{},\"ReleaseDate\":{},\"EndUserLicenseAgreement\":{},\"GenericKeywords\":{\"type\":\"list\",\"member\":{}},\"BulletPoints\":{\"type\":\"list\",\"member\":{}},\"NewInThisVersionBulletPoints\":{\"type\":\"list\",\"member\":{}},\"SkillTypes\":{\"type\":\"list\",\"member\":{}},\"Reviews\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"DeveloperInfo\":{\"type\":\"structure\",\"members\":{\"DeveloperName\":{},\"PrivacyPolicy\":{},\"Email\":{},\"Url\":{}}}}},\"SupportsLinking\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"ListSmartHomeAppliances\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoomArn\"],\"members\":{\"RoomArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SmartHomeAppliances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FriendlyName\":{},\"Description\":{},\"ManufacturerName\":{}}}},\"NextToken\":{}}}},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sl\"},\"NextToken\":{}}}},\"PutConferencePreference\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConferencePreference\"],\"members\":{\"ConferencePreference\":{\"shape\":\"S4d\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutInvitationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationName\"],\"members\":{\"OrganizationName\":{},\"ContactEmail\":{},\"PrivateSkillIds\":{\"shape\":\"S5e\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutRoomSkillParameter\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\",\"RoomSkillParameter\"],\"members\":{\"RoomArn\":{},\"SkillId\":{},\"RoomSkillParameter\":{\"shape\":\"S5u\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutSkillAuthorization\":{\"input\":{\"type\":\"structure\",\"required\":[\"AuthorizationResult\",\"SkillId\"],\"members\":{\"AuthorizationResult\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"SkillId\":{},\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RegisterAVSDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"UserCode\",\"ProductId\",\"AmazonId\"],\"members\":{\"ClientId\":{},\"UserCode\":{},\"ProductId\":{},\"DeviceSerialNumber\":{},\"AmazonId\":{},\"RoomArn\":{},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{}}}},\"RejectSkill\":{\"input\":{\"type\":\"structure\",\"required\":[\"SkillId\"],\"members\":{\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ResolveRoom\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserId\",\"SkillId\"],\"members\":{\"UserId\":{},\"SkillId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{},\"RoomName\":{},\"RoomSkillParameters\":{\"type\":\"list\",\"member\":{\"shape\":\"S5u\"}}}}},\"RevokeInvitation\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserArn\":{},\"EnrollmentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SearchAddressBooks\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AddressBooks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AddressBookArn\":{},\"Name\":{},\"Description\":{}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchContacts\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Contacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContactArn\":{},\"DisplayName\":{},\"FirstName\":{},\"LastName\":{},\"PhoneNumber\":{\"shape\":\"S1g\"},\"PhoneNumbers\":{\"shape\":\"S1h\"},\"SipAddresses\":{\"shape\":\"S1k\"}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchDevices\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{},\"DeviceSerialNumber\":{},\"DeviceType\":{},\"DeviceName\":{},\"SoftwareVersion\":{},\"MacAddress\":{},\"DeviceStatus\":{},\"NetworkProfileArn\":{},\"NetworkProfileName\":{},\"RoomArn\":{},\"RoomName\":{},\"DeviceStatusInfo\":{\"shape\":\"S4t\"},\"CreatedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchNetworkProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkProfiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NetworkProfileArn\":{},\"NetworkProfileName\":{},\"Description\":{},\"Ssid\":{},\"SecurityType\":{},\"EapMethod\":{},\"CertificateAuthorityArn\":{}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Profiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProfileArn\":{},\"ProfileName\":{},\"IsDefault\":{\"type\":\"boolean\"},\"Address\":{},\"Timezone\":{},\"DistanceUnit\":{},\"TemperatureUnit\":{},\"WakeWord\":{},\"Locale\":{}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchRooms\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rooms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{},\"RoomName\":{},\"Description\":{},\"ProviderCalendarId\":{},\"ProfileArn\":{},\"ProfileName\":{}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchSkillGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SkillGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{},\"SkillGroupName\":{},\"Description\":{}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SearchUsers\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S92\"},\"SortCriteria\":{\"shape\":\"S97\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UserArn\":{},\"FirstName\":{},\"LastName\":{},\"Email\":{},\"EnrollmentStatus\":{},\"EnrollmentId\":{}}}},\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"}}}},\"SendAnnouncement\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoomFilters\",\"Content\",\"ClientRequestToken\"],\"members\":{\"RoomFilters\":{\"shape\":\"S92\"},\"Content\":{\"type\":\"structure\",\"members\":{\"TextList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Locale\",\"Value\"],\"members\":{\"Locale\":{},\"Value\":{}}}},\"SsmlList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Locale\",\"Value\"],\"members\":{\"Locale\":{},\"Value\":{}}}},\"AudioList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Locale\",\"Location\"],\"members\":{\"Locale\":{},\"Location\":{}}}}}},\"TimeToLiveInSeconds\":{\"type\":\"integer\"},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnnouncementArn\":{}}}},\"SendInvitation\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartDeviceSync\":{\"input\":{\"type\":\"structure\",\"required\":[\"Features\"],\"members\":{\"RoomArn\":{},\"DeviceArn\":{},\"Features\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartSmartHomeApplianceDiscovery\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoomArn\"],\"members\":{\"RoomArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Tags\"],\"members\":{\"Arn\":{},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"TagKeys\"],\"members\":{\"Arn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAddressBook\":{\"input\":{\"type\":\"structure\",\"required\":[\"AddressBookArn\"],\"members\":{\"AddressBookArn\":{},\"Name\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateBusinessReportSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduleArn\"],\"members\":{\"ScheduleArn\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"Format\":{},\"ScheduleName\":{},\"Recurrence\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateConferenceProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConferenceProviderArn\",\"ConferenceProviderType\",\"MeetingSetting\"],\"members\":{\"ConferenceProviderArn\":{},\"ConferenceProviderType\":{},\"IPDialIn\":{\"shape\":\"S13\"},\"PSTNDialIn\":{\"shape\":\"S16\"},\"MeetingSetting\":{\"shape\":\"S1b\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateContact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContactArn\"],\"members\":{\"ContactArn\":{},\"DisplayName\":{},\"FirstName\":{},\"LastName\":{},\"PhoneNumber\":{\"shape\":\"S1g\"},\"PhoneNumbers\":{\"shape\":\"S1h\"},\"SipAddresses\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDevice\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeviceArn\":{},\"DeviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayArn\"],\"members\":{\"GatewayArn\":{},\"Name\":{},\"Description\":{},\"SoftwareVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateGatewayGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayGroupArn\"],\"members\":{\"GatewayGroupArn\":{},\"Name\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkProfileArn\"],\"members\":{\"NetworkProfileArn\":{},\"NetworkProfileName\":{},\"Description\":{},\"CurrentPassword\":{\"shape\":\"S1z\"},\"NextPassword\":{\"shape\":\"S20\"},\"CertificateAuthorityArn\":{},\"TrustAnchors\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateProfile\":{\"input\":{\"type\":\"structure\",\"members\":{\"ProfileArn\":{},\"ProfileName\":{},\"IsDefault\":{\"type\":\"boolean\"},\"Timezone\":{},\"Address\":{},\"DistanceUnit\":{},\"TemperatureUnit\":{},\"WakeWord\":{},\"Locale\":{},\"SetupModeDisabled\":{\"type\":\"boolean\"},\"MaxVolumeLimit\":{\"type\":\"integer\"},\"PSTNEnabled\":{\"type\":\"boolean\"},\"DataRetentionOptIn\":{\"type\":\"boolean\"},\"MeetingRoomConfiguration\":{\"type\":\"structure\",\"members\":{\"RoomUtilizationMetricsEnabled\":{\"type\":\"boolean\"},\"EndOfMeetingReminder\":{\"type\":\"structure\",\"members\":{\"ReminderAtMinutes\":{\"shape\":\"S2g\"},\"ReminderType\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"InstantBooking\":{\"type\":\"structure\",\"members\":{\"DurationInMinutes\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"}}},\"RequireCheckIn\":{\"type\":\"structure\",\"members\":{\"ReleaseAfterMinutes\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRoom\":{\"input\":{\"type\":\"structure\",\"members\":{\"RoomArn\":{},\"RoomName\":{},\"Description\":{},\"ProviderCalendarId\":{},\"ProfileArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSkillGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"SkillGroupArn\":{},\"SkillGroupName\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sv\":{\"type\":\"structure\",\"required\":[\"Interval\"],\"members\":{\"Interval\":{}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"StartDate\":{}}},\"S13\":{\"type\":\"structure\",\"required\":[\"Endpoint\",\"CommsProtocol\"],\"members\":{\"Endpoint\":{},\"CommsProtocol\":{}}},\"S16\":{\"type\":\"structure\",\"required\":[\"CountryCode\",\"PhoneNumber\",\"OneClickIdDelay\",\"OneClickPinDelay\"],\"members\":{\"CountryCode\":{},\"PhoneNumber\":{},\"OneClickIdDelay\":{},\"OneClickPinDelay\":{}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"RequirePin\"],\"members\":{\"RequirePin\":{}}},\"S1g\":{\"type\":\"string\",\"sensitive\":true},\"S1h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Number\",\"Type\"],\"members\":{\"Number\":{\"shape\":\"S1g\"},\"Type\":{\"type\":\"string\",\"sensitive\":true}}}},\"S1k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Uri\",\"Type\"],\"members\":{\"Uri\":{\"type\":\"string\",\"sensitive\":true},\"Type\":{\"type\":\"string\",\"sensitive\":true}}}},\"S1z\":{\"type\":\"string\",\"sensitive\":true},\"S20\":{\"type\":\"string\",\"sensitive\":true},\"S21\":{\"type\":\"list\",\"member\":{}},\"S2g\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"S4d\":{\"type\":\"structure\",\"members\":{\"DefaultConferenceProviderArn\":{}}},\"S4g\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Type\":{},\"IPDialIn\":{\"shape\":\"S13\"},\"PSTNDialIn\":{\"shape\":\"S16\"},\"MeetingSetting\":{\"shape\":\"S1b\"}}},\"S4t\":{\"type\":\"structure\",\"members\":{\"DeviceStatusDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Feature\":{},\"Code\":{}}}},\"ConnectionStatus\":{},\"ConnectionStatusUpdatedTime\":{\"type\":\"timestamp\"}}},\"S5e\":{\"type\":\"list\",\"member\":{}},\"S5u\":{\"type\":\"structure\",\"required\":[\"ParameterKey\",\"ParameterValue\"],\"members\":{\"ParameterKey\":{},\"ParameterValue\":{}}},\"S92\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"S97\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 74967:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBusinessReportSchedules\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListConferenceProviders\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDeviceEvents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListGatewayGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListGateways\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSkills\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSkillsStoreCategories\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSkillsStoreSkillsByCategory\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSmartHomeAppliances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTags\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchAddressBooks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchContacts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchDevices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchNetworkProfiles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchProfiles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchRooms\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchSkillGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"SearchUsers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 36184:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-08-01\",\"endpointPrefix\":\"aps\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Prometheus Service\",\"serviceId\":\"amp\",\"signatureVersion\":\"v4\",\"signingName\":\"aps\",\"uid\":\"amp-2020-08-01\"},\"operations\":{\"CreateWorkspace\":{\"http\":{\"requestUri\":\"/workspaces\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"alias\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"arn\",\"status\",\"workspaceId\"],\"members\":{\"arn\":{},\"status\":{\"shape\":\"S6\"},\"workspaceId\":{}}},\"idempotent\":true},\"DeleteWorkspace\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/workspaces/{workspaceId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"workspaceId\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"},\"workspaceId\":{\"location\":\"uri\",\"locationName\":\"workspaceId\"}}},\"idempotent\":true},\"DescribeWorkspace\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workspaces/{workspaceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"workspaceId\"],\"members\":{\"workspaceId\":{\"location\":\"uri\",\"locationName\":\"workspaceId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"workspace\"],\"members\":{\"workspace\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"status\",\"workspaceId\"],\"members\":{\"alias\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"prometheusEndpoint\":{},\"status\":{\"shape\":\"S6\"},\"workspaceId\":{}}}}}},\"ListWorkspaces\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workspaces\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"alias\":{\"location\":\"querystring\",\"locationName\":\"alias\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"workspaces\"],\"members\":{\"nextToken\":{},\"workspaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"status\",\"workspaceId\"],\"members\":{\"alias\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"status\":{\"shape\":\"S6\"},\"workspaceId\":{}}}}}}},\"UpdateWorkspaceAlias\":{\"http\":{\"requestUri\":\"/workspaces/{workspaceId}/alias\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"workspaceId\"],\"members\":{\"alias\":{},\"clientToken\":{\"idempotencyToken\":true},\"workspaceId\":{\"location\":\"uri\",\"locationName\":\"workspaceId\"}}},\"idempotent\":true}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"required\":[\"statusCode\"],\"members\":{\"statusCode\":{}}}}}");

/***/ }),

/***/ 7850:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListWorkspaces\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"workspaces\"}}}");

/***/ }),

/***/ 59237:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"amplify\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amplify\",\"serviceFullName\":\"AWS Amplify\",\"serviceId\":\"Amplify\",\"signatureVersion\":\"v4\",\"signingName\":\"amplify\",\"uid\":\"amplify-2017-07-25\"},\"operations\":{\"CreateApp\":{\"http\":{\"requestUri\":\"/apps\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"repository\":{},\"platform\":{},\"iamServiceRoleArn\":{},\"oauthToken\":{\"shape\":\"S7\"},\"accessToken\":{\"shape\":\"S8\"},\"environmentVariables\":{\"shape\":\"S9\"},\"enableBranchAutoBuild\":{\"type\":\"boolean\"},\"enableBranchAutoDeletion\":{\"type\":\"boolean\"},\"enableBasicAuth\":{\"type\":\"boolean\"},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"customRules\":{\"shape\":\"Sg\"},\"tags\":{\"shape\":\"Sm\"},\"buildSpec\":{},\"customHeaders\":{},\"enableAutoBranchCreation\":{\"type\":\"boolean\"},\"autoBranchCreationPatterns\":{\"shape\":\"Ss\"},\"autoBranchCreationConfig\":{\"shape\":\"Su\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"app\"],\"members\":{\"app\":{\"shape\":\"S12\"}}}},\"CreateBackendEnvironment\":{\"http\":{\"requestUri\":\"/apps/{appId}/backendenvironments\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"environmentName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"environmentName\":{},\"stackName\":{},\"deploymentArtifacts\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"backendEnvironment\"],\"members\":{\"backendEnvironment\":{\"shape\":\"S1h\"}}}},\"CreateBranch\":{\"http\":{\"requestUri\":\"/apps/{appId}/branches\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{},\"description\":{},\"stage\":{},\"framework\":{},\"enableNotification\":{\"type\":\"boolean\"},\"enableAutoBuild\":{\"type\":\"boolean\"},\"environmentVariables\":{\"shape\":\"S9\"},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"enableBasicAuth\":{\"type\":\"boolean\"},\"enablePerformanceMode\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"Sm\"},\"buildSpec\":{},\"ttl\":{},\"displayName\":{},\"enablePullRequestPreview\":{\"type\":\"boolean\"},\"pullRequestEnvironmentName\":{},\"backendEnvironmentArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"branch\"],\"members\":{\"branch\":{\"shape\":\"S1o\"}}}},\"CreateDeployment\":{\"http\":{\"requestUri\":\"/apps/{appId}/branches/{branchName}/deployments\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"fileMap\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"fileUploadUrls\",\"zipUploadUrl\"],\"members\":{\"jobId\":{},\"fileUploadUrls\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"zipUploadUrl\":{}}}},\"CreateDomainAssociation\":{\"http\":{\"requestUri\":\"/apps/{appId}/domains\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"domainName\",\"subDomainSettings\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"domainName\":{},\"enableAutoSubDomain\":{\"type\":\"boolean\"},\"subDomainSettings\":{\"shape\":\"S27\"},\"autoSubDomainCreationPatterns\":{\"shape\":\"S2a\"},\"autoSubDomainIAMRole\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainAssociation\"],\"members\":{\"domainAssociation\":{\"shape\":\"S2e\"}}}},\"CreateWebhook\":{\"http\":{\"requestUri\":\"/apps/{appId}/webhooks\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"webhook\"],\"members\":{\"webhook\":{\"shape\":\"S2p\"}}}},\"DeleteApp\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apps/{appId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"app\"],\"members\":{\"app\":{\"shape\":\"S12\"}}}},\"DeleteBackendEnvironment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apps/{appId}/backendenvironments/{environmentName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"environmentName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"environmentName\":{\"location\":\"uri\",\"locationName\":\"environmentName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"backendEnvironment\"],\"members\":{\"backendEnvironment\":{\"shape\":\"S1h\"}}}},\"DeleteBranch\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apps/{appId}/branches/{branchName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"branch\"],\"members\":{\"branch\":{\"shape\":\"S1o\"}}}},\"DeleteDomainAssociation\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apps/{appId}/domains/{domainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"domainName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"domainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainAssociation\"],\"members\":{\"domainAssociation\":{\"shape\":\"S2e\"}}}},\"DeleteJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apps/{appId}/branches/{branchName}/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\",\"jobId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobSummary\"],\"members\":{\"jobSummary\":{\"shape\":\"S33\"}}}},\"DeleteWebhook\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/webhooks/{webhookId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"webhookId\"],\"members\":{\"webhookId\":{\"location\":\"uri\",\"locationName\":\"webhookId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"webhook\"],\"members\":{\"webhook\":{\"shape\":\"S2p\"}}}},\"GenerateAccessLogs\":{\"http\":{\"requestUri\":\"/apps/{appId}/accesslogs\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"appId\"],\"members\":{\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"domainName\":{},\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"logUrl\":{}}}},\"GetApp\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"app\"],\"members\":{\"app\":{\"shape\":\"S12\"}}}},\"GetArtifactUrl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/artifacts/{artifactId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"artifactId\"],\"members\":{\"artifactId\":{\"location\":\"uri\",\"locationName\":\"artifactId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"artifactId\",\"artifactUrl\"],\"members\":{\"artifactId\":{},\"artifactUrl\":{}}}},\"GetBackendEnvironment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/backendenvironments/{environmentName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"environmentName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"environmentName\":{\"location\":\"uri\",\"locationName\":\"environmentName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"backendEnvironment\"],\"members\":{\"backendEnvironment\":{\"shape\":\"S1h\"}}}},\"GetBranch\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/branches/{branchName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"branch\"],\"members\":{\"branch\":{\"shape\":\"S1o\"}}}},\"GetDomainAssociation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/domains/{domainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"domainName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"domainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainAssociation\"],\"members\":{\"domainAssociation\":{\"shape\":\"S2e\"}}}},\"GetJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/branches/{branchName}/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\",\"jobId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{\"type\":\"structure\",\"required\":[\"summary\",\"steps\"],\"members\":{\"summary\":{\"shape\":\"S33\"},\"steps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"stepName\",\"startTime\",\"status\",\"endTime\"],\"members\":{\"stepName\":{},\"startTime\":{\"type\":\"timestamp\"},\"status\":{},\"endTime\":{\"type\":\"timestamp\"},\"logUrl\":{},\"artifactsUrl\":{},\"testArtifactsUrl\":{},\"testConfigUrl\":{},\"screenshots\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"statusReason\":{},\"context\":{}}}}}}}}},\"GetWebhook\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/webhooks/{webhookId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"webhookId\"],\"members\":{\"webhookId\":{\"location\":\"uri\",\"locationName\":\"webhookId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"webhook\"],\"members\":{\"webhook\":{\"shape\":\"S2p\"}}}},\"ListApps\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"apps\"],\"members\":{\"apps\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"nextToken\":{}}}},\"ListArtifacts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/branches/{branchName}/jobs/{jobId}/artifacts\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\",\"jobId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"artifacts\"],\"members\":{\"artifacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"artifactFileName\",\"artifactId\"],\"members\":{\"artifactFileName\":{},\"artifactId\":{}}}},\"nextToken\":{}}}},\"ListBackendEnvironments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/backendenvironments\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"environmentName\":{\"location\":\"querystring\",\"locationName\":\"environmentName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"backendEnvironments\"],\"members\":{\"backendEnvironments\":{\"type\":\"list\",\"member\":{\"shape\":\"S1h\"}},\"nextToken\":{}}}},\"ListBranches\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/branches\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"branches\"],\"members\":{\"branches\":{\"type\":\"list\",\"member\":{\"shape\":\"S1o\"}},\"nextToken\":{}}}},\"ListDomainAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/domains\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainAssociations\"],\"members\":{\"domainAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"S2e\"}},\"nextToken\":{}}}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/branches/{branchName}/jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobSummaries\"],\"members\":{\"jobSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"S33\"}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sm\"}}}},\"ListWebhooks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apps/{appId}/webhooks\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"webhooks\"],\"members\":{\"webhooks\":{\"type\":\"list\",\"member\":{\"shape\":\"S2p\"}},\"nextToken\":{}}}},\"StartDeployment\":{\"http\":{\"requestUri\":\"/apps/{appId}/branches/{branchName}/deployments/start\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"jobId\":{},\"sourceUrl\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobSummary\"],\"members\":{\"jobSummary\":{\"shape\":\"S33\"}}}},\"StartJob\":{\"http\":{\"requestUri\":\"/apps/{appId}/branches/{branchName}/jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\",\"jobType\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"jobId\":{},\"jobType\":{},\"jobReason\":{},\"commitId\":{},\"commitMessage\":{},\"commitTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobSummary\"],\"members\":{\"jobSummary\":{\"shape\":\"S33\"}}}},\"StopJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apps/{appId}/branches/{branchName}/jobs/{jobId}/stop\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\",\"jobId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobSummary\"],\"members\":{\"jobSummary\":{\"shape\":\"S33\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApp\":{\"http\":{\"requestUri\":\"/apps/{appId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"name\":{},\"description\":{},\"platform\":{},\"iamServiceRoleArn\":{},\"environmentVariables\":{\"shape\":\"S9\"},\"enableBranchAutoBuild\":{\"type\":\"boolean\"},\"enableBranchAutoDeletion\":{\"type\":\"boolean\"},\"enableBasicAuth\":{\"type\":\"boolean\"},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"customRules\":{\"shape\":\"Sg\"},\"buildSpec\":{},\"customHeaders\":{},\"enableAutoBranchCreation\":{\"type\":\"boolean\"},\"autoBranchCreationPatterns\":{\"shape\":\"Ss\"},\"autoBranchCreationConfig\":{\"shape\":\"Su\"},\"repository\":{},\"oauthToken\":{\"shape\":\"S7\"},\"accessToken\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"app\"],\"members\":{\"app\":{\"shape\":\"S12\"}}}},\"UpdateBranch\":{\"http\":{\"requestUri\":\"/apps/{appId}/branches/{branchName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"branchName\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"branchName\":{\"location\":\"uri\",\"locationName\":\"branchName\"},\"description\":{},\"framework\":{},\"stage\":{},\"enableNotification\":{\"type\":\"boolean\"},\"enableAutoBuild\":{\"type\":\"boolean\"},\"environmentVariables\":{\"shape\":\"S9\"},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"enableBasicAuth\":{\"type\":\"boolean\"},\"enablePerformanceMode\":{\"type\":\"boolean\"},\"buildSpec\":{},\"ttl\":{},\"displayName\":{},\"enablePullRequestPreview\":{\"type\":\"boolean\"},\"pullRequestEnvironmentName\":{},\"backendEnvironmentArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"branch\"],\"members\":{\"branch\":{\"shape\":\"S1o\"}}}},\"UpdateDomainAssociation\":{\"http\":{\"requestUri\":\"/apps/{appId}/domains/{domainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"appId\",\"domainName\",\"subDomainSettings\"],\"members\":{\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"domainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"},\"enableAutoSubDomain\":{\"type\":\"boolean\"},\"subDomainSettings\":{\"shape\":\"S27\"},\"autoSubDomainCreationPatterns\":{\"shape\":\"S2a\"},\"autoSubDomainIAMRole\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainAssociation\"],\"members\":{\"domainAssociation\":{\"shape\":\"S2e\"}}}},\"UpdateWebhook\":{\"http\":{\"requestUri\":\"/webhooks/{webhookId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"webhookId\"],\"members\":{\"webhookId\":{\"location\":\"uri\",\"locationName\":\"webhookId\"},\"branchName\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"webhook\"],\"members\":{\"webhook\":{\"shape\":\"S2p\"}}}}},\"shapes\":{\"S7\":{\"type\":\"string\",\"sensitive\":true},\"S8\":{\"type\":\"string\",\"sensitive\":true},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sf\":{\"type\":\"string\",\"sensitive\":true},\"Sg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"source\",\"target\"],\"members\":{\"source\":{},\"target\":{},\"status\":{},\"condition\":{}}}},\"Sm\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Ss\":{\"type\":\"list\",\"member\":{}},\"Su\":{\"type\":\"structure\",\"members\":{\"stage\":{},\"framework\":{},\"enableAutoBuild\":{\"type\":\"boolean\"},\"environmentVariables\":{\"shape\":\"S9\"},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"enableBasicAuth\":{\"type\":\"boolean\"},\"enablePerformanceMode\":{\"type\":\"boolean\"},\"buildSpec\":{},\"enablePullRequestPreview\":{\"type\":\"boolean\"},\"pullRequestEnvironmentName\":{}}},\"S12\":{\"type\":\"structure\",\"required\":[\"appId\",\"appArn\",\"name\",\"description\",\"repository\",\"platform\",\"createTime\",\"updateTime\",\"environmentVariables\",\"defaultDomain\",\"enableBranchAutoBuild\",\"enableBasicAuth\"],\"members\":{\"appId\":{},\"appArn\":{},\"name\":{},\"tags\":{\"shape\":\"Sm\"},\"description\":{},\"repository\":{},\"platform\":{},\"createTime\":{\"type\":\"timestamp\"},\"updateTime\":{\"type\":\"timestamp\"},\"iamServiceRoleArn\":{},\"environmentVariables\":{\"shape\":\"S9\"},\"defaultDomain\":{},\"enableBranchAutoBuild\":{\"type\":\"boolean\"},\"enableBranchAutoDeletion\":{\"type\":\"boolean\"},\"enableBasicAuth\":{\"type\":\"boolean\"},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"customRules\":{\"shape\":\"Sg\"},\"productionBranch\":{\"type\":\"structure\",\"members\":{\"lastDeployTime\":{\"type\":\"timestamp\"},\"status\":{},\"thumbnailUrl\":{},\"branchName\":{}}},\"buildSpec\":{},\"customHeaders\":{},\"enableAutoBranchCreation\":{\"type\":\"boolean\"},\"autoBranchCreationPatterns\":{\"shape\":\"Ss\"},\"autoBranchCreationConfig\":{\"shape\":\"Su\"}}},\"S1h\":{\"type\":\"structure\",\"required\":[\"backendEnvironmentArn\",\"environmentName\",\"createTime\",\"updateTime\"],\"members\":{\"backendEnvironmentArn\":{},\"environmentName\":{},\"stackName\":{},\"deploymentArtifacts\":{},\"createTime\":{\"type\":\"timestamp\"},\"updateTime\":{\"type\":\"timestamp\"}}},\"S1o\":{\"type\":\"structure\",\"required\":[\"branchArn\",\"branchName\",\"description\",\"stage\",\"displayName\",\"enableNotification\",\"createTime\",\"updateTime\",\"environmentVariables\",\"enableAutoBuild\",\"customDomains\",\"framework\",\"activeJobId\",\"totalNumberOfJobs\",\"enableBasicAuth\",\"ttl\",\"enablePullRequestPreview\"],\"members\":{\"branchArn\":{},\"branchName\":{},\"description\":{},\"tags\":{\"shape\":\"Sm\"},\"stage\":{},\"displayName\":{},\"enableNotification\":{\"type\":\"boolean\"},\"createTime\":{\"type\":\"timestamp\"},\"updateTime\":{\"type\":\"timestamp\"},\"environmentVariables\":{\"shape\":\"S9\"},\"enableAutoBuild\":{\"type\":\"boolean\"},\"customDomains\":{\"type\":\"list\",\"member\":{}},\"framework\":{},\"activeJobId\":{},\"totalNumberOfJobs\":{},\"enableBasicAuth\":{\"type\":\"boolean\"},\"enablePerformanceMode\":{\"type\":\"boolean\"},\"thumbnailUrl\":{},\"basicAuthCredentials\":{\"shape\":\"Sf\"},\"buildSpec\":{},\"ttl\":{},\"associatedResources\":{\"type\":\"list\",\"member\":{}},\"enablePullRequestPreview\":{\"type\":\"boolean\"},\"pullRequestEnvironmentName\":{},\"destinationBranch\":{},\"sourceBranch\":{},\"backendEnvironmentArn\":{}}},\"S27\":{\"type\":\"list\",\"member\":{\"shape\":\"S28\"}},\"S28\":{\"type\":\"structure\",\"required\":[\"prefix\",\"branchName\"],\"members\":{\"prefix\":{},\"branchName\":{}}},\"S2a\":{\"type\":\"list\",\"member\":{}},\"S2e\":{\"type\":\"structure\",\"required\":[\"domainAssociationArn\",\"domainName\",\"enableAutoSubDomain\",\"domainStatus\",\"statusReason\",\"subDomains\"],\"members\":{\"domainAssociationArn\":{},\"domainName\":{},\"enableAutoSubDomain\":{\"type\":\"boolean\"},\"autoSubDomainCreationPatterns\":{\"shape\":\"S2a\"},\"autoSubDomainIAMRole\":{},\"domainStatus\":{},\"statusReason\":{},\"certificateVerificationDNSRecord\":{},\"subDomains\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"subDomainSetting\",\"verified\",\"dnsRecord\"],\"members\":{\"subDomainSetting\":{\"shape\":\"S28\"},\"verified\":{\"type\":\"boolean\"},\"dnsRecord\":{}}}}}},\"S2p\":{\"type\":\"structure\",\"required\":[\"webhookArn\",\"webhookId\",\"webhookUrl\",\"branchName\",\"description\",\"createTime\",\"updateTime\"],\"members\":{\"webhookArn\":{},\"webhookId\":{},\"webhookUrl\":{},\"branchName\":{},\"description\":{},\"createTime\":{\"type\":\"timestamp\"},\"updateTime\":{\"type\":\"timestamp\"}}},\"S33\":{\"type\":\"structure\",\"required\":[\"jobArn\",\"jobId\",\"commitId\",\"commitMessage\",\"commitTime\",\"startTime\",\"status\",\"jobType\"],\"members\":{\"jobArn\":{},\"jobId\":{},\"commitId\":{},\"commitMessage\":{},\"commitTime\":{\"type\":\"timestamp\"},\"startTime\":{\"type\":\"timestamp\"},\"status\":{},\"endTime\":{\"type\":\"timestamp\"},\"jobType\":{}}}}}");

/***/ }),

/***/ 89594:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 70211:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2020-08-11\",\"endpointPrefix\":\"amplifybackend\",\"signingName\":\"amplifybackend\",\"serviceFullName\":\"AmplifyBackend\",\"serviceId\":\"AmplifyBackend\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"amplifybackend-2020-08-11\",\"signatureVersion\":\"v4\"},\"operations\":{\"CloneBackend\":{\"http\":{\"requestUri\":\"/backend/{appId}/environments/{backendEnvironmentName}/clone\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"TargetEnvironmentName\":{\"locationName\":\"targetEnvironmentName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"TargetEnvironmentName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"CreateBackend\":{\"http\":{\"requestUri\":\"/backend\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"AppName\":{\"locationName\":\"appName\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"locationName\":\"resourceConfig\",\"type\":\"structure\",\"members\":{}},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"AppName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"CreateBackendAPI\":{\"http\":{\"requestUri\":\"/backend/{appId}/api\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"shape\":\"S8\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"ResourceName\",\"BackendEnvironmentName\",\"ResourceConfig\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"CreateBackendAuth\":{\"http\":{\"requestUri\":\"/backend/{appId}/auth\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"shape\":\"Si\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"ResourceName\",\"BackendEnvironmentName\",\"ResourceConfig\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"CreateBackendConfig\":{\"http\":{\"requestUri\":\"/backend/{appId}/config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendManagerAppId\":{\"locationName\":\"backendManagerAppId\"}},\"required\":[\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"JobId\":{\"locationName\":\"jobId\"},\"Status\":{\"locationName\":\"status\"}}}},\"CreateToken\":{\"http\":{\"requestUri\":\"/backend/{appId}/challenge\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"}},\"required\":[\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"ChallengeCode\":{\"locationName\":\"challengeCode\"},\"SessionId\":{\"locationName\":\"sessionId\"},\"Ttl\":{\"locationName\":\"ttl\"}}}},\"DeleteBackend\":{\"http\":{\"requestUri\":\"/backend/{appId}/environments/{backendEnvironmentName}/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"DeleteBackendAPI\":{\"http\":{\"requestUri\":\"/backend/{appId}/api/{backendEnvironmentName}/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"shape\":\"S8\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"DeleteBackendAuth\":{\"http\":{\"requestUri\":\"/backend/{appId}/auth/{backendEnvironmentName}/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"DeleteToken\":{\"http\":{\"requestUri\":\"/backend/{appId}/challenge/{sessionId}/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"SessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"}},\"required\":[\"SessionId\",\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"IsSuccess\":{\"locationName\":\"isSuccess\",\"type\":\"boolean\"}}}},\"GenerateBackendAPIModels\":{\"http\":{\"requestUri\":\"/backend/{appId}/api/{backendEnvironmentName}/generateModels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"GetBackend\":{\"http\":{\"requestUri\":\"/backend/{appId}/details\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"}},\"required\":[\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AmplifyMetaConfig\":{\"locationName\":\"amplifyMetaConfig\"},\"AppId\":{\"locationName\":\"appId\"},\"AppName\":{\"locationName\":\"appName\"},\"BackendEnvironmentList\":{\"shape\":\"S11\",\"locationName\":\"backendEnvironmentList\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"}}}},\"GetBackendAPI\":{\"http\":{\"requestUri\":\"/backend/{appId}/api/{backendEnvironmentName}/details\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"shape\":\"S8\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"ResourceConfig\":{\"shape\":\"S8\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}}}},\"GetBackendAPIModels\":{\"http\":{\"requestUri\":\"/backend/{appId}/api/{backendEnvironmentName}/getModels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Models\":{\"locationName\":\"models\"},\"Status\":{\"locationName\":\"status\"}}}},\"GetBackendAuth\":{\"http\":{\"requestUri\":\"/backend/{appId}/auth/{backendEnvironmentName}/details\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"ResourceConfig\":{\"shape\":\"Si\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}}}},\"GetBackendJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backend/{appId}/job/{backendEnvironmentName}/{jobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"JobId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"CreateTime\":{\"locationName\":\"createTime\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"},\"UpdateTime\":{\"locationName\":\"updateTime\"}}}},\"GetToken\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backend/{appId}/challenge/{sessionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"SessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"}},\"required\":[\"SessionId\",\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"ChallengeCode\":{\"locationName\":\"challengeCode\"},\"SessionId\":{\"locationName\":\"sessionId\"},\"Ttl\":{\"locationName\":\"ttl\"}}}},\"ListBackendJobs\":{\"http\":{\"requestUri\":\"/backend/{appId}/job/{backendEnvironmentName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"JobId\":{\"locationName\":\"jobId\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"locationName\":\"jobs\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"CreateTime\":{\"locationName\":\"createTime\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"},\"UpdateTime\":{\"locationName\":\"updateTime\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"RemoveAllBackends\":{\"http\":{\"requestUri\":\"/backend/{appId}/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"CleanAmplifyApp\":{\"locationName\":\"cleanAmplifyApp\",\"type\":\"boolean\"}},\"required\":[\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"RemoveBackendConfig\":{\"http\":{\"requestUri\":\"/backend/{appId}/config/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"}},\"required\":[\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Error\":{\"locationName\":\"error\"}}}},\"UpdateBackendAPI\":{\"http\":{\"requestUri\":\"/backend/{appId}/api/{backendEnvironmentName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"shape\":\"S8\",\"locationName\":\"resourceConfig\"},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"UpdateBackendAuth\":{\"http\":{\"requestUri\":\"/backend/{appId}/auth/{backendEnvironmentName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"ResourceConfig\":{\"locationName\":\"resourceConfig\",\"type\":\"structure\",\"members\":{\"AuthResources\":{\"locationName\":\"authResources\"},\"IdentityPoolConfigs\":{\"locationName\":\"identityPoolConfigs\",\"type\":\"structure\",\"members\":{\"UnauthenticatedLogin\":{\"locationName\":\"unauthenticatedLogin\",\"type\":\"boolean\"}}},\"Service\":{\"locationName\":\"service\"},\"UserPoolConfigs\":{\"locationName\":\"userPoolConfigs\",\"type\":\"structure\",\"members\":{\"ForgotPassword\":{\"locationName\":\"forgotPassword\",\"type\":\"structure\",\"members\":{\"DeliveryMethod\":{\"locationName\":\"deliveryMethod\"},\"EmailSettings\":{\"shape\":\"Sq\",\"locationName\":\"emailSettings\"},\"SmsSettings\":{\"shape\":\"Sr\",\"locationName\":\"smsSettings\"}}},\"Mfa\":{\"locationName\":\"mfa\",\"type\":\"structure\",\"members\":{\"MFAMode\":{},\"Settings\":{\"shape\":\"Su\",\"locationName\":\"settings\"}}},\"OAuth\":{\"locationName\":\"oAuth\",\"type\":\"structure\",\"members\":{\"DomainPrefix\":{\"locationName\":\"domainPrefix\"},\"OAuthGrantType\":{\"locationName\":\"oAuthGrantType\"},\"OAuthScopes\":{\"shape\":\"Sz\",\"locationName\":\"oAuthScopes\"},\"RedirectSignInURIs\":{\"shape\":\"S11\",\"locationName\":\"redirectSignInURIs\"},\"RedirectSignOutURIs\":{\"shape\":\"S11\",\"locationName\":\"redirectSignOutURIs\"},\"SocialProviderSettings\":{\"shape\":\"S12\",\"locationName\":\"socialProviderSettings\"}}},\"PasswordPolicy\":{\"locationName\":\"passwordPolicy\",\"type\":\"structure\",\"members\":{\"AdditionalConstraints\":{\"shape\":\"S15\",\"locationName\":\"additionalConstraints\"},\"MinimumLength\":{\"locationName\":\"minimumLength\",\"type\":\"double\"}}}}}},\"required\":[\"AuthResources\",\"UserPoolConfigs\",\"Service\"]},\"ResourceName\":{\"locationName\":\"resourceName\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"ResourceName\",\"ResourceConfig\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}}}},\"UpdateBackendConfig\":{\"http\":{\"requestUri\":\"/backend/{appId}/config/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"LoginAuthConfig\":{\"shape\":\"S2n\",\"locationName\":\"loginAuthConfig\"}},\"required\":[\"AppId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendManagerAppId\":{\"locationName\":\"backendManagerAppId\"},\"Error\":{\"locationName\":\"error\"},\"LoginAuthConfig\":{\"shape\":\"S2n\",\"locationName\":\"loginAuthConfig\"}}}},\"UpdateBackendJob\":{\"http\":{\"requestUri\":\"/backend/{appId}/job/{backendEnvironmentName}/{jobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"location\":\"uri\",\"locationName\":\"backendEnvironmentName\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"}},\"required\":[\"AppId\",\"BackendEnvironmentName\",\"JobId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{\"locationName\":\"appId\"},\"BackendEnvironmentName\":{\"locationName\":\"backendEnvironmentName\"},\"CreateTime\":{\"locationName\":\"createTime\"},\"Error\":{\"locationName\":\"error\"},\"JobId\":{\"locationName\":\"jobId\"},\"Operation\":{\"locationName\":\"operation\"},\"Status\":{\"locationName\":\"status\"},\"UpdateTime\":{\"locationName\":\"updateTime\"}}}}},\"shapes\":{\"S8\":{\"type\":\"structure\",\"members\":{\"AdditionalAuthTypes\":{\"locationName\":\"additionalAuthTypes\",\"type\":\"list\",\"member\":{\"shape\":\"Sa\"}},\"ApiName\":{\"locationName\":\"apiName\"},\"ConflictResolution\":{\"locationName\":\"conflictResolution\",\"type\":\"structure\",\"members\":{\"ResolutionStrategy\":{\"locationName\":\"resolutionStrategy\"}}},\"DefaultAuthType\":{\"shape\":\"Sa\",\"locationName\":\"defaultAuthType\"},\"Service\":{\"locationName\":\"service\"},\"TransformSchema\":{\"locationName\":\"transformSchema\"}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"Mode\":{\"locationName\":\"mode\"},\"Settings\":{\"locationName\":\"settings\",\"type\":\"structure\",\"members\":{\"CognitoUserPoolId\":{\"locationName\":\"cognitoUserPoolId\"},\"Description\":{\"locationName\":\"description\"},\"ExpirationTime\":{\"locationName\":\"expirationTime\",\"type\":\"double\"},\"OpenIDAuthTTL\":{\"locationName\":\"openIDAuthTTL\"},\"OpenIDClientId\":{\"locationName\":\"openIDClientId\"},\"OpenIDIatTTL\":{\"locationName\":\"openIDIatTTL\"},\"OpenIDIssueURL\":{\"locationName\":\"openIDIssueURL\"},\"OpenIDProviderName\":{\"locationName\":\"openIDProviderName\"}}}}},\"Si\":{\"type\":\"structure\",\"members\":{\"AuthResources\":{\"locationName\":\"authResources\"},\"IdentityPoolConfigs\":{\"locationName\":\"identityPoolConfigs\",\"type\":\"structure\",\"members\":{\"IdentityPoolName\":{\"locationName\":\"identityPoolName\"},\"UnauthenticatedLogin\":{\"locationName\":\"unauthenticatedLogin\",\"type\":\"boolean\"}},\"required\":[\"UnauthenticatedLogin\",\"IdentityPoolName\"]},\"Service\":{\"locationName\":\"service\"},\"UserPoolConfigs\":{\"locationName\":\"userPoolConfigs\",\"type\":\"structure\",\"members\":{\"ForgotPassword\":{\"locationName\":\"forgotPassword\",\"type\":\"structure\",\"members\":{\"DeliveryMethod\":{\"locationName\":\"deliveryMethod\"},\"EmailSettings\":{\"shape\":\"Sq\",\"locationName\":\"emailSettings\"},\"SmsSettings\":{\"shape\":\"Sr\",\"locationName\":\"smsSettings\"}},\"required\":[\"DeliveryMethod\"]},\"Mfa\":{\"locationName\":\"mfa\",\"type\":\"structure\",\"members\":{\"MFAMode\":{},\"Settings\":{\"shape\":\"Su\",\"locationName\":\"settings\"}},\"required\":[\"MFAMode\"]},\"OAuth\":{\"locationName\":\"oAuth\",\"type\":\"structure\",\"members\":{\"DomainPrefix\":{\"locationName\":\"domainPrefix\"},\"OAuthGrantType\":{\"locationName\":\"oAuthGrantType\"},\"OAuthScopes\":{\"shape\":\"Sz\",\"locationName\":\"oAuthScopes\"},\"RedirectSignInURIs\":{\"shape\":\"S11\",\"locationName\":\"redirectSignInURIs\"},\"RedirectSignOutURIs\":{\"shape\":\"S11\",\"locationName\":\"redirectSignOutURIs\"},\"SocialProviderSettings\":{\"shape\":\"S12\",\"locationName\":\"socialProviderSettings\"}},\"required\":[\"RedirectSignOutURIs\",\"RedirectSignInURIs\",\"OAuthGrantType\",\"OAuthScopes\"]},\"PasswordPolicy\":{\"locationName\":\"passwordPolicy\",\"type\":\"structure\",\"members\":{\"AdditionalConstraints\":{\"shape\":\"S15\",\"locationName\":\"additionalConstraints\"},\"MinimumLength\":{\"locationName\":\"minimumLength\",\"type\":\"double\"}},\"required\":[\"MinimumLength\"]},\"RequiredSignUpAttributes\":{\"locationName\":\"requiredSignUpAttributes\",\"type\":\"list\",\"member\":{}},\"SignInMethod\":{\"locationName\":\"signInMethod\"},\"UserPoolName\":{\"locationName\":\"userPoolName\"}},\"required\":[\"RequiredSignUpAttributes\",\"SignInMethod\",\"UserPoolName\"]}},\"required\":[\"AuthResources\",\"UserPoolConfigs\",\"Service\"]},\"Sq\":{\"type\":\"structure\",\"members\":{\"EmailMessage\":{\"locationName\":\"emailMessage\"},\"EmailSubject\":{\"locationName\":\"emailSubject\"}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"SmsMessage\":{\"locationName\":\"smsMessage\"}}},\"Su\":{\"type\":\"structure\",\"members\":{\"MfaTypes\":{\"locationName\":\"mfaTypes\",\"type\":\"list\",\"member\":{}},\"SmsMessage\":{\"locationName\":\"smsMessage\"}}},\"Sz\":{\"type\":\"list\",\"member\":{}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S12\":{\"type\":\"structure\",\"members\":{\"Facebook\":{\"shape\":\"S13\"},\"Google\":{\"shape\":\"S13\"},\"LoginWithAmazon\":{\"shape\":\"S13\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"ClientId\":{\"locationName\":\"client_id\"},\"ClientSecret\":{\"locationName\":\"client_secret\"}}},\"S15\":{\"type\":\"list\",\"member\":{}},\"S2n\":{\"type\":\"structure\",\"members\":{\"AwsCognitoIdentityPoolId\":{\"locationName\":\"aws_cognito_identity_pool_id\"},\"AwsCognitoRegion\":{\"locationName\":\"aws_cognito_region\"},\"AwsUserPoolsId\":{\"locationName\":\"aws_user_pools_id\"},\"AwsUserPoolsWebClientId\":{\"locationName\":\"aws_user_pools_web_client_id\"}}}}}");

/***/ }),

/***/ 72426:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBackendJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Jobs\"}}}");

/***/ }),

/***/ 33895:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-07-09\",\"endpointPrefix\":\"apigateway\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon API Gateway\",\"serviceId\":\"API Gateway\",\"signatureVersion\":\"v4\",\"uid\":\"apigateway-2015-07-09\"},\"operations\":{\"CreateApiKey\":{\"http\":{\"requestUri\":\"/apikeys\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"enabled\":{\"type\":\"boolean\"},\"generateDistinctId\":{\"type\":\"boolean\"},\"value\":{},\"stageKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"restApiId\":{},\"stageName\":{}}}},\"customerId\":{},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S7\"}},\"CreateAuthorizer\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/authorizers\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"name\",\"type\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"name\":{},\"type\":{},\"providerARNs\":{\"shape\":\"Sc\"},\"authType\":{},\"authorizerUri\":{},\"authorizerCredentials\":{},\"identitySource\":{},\"identityValidationExpression\":{},\"authorizerResultTtlInSeconds\":{\"type\":\"integer\"}}},\"output\":{\"shape\":\"Sf\"}},\"CreateBasePathMapping\":{\"http\":{\"requestUri\":\"/domainnames/{domain_name}/basepathmappings\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"restApiId\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"},\"basePath\":{},\"restApiId\":{},\"stage\":{}}},\"output\":{\"shape\":\"Sh\"}},\"CreateDeployment\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/deployments\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{},\"stageDescription\":{},\"description\":{},\"cacheClusterEnabled\":{\"type\":\"boolean\"},\"cacheClusterSize\":{},\"variables\":{\"shape\":\"S6\"},\"canarySettings\":{\"type\":\"structure\",\"members\":{\"percentTraffic\":{\"type\":\"double\"},\"stageVariableOverrides\":{\"shape\":\"S6\"},\"useStageCache\":{\"type\":\"boolean\"}}},\"tracingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"Sn\"}},\"CreateDocumentationPart\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/documentation/parts\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"location\",\"properties\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"location\":{\"shape\":\"Ss\"},\"properties\":{}}},\"output\":{\"shape\":\"Sv\"}},\"CreateDocumentationVersion\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/documentation/versions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationVersion\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationVersion\":{},\"stageName\":{},\"description\":{}}},\"output\":{\"shape\":\"Sx\"}},\"CreateDomainName\":{\"http\":{\"requestUri\":\"/domainnames\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{},\"certificateName\":{},\"certificateBody\":{},\"certificatePrivateKey\":{},\"certificateChain\":{},\"certificateArn\":{},\"regionalCertificateName\":{},\"regionalCertificateArn\":{},\"endpointConfiguration\":{\"shape\":\"Sz\"},\"tags\":{\"shape\":\"S6\"},\"securityPolicy\":{},\"mutualTlsAuthentication\":{\"type\":\"structure\",\"members\":{\"truststoreUri\":{},\"truststoreVersion\":{}}}}},\"output\":{\"shape\":\"S14\"}},\"CreateModel\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/models\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"name\",\"contentType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"name\":{},\"description\":{},\"schema\":{},\"contentType\":{}}},\"output\":{\"shape\":\"S18\"}},\"CreateRequestValidator\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/requestvalidators\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"name\":{},\"validateRequestBody\":{\"type\":\"boolean\"},\"validateRequestParameters\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S1a\"}},\"CreateResource\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/resources/{parent_id}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"parentId\",\"pathPart\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"parentId\":{\"location\":\"uri\",\"locationName\":\"parent_id\"},\"pathPart\":{}}},\"output\":{\"shape\":\"S1c\"}},\"CreateRestApi\":{\"http\":{\"requestUri\":\"/restapis\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"version\":{},\"cloneFrom\":{},\"binaryMediaTypes\":{\"shape\":\"S9\"},\"minimumCompressionSize\":{\"type\":\"integer\"},\"apiKeySource\":{},\"endpointConfiguration\":{\"shape\":\"Sz\"},\"policy\":{},\"tags\":{\"shape\":\"S6\"},\"disableExecuteApiEndpoint\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S1t\"}},\"CreateStage\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/stages\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\",\"deploymentId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{},\"deploymentId\":{},\"description\":{},\"cacheClusterEnabled\":{\"type\":\"boolean\"},\"cacheClusterSize\":{},\"variables\":{\"shape\":\"S6\"},\"documentationVersion\":{},\"canarySettings\":{\"shape\":\"S1v\"},\"tracingEnabled\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S1w\"}},\"CreateUsagePlan\":{\"http\":{\"requestUri\":\"/usageplans\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"apiStages\":{\"shape\":\"S23\"},\"throttle\":{\"shape\":\"S26\"},\"quota\":{\"shape\":\"S27\"},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S29\"}},\"CreateUsagePlanKey\":{\"http\":{\"requestUri\":\"/usageplans/{usageplanId}/keys\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\",\"keyId\",\"keyType\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"keyId\":{},\"keyType\":{}}},\"output\":{\"shape\":\"S2b\"}},\"CreateVpcLink\":{\"http\":{\"requestUri\":\"/vpclinks\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"targetArns\"],\"members\":{\"name\":{},\"description\":{},\"targetArns\":{\"shape\":\"S9\"},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S2d\"}},\"DeleteApiKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/apikeys/{api_Key}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"apiKey\"],\"members\":{\"apiKey\":{\"location\":\"uri\",\"locationName\":\"api_Key\"}}}},\"DeleteAuthorizer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/authorizers/{authorizer_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"authorizerId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"authorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizer_id\"}}}},\"DeleteBasePathMapping\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/domainnames/{domain_name}/basepathmappings/{base_path}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"basePath\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"},\"basePath\":{\"location\":\"uri\",\"locationName\":\"base_path\"}}}},\"DeleteClientCertificate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/clientcertificates/{clientcertificate_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"clientCertificateId\"],\"members\":{\"clientCertificateId\":{\"location\":\"uri\",\"locationName\":\"clientcertificate_id\"}}}},\"DeleteDeployment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/deployments/{deployment_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"deploymentId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"deploymentId\":{\"location\":\"uri\",\"locationName\":\"deployment_id\"}}}},\"DeleteDocumentationPart\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/documentation/parts/{part_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationPartId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationPartId\":{\"location\":\"uri\",\"locationName\":\"part_id\"}}}},\"DeleteDocumentationVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/documentation/versions/{doc_version}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationVersion\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationVersion\":{\"location\":\"uri\",\"locationName\":\"doc_version\"}}}},\"DeleteDomainName\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/domainnames/{domain_name}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"}}}},\"DeleteGatewayResponse\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/gatewayresponses/{response_type}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"responseType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"responseType\":{\"location\":\"uri\",\"locationName\":\"response_type\"}}}},\"DeleteIntegration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"}}}},\"DeleteIntegrationResponse\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"}}}},\"DeleteMethod\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"}}}},\"DeleteMethodResponse\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"}}}},\"DeleteModel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/models/{model_name}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"modelName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"modelName\":{\"location\":\"uri\",\"locationName\":\"model_name\"}}}},\"DeleteRequestValidator\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/requestvalidators/{requestvalidator_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"requestValidatorId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"requestValidatorId\":{\"location\":\"uri\",\"locationName\":\"requestvalidator_id\"}}}},\"DeleteResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"}}}},\"DeleteRestApi\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"}}}},\"DeleteStage\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"}}}},\"DeleteUsagePlan\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/usageplans/{usageplanId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"}}}},\"DeleteUsagePlanKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/usageplans/{usageplanId}/keys/{keyId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\",\"keyId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"keyId\":{\"location\":\"uri\",\"locationName\":\"keyId\"}}}},\"DeleteVpcLink\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/vpclinks/{vpclink_id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"vpcLinkId\"],\"members\":{\"vpcLinkId\":{\"location\":\"uri\",\"locationName\":\"vpclink_id\"}}}},\"FlushStageAuthorizersCache\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}/cache/authorizers\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"}}}},\"FlushStageCache\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}/cache/data\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"}}}},\"GenerateClientCertificate\":{\"http\":{\"requestUri\":\"/clientcertificates\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"description\":{},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S34\"}},\"GetAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/account\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"shape\":\"S36\"}},\"GetApiKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apikeys/{api_Key}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiKey\"],\"members\":{\"apiKey\":{\"location\":\"uri\",\"locationName\":\"api_Key\"},\"includeValue\":{\"location\":\"querystring\",\"locationName\":\"includeValue\",\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S7\"}},\"GetApiKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/apikeys\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"nameQuery\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"customerId\":{\"location\":\"querystring\",\"locationName\":\"customerId\"},\"includeValues\":{\"location\":\"querystring\",\"locationName\":\"includeValues\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"warnings\":{\"shape\":\"S9\"},\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S7\"}}}}},\"GetAuthorizer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/authorizers/{authorizer_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"authorizerId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"authorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizer_id\"}}},\"output\":{\"shape\":\"Sf\"}},\"GetAuthorizers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/authorizers\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"Sf\"}}}}},\"GetBasePathMapping\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domainnames/{domain_name}/basepathmappings/{base_path}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"basePath\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"},\"basePath\":{\"location\":\"uri\",\"locationName\":\"base_path\"}}},\"output\":{\"shape\":\"Sh\"}},\"GetBasePathMappings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domainnames/{domain_name}/basepathmappings\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}}}}},\"GetClientCertificate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clientcertificates/{clientcertificate_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientCertificateId\"],\"members\":{\"clientCertificateId\":{\"location\":\"uri\",\"locationName\":\"clientcertificate_id\"}}},\"output\":{\"shape\":\"S34\"}},\"GetClientCertificates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clientcertificates\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S34\"}}}}},\"GetDeployment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/deployments/{deployment_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"deploymentId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"deploymentId\":{\"location\":\"uri\",\"locationName\":\"deployment_id\"},\"embed\":{\"shape\":\"S9\",\"location\":\"querystring\",\"locationName\":\"embed\"}}},\"output\":{\"shape\":\"Sn\"}},\"GetDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/deployments\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}}}}},\"GetDocumentationPart\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/documentation/parts/{part_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationPartId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationPartId\":{\"location\":\"uri\",\"locationName\":\"part_id\"}}},\"output\":{\"shape\":\"Sv\"}},\"GetDocumentationParts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/documentation/parts\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"type\":{\"location\":\"querystring\",\"locationName\":\"type\"},\"nameQuery\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"path\":{\"location\":\"querystring\",\"locationName\":\"path\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"locationStatus\":{\"location\":\"querystring\",\"locationName\":\"locationStatus\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}}}}},\"GetDocumentationVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/documentation/versions/{doc_version}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationVersion\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationVersion\":{\"location\":\"uri\",\"locationName\":\"doc_version\"}}},\"output\":{\"shape\":\"Sx\"}},\"GetDocumentationVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/documentation/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"Sx\"}}}}},\"GetDomainName\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domainnames/{domain_name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"}}},\"output\":{\"shape\":\"S14\"}},\"GetDomainNames\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domainnames\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S14\"}}}}},\"GetExport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}/exports/{export_type}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\",\"exportType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"},\"exportType\":{\"location\":\"uri\",\"locationName\":\"export_type\"},\"parameters\":{\"shape\":\"S6\",\"location\":\"querystring\"},\"accepts\":{\"location\":\"header\",\"locationName\":\"Accept\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"contentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"body\":{\"type\":\"blob\"}},\"payload\":\"body\"}},\"GetGatewayResponse\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/gatewayresponses/{response_type}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"responseType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"responseType\":{\"location\":\"uri\",\"locationName\":\"response_type\"}}},\"output\":{\"shape\":\"S48\"}},\"GetGatewayResponses\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/gatewayresponses\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S48\"}}}}},\"GetIntegration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"}}},\"output\":{\"shape\":\"S1j\"}},\"GetIntegrationResponse\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"}}},\"output\":{\"shape\":\"S1p\"}},\"GetMethod\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"}}},\"output\":{\"shape\":\"S1e\"}},\"GetMethodResponse\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"}}},\"output\":{\"shape\":\"S1h\"}},\"GetModel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/models/{model_name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"modelName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"modelName\":{\"location\":\"uri\",\"locationName\":\"model_name\"},\"flatten\":{\"location\":\"querystring\",\"locationName\":\"flatten\",\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S18\"}},\"GetModelTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/models/{model_name}/default_template\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"modelName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"modelName\":{\"location\":\"uri\",\"locationName\":\"model_name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"value\":{}}}},\"GetModels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/models\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S18\"}}}}},\"GetRequestValidator\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/requestvalidators/{requestvalidator_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"requestValidatorId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"requestValidatorId\":{\"location\":\"uri\",\"locationName\":\"requestvalidator_id\"}}},\"output\":{\"shape\":\"S1a\"}},\"GetRequestValidators\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/requestvalidators\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S1a\"}}}}},\"GetResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"embed\":{\"shape\":\"S9\",\"location\":\"querystring\",\"locationName\":\"embed\"}}},\"output\":{\"shape\":\"S1c\"}},\"GetResources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/resources\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"embed\":{\"shape\":\"S9\",\"location\":\"querystring\",\"locationName\":\"embed\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S1c\"}}}}},\"GetRestApi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"}}},\"output\":{\"shape\":\"S1t\"}},\"GetRestApis\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}}}}},\"GetSdk\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}/sdks/{sdk_type}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\",\"sdkType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"},\"sdkType\":{\"location\":\"uri\",\"locationName\":\"sdk_type\"},\"parameters\":{\"shape\":\"S6\",\"location\":\"querystring\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"contentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"body\":{\"type\":\"blob\"}},\"payload\":\"body\"}},\"GetSdkType\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sdktypes/{sdktype_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"sdktype_id\"}}},\"output\":{\"shape\":\"S51\"}},\"GetSdkTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sdktypes\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S51\"}}}}},\"GetStage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"}}},\"output\":{\"shape\":\"S1w\"}},\"GetStages\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restapis/{restapi_id}/stages\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"deploymentId\":{\"location\":\"querystring\",\"locationName\":\"deploymentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"item\":{\"type\":\"list\",\"member\":{\"shape\":\"S1w\"}}}}},\"GetTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource_arn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resource_arn\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S6\"}}}},\"GetUsage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/usageplans/{usageplanId}/usage\"},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\",\"startDate\",\"endDate\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"keyId\":{\"location\":\"querystring\",\"locationName\":\"keyId\"},\"startDate\":{\"location\":\"querystring\",\"locationName\":\"startDate\"},\"endDate\":{\"location\":\"querystring\",\"locationName\":\"endDate\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"shape\":\"S5e\"}},\"GetUsagePlan\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/usageplans/{usageplanId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"}}},\"output\":{\"shape\":\"S29\"}},\"GetUsagePlanKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/usageplans/{usageplanId}/keys/{keyId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\",\"keyId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"keyId\":{\"location\":\"uri\",\"locationName\":\"keyId\"}}},\"output\":{\"shape\":\"S2b\"}},\"GetUsagePlanKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/usageplans/{usageplanId}/keys\"},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"nameQuery\":{\"location\":\"querystring\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S2b\"}}}}},\"GetUsagePlans\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/usageplans\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"keyId\":{\"location\":\"querystring\",\"locationName\":\"keyId\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S29\"}}}}},\"GetVpcLink\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/vpclinks/{vpclink_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"vpcLinkId\"],\"members\":{\"vpcLinkId\":{\"location\":\"uri\",\"locationName\":\"vpclink_id\"}}},\"output\":{\"shape\":\"S2d\"}},\"GetVpcLinks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/vpclinks\"},\"input\":{\"type\":\"structure\",\"members\":{\"position\":{\"location\":\"querystring\",\"locationName\":\"position\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"position\":{},\"items\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}}}}},\"ImportApiKeys\":{\"http\":{\"requestUri\":\"/apikeys?mode=import\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"body\",\"format\"],\"members\":{\"body\":{\"type\":\"blob\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"failOnWarnings\":{\"location\":\"querystring\",\"locationName\":\"failonwarnings\",\"type\":\"boolean\"}},\"payload\":\"body\"},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S9\"},\"warnings\":{\"shape\":\"S9\"}}}},\"ImportDocumentationParts\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}/documentation/parts\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"body\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"mode\":{\"location\":\"querystring\",\"locationName\":\"mode\"},\"failOnWarnings\":{\"location\":\"querystring\",\"locationName\":\"failonwarnings\",\"type\":\"boolean\"},\"body\":{\"type\":\"blob\"}},\"payload\":\"body\"},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S9\"},\"warnings\":{\"shape\":\"S9\"}}}},\"ImportRestApi\":{\"http\":{\"requestUri\":\"/restapis?mode=import\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"body\"],\"members\":{\"failOnWarnings\":{\"location\":\"querystring\",\"locationName\":\"failonwarnings\",\"type\":\"boolean\"},\"parameters\":{\"shape\":\"S6\",\"location\":\"querystring\"},\"body\":{\"type\":\"blob\"}},\"payload\":\"body\"},\"output\":{\"shape\":\"S1t\"}},\"PutGatewayResponse\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}/gatewayresponses/{response_type}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"responseType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"responseType\":{\"location\":\"uri\",\"locationName\":\"response_type\"},\"statusCode\":{},\"responseParameters\":{\"shape\":\"S6\"},\"responseTemplates\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S48\"}},\"PutIntegration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"type\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"type\":{},\"integrationHttpMethod\":{\"locationName\":\"httpMethod\"},\"uri\":{},\"connectionType\":{},\"connectionId\":{},\"credentials\":{},\"requestParameters\":{\"shape\":\"S6\"},\"requestTemplates\":{\"shape\":\"S6\"},\"passthroughBehavior\":{},\"cacheNamespace\":{},\"cacheKeyParameters\":{\"shape\":\"S9\"},\"contentHandling\":{},\"timeoutInMillis\":{\"type\":\"integer\"},\"tlsConfig\":{\"shape\":\"S1q\"}}},\"output\":{\"shape\":\"S1j\"}},\"PutIntegrationResponse\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"},\"selectionPattern\":{},\"responseParameters\":{\"shape\":\"S6\"},\"responseTemplates\":{\"shape\":\"S6\"},\"contentHandling\":{}}},\"output\":{\"shape\":\"S1p\"}},\"PutMethod\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"authorizationType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"authorizationType\":{},\"authorizerId\":{},\"apiKeyRequired\":{\"type\":\"boolean\"},\"operationName\":{},\"requestParameters\":{\"shape\":\"S1f\"},\"requestModels\":{\"shape\":\"S6\"},\"requestValidatorId\":{},\"authorizationScopes\":{\"shape\":\"S9\"}}},\"output\":{\"shape\":\"S1e\"}},\"PutMethodResponse\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"},\"responseParameters\":{\"shape\":\"S1f\"},\"responseModels\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S1h\"}},\"PutRestApi\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restapis/{restapi_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"body\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"mode\":{\"location\":\"querystring\",\"locationName\":\"mode\"},\"failOnWarnings\":{\"location\":\"querystring\",\"locationName\":\"failonwarnings\",\"type\":\"boolean\"},\"parameters\":{\"shape\":\"S6\",\"location\":\"querystring\"},\"body\":{\"type\":\"blob\"}},\"payload\":\"body\"},\"output\":{\"shape\":\"S1t\"}},\"TagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/tags/{resource_arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resource_arn\"},\"tags\":{\"shape\":\"S6\"}}}},\"TestInvokeAuthorizer\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/authorizers/{authorizer_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"authorizerId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"authorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizer_id\"},\"headers\":{\"shape\":\"S6\"},\"multiValueHeaders\":{\"shape\":\"S6a\"},\"pathWithQueryString\":{},\"body\":{},\"stageVariables\":{\"shape\":\"S6\"},\"additionalContext\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"clientStatus\":{\"type\":\"integer\"},\"log\":{},\"latency\":{\"type\":\"long\"},\"principalId\":{},\"policy\":{},\"authorization\":{\"shape\":\"S6a\"},\"claims\":{\"shape\":\"S6\"}}}},\"TestInvokeMethod\":{\"http\":{\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"pathWithQueryString\":{},\"body\":{},\"headers\":{\"shape\":\"S6\"},\"multiValueHeaders\":{\"shape\":\"S6a\"},\"clientCertificateId\":{},\"stageVariables\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{\"type\":\"integer\"},\"body\":{},\"headers\":{\"shape\":\"S6\"},\"multiValueHeaders\":{\"shape\":\"S6a\"},\"log\":{},\"latency\":{\"type\":\"long\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource_arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resource_arn\"},\"tagKeys\":{\"shape\":\"S9\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}}}},\"UpdateAccount\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/account\"},\"input\":{\"type\":\"structure\",\"members\":{\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S36\"}},\"UpdateApiKey\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/apikeys/{api_Key}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiKey\"],\"members\":{\"apiKey\":{\"location\":\"uri\",\"locationName\":\"api_Key\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S7\"}},\"UpdateAuthorizer\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/authorizers/{authorizer_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"authorizerId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"authorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizer_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"Sf\"}},\"UpdateBasePathMapping\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/domainnames/{domain_name}/basepathmappings/{base_path}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"basePath\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"},\"basePath\":{\"location\":\"uri\",\"locationName\":\"base_path\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"Sh\"}},\"UpdateClientCertificate\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/clientcertificates/{clientcertificate_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientCertificateId\"],\"members\":{\"clientCertificateId\":{\"location\":\"uri\",\"locationName\":\"clientcertificate_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S34\"}},\"UpdateDeployment\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/deployments/{deployment_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"deploymentId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"deploymentId\":{\"location\":\"uri\",\"locationName\":\"deployment_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"Sn\"}},\"UpdateDocumentationPart\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/documentation/parts/{part_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationPartId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationPartId\":{\"location\":\"uri\",\"locationName\":\"part_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"Sv\"}},\"UpdateDocumentationVersion\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/documentation/versions/{doc_version}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"documentationVersion\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"documentationVersion\":{\"location\":\"uri\",\"locationName\":\"doc_version\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"Sx\"}},\"UpdateDomainName\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/domainnames/{domain_name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{\"location\":\"uri\",\"locationName\":\"domain_name\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S14\"}},\"UpdateGatewayResponse\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/gatewayresponses/{response_type}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"responseType\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"responseType\":{\"location\":\"uri\",\"locationName\":\"response_type\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S48\"}},\"UpdateIntegration\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1j\"}},\"UpdateIntegrationResponse\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/integration/responses/{status_code}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1p\"}},\"UpdateMethod\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1e\"}},\"UpdateMethodResponse\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}/methods/{http_method}/responses/{status_code}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\",\"httpMethod\",\"statusCode\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"httpMethod\":{\"location\":\"uri\",\"locationName\":\"http_method\"},\"statusCode\":{\"location\":\"uri\",\"locationName\":\"status_code\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1h\"}},\"UpdateModel\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/models/{model_name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"modelName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"modelName\":{\"location\":\"uri\",\"locationName\":\"model_name\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S18\"}},\"UpdateRequestValidator\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/requestvalidators/{requestvalidator_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"requestValidatorId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"requestValidatorId\":{\"location\":\"uri\",\"locationName\":\"requestvalidator_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1a\"}},\"UpdateResource\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/resources/{resource_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"resourceId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"resourceId\":{\"location\":\"uri\",\"locationName\":\"resource_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1c\"}},\"UpdateRestApi\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1t\"}},\"UpdateStage\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/restapis/{restapi_id}/stages/{stage_name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"restApiId\",\"stageName\"],\"members\":{\"restApiId\":{\"location\":\"uri\",\"locationName\":\"restapi_id\"},\"stageName\":{\"location\":\"uri\",\"locationName\":\"stage_name\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S1w\"}},\"UpdateUsage\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/usageplans/{usageplanId}/keys/{keyId}/usage\"},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\",\"keyId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"keyId\":{\"location\":\"uri\",\"locationName\":\"keyId\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S5e\"}},\"UpdateUsagePlan\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/usageplans/{usageplanId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"usagePlanId\"],\"members\":{\"usagePlanId\":{\"location\":\"uri\",\"locationName\":\"usageplanId\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S29\"}},\"UpdateVpcLink\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/vpclinks/{vpclink_id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"vpcLinkId\"],\"members\":{\"vpcLinkId\":{\"location\":\"uri\",\"locationName\":\"vpclink_id\"},\"patchOperations\":{\"shape\":\"S6g\"}}},\"output\":{\"shape\":\"S2d\"}}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S7\":{\"type\":\"structure\",\"members\":{\"id\":{},\"value\":{},\"name\":{},\"customerId\":{},\"description\":{},\"enabled\":{\"type\":\"boolean\"},\"createdDate\":{\"type\":\"timestamp\"},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"stageKeys\":{\"shape\":\"S9\"},\"tags\":{\"shape\":\"S6\"}}},\"S9\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"list\",\"member\":{}},\"Sf\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"type\":{},\"providerARNs\":{\"shape\":\"Sc\"},\"authType\":{},\"authorizerUri\":{},\"authorizerCredentials\":{},\"identitySource\":{},\"identityValidationExpression\":{},\"authorizerResultTtlInSeconds\":{\"type\":\"integer\"}}},\"Sh\":{\"type\":\"structure\",\"members\":{\"basePath\":{},\"restApiId\":{},\"stage\":{}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"createdDate\":{\"type\":\"timestamp\"},\"apiSummary\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"authorizationType\":{},\"apiKeyRequired\":{\"type\":\"boolean\"}}}}}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"path\":{},\"method\":{},\"statusCode\":{},\"name\":{}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"id\":{},\"location\":{\"shape\":\"Ss\"},\"properties\":{}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"version\":{},\"createdDate\":{\"type\":\"timestamp\"},\"description\":{}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"types\":{\"type\":\"list\",\"member\":{}},\"vpcEndpointIds\":{\"shape\":\"S9\"}}},\"S14\":{\"type\":\"structure\",\"members\":{\"domainName\":{},\"certificateName\":{},\"certificateArn\":{},\"certificateUploadDate\":{\"type\":\"timestamp\"},\"regionalDomainName\":{},\"regionalHostedZoneId\":{},\"regionalCertificateName\":{},\"regionalCertificateArn\":{},\"distributionDomainName\":{},\"distributionHostedZoneId\":{},\"endpointConfiguration\":{\"shape\":\"Sz\"},\"domainNameStatus\":{},\"domainNameStatusMessage\":{},\"securityPolicy\":{},\"tags\":{\"shape\":\"S6\"},\"mutualTlsAuthentication\":{\"type\":\"structure\",\"members\":{\"truststoreUri\":{},\"truststoreVersion\":{},\"truststoreWarnings\":{\"shape\":\"S9\"}}}}},\"S18\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"schema\":{},\"contentType\":{}}},\"S1a\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"validateRequestBody\":{\"type\":\"boolean\"},\"validateRequestParameters\":{\"type\":\"boolean\"}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"id\":{},\"parentId\":{},\"pathPart\":{},\"path\":{},\"resourceMethods\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S1e\"}}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"httpMethod\":{},\"authorizationType\":{},\"authorizerId\":{},\"apiKeyRequired\":{\"type\":\"boolean\"},\"requestValidatorId\":{},\"operationName\":{},\"requestParameters\":{\"shape\":\"S1f\"},\"requestModels\":{\"shape\":\"S6\"},\"methodResponses\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S1h\"}},\"methodIntegration\":{\"shape\":\"S1j\"},\"authorizationScopes\":{\"shape\":\"S9\"}}},\"S1f\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"boolean\"}},\"S1h\":{\"type\":\"structure\",\"members\":{\"statusCode\":{},\"responseParameters\":{\"shape\":\"S1f\"},\"responseModels\":{\"shape\":\"S6\"}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"type\":{},\"httpMethod\":{},\"uri\":{},\"connectionType\":{},\"connectionId\":{},\"credentials\":{},\"requestParameters\":{\"shape\":\"S6\"},\"requestTemplates\":{\"shape\":\"S6\"},\"passthroughBehavior\":{},\"contentHandling\":{},\"timeoutInMillis\":{\"type\":\"integer\"},\"cacheNamespace\":{},\"cacheKeyParameters\":{\"shape\":\"S9\"},\"integrationResponses\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S1p\"}},\"tlsConfig\":{\"shape\":\"S1q\"}}},\"S1p\":{\"type\":\"structure\",\"members\":{\"statusCode\":{},\"selectionPattern\":{},\"responseParameters\":{\"shape\":\"S6\"},\"responseTemplates\":{\"shape\":\"S6\"},\"contentHandling\":{}}},\"S1q\":{\"type\":\"structure\",\"members\":{\"insecureSkipVerification\":{\"type\":\"boolean\"}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"warnings\":{\"shape\":\"S9\"},\"binaryMediaTypes\":{\"shape\":\"S9\"},\"minimumCompressionSize\":{\"type\":\"integer\"},\"apiKeySource\":{},\"endpointConfiguration\":{\"shape\":\"Sz\"},\"policy\":{},\"tags\":{\"shape\":\"S6\"},\"disableExecuteApiEndpoint\":{\"type\":\"boolean\"}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"percentTraffic\":{\"type\":\"double\"},\"deploymentId\":{},\"stageVariableOverrides\":{\"shape\":\"S6\"},\"useStageCache\":{\"type\":\"boolean\"}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"clientCertificateId\":{},\"stageName\":{},\"description\":{},\"cacheClusterEnabled\":{\"type\":\"boolean\"},\"cacheClusterSize\":{},\"cacheClusterStatus\":{},\"methodSettings\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"metricsEnabled\":{\"type\":\"boolean\"},\"loggingLevel\":{},\"dataTraceEnabled\":{\"type\":\"boolean\"},\"throttlingBurstLimit\":{\"type\":\"integer\"},\"throttlingRateLimit\":{\"type\":\"double\"},\"cachingEnabled\":{\"type\":\"boolean\"},\"cacheTtlInSeconds\":{\"type\":\"integer\"},\"cacheDataEncrypted\":{\"type\":\"boolean\"},\"requireAuthorizationForCacheControl\":{\"type\":\"boolean\"},\"unauthorizedCacheControlHeaderStrategy\":{}}}},\"variables\":{\"shape\":\"S6\"},\"documentationVersion\":{},\"accessLogSettings\":{\"type\":\"structure\",\"members\":{\"format\":{},\"destinationArn\":{}}},\"canarySettings\":{\"shape\":\"S1v\"},\"tracingEnabled\":{\"type\":\"boolean\"},\"webAclArn\":{},\"tags\":{\"shape\":\"S6\"},\"createdDate\":{\"type\":\"timestamp\"},\"lastUpdatedDate\":{\"type\":\"timestamp\"}}},\"S23\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"apiId\":{},\"stage\":{},\"throttle\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S26\"}}}}},\"S26\":{\"type\":\"structure\",\"members\":{\"burstLimit\":{\"type\":\"integer\"},\"rateLimit\":{\"type\":\"double\"}}},\"S27\":{\"type\":\"structure\",\"members\":{\"limit\":{\"type\":\"integer\"},\"offset\":{\"type\":\"integer\"},\"period\":{}}},\"S29\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"apiStages\":{\"shape\":\"S23\"},\"throttle\":{\"shape\":\"S26\"},\"quota\":{\"shape\":\"S27\"},\"productCode\":{},\"tags\":{\"shape\":\"S6\"}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"id\":{},\"type\":{},\"value\":{},\"name\":{}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"targetArns\":{\"shape\":\"S9\"},\"status\":{},\"statusMessage\":{},\"tags\":{\"shape\":\"S6\"}}},\"S34\":{\"type\":\"structure\",\"members\":{\"clientCertificateId\":{},\"description\":{},\"pemEncodedCertificate\":{},\"createdDate\":{\"type\":\"timestamp\"},\"expirationDate\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S6\"}}},\"S36\":{\"type\":\"structure\",\"members\":{\"cloudwatchRoleArn\":{},\"throttleSettings\":{\"shape\":\"S26\"},\"features\":{\"shape\":\"S9\"},\"apiKeyVersion\":{}}},\"S48\":{\"type\":\"structure\",\"members\":{\"responseType\":{},\"statusCode\":{},\"responseParameters\":{\"shape\":\"S6\"},\"responseTemplates\":{\"shape\":\"S6\"},\"defaultResponse\":{\"type\":\"boolean\"}}},\"S51\":{\"type\":\"structure\",\"members\":{\"id\":{},\"friendlyName\":{},\"description\":{},\"configurationProperties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"friendlyName\":{},\"description\":{},\"required\":{\"type\":\"boolean\"},\"defaultValue\":{}}}}}},\"S5e\":{\"type\":\"structure\",\"members\":{\"usagePlanId\":{},\"startDate\":{},\"endDate\":{},\"position\":{},\"items\":{\"locationName\":\"values\",\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{\"type\":\"long\"}}}}}},\"S6a\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S9\"}},\"S6g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"op\":{},\"path\":{},\"value\":{},\"from\":{}}}}}}");

/***/ }),

/***/ 61271:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetApiKeys\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetBasePathMappings\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetClientCertificates\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetDeployments\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetDomainNames\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetModels\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetResources\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetRestApis\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetUsage\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetUsagePlanKeys\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetUsagePlans\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"},\"GetVpcLinks\":{\"input_token\":\"position\",\"limit_key\":\"limit\",\"output_token\":\"position\",\"result_key\":\"items\"}}}");

/***/ }),

/***/ 31775:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-11-29\",\"endpointPrefix\":\"execute-api\",\"signingName\":\"execute-api\",\"serviceFullName\":\"AmazonApiGatewayManagementApi\",\"serviceId\":\"ApiGatewayManagementApi\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"apigatewaymanagementapi-2018-11-29\",\"signatureVersion\":\"v4\"},\"operations\":{\"DeleteConnection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/@connections/{connectionId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectionId\":{\"location\":\"uri\",\"locationName\":\"connectionId\"}},\"required\":[\"ConnectionId\"]}},\"GetConnection\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/@connections/{connectionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectionId\":{\"location\":\"uri\",\"locationName\":\"connectionId\"}},\"required\":[\"ConnectionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectedAt\":{\"shape\":\"S5\",\"locationName\":\"connectedAt\"},\"Identity\":{\"locationName\":\"identity\",\"type\":\"structure\",\"members\":{\"SourceIp\":{\"locationName\":\"sourceIp\"},\"UserAgent\":{\"locationName\":\"userAgent\"}},\"required\":[\"SourceIp\",\"UserAgent\"]},\"LastActiveAt\":{\"shape\":\"S5\",\"locationName\":\"lastActiveAt\"}}}},\"PostToConnection\":{\"http\":{\"requestUri\":\"/@connections/{connectionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Data\":{\"type\":\"blob\"},\"ConnectionId\":{\"location\":\"uri\",\"locationName\":\"connectionId\"}},\"required\":[\"ConnectionId\",\"Data\"],\"payload\":\"Data\"}}},\"shapes\":{\"S5\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 19890:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 18767:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-11-29\",\"endpointPrefix\":\"apigateway\",\"signingName\":\"apigateway\",\"serviceFullName\":\"AmazonApiGatewayV2\",\"serviceId\":\"ApiGatewayV2\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"apigatewayv2-2018-11-29\",\"signatureVersion\":\"v4\"},\"operations\":{\"CreateApi\":{\"http\":{\"requestUri\":\"/v2/apis\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Target\":{\"locationName\":\"target\"},\"Version\":{\"locationName\":\"version\"}},\"required\":[\"ProtocolType\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{\"locationName\":\"apiEndpoint\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiId\":{\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"ImportInfo\":{\"shape\":\"Sm\",\"locationName\":\"importInfo\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Version\":{\"locationName\":\"version\"},\"Warnings\":{\"shape\":\"Sm\",\"locationName\":\"warnings\"}}}},\"CreateApiMapping\":{\"http\":{\"requestUri\":\"/v2/domainnames/{domainName}/apimappings\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"locationName\":\"apiId\"},\"ApiMappingKey\":{\"locationName\":\"apiMappingKey\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"},\"Stage\":{\"locationName\":\"stage\"}},\"required\":[\"DomainName\",\"Stage\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"locationName\":\"apiId\"},\"ApiMappingId\":{\"locationName\":\"apiMappingId\"},\"ApiMappingKey\":{\"locationName\":\"apiMappingKey\"},\"Stage\":{\"locationName\":\"stage\"}}}},\"CreateAuthorizer\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/authorizers\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"AuthorizerCredentialsArn\":{\"locationName\":\"authorizerCredentialsArn\"},\"AuthorizerPayloadFormatVersion\":{\"locationName\":\"authorizerPayloadFormatVersion\"},\"AuthorizerResultTtlInSeconds\":{\"locationName\":\"authorizerResultTtlInSeconds\",\"type\":\"integer\"},\"AuthorizerType\":{\"locationName\":\"authorizerType\"},\"AuthorizerUri\":{\"locationName\":\"authorizerUri\"},\"EnableSimpleResponses\":{\"locationName\":\"enableSimpleResponses\",\"type\":\"boolean\"},\"IdentitySource\":{\"shape\":\"Ss\",\"locationName\":\"identitySource\"},\"IdentityValidationExpression\":{\"locationName\":\"identityValidationExpression\"},\"JwtConfiguration\":{\"shape\":\"St\",\"locationName\":\"jwtConfiguration\"},\"Name\":{\"locationName\":\"name\"}},\"required\":[\"ApiId\",\"AuthorizerType\",\"IdentitySource\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizerCredentialsArn\":{\"locationName\":\"authorizerCredentialsArn\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"AuthorizerPayloadFormatVersion\":{\"locationName\":\"authorizerPayloadFormatVersion\"},\"AuthorizerResultTtlInSeconds\":{\"locationName\":\"authorizerResultTtlInSeconds\",\"type\":\"integer\"},\"AuthorizerType\":{\"locationName\":\"authorizerType\"},\"AuthorizerUri\":{\"locationName\":\"authorizerUri\"},\"EnableSimpleResponses\":{\"locationName\":\"enableSimpleResponses\",\"type\":\"boolean\"},\"IdentitySource\":{\"shape\":\"Ss\",\"locationName\":\"identitySource\"},\"IdentityValidationExpression\":{\"locationName\":\"identityValidationExpression\"},\"JwtConfiguration\":{\"shape\":\"St\",\"locationName\":\"jwtConfiguration\"},\"Name\":{\"locationName\":\"name\"}}}},\"CreateDeployment\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/deployments\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"Description\":{\"locationName\":\"description\"},\"StageName\":{\"locationName\":\"stageName\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AutoDeployed\":{\"locationName\":\"autoDeployed\",\"type\":\"boolean\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"DeploymentStatus\":{\"locationName\":\"deploymentStatus\"},\"DeploymentStatusMessage\":{\"locationName\":\"deploymentStatusMessage\"},\"Description\":{\"locationName\":\"description\"}}}},\"CreateDomainName\":{\"http\":{\"requestUri\":\"/v2/domainnames\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"DomainName\":{\"locationName\":\"domainName\"},\"DomainNameConfigurations\":{\"shape\":\"S10\",\"locationName\":\"domainNameConfigurations\"},\"MutualTlsAuthentication\":{\"shape\":\"S15\",\"locationName\":\"mutualTlsAuthentication\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"DomainName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiMappingSelectionExpression\":{\"locationName\":\"apiMappingSelectionExpression\"},\"DomainName\":{\"locationName\":\"domainName\"},\"DomainNameConfigurations\":{\"shape\":\"S10\",\"locationName\":\"domainNameConfigurations\"},\"MutualTlsAuthentication\":{\"shape\":\"S17\",\"locationName\":\"mutualTlsAuthentication\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"CreateIntegration\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/integrations\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"ConnectionType\":{\"locationName\":\"connectionType\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"IntegrationMethod\":{\"locationName\":\"integrationMethod\"},\"IntegrationSubtype\":{\"locationName\":\"integrationSubtype\"},\"IntegrationType\":{\"locationName\":\"integrationType\"},\"IntegrationUri\":{\"locationName\":\"integrationUri\"},\"PassthroughBehavior\":{\"locationName\":\"passthroughBehavior\"},\"PayloadFormatVersion\":{\"locationName\":\"payloadFormatVersion\"},\"RequestParameters\":{\"shape\":\"S1e\",\"locationName\":\"requestParameters\"},\"RequestTemplates\":{\"shape\":\"S1f\",\"locationName\":\"requestTemplates\"},\"ResponseParameters\":{\"shape\":\"S1h\",\"locationName\":\"responseParameters\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"},\"TimeoutInMillis\":{\"locationName\":\"timeoutInMillis\",\"type\":\"integer\"},\"TlsConfig\":{\"shape\":\"S1j\",\"locationName\":\"tlsConfig\"}},\"required\":[\"ApiId\",\"IntegrationType\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"ConnectionType\":{\"locationName\":\"connectionType\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"IntegrationId\":{\"locationName\":\"integrationId\"},\"IntegrationMethod\":{\"locationName\":\"integrationMethod\"},\"IntegrationResponseSelectionExpression\":{\"locationName\":\"integrationResponseSelectionExpression\"},\"IntegrationSubtype\":{\"locationName\":\"integrationSubtype\"},\"IntegrationType\":{\"locationName\":\"integrationType\"},\"IntegrationUri\":{\"locationName\":\"integrationUri\"},\"PassthroughBehavior\":{\"locationName\":\"passthroughBehavior\"},\"PayloadFormatVersion\":{\"locationName\":\"payloadFormatVersion\"},\"RequestParameters\":{\"shape\":\"S1e\",\"locationName\":\"requestParameters\"},\"RequestTemplates\":{\"shape\":\"S1f\",\"locationName\":\"requestTemplates\"},\"ResponseParameters\":{\"shape\":\"S1h\",\"locationName\":\"responseParameters\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"},\"TimeoutInMillis\":{\"locationName\":\"timeoutInMillis\",\"type\":\"integer\"},\"TlsConfig\":{\"shape\":\"S1l\",\"locationName\":\"tlsConfig\"}}}},\"CreateIntegrationResponse\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}/integrationresponses\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"},\"IntegrationResponseKey\":{\"locationName\":\"integrationResponseKey\"},\"ResponseParameters\":{\"shape\":\"S1e\",\"locationName\":\"responseParameters\"},\"ResponseTemplates\":{\"shape\":\"S1f\",\"locationName\":\"responseTemplates\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"}},\"required\":[\"ApiId\",\"IntegrationId\",\"IntegrationResponseKey\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"IntegrationResponseId\":{\"locationName\":\"integrationResponseId\"},\"IntegrationResponseKey\":{\"locationName\":\"integrationResponseKey\"},\"ResponseParameters\":{\"shape\":\"S1e\",\"locationName\":\"responseParameters\"},\"ResponseTemplates\":{\"shape\":\"S1f\",\"locationName\":\"responseTemplates\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"}}}},\"CreateModel\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/models\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ContentType\":{\"locationName\":\"contentType\"},\"Description\":{\"locationName\":\"description\"},\"Name\":{\"locationName\":\"name\"},\"Schema\":{\"locationName\":\"schema\"}},\"required\":[\"ApiId\",\"Schema\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"locationName\":\"contentType\"},\"Description\":{\"locationName\":\"description\"},\"ModelId\":{\"locationName\":\"modelId\"},\"Name\":{\"locationName\":\"name\"},\"Schema\":{\"locationName\":\"schema\"}}}},\"CreateRoute\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/routes\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ApiKeyRequired\":{\"locationName\":\"apiKeyRequired\",\"type\":\"boolean\"},\"AuthorizationScopes\":{\"shape\":\"S1s\",\"locationName\":\"authorizationScopes\"},\"AuthorizationType\":{\"locationName\":\"authorizationType\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"OperationName\":{\"locationName\":\"operationName\"},\"RequestModels\":{\"shape\":\"S1u\",\"locationName\":\"requestModels\"},\"RequestParameters\":{\"shape\":\"S1v\",\"locationName\":\"requestParameters\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteResponseSelectionExpression\":{\"locationName\":\"routeResponseSelectionExpression\"},\"Target\":{\"locationName\":\"target\"}},\"required\":[\"ApiId\",\"RouteKey\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiKeyRequired\":{\"locationName\":\"apiKeyRequired\",\"type\":\"boolean\"},\"AuthorizationScopes\":{\"shape\":\"S1s\",\"locationName\":\"authorizationScopes\"},\"AuthorizationType\":{\"locationName\":\"authorizationType\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"OperationName\":{\"locationName\":\"operationName\"},\"RequestModels\":{\"shape\":\"S1u\",\"locationName\":\"requestModels\"},\"RequestParameters\":{\"shape\":\"S1v\",\"locationName\":\"requestParameters\"},\"RouteId\":{\"locationName\":\"routeId\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteResponseSelectionExpression\":{\"locationName\":\"routeResponseSelectionExpression\"},\"Target\":{\"locationName\":\"target\"}}}},\"CreateRouteResponse\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}/routeresponses\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"ResponseModels\":{\"shape\":\"S1u\",\"locationName\":\"responseModels\"},\"ResponseParameters\":{\"shape\":\"S1v\",\"locationName\":\"responseParameters\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"},\"RouteResponseKey\":{\"locationName\":\"routeResponseKey\"}},\"required\":[\"ApiId\",\"RouteId\",\"RouteResponseKey\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"ResponseModels\":{\"shape\":\"S1u\",\"locationName\":\"responseModels\"},\"ResponseParameters\":{\"shape\":\"S1v\",\"locationName\":\"responseParameters\"},\"RouteResponseId\":{\"locationName\":\"routeResponseId\"},\"RouteResponseKey\":{\"locationName\":\"routeResponseKey\"}}}},\"CreateStage\":{\"http\":{\"requestUri\":\"/v2/apis/{apiId}/stages\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"AccessLogSettings\":{\"shape\":\"S21\",\"locationName\":\"accessLogSettings\"},\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"AutoDeploy\":{\"locationName\":\"autoDeploy\",\"type\":\"boolean\"},\"ClientCertificateId\":{\"locationName\":\"clientCertificateId\"},\"DefaultRouteSettings\":{\"shape\":\"S22\",\"locationName\":\"defaultRouteSettings\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"},\"RouteSettings\":{\"shape\":\"S26\",\"locationName\":\"routeSettings\"},\"StageName\":{\"locationName\":\"stageName\"},\"StageVariables\":{\"shape\":\"S27\",\"locationName\":\"stageVariables\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"ApiId\",\"StageName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AccessLogSettings\":{\"shape\":\"S21\",\"locationName\":\"accessLogSettings\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"AutoDeploy\":{\"locationName\":\"autoDeploy\",\"type\":\"boolean\"},\"ClientCertificateId\":{\"locationName\":\"clientCertificateId\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DefaultRouteSettings\":{\"shape\":\"S22\",\"locationName\":\"defaultRouteSettings\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"},\"LastDeploymentStatusMessage\":{\"locationName\":\"lastDeploymentStatusMessage\"},\"LastUpdatedDate\":{\"shape\":\"Sl\",\"locationName\":\"lastUpdatedDate\"},\"RouteSettings\":{\"shape\":\"S26\",\"locationName\":\"routeSettings\"},\"StageName\":{\"locationName\":\"stageName\"},\"StageVariables\":{\"shape\":\"S27\",\"locationName\":\"stageVariables\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"CreateVpcLink\":{\"http\":{\"requestUri\":\"/v2/vpclinks\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"SecurityGroupIds\":{\"shape\":\"S2b\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S2c\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"SubnetIds\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Name\":{\"locationName\":\"name\"},\"SecurityGroupIds\":{\"shape\":\"S2b\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S2c\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"VpcLinkId\":{\"locationName\":\"vpcLinkId\"},\"VpcLinkStatus\":{\"locationName\":\"vpcLinkStatus\"},\"VpcLinkStatusMessage\":{\"locationName\":\"vpcLinkStatusMessage\"},\"VpcLinkVersion\":{\"locationName\":\"vpcLinkVersion\"}}}},\"DeleteAccessLogSettings\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/stages/{stageName}/accesslogsettings\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"StageName\":{\"location\":\"uri\",\"locationName\":\"stageName\"}},\"required\":[\"StageName\",\"ApiId\"]}},\"DeleteApi\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}},\"required\":[\"ApiId\"]}},\"DeleteApiMapping\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/domainnames/{domainName}/apimappings/{apiMappingId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiMappingId\":{\"location\":\"uri\",\"locationName\":\"apiMappingId\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"}},\"required\":[\"ApiMappingId\",\"DomainName\"]}},\"DeleteAuthorizer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/authorizers/{authorizerId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"AuthorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizerId\"}},\"required\":[\"AuthorizerId\",\"ApiId\"]}},\"DeleteCorsConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/cors\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}},\"required\":[\"ApiId\"]}},\"DeleteDeployment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/deployments/{deploymentId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"DeploymentId\":{\"location\":\"uri\",\"locationName\":\"deploymentId\"}},\"required\":[\"ApiId\",\"DeploymentId\"]}},\"DeleteDomainName\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/domainnames/{domainName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"}},\"required\":[\"DomainName\"]}},\"DeleteIntegration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"}},\"required\":[\"ApiId\",\"IntegrationId\"]}},\"DeleteIntegrationResponse\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}/integrationresponses/{integrationResponseId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"},\"IntegrationResponseId\":{\"location\":\"uri\",\"locationName\":\"integrationResponseId\"}},\"required\":[\"ApiId\",\"IntegrationResponseId\",\"IntegrationId\"]}},\"DeleteModel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/models/{modelId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ModelId\":{\"location\":\"uri\",\"locationName\":\"modelId\"}},\"required\":[\"ModelId\",\"ApiId\"]}},\"DeleteRoute\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"}},\"required\":[\"ApiId\",\"RouteId\"]}},\"DeleteRouteRequestParameter\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}/requestparameters/{requestParameterKey}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"RequestParameterKey\":{\"location\":\"uri\",\"locationName\":\"requestParameterKey\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"}},\"required\":[\"RequestParameterKey\",\"ApiId\",\"RouteId\"]}},\"DeleteRouteResponse\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}/routeresponses/{routeResponseId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"},\"RouteResponseId\":{\"location\":\"uri\",\"locationName\":\"routeResponseId\"}},\"required\":[\"RouteResponseId\",\"ApiId\",\"RouteId\"]}},\"DeleteRouteSettings\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/stages/{stageName}/routesettings/{routeKey}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"RouteKey\":{\"location\":\"uri\",\"locationName\":\"routeKey\"},\"StageName\":{\"location\":\"uri\",\"locationName\":\"stageName\"}},\"required\":[\"StageName\",\"RouteKey\",\"ApiId\"]}},\"DeleteStage\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/stages/{stageName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"StageName\":{\"location\":\"uri\",\"locationName\":\"stageName\"}},\"required\":[\"StageName\",\"ApiId\"]}},\"DeleteVpcLink\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/vpclinks/{vpcLinkId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"VpcLinkId\":{\"location\":\"uri\",\"locationName\":\"vpcLinkId\"}},\"required\":[\"VpcLinkId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ExportApi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/exports/{specification}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ExportVersion\":{\"location\":\"querystring\",\"locationName\":\"exportVersion\"},\"IncludeExtensions\":{\"location\":\"querystring\",\"locationName\":\"includeExtensions\",\"type\":\"boolean\"},\"OutputType\":{\"location\":\"querystring\",\"locationName\":\"outputType\"},\"Specification\":{\"location\":\"uri\",\"locationName\":\"specification\"},\"StageName\":{\"location\":\"querystring\",\"locationName\":\"stageName\"}},\"required\":[\"Specification\",\"OutputType\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"body\":{\"type\":\"blob\"}},\"payload\":\"body\"}},\"ResetAuthorizersCache\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/apis/{apiId}/stages/{stageName}/cache/authorizers\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"StageName\":{\"location\":\"uri\",\"locationName\":\"stageName\"}},\"required\":[\"StageName\",\"ApiId\"]}},\"GetApi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{\"locationName\":\"apiEndpoint\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiId\":{\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"ImportInfo\":{\"shape\":\"Sm\",\"locationName\":\"importInfo\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Version\":{\"locationName\":\"version\"},\"Warnings\":{\"shape\":\"Sm\",\"locationName\":\"warnings\"}}}},\"GetApiMapping\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/domainnames/{domainName}/apimappings/{apiMappingId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiMappingId\":{\"location\":\"uri\",\"locationName\":\"apiMappingId\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"}},\"required\":[\"ApiMappingId\",\"DomainName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"locationName\":\"apiId\"},\"ApiMappingId\":{\"locationName\":\"apiMappingId\"},\"ApiMappingKey\":{\"locationName\":\"apiMappingKey\"},\"Stage\":{\"locationName\":\"stage\"}}}},\"GetApiMappings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/domainnames/{domainName}/apimappings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"DomainName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"locationName\":\"apiId\"},\"ApiMappingId\":{\"locationName\":\"apiMappingId\"},\"ApiMappingKey\":{\"locationName\":\"apiMappingKey\"},\"Stage\":{\"locationName\":\"stage\"}},\"required\":[\"Stage\",\"ApiId\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetApis\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{\"locationName\":\"apiEndpoint\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiId\":{\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"ImportInfo\":{\"shape\":\"Sm\",\"locationName\":\"importInfo\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Version\":{\"locationName\":\"version\"},\"Warnings\":{\"shape\":\"Sm\",\"locationName\":\"warnings\"}},\"required\":[\"RouteSelectionExpression\",\"Name\",\"ProtocolType\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetAuthorizer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/authorizers/{authorizerId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"AuthorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizerId\"}},\"required\":[\"AuthorizerId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizerCredentialsArn\":{\"locationName\":\"authorizerCredentialsArn\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"AuthorizerPayloadFormatVersion\":{\"locationName\":\"authorizerPayloadFormatVersion\"},\"AuthorizerResultTtlInSeconds\":{\"locationName\":\"authorizerResultTtlInSeconds\",\"type\":\"integer\"},\"AuthorizerType\":{\"locationName\":\"authorizerType\"},\"AuthorizerUri\":{\"locationName\":\"authorizerUri\"},\"EnableSimpleResponses\":{\"locationName\":\"enableSimpleResponses\",\"type\":\"boolean\"},\"IdentitySource\":{\"shape\":\"Ss\",\"locationName\":\"identitySource\"},\"IdentityValidationExpression\":{\"locationName\":\"identityValidationExpression\"},\"JwtConfiguration\":{\"shape\":\"St\",\"locationName\":\"jwtConfiguration\"},\"Name\":{\"locationName\":\"name\"}}}},\"GetAuthorizers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/authorizers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AuthorizerCredentialsArn\":{\"locationName\":\"authorizerCredentialsArn\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"AuthorizerPayloadFormatVersion\":{\"locationName\":\"authorizerPayloadFormatVersion\"},\"AuthorizerResultTtlInSeconds\":{\"locationName\":\"authorizerResultTtlInSeconds\",\"type\":\"integer\"},\"AuthorizerType\":{\"locationName\":\"authorizerType\"},\"AuthorizerUri\":{\"locationName\":\"authorizerUri\"},\"EnableSimpleResponses\":{\"locationName\":\"enableSimpleResponses\",\"type\":\"boolean\"},\"IdentitySource\":{\"shape\":\"Ss\",\"locationName\":\"identitySource\"},\"IdentityValidationExpression\":{\"locationName\":\"identityValidationExpression\"},\"JwtConfiguration\":{\"shape\":\"St\",\"locationName\":\"jwtConfiguration\"},\"Name\":{\"locationName\":\"name\"}},\"required\":[\"Name\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetDeployment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/deployments/{deploymentId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"DeploymentId\":{\"location\":\"uri\",\"locationName\":\"deploymentId\"}},\"required\":[\"ApiId\",\"DeploymentId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AutoDeployed\":{\"locationName\":\"autoDeployed\",\"type\":\"boolean\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"DeploymentStatus\":{\"locationName\":\"deploymentStatus\"},\"DeploymentStatusMessage\":{\"locationName\":\"deploymentStatusMessage\"},\"Description\":{\"locationName\":\"description\"}}}},\"GetDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/deployments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutoDeployed\":{\"locationName\":\"autoDeployed\",\"type\":\"boolean\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"DeploymentStatus\":{\"locationName\":\"deploymentStatus\"},\"DeploymentStatusMessage\":{\"locationName\":\"deploymentStatusMessage\"},\"Description\":{\"locationName\":\"description\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetDomainName\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/domainnames/{domainName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"}},\"required\":[\"DomainName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiMappingSelectionExpression\":{\"locationName\":\"apiMappingSelectionExpression\"},\"DomainName\":{\"locationName\":\"domainName\"},\"DomainNameConfigurations\":{\"shape\":\"S10\",\"locationName\":\"domainNameConfigurations\"},\"MutualTlsAuthentication\":{\"shape\":\"S17\",\"locationName\":\"mutualTlsAuthentication\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"GetDomainNames\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/domainnames\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiMappingSelectionExpression\":{\"locationName\":\"apiMappingSelectionExpression\"},\"DomainName\":{\"locationName\":\"domainName\"},\"DomainNameConfigurations\":{\"shape\":\"S10\",\"locationName\":\"domainNameConfigurations\"},\"MutualTlsAuthentication\":{\"shape\":\"S17\",\"locationName\":\"mutualTlsAuthentication\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"DomainName\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetIntegration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"}},\"required\":[\"ApiId\",\"IntegrationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"ConnectionType\":{\"locationName\":\"connectionType\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"IntegrationId\":{\"locationName\":\"integrationId\"},\"IntegrationMethod\":{\"locationName\":\"integrationMethod\"},\"IntegrationResponseSelectionExpression\":{\"locationName\":\"integrationResponseSelectionExpression\"},\"IntegrationSubtype\":{\"locationName\":\"integrationSubtype\"},\"IntegrationType\":{\"locationName\":\"integrationType\"},\"IntegrationUri\":{\"locationName\":\"integrationUri\"},\"PassthroughBehavior\":{\"locationName\":\"passthroughBehavior\"},\"PayloadFormatVersion\":{\"locationName\":\"payloadFormatVersion\"},\"RequestParameters\":{\"shape\":\"S1e\",\"locationName\":\"requestParameters\"},\"RequestTemplates\":{\"shape\":\"S1f\",\"locationName\":\"requestTemplates\"},\"ResponseParameters\":{\"shape\":\"S1h\",\"locationName\":\"responseParameters\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"},\"TimeoutInMillis\":{\"locationName\":\"timeoutInMillis\",\"type\":\"integer\"},\"TlsConfig\":{\"shape\":\"S1l\",\"locationName\":\"tlsConfig\"}}}},\"GetIntegrationResponse\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}/integrationresponses/{integrationResponseId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"},\"IntegrationResponseId\":{\"location\":\"uri\",\"locationName\":\"integrationResponseId\"}},\"required\":[\"ApiId\",\"IntegrationResponseId\",\"IntegrationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"IntegrationResponseId\":{\"locationName\":\"integrationResponseId\"},\"IntegrationResponseKey\":{\"locationName\":\"integrationResponseKey\"},\"ResponseParameters\":{\"shape\":\"S1e\",\"locationName\":\"responseParameters\"},\"ResponseTemplates\":{\"shape\":\"S1f\",\"locationName\":\"responseTemplates\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"}}}},\"GetIntegrationResponses\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}/integrationresponses\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"IntegrationId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"IntegrationResponseId\":{\"locationName\":\"integrationResponseId\"},\"IntegrationResponseKey\":{\"locationName\":\"integrationResponseKey\"},\"ResponseParameters\":{\"shape\":\"S1e\",\"locationName\":\"responseParameters\"},\"ResponseTemplates\":{\"shape\":\"S1f\",\"locationName\":\"responseTemplates\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"}},\"required\":[\"IntegrationResponseKey\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetIntegrations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/integrations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"ConnectionType\":{\"locationName\":\"connectionType\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"IntegrationId\":{\"locationName\":\"integrationId\"},\"IntegrationMethod\":{\"locationName\":\"integrationMethod\"},\"IntegrationResponseSelectionExpression\":{\"locationName\":\"integrationResponseSelectionExpression\"},\"IntegrationSubtype\":{\"locationName\":\"integrationSubtype\"},\"IntegrationType\":{\"locationName\":\"integrationType\"},\"IntegrationUri\":{\"locationName\":\"integrationUri\"},\"PassthroughBehavior\":{\"locationName\":\"passthroughBehavior\"},\"PayloadFormatVersion\":{\"locationName\":\"payloadFormatVersion\"},\"RequestParameters\":{\"shape\":\"S1e\",\"locationName\":\"requestParameters\"},\"RequestTemplates\":{\"shape\":\"S1f\",\"locationName\":\"requestTemplates\"},\"ResponseParameters\":{\"shape\":\"S1h\",\"locationName\":\"responseParameters\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"},\"TimeoutInMillis\":{\"locationName\":\"timeoutInMillis\",\"type\":\"integer\"},\"TlsConfig\":{\"shape\":\"S1l\",\"locationName\":\"tlsConfig\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetModel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/models/{modelId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ModelId\":{\"location\":\"uri\",\"locationName\":\"modelId\"}},\"required\":[\"ModelId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"locationName\":\"contentType\"},\"Description\":{\"locationName\":\"description\"},\"ModelId\":{\"locationName\":\"modelId\"},\"Name\":{\"locationName\":\"name\"},\"Schema\":{\"locationName\":\"schema\"}}}},\"GetModelTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/models/{modelId}/template\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ModelId\":{\"location\":\"uri\",\"locationName\":\"modelId\"}},\"required\":[\"ModelId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}}},\"GetModels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/models\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"locationName\":\"contentType\"},\"Description\":{\"locationName\":\"description\"},\"ModelId\":{\"locationName\":\"modelId\"},\"Name\":{\"locationName\":\"name\"},\"Schema\":{\"locationName\":\"schema\"}},\"required\":[\"Name\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetRoute\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"}},\"required\":[\"ApiId\",\"RouteId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiKeyRequired\":{\"locationName\":\"apiKeyRequired\",\"type\":\"boolean\"},\"AuthorizationScopes\":{\"shape\":\"S1s\",\"locationName\":\"authorizationScopes\"},\"AuthorizationType\":{\"locationName\":\"authorizationType\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"OperationName\":{\"locationName\":\"operationName\"},\"RequestModels\":{\"shape\":\"S1u\",\"locationName\":\"requestModels\"},\"RequestParameters\":{\"shape\":\"S1v\",\"locationName\":\"requestParameters\"},\"RouteId\":{\"locationName\":\"routeId\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteResponseSelectionExpression\":{\"locationName\":\"routeResponseSelectionExpression\"},\"Target\":{\"locationName\":\"target\"}}}},\"GetRouteResponse\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}/routeresponses/{routeResponseId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"},\"RouteResponseId\":{\"location\":\"uri\",\"locationName\":\"routeResponseId\"}},\"required\":[\"RouteResponseId\",\"ApiId\",\"RouteId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"ResponseModels\":{\"shape\":\"S1u\",\"locationName\":\"responseModels\"},\"ResponseParameters\":{\"shape\":\"S1v\",\"locationName\":\"responseParameters\"},\"RouteResponseId\":{\"locationName\":\"routeResponseId\"},\"RouteResponseKey\":{\"locationName\":\"routeResponseKey\"}}}},\"GetRouteResponses\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}/routeresponses\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"}},\"required\":[\"RouteId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"ResponseModels\":{\"shape\":\"S1u\",\"locationName\":\"responseModels\"},\"ResponseParameters\":{\"shape\":\"S1v\",\"locationName\":\"responseParameters\"},\"RouteResponseId\":{\"locationName\":\"routeResponseId\"},\"RouteResponseKey\":{\"locationName\":\"routeResponseKey\"}},\"required\":[\"RouteResponseKey\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetRoutes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/routes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiKeyRequired\":{\"locationName\":\"apiKeyRequired\",\"type\":\"boolean\"},\"AuthorizationScopes\":{\"shape\":\"S1s\",\"locationName\":\"authorizationScopes\"},\"AuthorizationType\":{\"locationName\":\"authorizationType\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"OperationName\":{\"locationName\":\"operationName\"},\"RequestModels\":{\"shape\":\"S1u\",\"locationName\":\"requestModels\"},\"RequestParameters\":{\"shape\":\"S1v\",\"locationName\":\"requestParameters\"},\"RouteId\":{\"locationName\":\"routeId\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteResponseSelectionExpression\":{\"locationName\":\"routeResponseSelectionExpression\"},\"Target\":{\"locationName\":\"target\"}},\"required\":[\"RouteKey\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetStage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/stages/{stageName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"StageName\":{\"location\":\"uri\",\"locationName\":\"stageName\"}},\"required\":[\"StageName\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AccessLogSettings\":{\"shape\":\"S21\",\"locationName\":\"accessLogSettings\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"AutoDeploy\":{\"locationName\":\"autoDeploy\",\"type\":\"boolean\"},\"ClientCertificateId\":{\"locationName\":\"clientCertificateId\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DefaultRouteSettings\":{\"shape\":\"S22\",\"locationName\":\"defaultRouteSettings\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"},\"LastDeploymentStatusMessage\":{\"locationName\":\"lastDeploymentStatusMessage\"},\"LastUpdatedDate\":{\"shape\":\"Sl\",\"locationName\":\"lastUpdatedDate\"},\"RouteSettings\":{\"shape\":\"S26\",\"locationName\":\"routeSettings\"},\"StageName\":{\"locationName\":\"stageName\"},\"StageVariables\":{\"shape\":\"S27\",\"locationName\":\"stageVariables\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"GetStages\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/apis/{apiId}/stages\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccessLogSettings\":{\"shape\":\"S21\",\"locationName\":\"accessLogSettings\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"AutoDeploy\":{\"locationName\":\"autoDeploy\",\"type\":\"boolean\"},\"ClientCertificateId\":{\"locationName\":\"clientCertificateId\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DefaultRouteSettings\":{\"shape\":\"S22\",\"locationName\":\"defaultRouteSettings\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"},\"LastDeploymentStatusMessage\":{\"locationName\":\"lastDeploymentStatusMessage\"},\"LastUpdatedDate\":{\"shape\":\"Sl\",\"locationName\":\"lastUpdatedDate\"},\"RouteSettings\":{\"shape\":\"S26\",\"locationName\":\"routeSettings\"},\"StageName\":{\"locationName\":\"stageName\"},\"StageVariables\":{\"shape\":\"S27\",\"locationName\":\"stageVariables\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"StageName\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"GetVpcLink\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/vpclinks/{vpcLinkId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"VpcLinkId\":{\"location\":\"uri\",\"locationName\":\"vpcLinkId\"}},\"required\":[\"VpcLinkId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Name\":{\"locationName\":\"name\"},\"SecurityGroupIds\":{\"shape\":\"S2b\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S2c\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"VpcLinkId\":{\"locationName\":\"vpcLinkId\"},\"VpcLinkStatus\":{\"locationName\":\"vpcLinkStatus\"},\"VpcLinkStatusMessage\":{\"locationName\":\"vpcLinkStatusMessage\"},\"VpcLinkVersion\":{\"locationName\":\"vpcLinkVersion\"}}}},\"GetVpcLinks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/vpclinks\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Name\":{\"locationName\":\"name\"},\"SecurityGroupIds\":{\"shape\":\"S2b\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S2c\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"VpcLinkId\":{\"locationName\":\"vpcLinkId\"},\"VpcLinkStatus\":{\"locationName\":\"vpcLinkStatus\"},\"VpcLinkStatusMessage\":{\"locationName\":\"vpcLinkStatusMessage\"},\"VpcLinkVersion\":{\"locationName\":\"vpcLinkVersion\"}},\"required\":[\"VpcLinkId\",\"SecurityGroupIds\",\"SubnetIds\",\"Name\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ImportApi\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/apis\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Basepath\":{\"location\":\"querystring\",\"locationName\":\"basepath\"},\"Body\":{\"locationName\":\"body\"},\"FailOnWarnings\":{\"location\":\"querystring\",\"locationName\":\"failOnWarnings\",\"type\":\"boolean\"}},\"required\":[\"Body\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{\"locationName\":\"apiEndpoint\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiId\":{\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"ImportInfo\":{\"shape\":\"Sm\",\"locationName\":\"importInfo\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Version\":{\"locationName\":\"version\"},\"Warnings\":{\"shape\":\"Sm\",\"locationName\":\"warnings\"}}}},\"ReimportApi\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/apis/{apiId}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"Basepath\":{\"location\":\"querystring\",\"locationName\":\"basepath\"},\"Body\":{\"locationName\":\"body\"},\"FailOnWarnings\":{\"location\":\"querystring\",\"locationName\":\"failOnWarnings\",\"type\":\"boolean\"}},\"required\":[\"ApiId\",\"Body\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{\"locationName\":\"apiEndpoint\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiId\":{\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"ImportInfo\":{\"shape\":\"Sm\",\"locationName\":\"importInfo\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Version\":{\"locationName\":\"version\"},\"Warnings\":{\"shape\":\"Sm\",\"locationName\":\"warnings\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v2/tags/{resource-arn}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"shape\":\"Sm\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"ResourceArn\",\"TagKeys\"]}},\"UpdateApi\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"Name\":{\"locationName\":\"name\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Target\":{\"locationName\":\"target\"},\"Version\":{\"locationName\":\"version\"}},\"required\":[\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{\"locationName\":\"apiEndpoint\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiId\":{\"locationName\":\"apiId\"},\"ApiKeySelectionExpression\":{\"locationName\":\"apiKeySelectionExpression\"},\"CorsConfiguration\":{\"shape\":\"S3\",\"locationName\":\"corsConfiguration\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Description\":{\"locationName\":\"description\"},\"DisableSchemaValidation\":{\"locationName\":\"disableSchemaValidation\",\"type\":\"boolean\"},\"DisableExecuteApiEndpoint\":{\"locationName\":\"disableExecuteApiEndpoint\",\"type\":\"boolean\"},\"ImportInfo\":{\"shape\":\"Sm\",\"locationName\":\"importInfo\"},\"Name\":{\"locationName\":\"name\"},\"ProtocolType\":{\"locationName\":\"protocolType\"},\"RouteSelectionExpression\":{\"locationName\":\"routeSelectionExpression\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Version\":{\"locationName\":\"version\"},\"Warnings\":{\"shape\":\"Sm\",\"locationName\":\"warnings\"}}}},\"UpdateApiMapping\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/domainnames/{domainName}/apimappings/{apiMappingId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"locationName\":\"apiId\"},\"ApiMappingId\":{\"location\":\"uri\",\"locationName\":\"apiMappingId\"},\"ApiMappingKey\":{\"locationName\":\"apiMappingKey\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"},\"Stage\":{\"locationName\":\"stage\"}},\"required\":[\"ApiMappingId\",\"ApiId\",\"DomainName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"locationName\":\"apiId\"},\"ApiMappingId\":{\"locationName\":\"apiMappingId\"},\"ApiMappingKey\":{\"locationName\":\"apiMappingKey\"},\"Stage\":{\"locationName\":\"stage\"}}}},\"UpdateAuthorizer\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/authorizers/{authorizerId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"AuthorizerCredentialsArn\":{\"locationName\":\"authorizerCredentialsArn\"},\"AuthorizerId\":{\"location\":\"uri\",\"locationName\":\"authorizerId\"},\"AuthorizerPayloadFormatVersion\":{\"locationName\":\"authorizerPayloadFormatVersion\"},\"AuthorizerResultTtlInSeconds\":{\"locationName\":\"authorizerResultTtlInSeconds\",\"type\":\"integer\"},\"AuthorizerType\":{\"locationName\":\"authorizerType\"},\"AuthorizerUri\":{\"locationName\":\"authorizerUri\"},\"EnableSimpleResponses\":{\"locationName\":\"enableSimpleResponses\",\"type\":\"boolean\"},\"IdentitySource\":{\"shape\":\"Ss\",\"locationName\":\"identitySource\"},\"IdentityValidationExpression\":{\"locationName\":\"identityValidationExpression\"},\"JwtConfiguration\":{\"shape\":\"St\",\"locationName\":\"jwtConfiguration\"},\"Name\":{\"locationName\":\"name\"}},\"required\":[\"AuthorizerId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizerCredentialsArn\":{\"locationName\":\"authorizerCredentialsArn\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"AuthorizerPayloadFormatVersion\":{\"locationName\":\"authorizerPayloadFormatVersion\"},\"AuthorizerResultTtlInSeconds\":{\"locationName\":\"authorizerResultTtlInSeconds\",\"type\":\"integer\"},\"AuthorizerType\":{\"locationName\":\"authorizerType\"},\"AuthorizerUri\":{\"locationName\":\"authorizerUri\"},\"EnableSimpleResponses\":{\"locationName\":\"enableSimpleResponses\",\"type\":\"boolean\"},\"IdentitySource\":{\"shape\":\"Ss\",\"locationName\":\"identitySource\"},\"IdentityValidationExpression\":{\"locationName\":\"identityValidationExpression\"},\"JwtConfiguration\":{\"shape\":\"St\",\"locationName\":\"jwtConfiguration\"},\"Name\":{\"locationName\":\"name\"}}}},\"UpdateDeployment\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/deployments/{deploymentId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"DeploymentId\":{\"location\":\"uri\",\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"}},\"required\":[\"ApiId\",\"DeploymentId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AutoDeployed\":{\"locationName\":\"autoDeployed\",\"type\":\"boolean\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"DeploymentStatus\":{\"locationName\":\"deploymentStatus\"},\"DeploymentStatusMessage\":{\"locationName\":\"deploymentStatusMessage\"},\"Description\":{\"locationName\":\"description\"}}}},\"UpdateDomainName\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/domainnames/{domainName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"domainName\"},\"DomainNameConfigurations\":{\"shape\":\"S10\",\"locationName\":\"domainNameConfigurations\"},\"MutualTlsAuthentication\":{\"shape\":\"S15\",\"locationName\":\"mutualTlsAuthentication\"}},\"required\":[\"DomainName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiMappingSelectionExpression\":{\"locationName\":\"apiMappingSelectionExpression\"},\"DomainName\":{\"locationName\":\"domainName\"},\"DomainNameConfigurations\":{\"shape\":\"S10\",\"locationName\":\"domainNameConfigurations\"},\"MutualTlsAuthentication\":{\"shape\":\"S17\",\"locationName\":\"mutualTlsAuthentication\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"UpdateIntegration\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"ConnectionType\":{\"locationName\":\"connectionType\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"},\"IntegrationMethod\":{\"locationName\":\"integrationMethod\"},\"IntegrationSubtype\":{\"locationName\":\"integrationSubtype\"},\"IntegrationType\":{\"locationName\":\"integrationType\"},\"IntegrationUri\":{\"locationName\":\"integrationUri\"},\"PassthroughBehavior\":{\"locationName\":\"passthroughBehavior\"},\"PayloadFormatVersion\":{\"locationName\":\"payloadFormatVersion\"},\"RequestParameters\":{\"shape\":\"S1e\",\"locationName\":\"requestParameters\"},\"RequestTemplates\":{\"shape\":\"S1f\",\"locationName\":\"requestTemplates\"},\"ResponseParameters\":{\"shape\":\"S1h\",\"locationName\":\"responseParameters\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"},\"TimeoutInMillis\":{\"locationName\":\"timeoutInMillis\",\"type\":\"integer\"},\"TlsConfig\":{\"shape\":\"S1j\",\"locationName\":\"tlsConfig\"}},\"required\":[\"ApiId\",\"IntegrationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"ConnectionType\":{\"locationName\":\"connectionType\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"CredentialsArn\":{\"locationName\":\"credentialsArn\"},\"Description\":{\"locationName\":\"description\"},\"IntegrationId\":{\"locationName\":\"integrationId\"},\"IntegrationMethod\":{\"locationName\":\"integrationMethod\"},\"IntegrationResponseSelectionExpression\":{\"locationName\":\"integrationResponseSelectionExpression\"},\"IntegrationSubtype\":{\"locationName\":\"integrationSubtype\"},\"IntegrationType\":{\"locationName\":\"integrationType\"},\"IntegrationUri\":{\"locationName\":\"integrationUri\"},\"PassthroughBehavior\":{\"locationName\":\"passthroughBehavior\"},\"PayloadFormatVersion\":{\"locationName\":\"payloadFormatVersion\"},\"RequestParameters\":{\"shape\":\"S1e\",\"locationName\":\"requestParameters\"},\"RequestTemplates\":{\"shape\":\"S1f\",\"locationName\":\"requestTemplates\"},\"ResponseParameters\":{\"shape\":\"S1h\",\"locationName\":\"responseParameters\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"},\"TimeoutInMillis\":{\"locationName\":\"timeoutInMillis\",\"type\":\"integer\"},\"TlsConfig\":{\"shape\":\"S1l\",\"locationName\":\"tlsConfig\"}}}},\"UpdateIntegrationResponse\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/integrations/{integrationId}/integrationresponses/{integrationResponseId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"IntegrationId\":{\"location\":\"uri\",\"locationName\":\"integrationId\"},\"IntegrationResponseId\":{\"location\":\"uri\",\"locationName\":\"integrationResponseId\"},\"IntegrationResponseKey\":{\"locationName\":\"integrationResponseKey\"},\"ResponseParameters\":{\"shape\":\"S1e\",\"locationName\":\"responseParameters\"},\"ResponseTemplates\":{\"shape\":\"S1f\",\"locationName\":\"responseTemplates\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"}},\"required\":[\"ApiId\",\"IntegrationResponseId\",\"IntegrationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ContentHandlingStrategy\":{\"locationName\":\"contentHandlingStrategy\"},\"IntegrationResponseId\":{\"locationName\":\"integrationResponseId\"},\"IntegrationResponseKey\":{\"locationName\":\"integrationResponseKey\"},\"ResponseParameters\":{\"shape\":\"S1e\",\"locationName\":\"responseParameters\"},\"ResponseTemplates\":{\"shape\":\"S1f\",\"locationName\":\"responseTemplates\"},\"TemplateSelectionExpression\":{\"locationName\":\"templateSelectionExpression\"}}}},\"UpdateModel\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/models/{modelId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ContentType\":{\"locationName\":\"contentType\"},\"Description\":{\"locationName\":\"description\"},\"ModelId\":{\"location\":\"uri\",\"locationName\":\"modelId\"},\"Name\":{\"locationName\":\"name\"},\"Schema\":{\"locationName\":\"schema\"}},\"required\":[\"ModelId\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"locationName\":\"contentType\"},\"Description\":{\"locationName\":\"description\"},\"ModelId\":{\"locationName\":\"modelId\"},\"Name\":{\"locationName\":\"name\"},\"Schema\":{\"locationName\":\"schema\"}}}},\"UpdateRoute\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ApiKeyRequired\":{\"locationName\":\"apiKeyRequired\",\"type\":\"boolean\"},\"AuthorizationScopes\":{\"shape\":\"S1s\",\"locationName\":\"authorizationScopes\"},\"AuthorizationType\":{\"locationName\":\"authorizationType\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"OperationName\":{\"locationName\":\"operationName\"},\"RequestModels\":{\"shape\":\"S1u\",\"locationName\":\"requestModels\"},\"RequestParameters\":{\"shape\":\"S1v\",\"locationName\":\"requestParameters\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteResponseSelectionExpression\":{\"locationName\":\"routeResponseSelectionExpression\"},\"Target\":{\"locationName\":\"target\"}},\"required\":[\"ApiId\",\"RouteId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"ApiKeyRequired\":{\"locationName\":\"apiKeyRequired\",\"type\":\"boolean\"},\"AuthorizationScopes\":{\"shape\":\"S1s\",\"locationName\":\"authorizationScopes\"},\"AuthorizationType\":{\"locationName\":\"authorizationType\"},\"AuthorizerId\":{\"locationName\":\"authorizerId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"OperationName\":{\"locationName\":\"operationName\"},\"RequestModels\":{\"shape\":\"S1u\",\"locationName\":\"requestModels\"},\"RequestParameters\":{\"shape\":\"S1v\",\"locationName\":\"requestParameters\"},\"RouteId\":{\"locationName\":\"routeId\"},\"RouteKey\":{\"locationName\":\"routeKey\"},\"RouteResponseSelectionExpression\":{\"locationName\":\"routeResponseSelectionExpression\"},\"Target\":{\"locationName\":\"target\"}}}},\"UpdateRouteResponse\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/routes/{routeId}/routeresponses/{routeResponseId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"ResponseModels\":{\"shape\":\"S1u\",\"locationName\":\"responseModels\"},\"ResponseParameters\":{\"shape\":\"S1v\",\"locationName\":\"responseParameters\"},\"RouteId\":{\"location\":\"uri\",\"locationName\":\"routeId\"},\"RouteResponseId\":{\"location\":\"uri\",\"locationName\":\"routeResponseId\"},\"RouteResponseKey\":{\"locationName\":\"routeResponseKey\"}},\"required\":[\"RouteResponseId\",\"ApiId\",\"RouteId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ModelSelectionExpression\":{\"locationName\":\"modelSelectionExpression\"},\"ResponseModels\":{\"shape\":\"S1u\",\"locationName\":\"responseModels\"},\"ResponseParameters\":{\"shape\":\"S1v\",\"locationName\":\"responseParameters\"},\"RouteResponseId\":{\"locationName\":\"routeResponseId\"},\"RouteResponseKey\":{\"locationName\":\"routeResponseKey\"}}}},\"UpdateStage\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/apis/{apiId}/stages/{stageName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AccessLogSettings\":{\"shape\":\"S21\",\"locationName\":\"accessLogSettings\"},\"ApiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"AutoDeploy\":{\"locationName\":\"autoDeploy\",\"type\":\"boolean\"},\"ClientCertificateId\":{\"locationName\":\"clientCertificateId\"},\"DefaultRouteSettings\":{\"shape\":\"S22\",\"locationName\":\"defaultRouteSettings\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"},\"RouteSettings\":{\"shape\":\"S26\",\"locationName\":\"routeSettings\"},\"StageName\":{\"location\":\"uri\",\"locationName\":\"stageName\"},\"StageVariables\":{\"shape\":\"S27\",\"locationName\":\"stageVariables\"}},\"required\":[\"StageName\",\"ApiId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AccessLogSettings\":{\"shape\":\"S21\",\"locationName\":\"accessLogSettings\"},\"ApiGatewayManaged\":{\"locationName\":\"apiGatewayManaged\",\"type\":\"boolean\"},\"AutoDeploy\":{\"locationName\":\"autoDeploy\",\"type\":\"boolean\"},\"ClientCertificateId\":{\"locationName\":\"clientCertificateId\"},\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"DefaultRouteSettings\":{\"shape\":\"S22\",\"locationName\":\"defaultRouteSettings\"},\"DeploymentId\":{\"locationName\":\"deploymentId\"},\"Description\":{\"locationName\":\"description\"},\"LastDeploymentStatusMessage\":{\"locationName\":\"lastDeploymentStatusMessage\"},\"LastUpdatedDate\":{\"shape\":\"Sl\",\"locationName\":\"lastUpdatedDate\"},\"RouteSettings\":{\"shape\":\"S26\",\"locationName\":\"routeSettings\"},\"StageName\":{\"locationName\":\"stageName\"},\"StageVariables\":{\"shape\":\"S27\",\"locationName\":\"stageVariables\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"UpdateVpcLink\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v2/vpclinks/{vpcLinkId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"VpcLinkId\":{\"location\":\"uri\",\"locationName\":\"vpcLinkId\"}},\"required\":[\"VpcLinkId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CreatedDate\":{\"shape\":\"Sl\",\"locationName\":\"createdDate\"},\"Name\":{\"locationName\":\"name\"},\"SecurityGroupIds\":{\"shape\":\"S2b\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S2c\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"VpcLinkId\":{\"locationName\":\"vpcLinkId\"},\"VpcLinkStatus\":{\"locationName\":\"vpcLinkStatus\"},\"VpcLinkStatusMessage\":{\"locationName\":\"vpcLinkStatusMessage\"},\"VpcLinkVersion\":{\"locationName\":\"vpcLinkVersion\"}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"members\":{\"AllowCredentials\":{\"locationName\":\"allowCredentials\",\"type\":\"boolean\"},\"AllowHeaders\":{\"shape\":\"S5\",\"locationName\":\"allowHeaders\"},\"AllowMethods\":{\"locationName\":\"allowMethods\",\"type\":\"list\",\"member\":{}},\"AllowOrigins\":{\"locationName\":\"allowOrigins\",\"type\":\"list\",\"member\":{}},\"ExposeHeaders\":{\"shape\":\"S5\",\"locationName\":\"exposeHeaders\"},\"MaxAge\":{\"locationName\":\"maxAge\",\"type\":\"integer\"}}},\"S5\":{\"type\":\"list\",\"member\":{}},\"Sg\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sl\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sm\":{\"type\":\"list\",\"member\":{}},\"Ss\":{\"type\":\"list\",\"member\":{}},\"St\":{\"type\":\"structure\",\"members\":{\"Audience\":{\"shape\":\"Sm\",\"locationName\":\"audience\"},\"Issuer\":{\"locationName\":\"issuer\"}}},\"S10\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiGatewayDomainName\":{\"locationName\":\"apiGatewayDomainName\"},\"CertificateArn\":{\"locationName\":\"certificateArn\"},\"CertificateName\":{\"locationName\":\"certificateName\"},\"CertificateUploadDate\":{\"shape\":\"Sl\",\"locationName\":\"certificateUploadDate\"},\"DomainNameStatus\":{\"locationName\":\"domainNameStatus\"},\"DomainNameStatusMessage\":{\"locationName\":\"domainNameStatusMessage\"},\"EndpointType\":{\"locationName\":\"endpointType\"},\"HostedZoneId\":{\"locationName\":\"hostedZoneId\"},\"SecurityPolicy\":{\"locationName\":\"securityPolicy\"}}}},\"S15\":{\"type\":\"structure\",\"members\":{\"TruststoreUri\":{\"locationName\":\"truststoreUri\"},\"TruststoreVersion\":{\"locationName\":\"truststoreVersion\"}}},\"S17\":{\"type\":\"structure\",\"members\":{\"TruststoreUri\":{\"locationName\":\"truststoreUri\"},\"TruststoreVersion\":{\"locationName\":\"truststoreVersion\"},\"TruststoreWarnings\":{\"shape\":\"Sm\",\"locationName\":\"truststoreWarnings\"}}},\"S1e\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1f\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1h\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S1e\"}},\"S1j\":{\"type\":\"structure\",\"members\":{\"ServerNameToVerify\":{\"locationName\":\"serverNameToVerify\"}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"ServerNameToVerify\":{\"locationName\":\"serverNameToVerify\"}}},\"S1s\":{\"type\":\"list\",\"member\":{}},\"S1u\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1v\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Required\":{\"locationName\":\"required\",\"type\":\"boolean\"}}}},\"S21\":{\"type\":\"structure\",\"members\":{\"DestinationArn\":{\"locationName\":\"destinationArn\"},\"Format\":{\"locationName\":\"format\"}}},\"S22\":{\"type\":\"structure\",\"members\":{\"DataTraceEnabled\":{\"locationName\":\"dataTraceEnabled\",\"type\":\"boolean\"},\"DetailedMetricsEnabled\":{\"locationName\":\"detailedMetricsEnabled\",\"type\":\"boolean\"},\"LoggingLevel\":{\"locationName\":\"loggingLevel\"},\"ThrottlingBurstLimit\":{\"locationName\":\"throttlingBurstLimit\",\"type\":\"integer\"},\"ThrottlingRateLimit\":{\"locationName\":\"throttlingRateLimit\",\"type\":\"double\"}}},\"S26\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S22\"}},\"S27\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2b\":{\"type\":\"list\",\"member\":{}},\"S2c\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 96828:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 5832:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-10-09\",\"endpointPrefix\":\"appconfig\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AppConfig\",\"serviceFullName\":\"Amazon AppConfig\",\"serviceId\":\"AppConfig\",\"signatureVersion\":\"v4\",\"signingName\":\"appconfig\",\"uid\":\"appconfig-2019-10-09\"},\"operations\":{\"CreateApplication\":{\"http\":{\"requestUri\":\"/applications\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"shape\":\"S7\"}},\"CreateConfigurationProfile\":{\"http\":{\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"Name\",\"LocationUri\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"Name\":{},\"Description\":{},\"LocationUri\":{},\"RetrievalRoleArn\":{},\"Validators\":{\"shape\":\"Sc\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"shape\":\"Sg\"}},\"CreateDeploymentStrategy\":{\"http\":{\"requestUri\":\"/deploymentstrategies\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"DeploymentDurationInMinutes\",\"GrowthFactor\",\"ReplicateTo\"],\"members\":{\"Name\":{},\"Description\":{},\"DeploymentDurationInMinutes\":{\"type\":\"integer\"},\"FinalBakeTimeInMinutes\":{\"type\":\"integer\"},\"GrowthFactor\":{\"type\":\"float\"},\"GrowthType\":{},\"ReplicateTo\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"shape\":\"Sm\"}},\"CreateEnvironment\":{\"http\":{\"requestUri\":\"/applications/{ApplicationId}/environments\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"Name\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"Name\":{},\"Description\":{},\"Monitors\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"shape\":\"Ss\"}},\"CreateHostedConfigurationVersion\":{\"http\":{\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\",\"Content\",\"ContentType\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"},\"Description\":{\"location\":\"header\",\"locationName\":\"Description\"},\"Content\":{\"shape\":\"Sv\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"LatestVersionNumber\":{\"location\":\"header\",\"locationName\":\"Latest-Version-Number\",\"type\":\"integer\"}},\"payload\":\"Content\"},\"output\":{\"shape\":\"Sy\"}},\"DeleteApplication\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{ApplicationId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"}}}},\"DeleteConfigurationProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"}}}},\"DeleteDeploymentStrategy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/deployementstrategies/{DeploymentStrategyId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"DeploymentStrategyId\"],\"members\":{\"DeploymentStrategyId\":{\"location\":\"uri\",\"locationName\":\"DeploymentStrategyId\"}}}},\"DeleteEnvironment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"}}}},\"DeleteHostedConfigurationVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions/{VersionNumber}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\",\"VersionNumber\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"integer\"}}}},\"GetApplication\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"}}},\"output\":{\"shape\":\"S7\"}},\"GetConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{Application}/environments/{Environment}/configurations/{Configuration}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Application\",\"Environment\",\"Configuration\",\"ClientId\"],\"members\":{\"Application\":{\"location\":\"uri\",\"locationName\":\"Application\"},\"Environment\":{\"location\":\"uri\",\"locationName\":\"Environment\"},\"Configuration\":{\"location\":\"uri\",\"locationName\":\"Configuration\"},\"ClientId\":{\"location\":\"querystring\",\"locationName\":\"client_id\"},\"ClientConfigurationVersion\":{\"location\":\"querystring\",\"locationName\":\"client_configuration_version\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Content\":{\"shape\":\"Sv\"},\"ConfigurationVersion\":{\"location\":\"header\",\"locationName\":\"Configuration-Version\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Content\"}},\"GetConfigurationProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"}}},\"output\":{\"shape\":\"Sg\"}},\"GetDeployment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}/deployments/{DeploymentNumber}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\",\"DeploymentNumber\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"},\"DeploymentNumber\":{\"location\":\"uri\",\"locationName\":\"DeploymentNumber\",\"type\":\"integer\"}}},\"output\":{\"shape\":\"S1d\"}},\"GetDeploymentStrategy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/deploymentstrategies/{DeploymentStrategyId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DeploymentStrategyId\"],\"members\":{\"DeploymentStrategyId\":{\"location\":\"uri\",\"locationName\":\"DeploymentStrategyId\"}}},\"output\":{\"shape\":\"Sm\"}},\"GetEnvironment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"}}},\"output\":{\"shape\":\"Ss\"}},\"GetHostedConfigurationVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions/{VersionNumber}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\",\"VersionNumber\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"integer\"}}},\"output\":{\"shape\":\"Sy\"}},\"ListApplications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"NextToken\":{}}}},\"ListConfigurationProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"Id\":{},\"Name\":{},\"LocationUri\":{},\"ValidatorTypes\":{\"type\":\"list\",\"member\":{}}}}},\"NextToken\":{}}}},\"ListDeploymentStrategies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/deploymentstrategies\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}},\"NextToken\":{}}}},\"ListDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}/deployments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeploymentNumber\":{\"type\":\"integer\"},\"ConfigurationName\":{},\"ConfigurationVersion\":{},\"DeploymentDurationInMinutes\":{\"type\":\"integer\"},\"GrowthType\":{},\"GrowthFactor\":{\"type\":\"float\"},\"FinalBakeTimeInMinutes\":{\"type\":\"integer\"},\"State\":{},\"PercentageComplete\":{\"type\":\"float\"},\"StartedAt\":{\"shape\":\"S1j\"},\"CompletedAt\":{\"shape\":\"S1j\"}}}},\"NextToken\":{}}}},\"ListEnvironments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/environments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}},\"NextToken\":{}}}},\"ListHostedConfigurationVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/hostedconfigurationversions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"ConfigurationProfileId\":{},\"VersionNumber\":{\"type\":\"integer\"},\"Description\":{},\"ContentType\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4\"}}}},\"StartDeployment\":{\"http\":{\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}/deployments\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\",\"DeploymentStrategyId\",\"ConfigurationProfileId\",\"ConfigurationVersion\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"},\"DeploymentStrategyId\":{},\"ConfigurationProfileId\":{},\"ConfigurationVersion\":{},\"Description\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"shape\":\"S1d\"}},\"StopDeployment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}/deployments/{DeploymentNumber}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\",\"DeploymentNumber\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"},\"DeploymentNumber\":{\"location\":\"uri\",\"locationName\":\"DeploymentNumber\",\"type\":\"integer\"}}},\"output\":{\"shape\":\"S1d\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"S4\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}}},\"UpdateApplication\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/applications/{ApplicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"Name\":{},\"Description\":{}}},\"output\":{\"shape\":\"S7\"}},\"UpdateConfigurationProfile\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"},\"Name\":{},\"Description\":{},\"RetrievalRoleArn\":{},\"Validators\":{\"shape\":\"Sc\"}}},\"output\":{\"shape\":\"Sg\"}},\"UpdateDeploymentStrategy\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/deploymentstrategies/{DeploymentStrategyId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DeploymentStrategyId\"],\"members\":{\"DeploymentStrategyId\":{\"location\":\"uri\",\"locationName\":\"DeploymentStrategyId\"},\"Description\":{},\"DeploymentDurationInMinutes\":{\"type\":\"integer\"},\"FinalBakeTimeInMinutes\":{\"type\":\"integer\"},\"GrowthFactor\":{\"type\":\"float\"},\"GrowthType\":{}}},\"output\":{\"shape\":\"Sm\"}},\"UpdateEnvironment\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/applications/{ApplicationId}/environments/{EnvironmentId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"EnvironmentId\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"EnvironmentId\":{\"location\":\"uri\",\"locationName\":\"EnvironmentId\"},\"Name\":{},\"Description\":{},\"Monitors\":{\"shape\":\"Sp\"}}},\"output\":{\"shape\":\"Ss\"}},\"ValidateConfiguration\":{\"http\":{\"requestUri\":\"/applications/{ApplicationId}/configurationprofiles/{ConfigurationProfileId}/validators\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationId\",\"ConfigurationProfileId\",\"ConfigurationVersion\"],\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"ApplicationId\"},\"ConfigurationProfileId\":{\"location\":\"uri\",\"locationName\":\"ConfigurationProfileId\"},\"ConfigurationVersion\":{\"location\":\"querystring\",\"locationName\":\"configuration_version\"}}}}},\"shapes\":{\"S4\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S7\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\",\"Content\"],\"members\":{\"Type\":{},\"Content\":{\"type\":\"string\",\"sensitive\":true}}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"Id\":{},\"Name\":{},\"Description\":{},\"LocationUri\":{},\"RetrievalRoleArn\":{},\"Validators\":{\"shape\":\"Sc\"}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"DeploymentDurationInMinutes\":{\"type\":\"integer\"},\"GrowthType\":{},\"GrowthFactor\":{\"type\":\"float\"},\"FinalBakeTimeInMinutes\":{\"type\":\"integer\"},\"ReplicateTo\":{}}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlarmArn\":{},\"AlarmRoleArn\":{}}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"Id\":{},\"Name\":{},\"Description\":{},\"State\":{},\"Monitors\":{\"shape\":\"Sp\"}}},\"Sv\":{\"type\":\"blob\",\"sensitive\":true},\"Sy\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"header\",\"locationName\":\"Application-Id\"},\"ConfigurationProfileId\":{\"location\":\"header\",\"locationName\":\"Configuration-Profile-Id\"},\"VersionNumber\":{\"location\":\"header\",\"locationName\":\"Version-Number\",\"type\":\"integer\"},\"Description\":{\"location\":\"header\",\"locationName\":\"Description\"},\"Content\":{\"shape\":\"Sv\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Content\"},\"S1d\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"EnvironmentId\":{},\"DeploymentStrategyId\":{},\"ConfigurationProfileId\":{},\"DeploymentNumber\":{\"type\":\"integer\"},\"ConfigurationName\":{},\"ConfigurationLocationUri\":{},\"ConfigurationVersion\":{},\"Description\":{},\"DeploymentDurationInMinutes\":{\"type\":\"integer\"},\"GrowthType\":{},\"GrowthFactor\":{\"type\":\"float\"},\"FinalBakeTimeInMinutes\":{\"type\":\"integer\"},\"State\":{},\"EventLog\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventType\":{},\"TriggeredBy\":{},\"Description\":{},\"OccurredAt\":{\"shape\":\"S1j\"}}}},\"PercentageComplete\":{\"type\":\"float\"},\"StartedAt\":{\"shape\":\"S1j\"},\"CompletedAt\":{\"shape\":\"S1j\"}}},\"S1j\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 38388:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListConfigurationProfiles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDeploymentStrategies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDeployments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListEnvironments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListHostedConfigurationVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 63769:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-08-23\",\"endpointPrefix\":\"appflow\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Appflow\",\"serviceId\":\"Appflow\",\"signatureVersion\":\"v4\",\"signingName\":\"appflow\",\"uid\":\"appflow-2020-08-23\"},\"operations\":{\"CreateConnectorProfile\":{\"http\":{\"requestUri\":\"/create-connector-profile\"},\"input\":{\"type\":\"structure\",\"required\":[\"connectorProfileName\",\"connectorType\",\"connectionMode\",\"connectorProfileConfig\"],\"members\":{\"connectorProfileName\":{},\"kmsArn\":{},\"connectorType\":{},\"connectionMode\":{},\"connectorProfileConfig\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectorProfileArn\":{}}}},\"CreateFlow\":{\"http\":{\"requestUri\":\"/create-flow\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\",\"triggerConfig\",\"sourceFlowConfig\",\"destinationFlowConfigList\",\"tasks\"],\"members\":{\"flowName\":{},\"description\":{},\"kmsArn\":{},\"triggerConfig\":{\"shape\":\"S22\"},\"sourceFlowConfig\":{\"shape\":\"S2b\"},\"destinationFlowConfigList\":{\"shape\":\"S2u\"},\"tasks\":{\"shape\":\"S3m\"},\"tags\":{\"shape\":\"S4a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"flowArn\":{},\"flowStatus\":{}}}},\"DeleteConnectorProfile\":{\"http\":{\"requestUri\":\"/delete-connector-profile\"},\"input\":{\"type\":\"structure\",\"required\":[\"connectorProfileName\"],\"members\":{\"connectorProfileName\":{},\"forceDelete\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteFlow\":{\"http\":{\"requestUri\":\"/delete-flow\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\"],\"members\":{\"flowName\":{},\"forceDelete\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeConnectorEntity\":{\"http\":{\"requestUri\":\"/describe-connector-entity\"},\"input\":{\"type\":\"structure\",\"required\":[\"connectorEntityName\"],\"members\":{\"connectorEntityName\":{},\"connectorType\":{},\"connectorProfileName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"connectorEntityFields\"],\"members\":{\"connectorEntityFields\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"identifier\"],\"members\":{\"identifier\":{},\"label\":{},\"supportedFieldTypeDetails\":{\"type\":\"structure\",\"required\":[\"v1\"],\"members\":{\"v1\":{\"type\":\"structure\",\"required\":[\"fieldType\",\"filterOperators\"],\"members\":{\"fieldType\":{},\"filterOperators\":{\"type\":\"list\",\"member\":{}},\"supportedValues\":{\"type\":\"list\",\"member\":{}}}}}},\"description\":{},\"sourceProperties\":{\"type\":\"structure\",\"members\":{\"isRetrievable\":{\"type\":\"boolean\"},\"isQueryable\":{\"type\":\"boolean\"}}},\"destinationProperties\":{\"type\":\"structure\",\"members\":{\"isCreatable\":{\"type\":\"boolean\"},\"isNullable\":{\"type\":\"boolean\"},\"isUpsertable\":{\"type\":\"boolean\"},\"isUpdatable\":{\"type\":\"boolean\"},\"supportedWriteOperations\":{\"type\":\"list\",\"member\":{}}}}}}}}}},\"DescribeConnectorProfiles\":{\"http\":{\"requestUri\":\"/describe-connector-profiles\"},\"input\":{\"type\":\"structure\",\"members\":{\"connectorProfileNames\":{\"type\":\"list\",\"member\":{}},\"connectorType\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectorProfileDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"connectorProfileArn\":{},\"connectorProfileName\":{},\"connectorType\":{},\"connectionMode\":{},\"credentialsArn\":{},\"connectorProfileProperties\":{\"shape\":\"S7\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"DescribeConnectors\":{\"http\":{\"requestUri\":\"/describe-connectors\"},\"input\":{\"type\":\"structure\",\"members\":{\"connectorTypes\":{\"shape\":\"S5a\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectorConfigurations\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"canUseAsSource\":{\"type\":\"boolean\"},\"canUseAsDestination\":{\"type\":\"boolean\"},\"supportedDestinationConnectors\":{\"shape\":\"S5a\"},\"supportedSchedulingFrequencies\":{\"type\":\"list\",\"member\":{}},\"isPrivateLinkEnabled\":{\"type\":\"boolean\"},\"isPrivateLinkEndpointUrlRequired\":{\"type\":\"boolean\"},\"supportedTriggerTypes\":{\"type\":\"list\",\"member\":{}},\"connectorMetadata\":{\"type\":\"structure\",\"members\":{\"Amplitude\":{\"type\":\"structure\",\"members\":{}},\"Datadog\":{\"type\":\"structure\",\"members\":{}},\"Dynatrace\":{\"type\":\"structure\",\"members\":{}},\"GoogleAnalytics\":{\"type\":\"structure\",\"members\":{\"oAuthScopes\":{\"shape\":\"S5m\"}}},\"InforNexus\":{\"type\":\"structure\",\"members\":{}},\"Marketo\":{\"type\":\"structure\",\"members\":{}},\"Redshift\":{\"type\":\"structure\",\"members\":{}},\"S3\":{\"type\":\"structure\",\"members\":{}},\"Salesforce\":{\"type\":\"structure\",\"members\":{\"oAuthScopes\":{\"shape\":\"S5m\"}}},\"ServiceNow\":{\"type\":\"structure\",\"members\":{}},\"Singular\":{\"type\":\"structure\",\"members\":{}},\"Slack\":{\"type\":\"structure\",\"members\":{\"oAuthScopes\":{\"shape\":\"S5m\"}}},\"Snowflake\":{\"type\":\"structure\",\"members\":{\"supportedRegions\":{\"type\":\"list\",\"member\":{}}}},\"Trendmicro\":{\"type\":\"structure\",\"members\":{}},\"Veeva\":{\"type\":\"structure\",\"members\":{}},\"Zendesk\":{\"type\":\"structure\",\"members\":{\"oAuthScopes\":{\"shape\":\"S5m\"}}},\"EventBridge\":{\"type\":\"structure\",\"members\":{}},\"Upsolver\":{\"type\":\"structure\",\"members\":{}},\"CustomerProfiles\":{\"type\":\"structure\",\"members\":{}},\"Honeycode\":{\"type\":\"structure\",\"members\":{\"oAuthScopes\":{\"shape\":\"S5m\"}}}}}}}},\"nextToken\":{}}}},\"DescribeFlow\":{\"http\":{\"requestUri\":\"/describe-flow\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\"],\"members\":{\"flowName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"flowArn\":{},\"description\":{},\"flowName\":{},\"kmsArn\":{},\"flowStatus\":{},\"flowStatusMessage\":{},\"sourceFlowConfig\":{\"shape\":\"S2b\"},\"destinationFlowConfigList\":{\"shape\":\"S2u\"},\"lastRunExecutionDetails\":{\"shape\":\"S68\"},\"triggerConfig\":{\"shape\":\"S22\"},\"tasks\":{\"shape\":\"S3m\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"createdBy\":{},\"lastUpdatedBy\":{},\"tags\":{\"shape\":\"S4a\"}}}},\"DescribeFlowExecutionRecords\":{\"http\":{\"requestUri\":\"/describe-flow-execution-records\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\"],\"members\":{\"flowName\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"flowExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"executionId\":{},\"executionStatus\":{},\"executionResult\":{\"type\":\"structure\",\"members\":{\"errorInfo\":{\"type\":\"structure\",\"members\":{\"putFailuresCount\":{\"type\":\"long\"},\"executionMessage\":{}}},\"bytesProcessed\":{\"type\":\"long\"},\"bytesWritten\":{\"type\":\"long\"},\"recordsProcessed\":{\"type\":\"long\"}}},\"startedAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"dataPullStartTime\":{\"type\":\"timestamp\"},\"dataPullEndTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListConnectorEntities\":{\"http\":{\"requestUri\":\"/list-connector-entities\"},\"input\":{\"type\":\"structure\",\"members\":{\"connectorProfileName\":{},\"connectorType\":{},\"entitiesPath\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"connectorEntityMap\"],\"members\":{\"connectorEntityMap\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"label\":{},\"hasNestedEntities\":{\"type\":\"boolean\"}}}}}}}},\"ListFlows\":{\"http\":{\"requestUri\":\"/list-flows\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"flows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"flowArn\":{},\"description\":{},\"flowName\":{},\"flowStatus\":{},\"sourceConnectorType\":{},\"destinationConnectorType\":{},\"triggerType\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"createdBy\":{},\"lastUpdatedBy\":{},\"tags\":{\"shape\":\"S4a\"},\"lastRunExecutionDetails\":{\"shape\":\"S68\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S4a\"}}}},\"StartFlow\":{\"http\":{\"requestUri\":\"/start-flow\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\"],\"members\":{\"flowName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"flowArn\":{},\"flowStatus\":{},\"executionId\":{}}}},\"StopFlow\":{\"http\":{\"requestUri\":\"/stop-flow\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\"],\"members\":{\"flowName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"flowArn\":{},\"flowStatus\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S4a\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateConnectorProfile\":{\"http\":{\"requestUri\":\"/update-connector-profile\"},\"input\":{\"type\":\"structure\",\"required\":[\"connectorProfileName\",\"connectionMode\",\"connectorProfileConfig\"],\"members\":{\"connectorProfileName\":{},\"connectionMode\":{},\"connectorProfileConfig\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectorProfileArn\":{}}}},\"UpdateFlow\":{\"http\":{\"requestUri\":\"/update-flow\"},\"input\":{\"type\":\"structure\",\"required\":[\"flowName\",\"triggerConfig\",\"destinationFlowConfigList\",\"tasks\"],\"members\":{\"flowName\":{},\"description\":{},\"triggerConfig\":{\"shape\":\"S22\"},\"sourceFlowConfig\":{\"shape\":\"S2b\"},\"destinationFlowConfigList\":{\"shape\":\"S2u\"},\"tasks\":{\"shape\":\"S3m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"flowStatus\":{}}}}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"required\":[\"connectorProfileProperties\",\"connectorProfileCredentials\"],\"members\":{\"connectorProfileProperties\":{\"shape\":\"S7\"},\"connectorProfileCredentials\":{\"type\":\"structure\",\"members\":{\"Amplitude\":{\"type\":\"structure\",\"required\":[\"apiKey\",\"secretKey\"],\"members\":{\"apiKey\":{},\"secretKey\":{\"type\":\"string\",\"sensitive\":true}}},\"Datadog\":{\"type\":\"structure\",\"required\":[\"apiKey\",\"applicationKey\"],\"members\":{\"apiKey\":{},\"applicationKey\":{}}},\"Dynatrace\":{\"type\":\"structure\",\"required\":[\"apiToken\"],\"members\":{\"apiToken\":{}}},\"GoogleAnalytics\":{\"type\":\"structure\",\"required\":[\"clientId\",\"clientSecret\"],\"members\":{\"clientId\":{},\"clientSecret\":{\"shape\":\"S19\"},\"accessToken\":{\"shape\":\"S1a\"},\"refreshToken\":{},\"oAuthRequest\":{\"shape\":\"S1c\"}}},\"Honeycode\":{\"type\":\"structure\",\"members\":{\"accessToken\":{\"shape\":\"S1a\"},\"refreshToken\":{},\"oAuthRequest\":{\"shape\":\"S1c\"}}},\"InforNexus\":{\"type\":\"structure\",\"required\":[\"accessKeyId\",\"userId\",\"secretAccessKey\",\"datakey\"],\"members\":{\"accessKeyId\":{\"type\":\"string\",\"sensitive\":true},\"userId\":{},\"secretAccessKey\":{},\"datakey\":{}}},\"Marketo\":{\"type\":\"structure\",\"required\":[\"clientId\",\"clientSecret\"],\"members\":{\"clientId\":{},\"clientSecret\":{\"shape\":\"S19\"},\"accessToken\":{\"shape\":\"S1a\"},\"oAuthRequest\":{\"shape\":\"S1c\"}}},\"Redshift\":{\"type\":\"structure\",\"required\":[\"username\",\"password\"],\"members\":{\"username\":{},\"password\":{\"shape\":\"S1m\"}}},\"Salesforce\":{\"type\":\"structure\",\"members\":{\"accessToken\":{\"shape\":\"S1a\"},\"refreshToken\":{},\"oAuthRequest\":{\"shape\":\"S1c\"},\"clientCredentialsArn\":{\"type\":\"string\",\"sensitive\":true}}},\"ServiceNow\":{\"type\":\"structure\",\"required\":[\"username\",\"password\"],\"members\":{\"username\":{},\"password\":{\"shape\":\"S1m\"}}},\"Singular\":{\"type\":\"structure\",\"required\":[\"apiKey\"],\"members\":{\"apiKey\":{}}},\"Slack\":{\"type\":\"structure\",\"required\":[\"clientId\",\"clientSecret\"],\"members\":{\"clientId\":{},\"clientSecret\":{\"shape\":\"S19\"},\"accessToken\":{\"shape\":\"S1a\"},\"oAuthRequest\":{\"shape\":\"S1c\"}}},\"Snowflake\":{\"type\":\"structure\",\"required\":[\"username\",\"password\"],\"members\":{\"username\":{},\"password\":{\"shape\":\"S1m\"}}},\"Trendmicro\":{\"type\":\"structure\",\"required\":[\"apiSecretKey\"],\"members\":{\"apiSecretKey\":{\"type\":\"string\",\"sensitive\":true}}},\"Veeva\":{\"type\":\"structure\",\"required\":[\"username\",\"password\"],\"members\":{\"username\":{},\"password\":{\"shape\":\"S1m\"}}},\"Zendesk\":{\"type\":\"structure\",\"required\":[\"clientId\",\"clientSecret\"],\"members\":{\"clientId\":{},\"clientSecret\":{\"shape\":\"S19\"},\"accessToken\":{\"shape\":\"S1a\"},\"oAuthRequest\":{\"shape\":\"S1c\"}}}}}}},\"S7\":{\"type\":\"structure\",\"members\":{\"Amplitude\":{\"type\":\"structure\",\"members\":{}},\"Datadog\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"Dynatrace\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"GoogleAnalytics\":{\"type\":\"structure\",\"members\":{}},\"Honeycode\":{\"type\":\"structure\",\"members\":{}},\"InforNexus\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"Marketo\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"Redshift\":{\"type\":\"structure\",\"required\":[\"databaseUrl\",\"bucketName\",\"roleArn\"],\"members\":{\"databaseUrl\":{},\"bucketName\":{},\"bucketPrefix\":{},\"roleArn\":{}}},\"Salesforce\":{\"type\":\"structure\",\"members\":{\"instanceUrl\":{},\"isSandboxEnvironment\":{\"type\":\"boolean\"}}},\"ServiceNow\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"Singular\":{\"type\":\"structure\",\"members\":{}},\"Slack\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"Snowflake\":{\"type\":\"structure\",\"required\":[\"warehouse\",\"stage\",\"bucketName\"],\"members\":{\"warehouse\":{},\"stage\":{},\"bucketName\":{},\"bucketPrefix\":{},\"privateLinkServiceName\":{},\"accountName\":{},\"region\":{}}},\"Trendmicro\":{\"type\":\"structure\",\"members\":{}},\"Veeva\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}},\"Zendesk\":{\"type\":\"structure\",\"required\":[\"instanceUrl\"],\"members\":{\"instanceUrl\":{}}}}},\"S19\":{\"type\":\"string\",\"sensitive\":true},\"S1a\":{\"type\":\"string\",\"sensitive\":true},\"S1c\":{\"type\":\"structure\",\"members\":{\"authCode\":{},\"redirectUri\":{}}},\"S1m\":{\"type\":\"string\",\"sensitive\":true},\"S22\":{\"type\":\"structure\",\"required\":[\"triggerType\"],\"members\":{\"triggerType\":{},\"triggerProperties\":{\"type\":\"structure\",\"members\":{\"Scheduled\":{\"type\":\"structure\",\"required\":[\"scheduleExpression\"],\"members\":{\"scheduleExpression\":{},\"dataPullMode\":{},\"scheduleStartTime\":{\"type\":\"timestamp\"},\"scheduleEndTime\":{\"type\":\"timestamp\"},\"timezone\":{},\"scheduleOffset\":{\"type\":\"long\"},\"firstExecutionFrom\":{\"type\":\"timestamp\"}}}}}}},\"S2b\":{\"type\":\"structure\",\"required\":[\"connectorType\",\"sourceConnectorProperties\"],\"members\":{\"connectorType\":{},\"connectorProfileName\":{},\"sourceConnectorProperties\":{\"type\":\"structure\",\"members\":{\"Amplitude\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Datadog\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Dynatrace\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"GoogleAnalytics\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"InforNexus\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Marketo\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"S3\":{\"type\":\"structure\",\"required\":[\"bucketName\"],\"members\":{\"bucketName\":{},\"bucketPrefix\":{}}},\"Salesforce\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{},\"enableDynamicFieldUpdate\":{\"type\":\"boolean\"},\"includeDeletedRecords\":{\"type\":\"boolean\"}}},\"ServiceNow\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Singular\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Slack\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Trendmicro\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Veeva\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}},\"Zendesk\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{}}}}},\"incrementalPullConfig\":{\"type\":\"structure\",\"members\":{\"datetimeTypeFieldName\":{}}}}},\"S2u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"connectorType\",\"destinationConnectorProperties\"],\"members\":{\"connectorType\":{},\"connectorProfileName\":{},\"destinationConnectorProperties\":{\"type\":\"structure\",\"members\":{\"Redshift\":{\"type\":\"structure\",\"required\":[\"object\",\"intermediateBucketName\"],\"members\":{\"object\":{},\"intermediateBucketName\":{},\"bucketPrefix\":{},\"errorHandlingConfig\":{\"shape\":\"S2y\"}}},\"S3\":{\"type\":\"structure\",\"required\":[\"bucketName\"],\"members\":{\"bucketName\":{},\"bucketPrefix\":{},\"s3OutputFormatConfig\":{\"type\":\"structure\",\"members\":{\"fileType\":{},\"prefixConfig\":{\"shape\":\"S32\"},\"aggregationConfig\":{\"shape\":\"S35\"}}}}},\"Salesforce\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{},\"idFieldNames\":{\"shape\":\"S38\"},\"errorHandlingConfig\":{\"shape\":\"S2y\"},\"writeOperationType\":{}}},\"Snowflake\":{\"type\":\"structure\",\"required\":[\"object\",\"intermediateBucketName\"],\"members\":{\"object\":{},\"intermediateBucketName\":{},\"bucketPrefix\":{},\"errorHandlingConfig\":{\"shape\":\"S2y\"}}},\"EventBridge\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{},\"errorHandlingConfig\":{\"shape\":\"S2y\"}}},\"LookoutMetrics\":{\"type\":\"structure\",\"members\":{}},\"Upsolver\":{\"type\":\"structure\",\"required\":[\"bucketName\",\"s3OutputFormatConfig\"],\"members\":{\"bucketName\":{},\"bucketPrefix\":{},\"s3OutputFormatConfig\":{\"type\":\"structure\",\"required\":[\"prefixConfig\"],\"members\":{\"fileType\":{},\"prefixConfig\":{\"shape\":\"S32\"},\"aggregationConfig\":{\"shape\":\"S35\"}}}}},\"Honeycode\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{},\"errorHandlingConfig\":{\"shape\":\"S2y\"}}},\"CustomerProfiles\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{},\"objectTypeName\":{}}},\"Zendesk\":{\"type\":\"structure\",\"required\":[\"object\"],\"members\":{\"object\":{},\"idFieldNames\":{\"shape\":\"S38\"},\"errorHandlingConfig\":{\"shape\":\"S2y\"},\"writeOperationType\":{}}}}}}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"failOnFirstDestinationError\":{\"type\":\"boolean\"},\"bucketPrefix\":{},\"bucketName\":{}}},\"S32\":{\"type\":\"structure\",\"members\":{\"prefixType\":{},\"prefixFormat\":{}}},\"S35\":{\"type\":\"structure\",\"members\":{\"aggregationType\":{}}},\"S38\":{\"type\":\"list\",\"member\":{}},\"S3m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"sourceFields\",\"taskType\"],\"members\":{\"sourceFields\":{\"type\":\"list\",\"member\":{}},\"connectorOperator\":{\"type\":\"structure\",\"members\":{\"Amplitude\":{},\"Datadog\":{},\"Dynatrace\":{},\"GoogleAnalytics\":{},\"InforNexus\":{},\"Marketo\":{},\"S3\":{},\"Salesforce\":{},\"ServiceNow\":{},\"Singular\":{},\"Slack\":{},\"Trendmicro\":{},\"Veeva\":{},\"Zendesk\":{}}},\"destinationField\":{},\"taskType\":{},\"taskProperties\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S4a\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S5a\":{\"type\":\"list\",\"member\":{}},\"S5m\":{\"type\":\"list\",\"member\":{}},\"S68\":{\"type\":\"structure\",\"members\":{\"mostRecentExecutionMessage\":{},\"mostRecentExecutionTime\":{\"type\":\"timestamp\"},\"mostRecentExecutionStatus\":{}}}}}");

/***/ }),

/***/ 3505:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeConnectorProfiles\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"DescribeConnectors\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\"},\"DescribeFlowExecutionRecords\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListFlows\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 26469:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-07-29\",\"endpointPrefix\":\"app-integrations\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon AppIntegrations Service\",\"serviceId\":\"AppIntegrations\",\"signatureVersion\":\"v4\",\"signingName\":\"app-integrations\",\"uid\":\"appintegrations-2020-07-29\"},\"operations\":{\"CreateEventIntegration\":{\"http\":{\"requestUri\":\"/eventIntegrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"EventFilter\",\"EventBridgeBus\"],\"members\":{\"Name\":{},\"Description\":{},\"EventFilter\":{\"shape\":\"S4\"},\"EventBridgeBus\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventIntegrationArn\":{}}}},\"DeleteEventIntegration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/eventIntegrations/{Name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetEventIntegration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/eventIntegrations/{Name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"EventIntegrationArn\":{},\"EventBridgeBus\":{},\"EventFilter\":{\"shape\":\"S4\"},\"Tags\":{\"shape\":\"S8\"}}}},\"ListEventIntegrationAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/eventIntegrations/{Name}/associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"EventIntegrationName\"],\"members\":{\"EventIntegrationName\":{\"location\":\"uri\",\"locationName\":\"Name\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventIntegrationAssociations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventIntegrationAssociationArn\":{},\"EventIntegrationAssociationId\":{},\"EventIntegrationName\":{},\"ClientId\":{},\"EventBridgeRuleName\":{},\"ClientAssociationMetadata\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"NextToken\":{}}}},\"ListEventIntegrations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/eventIntegrations\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventIntegrations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventIntegrationArn\":{},\"Name\":{},\"Description\":{},\"EventFilter\":{\"shape\":\"S4\"},\"EventBridgeBus\":{},\"Tags\":{\"shape\":\"S8\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S8\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateEventIntegration\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/eventIntegrations/{Name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"Source\"],\"members\":{\"Source\":{}}},\"S8\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 74824:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 14452:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-02-06\",\"endpointPrefix\":\"application-autoscaling\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Application Auto Scaling\",\"serviceId\":\"Application Auto Scaling\",\"signatureVersion\":\"v4\",\"signingName\":\"application-autoscaling\",\"targetPrefix\":\"AnyScaleFrontendService\",\"uid\":\"application-autoscaling-2016-02-06\"},\"operations\":{\"DeleteScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyName\",\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\"],\"members\":{\"PolicyName\":{},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\",\"ScheduledActionName\",\"ResourceId\",\"ScalableDimension\"],\"members\":{\"ServiceNamespace\":{},\"ScheduledActionName\":{},\"ResourceId\":{},\"ScalableDimension\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterScalableTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\"],\"members\":{\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeScalableTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\"],\"members\":{\"ServiceNamespace\":{},\"ResourceIds\":{\"shape\":\"Sb\"},\"ScalableDimension\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScalableTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\",\"MinCapacity\",\"MaxCapacity\",\"RoleARN\",\"CreationTime\"],\"members\":{\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"},\"RoleARN\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"SuspendedState\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}}},\"DescribeScalingActivities\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\"],\"members\":{\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScalingActivities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ActivityId\",\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\",\"Description\",\"Cause\",\"StartTime\",\"StatusCode\"],\"members\":{\"ActivityId\":{},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"Description\":{},\"Cause\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"StatusCode\":{},\"StatusMessage\":{},\"Details\":{}}}},\"NextToken\":{}}}},\"DescribeScalingPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\"],\"members\":{\"PolicyNames\":{\"shape\":\"Sb\"},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScalingPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PolicyARN\",\"PolicyName\",\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\",\"PolicyType\",\"CreationTime\"],\"members\":{\"PolicyARN\":{},\"PolicyName\":{},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"PolicyType\":{},\"StepScalingPolicyConfiguration\":{\"shape\":\"Sx\"},\"TargetTrackingScalingPolicyConfiguration\":{\"shape\":\"S16\"},\"Alarms\":{\"shape\":\"S1k\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeScheduledActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\"],\"members\":{\"ScheduledActionNames\":{\"shape\":\"Sb\"},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScheduledActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScheduledActionName\",\"ScheduledActionARN\",\"ServiceNamespace\",\"Schedule\",\"ResourceId\",\"CreationTime\"],\"members\":{\"ScheduledActionName\":{},\"ScheduledActionARN\":{},\"ServiceNamespace\":{},\"Schedule\":{},\"Timezone\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"ScalableTargetAction\":{\"shape\":\"S1r\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"PutScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyName\",\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\"],\"members\":{\"PolicyName\":{},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"PolicyType\":{},\"StepScalingPolicyConfiguration\":{\"shape\":\"Sx\"},\"TargetTrackingScalingPolicyConfiguration\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"PolicyARN\"],\"members\":{\"PolicyARN\":{},\"Alarms\":{\"shape\":\"S1k\"}}}},\"PutScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\",\"ScheduledActionName\",\"ResourceId\",\"ScalableDimension\"],\"members\":{\"ServiceNamespace\":{},\"Schedule\":{},\"Timezone\":{},\"ScheduledActionName\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"ScalableTargetAction\":{\"shape\":\"S1r\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RegisterScalableTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\"],\"members\":{\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"},\"RoleARN\":{},\"SuspendedState\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sb\":{\"type\":\"list\",\"member\":{}},\"Sj\":{\"type\":\"structure\",\"members\":{\"DynamicScalingInSuspended\":{\"type\":\"boolean\"},\"DynamicScalingOutSuspended\":{\"type\":\"boolean\"},\"ScheduledScalingSuspended\":{\"type\":\"boolean\"}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"AdjustmentType\":{},\"StepAdjustments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScalingAdjustment\"],\"members\":{\"MetricIntervalLowerBound\":{\"type\":\"double\"},\"MetricIntervalUpperBound\":{\"type\":\"double\"},\"ScalingAdjustment\":{\"type\":\"integer\"}}}},\"MinAdjustmentMagnitude\":{\"type\":\"integer\"},\"Cooldown\":{\"type\":\"integer\"},\"MetricAggregationType\":{}}},\"S16\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"TargetValue\":{\"type\":\"double\"},\"PredefinedMetricSpecification\":{\"type\":\"structure\",\"required\":[\"PredefinedMetricType\"],\"members\":{\"PredefinedMetricType\":{},\"ResourceLabel\":{}}},\"CustomizedMetricSpecification\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Namespace\",\"Statistic\"],\"members\":{\"MetricName\":{},\"Namespace\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"Statistic\":{},\"Unit\":{}}},\"ScaleOutCooldown\":{\"type\":\"integer\"},\"ScaleInCooldown\":{\"type\":\"integer\"},\"DisableScaleIn\":{\"type\":\"boolean\"}}},\"S1k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AlarmName\",\"AlarmARN\"],\"members\":{\"AlarmName\":{},\"AlarmARN\":{}}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 11157:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeScalableTargets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScalableTargets\"},\"DescribeScalingActivities\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScalingActivities\"},\"DescribeScalingPolicies\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScalingPolicies\"},\"DescribeScheduledActions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScheduledActions\"}}}");

/***/ }),

/***/ 48728:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-25\",\"endpointPrefix\":\"applicationinsights\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Application Insights\",\"serviceFullName\":\"Amazon CloudWatch Application Insights\",\"serviceId\":\"Application Insights\",\"signatureVersion\":\"v4\",\"signingName\":\"applicationinsights\",\"targetPrefix\":\"EC2WindowsBarleyService\",\"uid\":\"application-insights-2018-11-25\"},\"operations\":{\"CreateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{},\"OpsCenterEnabled\":{\"type\":\"boolean\"},\"CWEMonitorEnabled\":{\"type\":\"boolean\"},\"OpsItemSNSTopicArn\":{},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationInfo\":{\"shape\":\"Sb\"}}}},\"CreateComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\",\"ResourceList\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{},\"ResourceList\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateLogPattern\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"PatternSetName\",\"PatternName\",\"Pattern\",\"Rank\"],\"members\":{\"ResourceGroupName\":{},\"PatternSetName\":{},\"PatternName\":{},\"Pattern\":{},\"Rank\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LogPattern\":{\"shape\":\"Sp\"},\"ResourceGroupName\":{}}}},\"DeleteApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteLogPattern\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"PatternSetName\",\"PatternName\"],\"members\":{\"ResourceGroupName\":{},\"PatternSetName\":{},\"PatternName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationInfo\":{\"shape\":\"Sb\"}}}},\"DescribeComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationComponent\":{\"shape\":\"S11\"},\"ResourceList\":{\"shape\":\"Sg\"}}}},\"DescribeComponentConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Monitor\":{\"type\":\"boolean\"},\"Tier\":{},\"ComponentConfiguration\":{}}}},\"DescribeComponentConfigurationRecommendation\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\",\"Tier\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{},\"Tier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComponentConfiguration\":{}}}},\"DescribeLogPattern\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"PatternSetName\",\"PatternName\"],\"members\":{\"ResourceGroupName\":{},\"PatternSetName\":{},\"PatternName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"LogPattern\":{\"shape\":\"Sp\"}}}},\"DescribeObservation\":{\"input\":{\"type\":\"structure\",\"required\":[\"ObservationId\"],\"members\":{\"ObservationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Observation\":{\"shape\":\"S1k\"}}}},\"DescribeProblem\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProblemId\"],\"members\":{\"ProblemId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Problem\":{\"shape\":\"S2w\"}}}},\"DescribeProblemObservations\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProblemId\"],\"members\":{\"ProblemId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RelatedObservations\":{\"type\":\"structure\",\"members\":{\"ObservationList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1k\"}}}}}}},\"ListApplications\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationInfoList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}},\"NextToken\":{}}}},\"ListComponents\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationComponentList\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\"}},\"NextToken\":{}}}},\"ListConfigurationHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"EventStatus\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MonitoredResourceARN\":{},\"EventStatus\":{},\"EventResourceType\":{},\"EventTime\":{\"type\":\"timestamp\"},\"EventDetail\":{},\"EventResourceName\":{}}}},\"NextToken\":{}}}},\"ListLogPatternSets\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"LogPatternSets\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListLogPatterns\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{},\"PatternSetName\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"LogPatterns\":{\"type\":\"list\",\"member\":{\"shape\":\"Sp\"}},\"NextToken\":{}}}},\"ListProblems\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProblemList\":{\"type\":\"list\",\"member\":{\"shape\":\"S2w\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\"],\"members\":{\"ResourceGroupName\":{},\"OpsCenterEnabled\":{\"type\":\"boolean\"},\"CWEMonitorEnabled\":{\"type\":\"boolean\"},\"OpsItemSNSTopicArn\":{},\"RemoveSNSTopic\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationInfo\":{\"shape\":\"Sb\"}}}},\"UpdateComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{},\"NewComponentName\":{},\"ResourceList\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateComponentConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"ComponentName\"],\"members\":{\"ResourceGroupName\":{},\"ComponentName\":{},\"Monitor\":{\"type\":\"boolean\"},\"Tier\":{},\"ComponentConfiguration\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLogPattern\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceGroupName\",\"PatternSetName\",\"PatternName\"],\"members\":{\"ResourceGroupName\":{},\"PatternSetName\":{},\"PatternName\":{},\"Pattern\":{},\"Rank\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"LogPattern\":{\"shape\":\"Sp\"}}}}},\"shapes\":{\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"ResourceGroupName\":{},\"LifeCycle\":{},\"OpsItemSNSTopicArn\":{},\"OpsCenterEnabled\":{\"type\":\"boolean\"},\"CWEMonitorEnabled\":{\"type\":\"boolean\"},\"Remarks\":{}}},\"Sg\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"structure\",\"members\":{\"PatternSetName\":{},\"PatternName\":{},\"Pattern\":{},\"Rank\":{\"type\":\"integer\"}}},\"S11\":{\"type\":\"structure\",\"members\":{\"ComponentName\":{},\"ComponentRemarks\":{},\"ResourceType\":{},\"OsType\":{},\"Tier\":{},\"Monitor\":{\"type\":\"boolean\"},\"DetectedWorkload\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S1k\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"SourceType\":{},\"SourceARN\":{},\"LogGroup\":{},\"LineTime\":{\"type\":\"timestamp\"},\"LogText\":{},\"LogFilter\":{},\"MetricNamespace\":{},\"MetricName\":{},\"Unit\":{},\"Value\":{\"type\":\"double\"},\"CloudWatchEventId\":{},\"CloudWatchEventSource\":{},\"CloudWatchEventDetailType\":{},\"HealthEventArn\":{},\"HealthService\":{},\"HealthEventTypeCode\":{},\"HealthEventTypeCategory\":{},\"HealthEventDescription\":{},\"CodeDeployDeploymentId\":{},\"CodeDeployDeploymentGroup\":{},\"CodeDeployState\":{},\"CodeDeployApplication\":{},\"CodeDeployInstanceGroupId\":{},\"Ec2State\":{},\"RdsEventCategories\":{},\"RdsEventMessage\":{},\"S3EventName\":{},\"StatesExecutionArn\":{},\"StatesArn\":{},\"StatesStatus\":{},\"StatesInput\":{},\"EbsEvent\":{},\"EbsResult\":{},\"EbsCause\":{},\"EbsRequestId\":{},\"XRayFaultPercent\":{\"type\":\"integer\"},\"XRayThrottlePercent\":{\"type\":\"integer\"},\"XRayErrorPercent\":{\"type\":\"integer\"},\"XRayRequestCount\":{\"type\":\"integer\"},\"XRayRequestAverageLatency\":{\"type\":\"long\"},\"XRayNodeName\":{},\"XRayNodeType\":{}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Title\":{},\"Insights\":{},\"Status\":{},\"AffectedResource\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"SeverityLevel\":{},\"ResourceGroupName\":{},\"Feedback\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}");

/***/ }),

/***/ 9986:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListComponents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListConfigurationHistory\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLogPatternSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLogPatterns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListProblems\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 4710:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-10-01\",\"endpointPrefix\":\"appmesh\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS App Mesh\",\"serviceId\":\"App Mesh\",\"signatureVersion\":\"v4\",\"signingName\":\"appmesh\",\"uid\":\"appmesh-2018-10-01\"},\"operations\":{\"CreateMesh\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"mesh\":{\"shape\":\"S5\"}},\"payload\":\"mesh\"},\"idempotent\":true},\"CreateRoute\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"routeName\":{},\"spec\":{\"shape\":\"Sd\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"route\":{\"shape\":\"Sl\"}},\"payload\":\"route\"},\"idempotent\":true},\"CreateVirtualNode\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes/{meshName}/virtualNodes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualNodeName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"spec\":{\"shape\":\"Sp\"},\"virtualNodeName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualNode\":{\"shape\":\"S14\"}},\"payload\":\"virtualNode\"},\"idempotent\":true},\"CreateVirtualRouter\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes/{meshName}/virtualRouters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"spec\":{\"shape\":\"S18\"},\"virtualRouterName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualRouter\":{\"shape\":\"S1b\"}},\"payload\":\"virtualRouter\"},\"idempotent\":true},\"DeleteMesh\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/meshes/{meshName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"mesh\":{\"shape\":\"S5\"}},\"payload\":\"mesh\"},\"idempotent\":true},\"DeleteRoute\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"routeName\":{\"location\":\"uri\",\"locationName\":\"routeName\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"route\":{\"shape\":\"Sl\"}},\"payload\":\"route\"},\"idempotent\":true},\"DeleteVirtualNode\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/meshes/{meshName}/virtualNodes/{virtualNodeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualNodeName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"virtualNodeName\":{\"location\":\"uri\",\"locationName\":\"virtualNodeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualNode\":{\"shape\":\"S14\"}},\"payload\":\"virtualNode\"},\"idempotent\":true},\"DeleteVirtualRouter\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/meshes/{meshName}/virtualRouters/{virtualRouterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualRouter\":{\"shape\":\"S1b\"}},\"payload\":\"virtualRouter\"},\"idempotent\":true},\"DescribeMesh\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"mesh\":{\"shape\":\"S5\"}},\"payload\":\"mesh\"}},\"DescribeRoute\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"routeName\":{\"location\":\"uri\",\"locationName\":\"routeName\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"route\":{\"shape\":\"Sl\"}},\"payload\":\"route\"}},\"DescribeVirtualNode\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}/virtualNodes/{virtualNodeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualNodeName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"virtualNodeName\":{\"location\":\"uri\",\"locationName\":\"virtualNodeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualNode\":{\"shape\":\"S14\"}},\"payload\":\"virtualNode\"}},\"DescribeVirtualRouter\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}/virtualRouters/{virtualRouterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualRouter\":{\"shape\":\"S1b\"}},\"payload\":\"virtualRouter\"}},\"ListMeshes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"meshes\"],\"members\":{\"meshes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"meshName\":{}}}},\"nextToken\":{}}}},\"ListRoutes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"routes\"],\"members\":{\"nextToken\":{},\"routes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"meshName\":{},\"routeName\":{},\"virtualRouterName\":{}}}}}}},\"ListVirtualNodes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}/virtualNodes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualNodes\"],\"members\":{\"nextToken\":{},\"virtualNodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"meshName\":{},\"virtualNodeName\":{}}}}}}},\"ListVirtualRouters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meshes/{meshName}/virtualRouters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualRouters\"],\"members\":{\"nextToken\":{},\"virtualRouters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"meshName\":{},\"virtualRouterName\":{}}}}}}},\"UpdateRoute\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"routeName\":{\"location\":\"uri\",\"locationName\":\"routeName\"},\"spec\":{\"shape\":\"Sd\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"route\":{\"shape\":\"Sl\"}},\"payload\":\"route\"},\"idempotent\":true},\"UpdateVirtualNode\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes/{meshName}/virtualNodes/{virtualNodeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualNodeName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"spec\":{\"shape\":\"Sp\"},\"virtualNodeName\":{\"location\":\"uri\",\"locationName\":\"virtualNodeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualNode\":{\"shape\":\"S14\"}},\"payload\":\"virtualNode\"},\"idempotent\":true},\"UpdateVirtualRouter\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/meshes/{meshName}/virtualRouters/{virtualRouterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"spec\":{\"shape\":\"S18\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualRouter\":{\"shape\":\"S1b\"}},\"payload\":\"virtualRouter\"},\"idempotent\":true}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"S6\"},\"status\":{\"type\":\"structure\",\"members\":{\"status\":{}}}}},\"S6\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"uid\":{},\"version\":{\"type\":\"long\"}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"httpRoute\":{\"type\":\"structure\",\"members\":{\"action\":{\"type\":\"structure\",\"members\":{\"weightedTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"virtualNode\":{},\"weight\":{\"type\":\"integer\"}}}}}},\"match\":{\"type\":\"structure\",\"members\":{\"prefix\":{}}}}}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"virtualRouterName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"S6\"},\"routeName\":{},\"spec\":{\"shape\":\"Sd\"},\"status\":{\"type\":\"structure\",\"members\":{\"status\":{}}},\"virtualRouterName\":{}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"backends\":{\"type\":\"list\",\"member\":{}},\"listeners\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"healthCheck\":{\"type\":\"structure\",\"required\":[\"healthyThreshold\",\"intervalMillis\",\"protocol\",\"timeoutMillis\",\"unhealthyThreshold\"],\"members\":{\"healthyThreshold\":{\"type\":\"integer\"},\"intervalMillis\":{\"type\":\"long\"},\"path\":{},\"port\":{\"type\":\"integer\"},\"protocol\":{},\"timeoutMillis\":{\"type\":\"long\"},\"unhealthyThreshold\":{\"type\":\"integer\"}}},\"portMapping\":{\"type\":\"structure\",\"members\":{\"port\":{\"type\":\"integer\"},\"protocol\":{}}}}}},\"serviceDiscovery\":{\"type\":\"structure\",\"members\":{\"dns\":{\"type\":\"structure\",\"members\":{\"serviceName\":{}}}}}}},\"S14\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualNodeName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"S6\"},\"spec\":{\"shape\":\"Sp\"},\"status\":{\"type\":\"structure\",\"members\":{\"status\":{}}},\"virtualNodeName\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"serviceNames\":{\"type\":\"list\",\"member\":{}}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"S6\"},\"spec\":{\"shape\":\"S18\"},\"status\":{\"type\":\"structure\",\"members\":{\"status\":{}}},\"virtualRouterName\":{}}}}}");

/***/ }),

/***/ 74196:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListMeshes\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"meshes\"},\"ListRoutes\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"routes\"},\"ListVirtualNodes\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"virtualNodes\"},\"ListVirtualRouters\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"virtualRouters\"}}}");

/***/ }),

/***/ 99818:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-01-25\",\"endpointPrefix\":\"appmesh\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS App Mesh\",\"serviceId\":\"App Mesh\",\"signatureVersion\":\"v4\",\"signingName\":\"appmesh\",\"uid\":\"appmesh-2019-01-25\"},\"operations\":{\"CreateGatewayRoute\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayRouteName\",\"meshName\",\"spec\",\"virtualGatewayName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"gatewayRouteName\":{},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S5\"},\"tags\":{\"shape\":\"Sf\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayRoute\"],\"members\":{\"gatewayRoute\":{\"shape\":\"Sk\"}},\"payload\":\"gatewayRoute\"},\"idempotent\":true},\"CreateMesh\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{},\"spec\":{\"shape\":\"Ss\"},\"tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"mesh\"],\"members\":{\"mesh\":{\"shape\":\"Sw\"}},\"payload\":\"mesh\"},\"idempotent\":true},\"CreateRoute\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"routeName\":{},\"spec\":{\"shape\":\"S10\"},\"tags\":{\"shape\":\"Sf\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"route\"],\"members\":{\"route\":{\"shape\":\"S26\"}},\"payload\":\"route\"},\"idempotent\":true},\"CreateVirtualGateway\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateways\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualGatewayName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S2a\"},\"tags\":{\"shape\":\"Sf\"},\"virtualGatewayName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualGateway\"],\"members\":{\"virtualGateway\":{\"shape\":\"S3k\"}},\"payload\":\"virtualGateway\"},\"idempotent\":true},\"CreateVirtualNode\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualNodes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualNodeName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S3o\"},\"tags\":{\"shape\":\"Sf\"},\"virtualNodeName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualNode\"],\"members\":{\"virtualNode\":{\"shape\":\"S55\"}},\"payload\":\"virtualNode\"},\"idempotent\":true},\"CreateVirtualRouter\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S59\"},\"tags\":{\"shape\":\"Sf\"},\"virtualRouterName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualRouter\"],\"members\":{\"virtualRouter\":{\"shape\":\"S5d\"}},\"payload\":\"virtualRouter\"},\"idempotent\":true},\"CreateVirtualService\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualServices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualServiceName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S5h\"},\"tags\":{\"shape\":\"Sf\"},\"virtualServiceName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualService\"],\"members\":{\"virtualService\":{\"shape\":\"S5m\"}},\"payload\":\"virtualService\"},\"idempotent\":true},\"DeleteGatewayRoute\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes/{gatewayRouteName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayRouteName\",\"meshName\",\"virtualGatewayName\"],\"members\":{\"gatewayRouteName\":{\"location\":\"uri\",\"locationName\":\"gatewayRouteName\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayRoute\"],\"members\":{\"gatewayRoute\":{\"shape\":\"Sk\"}},\"payload\":\"gatewayRoute\"},\"idempotent\":true},\"DeleteMesh\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"mesh\"],\"members\":{\"mesh\":{\"shape\":\"Sw\"}},\"payload\":\"mesh\"},\"idempotent\":true},\"DeleteRoute\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"routeName\":{\"location\":\"uri\",\"locationName\":\"routeName\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"route\"],\"members\":{\"route\":{\"shape\":\"S26\"}},\"payload\":\"route\"},\"idempotent\":true},\"DeleteVirtualGateway\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateways/{virtualGatewayName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualGatewayName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualGateway\"],\"members\":{\"virtualGateway\":{\"shape\":\"S3k\"}},\"payload\":\"virtualGateway\"},\"idempotent\":true},\"DeleteVirtualNode\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualNodeName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualNodeName\":{\"location\":\"uri\",\"locationName\":\"virtualNodeName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualNode\"],\"members\":{\"virtualNode\":{\"shape\":\"S55\"}},\"payload\":\"virtualNode\"},\"idempotent\":true},\"DeleteVirtualRouter\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualRouter\"],\"members\":{\"virtualRouter\":{\"shape\":\"S5d\"}},\"payload\":\"virtualRouter\"},\"idempotent\":true},\"DeleteVirtualService\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualServiceName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualServiceName\":{\"location\":\"uri\",\"locationName\":\"virtualServiceName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualService\"],\"members\":{\"virtualService\":{\"shape\":\"S5m\"}},\"payload\":\"virtualService\"},\"idempotent\":true},\"DescribeGatewayRoute\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes/{gatewayRouteName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayRouteName\",\"meshName\",\"virtualGatewayName\"],\"members\":{\"gatewayRouteName\":{\"location\":\"uri\",\"locationName\":\"gatewayRouteName\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayRoute\"],\"members\":{\"gatewayRoute\":{\"shape\":\"Sk\"}},\"payload\":\"gatewayRoute\"}},\"DescribeMesh\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"mesh\"],\"members\":{\"mesh\":{\"shape\":\"Sw\"}},\"payload\":\"mesh\"}},\"DescribeRoute\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"routeName\":{\"location\":\"uri\",\"locationName\":\"routeName\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"route\"],\"members\":{\"route\":{\"shape\":\"S26\"}},\"payload\":\"route\"}},\"DescribeVirtualGateway\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateways/{virtualGatewayName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualGatewayName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualGateway\"],\"members\":{\"virtualGateway\":{\"shape\":\"S3k\"}},\"payload\":\"virtualGateway\"}},\"DescribeVirtualNode\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualNodeName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualNodeName\":{\"location\":\"uri\",\"locationName\":\"virtualNodeName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualNode\"],\"members\":{\"virtualNode\":{\"shape\":\"S55\"}},\"payload\":\"virtualNode\"}},\"DescribeVirtualRouter\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualRouter\"],\"members\":{\"virtualRouter\":{\"shape\":\"S5d\"}},\"payload\":\"virtualRouter\"}},\"DescribeVirtualService\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualServiceName\"],\"members\":{\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"virtualServiceName\":{\"location\":\"uri\",\"locationName\":\"virtualServiceName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualService\"],\"members\":{\"virtualService\":{\"shape\":\"S5m\"}},\"payload\":\"virtualService\"}},\"ListGatewayRoutes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualGatewayName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayRoutes\"],\"members\":{\"gatewayRoutes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"gatewayRouteName\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"version\",\"virtualGatewayName\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"gatewayRouteName\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"version\":{\"type\":\"long\"},\"virtualGatewayName\":{}}}},\"nextToken\":{}}}},\"ListMeshes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"meshes\"],\"members\":{\"meshes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"version\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"version\":{\"type\":\"long\"}}}},\"nextToken\":{}}}},\"ListRoutes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"virtualRouterName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"routes\"],\"members\":{\"nextToken\":{},\"routes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"routeName\",\"version\",\"virtualRouterName\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"routeName\":{},\"version\":{\"type\":\"long\"},\"virtualRouterName\":{}}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/tags\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"tags\"],\"members\":{\"nextToken\":{},\"tags\":{\"shape\":\"Sf\"}}}},\"ListVirtualGateways\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateways\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualGateways\"],\"members\":{\"nextToken\":{},\"virtualGateways\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"version\",\"virtualGatewayName\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"version\":{\"type\":\"long\"},\"virtualGatewayName\":{}}}}}}},\"ListVirtualNodes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualNodes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualNodes\"],\"members\":{\"nextToken\":{},\"virtualNodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"version\",\"virtualNodeName\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"version\":{\"type\":\"long\"},\"virtualNodeName\":{}}}}}}},\"ListVirtualRouters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualRouters\"],\"members\":{\"nextToken\":{},\"virtualRouters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"version\",\"virtualRouterName\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"version\":{\"type\":\"long\"},\"virtualRouterName\":{}}}}}}},\"ListVirtualServices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualServices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualServices\"],\"members\":{\"nextToken\":{},\"virtualServices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshName\",\"meshOwner\",\"resourceOwner\",\"version\",\"virtualServiceName\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshName\":{},\"meshOwner\":{},\"resourceOwner\":{},\"version\":{\"type\":\"long\"},\"virtualServiceName\":{}}}}}}},\"TagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/tag\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UntagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/untag\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateGatewayRoute\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateway/{virtualGatewayName}/gatewayRoutes/{gatewayRouteName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayRouteName\",\"meshName\",\"spec\",\"virtualGatewayName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"gatewayRouteName\":{\"location\":\"uri\",\"locationName\":\"gatewayRouteName\"},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S5\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayRoute\"],\"members\":{\"gatewayRoute\":{\"shape\":\"Sk\"}},\"payload\":\"gatewayRoute\"},\"idempotent\":true},\"UpdateMesh\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"spec\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"mesh\"],\"members\":{\"mesh\":{\"shape\":\"Sw\"}},\"payload\":\"mesh\"},\"idempotent\":true},\"UpdateRoute\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes/{routeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"routeName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"routeName\":{\"location\":\"uri\",\"locationName\":\"routeName\"},\"spec\":{\"shape\":\"S10\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"route\"],\"members\":{\"route\":{\"shape\":\"S26\"}},\"payload\":\"route\"},\"idempotent\":true},\"UpdateVirtualGateway\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualGateways/{virtualGatewayName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualGatewayName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S2a\"},\"virtualGatewayName\":{\"location\":\"uri\",\"locationName\":\"virtualGatewayName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualGateway\"],\"members\":{\"virtualGateway\":{\"shape\":\"S3k\"}},\"payload\":\"virtualGateway\"},\"idempotent\":true},\"UpdateVirtualNode\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualNodes/{virtualNodeName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualNodeName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S3o\"},\"virtualNodeName\":{\"location\":\"uri\",\"locationName\":\"virtualNodeName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualNode\"],\"members\":{\"virtualNode\":{\"shape\":\"S55\"}},\"payload\":\"virtualNode\"},\"idempotent\":true},\"UpdateVirtualRouter\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualRouters/{virtualRouterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualRouterName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S59\"},\"virtualRouterName\":{\"location\":\"uri\",\"locationName\":\"virtualRouterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualRouter\"],\"members\":{\"virtualRouter\":{\"shape\":\"S5d\"}},\"payload\":\"virtualRouter\"},\"idempotent\":true},\"UpdateVirtualService\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20190125/meshes/{meshName}/virtualServices/{virtualServiceName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"meshName\",\"spec\",\"virtualServiceName\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"meshName\":{\"location\":\"uri\",\"locationName\":\"meshName\"},\"meshOwner\":{\"location\":\"querystring\",\"locationName\":\"meshOwner\"},\"spec\":{\"shape\":\"S5h\"},\"virtualServiceName\":{\"location\":\"uri\",\"locationName\":\"virtualServiceName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"virtualService\"],\"members\":{\"virtualService\":{\"shape\":\"S5m\"}},\"payload\":\"virtualService\"},\"idempotent\":true}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"grpcRoute\":{\"type\":\"structure\",\"required\":[\"action\",\"match\"],\"members\":{\"action\":{\"type\":\"structure\",\"required\":[\"target\"],\"members\":{\"target\":{\"shape\":\"S8\"}}},\"match\":{\"type\":\"structure\",\"members\":{\"serviceName\":{}}}}},\"http2Route\":{\"shape\":\"Sc\"},\"httpRoute\":{\"shape\":\"Sc\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"virtualService\"],\"members\":{\"virtualService\":{\"type\":\"structure\",\"required\":[\"virtualServiceName\"],\"members\":{\"virtualServiceName\":{}}}}},\"Sc\":{\"type\":\"structure\",\"required\":[\"action\",\"match\"],\"members\":{\"action\":{\"type\":\"structure\",\"required\":[\"target\"],\"members\":{\"target\":{\"shape\":\"S8\"}}},\"match\":{\"type\":\"structure\",\"required\":[\"prefix\"],\"members\":{\"prefix\":{}}}}},\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"gatewayRouteName\",\"meshName\",\"metadata\",\"spec\",\"status\",\"virtualGatewayName\"],\"members\":{\"gatewayRouteName\":{},\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"spec\":{\"shape\":\"S5\"},\"status\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"virtualGatewayName\":{}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"arn\",\"createdAt\",\"lastUpdatedAt\",\"meshOwner\",\"resourceOwner\",\"uid\",\"version\"],\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"meshOwner\":{},\"resourceOwner\":{},\"uid\":{},\"version\":{\"type\":\"long\"}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"egressFilter\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{}}}}},\"Sw\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\",\"spec\",\"status\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"spec\":{\"shape\":\"Ss\"},\"status\":{\"type\":\"structure\",\"members\":{\"status\":{}}}}},\"S10\":{\"type\":\"structure\",\"members\":{\"grpcRoute\":{\"type\":\"structure\",\"required\":[\"action\",\"match\"],\"members\":{\"action\":{\"type\":\"structure\",\"required\":[\"weightedTargets\"],\"members\":{\"weightedTargets\":{\"shape\":\"S13\"}}},\"match\":{\"type\":\"structure\",\"members\":{\"metadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"invert\":{\"type\":\"boolean\"},\"match\":{\"type\":\"structure\",\"members\":{\"exact\":{},\"prefix\":{},\"range\":{\"shape\":\"S1c\"},\"regex\":{},\"suffix\":{}},\"union\":true},\"name\":{}}}},\"methodName\":{},\"serviceName\":{}}},\"retryPolicy\":{\"type\":\"structure\",\"required\":[\"maxRetries\",\"perRetryTimeout\"],\"members\":{\"grpcRetryEvents\":{\"type\":\"list\",\"member\":{}},\"httpRetryEvents\":{\"shape\":\"S1i\"},\"maxRetries\":{\"type\":\"long\"},\"perRetryTimeout\":{\"shape\":\"S1l\"},\"tcpRetryEvents\":{\"shape\":\"S1o\"}}},\"timeout\":{\"shape\":\"S1q\"}}},\"http2Route\":{\"shape\":\"S1r\"},\"httpRoute\":{\"shape\":\"S1r\"},\"priority\":{\"type\":\"integer\"},\"tcpRoute\":{\"type\":\"structure\",\"required\":[\"action\"],\"members\":{\"action\":{\"type\":\"structure\",\"required\":[\"weightedTargets\"],\"members\":{\"weightedTargets\":{\"shape\":\"S13\"}}},\"timeout\":{\"shape\":\"S24\"}}}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"virtualNode\",\"weight\"],\"members\":{\"virtualNode\":{},\"weight\":{\"type\":\"integer\"}}}},\"S1c\":{\"type\":\"structure\",\"required\":[\"end\",\"start\"],\"members\":{\"end\":{\"type\":\"long\"},\"start\":{\"type\":\"long\"}}},\"S1i\":{\"type\":\"list\",\"member\":{}},\"S1l\":{\"type\":\"structure\",\"members\":{\"unit\":{},\"value\":{\"type\":\"long\"}}},\"S1o\":{\"type\":\"list\",\"member\":{}},\"S1q\":{\"type\":\"structure\",\"members\":{\"idle\":{\"shape\":\"S1l\"},\"perRequest\":{\"shape\":\"S1l\"}}},\"S1r\":{\"type\":\"structure\",\"required\":[\"action\",\"match\"],\"members\":{\"action\":{\"type\":\"structure\",\"required\":[\"weightedTargets\"],\"members\":{\"weightedTargets\":{\"shape\":\"S13\"}}},\"match\":{\"type\":\"structure\",\"required\":[\"prefix\"],\"members\":{\"headers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"invert\":{\"type\":\"boolean\"},\"match\":{\"type\":\"structure\",\"members\":{\"exact\":{},\"prefix\":{},\"range\":{\"shape\":\"S1c\"},\"regex\":{},\"suffix\":{}},\"union\":true},\"name\":{}}}},\"method\":{},\"prefix\":{},\"scheme\":{}}},\"retryPolicy\":{\"type\":\"structure\",\"required\":[\"maxRetries\",\"perRetryTimeout\"],\"members\":{\"httpRetryEvents\":{\"shape\":\"S1i\"},\"maxRetries\":{\"type\":\"long\"},\"perRetryTimeout\":{\"shape\":\"S1l\"},\"tcpRetryEvents\":{\"shape\":\"S1o\"}}},\"timeout\":{\"shape\":\"S20\"}}},\"S20\":{\"type\":\"structure\",\"members\":{\"idle\":{\"shape\":\"S1l\"},\"perRequest\":{\"shape\":\"S1l\"}}},\"S24\":{\"type\":\"structure\",\"members\":{\"idle\":{\"shape\":\"S1l\"}}},\"S26\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\",\"routeName\",\"spec\",\"status\",\"virtualRouterName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"routeName\":{},\"spec\":{\"shape\":\"S10\"},\"status\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"virtualRouterName\":{}}},\"S2a\":{\"type\":\"structure\",\"required\":[\"listeners\"],\"members\":{\"backendDefaults\":{\"type\":\"structure\",\"members\":{\"clientPolicy\":{\"type\":\"structure\",\"members\":{\"tls\":{\"type\":\"structure\",\"required\":[\"validation\"],\"members\":{\"certificate\":{\"type\":\"structure\",\"members\":{\"file\":{\"shape\":\"S2f\"},\"sds\":{\"shape\":\"S2h\"}},\"union\":true},\"enforce\":{\"type\":\"boolean\"},\"ports\":{\"shape\":\"S2j\"},\"validation\":{\"type\":\"structure\",\"required\":[\"trust\"],\"members\":{\"subjectAlternativeNames\":{\"shape\":\"S2m\"},\"trust\":{\"type\":\"structure\",\"members\":{\"acm\":{\"type\":\"structure\",\"required\":[\"certificateAuthorityArns\"],\"members\":{\"certificateAuthorityArns\":{\"type\":\"list\",\"member\":{}}}},\"file\":{\"shape\":\"S2t\"},\"sds\":{\"shape\":\"S2u\"}},\"union\":true}}}}}}}}},\"listeners\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"portMapping\"],\"members\":{\"connectionPool\":{\"type\":\"structure\",\"members\":{\"grpc\":{\"type\":\"structure\",\"required\":[\"maxRequests\"],\"members\":{\"maxRequests\":{\"type\":\"integer\"}}},\"http\":{\"type\":\"structure\",\"required\":[\"maxConnections\"],\"members\":{\"maxConnections\":{\"type\":\"integer\"},\"maxPendingRequests\":{\"type\":\"integer\"}}},\"http2\":{\"type\":\"structure\",\"required\":[\"maxRequests\"],\"members\":{\"maxRequests\":{\"type\":\"integer\"}}}},\"union\":true},\"healthCheck\":{\"type\":\"structure\",\"required\":[\"healthyThreshold\",\"intervalMillis\",\"protocol\",\"timeoutMillis\",\"unhealthyThreshold\"],\"members\":{\"healthyThreshold\":{\"type\":\"integer\"},\"intervalMillis\":{\"type\":\"long\"},\"path\":{},\"port\":{\"type\":\"integer\"},\"protocol\":{},\"timeoutMillis\":{\"type\":\"long\"},\"unhealthyThreshold\":{\"type\":\"integer\"}}},\"portMapping\":{\"type\":\"structure\",\"required\":[\"port\",\"protocol\"],\"members\":{\"port\":{\"type\":\"integer\"},\"protocol\":{}}},\"tls\":{\"type\":\"structure\",\"required\":[\"certificate\",\"mode\"],\"members\":{\"certificate\":{\"type\":\"structure\",\"members\":{\"acm\":{\"type\":\"structure\",\"required\":[\"certificateArn\"],\"members\":{\"certificateArn\":{}}},\"file\":{\"shape\":\"S2f\"},\"sds\":{\"shape\":\"S2h\"}},\"union\":true},\"mode\":{},\"validation\":{\"type\":\"structure\",\"required\":[\"trust\"],\"members\":{\"subjectAlternativeNames\":{\"shape\":\"S2m\"},\"trust\":{\"type\":\"structure\",\"members\":{\"file\":{\"shape\":\"S2t\"},\"sds\":{\"shape\":\"S2u\"}},\"union\":true}}}}}}}},\"logging\":{\"type\":\"structure\",\"members\":{\"accessLog\":{\"type\":\"structure\",\"members\":{\"file\":{\"type\":\"structure\",\"required\":[\"path\"],\"members\":{\"path\":{}}}},\"union\":true}}}}},\"S2f\":{\"type\":\"structure\",\"required\":[\"certificateChain\",\"privateKey\"],\"members\":{\"certificateChain\":{},\"privateKey\":{}}},\"S2h\":{\"type\":\"structure\",\"required\":[\"secretName\"],\"members\":{\"secretName\":{}}},\"S2j\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"S2m\":{\"type\":\"structure\",\"required\":[\"match\"],\"members\":{\"match\":{\"type\":\"structure\",\"required\":[\"exact\"],\"members\":{\"exact\":{\"type\":\"list\",\"member\":{}}}}}},\"S2t\":{\"type\":\"structure\",\"required\":[\"certificateChain\"],\"members\":{\"certificateChain\":{}}},\"S2u\":{\"type\":\"structure\",\"required\":[\"secretName\"],\"members\":{\"secretName\":{}}},\"S3k\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\",\"spec\",\"status\",\"virtualGatewayName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"spec\":{\"shape\":\"S2a\"},\"status\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"virtualGatewayName\":{}}},\"S3o\":{\"type\":\"structure\",\"members\":{\"backendDefaults\":{\"type\":\"structure\",\"members\":{\"clientPolicy\":{\"shape\":\"S3q\"}}},\"backends\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"virtualService\":{\"type\":\"structure\",\"required\":[\"virtualServiceName\"],\"members\":{\"clientPolicy\":{\"shape\":\"S3q\"},\"virtualServiceName\":{}}}},\"union\":true}},\"listeners\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"portMapping\"],\"members\":{\"connectionPool\":{\"type\":\"structure\",\"members\":{\"grpc\":{\"type\":\"structure\",\"required\":[\"maxRequests\"],\"members\":{\"maxRequests\":{\"type\":\"integer\"}}},\"http\":{\"type\":\"structure\",\"required\":[\"maxConnections\"],\"members\":{\"maxConnections\":{\"type\":\"integer\"},\"maxPendingRequests\":{\"type\":\"integer\"}}},\"http2\":{\"type\":\"structure\",\"required\":[\"maxRequests\"],\"members\":{\"maxRequests\":{\"type\":\"integer\"}}},\"tcp\":{\"type\":\"structure\",\"required\":[\"maxConnections\"],\"members\":{\"maxConnections\":{\"type\":\"integer\"}}}},\"union\":true},\"healthCheck\":{\"type\":\"structure\",\"required\":[\"healthyThreshold\",\"intervalMillis\",\"protocol\",\"timeoutMillis\",\"unhealthyThreshold\"],\"members\":{\"healthyThreshold\":{\"type\":\"integer\"},\"intervalMillis\":{\"type\":\"long\"},\"path\":{},\"port\":{\"type\":\"integer\"},\"protocol\":{},\"timeoutMillis\":{\"type\":\"long\"},\"unhealthyThreshold\":{\"type\":\"integer\"}}},\"outlierDetection\":{\"type\":\"structure\",\"required\":[\"baseEjectionDuration\",\"interval\",\"maxEjectionPercent\",\"maxServerErrors\"],\"members\":{\"baseEjectionDuration\":{\"shape\":\"S1l\"},\"interval\":{\"shape\":\"S1l\"},\"maxEjectionPercent\":{\"type\":\"integer\"},\"maxServerErrors\":{\"type\":\"long\"}}},\"portMapping\":{\"shape\":\"S4k\"},\"timeout\":{\"type\":\"structure\",\"members\":{\"grpc\":{\"shape\":\"S1q\"},\"http\":{\"shape\":\"S20\"},\"http2\":{\"shape\":\"S20\"},\"tcp\":{\"shape\":\"S24\"}},\"union\":true},\"tls\":{\"type\":\"structure\",\"required\":[\"certificate\",\"mode\"],\"members\":{\"certificate\":{\"type\":\"structure\",\"members\":{\"acm\":{\"type\":\"structure\",\"required\":[\"certificateArn\"],\"members\":{\"certificateArn\":{}}},\"file\":{\"shape\":\"S3t\"},\"sds\":{\"shape\":\"S3u\"}},\"union\":true},\"mode\":{},\"validation\":{\"type\":\"structure\",\"required\":[\"trust\"],\"members\":{\"subjectAlternativeNames\":{\"shape\":\"S2m\"},\"trust\":{\"type\":\"structure\",\"members\":{\"file\":{\"shape\":\"S40\"},\"sds\":{\"shape\":\"S41\"}},\"union\":true}}}}}}}},\"logging\":{\"type\":\"structure\",\"members\":{\"accessLog\":{\"type\":\"structure\",\"members\":{\"file\":{\"type\":\"structure\",\"required\":[\"path\"],\"members\":{\"path\":{}}}},\"union\":true}}},\"serviceDiscovery\":{\"type\":\"structure\",\"members\":{\"awsCloudMap\":{\"type\":\"structure\",\"required\":[\"namespaceName\",\"serviceName\"],\"members\":{\"attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"namespaceName\":{},\"serviceName\":{}}},\"dns\":{\"type\":\"structure\",\"required\":[\"hostname\"],\"members\":{\"hostname\":{}}}},\"union\":true}}},\"S3q\":{\"type\":\"structure\",\"members\":{\"tls\":{\"type\":\"structure\",\"required\":[\"validation\"],\"members\":{\"certificate\":{\"type\":\"structure\",\"members\":{\"file\":{\"shape\":\"S3t\"},\"sds\":{\"shape\":\"S3u\"}},\"union\":true},\"enforce\":{\"type\":\"boolean\"},\"ports\":{\"shape\":\"S2j\"},\"validation\":{\"type\":\"structure\",\"required\":[\"trust\"],\"members\":{\"subjectAlternativeNames\":{\"shape\":\"S2m\"},\"trust\":{\"type\":\"structure\",\"members\":{\"acm\":{\"type\":\"structure\",\"required\":[\"certificateAuthorityArns\"],\"members\":{\"certificateAuthorityArns\":{\"type\":\"list\",\"member\":{}}}},\"file\":{\"shape\":\"S40\"},\"sds\":{\"shape\":\"S41\"}},\"union\":true}}}}}}},\"S3t\":{\"type\":\"structure\",\"required\":[\"certificateChain\",\"privateKey\"],\"members\":{\"certificateChain\":{},\"privateKey\":{}}},\"S3u\":{\"type\":\"structure\",\"required\":[\"secretName\"],\"members\":{\"secretName\":{}}},\"S40\":{\"type\":\"structure\",\"required\":[\"certificateChain\"],\"members\":{\"certificateChain\":{}}},\"S41\":{\"type\":\"structure\",\"required\":[\"secretName\"],\"members\":{\"secretName\":{}}},\"S4k\":{\"type\":\"structure\",\"required\":[\"port\",\"protocol\"],\"members\":{\"port\":{\"type\":\"integer\"},\"protocol\":{}}},\"S55\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\",\"spec\",\"status\",\"virtualNodeName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"spec\":{\"shape\":\"S3o\"},\"status\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"virtualNodeName\":{}}},\"S59\":{\"type\":\"structure\",\"members\":{\"listeners\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"portMapping\"],\"members\":{\"portMapping\":{\"shape\":\"S4k\"}}}}}},\"S5d\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\",\"spec\",\"status\",\"virtualRouterName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"spec\":{\"shape\":\"S59\"},\"status\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"virtualRouterName\":{}}},\"S5h\":{\"type\":\"structure\",\"members\":{\"provider\":{\"type\":\"structure\",\"members\":{\"virtualNode\":{\"type\":\"structure\",\"required\":[\"virtualNodeName\"],\"members\":{\"virtualNodeName\":{}}},\"virtualRouter\":{\"type\":\"structure\",\"required\":[\"virtualRouterName\"],\"members\":{\"virtualRouterName\":{}}}},\"union\":true}}},\"S5m\":{\"type\":\"structure\",\"required\":[\"meshName\",\"metadata\",\"spec\",\"status\",\"virtualServiceName\"],\"members\":{\"meshName\":{},\"metadata\":{\"shape\":\"Sl\"},\"spec\":{\"shape\":\"S5h\"},\"status\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"virtualServiceName\":{}}}}}");

/***/ }),

/***/ 9865:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListGatewayRoutes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"gatewayRoutes\"},\"ListMeshes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"meshes\"},\"ListRoutes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"routes\"},\"ListTagsForResource\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"tags\"},\"ListVirtualGateways\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"virtualGateways\"},\"ListVirtualNodes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"virtualNodes\"},\"ListVirtualRouters\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"virtualRouters\"},\"ListVirtualServices\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"limit\",\"result_key\":\"virtualServices\"}}}");

/***/ }),

/***/ 12513:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-12-01\",\"endpointPrefix\":\"appstream2\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon AppStream\",\"serviceId\":\"AppStream\",\"signatureVersion\":\"v4\",\"signingName\":\"appstream\",\"targetPrefix\":\"PhotonAdminProxyService\",\"uid\":\"appstream-2016-12-01\"},\"operations\":{\"AssociateFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetName\",\"StackName\"],\"members\":{\"FleetName\":{},\"StackName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchAssociateUserStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserStackAssociations\"],\"members\":{\"UserStackAssociations\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"shape\":\"Sb\"}}}},\"BatchDisassociateUserStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserStackAssociations\"],\"members\":{\"UserStackAssociations\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"shape\":\"Sb\"}}}},\"CopyImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceImageName\",\"DestinationImageName\",\"DestinationRegion\"],\"members\":{\"SourceImageName\":{},\"DestinationImageName\":{},\"DestinationRegion\":{},\"DestinationImageDescription\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DestinationImageName\":{}}}},\"CreateDirectoryConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryName\",\"OrganizationalUnitDistinguishedNames\"],\"members\":{\"DirectoryName\":{},\"OrganizationalUnitDistinguishedNames\":{\"shape\":\"Sn\"},\"ServiceAccountCredentials\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryConfig\":{\"shape\":\"St\"}}}},\"CreateFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InstanceType\",\"ComputeCapacity\"],\"members\":{\"Name\":{},\"ImageName\":{},\"ImageArn\":{},\"InstanceType\":{},\"FleetType\":{},\"ComputeCapacity\":{\"shape\":\"Sy\"},\"VpcConfig\":{\"shape\":\"S10\"},\"MaxUserDurationInSeconds\":{\"type\":\"integer\"},\"DisconnectTimeoutInSeconds\":{\"type\":\"integer\"},\"Description\":{},\"DisplayName\":{},\"EnableDefaultInternetAccess\":{\"type\":\"boolean\"},\"DomainJoinInfo\":{\"shape\":\"S15\"},\"Tags\":{\"shape\":\"S16\"},\"IdleDisconnectTimeoutInSeconds\":{\"type\":\"integer\"},\"IamRoleArn\":{},\"StreamView\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Fleet\":{\"shape\":\"S1b\"}}}},\"CreateImageBuilder\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InstanceType\"],\"members\":{\"Name\":{},\"ImageName\":{},\"ImageArn\":{},\"InstanceType\":{},\"Description\":{},\"DisplayName\":{},\"VpcConfig\":{\"shape\":\"S10\"},\"IamRoleArn\":{},\"EnableDefaultInternetAccess\":{\"type\":\"boolean\"},\"DomainJoinInfo\":{\"shape\":\"S15\"},\"AppstreamAgentVersion\":{},\"Tags\":{\"shape\":\"S16\"},\"AccessEndpoints\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageBuilder\":{\"shape\":\"S1n\"}}}},\"CreateImageBuilderStreamingURL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Validity\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingURL\":{},\"Expires\":{\"type\":\"timestamp\"}}}},\"CreateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"DisplayName\":{},\"StorageConnectors\":{\"shape\":\"S1z\"},\"RedirectURL\":{},\"FeedbackURL\":{},\"UserSettings\":{\"shape\":\"S27\"},\"ApplicationSettings\":{\"shape\":\"S2b\"},\"Tags\":{\"shape\":\"S16\"},\"AccessEndpoints\":{\"shape\":\"S1j\"},\"EmbedHostDomains\":{\"shape\":\"S2d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Stack\":{\"shape\":\"S2g\"}}}},\"CreateStreamingURL\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\",\"FleetName\",\"UserId\"],\"members\":{\"StackName\":{},\"FleetName\":{},\"UserId\":{},\"ApplicationId\":{},\"Validity\":{\"type\":\"long\"},\"SessionContext\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingURL\":{},\"Expires\":{\"type\":\"timestamp\"}}}},\"CreateUpdatedImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"existingImageName\",\"newImageName\"],\"members\":{\"existingImageName\":{},\"newImageName\":{},\"newImageDescription\":{},\"newImageDisplayName\":{},\"newImageTags\":{\"shape\":\"S16\"},\"dryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"image\":{\"shape\":\"S2q\"},\"canUpdateImage\":{\"type\":\"boolean\"}}}},\"CreateUsageReportSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"S3BucketName\":{},\"Schedule\":{}}}},\"CreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AuthenticationType\"],\"members\":{\"UserName\":{\"shape\":\"S7\"},\"MessageAction\":{},\"FirstName\":{\"shape\":\"S34\"},\"LastName\":{\"shape\":\"S34\"},\"AuthenticationType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDirectoryConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryName\"],\"members\":{\"DirectoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Image\":{\"shape\":\"S2q\"}}}},\"DeleteImageBuilder\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageBuilder\":{\"shape\":\"S1n\"}}}},\"DeleteImagePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SharedAccountId\"],\"members\":{\"Name\":{},\"SharedAccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteUsageReportSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AuthenticationType\"],\"members\":{\"UserName\":{\"shape\":\"S7\"},\"AuthenticationType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeDirectoryConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryNames\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"St\"}},\"NextToken\":{}}}},\"DescribeFleets\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"shape\":\"S3s\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Fleets\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}},\"NextToken\":{}}}},\"DescribeImageBuilders\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"shape\":\"S3s\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageBuilders\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\"}},\"NextToken\":{}}}},\"DescribeImagePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"MaxResults\":{\"type\":\"integer\"},\"SharedAwsAccountIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"SharedImagePermissionsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"sharedAccountId\",\"imagePermissions\"],\"members\":{\"sharedAccountId\":{},\"imagePermissions\":{\"shape\":\"S2y\"}}}},\"NextToken\":{}}}},\"DescribeImages\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"shape\":\"S3s\"},\"Arns\":{\"type\":\"list\",\"member\":{}},\"Type\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Images\":{\"type\":\"list\",\"member\":{\"shape\":\"S2q\"}},\"NextToken\":{}}}},\"DescribeSessions\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\",\"FleetName\"],\"members\":{\"StackName\":{},\"FleetName\":{},\"UserId\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"},\"AuthenticationType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sessions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"UserId\",\"StackName\",\"FleetName\",\"State\"],\"members\":{\"Id\":{},\"UserId\":{},\"StackName\":{},\"FleetName\":{},\"State\":{},\"ConnectionState\":{},\"StartTime\":{\"type\":\"timestamp\"},\"MaxExpirationTime\":{\"type\":\"timestamp\"},\"AuthenticationType\":{},\"NetworkAccessConfiguration\":{\"shape\":\"S1s\"}}}},\"NextToken\":{}}}},\"DescribeStacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"shape\":\"S3s\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Stacks\":{\"type\":\"list\",\"member\":{\"shape\":\"S2g\"}},\"NextToken\":{}}}},\"DescribeUsageReportSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UsageReportSubscriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"S3BucketName\":{},\"Schedule\":{},\"LastGeneratedReportDate\":{\"type\":\"timestamp\"},\"SubscriptionErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"NextToken\":{}}}},\"DescribeUserStackAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackName\":{},\"UserName\":{\"shape\":\"S7\"},\"AuthenticationType\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserStackAssociations\":{\"shape\":\"S5\"},\"NextToken\":{}}}},\"DescribeUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"AuthenticationType\"],\"members\":{\"AuthenticationType\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AuthenticationType\"],\"members\":{\"Arn\":{},\"UserName\":{\"shape\":\"S7\"},\"Enabled\":{\"type\":\"boolean\"},\"Status\":{},\"FirstName\":{\"shape\":\"S34\"},\"LastName\":{\"shape\":\"S34\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"AuthenticationType\":{}}}},\"NextToken\":{}}}},\"DisableUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AuthenticationType\"],\"members\":{\"UserName\":{\"shape\":\"S7\"},\"AuthenticationType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetName\",\"StackName\"],\"members\":{\"FleetName\":{},\"StackName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AuthenticationType\"],\"members\":{\"UserName\":{\"shape\":\"S7\"},\"AuthenticationType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ExpireSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"SessionId\"],\"members\":{\"SessionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListAssociatedFleets\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Names\":{\"shape\":\"S3s\"},\"NextToken\":{}}}},\"ListAssociatedStacks\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetName\"],\"members\":{\"FleetName\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Names\":{\"shape\":\"S3s\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S16\"}}}},\"StartFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartImageBuilder\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"AppstreamAgentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageBuilder\":{\"shape\":\"S1n\"}}}},\"StopFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopImageBuilder\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageBuilder\":{\"shape\":\"S1n\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDirectoryConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryName\"],\"members\":{\"DirectoryName\":{},\"OrganizationalUnitDistinguishedNames\":{\"shape\":\"Sn\"},\"ServiceAccountCredentials\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryConfig\":{\"shape\":\"St\"}}}},\"UpdateFleet\":{\"input\":{\"type\":\"structure\",\"members\":{\"ImageName\":{},\"ImageArn\":{},\"Name\":{},\"InstanceType\":{},\"ComputeCapacity\":{\"shape\":\"Sy\"},\"VpcConfig\":{\"shape\":\"S10\"},\"MaxUserDurationInSeconds\":{\"type\":\"integer\"},\"DisconnectTimeoutInSeconds\":{\"type\":\"integer\"},\"DeleteVpcConfig\":{\"deprecated\":true,\"type\":\"boolean\"},\"Description\":{},\"DisplayName\":{},\"EnableDefaultInternetAccess\":{\"type\":\"boolean\"},\"DomainJoinInfo\":{\"shape\":\"S15\"},\"IdleDisconnectTimeoutInSeconds\":{\"type\":\"integer\"},\"AttributesToDelete\":{\"type\":\"list\",\"member\":{}},\"IamRoleArn\":{},\"StreamView\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Fleet\":{\"shape\":\"S1b\"}}}},\"UpdateImagePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SharedAccountId\",\"ImagePermissions\"],\"members\":{\"Name\":{},\"SharedAccountId\":{},\"ImagePermissions\":{\"shape\":\"S2y\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"DisplayName\":{},\"Description\":{},\"Name\":{},\"StorageConnectors\":{\"shape\":\"S1z\"},\"DeleteStorageConnectors\":{\"deprecated\":true,\"type\":\"boolean\"},\"RedirectURL\":{},\"FeedbackURL\":{},\"AttributesToDelete\":{\"type\":\"list\",\"member\":{}},\"UserSettings\":{\"shape\":\"S27\"},\"ApplicationSettings\":{\"shape\":\"S2b\"},\"AccessEndpoints\":{\"shape\":\"S1j\"},\"EmbedHostDomains\":{\"shape\":\"S2d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Stack\":{\"shape\":\"S2g\"}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"S6\":{\"type\":\"structure\",\"required\":[\"StackName\",\"UserName\",\"AuthenticationType\"],\"members\":{\"StackName\":{},\"UserName\":{\"shape\":\"S7\"},\"AuthenticationType\":{},\"SendEmailNotification\":{\"type\":\"boolean\"}}},\"S7\":{\"type\":\"string\",\"sensitive\":true},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UserStackAssociation\":{\"shape\":\"S6\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"structure\",\"required\":[\"AccountName\",\"AccountPassword\"],\"members\":{\"AccountName\":{\"type\":\"string\",\"sensitive\":true},\"AccountPassword\":{\"type\":\"string\",\"sensitive\":true}}},\"St\":{\"type\":\"structure\",\"required\":[\"DirectoryName\"],\"members\":{\"DirectoryName\":{},\"OrganizationalUnitDistinguishedNames\":{\"shape\":\"Sn\"},\"ServiceAccountCredentials\":{\"shape\":\"Sp\"},\"CreatedTime\":{\"type\":\"timestamp\"}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"DesiredInstances\"],\"members\":{\"DesiredInstances\":{\"type\":\"integer\"}}},\"S10\":{\"type\":\"structure\",\"members\":{\"SubnetIds\":{\"type\":\"list\",\"member\":{}},\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}}}},\"S15\":{\"type\":\"structure\",\"members\":{\"DirectoryName\":{},\"OrganizationalUnitDistinguishedName\":{}}},\"S16\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1b\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Name\",\"InstanceType\",\"ComputeCapacityStatus\",\"State\"],\"members\":{\"Arn\":{},\"Name\":{},\"DisplayName\":{},\"Description\":{},\"ImageName\":{},\"ImageArn\":{},\"InstanceType\":{},\"FleetType\":{},\"ComputeCapacityStatus\":{\"type\":\"structure\",\"required\":[\"Desired\"],\"members\":{\"Desired\":{\"type\":\"integer\"},\"Running\":{\"type\":\"integer\"},\"InUse\":{\"type\":\"integer\"},\"Available\":{\"type\":\"integer\"}}},\"MaxUserDurationInSeconds\":{\"type\":\"integer\"},\"DisconnectTimeoutInSeconds\":{\"type\":\"integer\"},\"State\":{},\"VpcConfig\":{\"shape\":\"S10\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"FleetErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"EnableDefaultInternetAccess\":{\"type\":\"boolean\"},\"DomainJoinInfo\":{\"shape\":\"S15\"},\"IdleDisconnectTimeoutInSeconds\":{\"type\":\"integer\"},\"IamRoleArn\":{},\"StreamView\":{}}},\"S1j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EndpointType\"],\"members\":{\"EndpointType\":{},\"VpceId\":{}}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Arn\":{},\"ImageArn\":{},\"Description\":{},\"DisplayName\":{},\"VpcConfig\":{\"shape\":\"S10\"},\"InstanceType\":{},\"Platform\":{},\"IamRoleArn\":{},\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"CreatedTime\":{\"type\":\"timestamp\"},\"EnableDefaultInternetAccess\":{\"type\":\"boolean\"},\"DomainJoinInfo\":{\"shape\":\"S15\"},\"NetworkAccessConfiguration\":{\"shape\":\"S1s\"},\"ImageBuilderErrors\":{\"shape\":\"S1t\"},\"AppstreamAgentVersion\":{},\"AccessEndpoints\":{\"shape\":\"S1j\"}}},\"S1s\":{\"type\":\"structure\",\"members\":{\"EniPrivateIpAddress\":{},\"EniId\":{}}},\"S1t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{},\"ErrorTimestamp\":{\"type\":\"timestamp\"}}}},\"S1z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConnectorType\"],\"members\":{\"ConnectorType\":{},\"ResourceIdentifier\":{},\"Domains\":{\"type\":\"list\",\"member\":{}}}}},\"S27\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"Permission\"],\"members\":{\"Action\":{},\"Permission\":{}}}},\"S2b\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"SettingsGroup\":{}}},\"S2d\":{\"type\":\"list\",\"member\":{}},\"S2g\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Arn\":{},\"Name\":{},\"Description\":{},\"DisplayName\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"StorageConnectors\":{\"shape\":\"S1z\"},\"RedirectURL\":{},\"FeedbackURL\":{},\"StackErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"UserSettings\":{\"shape\":\"S27\"},\"ApplicationSettings\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"SettingsGroup\":{},\"S3BucketName\":{}}},\"AccessEndpoints\":{\"shape\":\"S1j\"},\"EmbedHostDomains\":{\"shape\":\"S2d\"}}},\"S2q\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Arn\":{},\"BaseImageArn\":{},\"DisplayName\":{},\"State\":{},\"Visibility\":{},\"ImageBuilderSupported\":{\"type\":\"boolean\"},\"ImageBuilderName\":{},\"Platform\":{},\"Description\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"Applications\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DisplayName\":{},\"IconURL\":{},\"LaunchPath\":{},\"LaunchParameters\":{},\"Enabled\":{\"type\":\"boolean\"},\"Metadata\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"CreatedTime\":{\"type\":\"timestamp\"},\"PublicBaseImageReleasedDate\":{\"type\":\"timestamp\"},\"AppstreamAgentVersion\":{},\"ImagePermissions\":{\"shape\":\"S2y\"},\"ImageErrors\":{\"shape\":\"S1t\"}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"allowFleet\":{\"type\":\"boolean\"},\"allowImageBuilder\":{\"type\":\"boolean\"}}},\"S34\":{\"type\":\"string\",\"sensitive\":true},\"S3s\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 81915:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeImagePermissions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeImages\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 98407:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"FleetStarted\":{\"delay\":30,\"maxAttempts\":40,\"operation\":\"DescribeFleets\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Fleets[].State\",\"expected\":\"ACTIVE\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"Fleets[].State\",\"expected\":\"PENDING_DEACTIVATE\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"Fleets[].State\",\"expected\":\"INACTIVE\"}]},\"FleetStopped\":{\"delay\":30,\"maxAttempts\":40,\"operation\":\"DescribeFleets\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Fleets[].State\",\"expected\":\"INACTIVE\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"Fleets[].State\",\"expected\":\"PENDING_ACTIVATE\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"Fleets[].State\",\"expected\":\"ACTIVE\"}]}}}");

/***/ }),

/***/ 3651:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"appsync\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWSAppSync\",\"serviceFullName\":\"AWS AppSync\",\"serviceId\":\"AppSync\",\"signatureVersion\":\"v4\",\"signingName\":\"appsync\",\"uid\":\"appsync-2017-07-25\"},\"operations\":{\"CreateApiCache\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/ApiCaches\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"ttl\",\"apiCachingBehavior\",\"type\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ttl\":{\"type\":\"long\"},\"transitEncryptionEnabled\":{\"type\":\"boolean\"},\"atRestEncryptionEnabled\":{\"type\":\"boolean\"},\"apiCachingBehavior\":{},\"type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"apiCache\":{\"shape\":\"S8\"}}}},\"CreateApiKey\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/apikeys\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"description\":{},\"expires\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"apiKey\":{\"shape\":\"Sc\"}}}},\"CreateDataSource\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/datasources\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\",\"type\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{},\"description\":{},\"type\":{},\"serviceRoleArn\":{},\"dynamodbConfig\":{\"shape\":\"Sg\"},\"lambdaConfig\":{\"shape\":\"Si\"},\"elasticsearchConfig\":{\"shape\":\"Sj\"},\"httpConfig\":{\"shape\":\"Sk\"},\"relationalDatabaseConfig\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataSource\":{\"shape\":\"Ss\"}}}},\"CreateFunction\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/functions\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\",\"dataSourceName\",\"functionVersion\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{},\"description\":{},\"dataSourceName\":{},\"requestMappingTemplate\":{},\"responseMappingTemplate\":{},\"functionVersion\":{},\"syncConfig\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"functionConfiguration\":{\"shape\":\"S10\"}}}},\"CreateGraphqlApi\":{\"http\":{\"requestUri\":\"/v1/apis\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"authenticationType\"],\"members\":{\"name\":{},\"logConfig\":{\"shape\":\"S12\"},\"authenticationType\":{},\"userPoolConfig\":{\"shape\":\"S15\"},\"openIDConnectConfig\":{\"shape\":\"S17\"},\"tags\":{\"shape\":\"S18\"},\"additionalAuthenticationProviders\":{\"shape\":\"S1b\"},\"xrayEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"graphqlApi\":{\"shape\":\"S1f\"}}}},\"CreateResolver\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}/resolvers\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\",\"fieldName\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"fieldName\":{},\"dataSourceName\":{},\"requestMappingTemplate\":{},\"responseMappingTemplate\":{},\"kind\":{},\"pipelineConfig\":{\"shape\":\"S1j\"},\"syncConfig\":{\"shape\":\"Sv\"},\"cachingConfig\":{\"shape\":\"S1l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resolver\":{\"shape\":\"S1o\"}}}},\"CreateType\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/types\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"definition\",\"format\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"definition\":{},\"format\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"type\":{\"shape\":\"S1s\"}}}},\"DeleteApiCache\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/ApiCaches\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApiKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/apikeys/{id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"id\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDataSource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/datasources/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteFunction\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/functions/{functionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"functionId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"functionId\":{\"location\":\"uri\",\"locationName\":\"functionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteGraphqlApi\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteResolver\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}/resolvers/{fieldName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\",\"fieldName\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"fieldName\":{\"location\":\"uri\",\"locationName\":\"fieldName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteType\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"FlushApiCache\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apis/{apiId}/FlushCache\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetApiCache\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/ApiCaches\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"apiCache\":{\"shape\":\"S8\"}}}},\"GetDataSource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/datasources/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataSource\":{\"shape\":\"Ss\"}}}},\"GetFunction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/functions/{functionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"functionId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"functionId\":{\"location\":\"uri\",\"locationName\":\"functionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"functionConfiguration\":{\"shape\":\"S10\"}}}},\"GetGraphqlApi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"graphqlApi\":{\"shape\":\"S1f\"}}}},\"GetIntrospectionSchema\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/schema\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"format\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"includeDirectives\":{\"location\":\"querystring\",\"locationName\":\"includeDirectives\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"schema\":{\"type\":\"blob\"}},\"payload\":\"schema\"}},\"GetResolver\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}/resolvers/{fieldName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\",\"fieldName\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"fieldName\":{\"location\":\"uri\",\"locationName\":\"fieldName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resolver\":{\"shape\":\"S1o\"}}}},\"GetSchemaCreationStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/schemacreation\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"details\":{}}}},\"GetType\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\",\"format\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"type\":{\"shape\":\"S1s\"}}}},\"ListApiKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/apikeys\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"apiKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"nextToken\":{}}}},\"ListDataSources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/datasources\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataSources\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}},\"nextToken\":{}}}},\"ListFunctions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/functions\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"functions\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"nextToken\":{}}}},\"ListGraphqlApis\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"graphqlApis\":{\"type\":\"list\",\"member\":{\"shape\":\"S1f\"}},\"nextToken\":{}}}},\"ListResolvers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}/resolvers\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resolvers\":{\"shape\":\"S39\"},\"nextToken\":{}}}},\"ListResolversByFunction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/functions/{functionId}/resolvers\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"functionId\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"functionId\":{\"location\":\"uri\",\"locationName\":\"functionId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resolvers\":{\"shape\":\"S39\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S18\"}}}},\"ListTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apis/{apiId}/types\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"format\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"types\":{\"type\":\"list\",\"member\":{\"shape\":\"S1s\"}},\"nextToken\":{}}}},\"StartSchemaCreation\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/schemacreation\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"definition\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"definition\":{\"type\":\"blob\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v1/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S18\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApiCache\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/ApiCaches/update\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"ttl\",\"apiCachingBehavior\",\"type\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"ttl\":{\"type\":\"long\"},\"apiCachingBehavior\":{},\"type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"apiCache\":{\"shape\":\"S8\"}}}},\"UpdateApiKey\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/apikeys/{id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"id\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"description\":{},\"expires\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"apiKey\":{\"shape\":\"Sc\"}}}},\"UpdateDataSource\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/datasources/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\",\"type\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"description\":{},\"type\":{},\"serviceRoleArn\":{},\"dynamodbConfig\":{\"shape\":\"Sg\"},\"lambdaConfig\":{\"shape\":\"Si\"},\"elasticsearchConfig\":{\"shape\":\"Sj\"},\"httpConfig\":{\"shape\":\"Sk\"},\"relationalDatabaseConfig\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataSource\":{\"shape\":\"Ss\"}}}},\"UpdateFunction\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/functions/{functionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\",\"functionId\",\"dataSourceName\",\"functionVersion\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{},\"description\":{},\"functionId\":{\"location\":\"uri\",\"locationName\":\"functionId\"},\"dataSourceName\":{},\"requestMappingTemplate\":{},\"responseMappingTemplate\":{},\"functionVersion\":{},\"syncConfig\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"functionConfiguration\":{\"shape\":\"S10\"}}}},\"UpdateGraphqlApi\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"name\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"name\":{},\"logConfig\":{\"shape\":\"S12\"},\"authenticationType\":{},\"userPoolConfig\":{\"shape\":\"S15\"},\"openIDConnectConfig\":{\"shape\":\"S17\"},\"additionalAuthenticationProviders\":{\"shape\":\"S1b\"},\"xrayEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"graphqlApi\":{\"shape\":\"S1f\"}}}},\"UpdateResolver\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}/resolvers/{fieldName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\",\"fieldName\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"fieldName\":{\"location\":\"uri\",\"locationName\":\"fieldName\"},\"dataSourceName\":{},\"requestMappingTemplate\":{},\"responseMappingTemplate\":{},\"kind\":{},\"pipelineConfig\":{\"shape\":\"S1j\"},\"syncConfig\":{\"shape\":\"Sv\"},\"cachingConfig\":{\"shape\":\"S1l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resolver\":{\"shape\":\"S1o\"}}}},\"UpdateType\":{\"http\":{\"requestUri\":\"/v1/apis/{apiId}/types/{typeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"apiId\",\"typeName\",\"format\"],\"members\":{\"apiId\":{\"location\":\"uri\",\"locationName\":\"apiId\"},\"typeName\":{\"location\":\"uri\",\"locationName\":\"typeName\"},\"definition\":{},\"format\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"type\":{\"shape\":\"S1s\"}}}}},\"shapes\":{\"S8\":{\"type\":\"structure\",\"members\":{\"ttl\":{\"type\":\"long\"},\"apiCachingBehavior\":{},\"transitEncryptionEnabled\":{\"type\":\"boolean\"},\"atRestEncryptionEnabled\":{\"type\":\"boolean\"},\"type\":{},\"status\":{}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"expires\":{\"type\":\"long\"},\"deletes\":{\"type\":\"long\"}}},\"Sg\":{\"type\":\"structure\",\"required\":[\"tableName\",\"awsRegion\"],\"members\":{\"tableName\":{},\"awsRegion\":{},\"useCallerCredentials\":{\"type\":\"boolean\"},\"deltaSyncConfig\":{\"type\":\"structure\",\"members\":{\"baseTableTTL\":{\"type\":\"long\"},\"deltaSyncTableName\":{},\"deltaSyncTableTTL\":{\"type\":\"long\"}}},\"versioned\":{\"type\":\"boolean\"}}},\"Si\":{\"type\":\"structure\",\"required\":[\"lambdaFunctionArn\"],\"members\":{\"lambdaFunctionArn\":{}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"endpoint\",\"awsRegion\"],\"members\":{\"endpoint\":{},\"awsRegion\":{}}},\"Sk\":{\"type\":\"structure\",\"members\":{\"endpoint\":{},\"authorizationConfig\":{\"type\":\"structure\",\"required\":[\"authorizationType\"],\"members\":{\"authorizationType\":{},\"awsIamConfig\":{\"type\":\"structure\",\"members\":{\"signingRegion\":{},\"signingServiceName\":{}}}}}}},\"So\":{\"type\":\"structure\",\"members\":{\"relationalDatabaseSourceType\":{},\"rdsHttpEndpointConfig\":{\"type\":\"structure\",\"members\":{\"awsRegion\":{},\"dbClusterIdentifier\":{},\"databaseName\":{},\"schema\":{},\"awsSecretStoreArn\":{}}}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"dataSourceArn\":{},\"name\":{},\"description\":{},\"type\":{},\"serviceRoleArn\":{},\"dynamodbConfig\":{\"shape\":\"Sg\"},\"lambdaConfig\":{\"shape\":\"Si\"},\"elasticsearchConfig\":{\"shape\":\"Sj\"},\"httpConfig\":{\"shape\":\"Sk\"},\"relationalDatabaseConfig\":{\"shape\":\"So\"}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"conflictHandler\":{},\"conflictDetection\":{},\"lambdaConflictHandlerConfig\":{\"type\":\"structure\",\"members\":{\"lambdaConflictHandlerArn\":{}}}}},\"S10\":{\"type\":\"structure\",\"members\":{\"functionId\":{},\"functionArn\":{},\"name\":{},\"description\":{},\"dataSourceName\":{},\"requestMappingTemplate\":{},\"responseMappingTemplate\":{},\"functionVersion\":{},\"syncConfig\":{\"shape\":\"Sv\"}}},\"S12\":{\"type\":\"structure\",\"required\":[\"fieldLogLevel\",\"cloudWatchLogsRoleArn\"],\"members\":{\"fieldLogLevel\":{},\"cloudWatchLogsRoleArn\":{},\"excludeVerboseContent\":{\"type\":\"boolean\"}}},\"S15\":{\"type\":\"structure\",\"required\":[\"userPoolId\",\"awsRegion\",\"defaultAction\"],\"members\":{\"userPoolId\":{},\"awsRegion\":{},\"defaultAction\":{},\"appIdClientRegex\":{}}},\"S17\":{\"type\":\"structure\",\"required\":[\"issuer\"],\"members\":{\"issuer\":{},\"clientId\":{},\"iatTTL\":{\"type\":\"long\"},\"authTTL\":{\"type\":\"long\"}}},\"S18\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"authenticationType\":{},\"openIDConnectConfig\":{\"shape\":\"S17\"},\"userPoolConfig\":{\"type\":\"structure\",\"required\":[\"userPoolId\",\"awsRegion\"],\"members\":{\"userPoolId\":{},\"awsRegion\":{},\"appIdClientRegex\":{}}}}}},\"S1f\":{\"type\":\"structure\",\"members\":{\"name\":{},\"apiId\":{},\"authenticationType\":{},\"logConfig\":{\"shape\":\"S12\"},\"userPoolConfig\":{\"shape\":\"S15\"},\"openIDConnectConfig\":{\"shape\":\"S17\"},\"arn\":{},\"uris\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"tags\":{\"shape\":\"S18\"},\"additionalAuthenticationProviders\":{\"shape\":\"S1b\"},\"xrayEnabled\":{\"type\":\"boolean\"},\"wafWebAclArn\":{}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"functions\":{\"type\":\"list\",\"member\":{}}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"ttl\":{\"type\":\"long\"},\"cachingKeys\":{\"type\":\"list\",\"member\":{}}}},\"S1o\":{\"type\":\"structure\",\"members\":{\"typeName\":{},\"fieldName\":{},\"dataSourceName\":{},\"resolverArn\":{},\"requestMappingTemplate\":{},\"responseMappingTemplate\":{},\"kind\":{},\"pipelineConfig\":{\"shape\":\"S1j\"},\"syncConfig\":{\"shape\":\"Sv\"},\"cachingConfig\":{\"shape\":\"S1l\"}}},\"S1s\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"arn\":{},\"definition\":{},\"format\":{}}},\"S39\":{\"type\":\"list\",\"member\":{\"shape\":\"S1o\"}}}}");

/***/ }),

/***/ 93930:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 19898:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-05-18\",\"endpointPrefix\":\"athena\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Athena\",\"serviceId\":\"Athena\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AmazonAthena\",\"uid\":\"athena-2017-05-18\"},\"operations\":{\"BatchGetNamedQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"NamedQueryIds\"],\"members\":{\"NamedQueryIds\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NamedQueries\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"UnprocessedNamedQueryIds\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NamedQueryId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"BatchGetQueryExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryExecutionIds\"],\"members\":{\"QueryExecutionIds\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueryExecutions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\"}},\"UnprocessedQueryExecutionIds\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"QueryExecutionId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"CreateDataCatalog\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{},\"Description\":{},\"Parameters\":{\"shape\":\"S13\"},\"Tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateNamedQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Database\",\"QueryString\"],\"members\":{\"Name\":{},\"Description\":{},\"Database\":{},\"QueryString\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NamedQueryId\":{}}},\"idempotent\":true},\"CreatePreparedStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"StatementName\",\"WorkGroup\",\"QueryStatement\"],\"members\":{\"StatementName\":{},\"WorkGroup\":{},\"QueryStatement\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateWorkGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Configuration\":{\"shape\":\"S1i\"},\"Description\":{},\"Tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDataCatalog\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteNamedQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"NamedQueryId\"],\"members\":{\"NamedQueryId\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeletePreparedStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"StatementName\",\"WorkGroup\"],\"members\":{\"StatementName\":{},\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWorkGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkGroup\"],\"members\":{\"WorkGroup\":{},\"RecursiveDeleteOption\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"GetDataCatalog\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataCatalog\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Description\":{},\"Type\":{},\"Parameters\":{\"shape\":\"S13\"}}}}}},\"GetDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"CatalogName\",\"DatabaseName\"],\"members\":{\"CatalogName\":{},\"DatabaseName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Database\":{\"shape\":\"S20\"}}}},\"GetNamedQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"NamedQueryId\"],\"members\":{\"NamedQueryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NamedQuery\":{\"shape\":\"S6\"}}}},\"GetPreparedStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"StatementName\",\"WorkGroup\"],\"members\":{\"StatementName\":{},\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PreparedStatement\":{\"type\":\"structure\",\"members\":{\"StatementName\":{},\"QueryStatement\":{},\"WorkGroupName\":{},\"Description\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}}}},\"GetQueryExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryExecutionId\"],\"members\":{\"QueryExecutionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueryExecution\":{\"shape\":\"Sl\"}}}},\"GetQueryResults\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryExecutionId\"],\"members\":{\"QueryExecutionId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpdateCount\":{\"type\":\"long\"},\"ResultSet\":{\"type\":\"structure\",\"members\":{\"Rows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Data\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VarCharValue\":{}}}}}}},\"ResultSetMetadata\":{\"type\":\"structure\",\"members\":{\"ColumnInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"CatalogName\":{},\"SchemaName\":{},\"TableName\":{},\"Name\":{},\"Label\":{},\"Type\":{},\"Precision\":{\"type\":\"integer\"},\"Scale\":{\"type\":\"integer\"},\"Nullable\":{},\"CaseSensitive\":{\"type\":\"boolean\"}}}}}}}},\"NextToken\":{}}}},\"GetTableMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"CatalogName\",\"DatabaseName\",\"TableName\"],\"members\":{\"CatalogName\":{},\"DatabaseName\":{},\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableMetadata\":{\"shape\":\"S2q\"}}}},\"GetWorkGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkGroup\"],\"members\":{\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkGroup\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"State\":{},\"Configuration\":{\"shape\":\"S1i\"},\"Description\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}}}},\"ListDataCatalogs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataCatalogsSummary\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CatalogName\":{},\"Type\":{}}}},\"NextToken\":{}}}},\"ListDatabases\":{\"input\":{\"type\":\"structure\",\"required\":[\"CatalogName\"],\"members\":{\"CatalogName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatabaseList\":{\"type\":\"list\",\"member\":{\"shape\":\"S20\"}},\"NextToken\":{}}}},\"ListEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EngineVersions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sy\"}},\"NextToken\":{}}}},\"ListNamedQueries\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NamedQueryIds\":{\"shape\":\"S2\"},\"NextToken\":{}}}},\"ListPreparedStatements\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkGroup\"],\"members\":{\"WorkGroup\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PreparedStatements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StatementName\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListQueryExecutions\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueryExecutionIds\":{\"shape\":\"Sh\"},\"NextToken\":{}}}},\"ListTableMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"CatalogName\",\"DatabaseName\"],\"members\":{\"CatalogName\":{},\"DatabaseName\":{},\"Expression\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableMetadataList\":{\"type\":\"list\",\"member\":{\"shape\":\"S2q\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S16\"},\"NextToken\":{}}}},\"ListWorkGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"State\":{},\"Description\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"EngineVersion\":{\"shape\":\"Sy\"}}}},\"NextToken\":{}}}},\"StartQueryExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryString\"],\"members\":{\"QueryString\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"QueryExecutionContext\":{\"shape\":\"Sr\"},\"ResultConfiguration\":{\"shape\":\"Sn\"},\"WorkGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueryExecutionId\":{}}},\"idempotent\":true},\"StopQueryExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryExecutionId\"],\"members\":{\"QueryExecutionId\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDataCatalog\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{},\"Description\":{},\"Parameters\":{\"shape\":\"S13\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePreparedStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"StatementName\",\"WorkGroup\",\"QueryStatement\"],\"members\":{\"StatementName\":{},\"WorkGroup\":{},\"QueryStatement\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateWorkGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkGroup\"],\"members\":{\"WorkGroup\":{},\"Description\":{},\"ConfigurationUpdates\":{\"type\":\"structure\",\"members\":{\"EnforceWorkGroupConfiguration\":{\"type\":\"boolean\"},\"ResultConfigurationUpdates\":{\"type\":\"structure\",\"members\":{\"OutputLocation\":{},\"RemoveOutputLocation\":{\"type\":\"boolean\"},\"EncryptionConfiguration\":{\"shape\":\"Sp\"},\"RemoveEncryptionConfiguration\":{\"type\":\"boolean\"}}},\"PublishCloudWatchMetricsEnabled\":{\"type\":\"boolean\"},\"BytesScannedCutoffPerQuery\":{\"type\":\"long\"},\"RemoveBytesScannedCutoffPerQuery\":{\"type\":\"boolean\"},\"RequesterPaysEnabled\":{\"type\":\"boolean\"},\"EngineVersion\":{\"shape\":\"Sy\"}}},\"State\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"S6\":{\"type\":\"structure\",\"required\":[\"Name\",\"Database\",\"QueryString\"],\"members\":{\"Name\":{},\"Description\":{},\"Database\":{},\"QueryString\":{},\"NamedQueryId\":{},\"WorkGroup\":{}}},\"Sh\":{\"type\":\"list\",\"member\":{}},\"Sl\":{\"type\":\"structure\",\"members\":{\"QueryExecutionId\":{},\"Query\":{},\"StatementType\":{},\"ResultConfiguration\":{\"shape\":\"Sn\"},\"QueryExecutionContext\":{\"shape\":\"Sr\"},\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{},\"SubmissionDateTime\":{\"type\":\"timestamp\"},\"CompletionDateTime\":{\"type\":\"timestamp\"}}},\"Statistics\":{\"type\":\"structure\",\"members\":{\"EngineExecutionTimeInMillis\":{\"type\":\"long\"},\"DataScannedInBytes\":{\"type\":\"long\"},\"DataManifestLocation\":{},\"TotalExecutionTimeInMillis\":{\"type\":\"long\"},\"QueryQueueTimeInMillis\":{\"type\":\"long\"},\"QueryPlanningTimeInMillis\":{\"type\":\"long\"},\"ServiceProcessingTimeInMillis\":{\"type\":\"long\"}}},\"WorkGroup\":{},\"EngineVersion\":{\"shape\":\"Sy\"}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"OutputLocation\":{},\"EncryptionConfiguration\":{\"shape\":\"Sp\"}}},\"Sp\":{\"type\":\"structure\",\"required\":[\"EncryptionOption\"],\"members\":{\"EncryptionOption\":{},\"KmsKey\":{}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"Database\":{},\"Catalog\":{}}},\"Sy\":{\"type\":\"structure\",\"members\":{\"SelectedEngineVersion\":{},\"EffectiveEngineVersion\":{}}},\"S13\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S16\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"ResultConfiguration\":{\"shape\":\"Sn\"},\"EnforceWorkGroupConfiguration\":{\"type\":\"boolean\"},\"PublishCloudWatchMetricsEnabled\":{\"type\":\"boolean\"},\"BytesScannedCutoffPerQuery\":{\"type\":\"long\"},\"RequesterPaysEnabled\":{\"type\":\"boolean\"},\"EngineVersion\":{\"shape\":\"Sy\"}}},\"S20\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"Parameters\":{\"shape\":\"S13\"}}},\"S2q\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"LastAccessTime\":{\"type\":\"timestamp\"},\"TableType\":{},\"Columns\":{\"shape\":\"S2t\"},\"PartitionKeys\":{\"shape\":\"S2t\"},\"Parameters\":{\"shape\":\"S13\"}}},\"S2t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Type\":{},\"Comment\":{}}}}}}");

/***/ }),

/***/ 23135:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetQueryResults\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListDataCatalogs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DataCatalogsSummary\"},\"ListDatabases\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DatabaseList\"},\"ListNamedQueries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListPreparedStatements\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListQueryExecutions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTableMetadata\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TableMetadataList\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"},\"ListWorkGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 66702:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"auditmanager\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS Audit Manager\",\"serviceId\":\"AuditManager\",\"signatureVersion\":\"v4\",\"signingName\":\"auditmanager\",\"uid\":\"auditmanager-2017-07-25\"},\"operations\":{\"AssociateAssessmentReportEvidenceFolder\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/associateToAssessmentReport\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"evidenceFolderId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"evidenceFolderId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchAssociateAssessmentReportEvidence\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/batchAssociateToAssessmentReport\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"evidenceFolderId\",\"evidenceIds\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"evidenceFolderId\":{},\"evidenceIds\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidenceIds\":{\"shape\":\"S5\"},\"errors\":{\"shape\":\"S7\"}}}},\"BatchCreateDelegationByAssessment\":{\"http\":{\"requestUri\":\"/assessments/{assessmentId}/delegations\"},\"input\":{\"type\":\"structure\",\"required\":[\"createDelegationRequests\",\"assessmentId\"],\"members\":{\"createDelegationRequests\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\"}},\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"delegations\":{\"shape\":\"Sj\"},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"createDelegationRequest\":{\"shape\":\"Sd\"},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"BatchDeleteDelegationByAssessment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/delegations\"},\"input\":{\"type\":\"structure\",\"required\":[\"delegationIds\",\"assessmentId\"],\"members\":{\"delegationIds\":{\"type\":\"list\",\"member\":{}},\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"delegationId\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"BatchDisassociateAssessmentReportEvidence\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/batchDisassociateFromAssessmentReport\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"evidenceFolderId\",\"evidenceIds\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"evidenceFolderId\":{},\"evidenceIds\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidenceIds\":{\"shape\":\"S5\"},\"errors\":{\"shape\":\"S7\"}}}},\"BatchImportEvidenceToAssessmentControl\":{\"http\":{\"requestUri\":\"/assessments/{assessmentId}/controlSets/{controlSetId}/controls/{controlId}/evidence\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"controlId\",\"manualEvidence\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"controlId\":{\"location\":\"uri\",\"locationName\":\"controlId\"},\"manualEvidence\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"manualEvidence\":{\"shape\":\"S10\"},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"CreateAssessment\":{\"http\":{\"requestUri\":\"/assessments\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"assessmentReportsDestination\",\"scope\",\"roles\",\"frameworkId\"],\"members\":{\"name\":{},\"description\":{},\"assessmentReportsDestination\":{\"shape\":\"S17\"},\"scope\":{\"shape\":\"S19\"},\"roles\":{\"shape\":\"S1i\"},\"frameworkId\":{},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessment\":{\"shape\":\"S1o\"}}}},\"CreateAssessmentFramework\":{\"http\":{\"requestUri\":\"/assessmentFrameworks\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"controlSets\"],\"members\":{\"name\":{},\"description\":{},\"complianceType\":{},\"controlSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"controls\":{\"shape\":\"S2j\"}}}},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"framework\":{\"shape\":\"S2m\"}}}},\"CreateAssessmentReport\":{\"http\":{\"requestUri\":\"/assessments/{assessmentId}/reports\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"assessmentId\"],\"members\":{\"name\":{},\"description\":{},\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessmentReport\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"awsAccountId\":{},\"assessmentId\":{},\"assessmentName\":{},\"author\":{},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"}}}}}},\"CreateControl\":{\"http\":{\"requestUri\":\"/controls\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"controlMappingSources\"],\"members\":{\"name\":{},\"description\":{},\"testingInformation\":{},\"actionPlanTitle\":{},\"actionPlanInstructions\":{},\"controlMappingSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"sourceName\":{},\"sourceDescription\":{},\"sourceSetUpOption\":{},\"sourceType\":{},\"sourceKeyword\":{\"shape\":\"S33\"},\"sourceFrequency\":{},\"troubleshootingText\":{}}}},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"control\":{\"shape\":\"S2s\"}}}},\"DeleteAssessment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/assessments/{assessmentId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAssessmentFramework\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/assessmentFrameworks/{frameworkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"frameworkId\"],\"members\":{\"frameworkId\":{\"location\":\"uri\",\"locationName\":\"frameworkId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAssessmentReport\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/assessments/{assessmentId}/reports/{assessmentReportId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"assessmentReportId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"assessmentReportId\":{\"location\":\"uri\",\"locationName\":\"assessmentReportId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteControl\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/controls/{controlId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"controlId\"],\"members\":{\"controlId\":{\"location\":\"uri\",\"locationName\":\"controlId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterAccount\":{\"http\":{\"requestUri\":\"/account/deregisterAccount\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"DeregisterOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/account/deregisterOrganizationAdminAccount\"},\"input\":{\"type\":\"structure\",\"members\":{\"adminAccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateAssessmentReportEvidenceFolder\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/disassociateFromAssessmentReport\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"evidenceFolderId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"evidenceFolderId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAccountStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/account/status\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"GetAssessment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessment\":{\"shape\":\"S1o\"},\"userRole\":{\"shape\":\"S1j\"}}}},\"GetAssessmentFramework\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessmentFrameworks/{frameworkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"frameworkId\"],\"members\":{\"frameworkId\":{\"location\":\"uri\",\"locationName\":\"frameworkId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"framework\":{\"shape\":\"S2m\"}}}},\"GetAssessmentReportUrl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/reports/{assessmentReportId}/url\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentReportId\",\"assessmentId\"],\"members\":{\"assessmentReportId\":{\"location\":\"uri\",\"locationName\":\"assessmentReportId\"},\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"preSignedUrl\":{\"type\":\"structure\",\"members\":{\"hyperlinkName\":{},\"link\":{}}}}}},\"GetChangeLogs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/changelogs\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"querystring\",\"locationName\":\"controlSetId\"},\"controlId\":{\"location\":\"querystring\",\"locationName\":\"controlId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"changeLogs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"objectType\":{},\"objectName\":{},\"action\":{},\"createdAt\":{\"type\":\"timestamp\"},\"createdBy\":{}}}},\"nextToken\":{}}}},\"GetControl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/controls/{controlId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"controlId\"],\"members\":{\"controlId\":{\"location\":\"uri\",\"locationName\":\"controlId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"control\":{\"shape\":\"S2s\"}}}},\"GetDelegations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/delegations\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"delegations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"assessmentName\":{},\"assessmentId\":{},\"status\":{},\"roleArn\":{},\"creationTime\":{\"type\":\"timestamp\"},\"controlSetName\":{}}}},\"nextToken\":{}}}},\"GetEvidence\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/controlSets/{controlSetId}/evidenceFolders/{evidenceFolderId}/evidence/{evidenceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"evidenceFolderId\",\"evidenceId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"evidenceFolderId\":{\"location\":\"uri\",\"locationName\":\"evidenceFolderId\"},\"evidenceId\":{\"location\":\"uri\",\"locationName\":\"evidenceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidence\":{\"shape\":\"S4p\"}}}},\"GetEvidenceByEvidenceFolder\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/controlSets/{controlSetId}/evidenceFolders/{evidenceFolderId}/evidence\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"evidenceFolderId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"evidenceFolderId\":{\"location\":\"uri\",\"locationName\":\"evidenceFolderId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidence\":{\"type\":\"list\",\"member\":{\"shape\":\"S4p\"}},\"nextToken\":{}}}},\"GetEvidenceFolder\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/controlSets/{controlSetId}/evidenceFolders/{evidenceFolderId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"evidenceFolderId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"evidenceFolderId\":{\"location\":\"uri\",\"locationName\":\"evidenceFolderId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidenceFolder\":{\"shape\":\"S53\"}}}},\"GetEvidenceFoldersByAssessment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/evidenceFolders\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidenceFolders\":{\"shape\":\"S57\"},\"nextToken\":{}}}},\"GetEvidenceFoldersByAssessmentControl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments/{assessmentId}/evidenceFolders-by-assessment-control/{controlSetId}/{controlId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"controlId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"controlId\":{\"location\":\"uri\",\"locationName\":\"controlId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"evidenceFolders\":{\"shape\":\"S57\"},\"nextToken\":{}}}},\"GetOrganizationAdminAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/account/organizationAdminAccount\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"adminAccountId\":{},\"organizationId\":{}}}},\"GetServicesInScope\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/services\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"serviceMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"displayName\":{},\"description\":{},\"category\":{}}}}}}},\"GetSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/settings/{attribute}\"},\"input\":{\"type\":\"structure\",\"required\":[\"attribute\"],\"members\":{\"attribute\":{\"location\":\"uri\",\"locationName\":\"attribute\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"settings\":{\"shape\":\"S5k\"}}}},\"ListAssessmentFrameworks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessmentFrameworks\"},\"input\":{\"type\":\"structure\",\"required\":[\"frameworkType\"],\"members\":{\"frameworkType\":{\"location\":\"querystring\",\"locationName\":\"frameworkType\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"frameworkMetadataList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"id\":{},\"type\":{},\"name\":{},\"description\":{},\"logo\":{},\"complianceType\":{},\"controlsCount\":{\"type\":\"integer\"},\"controlSetsCount\":{\"type\":\"integer\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListAssessmentReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessmentReports\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessmentReports\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"assessmentId\":{},\"assessmentName\":{},\"author\":{},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListAssessments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assessments\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessmentMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"id\":{},\"complianceType\":{},\"status\":{},\"roles\":{\"shape\":\"S1i\"},\"delegations\":{\"shape\":\"Sj\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdated\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListControls\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/controls\"},\"input\":{\"type\":\"structure\",\"required\":[\"controlType\"],\"members\":{\"controlType\":{\"location\":\"querystring\",\"locationName\":\"controlType\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"controlMetadataList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"id\":{},\"name\":{},\"controlSources\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListKeywordsForDataSource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dataSourceKeywords\"},\"input\":{\"type\":\"structure\",\"required\":[\"source\"],\"members\":{\"source\":{\"location\":\"querystring\",\"locationName\":\"source\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"keywords\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListNotifications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/notifications\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"notifications\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"assessmentId\":{},\"assessmentName\":{},\"controlSetId\":{},\"controlSetName\":{},\"description\":{},\"eventTime\":{\"type\":\"timestamp\"},\"source\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1k\"}}}},\"RegisterAccount\":{\"http\":{\"requestUri\":\"/account/registerAccount\"},\"input\":{\"type\":\"structure\",\"members\":{\"kmsKey\":{},\"delegatedAdminAccount\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"RegisterOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/account/registerOrganizationAdminAccount\"},\"input\":{\"type\":\"structure\",\"required\":[\"adminAccountId\"],\"members\":{\"adminAccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"adminAccountId\":{},\"organizationId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAssessment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"scope\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"assessmentName\":{},\"assessmentDescription\":{},\"scope\":{\"shape\":\"S19\"},\"assessmentReportsDestination\":{\"shape\":\"S17\"},\"roles\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessment\":{\"shape\":\"S1o\"}}}},\"UpdateAssessmentControl\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/controlSets/{controlSetId}/controls/{controlId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"controlId\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"controlId\":{\"location\":\"uri\",\"locationName\":\"controlId\"},\"controlStatus\":{},\"commentBody\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"control\":{\"shape\":\"S22\"}}}},\"UpdateAssessmentControlSetStatus\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/controlSets/{controlSetId}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"controlSetId\",\"status\",\"comment\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"controlSetId\":{\"location\":\"uri\",\"locationName\":\"controlSetId\"},\"status\":{},\"comment\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"controlSet\":{\"shape\":\"S1y\"}}}},\"UpdateAssessmentFramework\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessmentFrameworks/{frameworkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"frameworkId\",\"name\",\"controlSets\"],\"members\":{\"frameworkId\":{\"location\":\"uri\",\"locationName\":\"frameworkId\"},\"name\":{},\"description\":{},\"complianceType\":{},\"controlSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"controls\":{\"shape\":\"S2j\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"framework\":{\"shape\":\"S2m\"}}}},\"UpdateAssessmentStatus\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assessments/{assessmentId}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"assessmentId\",\"status\"],\"members\":{\"assessmentId\":{\"location\":\"uri\",\"locationName\":\"assessmentId\"},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"assessment\":{\"shape\":\"S1o\"}}}},\"UpdateControl\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/controls/{controlId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"controlId\",\"name\",\"controlMappingSources\"],\"members\":{\"controlId\":{\"location\":\"uri\",\"locationName\":\"controlId\"},\"name\":{},\"description\":{},\"testingInformation\":{},\"actionPlanTitle\":{},\"actionPlanInstructions\":{},\"controlMappingSources\":{\"shape\":\"S2x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"control\":{\"shape\":\"S2s\"}}}},\"UpdateSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/settings\"},\"input\":{\"type\":\"structure\",\"members\":{\"snsTopic\":{},\"defaultAssessmentReportsDestination\":{\"shape\":\"S17\"},\"defaultProcessOwners\":{\"shape\":\"S1i\"},\"kmsKey\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"settings\":{\"shape\":\"S5k\"}}}},\"ValidateAssessmentReportIntegrity\":{\"http\":{\"requestUri\":\"/assessmentReports/integrity\"},\"input\":{\"type\":\"structure\",\"required\":[\"s3RelativePath\"],\"members\":{\"s3RelativePath\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"signatureValid\":{\"type\":\"boolean\"},\"signatureAlgorithm\":{},\"signatureDateTime\":{},\"signatureKeyId\":{},\"validationErrors\":{\"type\":\"list\",\"member\":{}}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"evidenceId\":{},\"errorCode\":{},\"errorMessage\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"comment\":{},\"controlSetId\":{},\"roleArn\":{},\"roleType\":{}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"assessmentName\":{},\"assessmentId\":{},\"status\":{},\"roleArn\":{},\"roleType\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdated\":{\"type\":\"timestamp\"},\"controlSetId\":{},\"comment\":{},\"createdBy\":{}}}},\"S10\":{\"type\":\"structure\",\"members\":{\"s3ResourcePath\":{}}},\"S17\":{\"type\":\"structure\",\"members\":{\"destinationType\":{},\"destination\":{}}},\"S19\":{\"type\":\"structure\",\"members\":{\"awsAccounts\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}},\"awsServices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serviceName\":{}}}}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"id\":{},\"emailAddress\":{},\"name\":{}}},\"S1i\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}},\"S1j\":{\"type\":\"structure\",\"members\":{\"roleType\":{},\"roleArn\":{}}},\"S1k\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1o\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"awsAccount\":{\"shape\":\"S1b\"},\"metadata\":{\"type\":\"structure\",\"members\":{\"name\":{},\"id\":{},\"description\":{},\"complianceType\":{},\"status\":{},\"assessmentReportsDestination\":{\"shape\":\"S17\"},\"scope\":{\"shape\":\"S19\"},\"roles\":{\"shape\":\"S1i\"},\"delegations\":{\"shape\":\"Sj\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdated\":{\"type\":\"timestamp\"}}},\"framework\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"metadata\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"logo\":{},\"complianceType\":{}}},\"controlSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S1y\"}}}},\"tags\":{\"shape\":\"S1k\"}}},\"S1y\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"status\":{},\"roles\":{\"shape\":\"S1i\"},\"controls\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"delegations\":{\"shape\":\"Sj\"},\"systemEvidenceCount\":{\"type\":\"integer\"},\"manualEvidenceCount\":{\"type\":\"integer\"}}},\"S22\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"description\":{},\"status\":{},\"response\":{},\"comments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"authorName\":{},\"commentBody\":{},\"postedDate\":{\"type\":\"timestamp\"}}}},\"evidenceSources\":{\"type\":\"list\",\"member\":{}},\"evidenceCount\":{\"type\":\"integer\"},\"assessmentReportEvidenceCount\":{\"type\":\"integer\"}}},\"S2j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{}}}},\"S2m\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"id\":{},\"name\":{},\"type\":{},\"complianceType\":{},\"description\":{},\"logo\":{},\"controlSources\":{},\"controlSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"controls\":{\"type\":\"list\",\"member\":{\"shape\":\"S2s\"}}}}},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"createdBy\":{},\"lastUpdatedBy\":{},\"tags\":{\"shape\":\"S1k\"}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"id\":{},\"type\":{},\"name\":{},\"description\":{},\"testingInformation\":{},\"actionPlanTitle\":{},\"actionPlanInstructions\":{},\"controlSources\":{},\"controlMappingSources\":{\"shape\":\"S2x\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"createdBy\":{},\"lastUpdatedBy\":{},\"tags\":{\"shape\":\"S1k\"}}},\"S2x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"sourceId\":{},\"sourceName\":{},\"sourceDescription\":{},\"sourceSetUpOption\":{},\"sourceType\":{},\"sourceKeyword\":{\"shape\":\"S33\"},\"sourceFrequency\":{},\"troubleshootingText\":{}}}},\"S33\":{\"type\":\"structure\",\"members\":{\"keywordInputType\":{},\"keywordValue\":{}}},\"S4p\":{\"type\":\"structure\",\"members\":{\"dataSource\":{},\"evidenceAwsAccountId\":{},\"time\":{\"type\":\"timestamp\"},\"eventSource\":{},\"eventName\":{},\"evidenceByType\":{},\"resourcesIncluded\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"value\":{}}}},\"attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"iamId\":{},\"complianceCheck\":{},\"awsOrganization\":{},\"awsAccountId\":{},\"evidenceFolderId\":{},\"id\":{},\"assessmentReportSelection\":{}}},\"S53\":{\"type\":\"structure\",\"members\":{\"name\":{},\"date\":{\"type\":\"timestamp\"},\"assessmentId\":{},\"controlSetId\":{},\"controlId\":{},\"id\":{},\"dataSource\":{},\"author\":{},\"totalEvidence\":{\"type\":\"integer\"},\"assessmentReportSelectionCount\":{\"type\":\"integer\"},\"controlName\":{},\"evidenceResourcesIncludedCount\":{\"type\":\"integer\"},\"evidenceByTypeConfigurationDataCount\":{\"type\":\"integer\"},\"evidenceByTypeManualCount\":{\"type\":\"integer\"},\"evidenceByTypeComplianceCheckCount\":{\"type\":\"integer\"},\"evidenceByTypeComplianceCheckIssuesCount\":{\"type\":\"integer\"},\"evidenceByTypeUserActivityCount\":{\"type\":\"integer\"},\"evidenceAwsServiceSourceCount\":{\"type\":\"integer\"}}},\"S57\":{\"type\":\"list\",\"member\":{\"shape\":\"S53\"}},\"S5k\":{\"type\":\"structure\",\"members\":{\"isAwsOrgEnabled\":{\"type\":\"boolean\"},\"snsTopic\":{},\"defaultAssessmentReportsDestination\":{\"shape\":\"S17\"},\"defaultProcessOwners\":{\"shape\":\"S1i\"},\"kmsKey\":{}}}}}");

/***/ }),

/***/ 99387:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetChangeLogs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetDelegations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetEvidenceByEvidenceFolder\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetEvidenceFoldersByAssessment\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetEvidenceFoldersByAssessmentControl\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessmentFrameworks\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessmentReports\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListControls\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListKeywordsForDataSource\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListNotifications\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 68489:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2011-01-01\",\"endpointPrefix\":\"autoscaling\",\"protocol\":\"query\",\"serviceFullName\":\"Auto Scaling\",\"serviceId\":\"Auto Scaling\",\"signatureVersion\":\"v4\",\"uid\":\"autoscaling-2011-01-01\",\"xmlNamespace\":\"http://autoscaling.amazonaws.com/doc/2011-01-01/\"},\"operations\":{\"AttachInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"InstanceIds\":{\"shape\":\"S2\"},\"AutoScalingGroupName\":{}}}},\"AttachLoadBalancerTargetGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"TargetGroupARNs\"],\"members\":{\"AutoScalingGroupName\":{},\"TargetGroupARNs\":{\"shape\":\"S6\"}}},\"output\":{\"resultWrapper\":\"AttachLoadBalancerTargetGroupsResult\",\"type\":\"structure\",\"members\":{}}},\"AttachLoadBalancers\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"LoadBalancerNames\"],\"members\":{\"AutoScalingGroupName\":{},\"LoadBalancerNames\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"AttachLoadBalancersResult\",\"type\":\"structure\",\"members\":{}}},\"BatchDeleteScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"ScheduledActionNames\"],\"members\":{\"AutoScalingGroupName\":{},\"ScheduledActionNames\":{\"shape\":\"Sd\"}}},\"output\":{\"resultWrapper\":\"BatchDeleteScheduledActionResult\",\"type\":\"structure\",\"members\":{\"FailedScheduledActions\":{\"shape\":\"Sf\"}}}},\"BatchPutScheduledUpdateGroupAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"ScheduledUpdateGroupActions\"],\"members\":{\"AutoScalingGroupName\":{},\"ScheduledUpdateGroupActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScheduledActionName\"],\"members\":{\"ScheduledActionName\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Recurrence\":{},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"DesiredCapacity\":{\"type\":\"integer\"},\"TimeZone\":{}}}}}},\"output\":{\"resultWrapper\":\"BatchPutScheduledUpdateGroupActionResult\",\"type\":\"structure\",\"members\":{\"FailedScheduledUpdateGroupActions\":{\"shape\":\"Sf\"}}}},\"CancelInstanceRefresh\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{}}},\"output\":{\"resultWrapper\":\"CancelInstanceRefreshResult\",\"type\":\"structure\",\"members\":{\"InstanceRefreshId\":{}}}},\"CompleteLifecycleAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"LifecycleHookName\",\"AutoScalingGroupName\",\"LifecycleActionResult\"],\"members\":{\"LifecycleHookName\":{},\"AutoScalingGroupName\":{},\"LifecycleActionToken\":{},\"LifecycleActionResult\":{},\"InstanceId\":{}}},\"output\":{\"resultWrapper\":\"CompleteLifecycleActionResult\",\"type\":\"structure\",\"members\":{}}},\"CreateAutoScalingGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"MinSize\",\"MaxSize\"],\"members\":{\"AutoScalingGroupName\":{},\"LaunchConfigurationName\":{},\"LaunchTemplate\":{\"shape\":\"S10\"},\"MixedInstancesPolicy\":{\"shape\":\"S12\"},\"InstanceId\":{},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"DesiredCapacity\":{\"type\":\"integer\"},\"DefaultCooldown\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S1d\"},\"LoadBalancerNames\":{\"shape\":\"Sa\"},\"TargetGroupARNs\":{\"shape\":\"S6\"},\"HealthCheckType\":{},\"HealthCheckGracePeriod\":{\"type\":\"integer\"},\"PlacementGroup\":{},\"VPCZoneIdentifier\":{},\"TerminationPolicies\":{\"shape\":\"S1g\"},\"NewInstancesProtectedFromScaleIn\":{\"type\":\"boolean\"},\"CapacityRebalance\":{\"type\":\"boolean\"},\"LifecycleHookSpecificationList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LifecycleHookName\",\"LifecycleTransition\"],\"members\":{\"LifecycleHookName\":{},\"LifecycleTransition\":{},\"NotificationMetadata\":{},\"HeartbeatTimeout\":{\"type\":\"integer\"},\"DefaultResult\":{},\"NotificationTargetARN\":{},\"RoleARN\":{}}}},\"Tags\":{\"shape\":\"S1q\"},\"ServiceLinkedRoleARN\":{},\"MaxInstanceLifetime\":{\"type\":\"integer\"}}}},\"CreateLaunchConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LaunchConfigurationName\"],\"members\":{\"LaunchConfigurationName\":{},\"ImageId\":{},\"KeyName\":{},\"SecurityGroups\":{\"shape\":\"S1x\"},\"ClassicLinkVPCId\":{},\"ClassicLinkVPCSecurityGroups\":{\"shape\":\"S1y\"},\"UserData\":{},\"InstanceId\":{},\"InstanceType\":{},\"KernelId\":{},\"RamdiskId\":{},\"BlockDeviceMappings\":{\"shape\":\"S20\"},\"InstanceMonitoring\":{\"shape\":\"S29\"},\"SpotPrice\":{},\"IamInstanceProfile\":{},\"EbsOptimized\":{\"type\":\"boolean\"},\"AssociatePublicIpAddress\":{\"type\":\"boolean\"},\"PlacementTenancy\":{},\"MetadataOptions\":{\"shape\":\"S2e\"}}}},\"CreateOrUpdateTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S1q\"}}}},\"DeleteAutoScalingGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"ForceDelete\":{\"type\":\"boolean\"}}}},\"DeleteLaunchConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LaunchConfigurationName\"],\"members\":{\"LaunchConfigurationName\":{}}}},\"DeleteLifecycleHook\":{\"input\":{\"type\":\"structure\",\"required\":[\"LifecycleHookName\",\"AutoScalingGroupName\"],\"members\":{\"LifecycleHookName\":{},\"AutoScalingGroupName\":{}}},\"output\":{\"resultWrapper\":\"DeleteLifecycleHookResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteNotificationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"TopicARN\"],\"members\":{\"AutoScalingGroupName\":{},\"TopicARN\":{}}}},\"DeletePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyName\"],\"members\":{\"AutoScalingGroupName\":{},\"PolicyName\":{}}}},\"DeleteScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"ScheduledActionName\"],\"members\":{\"AutoScalingGroupName\":{},\"ScheduledActionName\":{}}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S1q\"}}}},\"DeleteWarmPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"ForceDelete\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DeleteWarmPoolResult\",\"type\":\"structure\",\"members\":{}}},\"DescribeAccountLimits\":{\"output\":{\"resultWrapper\":\"DescribeAccountLimitsResult\",\"type\":\"structure\",\"members\":{\"MaxNumberOfAutoScalingGroups\":{\"type\":\"integer\"},\"MaxNumberOfLaunchConfigurations\":{\"type\":\"integer\"},\"NumberOfAutoScalingGroups\":{\"type\":\"integer\"},\"NumberOfLaunchConfigurations\":{\"type\":\"integer\"}}}},\"DescribeAdjustmentTypes\":{\"output\":{\"resultWrapper\":\"DescribeAdjustmentTypesResult\",\"type\":\"structure\",\"members\":{\"AdjustmentTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AdjustmentType\":{}}}}}}},\"DescribeAutoScalingGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupNames\":{\"shape\":\"S33\"},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeAutoScalingGroupsResult\",\"type\":\"structure\",\"required\":[\"AutoScalingGroups\"],\"members\":{\"AutoScalingGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"MinSize\",\"MaxSize\",\"DesiredCapacity\",\"DefaultCooldown\",\"AvailabilityZones\",\"HealthCheckType\",\"CreatedTime\"],\"members\":{\"AutoScalingGroupName\":{},\"AutoScalingGroupARN\":{},\"LaunchConfigurationName\":{},\"LaunchTemplate\":{\"shape\":\"S10\"},\"MixedInstancesPolicy\":{\"shape\":\"S12\"},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"DesiredCapacity\":{\"type\":\"integer\"},\"DefaultCooldown\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S1d\"},\"LoadBalancerNames\":{\"shape\":\"Sa\"},\"TargetGroupARNs\":{\"shape\":\"S6\"},\"HealthCheckType\":{},\"HealthCheckGracePeriod\":{\"type\":\"integer\"},\"Instances\":{\"shape\":\"S38\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"SuspendedProcesses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProcessName\":{},\"SuspensionReason\":{}}}},\"PlacementGroup\":{},\"VPCZoneIdentifier\":{},\"EnabledMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Metric\":{},\"Granularity\":{}}}},\"Status\":{},\"Tags\":{\"shape\":\"S3f\"},\"TerminationPolicies\":{\"shape\":\"S1g\"},\"NewInstancesProtectedFromScaleIn\":{\"type\":\"boolean\"},\"ServiceLinkedRoleARN\":{},\"MaxInstanceLifetime\":{\"type\":\"integer\"},\"CapacityRebalance\":{\"type\":\"boolean\"},\"WarmPoolConfiguration\":{\"shape\":\"S3h\"},\"WarmPoolSize\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"DescribeAutoScalingInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"InstanceIds\":{\"shape\":\"S2\"},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeAutoScalingInstancesResult\",\"type\":\"structure\",\"members\":{\"AutoScalingInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AutoScalingGroupName\",\"AvailabilityZone\",\"LifecycleState\",\"HealthStatus\",\"ProtectedFromScaleIn\"],\"members\":{\"InstanceId\":{},\"InstanceType\":{},\"AutoScalingGroupName\":{},\"AvailabilityZone\":{},\"LifecycleState\":{},\"HealthStatus\":{},\"LaunchConfigurationName\":{},\"LaunchTemplate\":{\"shape\":\"S10\"},\"ProtectedFromScaleIn\":{\"type\":\"boolean\"},\"WeightedCapacity\":{}}}},\"NextToken\":{}}}},\"DescribeAutoScalingNotificationTypes\":{\"output\":{\"resultWrapper\":\"DescribeAutoScalingNotificationTypesResult\",\"type\":\"structure\",\"members\":{\"AutoScalingNotificationTypes\":{\"shape\":\"S3s\"}}}},\"DescribeInstanceRefreshes\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"InstanceRefreshIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeInstanceRefreshesResult\",\"type\":\"structure\",\"members\":{\"InstanceRefreshes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceRefreshId\":{},\"AutoScalingGroupName\":{},\"Status\":{},\"StatusReason\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"PercentageComplete\":{\"type\":\"integer\"},\"InstancesToUpdate\":{\"type\":\"integer\"},\"ProgressDetails\":{\"type\":\"structure\",\"members\":{\"LivePoolProgress\":{\"type\":\"structure\",\"members\":{\"PercentageComplete\":{\"type\":\"integer\"},\"InstancesToUpdate\":{\"type\":\"integer\"}}},\"WarmPoolProgress\":{\"type\":\"structure\",\"members\":{\"PercentageComplete\":{\"type\":\"integer\"},\"InstancesToUpdate\":{\"type\":\"integer\"}}}}}}}},\"NextToken\":{}}}},\"DescribeLaunchConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"LaunchConfigurationNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeLaunchConfigurationsResult\",\"type\":\"structure\",\"required\":[\"LaunchConfigurations\"],\"members\":{\"LaunchConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LaunchConfigurationName\",\"ImageId\",\"InstanceType\",\"CreatedTime\"],\"members\":{\"LaunchConfigurationName\":{},\"LaunchConfigurationARN\":{},\"ImageId\":{},\"KeyName\":{},\"SecurityGroups\":{\"shape\":\"S1x\"},\"ClassicLinkVPCId\":{},\"ClassicLinkVPCSecurityGroups\":{\"shape\":\"S1y\"},\"UserData\":{},\"InstanceType\":{},\"KernelId\":{},\"RamdiskId\":{},\"BlockDeviceMappings\":{\"shape\":\"S20\"},\"InstanceMonitoring\":{\"shape\":\"S29\"},\"SpotPrice\":{},\"IamInstanceProfile\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"EbsOptimized\":{\"type\":\"boolean\"},\"AssociatePublicIpAddress\":{\"type\":\"boolean\"},\"PlacementTenancy\":{},\"MetadataOptions\":{\"shape\":\"S2e\"}}}},\"NextToken\":{}}}},\"DescribeLifecycleHookTypes\":{\"output\":{\"resultWrapper\":\"DescribeLifecycleHookTypesResult\",\"type\":\"structure\",\"members\":{\"LifecycleHookTypes\":{\"shape\":\"S3s\"}}}},\"DescribeLifecycleHooks\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"LifecycleHookNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeLifecycleHooksResult\",\"type\":\"structure\",\"members\":{\"LifecycleHooks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LifecycleHookName\":{},\"AutoScalingGroupName\":{},\"LifecycleTransition\":{},\"NotificationTargetARN\":{},\"RoleARN\":{},\"NotificationMetadata\":{},\"HeartbeatTimeout\":{\"type\":\"integer\"},\"GlobalTimeout\":{\"type\":\"integer\"},\"DefaultResult\":{}}}}}}},\"DescribeLoadBalancerTargetGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancerTargetGroupsResult\",\"type\":\"structure\",\"members\":{\"LoadBalancerTargetGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LoadBalancerTargetGroupARN\":{},\"State\":{}}}},\"NextToken\":{}}}},\"DescribeLoadBalancers\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancersResult\",\"type\":\"structure\",\"members\":{\"LoadBalancers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LoadBalancerName\":{},\"State\":{}}}},\"NextToken\":{}}}},\"DescribeMetricCollectionTypes\":{\"output\":{\"resultWrapper\":\"DescribeMetricCollectionTypesResult\",\"type\":\"structure\",\"members\":{\"Metrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Metric\":{}}}},\"Granularities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Granularity\":{}}}}}}},\"DescribeNotificationConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupNames\":{\"shape\":\"S33\"},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeNotificationConfigurationsResult\",\"type\":\"structure\",\"required\":[\"NotificationConfigurations\"],\"members\":{\"NotificationConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupName\":{},\"TopicARN\":{},\"NotificationType\":{}}}},\"NextToken\":{}}}},\"DescribePolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupName\":{},\"PolicyNames\":{\"type\":\"list\",\"member\":{}},\"PolicyTypes\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribePoliciesResult\",\"type\":\"structure\",\"members\":{\"ScalingPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupName\":{},\"PolicyName\":{},\"PolicyARN\":{},\"PolicyType\":{},\"AdjustmentType\":{},\"MinAdjustmentStep\":{\"shape\":\"S53\"},\"MinAdjustmentMagnitude\":{\"type\":\"integer\"},\"ScalingAdjustment\":{\"type\":\"integer\"},\"Cooldown\":{\"type\":\"integer\"},\"StepAdjustments\":{\"shape\":\"S56\"},\"MetricAggregationType\":{},\"EstimatedInstanceWarmup\":{\"type\":\"integer\"},\"Alarms\":{\"shape\":\"S5a\"},\"TargetTrackingConfiguration\":{\"shape\":\"S5c\"},\"Enabled\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"DescribeScalingActivities\":{\"input\":{\"type\":\"structure\",\"members\":{\"ActivityIds\":{\"type\":\"list\",\"member\":{}},\"AutoScalingGroupName\":{},\"IncludeDeletedGroups\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeScalingActivitiesResult\",\"type\":\"structure\",\"required\":[\"Activities\"],\"members\":{\"Activities\":{\"shape\":\"S5u\"},\"NextToken\":{}}}},\"DescribeScalingProcessTypes\":{\"output\":{\"resultWrapper\":\"DescribeScalingProcessTypesResult\",\"type\":\"structure\",\"members\":{\"Processes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProcessName\"],\"members\":{\"ProcessName\":{}}}}}}},\"DescribeScheduledActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupName\":{},\"ScheduledActionNames\":{\"shape\":\"Sd\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeScheduledActionsResult\",\"type\":\"structure\",\"members\":{\"ScheduledUpdateGroupActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutoScalingGroupName\":{},\"ScheduledActionName\":{},\"ScheduledActionARN\":{},\"Time\":{\"type\":\"timestamp\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Recurrence\":{},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"DesiredCapacity\":{\"type\":\"integer\"},\"TimeZone\":{}}}},\"NextToken\":{}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"NextToken\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeTagsResult\",\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S3f\"},\"NextToken\":{}}}},\"DescribeTerminationPolicyTypes\":{\"output\":{\"resultWrapper\":\"DescribeTerminationPolicyTypesResult\",\"type\":\"structure\",\"members\":{\"TerminationPolicyTypes\":{\"shape\":\"S1g\"}}}},\"DescribeWarmPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeWarmPoolResult\",\"type\":\"structure\",\"members\":{\"WarmPoolConfiguration\":{\"shape\":\"S3h\"},\"Instances\":{\"shape\":\"S38\"},\"NextToken\":{}}}},\"DetachInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"ShouldDecrementDesiredCapacity\"],\"members\":{\"InstanceIds\":{\"shape\":\"S2\"},\"AutoScalingGroupName\":{},\"ShouldDecrementDesiredCapacity\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DetachInstancesResult\",\"type\":\"structure\",\"members\":{\"Activities\":{\"shape\":\"S5u\"}}}},\"DetachLoadBalancerTargetGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"TargetGroupARNs\"],\"members\":{\"AutoScalingGroupName\":{},\"TargetGroupARNs\":{\"shape\":\"S6\"}}},\"output\":{\"resultWrapper\":\"DetachLoadBalancerTargetGroupsResult\",\"type\":\"structure\",\"members\":{}}},\"DetachLoadBalancers\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"LoadBalancerNames\"],\"members\":{\"AutoScalingGroupName\":{},\"LoadBalancerNames\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"DetachLoadBalancersResult\",\"type\":\"structure\",\"members\":{}}},\"DisableMetricsCollection\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"Metrics\":{\"shape\":\"S6m\"}}}},\"EnableMetricsCollection\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"Granularity\"],\"members\":{\"AutoScalingGroupName\":{},\"Metrics\":{\"shape\":\"S6m\"},\"Granularity\":{}}}},\"EnterStandby\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"ShouldDecrementDesiredCapacity\"],\"members\":{\"InstanceIds\":{\"shape\":\"S2\"},\"AutoScalingGroupName\":{},\"ShouldDecrementDesiredCapacity\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"EnterStandbyResult\",\"type\":\"structure\",\"members\":{\"Activities\":{\"shape\":\"S5u\"}}}},\"ExecutePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyName\"],\"members\":{\"AutoScalingGroupName\":{},\"PolicyName\":{},\"HonorCooldown\":{\"type\":\"boolean\"},\"MetricValue\":{\"type\":\"double\"},\"BreachThreshold\":{\"type\":\"double\"}}}},\"ExitStandby\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"InstanceIds\":{\"shape\":\"S2\"},\"AutoScalingGroupName\":{}}},\"output\":{\"resultWrapper\":\"ExitStandbyResult\",\"type\":\"structure\",\"members\":{\"Activities\":{\"shape\":\"S5u\"}}}},\"PutLifecycleHook\":{\"input\":{\"type\":\"structure\",\"required\":[\"LifecycleHookName\",\"AutoScalingGroupName\"],\"members\":{\"LifecycleHookName\":{},\"AutoScalingGroupName\":{},\"LifecycleTransition\":{},\"RoleARN\":{},\"NotificationTargetARN\":{},\"NotificationMetadata\":{},\"HeartbeatTimeout\":{\"type\":\"integer\"},\"DefaultResult\":{}}},\"output\":{\"resultWrapper\":\"PutLifecycleHookResult\",\"type\":\"structure\",\"members\":{}}},\"PutNotificationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"TopicARN\",\"NotificationTypes\"],\"members\":{\"AutoScalingGroupName\":{},\"TopicARN\":{},\"NotificationTypes\":{\"shape\":\"S3s\"}}}},\"PutScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"PolicyName\"],\"members\":{\"AutoScalingGroupName\":{},\"PolicyName\":{},\"PolicyType\":{},\"AdjustmentType\":{},\"MinAdjustmentStep\":{\"shape\":\"S53\"},\"MinAdjustmentMagnitude\":{\"type\":\"integer\"},\"ScalingAdjustment\":{\"type\":\"integer\"},\"Cooldown\":{\"type\":\"integer\"},\"MetricAggregationType\":{},\"StepAdjustments\":{\"shape\":\"S56\"},\"EstimatedInstanceWarmup\":{\"type\":\"integer\"},\"TargetTrackingConfiguration\":{\"shape\":\"S5c\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"PutScalingPolicyResult\",\"type\":\"structure\",\"members\":{\"PolicyARN\":{},\"Alarms\":{\"shape\":\"S5a\"}}}},\"PutScheduledUpdateGroupAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"ScheduledActionName\"],\"members\":{\"AutoScalingGroupName\":{},\"ScheduledActionName\":{},\"Time\":{\"type\":\"timestamp\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Recurrence\":{},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"DesiredCapacity\":{\"type\":\"integer\"},\"TimeZone\":{}}}},\"PutWarmPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"MaxGroupPreparedCapacity\":{\"type\":\"integer\"},\"MinSize\":{\"type\":\"integer\"},\"PoolState\":{}}},\"output\":{\"resultWrapper\":\"PutWarmPoolResult\",\"type\":\"structure\",\"members\":{}}},\"RecordLifecycleActionHeartbeat\":{\"input\":{\"type\":\"structure\",\"required\":[\"LifecycleHookName\",\"AutoScalingGroupName\"],\"members\":{\"LifecycleHookName\":{},\"AutoScalingGroupName\":{},\"LifecycleActionToken\":{},\"InstanceId\":{}}},\"output\":{\"resultWrapper\":\"RecordLifecycleActionHeartbeatResult\",\"type\":\"structure\",\"members\":{}}},\"ResumeProcesses\":{\"input\":{\"shape\":\"S74\"}},\"SetDesiredCapacity\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\",\"DesiredCapacity\"],\"members\":{\"AutoScalingGroupName\":{},\"DesiredCapacity\":{\"type\":\"integer\"},\"HonorCooldown\":{\"type\":\"boolean\"}}}},\"SetInstanceHealth\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"HealthStatus\"],\"members\":{\"InstanceId\":{},\"HealthStatus\":{},\"ShouldRespectGracePeriod\":{\"type\":\"boolean\"}}}},\"SetInstanceProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\",\"AutoScalingGroupName\",\"ProtectedFromScaleIn\"],\"members\":{\"InstanceIds\":{\"shape\":\"S2\"},\"AutoScalingGroupName\":{},\"ProtectedFromScaleIn\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"SetInstanceProtectionResult\",\"type\":\"structure\",\"members\":{}}},\"StartInstanceRefresh\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"Strategy\":{},\"Preferences\":{\"type\":\"structure\",\"members\":{\"MinHealthyPercentage\":{\"type\":\"integer\"},\"InstanceWarmup\":{\"type\":\"integer\"},\"CheckpointPercentages\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"CheckpointDelay\":{\"type\":\"integer\"}}}}},\"output\":{\"resultWrapper\":\"StartInstanceRefreshResult\",\"type\":\"structure\",\"members\":{\"InstanceRefreshId\":{}}}},\"SuspendProcesses\":{\"input\":{\"shape\":\"S74\"}},\"TerminateInstanceInAutoScalingGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ShouldDecrementDesiredCapacity\"],\"members\":{\"InstanceId\":{},\"ShouldDecrementDesiredCapacity\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"TerminateInstanceInAutoScalingGroupResult\",\"type\":\"structure\",\"members\":{\"Activity\":{\"shape\":\"S5v\"}}}},\"UpdateAutoScalingGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"LaunchConfigurationName\":{},\"LaunchTemplate\":{\"shape\":\"S10\"},\"MixedInstancesPolicy\":{\"shape\":\"S12\"},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"DesiredCapacity\":{\"type\":\"integer\"},\"DefaultCooldown\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S1d\"},\"HealthCheckType\":{},\"HealthCheckGracePeriod\":{\"type\":\"integer\"},\"PlacementGroup\":{},\"VPCZoneIdentifier\":{},\"TerminationPolicies\":{\"shape\":\"S1g\"},\"NewInstancesProtectedFromScaleIn\":{\"type\":\"boolean\"},\"ServiceLinkedRoleARN\":{},\"MaxInstanceLifetime\":{\"type\":\"integer\"},\"CapacityRebalance\":{\"type\":\"boolean\"}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"S6\":{\"type\":\"list\",\"member\":{}},\"Sa\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"list\",\"member\":{}},\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScheduledActionName\"],\"members\":{\"ScheduledActionName\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"S10\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"Version\":{}}},\"S12\":{\"type\":\"structure\",\"members\":{\"LaunchTemplate\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateSpecification\":{\"shape\":\"S10\"},\"Overrides\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceType\":{},\"WeightedCapacity\":{},\"LaunchTemplateSpecification\":{\"shape\":\"S10\"}}}}}},\"InstancesDistribution\":{\"type\":\"structure\",\"members\":{\"OnDemandAllocationStrategy\":{},\"OnDemandBaseCapacity\":{\"type\":\"integer\"},\"OnDemandPercentageAboveBaseCapacity\":{\"type\":\"integer\"},\"SpotAllocationStrategy\":{},\"SpotInstancePools\":{\"type\":\"integer\"},\"SpotMaxPrice\":{}}}}},\"S1d\":{\"type\":\"list\",\"member\":{}},\"S1g\":{\"type\":\"list\",\"member\":{}},\"S1q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"ResourceId\":{},\"ResourceType\":{},\"Key\":{},\"Value\":{},\"PropagateAtLaunch\":{\"type\":\"boolean\"}}}},\"S1x\":{\"type\":\"list\",\"member\":{}},\"S1y\":{\"type\":\"list\",\"member\":{}},\"S20\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceName\"],\"members\":{\"VirtualName\":{},\"DeviceName\":{},\"Ebs\":{\"type\":\"structure\",\"members\":{\"SnapshotId\":{},\"VolumeSize\":{\"type\":\"integer\"},\"VolumeType\":{},\"DeleteOnTermination\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"Encrypted\":{\"type\":\"boolean\"}}},\"NoDevice\":{\"type\":\"boolean\"}}}},\"S29\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"HttpTokens\":{},\"HttpPutResponseHopLimit\":{\"type\":\"integer\"},\"HttpEndpoint\":{}}},\"S33\":{\"type\":\"list\",\"member\":{}},\"S38\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AvailabilityZone\",\"LifecycleState\",\"HealthStatus\",\"ProtectedFromScaleIn\"],\"members\":{\"InstanceId\":{},\"InstanceType\":{},\"AvailabilityZone\":{},\"LifecycleState\":{},\"HealthStatus\":{},\"LaunchConfigurationName\":{},\"LaunchTemplate\":{\"shape\":\"S10\"},\"ProtectedFromScaleIn\":{\"type\":\"boolean\"},\"WeightedCapacity\":{}}}},\"S3f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ResourceType\":{},\"Key\":{},\"Value\":{},\"PropagateAtLaunch\":{\"type\":\"boolean\"}}}},\"S3h\":{\"type\":\"structure\",\"members\":{\"MaxGroupPreparedCapacity\":{\"type\":\"integer\"},\"MinSize\":{\"type\":\"integer\"},\"PoolState\":{},\"Status\":{}}},\"S3s\":{\"type\":\"list\",\"member\":{}},\"S53\":{\"type\":\"integer\",\"deprecated\":true},\"S56\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScalingAdjustment\"],\"members\":{\"MetricIntervalLowerBound\":{\"type\":\"double\"},\"MetricIntervalUpperBound\":{\"type\":\"double\"},\"ScalingAdjustment\":{\"type\":\"integer\"}}}},\"S5a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlarmName\":{},\"AlarmARN\":{}}}},\"S5c\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"PredefinedMetricSpecification\":{\"type\":\"structure\",\"required\":[\"PredefinedMetricType\"],\"members\":{\"PredefinedMetricType\":{},\"ResourceLabel\":{}}},\"CustomizedMetricSpecification\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Namespace\",\"Statistic\"],\"members\":{\"MetricName\":{},\"Namespace\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"Statistic\":{},\"Unit\":{}}},\"TargetValue\":{\"type\":\"double\"},\"DisableScaleIn\":{\"type\":\"boolean\"}}},\"S5u\":{\"type\":\"list\",\"member\":{\"shape\":\"S5v\"}},\"S5v\":{\"type\":\"structure\",\"required\":[\"ActivityId\",\"AutoScalingGroupName\",\"Cause\",\"StartTime\",\"StatusCode\"],\"members\":{\"ActivityId\":{},\"AutoScalingGroupName\":{},\"Description\":{},\"Cause\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"StatusCode\":{},\"StatusMessage\":{},\"Progress\":{\"type\":\"integer\"},\"Details\":{},\"AutoScalingGroupState\":{},\"AutoScalingGroupARN\":{}}},\"S6m\":{\"type\":\"list\",\"member\":{}},\"S74\":{\"type\":\"structure\",\"required\":[\"AutoScalingGroupName\"],\"members\":{\"AutoScalingGroupName\":{},\"ScalingProcesses\":{\"type\":\"list\",\"member\":{}}}}}}");

/***/ }),

/***/ 38676:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAutoScalingGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"AutoScalingGroups\"},\"DescribeAutoScalingInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"AutoScalingInstances\"},\"DescribeLaunchConfigurations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"LaunchConfigurations\"},\"DescribeNotificationConfigurations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"NotificationConfigurations\"},\"DescribePolicies\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"ScalingPolicies\"},\"DescribeScalingActivities\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"Activities\"},\"DescribeScheduledActions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"ScheduledUpdateGroupActions\"},\"DescribeTags\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"}}}");

/***/ }),

/***/ 95300:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-01-06\",\"endpointPrefix\":\"autoscaling-plans\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Auto Scaling Plans\",\"serviceId\":\"Auto Scaling Plans\",\"signatureVersion\":\"v4\",\"signingName\":\"autoscaling-plans\",\"targetPrefix\":\"AnyScaleScalingPlannerFrontendService\",\"uid\":\"autoscaling-plans-2018-01-06\"},\"operations\":{\"CreateScalingPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ApplicationSource\",\"ScalingInstructions\"],\"members\":{\"ScalingPlanName\":{},\"ApplicationSource\":{\"shape\":\"S3\"},\"ScalingInstructions\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ScalingPlanVersion\"],\"members\":{\"ScalingPlanVersion\":{\"type\":\"long\"}}}},\"DeleteScalingPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ScalingPlanVersion\"],\"members\":{\"ScalingPlanName\":{},\"ScalingPlanVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeScalingPlanResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ScalingPlanVersion\"],\"members\":{\"ScalingPlanName\":{},\"ScalingPlanVersion\":{\"type\":\"long\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScalingPlanResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ScalingPlanVersion\",\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\",\"ScalingStatusCode\"],\"members\":{\"ScalingPlanName\":{},\"ScalingPlanVersion\":{\"type\":\"long\"},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"ScalingPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PolicyName\",\"PolicyType\"],\"members\":{\"PolicyName\":{},\"PolicyType\":{},\"TargetTrackingConfiguration\":{\"shape\":\"Sh\"}}}},\"ScalingStatusCode\":{},\"ScalingStatusMessage\":{}}}},\"NextToken\":{}}}},\"DescribeScalingPlans\":{\"input\":{\"type\":\"structure\",\"members\":{\"ScalingPlanNames\":{\"type\":\"list\",\"member\":{}},\"ScalingPlanVersion\":{\"type\":\"long\"},\"ApplicationSources\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScalingPlans\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ScalingPlanVersion\",\"ApplicationSource\",\"ScalingInstructions\",\"StatusCode\"],\"members\":{\"ScalingPlanName\":{},\"ScalingPlanVersion\":{\"type\":\"long\"},\"ApplicationSource\":{\"shape\":\"S3\"},\"ScalingInstructions\":{\"shape\":\"Sa\"},\"StatusCode\":{},\"StatusMessage\":{},\"StatusStartTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetScalingPlanResourceForecastData\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ScalingPlanVersion\",\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\",\"ForecastDataType\",\"StartTime\",\"EndTime\"],\"members\":{\"ScalingPlanName\":{},\"ScalingPlanVersion\":{\"type\":\"long\"},\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"ForecastDataType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Datapoints\"],\"members\":{\"Datapoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"Value\":{\"type\":\"double\"}}}}}}},\"UpdateScalingPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScalingPlanName\",\"ScalingPlanVersion\"],\"members\":{\"ScalingPlanName\":{},\"ScalingPlanVersion\":{\"type\":\"long\"},\"ApplicationSource\":{\"shape\":\"S3\"},\"ScalingInstructions\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"members\":{\"CloudFormationStackARN\":{},\"TagFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}}}},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ServiceNamespace\",\"ResourceId\",\"ScalableDimension\",\"MinCapacity\",\"MaxCapacity\",\"TargetTrackingConfigurations\"],\"members\":{\"ServiceNamespace\":{},\"ResourceId\":{},\"ScalableDimension\":{},\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"},\"TargetTrackingConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}},\"PredefinedLoadMetricSpecification\":{\"type\":\"structure\",\"required\":[\"PredefinedLoadMetricType\"],\"members\":{\"PredefinedLoadMetricType\":{},\"ResourceLabel\":{}}},\"CustomizedLoadMetricSpecification\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Namespace\",\"Statistic\"],\"members\":{\"MetricName\":{},\"Namespace\":{},\"Dimensions\":{\"shape\":\"So\"},\"Statistic\":{},\"Unit\":{}}},\"ScheduledActionBufferTime\":{\"type\":\"integer\"},\"PredictiveScalingMaxCapacityBehavior\":{},\"PredictiveScalingMaxCapacityBuffer\":{\"type\":\"integer\"},\"PredictiveScalingMode\":{},\"ScalingPolicyUpdateBehavior\":{},\"DisableDynamicScaling\":{\"type\":\"boolean\"}}}},\"Sh\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"PredefinedScalingMetricSpecification\":{\"type\":\"structure\",\"required\":[\"PredefinedScalingMetricType\"],\"members\":{\"PredefinedScalingMetricType\":{},\"ResourceLabel\":{}}},\"CustomizedScalingMetricSpecification\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Namespace\",\"Statistic\"],\"members\":{\"MetricName\":{},\"Namespace\":{},\"Dimensions\":{\"shape\":\"So\"},\"Statistic\":{},\"Unit\":{}}},\"TargetValue\":{\"type\":\"double\"},\"DisableScaleIn\":{\"type\":\"boolean\"},\"ScaleOutCooldown\":{\"type\":\"integer\"},\"ScaleInCooldown\":{\"type\":\"integer\"},\"EstimatedInstanceWarmup\":{\"type\":\"integer\"}}},\"So\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 4511:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 65918:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-15\",\"endpointPrefix\":\"backup\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS Backup\",\"serviceId\":\"Backup\",\"signatureVersion\":\"v4\",\"uid\":\"backup-2018-11-15\"},\"operations\":{\"CreateBackupPlan\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/backup/plans/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlan\"],\"members\":{\"BackupPlan\":{\"shape\":\"S2\"},\"BackupPlanTags\":{\"shape\":\"Sc\"},\"CreatorRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlanId\":{},\"BackupPlanArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"VersionId\":{},\"AdvancedBackupSettings\":{\"shape\":\"Sj\"}}},\"idempotent\":true},\"CreateBackupSelection\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/backup/plans/{backupPlanId}/selections/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\",\"BackupSelection\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"BackupSelection\":{\"shape\":\"St\"},\"CreatorRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SelectionId\":{},\"BackupPlanId\":{},\"CreationDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"CreateBackupVault\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/backup-vaults/{backupVaultName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"BackupVaultTags\":{\"shape\":\"Sc\"},\"EncryptionKeyArn\":{},\"CreatorRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultName\":{},\"BackupVaultArn\":{},\"CreationDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DeleteBackupPlan\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/backup/plans/{backupPlanId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlanId\":{},\"BackupPlanArn\":{},\"DeletionDate\":{\"type\":\"timestamp\"},\"VersionId\":{}}}},\"DeleteBackupSelection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/backup/plans/{backupPlanId}/selections/{selectionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\",\"SelectionId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"SelectionId\":{\"location\":\"uri\",\"locationName\":\"selectionId\"}}}},\"DeleteBackupVault\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/backup-vaults/{backupVaultName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"}}}},\"DeleteBackupVaultAccessPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/backup-vaults/{backupVaultName}/access-policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"}}},\"idempotent\":true},\"DeleteBackupVaultNotifications\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/backup-vaults/{backupVaultName}/notification-configuration\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"}}},\"idempotent\":true},\"DeleteRecoveryPoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"RecoveryPointArn\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"RecoveryPointArn\":{\"location\":\"uri\",\"locationName\":\"recoveryPointArn\"}}},\"idempotent\":true},\"DescribeBackupJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-jobs/{backupJobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupJobId\"],\"members\":{\"BackupJobId\":{\"location\":\"uri\",\"locationName\":\"backupJobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"BackupJobId\":{},\"BackupVaultName\":{},\"BackupVaultArn\":{},\"RecoveryPointArn\":{},\"ResourceArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"State\":{},\"StatusMessage\":{},\"PercentDone\":{},\"BackupSizeInBytes\":{\"type\":\"long\"},\"IamRoleArn\":{},\"CreatedBy\":{\"shape\":\"S1g\"},\"ResourceType\":{},\"BytesTransferred\":{\"type\":\"long\"},\"ExpectedCompletionDate\":{\"type\":\"timestamp\"},\"StartBy\":{\"type\":\"timestamp\"},\"BackupOptions\":{\"shape\":\"Sm\"},\"BackupType\":{}}},\"idempotent\":true},\"DescribeBackupVault\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/{backupVaultName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultName\":{},\"BackupVaultArn\":{},\"EncryptionKeyArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CreatorRequestId\":{},\"NumberOfRecoveryPoints\":{\"type\":\"long\"}}},\"idempotent\":true},\"DescribeCopyJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/copy-jobs/{copyJobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CopyJobId\"],\"members\":{\"CopyJobId\":{\"location\":\"uri\",\"locationName\":\"copyJobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopyJob\":{\"shape\":\"S1m\"}}},\"idempotent\":true},\"DescribeGlobalSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-settings\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalSettings\":{\"shape\":\"S1q\"},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"DescribeProtectedResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/resources/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceType\":{},\"LastBackupTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeRecoveryPoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"RecoveryPointArn\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"RecoveryPointArn\":{\"location\":\"uri\",\"locationName\":\"recoveryPointArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecoveryPointArn\":{},\"BackupVaultName\":{},\"BackupVaultArn\":{},\"SourceBackupVaultArn\":{},\"ResourceArn\":{},\"ResourceType\":{},\"CreatedBy\":{\"shape\":\"S1g\"},\"IamRoleArn\":{},\"Status\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"BackupSizeInBytes\":{\"type\":\"long\"},\"CalculatedLifecycle\":{\"shape\":\"S1y\"},\"Lifecycle\":{\"shape\":\"Sa\"},\"EncryptionKeyArn\":{},\"IsEncrypted\":{\"type\":\"boolean\"},\"StorageClass\":{},\"LastRestoreTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeRegionSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/account-settings\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceTypeOptInPreference\":{\"shape\":\"S23\"}}}},\"DescribeRestoreJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restore-jobs/{restoreJobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"RestoreJobId\"],\"members\":{\"RestoreJobId\":{\"location\":\"uri\",\"locationName\":\"restoreJobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"RestoreJobId\":{},\"RecoveryPointArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusMessage\":{},\"PercentDone\":{},\"BackupSizeInBytes\":{\"type\":\"long\"},\"IamRoleArn\":{},\"ExpectedCompletionTimeMinutes\":{\"type\":\"long\"},\"CreatedResourceArn\":{},\"ResourceType\":{}}},\"idempotent\":true},\"DisassociateRecoveryPoint\":{\"http\":{\"requestUri\":\"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/disassociate\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"RecoveryPointArn\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"RecoveryPointArn\":{\"location\":\"uri\",\"locationName\":\"recoveryPointArn\"}}}},\"ExportBackupPlanTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/plans/{backupPlanId}/toTemplate/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlanTemplateJson\":{}}}},\"GetBackupPlan\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/plans/{backupPlanId}/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlan\":{\"shape\":\"S2e\"},\"BackupPlanId\":{},\"BackupPlanArn\":{},\"VersionId\":{},\"CreatorRequestId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"DeletionDate\":{\"type\":\"timestamp\"},\"LastExecutionDate\":{\"type\":\"timestamp\"},\"AdvancedBackupSettings\":{\"shape\":\"Sj\"}}},\"idempotent\":true},\"GetBackupPlanFromJSON\":{\"http\":{\"requestUri\":\"/backup/template/json/toPlan\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanTemplateJson\"],\"members\":{\"BackupPlanTemplateJson\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlan\":{\"shape\":\"S2e\"}}}},\"GetBackupPlanFromTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/template/plans/{templateId}/toPlan\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanTemplateId\"],\"members\":{\"BackupPlanTemplateId\":{\"location\":\"uri\",\"locationName\":\"templateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlanDocument\":{\"shape\":\"S2e\"}}}},\"GetBackupSelection\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/plans/{backupPlanId}/selections/{selectionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\",\"SelectionId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"SelectionId\":{\"location\":\"uri\",\"locationName\":\"selectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupSelection\":{\"shape\":\"St\"},\"SelectionId\":{},\"BackupPlanId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CreatorRequestId\":{}}},\"idempotent\":true},\"GetBackupVaultAccessPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/{backupVaultName}/access-policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultName\":{},\"BackupVaultArn\":{},\"Policy\":{}}},\"idempotent\":true},\"GetBackupVaultNotifications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/{backupVaultName}/notification-configuration\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultName\":{},\"BackupVaultArn\":{},\"SNSTopicArn\":{},\"BackupVaultEvents\":{\"shape\":\"S2s\"}}},\"idempotent\":true},\"GetRecoveryPointRestoreMetadata\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/restore-metadata\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"RecoveryPointArn\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"RecoveryPointArn\":{\"location\":\"uri\",\"locationName\":\"recoveryPointArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultArn\":{},\"RecoveryPointArn\":{},\"RestoreMetadata\":{\"shape\":\"S2w\"}}},\"idempotent\":true},\"GetSupportedResourceTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/supported-resource-types\"},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceTypes\":{\"type\":\"list\",\"member\":{}}}}},\"ListBackupJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-jobs/\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"ByResourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"ByState\":{\"location\":\"querystring\",\"locationName\":\"state\"},\"ByBackupVaultName\":{\"location\":\"querystring\",\"locationName\":\"backupVaultName\"},\"ByCreatedBefore\":{\"location\":\"querystring\",\"locationName\":\"createdBefore\",\"type\":\"timestamp\"},\"ByCreatedAfter\":{\"location\":\"querystring\",\"locationName\":\"createdAfter\",\"type\":\"timestamp\"},\"ByResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"ByAccountId\":{\"location\":\"querystring\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"BackupJobId\":{},\"BackupVaultName\":{},\"BackupVaultArn\":{},\"RecoveryPointArn\":{},\"ResourceArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"State\":{},\"StatusMessage\":{},\"PercentDone\":{},\"BackupSizeInBytes\":{\"type\":\"long\"},\"IamRoleArn\":{},\"CreatedBy\":{\"shape\":\"S1g\"},\"ExpectedCompletionDate\":{\"type\":\"timestamp\"},\"StartBy\":{\"type\":\"timestamp\"},\"ResourceType\":{},\"BytesTransferred\":{\"type\":\"long\"},\"BackupOptions\":{\"shape\":\"Sm\"},\"BackupType\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListBackupPlanTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/template/plans\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"BackupPlanTemplatesList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BackupPlanTemplateId\":{},\"BackupPlanTemplateName\":{}}}}}}},\"ListBackupPlanVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/plans/{backupPlanId}/versions/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"BackupPlanVersionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3d\"}}}},\"idempotent\":true},\"ListBackupPlans\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/plans/\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"IncludeDeleted\":{\"location\":\"querystring\",\"locationName\":\"includeDeleted\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"BackupPlansList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3d\"}}}},\"idempotent\":true},\"ListBackupSelections\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup/plans/{backupPlanId}/selections/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"BackupSelectionsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SelectionId\":{},\"SelectionName\":{},\"BackupPlanId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CreatorRequestId\":{},\"IamRoleArn\":{}}}}}},\"idempotent\":true},\"ListBackupVaults\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BackupVaultName\":{},\"BackupVaultArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"EncryptionKeyArn\":{},\"CreatorRequestId\":{},\"NumberOfRecoveryPoints\":{\"type\":\"long\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListCopyJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/copy-jobs/\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"ByResourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"ByState\":{\"location\":\"querystring\",\"locationName\":\"state\"},\"ByCreatedBefore\":{\"location\":\"querystring\",\"locationName\":\"createdBefore\",\"type\":\"timestamp\"},\"ByCreatedAfter\":{\"location\":\"querystring\",\"locationName\":\"createdAfter\",\"type\":\"timestamp\"},\"ByResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"ByDestinationVaultArn\":{\"location\":\"querystring\",\"locationName\":\"destinationVaultArn\"},\"ByAccountId\":{\"location\":\"querystring\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopyJobs\":{\"type\":\"list\",\"member\":{\"shape\":\"S1m\"}},\"NextToken\":{}}}},\"ListProtectedResources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/resources/\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceType\":{},\"LastBackupTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListRecoveryPointsByBackupVault\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/backup-vaults/{backupVaultName}/recovery-points/\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"ByResourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"ByResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"ByBackupPlanId\":{\"location\":\"querystring\",\"locationName\":\"backupPlanId\"},\"ByCreatedBefore\":{\"location\":\"querystring\",\"locationName\":\"createdBefore\",\"type\":\"timestamp\"},\"ByCreatedAfter\":{\"location\":\"querystring\",\"locationName\":\"createdAfter\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"RecoveryPoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RecoveryPointArn\":{},\"BackupVaultName\":{},\"BackupVaultArn\":{},\"SourceBackupVaultArn\":{},\"ResourceArn\":{},\"ResourceType\":{},\"CreatedBy\":{\"shape\":\"S1g\"},\"IamRoleArn\":{},\"Status\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"BackupSizeInBytes\":{\"type\":\"long\"},\"CalculatedLifecycle\":{\"shape\":\"S1y\"},\"Lifecycle\":{\"shape\":\"Sa\"},\"EncryptionKeyArn\":{},\"IsEncrypted\":{\"type\":\"boolean\"},\"LastRestoreTime\":{\"type\":\"timestamp\"}}}}}},\"idempotent\":true},\"ListRecoveryPointsByResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/resources/{resourceArn}/recovery-points/\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"RecoveryPoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RecoveryPointArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"Status\":{},\"EncryptionKeyArn\":{},\"BackupSizeBytes\":{\"type\":\"long\"},\"BackupVaultName\":{}}}}}},\"idempotent\":true},\"ListRestoreJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/restore-jobs/\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"ByAccountId\":{\"location\":\"querystring\",\"locationName\":\"accountId\"},\"ByCreatedBefore\":{\"location\":\"querystring\",\"locationName\":\"createdBefore\",\"type\":\"timestamp\"},\"ByCreatedAfter\":{\"location\":\"querystring\",\"locationName\":\"createdAfter\",\"type\":\"timestamp\"},\"ByStatus\":{\"location\":\"querystring\",\"locationName\":\"status\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RestoreJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"RestoreJobId\":{},\"RecoveryPointArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusMessage\":{},\"PercentDone\":{},\"BackupSizeInBytes\":{\"type\":\"long\"},\"IamRoleArn\":{},\"ExpectedCompletionTimeMinutes\":{\"type\":\"long\"},\"CreatedResourceArn\":{},\"ResourceType\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}/\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"idempotent\":true},\"PutBackupVaultAccessPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/backup-vaults/{backupVaultName}/access-policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"Policy\":{}}},\"idempotent\":true},\"PutBackupVaultNotifications\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/backup-vaults/{backupVaultName}/notification-configuration\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"SNSTopicArn\",\"BackupVaultEvents\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"SNSTopicArn\":{},\"BackupVaultEvents\":{\"shape\":\"S2s\"}}},\"idempotent\":true},\"StartBackupJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/backup-jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"ResourceArn\",\"IamRoleArn\"],\"members\":{\"BackupVaultName\":{},\"ResourceArn\":{},\"IamRoleArn\":{},\"IdempotencyToken\":{},\"StartWindowMinutes\":{\"type\":\"long\"},\"CompleteWindowMinutes\":{\"type\":\"long\"},\"Lifecycle\":{\"shape\":\"Sa\"},\"RecoveryPointTags\":{\"shape\":\"Sc\"},\"BackupOptions\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupJobId\":{},\"RecoveryPointArn\":{},\"CreationDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"StartCopyJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/copy-jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"RecoveryPointArn\",\"SourceBackupVaultName\",\"DestinationBackupVaultArn\",\"IamRoleArn\"],\"members\":{\"RecoveryPointArn\":{},\"SourceBackupVaultName\":{},\"DestinationBackupVaultArn\":{},\"IamRoleArn\":{},\"IdempotencyToken\":{},\"Lifecycle\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopyJobId\":{},\"CreationDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"StartRestoreJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/restore-jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"RecoveryPointArn\",\"Metadata\",\"IamRoleArn\"],\"members\":{\"RecoveryPointArn\":{},\"Metadata\":{\"shape\":\"S2w\"},\"IamRoleArn\":{},\"IdempotencyToken\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RestoreJobId\":{}}},\"idempotent\":true},\"StopBackupJob\":{\"http\":{\"requestUri\":\"/backup-jobs/{backupJobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupJobId\"],\"members\":{\"BackupJobId\":{\"location\":\"uri\",\"locationName\":\"backupJobId\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sc\"}}},\"idempotent\":true},\"UntagResource\":{\"http\":{\"requestUri\":\"/untag/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeyList\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeyList\":{\"type\":\"list\",\"member\":{},\"sensitive\":true}}},\"idempotent\":true},\"UpdateBackupPlan\":{\"http\":{\"requestUri\":\"/backup/plans/{backupPlanId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupPlanId\",\"BackupPlan\"],\"members\":{\"BackupPlanId\":{\"location\":\"uri\",\"locationName\":\"backupPlanId\"},\"BackupPlan\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupPlanId\":{},\"BackupPlanArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"VersionId\":{},\"AdvancedBackupSettings\":{\"shape\":\"Sj\"}}},\"idempotent\":true},\"UpdateGlobalSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/global-settings\"},\"input\":{\"type\":\"structure\",\"members\":{\"GlobalSettings\":{\"shape\":\"S1q\"}}}},\"UpdateRecoveryPointLifecycle\":{\"http\":{\"requestUri\":\"/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"BackupVaultName\",\"RecoveryPointArn\"],\"members\":{\"BackupVaultName\":{\"location\":\"uri\",\"locationName\":\"backupVaultName\"},\"RecoveryPointArn\":{\"location\":\"uri\",\"locationName\":\"recoveryPointArn\"},\"Lifecycle\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupVaultArn\":{},\"RecoveryPointArn\":{},\"Lifecycle\":{\"shape\":\"Sa\"},\"CalculatedLifecycle\":{\"shape\":\"S1y\"}}},\"idempotent\":true},\"UpdateRegionSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/account-settings\"},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceTypeOptInPreference\":{\"shape\":\"S23\"}}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"BackupPlanName\",\"Rules\"],\"members\":{\"BackupPlanName\":{},\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleName\",\"TargetBackupVaultName\"],\"members\":{\"RuleName\":{},\"TargetBackupVaultName\":{},\"ScheduleExpression\":{},\"StartWindowMinutes\":{\"type\":\"long\"},\"CompletionWindowMinutes\":{\"type\":\"long\"},\"Lifecycle\":{\"shape\":\"Sa\"},\"RecoveryPointTags\":{\"shape\":\"Sc\"},\"CopyActions\":{\"shape\":\"Sf\"},\"EnableContinuousBackup\":{\"type\":\"boolean\"}}}},\"AdvancedBackupSettings\":{\"shape\":\"Sj\"}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"MoveToColdStorageAfterDays\":{\"type\":\"long\"},\"DeleteAfterDays\":{\"type\":\"long\"}}},\"Sc\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DestinationBackupVaultArn\"],\"members\":{\"Lifecycle\":{\"shape\":\"Sa\"},\"DestinationBackupVaultArn\":{}}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"BackupOptions\":{\"shape\":\"Sm\"}}}},\"Sm\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"St\":{\"type\":\"structure\",\"required\":[\"SelectionName\",\"IamRoleArn\"],\"members\":{\"SelectionName\":{},\"IamRoleArn\":{},\"Resources\":{\"type\":\"list\",\"member\":{}},\"ListOfTags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConditionType\",\"ConditionKey\",\"ConditionValue\"],\"members\":{\"ConditionType\":{},\"ConditionKey\":{},\"ConditionValue\":{}}}}}},\"S1g\":{\"type\":\"structure\",\"members\":{\"BackupPlanId\":{},\"BackupPlanArn\":{},\"BackupPlanVersion\":{},\"BackupRuleId\":{}}},\"S1m\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"CopyJobId\":{},\"SourceBackupVaultArn\":{},\"SourceRecoveryPointArn\":{},\"DestinationBackupVaultArn\":{},\"DestinationRecoveryPointArn\":{},\"ResourceArn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"State\":{},\"StatusMessage\":{},\"BackupSizeInBytes\":{\"type\":\"long\"},\"IamRoleArn\":{},\"CreatedBy\":{\"shape\":\"S1g\"},\"ResourceType\":{}}},\"S1q\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1y\":{\"type\":\"structure\",\"members\":{\"MoveToColdStorageAt\":{\"type\":\"timestamp\"},\"DeleteAt\":{\"type\":\"timestamp\"}}},\"S23\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"boolean\"}},\"S2e\":{\"type\":\"structure\",\"required\":[\"BackupPlanName\",\"Rules\"],\"members\":{\"BackupPlanName\":{},\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleName\",\"TargetBackupVaultName\"],\"members\":{\"RuleName\":{},\"TargetBackupVaultName\":{},\"ScheduleExpression\":{},\"StartWindowMinutes\":{\"type\":\"long\"},\"CompletionWindowMinutes\":{\"type\":\"long\"},\"Lifecycle\":{\"shape\":\"Sa\"},\"RecoveryPointTags\":{\"shape\":\"Sc\"},\"RuleId\":{},\"CopyActions\":{\"shape\":\"Sf\"},\"EnableContinuousBackup\":{\"type\":\"boolean\"}}}},\"AdvancedBackupSettings\":{\"shape\":\"Sj\"}}},\"S2s\":{\"type\":\"list\",\"member\":{}},\"S2w\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"S3d\":{\"type\":\"structure\",\"members\":{\"BackupPlanArn\":{},\"BackupPlanId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"DeletionDate\":{\"type\":\"timestamp\"},\"VersionId\":{},\"BackupPlanName\":{},\"CreatorRequestId\":{},\"LastExecutionDate\":{\"type\":\"timestamp\"},\"AdvancedBackupSettings\":{\"shape\":\"Sj\"}}}}}");

/***/ }),

/***/ 61080:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBackupJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBackupPlanTemplates\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBackupPlanVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBackupPlans\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBackupSelections\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBackupVaults\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListCopyJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListProtectedResources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRecoveryPointsByBackupVault\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRecoveryPointsByResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRestoreJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTags\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 97171:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-08-10\",\"endpointPrefix\":\"batch\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWS Batch\",\"serviceFullName\":\"AWS Batch\",\"serviceId\":\"Batch\",\"signatureVersion\":\"v4\",\"uid\":\"batch-2016-08-10\"},\"operations\":{\"CancelJob\":{\"http\":{\"requestUri\":\"/v1/canceljob\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"reason\"],\"members\":{\"jobId\":{},\"reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateComputeEnvironment\":{\"http\":{\"requestUri\":\"/v1/createcomputeenvironment\"},\"input\":{\"type\":\"structure\",\"required\":[\"computeEnvironmentName\",\"type\"],\"members\":{\"computeEnvironmentName\":{},\"type\":{},\"state\":{},\"computeResources\":{\"shape\":\"S7\"},\"serviceRole\":{},\"tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"computeEnvironmentName\":{},\"computeEnvironmentArn\":{}}}},\"CreateJobQueue\":{\"http\":{\"requestUri\":\"/v1/createjobqueue\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobQueueName\",\"priority\",\"computeEnvironmentOrder\"],\"members\":{\"jobQueueName\":{},\"state\":{},\"priority\":{\"type\":\"integer\"},\"computeEnvironmentOrder\":{\"shape\":\"So\"},\"tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobQueueName\",\"jobQueueArn\"],\"members\":{\"jobQueueName\":{},\"jobQueueArn\":{}}}},\"DeleteComputeEnvironment\":{\"http\":{\"requestUri\":\"/v1/deletecomputeenvironment\"},\"input\":{\"type\":\"structure\",\"required\":[\"computeEnvironment\"],\"members\":{\"computeEnvironment\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteJobQueue\":{\"http\":{\"requestUri\":\"/v1/deletejobqueue\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobQueue\"],\"members\":{\"jobQueue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterJobDefinition\":{\"http\":{\"requestUri\":\"/v1/deregisterjobdefinition\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobDefinition\"],\"members\":{\"jobDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeComputeEnvironments\":{\"http\":{\"requestUri\":\"/v1/describecomputeenvironments\"},\"input\":{\"type\":\"structure\",\"members\":{\"computeEnvironments\":{\"shape\":\"Sb\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"computeEnvironments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"computeEnvironmentName\",\"computeEnvironmentArn\",\"ecsClusterArn\"],\"members\":{\"computeEnvironmentName\":{},\"computeEnvironmentArn\":{},\"ecsClusterArn\":{},\"tags\":{\"shape\":\"Si\"},\"type\":{},\"state\":{},\"status\":{},\"statusReason\":{},\"computeResources\":{\"shape\":\"S7\"},\"serviceRole\":{}}}},\"nextToken\":{}}}},\"DescribeJobDefinitions\":{\"http\":{\"requestUri\":\"/v1/describejobdefinitions\"},\"input\":{\"type\":\"structure\",\"members\":{\"jobDefinitions\":{\"shape\":\"Sb\"},\"maxResults\":{\"type\":\"integer\"},\"jobDefinitionName\":{},\"status\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobDefinitions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jobDefinitionName\",\"jobDefinitionArn\",\"revision\",\"type\"],\"members\":{\"jobDefinitionName\":{},\"jobDefinitionArn\":{},\"revision\":{\"type\":\"integer\"},\"status\":{},\"type\":{},\"parameters\":{\"shape\":\"S16\"},\"retryStrategy\":{\"shape\":\"S17\"},\"containerProperties\":{\"shape\":\"S1b\"},\"timeout\":{\"shape\":\"S28\"},\"nodeProperties\":{\"shape\":\"S29\"},\"tags\":{\"shape\":\"Si\"},\"propagateTags\":{\"type\":\"boolean\"},\"platformCapabilities\":{\"shape\":\"S2c\"}}}},\"nextToken\":{}}}},\"DescribeJobQueues\":{\"http\":{\"requestUri\":\"/v1/describejobqueues\"},\"input\":{\"type\":\"structure\",\"members\":{\"jobQueues\":{\"shape\":\"Sb\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobQueues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jobQueueName\",\"jobQueueArn\",\"state\",\"priority\",\"computeEnvironmentOrder\"],\"members\":{\"jobQueueName\":{},\"jobQueueArn\":{},\"state\":{},\"status\":{},\"statusReason\":{},\"priority\":{\"type\":\"integer\"},\"computeEnvironmentOrder\":{\"shape\":\"So\"},\"tags\":{\"shape\":\"Si\"}}}},\"nextToken\":{}}}},\"DescribeJobs\":{\"http\":{\"requestUri\":\"/v1/describejobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobs\"],\"members\":{\"jobs\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jobName\",\"jobId\",\"jobQueue\",\"status\",\"startedAt\",\"jobDefinition\"],\"members\":{\"jobArn\":{},\"jobName\":{},\"jobId\":{},\"jobQueue\":{},\"status\":{},\"attempts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"container\":{\"type\":\"structure\",\"members\":{\"containerInstanceArn\":{},\"taskArn\":{},\"exitCode\":{\"type\":\"integer\"},\"reason\":{},\"logStreamName\":{},\"networkInterfaces\":{\"shape\":\"S2r\"}}},\"startedAt\":{\"type\":\"long\"},\"stoppedAt\":{\"type\":\"long\"},\"statusReason\":{}}}},\"statusReason\":{},\"createdAt\":{\"type\":\"long\"},\"retryStrategy\":{\"shape\":\"S17\"},\"startedAt\":{\"type\":\"long\"},\"stoppedAt\":{\"type\":\"long\"},\"dependsOn\":{\"shape\":\"S2u\"},\"jobDefinition\":{},\"parameters\":{\"shape\":\"S16\"},\"container\":{\"type\":\"structure\",\"members\":{\"image\":{},\"vcpus\":{\"type\":\"integer\"},\"memory\":{\"type\":\"integer\"},\"command\":{\"shape\":\"Sb\"},\"jobRoleArn\":{},\"executionRoleArn\":{},\"volumes\":{\"shape\":\"S1c\"},\"environment\":{\"shape\":\"S1j\"},\"mountPoints\":{\"shape\":\"S1l\"},\"readonlyRootFilesystem\":{\"type\":\"boolean\"},\"ulimits\":{\"shape\":\"S1o\"},\"privileged\":{\"type\":\"boolean\"},\"user\":{},\"exitCode\":{\"type\":\"integer\"},\"reason\":{},\"containerInstanceArn\":{},\"taskArn\":{},\"logStreamName\":{},\"instanceType\":{},\"networkInterfaces\":{\"shape\":\"S2r\"},\"resourceRequirements\":{\"shape\":\"S1q\"},\"linuxParameters\":{\"shape\":\"S1t\"},\"logConfiguration\":{\"shape\":\"S20\"},\"secrets\":{\"shape\":\"S23\"},\"networkConfiguration\":{\"shape\":\"S25\"},\"fargatePlatformConfiguration\":{\"shape\":\"S27\"}}},\"nodeDetails\":{\"type\":\"structure\",\"members\":{\"nodeIndex\":{\"type\":\"integer\"},\"isMainNode\":{\"type\":\"boolean\"}}},\"nodeProperties\":{\"shape\":\"S29\"},\"arrayProperties\":{\"type\":\"structure\",\"members\":{\"statusSummary\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"size\":{\"type\":\"integer\"},\"index\":{\"type\":\"integer\"}}},\"timeout\":{\"shape\":\"S28\"},\"tags\":{\"shape\":\"Si\"},\"propagateTags\":{\"type\":\"boolean\"},\"platformCapabilities\":{\"shape\":\"S2c\"}}}}}}},\"ListJobs\":{\"http\":{\"requestUri\":\"/v1/listjobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"jobQueue\":{},\"arrayJobId\":{},\"multiNodeJobId\":{},\"jobStatus\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobSummaryList\"],\"members\":{\"jobSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jobId\",\"jobName\"],\"members\":{\"jobArn\":{},\"jobId\":{},\"jobName\":{},\"createdAt\":{\"type\":\"long\"},\"status\":{},\"statusReason\":{},\"startedAt\":{\"type\":\"long\"},\"stoppedAt\":{\"type\":\"long\"},\"container\":{\"type\":\"structure\",\"members\":{\"exitCode\":{\"type\":\"integer\"},\"reason\":{}}},\"arrayProperties\":{\"type\":\"structure\",\"members\":{\"size\":{\"type\":\"integer\"},\"index\":{\"type\":\"integer\"}}},\"nodeProperties\":{\"type\":\"structure\",\"members\":{\"isMainNode\":{\"type\":\"boolean\"},\"numNodes\":{\"type\":\"integer\"},\"nodeIndex\":{\"type\":\"integer\"}}}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Si\"}}}},\"RegisterJobDefinition\":{\"http\":{\"requestUri\":\"/v1/registerjobdefinition\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobDefinitionName\",\"type\"],\"members\":{\"jobDefinitionName\":{},\"type\":{},\"parameters\":{\"shape\":\"S16\"},\"containerProperties\":{\"shape\":\"S1b\"},\"nodeProperties\":{\"shape\":\"S29\"},\"retryStrategy\":{\"shape\":\"S17\"},\"propagateTags\":{\"type\":\"boolean\"},\"timeout\":{\"shape\":\"S28\"},\"tags\":{\"shape\":\"Si\"},\"platformCapabilities\":{\"shape\":\"S2c\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobDefinitionName\",\"jobDefinitionArn\",\"revision\"],\"members\":{\"jobDefinitionName\":{},\"jobDefinitionArn\":{},\"revision\":{\"type\":\"integer\"}}}},\"SubmitJob\":{\"http\":{\"requestUri\":\"/v1/submitjob\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobName\",\"jobQueue\",\"jobDefinition\"],\"members\":{\"jobName\":{},\"jobQueue\":{},\"arrayProperties\":{\"type\":\"structure\",\"members\":{\"size\":{\"type\":\"integer\"}}},\"dependsOn\":{\"shape\":\"S2u\"},\"jobDefinition\":{},\"parameters\":{\"shape\":\"S16\"},\"containerOverrides\":{\"shape\":\"S3f\"},\"nodeOverrides\":{\"type\":\"structure\",\"members\":{\"numNodes\":{\"type\":\"integer\"},\"nodePropertyOverrides\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"targetNodes\"],\"members\":{\"targetNodes\":{},\"containerOverrides\":{\"shape\":\"S3f\"}}}}}},\"retryStrategy\":{\"shape\":\"S17\"},\"propagateTags\":{\"type\":\"boolean\"},\"timeout\":{\"shape\":\"S28\"},\"tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobName\",\"jobId\"],\"members\":{\"jobArn\":{},\"jobName\":{},\"jobId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v1/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TerminateJob\":{\"http\":{\"requestUri\":\"/v1/terminatejob\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"reason\"],\"members\":{\"jobId\":{},\"reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateComputeEnvironment\":{\"http\":{\"requestUri\":\"/v1/updatecomputeenvironment\"},\"input\":{\"type\":\"structure\",\"required\":[\"computeEnvironment\"],\"members\":{\"computeEnvironment\":{},\"state\":{},\"computeResources\":{\"type\":\"structure\",\"members\":{\"minvCpus\":{\"type\":\"integer\"},\"maxvCpus\":{\"type\":\"integer\"},\"desiredvCpus\":{\"type\":\"integer\"},\"subnets\":{\"shape\":\"Sb\"},\"securityGroupIds\":{\"shape\":\"Sb\"}}},\"serviceRole\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"computeEnvironmentName\":{},\"computeEnvironmentArn\":{}}}},\"UpdateJobQueue\":{\"http\":{\"requestUri\":\"/v1/updatejobqueue\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobQueue\"],\"members\":{\"jobQueue\":{},\"state\":{},\"priority\":{\"type\":\"integer\"},\"computeEnvironmentOrder\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobQueueName\":{},\"jobQueueArn\":{}}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"required\":[\"type\",\"maxvCpus\",\"subnets\"],\"members\":{\"type\":{},\"allocationStrategy\":{},\"minvCpus\":{\"type\":\"integer\"},\"maxvCpus\":{\"type\":\"integer\"},\"desiredvCpus\":{\"type\":\"integer\"},\"instanceTypes\":{\"shape\":\"Sb\"},\"imageId\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use ec2Configuration[].imageIdOverride instead.\"},\"subnets\":{\"shape\":\"Sb\"},\"securityGroupIds\":{\"shape\":\"Sb\"},\"ec2KeyPair\":{},\"instanceRole\":{},\"tags\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"placementGroup\":{},\"bidPercentage\":{\"type\":\"integer\"},\"spotIamFleetRole\":{},\"launchTemplate\":{\"type\":\"structure\",\"members\":{\"launchTemplateId\":{},\"launchTemplateName\":{},\"version\":{}}},\"ec2Configuration\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"imageType\"],\"members\":{\"imageType\":{},\"imageIdOverride\":{}}}}}},\"Sb\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"So\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"order\",\"computeEnvironment\"],\"members\":{\"order\":{\"type\":\"integer\"},\"computeEnvironment\":{}}}},\"S16\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S17\":{\"type\":\"structure\",\"members\":{\"attempts\":{\"type\":\"integer\"},\"evaluateOnExit\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"action\"],\"members\":{\"onStatusReason\":{},\"onReason\":{},\"onExitCode\":{},\"action\":{}}}}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"image\":{},\"vcpus\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use resourceRequirements instead.\",\"type\":\"integer\"},\"memory\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use resourceRequirements instead.\",\"type\":\"integer\"},\"command\":{\"shape\":\"Sb\"},\"jobRoleArn\":{},\"executionRoleArn\":{},\"volumes\":{\"shape\":\"S1c\"},\"environment\":{\"shape\":\"S1j\"},\"mountPoints\":{\"shape\":\"S1l\"},\"readonlyRootFilesystem\":{\"type\":\"boolean\"},\"privileged\":{\"type\":\"boolean\"},\"ulimits\":{\"shape\":\"S1o\"},\"user\":{},\"instanceType\":{},\"resourceRequirements\":{\"shape\":\"S1q\"},\"linuxParameters\":{\"shape\":\"S1t\"},\"logConfiguration\":{\"shape\":\"S20\"},\"secrets\":{\"shape\":\"S23\"},\"networkConfiguration\":{\"shape\":\"S25\"},\"fargatePlatformConfiguration\":{\"shape\":\"S27\"}}},\"S1c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"host\":{\"type\":\"structure\",\"members\":{\"sourcePath\":{}}},\"name\":{},\"efsVolumeConfiguration\":{\"type\":\"structure\",\"required\":[\"fileSystemId\"],\"members\":{\"fileSystemId\":{},\"rootDirectory\":{},\"transitEncryption\":{},\"transitEncryptionPort\":{\"type\":\"integer\"},\"authorizationConfig\":{\"type\":\"structure\",\"members\":{\"accessPointId\":{},\"iam\":{}}}}}}}},\"S1j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"containerPath\":{},\"readOnly\":{\"type\":\"boolean\"},\"sourceVolume\":{}}}},\"S1o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"hardLimit\",\"name\",\"softLimit\"],\"members\":{\"hardLimit\":{\"type\":\"integer\"},\"name\":{},\"softLimit\":{\"type\":\"integer\"}}}},\"S1q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"value\",\"type\"],\"members\":{\"value\":{},\"type\":{}}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"devices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"hostPath\"],\"members\":{\"hostPath\":{},\"containerPath\":{},\"permissions\":{\"type\":\"list\",\"member\":{}}}}},\"initProcessEnabled\":{\"type\":\"boolean\"},\"sharedMemorySize\":{\"type\":\"integer\"},\"tmpfs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"containerPath\",\"size\"],\"members\":{\"containerPath\":{},\"size\":{\"type\":\"integer\"},\"mountOptions\":{\"shape\":\"Sb\"}}}},\"maxSwap\":{\"type\":\"integer\"},\"swappiness\":{\"type\":\"integer\"}}},\"S20\":{\"type\":\"structure\",\"required\":[\"logDriver\"],\"members\":{\"logDriver\":{},\"options\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"secretOptions\":{\"shape\":\"S23\"}}},\"S23\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"valueFrom\"],\"members\":{\"name\":{},\"valueFrom\":{}}}},\"S25\":{\"type\":\"structure\",\"members\":{\"assignPublicIp\":{}}},\"S27\":{\"type\":\"structure\",\"members\":{\"platformVersion\":{}}},\"S28\":{\"type\":\"structure\",\"members\":{\"attemptDurationSeconds\":{\"type\":\"integer\"}}},\"S29\":{\"type\":\"structure\",\"required\":[\"numNodes\",\"mainNode\",\"nodeRangeProperties\"],\"members\":{\"numNodes\":{\"type\":\"integer\"},\"mainNode\":{\"type\":\"integer\"},\"nodeRangeProperties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"targetNodes\"],\"members\":{\"targetNodes\":{},\"container\":{\"shape\":\"S1b\"}}}}}},\"S2c\":{\"type\":\"list\",\"member\":{}},\"S2r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"attachmentId\":{},\"ipv6Address\":{},\"privateIpv4Address\":{}}}},\"S2u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"type\":{}}}},\"S3f\":{\"type\":\"structure\",\"members\":{\"vcpus\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use resourceRequirements instead.\",\"type\":\"integer\"},\"memory\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use resourceRequirements instead.\",\"type\":\"integer\"},\"command\":{\"shape\":\"Sb\"},\"instanceType\":{},\"environment\":{\"shape\":\"S1j\"},\"resourceRequirements\":{\"shape\":\"S1q\"}}}}}");

/***/ }),

/***/ 27755:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeComputeEnvironments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"computeEnvironments\"},\"DescribeJobDefinitions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"jobDefinitions\"},\"DescribeJobQueues\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"jobQueues\"},\"ListJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"jobSummaryList\"}}}");

/***/ }),

/***/ 44714:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-09-01\",\"endpointPrefix\":\"braket\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Braket\",\"serviceId\":\"Braket\",\"signatureVersion\":\"v4\",\"signingName\":\"braket\",\"uid\":\"braket-2019-09-01\"},\"operations\":{\"CancelQuantumTask\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/quantum-task/{quantumTaskArn}/cancel\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"clientToken\",\"quantumTaskArn\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"quantumTaskArn\":{\"location\":\"uri\",\"locationName\":\"quantumTaskArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"cancellationStatus\",\"quantumTaskArn\"],\"members\":{\"cancellationStatus\":{},\"quantumTaskArn\":{}}},\"idempotent\":true},\"CreateQuantumTask\":{\"http\":{\"requestUri\":\"/quantum-task\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"action\",\"clientToken\",\"deviceArn\",\"outputS3Bucket\",\"outputS3KeyPrefix\",\"shots\"],\"members\":{\"action\":{\"jsonvalue\":true},\"clientToken\":{\"idempotencyToken\":true},\"deviceArn\":{},\"deviceParameters\":{\"jsonvalue\":true},\"outputS3Bucket\":{},\"outputS3KeyPrefix\":{},\"shots\":{\"type\":\"long\"},\"tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"quantumTaskArn\"],\"members\":{\"quantumTaskArn\":{}}}},\"GetDevice\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/device/{deviceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"deviceArn\"],\"members\":{\"deviceArn\":{\"location\":\"uri\",\"locationName\":\"deviceArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"deviceArn\",\"deviceCapabilities\",\"deviceName\",\"deviceStatus\",\"deviceType\",\"providerName\"],\"members\":{\"deviceArn\":{},\"deviceCapabilities\":{\"jsonvalue\":true},\"deviceName\":{},\"deviceStatus\":{},\"deviceType\":{},\"providerName\":{}}}},\"GetQuantumTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/quantum-task/{quantumTaskArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"quantumTaskArn\"],\"members\":{\"quantumTaskArn\":{\"location\":\"uri\",\"locationName\":\"quantumTaskArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"createdAt\",\"deviceArn\",\"deviceParameters\",\"outputS3Bucket\",\"outputS3Directory\",\"quantumTaskArn\",\"shots\",\"status\"],\"members\":{\"createdAt\":{\"shape\":\"Sm\"},\"deviceArn\":{},\"deviceParameters\":{\"jsonvalue\":true},\"endedAt\":{\"shape\":\"Sm\"},\"failureReason\":{},\"outputS3Bucket\":{},\"outputS3Directory\":{},\"quantumTaskArn\":{},\"shots\":{\"type\":\"long\"},\"status\":{},\"tags\":{\"shape\":\"Sd\"}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sd\"}}}},\"SearchDevices\":{\"http\":{\"requestUri\":\"/devices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"filters\"],\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\"],\"members\":{\"name\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"devices\"],\"members\":{\"devices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"deviceArn\",\"deviceName\",\"deviceStatus\",\"deviceType\",\"providerName\"],\"members\":{\"deviceArn\":{},\"deviceName\":{},\"deviceStatus\":{},\"deviceType\":{},\"providerName\":{}}}},\"nextToken\":{}}}},\"SearchQuantumTasks\":{\"http\":{\"requestUri\":\"/quantum-tasks\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"filters\"],\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"operator\",\"values\"],\"members\":{\"name\":{},\"operator\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"quantumTasks\"],\"members\":{\"nextToken\":{},\"quantumTasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"createdAt\",\"deviceArn\",\"outputS3Bucket\",\"outputS3Directory\",\"quantumTaskArn\",\"shots\",\"status\"],\"members\":{\"createdAt\":{\"shape\":\"Sm\"},\"deviceArn\":{},\"endedAt\":{\"shape\":\"Sm\"},\"outputS3Bucket\":{},\"outputS3Directory\":{},\"quantumTaskArn\":{},\"shots\":{\"type\":\"long\"},\"status\":{},\"tags\":{\"shape\":\"Sd\"}}}}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true}},\"shapes\":{\"Sd\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sm\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 60058:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"SearchDevices\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"devices\"},\"SearchQuantumTasks\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"quantumTasks\"}}}");

/***/ }),

/***/ 47942:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-10-20\",\"endpointPrefix\":\"budgets\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWSBudgets\",\"serviceFullName\":\"AWS Budgets\",\"serviceId\":\"Budgets\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSBudgetServiceGateway\",\"uid\":\"budgets-2016-10-20\"},\"operations\":{\"CreateBudget\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Budget\"],\"members\":{\"AccountId\":{},\"Budget\":{\"shape\":\"S3\"},\"NotificationsWithSubscribers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Notification\",\"Subscribers\"],\"members\":{\"Notification\":{\"shape\":\"Sl\"},\"Subscribers\":{\"shape\":\"Sr\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateBudgetAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"NotificationType\",\"ActionType\",\"ActionThreshold\",\"Definition\",\"ExecutionRoleArn\",\"ApprovalModel\",\"Subscribers\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"NotificationType\":{},\"ActionType\":{},\"ActionThreshold\":{\"shape\":\"Sy\"},\"Definition\":{\"shape\":\"Sz\"},\"ExecutionRoleArn\":{},\"ApprovalModel\":{},\"Subscribers\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{}}}},\"CreateNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Notification\",\"Subscribers\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Notification\":{\"shape\":\"Sl\"},\"Subscribers\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateSubscriber\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Notification\",\"Subscriber\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Notification\":{\"shape\":\"Sl\"},\"Subscriber\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteBudget\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\"],\"members\":{\"AccountId\":{},\"BudgetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteBudgetAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Action\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Action\":{\"shape\":\"S1t\"}}}},\"DeleteNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Notification\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Notification\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSubscriber\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Notification\",\"Subscriber\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Notification\":{\"shape\":\"Sl\"},\"Subscriber\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeBudget\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\"],\"members\":{\"AccountId\":{},\"BudgetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Budget\":{\"shape\":\"S3\"}}}},\"DescribeBudgetAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Action\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Action\":{\"shape\":\"S1t\"}}}},\"DescribeBudgetActionHistories\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{},\"TimePeriod\":{\"shape\":\"Sf\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ActionHistories\"],\"members\":{\"ActionHistories\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Timestamp\",\"Status\",\"EventType\",\"ActionHistoryDetails\"],\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"Status\":{},\"EventType\":{},\"ActionHistoryDetails\":{\"type\":\"structure\",\"required\":[\"Message\",\"Action\"],\"members\":{\"Message\":{},\"Action\":{\"shape\":\"S1t\"}}}}}},\"NextToken\":{}}}},\"DescribeBudgetActionsForAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Actions\"],\"members\":{\"Actions\":{\"shape\":\"S2c\"},\"NextToken\":{}}}},\"DescribeBudgetActionsForBudget\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Actions\"],\"members\":{\"Actions\":{\"shape\":\"S2c\"},\"NextToken\":{}}}},\"DescribeBudgetPerformanceHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"TimePeriod\":{\"shape\":\"Sf\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BudgetPerformanceHistory\":{\"type\":\"structure\",\"members\":{\"BudgetName\":{},\"BudgetType\":{},\"CostFilters\":{\"shape\":\"Sa\"},\"CostTypes\":{\"shape\":\"Sc\"},\"TimeUnit\":{},\"BudgetedAndActualAmountsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BudgetedAmount\":{\"shape\":\"S5\"},\"ActualAmount\":{\"shape\":\"S5\"},\"TimePeriod\":{\"shape\":\"Sf\"}}}}}},\"NextToken\":{}}}},\"DescribeBudgets\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Budgets\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"NextToken\":{}}}},\"DescribeNotificationsForBudget\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Notifications\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\"}},\"NextToken\":{}}}},\"DescribeSubscribersForNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Notification\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Notification\":{\"shape\":\"Sl\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Subscribers\":{\"shape\":\"Sr\"},\"NextToken\":{}}}},\"ExecuteBudgetAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\",\"ExecutionType\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{},\"ExecutionType\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\",\"ExecutionType\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{},\"ExecutionType\":{}}}},\"UpdateBudget\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"NewBudget\"],\"members\":{\"AccountId\":{},\"NewBudget\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateBudgetAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"ActionId\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"ActionId\":{},\"NotificationType\":{},\"ActionThreshold\":{\"shape\":\"Sy\"},\"Definition\":{\"shape\":\"Sz\"},\"ExecutionRoleArn\":{},\"ApprovalModel\":{},\"Subscribers\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"OldAction\",\"NewAction\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"OldAction\":{\"shape\":\"S1t\"},\"NewAction\":{\"shape\":\"S1t\"}}}},\"UpdateNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"OldNotification\",\"NewNotification\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"OldNotification\":{\"shape\":\"Sl\"},\"NewNotification\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSubscriber\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BudgetName\",\"Notification\",\"OldSubscriber\",\"NewSubscriber\"],\"members\":{\"AccountId\":{},\"BudgetName\":{},\"Notification\":{\"shape\":\"Sl\"},\"OldSubscriber\":{\"shape\":\"Ss\"},\"NewSubscriber\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"BudgetName\",\"TimeUnit\",\"BudgetType\"],\"members\":{\"BudgetName\":{},\"BudgetLimit\":{\"shape\":\"S5\"},\"PlannedBudgetLimits\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S5\"}},\"CostFilters\":{\"shape\":\"Sa\"},\"CostTypes\":{\"shape\":\"Sc\"},\"TimeUnit\":{},\"TimePeriod\":{\"shape\":\"Sf\"},\"CalculatedSpend\":{\"type\":\"structure\",\"required\":[\"ActualSpend\"],\"members\":{\"ActualSpend\":{\"shape\":\"S5\"},\"ForecastedSpend\":{\"shape\":\"S5\"}}},\"BudgetType\":{},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Amount\",\"Unit\"],\"members\":{\"Amount\":{},\"Unit\":{}}},\"Sa\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"IncludeTax\":{\"type\":\"boolean\"},\"IncludeSubscription\":{\"type\":\"boolean\"},\"UseBlended\":{\"type\":\"boolean\"},\"IncludeRefund\":{\"type\":\"boolean\"},\"IncludeCredit\":{\"type\":\"boolean\"},\"IncludeUpfront\":{\"type\":\"boolean\"},\"IncludeRecurring\":{\"type\":\"boolean\"},\"IncludeOtherSubscription\":{\"type\":\"boolean\"},\"IncludeSupport\":{\"type\":\"boolean\"},\"IncludeDiscount\":{\"type\":\"boolean\"},\"UseAmortized\":{\"type\":\"boolean\"}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"Start\":{\"type\":\"timestamp\"},\"End\":{\"type\":\"timestamp\"}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"NotificationType\",\"ComparisonOperator\",\"Threshold\"],\"members\":{\"NotificationType\":{},\"ComparisonOperator\":{},\"Threshold\":{\"type\":\"double\"},\"ThresholdType\":{},\"NotificationState\":{}}},\"Sr\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}},\"Ss\":{\"type\":\"structure\",\"required\":[\"SubscriptionType\",\"Address\"],\"members\":{\"SubscriptionType\":{},\"Address\":{\"type\":\"string\",\"sensitive\":true}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"ActionThresholdValue\",\"ActionThresholdType\"],\"members\":{\"ActionThresholdValue\":{\"type\":\"double\"},\"ActionThresholdType\":{}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"IamActionDefinition\":{\"type\":\"structure\",\"required\":[\"PolicyArn\"],\"members\":{\"PolicyArn\":{},\"Roles\":{\"type\":\"list\",\"member\":{}},\"Groups\":{\"type\":\"list\",\"member\":{}},\"Users\":{\"type\":\"list\",\"member\":{}}}},\"ScpActionDefinition\":{\"type\":\"structure\",\"required\":[\"PolicyId\",\"TargetIds\"],\"members\":{\"PolicyId\":{},\"TargetIds\":{\"type\":\"list\",\"member\":{}}}},\"SsmActionDefinition\":{\"type\":\"structure\",\"required\":[\"ActionSubType\",\"Region\",\"InstanceIds\"],\"members\":{\"ActionSubType\":{},\"Region\":{},\"InstanceIds\":{\"type\":\"list\",\"member\":{}}}}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"ActionId\",\"BudgetName\",\"NotificationType\",\"ActionType\",\"ActionThreshold\",\"Definition\",\"ExecutionRoleArn\",\"ApprovalModel\",\"Status\",\"Subscribers\"],\"members\":{\"ActionId\":{},\"BudgetName\":{},\"NotificationType\":{},\"ActionType\":{},\"ActionThreshold\":{\"shape\":\"Sy\"},\"Definition\":{\"shape\":\"Sz\"},\"ExecutionRoleArn\":{},\"ApprovalModel\":{},\"Status\":{},\"Subscribers\":{\"shape\":\"Sr\"}}},\"S2c\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}}}}");

/***/ }),

/***/ 64219:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeBudgetActionHistories\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ActionHistories\"},\"DescribeBudgetActionsForAccount\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Actions\"},\"DescribeBudgetActionsForBudget\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Actions\"},\"DescribeBudgetPerformanceHistory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"BudgetPerformanceHistory\"},\"DescribeBudgets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Budgets\"},\"DescribeNotificationsForBudget\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Notifications\"},\"DescribeSubscribersForNotification\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Subscribers\"}}}");

/***/ }),

/***/ 86565:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-25\",\"endpointPrefix\":\"ce\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWS Cost Explorer\",\"serviceFullName\":\"AWS Cost Explorer Service\",\"serviceId\":\"Cost Explorer\",\"signatureVersion\":\"v4\",\"signingName\":\"ce\",\"targetPrefix\":\"AWSInsightsIndexService\",\"uid\":\"ce-2017-10-25\"},\"operations\":{\"CreateAnomalyMonitor\":{\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyMonitor\"],\"members\":{\"AnomalyMonitor\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitorArn\"],\"members\":{\"MonitorArn\":{}}}},\"CreateAnomalySubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"AnomalySubscription\"],\"members\":{\"AnomalySubscription\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\"],\"members\":{\"SubscriptionArn\":{}}}},\"CreateCostCategoryDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RuleVersion\",\"Rules\"],\"members\":{\"Name\":{},\"RuleVersion\":{},\"Rules\":{\"shape\":\"Sz\"},\"DefaultValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CostCategoryArn\":{},\"EffectiveStart\":{}}}},\"DeleteAnomalyMonitor\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitorArn\"],\"members\":{\"MonitorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAnomalySubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\"],\"members\":{\"SubscriptionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCostCategoryDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"CostCategoryArn\"],\"members\":{\"CostCategoryArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CostCategoryArn\":{},\"EffectiveEnd\":{}}}},\"DescribeCostCategoryDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"CostCategoryArn\"],\"members\":{\"CostCategoryArn\":{},\"EffectiveOn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CostCategory\":{\"type\":\"structure\",\"required\":[\"CostCategoryArn\",\"EffectiveStart\",\"Name\",\"RuleVersion\",\"Rules\"],\"members\":{\"CostCategoryArn\":{},\"EffectiveStart\":{},\"EffectiveEnd\":{},\"Name\":{},\"RuleVersion\":{},\"Rules\":{\"shape\":\"Sz\"},\"ProcessingStatus\":{\"shape\":\"S1g\"},\"DefaultValue\":{}}}}}},\"GetAnomalies\":{\"input\":{\"type\":\"structure\",\"required\":[\"DateInterval\"],\"members\":{\"MonitorArn\":{},\"DateInterval\":{\"type\":\"structure\",\"required\":[\"StartDate\"],\"members\":{\"StartDate\":{},\"EndDate\":{}}},\"Feedback\":{},\"TotalImpact\":{\"type\":\"structure\",\"required\":[\"NumericOperator\",\"StartValue\"],\"members\":{\"NumericOperator\":{},\"StartValue\":{\"type\":\"double\"},\"EndValue\":{\"type\":\"double\"}}},\"NextPageToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Anomalies\"],\"members\":{\"Anomalies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AnomalyId\",\"AnomalyScore\",\"Impact\",\"MonitorArn\"],\"members\":{\"AnomalyId\":{},\"AnomalyStartDate\":{},\"AnomalyEndDate\":{},\"DimensionValue\":{},\"RootCauses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Service\":{},\"Region\":{},\"LinkedAccount\":{},\"UsageType\":{}}}},\"AnomalyScore\":{\"type\":\"structure\",\"required\":[\"MaxScore\",\"CurrentScore\"],\"members\":{\"MaxScore\":{\"type\":\"double\"},\"CurrentScore\":{\"type\":\"double\"}}},\"Impact\":{\"type\":\"structure\",\"required\":[\"MaxImpact\"],\"members\":{\"MaxImpact\":{\"type\":\"double\"},\"TotalImpact\":{\"type\":\"double\"}}},\"MonitorArn\":{},\"Feedback\":{}}}},\"NextPageToken\":{}}}},\"GetAnomalyMonitors\":{\"input\":{\"type\":\"structure\",\"members\":{\"MonitorArnList\":{\"shape\":\"Sb\"},\"NextPageToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AnomalyMonitors\"],\"members\":{\"AnomalyMonitors\":{\"type\":\"list\",\"member\":{\"shape\":\"S2\"}},\"NextPageToken\":{}}}},\"GetAnomalySubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionArnList\":{\"shape\":\"Sb\"},\"MonitorArn\":{},\"NextPageToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AnomalySubscriptions\"],\"members\":{\"AnomalySubscriptions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}},\"NextPageToken\":{}}}},\"GetCostAndUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\",\"Granularity\",\"Metrics\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"Metrics\":{\"shape\":\"S28\"},\"GroupBy\":{\"shape\":\"S2a\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextPageToken\":{},\"GroupDefinitions\":{\"shape\":\"S2a\"},\"ResultsByTime\":{\"shape\":\"S2f\"},\"DimensionValueAttributes\":{\"shape\":\"S2q\"}}}},\"GetCostAndUsageWithResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\",\"Granularity\",\"Filter\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"Metrics\":{\"shape\":\"S28\"},\"GroupBy\":{\"shape\":\"S2a\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextPageToken\":{},\"GroupDefinitions\":{\"shape\":\"S2a\"},\"ResultsByTime\":{\"shape\":\"S2f\"},\"DimensionValueAttributes\":{\"shape\":\"S2q\"}}}},\"GetCostCategories\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"SearchString\":{},\"TimePeriod\":{\"shape\":\"S26\"},\"CostCategoryName\":{},\"Filter\":{\"shape\":\"S7\"},\"SortBy\":{\"shape\":\"S2z\"},\"MaxResults\":{\"type\":\"integer\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ReturnSize\",\"TotalSize\"],\"members\":{\"NextPageToken\":{},\"CostCategoryNames\":{\"type\":\"list\",\"member\":{}},\"CostCategoryValues\":{\"shape\":\"S36\"},\"ReturnSize\":{\"type\":\"integer\"},\"TotalSize\":{\"type\":\"integer\"}}}},\"GetCostForecast\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\",\"Metric\",\"Granularity\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Metric\":{},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"PredictionIntervalLevel\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Total\":{\"shape\":\"S2i\"},\"ForecastResultsByTime\":{\"shape\":\"S3b\"}}}},\"GetDimensionValues\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\",\"Dimension\"],\"members\":{\"SearchString\":{},\"TimePeriod\":{\"shape\":\"S26\"},\"Dimension\":{},\"Context\":{},\"Filter\":{\"shape\":\"S7\"},\"SortBy\":{\"shape\":\"S2z\"},\"MaxResults\":{\"type\":\"integer\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DimensionValues\",\"ReturnSize\",\"TotalSize\"],\"members\":{\"DimensionValues\":{\"shape\":\"S2q\"},\"ReturnSize\":{\"type\":\"integer\"},\"TotalSize\":{\"type\":\"integer\"},\"NextPageToken\":{}}}},\"GetReservationCoverage\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"GroupBy\":{\"shape\":\"S2a\"},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"Metrics\":{\"shape\":\"S28\"},\"NextPageToken\":{},\"SortBy\":{\"shape\":\"S30\"},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CoveragesByTime\"],\"members\":{\"CoveragesByTime\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S2s\"},\"Coverage\":{\"shape\":\"S3m\"}}}},\"Total\":{\"shape\":\"S3m\"}}}},\"Total\":{\"shape\":\"S3m\"},\"NextPageToken\":{}}}},\"GetReservationPurchaseRecommendation\":{\"input\":{\"type\":\"structure\",\"required\":[\"Service\"],\"members\":{\"AccountId\":{},\"Service\":{},\"Filter\":{\"shape\":\"S7\"},\"AccountScope\":{},\"LookbackPeriodInDays\":{},\"TermInYears\":{},\"PaymentOption\":{},\"ServiceSpecification\":{\"shape\":\"S44\"},\"PageSize\":{\"type\":\"integer\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"type\":\"structure\",\"members\":{\"RecommendationId\":{},\"GenerationTimestamp\":{}}},\"Recommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountScope\":{},\"LookbackPeriodInDays\":{},\"TermInYears\":{},\"PaymentOption\":{},\"ServiceSpecification\":{\"shape\":\"S44\"},\"RecommendationDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"InstanceDetails\":{\"type\":\"structure\",\"members\":{\"EC2InstanceDetails\":{\"type\":\"structure\",\"members\":{\"Family\":{},\"InstanceType\":{},\"Region\":{},\"AvailabilityZone\":{},\"Platform\":{},\"Tenancy\":{},\"CurrentGeneration\":{\"type\":\"boolean\"},\"SizeFlexEligible\":{\"type\":\"boolean\"}}},\"RDSInstanceDetails\":{\"type\":\"structure\",\"members\":{\"Family\":{},\"InstanceType\":{},\"Region\":{},\"DatabaseEngine\":{},\"DatabaseEdition\":{},\"DeploymentOption\":{},\"LicenseModel\":{},\"CurrentGeneration\":{\"type\":\"boolean\"},\"SizeFlexEligible\":{\"type\":\"boolean\"}}},\"RedshiftInstanceDetails\":{\"type\":\"structure\",\"members\":{\"Family\":{},\"NodeType\":{},\"Region\":{},\"CurrentGeneration\":{\"type\":\"boolean\"},\"SizeFlexEligible\":{\"type\":\"boolean\"}}},\"ElastiCacheInstanceDetails\":{\"type\":\"structure\",\"members\":{\"Family\":{},\"NodeType\":{},\"Region\":{},\"ProductDescription\":{},\"CurrentGeneration\":{\"type\":\"boolean\"},\"SizeFlexEligible\":{\"type\":\"boolean\"}}},\"ESInstanceDetails\":{\"type\":\"structure\",\"members\":{\"InstanceClass\":{},\"InstanceSize\":{},\"Region\":{},\"CurrentGeneration\":{\"type\":\"boolean\"},\"SizeFlexEligible\":{\"type\":\"boolean\"}}}}},\"RecommendedNumberOfInstancesToPurchase\":{},\"RecommendedNormalizedUnitsToPurchase\":{},\"MinimumNumberOfInstancesUsedPerHour\":{},\"MinimumNormalizedUnitsUsedPerHour\":{},\"MaximumNumberOfInstancesUsedPerHour\":{},\"MaximumNormalizedUnitsUsedPerHour\":{},\"AverageNumberOfInstancesUsedPerHour\":{},\"AverageNormalizedUnitsUsedPerHour\":{},\"AverageUtilization\":{},\"EstimatedBreakEvenInMonths\":{},\"CurrencyCode\":{},\"EstimatedMonthlySavingsAmount\":{},\"EstimatedMonthlySavingsPercentage\":{},\"EstimatedMonthlyOnDemandCost\":{},\"EstimatedReservationCostForLookbackPeriod\":{},\"UpfrontCost\":{},\"RecurringStandardMonthlyCost\":{}}}},\"RecommendationSummary\":{\"type\":\"structure\",\"members\":{\"TotalEstimatedMonthlySavingsAmount\":{},\"TotalEstimatedMonthlySavingsPercentage\":{},\"CurrencyCode\":{}}}}}},\"NextPageToken\":{}}}},\"GetReservationUtilization\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"GroupBy\":{\"shape\":\"S2a\"},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"SortBy\":{\"shape\":\"S30\"},\"NextPageToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UtilizationsByTime\"],\"members\":{\"UtilizationsByTime\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Attributes\":{\"shape\":\"S2s\"},\"Utilization\":{\"shape\":\"S4t\"}}}},\"Total\":{\"shape\":\"S4t\"}}}},\"Total\":{\"shape\":\"S4t\"},\"NextPageToken\":{}}}},\"GetRightsizingRecommendation\":{\"input\":{\"type\":\"structure\",\"required\":[\"Service\"],\"members\":{\"Filter\":{\"shape\":\"S7\"},\"Configuration\":{\"shape\":\"S5c\"},\"Service\":{},\"PageSize\":{\"type\":\"integer\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"type\":\"structure\",\"members\":{\"RecommendationId\":{},\"GenerationTimestamp\":{},\"LookbackPeriodInDays\":{},\"AdditionalMetadata\":{}}},\"Summary\":{\"type\":\"structure\",\"members\":{\"TotalRecommendationCount\":{},\"EstimatedTotalMonthlySavingsAmount\":{},\"SavingsCurrencyCode\":{},\"SavingsPercentage\":{}}},\"RightsizingRecommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"CurrentInstance\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"InstanceName\":{},\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"Sf\"}},\"ResourceDetails\":{\"shape\":\"S5l\"},\"ResourceUtilization\":{\"shape\":\"S5n\"},\"ReservationCoveredHoursInLookbackPeriod\":{},\"SavingsPlansCoveredHoursInLookbackPeriod\":{},\"OnDemandHoursInLookbackPeriod\":{},\"TotalRunningHoursInLookbackPeriod\":{},\"MonthlyCost\":{},\"CurrencyCode\":{}}},\"RightsizingType\":{},\"ModifyRecommendationDetail\":{\"type\":\"structure\",\"members\":{\"TargetInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EstimatedMonthlyCost\":{},\"EstimatedMonthlySavings\":{},\"CurrencyCode\":{},\"DefaultTargetInstance\":{\"type\":\"boolean\"},\"ResourceDetails\":{\"shape\":\"S5l\"},\"ExpectedResourceUtilization\":{\"shape\":\"S5n\"}}}}}},\"TerminateRecommendationDetail\":{\"type\":\"structure\",\"members\":{\"EstimatedMonthlySavings\":{},\"CurrencyCode\":{}}}}}},\"NextPageToken\":{},\"Configuration\":{\"shape\":\"S5c\"}}}},\"GetSavingsPlansCoverage\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"GroupBy\":{\"shape\":\"S2a\"},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"Metrics\":{\"shape\":\"S28\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortBy\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"SavingsPlansCoverages\"],\"members\":{\"SavingsPlansCoverages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S2s\"},\"Coverage\":{\"type\":\"structure\",\"members\":{\"SpendCoveredBySavingsPlans\":{},\"OnDemandCost\":{},\"TotalCost\":{},\"CoveragePercentage\":{}}},\"TimePeriod\":{\"shape\":\"S26\"}}}},\"NextToken\":{}}}},\"GetSavingsPlansPurchaseRecommendation\":{\"input\":{\"type\":\"structure\",\"required\":[\"SavingsPlansType\",\"TermInYears\",\"PaymentOption\",\"LookbackPeriodInDays\"],\"members\":{\"SavingsPlansType\":{},\"TermInYears\":{},\"PaymentOption\":{},\"AccountScope\":{},\"NextPageToken\":{},\"PageSize\":{\"type\":\"integer\"},\"LookbackPeriodInDays\":{},\"Filter\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"type\":\"structure\",\"members\":{\"RecommendationId\":{},\"GenerationTimestamp\":{},\"AdditionalMetadata\":{}}},\"SavingsPlansPurchaseRecommendation\":{\"type\":\"structure\",\"members\":{\"AccountScope\":{},\"SavingsPlansType\":{},\"TermInYears\":{},\"PaymentOption\":{},\"LookbackPeriodInDays\":{},\"SavingsPlansPurchaseRecommendationDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SavingsPlansDetails\":{\"type\":\"structure\",\"members\":{\"Region\":{},\"InstanceFamily\":{},\"OfferingId\":{}}},\"AccountId\":{},\"UpfrontCost\":{},\"EstimatedROI\":{},\"CurrencyCode\":{},\"EstimatedSPCost\":{},\"EstimatedOnDemandCost\":{},\"EstimatedOnDemandCostWithCurrentCommitment\":{},\"EstimatedSavingsAmount\":{},\"EstimatedSavingsPercentage\":{},\"HourlyCommitmentToPurchase\":{},\"EstimatedAverageUtilization\":{},\"EstimatedMonthlySavingsAmount\":{},\"CurrentMinimumHourlyOnDemandSpend\":{},\"CurrentMaximumHourlyOnDemandSpend\":{},\"CurrentAverageHourlyOnDemandSpend\":{}}}},\"SavingsPlansPurchaseRecommendationSummary\":{\"type\":\"structure\",\"members\":{\"EstimatedROI\":{},\"CurrencyCode\":{},\"EstimatedTotalCost\":{},\"CurrentOnDemandSpend\":{},\"EstimatedSavingsAmount\":{},\"TotalRecommendationCount\":{},\"DailyCommitmentToPurchase\":{},\"HourlyCommitmentToPurchase\":{},\"EstimatedSavingsPercentage\":{},\"EstimatedMonthlySavingsAmount\":{},\"EstimatedOnDemandCostWithCurrentCommitment\":{}}}}},\"NextPageToken\":{}}}},\"GetSavingsPlansUtilization\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"SortBy\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Total\"],\"members\":{\"SavingsPlansUtilizationsByTime\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TimePeriod\",\"Utilization\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Utilization\":{\"shape\":\"S6d\"},\"Savings\":{\"shape\":\"S6e\"},\"AmortizedCommitment\":{\"shape\":\"S6f\"}}}},\"Total\":{\"shape\":\"S6g\"}}}},\"GetSavingsPlansUtilizationDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Filter\":{\"shape\":\"S7\"},\"DataType\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortBy\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"SavingsPlansUtilizationDetails\",\"TimePeriod\"],\"members\":{\"SavingsPlansUtilizationDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SavingsPlanArn\":{},\"Attributes\":{\"shape\":\"S2s\"},\"Utilization\":{\"shape\":\"S6d\"},\"Savings\":{\"shape\":\"S6e\"},\"AmortizedCommitment\":{\"shape\":\"S6f\"}}}},\"Total\":{\"shape\":\"S6g\"},\"TimePeriod\":{\"shape\":\"S26\"},\"NextToken\":{}}}},\"GetTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\"],\"members\":{\"SearchString\":{},\"TimePeriod\":{\"shape\":\"S26\"},\"TagKey\":{},\"Filter\":{\"shape\":\"S7\"},\"SortBy\":{\"shape\":\"S2z\"},\"MaxResults\":{\"type\":\"integer\"},\"NextPageToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\",\"ReturnSize\",\"TotalSize\"],\"members\":{\"NextPageToken\":{},\"Tags\":{\"type\":\"list\",\"member\":{}},\"ReturnSize\":{\"type\":\"integer\"},\"TotalSize\":{\"type\":\"integer\"}}}},\"GetUsageForecast\":{\"input\":{\"type\":\"structure\",\"required\":[\"TimePeriod\",\"Metric\",\"Granularity\"],\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Metric\":{},\"Granularity\":{},\"Filter\":{\"shape\":\"S7\"},\"PredictionIntervalLevel\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Total\":{\"shape\":\"S2i\"},\"ForecastResultsByTime\":{\"shape\":\"S3b\"}}}},\"ListCostCategoryDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EffectiveOn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CostCategoryReferences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CostCategoryArn\":{},\"Name\":{},\"EffectiveStart\":{},\"EffectiveEnd\":{},\"NumberOfRules\":{\"type\":\"integer\"},\"ProcessingStatus\":{\"shape\":\"S1g\"},\"Values\":{\"shape\":\"S36\"},\"DefaultValue\":{}}}},\"NextToken\":{}}}},\"ProvideAnomalyFeedback\":{\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyId\",\"Feedback\"],\"members\":{\"AnomalyId\":{},\"Feedback\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AnomalyId\"],\"members\":{\"AnomalyId\":{}}}},\"UpdateAnomalyMonitor\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitorArn\"],\"members\":{\"MonitorArn\":{},\"MonitorName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitorArn\"],\"members\":{\"MonitorArn\":{}}}},\"UpdateAnomalySubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\"],\"members\":{\"SubscriptionArn\":{},\"Threshold\":{\"type\":\"double\"},\"Frequency\":{},\"MonitorArnList\":{\"shape\":\"Sn\"},\"Subscribers\":{\"shape\":\"Sp\"},\"SubscriptionName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\"],\"members\":{\"SubscriptionArn\":{}}}},\"UpdateCostCategoryDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"CostCategoryArn\",\"RuleVersion\",\"Rules\"],\"members\":{\"CostCategoryArn\":{},\"RuleVersion\":{},\"Rules\":{\"shape\":\"Sz\"},\"DefaultValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CostCategoryArn\":{},\"EffectiveStart\":{}}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"MonitorName\",\"MonitorType\"],\"members\":{\"MonitorArn\":{},\"MonitorName\":{},\"CreationDate\":{},\"LastUpdatedDate\":{},\"LastEvaluatedDate\":{},\"MonitorType\":{},\"MonitorDimension\":{},\"MonitorSpecification\":{\"shape\":\"S7\"},\"DimensionalValueCount\":{\"type\":\"integer\"}}},\"S7\":{\"type\":\"structure\",\"members\":{\"Or\":{\"shape\":\"S8\"},\"And\":{\"shape\":\"S8\"},\"Not\":{\"shape\":\"S7\"},\"Dimensions\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"shape\":\"Sb\"},\"MatchOptions\":{\"shape\":\"Sd\"}}},\"Tags\":{\"shape\":\"Sf\"},\"CostCategories\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"shape\":\"Sb\"},\"MatchOptions\":{\"shape\":\"Sd\"}}}}},\"S8\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"Sb\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"list\",\"member\":{}},\"Sf\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"shape\":\"Sb\"},\"MatchOptions\":{\"shape\":\"Sd\"}}},\"Sm\":{\"type\":\"structure\",\"required\":[\"MonitorArnList\",\"Subscribers\",\"Threshold\",\"Frequency\",\"SubscriptionName\"],\"members\":{\"SubscriptionArn\":{},\"AccountId\":{},\"MonitorArnList\":{\"shape\":\"Sn\"},\"Subscribers\":{\"shape\":\"Sp\"},\"Threshold\":{\"type\":\"double\"},\"Frequency\":{},\"SubscriptionName\":{}}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Type\":{},\"Status\":{}}}},\"Sz\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"Rule\":{\"shape\":\"S7\"},\"InheritedValue\":{\"type\":\"structure\",\"members\":{\"DimensionName\":{},\"DimensionKey\":{}}},\"Type\":{}}}},\"S1g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Component\":{},\"Status\":{}}}},\"S26\":{\"type\":\"structure\",\"required\":[\"Start\",\"End\"],\"members\":{\"Start\":{},\"End\":{}}},\"S28\":{\"type\":\"list\",\"member\":{}},\"S2a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Key\":{}}}},\"S2f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"Total\":{\"shape\":\"S2h\"},\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Keys\":{\"type\":\"list\",\"member\":{}},\"Metrics\":{\"shape\":\"S2h\"}}}},\"Estimated\":{\"type\":\"boolean\"}}}},\"S2h\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S2i\"}},\"S2i\":{\"type\":\"structure\",\"members\":{\"Amount\":{},\"Unit\":{}}},\"S2q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"Attributes\":{\"shape\":\"S2s\"}}}},\"S2s\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2z\":{\"type\":\"list\",\"member\":{\"shape\":\"S30\"}},\"S30\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"SortOrder\":{}}},\"S36\":{\"type\":\"list\",\"member\":{}},\"S3b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TimePeriod\":{\"shape\":\"S26\"},\"MeanValue\":{},\"PredictionIntervalLowerBound\":{},\"PredictionIntervalUpperBound\":{}}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"CoverageHours\":{\"type\":\"structure\",\"members\":{\"OnDemandHours\":{},\"ReservedHours\":{},\"TotalRunningHours\":{},\"CoverageHoursPercentage\":{}}},\"CoverageNormalizedUnits\":{\"type\":\"structure\",\"members\":{\"OnDemandNormalizedUnits\":{},\"ReservedNormalizedUnits\":{},\"TotalRunningNormalizedUnits\":{},\"CoverageNormalizedUnitsPercentage\":{}}},\"CoverageCost\":{\"type\":\"structure\",\"members\":{\"OnDemandCost\":{}}}}},\"S44\":{\"type\":\"structure\",\"members\":{\"EC2Specification\":{\"type\":\"structure\",\"members\":{\"OfferingClass\":{}}}}},\"S4t\":{\"type\":\"structure\",\"members\":{\"UtilizationPercentage\":{},\"UtilizationPercentageInUnits\":{},\"PurchasedHours\":{},\"PurchasedUnits\":{},\"TotalActualHours\":{},\"TotalActualUnits\":{},\"UnusedHours\":{},\"UnusedUnits\":{},\"OnDemandCostOfRIHoursUsed\":{},\"NetRISavings\":{},\"TotalPotentialRISavings\":{},\"AmortizedUpfrontFee\":{},\"AmortizedRecurringFee\":{},\"TotalAmortizedFee\":{},\"RICostForUnusedHours\":{},\"RealizedSavings\":{},\"UnrealizedSavings\":{}}},\"S5c\":{\"type\":\"structure\",\"required\":[\"RecommendationTarget\",\"BenefitsConsidered\"],\"members\":{\"RecommendationTarget\":{},\"BenefitsConsidered\":{\"type\":\"boolean\"}}},\"S5l\":{\"type\":\"structure\",\"members\":{\"EC2ResourceDetails\":{\"type\":\"structure\",\"members\":{\"HourlyOnDemandRate\":{},\"InstanceType\":{},\"Platform\":{},\"Region\":{},\"Sku\":{},\"Memory\":{},\"NetworkPerformance\":{},\"Storage\":{},\"Vcpu\":{}}}}},\"S5n\":{\"type\":\"structure\",\"members\":{\"EC2ResourceUtilization\":{\"type\":\"structure\",\"members\":{\"MaxCpuUtilizationPercentage\":{},\"MaxMemoryUtilizationPercentage\":{},\"MaxStorageUtilizationPercentage\":{},\"EBSResourceUtilization\":{\"type\":\"structure\",\"members\":{\"EbsReadOpsPerSecond\":{},\"EbsWriteOpsPerSecond\":{},\"EbsReadBytesPerSecond\":{},\"EbsWriteBytesPerSecond\":{}}}}}}},\"S6d\":{\"type\":\"structure\",\"members\":{\"TotalCommitment\":{},\"UsedCommitment\":{},\"UnusedCommitment\":{},\"UtilizationPercentage\":{}}},\"S6e\":{\"type\":\"structure\",\"members\":{\"NetSavings\":{},\"OnDemandCostEquivalent\":{}}},\"S6f\":{\"type\":\"structure\",\"members\":{\"AmortizedRecurringCommitment\":{},\"AmortizedUpfrontCommitment\":{},\"TotalAmortizedCommitment\":{}}},\"S6g\":{\"type\":\"structure\",\"required\":[\"Utilization\"],\"members\":{\"Utilization\":{\"shape\":\"S6d\"},\"Savings\":{\"shape\":\"S6e\"},\"AmortizedCommitment\":{\"shape\":\"S6f\"}}}}}");

/***/ }),

/***/ 94382:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetSavingsPlansCoverage\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetSavingsPlansUtilizationDetails\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListCostCategoryDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 55823:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-05-01\",\"endpointPrefix\":\"chime\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Chime\",\"serviceId\":\"Chime\",\"signatureVersion\":\"v4\",\"uid\":\"chime-2018-05-01\"},\"operations\":{\"AssociatePhoneNumberWithUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users/{userId}?operation=associate-phone-number\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\",\"E164PhoneNumber\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"E164PhoneNumber\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociatePhoneNumbersWithVoiceConnector\":{\"http\":{\"requestUri\":\"/voice-connectors/{voiceConnectorId}?operation=associate-phone-numbers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"E164PhoneNumbers\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"E164PhoneNumbers\":{\"shape\":\"S7\"},\"ForceAssociate\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberErrors\":{\"shape\":\"Sa\"}}}},\"AssociatePhoneNumbersWithVoiceConnectorGroup\":{\"http\":{\"requestUri\":\"/voice-connector-groups/{voiceConnectorGroupId}?operation=associate-phone-numbers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorGroupId\",\"E164PhoneNumbers\"],\"members\":{\"VoiceConnectorGroupId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorGroupId\"},\"E164PhoneNumbers\":{\"shape\":\"S7\"},\"ForceAssociate\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberErrors\":{\"shape\":\"Sa\"}}}},\"AssociateSigninDelegateGroupsWithAccount\":{\"http\":{\"requestUri\":\"/accounts/{accountId}?operation=associate-signin-delegate-groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"SigninDelegateGroups\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"SigninDelegateGroups\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchCreateAttendee\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/attendees?operation=batch-create\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"Attendees\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"Attendees\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attendees\":{\"shape\":\"St\"},\"Errors\":{\"shape\":\"Sw\"}}}},\"BatchCreateRoomMembership\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}/memberships?operation=batch-create\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\",\"MembershipItemList\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"MembershipItemList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MemberId\":{},\"Role\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MemberId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"BatchDeletePhoneNumber\":{\"http\":{\"requestUri\":\"/phone-numbers?operation=batch-delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneNumberIds\"],\"members\":{\"PhoneNumberIds\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberErrors\":{\"shape\":\"Sa\"}}}},\"BatchSuspendUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users?operation=suspend\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserIdList\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserIdList\":{\"shape\":\"S19\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserErrors\":{\"shape\":\"S1b\"}}}},\"BatchUnsuspendUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users?operation=unsuspend\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserIdList\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserIdList\":{\"shape\":\"S19\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserErrors\":{\"shape\":\"S1b\"}}}},\"BatchUpdatePhoneNumber\":{\"http\":{\"requestUri\":\"/phone-numbers?operation=batch-update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"UpdatePhoneNumberRequestItems\"],\"members\":{\"UpdatePhoneNumberRequestItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PhoneNumberId\"],\"members\":{\"PhoneNumberId\":{},\"ProductType\":{},\"CallingName\":{\"shape\":\"S1j\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberErrors\":{\"shape\":\"Sa\"}}}},\"BatchUpdateUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UpdateUserRequestItems\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UpdateUserRequestItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{},\"LicenseType\":{},\"UserType\":{},\"AlexaForBusinessMetadata\":{\"shape\":\"S1q\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserErrors\":{\"shape\":\"S1b\"}}}},\"CreateAccount\":{\"http\":{\"requestUri\":\"/accounts\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Account\":{\"shape\":\"S1x\"}}}},\"CreateAppInstance\":{\"http\":{\"requestUri\":\"/app-instances\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ClientRequestToken\"],\"members\":{\"Name\":{\"shape\":\"S22\"},\"Metadata\":{\"shape\":\"S23\"},\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S25\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceArn\":{}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"CreateAppInstanceAdmin\":{\"http\":{\"requestUri\":\"/app-instances/{appInstanceArn}/admins\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceAdminArn\",\"AppInstanceArn\"],\"members\":{\"AppInstanceAdminArn\":{},\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceAdmin\":{\"shape\":\"S2a\"},\"AppInstanceArn\":{}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"CreateAppInstanceUser\":{\"http\":{\"requestUri\":\"/app-instance-users\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\",\"AppInstanceUserId\",\"Name\",\"ClientRequestToken\"],\"members\":{\"AppInstanceArn\":{},\"AppInstanceUserId\":{\"type\":\"string\",\"sensitive\":true},\"Name\":{\"shape\":\"S2e\"},\"Metadata\":{\"shape\":\"S23\"},\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S25\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceUserArn\":{}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"CreateAttendee\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/attendees\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"ExternalUserId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"ExternalUserId\":{\"shape\":\"Sn\"},\"Tags\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attendee\":{\"shape\":\"Su\"}}}},\"CreateBot\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/bots\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DisplayName\",\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"DisplayName\":{\"shape\":\"S1s\"},\"Domain\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bot\":{\"shape\":\"S2k\"}}}},\"CreateChannel\":{\"http\":{\"requestUri\":\"/channels\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\",\"Name\",\"ClientRequestToken\"],\"members\":{\"AppInstanceArn\":{},\"Name\":{\"shape\":\"S22\"},\"Mode\":{},\"Privacy\":{},\"Metadata\":{\"shape\":\"S23\"},\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S25\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"CreateChannelBan\":{\"http\":{\"requestUri\":\"/channels/{channelArn}/bans\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MemberArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MemberArn\":{},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"Member\":{\"shape\":\"S2a\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"CreateChannelMembership\":{\"http\":{\"requestUri\":\"/channels/{channelArn}/memberships\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MemberArn\",\"Type\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MemberArn\":{},\"Type\":{},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"Member\":{\"shape\":\"S2a\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"CreateChannelModerator\":{\"http\":{\"requestUri\":\"/channels/{channelArn}/moderators\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"ChannelModeratorArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"ChannelModeratorArn\":{},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"ChannelModerator\":{\"shape\":\"S2a\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"CreateMeeting\":{\"http\":{\"requestUri\":\"/meetings\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ClientRequestToken\"],\"members\":{\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true},\"ExternalMeetingId\":{\"shape\":\"S2y\"},\"MeetingHostId\":{\"shape\":\"Sn\"},\"MediaRegion\":{},\"Tags\":{\"shape\":\"S2z\"},\"NotificationsConfiguration\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Meeting\":{\"shape\":\"S33\"}}}},\"CreateMeetingDialOut\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/dial-outs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"FromPhoneNumber\",\"ToPhoneNumber\",\"JoinToken\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"FromPhoneNumber\":{\"shape\":\"S3\"},\"ToPhoneNumber\":{\"shape\":\"S3\"},\"JoinToken\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransactionId\":{}}}},\"CreateMeetingWithAttendees\":{\"http\":{\"requestUri\":\"/meetings?operation=create-attendees\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ClientRequestToken\"],\"members\":{\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true},\"ExternalMeetingId\":{\"shape\":\"S2y\"},\"MeetingHostId\":{\"shape\":\"Sn\"},\"MediaRegion\":{},\"Tags\":{\"shape\":\"S2z\"},\"NotificationsConfiguration\":{\"shape\":\"S30\"},\"Attendees\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Meeting\":{\"shape\":\"S33\"},\"Attendees\":{\"shape\":\"St\"},\"Errors\":{\"shape\":\"Sw\"}}}},\"CreatePhoneNumberOrder\":{\"http\":{\"requestUri\":\"/phone-number-orders\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ProductType\",\"E164PhoneNumbers\"],\"members\":{\"ProductType\":{},\"E164PhoneNumbers\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberOrder\":{\"shape\":\"S3d\"}}}},\"CreateProxySession\":{\"http\":{\"requestUri\":\"/voice-connectors/{voiceConnectorId}/proxy-sessions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ParticipantPhoneNumbers\",\"Capabilities\",\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"ParticipantPhoneNumbers\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"Name\":{\"type\":\"string\",\"sensitive\":true},\"ExpiryMinutes\":{\"type\":\"integer\"},\"Capabilities\":{\"shape\":\"S3n\"},\"NumberSelectionBehavior\":{},\"GeoMatchLevel\":{},\"GeoMatchParams\":{\"shape\":\"S3r\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProxySession\":{\"shape\":\"S3v\"}}}},\"CreateRoom\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/rooms\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"Name\":{\"shape\":\"S1s\"},\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Room\":{\"shape\":\"S42\"}}}},\"CreateRoomMembership\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}/memberships\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\",\"MemberId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"MemberId\":{},\"Role\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoomMembership\":{\"shape\":\"S45\"}}}},\"CreateSipMediaApplication\":{\"http\":{\"requestUri\":\"/sip-media-applications\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AwsRegion\",\"Name\",\"Endpoints\"],\"members\":{\"AwsRegion\":{},\"Name\":{},\"Endpoints\":{\"shape\":\"S4a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplication\":{\"shape\":\"S4e\"}}}},\"CreateSipMediaApplicationCall\":{\"http\":{\"requestUri\":\"/sip-media-applications/{sipMediaApplicationId}/calls\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FromPhoneNumber\",\"ToPhoneNumber\",\"SipMediaApplicationId\"],\"members\":{\"FromPhoneNumber\":{\"shape\":\"S3\"},\"ToPhoneNumber\":{\"shape\":\"S3\"},\"SipMediaApplicationId\":{\"location\":\"uri\",\"locationName\":\"sipMediaApplicationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplicationCall\":{\"type\":\"structure\",\"members\":{\"TransactionId\":{}}}}}},\"CreateSipRule\":{\"http\":{\"requestUri\":\"/sip-rules\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"TriggerType\",\"TriggerValue\",\"TargetApplications\"],\"members\":{\"Name\":{},\"TriggerType\":{},\"TriggerValue\":{},\"Disabled\":{\"type\":\"boolean\"},\"TargetApplications\":{\"shape\":\"S4l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipRule\":{\"shape\":\"S4p\"}}}},\"CreateUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users?operation=create\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"Username\":{},\"Email\":{\"shape\":\"S4r\"},\"UserType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S4t\"}}}},\"CreateVoiceConnector\":{\"http\":{\"requestUri\":\"/voice-connectors\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RequireEncryption\"],\"members\":{\"Name\":{},\"AwsRegion\":{},\"RequireEncryption\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnector\":{\"shape\":\"S50\"}}}},\"CreateVoiceConnectorGroup\":{\"http\":{\"requestUri\":\"/voice-connector-groups\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"VoiceConnectorItems\":{\"shape\":\"S53\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorGroup\":{\"shape\":\"S57\"}}}},\"DeleteAccount\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{accountId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAppInstance\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/app-instances/{appInstanceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"DeleteAppInstanceAdmin\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/app-instances/{appInstanceArn}/admins/{appInstanceAdminArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceAdminArn\",\"AppInstanceArn\"],\"members\":{\"AppInstanceAdminArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceAdminArn\"},\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"DeleteAppInstanceStreamingConfigurations\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/app-instances/{appInstanceArn}/streaming-configurations\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}}},\"DeleteAppInstanceUser\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/app-instance-users/{appInstanceUserArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceUserArn\"],\"members\":{\"AppInstanceUserArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceUserArn\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"DeleteAttendee\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/meetings/{meetingId}/attendees/{attendeeId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"AttendeeId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"AttendeeId\":{\"location\":\"uri\",\"locationName\":\"attendeeId\"}}}},\"DeleteChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{channelArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DeleteChannelBan\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{channelArn}/bans/{memberArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MemberArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MemberArn\":{\"location\":\"uri\",\"locationName\":\"memberArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DeleteChannelMembership\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{channelArn}/memberships/{memberArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MemberArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MemberArn\":{\"location\":\"uri\",\"locationName\":\"memberArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DeleteChannelMessage\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{channelArn}/messages/{messageId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MessageId\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MessageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DeleteChannelModerator\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{channelArn}/moderators/{channelModeratorArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"ChannelModeratorArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"ChannelModeratorArn\":{\"location\":\"uri\",\"locationName\":\"channelModeratorArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DeleteEventsConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{accountId}/bots/{botId}/events-configuration\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BotId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"BotId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}}},\"DeleteMeeting\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/meetings/{meetingId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"}}}},\"DeletePhoneNumber\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/phone-numbers/{phoneNumberId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneNumberId\"],\"members\":{\"PhoneNumberId\":{\"location\":\"uri\",\"locationName\":\"phoneNumberId\"}}}},\"DeleteProxySession\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/proxy-sessions/{proxySessionId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"ProxySessionId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"ProxySessionId\":{\"location\":\"uri\",\"locationName\":\"proxySessionId\"}}}},\"DeleteRoom\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"}}}},\"DeleteRoomMembership\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}/memberships/{memberId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\",\"MemberId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"MemberId\":{\"location\":\"uri\",\"locationName\":\"memberId\"}}}},\"DeleteSipMediaApplication\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/sip-media-applications/{sipMediaApplicationId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"SipMediaApplicationId\"],\"members\":{\"SipMediaApplicationId\":{\"location\":\"uri\",\"locationName\":\"sipMediaApplicationId\"}}}},\"DeleteSipRule\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/sip-rules/{sipRuleId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"SipRuleId\"],\"members\":{\"SipRuleId\":{\"location\":\"uri\",\"locationName\":\"sipRuleId\"}}}},\"DeleteVoiceConnector\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}}},\"DeleteVoiceConnectorEmergencyCallingConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/emergency-calling-configuration\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}}},\"DeleteVoiceConnectorGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connector-groups/{voiceConnectorGroupId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorGroupId\"],\"members\":{\"VoiceConnectorGroupId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorGroupId\"}}}},\"DeleteVoiceConnectorOrigination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/origination\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}}},\"DeleteVoiceConnectorProxy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/programmable-numbers/proxy\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}}},\"DeleteVoiceConnectorStreamingConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/streaming-configuration\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}}},\"DeleteVoiceConnectorTermination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}}},\"DeleteVoiceConnectorTerminationCredentials\":{\"http\":{\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination/credentials?operation=delete\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Usernames\",\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"Usernames\":{\"shape\":\"S61\"}}}},\"DescribeAppInstance\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instances/{appInstanceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstance\":{\"type\":\"structure\",\"members\":{\"AppInstanceArn\":{},\"Name\":{\"shape\":\"S22\"},\"Metadata\":{\"shape\":\"S23\"},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"DescribeAppInstanceAdmin\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instances/{appInstanceArn}/admins/{appInstanceAdminArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceAdminArn\",\"AppInstanceArn\"],\"members\":{\"AppInstanceAdminArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceAdminArn\"},\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceAdmin\":{\"type\":\"structure\",\"members\":{\"Admin\":{\"shape\":\"S2a\"},\"AppInstanceArn\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"}}}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"DescribeAppInstanceUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instance-users/{appInstanceUserArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceUserArn\"],\"members\":{\"AppInstanceUserArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceUserArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceUser\":{\"type\":\"structure\",\"members\":{\"AppInstanceUserArn\":{},\"Name\":{\"shape\":\"S2e\"},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"Metadata\":{\"shape\":\"S23\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"DescribeChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channel\":{\"type\":\"structure\",\"members\":{\"Name\":{\"shape\":\"S22\"},\"ChannelArn\":{},\"Mode\":{},\"Privacy\":{},\"Metadata\":{\"shape\":\"S23\"},\"CreatedBy\":{\"shape\":\"S2a\"},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastMessageTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DescribeChannelBan\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/bans/{memberArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MemberArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MemberArn\":{\"location\":\"uri\",\"locationName\":\"memberArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelBan\":{\"type\":\"structure\",\"members\":{\"Member\":{\"shape\":\"S2a\"},\"ChannelArn\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"S2a\"}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DescribeChannelMembership\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/memberships/{memberArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MemberArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MemberArn\":{\"location\":\"uri\",\"locationName\":\"memberArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelMembership\":{\"type\":\"structure\",\"members\":{\"InvitedBy\":{\"shape\":\"S2a\"},\"Type\":{},\"Member\":{\"shape\":\"S2a\"},\"ChannelArn\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DescribeChannelMembershipForAppInstanceUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}?scope=app-instance-user-membership\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"AppInstanceUserArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"AppInstanceUserArn\":{\"location\":\"querystring\",\"locationName\":\"app-instance-user-arn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelMembership\":{\"shape\":\"S6n\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DescribeChannelModeratedByAppInstanceUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}?scope=app-instance-user-moderated-channel\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"AppInstanceUserArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"AppInstanceUserArn\":{\"location\":\"querystring\",\"locationName\":\"app-instance-user-arn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channel\":{\"shape\":\"S6s\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DescribeChannelModerator\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/moderators/{channelModeratorArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"ChannelModeratorArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"ChannelModeratorArn\":{\"location\":\"uri\",\"locationName\":\"channelModeratorArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelModerator\":{\"type\":\"structure\",\"members\":{\"Moderator\":{\"shape\":\"S2a\"},\"ChannelArn\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"S2a\"}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"DisassociatePhoneNumberFromUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users/{userId}?operation=disassociate-phone-number\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociatePhoneNumbersFromVoiceConnector\":{\"http\":{\"requestUri\":\"/voice-connectors/{voiceConnectorId}?operation=disassociate-phone-numbers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"E164PhoneNumbers\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"E164PhoneNumbers\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberErrors\":{\"shape\":\"Sa\"}}}},\"DisassociatePhoneNumbersFromVoiceConnectorGroup\":{\"http\":{\"requestUri\":\"/voice-connector-groups/{voiceConnectorGroupId}?operation=disassociate-phone-numbers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorGroupId\",\"E164PhoneNumbers\"],\"members\":{\"VoiceConnectorGroupId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorGroupId\"},\"E164PhoneNumbers\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberErrors\":{\"shape\":\"Sa\"}}}},\"DisassociateSigninDelegateGroupsFromAccount\":{\"http\":{\"requestUri\":\"/accounts/{accountId}?operation=disassociate-signin-delegate-groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"GroupNames\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"GroupNames\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Account\":{\"shape\":\"S1x\"}}}},\"GetAccountSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/settings\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountSettings\":{\"shape\":\"S78\"}}}},\"GetAppInstanceRetentionSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instances/{appInstanceArn}/retention-settings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceRetentionSettings\":{\"shape\":\"S7b\"},\"InitiateDeletionTimestamp\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"GetAppInstanceStreamingConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instances/{appInstanceArn}/streaming-configurations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceStreamingConfigurations\":{\"shape\":\"S7g\"}}}},\"GetAttendee\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meetings/{meetingId}/attendees/{attendeeId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"AttendeeId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"AttendeeId\":{\"location\":\"uri\",\"locationName\":\"attendeeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attendee\":{\"shape\":\"Su\"}}}},\"GetBot\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/bots/{botId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BotId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"BotId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bot\":{\"shape\":\"S2k\"}}}},\"GetChannelMessage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/messages/{messageId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MessageId\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MessageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelMessage\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"MessageId\":{},\"Content\":{\"shape\":\"S7q\"},\"Metadata\":{\"shape\":\"S23\"},\"Type\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastEditedTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"Sender\":{\"shape\":\"S2a\"},\"Redacted\":{\"type\":\"boolean\"},\"Persistence\":{}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"GetEventsConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/bots/{botId}/events-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BotId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"BotId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventsConfiguration\":{\"shape\":\"S7w\"}}}},\"GetGlobalSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/settings\",\"responseCode\":200},\"output\":{\"type\":\"structure\",\"members\":{\"BusinessCalling\":{\"shape\":\"S7y\"},\"VoiceConnector\":{\"shape\":\"S7z\"}}}},\"GetMeeting\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meetings/{meetingId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Meeting\":{\"shape\":\"S33\"}}}},\"GetMessagingSessionEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/endpoints/messaging-session\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Url\":{}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"GetPhoneNumber\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/phone-numbers/{phoneNumberId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneNumberId\"],\"members\":{\"PhoneNumberId\":{\"location\":\"uri\",\"locationName\":\"phoneNumberId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumber\":{\"shape\":\"S88\"}}}},\"GetPhoneNumberOrder\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/phone-number-orders/{phoneNumberOrderId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneNumberOrderId\"],\"members\":{\"PhoneNumberOrderId\":{\"location\":\"uri\",\"locationName\":\"phoneNumberOrderId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberOrder\":{\"shape\":\"S3d\"}}}},\"GetPhoneNumberSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/settings/phone-number\",\"responseCode\":200},\"output\":{\"type\":\"structure\",\"members\":{\"CallingName\":{\"shape\":\"S1j\"},\"CallingNameUpdatedTimestamp\":{\"shape\":\"S1z\"}}}},\"GetProxySession\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/proxy-sessions/{proxySessionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"ProxySessionId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"ProxySessionId\":{\"location\":\"uri\",\"locationName\":\"proxySessionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProxySession\":{\"shape\":\"S3v\"}}}},\"GetRetentionSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/retention-settings\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RetentionSettings\":{\"shape\":\"S8n\"},\"InitiateDeletionTimestamp\":{\"shape\":\"S1z\"}}}},\"GetRoom\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Room\":{\"shape\":\"S42\"}}}},\"GetSipMediaApplication\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sip-media-applications/{sipMediaApplicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SipMediaApplicationId\"],\"members\":{\"SipMediaApplicationId\":{\"location\":\"uri\",\"locationName\":\"sipMediaApplicationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplication\":{\"shape\":\"S4e\"}}}},\"GetSipMediaApplicationLoggingConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sip-media-applications/{sipMediaApplicationId}/logging-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SipMediaApplicationId\"],\"members\":{\"SipMediaApplicationId\":{\"location\":\"uri\",\"locationName\":\"sipMediaApplicationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplicationLoggingConfiguration\":{\"shape\":\"S8w\"}}}},\"GetSipRule\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sip-rules/{sipRuleId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SipRuleId\"],\"members\":{\"SipRuleId\":{\"location\":\"uri\",\"locationName\":\"sipRuleId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipRule\":{\"shape\":\"S4p\"}}}},\"GetUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/users/{userId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S4t\"}}}},\"GetUserSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/users/{userId}/settings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserSettings\":{\"shape\":\"S93\"}}}},\"GetVoiceConnector\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnector\":{\"shape\":\"S50\"}}}},\"GetVoiceConnectorEmergencyCallingConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/emergency-calling-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EmergencyCallingConfiguration\":{\"shape\":\"S99\"}}}},\"GetVoiceConnectorGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connector-groups/{voiceConnectorGroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorGroupId\"],\"members\":{\"VoiceConnectorGroupId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorGroupId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorGroup\":{\"shape\":\"S57\"}}}},\"GetVoiceConnectorLoggingConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/logging-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S9h\"}}}},\"GetVoiceConnectorOrigination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/origination\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Origination\":{\"shape\":\"S9k\"}}}},\"GetVoiceConnectorProxy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/programmable-numbers/proxy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Proxy\":{\"shape\":\"S9t\"}}}},\"GetVoiceConnectorStreamingConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/streaming-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingConfiguration\":{\"shape\":\"S9y\"}}}},\"GetVoiceConnectorTermination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Termination\":{\"shape\":\"Sa5\"}}}},\"GetVoiceConnectorTerminationHealth\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination/health\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TerminationHealth\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"shape\":\"S1z\"},\"Source\":{}}}}}},\"InviteUsers\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users?operation=add\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserEmailList\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserEmailList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4r\"}},\"UserType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invites\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InviteId\":{},\"Status\":{},\"EmailAddress\":{\"shape\":\"S4r\"},\"EmailStatus\":{}}}}}}},\"ListAccounts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts\"},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"UserEmail\":{\"shape\":\"S4r\",\"location\":\"querystring\",\"locationName\":\"user-email\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accounts\":{\"type\":\"list\",\"member\":{\"shape\":\"S1x\"}},\"NextToken\":{}}}},\"ListAppInstanceAdmins\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instances/{appInstanceArn}/admins\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceArn\":{},\"AppInstanceAdmins\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Admin\":{\"shape\":\"S2a\"}}}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"ListAppInstanceUsers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instance-users\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"querystring\",\"locationName\":\"app-instance-arn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceArn\":{},\"AppInstanceUsers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AppInstanceUserArn\":{},\"Name\":{\"shape\":\"S2e\"},\"Metadata\":{\"shape\":\"S23\"}}}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"ListAppInstances\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/app-instances\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AppInstanceArn\":{},\"Name\":{\"shape\":\"S22\"},\"Metadata\":{\"shape\":\"S23\"}}}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"ListAttendeeTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meetings/{meetingId}/attendees/{attendeeId}/tags\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"AttendeeId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"AttendeeId\":{\"location\":\"uri\",\"locationName\":\"attendeeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S25\"}}}},\"ListAttendees\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meetings/{meetingId}/attendees\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attendees\":{\"shape\":\"St\"},\"NextToken\":{}}}},\"ListBots\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/bots\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bots\":{\"type\":\"list\",\"member\":{\"shape\":\"S2k\"}},\"NextToken\":{}}}},\"ListChannelBans\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/bans\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"NextToken\":{\"shape\":\"Sao\"},\"ChannelBans\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Member\":{\"shape\":\"S2a\"}}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListChannelMemberships\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/memberships\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"Type\":{\"location\":\"querystring\",\"locationName\":\"type\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"ChannelMemberships\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Member\":{\"shape\":\"S2a\"}}}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListChannelMembershipsForAppInstanceUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels?scope=app-instance-user-memberships\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppInstanceUserArn\":{\"location\":\"querystring\",\"locationName\":\"app-instance-user-arn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelMemberships\":{\"type\":\"list\",\"member\":{\"shape\":\"S6n\"}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListChannelMessages\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/messages\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"SortOrder\":{\"location\":\"querystring\",\"locationName\":\"sort-order\"},\"NotBefore\":{\"location\":\"querystring\",\"locationName\":\"not-before\",\"type\":\"timestamp\"},\"NotAfter\":{\"location\":\"querystring\",\"locationName\":\"not-after\",\"type\":\"timestamp\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"NextToken\":{\"shape\":\"Sao\"},\"ChannelMessages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MessageId\":{},\"Content\":{\"shape\":\"S7q\"},\"Metadata\":{\"shape\":\"S23\"},\"Type\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"LastEditedTimestamp\":{\"type\":\"timestamp\"},\"Sender\":{\"shape\":\"S2a\"},\"Redacted\":{\"type\":\"boolean\"}}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListChannelModerators\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelArn}/moderators\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"NextToken\":{\"shape\":\"Sao\"},\"ChannelModerators\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Moderator\":{\"shape\":\"S2a\"}}}}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListChannels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\"],\"members\":{\"AppInstanceArn\":{\"location\":\"querystring\",\"locationName\":\"app-instance-arn\"},\"Privacy\":{\"location\":\"querystring\",\"locationName\":\"privacy\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channels\":{\"type\":\"list\",\"member\":{\"shape\":\"S6o\"}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListChannelsModeratedByAppInstanceUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels?scope=app-instance-user-moderated-channels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AppInstanceUserArn\":{\"location\":\"querystring\",\"locationName\":\"app-instance-user-arn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"shape\":\"Sao\",\"location\":\"querystring\",\"locationName\":\"next-token\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channels\":{\"type\":\"list\",\"member\":{\"shape\":\"S6s\"}},\"NextToken\":{\"shape\":\"Sao\"}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"ListMeetingTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meetings/{meetingId}/tags\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S25\"}}}},\"ListMeetings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/meetings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Meetings\":{\"type\":\"list\",\"member\":{\"shape\":\"S33\"}},\"NextToken\":{}}}},\"ListPhoneNumberOrders\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/phone-number-orders\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberOrders\":{\"type\":\"list\",\"member\":{\"shape\":\"S3d\"}},\"NextToken\":{}}}},\"ListPhoneNumbers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/phone-numbers\"},\"input\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"ProductType\":{\"location\":\"querystring\",\"locationName\":\"product-type\"},\"FilterName\":{\"location\":\"querystring\",\"locationName\":\"filter-name\"},\"FilterValue\":{\"location\":\"querystring\",\"locationName\":\"filter-value\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumbers\":{\"type\":\"list\",\"member\":{\"shape\":\"S88\"}},\"NextToken\":{}}}},\"ListProxySessions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/proxy-sessions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"Status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProxySessions\":{\"type\":\"list\",\"member\":{\"shape\":\"S3v\"}},\"NextToken\":{}}}},\"ListRoomMemberships\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}/memberships\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoomMemberships\":{\"type\":\"list\",\"member\":{\"shape\":\"S45\"}},\"NextToken\":{}}}},\"ListRooms\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/rooms\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"MemberId\":{\"location\":\"querystring\",\"locationName\":\"member-id\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rooms\":{\"type\":\"list\",\"member\":{\"shape\":\"S42\"}},\"NextToken\":{}}}},\"ListSipMediaApplications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sip-media-applications\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplications\":{\"type\":\"list\",\"member\":{\"shape\":\"S4e\"}},\"NextToken\":{}}}},\"ListSipRules\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sip-rules\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"SipMediaApplicationId\":{\"location\":\"querystring\",\"locationName\":\"sip-media-application\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipRules\":{\"type\":\"list\",\"member\":{\"shape\":\"S4p\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{\"shape\":\"S31\",\"location\":\"querystring\",\"locationName\":\"arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S25\"}}}},\"ListUsers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{accountId}/users\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserEmail\":{\"shape\":\"S4r\",\"location\":\"querystring\",\"locationName\":\"user-email\"},\"UserType\":{\"location\":\"querystring\",\"locationName\":\"user-type\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"shape\":\"S4t\"}},\"NextToken\":{}}}},\"ListVoiceConnectorGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connector-groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S57\"}},\"NextToken\":{}}}},\"ListVoiceConnectorTerminationCredentials\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination/credentials\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Usernames\":{\"shape\":\"S61\"}}}},\"ListVoiceConnectors\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/voice-connectors\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnectors\":{\"type\":\"list\",\"member\":{\"shape\":\"S50\"}},\"NextToken\":{}}}},\"LogoutUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users/{userId}?operation=logout\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAppInstanceRetentionSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/app-instances/{appInstanceArn}/retention-settings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\",\"AppInstanceRetentionSettings\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"},\"AppInstanceRetentionSettings\":{\"shape\":\"S7b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceRetentionSettings\":{\"shape\":\"S7b\"},\"InitiateDeletionTimestamp\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"PutAppInstanceStreamingConfigurations\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/app-instances/{appInstanceArn}/streaming-configurations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\",\"AppInstanceStreamingConfigurations\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"},\"AppInstanceStreamingConfigurations\":{\"shape\":\"S7g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceStreamingConfigurations\":{\"shape\":\"S7g\"}}}},\"PutEventsConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{accountId}/bots/{botId}/events-configuration\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BotId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"BotId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"OutboundEventsHTTPSEndpoint\":{\"shape\":\"S1s\"},\"LambdaFunctionArn\":{\"shape\":\"S1s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventsConfiguration\":{\"shape\":\"S7w\"}}}},\"PutRetentionSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{accountId}/retention-settings\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RetentionSettings\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RetentionSettings\":{\"shape\":\"S8n\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RetentionSettings\":{\"shape\":\"S8n\"},\"InitiateDeletionTimestamp\":{\"shape\":\"S1z\"}}}},\"PutSipMediaApplicationLoggingConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/sip-media-applications/{sipMediaApplicationId}/logging-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SipMediaApplicationId\"],\"members\":{\"SipMediaApplicationId\":{\"location\":\"uri\",\"locationName\":\"sipMediaApplicationId\"},\"SipMediaApplicationLoggingConfiguration\":{\"shape\":\"S8w\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplicationLoggingConfiguration\":{\"shape\":\"S8w\"}}}},\"PutVoiceConnectorEmergencyCallingConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/emergency-calling-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"EmergencyCallingConfiguration\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"EmergencyCallingConfiguration\":{\"shape\":\"S99\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EmergencyCallingConfiguration\":{\"shape\":\"S99\"}}}},\"PutVoiceConnectorLoggingConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/logging-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"LoggingConfiguration\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"LoggingConfiguration\":{\"shape\":\"S9h\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S9h\"}}}},\"PutVoiceConnectorOrigination\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/origination\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"Origination\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"Origination\":{\"shape\":\"S9k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Origination\":{\"shape\":\"S9k\"}}}},\"PutVoiceConnectorProxy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/programmable-numbers/proxy\"},\"input\":{\"type\":\"structure\",\"required\":[\"DefaultSessionExpiryMinutes\",\"PhoneNumberPoolCountries\",\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"DefaultSessionExpiryMinutes\":{\"type\":\"integer\"},\"PhoneNumberPoolCountries\":{\"type\":\"list\",\"member\":{}},\"FallBackPhoneNumber\":{\"shape\":\"S3\"},\"Disabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Proxy\":{\"shape\":\"S9t\"}}}},\"PutVoiceConnectorStreamingConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/streaming-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"StreamingConfiguration\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"StreamingConfiguration\":{\"shape\":\"S9y\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingConfiguration\":{\"shape\":\"S9y\"}}}},\"PutVoiceConnectorTermination\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"Termination\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"Termination\":{\"shape\":\"Sa5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Termination\":{\"shape\":\"Sa5\"}}}},\"PutVoiceConnectorTerminationCredentials\":{\"http\":{\"requestUri\":\"/voice-connectors/{voiceConnectorId}/termination/credentials?operation=put\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"Credentials\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Username\":{\"shape\":\"S1s\"},\"Password\":{\"shape\":\"S1s\"}}}}}}},\"RedactChannelMessage\":{\"http\":{\"requestUri\":\"/channels/{channelArn}/messages/{messageId}?operation=redact\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MessageId\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MessageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"MessageId\":{}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"RedactConversationMessage\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/conversations/{conversationId}/messages/{messageId}?operation=redact\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"ConversationId\",\"MessageId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"ConversationId\":{\"location\":\"uri\",\"locationName\":\"conversationId\"},\"MessageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RedactRoomMessage\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}/messages/{messageId}?operation=redact\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\",\"MessageId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"MessageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RegenerateSecurityToken\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/bots/{botId}?operation=regenerate-security-token\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BotId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"BotId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bot\":{\"shape\":\"S2k\"}}}},\"ResetPersonalPIN\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users/{userId}?operation=reset-personal-pin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S4t\"}}}},\"RestorePhoneNumber\":{\"http\":{\"requestUri\":\"/phone-numbers/{phoneNumberId}?operation=restore\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneNumberId\"],\"members\":{\"PhoneNumberId\":{\"location\":\"uri\",\"locationName\":\"phoneNumberId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumber\":{\"shape\":\"S88\"}}}},\"SearchAvailablePhoneNumbers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/search?type=phone-numbers\"},\"input\":{\"type\":\"structure\",\"members\":{\"AreaCode\":{\"location\":\"querystring\",\"locationName\":\"area-code\"},\"City\":{\"location\":\"querystring\",\"locationName\":\"city\"},\"Country\":{\"location\":\"querystring\",\"locationName\":\"country\"},\"State\":{\"location\":\"querystring\",\"locationName\":\"state\"},\"TollFreePrefix\":{\"location\":\"querystring\",\"locationName\":\"toll-free-prefix\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"E164PhoneNumbers\":{\"shape\":\"S7\"}}}},\"SendChannelMessage\":{\"http\":{\"requestUri\":\"/channels/{channelArn}/messages\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"Content\",\"Type\",\"Persistence\",\"ClientRequestToken\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"Content\":{\"type\":\"string\",\"sensitive\":true},\"Type\":{},\"Persistence\":{},\"Metadata\":{\"shape\":\"S23\"},\"ClientRequestToken\":{\"shape\":\"S24\",\"idempotencyToken\":true},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"MessageId\":{}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"TagAttendee\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/attendees/{attendeeId}/tags?operation=add\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"AttendeeId\",\"Tags\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"AttendeeId\":{\"location\":\"uri\",\"locationName\":\"attendeeId\"},\"Tags\":{\"shape\":\"So\"}}}},\"TagMeeting\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/tags?operation=add\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"Tags\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"Tags\":{\"shape\":\"S2z\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags?operation=tag-resource\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{\"shape\":\"S31\"},\"Tags\":{\"shape\":\"S25\"}}}},\"UntagAttendee\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/attendees/{attendeeId}/tags?operation=delete\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"TagKeys\",\"AttendeeId\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"AttendeeId\":{\"location\":\"uri\",\"locationName\":\"attendeeId\"},\"TagKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}},\"UntagMeeting\":{\"http\":{\"requestUri\":\"/meetings/{meetingId}/tags?operation=delete\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MeetingId\",\"TagKeys\"],\"members\":{\"MeetingId\":{\"location\":\"uri\",\"locationName\":\"meetingId\"},\"TagKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/tags?operation=untag-resource\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{\"shape\":\"S31\"},\"TagKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}},\"UpdateAccount\":{\"http\":{\"requestUri\":\"/accounts/{accountId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Account\":{\"shape\":\"S1x\"}}}},\"UpdateAccountSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{accountId}/settings\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"AccountSettings\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"AccountSettings\":{\"shape\":\"S78\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAppInstance\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/app-instances/{appInstanceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceArn\",\"Name\"],\"members\":{\"AppInstanceArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceArn\"},\"Name\":{\"shape\":\"S22\"},\"Metadata\":{\"shape\":\"S23\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceArn\":{}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"UpdateAppInstanceUser\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/app-instance-users/{appInstanceUserArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AppInstanceUserArn\",\"Name\"],\"members\":{\"AppInstanceUserArn\":{\"location\":\"uri\",\"locationName\":\"appInstanceUserArn\"},\"Name\":{\"shape\":\"S2e\"},\"Metadata\":{\"shape\":\"S23\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppInstanceUserArn\":{}}},\"endpoint\":{\"hostPrefix\":\"identity-\"}},\"UpdateBot\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/bots/{botId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"BotId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"BotId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"Disabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bot\":{\"shape\":\"S2k\"}}}},\"UpdateChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{channelArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"Name\",\"Mode\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"Name\":{\"shape\":\"S22\"},\"Mode\":{},\"Metadata\":{\"shape\":\"S23\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"UpdateChannelMessage\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{channelArn}/messages/{messageId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\",\"MessageId\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"MessageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"},\"Content\":{\"shape\":\"S7q\"},\"Metadata\":{\"shape\":\"S23\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{},\"MessageId\":{}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"UpdateChannelReadMarker\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{channelArn}/readMarker\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelArn\"],\"members\":{\"ChannelArn\":{\"location\":\"uri\",\"locationName\":\"channelArn\"},\"ChimeBearer\":{\"location\":\"header\",\"locationName\":\"x-amz-chime-bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelArn\":{}}},\"endpoint\":{\"hostPrefix\":\"messaging-\"}},\"UpdateGlobalSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/settings\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"BusinessCalling\",\"VoiceConnector\"],\"members\":{\"BusinessCalling\":{\"shape\":\"S7y\"},\"VoiceConnector\":{\"shape\":\"S7z\"}}}},\"UpdatePhoneNumber\":{\"http\":{\"requestUri\":\"/phone-numbers/{phoneNumberId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneNumberId\"],\"members\":{\"PhoneNumberId\":{\"location\":\"uri\",\"locationName\":\"phoneNumberId\"},\"ProductType\":{},\"CallingName\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumber\":{\"shape\":\"S88\"}}}},\"UpdatePhoneNumberSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/settings/phone-number\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"CallingName\"],\"members\":{\"CallingName\":{\"shape\":\"S1j\"}}}},\"UpdateProxySession\":{\"http\":{\"requestUri\":\"/voice-connectors/{voiceConnectorId}/proxy-sessions/{proxySessionId}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Capabilities\",\"VoiceConnectorId\",\"ProxySessionId\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"ProxySessionId\":{\"location\":\"uri\",\"locationName\":\"proxySessionId\"},\"Capabilities\":{\"shape\":\"S3n\"},\"ExpiryMinutes\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProxySession\":{\"shape\":\"S3v\"}}}},\"UpdateRoom\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"Name\":{\"shape\":\"S1s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Room\":{\"shape\":\"S42\"}}}},\"UpdateRoomMembership\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/rooms/{roomId}/memberships/{memberId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"RoomId\",\"MemberId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"RoomId\":{\"location\":\"uri\",\"locationName\":\"roomId\"},\"MemberId\":{\"location\":\"uri\",\"locationName\":\"memberId\"},\"Role\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoomMembership\":{\"shape\":\"S45\"}}}},\"UpdateSipMediaApplication\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/sip-media-applications/{sipMediaApplicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SipMediaApplicationId\"],\"members\":{\"SipMediaApplicationId\":{\"location\":\"uri\",\"locationName\":\"sipMediaApplicationId\"},\"Name\":{},\"Endpoints\":{\"shape\":\"S4a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipMediaApplication\":{\"shape\":\"S4e\"}}}},\"UpdateSipRule\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/sip-rules/{sipRuleId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"SipRuleId\",\"Name\"],\"members\":{\"SipRuleId\":{\"location\":\"uri\",\"locationName\":\"sipRuleId\"},\"Name\":{},\"Disabled\":{\"type\":\"boolean\"},\"TargetApplications\":{\"shape\":\"S4l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SipRule\":{\"shape\":\"S4p\"}}}},\"UpdateUser\":{\"http\":{\"requestUri\":\"/accounts/{accountId}/users/{userId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"LicenseType\":{},\"UserType\":{},\"AlexaForBusinessMetadata\":{\"shape\":\"S1q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S4t\"}}}},\"UpdateUserSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{accountId}/users/{userId}/settings\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"UserId\",\"UserSettings\"],\"members\":{\"AccountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"UserSettings\":{\"shape\":\"S93\"}}}},\"UpdateVoiceConnector\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connectors/{voiceConnectorId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"Name\",\"RequireEncryption\"],\"members\":{\"VoiceConnectorId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorId\"},\"Name\":{},\"RequireEncryption\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnector\":{\"shape\":\"S50\"}}}},\"UpdateVoiceConnectorGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/voice-connector-groups/{voiceConnectorGroupId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorGroupId\",\"Name\",\"VoiceConnectorItems\"],\"members\":{\"VoiceConnectorGroupId\":{\"location\":\"uri\",\"locationName\":\"voiceConnectorGroupId\"},\"Name\":{},\"VoiceConnectorItems\":{\"shape\":\"S53\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorGroup\":{\"shape\":\"S57\"}}}}},\"shapes\":{\"S3\":{\"type\":\"string\",\"sensitive\":true},\"S7\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PhoneNumberId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"Sg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupName\":{}}}},\"Sm\":{\"type\":\"structure\",\"required\":[\"ExternalUserId\"],\"members\":{\"ExternalUserId\":{\"shape\":\"Sn\"},\"Tags\":{\"shape\":\"So\"}}},\"Sn\":{\"type\":\"string\",\"sensitive\":true},\"So\":{\"type\":\"list\",\"member\":{\"shape\":\"Sp\"}},\"Sp\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{\"shape\":\"Sq\"},\"Value\":{\"type\":\"string\",\"sensitive\":true}}},\"Sq\":{\"type\":\"string\",\"sensitive\":true},\"St\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}},\"Su\":{\"type\":\"structure\",\"members\":{\"ExternalUserId\":{\"shape\":\"Sn\"},\"AttendeeId\":{},\"JoinToken\":{\"shape\":\"Sv\"}}},\"Sv\":{\"type\":\"string\",\"sensitive\":true},\"Sw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ExternalUserId\":{\"shape\":\"Sn\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"S16\":{\"type\":\"list\",\"member\":{}},\"S19\":{\"type\":\"list\",\"member\":{}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UserId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"S1j\":{\"type\":\"string\",\"sensitive\":true},\"S1q\":{\"type\":\"structure\",\"members\":{\"IsAlexaForBusinessEnabled\":{\"type\":\"boolean\"},\"AlexaForBusinessRoomArn\":{\"shape\":\"S1s\"}}},\"S1s\":{\"type\":\"string\",\"sensitive\":true},\"S1x\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AccountId\",\"Name\"],\"members\":{\"AwsAccountId\":{},\"AccountId\":{},\"Name\":{},\"AccountType\":{},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"DefaultLicense\":{},\"SupportedLicenses\":{\"type\":\"list\",\"member\":{}},\"SigninDelegateGroups\":{\"shape\":\"Sg\"}}},\"S1z\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S22\":{\"type\":\"string\",\"sensitive\":true},\"S23\":{\"type\":\"string\",\"sensitive\":true},\"S24\":{\"type\":\"string\",\"sensitive\":true},\"S25\":{\"type\":\"list\",\"member\":{\"shape\":\"Sp\"}},\"S2a\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{\"type\":\"string\",\"sensitive\":true}}},\"S2e\":{\"type\":\"string\",\"sensitive\":true},\"S2k\":{\"type\":\"structure\",\"members\":{\"BotId\":{},\"UserId\":{},\"DisplayName\":{\"shape\":\"S1s\"},\"BotType\":{},\"Disabled\":{\"type\":\"boolean\"},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"},\"BotEmail\":{\"shape\":\"S1s\"},\"SecurityToken\":{\"shape\":\"S1s\"}}},\"S2y\":{\"type\":\"string\",\"sensitive\":true},\"S2z\":{\"type\":\"list\",\"member\":{\"shape\":\"Sp\"}},\"S30\":{\"type\":\"structure\",\"members\":{\"SnsTopicArn\":{\"shape\":\"S31\"},\"SqsQueueArn\":{\"shape\":\"S31\"}}},\"S31\":{\"type\":\"string\",\"sensitive\":true},\"S33\":{\"type\":\"structure\",\"members\":{\"MeetingId\":{},\"ExternalMeetingId\":{\"shape\":\"S2y\"},\"MediaPlacement\":{\"type\":\"structure\",\"members\":{\"AudioHostUrl\":{},\"AudioFallbackUrl\":{},\"ScreenDataUrl\":{},\"ScreenSharingUrl\":{},\"ScreenViewingUrl\":{},\"SignalingUrl\":{},\"TurnControlUrl\":{}}},\"MediaRegion\":{}}},\"S3d\":{\"type\":\"structure\",\"members\":{\"PhoneNumberOrderId\":{},\"ProductType\":{},\"Status\":{},\"OrderedPhoneNumbers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"E164PhoneNumber\":{\"shape\":\"S3\"},\"Status\":{}}}},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S3n\":{\"type\":\"list\",\"member\":{}},\"S3r\":{\"type\":\"structure\",\"required\":[\"Country\",\"AreaCode\"],\"members\":{\"Country\":{},\"AreaCode\":{}}},\"S3v\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorId\":{},\"ProxySessionId\":{},\"Name\":{},\"Status\":{},\"ExpiryMinutes\":{\"type\":\"integer\"},\"Capabilities\":{\"shape\":\"S3n\"},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"},\"EndedTimestamp\":{\"shape\":\"S1z\"},\"Participants\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PhoneNumber\":{\"shape\":\"S3\"},\"ProxyPhoneNumber\":{\"shape\":\"S3\"}}}},\"NumberSelectionBehavior\":{},\"GeoMatchLevel\":{},\"GeoMatchParams\":{\"shape\":\"S3r\"}}},\"S42\":{\"type\":\"structure\",\"members\":{\"RoomId\":{},\"Name\":{\"shape\":\"S1s\"},\"AccountId\":{},\"CreatedBy\":{},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S45\":{\"type\":\"structure\",\"members\":{\"RoomId\":{},\"Member\":{\"type\":\"structure\",\"members\":{\"MemberId\":{},\"MemberType\":{},\"Email\":{\"shape\":\"S1s\"},\"FullName\":{\"shape\":\"S1s\"},\"AccountId\":{}}},\"Role\":{},\"InvitedBy\":{},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S4a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LambdaArn\":{\"type\":\"string\",\"sensitive\":true}}}},\"S4e\":{\"type\":\"structure\",\"members\":{\"SipMediaApplicationId\":{},\"AwsRegion\":{},\"Name\":{},\"Endpoints\":{\"shape\":\"S4a\"},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S4l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SipMediaApplicationId\":{},\"Priority\":{\"type\":\"integer\"},\"AwsRegion\":{}}}},\"S4p\":{\"type\":\"structure\",\"members\":{\"SipRuleId\":{},\"Name\":{},\"Disabled\":{\"type\":\"boolean\"},\"TriggerType\":{},\"TriggerValue\":{},\"TargetApplications\":{\"shape\":\"S4l\"},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S4r\":{\"type\":\"string\",\"sensitive\":true},\"S4t\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{},\"AccountId\":{},\"PrimaryEmail\":{\"shape\":\"S4r\"},\"PrimaryProvisionedNumber\":{\"shape\":\"S1s\"},\"DisplayName\":{\"shape\":\"S1s\"},\"LicenseType\":{},\"UserType\":{},\"UserRegistrationStatus\":{},\"UserInvitationStatus\":{},\"RegisteredOn\":{\"shape\":\"S1z\"},\"InvitedOn\":{\"shape\":\"S1z\"},\"AlexaForBusinessMetadata\":{\"shape\":\"S1q\"},\"PersonalPIN\":{}}},\"S50\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorId\":{},\"AwsRegion\":{},\"Name\":{},\"OutboundHostName\":{},\"RequireEncryption\":{\"type\":\"boolean\"},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S53\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VoiceConnectorId\",\"Priority\"],\"members\":{\"VoiceConnectorId\":{},\"Priority\":{\"type\":\"integer\"}}}},\"S57\":{\"type\":\"structure\",\"members\":{\"VoiceConnectorGroupId\":{},\"Name\":{},\"VoiceConnectorItems\":{\"shape\":\"S53\"},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"}}},\"S61\":{\"type\":\"list\",\"member\":{\"shape\":\"S1s\"}},\"S6n\":{\"type\":\"structure\",\"members\":{\"ChannelSummary\":{\"shape\":\"S6o\"},\"AppInstanceUserMembershipSummary\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"ReadMarkerTimestamp\":{\"type\":\"timestamp\"}}}}},\"S6o\":{\"type\":\"structure\",\"members\":{\"Name\":{\"shape\":\"S22\"},\"ChannelArn\":{},\"Mode\":{},\"Privacy\":{},\"Metadata\":{\"shape\":\"S23\"},\"LastMessageTimestamp\":{\"type\":\"timestamp\"}}},\"S6s\":{\"type\":\"structure\",\"members\":{\"ChannelSummary\":{\"shape\":\"S6o\"}}},\"S78\":{\"type\":\"structure\",\"members\":{\"DisableRemoteControl\":{\"type\":\"boolean\"},\"EnableDialOut\":{\"type\":\"boolean\"}}},\"S7b\":{\"type\":\"structure\",\"members\":{\"ChannelRetentionSettings\":{\"type\":\"structure\",\"members\":{\"RetentionDays\":{\"type\":\"integer\"}}}}},\"S7g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AppInstanceDataType\",\"ResourceArn\"],\"members\":{\"AppInstanceDataType\":{},\"ResourceArn\":{\"shape\":\"S31\"}}}},\"S7q\":{\"type\":\"string\",\"sensitive\":true},\"S7w\":{\"type\":\"structure\",\"members\":{\"BotId\":{},\"OutboundEventsHTTPSEndpoint\":{\"shape\":\"S1s\"},\"LambdaFunctionArn\":{\"shape\":\"S1s\"}}},\"S7y\":{\"type\":\"structure\",\"members\":{\"CdrBucket\":{}}},\"S7z\":{\"type\":\"structure\",\"members\":{\"CdrBucket\":{}}},\"S88\":{\"type\":\"structure\",\"members\":{\"PhoneNumberId\":{},\"E164PhoneNumber\":{\"shape\":\"S3\"},\"Type\":{},\"ProductType\":{},\"Status\":{},\"Capabilities\":{\"type\":\"structure\",\"members\":{\"InboundCall\":{\"type\":\"boolean\"},\"OutboundCall\":{\"type\":\"boolean\"},\"InboundSMS\":{\"type\":\"boolean\"},\"OutboundSMS\":{\"type\":\"boolean\"},\"InboundMMS\":{\"type\":\"boolean\"},\"OutboundMMS\":{\"type\":\"boolean\"}}},\"Associations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"Name\":{},\"AssociatedTimestamp\":{\"shape\":\"S1z\"}}}},\"CallingName\":{\"shape\":\"S1j\"},\"CallingNameStatus\":{},\"CreatedTimestamp\":{\"shape\":\"S1z\"},\"UpdatedTimestamp\":{\"shape\":\"S1z\"},\"DeletionTimestamp\":{\"shape\":\"S1z\"}}},\"S8n\":{\"type\":\"structure\",\"members\":{\"RoomRetentionSettings\":{\"type\":\"structure\",\"members\":{\"RetentionDays\":{\"type\":\"integer\"}}},\"ConversationRetentionSettings\":{\"type\":\"structure\",\"members\":{\"RetentionDays\":{\"type\":\"integer\"}}}}},\"S8w\":{\"type\":\"structure\",\"members\":{\"EnableSipMediaApplicationMessageLogs\":{\"type\":\"boolean\"}}},\"S93\":{\"type\":\"structure\",\"required\":[\"Telephony\"],\"members\":{\"Telephony\":{\"type\":\"structure\",\"required\":[\"InboundCalling\",\"OutboundCalling\",\"SMS\"],\"members\":{\"InboundCalling\":{\"type\":\"boolean\"},\"OutboundCalling\":{\"type\":\"boolean\"},\"SMS\":{\"type\":\"boolean\"}}}}},\"S99\":{\"type\":\"structure\",\"members\":{\"DNIS\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EmergencyPhoneNumber\",\"CallingCountry\"],\"members\":{\"EmergencyPhoneNumber\":{\"shape\":\"S3\"},\"TestPhoneNumber\":{\"shape\":\"S3\"},\"CallingCountry\":{}}}}}},\"S9h\":{\"type\":\"structure\",\"members\":{\"EnableSIPLogs\":{\"type\":\"boolean\"}}},\"S9k\":{\"type\":\"structure\",\"members\":{\"Routes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Protocol\":{},\"Priority\":{\"type\":\"integer\"},\"Weight\":{\"type\":\"integer\"}}}},\"Disabled\":{\"type\":\"boolean\"}}},\"S9t\":{\"type\":\"structure\",\"members\":{\"DefaultSessionExpiryMinutes\":{\"type\":\"integer\"},\"Disabled\":{\"type\":\"boolean\"},\"FallBackPhoneNumber\":{\"shape\":\"S3\"},\"PhoneNumberCountries\":{\"shape\":\"S9v\"}}},\"S9v\":{\"type\":\"list\",\"member\":{}},\"S9y\":{\"type\":\"structure\",\"required\":[\"DataRetentionInHours\"],\"members\":{\"DataRetentionInHours\":{\"type\":\"integer\"},\"Disabled\":{\"type\":\"boolean\"},\"StreamingNotificationTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"NotificationTarget\"],\"members\":{\"NotificationTarget\":{}}}}}},\"Sa5\":{\"type\":\"structure\",\"members\":{\"CpsLimit\":{\"type\":\"integer\"},\"DefaultPhoneNumber\":{\"shape\":\"S3\"},\"CallingRegions\":{\"type\":\"list\",\"member\":{}},\"CidrAllowedList\":{\"shape\":\"S9v\"},\"Disabled\":{\"type\":\"boolean\"}}},\"Sao\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 6307:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccounts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAppInstanceAdmins\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAppInstanceUsers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAppInstances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAttendees\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBots\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannelBans\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannelMemberships\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannelMembershipsForAppInstanceUser\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannelMessages\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannelModerators\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListChannelsModeratedByAppInstanceUser\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMeetings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPhoneNumberOrders\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPhoneNumbers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListProxySessions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRoomMemberships\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRooms\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSipMediaApplications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSipRules\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListUsers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListVoiceConnectorGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListVoiceConnectors\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 90697:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-23\",\"endpointPrefix\":\"cloud9\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Cloud9\",\"serviceId\":\"Cloud9\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSCloud9WorkspaceManagementService\",\"uid\":\"cloud9-2017-09-23\"},\"operations\":{\"CreateEnvironmentEC2\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"instanceType\"],\"members\":{\"name\":{},\"description\":{\"shape\":\"S3\"},\"clientRequestToken\":{},\"instanceType\":{},\"subnetId\":{},\"imageId\":{},\"automaticStopTimeMinutes\":{\"type\":\"integer\"},\"ownerArn\":{},\"tags\":{\"shape\":\"Sa\"},\"connectionType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"environmentId\":{}}},\"idempotent\":true},\"CreateEnvironmentMembership\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentId\",\"userArn\",\"permissions\"],\"members\":{\"environmentId\":{},\"userArn\":{},\"permissions\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"membership\"],\"members\":{\"membership\":{\"shape\":\"Sk\"}}},\"idempotent\":true},\"DeleteEnvironment\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentId\"],\"members\":{\"environmentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteEnvironmentMembership\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentId\",\"userArn\"],\"members\":{\"environmentId\":{},\"userArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DescribeEnvironmentMemberships\":{\"input\":{\"type\":\"structure\",\"members\":{\"userArn\":{},\"environmentId\":{},\"permissions\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"memberships\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}},\"nextToken\":{}}}},\"DescribeEnvironmentStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentId\"],\"members\":{\"environmentId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"status\",\"message\"],\"members\":{\"status\":{},\"message\":{}}}},\"DescribeEnvironments\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentIds\"],\"members\":{\"environmentIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"environments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"type\",\"arn\",\"ownerArn\"],\"members\":{\"id\":{},\"name\":{},\"description\":{\"shape\":\"S3\"},\"type\":{},\"connectionType\":{},\"arn\":{},\"ownerArn\":{},\"lifecycle\":{\"type\":\"structure\",\"members\":{\"status\":{},\"reason\":{},\"failureResource\":{}}},\"managedCredentialsStatus\":{}}}}}}},\"ListEnvironments\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"environmentIds\":{\"type\":\"list\",\"member\":{}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sa\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"},\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateEnvironment\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentId\"],\"members\":{\"environmentId\":{},\"name\":{},\"description\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateEnvironmentMembership\":{\"input\":{\"type\":\"structure\",\"required\":[\"environmentId\",\"userArn\",\"permissions\"],\"members\":{\"environmentId\":{},\"userArn\":{},\"permissions\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"membership\":{\"shape\":\"Sk\"}}},\"idempotent\":true}},\"shapes\":{\"S3\":{\"type\":\"string\",\"sensitive\":true},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{\"shape\":\"Sc\"},\"Value\":{\"type\":\"string\",\"sensitive\":true}},\"sensitive\":true},\"sensitive\":true},\"Sc\":{\"type\":\"string\",\"sensitive\":true},\"Sk\":{\"type\":\"structure\",\"required\":[\"permissions\",\"userId\",\"userArn\",\"environmentId\"],\"members\":{\"permissions\":{},\"userId\":{},\"userArn\":{},\"environmentId\":{},\"lastAccess\":{\"type\":\"timestamp\"}}}}}");

/***/ }),

/***/ 79426:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeEnvironmentMemberships\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListEnvironments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 87301:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-05-10\",\"endpointPrefix\":\"clouddirectory\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon CloudDirectory\",\"serviceId\":\"CloudDirectory\",\"signatureVersion\":\"v4\",\"signingName\":\"clouddirectory\",\"uid\":\"clouddirectory-2016-05-10\"},\"operations\":{\"AddFacetToObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/facets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SchemaFacet\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ApplySchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/apply\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PublishedSchemaArn\",\"DirectoryArn\"],\"members\":{\"PublishedSchemaArn\":{},\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppliedSchemaArn\":{},\"DirectoryArn\":{}}}},\"AttachObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ParentReference\",\"ChildReference\",\"LinkName\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ParentReference\":{\"shape\":\"Sf\"},\"ChildReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedObjectIdentifier\":{}}}},\"AttachPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"PolicyReference\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AttachToIndex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/index/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"IndexReference\",\"TargetReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedObjectIdentifier\":{}}}},\"AttachTypedLink\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SourceObjectReference\",\"TargetObjectReference\",\"TypedLinkFacet\",\"Attributes\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SourceObjectReference\":{\"shape\":\"Sf\"},\"TargetObjectReference\":{\"shape\":\"Sf\"},\"TypedLinkFacet\":{\"shape\":\"St\"},\"Attributes\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}}},\"BatchRead\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/batchread\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"Operations\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Operations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ListObjectAttributes\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"FacetFilter\":{\"shape\":\"S3\"}}},\"ListObjectChildren\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListAttachedIndices\":{\"type\":\"structure\",\"required\":[\"TargetReference\"],\"members\":{\"TargetReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListObjectParentPaths\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"GetObjectInformation\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"}}},\"GetObjectAttributes\":{\"type\":\"structure\",\"required\":[\"ObjectReference\",\"SchemaFacet\",\"AttributeNames\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"AttributeNames\":{\"shape\":\"S1a\"}}},\"ListObjectPolicies\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListPolicyAttachments\":{\"type\":\"structure\",\"required\":[\"PolicyReference\"],\"members\":{\"PolicyReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"LookupPolicy\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListIndex\":{\"type\":\"structure\",\"required\":[\"IndexReference\"],\"members\":{\"RangesOnIndexedValues\":{\"shape\":\"S1f\"},\"IndexReference\":{\"shape\":\"Sf\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"ListOutgoingTypedLinks\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1k\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListIncomingTypedLinks\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1k\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"GetLinkAttributes\":{\"type\":\"structure\",\"required\":[\"TypedLinkSpecifier\",\"AttributeNames\"],\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeNames\":{\"shape\":\"S1a\"}}}}}},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SuccessfulResponse\":{\"type\":\"structure\",\"members\":{\"ListObjectAttributes\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"},\"NextToken\":{}}},\"ListObjectChildren\":{\"type\":\"structure\",\"members\":{\"Children\":{\"shape\":\"S1v\"},\"NextToken\":{}}},\"GetObjectInformation\":{\"type\":\"structure\",\"members\":{\"SchemaFacets\":{\"shape\":\"S1x\"},\"ObjectIdentifier\":{}}},\"GetObjectAttributes\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}},\"ListAttachedIndices\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S20\"},\"NextToken\":{}}},\"ListObjectParentPaths\":{\"type\":\"structure\",\"members\":{\"PathToObjectIdentifiersList\":{\"shape\":\"S23\"},\"NextToken\":{}}},\"ListObjectPolicies\":{\"type\":\"structure\",\"members\":{\"AttachedPolicyIds\":{\"shape\":\"S26\"},\"NextToken\":{}}},\"ListPolicyAttachments\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifiers\":{\"shape\":\"S26\"},\"NextToken\":{}}},\"LookupPolicy\":{\"type\":\"structure\",\"members\":{\"PolicyToPathList\":{\"shape\":\"S2a\"},\"NextToken\":{}}},\"ListIndex\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S20\"},\"NextToken\":{}}},\"ListOutgoingTypedLinks\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifiers\":{\"shape\":\"S2h\"},\"NextToken\":{}}},\"ListIncomingTypedLinks\":{\"type\":\"structure\",\"members\":{\"LinkSpecifiers\":{\"shape\":\"S2h\"},\"NextToken\":{}}},\"GetLinkAttributes\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}}}},\"ExceptionResponse\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}}}}}}},\"BatchWrite\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/batchwrite\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"Operations\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Operations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreateObject\":{\"type\":\"structure\",\"required\":[\"SchemaFacet\",\"ObjectAttributeList\"],\"members\":{\"SchemaFacet\":{\"shape\":\"S1x\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{},\"BatchReferenceName\":{}}},\"AttachObject\":{\"type\":\"structure\",\"required\":[\"ParentReference\",\"ChildReference\",\"LinkName\"],\"members\":{\"ParentReference\":{\"shape\":\"Sf\"},\"ChildReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"DetachObject\":{\"type\":\"structure\",\"required\":[\"ParentReference\",\"LinkName\"],\"members\":{\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{},\"BatchReferenceName\":{}}},\"UpdateObjectAttributes\":{\"type\":\"structure\",\"required\":[\"ObjectReference\",\"AttributeUpdates\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"AttributeUpdates\":{\"shape\":\"S2v\"}}},\"DeleteObject\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"}}},\"AddFacetToObject\":{\"type\":\"structure\",\"required\":[\"SchemaFacet\",\"ObjectAttributeList\",\"ObjectReference\"],\"members\":{\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"RemoveFacetFromObject\":{\"type\":\"structure\",\"required\":[\"SchemaFacet\",\"ObjectReference\"],\"members\":{\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"AttachPolicy\":{\"type\":\"structure\",\"required\":[\"PolicyReference\",\"ObjectReference\"],\"members\":{\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"DetachPolicy\":{\"type\":\"structure\",\"required\":[\"PolicyReference\",\"ObjectReference\"],\"members\":{\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"CreateIndex\":{\"type\":\"structure\",\"required\":[\"OrderedIndexedAttributeList\",\"IsUnique\"],\"members\":{\"OrderedIndexedAttributeList\":{\"shape\":\"S35\"},\"IsUnique\":{\"type\":\"boolean\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{},\"BatchReferenceName\":{}}},\"AttachToIndex\":{\"type\":\"structure\",\"required\":[\"IndexReference\",\"TargetReference\"],\"members\":{\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"DetachFromIndex\":{\"type\":\"structure\",\"required\":[\"IndexReference\",\"TargetReference\"],\"members\":{\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"AttachTypedLink\":{\"type\":\"structure\",\"required\":[\"SourceObjectReference\",\"TargetObjectReference\",\"TypedLinkFacet\",\"Attributes\"],\"members\":{\"SourceObjectReference\":{\"shape\":\"Sf\"},\"TargetObjectReference\":{\"shape\":\"Sf\"},\"TypedLinkFacet\":{\"shape\":\"St\"},\"Attributes\":{\"shape\":\"Sv\"}}},\"DetachTypedLink\":{\"type\":\"structure\",\"required\":[\"TypedLinkSpecifier\"],\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}},\"UpdateLinkAttributes\":{\"type\":\"structure\",\"required\":[\"TypedLinkSpecifier\",\"AttributeUpdates\"],\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeUpdates\":{\"shape\":\"S3c\"}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreateObject\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}},\"AttachObject\":{\"type\":\"structure\",\"members\":{\"attachedObjectIdentifier\":{}}},\"DetachObject\":{\"type\":\"structure\",\"members\":{\"detachedObjectIdentifier\":{}}},\"UpdateObjectAttributes\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}},\"DeleteObject\":{\"type\":\"structure\",\"members\":{}},\"AddFacetToObject\":{\"type\":\"structure\",\"members\":{}},\"RemoveFacetFromObject\":{\"type\":\"structure\",\"members\":{}},\"AttachPolicy\":{\"type\":\"structure\",\"members\":{}},\"DetachPolicy\":{\"type\":\"structure\",\"members\":{}},\"CreateIndex\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}},\"AttachToIndex\":{\"type\":\"structure\",\"members\":{\"AttachedObjectIdentifier\":{}}},\"DetachFromIndex\":{\"type\":\"structure\",\"members\":{\"DetachedObjectIdentifier\":{}}},\"AttachTypedLink\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}},\"DetachTypedLink\":{\"type\":\"structure\",\"members\":{}},\"UpdateLinkAttributes\":{\"type\":\"structure\",\"members\":{}}}}}}}},\"CreateDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SchemaArn\"],\"members\":{\"Name\":{},\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"Name\",\"ObjectIdentifier\",\"AppliedSchemaArn\"],\"members\":{\"DirectoryArn\":{},\"Name\":{},\"ObjectIdentifier\":{},\"AppliedSchemaArn\":{}}}},\"CreateFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\",\"ObjectType\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"Attributes\":{\"shape\":\"S42\"},\"ObjectType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateIndex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/index\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"OrderedIndexedAttributeList\",\"IsUnique\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"OrderedIndexedAttributeList\":{\"shape\":\"S35\"},\"IsUnique\":{\"type\":\"boolean\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}}},\"CreateObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SchemaFacets\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SchemaFacets\":{\"shape\":\"S1x\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}}},\"CreateSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{}}}},\"CreateTypedLinkFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Facet\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Facet\":{\"type\":\"structure\",\"required\":[\"Name\",\"Attributes\",\"IdentityAttributeOrder\"],\"members\":{\"Name\":{},\"Attributes\":{\"shape\":\"S4q\"},\"IdentityAttributeOrder\":{\"shape\":\"S1a\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{}}}},\"DeleteFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{}}}},\"DeleteTypedLinkFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DetachFromIndex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/index/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"IndexReference\",\"TargetReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DetachedObjectIdentifier\":{}}}},\"DetachObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ParentReference\",\"LinkName\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DetachedObjectIdentifier\":{}}}},\"DetachPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"PolicyReference\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DetachTypedLink\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TypedLinkSpecifier\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}}},\"DisableDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/disable\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{}}}},\"EnableDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/enable\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{}}}},\"GetAppliedSchemaVersion\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/getappliedschema\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppliedSchemaArn\":{}}}},\"GetDirectory\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Directory\"],\"members\":{\"Directory\":{\"shape\":\"S5i\"}}}},\"GetFacet\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Facet\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ObjectType\":{}}}}}},\"GetLinkAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/attributes/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TypedLinkSpecifier\",\"AttributeNames\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeNames\":{\"shape\":\"S1a\"},\"ConsistencyLevel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}}},\"GetObjectAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/attributes/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\",\"SchemaFacet\",\"AttributeNames\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"AttributeNames\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}}},\"GetObjectInformation\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/information\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaFacets\":{\"shape\":\"S1x\"},\"ObjectIdentifier\":{}}}},\"GetSchemaAsJson\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/json\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Document\":{}}}},\"GetTypedLinkFacetInformation\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityAttributeOrder\":{\"shape\":\"S1a\"}}}},\"ListAppliedSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/applied\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{},\"SchemaArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S61\"},\"NextToken\":{}}}},\"ListAttachedIndices\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/indices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TargetReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TargetReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S20\"},\"NextToken\":{}}}},\"ListDevelopmentSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/development\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S61\"},\"NextToken\":{}}}},\"ListDirectories\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"state\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Directories\"],\"members\":{\"Directories\":{\"type\":\"list\",\"member\":{\"shape\":\"S5i\"}},\"NextToken\":{}}}},\"ListFacetAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/attributes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S42\"},\"NextToken\":{}}}},\"ListFacetNames\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FacetNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListIncomingTypedLinks\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/incoming\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1k\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LinkSpecifiers\":{\"shape\":\"S2h\"},\"NextToken\":{}}}},\"ListIndex\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/index/targets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"IndexReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"RangesOnIndexedValues\":{\"shape\":\"S1f\"},\"IndexReference\":{\"shape\":\"Sf\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S20\"},\"NextToken\":{}}}},\"ListObjectAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/attributes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"},\"FacetFilter\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"},\"NextToken\":{}}}},\"ListObjectChildren\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/children\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Children\":{\"shape\":\"S1v\"},\"NextToken\":{}}}},\"ListObjectParentPaths\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/parentpaths\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PathToObjectIdentifiersList\":{\"shape\":\"S23\"},\"NextToken\":{}}}},\"ListObjectParents\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/parent\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parents\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"NextToken\":{}}}},\"ListObjectPolicies\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedPolicyIds\":{\"shape\":\"S26\"},\"NextToken\":{}}}},\"ListOutgoingTypedLinks\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/outgoing\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1k\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifiers\":{\"shape\":\"S2h\"},\"NextToken\":{}}}},\"ListPolicyAttachments\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/attachment\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"PolicyReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"PolicyReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifiers\":{\"shape\":\"S26\"},\"NextToken\":{}}}},\"ListPublishedSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/published\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S61\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/tags\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S72\"},\"NextToken\":{}}}},\"ListTypedLinkFacetAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/attributes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4q\"},\"NextToken\":{}}}},\"ListTypedLinkFacetNames\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FacetNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"LookupPolicy\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/lookup\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyToPathList\":{\"shape\":\"S2a\"},\"NextToken\":{}}}},\"PublishSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/publish\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DevelopmentSchemaArn\",\"Version\"],\"members\":{\"DevelopmentSchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Version\":{},\"MinorVersion\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublishedSchemaArn\":{}}}},\"PutSchemaFromJson\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/json\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Document\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Document\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"RemoveFacetFromObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/facets/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SchemaFacet\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/tags/add\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S72\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/tags/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"AttributeUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Attribute\":{\"shape\":\"S43\"},\"Action\":{}}}},\"ObjectType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLinkAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/attributes/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TypedLinkSpecifier\",\"AttributeUpdates\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeUpdates\":{\"shape\":\"S3c\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateObjectAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\",\"AttributeUpdates\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"AttributeUpdates\":{\"shape\":\"S2v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}}},\"UpdateSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{}}}},\"UpdateTypedLinkFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\",\"AttributeUpdates\",\"IdentityAttributeOrder\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"AttributeUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"Action\"],\"members\":{\"Attribute\":{\"shape\":\"S4r\"},\"Action\":{}}}},\"IdentityAttributeOrder\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpgradeAppliedSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/upgradeapplied\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PublishedSchemaArn\",\"DirectoryArn\"],\"members\":{\"PublishedSchemaArn\":{},\"DirectoryArn\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpgradedSchemaArn\":{},\"DirectoryArn\":{}}}},\"UpgradePublishedSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/upgradepublished\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DevelopmentSchemaArn\",\"PublishedSchemaArn\",\"MinorVersion\"],\"members\":{\"DevelopmentSchemaArn\":{},\"PublishedSchemaArn\":{},\"MinorVersion\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpgradedSchemaArn\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"FacetName\":{}}},\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{\"shape\":\"S7\"},\"Value\":{\"shape\":\"S9\"}}}},\"S7\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"FacetName\",\"Name\"],\"members\":{\"SchemaArn\":{},\"FacetName\":{},\"Name\":{}}},\"S9\":{\"type\":\"structure\",\"members\":{\"StringValue\":{},\"BinaryValue\":{\"type\":\"blob\"},\"BooleanValue\":{\"type\":\"boolean\"},\"NumberValue\":{},\"DatetimeValue\":{\"type\":\"timestamp\"}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"Selector\":{}}},\"St\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"TypedLinkName\"],\"members\":{\"SchemaArn\":{},\"TypedLinkName\":{}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"Value\"],\"members\":{\"AttributeName\":{},\"Value\":{\"shape\":\"S9\"}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"TypedLinkFacet\",\"SourceObjectReference\",\"TargetObjectReference\",\"IdentityAttributeValues\"],\"members\":{\"TypedLinkFacet\":{\"shape\":\"St\"},\"SourceObjectReference\":{\"shape\":\"Sf\"},\"TargetObjectReference\":{\"shape\":\"Sf\"},\"IdentityAttributeValues\":{\"shape\":\"Sv\"}}},\"S1a\":{\"type\":\"list\",\"member\":{}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeKey\":{\"shape\":\"S7\"},\"Range\":{\"shape\":\"S1h\"}}}},\"S1h\":{\"type\":\"structure\",\"required\":[\"StartMode\",\"EndMode\"],\"members\":{\"StartMode\":{},\"StartValue\":{\"shape\":\"S9\"},\"EndMode\":{},\"EndValue\":{\"shape\":\"S9\"}}},\"S1k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Range\"],\"members\":{\"AttributeName\":{},\"Range\":{\"shape\":\"S1h\"}}}},\"S1v\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1x\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"S20\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexedAttributes\":{\"shape\":\"S5\"},\"ObjectIdentifier\":{}}}},\"S23\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"ObjectIdentifiers\":{\"shape\":\"S26\"}}}},\"S26\":{\"type\":\"list\",\"member\":{}},\"S2a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"Policies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyId\":{},\"ObjectIdentifier\":{},\"PolicyType\":{}}}}}}},\"S2h\":{\"type\":\"list\",\"member\":{\"shape\":\"Sy\"}},\"S2v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ObjectAttributeKey\":{\"shape\":\"S7\"},\"ObjectAttributeAction\":{\"type\":\"structure\",\"members\":{\"ObjectAttributeActionType\":{},\"ObjectAttributeUpdateValue\":{\"shape\":\"S9\"}}}}}},\"S35\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"S3c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeKey\":{\"shape\":\"S7\"},\"AttributeAction\":{\"type\":\"structure\",\"members\":{\"AttributeActionType\":{},\"AttributeUpdateValue\":{\"shape\":\"S9\"}}}}}},\"S42\":{\"type\":\"list\",\"member\":{\"shape\":\"S43\"}},\"S43\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"AttributeDefinition\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"DefaultValue\":{\"shape\":\"S9\"},\"IsImmutable\":{\"type\":\"boolean\"},\"Rules\":{\"shape\":\"S46\"}}},\"AttributeReference\":{\"type\":\"structure\",\"required\":[\"TargetFacetName\",\"TargetAttributeName\"],\"members\":{\"TargetFacetName\":{},\"TargetAttributeName\":{}}},\"RequiredBehavior\":{}}},\"S46\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S4q\":{\"type\":\"list\",\"member\":{\"shape\":\"S4r\"}},\"S4r\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\",\"RequiredBehavior\"],\"members\":{\"Name\":{},\"Type\":{},\"DefaultValue\":{\"shape\":\"S9\"},\"IsImmutable\":{\"type\":\"boolean\"},\"Rules\":{\"shape\":\"S46\"},\"RequiredBehavior\":{}}},\"S5i\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DirectoryArn\":{},\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"}}},\"S61\":{\"type\":\"list\",\"member\":{}},\"S72\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 72446:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAppliedSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAttachedIndices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDevelopmentSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDirectories\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListFacetAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListFacetNames\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListIndex\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectChildren\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectParentPaths\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectParents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectPolicies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPolicyAttachments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPublishedSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTypedLinkFacetAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTypedLinkFacetNames\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"LookupPolicy\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 79943:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-01-11\",\"endpointPrefix\":\"clouddirectory\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon CloudDirectory\",\"serviceId\":\"CloudDirectory\",\"signatureVersion\":\"v4\",\"signingName\":\"clouddirectory\",\"uid\":\"clouddirectory-2017-01-11\"},\"operations\":{\"AddFacetToObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/facets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SchemaFacet\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ApplySchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/apply\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PublishedSchemaArn\",\"DirectoryArn\"],\"members\":{\"PublishedSchemaArn\":{},\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppliedSchemaArn\":{},\"DirectoryArn\":{}}}},\"AttachObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ParentReference\",\"ChildReference\",\"LinkName\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ParentReference\":{\"shape\":\"Sf\"},\"ChildReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedObjectIdentifier\":{}}}},\"AttachPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"PolicyReference\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AttachToIndex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/index/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"IndexReference\",\"TargetReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedObjectIdentifier\":{}}}},\"AttachTypedLink\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/attach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SourceObjectReference\",\"TargetObjectReference\",\"TypedLinkFacet\",\"Attributes\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SourceObjectReference\":{\"shape\":\"Sf\"},\"TargetObjectReference\":{\"shape\":\"Sf\"},\"TypedLinkFacet\":{\"shape\":\"St\"},\"Attributes\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}}},\"BatchRead\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/batchread\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"Operations\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Operations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ListObjectAttributes\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"FacetFilter\":{\"shape\":\"S3\"}}},\"ListObjectChildren\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListAttachedIndices\":{\"type\":\"structure\",\"required\":[\"TargetReference\"],\"members\":{\"TargetReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListObjectParentPaths\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"GetObjectInformation\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"}}},\"GetObjectAttributes\":{\"type\":\"structure\",\"required\":[\"ObjectReference\",\"SchemaFacet\",\"AttributeNames\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"AttributeNames\":{\"shape\":\"S1a\"}}},\"ListObjectParents\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListObjectPolicies\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListPolicyAttachments\":{\"type\":\"structure\",\"required\":[\"PolicyReference\"],\"members\":{\"PolicyReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"LookupPolicy\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListIndex\":{\"type\":\"structure\",\"required\":[\"IndexReference\"],\"members\":{\"RangesOnIndexedValues\":{\"shape\":\"S1g\"},\"IndexReference\":{\"shape\":\"Sf\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"ListOutgoingTypedLinks\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1l\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"ListIncomingTypedLinks\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1l\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"GetLinkAttributes\":{\"type\":\"structure\",\"required\":[\"TypedLinkSpecifier\",\"AttributeNames\"],\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeNames\":{\"shape\":\"S1a\"}}}}}},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SuccessfulResponse\":{\"type\":\"structure\",\"members\":{\"ListObjectAttributes\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"},\"NextToken\":{}}},\"ListObjectChildren\":{\"type\":\"structure\",\"members\":{\"Children\":{\"shape\":\"S1w\"},\"NextToken\":{}}},\"GetObjectInformation\":{\"type\":\"structure\",\"members\":{\"SchemaFacets\":{\"shape\":\"S1y\"},\"ObjectIdentifier\":{}}},\"GetObjectAttributes\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}},\"ListAttachedIndices\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S21\"},\"NextToken\":{}}},\"ListObjectParentPaths\":{\"type\":\"structure\",\"members\":{\"PathToObjectIdentifiersList\":{\"shape\":\"S24\"},\"NextToken\":{}}},\"ListObjectPolicies\":{\"type\":\"structure\",\"members\":{\"AttachedPolicyIds\":{\"shape\":\"S27\"},\"NextToken\":{}}},\"ListPolicyAttachments\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifiers\":{\"shape\":\"S27\"},\"NextToken\":{}}},\"LookupPolicy\":{\"type\":\"structure\",\"members\":{\"PolicyToPathList\":{\"shape\":\"S2b\"},\"NextToken\":{}}},\"ListIndex\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S21\"},\"NextToken\":{}}},\"ListOutgoingTypedLinks\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifiers\":{\"shape\":\"S2i\"},\"NextToken\":{}}},\"ListIncomingTypedLinks\":{\"type\":\"structure\",\"members\":{\"LinkSpecifiers\":{\"shape\":\"S2i\"},\"NextToken\":{}}},\"GetLinkAttributes\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}},\"ListObjectParents\":{\"type\":\"structure\",\"members\":{\"ParentLinks\":{\"shape\":\"S2m\"},\"NextToken\":{}}}}},\"ExceptionResponse\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}}}}}}},\"BatchWrite\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/batchwrite\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"Operations\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Operations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreateObject\":{\"type\":\"structure\",\"required\":[\"SchemaFacet\",\"ObjectAttributeList\"],\"members\":{\"SchemaFacet\":{\"shape\":\"S1y\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{},\"BatchReferenceName\":{}}},\"AttachObject\":{\"type\":\"structure\",\"required\":[\"ParentReference\",\"ChildReference\",\"LinkName\"],\"members\":{\"ParentReference\":{\"shape\":\"Sf\"},\"ChildReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"DetachObject\":{\"type\":\"structure\",\"required\":[\"ParentReference\",\"LinkName\"],\"members\":{\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{},\"BatchReferenceName\":{}}},\"UpdateObjectAttributes\":{\"type\":\"structure\",\"required\":[\"ObjectReference\",\"AttributeUpdates\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"},\"AttributeUpdates\":{\"shape\":\"S2z\"}}},\"DeleteObject\":{\"type\":\"structure\",\"required\":[\"ObjectReference\"],\"members\":{\"ObjectReference\":{\"shape\":\"Sf\"}}},\"AddFacetToObject\":{\"type\":\"structure\",\"required\":[\"SchemaFacet\",\"ObjectAttributeList\",\"ObjectReference\"],\"members\":{\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"RemoveFacetFromObject\":{\"type\":\"structure\",\"required\":[\"SchemaFacet\",\"ObjectReference\"],\"members\":{\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"AttachPolicy\":{\"type\":\"structure\",\"required\":[\"PolicyReference\",\"ObjectReference\"],\"members\":{\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"DetachPolicy\":{\"type\":\"structure\",\"required\":[\"PolicyReference\",\"ObjectReference\"],\"members\":{\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"CreateIndex\":{\"type\":\"structure\",\"required\":[\"OrderedIndexedAttributeList\",\"IsUnique\"],\"members\":{\"OrderedIndexedAttributeList\":{\"shape\":\"S39\"},\"IsUnique\":{\"type\":\"boolean\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{},\"BatchReferenceName\":{}}},\"AttachToIndex\":{\"type\":\"structure\",\"required\":[\"IndexReference\",\"TargetReference\"],\"members\":{\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"DetachFromIndex\":{\"type\":\"structure\",\"required\":[\"IndexReference\",\"TargetReference\"],\"members\":{\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"AttachTypedLink\":{\"type\":\"structure\",\"required\":[\"SourceObjectReference\",\"TargetObjectReference\",\"TypedLinkFacet\",\"Attributes\"],\"members\":{\"SourceObjectReference\":{\"shape\":\"Sf\"},\"TargetObjectReference\":{\"shape\":\"Sf\"},\"TypedLinkFacet\":{\"shape\":\"St\"},\"Attributes\":{\"shape\":\"Sv\"}}},\"DetachTypedLink\":{\"type\":\"structure\",\"required\":[\"TypedLinkSpecifier\"],\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}},\"UpdateLinkAttributes\":{\"type\":\"structure\",\"required\":[\"TypedLinkSpecifier\",\"AttributeUpdates\"],\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeUpdates\":{\"shape\":\"S3g\"}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreateObject\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}},\"AttachObject\":{\"type\":\"structure\",\"members\":{\"attachedObjectIdentifier\":{}}},\"DetachObject\":{\"type\":\"structure\",\"members\":{\"detachedObjectIdentifier\":{}}},\"UpdateObjectAttributes\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}},\"DeleteObject\":{\"type\":\"structure\",\"members\":{}},\"AddFacetToObject\":{\"type\":\"structure\",\"members\":{}},\"RemoveFacetFromObject\":{\"type\":\"structure\",\"members\":{}},\"AttachPolicy\":{\"type\":\"structure\",\"members\":{}},\"DetachPolicy\":{\"type\":\"structure\",\"members\":{}},\"CreateIndex\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}},\"AttachToIndex\":{\"type\":\"structure\",\"members\":{\"AttachedObjectIdentifier\":{}}},\"DetachFromIndex\":{\"type\":\"structure\",\"members\":{\"DetachedObjectIdentifier\":{}}},\"AttachTypedLink\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}},\"DetachTypedLink\":{\"type\":\"structure\",\"members\":{}},\"UpdateLinkAttributes\":{\"type\":\"structure\",\"members\":{}}}}}}}},\"CreateDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SchemaArn\"],\"members\":{\"Name\":{},\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"Name\",\"ObjectIdentifier\",\"AppliedSchemaArn\"],\"members\":{\"DirectoryArn\":{},\"Name\":{},\"ObjectIdentifier\":{},\"AppliedSchemaArn\":{}}}},\"CreateFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"Attributes\":{\"shape\":\"S46\"},\"ObjectType\":{},\"FacetStyle\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateIndex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/index\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"OrderedIndexedAttributeList\",\"IsUnique\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"OrderedIndexedAttributeList\":{\"shape\":\"S39\"},\"IsUnique\":{\"type\":\"boolean\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}}},\"CreateObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SchemaFacets\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SchemaFacets\":{\"shape\":\"S1y\"},\"ObjectAttributeList\":{\"shape\":\"S5\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}}},\"CreateSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{}}}},\"CreateTypedLinkFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Facet\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Facet\":{\"type\":\"structure\",\"required\":[\"Name\",\"Attributes\",\"IdentityAttributeOrder\"],\"members\":{\"Name\":{},\"Attributes\":{\"shape\":\"S4v\"},\"IdentityAttributeOrder\":{\"shape\":\"S1a\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{}}}},\"DeleteFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{}}}},\"DeleteTypedLinkFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DetachFromIndex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/index/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"IndexReference\",\"TargetReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"IndexReference\":{\"shape\":\"Sf\"},\"TargetReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DetachedObjectIdentifier\":{}}}},\"DetachObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ParentReference\",\"LinkName\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ParentReference\":{\"shape\":\"Sf\"},\"LinkName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DetachedObjectIdentifier\":{}}}},\"DetachPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"PolicyReference\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"PolicyReference\":{\"shape\":\"Sf\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DetachTypedLink\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/detach\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TypedLinkSpecifier\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TypedLinkSpecifier\":{\"shape\":\"Sy\"}}}},\"DisableDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/disable\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{}}}},\"EnableDirectory\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/enable\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{}}}},\"GetAppliedSchemaVersion\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/getappliedschema\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppliedSchemaArn\":{}}}},\"GetDirectory\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Directory\"],\"members\":{\"Directory\":{\"shape\":\"S5n\"}}}},\"GetFacet\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Facet\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ObjectType\":{},\"FacetStyle\":{}}}}}},\"GetLinkAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/attributes/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TypedLinkSpecifier\",\"AttributeNames\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeNames\":{\"shape\":\"S1a\"},\"ConsistencyLevel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}}},\"GetObjectAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/attributes/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\",\"SchemaFacet\",\"AttributeNames\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"AttributeNames\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"}}}},\"GetObjectInformation\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/information\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaFacets\":{\"shape\":\"S1y\"},\"ObjectIdentifier\":{}}}},\"GetSchemaAsJson\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/json\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Document\":{}}}},\"GetTypedLinkFacetInformation\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityAttributeOrder\":{\"shape\":\"S1a\"}}}},\"ListAppliedSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/applied\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\"],\"members\":{\"DirectoryArn\":{},\"SchemaArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S66\"},\"NextToken\":{}}}},\"ListAttachedIndices\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/indices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TargetReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TargetReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S21\"},\"NextToken\":{}}}},\"ListDevelopmentSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/development\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S66\"},\"NextToken\":{}}}},\"ListDirectories\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/directory/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"state\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Directories\"],\"members\":{\"Directories\":{\"type\":\"list\",\"member\":{\"shape\":\"S5n\"}},\"NextToken\":{}}}},\"ListFacetAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/attributes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S46\"},\"NextToken\":{}}}},\"ListFacetNames\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FacetNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListIncomingTypedLinks\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/incoming\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1l\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LinkSpecifiers\":{\"shape\":\"S2i\"},\"NextToken\":{}}}},\"ListIndex\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/index/targets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"IndexReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"RangesOnIndexedValues\":{\"shape\":\"S1g\"},\"IndexReference\":{\"shape\":\"Sf\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IndexAttachments\":{\"shape\":\"S21\"},\"NextToken\":{}}}},\"ListManagedSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/managed\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S66\"},\"NextToken\":{}}}},\"ListObjectAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/attributes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"},\"FacetFilter\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5\"},\"NextToken\":{}}}},\"ListObjectChildren\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/children\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Children\":{\"shape\":\"S1w\"},\"NextToken\":{}}}},\"ListObjectParentPaths\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/parentpaths\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PathToObjectIdentifiersList\":{\"shape\":\"S24\"},\"NextToken\":{}}}},\"ListObjectParents\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/parent\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"},\"IncludeAllLinksToEachParent\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parents\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"NextToken\":{},\"ParentLinks\":{\"shape\":\"S2m\"}}}},\"ListObjectPolicies\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedPolicyIds\":{\"shape\":\"S27\"},\"NextToken\":{}}}},\"ListOutgoingTypedLinks\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/outgoing\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"FilterAttributeRanges\":{\"shape\":\"S1l\"},\"FilterTypedLink\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TypedLinkSpecifiers\":{\"shape\":\"S2i\"},\"NextToken\":{}}}},\"ListPolicyAttachments\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/attachment\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"PolicyReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"PolicyReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ConsistencyLevel\":{\"location\":\"header\",\"locationName\":\"x-amz-consistency-level\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifiers\":{\"shape\":\"S27\"},\"NextToken\":{}}}},\"ListPublishedSchemaArns\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/published\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArns\":{\"shape\":\"S66\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/tags\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S79\"},\"NextToken\":{}}}},\"ListTypedLinkFacetAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/attributes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4v\"},\"NextToken\":{}}}},\"ListTypedLinkFacetNames\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FacetNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"LookupPolicy\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/policy/lookup\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyToPathList\":{\"shape\":\"S2b\"},\"NextToken\":{}}}},\"PublishSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/publish\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DevelopmentSchemaArn\",\"Version\"],\"members\":{\"DevelopmentSchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Version\":{},\"MinorVersion\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublishedSchemaArn\":{}}}},\"PutSchemaFromJson\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/json\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Document\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Document\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"RemoveFacetFromObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/facets/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"SchemaFacet\",\"ObjectReference\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"SchemaFacet\":{\"shape\":\"S3\"},\"ObjectReference\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/tags/add\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S79\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/tags/remove\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/facet\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"AttributeUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Attribute\":{\"shape\":\"S47\"},\"Action\":{}}}},\"ObjectType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLinkAttributes\":{\"http\":{\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/attributes/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"TypedLinkSpecifier\",\"AttributeUpdates\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"TypedLinkSpecifier\":{\"shape\":\"Sy\"},\"AttributeUpdates\":{\"shape\":\"S3g\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateObjectAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/object/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryArn\",\"ObjectReference\",\"AttributeUpdates\"],\"members\":{\"DirectoryArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"ObjectReference\":{\"shape\":\"Sf\"},\"AttributeUpdates\":{\"shape\":\"S2z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{}}}},\"UpdateSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{}}}},\"UpdateTypedLinkFacet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/typedlink/facet\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"Name\",\"AttributeUpdates\",\"IdentityAttributeOrder\"],\"members\":{\"SchemaArn\":{\"location\":\"header\",\"locationName\":\"x-amz-data-partition\"},\"Name\":{},\"AttributeUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"Action\"],\"members\":{\"Attribute\":{\"shape\":\"S4w\"},\"Action\":{}}}},\"IdentityAttributeOrder\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpgradeAppliedSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/upgradeapplied\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PublishedSchemaArn\",\"DirectoryArn\"],\"members\":{\"PublishedSchemaArn\":{},\"DirectoryArn\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpgradedSchemaArn\":{},\"DirectoryArn\":{}}}},\"UpgradePublishedSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/amazonclouddirectory/2017-01-11/schema/upgradepublished\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DevelopmentSchemaArn\",\"PublishedSchemaArn\",\"MinorVersion\"],\"members\":{\"DevelopmentSchemaArn\":{},\"PublishedSchemaArn\":{},\"MinorVersion\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpgradedSchemaArn\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"FacetName\":{}}},\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{\"shape\":\"S7\"},\"Value\":{\"shape\":\"S9\"}}}},\"S7\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"FacetName\",\"Name\"],\"members\":{\"SchemaArn\":{},\"FacetName\":{},\"Name\":{}}},\"S9\":{\"type\":\"structure\",\"members\":{\"StringValue\":{},\"BinaryValue\":{\"type\":\"blob\"},\"BooleanValue\":{\"type\":\"boolean\"},\"NumberValue\":{},\"DatetimeValue\":{\"type\":\"timestamp\"}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"Selector\":{}}},\"St\":{\"type\":\"structure\",\"required\":[\"SchemaArn\",\"TypedLinkName\"],\"members\":{\"SchemaArn\":{},\"TypedLinkName\":{}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"Value\"],\"members\":{\"AttributeName\":{},\"Value\":{\"shape\":\"S9\"}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"TypedLinkFacet\",\"SourceObjectReference\",\"TargetObjectReference\",\"IdentityAttributeValues\"],\"members\":{\"TypedLinkFacet\":{\"shape\":\"St\"},\"SourceObjectReference\":{\"shape\":\"Sf\"},\"TargetObjectReference\":{\"shape\":\"Sf\"},\"IdentityAttributeValues\":{\"shape\":\"Sv\"}}},\"S1a\":{\"type\":\"list\",\"member\":{}},\"S1g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeKey\":{\"shape\":\"S7\"},\"Range\":{\"shape\":\"S1i\"}}}},\"S1i\":{\"type\":\"structure\",\"required\":[\"StartMode\",\"EndMode\"],\"members\":{\"StartMode\":{},\"StartValue\":{\"shape\":\"S9\"},\"EndMode\":{},\"EndValue\":{\"shape\":\"S9\"}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Range\"],\"members\":{\"AttributeName\":{},\"Range\":{\"shape\":\"S1i\"}}}},\"S1w\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1y\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"S21\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexedAttributes\":{\"shape\":\"S5\"},\"ObjectIdentifier\":{}}}},\"S24\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"ObjectIdentifiers\":{\"shape\":\"S27\"}}}},\"S27\":{\"type\":\"list\",\"member\":{}},\"S2b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"Policies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyId\":{},\"ObjectIdentifier\":{},\"PolicyType\":{}}}}}}},\"S2i\":{\"type\":\"list\",\"member\":{\"shape\":\"Sy\"}},\"S2m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ObjectIdentifier\":{},\"LinkName\":{}}}},\"S2z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ObjectAttributeKey\":{\"shape\":\"S7\"},\"ObjectAttributeAction\":{\"type\":\"structure\",\"members\":{\"ObjectAttributeActionType\":{},\"ObjectAttributeUpdateValue\":{\"shape\":\"S9\"}}}}}},\"S39\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"S3g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeKey\":{\"shape\":\"S7\"},\"AttributeAction\":{\"type\":\"structure\",\"members\":{\"AttributeActionType\":{},\"AttributeUpdateValue\":{\"shape\":\"S9\"}}}}}},\"S46\":{\"type\":\"list\",\"member\":{\"shape\":\"S47\"}},\"S47\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"AttributeDefinition\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"DefaultValue\":{\"shape\":\"S9\"},\"IsImmutable\":{\"type\":\"boolean\"},\"Rules\":{\"shape\":\"S4a\"}}},\"AttributeReference\":{\"type\":\"structure\",\"required\":[\"TargetFacetName\",\"TargetAttributeName\"],\"members\":{\"TargetFacetName\":{},\"TargetAttributeName\":{}}},\"RequiredBehavior\":{}}},\"S4a\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S4v\":{\"type\":\"list\",\"member\":{\"shape\":\"S4w\"}},\"S4w\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\",\"RequiredBehavior\"],\"members\":{\"Name\":{},\"Type\":{},\"DefaultValue\":{\"shape\":\"S9\"},\"IsImmutable\":{\"type\":\"boolean\"},\"Rules\":{\"shape\":\"S4a\"},\"RequiredBehavior\":{}}},\"S5n\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DirectoryArn\":{},\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"}}},\"S66\":{\"type\":\"list\",\"member\":{}},\"S79\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 20410:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAppliedSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAttachedIndices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDevelopmentSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDirectories\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListFacetAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListFacetNames\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListIndex\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListManagedSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectChildren\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectParentPaths\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectParents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListObjectPolicies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPolicyAttachments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPublishedSchemaArns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTypedLinkFacetAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTypedLinkFacetNames\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"LookupPolicy\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 50980:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2010-05-15\",\"endpointPrefix\":\"cloudformation\",\"protocol\":\"query\",\"serviceFullName\":\"AWS CloudFormation\",\"serviceId\":\"CloudFormation\",\"signatureVersion\":\"v4\",\"uid\":\"cloudformation-2010-05-15\",\"xmlNamespace\":\"http://cloudformation.amazonaws.com/doc/2010-05-15/\"},\"operations\":{\"CancelUpdateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"ClientRequestToken\":{}}}},\"ContinueUpdateRollback\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"RoleARN\":{},\"ResourcesToSkip\":{\"type\":\"list\",\"member\":{}},\"ClientRequestToken\":{}}},\"output\":{\"resultWrapper\":\"ContinueUpdateRollbackResult\",\"type\":\"structure\",\"members\":{}}},\"CreateChangeSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\",\"ChangeSetName\"],\"members\":{\"StackName\":{},\"TemplateBody\":{},\"TemplateURL\":{},\"UsePreviousTemplate\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"Se\"},\"Capabilities\":{\"shape\":\"Sj\"},\"ResourceTypes\":{\"shape\":\"Sl\"},\"RoleARN\":{},\"RollbackConfiguration\":{\"shape\":\"Sn\"},\"NotificationARNs\":{\"shape\":\"St\"},\"Tags\":{\"shape\":\"Sv\"},\"ChangeSetName\":{},\"ClientToken\":{},\"Description\":{},\"ChangeSetType\":{},\"ResourcesToImport\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"LogicalResourceId\",\"ResourceIdentifier\"],\"members\":{\"ResourceType\":{},\"LogicalResourceId\":{},\"ResourceIdentifier\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"IncludeNestedStacks\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateChangeSetResult\",\"type\":\"structure\",\"members\":{\"Id\":{},\"StackId\":{}}}},\"CreateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"TemplateBody\":{},\"TemplateURL\":{},\"Parameters\":{\"shape\":\"Se\"},\"DisableRollback\":{\"type\":\"boolean\"},\"RollbackConfiguration\":{\"shape\":\"Sn\"},\"TimeoutInMinutes\":{\"type\":\"integer\"},\"NotificationARNs\":{\"shape\":\"St\"},\"Capabilities\":{\"shape\":\"Sj\"},\"ResourceTypes\":{\"shape\":\"Sl\"},\"RoleARN\":{},\"OnFailure\":{},\"StackPolicyBody\":{},\"StackPolicyURL\":{},\"Tags\":{\"shape\":\"Sv\"},\"ClientRequestToken\":{},\"EnableTerminationProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateStackResult\",\"type\":\"structure\",\"members\":{\"StackId\":{}}}},\"CreateStackInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"Regions\"],\"members\":{\"StackSetName\":{},\"Accounts\":{\"shape\":\"S1n\"},\"DeploymentTargets\":{\"shape\":\"S1p\"},\"Regions\":{\"shape\":\"S1t\"},\"ParameterOverrides\":{\"shape\":\"Se\"},\"OperationPreferences\":{\"shape\":\"S1v\"},\"OperationId\":{\"idempotencyToken\":true},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"CreateStackInstancesResult\",\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"CreateStackSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"Description\":{},\"TemplateBody\":{},\"TemplateURL\":{},\"Parameters\":{\"shape\":\"Se\"},\"Capabilities\":{\"shape\":\"Sj\"},\"Tags\":{\"shape\":\"Sv\"},\"AdministrationRoleARN\":{},\"ExecutionRoleName\":{},\"PermissionModel\":{},\"AutoDeployment\":{\"shape\":\"S26\"},\"CallAs\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"resultWrapper\":\"CreateStackSetResult\",\"type\":\"structure\",\"members\":{\"StackSetId\":{}}}},\"DeleteChangeSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ChangeSetName\"],\"members\":{\"ChangeSetName\":{},\"StackName\":{}}},\"output\":{\"resultWrapper\":\"DeleteChangeSetResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"RetainResources\":{\"type\":\"list\",\"member\":{}},\"RoleARN\":{},\"ClientRequestToken\":{}}}},\"DeleteStackInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"Regions\",\"RetainStacks\"],\"members\":{\"StackSetName\":{},\"Accounts\":{\"shape\":\"S1n\"},\"DeploymentTargets\":{\"shape\":\"S1p\"},\"Regions\":{\"shape\":\"S1t\"},\"OperationPreferences\":{\"shape\":\"S1v\"},\"RetainStacks\":{\"type\":\"boolean\"},\"OperationId\":{\"idempotencyToken\":true},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"DeleteStackInstancesResult\",\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"DeleteStackSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"DeleteStackSetResult\",\"type\":\"structure\",\"members\":{}}},\"DeregisterType\":{\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Type\":{},\"TypeName\":{},\"VersionId\":{}}},\"output\":{\"resultWrapper\":\"DeregisterTypeResult\",\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DescribeAccountLimits\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeAccountLimitsResult\",\"type\":\"structure\",\"members\":{\"AccountLimits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"DescribeChangeSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ChangeSetName\"],\"members\":{\"ChangeSetName\":{},\"StackName\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeChangeSetResult\",\"type\":\"structure\",\"members\":{\"ChangeSetName\":{},\"ChangeSetId\":{},\"StackId\":{},\"StackName\":{},\"Description\":{},\"Parameters\":{\"shape\":\"Se\"},\"CreationTime\":{\"type\":\"timestamp\"},\"ExecutionStatus\":{},\"Status\":{},\"StatusReason\":{},\"NotificationARNs\":{\"shape\":\"St\"},\"RollbackConfiguration\":{\"shape\":\"Sn\"},\"Capabilities\":{\"shape\":\"Sj\"},\"Tags\":{\"shape\":\"Sv\"},\"Changes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"ResourceChange\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"ResourceType\":{},\"Replacement\":{},\"Scope\":{\"type\":\"list\",\"member\":{}},\"Details\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Target\":{\"type\":\"structure\",\"members\":{\"Attribute\":{},\"Name\":{},\"RequiresRecreation\":{}}},\"Evaluation\":{},\"ChangeSource\":{},\"CausingEntity\":{}}}},\"ChangeSetId\":{},\"ModuleInfo\":{\"shape\":\"S3l\"}}}}}},\"NextToken\":{},\"IncludeNestedStacks\":{\"type\":\"boolean\"},\"ParentChangeSetId\":{},\"RootChangeSetId\":{}}}},\"DescribeStackDriftDetectionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackDriftDetectionId\"],\"members\":{\"StackDriftDetectionId\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackDriftDetectionStatusResult\",\"type\":\"structure\",\"required\":[\"StackId\",\"StackDriftDetectionId\",\"DetectionStatus\",\"Timestamp\"],\"members\":{\"StackId\":{},\"StackDriftDetectionId\":{},\"StackDriftStatus\":{},\"DetectionStatus\":{},\"DetectionStatusReason\":{},\"DriftedStackResourceCount\":{\"type\":\"integer\"},\"Timestamp\":{\"type\":\"timestamp\"}}}},\"DescribeStackEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackName\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackEventsResult\",\"type\":\"structure\",\"members\":{\"StackEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StackId\",\"EventId\",\"StackName\",\"Timestamp\"],\"members\":{\"StackId\":{},\"EventId\":{},\"StackName\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"ResourceType\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"ResourceStatus\":{},\"ResourceStatusReason\":{},\"ResourceProperties\":{},\"ClientRequestToken\":{}}}},\"NextToken\":{}}}},\"DescribeStackInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"StackInstanceAccount\",\"StackInstanceRegion\"],\"members\":{\"StackSetName\":{},\"StackInstanceAccount\":{},\"StackInstanceRegion\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackInstanceResult\",\"type\":\"structure\",\"members\":{\"StackInstance\":{\"type\":\"structure\",\"members\":{\"StackSetId\":{},\"Region\":{},\"Account\":{},\"StackId\":{},\"ParameterOverrides\":{\"shape\":\"Se\"},\"Status\":{},\"StackInstanceStatus\":{\"shape\":\"S48\"},\"StatusReason\":{},\"OrganizationalUnitId\":{},\"DriftStatus\":{},\"LastDriftCheckTimestamp\":{\"type\":\"timestamp\"}}}}}},\"DescribeStackResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\",\"LogicalResourceId\"],\"members\":{\"StackName\":{},\"LogicalResourceId\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackResourceResult\",\"type\":\"structure\",\"members\":{\"StackResourceDetail\":{\"type\":\"structure\",\"required\":[\"LogicalResourceId\",\"ResourceType\",\"LastUpdatedTimestamp\",\"ResourceStatus\"],\"members\":{\"StackName\":{},\"StackId\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"ResourceType\":{},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"ResourceStatus\":{},\"ResourceStatusReason\":{},\"Description\":{},\"Metadata\":{},\"DriftInformation\":{\"shape\":\"S4f\"},\"ModuleInfo\":{\"shape\":\"S3l\"}}}}}},\"DescribeStackResourceDrifts\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"StackResourceDriftStatusFilters\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeStackResourceDriftsResult\",\"type\":\"structure\",\"required\":[\"StackResourceDrifts\"],\"members\":{\"StackResourceDrifts\":{\"type\":\"list\",\"member\":{\"shape\":\"S4m\"}},\"NextToken\":{}}}},\"DescribeStackResources\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackName\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackResourcesResult\",\"type\":\"structure\",\"members\":{\"StackResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LogicalResourceId\",\"ResourceType\",\"Timestamp\",\"ResourceStatus\"],\"members\":{\"StackName\":{},\"StackId\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"ResourceType\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"ResourceStatus\":{},\"ResourceStatusReason\":{},\"Description\":{},\"DriftInformation\":{\"shape\":\"S4f\"},\"ModuleInfo\":{\"shape\":\"S3l\"}}}}}}},\"DescribeStackSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackSetResult\",\"type\":\"structure\",\"members\":{\"StackSet\":{\"type\":\"structure\",\"members\":{\"StackSetName\":{},\"StackSetId\":{},\"Description\":{},\"Status\":{},\"TemplateBody\":{},\"Parameters\":{\"shape\":\"Se\"},\"Capabilities\":{\"shape\":\"Sj\"},\"Tags\":{\"shape\":\"Sv\"},\"StackSetARN\":{},\"AdministrationRoleARN\":{},\"ExecutionRoleName\":{},\"StackSetDriftDetectionDetails\":{\"shape\":\"S56\"},\"AutoDeployment\":{\"shape\":\"S26\"},\"PermissionModel\":{},\"OrganizationalUnitIds\":{\"shape\":\"S1r\"}}}}}},\"DescribeStackSetOperation\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"OperationId\"],\"members\":{\"StackSetName\":{},\"OperationId\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"DescribeStackSetOperationResult\",\"type\":\"structure\",\"members\":{\"StackSetOperation\":{\"type\":\"structure\",\"members\":{\"OperationId\":{},\"StackSetId\":{},\"Action\":{},\"Status\":{},\"OperationPreferences\":{\"shape\":\"S1v\"},\"RetainStacks\":{\"type\":\"boolean\"},\"AdministrationRoleARN\":{},\"ExecutionRoleName\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"EndTimestamp\":{\"type\":\"timestamp\"},\"DeploymentTargets\":{\"shape\":\"S1p\"},\"StackSetDriftDetectionDetails\":{\"shape\":\"S56\"}}}}}},\"DescribeStacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackName\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeStacksResult\",\"type\":\"structure\",\"members\":{\"Stacks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StackName\",\"CreationTime\",\"StackStatus\"],\"members\":{\"StackId\":{},\"StackName\":{},\"ChangeSetId\":{},\"Description\":{},\"Parameters\":{\"shape\":\"Se\"},\"CreationTime\":{\"type\":\"timestamp\"},\"DeletionTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"RollbackConfiguration\":{\"shape\":\"Sn\"},\"StackStatus\":{},\"StackStatusReason\":{},\"DisableRollback\":{\"type\":\"boolean\"},\"NotificationARNs\":{\"shape\":\"St\"},\"TimeoutInMinutes\":{\"type\":\"integer\"},\"Capabilities\":{\"shape\":\"Sj\"},\"Outputs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OutputKey\":{},\"OutputValue\":{},\"Description\":{},\"ExportName\":{}}}},\"RoleARN\":{},\"Tags\":{\"shape\":\"Sv\"},\"EnableTerminationProtection\":{\"type\":\"boolean\"},\"ParentId\":{},\"RootId\":{},\"DriftInformation\":{\"type\":\"structure\",\"required\":[\"StackDriftStatus\"],\"members\":{\"StackDriftStatus\":{},\"LastCheckTimestamp\":{\"type\":\"timestamp\"}}}}}},\"NextToken\":{}}}},\"DescribeType\":{\"input\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"TypeName\":{},\"Arn\":{},\"VersionId\":{}}},\"output\":{\"resultWrapper\":\"DescribeTypeResult\",\"type\":\"structure\",\"members\":{\"Arn\":{},\"Type\":{},\"TypeName\":{},\"DefaultVersionId\":{},\"IsDefaultVersion\":{\"type\":\"boolean\"},\"Description\":{},\"Schema\":{},\"ProvisioningType\":{},\"DeprecatedStatus\":{},\"LoggingConfig\":{\"shape\":\"S65\"},\"ExecutionRoleArn\":{},\"Visibility\":{},\"SourceUrl\":{},\"DocumentationUrl\":{},\"LastUpdated\":{\"type\":\"timestamp\"},\"TimeCreated\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeTypeRegistration\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegistrationToken\"],\"members\":{\"RegistrationToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeTypeRegistrationResult\",\"type\":\"structure\",\"members\":{\"ProgressStatus\":{},\"Description\":{},\"TypeArn\":{},\"TypeVersionArn\":{}}},\"idempotent\":true},\"DetectStackDrift\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"LogicalResourceIds\":{\"shape\":\"S6f\"}}},\"output\":{\"resultWrapper\":\"DetectStackDriftResult\",\"type\":\"structure\",\"required\":[\"StackDriftDetectionId\"],\"members\":{\"StackDriftDetectionId\":{}}}},\"DetectStackResourceDrift\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\",\"LogicalResourceId\"],\"members\":{\"StackName\":{},\"LogicalResourceId\":{}}},\"output\":{\"resultWrapper\":\"DetectStackResourceDriftResult\",\"type\":\"structure\",\"required\":[\"StackResourceDrift\"],\"members\":{\"StackResourceDrift\":{\"shape\":\"S4m\"}}}},\"DetectStackSetDrift\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"OperationPreferences\":{\"shape\":\"S1v\"},\"OperationId\":{\"idempotencyToken\":true},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"DetectStackSetDriftResult\",\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"EstimateTemplateCost\":{\"input\":{\"type\":\"structure\",\"members\":{\"TemplateBody\":{},\"TemplateURL\":{},\"Parameters\":{\"shape\":\"Se\"}}},\"output\":{\"resultWrapper\":\"EstimateTemplateCostResult\",\"type\":\"structure\",\"members\":{\"Url\":{}}}},\"ExecuteChangeSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ChangeSetName\"],\"members\":{\"ChangeSetName\":{},\"StackName\":{},\"ClientRequestToken\":{}}},\"output\":{\"resultWrapper\":\"ExecuteChangeSetResult\",\"type\":\"structure\",\"members\":{}}},\"GetStackPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{}}},\"output\":{\"resultWrapper\":\"GetStackPolicyResult\",\"type\":\"structure\",\"members\":{\"StackPolicyBody\":{}}}},\"GetTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackName\":{},\"ChangeSetName\":{},\"TemplateStage\":{}}},\"output\":{\"resultWrapper\":\"GetTemplateResult\",\"type\":\"structure\",\"members\":{\"TemplateBody\":{},\"StagesAvailable\":{\"type\":\"list\",\"member\":{}}}}},\"GetTemplateSummary\":{\"input\":{\"type\":\"structure\",\"members\":{\"TemplateBody\":{},\"TemplateURL\":{},\"StackName\":{},\"StackSetName\":{}}},\"output\":{\"resultWrapper\":\"GetTemplateSummaryResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterKey\":{},\"DefaultValue\":{},\"ParameterType\":{},\"NoEcho\":{\"type\":\"boolean\"},\"Description\":{},\"ParameterConstraints\":{\"type\":\"structure\",\"members\":{\"AllowedValues\":{\"type\":\"list\",\"member\":{}}}}}}},\"Description\":{},\"Capabilities\":{\"shape\":\"Sj\"},\"CapabilitiesReason\":{},\"ResourceTypes\":{\"shape\":\"Sl\"},\"Version\":{},\"Metadata\":{},\"DeclaredTransforms\":{\"shape\":\"S78\"},\"ResourceIdentifierSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"LogicalResourceIds\":{\"shape\":\"S6f\"},\"ResourceIdentifiers\":{\"type\":\"list\",\"member\":{}}}}}}}},\"ListChangeSets\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListChangeSetsResult\",\"type\":\"structure\",\"members\":{\"Summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"StackName\":{},\"ChangeSetId\":{},\"ChangeSetName\":{},\"ExecutionStatus\":{},\"Status\":{},\"StatusReason\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"Description\":{},\"IncludeNestedStacks\":{\"type\":\"boolean\"},\"ParentChangeSetId\":{},\"RootChangeSetId\":{}}}},\"NextToken\":{}}}},\"ListExports\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListExportsResult\",\"type\":\"structure\",\"members\":{\"Exports\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ExportingStackId\":{},\"Name\":{},\"Value\":{}}}},\"NextToken\":{}}}},\"ListImports\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportName\"],\"members\":{\"ExportName\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListImportsResult\",\"type\":\"structure\",\"members\":{\"Imports\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListStackInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{}}}},\"StackInstanceAccount\":{},\"StackInstanceRegion\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"ListStackInstancesResult\",\"type\":\"structure\",\"members\":{\"Summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StackSetId\":{},\"Region\":{},\"Account\":{},\"StackId\":{},\"Status\":{},\"StatusReason\":{},\"StackInstanceStatus\":{\"shape\":\"S48\"},\"OrganizationalUnitId\":{},\"DriftStatus\":{},\"LastDriftCheckTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListStackResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListStackResourcesResult\",\"type\":\"structure\",\"members\":{\"StackResourceSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LogicalResourceId\",\"ResourceType\",\"LastUpdatedTimestamp\",\"ResourceStatus\"],\"members\":{\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"ResourceType\":{},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"ResourceStatus\":{},\"ResourceStatusReason\":{},\"DriftInformation\":{\"type\":\"structure\",\"required\":[\"StackResourceDriftStatus\"],\"members\":{\"StackResourceDriftStatus\":{},\"LastCheckTimestamp\":{\"type\":\"timestamp\"}}},\"ModuleInfo\":{\"shape\":\"S3l\"}}}},\"NextToken\":{}}}},\"ListStackSetOperationResults\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"OperationId\"],\"members\":{\"StackSetName\":{},\"OperationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"ListStackSetOperationResultsResult\",\"type\":\"structure\",\"members\":{\"Summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Account\":{},\"Region\":{},\"Status\":{},\"StatusReason\":{},\"AccountGateResult\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"StatusReason\":{}}},\"OrganizationalUnitId\":{}}}},\"NextToken\":{}}}},\"ListStackSetOperations\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"ListStackSetOperationsResult\",\"type\":\"structure\",\"members\":{\"Summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OperationId\":{},\"Action\":{},\"Status\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"EndTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListStackSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Status\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"ListStackSetsResult\",\"type\":\"structure\",\"members\":{\"Summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StackSetName\":{},\"StackSetId\":{},\"Description\":{},\"Status\":{},\"AutoDeployment\":{\"shape\":\"S26\"},\"PermissionModel\":{},\"DriftStatus\":{},\"LastDriftCheckTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListStacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"StackStatusFilter\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"ListStacksResult\",\"type\":\"structure\",\"members\":{\"StackSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StackName\",\"CreationTime\",\"StackStatus\"],\"members\":{\"StackId\":{},\"StackName\":{},\"TemplateDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"DeletionTime\":{\"type\":\"timestamp\"},\"StackStatus\":{},\"StackStatusReason\":{},\"ParentId\":{},\"RootId\":{},\"DriftInformation\":{\"type\":\"structure\",\"required\":[\"StackDriftStatus\"],\"members\":{\"StackDriftStatus\":{},\"LastCheckTimestamp\":{\"type\":\"timestamp\"}}}}}},\"NextToken\":{}}}},\"ListTypeRegistrations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"TypeName\":{},\"TypeArn\":{},\"RegistrationStatusFilter\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListTypeRegistrationsResult\",\"type\":\"structure\",\"members\":{\"RegistrationTokenList\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"idempotent\":true},\"ListTypeVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"TypeName\":{},\"Arn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DeprecatedStatus\":{}}},\"output\":{\"resultWrapper\":\"ListTypeVersionsResult\",\"type\":\"structure\",\"members\":{\"TypeVersionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"TypeName\":{},\"VersionId\":{},\"IsDefaultVersion\":{\"type\":\"boolean\"},\"Arn\":{},\"TimeCreated\":{\"type\":\"timestamp\"},\"Description\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"Visibility\":{},\"ProvisioningType\":{},\"DeprecatedStatus\":{},\"Type\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListTypesResult\",\"type\":\"structure\",\"members\":{\"TypeSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"TypeName\":{},\"DefaultVersionId\":{},\"TypeArn\":{},\"LastUpdated\":{\"type\":\"timestamp\"},\"Description\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"RecordHandlerProgress\":{\"input\":{\"type\":\"structure\",\"required\":[\"BearerToken\",\"OperationStatus\"],\"members\":{\"BearerToken\":{},\"OperationStatus\":{},\"CurrentOperationStatus\":{},\"StatusMessage\":{},\"ErrorCode\":{},\"ResourceModel\":{},\"ClientRequestToken\":{}}},\"output\":{\"resultWrapper\":\"RecordHandlerProgressResult\",\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"RegisterType\":{\"input\":{\"type\":\"structure\",\"required\":[\"TypeName\",\"SchemaHandlerPackage\"],\"members\":{\"Type\":{},\"TypeName\":{},\"SchemaHandlerPackage\":{},\"LoggingConfig\":{\"shape\":\"S65\"},\"ExecutionRoleArn\":{},\"ClientRequestToken\":{}}},\"output\":{\"resultWrapper\":\"RegisterTypeResult\",\"type\":\"structure\",\"members\":{\"RegistrationToken\":{}}},\"idempotent\":true},\"SetStackPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"StackPolicyBody\":{},\"StackPolicyURL\":{}}}},\"SetTypeDefaultVersion\":{\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Type\":{},\"TypeName\":{},\"VersionId\":{}}},\"output\":{\"resultWrapper\":\"SetTypeDefaultVersionResult\",\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"SignalResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\",\"LogicalResourceId\",\"UniqueId\",\"Status\"],\"members\":{\"StackName\":{},\"LogicalResourceId\":{},\"UniqueId\":{},\"Status\":{}}}},\"StopStackSetOperation\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"OperationId\"],\"members\":{\"StackSetName\":{},\"OperationId\":{},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"StopStackSetOperationResult\",\"type\":\"structure\",\"members\":{}}},\"UpdateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackName\"],\"members\":{\"StackName\":{},\"TemplateBody\":{},\"TemplateURL\":{},\"UsePreviousTemplate\":{\"type\":\"boolean\"},\"StackPolicyDuringUpdateBody\":{},\"StackPolicyDuringUpdateURL\":{},\"Parameters\":{\"shape\":\"Se\"},\"Capabilities\":{\"shape\":\"Sj\"},\"ResourceTypes\":{\"shape\":\"Sl\"},\"RoleARN\":{},\"RollbackConfiguration\":{\"shape\":\"Sn\"},\"StackPolicyBody\":{},\"StackPolicyURL\":{},\"NotificationARNs\":{\"shape\":\"St\"},\"Tags\":{\"shape\":\"Sv\"},\"ClientRequestToken\":{}}},\"output\":{\"resultWrapper\":\"UpdateStackResult\",\"type\":\"structure\",\"members\":{\"StackId\":{}}}},\"UpdateStackInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\",\"Regions\"],\"members\":{\"StackSetName\":{},\"Accounts\":{\"shape\":\"S1n\"},\"DeploymentTargets\":{\"shape\":\"S1p\"},\"Regions\":{\"shape\":\"S1t\"},\"ParameterOverrides\":{\"shape\":\"Se\"},\"OperationPreferences\":{\"shape\":\"S1v\"},\"OperationId\":{\"idempotencyToken\":true},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"UpdateStackInstancesResult\",\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"UpdateStackSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackSetName\"],\"members\":{\"StackSetName\":{},\"Description\":{},\"TemplateBody\":{},\"TemplateURL\":{},\"UsePreviousTemplate\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"Se\"},\"Capabilities\":{\"shape\":\"Sj\"},\"Tags\":{\"shape\":\"Sv\"},\"OperationPreferences\":{\"shape\":\"S1v\"},\"AdministrationRoleARN\":{},\"ExecutionRoleName\":{},\"DeploymentTargets\":{\"shape\":\"S1p\"},\"PermissionModel\":{},\"AutoDeployment\":{\"shape\":\"S26\"},\"OperationId\":{\"idempotencyToken\":true},\"Accounts\":{\"shape\":\"S1n\"},\"Regions\":{\"shape\":\"S1t\"},\"CallAs\":{}}},\"output\":{\"resultWrapper\":\"UpdateStackSetResult\",\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"UpdateTerminationProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"EnableTerminationProtection\",\"StackName\"],\"members\":{\"EnableTerminationProtection\":{\"type\":\"boolean\"},\"StackName\":{}}},\"output\":{\"resultWrapper\":\"UpdateTerminationProtectionResult\",\"type\":\"structure\",\"members\":{\"StackId\":{}}}},\"ValidateTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{\"TemplateBody\":{},\"TemplateURL\":{}}},\"output\":{\"resultWrapper\":\"ValidateTemplateResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterKey\":{},\"DefaultValue\":{},\"NoEcho\":{\"type\":\"boolean\"},\"Description\":{}}}},\"Description\":{},\"Capabilities\":{\"shape\":\"Sj\"},\"CapabilitiesReason\":{},\"DeclaredTransforms\":{\"shape\":\"S78\"}}}}},\"shapes\":{\"Se\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterKey\":{},\"ParameterValue\":{},\"UsePreviousValue\":{\"type\":\"boolean\"},\"ResolvedValue\":{}}}},\"Sj\":{\"type\":\"list\",\"member\":{}},\"Sl\":{\"type\":\"list\",\"member\":{}},\"Sn\":{\"type\":\"structure\",\"members\":{\"RollbackTriggers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Type\"],\"members\":{\"Arn\":{},\"Type\":{}}}},\"MonitoringTimeInMinutes\":{\"type\":\"integer\"}}},\"St\":{\"type\":\"list\",\"member\":{}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S1n\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"structure\",\"members\":{\"Accounts\":{\"shape\":\"S1n\"},\"AccountsUrl\":{},\"OrganizationalUnitIds\":{\"shape\":\"S1r\"}}},\"S1r\":{\"type\":\"list\",\"member\":{}},\"S1t\":{\"type\":\"list\",\"member\":{}},\"S1v\":{\"type\":\"structure\",\"members\":{\"RegionConcurrencyType\":{},\"RegionOrder\":{\"shape\":\"S1t\"},\"FailureToleranceCount\":{\"type\":\"integer\"},\"FailureTolerancePercentage\":{\"type\":\"integer\"},\"MaxConcurrentCount\":{\"type\":\"integer\"},\"MaxConcurrentPercentage\":{\"type\":\"integer\"}}},\"S26\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"RetainStacksOnAccountRemoval\":{\"type\":\"boolean\"}}},\"S3l\":{\"type\":\"structure\",\"members\":{\"TypeHierarchy\":{},\"LogicalIdHierarchy\":{}}},\"S48\":{\"type\":\"structure\",\"members\":{\"DetailedStatus\":{}}},\"S4f\":{\"type\":\"structure\",\"required\":[\"StackResourceDriftStatus\"],\"members\":{\"StackResourceDriftStatus\":{},\"LastCheckTimestamp\":{\"type\":\"timestamp\"}}},\"S4m\":{\"type\":\"structure\",\"required\":[\"StackId\",\"LogicalResourceId\",\"ResourceType\",\"StackResourceDriftStatus\",\"Timestamp\"],\"members\":{\"StackId\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"PhysicalResourceIdContext\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"ResourceType\":{},\"ExpectedProperties\":{},\"ActualProperties\":{},\"PropertyDifferences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PropertyPath\",\"ExpectedValue\",\"ActualValue\",\"DifferenceType\"],\"members\":{\"PropertyPath\":{},\"ExpectedValue\":{},\"ActualValue\":{},\"DifferenceType\":{}}}},\"StackResourceDriftStatus\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"ModuleInfo\":{\"shape\":\"S3l\"}}},\"S56\":{\"type\":\"structure\",\"members\":{\"DriftStatus\":{},\"DriftDetectionStatus\":{},\"LastDriftCheckTimestamp\":{\"type\":\"timestamp\"},\"TotalStackInstancesCount\":{\"type\":\"integer\"},\"DriftedStackInstancesCount\":{\"type\":\"integer\"},\"InSyncStackInstancesCount\":{\"type\":\"integer\"},\"InProgressStackInstancesCount\":{\"type\":\"integer\"},\"FailedStackInstancesCount\":{\"type\":\"integer\"}}},\"S65\":{\"type\":\"structure\",\"required\":[\"LogRoleArn\",\"LogGroupName\"],\"members\":{\"LogRoleArn\":{},\"LogGroupName\":{}}},\"S6f\":{\"type\":\"list\",\"member\":{}},\"S78\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 43078:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAccountLimits\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"AccountLimits\"},\"DescribeStackEvents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"StackEvents\"},\"DescribeStackResourceDrifts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"DescribeStackResources\":{\"result_key\":\"StackResources\"},\"DescribeStacks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Stacks\"},\"ListChangeSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Summaries\"},\"ListExports\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Exports\"},\"ListImports\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Imports\"},\"ListStackInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Summaries\"},\"ListStackResources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"StackResourceSummaries\"},\"ListStackSetOperationResults\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Summaries\"},\"ListStackSetOperations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Summaries\"},\"ListStackSets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Summaries\"},\"ListStacks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"StackSummaries\"},\"ListTypeRegistrations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTypeVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTypes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 11714:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"StackExists\":{\"delay\":5,\"operation\":\"DescribeStacks\",\"maxAttempts\":20,\"acceptors\":[{\"matcher\":\"status\",\"expected\":200,\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"ValidationError\",\"state\":\"retry\"}]},\"StackCreateComplete\":{\"delay\":30,\"operation\":\"DescribeStacks\",\"maxAttempts\":120,\"description\":\"Wait until stack status is CREATE_COMPLETE.\",\"acceptors\":[{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"CREATE_COMPLETE\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"CREATE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"DELETE_COMPLETE\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"DELETE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"ROLLBACK_COMPLETE\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"ValidationError\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"StackDeleteComplete\":{\"delay\":30,\"operation\":\"DescribeStacks\",\"maxAttempts\":120,\"description\":\"Wait until stack status is DELETE_COMPLETE.\",\"acceptors\":[{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"DELETE_COMPLETE\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"expected\":\"ValidationError\",\"matcher\":\"error\",\"state\":\"success\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"DELETE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"CREATE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_ROLLBACK_IN_PROGRESS\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_ROLLBACK_COMPLETE\",\"matcher\":\"pathAny\",\"state\":\"failure\"}]},\"StackUpdateComplete\":{\"delay\":30,\"maxAttempts\":120,\"operation\":\"DescribeStacks\",\"description\":\"Wait until stack status is UPDATE_COMPLETE.\",\"acceptors\":[{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_COMPLETE\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"expected\":\"UPDATE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Stacks[].StackStatus\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"UPDATE_ROLLBACK_COMPLETE\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Stacks[].StackStatus\"},{\"expected\":\"ValidationError\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"StackImportComplete\":{\"delay\":30,\"maxAttempts\":120,\"operation\":\"DescribeStacks\",\"description\":\"Wait until stack status is IMPORT_COMPLETE.\",\"acceptors\":[{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"IMPORT_COMPLETE\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"expected\":\"ROLLBACK_COMPLETE\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Stacks[].StackStatus\"},{\"expected\":\"ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Stacks[].StackStatus\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"IMPORT_ROLLBACK_IN_PROGRESS\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"IMPORT_ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"IMPORT_ROLLBACK_COMPLETE\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Stacks[].StackStatus\"},{\"expected\":\"ValidationError\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"StackRollbackComplete\":{\"delay\":30,\"operation\":\"DescribeStacks\",\"maxAttempts\":120,\"description\":\"Wait until stack status is UPDATE_ROLLBACK_COMPLETE.\",\"acceptors\":[{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_ROLLBACK_COMPLETE\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"UPDATE_ROLLBACK_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Stacks[].StackStatus\",\"expected\":\"DELETE_FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"ValidationError\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"ChangeSetCreateComplete\":{\"delay\":30,\"operation\":\"DescribeChangeSet\",\"maxAttempts\":120,\"description\":\"Wait until change set status is CREATE_COMPLETE.\",\"acceptors\":[{\"argument\":\"Status\",\"expected\":\"CREATE_COMPLETE\",\"matcher\":\"path\",\"state\":\"success\"},{\"argument\":\"Status\",\"expected\":\"FAILED\",\"matcher\":\"path\",\"state\":\"failure\"},{\"expected\":\"ValidationError\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"TypeRegistrationComplete\":{\"delay\":30,\"operation\":\"DescribeTypeRegistration\",\"maxAttempts\":120,\"description\":\"Wait until type registration is COMPLETE.\",\"acceptors\":[{\"argument\":\"ProgressStatus\",\"expected\":\"COMPLETE\",\"matcher\":\"path\",\"state\":\"success\"},{\"argument\":\"ProgressStatus\",\"expected\":\"FAILED\",\"matcher\":\"path\",\"state\":\"failure\"}]}}}");

/***/ }),

/***/ 81977:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-25\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2016-11-25\"},\"operations\":{\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2016-11-25/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2016-11-25/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2016-11-25/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"Tags\":{\"shape\":\"S21\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2016-11-25/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S28\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S2c\"}},\"payload\":\"Invalidation\"}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2016-11-25/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2016-11-25/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\"},\"Tags\":{\"shape\":\"S21\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2016-11-25/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2016-11-25/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2016-11-25/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S2c\"}},\"payload\":\"Invalidation\"}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S3a\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S3a\"}},\"payload\":\"DistributionList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S2f\"},\"Aliases\":{\"shape\":\"S8\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-11-25/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S21\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2016-11-25/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S21\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2016-11-25/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2016-11-25/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2016-11-25/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2016-11-25/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2016-11-25/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"S8\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1a\"},\"CustomErrorResponses\":{\"shape\":\"S1d\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1i\"},\"Restrictions\":{\"shape\":\"S1m\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}}}}}}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"}}},\"So\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Headers\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"}}}}},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S16\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{}}}}}},\"S1a\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"}}}}}},\"S1d\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S1m\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S1s\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"ActiveTrustedSigners\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1u\"},\"DistributionConfig\":{\"shape\":\"S7\"}}},\"S1u\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}}}}}}},\"S21\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S28\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S2c\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S28\"}}},\"S2e\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S2f\"},\"Aliases\":{\"shape\":\"S8\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"Sy\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S2f\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S2i\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1u\"},\"StreamingDistributionConfig\":{\"shape\":\"S2e\"}}},\"S3a\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"S8\"},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1a\"},\"CustomErrorResponses\":{\"shape\":\"S1d\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1i\"},\"Restrictions\":{\"shape\":\"S1m\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}}}}}}}");

/***/ }),

/***/ 12819:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"output_token\":\"DistributionList.NextMarker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"output_token\":\"InvalidationList.NextMarker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 52832:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 38288:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-03-25\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2017-03-25\"},\"operations\":{\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2017-03-25/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2017-03-25/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2017-03-25/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"Tags\":{\"shape\":\"S21\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2017-03-25/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S28\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S2c\"}},\"payload\":\"Invalidation\"}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2017-03-25/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2017-03-25/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\"},\"Tags\":{\"shape\":\"S21\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-03-25/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-03-25/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteServiceLinkedRole\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-03-25/service-linked-role/{RoleName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{\"location\":\"uri\",\"locationName\":\"RoleName\"}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-03-25/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S2c\"}},\"payload\":\"Invalidation\"}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S3b\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S3b\"}},\"payload\":\"DistributionList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S2f\"},\"Aliases\":{\"shape\":\"S8\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-25/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S21\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2017-03-25/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S21\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2017-03-25/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-03-25/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-03-25/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1s\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-03-25/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S2e\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-03-25/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S2i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"S8\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1a\"},\"CustomErrorResponses\":{\"shape\":\"S1d\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1i\"},\"Restrictions\":{\"shape\":\"S1m\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}},\"OriginReadTimeout\":{\"type\":\"integer\"},\"OriginKeepaliveTimeout\":{\"type\":\"integer\"}}}}}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"}}},\"So\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Headers\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"}}}}},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S16\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{}}}}}},\"S1a\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"}}}}}},\"S1d\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S1m\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S1s\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"ActiveTrustedSigners\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1u\"},\"DistributionConfig\":{\"shape\":\"S7\"}}},\"S1u\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}}}}}}},\"S21\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S28\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S2c\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S28\"}}},\"S2e\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S2f\"},\"Aliases\":{\"shape\":\"S8\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"Sy\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S2f\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S2i\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1u\"},\"StreamingDistributionConfig\":{\"shape\":\"S2e\"}}},\"S3b\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"S8\"},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1a\"},\"CustomErrorResponses\":{\"shape\":\"S1d\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1i\"},\"Restrictions\":{\"shape\":\"S1m\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}}}}}}}");

/***/ }),

/***/ 19896:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"output_token\":\"DistributionList.NextMarker\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"output_token\":\"InvalidationList.NextMarker\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 43589:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 62352:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-30\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2017-10-30\"},\"operations\":{\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2017-10-30/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2017-10-30/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2017-10-30/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"Tags\":{\"shape\":\"S22\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateFieldLevelEncryptionConfig\":{\"http\":{\"requestUri\":\"/2017-10-30/field-level-encryption\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2k\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"CreateFieldLevelEncryptionProfile\":{\"http\":{\"requestUri\":\"/2017-10-30/field-level-encryption-profile\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S2t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2017-10-30/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S2v\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S2z\"}},\"payload\":\"Invalidation\"}},\"CreatePublicKey\":{\"http\":{\"requestUri\":\"/2017-10-30/public-key\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S31\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S33\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2017-10-30/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2017-10-30/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\"},\"Tags\":{\"shape\":\"S22\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-30/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-30/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-30/field-level-encryption/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-30/field-level-encryption-profile/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeletePublicKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-30/public-key/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-30/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetFieldLevelEncryption\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/field-level-encryption/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2k\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"GetFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionConfig\"}},\"GetFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/field-level-encryption-profile/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S2t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"GetFieldLevelEncryptionProfileConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S2z\"}},\"payload\":\"Invalidation\"}},\"GetPublicKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/public-key/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S33\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"GetPublicKeyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyConfig\":{\"shape\":\"S31\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKeyConfig\"}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4g\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4g\"}},\"payload\":\"DistributionList\"}},\"ListFieldLevelEncryptionConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/field-level-encryption\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2a\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2e\"}}}}}}},\"payload\":\"FieldLevelEncryptionList\"}},\"ListFieldLevelEncryptionProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/field-level-encryption-profile\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionProfileSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"Name\",\"EncryptionEntities\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Name\":{},\"EncryptionEntities\":{\"shape\":\"S2n\"},\"Comment\":{}}}}}}},\"payload\":\"FieldLevelEncryptionProfileList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListPublicKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/public-key\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"PublicKeySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"CreatedTime\",\"EncodedKey\"],\"members\":{\"Id\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"EncodedKey\":{},\"Comment\":{}}}}}}},\"payload\":\"PublicKeyList\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S36\"},\"Aliases\":{\"shape\":\"S8\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-10-30/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S22\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2017-10-30/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S22\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2017-10-30/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-30/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-30/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-30/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2k\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"UpdateFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-30/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S2t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"UpdatePublicKey\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-30/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\",\"Id\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S31\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S33\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-30/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2017-10-30/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"S8\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1b\"},\"CustomErrorResponses\":{\"shape\":\"S1e\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1j\"},\"Restrictions\":{\"shape\":\"S1n\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}},\"OriginReadTimeout\":{\"type\":\"integer\"},\"OriginKeepaliveTimeout\":{\"type\":\"integer\"}}}}}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"},\"FieldLevelEncryptionId\":{}}},\"So\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Headers\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"}}}}},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S16\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"required\":[\"LambdaFunctionARN\",\"EventType\"],\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{}}}}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"},\"FieldLevelEncryptionId\":{}}}}}},\"S1e\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"ActiveTrustedSigners\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1v\"},\"DistributionConfig\":{\"shape\":\"S7\"}}},\"S1v\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}}}}}}},\"S22\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S29\":{\"type\":\"structure\",\"required\":[\"CallerReference\"],\"members\":{\"CallerReference\":{},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2a\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2e\"}}},\"S2a\":{\"type\":\"structure\",\"required\":[\"ForwardWhenQueryArgProfileIsUnknown\"],\"members\":{\"ForwardWhenQueryArgProfileIsUnknown\":{\"type\":\"boolean\"},\"QueryArgProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"QueryArgProfile\",\"type\":\"structure\",\"required\":[\"QueryArg\",\"ProfileId\"],\"members\":{\"QueryArg\":{},\"ProfileId\":{}}}}}}}},\"S2e\":{\"type\":\"structure\",\"required\":[\"ForwardWhenContentTypeIsUnknown\"],\"members\":{\"ForwardWhenContentTypeIsUnknown\":{\"type\":\"boolean\"},\"ContentTypeProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"ContentTypeProfile\",\"type\":\"structure\",\"required\":[\"Format\",\"ContentType\"],\"members\":{\"Format\":{},\"ProfileId\":{},\"ContentType\":{}}}}}}}},\"S2k\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\"}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"Name\",\"CallerReference\",\"EncryptionEntities\"],\"members\":{\"Name\":{},\"CallerReference\":{},\"Comment\":{},\"EncryptionEntities\":{\"shape\":\"S2n\"}}},\"S2n\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"EncryptionEntity\",\"type\":\"structure\",\"required\":[\"PublicKeyId\",\"ProviderId\",\"FieldPatterns\"],\"members\":{\"PublicKeyId\":{},\"ProviderId\":{},\"FieldPatterns\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldPattern\"}}}}}}}}},\"S2t\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\"}}},\"S2v\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S2z\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S2v\"}}},\"S31\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Name\",\"EncodedKey\"],\"members\":{\"CallerReference\":{},\"Name\":{},\"EncodedKey\":{},\"Comment\":{}}},\"S33\":{\"type\":\"structure\",\"required\":[\"Id\",\"CreatedTime\",\"PublicKeyConfig\"],\"members\":{\"Id\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"PublicKeyConfig\":{\"shape\":\"S31\"}}},\"S35\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S36\"},\"Aliases\":{\"shape\":\"S8\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"Sy\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S36\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S39\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1v\"},\"StreamingDistributionConfig\":{\"shape\":\"S35\"}}},\"S4g\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"S8\"},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1b\"},\"CustomErrorResponses\":{\"shape\":\"S1e\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1j\"},\"Restrictions\":{\"shape\":\"S1n\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}}}}}}}");

/***/ }),

/***/ 94430:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"output_token\":\"DistributionList.NextMarker\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"output_token\":\"InvalidationList.NextMarker\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 36502:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 59976:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-06-18\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2018-06-18\"},\"operations\":{\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2018-06-18/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2018-06-18/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2018-06-18/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"Tags\":{\"shape\":\"S22\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateFieldLevelEncryptionConfig\":{\"http\":{\"requestUri\":\"/2018-06-18/field-level-encryption\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2k\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"CreateFieldLevelEncryptionProfile\":{\"http\":{\"requestUri\":\"/2018-06-18/field-level-encryption-profile\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S2t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2018-06-18/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S2v\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S2z\"}},\"payload\":\"Invalidation\"}},\"CreatePublicKey\":{\"http\":{\"requestUri\":\"/2018-06-18/public-key\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S31\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S33\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2018-06-18/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2018-06-18/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\"},\"Tags\":{\"shape\":\"S22\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-06-18/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-06-18/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-06-18/field-level-encryption/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-06-18/field-level-encryption-profile/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeletePublicKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-06-18/public-key/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-06-18/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetFieldLevelEncryption\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/field-level-encryption/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2k\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"GetFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionConfig\"}},\"GetFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/field-level-encryption-profile/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S2t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"GetFieldLevelEncryptionProfileConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S2z\"}},\"payload\":\"Invalidation\"}},\"GetPublicKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/public-key/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S33\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"GetPublicKeyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyConfig\":{\"shape\":\"S31\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKeyConfig\"}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4g\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4g\"}},\"payload\":\"DistributionList\"}},\"ListFieldLevelEncryptionConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/field-level-encryption\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2a\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2e\"}}}}}}},\"payload\":\"FieldLevelEncryptionList\"}},\"ListFieldLevelEncryptionProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/field-level-encryption-profile\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionProfileSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"Name\",\"EncryptionEntities\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Name\":{},\"EncryptionEntities\":{\"shape\":\"S2n\"},\"Comment\":{}}}}}}},\"payload\":\"FieldLevelEncryptionProfileList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListPublicKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/public-key\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"PublicKeySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"CreatedTime\",\"EncodedKey\"],\"members\":{\"Id\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"EncodedKey\":{},\"Comment\":{}}}}}}},\"payload\":\"PublicKeyList\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S36\"},\"Aliases\":{\"shape\":\"S8\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-06-18/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S22\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2018-06-18/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S22\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2018-06-18/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-06-18/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-06-18/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S1t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-06-18/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2k\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"UpdateFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-06-18/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S2t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"UpdatePublicKey\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-06-18/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\",\"Id\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S31\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S33\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-06-18/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S35\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-06-18/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S39\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"S8\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1b\"},\"CustomErrorResponses\":{\"shape\":\"S1e\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1j\"},\"Restrictions\":{\"shape\":\"S1n\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}},\"OriginReadTimeout\":{\"type\":\"integer\"},\"OriginKeepaliveTimeout\":{\"type\":\"integer\"}}}}}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"},\"FieldLevelEncryptionId\":{}}},\"So\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Headers\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S13\"}}}}},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S16\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"required\":[\"LambdaFunctionARN\",\"EventType\"],\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{},\"IncludeBody\":{\"type\":\"boolean\"}}}}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"So\"},\"TrustedSigners\":{\"shape\":\"Sy\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S12\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S16\"},\"FieldLevelEncryptionId\":{}}}}}},\"S1e\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"ActiveTrustedSigners\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1v\"},\"DistributionConfig\":{\"shape\":\"S7\"}}},\"S1v\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}}}}}}},\"S22\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S29\":{\"type\":\"structure\",\"required\":[\"CallerReference\"],\"members\":{\"CallerReference\":{},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2a\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2e\"}}},\"S2a\":{\"type\":\"structure\",\"required\":[\"ForwardWhenQueryArgProfileIsUnknown\"],\"members\":{\"ForwardWhenQueryArgProfileIsUnknown\":{\"type\":\"boolean\"},\"QueryArgProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"QueryArgProfile\",\"type\":\"structure\",\"required\":[\"QueryArg\",\"ProfileId\"],\"members\":{\"QueryArg\":{},\"ProfileId\":{}}}}}}}},\"S2e\":{\"type\":\"structure\",\"required\":[\"ForwardWhenContentTypeIsUnknown\"],\"members\":{\"ForwardWhenContentTypeIsUnknown\":{\"type\":\"boolean\"},\"ContentTypeProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"ContentTypeProfile\",\"type\":\"structure\",\"required\":[\"Format\",\"ContentType\"],\"members\":{\"Format\":{},\"ProfileId\":{},\"ContentType\":{}}}}}}}},\"S2k\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionConfig\":{\"shape\":\"S29\"}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"Name\",\"CallerReference\",\"EncryptionEntities\"],\"members\":{\"Name\":{},\"CallerReference\":{},\"Comment\":{},\"EncryptionEntities\":{\"shape\":\"S2n\"}}},\"S2n\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"EncryptionEntity\",\"type\":\"structure\",\"required\":[\"PublicKeyId\",\"ProviderId\",\"FieldPatterns\"],\"members\":{\"PublicKeyId\":{},\"ProviderId\":{},\"FieldPatterns\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldPattern\"}}}}}}}}},\"S2t\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2m\"}}},\"S2v\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S2z\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S2v\"}}},\"S31\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Name\",\"EncodedKey\"],\"members\":{\"CallerReference\":{},\"Name\":{},\"EncodedKey\":{},\"Comment\":{}}},\"S33\":{\"type\":\"structure\",\"required\":[\"Id\",\"CreatedTime\",\"PublicKeyConfig\"],\"members\":{\"Id\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"PublicKeyConfig\":{\"shape\":\"S31\"}}},\"S35\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S36\"},\"Aliases\":{\"shape\":\"S8\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"Sy\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S36\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S39\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S1v\"},\"StreamingDistributionConfig\":{\"shape\":\"S35\"}}},\"S4g\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"S8\"},\"Origins\":{\"shape\":\"Sb\"},\"DefaultCacheBehavior\":{\"shape\":\"Sn\"},\"CacheBehaviors\":{\"shape\":\"S1b\"},\"CustomErrorResponses\":{\"shape\":\"S1e\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1j\"},\"Restrictions\":{\"shape\":\"S1n\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}}}}}}}");

/***/ }),

/***/ 43510:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"output_token\":\"DistributionList.NextMarker\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"output_token\":\"InvalidationList.NextMarker\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 67512:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 2861:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-05\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2018-11-05\"},\"operations\":{\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2018-11-05/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2018-11-05/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S22\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2018-11-05/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"Tags\":{\"shape\":\"S2b\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S22\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateFieldLevelEncryptionConfig\":{\"http\":{\"requestUri\":\"/2018-11-05/field-level-encryption\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S2i\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2t\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"CreateFieldLevelEncryptionProfile\":{\"http\":{\"requestUri\":\"/2018-11-05/field-level-encryption-profile\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2v\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S32\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2018-11-05/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S34\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S38\"}},\"payload\":\"Invalidation\"}},\"CreatePublicKey\":{\"http\":{\"requestUri\":\"/2018-11-05/public-key\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S3a\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S3c\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2018-11-05/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3e\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3i\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2018-11-05/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3e\"},\"Tags\":{\"shape\":\"S2b\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3i\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-11-05/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-11-05/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-11-05/field-level-encryption/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-11-05/field-level-encryption-profile/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeletePublicKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-11-05/public-key/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-11-05/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S22\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetFieldLevelEncryption\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/field-level-encryption/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"GetFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S2i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionConfig\"}},\"GetFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/field-level-encryption-profile/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S32\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"GetFieldLevelEncryptionProfileConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2v\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S38\"}},\"payload\":\"Invalidation\"}},\"GetPublicKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/public-key/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S3c\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"GetPublicKeyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyConfig\":{\"shape\":\"S3a\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKeyConfig\"}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3e\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4p\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4p\"}},\"payload\":\"DistributionList\"}},\"ListFieldLevelEncryptionConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/field-level-encryption\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2j\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2n\"}}}}}}},\"payload\":\"FieldLevelEncryptionList\"}},\"ListFieldLevelEncryptionProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/field-level-encryption-profile\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionProfileSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"Name\",\"EncryptionEntities\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Name\":{},\"EncryptionEntities\":{\"shape\":\"S2w\"},\"Comment\":{}}}}}}},\"payload\":\"FieldLevelEncryptionProfileList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListPublicKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/public-key\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"PublicKeySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"CreatedTime\",\"EncodedKey\"],\"members\":{\"Id\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"EncodedKey\":{},\"Comment\":{}}}}}}},\"payload\":\"PublicKeyList\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S3f\"},\"Aliases\":{\"shape\":\"S8\"},\"TrustedSigners\":{\"shape\":\"S17\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-11-05/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S2b\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2018-11-05/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S2b\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2018-11-05/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-11-05/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-11-05/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S22\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-11-05/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S2i\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"UpdateFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-11-05/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2v\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S32\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"UpdatePublicKey\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-11-05/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\",\"Id\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S3a\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S3c\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2018-11-05/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3e\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2018-11-05/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"S8\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sb\"},\"OriginGroups\":{\"shape\":\"Sn\"},\"DefaultCacheBehavior\":{\"shape\":\"Sw\"},\"CacheBehaviors\":{\"shape\":\"S1k\"},\"CustomErrorResponses\":{\"shape\":\"S1n\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1s\"},\"Restrictions\":{\"shape\":\"S1w\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}},\"OriginReadTimeout\":{\"type\":\"integer\"},\"OriginKeepaliveTimeout\":{\"type\":\"integer\"}}}}}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginGroup\",\"type\":\"structure\",\"required\":[\"Id\",\"FailoverCriteria\",\"Members\"],\"members\":{\"Id\":{},\"FailoverCriteria\":{\"type\":\"structure\",\"required\":[\"StatusCodes\"],\"members\":{\"StatusCodes\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StatusCode\",\"type\":\"integer\"}}}}}},\"Members\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginGroupMember\",\"type\":\"structure\",\"required\":[\"OriginId\"],\"members\":{\"OriginId\":{}}}}}}}}}}},\"Sw\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"Sx\"},\"TrustedSigners\":{\"shape\":\"S17\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S1b\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S1f\"},\"FieldLevelEncryptionId\":{}}},\"Sx\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Headers\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"S17\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S1c\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S1c\"}}}}},\"S1c\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S1f\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"required\":[\"LambdaFunctionARN\",\"EventType\"],\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{},\"IncludeBody\":{\"type\":\"boolean\"}}}}}},\"S1k\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"Sx\"},\"TrustedSigners\":{\"shape\":\"S17\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S1b\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S1f\"},\"FieldLevelEncryptionId\":{}}}}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S1s\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S1w\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S22\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"ActiveTrustedSigners\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S24\"},\"DistributionConfig\":{\"shape\":\"S7\"}}},\"S24\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}}}}}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S2i\":{\"type\":\"structure\",\"required\":[\"CallerReference\"],\"members\":{\"CallerReference\":{},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2j\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2n\"}}},\"S2j\":{\"type\":\"structure\",\"required\":[\"ForwardWhenQueryArgProfileIsUnknown\"],\"members\":{\"ForwardWhenQueryArgProfileIsUnknown\":{\"type\":\"boolean\"},\"QueryArgProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"QueryArgProfile\",\"type\":\"structure\",\"required\":[\"QueryArg\",\"ProfileId\"],\"members\":{\"QueryArg\":{},\"ProfileId\":{}}}}}}}},\"S2n\":{\"type\":\"structure\",\"required\":[\"ForwardWhenContentTypeIsUnknown\"],\"members\":{\"ForwardWhenContentTypeIsUnknown\":{\"type\":\"boolean\"},\"ContentTypeProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"ContentTypeProfile\",\"type\":\"structure\",\"required\":[\"Format\",\"ContentType\"],\"members\":{\"Format\":{},\"ProfileId\":{},\"ContentType\":{}}}}}}}},\"S2t\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionConfig\":{\"shape\":\"S2i\"}}},\"S2v\":{\"type\":\"structure\",\"required\":[\"Name\",\"CallerReference\",\"EncryptionEntities\"],\"members\":{\"Name\":{},\"CallerReference\":{},\"Comment\":{},\"EncryptionEntities\":{\"shape\":\"S2w\"}}},\"S2w\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"EncryptionEntity\",\"type\":\"structure\",\"required\":[\"PublicKeyId\",\"ProviderId\",\"FieldPatterns\"],\"members\":{\"PublicKeyId\":{},\"ProviderId\":{},\"FieldPatterns\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldPattern\"}}}}}}}}},\"S32\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2v\"}}},\"S34\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S38\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S34\"}}},\"S3a\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Name\",\"EncodedKey\"],\"members\":{\"CallerReference\":{},\"Name\":{},\"EncodedKey\":{},\"Comment\":{}}},\"S3c\":{\"type\":\"structure\",\"required\":[\"Id\",\"CreatedTime\",\"PublicKeyConfig\"],\"members\":{\"Id\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"PublicKeyConfig\":{\"shape\":\"S3a\"}}},\"S3e\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S3f\"},\"Aliases\":{\"shape\":\"S8\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"S17\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S3f\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S3i\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S24\"},\"StreamingDistributionConfig\":{\"shape\":\"S3e\"}}},\"S4p\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"S8\"},\"Origins\":{\"shape\":\"Sb\"},\"OriginGroups\":{\"shape\":\"Sn\"},\"DefaultCacheBehavior\":{\"shape\":\"Sw\"},\"CacheBehaviors\":{\"shape\":\"S1k\"},\"CustomErrorResponses\":{\"shape\":\"S1n\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1s\"},\"Restrictions\":{\"shape\":\"S1w\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}}}}}}}");

/***/ }),

/***/ 94484:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"output_token\":\"DistributionList.NextMarker\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"output_token\":\"InvalidationList.NextMarker\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 94992:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 22621:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-03-26\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2019-03-26\"},\"operations\":{\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2019-03-26/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2019-03-26/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S23\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2019-03-26/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"Tags\":{\"shape\":\"S2f\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S23\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateFieldLevelEncryptionConfig\":{\"http\":{\"requestUri\":\"/2019-03-26/field-level-encryption\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S2m\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2x\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"CreateFieldLevelEncryptionProfile\":{\"http\":{\"requestUri\":\"/2019-03-26/field-level-encryption-profile\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2z\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S36\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2019-03-26/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S38\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S3c\"}},\"payload\":\"Invalidation\"}},\"CreatePublicKey\":{\"http\":{\"requestUri\":\"/2019-03-26/public-key\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S3e\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S3g\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2019-03-26/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3i\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3m\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2019-03-26/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3i\"},\"Tags\":{\"shape\":\"S2f\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3m\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-03-26/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-03-26/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-03-26/field-level-encryption/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-03-26/field-level-encryption-profile/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeletePublicKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-03-26/public-key/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-03-26/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S23\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"S7\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetFieldLevelEncryption\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/field-level-encryption/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2x\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"GetFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S2m\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionConfig\"}},\"GetFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/field-level-encryption-profile/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S36\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"GetFieldLevelEncryptionProfileConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2z\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S3c\"}},\"payload\":\"Invalidation\"}},\"GetPublicKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/public-key/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S3g\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"GetPublicKeyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyConfig\":{\"shape\":\"S3e\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKeyConfig\"}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3m\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4t\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S4t\"}},\"payload\":\"DistributionList\"}},\"ListFieldLevelEncryptionConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/field-level-encryption\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2n\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2r\"}}}}}}},\"payload\":\"FieldLevelEncryptionList\"}},\"ListFieldLevelEncryptionProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/field-level-encryption-profile\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionProfileSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"Name\",\"EncryptionEntities\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Name\":{},\"EncryptionEntities\":{\"shape\":\"S30\"},\"Comment\":{}}}}}}},\"payload\":\"FieldLevelEncryptionProfileList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListPublicKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/public-key\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"PublicKeySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"CreatedTime\",\"EncodedKey\"],\"members\":{\"Id\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"EncodedKey\":{},\"Comment\":{}}}}}}},\"payload\":\"PublicKeyList\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S3j\"},\"Aliases\":{\"shape\":\"S8\"},\"TrustedSigners\":{\"shape\":\"S17\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-03-26/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S2f\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2019-03-26/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S2f\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2019-03-26/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-03-26/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"S5\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-03-26/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"S7\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S23\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-03-26/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S2m\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S2x\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"UpdateFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-03-26/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2z\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S36\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"UpdatePublicKey\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-03-26/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\",\"Id\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S3e\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S3g\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-03-26/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S3i\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2019-03-26/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S3m\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"S2\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"S8\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sb\"},\"OriginGroups\":{\"shape\":\"Sn\"},\"DefaultCacheBehavior\":{\"shape\":\"Sw\"},\"CacheBehaviors\":{\"shape\":\"S1k\"},\"CustomErrorResponses\":{\"shape\":\"S1n\"},\"Comment\":{\"type\":\"string\",\"sensitive\":true},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1t\"},\"Restrictions\":{\"shape\":\"S1x\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}},\"OriginReadTimeout\":{\"type\":\"integer\"},\"OriginKeepaliveTimeout\":{\"type\":\"integer\"}}},\"ConnectionAttempts\":{\"type\":\"integer\"},\"ConnectionTimeout\":{\"type\":\"integer\"}}}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginGroup\",\"type\":\"structure\",\"required\":[\"Id\",\"FailoverCriteria\",\"Members\"],\"members\":{\"Id\":{},\"FailoverCriteria\":{\"type\":\"structure\",\"required\":[\"StatusCodes\"],\"members\":{\"StatusCodes\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StatusCode\",\"type\":\"integer\"}}}}}},\"Members\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginGroupMember\",\"type\":\"structure\",\"required\":[\"OriginId\"],\"members\":{\"OriginId\":{}}}}}}}}}}},\"Sw\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"Sx\"},\"TrustedSigners\":{\"shape\":\"S17\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S1b\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S1f\"},\"FieldLevelEncryptionId\":{}}},\"Sx\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"Headers\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"S17\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S1c\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S1c\"}}}}},\"S1c\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S1f\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"required\":[\"LambdaFunctionARN\",\"EventType\"],\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{},\"IncludeBody\":{\"type\":\"boolean\"}}}}}},\"S1k\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ForwardedValues\",\"TrustedSigners\",\"ViewerProtocolPolicy\",\"MinTTL\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"ForwardedValues\":{\"shape\":\"Sx\"},\"TrustedSigners\":{\"shape\":\"S17\"},\"ViewerProtocolPolicy\":{},\"MinTTL\":{\"type\":\"long\"},\"AllowedMethods\":{\"shape\":\"S1b\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S1f\"},\"FieldLevelEncryptionId\":{}}}}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S1x\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S23\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"ActiveTrustedSigners\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S25\"},\"DistributionConfig\":{\"shape\":\"S7\"},\"AliasICPRecordals\":{\"shape\":\"S2a\"}}},\"S25\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}}}}}}},\"S2a\":{\"type\":\"list\",\"member\":{\"locationName\":\"AliasICPRecordal\",\"type\":\"structure\",\"members\":{\"CNAME\":{},\"ICPRecordalStatus\":{}}}},\"S2f\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"CallerReference\"],\"members\":{\"CallerReference\":{},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S2n\"},\"ContentTypeProfileConfig\":{\"shape\":\"S2r\"}}},\"S2n\":{\"type\":\"structure\",\"required\":[\"ForwardWhenQueryArgProfileIsUnknown\"],\"members\":{\"ForwardWhenQueryArgProfileIsUnknown\":{\"type\":\"boolean\"},\"QueryArgProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"QueryArgProfile\",\"type\":\"structure\",\"required\":[\"QueryArg\",\"ProfileId\"],\"members\":{\"QueryArg\":{},\"ProfileId\":{}}}}}}}},\"S2r\":{\"type\":\"structure\",\"required\":[\"ForwardWhenContentTypeIsUnknown\"],\"members\":{\"ForwardWhenContentTypeIsUnknown\":{\"type\":\"boolean\"},\"ContentTypeProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"ContentTypeProfile\",\"type\":\"structure\",\"required\":[\"Format\",\"ContentType\"],\"members\":{\"Format\":{},\"ProfileId\":{},\"ContentType\":{}}}}}}}},\"S2x\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionConfig\":{\"shape\":\"S2m\"}}},\"S2z\":{\"type\":\"structure\",\"required\":[\"Name\",\"CallerReference\",\"EncryptionEntities\"],\"members\":{\"Name\":{},\"CallerReference\":{},\"Comment\":{},\"EncryptionEntities\":{\"shape\":\"S30\"}}},\"S30\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"EncryptionEntity\",\"type\":\"structure\",\"required\":[\"PublicKeyId\",\"ProviderId\",\"FieldPatterns\"],\"members\":{\"PublicKeyId\":{},\"ProviderId\":{},\"FieldPatterns\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldPattern\"}}}}}}}}},\"S36\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S2z\"}}},\"S38\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S3c\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S38\"}}},\"S3e\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Name\",\"EncodedKey\"],\"members\":{\"CallerReference\":{},\"Name\":{},\"EncodedKey\":{},\"Comment\":{}}},\"S3g\":{\"type\":\"structure\",\"required\":[\"Id\",\"CreatedTime\",\"PublicKeyConfig\"],\"members\":{\"Id\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"PublicKeyConfig\":{\"shape\":\"S3e\"}}},\"S3i\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S3j\"},\"Aliases\":{\"shape\":\"S8\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"S17\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S3j\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S3m\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S25\"},\"StreamingDistributionConfig\":{\"shape\":\"S3i\"}}},\"S4t\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"S8\"},\"Origins\":{\"shape\":\"Sb\"},\"OriginGroups\":{\"shape\":\"Sn\"},\"DefaultCacheBehavior\":{\"shape\":\"Sw\"},\"CacheBehaviors\":{\"shape\":\"S1k\"},\"CustomErrorResponses\":{\"shape\":\"S1n\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S1t\"},\"Restrictions\":{\"shape\":\"S1x\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"},\"AliasICPRecordals\":{\"shape\":\"S2a\"}}}}}}}}");

/***/ }),

/***/ 49289:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"output_token\":\"DistributionList.NextMarker\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"output_token\":\"InvalidationList.NextMarker\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 89078:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":35,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 44946:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-05-31\",\"endpointPrefix\":\"cloudfront\",\"globalEndpoint\":\"cloudfront.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"CloudFront\",\"serviceFullName\":\"Amazon CloudFront\",\"serviceId\":\"CloudFront\",\"signatureVersion\":\"v4\",\"uid\":\"cloudfront-2020-05-31\"},\"operations\":{\"CreateCachePolicy\":{\"http\":{\"requestUri\":\"/2020-05-31/cache-policy\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CachePolicyConfig\"],\"members\":{\"CachePolicyConfig\":{\"shape\":\"S2\",\"locationName\":\"CachePolicyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"CachePolicyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CachePolicy\":{\"shape\":\"Sl\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CachePolicy\"}},\"CreateCloudFrontOriginAccessIdentity\":{\"http\":{\"requestUri\":\"/2020-05-31/origin-access-identity/cloudfront\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"So\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"Sq\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"CreateDistribution\":{\"http\":{\"requestUri\":\"/2020-05-31/distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\"],\"members\":{\"DistributionConfig\":{\"shape\":\"Ss\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S2l\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateDistributionWithTags\":{\"http\":{\"requestUri\":\"/2020-05-31/distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfigWithTags\"],\"members\":{\"DistributionConfigWithTags\":{\"locationName\":\"DistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Tags\"],\"members\":{\"DistributionConfig\":{\"shape\":\"Ss\"},\"Tags\":{\"shape\":\"S2z\"}}}},\"payload\":\"DistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S2l\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"CreateFieldLevelEncryptionConfig\":{\"http\":{\"requestUri\":\"/2020-05-31/field-level-encryption\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S36\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S3h\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"CreateFieldLevelEncryptionProfile\":{\"http\":{\"requestUri\":\"/2020-05-31/field-level-encryption-profile\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S3j\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S3q\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"CreateInvalidation\":{\"http\":{\"requestUri\":\"/2020-05-31/distribution/{DistributionId}/invalidation\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"InvalidationBatch\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"InvalidationBatch\":{\"shape\":\"S3s\",\"locationName\":\"InvalidationBatch\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"InvalidationBatch\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"Invalidation\":{\"shape\":\"S3w\"}},\"payload\":\"Invalidation\"}},\"CreateKeyGroup\":{\"http\":{\"requestUri\":\"/2020-05-31/key-group\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"KeyGroupConfig\"],\"members\":{\"KeyGroupConfig\":{\"shape\":\"S3y\",\"locationName\":\"KeyGroupConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"KeyGroupConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"KeyGroup\":{\"shape\":\"S41\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"KeyGroup\"}},\"CreateMonitoringSubscription\":{\"http\":{\"requestUri\":\"/2020-05-31/distributions/{DistributionId}/monitoring-subscription\"},\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringSubscription\",\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"MonitoringSubscription\":{\"shape\":\"S43\",\"locationName\":\"MonitoringSubscription\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"MonitoringSubscription\"},\"output\":{\"type\":\"structure\",\"members\":{\"MonitoringSubscription\":{\"shape\":\"S43\"}},\"payload\":\"MonitoringSubscription\"}},\"CreateOriginRequestPolicy\":{\"http\":{\"requestUri\":\"/2020-05-31/origin-request-policy\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"OriginRequestPolicyConfig\"],\"members\":{\"OriginRequestPolicyConfig\":{\"shape\":\"S48\",\"locationName\":\"OriginRequestPolicyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"OriginRequestPolicyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"OriginRequestPolicy\":{\"shape\":\"S4g\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"OriginRequestPolicy\"}},\"CreatePublicKey\":{\"http\":{\"requestUri\":\"/2020-05-31/public-key\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S4i\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S4k\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"CreateRealtimeLogConfig\":{\"http\":{\"requestUri\":\"/2020-05-31/realtime-log-config\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateRealtimeLogConfigRequest\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"required\":[\"EndPoints\",\"Fields\",\"Name\",\"SamplingRate\"],\"members\":{\"EndPoints\":{\"shape\":\"S4m\"},\"Fields\":{\"shape\":\"S4p\"},\"Name\":{},\"SamplingRate\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RealtimeLogConfig\":{\"shape\":\"S4r\"}}}},\"CreateStreamingDistribution\":{\"http\":{\"requestUri\":\"/2020-05-31/streaming-distribution\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S4t\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S4x\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"CreateStreamingDistributionWithTags\":{\"http\":{\"requestUri\":\"/2020-05-31/streaming-distribution?WithTags\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfigWithTags\"],\"members\":{\"StreamingDistributionConfigWithTags\":{\"locationName\":\"StreamingDistributionConfigWithTags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Tags\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S4t\"},\"Tags\":{\"shape\":\"S2z\"}}}},\"payload\":\"StreamingDistributionConfigWithTags\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S4x\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"DeleteCachePolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/cache-policy/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/origin-access-identity/cloudfront/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/field-level-encryption/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/field-level-encryption-profile/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteKeyGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/key-group/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteMonitoringSubscription\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/distributions/{DistributionId}/monitoring-subscription\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteOriginRequestPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/origin-request-policy/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeletePublicKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/public-key/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"DeleteRealtimeLogConfig\":{\"http\":{\"requestUri\":\"/2020-05-31/delete-realtime-log-config/\",\"responseCode\":204},\"input\":{\"locationName\":\"DeleteRealtimeLogConfigRequest\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"members\":{\"Name\":{},\"ARN\":{}}}},\"DeleteStreamingDistribution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-05-31/streaming-distribution/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}}}},\"GetCachePolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/cache-policy/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CachePolicy\":{\"shape\":\"Sl\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CachePolicy\"}},\"GetCachePolicyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/cache-policy/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CachePolicyConfig\":{\"shape\":\"S2\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CachePolicyConfig\"}},\"GetCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/origin-access-identity/cloudfront/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"Sq\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"GetCloudFrontOriginAccessIdentityConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"So\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"}},\"GetDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S2l\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"GetDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionConfig\":{\"shape\":\"Ss\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"DistributionConfig\"}},\"GetFieldLevelEncryption\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/field-level-encryption/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S3h\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"GetFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S36\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionConfig\"}},\"GetFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/field-level-encryption-profile/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S3q\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"GetFieldLevelEncryptionProfileConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S3j\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"}},\"GetInvalidation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distribution/{DistributionId}/invalidation/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\",\"Id\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invalidation\":{\"shape\":\"S3w\"}},\"payload\":\"Invalidation\"}},\"GetKeyGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/key-group/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyGroup\":{\"shape\":\"S41\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"KeyGroup\"}},\"GetKeyGroupConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/key-group/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyGroupConfig\":{\"shape\":\"S3y\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"KeyGroupConfig\"}},\"GetMonitoringSubscription\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distributions/{DistributionId}/monitoring-subscription\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MonitoringSubscription\":{\"shape\":\"S43\"}},\"payload\":\"MonitoringSubscription\"}},\"GetOriginRequestPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/origin-request-policy/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OriginRequestPolicy\":{\"shape\":\"S4g\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"OriginRequestPolicy\"}},\"GetOriginRequestPolicyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/origin-request-policy/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OriginRequestPolicyConfig\":{\"shape\":\"S48\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"OriginRequestPolicyConfig\"}},\"GetPublicKey\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/public-key/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S4k\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"GetPublicKeyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyConfig\":{\"shape\":\"S4i\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKeyConfig\"}},\"GetRealtimeLogConfig\":{\"http\":{\"requestUri\":\"/2020-05-31/get-realtime-log-config/\"},\"input\":{\"locationName\":\"GetRealtimeLogConfigRequest\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"members\":{\"Name\":{},\"ARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RealtimeLogConfig\":{\"shape\":\"S4r\"}}}},\"GetStreamingDistribution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/streaming-distribution/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S4x\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}},\"GetStreamingDistributionConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S4t\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistributionConfig\"}},\"ListCachePolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/cache-policy\"},\"input\":{\"type\":\"structure\",\"members\":{\"Type\":{\"location\":\"querystring\",\"locationName\":\"Type\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CachePolicyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CachePolicySummary\",\"type\":\"structure\",\"required\":[\"Type\",\"CachePolicy\"],\"members\":{\"Type\":{},\"CachePolicy\":{\"shape\":\"Sl\"}}}}}}},\"payload\":\"CachePolicyList\"}},\"ListCloudFrontOriginAccessIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/origin-access-identity/cloudfront\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentityList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CloudFrontOriginAccessIdentitySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\",\"Comment\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"Comment\":{}}}}}}},\"payload\":\"CloudFrontOriginAccessIdentityList\"}},\"ListDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S6w\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByCachePolicyId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distributionsByCachePolicyId/{CachePolicyId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CachePolicyId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"CachePolicyId\":{\"location\":\"uri\",\"locationName\":\"CachePolicyId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionIdList\":{\"shape\":\"S71\"}},\"payload\":\"DistributionIdList\"}},\"ListDistributionsByKeyGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distributionsByKeyGroupId/{KeyGroupId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"KeyGroupId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"KeyGroupId\":{\"location\":\"uri\",\"locationName\":\"KeyGroupId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionIdList\":{\"shape\":\"S71\"}},\"payload\":\"DistributionIdList\"}},\"ListDistributionsByOriginRequestPolicyId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distributionsByOriginRequestPolicyId/{OriginRequestPolicyId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"OriginRequestPolicyId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"OriginRequestPolicyId\":{\"location\":\"uri\",\"locationName\":\"OriginRequestPolicyId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionIdList\":{\"shape\":\"S71\"}},\"payload\":\"DistributionIdList\"}},\"ListDistributionsByRealtimeLogConfig\":{\"http\":{\"requestUri\":\"/2020-05-31/distributionsByRealtimeLogConfig/\"},\"input\":{\"locationName\":\"ListDistributionsByRealtimeLogConfigRequest\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"members\":{\"Marker\":{},\"MaxItems\":{},\"RealtimeLogConfigName\":{},\"RealtimeLogConfigArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S6w\"}},\"payload\":\"DistributionList\"}},\"ListDistributionsByWebACLId\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distributionsByWebACLId/{WebACLId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"WebACLId\":{\"location\":\"uri\",\"locationName\":\"WebACLId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DistributionList\":{\"shape\":\"S6w\"}},\"payload\":\"DistributionList\"}},\"ListFieldLevelEncryptionConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/field-level-encryption\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S37\"},\"ContentTypeProfileConfig\":{\"shape\":\"S3b\"}}}}}}},\"payload\":\"FieldLevelEncryptionList\"}},\"ListFieldLevelEncryptionProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/field-level-encryption-profile\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfileList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldLevelEncryptionProfileSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"Name\",\"EncryptionEntities\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Name\":{},\"EncryptionEntities\":{\"shape\":\"S3k\"},\"Comment\":{}}}}}}},\"payload\":\"FieldLevelEncryptionProfileList\"}},\"ListInvalidations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/distribution/{DistributionId}/invalidation\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionId\"],\"members\":{\"DistributionId\":{\"location\":\"uri\",\"locationName\":\"DistributionId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidationList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"InvalidationSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"CreateTime\",\"Status\"],\"members\":{\"Id\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"payload\":\"InvalidationList\"}},\"ListKeyGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/key-group\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyGroupList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyGroupSummary\",\"type\":\"structure\",\"required\":[\"KeyGroup\"],\"members\":{\"KeyGroup\":{\"shape\":\"S41\"}}}}}}},\"payload\":\"KeyGroupList\"}},\"ListOriginRequestPolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/origin-request-policy\"},\"input\":{\"type\":\"structure\",\"members\":{\"Type\":{\"location\":\"querystring\",\"locationName\":\"Type\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OriginRequestPolicyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginRequestPolicySummary\",\"type\":\"structure\",\"required\":[\"Type\",\"OriginRequestPolicy\"],\"members\":{\"Type\":{},\"OriginRequestPolicy\":{\"shape\":\"S4g\"}}}}}}},\"payload\":\"OriginRequestPolicyList\"}},\"ListPublicKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/public-key\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyList\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"Quantity\"],\"members\":{\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"PublicKeySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"CreatedTime\",\"EncodedKey\"],\"members\":{\"Id\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"EncodedKey\":{},\"Comment\":{}}}}}}},\"payload\":\"PublicKeyList\"}},\"ListRealtimeLogConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/realtime-log-config\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RealtimeLogConfigs\":{\"type\":\"structure\",\"required\":[\"MaxItems\",\"IsTruncated\",\"Marker\"],\"members\":{\"MaxItems\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"shape\":\"S4r\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{},\"NextMarker\":{}}}},\"payload\":\"RealtimeLogConfigs\"}},\"ListStreamingDistributions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/streaming-distribution\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistributionList\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StreamingDistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"S3Origin\",\"Aliases\",\"TrustedSigners\",\"Comment\",\"PriceClass\",\"Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"S3Origin\":{\"shape\":\"S4u\"},\"Aliases\":{\"shape\":\"St\"},\"TrustedSigners\":{\"shape\":\"S1j\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}}}}}},\"payload\":\"StreamingDistributionList\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-05-31/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"S2z\"}},\"payload\":\"Tags\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2020-05-31/tagging?Operation=Tag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"Tags\":{\"shape\":\"S2z\",\"locationName\":\"Tags\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}}},\"payload\":\"Tags\"}},\"UntagResource\":{\"http\":{\"requestUri\":\"/2020-05-31/tagging?Operation=Untag\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"querystring\",\"locationName\":\"Resource\"},\"TagKeys\":{\"locationName\":\"TagKeys\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}}},\"payload\":\"TagKeys\"}},\"UpdateCachePolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/cache-policy/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CachePolicyConfig\",\"Id\"],\"members\":{\"CachePolicyConfig\":{\"shape\":\"S2\",\"locationName\":\"CachePolicyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CachePolicyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CachePolicy\":{\"shape\":\"Sl\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CachePolicy\"}},\"UpdateCloudFrontOriginAccessIdentity\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/origin-access-identity/cloudfront/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"CloudFrontOriginAccessIdentityConfig\",\"Id\"],\"members\":{\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"So\",\"locationName\":\"CloudFrontOriginAccessIdentityConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"CloudFrontOriginAccessIdentityConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontOriginAccessIdentity\":{\"shape\":\"Sq\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"CloudFrontOriginAccessIdentity\"}},\"UpdateDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DistributionConfig\",\"Id\"],\"members\":{\"DistributionConfig\":{\"shape\":\"Ss\",\"locationName\":\"DistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"DistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"Distribution\":{\"shape\":\"S2l\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"Distribution\"}},\"UpdateFieldLevelEncryptionConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/field-level-encryption/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionConfig\":{\"shape\":\"S36\",\"locationName\":\"FieldLevelEncryptionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryption\":{\"shape\":\"S3h\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryption\"}},\"UpdateFieldLevelEncryptionProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/field-level-encryption-profile/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"FieldLevelEncryptionProfileConfig\",\"Id\"],\"members\":{\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S3j\",\"locationName\":\"FieldLevelEncryptionProfileConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"FieldLevelEncryptionProfileConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"FieldLevelEncryptionProfile\":{\"shape\":\"S3q\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"FieldLevelEncryptionProfile\"}},\"UpdateKeyGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/key-group/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"KeyGroupConfig\",\"Id\"],\"members\":{\"KeyGroupConfig\":{\"shape\":\"S3y\",\"locationName\":\"KeyGroupConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"KeyGroupConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"KeyGroup\":{\"shape\":\"S41\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"KeyGroup\"}},\"UpdateOriginRequestPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/origin-request-policy/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"OriginRequestPolicyConfig\",\"Id\"],\"members\":{\"OriginRequestPolicyConfig\":{\"shape\":\"S48\",\"locationName\":\"OriginRequestPolicyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"OriginRequestPolicyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"OriginRequestPolicy\":{\"shape\":\"S4g\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"OriginRequestPolicy\"}},\"UpdatePublicKey\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/public-key/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"PublicKeyConfig\",\"Id\"],\"members\":{\"PublicKeyConfig\":{\"shape\":\"S4i\",\"locationName\":\"PublicKeyConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"PublicKeyConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{\"shape\":\"S4k\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"PublicKey\"}},\"UpdateRealtimeLogConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/realtime-log-config/\"},\"input\":{\"locationName\":\"UpdateRealtimeLogConfigRequest\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"},\"type\":\"structure\",\"members\":{\"EndPoints\":{\"shape\":\"S4m\"},\"Fields\":{\"shape\":\"S4p\"},\"Name\":{},\"ARN\":{},\"SamplingRate\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RealtimeLogConfig\":{\"shape\":\"S4r\"}}}},\"UpdateStreamingDistribution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-05-31/streaming-distribution/{Id}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamingDistributionConfig\",\"Id\"],\"members\":{\"StreamingDistributionConfig\":{\"shape\":\"S4t\",\"locationName\":\"StreamingDistributionConfig\",\"xmlNamespace\":{\"uri\":\"http://cloudfront.amazonaws.com/doc/2020-05-31/\"}},\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"}},\"payload\":\"StreamingDistributionConfig\"},\"output\":{\"type\":\"structure\",\"members\":{\"StreamingDistribution\":{\"shape\":\"S4x\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"}},\"payload\":\"StreamingDistribution\"}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"Name\",\"MinTTL\"],\"members\":{\"Comment\":{},\"Name\":{},\"DefaultTTL\":{\"type\":\"long\"},\"MaxTTL\":{\"type\":\"long\"},\"MinTTL\":{\"type\":\"long\"},\"ParametersInCacheKeyAndForwardedToOrigin\":{\"type\":\"structure\",\"required\":[\"EnableAcceptEncodingGzip\",\"HeadersConfig\",\"CookiesConfig\",\"QueryStringsConfig\"],\"members\":{\"EnableAcceptEncodingGzip\":{\"type\":\"boolean\"},\"EnableAcceptEncodingBrotli\":{\"type\":\"boolean\"},\"HeadersConfig\":{\"type\":\"structure\",\"required\":[\"HeaderBehavior\"],\"members\":{\"HeaderBehavior\":{},\"Headers\":{\"shape\":\"S9\"}}},\"CookiesConfig\":{\"type\":\"structure\",\"required\":[\"CookieBehavior\"],\"members\":{\"CookieBehavior\":{},\"Cookies\":{\"shape\":\"Se\"}}},\"QueryStringsConfig\":{\"type\":\"structure\",\"required\":[\"QueryStringBehavior\"],\"members\":{\"QueryStringBehavior\":{},\"QueryStrings\":{\"shape\":\"Si\"}}}}}}},\"S9\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"Se\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"Si\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"CachePolicyConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CachePolicyConfig\":{\"shape\":\"S2\"}}},\"So\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Comment\"],\"members\":{\"CallerReference\":{},\"Comment\":{}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"Id\",\"S3CanonicalUserId\"],\"members\":{\"Id\":{},\"S3CanonicalUserId\":{},\"CloudFrontOriginAccessIdentityConfig\":{\"shape\":\"So\"}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Origins\",\"DefaultCacheBehavior\",\"Comment\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"Aliases\":{\"shape\":\"St\"},\"DefaultRootObject\":{},\"Origins\":{\"shape\":\"Sv\"},\"OriginGroups\":{\"shape\":\"S19\"},\"DefaultCacheBehavior\":{\"shape\":\"S1i\"},\"CacheBehaviors\":{\"shape\":\"S22\"},\"CustomErrorResponses\":{\"shape\":\"S25\"},\"Comment\":{\"type\":\"string\",\"sensitive\":true},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"IncludeCookies\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S2b\"},\"Restrictions\":{\"shape\":\"S2f\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"}}},\"St\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CNAME\"}}}},\"Sv\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Origin\",\"type\":\"structure\",\"required\":[\"Id\",\"DomainName\"],\"members\":{\"Id\":{},\"DomainName\":{},\"OriginPath\":{},\"CustomHeaders\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginCustomHeader\",\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}}}}},\"S3OriginConfig\":{\"type\":\"structure\",\"required\":[\"OriginAccessIdentity\"],\"members\":{\"OriginAccessIdentity\":{}}},\"CustomOriginConfig\":{\"type\":\"structure\",\"required\":[\"HTTPPort\",\"HTTPSPort\",\"OriginProtocolPolicy\"],\"members\":{\"HTTPPort\":{\"type\":\"integer\"},\"HTTPSPort\":{\"type\":\"integer\"},\"OriginProtocolPolicy\":{},\"OriginSslProtocols\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"SslProtocol\"}}}},\"OriginReadTimeout\":{\"type\":\"integer\"},\"OriginKeepaliveTimeout\":{\"type\":\"integer\"}}},\"ConnectionAttempts\":{\"type\":\"integer\"},\"ConnectionTimeout\":{\"type\":\"integer\"},\"OriginShield\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"OriginShieldRegion\":{}}}}}}}},\"S19\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginGroup\",\"type\":\"structure\",\"required\":[\"Id\",\"FailoverCriteria\",\"Members\"],\"members\":{\"Id\":{},\"FailoverCriteria\":{\"type\":\"structure\",\"required\":[\"StatusCodes\"],\"members\":{\"StatusCodes\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"StatusCode\",\"type\":\"integer\"}}}}}},\"Members\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"OriginGroupMember\",\"type\":\"structure\",\"required\":[\"OriginId\"],\"members\":{\"OriginId\":{}}}}}}}}}}},\"S1i\":{\"type\":\"structure\",\"required\":[\"TargetOriginId\",\"ViewerProtocolPolicy\"],\"members\":{\"TargetOriginId\":{},\"TrustedSigners\":{\"shape\":\"S1j\"},\"TrustedKeyGroups\":{\"shape\":\"S1l\"},\"ViewerProtocolPolicy\":{},\"AllowedMethods\":{\"shape\":\"S1o\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S1s\"},\"FieldLevelEncryptionId\":{},\"RealtimeLogConfigArn\":{},\"CachePolicyId\":{},\"OriginRequestPolicyId\":{},\"ForwardedValues\":{\"shape\":\"S1x\",\"deprecated\":true},\"MinTTL\":{\"deprecated\":true,\"type\":\"long\"},\"DefaultTTL\":{\"deprecated\":true,\"type\":\"long\"},\"MaxTTL\":{\"deprecated\":true,\"type\":\"long\"}}},\"S1j\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"AwsAccountNumber\"}}}},\"S1l\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyGroup\"}}}},\"S1o\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S1p\"},\"CachedMethods\":{\"type\":\"structure\",\"required\":[\"Quantity\",\"Items\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"shape\":\"S1p\"}}}}},\"S1p\":{\"type\":\"list\",\"member\":{\"locationName\":\"Method\"}},\"S1s\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"LambdaFunctionAssociation\",\"type\":\"structure\",\"required\":[\"LambdaFunctionARN\",\"EventType\"],\"members\":{\"LambdaFunctionARN\":{},\"EventType\":{},\"IncludeBody\":{\"type\":\"boolean\"}}}}}},\"S1x\":{\"type\":\"structure\",\"required\":[\"QueryString\",\"Cookies\"],\"members\":{\"QueryString\":{\"type\":\"boolean\"},\"Cookies\":{\"type\":\"structure\",\"required\":[\"Forward\"],\"members\":{\"Forward\":{},\"WhitelistedNames\":{\"shape\":\"Se\"}}},\"Headers\":{\"shape\":\"S9\"},\"QueryStringCacheKeys\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Name\"}}}}}},\"S22\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheBehavior\",\"type\":\"structure\",\"required\":[\"PathPattern\",\"TargetOriginId\",\"ViewerProtocolPolicy\"],\"members\":{\"PathPattern\":{},\"TargetOriginId\":{},\"TrustedSigners\":{\"shape\":\"S1j\"},\"TrustedKeyGroups\":{\"shape\":\"S1l\"},\"ViewerProtocolPolicy\":{},\"AllowedMethods\":{\"shape\":\"S1o\"},\"SmoothStreaming\":{\"type\":\"boolean\"},\"Compress\":{\"type\":\"boolean\"},\"LambdaFunctionAssociations\":{\"shape\":\"S1s\"},\"FieldLevelEncryptionId\":{},\"RealtimeLogConfigArn\":{},\"CachePolicyId\":{},\"OriginRequestPolicyId\":{},\"ForwardedValues\":{\"shape\":\"S1x\",\"deprecated\":true},\"MinTTL\":{\"deprecated\":true,\"type\":\"long\"},\"DefaultTTL\":{\"deprecated\":true,\"type\":\"long\"},\"MaxTTL\":{\"deprecated\":true,\"type\":\"long\"}}}}}},\"S25\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"CustomErrorResponse\",\"type\":\"structure\",\"required\":[\"ErrorCode\"],\"members\":{\"ErrorCode\":{\"type\":\"integer\"},\"ResponsePagePath\":{},\"ResponseCode\":{},\"ErrorCachingMinTTL\":{\"type\":\"long\"}}}}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"CloudFrontDefaultCertificate\":{\"type\":\"boolean\"},\"IAMCertificateId\":{},\"ACMCertificateArn\":{},\"SSLSupportMethod\":{},\"MinimumProtocolVersion\":{},\"Certificate\":{\"deprecated\":true},\"CertificateSource\":{\"deprecated\":true}}},\"S2f\":{\"type\":\"structure\",\"required\":[\"GeoRestriction\"],\"members\":{\"GeoRestriction\":{\"type\":\"structure\",\"required\":[\"RestrictionType\",\"Quantity\"],\"members\":{\"RestrictionType\":{},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Location\"}}}}}},\"S2l\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"InProgressInvalidationBatches\",\"DomainName\",\"DistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"InProgressInvalidationBatches\":{\"type\":\"integer\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S2m\"},\"ActiveTrustedKeyGroups\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyGroup\",\"type\":\"structure\",\"members\":{\"KeyGroupId\":{},\"KeyPairIds\":{\"shape\":\"S2p\"}}}}}},\"DistributionConfig\":{\"shape\":\"Ss\"},\"AliasICPRecordals\":{\"shape\":\"S2u\"}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Quantity\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Signer\",\"type\":\"structure\",\"members\":{\"AwsAccountNumber\":{},\"KeyPairIds\":{\"shape\":\"S2p\"}}}}}},\"S2p\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}}}},\"S2u\":{\"type\":\"list\",\"member\":{\"locationName\":\"AliasICPRecordal\",\"type\":\"structure\",\"members\":{\"CNAME\":{},\"ICPRecordalStatus\":{}}}},\"S2z\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S36\":{\"type\":\"structure\",\"required\":[\"CallerReference\"],\"members\":{\"CallerReference\":{},\"Comment\":{},\"QueryArgProfileConfig\":{\"shape\":\"S37\"},\"ContentTypeProfileConfig\":{\"shape\":\"S3b\"}}},\"S37\":{\"type\":\"structure\",\"required\":[\"ForwardWhenQueryArgProfileIsUnknown\"],\"members\":{\"ForwardWhenQueryArgProfileIsUnknown\":{\"type\":\"boolean\"},\"QueryArgProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"QueryArgProfile\",\"type\":\"structure\",\"required\":[\"QueryArg\",\"ProfileId\"],\"members\":{\"QueryArg\":{},\"ProfileId\":{}}}}}}}},\"S3b\":{\"type\":\"structure\",\"required\":[\"ForwardWhenContentTypeIsUnknown\"],\"members\":{\"ForwardWhenContentTypeIsUnknown\":{\"type\":\"boolean\"},\"ContentTypeProfiles\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"ContentTypeProfile\",\"type\":\"structure\",\"required\":[\"Format\",\"ContentType\"],\"members\":{\"Format\":{},\"ProfileId\":{},\"ContentType\":{}}}}}}}},\"S3h\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionConfig\":{\"shape\":\"S36\"}}},\"S3j\":{\"type\":\"structure\",\"required\":[\"Name\",\"CallerReference\",\"EncryptionEntities\"],\"members\":{\"Name\":{},\"CallerReference\":{},\"Comment\":{},\"EncryptionEntities\":{\"shape\":\"S3k\"}}},\"S3k\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"EncryptionEntity\",\"type\":\"structure\",\"required\":[\"PublicKeyId\",\"ProviderId\",\"FieldPatterns\"],\"members\":{\"PublicKeyId\":{},\"ProviderId\":{},\"FieldPatterns\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"FieldPattern\"}}}}}}}}},\"S3q\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"FieldLevelEncryptionProfileConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FieldLevelEncryptionProfileConfig\":{\"shape\":\"S3j\"}}},\"S3s\":{\"type\":\"structure\",\"required\":[\"Paths\",\"CallerReference\"],\"members\":{\"Paths\":{\"type\":\"structure\",\"required\":[\"Quantity\"],\"members\":{\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Path\"}}}},\"CallerReference\":{}}},\"S3w\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"CreateTime\",\"InvalidationBatch\"],\"members\":{\"Id\":{},\"Status\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"InvalidationBatch\":{\"shape\":\"S3s\"}}},\"S3y\":{\"type\":\"structure\",\"required\":[\"Name\",\"Items\"],\"members\":{\"Name\":{},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"PublicKey\"}},\"Comment\":{}}},\"S41\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"KeyGroupConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"KeyGroupConfig\":{\"shape\":\"S3y\"}}},\"S43\":{\"type\":\"structure\",\"members\":{\"RealtimeMetricsSubscriptionConfig\":{\"type\":\"structure\",\"required\":[\"RealtimeMetricsSubscriptionStatus\"],\"members\":{\"RealtimeMetricsSubscriptionStatus\":{}}}}},\"S48\":{\"type\":\"structure\",\"required\":[\"Name\",\"HeadersConfig\",\"CookiesConfig\",\"QueryStringsConfig\"],\"members\":{\"Comment\":{},\"Name\":{},\"HeadersConfig\":{\"type\":\"structure\",\"required\":[\"HeaderBehavior\"],\"members\":{\"HeaderBehavior\":{},\"Headers\":{\"shape\":\"S9\"}}},\"CookiesConfig\":{\"type\":\"structure\",\"required\":[\"CookieBehavior\"],\"members\":{\"CookieBehavior\":{},\"Cookies\":{\"shape\":\"Se\"}}},\"QueryStringsConfig\":{\"type\":\"structure\",\"required\":[\"QueryStringBehavior\"],\"members\":{\"QueryStringBehavior\":{},\"QueryStrings\":{\"shape\":\"Si\"}}}}},\"S4g\":{\"type\":\"structure\",\"required\":[\"Id\",\"LastModifiedTime\",\"OriginRequestPolicyConfig\"],\"members\":{\"Id\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"OriginRequestPolicyConfig\":{\"shape\":\"S48\"}}},\"S4i\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"Name\",\"EncodedKey\"],\"members\":{\"CallerReference\":{},\"Name\":{},\"EncodedKey\":{},\"Comment\":{}}},\"S4k\":{\"type\":\"structure\",\"required\":[\"Id\",\"CreatedTime\",\"PublicKeyConfig\"],\"members\":{\"Id\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"PublicKeyConfig\":{\"shape\":\"S4i\"}}},\"S4m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StreamType\"],\"members\":{\"StreamType\":{},\"KinesisStreamConfig\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"StreamARN\"],\"members\":{\"RoleARN\":{},\"StreamARN\":{}}}}}},\"S4p\":{\"type\":\"list\",\"member\":{\"locationName\":\"Field\"}},\"S4r\":{\"type\":\"structure\",\"required\":[\"ARN\",\"Name\",\"SamplingRate\",\"EndPoints\",\"Fields\"],\"members\":{\"ARN\":{},\"Name\":{},\"SamplingRate\":{\"type\":\"long\"},\"EndPoints\":{\"shape\":\"S4m\"},\"Fields\":{\"shape\":\"S4p\"}}},\"S4t\":{\"type\":\"structure\",\"required\":[\"CallerReference\",\"S3Origin\",\"Comment\",\"TrustedSigners\",\"Enabled\"],\"members\":{\"CallerReference\":{},\"S3Origin\":{\"shape\":\"S4u\"},\"Aliases\":{\"shape\":\"St\"},\"Comment\":{},\"Logging\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"Bucket\",\"Prefix\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Bucket\":{},\"Prefix\":{}}},\"TrustedSigners\":{\"shape\":\"S1j\"},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"S4u\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"OriginAccessIdentity\"],\"members\":{\"DomainName\":{},\"OriginAccessIdentity\":{}}},\"S4x\":{\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"DomainName\",\"ActiveTrustedSigners\",\"StreamingDistributionConfig\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"ActiveTrustedSigners\":{\"shape\":\"S2m\"},\"StreamingDistributionConfig\":{\"shape\":\"S4t\"}}},\"S6w\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionSummary\",\"type\":\"structure\",\"required\":[\"Id\",\"ARN\",\"Status\",\"LastModifiedTime\",\"DomainName\",\"Aliases\",\"Origins\",\"DefaultCacheBehavior\",\"CacheBehaviors\",\"CustomErrorResponses\",\"Comment\",\"PriceClass\",\"Enabled\",\"ViewerCertificate\",\"Restrictions\",\"WebACLId\",\"HttpVersion\",\"IsIPV6Enabled\"],\"members\":{\"Id\":{},\"ARN\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DomainName\":{},\"Aliases\":{\"shape\":\"St\"},\"Origins\":{\"shape\":\"Sv\"},\"OriginGroups\":{\"shape\":\"S19\"},\"DefaultCacheBehavior\":{\"shape\":\"S1i\"},\"CacheBehaviors\":{\"shape\":\"S22\"},\"CustomErrorResponses\":{\"shape\":\"S25\"},\"Comment\":{},\"PriceClass\":{},\"Enabled\":{\"type\":\"boolean\"},\"ViewerCertificate\":{\"shape\":\"S2b\"},\"Restrictions\":{\"shape\":\"S2f\"},\"WebACLId\":{},\"HttpVersion\":{},\"IsIPV6Enabled\":{\"type\":\"boolean\"},\"AliasICPRecordals\":{\"shape\":\"S2u\"}}}}}},\"S71\":{\"type\":\"structure\",\"required\":[\"Marker\",\"MaxItems\",\"IsTruncated\",\"Quantity\"],\"members\":{\"Marker\":{},\"NextMarker\":{},\"MaxItems\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Quantity\":{\"type\":\"integer\"},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"DistributionId\"}}}}}}");

/***/ }),

/***/ 92022:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCloudFrontOriginAccessIdentities\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"CloudFrontOriginAccessIdentityList.IsTruncated\",\"output_token\":\"CloudFrontOriginAccessIdentityList.NextMarker\",\"result_key\":\"CloudFrontOriginAccessIdentityList.Items\"},\"ListDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"DistributionList.IsTruncated\",\"output_token\":\"DistributionList.NextMarker\",\"result_key\":\"DistributionList.Items\"},\"ListInvalidations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"InvalidationList.IsTruncated\",\"output_token\":\"InvalidationList.NextMarker\",\"result_key\":\"InvalidationList.Items\"},\"ListStreamingDistributions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"StreamingDistributionList.IsTruncated\",\"output_token\":\"StreamingDistributionList.NextMarker\",\"result_key\":\"StreamingDistributionList.Items\"}}}");

/***/ }),

/***/ 83035:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DistributionDeployed\":{\"delay\":60,\"operation\":\"GetDistribution\",\"maxAttempts\":35,\"description\":\"Wait until a distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Distribution.Status\"}]},\"InvalidationCompleted\":{\"delay\":20,\"operation\":\"GetInvalidation\",\"maxAttempts\":30,\"description\":\"Wait until an invalidation has completed.\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Invalidation.Status\"}]},\"StreamingDistributionDeployed\":{\"delay\":60,\"operation\":\"GetStreamingDistribution\",\"maxAttempts\":25,\"description\":\"Wait until a streaming distribution is deployed.\",\"acceptors\":[{\"expected\":\"Deployed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamingDistribution.Status\"}]}}}");

/***/ }),

/***/ 59717:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-05-30\",\"endpointPrefix\":\"cloudhsm\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CloudHSM\",\"serviceFullName\":\"Amazon CloudHSM\",\"serviceId\":\"CloudHSM\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CloudHsmFrontendService\",\"uid\":\"cloudhsm-2014-05-30\"},\"operations\":{\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagList\"],\"members\":{\"ResourceArn\":{},\"TagList\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}},\"CreateHapg\":{\"input\":{\"type\":\"structure\",\"required\":[\"Label\"],\"members\":{\"Label\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HapgArn\":{}}}},\"CreateHsm\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetId\",\"SshKey\",\"IamRoleArn\",\"SubscriptionType\"],\"members\":{\"SubnetId\":{},\"SshKey\":{},\"EniIp\":{},\"IamRoleArn\":{},\"ExternalId\":{},\"SubscriptionType\":{},\"ClientToken\":{},\"SyslogIp\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HsmArn\":{}}}},\"CreateLunaClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"Certificate\"],\"members\":{\"Label\":{},\"Certificate\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientArn\":{}}}},\"DeleteHapg\":{\"input\":{\"type\":\"structure\",\"required\":[\"HapgArn\"],\"members\":{\"HapgArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}},\"DeleteHsm\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmArn\"],\"members\":{\"HsmArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}},\"DeleteLunaClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientArn\"],\"members\":{\"ClientArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}},\"DescribeHapg\":{\"input\":{\"type\":\"structure\",\"required\":[\"HapgArn\"],\"members\":{\"HapgArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HapgArn\":{},\"HapgSerial\":{},\"HsmsLastActionFailed\":{\"shape\":\"Sz\"},\"HsmsPendingDeletion\":{\"shape\":\"Sz\"},\"HsmsPendingRegistration\":{\"shape\":\"Sz\"},\"Label\":{},\"LastModifiedTimestamp\":{},\"PartitionSerialList\":{\"shape\":\"S11\"},\"State\":{}}}},\"DescribeHsm\":{\"input\":{\"type\":\"structure\",\"members\":{\"HsmArn\":{},\"HsmSerialNumber\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HsmArn\":{},\"Status\":{},\"StatusDetails\":{},\"AvailabilityZone\":{},\"EniId\":{},\"EniIp\":{},\"SubscriptionType\":{},\"SubscriptionStartDate\":{},\"SubscriptionEndDate\":{},\"VpcId\":{},\"SubnetId\":{},\"IamRoleArn\":{},\"SerialNumber\":{},\"VendorName\":{},\"HsmType\":{},\"SoftwareVersion\":{},\"SshPublicKey\":{},\"SshKeyLastUpdated\":{},\"ServerCertUri\":{},\"ServerCertLastUpdated\":{},\"Partitions\":{\"type\":\"list\",\"member\":{}}}}},\"DescribeLunaClient\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClientArn\":{},\"CertificateFingerprint\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientArn\":{},\"Certificate\":{},\"CertificateFingerprint\":{},\"LastModifiedTimestamp\":{},\"Label\":{}}}},\"GetConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientArn\",\"ClientVersion\",\"HapgList\"],\"members\":{\"ClientArn\":{},\"ClientVersion\":{},\"HapgList\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigType\":{},\"ConfigFile\":{},\"ConfigCred\":{}}}},\"ListAvailableZones\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AZList\":{\"type\":\"list\",\"member\":{}}}}},\"ListHapgs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"HapgList\"],\"members\":{\"HapgList\":{\"shape\":\"S1i\"},\"NextToken\":{}}}},\"ListHsms\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HsmList\":{\"shape\":\"Sz\"},\"NextToken\":{}}}},\"ListLunaClients\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ClientList\"],\"members\":{\"ClientList\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TagList\"],\"members\":{\"TagList\":{\"shape\":\"S3\"}}}},\"ModifyHapg\":{\"input\":{\"type\":\"structure\",\"required\":[\"HapgArn\"],\"members\":{\"HapgArn\":{},\"Label\":{},\"PartitionSerialList\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HapgArn\":{}}}},\"ModifyHsm\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmArn\"],\"members\":{\"HsmArn\":{},\"SubnetId\":{},\"EniIp\":{},\"IamRoleArn\":{},\"ExternalId\":{},\"SyslogIp\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HsmArn\":{}}}},\"ModifyLunaClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientArn\",\"Certificate\"],\"members\":{\"ClientArn\":{},\"Certificate\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientArn\":{}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeyList\"],\"members\":{\"ResourceArn\":{},\"TagKeyList\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sz\":{\"type\":\"list\",\"member\":{}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S1i\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 26512:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 19362:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-04-28\",\"endpointPrefix\":\"cloudhsmv2\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CloudHSM V2\",\"serviceFullName\":\"AWS CloudHSM V2\",\"serviceId\":\"CloudHSM V2\",\"signatureVersion\":\"v4\",\"signingName\":\"cloudhsm\",\"targetPrefix\":\"BaldrApiService\",\"uid\":\"cloudhsmv2-2017-04-28\"},\"operations\":{\"CopyBackupToRegion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationRegion\",\"BackupId\"],\"members\":{\"DestinationRegion\":{},\"BackupId\":{},\"TagList\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DestinationBackup\":{\"type\":\"structure\",\"members\":{\"CreateTimestamp\":{\"type\":\"timestamp\"},\"SourceRegion\":{},\"SourceBackup\":{},\"SourceCluster\":{}}}}}},\"CreateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmType\",\"SubnetIds\"],\"members\":{\"BackupRetentionPolicy\":{\"shape\":\"Sd\"},\"HsmType\":{},\"SourceBackupId\":{},\"SubnetIds\":{\"type\":\"list\",\"member\":{}},\"TagList\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sk\"}}}},\"CreateHsm\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"AvailabilityZone\"],\"members\":{\"ClusterId\":{},\"AvailabilityZone\":{},\"IpAddress\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Hsm\":{\"shape\":\"Sn\"}}}},\"DeleteBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\"],\"members\":{\"BackupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backup\":{\"shape\":\"S16\"}}}},\"DeleteCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sk\"}}}},\"DeleteHsm\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"HsmId\":{},\"EniId\":{},\"EniIp\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HsmId\":{}}}},\"DescribeBackups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S1g\"},\"SortAscending\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backups\":{\"type\":\"list\",\"member\":{\"shape\":\"S16\"}},\"NextToken\":{}}}},\"DescribeClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S1g\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Clusters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}},\"NextToken\":{}}}},\"InitializeCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"SignedCert\",\"TrustAnchor\"],\"members\":{\"ClusterId\":{},\"SignedCert\":{},\"TrustAnchor\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateMessage\":{}}}},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TagList\"],\"members\":{\"TagList\":{\"shape\":\"S4\"},\"NextToken\":{}}}},\"ModifyBackupAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\",\"NeverExpires\"],\"members\":{\"BackupId\":{},\"NeverExpires\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backup\":{\"shape\":\"S16\"}}}},\"ModifyCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupRetentionPolicy\",\"ClusterId\"],\"members\":{\"BackupRetentionPolicy\":{\"shape\":\"Sd\"},\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sk\"}}}},\"RestoreBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\"],\"members\":{\"BackupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backup\":{\"shape\":\"S16\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagList\"],\"members\":{\"ResourceId\":{},\"TagList\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagKeyList\"],\"members\":{\"ResourceId\":{},\"TagKeyList\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Value\":{}}},\"Sk\":{\"type\":\"structure\",\"members\":{\"BackupPolicy\":{},\"BackupRetentionPolicy\":{\"shape\":\"Sd\"},\"ClusterId\":{},\"CreateTimestamp\":{\"type\":\"timestamp\"},\"Hsms\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}},\"HsmType\":{},\"PreCoPassword\":{},\"SecurityGroup\":{},\"SourceBackupId\":{},\"State\":{},\"StateMessage\":{},\"SubnetMapping\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"VpcId\":{},\"Certificates\":{\"type\":\"structure\",\"members\":{\"ClusterCsr\":{},\"HsmCertificate\":{},\"AwsHardwareCertificate\":{},\"ManufacturerHardwareCertificate\":{},\"ClusterCertificate\":{}}},\"TagList\":{\"shape\":\"S4\"}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"HsmId\"],\"members\":{\"AvailabilityZone\":{},\"ClusterId\":{},\"SubnetId\":{},\"EniId\":{},\"EniIp\":{},\"HsmId\":{},\"State\":{},\"StateMessage\":{}}},\"S16\":{\"type\":\"structure\",\"required\":[\"BackupId\"],\"members\":{\"BackupId\":{},\"BackupState\":{},\"ClusterId\":{},\"CreateTimestamp\":{\"type\":\"timestamp\"},\"CopyTimestamp\":{\"type\":\"timestamp\"},\"NeverExpires\":{\"type\":\"boolean\"},\"SourceRegion\":{},\"SourceBackup\":{},\"SourceCluster\":{},\"DeleteTimestamp\":{\"type\":\"timestamp\"},\"TagList\":{\"shape\":\"S4\"}}},\"S1g\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}}");

/***/ }),

/***/ 96674:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeBackups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeClusters\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTags\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 4999:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2011-02-01\",\"endpointPrefix\":\"cloudsearch\",\"serviceFullName\":\"Amazon CloudSearch\",\"serviceId\":\"CloudSearch\",\"signatureVersion\":\"v4\",\"xmlNamespace\":\"http://cloudsearch.amazonaws.com/doc/2011-02-01/\",\"protocol\":\"query\"},\"operations\":{\"CreateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"CreateDomainResult\",\"type\":\"structure\",\"members\":{\"DomainStatus\":{\"shape\":\"S4\"}}}},\"DefineIndexField\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"IndexField\"],\"members\":{\"DomainName\":{},\"IndexField\":{\"shape\":\"Sf\"}}},\"output\":{\"resultWrapper\":\"DefineIndexFieldResult\",\"type\":\"structure\",\"required\":[\"IndexField\"],\"members\":{\"IndexField\":{\"shape\":\"Sx\"}}}},\"DefineRankExpression\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"RankExpression\"],\"members\":{\"DomainName\":{},\"RankExpression\":{\"shape\":\"S12\"}}},\"output\":{\"resultWrapper\":\"DefineRankExpressionResult\",\"type\":\"structure\",\"required\":[\"RankExpression\"],\"members\":{\"RankExpression\":{\"shape\":\"S15\"}}}},\"DeleteDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DeleteDomainResult\",\"type\":\"structure\",\"members\":{\"DomainStatus\":{\"shape\":\"S4\"}}}},\"DeleteIndexField\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"IndexFieldName\"],\"members\":{\"DomainName\":{},\"IndexFieldName\":{}}},\"output\":{\"resultWrapper\":\"DeleteIndexFieldResult\",\"type\":\"structure\",\"required\":[\"IndexField\"],\"members\":{\"IndexField\":{\"shape\":\"Sx\"}}}},\"DeleteRankExpression\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"RankName\"],\"members\":{\"DomainName\":{},\"RankName\":{}}},\"output\":{\"resultWrapper\":\"DeleteRankExpressionResult\",\"type\":\"structure\",\"required\":[\"RankExpression\"],\"members\":{\"RankExpression\":{\"shape\":\"S15\"}}}},\"DescribeAvailabilityOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeAvailabilityOptionsResult\",\"type\":\"structure\",\"members\":{\"AvailabilityOptions\":{\"shape\":\"S1e\"}}}},\"DescribeDefaultSearchField\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeDefaultSearchFieldResult\",\"type\":\"structure\",\"required\":[\"DefaultSearchField\"],\"members\":{\"DefaultSearchField\":{\"shape\":\"S1i\"}}}},\"DescribeDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"DomainNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeDomainsResult\",\"type\":\"structure\",\"required\":[\"DomainStatusList\"],\"members\":{\"DomainStatusList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}}},\"DescribeIndexFields\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"FieldNames\":{\"shape\":\"S1o\"}}},\"output\":{\"resultWrapper\":\"DescribeIndexFieldsResult\",\"type\":\"structure\",\"required\":[\"IndexFields\"],\"members\":{\"IndexFields\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\"}}}}},\"DescribeRankExpressions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"RankNames\":{\"shape\":\"S1o\"}}},\"output\":{\"resultWrapper\":\"DescribeRankExpressionsResult\",\"type\":\"structure\",\"required\":[\"RankExpressions\"],\"members\":{\"RankExpressions\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}}}}},\"DescribeServiceAccessPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeServiceAccessPoliciesResult\",\"type\":\"structure\",\"required\":[\"AccessPolicies\"],\"members\":{\"AccessPolicies\":{\"shape\":\"S1w\"}}}},\"DescribeStemmingOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeStemmingOptionsResult\",\"type\":\"structure\",\"required\":[\"Stems\"],\"members\":{\"Stems\":{\"shape\":\"S20\"}}}},\"DescribeStopwordOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeStopwordOptionsResult\",\"type\":\"structure\",\"required\":[\"Stopwords\"],\"members\":{\"Stopwords\":{\"shape\":\"S24\"}}}},\"DescribeSynonymOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeSynonymOptionsResult\",\"type\":\"structure\",\"required\":[\"Synonyms\"],\"members\":{\"Synonyms\":{\"shape\":\"S28\"}}}},\"IndexDocuments\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"IndexDocumentsResult\",\"type\":\"structure\",\"members\":{\"FieldNames\":{\"shape\":\"S1o\"}}}},\"UpdateAvailabilityOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"MultiAZ\"],\"members\":{\"DomainName\":{},\"MultiAZ\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"UpdateAvailabilityOptionsResult\",\"type\":\"structure\",\"members\":{\"AvailabilityOptions\":{\"shape\":\"S1e\"}}}},\"UpdateDefaultSearchField\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"DefaultSearchField\"],\"members\":{\"DomainName\":{},\"DefaultSearchField\":{}}},\"output\":{\"resultWrapper\":\"UpdateDefaultSearchFieldResult\",\"type\":\"structure\",\"required\":[\"DefaultSearchField\"],\"members\":{\"DefaultSearchField\":{\"shape\":\"S1i\"}}}},\"UpdateServiceAccessPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"AccessPolicies\"],\"members\":{\"DomainName\":{},\"AccessPolicies\":{}}},\"output\":{\"resultWrapper\":\"UpdateServiceAccessPoliciesResult\",\"type\":\"structure\",\"required\":[\"AccessPolicies\"],\"members\":{\"AccessPolicies\":{\"shape\":\"S1w\"}}}},\"UpdateStemmingOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Stems\"],\"members\":{\"DomainName\":{},\"Stems\":{}}},\"output\":{\"resultWrapper\":\"UpdateStemmingOptionsResult\",\"type\":\"structure\",\"required\":[\"Stems\"],\"members\":{\"Stems\":{\"shape\":\"S20\"}}}},\"UpdateStopwordOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Stopwords\"],\"members\":{\"DomainName\":{},\"Stopwords\":{}}},\"output\":{\"resultWrapper\":\"UpdateStopwordOptionsResult\",\"type\":\"structure\",\"required\":[\"Stopwords\"],\"members\":{\"Stopwords\":{\"shape\":\"S24\"}}}},\"UpdateSynonymOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Synonyms\"],\"members\":{\"DomainName\":{},\"Synonyms\":{}}},\"output\":{\"resultWrapper\":\"UpdateSynonymOptionsResult\",\"type\":\"structure\",\"required\":[\"Synonyms\"],\"members\":{\"Synonyms\":{\"shape\":\"S28\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"DomainName\",\"RequiresIndexDocuments\"],\"members\":{\"DomainId\":{},\"DomainName\":{},\"Created\":{\"type\":\"boolean\"},\"Deleted\":{\"type\":\"boolean\"},\"NumSearchableDocs\":{\"type\":\"long\"},\"DocService\":{\"shape\":\"S8\"},\"SearchService\":{\"shape\":\"S8\"},\"RequiresIndexDocuments\":{\"type\":\"boolean\"},\"Processing\":{\"type\":\"boolean\"},\"SearchInstanceType\":{},\"SearchPartitionCount\":{\"type\":\"integer\"},\"SearchInstanceCount\":{\"type\":\"integer\"}}},\"S8\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Endpoint\":{}}},\"Sf\":{\"type\":\"structure\",\"required\":[\"IndexFieldName\",\"IndexFieldType\"],\"members\":{\"IndexFieldName\":{},\"IndexFieldType\":{},\"UIntOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{\"type\":\"integer\"}}},\"LiteralOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SearchEnabled\":{\"type\":\"boolean\"},\"FacetEnabled\":{\"type\":\"boolean\"},\"ResultEnabled\":{\"type\":\"boolean\"}}},\"TextOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"ResultEnabled\":{\"type\":\"boolean\"},\"TextProcessor\":{}}},\"SourceAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SourceDataFunction\"],\"members\":{\"SourceDataFunction\":{},\"SourceDataCopy\":{\"type\":\"structure\",\"required\":[\"SourceName\"],\"members\":{\"SourceName\":{},\"DefaultValue\":{}}},\"SourceDataTrimTitle\":{\"type\":\"structure\",\"required\":[\"SourceName\"],\"members\":{\"SourceName\":{},\"DefaultValue\":{},\"Separator\":{},\"Language\":{}}},\"SourceDataMap\":{\"type\":\"structure\",\"required\":[\"SourceName\"],\"members\":{\"SourceName\":{},\"DefaultValue\":{},\"Cases\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}}},\"Sx\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"Sf\"},\"Status\":{\"shape\":\"Sy\"}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"CreationDate\",\"UpdateDate\",\"State\"],\"members\":{\"CreationDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"UpdateVersion\":{\"type\":\"integer\"},\"State\":{},\"PendingDeletion\":{\"type\":\"boolean\"}}},\"S12\":{\"type\":\"structure\",\"required\":[\"RankName\",\"RankExpression\"],\"members\":{\"RankName\":{},\"RankExpression\":{}}},\"S15\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S12\"},\"Status\":{\"shape\":\"Sy\"}}},\"S1e\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"type\":\"boolean\"},\"Status\":{\"shape\":\"Sy\"}}},\"S1i\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"Sy\"}}},\"S1o\":{\"type\":\"list\",\"member\":{}},\"S1w\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"Sy\"}}},\"S20\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"Sy\"}}},\"S24\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"Sy\"}}},\"S28\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"Sy\"}}}}}");

/***/ }),

/***/ 74483:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDomains\":{\"result_key\":\"DomainStatusList\"},\"DescribeIndexFields\":{\"result_key\":\"IndexFields\"},\"DescribeRankExpressions\":{\"result_key\":\"RankExpressions\"}}}");

/***/ }),

/***/ 93200:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-01-01\",\"endpointPrefix\":\"cloudsearch\",\"protocol\":\"query\",\"serviceFullName\":\"Amazon CloudSearch\",\"serviceId\":\"CloudSearch\",\"signatureVersion\":\"v4\",\"uid\":\"cloudsearch-2013-01-01\",\"xmlNamespace\":\"http://cloudsearch.amazonaws.com/doc/2013-01-01/\"},\"operations\":{\"BuildSuggesters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"BuildSuggestersResult\",\"type\":\"structure\",\"members\":{\"FieldNames\":{\"shape\":\"S4\"}}}},\"CreateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"CreateDomainResult\",\"type\":\"structure\",\"members\":{\"DomainStatus\":{\"shape\":\"S8\"}}}},\"DefineAnalysisScheme\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"AnalysisScheme\"],\"members\":{\"DomainName\":{},\"AnalysisScheme\":{\"shape\":\"Sl\"}}},\"output\":{\"resultWrapper\":\"DefineAnalysisSchemeResult\",\"type\":\"structure\",\"required\":[\"AnalysisScheme\"],\"members\":{\"AnalysisScheme\":{\"shape\":\"Ss\"}}}},\"DefineExpression\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Expression\"],\"members\":{\"DomainName\":{},\"Expression\":{\"shape\":\"Sy\"}}},\"output\":{\"resultWrapper\":\"DefineExpressionResult\",\"type\":\"structure\",\"required\":[\"Expression\"],\"members\":{\"Expression\":{\"shape\":\"S11\"}}}},\"DefineIndexField\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"IndexField\"],\"members\":{\"DomainName\":{},\"IndexField\":{\"shape\":\"S13\"}}},\"output\":{\"resultWrapper\":\"DefineIndexFieldResult\",\"type\":\"structure\",\"required\":[\"IndexField\"],\"members\":{\"IndexField\":{\"shape\":\"S1n\"}}}},\"DefineSuggester\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Suggester\"],\"members\":{\"DomainName\":{},\"Suggester\":{\"shape\":\"S1p\"}}},\"output\":{\"resultWrapper\":\"DefineSuggesterResult\",\"type\":\"structure\",\"required\":[\"Suggester\"],\"members\":{\"Suggester\":{\"shape\":\"S1t\"}}}},\"DeleteAnalysisScheme\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"AnalysisSchemeName\"],\"members\":{\"DomainName\":{},\"AnalysisSchemeName\":{}}},\"output\":{\"resultWrapper\":\"DeleteAnalysisSchemeResult\",\"type\":\"structure\",\"required\":[\"AnalysisScheme\"],\"members\":{\"AnalysisScheme\":{\"shape\":\"Ss\"}}}},\"DeleteDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DeleteDomainResult\",\"type\":\"structure\",\"members\":{\"DomainStatus\":{\"shape\":\"S8\"}}}},\"DeleteExpression\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ExpressionName\"],\"members\":{\"DomainName\":{},\"ExpressionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteExpressionResult\",\"type\":\"structure\",\"required\":[\"Expression\"],\"members\":{\"Expression\":{\"shape\":\"S11\"}}}},\"DeleteIndexField\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"IndexFieldName\"],\"members\":{\"DomainName\":{},\"IndexFieldName\":{}}},\"output\":{\"resultWrapper\":\"DeleteIndexFieldResult\",\"type\":\"structure\",\"required\":[\"IndexField\"],\"members\":{\"IndexField\":{\"shape\":\"S1n\"}}}},\"DeleteSuggester\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"SuggesterName\"],\"members\":{\"DomainName\":{},\"SuggesterName\":{}}},\"output\":{\"resultWrapper\":\"DeleteSuggesterResult\",\"type\":\"structure\",\"required\":[\"Suggester\"],\"members\":{\"Suggester\":{\"shape\":\"S1t\"}}}},\"DescribeAnalysisSchemes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"AnalysisSchemeNames\":{\"shape\":\"S25\"},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeAnalysisSchemesResult\",\"type\":\"structure\",\"required\":[\"AnalysisSchemes\"],\"members\":{\"AnalysisSchemes\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}}}}},\"DescribeAvailabilityOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeAvailabilityOptionsResult\",\"type\":\"structure\",\"members\":{\"AvailabilityOptions\":{\"shape\":\"S2a\"}}}},\"DescribeDomainEndpointOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDomainEndpointOptionsResult\",\"type\":\"structure\",\"members\":{\"DomainEndpointOptions\":{\"shape\":\"S2e\"}}}},\"DescribeDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"DomainNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeDomainsResult\",\"type\":\"structure\",\"required\":[\"DomainStatusList\"],\"members\":{\"DomainStatusList\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}}}}},\"DescribeExpressions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"ExpressionNames\":{\"shape\":\"S25\"},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeExpressionsResult\",\"type\":\"structure\",\"required\":[\"Expressions\"],\"members\":{\"Expressions\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\"}}}}},\"DescribeIndexFields\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"FieldNames\":{\"type\":\"list\",\"member\":{}},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeIndexFieldsResult\",\"type\":\"structure\",\"required\":[\"IndexFields\"],\"members\":{\"IndexFields\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\"}}}}},\"DescribeScalingParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DescribeScalingParametersResult\",\"type\":\"structure\",\"required\":[\"ScalingParameters\"],\"members\":{\"ScalingParameters\":{\"shape\":\"S2u\"}}}},\"DescribeServiceAccessPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeServiceAccessPoliciesResult\",\"type\":\"structure\",\"required\":[\"AccessPolicies\"],\"members\":{\"AccessPolicies\":{\"shape\":\"S2z\"}}}},\"DescribeSuggesters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"SuggesterNames\":{\"shape\":\"S25\"},\"Deployed\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeSuggestersResult\",\"type\":\"structure\",\"required\":[\"Suggesters\"],\"members\":{\"Suggesters\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}}}}},\"IndexDocuments\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"IndexDocumentsResult\",\"type\":\"structure\",\"members\":{\"FieldNames\":{\"shape\":\"S4\"}}}},\"ListDomainNames\":{\"output\":{\"resultWrapper\":\"ListDomainNamesResult\",\"type\":\"structure\",\"members\":{\"DomainNames\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"UpdateAvailabilityOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"MultiAZ\"],\"members\":{\"DomainName\":{},\"MultiAZ\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"UpdateAvailabilityOptionsResult\",\"type\":\"structure\",\"members\":{\"AvailabilityOptions\":{\"shape\":\"S2a\"}}}},\"UpdateDomainEndpointOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"DomainEndpointOptions\"],\"members\":{\"DomainName\":{},\"DomainEndpointOptions\":{\"shape\":\"S2f\"}}},\"output\":{\"resultWrapper\":\"UpdateDomainEndpointOptionsResult\",\"type\":\"structure\",\"members\":{\"DomainEndpointOptions\":{\"shape\":\"S2e\"}}}},\"UpdateScalingParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ScalingParameters\"],\"members\":{\"DomainName\":{},\"ScalingParameters\":{\"shape\":\"S2v\"}}},\"output\":{\"resultWrapper\":\"UpdateScalingParametersResult\",\"type\":\"structure\",\"required\":[\"ScalingParameters\"],\"members\":{\"ScalingParameters\":{\"shape\":\"S2u\"}}}},\"UpdateServiceAccessPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"AccessPolicies\"],\"members\":{\"DomainName\":{},\"AccessPolicies\":{}}},\"output\":{\"resultWrapper\":\"UpdateServiceAccessPoliciesResult\",\"type\":\"structure\",\"required\":[\"AccessPolicies\"],\"members\":{\"AccessPolicies\":{\"shape\":\"S2z\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{}},\"S8\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"DomainName\",\"RequiresIndexDocuments\"],\"members\":{\"DomainId\":{},\"DomainName\":{},\"ARN\":{},\"Created\":{\"type\":\"boolean\"},\"Deleted\":{\"type\":\"boolean\"},\"DocService\":{\"shape\":\"Sc\"},\"SearchService\":{\"shape\":\"Sc\"},\"RequiresIndexDocuments\":{\"type\":\"boolean\"},\"Processing\":{\"type\":\"boolean\"},\"SearchInstanceType\":{},\"SearchPartitionCount\":{\"type\":\"integer\"},\"SearchInstanceCount\":{\"type\":\"integer\"},\"Limits\":{\"type\":\"structure\",\"required\":[\"MaximumReplicationCount\",\"MaximumPartitionCount\"],\"members\":{\"MaximumReplicationCount\":{\"type\":\"integer\"},\"MaximumPartitionCount\":{\"type\":\"integer\"}}}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"AnalysisSchemeName\",\"AnalysisSchemeLanguage\"],\"members\":{\"AnalysisSchemeName\":{},\"AnalysisSchemeLanguage\":{},\"AnalysisOptions\":{\"type\":\"structure\",\"members\":{\"Synonyms\":{},\"Stopwords\":{},\"StemmingDictionary\":{},\"JapaneseTokenizationDictionary\":{},\"AlgorithmicStemming\":{}}}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"Sl\"},\"Status\":{\"shape\":\"St\"}}},\"St\":{\"type\":\"structure\",\"required\":[\"CreationDate\",\"UpdateDate\",\"State\"],\"members\":{\"CreationDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"UpdateVersion\":{\"type\":\"integer\"},\"State\":{},\"PendingDeletion\":{\"type\":\"boolean\"}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"ExpressionName\",\"ExpressionValue\"],\"members\":{\"ExpressionName\":{},\"ExpressionValue\":{}}},\"S11\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"Sy\"},\"Status\":{\"shape\":\"St\"}}},\"S13\":{\"type\":\"structure\",\"required\":[\"IndexFieldName\",\"IndexFieldType\"],\"members\":{\"IndexFieldName\":{},\"IndexFieldType\":{},\"IntOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{\"type\":\"long\"},\"SourceField\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"},\"SortEnabled\":{\"type\":\"boolean\"}}},\"DoubleOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{\"type\":\"double\"},\"SourceField\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"},\"SortEnabled\":{\"type\":\"boolean\"}}},\"LiteralOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceField\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"},\"SortEnabled\":{\"type\":\"boolean\"}}},\"TextOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceField\":{},\"ReturnEnabled\":{\"type\":\"boolean\"},\"SortEnabled\":{\"type\":\"boolean\"},\"HighlightEnabled\":{\"type\":\"boolean\"},\"AnalysisScheme\":{}}},\"DateOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceField\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"},\"SortEnabled\":{\"type\":\"boolean\"}}},\"LatLonOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceField\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"},\"SortEnabled\":{\"type\":\"boolean\"}}},\"IntArrayOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{\"type\":\"long\"},\"SourceFields\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"}}},\"DoubleArrayOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{\"type\":\"double\"},\"SourceFields\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"}}},\"LiteralArrayOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceFields\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"}}},\"TextArrayOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceFields\":{},\"ReturnEnabled\":{\"type\":\"boolean\"},\"HighlightEnabled\":{\"type\":\"boolean\"},\"AnalysisScheme\":{}}},\"DateArrayOptions\":{\"type\":\"structure\",\"members\":{\"DefaultValue\":{},\"SourceFields\":{},\"FacetEnabled\":{\"type\":\"boolean\"},\"SearchEnabled\":{\"type\":\"boolean\"},\"ReturnEnabled\":{\"type\":\"boolean\"}}}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S13\"},\"Status\":{\"shape\":\"St\"}}},\"S1p\":{\"type\":\"structure\",\"required\":[\"SuggesterName\",\"DocumentSuggesterOptions\"],\"members\":{\"SuggesterName\":{},\"DocumentSuggesterOptions\":{\"type\":\"structure\",\"required\":[\"SourceField\"],\"members\":{\"SourceField\":{},\"FuzzyMatching\":{},\"SortExpression\":{}}}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1p\"},\"Status\":{\"shape\":\"St\"}}},\"S25\":{\"type\":\"list\",\"member\":{}},\"S2a\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"type\":\"boolean\"},\"Status\":{\"shape\":\"St\"}}},\"S2e\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S2f\"},\"Status\":{\"shape\":\"St\"}}},\"S2f\":{\"type\":\"structure\",\"members\":{\"EnforceHTTPS\":{\"type\":\"boolean\"},\"TLSSecurityPolicy\":{}}},\"S2u\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S2v\"},\"Status\":{\"shape\":\"St\"}}},\"S2v\":{\"type\":\"structure\",\"members\":{\"DesiredInstanceType\":{},\"DesiredReplicationCount\":{\"type\":\"integer\"},\"DesiredPartitionCount\":{\"type\":\"integer\"}}},\"S2z\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"St\"}}}}}");

/***/ }),

/***/ 82352:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAnalysisSchemes\":{\"result_key\":\"AnalysisSchemes\"},\"DescribeDomains\":{\"result_key\":\"DomainStatusList\"},\"DescribeExpressions\":{\"result_key\":\"Expressions\"},\"DescribeIndexFields\":{\"result_key\":\"IndexFields\"},\"DescribeSuggesters\":{\"result_key\":\"Suggesters\"}}}");

/***/ }),

/***/ 56588:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-01-01\",\"endpointPrefix\":\"cloudsearchdomain\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon CloudSearch Domain\",\"serviceId\":\"CloudSearch Domain\",\"signatureVersion\":\"v4\",\"signingName\":\"cloudsearch\",\"uid\":\"cloudsearchdomain-2013-01-01\"},\"operations\":{\"Search\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-01-01/search?format=sdk&pretty=true\"},\"input\":{\"type\":\"structure\",\"required\":[\"query\"],\"members\":{\"cursor\":{\"location\":\"querystring\",\"locationName\":\"cursor\"},\"expr\":{\"location\":\"querystring\",\"locationName\":\"expr\"},\"facet\":{\"location\":\"querystring\",\"locationName\":\"facet\"},\"filterQuery\":{\"location\":\"querystring\",\"locationName\":\"fq\"},\"highlight\":{\"location\":\"querystring\",\"locationName\":\"highlight\"},\"partial\":{\"location\":\"querystring\",\"locationName\":\"partial\",\"type\":\"boolean\"},\"query\":{\"location\":\"querystring\",\"locationName\":\"q\"},\"queryOptions\":{\"location\":\"querystring\",\"locationName\":\"q.options\"},\"queryParser\":{\"location\":\"querystring\",\"locationName\":\"q.parser\"},\"return\":{\"location\":\"querystring\",\"locationName\":\"return\"},\"size\":{\"location\":\"querystring\",\"locationName\":\"size\",\"type\":\"long\"},\"sort\":{\"location\":\"querystring\",\"locationName\":\"sort\"},\"start\":{\"location\":\"querystring\",\"locationName\":\"start\",\"type\":\"long\"},\"stats\":{\"location\":\"querystring\",\"locationName\":\"stats\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{\"type\":\"structure\",\"members\":{\"timems\":{\"type\":\"long\"},\"rid\":{}}},\"hits\":{\"type\":\"structure\",\"members\":{\"found\":{\"type\":\"long\"},\"start\":{\"type\":\"long\"},\"cursor\":{},\"hit\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"fields\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"exprs\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"highlights\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"facets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"buckets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"value\":{},\"count\":{\"type\":\"long\"}}}}}}},\"stats\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"min\":{},\"max\":{},\"count\":{\"type\":\"long\"},\"missing\":{\"type\":\"long\"},\"sum\":{\"type\":\"double\"},\"sumOfSquares\":{\"type\":\"double\"},\"mean\":{},\"stddev\":{\"type\":\"double\"}}}}}}},\"Suggest\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-01-01/suggest?format=sdk&pretty=true\"},\"input\":{\"type\":\"structure\",\"required\":[\"query\",\"suggester\"],\"members\":{\"query\":{\"location\":\"querystring\",\"locationName\":\"q\"},\"suggester\":{\"location\":\"querystring\",\"locationName\":\"suggester\"},\"size\":{\"location\":\"querystring\",\"locationName\":\"size\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{\"type\":\"structure\",\"members\":{\"timems\":{\"type\":\"long\"},\"rid\":{}}},\"suggest\":{\"type\":\"structure\",\"members\":{\"query\":{},\"found\":{\"type\":\"long\"},\"suggestions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"suggestion\":{},\"score\":{\"type\":\"long\"},\"id\":{}}}}}}}}},\"UploadDocuments\":{\"http\":{\"requestUri\":\"/2013-01-01/documents/batch?format=sdk\"},\"input\":{\"type\":\"structure\",\"required\":[\"documents\",\"contentType\"],\"members\":{\"documents\":{\"type\":\"blob\",\"streaming\":true},\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"documents\"},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"adds\":{\"type\":\"long\"},\"deletes\":{\"type\":\"long\"},\"warnings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"message\":{}}}}}}}},\"shapes\":{}}");

/***/ }),

/***/ 90967:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-11-01\",\"endpointPrefix\":\"cloudtrail\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CloudTrail\",\"serviceFullName\":\"AWS CloudTrail\",\"serviceId\":\"CloudTrail\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"com.amazonaws.cloudtrail.v20131101.CloudTrail_20131101\",\"uid\":\"cloudtrail-2013-11-01\"},\"operations\":{\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{},\"TagsList\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"CreateTrail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"S3BucketName\"],\"members\":{\"Name\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"SnsTopicName\":{},\"IncludeGlobalServiceEvents\":{\"type\":\"boolean\"},\"IsMultiRegionTrail\":{\"type\":\"boolean\"},\"EnableLogFileValidation\":{\"type\":\"boolean\"},\"CloudWatchLogsLogGroupArn\":{},\"CloudWatchLogsRoleArn\":{},\"KmsKeyId\":{},\"IsOrganizationTrail\":{\"type\":\"boolean\"},\"TagsList\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"SnsTopicName\":{\"deprecated\":true},\"SnsTopicARN\":{},\"IncludeGlobalServiceEvents\":{\"type\":\"boolean\"},\"IsMultiRegionTrail\":{\"type\":\"boolean\"},\"TrailARN\":{},\"LogFileValidationEnabled\":{\"type\":\"boolean\"},\"CloudWatchLogsLogGroupArn\":{},\"CloudWatchLogsRoleArn\":{},\"KmsKeyId\":{},\"IsOrganizationTrail\":{\"type\":\"boolean\"}}},\"idempotent\":true},\"DeleteTrail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DescribeTrails\":{\"input\":{\"type\":\"structure\",\"members\":{\"trailNameList\":{\"type\":\"list\",\"member\":{}},\"includeShadowTrails\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"trailList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sf\"}}}},\"idempotent\":true},\"GetEventSelectors\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrailName\"],\"members\":{\"TrailName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrailARN\":{},\"EventSelectors\":{\"shape\":\"Si\"},\"AdvancedEventSelectors\":{\"shape\":\"Sp\"}}},\"idempotent\":true},\"GetInsightSelectors\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrailName\"],\"members\":{\"TrailName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrailARN\":{},\"InsightSelectors\":{\"shape\":\"Sz\"}}},\"idempotent\":true},\"GetTrail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Trail\":{\"shape\":\"Sf\"}}},\"idempotent\":true},\"GetTrailStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsLogging\":{\"type\":\"boolean\"},\"LatestDeliveryError\":{},\"LatestNotificationError\":{},\"LatestDeliveryTime\":{\"type\":\"timestamp\"},\"LatestNotificationTime\":{\"type\":\"timestamp\"},\"StartLoggingTime\":{\"type\":\"timestamp\"},\"StopLoggingTime\":{\"type\":\"timestamp\"},\"LatestCloudWatchLogsDeliveryError\":{},\"LatestCloudWatchLogsDeliveryTime\":{\"type\":\"timestamp\"},\"LatestDigestDeliveryTime\":{\"type\":\"timestamp\"},\"LatestDigestDeliveryError\":{},\"LatestDeliveryAttemptTime\":{},\"LatestNotificationAttemptTime\":{},\"LatestNotificationAttemptSucceeded\":{},\"LatestDeliveryAttemptSucceeded\":{},\"TimeLoggingStarted\":{},\"TimeLoggingStopped\":{}}},\"idempotent\":true},\"ListPublicKeys\":{\"input\":{\"type\":\"structure\",\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"blob\"},\"ValidityStartTime\":{\"type\":\"timestamp\"},\"ValidityEndTime\":{\"type\":\"timestamp\"},\"Fingerprint\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceIdList\"],\"members\":{\"ResourceIdList\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceTagList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"TagsList\":{\"shape\":\"S3\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListTrails\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Trails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TrailARN\":{},\"Name\":{},\"HomeRegion\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"LookupEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"LookupAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeKey\",\"AttributeValue\"],\"members\":{\"AttributeKey\":{},\"AttributeValue\":{}}}},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"EventCategory\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"EventName\":{},\"ReadOnly\":{},\"AccessKeyId\":{},\"EventTime\":{\"type\":\"timestamp\"},\"EventSource\":{},\"Username\":{},\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ResourceName\":{}}}},\"CloudTrailEvent\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"PutEventSelectors\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrailName\"],\"members\":{\"TrailName\":{},\"EventSelectors\":{\"shape\":\"Si\"},\"AdvancedEventSelectors\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrailARN\":{},\"EventSelectors\":{\"shape\":\"Si\"},\"AdvancedEventSelectors\":{\"shape\":\"Sp\"}}},\"idempotent\":true},\"PutInsightSelectors\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrailName\",\"InsightSelectors\"],\"members\":{\"TrailName\":{},\"InsightSelectors\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrailARN\":{},\"InsightSelectors\":{\"shape\":\"Sz\"}}},\"idempotent\":true},\"RemoveTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{},\"TagsList\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"StartLogging\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"StopLogging\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateTrail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"SnsTopicName\":{},\"IncludeGlobalServiceEvents\":{\"type\":\"boolean\"},\"IsMultiRegionTrail\":{\"type\":\"boolean\"},\"EnableLogFileValidation\":{\"type\":\"boolean\"},\"CloudWatchLogsLogGroupArn\":{},\"CloudWatchLogsRoleArn\":{},\"KmsKeyId\":{},\"IsOrganizationTrail\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"SnsTopicName\":{\"deprecated\":true},\"SnsTopicARN\":{},\"IncludeGlobalServiceEvents\":{\"type\":\"boolean\"},\"IsMultiRegionTrail\":{\"type\":\"boolean\"},\"TrailARN\":{},\"LogFileValidationEnabled\":{\"type\":\"boolean\"},\"CloudWatchLogsLogGroupArn\":{},\"CloudWatchLogsRoleArn\":{},\"KmsKeyId\":{},\"IsOrganizationTrail\":{\"type\":\"boolean\"}}},\"idempotent\":true}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"SnsTopicName\":{\"deprecated\":true},\"SnsTopicARN\":{},\"IncludeGlobalServiceEvents\":{\"type\":\"boolean\"},\"IsMultiRegionTrail\":{\"type\":\"boolean\"},\"HomeRegion\":{},\"TrailARN\":{},\"LogFileValidationEnabled\":{\"type\":\"boolean\"},\"CloudWatchLogsLogGroupArn\":{},\"CloudWatchLogsRoleArn\":{},\"KmsKeyId\":{},\"HasCustomEventSelectors\":{\"type\":\"boolean\"},\"HasInsightSelectors\":{\"type\":\"boolean\"},\"IsOrganizationTrail\":{\"type\":\"boolean\"}}},\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReadWriteType\":{},\"IncludeManagementEvents\":{\"type\":\"boolean\"},\"DataResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"ExcludeManagementEventSources\":{\"type\":\"list\",\"member\":{}}}}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FieldSelectors\"],\"members\":{\"Name\":{},\"FieldSelectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Field\"],\"members\":{\"Field\":{},\"Equals\":{\"shape\":\"Sv\"},\"StartsWith\":{\"shape\":\"Sv\"},\"EndsWith\":{\"shape\":\"Sv\"},\"NotEquals\":{\"shape\":\"Sv\"},\"NotStartsWith\":{\"shape\":\"Sv\"},\"NotEndsWith\":{\"shape\":\"Sv\"}}}}}}},\"Sv\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InsightType\":{}}}}}}");

/***/ }),

/***/ 78414:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeTrails\":{\"result_key\":\"trailList\"},\"ListPublicKeys\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"PublicKeyList\"},\"ListTags\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"ResourceTagList\"},\"ListTrails\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Trails\"},\"LookupEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Events\"}}}");

/***/ }),

/***/ 26175:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-09-22\",\"endpointPrefix\":\"codeartifact\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"CodeArtifact\",\"serviceId\":\"codeartifact\",\"signatureVersion\":\"v4\",\"signingName\":\"codeartifact\",\"uid\":\"codeartifact-2018-09-22\"},\"operations\":{\"AssociateExternalConnection\":{\"http\":{\"requestUri\":\"/v1/repository/external-connection\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"externalConnection\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"externalConnection\":{\"location\":\"querystring\",\"locationName\":\"external-connection\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S7\"}}}},\"CopyPackageVersions\":{\"http\":{\"requestUri\":\"/v1/package/versions/copy\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"sourceRepository\",\"destinationRepository\",\"format\",\"package\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"sourceRepository\":{\"location\":\"querystring\",\"locationName\":\"source-repository\"},\"destinationRepository\":{\"location\":\"querystring\",\"locationName\":\"destination-repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"versions\":{\"shape\":\"Sj\"},\"versionRevisions\":{\"shape\":\"Sl\"},\"allowOverwrite\":{\"type\":\"boolean\"},\"includeFromUpstream\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulVersions\":{\"shape\":\"Sp\"},\"failedVersions\":{\"shape\":\"St\"}}}},\"CreateDomain\":{\"http\":{\"requestUri\":\"/v1/domain\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"encryptionKey\":{},\"tags\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domain\":{\"shape\":\"S13\"}}}},\"CreateRepository\":{\"http\":{\"requestUri\":\"/v1/repository\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"description\":{},\"upstreams\":{\"shape\":\"S19\"},\"tags\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S7\"}}}},\"DeleteDomain\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/domain\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domain\":{\"shape\":\"S13\"}}}},\"DeleteDomainPermissionsPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/domain/permissions/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"policyRevision\":{\"location\":\"querystring\",\"locationName\":\"policy-revision\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1h\"}}}},\"DeletePackageVersions\":{\"http\":{\"requestUri\":\"/v1/package/versions/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"versions\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"versions\":{\"shape\":\"Sj\"},\"expectedStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulVersions\":{\"shape\":\"Sp\"},\"failedVersions\":{\"shape\":\"St\"}}}},\"DeleteRepository\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/repository\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S7\"}}}},\"DeleteRepositoryPermissionsPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/repository/permissions/policies\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"policyRevision\":{\"location\":\"querystring\",\"locationName\":\"policy-revision\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1h\"}}}},\"DescribeDomain\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/domain\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domain\":{\"shape\":\"S13\"}}}},\"DescribePackageVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/package/version\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"packageVersion\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"packageVersion\":{\"location\":\"querystring\",\"locationName\":\"version\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"packageVersion\"],\"members\":{\"packageVersion\":{\"type\":\"structure\",\"members\":{\"format\":{},\"namespace\":{},\"packageName\":{},\"displayName\":{},\"version\":{},\"summary\":{},\"homePage\":{},\"sourceCodeRepository\":{},\"publishedTime\":{\"type\":\"timestamp\"},\"licenses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"url\":{}}}},\"revision\":{},\"status\":{}}}}}},\"DescribeRepository\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/repository\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S7\"}}}},\"DisassociateExternalConnection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/repository/external-connection\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"externalConnection\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"externalConnection\":{\"location\":\"querystring\",\"locationName\":\"external-connection\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S7\"}}}},\"DisposePackageVersions\":{\"http\":{\"requestUri\":\"/v1/package/versions/dispose\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"versions\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"versions\":{\"shape\":\"Sj\"},\"versionRevisions\":{\"shape\":\"Sl\"},\"expectedStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulVersions\":{\"shape\":\"Sp\"},\"failedVersions\":{\"shape\":\"St\"}}}},\"GetAuthorizationToken\":{\"http\":{\"requestUri\":\"/v1/authorization-token\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"durationSeconds\":{\"location\":\"querystring\",\"locationName\":\"duration\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizationToken\":{},\"expiration\":{\"type\":\"timestamp\"}}}},\"GetDomainPermissionsPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/domain/permissions/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1h\"}}}},\"GetPackageVersionAsset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/package/version/asset\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"packageVersion\",\"asset\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"packageVersion\":{\"location\":\"querystring\",\"locationName\":\"version\"},\"asset\":{\"location\":\"querystring\",\"locationName\":\"asset\"},\"packageVersionRevision\":{\"location\":\"querystring\",\"locationName\":\"revision\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"asset\":{\"type\":\"blob\",\"streaming\":true},\"assetName\":{\"location\":\"header\",\"locationName\":\"X-AssetName\"},\"packageVersion\":{\"location\":\"header\",\"locationName\":\"X-PackageVersion\"},\"packageVersionRevision\":{\"location\":\"header\",\"locationName\":\"X-PackageVersionRevision\"}},\"payload\":\"asset\"}},\"GetPackageVersionReadme\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/package/version/readme\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"packageVersion\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"packageVersion\":{\"location\":\"querystring\",\"locationName\":\"version\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"format\":{},\"namespace\":{},\"package\":{},\"version\":{},\"versionRevision\":{},\"readme\":{}}}},\"GetRepositoryEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/repository/endpoint\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryEndpoint\":{}}}},\"GetRepositoryPermissionsPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/repository/permissions/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1h\"}}}},\"ListDomains\":{\"http\":{\"requestUri\":\"/v1/domains\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"domains\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"owner\":{},\"arn\":{},\"status\":{},\"createdTime\":{\"type\":\"timestamp\"},\"encryptionKey\":{}}}},\"nextToken\":{}}}},\"ListPackageVersionAssets\":{\"http\":{\"requestUri\":\"/v1/package/version/assets\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"packageVersion\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"packageVersion\":{\"location\":\"querystring\",\"locationName\":\"version\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"format\":{},\"namespace\":{},\"package\":{},\"version\":{},\"versionRevision\":{},\"nextToken\":{},\"assets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"size\":{\"type\":\"long\"},\"hashes\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}},\"ListPackageVersionDependencies\":{\"http\":{\"requestUri\":\"/v1/package/version/dependencies\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"packageVersion\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"packageVersion\":{\"location\":\"querystring\",\"locationName\":\"version\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"format\":{},\"namespace\":{},\"package\":{},\"version\":{},\"versionRevision\":{},\"nextToken\":{},\"dependencies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"namespace\":{},\"package\":{},\"dependencyType\":{},\"versionRequirement\":{}}}}}}},\"ListPackageVersions\":{\"http\":{\"requestUri\":\"/v1/package/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"sortBy\":{\"location\":\"querystring\",\"locationName\":\"sortBy\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"defaultDisplayVersion\":{},\"format\":{},\"namespace\":{},\"package\":{},\"versions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"version\",\"status\"],\"members\":{\"version\":{},\"revision\":{},\"status\":{}}}},\"nextToken\":{}}}},\"ListPackages\":{\"http\":{\"requestUri\":\"/v1/packages\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"packagePrefix\":{\"location\":\"querystring\",\"locationName\":\"package-prefix\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"packages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"format\":{},\"namespace\":{},\"package\":{}}}},\"nextToken\":{}}}},\"ListRepositories\":{\"http\":{\"requestUri\":\"/v1/repositories\"},\"input\":{\"type\":\"structure\",\"members\":{\"repositoryPrefix\":{\"location\":\"querystring\",\"locationName\":\"repository-prefix\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositories\":{\"shape\":\"S3f\"},\"nextToken\":{}}}},\"ListRepositoriesInDomain\":{\"http\":{\"requestUri\":\"/v1/domain/repositories\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"administratorAccount\":{\"location\":\"querystring\",\"locationName\":\"administrator-account\"},\"repositoryPrefix\":{\"location\":\"querystring\",\"locationName\":\"repository-prefix\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositories\":{\"shape\":\"S3f\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/v1/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sy\"}}}},\"PutDomainPermissionsPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/domain/permissions/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"policyDocument\"],\"members\":{\"domain\":{},\"domainOwner\":{},\"policyRevision\":{},\"policyDocument\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1h\"}}}},\"PutRepositoryPermissionsPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/repository/permissions/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"policyDocument\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"policyRevision\":{},\"policyDocument\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1h\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v1/tag\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/v1/untag\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePackageVersionsStatus\":{\"http\":{\"requestUri\":\"/v1/package/versions/update_status\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\",\"format\",\"package\",\"versions\",\"targetStatus\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"format\":{\"location\":\"querystring\",\"locationName\":\"format\"},\"namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"package\":{\"location\":\"querystring\",\"locationName\":\"package\"},\"versions\":{\"shape\":\"Sj\"},\"versionRevisions\":{\"shape\":\"Sl\"},\"expectedStatus\":{},\"targetStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulVersions\":{\"shape\":\"Sp\"},\"failedVersions\":{\"shape\":\"St\"}}}},\"UpdateRepository\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/repository\"},\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"repository\"],\"members\":{\"domain\":{\"location\":\"querystring\",\"locationName\":\"domain\"},\"domainOwner\":{\"location\":\"querystring\",\"locationName\":\"domain-owner\"},\"repository\":{\"location\":\"querystring\",\"locationName\":\"repository\"},\"description\":{},\"upstreams\":{\"shape\":\"S19\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S7\"}}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"members\":{\"name\":{},\"administratorAccount\":{},\"domainName\":{},\"domainOwner\":{},\"arn\":{},\"description\":{},\"upstreams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{}}}},\"externalConnections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"externalConnectionName\":{},\"packageFormat\":{},\"status\":{}}}}}},\"Sj\":{\"type\":\"list\",\"member\":{}},\"Sl\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sp\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"revision\":{},\"status\":{}}}},\"St\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"errorCode\":{},\"errorMessage\":{}}}},\"Sy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"S13\":{\"type\":\"structure\",\"members\":{\"name\":{},\"owner\":{},\"arn\":{},\"status\":{},\"createdTime\":{\"type\":\"timestamp\"},\"encryptionKey\":{},\"repositoryCount\":{\"type\":\"integer\"},\"assetSizeBytes\":{\"type\":\"long\"},\"s3BucketArn\":{}}},\"S19\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{}}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{},\"revision\":{},\"document\":{}}},\"S3f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"administratorAccount\":{},\"domainName\":{},\"domainOwner\":{},\"arn\":{},\"description\":{}}}}}}");

/***/ }),

/***/ 21307:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDomains\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"domains\"},\"ListPackageVersionAssets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assets\"},\"ListPackageVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"versions\"},\"ListPackages\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"packages\"},\"ListRepositories\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"repositories\"},\"ListRepositoriesInDomain\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"repositories\"}}}");

/***/ }),

/***/ 32310:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-10-06\",\"endpointPrefix\":\"codebuild\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS CodeBuild\",\"serviceId\":\"CodeBuild\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CodeBuild_20161006\",\"uid\":\"codebuild-2016-10-06\"},\"operations\":{\"BatchDeleteBuilds\":{\"input\":{\"type\":\"structure\",\"required\":[\"ids\"],\"members\":{\"ids\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"buildsDeleted\":{\"shape\":\"S2\"},\"buildsNotDeleted\":{\"shape\":\"S5\"}}}},\"BatchGetBuildBatches\":{\"input\":{\"type\":\"structure\",\"required\":[\"ids\"],\"members\":{\"ids\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"buildBatches\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"buildBatchesNotFound\":{\"shape\":\"S9\"}}}},\"BatchGetBuilds\":{\"input\":{\"type\":\"structure\",\"required\":[\"ids\"],\"members\":{\"ids\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"builds\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"buildsNotFound\":{\"shape\":\"S2\"}}}},\"BatchGetProjects\":{\"input\":{\"type\":\"structure\",\"required\":[\"names\"],\"members\":{\"names\":{\"shape\":\"S2d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"projects\":{\"type\":\"list\",\"member\":{\"shape\":\"S2g\"}},\"projectsNotFound\":{\"shape\":\"S2d\"}}}},\"BatchGetReportGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"reportGroupArns\"],\"members\":{\"reportGroupArns\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"reportGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S33\"}},\"reportGroupsNotFound\":{\"shape\":\"S30\"}}}},\"BatchGetReports\":{\"input\":{\"type\":\"structure\",\"required\":[\"reportArns\"],\"members\":{\"reportArns\":{\"shape\":\"S3c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"reports\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"type\":{},\"name\":{},\"reportGroupArn\":{},\"executionId\":{},\"status\":{},\"created\":{\"type\":\"timestamp\"},\"expired\":{\"type\":\"timestamp\"},\"exportConfig\":{\"shape\":\"S36\"},\"truncated\":{\"type\":\"boolean\"},\"testSummary\":{\"type\":\"structure\",\"required\":[\"total\",\"statusCounts\",\"durationInNanoSeconds\"],\"members\":{\"total\":{\"type\":\"integer\"},\"statusCounts\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"durationInNanoSeconds\":{\"type\":\"long\"}}},\"codeCoverageSummary\":{\"type\":\"structure\",\"members\":{\"lineCoveragePercentage\":{\"type\":\"double\"},\"linesCovered\":{\"type\":\"integer\"},\"linesMissed\":{\"type\":\"integer\"},\"branchCoveragePercentage\":{\"type\":\"double\"},\"branchesCovered\":{\"type\":\"integer\"},\"branchesMissed\":{\"type\":\"integer\"}}}}}},\"reportsNotFound\":{\"shape\":\"S3c\"}}}},\"CreateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"source\",\"artifacts\",\"environment\",\"serviceRole\"],\"members\":{\"name\":{},\"description\":{},\"source\":{\"shape\":\"Sl\"},\"secondarySources\":{\"shape\":\"St\"},\"sourceVersion\":{},\"secondarySourceVersions\":{\"shape\":\"Su\"},\"artifacts\":{\"shape\":\"S2j\"},\"secondaryArtifacts\":{\"shape\":\"S2m\"},\"cache\":{\"shape\":\"Sz\"},\"environment\":{\"shape\":\"S13\"},\"serviceRole\":{},\"timeoutInMinutes\":{\"type\":\"integer\"},\"queuedTimeoutInMinutes\":{\"type\":\"integer\"},\"encryptionKey\":{},\"tags\":{\"shape\":\"S2o\"},\"vpcConfig\":{\"shape\":\"S1i\"},\"badgeEnabled\":{\"type\":\"boolean\"},\"logsConfig\":{\"shape\":\"S1c\"},\"fileSystemLocations\":{\"shape\":\"S1l\"},\"buildBatchConfig\":{\"shape\":\"S1o\"},\"concurrentBuildLimit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"project\":{\"shape\":\"S2g\"}}}},\"CreateReportGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"type\",\"exportConfig\"],\"members\":{\"name\":{},\"type\":{},\"exportConfig\":{\"shape\":\"S36\"},\"tags\":{\"shape\":\"S2o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"reportGroup\":{\"shape\":\"S33\"}}}},\"CreateWebhook\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{},\"branchFilter\":{},\"filterGroups\":{\"shape\":\"S2t\"},\"buildType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"webhook\":{\"shape\":\"S2s\"}}}},\"DeleteBuildBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"statusCode\":{},\"buildsDeleted\":{\"shape\":\"S2\"},\"buildsNotDeleted\":{\"shape\":\"S5\"}}}},\"DeleteProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteReportGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"deleteReports\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSourceCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{}}}},\"DeleteWebhook\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeCodeCoverages\":{\"input\":{\"type\":\"structure\",\"required\":[\"reportArn\"],\"members\":{\"reportArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"sortOrder\":{},\"sortBy\":{},\"minLineCoveragePercentage\":{\"type\":\"double\"},\"maxLineCoveragePercentage\":{\"type\":\"double\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"codeCoverages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"reportARN\":{},\"filePath\":{},\"lineCoveragePercentage\":{\"type\":\"double\"},\"linesCovered\":{\"type\":\"integer\"},\"linesMissed\":{\"type\":\"integer\"},\"branchCoveragePercentage\":{\"type\":\"double\"},\"branchesCovered\":{\"type\":\"integer\"},\"branchesMissed\":{\"type\":\"integer\"},\"expired\":{\"type\":\"timestamp\"}}}}}}},\"DescribeTestCases\":{\"input\":{\"type\":\"structure\",\"required\":[\"reportArn\"],\"members\":{\"reportArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filter\":{\"type\":\"structure\",\"members\":{\"status\":{},\"keyword\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"testCases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"reportArn\":{},\"testRawDataPath\":{},\"prefix\":{},\"name\":{},\"status\":{},\"durationInNanoSeconds\":{\"type\":\"long\"},\"message\":{},\"expired\":{\"type\":\"timestamp\"}}}}}}},\"GetReportGroupTrend\":{\"input\":{\"type\":\"structure\",\"required\":[\"reportGroupArn\",\"trendField\"],\"members\":{\"reportGroupArn\":{},\"numOfReports\":{\"type\":\"integer\"},\"trendField\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"stats\":{\"type\":\"structure\",\"members\":{\"average\":{},\"max\":{},\"min\":{}}},\"rawData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"reportArn\":{},\"data\":{}}}}}}},\"GetResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{}}}},\"ImportSourceCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"token\",\"serverType\",\"authType\"],\"members\":{\"username\":{},\"token\":{\"type\":\"string\",\"sensitive\":true},\"serverType\":{},\"authType\":{},\"shouldOverwrite\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{}}}},\"InvalidateProjectCache\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListBuildBatches\":{\"input\":{\"type\":\"structure\",\"members\":{\"filter\":{\"shape\":\"S4y\"},\"maxResults\":{\"type\":\"integer\"},\"sortOrder\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S9\"},\"nextToken\":{}}}},\"ListBuildBatchesForProject\":{\"input\":{\"type\":\"structure\",\"members\":{\"projectName\":{},\"filter\":{\"shape\":\"S4y\"},\"maxResults\":{\"type\":\"integer\"},\"sortOrder\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S9\"},\"nextToken\":{}}}},\"ListBuilds\":{\"input\":{\"type\":\"structure\",\"members\":{\"sortOrder\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S2\"},\"nextToken\":{}}}},\"ListBuildsForProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{},\"sortOrder\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S2\"},\"nextToken\":{}}}},\"ListCuratedEnvironmentImages\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"platforms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"platform\":{},\"languages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"language\":{},\"images\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"versions\":{\"type\":\"list\",\"member\":{}}}}}}}}}}}}}},\"ListProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"sortBy\":{},\"sortOrder\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"projects\":{\"shape\":\"S2d\"}}}},\"ListReportGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"sortOrder\":{},\"sortBy\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"reportGroups\":{\"shape\":\"S30\"}}}},\"ListReports\":{\"input\":{\"type\":\"structure\",\"members\":{\"sortOrder\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filter\":{\"shape\":\"S5o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"reports\":{\"shape\":\"S3c\"}}}},\"ListReportsForReportGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"reportGroupArn\"],\"members\":{\"reportGroupArn\":{},\"nextToken\":{},\"sortOrder\":{},\"maxResults\":{\"type\":\"integer\"},\"filter\":{\"shape\":\"S5o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"reports\":{\"shape\":\"S3c\"}}}},\"ListSharedProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"sortBy\":{},\"sortOrder\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"projects\":{\"type\":\"list\",\"member\":{}}}}},\"ListSharedReportGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"sortOrder\":{},\"sortBy\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"reportGroups\":{\"shape\":\"S30\"}}}},\"ListSourceCredentials\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"sourceCredentialsInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"serverType\":{},\"authType\":{}}}}}}},\"PutResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"policy\",\"resourceArn\"],\"members\":{\"policy\":{},\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{}}}},\"RetryBuild\":{\"input\":{\"type\":\"structure\",\"members\":{\"id\":{},\"idempotencyToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"build\":{\"shape\":\"S22\"}}}},\"RetryBuildBatch\":{\"input\":{\"type\":\"structure\",\"members\":{\"id\":{},\"idempotencyToken\":{},\"retryType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"buildBatch\":{\"shape\":\"Sc\"}}}},\"StartBuild\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{},\"secondarySourcesOverride\":{\"shape\":\"St\"},\"secondarySourcesVersionOverride\":{\"shape\":\"Su\"},\"sourceVersion\":{},\"artifactsOverride\":{\"shape\":\"S2j\"},\"secondaryArtifactsOverride\":{\"shape\":\"S2m\"},\"environmentVariablesOverride\":{\"shape\":\"S16\"},\"sourceTypeOverride\":{},\"sourceLocationOverride\":{},\"sourceAuthOverride\":{\"shape\":\"Sq\"},\"gitCloneDepthOverride\":{\"type\":\"integer\"},\"gitSubmodulesConfigOverride\":{\"shape\":\"So\"},\"buildspecOverride\":{},\"insecureSslOverride\":{\"type\":\"boolean\"},\"reportBuildStatusOverride\":{\"type\":\"boolean\"},\"buildStatusConfigOverride\":{\"shape\":\"Ss\"},\"environmentTypeOverride\":{},\"imageOverride\":{},\"computeTypeOverride\":{},\"certificateOverride\":{},\"cacheOverride\":{\"shape\":\"Sz\"},\"serviceRoleOverride\":{},\"privilegedModeOverride\":{\"type\":\"boolean\"},\"timeoutInMinutesOverride\":{\"type\":\"integer\"},\"queuedTimeoutInMinutesOverride\":{\"type\":\"integer\"},\"encryptionKeyOverride\":{},\"idempotencyToken\":{},\"logsConfigOverride\":{\"shape\":\"S1c\"},\"registryCredentialOverride\":{\"shape\":\"S19\"},\"imagePullCredentialsTypeOverride\":{},\"debugSessionEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"build\":{\"shape\":\"S22\"}}}},\"StartBuildBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{},\"secondarySourcesOverride\":{\"shape\":\"St\"},\"secondarySourcesVersionOverride\":{\"shape\":\"Su\"},\"sourceVersion\":{},\"artifactsOverride\":{\"shape\":\"S2j\"},\"secondaryArtifactsOverride\":{\"shape\":\"S2m\"},\"environmentVariablesOverride\":{\"shape\":\"S16\"},\"sourceTypeOverride\":{},\"sourceLocationOverride\":{},\"sourceAuthOverride\":{\"shape\":\"Sq\"},\"gitCloneDepthOverride\":{\"type\":\"integer\"},\"gitSubmodulesConfigOverride\":{\"shape\":\"So\"},\"buildspecOverride\":{},\"insecureSslOverride\":{\"type\":\"boolean\"},\"reportBuildBatchStatusOverride\":{\"type\":\"boolean\"},\"environmentTypeOverride\":{},\"imageOverride\":{},\"computeTypeOverride\":{},\"certificateOverride\":{},\"cacheOverride\":{\"shape\":\"Sz\"},\"serviceRoleOverride\":{},\"privilegedModeOverride\":{\"type\":\"boolean\"},\"buildTimeoutInMinutesOverride\":{\"type\":\"integer\"},\"queuedTimeoutInMinutesOverride\":{\"type\":\"integer\"},\"encryptionKeyOverride\":{},\"idempotencyToken\":{},\"logsConfigOverride\":{\"shape\":\"S1c\"},\"registryCredentialOverride\":{\"shape\":\"S19\"},\"imagePullCredentialsTypeOverride\":{},\"buildBatchConfigOverride\":{\"shape\":\"S1o\"},\"debugSessionEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"buildBatch\":{\"shape\":\"Sc\"}}}},\"StopBuild\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"build\":{\"shape\":\"S22\"}}}},\"StopBuildBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"buildBatch\":{\"shape\":\"Sc\"}}}},\"UpdateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"source\":{\"shape\":\"Sl\"},\"secondarySources\":{\"shape\":\"St\"},\"sourceVersion\":{},\"secondarySourceVersions\":{\"shape\":\"Su\"},\"artifacts\":{\"shape\":\"S2j\"},\"secondaryArtifacts\":{\"shape\":\"S2m\"},\"cache\":{\"shape\":\"Sz\"},\"environment\":{\"shape\":\"S13\"},\"serviceRole\":{},\"timeoutInMinutes\":{\"type\":\"integer\"},\"queuedTimeoutInMinutes\":{\"type\":\"integer\"},\"encryptionKey\":{},\"tags\":{\"shape\":\"S2o\"},\"vpcConfig\":{\"shape\":\"S1i\"},\"badgeEnabled\":{\"type\":\"boolean\"},\"logsConfig\":{\"shape\":\"S1c\"},\"fileSystemLocations\":{\"shape\":\"S1l\"},\"buildBatchConfig\":{\"shape\":\"S1o\"},\"concurrentBuildLimit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"project\":{\"shape\":\"S2g\"}}}},\"UpdateReportGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"exportConfig\":{\"shape\":\"S36\"},\"tags\":{\"shape\":\"S2o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"reportGroup\":{\"shape\":\"S33\"}}}},\"UpdateWebhook\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{},\"branchFilter\":{},\"rotateSecret\":{\"type\":\"boolean\"},\"filterGroups\":{\"shape\":\"S2t\"},\"buildType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"webhook\":{\"shape\":\"S2s\"}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"statusCode\":{}}}},\"S9\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"currentPhase\":{},\"buildBatchStatus\":{},\"sourceVersion\":{},\"resolvedSourceVersion\":{},\"projectName\":{},\"phases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"phaseType\":{},\"phaseStatus\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"durationInSeconds\":{\"type\":\"long\"},\"contexts\":{\"shape\":\"Sj\"}}}},\"source\":{\"shape\":\"Sl\"},\"secondarySources\":{\"shape\":\"St\"},\"secondarySourceVersions\":{\"shape\":\"Su\"},\"artifacts\":{\"shape\":\"Sw\"},\"secondaryArtifacts\":{\"shape\":\"Sy\"},\"cache\":{\"shape\":\"Sz\"},\"environment\":{\"shape\":\"S13\"},\"serviceRole\":{},\"logConfig\":{\"shape\":\"S1c\"},\"buildTimeoutInMinutes\":{\"type\":\"integer\"},\"queuedTimeoutInMinutes\":{\"type\":\"integer\"},\"complete\":{\"type\":\"boolean\"},\"initiator\":{},\"vpcConfig\":{\"shape\":\"S1i\"},\"encryptionKey\":{},\"buildBatchNumber\":{\"type\":\"long\"},\"fileSystemLocations\":{\"shape\":\"S1l\"},\"buildBatchConfig\":{\"shape\":\"S1o\"},\"buildGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"identifier\":{},\"dependsOn\":{\"type\":\"list\",\"member\":{}},\"ignoreFailure\":{\"type\":\"boolean\"},\"currentBuildSummary\":{\"shape\":\"S1u\"},\"priorBuildSummaryList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1u\"}}}}},\"debugSessionEnabled\":{\"type\":\"boolean\"}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"statusCode\":{},\"message\":{}}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"location\":{},\"gitCloneDepth\":{\"type\":\"integer\"},\"gitSubmodulesConfig\":{\"shape\":\"So\"},\"buildspec\":{},\"auth\":{\"shape\":\"Sq\"},\"reportBuildStatus\":{\"type\":\"boolean\"},\"buildStatusConfig\":{\"shape\":\"Ss\"},\"insecureSsl\":{\"type\":\"boolean\"},\"sourceIdentifier\":{}}},\"So\":{\"type\":\"structure\",\"required\":[\"fetchSubmodules\"],\"members\":{\"fetchSubmodules\":{\"type\":\"boolean\"}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"resource\":{}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"context\":{},\"targetUrl\":{}}},\"St\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\"}},\"Su\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"sourceIdentifier\",\"sourceVersion\"],\"members\":{\"sourceIdentifier\":{},\"sourceVersion\":{}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"location\":{},\"sha256sum\":{},\"md5sum\":{},\"overrideArtifactName\":{\"type\":\"boolean\"},\"encryptionDisabled\":{\"type\":\"boolean\"},\"artifactIdentifier\":{},\"bucketOwnerAccess\":{}}},\"Sy\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}},\"Sz\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"location\":{},\"modes\":{\"type\":\"list\",\"member\":{}}}},\"S13\":{\"type\":\"structure\",\"required\":[\"type\",\"image\",\"computeType\"],\"members\":{\"type\":{},\"image\":{},\"computeType\":{},\"environmentVariables\":{\"shape\":\"S16\"},\"privilegedMode\":{\"type\":\"boolean\"},\"certificate\":{},\"registryCredential\":{\"shape\":\"S19\"},\"imagePullCredentialsType\":{}}},\"S16\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{},\"type\":{}}}},\"S19\":{\"type\":\"structure\",\"required\":[\"credential\",\"credentialProvider\"],\"members\":{\"credential\":{},\"credentialProvider\":{}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"cloudWatchLogs\":{\"shape\":\"S1d\"},\"s3Logs\":{\"shape\":\"S1f\"}}},\"S1d\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{},\"groupName\":{},\"streamName\":{}}},\"S1f\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{},\"location\":{},\"encryptionDisabled\":{\"type\":\"boolean\"},\"bucketOwnerAccess\":{}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"vpcId\":{},\"subnets\":{\"type\":\"list\",\"member\":{}},\"securityGroupIds\":{\"type\":\"list\",\"member\":{}}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"location\":{},\"mountPoint\":{},\"identifier\":{},\"mountOptions\":{}}}},\"S1o\":{\"type\":\"structure\",\"members\":{\"serviceRole\":{},\"combineArtifacts\":{\"type\":\"boolean\"},\"restrictions\":{\"type\":\"structure\",\"members\":{\"maximumBuildsAllowed\":{\"type\":\"integer\"},\"computeTypesAllowed\":{\"type\":\"list\",\"member\":{}}}},\"timeoutInMins\":{\"type\":\"integer\"}}},\"S1u\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"requestedOn\":{\"type\":\"timestamp\"},\"buildStatus\":{},\"primaryArtifact\":{\"shape\":\"S1v\"},\"secondaryArtifacts\":{\"type\":\"list\",\"member\":{\"shape\":\"S1v\"}}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"type\":{},\"location\":{},\"identifier\":{}}},\"S22\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"buildNumber\":{\"type\":\"long\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"currentPhase\":{},\"buildStatus\":{},\"sourceVersion\":{},\"resolvedSourceVersion\":{},\"projectName\":{},\"phases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"phaseType\":{},\"phaseStatus\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"durationInSeconds\":{\"type\":\"long\"},\"contexts\":{\"shape\":\"Sj\"}}}},\"source\":{\"shape\":\"Sl\"},\"secondarySources\":{\"shape\":\"St\"},\"secondarySourceVersions\":{\"shape\":\"Su\"},\"artifacts\":{\"shape\":\"Sw\"},\"secondaryArtifacts\":{\"shape\":\"Sy\"},\"cache\":{\"shape\":\"Sz\"},\"environment\":{\"shape\":\"S13\"},\"serviceRole\":{},\"logs\":{\"type\":\"structure\",\"members\":{\"groupName\":{},\"streamName\":{},\"deepLink\":{},\"s3DeepLink\":{},\"cloudWatchLogsArn\":{},\"s3LogsArn\":{},\"cloudWatchLogs\":{\"shape\":\"S1d\"},\"s3Logs\":{\"shape\":\"S1f\"}}},\"timeoutInMinutes\":{\"type\":\"integer\"},\"queuedTimeoutInMinutes\":{\"type\":\"integer\"},\"buildComplete\":{\"type\":\"boolean\"},\"initiator\":{},\"vpcConfig\":{\"shape\":\"S1i\"},\"networkInterface\":{\"type\":\"structure\",\"members\":{\"subnetId\":{},\"networkInterfaceId\":{}}},\"encryptionKey\":{},\"exportedEnvironmentVariables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}}},\"reportArns\":{\"type\":\"list\",\"member\":{}},\"fileSystemLocations\":{\"shape\":\"S1l\"},\"debugSession\":{\"type\":\"structure\",\"members\":{\"sessionEnabled\":{\"type\":\"boolean\"},\"sessionTarget\":{}}},\"buildBatchArn\":{}}},\"S2d\":{\"type\":\"list\",\"member\":{}},\"S2g\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"description\":{},\"source\":{\"shape\":\"Sl\"},\"secondarySources\":{\"shape\":\"St\"},\"sourceVersion\":{},\"secondarySourceVersions\":{\"shape\":\"Su\"},\"artifacts\":{\"shape\":\"S2j\"},\"secondaryArtifacts\":{\"shape\":\"S2m\"},\"cache\":{\"shape\":\"Sz\"},\"environment\":{\"shape\":\"S13\"},\"serviceRole\":{},\"timeoutInMinutes\":{\"type\":\"integer\"},\"queuedTimeoutInMinutes\":{\"type\":\"integer\"},\"encryptionKey\":{},\"tags\":{\"shape\":\"S2o\"},\"created\":{\"type\":\"timestamp\"},\"lastModified\":{\"type\":\"timestamp\"},\"webhook\":{\"shape\":\"S2s\"},\"vpcConfig\":{\"shape\":\"S1i\"},\"badge\":{\"type\":\"structure\",\"members\":{\"badgeEnabled\":{\"type\":\"boolean\"},\"badgeRequestUrl\":{}}},\"logsConfig\":{\"shape\":\"S1c\"},\"fileSystemLocations\":{\"shape\":\"S1l\"},\"buildBatchConfig\":{\"shape\":\"S1o\"},\"concurrentBuildLimit\":{\"type\":\"integer\"}}},\"S2j\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"location\":{},\"path\":{},\"namespaceType\":{},\"name\":{},\"packaging\":{},\"overrideArtifactName\":{\"type\":\"boolean\"},\"encryptionDisabled\":{\"type\":\"boolean\"},\"artifactIdentifier\":{},\"bucketOwnerAccess\":{}}},\"S2m\":{\"type\":\"list\",\"member\":{\"shape\":\"S2j\"}},\"S2o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"url\":{},\"payloadUrl\":{},\"secret\":{},\"branchFilter\":{},\"filterGroups\":{\"shape\":\"S2t\"},\"buildType\":{},\"lastModifiedSecret\":{\"type\":\"timestamp\"}}},\"S2t\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"type\",\"pattern\"],\"members\":{\"type\":{},\"pattern\":{},\"excludeMatchedPattern\":{\"type\":\"boolean\"}}}}},\"S30\":{\"type\":\"list\",\"member\":{}},\"S33\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"exportConfig\":{\"shape\":\"S36\"},\"created\":{\"type\":\"timestamp\"},\"lastModified\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S2o\"},\"status\":{}}},\"S36\":{\"type\":\"structure\",\"members\":{\"exportConfigType\":{},\"s3Destination\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"bucketOwner\":{},\"path\":{},\"packaging\":{},\"encryptionKey\":{},\"encryptionDisabled\":{\"type\":\"boolean\"}}}}},\"S3c\":{\"type\":\"list\",\"member\":{}},\"S4y\":{\"type\":\"structure\",\"members\":{\"status\":{}}},\"S5o\":{\"type\":\"structure\",\"members\":{\"status\":{}}}}}");

/***/ }),

/***/ 10589:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCodeCoverages\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"codeCoverages\"},\"DescribeTestCases\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"testCases\"},\"ListBuildBatches\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"ids\"},\"ListBuildBatchesForProject\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"ids\"},\"ListBuilds\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"ids\"},\"ListBuildsForProject\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"ids\"},\"ListProjects\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"projects\"},\"ListReportGroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"reportGroups\"},\"ListReports\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"reports\"},\"ListReportsForReportGroup\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"reports\"},\"ListSharedProjects\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"projects\"},\"ListSharedReportGroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"reportGroups\"}}}");

/***/ }),

/***/ 2091:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-04-13\",\"endpointPrefix\":\"codecommit\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CodeCommit\",\"serviceFullName\":\"AWS CodeCommit\",\"serviceId\":\"CodeCommit\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CodeCommit_20150413\",\"uid\":\"codecommit-2015-04-13\"},\"operations\":{\"AssociateApprovalRuleTemplateWithRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"repositoryName\"],\"members\":{\"approvalRuleTemplateName\":{},\"repositoryName\":{}}}},\"BatchAssociateApprovalRuleTemplateWithRepositories\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"repositoryNames\"],\"members\":{\"approvalRuleTemplateName\":{},\"repositoryNames\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"associatedRepositoryNames\",\"errors\"],\"members\":{\"associatedRepositoryNames\":{\"shape\":\"S5\"},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"BatchDescribeMergeConflicts\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"destinationCommitSpecifier\",\"sourceCommitSpecifier\",\"mergeOption\"],\"members\":{\"repositoryName\":{},\"destinationCommitSpecifier\":{},\"sourceCommitSpecifier\":{},\"mergeOption\":{},\"maxMergeHunks\":{\"type\":\"integer\"},\"maxConflictFiles\":{\"type\":\"integer\"},\"filePaths\":{\"type\":\"list\",\"member\":{}},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"conflicts\",\"destinationCommitId\",\"sourceCommitId\"],\"members\":{\"conflicts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"conflictMetadata\":{\"shape\":\"Sn\"},\"mergeHunks\":{\"shape\":\"S12\"}}}},\"nextToken\":{},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"filePath\",\"exceptionName\",\"message\"],\"members\":{\"filePath\":{},\"exceptionName\":{},\"message\":{}}}},\"destinationCommitId\":{},\"sourceCommitId\":{},\"baseCommitId\":{}}}},\"BatchDisassociateApprovalRuleTemplateFromRepositories\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"repositoryNames\"],\"members\":{\"approvalRuleTemplateName\":{},\"repositoryNames\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"disassociatedRepositoryNames\",\"errors\"],\"members\":{\"disassociatedRepositoryNames\":{\"shape\":\"S5\"},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"BatchGetCommits\":{\"input\":{\"type\":\"structure\",\"required\":[\"commitIds\",\"repositoryName\"],\"members\":{\"commitIds\":{\"type\":\"list\",\"member\":{}},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"commits\":{\"type\":\"list\",\"member\":{\"shape\":\"S1l\"}},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"BatchGetRepositories\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryNames\"],\"members\":{\"repositoryNames\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositories\":{\"type\":\"list\",\"member\":{\"shape\":\"S1x\"}},\"repositoriesNotFound\":{\"type\":\"list\",\"member\":{}}}}},\"CreateApprovalRuleTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"approvalRuleTemplateContent\"],\"members\":{\"approvalRuleTemplateName\":{},\"approvalRuleTemplateContent\":{},\"approvalRuleTemplateDescription\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplate\"],\"members\":{\"approvalRuleTemplate\":{\"shape\":\"S2c\"}}}},\"CreateBranch\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"branchName\",\"commitId\"],\"members\":{\"repositoryName\":{},\"branchName\":{},\"commitId\":{}}}},\"CreateCommit\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"branchName\"],\"members\":{\"repositoryName\":{},\"branchName\":{},\"parentCommitId\":{},\"authorName\":{},\"email\":{},\"commitMessage\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"putFiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"filePath\"],\"members\":{\"filePath\":{},\"fileMode\":{},\"fileContent\":{\"type\":\"blob\"},\"sourceFile\":{\"type\":\"structure\",\"required\":[\"filePath\"],\"members\":{\"filePath\":{},\"isMove\":{\"type\":\"boolean\"}}}}}},\"deleteFiles\":{\"shape\":\"S2o\"},\"setFileModes\":{\"shape\":\"S2q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"treeId\":{},\"filesAdded\":{\"shape\":\"S2t\"},\"filesUpdated\":{\"shape\":\"S2t\"},\"filesDeleted\":{\"shape\":\"S2t\"}}}},\"CreatePullRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"title\",\"targets\"],\"members\":{\"title\":{},\"description\":{},\"targets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceReference\"],\"members\":{\"repositoryName\":{},\"sourceReference\":{},\"destinationReference\":{}}}},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequest\"],\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"CreatePullRequestApprovalRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"approvalRuleName\",\"approvalRuleContent\"],\"members\":{\"pullRequestId\":{},\"approvalRuleName\":{},\"approvalRuleContent\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRule\"],\"members\":{\"approvalRule\":{\"shape\":\"S3c\"}}}},\"CreateRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"repositoryDescription\":{},\"tags\":{\"shape\":\"S3k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryMetadata\":{\"shape\":\"S1x\"}}}},\"CreateUnreferencedMergeCommit\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceCommitSpecifier\",\"destinationCommitSpecifier\",\"mergeOption\"],\"members\":{\"repositoryName\":{},\"sourceCommitSpecifier\":{},\"destinationCommitSpecifier\":{},\"mergeOption\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"authorName\":{},\"email\":{},\"commitMessage\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"conflictResolution\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"treeId\":{}}}},\"DeleteApprovalRuleTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\"],\"members\":{\"approvalRuleTemplateName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateId\"],\"members\":{\"approvalRuleTemplateId\":{}}}},\"DeleteBranch\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"branchName\"],\"members\":{\"repositoryName\":{},\"branchName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deletedBranch\":{\"shape\":\"S3y\"}}}},\"DeleteCommentContent\":{\"input\":{\"type\":\"structure\",\"required\":[\"commentId\"],\"members\":{\"commentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"comment\":{\"shape\":\"S42\"}}}},\"DeleteFile\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"branchName\",\"filePath\",\"parentCommitId\"],\"members\":{\"repositoryName\":{},\"branchName\":{},\"filePath\":{},\"parentCommitId\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"commitMessage\":{},\"name\":{},\"email\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"commitId\",\"blobId\",\"treeId\",\"filePath\"],\"members\":{\"commitId\":{},\"blobId\":{},\"treeId\":{},\"filePath\":{}}}},\"DeletePullRequestApprovalRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"approvalRuleName\"],\"members\":{\"pullRequestId\":{},\"approvalRuleName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleId\"],\"members\":{\"approvalRuleId\":{}}}},\"DeleteRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryId\":{}}}},\"DescribeMergeConflicts\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"destinationCommitSpecifier\",\"sourceCommitSpecifier\",\"mergeOption\",\"filePath\"],\"members\":{\"repositoryName\":{},\"destinationCommitSpecifier\":{},\"sourceCommitSpecifier\":{},\"mergeOption\":{},\"maxMergeHunks\":{\"type\":\"integer\"},\"filePath\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"conflictMetadata\",\"mergeHunks\",\"destinationCommitId\",\"sourceCommitId\"],\"members\":{\"conflictMetadata\":{\"shape\":\"Sn\"},\"mergeHunks\":{\"shape\":\"S12\"},\"nextToken\":{},\"destinationCommitId\":{},\"sourceCommitId\":{},\"baseCommitId\":{}}}},\"DescribePullRequestEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\"],\"members\":{\"pullRequestId\":{},\"pullRequestEventType\":{},\"actorArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequestEvents\"],\"members\":{\"pullRequestEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"pullRequestId\":{},\"eventDate\":{\"type\":\"timestamp\"},\"pullRequestEventType\":{},\"actorArn\":{},\"pullRequestCreatedEventMetadata\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"sourceCommitId\":{},\"destinationCommitId\":{},\"mergeBase\":{}}},\"pullRequestStatusChangedEventMetadata\":{\"type\":\"structure\",\"members\":{\"pullRequestStatus\":{}}},\"pullRequestSourceReferenceUpdatedEventMetadata\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"mergeBase\":{}}},\"pullRequestMergedStateChangedEventMetadata\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"destinationReference\":{},\"mergeMetadata\":{\"shape\":\"S38\"}}},\"approvalRuleEventMetadata\":{\"type\":\"structure\",\"members\":{\"approvalRuleName\":{},\"approvalRuleId\":{},\"approvalRuleContent\":{}}},\"approvalStateChangedEventMetadata\":{\"type\":\"structure\",\"members\":{\"revisionId\":{},\"approvalStatus\":{}}},\"approvalRuleOverriddenEventMetadata\":{\"type\":\"structure\",\"members\":{\"revisionId\":{},\"overrideStatus\":{}}}}}},\"nextToken\":{}}}},\"DisassociateApprovalRuleTemplateFromRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"repositoryName\"],\"members\":{\"approvalRuleTemplateName\":{},\"repositoryName\":{}}}},\"EvaluatePullRequestApprovalRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"revisionId\"],\"members\":{\"pullRequestId\":{},\"revisionId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"evaluation\"],\"members\":{\"evaluation\":{\"type\":\"structure\",\"members\":{\"approved\":{\"type\":\"boolean\"},\"overridden\":{\"type\":\"boolean\"},\"approvalRulesSatisfied\":{\"type\":\"list\",\"member\":{}},\"approvalRulesNotSatisfied\":{\"type\":\"list\",\"member\":{}}}}}}},\"GetApprovalRuleTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\"],\"members\":{\"approvalRuleTemplateName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplate\"],\"members\":{\"approvalRuleTemplate\":{\"shape\":\"S2c\"}}}},\"GetBlob\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"blobId\"],\"members\":{\"repositoryName\":{},\"blobId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"content\"],\"members\":{\"content\":{\"type\":\"blob\"}}}},\"GetBranch\":{\"input\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"branchName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"branch\":{\"shape\":\"S3y\"}}}},\"GetComment\":{\"input\":{\"type\":\"structure\",\"required\":[\"commentId\"],\"members\":{\"commentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"comment\":{\"shape\":\"S42\"}}}},\"GetCommentReactions\":{\"input\":{\"type\":\"structure\",\"required\":[\"commentId\"],\"members\":{\"commentId\":{},\"reactionUserArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"reactionsForComment\"],\"members\":{\"reactionsForComment\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"reaction\":{\"type\":\"structure\",\"members\":{\"emoji\":{},\"shortCode\":{},\"unicode\":{}}},\"reactionUsers\":{\"type\":\"list\",\"member\":{}},\"reactionsFromDeletedUsersCount\":{\"type\":\"integer\"}}}},\"nextToken\":{}}}},\"GetCommentsForComparedCommit\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"afterCommitId\"],\"members\":{\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"commentsForComparedCommitData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"beforeBlobId\":{},\"afterBlobId\":{},\"location\":{\"shape\":\"S5q\"},\"comments\":{\"shape\":\"S5t\"}}}},\"nextToken\":{}}}},\"GetCommentsForPullRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\"],\"members\":{\"pullRequestId\":{},\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"commentsForPullRequestData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"pullRequestId\":{},\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"beforeBlobId\":{},\"afterBlobId\":{},\"location\":{\"shape\":\"S5q\"},\"comments\":{\"shape\":\"S5t\"}}}},\"nextToken\":{}}}},\"GetCommit\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"commitId\"],\"members\":{\"repositoryName\":{},\"commitId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"commit\"],\"members\":{\"commit\":{\"shape\":\"S1l\"}}}},\"GetDifferences\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"afterCommitSpecifier\"],\"members\":{\"repositoryName\":{},\"beforeCommitSpecifier\":{},\"afterCommitSpecifier\":{},\"beforePath\":{},\"afterPath\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"differences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"beforeBlob\":{\"shape\":\"S65\"},\"afterBlob\":{\"shape\":\"S65\"},\"changeType\":{}}}},\"NextToken\":{}}}},\"GetFile\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"filePath\"],\"members\":{\"repositoryName\":{},\"commitSpecifier\":{},\"filePath\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"commitId\",\"blobId\",\"filePath\",\"fileMode\",\"fileSize\",\"fileContent\"],\"members\":{\"commitId\":{},\"blobId\":{},\"filePath\":{},\"fileMode\":{},\"fileSize\":{\"type\":\"long\"},\"fileContent\":{\"type\":\"blob\"}}}},\"GetFolder\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"folderPath\"],\"members\":{\"repositoryName\":{},\"commitSpecifier\":{},\"folderPath\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"commitId\",\"folderPath\"],\"members\":{\"commitId\":{},\"folderPath\":{},\"treeId\":{},\"subFolders\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"treeId\":{},\"absolutePath\":{},\"relativePath\":{}}}},\"files\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"blobId\":{},\"absolutePath\":{},\"relativePath\":{},\"fileMode\":{}}}},\"symbolicLinks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"blobId\":{},\"absolutePath\":{},\"relativePath\":{},\"fileMode\":{}}}},\"subModules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"absolutePath\":{},\"relativePath\":{}}}}}}},\"GetMergeCommit\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceCommitSpecifier\",\"destinationCommitSpecifier\"],\"members\":{\"repositoryName\":{},\"sourceCommitSpecifier\":{},\"destinationCommitSpecifier\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"sourceCommitId\":{},\"destinationCommitId\":{},\"baseCommitId\":{},\"mergedCommitId\":{}}}},\"GetMergeConflicts\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"destinationCommitSpecifier\",\"sourceCommitSpecifier\",\"mergeOption\"],\"members\":{\"repositoryName\":{},\"destinationCommitSpecifier\":{},\"sourceCommitSpecifier\":{},\"mergeOption\":{},\"conflictDetailLevel\":{},\"maxConflictFiles\":{\"type\":\"integer\"},\"conflictResolutionStrategy\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"mergeable\",\"destinationCommitId\",\"sourceCommitId\",\"conflictMetadataList\"],\"members\":{\"mergeable\":{\"type\":\"boolean\"},\"destinationCommitId\":{},\"sourceCommitId\":{},\"baseCommitId\":{},\"conflictMetadataList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}},\"nextToken\":{}}}},\"GetMergeOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceCommitSpecifier\",\"destinationCommitSpecifier\"],\"members\":{\"repositoryName\":{},\"sourceCommitSpecifier\":{},\"destinationCommitSpecifier\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"mergeOptions\",\"sourceCommitId\",\"destinationCommitId\",\"baseCommitId\"],\"members\":{\"mergeOptions\":{\"type\":\"list\",\"member\":{}},\"sourceCommitId\":{},\"destinationCommitId\":{},\"baseCommitId\":{}}}},\"GetPullRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\"],\"members\":{\"pullRequestId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequest\"],\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"GetPullRequestApprovalStates\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"revisionId\"],\"members\":{\"pullRequestId\":{},\"revisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"approvals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"userArn\":{},\"approvalState\":{}}}}}}},\"GetPullRequestOverrideState\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"revisionId\"],\"members\":{\"pullRequestId\":{},\"revisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"overridden\":{\"type\":\"boolean\"},\"overrider\":{}}}},\"GetRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryMetadata\":{\"shape\":\"S1x\"}}}},\"GetRepositoryTriggers\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"configurationId\":{},\"triggers\":{\"shape\":\"S76\"}}}},\"ListApprovalRuleTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"approvalRuleTemplateNames\":{\"shape\":\"S7f\"},\"nextToken\":{}}}},\"ListAssociatedApprovalRuleTemplatesForRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"approvalRuleTemplateNames\":{\"shape\":\"S7f\"},\"nextToken\":{}}}},\"ListBranches\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"branches\":{\"shape\":\"S7a\"},\"nextToken\":{}}}},\"ListPullRequests\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"authorArn\":{},\"pullRequestStatus\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequestIds\"],\"members\":{\"pullRequestIds\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListRepositories\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"sortBy\":{},\"order\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositories\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"repositoryId\":{}}}},\"nextToken\":{}}}},\"ListRepositoriesForApprovalRuleTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\"],\"members\":{\"approvalRuleTemplateName\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryNames\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S3k\"},\"nextToken\":{}}}},\"MergeBranchesByFastForward\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceCommitSpecifier\",\"destinationCommitSpecifier\"],\"members\":{\"repositoryName\":{},\"sourceCommitSpecifier\":{},\"destinationCommitSpecifier\":{},\"targetBranch\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"treeId\":{}}}},\"MergeBranchesBySquash\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceCommitSpecifier\",\"destinationCommitSpecifier\"],\"members\":{\"repositoryName\":{},\"sourceCommitSpecifier\":{},\"destinationCommitSpecifier\":{},\"targetBranch\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"authorName\":{},\"email\":{},\"commitMessage\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"conflictResolution\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"treeId\":{}}}},\"MergeBranchesByThreeWay\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"sourceCommitSpecifier\",\"destinationCommitSpecifier\"],\"members\":{\"repositoryName\":{},\"sourceCommitSpecifier\":{},\"destinationCommitSpecifier\":{},\"targetBranch\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"authorName\":{},\"email\":{},\"commitMessage\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"conflictResolution\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"treeId\":{}}}},\"MergePullRequestByFastForward\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"repositoryName\"],\"members\":{\"pullRequestId\":{},\"repositoryName\":{},\"sourceCommitId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"MergePullRequestBySquash\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"repositoryName\"],\"members\":{\"pullRequestId\":{},\"repositoryName\":{},\"sourceCommitId\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"commitMessage\":{},\"authorName\":{},\"email\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"conflictResolution\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"MergePullRequestByThreeWay\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"repositoryName\"],\"members\":{\"pullRequestId\":{},\"repositoryName\":{},\"sourceCommitId\":{},\"conflictDetailLevel\":{},\"conflictResolutionStrategy\":{},\"commitMessage\":{},\"authorName\":{},\"email\":{},\"keepEmptyFolders\":{\"type\":\"boolean\"},\"conflictResolution\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"OverridePullRequestApprovalRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"revisionId\",\"overrideStatus\"],\"members\":{\"pullRequestId\":{},\"revisionId\":{},\"overrideStatus\":{}}}},\"PostCommentForComparedCommit\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"afterCommitId\",\"content\"],\"members\":{\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"location\":{\"shape\":\"S5q\"},\"content\":{},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"beforeBlobId\":{},\"afterBlobId\":{},\"location\":{\"shape\":\"S5q\"},\"comment\":{\"shape\":\"S42\"}}},\"idempotent\":true},\"PostCommentForPullRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"repositoryName\",\"beforeCommitId\",\"afterCommitId\",\"content\"],\"members\":{\"pullRequestId\":{},\"repositoryName\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"location\":{\"shape\":\"S5q\"},\"content\":{},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"pullRequestId\":{},\"beforeCommitId\":{},\"afterCommitId\":{},\"beforeBlobId\":{},\"afterBlobId\":{},\"location\":{\"shape\":\"S5q\"},\"comment\":{\"shape\":\"S42\"}}},\"idempotent\":true},\"PostCommentReply\":{\"input\":{\"type\":\"structure\",\"required\":[\"inReplyTo\",\"content\"],\"members\":{\"inReplyTo\":{},\"clientRequestToken\":{\"idempotencyToken\":true},\"content\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"comment\":{\"shape\":\"S42\"}}},\"idempotent\":true},\"PutCommentReaction\":{\"input\":{\"type\":\"structure\",\"required\":[\"commentId\",\"reactionValue\"],\"members\":{\"commentId\":{},\"reactionValue\":{}}}},\"PutFile\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"branchName\",\"fileContent\",\"filePath\"],\"members\":{\"repositoryName\":{},\"branchName\":{},\"fileContent\":{\"type\":\"blob\"},\"filePath\":{},\"fileMode\":{},\"parentCommitId\":{},\"commitMessage\":{},\"name\":{},\"email\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"commitId\",\"blobId\",\"treeId\"],\"members\":{\"commitId\":{},\"blobId\":{},\"treeId\":{}}}},\"PutRepositoryTriggers\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"triggers\"],\"members\":{\"repositoryName\":{},\"triggers\":{\"shape\":\"S76\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"configurationId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S3k\"}}}},\"TestRepositoryTriggers\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"triggers\"],\"members\":{\"repositoryName\":{},\"triggers\":{\"shape\":\"S76\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulExecutions\":{\"type\":\"list\",\"member\":{}},\"failedExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"trigger\":{},\"failureMessage\":{}}}}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"UpdateApprovalRuleTemplateContent\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"newRuleContent\"],\"members\":{\"approvalRuleTemplateName\":{},\"newRuleContent\":{},\"existingRuleContentSha256\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplate\"],\"members\":{\"approvalRuleTemplate\":{\"shape\":\"S2c\"}}}},\"UpdateApprovalRuleTemplateDescription\":{\"input\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplateName\",\"approvalRuleTemplateDescription\"],\"members\":{\"approvalRuleTemplateName\":{},\"approvalRuleTemplateDescription\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplate\"],\"members\":{\"approvalRuleTemplate\":{\"shape\":\"S2c\"}}}},\"UpdateApprovalRuleTemplateName\":{\"input\":{\"type\":\"structure\",\"required\":[\"oldApprovalRuleTemplateName\",\"newApprovalRuleTemplateName\"],\"members\":{\"oldApprovalRuleTemplateName\":{},\"newApprovalRuleTemplateName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRuleTemplate\"],\"members\":{\"approvalRuleTemplate\":{\"shape\":\"S2c\"}}}},\"UpdateComment\":{\"input\":{\"type\":\"structure\",\"required\":[\"commentId\",\"content\"],\"members\":{\"commentId\":{},\"content\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"comment\":{\"shape\":\"S42\"}}}},\"UpdateDefaultBranch\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"defaultBranchName\"],\"members\":{\"repositoryName\":{},\"defaultBranchName\":{}}}},\"UpdatePullRequestApprovalRuleContent\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"approvalRuleName\",\"newRuleContent\"],\"members\":{\"pullRequestId\":{},\"approvalRuleName\":{},\"existingRuleContentSha256\":{},\"newRuleContent\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"approvalRule\"],\"members\":{\"approvalRule\":{\"shape\":\"S3c\"}}}},\"UpdatePullRequestApprovalState\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"revisionId\",\"approvalState\"],\"members\":{\"pullRequestId\":{},\"revisionId\":{},\"approvalState\":{}}}},\"UpdatePullRequestDescription\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"description\"],\"members\":{\"pullRequestId\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequest\"],\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"UpdatePullRequestStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"pullRequestStatus\"],\"members\":{\"pullRequestId\":{},\"pullRequestStatus\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequest\"],\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"UpdatePullRequestTitle\":{\"input\":{\"type\":\"structure\",\"required\":[\"pullRequestId\",\"title\"],\"members\":{\"pullRequestId\":{},\"title\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"pullRequest\"],\"members\":{\"pullRequest\":{\"shape\":\"S33\"}}}},\"UpdateRepositoryDescription\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"repositoryDescription\":{}}}},\"UpdateRepositoryName\":{\"input\":{\"type\":\"structure\",\"required\":[\"oldName\",\"newName\"],\"members\":{\"oldName\":{},\"newName\":{}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{}},\"Sn\":{\"type\":\"structure\",\"members\":{\"filePath\":{},\"fileSizes\":{\"type\":\"structure\",\"members\":{\"source\":{\"type\":\"long\"},\"destination\":{\"type\":\"long\"},\"base\":{\"type\":\"long\"}}},\"fileModes\":{\"type\":\"structure\",\"members\":{\"source\":{},\"destination\":{},\"base\":{}}},\"objectTypes\":{\"type\":\"structure\",\"members\":{\"source\":{},\"destination\":{},\"base\":{}}},\"numberOfConflicts\":{\"type\":\"integer\"},\"isBinaryFile\":{\"type\":\"structure\",\"members\":{\"source\":{\"type\":\"boolean\"},\"destination\":{\"type\":\"boolean\"},\"base\":{\"type\":\"boolean\"}}},\"contentConflict\":{\"type\":\"boolean\"},\"fileModeConflict\":{\"type\":\"boolean\"},\"objectTypeConflict\":{\"type\":\"boolean\"},\"mergeOperations\":{\"type\":\"structure\",\"members\":{\"source\":{},\"destination\":{}}}}},\"S12\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"isConflict\":{\"type\":\"boolean\"},\"source\":{\"shape\":\"S15\"},\"destination\":{\"shape\":\"S15\"},\"base\":{\"shape\":\"S15\"}}}},\"S15\":{\"type\":\"structure\",\"members\":{\"startLine\":{\"type\":\"integer\"},\"endLine\":{\"type\":\"integer\"},\"hunkContent\":{}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"commitId\":{},\"treeId\":{},\"parents\":{\"type\":\"list\",\"member\":{}},\"message\":{},\"author\":{\"shape\":\"S1n\"},\"committer\":{\"shape\":\"S1n\"},\"additionalData\":{}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"name\":{},\"email\":{},\"date\":{}}},\"S1x\":{\"type\":\"structure\",\"members\":{\"accountId\":{},\"repositoryId\":{},\"repositoryName\":{},\"repositoryDescription\":{},\"defaultBranch\":{},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"creationDate\":{\"type\":\"timestamp\"},\"cloneUrlHttp\":{},\"cloneUrlSsh\":{},\"Arn\":{}}},\"S2c\":{\"type\":\"structure\",\"members\":{\"approvalRuleTemplateId\":{},\"approvalRuleTemplateName\":{},\"approvalRuleTemplateDescription\":{},\"approvalRuleTemplateContent\":{},\"ruleContentSha256\":{},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedUser\":{}}},\"S2o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"filePath\"],\"members\":{\"filePath\":{}}}},\"S2q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"filePath\",\"fileMode\"],\"members\":{\"filePath\":{},\"fileMode\":{}}}},\"S2t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"absolutePath\":{},\"blobId\":{},\"fileMode\":{}}}},\"S33\":{\"type\":\"structure\",\"members\":{\"pullRequestId\":{},\"title\":{},\"description\":{},\"lastActivityDate\":{\"type\":\"timestamp\"},\"creationDate\":{\"type\":\"timestamp\"},\"pullRequestStatus\":{},\"authorArn\":{},\"pullRequestTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"repositoryName\":{},\"sourceReference\":{},\"destinationReference\":{},\"destinationCommit\":{},\"sourceCommit\":{},\"mergeBase\":{},\"mergeMetadata\":{\"shape\":\"S38\"}}}},\"clientRequestToken\":{},\"revisionId\":{},\"approvalRules\":{\"type\":\"list\",\"member\":{\"shape\":\"S3c\"}}}},\"S38\":{\"type\":\"structure\",\"members\":{\"isMerged\":{\"type\":\"boolean\"},\"mergedBy\":{},\"mergeCommitId\":{},\"mergeOption\":{}}},\"S3c\":{\"type\":\"structure\",\"members\":{\"approvalRuleId\":{},\"approvalRuleName\":{},\"approvalRuleContent\":{},\"ruleContentSha256\":{},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedUser\":{},\"originApprovalRuleTemplate\":{\"type\":\"structure\",\"members\":{\"approvalRuleTemplateId\":{},\"approvalRuleTemplateName\":{}}}}},\"S3k\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S3p\":{\"type\":\"structure\",\"members\":{\"replaceContents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"filePath\",\"replacementType\"],\"members\":{\"filePath\":{},\"replacementType\":{},\"content\":{\"type\":\"blob\"},\"fileMode\":{}}}},\"deleteFiles\":{\"shape\":\"S2o\"},\"setFileModes\":{\"shape\":\"S2q\"}}},\"S3y\":{\"type\":\"structure\",\"members\":{\"branchName\":{},\"commitId\":{}}},\"S42\":{\"type\":\"structure\",\"members\":{\"commentId\":{},\"content\":{},\"inReplyTo\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"authorArn\":{},\"deleted\":{\"type\":\"boolean\"},\"clientRequestToken\":{},\"callerReactions\":{\"type\":\"list\",\"member\":{}},\"reactionCounts\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}},\"S5q\":{\"type\":\"structure\",\"members\":{\"filePath\":{},\"filePosition\":{\"type\":\"long\"},\"relativeFileVersion\":{}}},\"S5t\":{\"type\":\"list\",\"member\":{\"shape\":\"S42\"}},\"S65\":{\"type\":\"structure\",\"members\":{\"blobId\":{},\"path\":{},\"mode\":{}}},\"S76\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"destinationArn\",\"events\"],\"members\":{\"name\":{},\"destinationArn\":{},\"customData\":{},\"branches\":{\"shape\":\"S7a\"},\"events\":{\"type\":\"list\",\"member\":{}}}}},\"S7a\":{\"type\":\"list\",\"member\":{}},\"S7f\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 11742:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeMergeConflicts\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxMergeHunks\",\"output_token\":\"nextToken\"},\"DescribePullRequestEvents\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"GetCommentReactions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"GetCommentsForComparedCommit\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"GetCommentsForPullRequest\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"GetDifferences\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetMergeConflicts\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxConflictFiles\",\"output_token\":\"nextToken\"},\"ListApprovalRuleTemplates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"ListAssociatedApprovalRuleTemplatesForRepository\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"ListBranches\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"branches\"},\"ListPullRequests\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"},\"ListRepositories\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"repositories\"},\"ListRepositoriesForApprovalRuleTemplate\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\"}}}");

/***/ }),

/***/ 33531:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-10-06\",\"endpointPrefix\":\"codedeploy\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CodeDeploy\",\"serviceFullName\":\"AWS CodeDeploy\",\"serviceId\":\"CodeDeploy\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CodeDeploy_20141006\",\"uid\":\"codedeploy-2014-10-06\"},\"operations\":{\"AddTagsToOnPremisesInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"tags\",\"instanceNames\"],\"members\":{\"tags\":{\"shape\":\"S2\"},\"instanceNames\":{\"shape\":\"S6\"}}}},\"BatchGetApplicationRevisions\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"revisions\"],\"members\":{\"applicationName\":{},\"revisions\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"errorMessage\":{},\"revisions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"revisionLocation\":{\"shape\":\"Sb\"},\"genericRevisionInfo\":{\"shape\":\"Su\"}}}}}}},\"BatchGetApplications\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationNames\"],\"members\":{\"applicationNames\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationsInfo\":{\"type\":\"list\",\"member\":{\"shape\":\"S13\"}}}}},\"BatchGetDeploymentGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"deploymentGroupNames\"],\"members\":{\"applicationName\":{},\"deploymentGroupNames\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentGroupsInfo\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}},\"errorMessage\":{}}}},\"BatchGetDeploymentInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\",\"instanceIds\"],\"members\":{\"deploymentId\":{},\"instanceIds\":{\"shape\":\"S32\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"instancesSummary\":{\"type\":\"list\",\"member\":{\"shape\":\"S36\"}},\"errorMessage\":{}}},\"deprecated\":true,\"deprecatedMessage\":\"This operation is deprecated, use BatchGetDeploymentTargets instead.\"},\"BatchGetDeploymentTargets\":{\"input\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"targetIds\":{\"shape\":\"S3j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentTargets\":{\"type\":\"list\",\"member\":{\"shape\":\"S3n\"}}}}},\"BatchGetDeployments\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentIds\"],\"members\":{\"deploymentIds\":{\"shape\":\"S49\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentsInfo\":{\"type\":\"list\",\"member\":{\"shape\":\"S4c\"}}}}},\"BatchGetOnPremisesInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceNames\"],\"members\":{\"instanceNames\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"S4t\"}}}}},\"ContinueDeployment\":{\"input\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"deploymentWaitType\":{}}}},\"CreateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\"],\"members\":{\"applicationName\":{},\"computePlatform\":{},\"tags\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationId\":{}}}},\"CreateDeployment\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\"],\"members\":{\"applicationName\":{},\"deploymentGroupName\":{},\"revision\":{\"shape\":\"Sb\"},\"deploymentConfigName\":{},\"description\":{},\"ignoreApplicationStopFailures\":{\"type\":\"boolean\"},\"targetInstances\":{\"shape\":\"S4j\"},\"autoRollbackConfiguration\":{\"shape\":\"S1z\"},\"updateOutdatedInstancesOnly\":{\"type\":\"boolean\"},\"fileExistsBehavior\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{}}}},\"CreateDeploymentConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentConfigName\"],\"members\":{\"deploymentConfigName\":{},\"minimumHealthyHosts\":{\"shape\":\"S54\"},\"trafficRoutingConfig\":{\"shape\":\"S57\"},\"computePlatform\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentConfigId\":{}}}},\"CreateDeploymentGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"deploymentGroupName\",\"serviceRoleArn\"],\"members\":{\"applicationName\":{},\"deploymentGroupName\":{},\"deploymentConfigName\":{},\"ec2TagFilters\":{\"shape\":\"S1e\"},\"onPremisesInstanceTagFilters\":{\"shape\":\"S1h\"},\"autoScalingGroups\":{\"shape\":\"S4k\"},\"serviceRoleArn\":{},\"triggerConfigurations\":{\"shape\":\"S1p\"},\"alarmConfiguration\":{\"shape\":\"S1v\"},\"autoRollbackConfiguration\":{\"shape\":\"S1z\"},\"outdatedInstancesStrategy\":{},\"deploymentStyle\":{\"shape\":\"S22\"},\"blueGreenDeploymentConfiguration\":{\"shape\":\"S26\"},\"loadBalancerInfo\":{\"shape\":\"S2e\"},\"ec2TagSet\":{\"shape\":\"S2t\"},\"ecsServices\":{\"shape\":\"S2x\"},\"onPremisesTagSet\":{\"shape\":\"S2v\"},\"tags\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentGroupId\":{}}}},\"DeleteApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\"],\"members\":{\"applicationName\":{}}}},\"DeleteDeploymentConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentConfigName\"],\"members\":{\"deploymentConfigName\":{}}}},\"DeleteDeploymentGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"deploymentGroupName\"],\"members\":{\"applicationName\":{},\"deploymentGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"hooksNotCleanedUp\":{\"shape\":\"S1k\"}}}},\"DeleteGitHubAccountToken\":{\"input\":{\"type\":\"structure\",\"members\":{\"tokenName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tokenName\":{}}}},\"DeleteResourcesByExternalId\":{\"input\":{\"type\":\"structure\",\"members\":{\"externalId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterOnPremisesInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}}},\"GetApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\"],\"members\":{\"applicationName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"application\":{\"shape\":\"S13\"}}}},\"GetApplicationRevision\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"revision\"],\"members\":{\"applicationName\":{},\"revision\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"revision\":{\"shape\":\"Sb\"},\"revisionInfo\":{\"shape\":\"Su\"}}}},\"GetDeployment\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\"],\"members\":{\"deploymentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentInfo\":{\"shape\":\"S4c\"}}}},\"GetDeploymentConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentConfigName\"],\"members\":{\"deploymentConfigName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentConfigInfo\":{\"type\":\"structure\",\"members\":{\"deploymentConfigId\":{},\"deploymentConfigName\":{},\"minimumHealthyHosts\":{\"shape\":\"S54\"},\"createTime\":{\"type\":\"timestamp\"},\"computePlatform\":{},\"trafficRoutingConfig\":{\"shape\":\"S57\"}}}}}},\"GetDeploymentGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"deploymentGroupName\"],\"members\":{\"applicationName\":{},\"deploymentGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentGroupInfo\":{\"shape\":\"S1b\"}}}},\"GetDeploymentInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\",\"instanceId\"],\"members\":{\"deploymentId\":{},\"instanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceSummary\":{\"shape\":\"S36\"}}},\"deprecated\":true,\"deprecatedMessage\":\"This operation is deprecated, use GetDeploymentTarget instead.\"},\"GetDeploymentTarget\":{\"input\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"targetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentTarget\":{\"shape\":\"S3n\"}}}},\"GetOnPremisesInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceInfo\":{\"shape\":\"S4t\"}}}},\"ListApplicationRevisions\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\"],\"members\":{\"applicationName\":{},\"sortBy\":{},\"sortOrder\":{},\"s3Bucket\":{},\"s3KeyPrefix\":{},\"deployed\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"revisions\":{\"shape\":\"Sa\"},\"nextToken\":{}}}},\"ListApplications\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"applications\":{\"shape\":\"S10\"},\"nextToken\":{}}}},\"ListDeploymentConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentConfigsList\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListDeploymentGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\"],\"members\":{\"applicationName\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"deploymentGroups\":{\"shape\":\"Sw\"},\"nextToken\":{}}}},\"ListDeploymentInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\"],\"members\":{\"deploymentId\":{},\"nextToken\":{},\"instanceStatusFilter\":{\"type\":\"list\",\"member\":{\"shape\":\"S37\"}},\"instanceTypeFilter\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"instancesList\":{\"shape\":\"S32\"},\"nextToken\":{}}},\"deprecated\":true,\"deprecatedMessage\":\"This operation is deprecated, use ListDeploymentTargets instead.\"},\"ListDeploymentTargets\":{\"input\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"nextToken\":{},\"targetFilters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"targetIds\":{\"shape\":\"S3j\"},\"nextToken\":{}}}},\"ListDeployments\":{\"input\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"deploymentGroupName\":{},\"externalId\":{},\"includeOnlyStatuses\":{\"type\":\"list\",\"member\":{}},\"createTimeRange\":{\"type\":\"structure\",\"members\":{\"start\":{\"type\":\"timestamp\"},\"end\":{\"type\":\"timestamp\"}}},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deployments\":{\"shape\":\"S49\"},\"nextToken\":{}}}},\"ListGitHubAccountTokenNames\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tokenNameList\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListOnPremisesInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"registrationStatus\":{},\"tagFilters\":{\"shape\":\"S1h\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceNames\":{\"shape\":\"S6\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S2\"},\"NextToken\":{}}}},\"PutLifecycleEventHookExecutionStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"lifecycleEventHookExecutionId\":{},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"lifecycleEventHookExecutionId\":{}}}},\"RegisterApplicationRevision\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"revision\"],\"members\":{\"applicationName\":{},\"description\":{},\"revision\":{\"shape\":\"Sb\"}}}},\"RegisterOnPremisesInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{},\"iamSessionArn\":{},\"iamUserArn\":{}}}},\"RemoveTagsFromOnPremisesInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"tags\",\"instanceNames\"],\"members\":{\"tags\":{\"shape\":\"S2\"},\"instanceNames\":{\"shape\":\"S6\"}}}},\"SkipWaitTimeForInstanceTermination\":{\"input\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{}}},\"deprecated\":true,\"deprecatedMessage\":\"This operation is deprecated, use ContinueDeployment with DeploymentWaitType instead.\"},\"StopDeployment\":{\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\"],\"members\":{\"deploymentId\":{},\"autoRollbackEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"statusMessage\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApplication\":{\"input\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"newApplicationName\":{}}}},\"UpdateDeploymentGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"currentDeploymentGroupName\"],\"members\":{\"applicationName\":{},\"currentDeploymentGroupName\":{},\"newDeploymentGroupName\":{},\"deploymentConfigName\":{},\"ec2TagFilters\":{\"shape\":\"S1e\"},\"onPremisesInstanceTagFilters\":{\"shape\":\"S1h\"},\"autoScalingGroups\":{\"shape\":\"S4k\"},\"serviceRoleArn\":{},\"triggerConfigurations\":{\"shape\":\"S1p\"},\"alarmConfiguration\":{\"shape\":\"S1v\"},\"autoRollbackConfiguration\":{\"shape\":\"S1z\"},\"outdatedInstancesStrategy\":{},\"deploymentStyle\":{\"shape\":\"S22\"},\"blueGreenDeploymentConfiguration\":{\"shape\":\"S26\"},\"loadBalancerInfo\":{\"shape\":\"S2e\"},\"ec2TagSet\":{\"shape\":\"S2t\"},\"ecsServices\":{\"shape\":\"S2x\"},\"onPremisesTagSet\":{\"shape\":\"S2v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"hooksNotCleanedUp\":{\"shape\":\"S1k\"}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S6\":{\"type\":\"list\",\"member\":{}},\"Sa\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}},\"Sb\":{\"type\":\"structure\",\"members\":{\"revisionType\":{},\"s3Location\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"key\":{},\"bundleType\":{},\"version\":{},\"eTag\":{}}},\"gitHubLocation\":{\"type\":\"structure\",\"members\":{\"repository\":{},\"commitId\":{}}},\"string\":{\"type\":\"structure\",\"members\":{\"content\":{},\"sha256\":{}},\"deprecated\":true,\"deprecatedMessage\":\"RawString and String revision type are deprecated, use AppSpecContent type instead.\"},\"appSpecContent\":{\"type\":\"structure\",\"members\":{\"content\":{},\"sha256\":{}}}}},\"Su\":{\"type\":\"structure\",\"members\":{\"description\":{},\"deploymentGroups\":{\"shape\":\"Sw\"},\"firstUsedTime\":{\"type\":\"timestamp\"},\"lastUsedTime\":{\"type\":\"timestamp\"},\"registerTime\":{\"type\":\"timestamp\"}}},\"Sw\":{\"type\":\"list\",\"member\":{}},\"S10\":{\"type\":\"list\",\"member\":{}},\"S13\":{\"type\":\"structure\",\"members\":{\"applicationId\":{},\"applicationName\":{},\"createTime\":{\"type\":\"timestamp\"},\"linkedToGitHub\":{\"type\":\"boolean\"},\"gitHubAccountName\":{},\"computePlatform\":{}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"deploymentGroupId\":{},\"deploymentGroupName\":{},\"deploymentConfigName\":{},\"ec2TagFilters\":{\"shape\":\"S1e\"},\"onPremisesInstanceTagFilters\":{\"shape\":\"S1h\"},\"autoScalingGroups\":{\"shape\":\"S1k\"},\"serviceRoleArn\":{},\"targetRevision\":{\"shape\":\"Sb\"},\"triggerConfigurations\":{\"shape\":\"S1p\"},\"alarmConfiguration\":{\"shape\":\"S1v\"},\"autoRollbackConfiguration\":{\"shape\":\"S1z\"},\"deploymentStyle\":{\"shape\":\"S22\"},\"outdatedInstancesStrategy\":{},\"blueGreenDeploymentConfiguration\":{\"shape\":\"S26\"},\"loadBalancerInfo\":{\"shape\":\"S2e\"},\"lastSuccessfulDeployment\":{\"shape\":\"S2q\"},\"lastAttemptedDeployment\":{\"shape\":\"S2q\"},\"ec2TagSet\":{\"shape\":\"S2t\"},\"onPremisesTagSet\":{\"shape\":\"S2v\"},\"computePlatform\":{},\"ecsServices\":{\"shape\":\"S2x\"}}},\"S1e\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Type\":{}}}},\"S1h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Type\":{}}}},\"S1k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"hook\":{}}}},\"S1p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"triggerName\":{},\"triggerTargetArn\":{},\"triggerEvents\":{\"type\":\"list\",\"member\":{}}}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"enabled\":{\"type\":\"boolean\"},\"ignorePollAlarmFailure\":{\"type\":\"boolean\"},\"alarms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{}}}}}},\"S1z\":{\"type\":\"structure\",\"members\":{\"enabled\":{\"type\":\"boolean\"},\"events\":{\"type\":\"list\",\"member\":{}}}},\"S22\":{\"type\":\"structure\",\"members\":{\"deploymentType\":{},\"deploymentOption\":{}}},\"S26\":{\"type\":\"structure\",\"members\":{\"terminateBlueInstancesOnDeploymentSuccess\":{\"type\":\"structure\",\"members\":{\"action\":{},\"terminationWaitTimeInMinutes\":{\"type\":\"integer\"}}},\"deploymentReadyOption\":{\"type\":\"structure\",\"members\":{\"actionOnTimeout\":{},\"waitTimeInMinutes\":{\"type\":\"integer\"}}},\"greenFleetProvisioningOption\":{\"type\":\"structure\",\"members\":{\"action\":{}}}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"elbInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{}}}},\"targetGroupInfoList\":{\"shape\":\"S2i\"},\"targetGroupPairInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"targetGroups\":{\"shape\":\"S2i\"},\"prodTrafficRoute\":{\"shape\":\"S2n\"},\"testTrafficRoute\":{\"shape\":\"S2n\"}}}}}},\"S2i\":{\"type\":\"list\",\"member\":{\"shape\":\"S2j\"}},\"S2j\":{\"type\":\"structure\",\"members\":{\"name\":{}}},\"S2n\":{\"type\":\"structure\",\"members\":{\"listenerArns\":{\"type\":\"list\",\"member\":{}}}},\"S2q\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"status\":{},\"endTime\":{\"type\":\"timestamp\"},\"createTime\":{\"type\":\"timestamp\"}}},\"S2t\":{\"type\":\"structure\",\"members\":{\"ec2TagSetList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}}}},\"S2v\":{\"type\":\"structure\",\"members\":{\"onPremisesTagSetList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1h\"}}}},\"S2x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serviceName\":{},\"clusterName\":{}}}},\"S32\":{\"type\":\"list\",\"member\":{}},\"S36\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"instanceId\":{},\"status\":{\"shape\":\"S37\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"lifecycleEvents\":{\"shape\":\"S38\"},\"instanceType\":{}},\"deprecated\":true,\"deprecatedMessage\":\"InstanceSummary is deprecated, use DeploymentTarget instead.\"},\"S37\":{\"type\":\"string\",\"deprecated\":true,\"deprecatedMessage\":\"InstanceStatus is deprecated, use TargetStatus instead.\"},\"S38\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"lifecycleEventName\":{},\"diagnostics\":{\"type\":\"structure\",\"members\":{\"errorCode\":{},\"scriptName\":{},\"message\":{},\"logTail\":{}}},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"status\":{}}}},\"S3j\":{\"type\":\"list\",\"member\":{}},\"S3n\":{\"type\":\"structure\",\"members\":{\"deploymentTargetType\":{},\"instanceTarget\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"targetId\":{},\"targetArn\":{},\"status\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"lifecycleEvents\":{\"shape\":\"S38\"},\"instanceLabel\":{}}},\"lambdaTarget\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"targetId\":{},\"targetArn\":{},\"status\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"lifecycleEvents\":{\"shape\":\"S38\"},\"lambdaFunctionInfo\":{\"type\":\"structure\",\"members\":{\"functionName\":{},\"functionAlias\":{},\"currentVersion\":{},\"targetVersion\":{},\"targetVersionWeight\":{\"type\":\"double\"}}}}},\"ecsTarget\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"targetId\":{},\"targetArn\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"lifecycleEvents\":{\"shape\":\"S38\"},\"status\":{},\"taskSetsInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"identifer\":{},\"desiredCount\":{\"type\":\"long\"},\"pendingCount\":{\"type\":\"long\"},\"runningCount\":{\"type\":\"long\"},\"status\":{},\"trafficWeight\":{\"type\":\"double\"},\"targetGroup\":{\"shape\":\"S2j\"},\"taskSetLabel\":{}}}}}},\"cloudFormationTarget\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"targetId\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"lifecycleEvents\":{\"shape\":\"S38\"},\"status\":{},\"resourceType\":{},\"targetVersionWeight\":{\"type\":\"double\"}}}}},\"S49\":{\"type\":\"list\",\"member\":{}},\"S4c\":{\"type\":\"structure\",\"members\":{\"applicationName\":{},\"deploymentGroupName\":{},\"deploymentConfigName\":{},\"deploymentId\":{},\"previousRevision\":{\"shape\":\"Sb\"},\"revision\":{\"shape\":\"Sb\"},\"status\":{},\"errorInformation\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{}}},\"createTime\":{\"type\":\"timestamp\"},\"startTime\":{\"type\":\"timestamp\"},\"completeTime\":{\"type\":\"timestamp\"},\"deploymentOverview\":{\"type\":\"structure\",\"members\":{\"Pending\":{\"type\":\"long\"},\"InProgress\":{\"type\":\"long\"},\"Succeeded\":{\"type\":\"long\"},\"Failed\":{\"type\":\"long\"},\"Skipped\":{\"type\":\"long\"},\"Ready\":{\"type\":\"long\"}}},\"description\":{},\"creator\":{},\"ignoreApplicationStopFailures\":{\"type\":\"boolean\"},\"autoRollbackConfiguration\":{\"shape\":\"S1z\"},\"updateOutdatedInstancesOnly\":{\"type\":\"boolean\"},\"rollbackInfo\":{\"type\":\"structure\",\"members\":{\"rollbackDeploymentId\":{},\"rollbackTriggeringDeploymentId\":{},\"rollbackMessage\":{}}},\"deploymentStyle\":{\"shape\":\"S22\"},\"targetInstances\":{\"shape\":\"S4j\"},\"instanceTerminationWaitTimeStarted\":{\"type\":\"boolean\"},\"blueGreenDeploymentConfiguration\":{\"shape\":\"S26\"},\"loadBalancerInfo\":{\"shape\":\"S2e\"},\"additionalDeploymentStatusInfo\":{\"type\":\"string\",\"deprecated\":true,\"deprecatedMessage\":\"AdditionalDeploymentStatusInfo is deprecated, use DeploymentStatusMessageList instead.\"},\"fileExistsBehavior\":{},\"deploymentStatusMessages\":{\"type\":\"list\",\"member\":{}},\"computePlatform\":{},\"externalId\":{},\"relatedDeployments\":{\"type\":\"structure\",\"members\":{\"autoUpdateOutdatedInstancesRootDeploymentId\":{},\"autoUpdateOutdatedInstancesDeploymentIds\":{\"shape\":\"S49\"}}}}},\"S4j\":{\"type\":\"structure\",\"members\":{\"tagFilters\":{\"shape\":\"S1e\"},\"autoScalingGroups\":{\"shape\":\"S4k\"},\"ec2TagSet\":{\"shape\":\"S2t\"}}},\"S4k\":{\"type\":\"list\",\"member\":{}},\"S4t\":{\"type\":\"structure\",\"members\":{\"instanceName\":{},\"iamSessionArn\":{},\"iamUserArn\":{},\"instanceArn\":{},\"registerTime\":{\"type\":\"timestamp\"},\"deregisterTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S2\"}}},\"S54\":{\"type\":\"structure\",\"members\":{\"type\":{},\"value\":{\"type\":\"integer\"}}},\"S57\":{\"type\":\"structure\",\"members\":{\"type\":{},\"timeBasedCanary\":{\"type\":\"structure\",\"members\":{\"canaryPercentage\":{\"type\":\"integer\"},\"canaryInterval\":{\"type\":\"integer\"}}},\"timeBasedLinear\":{\"type\":\"structure\",\"members\":{\"linearPercentage\":{\"type\":\"integer\"},\"linearInterval\":{\"type\":\"integer\"}}}}}}}");

/***/ }),

/***/ 63203:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplicationRevisions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"revisions\"},\"ListApplications\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"applications\"},\"ListDeploymentConfigs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"deploymentConfigsList\"},\"ListDeploymentGroups\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"deploymentGroups\"},\"ListDeploymentInstances\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"instancesList\"},\"ListDeployments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"deployments\"}}}");

/***/ }),

/***/ 56338:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DeploymentSuccessful\":{\"delay\":15,\"operation\":\"GetDeployment\",\"maxAttempts\":120,\"acceptors\":[{\"expected\":\"Succeeded\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"deploymentInfo.status\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"deploymentInfo.status\"},{\"expected\":\"Stopped\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"deploymentInfo.status\"}]}}}");

/***/ }),

/***/ 16420:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-09-19\",\"endpointPrefix\":\"codeguru-reviewer\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"CodeGuruReviewer\",\"serviceFullName\":\"Amazon CodeGuru Reviewer\",\"serviceId\":\"CodeGuru Reviewer\",\"signatureVersion\":\"v4\",\"signingName\":\"codeguru-reviewer\",\"uid\":\"codeguru-reviewer-2019-09-19\"},\"operations\":{\"AssociateRepository\":{\"http\":{\"requestUri\":\"/associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"Repository\"],\"members\":{\"Repository\":{\"type\":\"structure\",\"members\":{\"CodeCommit\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"Bitbucket\":{\"shape\":\"S5\"},\"GitHubEnterpriseServer\":{\"shape\":\"S5\"}}},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RepositoryAssociation\":{\"shape\":\"Sd\"},\"Tags\":{\"shape\":\"S9\"}}}},\"CreateCodeReview\":{\"http\":{\"requestUri\":\"/codereviews\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RepositoryAssociationArn\",\"Type\"],\"members\":{\"Name\":{},\"RepositoryAssociationArn\":{},\"Type\":{\"type\":\"structure\",\"required\":[\"RepositoryAnalysis\"],\"members\":{\"RepositoryAnalysis\":{\"type\":\"structure\",\"required\":[\"RepositoryHead\"],\"members\":{\"RepositoryHead\":{\"shape\":\"Sp\"}}}}},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeReview\":{\"shape\":\"Ss\"}}}},\"DescribeCodeReview\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/codereviews/{CodeReviewArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CodeReviewArn\"],\"members\":{\"CodeReviewArn\":{\"location\":\"uri\",\"locationName\":\"CodeReviewArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeReview\":{\"shape\":\"Ss\"}}}},\"DescribeRecommendationFeedback\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/feedback/{CodeReviewArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CodeReviewArn\",\"RecommendationId\"],\"members\":{\"CodeReviewArn\":{\"location\":\"uri\",\"locationName\":\"CodeReviewArn\"},\"RecommendationId\":{\"location\":\"querystring\",\"locationName\":\"RecommendationId\"},\"UserId\":{\"location\":\"querystring\",\"locationName\":\"UserId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecommendationFeedback\":{\"type\":\"structure\",\"members\":{\"CodeReviewArn\":{},\"RecommendationId\":{},\"Reactions\":{\"shape\":\"S19\"},\"UserId\":{},\"CreatedTimeStamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimeStamp\":{\"type\":\"timestamp\"}}}}}},\"DescribeRepositoryAssociation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/associations/{AssociationArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AssociationArn\"],\"members\":{\"AssociationArn\":{\"location\":\"uri\",\"locationName\":\"AssociationArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RepositoryAssociation\":{\"shape\":\"Sd\"},\"Tags\":{\"shape\":\"S9\"}}}},\"DisassociateRepository\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/associations/{AssociationArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AssociationArn\"],\"members\":{\"AssociationArn\":{\"location\":\"uri\",\"locationName\":\"AssociationArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RepositoryAssociation\":{\"shape\":\"Sd\"},\"Tags\":{\"shape\":\"S9\"}}}},\"ListCodeReviews\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/codereviews\"},\"input\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"ProviderTypes\":{\"shape\":\"S1g\",\"location\":\"querystring\",\"locationName\":\"ProviderTypes\"},\"States\":{\"location\":\"querystring\",\"locationName\":\"States\",\"type\":\"list\",\"member\":{}},\"RepositoryNames\":{\"location\":\"querystring\",\"locationName\":\"RepositoryNames\",\"type\":\"list\",\"member\":{}},\"Type\":{\"location\":\"querystring\",\"locationName\":\"Type\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeReviewSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CodeReviewArn\":{},\"RepositoryName\":{},\"Owner\":{},\"ProviderType\":{},\"State\":{},\"CreatedTimeStamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimeStamp\":{\"type\":\"timestamp\"},\"Type\":{},\"PullRequestId\":{},\"MetricsSummary\":{\"type\":\"structure\",\"members\":{\"MeteredLinesOfCodeCount\":{\"type\":\"long\"},\"FindingsCount\":{\"type\":\"long\"}}}}}},\"NextToken\":{}}}},\"ListRecommendationFeedback\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/feedback/{CodeReviewArn}/RecommendationFeedback\"},\"input\":{\"type\":\"structure\",\"required\":[\"CodeReviewArn\"],\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"CodeReviewArn\":{\"location\":\"uri\",\"locationName\":\"CodeReviewArn\"},\"UserIds\":{\"location\":\"querystring\",\"locationName\":\"UserIds\",\"type\":\"list\",\"member\":{}},\"RecommendationIds\":{\"location\":\"querystring\",\"locationName\":\"RecommendationIds\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecommendationFeedbackSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RecommendationId\":{},\"Reactions\":{\"shape\":\"S19\"},\"UserId\":{}}}},\"NextToken\":{}}}},\"ListRecommendations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/codereviews/{CodeReviewArn}/Recommendations\"},\"input\":{\"type\":\"structure\",\"required\":[\"CodeReviewArn\"],\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"CodeReviewArn\":{\"location\":\"uri\",\"locationName\":\"CodeReviewArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecommendationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FilePath\":{},\"RecommendationId\":{},\"StartLine\":{\"type\":\"integer\"},\"EndLine\":{\"type\":\"integer\"},\"Description\":{}}}},\"NextToken\":{}}}},\"ListRepositoryAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/associations\"},\"input\":{\"type\":\"structure\",\"members\":{\"ProviderTypes\":{\"shape\":\"S1g\",\"location\":\"querystring\",\"locationName\":\"ProviderType\"},\"States\":{\"location\":\"querystring\",\"locationName\":\"State\",\"type\":\"list\",\"member\":{}},\"Names\":{\"location\":\"querystring\",\"locationName\":\"Name\",\"type\":\"list\",\"member\":{}},\"Owners\":{\"location\":\"querystring\",\"locationName\":\"Owner\",\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RepositoryAssociationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationArn\":{},\"ConnectionArn\":{},\"LastUpdatedTimeStamp\":{\"type\":\"timestamp\"},\"AssociationId\":{},\"Name\":{},\"Owner\":{},\"ProviderType\":{},\"State\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S9\"}}}},\"PutRecommendationFeedback\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/feedback\"},\"input\":{\"type\":\"structure\",\"required\":[\"CodeReviewArn\",\"RecommendationId\",\"Reactions\"],\"members\":{\"CodeReviewArn\":{},\"RecommendationId\":{},\"Reactions\":{\"shape\":\"S19\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"Tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"TagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"Name\",\"ConnectionArn\",\"Owner\"],\"members\":{\"Name\":{},\"ConnectionArn\":{},\"Owner\":{}}},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sd\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"AssociationArn\":{},\"ConnectionArn\":{},\"Name\":{},\"Owner\":{},\"ProviderType\":{},\"State\":{},\"StateReason\":{},\"LastUpdatedTimeStamp\":{\"type\":\"timestamp\"},\"CreatedTimeStamp\":{\"type\":\"timestamp\"}}},\"Sp\":{\"type\":\"structure\",\"required\":[\"BranchName\"],\"members\":{\"BranchName\":{}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CodeReviewArn\":{},\"RepositoryName\":{},\"Owner\":{},\"ProviderType\":{},\"State\":{},\"StateReason\":{},\"CreatedTimeStamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimeStamp\":{\"type\":\"timestamp\"},\"Type\":{},\"PullRequestId\":{},\"SourceCodeType\":{\"type\":\"structure\",\"members\":{\"CommitDiff\":{\"type\":\"structure\",\"members\":{\"SourceCommit\":{},\"DestinationCommit\":{}}},\"RepositoryHead\":{\"shape\":\"Sp\"}}},\"AssociationArn\":{},\"Metrics\":{\"type\":\"structure\",\"members\":{\"MeteredLinesOfCodeCount\":{\"type\":\"long\"},\"FindingsCount\":{\"type\":\"long\"}}}}},\"S19\":{\"type\":\"list\",\"member\":{}},\"S1g\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 89571:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCodeReviews\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRecommendationFeedback\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRecommendations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRepositoryAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"RepositoryAssociationSummaries\"}}}");

/***/ }),

/***/ 55790:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-07-18\",\"endpointPrefix\":\"codeguru-profiler\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon CodeGuru Profiler\",\"serviceId\":\"CodeGuruProfiler\",\"signatureVersion\":\"v4\",\"signingName\":\"codeguru-profiler\",\"uid\":\"codeguruprofiler-2019-07-18\"},\"operations\":{\"AddNotificationChannels\":{\"http\":{\"requestUri\":\"/profilingGroups/{profilingGroupName}/notificationConfiguration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"channels\",\"profilingGroupName\"],\"members\":{\"channels\":{\"shape\":\"S2\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"notificationConfiguration\":{\"shape\":\"Sa\"}}}},\"BatchGetFrameMetricData\":{\"http\":{\"requestUri\":\"/profilingGroups/{profilingGroupName}/frames/-/metrics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"endTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"endTime\"},\"frameMetrics\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}},\"period\":{\"location\":\"querystring\",\"locationName\":\"period\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"startTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"startTime\"},\"targetResolution\":{\"location\":\"querystring\",\"locationName\":\"targetResolution\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"endTime\",\"endTimes\",\"frameMetricData\",\"resolution\",\"startTime\",\"unprocessedEndTimes\"],\"members\":{\"endTime\":{\"shape\":\"Sc\"},\"endTimes\":{\"shape\":\"Sl\"},\"frameMetricData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"frameMetric\",\"values\"],\"members\":{\"frameMetric\":{\"shape\":\"Se\"},\"values\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}}},\"resolution\":{},\"startTime\":{\"shape\":\"Sc\"},\"unprocessedEndTimes\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Sl\"}}}}},\"ConfigureAgent\":{\"http\":{\"requestUri\":\"/profilingGroups/{profilingGroupName}/configureAgent\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"fleetInstanceId\":{},\"metadata\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"configuration\"],\"members\":{\"configuration\":{\"type\":\"structure\",\"required\":[\"periodInSeconds\",\"shouldProfile\"],\"members\":{\"agentParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"periodInSeconds\":{\"type\":\"integer\"},\"shouldProfile\":{\"type\":\"boolean\"}}}},\"payload\":\"configuration\"}},\"CreateProfilingGroup\":{\"http\":{\"requestUri\":\"/profilingGroups\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"clientToken\",\"profilingGroupName\"],\"members\":{\"agentOrchestrationConfig\":{\"shape\":\"S13\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"},\"computePlatform\":{},\"profilingGroupName\":{},\"tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"profilingGroup\"],\"members\":{\"profilingGroup\":{\"shape\":\"S18\"}},\"payload\":\"profilingGroup\"},\"idempotent\":true},\"DeleteProfilingGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/profilingGroups/{profilingGroupName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DescribeProfilingGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/profilingGroups/{profilingGroupName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"profilingGroup\"],\"members\":{\"profilingGroup\":{\"shape\":\"S18\"}},\"payload\":\"profilingGroup\"}},\"GetFindingsReportAccountSummary\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/internal/findingsReports\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"dailyReportsOnly\":{\"location\":\"querystring\",\"locationName\":\"dailyReportsOnly\",\"type\":\"boolean\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"reportSummaries\"],\"members\":{\"nextToken\":{},\"reportSummaries\":{\"shape\":\"S1k\"}}}},\"GetNotificationConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/notificationConfiguration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"notificationConfiguration\"],\"members\":{\"notificationConfiguration\":{\"shape\":\"Sa\"}}}},\"GetPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"policy\",\"revisionId\"],\"members\":{\"policy\":{},\"revisionId\":{}}}},\"GetProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/profile\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"profilingGroupName\"],\"members\":{\"accept\":{\"location\":\"header\",\"locationName\":\"Accept\"},\"endTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"endTime\"},\"maxDepth\":{\"location\":\"querystring\",\"locationName\":\"maxDepth\",\"type\":\"integer\"},\"period\":{\"location\":\"querystring\",\"locationName\":\"period\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"startTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"startTime\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"contentType\",\"profile\"],\"members\":{\"contentEncoding\":{\"location\":\"header\",\"locationName\":\"Content-Encoding\"},\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"profile\":{\"type\":\"blob\"}},\"payload\":\"profile\"}},\"GetRecommendations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/internal/profilingGroups/{profilingGroupName}/recommendations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"endTime\",\"profilingGroupName\",\"startTime\"],\"members\":{\"endTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"endTime\"},\"locale\":{\"location\":\"querystring\",\"locationName\":\"locale\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"startTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"startTime\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"anomalies\",\"profileEndTime\",\"profileStartTime\",\"profilingGroupName\",\"recommendations\"],\"members\":{\"anomalies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"instances\",\"metric\",\"reason\"],\"members\":{\"instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"startTime\"],\"members\":{\"endTime\":{\"shape\":\"Sc\"},\"id\":{},\"startTime\":{\"shape\":\"Sc\"},\"userFeedback\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{}}}}}},\"metric\":{\"type\":\"structure\",\"required\":[\"frameName\",\"threadStates\",\"type\"],\"members\":{\"frameName\":{},\"threadStates\":{\"shape\":\"S26\"},\"type\":{}}},\"reason\":{}}}},\"profileEndTime\":{\"shape\":\"Sc\"},\"profileStartTime\":{\"shape\":\"Sc\"},\"profilingGroupName\":{},\"recommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"allMatchesCount\",\"allMatchesSum\",\"endTime\",\"pattern\",\"startTime\",\"topMatches\"],\"members\":{\"allMatchesCount\":{\"type\":\"integer\"},\"allMatchesSum\":{\"type\":\"double\"},\"endTime\":{\"shape\":\"Sc\"},\"pattern\":{\"type\":\"structure\",\"members\":{\"countersToAggregate\":{\"shape\":\"S26\"},\"description\":{},\"id\":{},\"name\":{},\"resolutionSteps\":{},\"targetFrames\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{}}},\"thresholdPercent\":{\"type\":\"double\"}}},\"startTime\":{\"shape\":\"Sc\"},\"topMatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"frameAddress\":{},\"targetFramesIndex\":{\"type\":\"integer\"},\"thresholdBreachValue\":{\"type\":\"double\"}}}}}}}}}},\"ListFindingsReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/internal/profilingGroups/{profilingGroupName}/findingsReports\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"endTime\",\"profilingGroupName\",\"startTime\"],\"members\":{\"dailyReportsOnly\":{\"location\":\"querystring\",\"locationName\":\"dailyReportsOnly\",\"type\":\"boolean\"},\"endTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"endTime\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"startTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"startTime\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"findingsReportSummaries\"],\"members\":{\"findingsReportSummaries\":{\"shape\":\"S1k\"},\"nextToken\":{}}}},\"ListProfileTimes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/profileTimes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"endTime\",\"period\",\"profilingGroupName\",\"startTime\"],\"members\":{\"endTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"endTime\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"orderBy\":{\"location\":\"querystring\",\"locationName\":\"orderBy\"},\"period\":{\"location\":\"querystring\",\"locationName\":\"period\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"startTime\":{\"shape\":\"Sc\",\"location\":\"querystring\",\"locationName\":\"startTime\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"profileTimes\"],\"members\":{\"nextToken\":{},\"profileTimes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"start\":{\"shape\":\"Sc\"}}}}}}},\"ListProfilingGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/profilingGroups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"includeDescription\":{\"location\":\"querystring\",\"locationName\":\"includeDescription\",\"type\":\"boolean\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"profilingGroupNames\"],\"members\":{\"nextToken\":{},\"profilingGroupNames\":{\"type\":\"list\",\"member\":{}},\"profilingGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\"}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S16\"}}}},\"PostAgentProfile\":{\"http\":{\"requestUri\":\"/profilingGroups/{profilingGroupName}/agentProfile\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"agentProfile\",\"contentType\",\"profilingGroupName\"],\"members\":{\"agentProfile\":{\"type\":\"blob\"},\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"profileToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"profileToken\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}},\"payload\":\"agentProfile\"},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutPermission\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/policy/{actionGroup}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"actionGroup\",\"principals\",\"profilingGroupName\"],\"members\":{\"actionGroup\":{\"location\":\"uri\",\"locationName\":\"actionGroup\"},\"principals\":{\"type\":\"list\",\"member\":{}},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"revisionId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"policy\",\"revisionId\"],\"members\":{\"policy\":{},\"revisionId\":{}}},\"idempotent\":true},\"RemoveNotificationChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/notificationConfiguration/{channelId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"channelId\",\"profilingGroupName\"],\"members\":{\"channelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"notificationConfiguration\":{\"shape\":\"Sa\"}}},\"idempotent\":true},\"RemovePermission\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/profilingGroups/{profilingGroupName}/policy/{actionGroup}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"actionGroup\",\"profilingGroupName\",\"revisionId\"],\"members\":{\"actionGroup\":{\"location\":\"uri\",\"locationName\":\"actionGroup\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"revisionId\":{\"location\":\"querystring\",\"locationName\":\"revisionId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"policy\",\"revisionId\"],\"members\":{\"policy\":{},\"revisionId\":{}}}},\"SubmitFeedback\":{\"http\":{\"requestUri\":\"/internal/profilingGroups/{profilingGroupName}/anomalies/{anomalyInstanceId}/feedback\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"anomalyInstanceId\",\"profilingGroupName\",\"type\"],\"members\":{\"anomalyInstanceId\":{\"location\":\"uri\",\"locationName\":\"anomalyInstanceId\"},\"comment\":{},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"},\"type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateProfilingGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/profilingGroups/{profilingGroupName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"agentOrchestrationConfig\",\"profilingGroupName\"],\"members\":{\"agentOrchestrationConfig\":{\"shape\":\"S13\"},\"profilingGroupName\":{\"location\":\"uri\",\"locationName\":\"profilingGroupName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"profilingGroup\"],\"members\":{\"profilingGroup\":{\"shape\":\"S18\"}},\"payload\":\"profilingGroup\"},\"idempotent\":true}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"eventPublishers\",\"uri\"],\"members\":{\"eventPublishers\":{\"type\":\"list\",\"member\":{}},\"id\":{},\"uri\":{}}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"channels\":{\"shape\":\"S2\"}}},\"Sc\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Se\":{\"type\":\"structure\",\"required\":[\"frameName\",\"threadStates\",\"type\"],\"members\":{\"frameName\":{},\"threadStates\":{\"type\":\"list\",\"member\":{}},\"type\":{}}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{\"shape\":\"Sc\"}}}},\"S13\":{\"type\":\"structure\",\"required\":[\"profilingEnabled\"],\"members\":{\"profilingEnabled\":{\"type\":\"boolean\"}}},\"S16\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S18\":{\"type\":\"structure\",\"members\":{\"agentOrchestrationConfig\":{\"shape\":\"S13\"},\"arn\":{},\"computePlatform\":{},\"createdAt\":{\"shape\":\"Sc\"},\"name\":{},\"profilingStatus\":{\"type\":\"structure\",\"members\":{\"latestAgentOrchestratedAt\":{\"shape\":\"Sc\"},\"latestAgentProfileReportedAt\":{\"shape\":\"Sc\"},\"latestAggregatedProfile\":{\"type\":\"structure\",\"members\":{\"period\":{},\"start\":{\"shape\":\"Sc\"}}}}},\"tags\":{\"shape\":\"S16\"},\"updatedAt\":{\"shape\":\"Sc\"}}},\"S1k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"profileEndTime\":{\"shape\":\"Sc\"},\"profileStartTime\":{\"shape\":\"Sc\"},\"profilingGroupName\":{},\"totalNumberOfFindings\":{\"type\":\"integer\"}}}},\"S26\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 14789:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetFindingsReportAccountSummary\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListFindingsReports\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListProfileTimes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"profileTimes\"},\"ListProfilingGroups\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 92486:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-07-09\",\"endpointPrefix\":\"codepipeline\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CodePipeline\",\"serviceFullName\":\"AWS CodePipeline\",\"serviceId\":\"CodePipeline\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CodePipeline_20150709\",\"uid\":\"codepipeline-2015-07-09\"},\"operations\":{\"AcknowledgeJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"nonce\"],\"members\":{\"jobId\":{},\"nonce\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"AcknowledgeThirdPartyJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"nonce\",\"clientToken\"],\"members\":{\"jobId\":{},\"nonce\":{},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"CreateCustomActionType\":{\"input\":{\"type\":\"structure\",\"required\":[\"category\",\"provider\",\"version\",\"inputArtifactDetails\",\"outputArtifactDetails\"],\"members\":{\"category\":{},\"provider\":{},\"version\":{},\"settings\":{\"shape\":\"Se\"},\"configurationProperties\":{\"shape\":\"Sh\"},\"inputArtifactDetails\":{\"shape\":\"Sn\"},\"outputArtifactDetails\":{\"shape\":\"Sn\"},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"actionType\"],\"members\":{\"actionType\":{\"shape\":\"Sv\"},\"tags\":{\"shape\":\"Sq\"}}}},\"CreatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipeline\"],\"members\":{\"pipeline\":{\"shape\":\"Sz\"},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipeline\":{\"shape\":\"Sz\"},\"tags\":{\"shape\":\"Sq\"}}}},\"DeleteCustomActionType\":{\"input\":{\"type\":\"structure\",\"required\":[\"category\",\"provider\",\"version\"],\"members\":{\"category\":{},\"provider\":{},\"version\":{}}}},\"DeletePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"DeleteWebhook\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterWebhookWithThirdParty\":{\"input\":{\"type\":\"structure\",\"members\":{\"webhookName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableStageTransition\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"stageName\",\"transitionType\",\"reason\"],\"members\":{\"pipelineName\":{},\"stageName\":{},\"transitionType\":{},\"reason\":{}}}},\"EnableStageTransition\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"stageName\",\"transitionType\"],\"members\":{\"pipelineName\":{},\"stageName\":{},\"transitionType\":{}}}},\"GetActionType\":{\"input\":{\"type\":\"structure\",\"required\":[\"category\",\"owner\",\"provider\",\"version\"],\"members\":{\"category\":{},\"owner\":{},\"provider\":{},\"version\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionType\":{\"shape\":\"S29\"}}}},\"GetJobDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobDetails\":{\"type\":\"structure\",\"members\":{\"id\":{},\"data\":{\"shape\":\"S31\"},\"accountId\":{}}}}}},\"GetPipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"version\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipeline\":{\"shape\":\"Sz\"},\"metadata\":{\"type\":\"structure\",\"members\":{\"pipelineArn\":{},\"created\":{\"type\":\"timestamp\"},\"updated\":{\"type\":\"timestamp\"}}}}}},\"GetPipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"pipelineExecutionId\"],\"members\":{\"pipelineName\":{},\"pipelineExecutionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineExecution\":{\"type\":\"structure\",\"members\":{\"pipelineName\":{},\"pipelineVersion\":{\"type\":\"integer\"},\"pipelineExecutionId\":{},\"status\":{},\"statusSummary\":{},\"artifactRevisions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"revisionId\":{},\"revisionChangeIdentifier\":{},\"revisionSummary\":{},\"created\":{\"type\":\"timestamp\"},\"revisionUrl\":{}}}}}}}}},\"GetPipelineState\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineName\":{},\"pipelineVersion\":{\"type\":\"integer\"},\"stageStates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"stageName\":{},\"inboundExecution\":{\"shape\":\"S43\"},\"inboundTransitionState\":{\"type\":\"structure\",\"members\":{\"enabled\":{\"type\":\"boolean\"},\"lastChangedBy\":{},\"lastChangedAt\":{\"type\":\"timestamp\"},\"disabledReason\":{}}},\"actionStates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"actionName\":{},\"currentRevision\":{\"shape\":\"S4b\"},\"latestExecution\":{\"type\":\"structure\",\"members\":{\"actionExecutionId\":{},\"status\":{},\"summary\":{},\"lastStatusChange\":{\"type\":\"timestamp\"},\"token\":{},\"lastUpdatedBy\":{},\"externalExecutionId\":{},\"externalExecutionUrl\":{},\"percentComplete\":{\"type\":\"integer\"},\"errorDetails\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{}}}}},\"entityUrl\":{},\"revisionUrl\":{}}}},\"latestExecution\":{\"shape\":\"S43\"}}}},\"created\":{\"type\":\"timestamp\"},\"updated\":{\"type\":\"timestamp\"}}}},\"GetThirdPartyJobDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"clientToken\"],\"members\":{\"jobId\":{},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobDetails\":{\"type\":\"structure\",\"members\":{\"id\":{},\"data\":{\"type\":\"structure\",\"members\":{\"actionTypeId\":{\"shape\":\"Sw\"},\"actionConfiguration\":{\"shape\":\"S32\"},\"pipelineContext\":{\"shape\":\"S33\"},\"inputArtifacts\":{\"shape\":\"S39\"},\"outputArtifacts\":{\"shape\":\"S39\"},\"artifactCredentials\":{\"shape\":\"S3h\"},\"continuationToken\":{},\"encryptionKey\":{\"shape\":\"S15\"}}},\"nonce\":{}}}}}},\"ListActionExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\"],\"members\":{\"pipelineName\":{},\"filter\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionId\":{}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionExecutionDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionId\":{},\"actionExecutionId\":{},\"pipelineVersion\":{\"type\":\"integer\"},\"stageName\":{},\"actionName\":{},\"startTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"status\":{},\"input\":{\"type\":\"structure\",\"members\":{\"actionTypeId\":{\"shape\":\"Sw\"},\"configuration\":{\"shape\":\"S1l\"},\"resolvedConfiguration\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"roleArn\":{},\"region\":{},\"inputArtifacts\":{\"shape\":\"S50\"},\"namespace\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"outputArtifacts\":{\"shape\":\"S50\"},\"executionResult\":{\"type\":\"structure\",\"members\":{\"externalExecutionId\":{},\"externalExecutionSummary\":{},\"externalExecutionUrl\":{}}},\"outputVariables\":{\"shape\":\"S59\"}}}}}},\"nextToken\":{}}}},\"ListActionTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"actionOwnerFilter\":{},\"nextToken\":{},\"regionFilter\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"actionTypes\"],\"members\":{\"actionTypes\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"nextToken\":{}}}},\"ListPipelineExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\"],\"members\":{\"pipelineName\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionId\":{},\"status\":{},\"startTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"sourceRevisions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"actionName\"],\"members\":{\"actionName\":{},\"revisionId\":{},\"revisionSummary\":{},\"revisionUrl\":{}}}},\"trigger\":{\"type\":\"structure\",\"members\":{\"triggerType\":{},\"triggerDetail\":{}}},\"stopTrigger\":{\"type\":\"structure\",\"members\":{\"reason\":{}}}}}},\"nextToken\":{}}}},\"ListPipelines\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelines\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"version\":{\"type\":\"integer\"},\"created\":{\"type\":\"timestamp\"},\"updated\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sq\"},\"nextToken\":{}}}},\"ListWebhooks\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"webhooks\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}},\"NextToken\":{}}}},\"PollForJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"actionTypeId\"],\"members\":{\"actionTypeId\":{\"shape\":\"Sw\"},\"maxBatchSize\":{\"type\":\"integer\"},\"queryParam\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"data\":{\"shape\":\"S31\"},\"nonce\":{},\"accountId\":{}}}}}}},\"PollForThirdPartyJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"actionTypeId\"],\"members\":{\"actionTypeId\":{\"shape\":\"Sw\"},\"maxBatchSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"clientId\":{},\"jobId\":{}}}}}}},\"PutActionRevision\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"stageName\",\"actionName\",\"actionRevision\"],\"members\":{\"pipelineName\":{},\"stageName\":{},\"actionName\":{},\"actionRevision\":{\"shape\":\"S4b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"newRevision\":{\"type\":\"boolean\"},\"pipelineExecutionId\":{}}}},\"PutApprovalResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"stageName\",\"actionName\",\"result\",\"token\"],\"members\":{\"pipelineName\":{},\"stageName\":{},\"actionName\":{},\"result\":{\"type\":\"structure\",\"required\":[\"summary\",\"status\"],\"members\":{\"summary\":{},\"status\":{}}},\"token\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"approvedAt\":{\"type\":\"timestamp\"}}}},\"PutJobFailureResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"failureDetails\"],\"members\":{\"jobId\":{},\"failureDetails\":{\"shape\":\"S71\"}}}},\"PutJobSuccessResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{},\"currentRevision\":{\"shape\":\"S74\"},\"continuationToken\":{},\"executionDetails\":{\"shape\":\"S76\"},\"outputVariables\":{\"shape\":\"S59\"}}}},\"PutThirdPartyJobFailureResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"clientToken\",\"failureDetails\"],\"members\":{\"jobId\":{},\"clientToken\":{},\"failureDetails\":{\"shape\":\"S71\"}}}},\"PutThirdPartyJobSuccessResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"clientToken\"],\"members\":{\"jobId\":{},\"clientToken\":{},\"currentRevision\":{\"shape\":\"S74\"},\"continuationToken\":{},\"executionDetails\":{\"shape\":\"S76\"}}}},\"PutWebhook\":{\"input\":{\"type\":\"structure\",\"required\":[\"webhook\"],\"members\":{\"webhook\":{\"shape\":\"S62\"},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"webhook\":{\"shape\":\"S61\"}}}},\"RegisterWebhookWithThirdParty\":{\"input\":{\"type\":\"structure\",\"members\":{\"webhookName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RetryStageExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"stageName\",\"pipelineExecutionId\",\"retryMode\"],\"members\":{\"pipelineName\":{},\"stageName\":{},\"pipelineExecutionId\":{},\"retryMode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionId\":{}}}},\"StartPipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionId\":{}}}},\"StopPipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"pipelineExecutionId\"],\"members\":{\"pipelineName\":{},\"pipelineExecutionId\":{},\"abandon\":{\"type\":\"boolean\"},\"reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineExecutionId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateActionType\":{\"input\":{\"type\":\"structure\",\"required\":[\"actionType\"],\"members\":{\"actionType\":{\"shape\":\"S29\"}}}},\"UpdatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipeline\"],\"members\":{\"pipeline\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipeline\":{\"shape\":\"Sz\"}}}}},\"shapes\":{\"Se\":{\"type\":\"structure\",\"members\":{\"thirdPartyConfigurationUrl\":{},\"entityUrlTemplate\":{},\"executionUrlTemplate\":{},\"revisionUrlTemplate\":{}}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"required\",\"key\",\"secret\"],\"members\":{\"name\":{},\"required\":{\"type\":\"boolean\"},\"key\":{\"type\":\"boolean\"},\"secret\":{\"type\":\"boolean\"},\"queryable\":{\"type\":\"boolean\"},\"description\":{},\"type\":{}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"minimumCount\",\"maximumCount\"],\"members\":{\"minimumCount\":{\"type\":\"integer\"},\"maximumCount\":{\"type\":\"integer\"}}},\"Sq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sv\":{\"type\":\"structure\",\"required\":[\"id\",\"inputArtifactDetails\",\"outputArtifactDetails\"],\"members\":{\"id\":{\"shape\":\"Sw\"},\"settings\":{\"shape\":\"Se\"},\"actionConfigurationProperties\":{\"shape\":\"Sh\"},\"inputArtifactDetails\":{\"shape\":\"Sn\"},\"outputArtifactDetails\":{\"shape\":\"Sn\"}}},\"Sw\":{\"type\":\"structure\",\"required\":[\"category\",\"owner\",\"provider\",\"version\"],\"members\":{\"category\":{},\"owner\":{},\"provider\":{},\"version\":{}}},\"Sz\":{\"type\":\"structure\",\"required\":[\"name\",\"roleArn\",\"stages\"],\"members\":{\"name\":{},\"roleArn\":{},\"artifactStore\":{\"shape\":\"S12\"},\"artifactStores\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S12\"}},\"stages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"actions\"],\"members\":{\"name\":{},\"blockers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"type\"],\"members\":{\"name\":{},\"type\":{}}}},\"actions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"actionTypeId\"],\"members\":{\"name\":{},\"actionTypeId\":{\"shape\":\"Sw\"},\"runOrder\":{\"type\":\"integer\"},\"configuration\":{\"shape\":\"S1l\"},\"outputArtifacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"inputArtifacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"roleArn\":{},\"region\":{},\"namespace\":{}}}}}}},\"version\":{\"type\":\"integer\"}}},\"S12\":{\"type\":\"structure\",\"required\":[\"type\",\"location\"],\"members\":{\"type\":{},\"location\":{},\"encryptionKey\":{\"shape\":\"S15\"}}},\"S15\":{\"type\":\"structure\",\"required\":[\"id\",\"type\"],\"members\":{\"id\":{},\"type\":{}}},\"S1l\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S29\":{\"type\":\"structure\",\"required\":[\"executor\",\"id\",\"inputArtifactDetails\",\"outputArtifactDetails\"],\"members\":{\"description\":{},\"executor\":{\"type\":\"structure\",\"required\":[\"configuration\",\"type\"],\"members\":{\"configuration\":{\"type\":\"structure\",\"members\":{\"lambdaExecutorConfiguration\":{\"type\":\"structure\",\"required\":[\"lambdaFunctionArn\"],\"members\":{\"lambdaFunctionArn\":{}}},\"jobWorkerExecutorConfiguration\":{\"type\":\"structure\",\"members\":{\"pollingAccounts\":{\"type\":\"list\",\"member\":{}},\"pollingServicePrincipals\":{\"type\":\"list\",\"member\":{}}}}}},\"type\":{},\"policyStatementsTemplate\":{},\"jobTimeout\":{\"type\":\"integer\"}}},\"id\":{\"type\":\"structure\",\"required\":[\"category\",\"owner\",\"provider\",\"version\"],\"members\":{\"category\":{},\"owner\":{},\"provider\":{},\"version\":{}}},\"inputArtifactDetails\":{\"shape\":\"S2o\"},\"outputArtifactDetails\":{\"shape\":\"S2o\"},\"permissions\":{\"type\":\"structure\",\"required\":[\"allowedAccounts\"],\"members\":{\"allowedAccounts\":{\"type\":\"list\",\"member\":{}}}},\"properties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"optional\",\"key\",\"noEcho\"],\"members\":{\"name\":{},\"optional\":{\"type\":\"boolean\"},\"key\":{\"type\":\"boolean\"},\"noEcho\":{\"type\":\"boolean\"},\"queryable\":{\"type\":\"boolean\"},\"description\":{}}}},\"urls\":{\"type\":\"structure\",\"members\":{\"configurationUrl\":{},\"entityUrlTemplate\":{},\"executionUrlTemplate\":{},\"revisionUrlTemplate\":{}}}}},\"S2o\":{\"type\":\"structure\",\"required\":[\"minimumCount\",\"maximumCount\"],\"members\":{\"minimumCount\":{\"type\":\"integer\"},\"maximumCount\":{\"type\":\"integer\"}}},\"S31\":{\"type\":\"structure\",\"members\":{\"actionTypeId\":{\"shape\":\"Sw\"},\"actionConfiguration\":{\"shape\":\"S32\"},\"pipelineContext\":{\"shape\":\"S33\"},\"inputArtifacts\":{\"shape\":\"S39\"},\"outputArtifacts\":{\"shape\":\"S39\"},\"artifactCredentials\":{\"shape\":\"S3h\"},\"continuationToken\":{},\"encryptionKey\":{\"shape\":\"S15\"}}},\"S32\":{\"type\":\"structure\",\"members\":{\"configuration\":{\"shape\":\"S1l\"}}},\"S33\":{\"type\":\"structure\",\"members\":{\"pipelineName\":{},\"stage\":{\"type\":\"structure\",\"members\":{\"name\":{}}},\"action\":{\"type\":\"structure\",\"members\":{\"name\":{},\"actionExecutionId\":{}}},\"pipelineArn\":{},\"pipelineExecutionId\":{}}},\"S39\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"revision\":{},\"location\":{\"type\":\"structure\",\"members\":{\"type\":{},\"s3Location\":{\"type\":\"structure\",\"required\":[\"bucketName\",\"objectKey\"],\"members\":{\"bucketName\":{},\"objectKey\":{}}}}}}}},\"S3h\":{\"type\":\"structure\",\"required\":[\"accessKeyId\",\"secretAccessKey\",\"sessionToken\"],\"members\":{\"accessKeyId\":{\"type\":\"string\",\"sensitive\":true},\"secretAccessKey\":{\"type\":\"string\",\"sensitive\":true},\"sessionToken\":{\"type\":\"string\",\"sensitive\":true}},\"sensitive\":true},\"S43\":{\"type\":\"structure\",\"required\":[\"pipelineExecutionId\",\"status\"],\"members\":{\"pipelineExecutionId\":{},\"status\":{}}},\"S4b\":{\"type\":\"structure\",\"required\":[\"revisionId\",\"revisionChangeId\",\"created\"],\"members\":{\"revisionId\":{},\"revisionChangeId\":{},\"created\":{\"type\":\"timestamp\"}}},\"S50\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"s3location\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"key\":{}}}}}},\"S59\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S61\":{\"type\":\"structure\",\"required\":[\"definition\",\"url\"],\"members\":{\"definition\":{\"shape\":\"S62\"},\"url\":{},\"errorMessage\":{},\"errorCode\":{},\"lastTriggered\":{\"type\":\"timestamp\"},\"arn\":{},\"tags\":{\"shape\":\"Sq\"}}},\"S62\":{\"type\":\"structure\",\"required\":[\"name\",\"targetPipeline\",\"targetAction\",\"filters\",\"authentication\",\"authenticationConfiguration\"],\"members\":{\"name\":{},\"targetPipeline\":{},\"targetAction\":{},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jsonPath\"],\"members\":{\"jsonPath\":{},\"matchEquals\":{}}}},\"authentication\":{},\"authenticationConfiguration\":{\"type\":\"structure\",\"members\":{\"AllowedIPRange\":{},\"SecretToken\":{}}}}},\"S71\":{\"type\":\"structure\",\"required\":[\"type\",\"message\"],\"members\":{\"type\":{},\"message\":{},\"externalExecutionId\":{}}},\"S74\":{\"type\":\"structure\",\"required\":[\"revision\",\"changeIdentifier\"],\"members\":{\"revision\":{},\"changeIdentifier\":{},\"created\":{\"type\":\"timestamp\"},\"revisionSummary\":{}}},\"S76\":{\"type\":\"structure\",\"members\":{\"summary\":{},\"externalExecutionId\":{},\"percentComplete\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 38160:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListActionExecutions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"actionExecutionDetails\"},\"ListActionTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"actionTypes\"},\"ListPipelineExecutions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"pipelineExecutionSummaries\"},\"ListPipelines\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"pipelines\"},\"ListTagsForResource\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"tags\"},\"ListWebhooks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"webhooks\"}}}");

/***/ }),

/***/ 71626:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-04-19\",\"endpointPrefix\":\"codestar\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"CodeStar\",\"serviceFullName\":\"AWS CodeStar\",\"serviceId\":\"CodeStar\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"CodeStar_20170419\",\"uid\":\"codestar-2017-04-19\"},\"operations\":{\"AssociateTeamMember\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"userArn\",\"projectRole\"],\"members\":{\"projectId\":{},\"clientRequestToken\":{},\"userArn\":{},\"projectRole\":{},\"remoteAccessAllowed\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"clientRequestToken\":{}}}},\"CreateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"id\"],\"members\":{\"name\":{\"shape\":\"S9\"},\"id\":{},\"description\":{\"shape\":\"Sa\"},\"clientRequestToken\":{},\"sourceCode\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"source\",\"destination\"],\"members\":{\"source\":{\"type\":\"structure\",\"required\":[\"s3\"],\"members\":{\"s3\":{\"shape\":\"Se\"}}},\"destination\":{\"type\":\"structure\",\"members\":{\"codeCommit\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"gitHub\":{\"type\":\"structure\",\"required\":[\"name\",\"type\",\"owner\",\"privateRepository\",\"issuesEnabled\",\"token\"],\"members\":{\"name\":{},\"description\":{},\"type\":{},\"owner\":{},\"privateRepository\":{\"type\":\"boolean\"},\"issuesEnabled\":{\"type\":\"boolean\"},\"token\":{\"type\":\"string\",\"sensitive\":true}}}}}}}},\"toolchain\":{\"type\":\"structure\",\"required\":[\"source\"],\"members\":{\"source\":{\"type\":\"structure\",\"required\":[\"s3\"],\"members\":{\"s3\":{\"shape\":\"Se\"}}},\"roleArn\":{},\"stackParameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"string\",\"sensitive\":true}}}},\"tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"id\",\"arn\"],\"members\":{\"id\":{},\"arn\":{},\"clientRequestToken\":{},\"projectTemplateId\":{}}}},\"CreateUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"userArn\",\"displayName\",\"emailAddress\"],\"members\":{\"userArn\":{},\"displayName\":{\"shape\":\"S14\"},\"emailAddress\":{\"shape\":\"S15\"},\"sshPublicKey\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"userArn\"],\"members\":{\"userArn\":{},\"displayName\":{\"shape\":\"S14\"},\"emailAddress\":{\"shape\":\"S15\"},\"sshPublicKey\":{},\"createdTimestamp\":{\"type\":\"timestamp\"},\"lastModifiedTimestamp\":{\"type\":\"timestamp\"}}}},\"DeleteProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"clientRequestToken\":{},\"deleteStack\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"stackId\":{},\"projectArn\":{}}}},\"DeleteUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"userArn\"],\"members\":{\"userArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"userArn\"],\"members\":{\"userArn\":{}}}},\"DescribeProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{\"shape\":\"S9\"},\"id\":{},\"arn\":{},\"description\":{\"shape\":\"Sa\"},\"clientRequestToken\":{},\"createdTimeStamp\":{\"type\":\"timestamp\"},\"stackId\":{},\"projectTemplateId\":{},\"status\":{\"type\":\"structure\",\"required\":[\"state\"],\"members\":{\"state\":{},\"reason\":{}}}}}},\"DescribeUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"userArn\"],\"members\":{\"userArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"userArn\",\"createdTimestamp\",\"lastModifiedTimestamp\"],\"members\":{\"userArn\":{},\"displayName\":{\"shape\":\"S14\"},\"emailAddress\":{\"shape\":\"S15\"},\"sshPublicKey\":{},\"createdTimestamp\":{\"type\":\"timestamp\"},\"lastModifiedTimestamp\":{\"type\":\"timestamp\"}}}},\"DisassociateTeamMember\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"userArn\"],\"members\":{\"projectId\":{},\"userArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"projects\"],\"members\":{\"projects\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"projectId\":{},\"projectArn\":{}}}},\"nextToken\":{}}}},\"ListResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}}},\"nextToken\":{}}}},\"ListTagsForProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sx\"},\"nextToken\":{}}}},\"ListTeamMembers\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"teamMembers\"],\"members\":{\"teamMembers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"userArn\",\"projectRole\"],\"members\":{\"userArn\":{},\"projectRole\":{},\"remoteAccessAllowed\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListUserProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"userProfiles\"],\"members\":{\"userProfiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"userArn\":{},\"displayName\":{\"shape\":\"S14\"},\"emailAddress\":{\"shape\":\"S15\"},\"sshPublicKey\":{}}}},\"nextToken\":{}}}},\"TagProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"tags\"],\"members\":{\"id\":{},\"tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sx\"}}}},\"UntagProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"tags\"],\"members\":{\"id\":{},\"tags\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"name\":{\"shape\":\"S9\"},\"description\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateTeamMember\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"userArn\"],\"members\":{\"projectId\":{},\"userArn\":{},\"projectRole\":{},\"remoteAccessAllowed\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"userArn\":{},\"projectRole\":{},\"remoteAccessAllowed\":{\"type\":\"boolean\"}}}},\"UpdateUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"userArn\"],\"members\":{\"userArn\":{},\"displayName\":{\"shape\":\"S14\"},\"emailAddress\":{\"shape\":\"S15\"},\"sshPublicKey\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"userArn\"],\"members\":{\"userArn\":{},\"displayName\":{\"shape\":\"S14\"},\"emailAddress\":{\"shape\":\"S15\"},\"sshPublicKey\":{},\"createdTimestamp\":{\"type\":\"timestamp\"},\"lastModifiedTimestamp\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S9\":{\"type\":\"string\",\"sensitive\":true},\"Sa\":{\"type\":\"string\",\"sensitive\":true},\"Se\":{\"type\":\"structure\",\"members\":{\"bucketName\":{},\"bucketKey\":{}}},\"Sx\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S14\":{\"type\":\"string\",\"sensitive\":true},\"S15\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 78653:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 81568:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-12-01\",\"endpointPrefix\":\"codestar-connections\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceFullName\":\"AWS CodeStar connections\",\"serviceId\":\"CodeStar connections\",\"signatureVersion\":\"v4\",\"signingName\":\"codestar-connections\",\"targetPrefix\":\"com.amazonaws.codestar.connections.CodeStar_connections_20191201\",\"uid\":\"codestar-connections-2019-12-01\"},\"operations\":{\"CreateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionName\"],\"members\":{\"ProviderType\":{},\"ConnectionName\":{},\"Tags\":{\"shape\":\"S4\"},\"HostArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ConnectionArn\"],\"members\":{\"ConnectionArn\":{},\"Tags\":{\"shape\":\"S4\"}}}},\"CreateHost\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ProviderType\",\"ProviderEndpoint\"],\"members\":{\"Name\":{},\"ProviderType\":{},\"ProviderEndpoint\":{},\"VpcConfiguration\":{\"shape\":\"Se\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HostArn\":{},\"Tags\":{\"shape\":\"S4\"}}}},\"DeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionArn\"],\"members\":{\"ConnectionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteHost\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostArn\"],\"members\":{\"HostArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionArn\"],\"members\":{\"ConnectionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"Ss\"}}}},\"GetHost\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostArn\"],\"members\":{\"HostArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Status\":{},\"ProviderType\":{},\"ProviderEndpoint\":{},\"VpcConfiguration\":{\"shape\":\"Se\"}}}},\"ListConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"ProviderTypeFilter\":{},\"HostArnFilter\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connections\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}},\"NextToken\":{}}}},\"ListHosts\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Hosts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"HostArn\":{},\"ProviderType\":{},\"ProviderEndpoint\":{},\"VpcConfiguration\":{\"shape\":\"Se\"},\"Status\":{},\"StatusMessage\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateHost\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostArn\"],\"members\":{\"HostArn\":{},\"ProviderEndpoint\":{},\"VpcConfiguration\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Se\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"SubnetIds\",\"SecurityGroupIds\"],\"members\":{\"VpcId\":{},\"SubnetIds\":{\"type\":\"list\",\"member\":{}},\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}},\"TlsCertificate\":{}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"ConnectionName\":{},\"ConnectionArn\":{},\"ProviderType\":{},\"OwnerAccountId\":{},\"ConnectionStatus\":{},\"HostArn\":{}}}}}");

/***/ }),

/***/ 7656:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListConnections\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListHosts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 41964:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-10-15\",\"endpointPrefix\":\"codestar-notifications\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS CodeStar Notifications\",\"serviceId\":\"codestar notifications\",\"signatureVersion\":\"v4\",\"signingName\":\"codestar-notifications\",\"uid\":\"codestar-notifications-2019-10-15\"},\"operations\":{\"CreateNotificationRule\":{\"http\":{\"requestUri\":\"/createNotificationRule\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"EventTypeIds\",\"Resource\",\"Targets\",\"DetailType\"],\"members\":{\"Name\":{\"shape\":\"S2\"},\"EventTypeIds\":{\"shape\":\"S3\"},\"Resource\":{},\"Targets\":{\"shape\":\"S6\"},\"DetailType\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sc\"},\"Status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"DeleteNotificationRule\":{\"http\":{\"requestUri\":\"/deleteNotificationRule\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"DeleteTarget\":{\"http\":{\"requestUri\":\"/deleteTarget\"},\"input\":{\"type\":\"structure\",\"required\":[\"TargetAddress\"],\"members\":{\"TargetAddress\":{\"shape\":\"S9\"},\"ForceUnsubscribeAll\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeNotificationRule\":{\"http\":{\"requestUri\":\"/describeNotificationRule\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"Name\":{\"shape\":\"S2\"},\"EventTypes\":{\"shape\":\"Sp\"},\"Resource\":{},\"Targets\":{\"shape\":\"Su\"},\"DetailType\":{},\"CreatedBy\":{},\"Status\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastModifiedTimestamp\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sc\"}}}},\"ListEventTypes\":{\"http\":{\"requestUri\":\"/listEventTypes\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventTypes\":{\"shape\":\"Sp\"},\"NextToken\":{}}}},\"ListNotificationRules\":{\"http\":{\"requestUri\":\"/listNotificationRules\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NotificationRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{}}}}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/listTagsForResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sc\"}}}},\"ListTargets\":{\"http\":{\"requestUri\":\"/listTargets\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Targets\":{\"shape\":\"Su\"},\"NextToken\":{}}}},\"Subscribe\":{\"http\":{\"requestUri\":\"/subscribe\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Target\"],\"members\":{\"Arn\":{},\"Target\":{\"shape\":\"S7\"},\"ClientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Tags\"],\"members\":{\"Arn\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sc\"}}}},\"Unsubscribe\":{\"http\":{\"requestUri\":\"/unsubscribe\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"TargetAddress\"],\"members\":{\"Arn\":{},\"TargetAddress\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/untagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"TagKeys\"],\"members\":{\"Arn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateNotificationRule\":{\"http\":{\"requestUri\":\"/updateNotificationRule\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"Name\":{\"shape\":\"S2\"},\"Status\":{},\"EventTypeIds\":{\"shape\":\"S3\"},\"Targets\":{\"shape\":\"S6\"},\"DetailType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"string\",\"sensitive\":true},\"S3\":{\"type\":\"list\",\"member\":{}},\"S6\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"S7\":{\"type\":\"structure\",\"members\":{\"TargetType\":{},\"TargetAddress\":{\"shape\":\"S9\"}}},\"S9\":{\"type\":\"string\",\"sensitive\":true},\"Sc\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventTypeId\":{},\"ServiceName\":{},\"EventTypeName\":{},\"ResourceType\":{}}}},\"Su\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetAddress\":{\"shape\":\"S9\"},\"TargetType\":{},\"TargetStatus\":{}}}}}}");

/***/ }),

/***/ 5741:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListEventTypes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"EventTypes\"},\"ListNotificationRules\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NotificationRules\"},\"ListTargets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Targets\"}}}");

/***/ }),

/***/ 26102:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-06-30\",\"endpointPrefix\":\"cognito-identity\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Cognito Identity\",\"serviceId\":\"Cognito Identity\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSCognitoIdentityService\",\"uid\":\"cognito-identity-2014-06-30\"},\"operations\":{\"CreateIdentityPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolName\",\"AllowUnauthenticatedIdentities\"],\"members\":{\"IdentityPoolName\":{},\"AllowUnauthenticatedIdentities\":{\"type\":\"boolean\"},\"AllowClassicFlow\":{\"type\":\"boolean\"},\"SupportedLoginProviders\":{\"shape\":\"S5\"},\"DeveloperProviderName\":{},\"OpenIdConnectProviderARNs\":{\"shape\":\"S9\"},\"CognitoIdentityProviders\":{\"shape\":\"Sb\"},\"SamlProviderARNs\":{\"shape\":\"Sg\"},\"IdentityPoolTags\":{\"shape\":\"Sh\"}}},\"output\":{\"shape\":\"Sk\"}},\"DeleteIdentities\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityIdsToDelete\"],\"members\":{\"IdentityIdsToDelete\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedIdentityIds\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"ErrorCode\":{}}}}}}},\"DeleteIdentityPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{}}}},\"DescribeIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityId\"],\"members\":{\"IdentityId\":{}}},\"output\":{\"shape\":\"Sv\"}},\"DescribeIdentityPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{}}},\"output\":{\"shape\":\"Sk\"}},\"GetCredentialsForIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityId\"],\"members\":{\"IdentityId\":{},\"Logins\":{\"shape\":\"S10\"},\"CustomRoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"Credentials\":{\"type\":\"structure\",\"members\":{\"AccessKeyId\":{},\"SecretKey\":{},\"SessionToken\":{},\"Expiration\":{\"type\":\"timestamp\"}}}}},\"authtype\":\"none\"},\"GetId\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"AccountId\":{},\"IdentityPoolId\":{},\"Logins\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{}}},\"authtype\":\"none\"},\"GetIdentityPoolRoles\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"Roles\":{\"shape\":\"S1c\"},\"RoleMappings\":{\"shape\":\"S1e\"}}}},\"GetOpenIdToken\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityId\"],\"members\":{\"IdentityId\":{},\"Logins\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"Token\":{}}},\"authtype\":\"none\"},\"GetOpenIdTokenForDeveloperIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"Logins\"],\"members\":{\"IdentityPoolId\":{},\"IdentityId\":{},\"Logins\":{\"shape\":\"S10\"},\"PrincipalTags\":{\"shape\":\"S1s\"},\"TokenDuration\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"Token\":{}}}},\"GetPrincipalTagAttributeMap\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityProviderName\"],\"members\":{\"IdentityPoolId\":{},\"IdentityProviderName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"IdentityProviderName\":{},\"UseDefaults\":{\"type\":\"boolean\"},\"PrincipalTags\":{\"shape\":\"S1s\"}}}},\"ListIdentities\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"MaxResults\"],\"members\":{\"IdentityPoolId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"HideDisabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"Identities\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"NextToken\":{}}}},\"ListIdentityPools\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaxResults\"],\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPools\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"IdentityPoolName\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sh\"}}}},\"LookupDeveloperIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{},\"IdentityId\":{},\"DeveloperUserIdentifier\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"DeveloperUserIdentifierList\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"MergeDeveloperIdentities\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceUserIdentifier\",\"DestinationUserIdentifier\",\"DeveloperProviderName\",\"IdentityPoolId\"],\"members\":{\"SourceUserIdentifier\":{},\"DestinationUserIdentifier\":{},\"DeveloperProviderName\":{},\"IdentityPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{}}}},\"SetIdentityPoolRoles\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"Roles\"],\"members\":{\"IdentityPoolId\":{},\"Roles\":{\"shape\":\"S1c\"},\"RoleMappings\":{\"shape\":\"S1e\"}}}},\"SetPrincipalTagAttributeMap\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityProviderName\"],\"members\":{\"IdentityPoolId\":{},\"IdentityProviderName\":{},\"UseDefaults\":{\"type\":\"boolean\"},\"PrincipalTags\":{\"shape\":\"S1s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"IdentityProviderName\":{},\"UseDefaults\":{\"type\":\"boolean\"},\"PrincipalTags\":{\"shape\":\"S1s\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UnlinkDeveloperIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityId\",\"IdentityPoolId\",\"DeveloperProviderName\",\"DeveloperUserIdentifier\"],\"members\":{\"IdentityId\":{},\"IdentityPoolId\":{},\"DeveloperProviderName\":{},\"DeveloperUserIdentifier\":{}}}},\"UnlinkIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityId\",\"Logins\",\"LoginsToRemove\"],\"members\":{\"IdentityId\":{},\"Logins\":{\"shape\":\"S10\"},\"LoginsToRemove\":{\"shape\":\"Sw\"}}},\"authtype\":\"none\"},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateIdentityPool\":{\"input\":{\"shape\":\"Sk\"},\"output\":{\"shape\":\"Sk\"}}},\"shapes\":{\"S5\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S9\":{\"type\":\"list\",\"member\":{}},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProviderName\":{},\"ClientId\":{},\"ServerSideTokenCheck\":{\"type\":\"boolean\"}}}},\"Sg\":{\"type\":\"list\",\"member\":{}},\"Sh\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sk\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityPoolName\",\"AllowUnauthenticatedIdentities\"],\"members\":{\"IdentityPoolId\":{},\"IdentityPoolName\":{},\"AllowUnauthenticatedIdentities\":{\"type\":\"boolean\"},\"AllowClassicFlow\":{\"type\":\"boolean\"},\"SupportedLoginProviders\":{\"shape\":\"S5\"},\"DeveloperProviderName\":{},\"OpenIdConnectProviderARNs\":{\"shape\":\"S9\"},\"CognitoIdentityProviders\":{\"shape\":\"Sb\"},\"SamlProviderARNs\":{\"shape\":\"Sg\"},\"IdentityPoolTags\":{\"shape\":\"Sh\"}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"Logins\":{\"shape\":\"Sw\"},\"CreationDate\":{\"type\":\"timestamp\"},\"LastModifiedDate\":{\"type\":\"timestamp\"}}},\"Sw\":{\"type\":\"list\",\"member\":{}},\"S10\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1c\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1e\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"AmbiguousRoleResolution\":{},\"RulesConfiguration\":{\"type\":\"structure\",\"required\":[\"Rules\"],\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Claim\",\"MatchType\",\"Value\",\"RoleARN\"],\"members\":{\"Claim\":{},\"MatchType\":{},\"Value\":{},\"RoleARN\":{}}}}}}}}},\"S1s\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 80796:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListIdentityPools\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"IdentityPools\"}}}");

/***/ }),

/***/ 60923:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-04-18\",\"endpointPrefix\":\"cognito-idp\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Cognito Identity Provider\",\"serviceId\":\"Cognito Identity Provider\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSCognitoIdentityProviderService\",\"uid\":\"cognito-idp-2016-04-18\"},\"operations\":{\"AddCustomAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"CustomAttributes\"],\"members\":{\"UserPoolId\":{},\"CustomAttributes\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminAddUserToGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"GroupName\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"GroupName\":{}}}},\"AdminConfirmSignUp\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminCreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"UserAttributes\":{\"shape\":\"Sj\"},\"ValidationData\":{\"shape\":\"Sj\"},\"TemporaryPassword\":{\"shape\":\"Sn\"},\"ForceAliasCreation\":{\"type\":\"boolean\"},\"MessageAction\":{},\"DesiredDeliveryMediums\":{\"type\":\"list\",\"member\":{}},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"St\"}}}},\"AdminDeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"}}}},\"AdminDeleteUserAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"UserAttributeNames\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"UserAttributeNames\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminDisableProviderForUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"User\"],\"members\":{\"UserPoolId\":{},\"User\":{\"shape\":\"S13\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminDisableUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminEnableUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminForgetDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"DeviceKey\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"DeviceKey\":{}}}},\"AdminGetDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceKey\",\"UserPoolId\",\"Username\"],\"members\":{\"DeviceKey\":{},\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Device\"],\"members\":{\"Device\":{\"shape\":\"S1e\"}}}},\"AdminGetUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Username\"],\"members\":{\"Username\":{\"shape\":\"Sd\"},\"UserAttributes\":{\"shape\":\"Sj\"},\"UserCreateDate\":{\"type\":\"timestamp\"},\"UserLastModifiedDate\":{\"type\":\"timestamp\"},\"Enabled\":{\"type\":\"boolean\"},\"UserStatus\":{},\"MFAOptions\":{\"shape\":\"Sw\"},\"PreferredMfaSetting\":{},\"UserMFASettingList\":{\"shape\":\"S1h\"}}}},\"AdminInitiateAuth\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ClientId\",\"AuthFlow\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"AuthFlow\":{},\"AuthParameters\":{\"shape\":\"S1l\"},\"ClientMetadata\":{\"shape\":\"Sg\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"ContextData\":{\"shape\":\"S1n\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChallengeName\":{},\"Session\":{},\"ChallengeParameters\":{\"shape\":\"S1t\"},\"AuthenticationResult\":{\"shape\":\"S1u\"}}}},\"AdminLinkProviderForUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"DestinationUser\",\"SourceUser\"],\"members\":{\"UserPoolId\":{},\"DestinationUser\":{\"shape\":\"S13\"},\"SourceUser\":{\"shape\":\"S13\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminListDevices\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"Limit\":{\"type\":\"integer\"},\"PaginationToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"shape\":\"S24\"},\"PaginationToken\":{}}}},\"AdminListGroupsForUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"Username\",\"UserPoolId\"],\"members\":{\"Username\":{\"shape\":\"Sd\"},\"UserPoolId\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"shape\":\"S28\"},\"NextToken\":{}}}},\"AdminListUserAuthEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuthEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"EventType\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"EventResponse\":{},\"EventRisk\":{\"type\":\"structure\",\"members\":{\"RiskDecision\":{},\"RiskLevel\":{},\"CompromisedCredentialsDetected\":{\"type\":\"boolean\"}}},\"ChallengeResponses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ChallengeName\":{},\"ChallengeResponse\":{}}}},\"EventContextData\":{\"type\":\"structure\",\"members\":{\"IpAddress\":{},\"DeviceName\":{},\"Timezone\":{},\"City\":{},\"Country\":{}}},\"EventFeedback\":{\"type\":\"structure\",\"required\":[\"FeedbackValue\",\"Provider\"],\"members\":{\"FeedbackValue\":{},\"Provider\":{},\"FeedbackDate\":{\"type\":\"timestamp\"}}}}}},\"NextToken\":{}}}},\"AdminRemoveUserFromGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"GroupName\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"GroupName\":{}}}},\"AdminResetUserPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminRespondToAuthChallenge\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ClientId\",\"ChallengeName\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"ChallengeName\":{},\"ChallengeResponses\":{\"shape\":\"S2y\"},\"Session\":{},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"ContextData\":{\"shape\":\"S1n\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChallengeName\":{},\"Session\":{},\"ChallengeParameters\":{\"shape\":\"S1t\"},\"AuthenticationResult\":{\"shape\":\"S1u\"}}}},\"AdminSetUserMFAPreference\":{\"input\":{\"type\":\"structure\",\"required\":[\"Username\",\"UserPoolId\"],\"members\":{\"SMSMfaSettings\":{\"shape\":\"S31\"},\"SoftwareTokenMfaSettings\":{\"shape\":\"S32\"},\"Username\":{\"shape\":\"Sd\"},\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminSetUserPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"Password\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"Password\":{\"shape\":\"Sn\"},\"Permanent\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminSetUserSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"MFAOptions\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"MFAOptions\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminUpdateAuthEventFeedback\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"EventId\",\"FeedbackValue\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"EventId\":{},\"FeedbackValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminUpdateDeviceStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"DeviceKey\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"DeviceKey\":{},\"DeviceRememberedStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminUpdateUserAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"UserAttributes\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"UserAttributes\":{\"shape\":\"Sj\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AdminUserGlobalSignOut\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateSoftwareToken\":{\"input\":{\"type\":\"structure\",\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"Session\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecretCode\":{\"type\":\"string\",\"sensitive\":true},\"Session\":{}}}},\"ChangePassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"PreviousPassword\",\"ProposedPassword\",\"AccessToken\"],\"members\":{\"PreviousPassword\":{\"shape\":\"Sn\"},\"ProposedPassword\":{\"shape\":\"Sn\"},\"AccessToken\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"authtype\":\"none\"},\"ConfirmDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\",\"DeviceKey\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"DeviceKey\":{},\"DeviceSecretVerifierConfig\":{\"type\":\"structure\",\"members\":{\"PasswordVerifier\":{},\"Salt\":{}}},\"DeviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserConfirmationNecessary\":{\"type\":\"boolean\"}}}},\"ConfirmForgotPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"Username\",\"ConfirmationCode\",\"Password\"],\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"SecretHash\":{\"shape\":\"S3s\"},\"Username\":{\"shape\":\"Sd\"},\"ConfirmationCode\":{},\"Password\":{\"shape\":\"Sn\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"UserContextData\":{\"shape\":\"S3u\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"authtype\":\"none\"},\"ConfirmSignUp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"Username\",\"ConfirmationCode\"],\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"SecretHash\":{\"shape\":\"S3s\"},\"Username\":{\"shape\":\"Sd\"},\"ConfirmationCode\":{},\"ForceAliasCreation\":{\"type\":\"boolean\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"UserContextData\":{\"shape\":\"S3u\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"authtype\":\"none\"},\"CreateGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"UserPoolId\"],\"members\":{\"GroupName\":{},\"UserPoolId\":{},\"Description\":{},\"RoleArn\":{},\"Precedence\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"S29\"}}}},\"CreateIdentityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ProviderName\",\"ProviderType\",\"ProviderDetails\"],\"members\":{\"UserPoolId\":{},\"ProviderName\":{},\"ProviderType\":{},\"ProviderDetails\":{\"shape\":\"S43\"},\"AttributeMapping\":{\"shape\":\"S44\"},\"IdpIdentifiers\":{\"shape\":\"S46\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"IdentityProvider\"],\"members\":{\"IdentityProvider\":{\"shape\":\"S49\"}}}},\"CreateResourceServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Identifier\",\"Name\"],\"members\":{\"UserPoolId\":{},\"Identifier\":{},\"Name\":{},\"Scopes\":{\"shape\":\"S4d\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceServer\"],\"members\":{\"ResourceServer\":{\"shape\":\"S4i\"}}}},\"CreateUserImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\",\"UserPoolId\",\"CloudWatchLogsRoleArn\"],\"members\":{\"JobName\":{},\"UserPoolId\":{},\"CloudWatchLogsRoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserImportJob\":{\"shape\":\"S4m\"}}}},\"CreateUserPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"PoolName\"],\"members\":{\"PoolName\":{},\"Policies\":{\"shape\":\"S4u\"},\"LambdaConfig\":{\"shape\":\"S4y\"},\"AutoVerifiedAttributes\":{\"shape\":\"S53\"},\"AliasAttributes\":{\"shape\":\"S55\"},\"UsernameAttributes\":{\"shape\":\"S57\"},\"SmsVerificationMessage\":{},\"EmailVerificationMessage\":{},\"EmailVerificationSubject\":{},\"VerificationMessageTemplate\":{\"shape\":\"S5c\"},\"SmsAuthenticationMessage\":{},\"MfaConfiguration\":{},\"DeviceConfiguration\":{\"shape\":\"S5h\"},\"EmailConfiguration\":{\"shape\":\"S5i\"},\"SmsConfiguration\":{\"shape\":\"S5m\"},\"UserPoolTags\":{\"shape\":\"S5n\"},\"AdminCreateUserConfig\":{\"shape\":\"S5q\"},\"Schema\":{\"shape\":\"S5t\"},\"UserPoolAddOns\":{\"shape\":\"S5u\"},\"UsernameConfiguration\":{\"shape\":\"S5w\"},\"AccountRecoverySetting\":{\"shape\":\"S5x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPool\":{\"shape\":\"S63\"}}}},\"CreateUserPoolClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ClientName\"],\"members\":{\"UserPoolId\":{},\"ClientName\":{},\"GenerateSecret\":{\"type\":\"boolean\"},\"RefreshTokenValidity\":{\"type\":\"integer\"},\"AccessTokenValidity\":{\"type\":\"integer\"},\"IdTokenValidity\":{\"type\":\"integer\"},\"TokenValidityUnits\":{\"shape\":\"S6c\"},\"ReadAttributes\":{\"shape\":\"S6e\"},\"WriteAttributes\":{\"shape\":\"S6e\"},\"ExplicitAuthFlows\":{\"shape\":\"S6g\"},\"SupportedIdentityProviders\":{\"shape\":\"S6i\"},\"CallbackURLs\":{\"shape\":\"S6j\"},\"LogoutURLs\":{\"shape\":\"S6l\"},\"DefaultRedirectURI\":{},\"AllowedOAuthFlows\":{\"shape\":\"S6m\"},\"AllowedOAuthScopes\":{\"shape\":\"S6o\"},\"AllowedOAuthFlowsUserPoolClient\":{\"type\":\"boolean\"},\"AnalyticsConfiguration\":{\"shape\":\"S6q\"},\"PreventUserExistenceErrors\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPoolClient\":{\"shape\":\"S6u\"}}}},\"CreateUserPoolDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"Domain\",\"UserPoolId\"],\"members\":{\"Domain\":{},\"UserPoolId\":{},\"CustomDomainConfig\":{\"shape\":\"S6x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontDomain\":{}}}},\"DeleteGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"UserPoolId\"],\"members\":{\"GroupName\":{},\"UserPoolId\":{}}}},\"DeleteIdentityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ProviderName\"],\"members\":{\"UserPoolId\":{},\"ProviderName\":{}}}},\"DeleteResourceServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Identifier\"],\"members\":{\"UserPoolId\":{},\"Identifier\":{}}}},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"}}},\"authtype\":\"none\"},\"DeleteUserAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserAttributeNames\",\"AccessToken\"],\"members\":{\"UserAttributeNames\":{\"shape\":\"S10\"},\"AccessToken\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"authtype\":\"none\"},\"DeleteUserPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{}}}},\"DeleteUserPoolClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ClientId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"}}}},\"DeleteUserPoolDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"Domain\",\"UserPoolId\"],\"members\":{\"Domain\":{},\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeIdentityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ProviderName\"],\"members\":{\"UserPoolId\":{},\"ProviderName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"IdentityProvider\"],\"members\":{\"IdentityProvider\":{\"shape\":\"S49\"}}}},\"DescribeResourceServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Identifier\"],\"members\":{\"UserPoolId\":{},\"Identifier\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceServer\"],\"members\":{\"ResourceServer\":{\"shape\":\"S4i\"}}}},\"DescribeRiskConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"RiskConfiguration\"],\"members\":{\"RiskConfiguration\":{\"shape\":\"S7f\"}}}},\"DescribeUserImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"JobId\"],\"members\":{\"UserPoolId\":{},\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserImportJob\":{\"shape\":\"S4m\"}}}},\"DescribeUserPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPool\":{\"shape\":\"S63\"}}}},\"DescribeUserPoolClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ClientId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPoolClient\":{\"shape\":\"S6u\"}}}},\"DescribeUserPoolDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"Domain\"],\"members\":{\"Domain\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainDescription\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"AWSAccountId\":{},\"Domain\":{},\"S3Bucket\":{},\"CloudFrontDistribution\":{},\"Version\":{},\"Status\":{},\"CustomDomainConfig\":{\"shape\":\"S6x\"}}}}}},\"ForgetDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceKey\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"DeviceKey\":{}}}},\"ForgotPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"Username\"],\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"SecretHash\":{\"shape\":\"S3s\"},\"UserContextData\":{\"shape\":\"S3u\"},\"Username\":{\"shape\":\"Sd\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeDeliveryDetails\":{\"shape\":\"S8d\"}}},\"authtype\":\"none\"},\"GetCSVHeader\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"CSVHeader\":{\"type\":\"list\",\"member\":{}}}}},\"GetDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceKey\"],\"members\":{\"DeviceKey\":{},\"AccessToken\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Device\"],\"members\":{\"Device\":{\"shape\":\"S1e\"}}}},\"GetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"UserPoolId\"],\"members\":{\"GroupName\":{},\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"S29\"}}}},\"GetIdentityProviderByIdentifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"IdpIdentifier\"],\"members\":{\"UserPoolId\":{},\"IdpIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"IdentityProvider\"],\"members\":{\"IdentityProvider\":{\"shape\":\"S49\"}}}},\"GetSigningCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{}}}},\"GetUICustomization\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UICustomization\"],\"members\":{\"UICustomization\":{\"shape\":\"S8r\"}}}},\"GetUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Username\",\"UserAttributes\"],\"members\":{\"Username\":{\"shape\":\"Sd\"},\"UserAttributes\":{\"shape\":\"Sj\"},\"MFAOptions\":{\"shape\":\"Sw\"},\"PreferredMfaSetting\":{},\"UserMFASettingList\":{\"shape\":\"S1h\"}}},\"authtype\":\"none\"},\"GetUserAttributeVerificationCode\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\",\"AttributeName\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"AttributeName\":{},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeDeliveryDetails\":{\"shape\":\"S8d\"}}},\"authtype\":\"none\"},\"GetUserPoolMfaConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SmsMfaConfiguration\":{\"shape\":\"S91\"},\"SoftwareTokenMfaConfiguration\":{\"shape\":\"S92\"},\"MfaConfiguration\":{}}}},\"GlobalSignOut\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"InitiateAuth\":{\"input\":{\"type\":\"structure\",\"required\":[\"AuthFlow\",\"ClientId\"],\"members\":{\"AuthFlow\":{},\"AuthParameters\":{\"shape\":\"S1l\"},\"ClientMetadata\":{\"shape\":\"Sg\"},\"ClientId\":{\"shape\":\"S1j\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"UserContextData\":{\"shape\":\"S3u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChallengeName\":{},\"Session\":{},\"ChallengeParameters\":{\"shape\":\"S1t\"},\"AuthenticationResult\":{\"shape\":\"S1u\"}}},\"authtype\":\"none\"},\"ListDevices\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"Limit\":{\"type\":\"integer\"},\"PaginationToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"shape\":\"S24\"},\"PaginationToken\":{}}}},\"ListGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"shape\":\"S28\"},\"NextToken\":{}}}},\"ListIdentityProviders\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Providers\"],\"members\":{\"Providers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProviderName\":{},\"ProviderType\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListResourceServers\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceServers\"],\"members\":{\"ResourceServers\":{\"type\":\"list\",\"member\":{\"shape\":\"S4i\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S5n\"}}}},\"ListUserImportJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"MaxResults\"],\"members\":{\"UserPoolId\":{},\"MaxResults\":{\"type\":\"integer\"},\"PaginationToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserImportJobs\":{\"type\":\"list\",\"member\":{\"shape\":\"S4m\"}},\"PaginationToken\":{}}}},\"ListUserPoolClients\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPoolClients\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"UserPoolId\":{},\"ClientName\":{}}}},\"NextToken\":{}}}},\"ListUserPools\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaxResults\"],\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPools\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"LambdaConfig\":{\"shape\":\"S4y\"},\"Status\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"AttributesToGet\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"},\"PaginationToken\":{},\"Filter\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"shape\":\"Sa4\"},\"PaginationToken\":{}}}},\"ListUsersInGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"GroupName\"],\"members\":{\"UserPoolId\":{},\"GroupName\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"shape\":\"Sa4\"},\"NextToken\":{}}}},\"ResendConfirmationCode\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"Username\"],\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"SecretHash\":{\"shape\":\"S3s\"},\"UserContextData\":{\"shape\":\"S3u\"},\"Username\":{\"shape\":\"Sd\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeDeliveryDetails\":{\"shape\":\"S8d\"}}},\"authtype\":\"none\"},\"RespondToAuthChallenge\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"ChallengeName\"],\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"ChallengeName\":{},\"Session\":{},\"ChallengeResponses\":{\"shape\":\"S2y\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"UserContextData\":{\"shape\":\"S3u\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChallengeName\":{},\"Session\":{},\"ChallengeParameters\":{\"shape\":\"S1t\"},\"AuthenticationResult\":{\"shape\":\"S1u\"}}},\"authtype\":\"none\"},\"SetRiskConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"CompromisedCredentialsRiskConfiguration\":{\"shape\":\"S7g\"},\"AccountTakeoverRiskConfiguration\":{\"shape\":\"S7l\"},\"RiskExceptionConfiguration\":{\"shape\":\"S7u\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"RiskConfiguration\"],\"members\":{\"RiskConfiguration\":{\"shape\":\"S7f\"}}}},\"SetUICustomization\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"CSS\":{},\"ImageFile\":{\"type\":\"blob\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UICustomization\"],\"members\":{\"UICustomization\":{\"shape\":\"S8r\"}}}},\"SetUserMFAPreference\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\"],\"members\":{\"SMSMfaSettings\":{\"shape\":\"S31\"},\"SoftwareTokenMfaSettings\":{\"shape\":\"S32\"},\"AccessToken\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SetUserPoolMfaConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"SmsMfaConfiguration\":{\"shape\":\"S91\"},\"SoftwareTokenMfaConfiguration\":{\"shape\":\"S92\"},\"MfaConfiguration\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SmsMfaConfiguration\":{\"shape\":\"S91\"},\"SoftwareTokenMfaConfiguration\":{\"shape\":\"S92\"},\"MfaConfiguration\":{}}}},\"SetUserSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\",\"MFAOptions\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"MFAOptions\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"authtype\":\"none\"},\"SignUp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"Username\",\"Password\"],\"members\":{\"ClientId\":{\"shape\":\"S1j\"},\"SecretHash\":{\"shape\":\"S3s\"},\"Username\":{\"shape\":\"Sd\"},\"Password\":{\"shape\":\"Sn\"},\"UserAttributes\":{\"shape\":\"Sj\"},\"ValidationData\":{\"shape\":\"Sj\"},\"AnalyticsMetadata\":{\"shape\":\"S1m\"},\"UserContextData\":{\"shape\":\"S3u\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UserConfirmed\",\"UserSub\"],\"members\":{\"UserConfirmed\":{\"type\":\"boolean\"},\"CodeDeliveryDetails\":{\"shape\":\"S8d\"},\"UserSub\":{}}},\"authtype\":\"none\"},\"StartUserImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"JobId\"],\"members\":{\"UserPoolId\":{},\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserImportJob\":{\"shape\":\"S4m\"}}}},\"StopUserImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"JobId\"],\"members\":{\"UserPoolId\":{},\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserImportJob\":{\"shape\":\"S4m\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S5n\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAuthEventFeedback\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Username\",\"EventId\",\"FeedbackToken\",\"FeedbackValue\"],\"members\":{\"UserPoolId\":{},\"Username\":{\"shape\":\"Sd\"},\"EventId\":{},\"FeedbackToken\":{\"shape\":\"S1v\"},\"FeedbackValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDeviceStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\",\"DeviceKey\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"DeviceKey\":{},\"DeviceRememberedStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"UserPoolId\"],\"members\":{\"GroupName\":{},\"UserPoolId\":{},\"Description\":{},\"RoleArn\":{},\"Precedence\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"S29\"}}}},\"UpdateIdentityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ProviderName\"],\"members\":{\"UserPoolId\":{},\"ProviderName\":{},\"ProviderDetails\":{\"shape\":\"S43\"},\"AttributeMapping\":{\"shape\":\"S44\"},\"IdpIdentifiers\":{\"shape\":\"S46\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"IdentityProvider\"],\"members\":{\"IdentityProvider\":{\"shape\":\"S49\"}}}},\"UpdateResourceServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"Identifier\",\"Name\"],\"members\":{\"UserPoolId\":{},\"Identifier\":{},\"Name\":{},\"Scopes\":{\"shape\":\"S4d\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceServer\"],\"members\":{\"ResourceServer\":{\"shape\":\"S4i\"}}}},\"UpdateUserAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserAttributes\",\"AccessToken\"],\"members\":{\"UserAttributes\":{\"shape\":\"Sj\"},\"AccessToken\":{\"shape\":\"S1v\"},\"ClientMetadata\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CodeDeliveryDetailsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S8d\"}}}},\"authtype\":\"none\"},\"UpdateUserPool\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\"],\"members\":{\"UserPoolId\":{},\"Policies\":{\"shape\":\"S4u\"},\"LambdaConfig\":{\"shape\":\"S4y\"},\"AutoVerifiedAttributes\":{\"shape\":\"S53\"},\"SmsVerificationMessage\":{},\"EmailVerificationMessage\":{},\"EmailVerificationSubject\":{},\"VerificationMessageTemplate\":{\"shape\":\"S5c\"},\"SmsAuthenticationMessage\":{},\"MfaConfiguration\":{},\"DeviceConfiguration\":{\"shape\":\"S5h\"},\"EmailConfiguration\":{\"shape\":\"S5i\"},\"SmsConfiguration\":{\"shape\":\"S5m\"},\"UserPoolTags\":{\"shape\":\"S5n\"},\"AdminCreateUserConfig\":{\"shape\":\"S5q\"},\"UserPoolAddOns\":{\"shape\":\"S5u\"},\"AccountRecoverySetting\":{\"shape\":\"S5x\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateUserPoolClient\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserPoolId\",\"ClientId\"],\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"ClientName\":{},\"RefreshTokenValidity\":{\"type\":\"integer\"},\"AccessTokenValidity\":{\"type\":\"integer\"},\"IdTokenValidity\":{\"type\":\"integer\"},\"TokenValidityUnits\":{\"shape\":\"S6c\"},\"ReadAttributes\":{\"shape\":\"S6e\"},\"WriteAttributes\":{\"shape\":\"S6e\"},\"ExplicitAuthFlows\":{\"shape\":\"S6g\"},\"SupportedIdentityProviders\":{\"shape\":\"S6i\"},\"CallbackURLs\":{\"shape\":\"S6j\"},\"LogoutURLs\":{\"shape\":\"S6l\"},\"DefaultRedirectURI\":{},\"AllowedOAuthFlows\":{\"shape\":\"S6m\"},\"AllowedOAuthScopes\":{\"shape\":\"S6o\"},\"AllowedOAuthFlowsUserPoolClient\":{\"type\":\"boolean\"},\"AnalyticsConfiguration\":{\"shape\":\"S6q\"},\"PreventUserExistenceErrors\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserPoolClient\":{\"shape\":\"S6u\"}}}},\"UpdateUserPoolDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"Domain\",\"UserPoolId\",\"CustomDomainConfig\"],\"members\":{\"Domain\":{},\"UserPoolId\":{},\"CustomDomainConfig\":{\"shape\":\"S6x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CloudFrontDomain\":{}}}},\"VerifySoftwareToken\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserCode\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"Session\":{},\"UserCode\":{},\"FriendlyDeviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"Session\":{}}}},\"VerifyUserAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessToken\",\"AttributeName\",\"Code\"],\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"AttributeName\":{},\"Code\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"authtype\":\"none\"}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"AttributeDataType\":{},\"DeveloperOnlyAttribute\":{\"type\":\"boolean\"},\"Mutable\":{\"type\":\"boolean\"},\"Required\":{\"type\":\"boolean\"},\"NumberAttributeConstraints\":{\"type\":\"structure\",\"members\":{\"MinValue\":{},\"MaxValue\":{}}},\"StringAttributeConstraints\":{\"type\":\"structure\",\"members\":{\"MinLength\":{},\"MaxLength\":{}}}}},\"Sd\":{\"type\":\"string\",\"sensitive\":true},\"Sg\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Value\":{\"type\":\"string\",\"sensitive\":true}}}},\"Sn\":{\"type\":\"string\",\"sensitive\":true},\"St\":{\"type\":\"structure\",\"members\":{\"Username\":{\"shape\":\"Sd\"},\"Attributes\":{\"shape\":\"Sj\"},\"UserCreateDate\":{\"type\":\"timestamp\"},\"UserLastModifiedDate\":{\"type\":\"timestamp\"},\"Enabled\":{\"type\":\"boolean\"},\"UserStatus\":{},\"MFAOptions\":{\"shape\":\"Sw\"}}},\"Sw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeliveryMedium\":{},\"AttributeName\":{}}}},\"S10\":{\"type\":\"list\",\"member\":{}},\"S13\":{\"type\":\"structure\",\"members\":{\"ProviderName\":{},\"ProviderAttributeName\":{},\"ProviderAttributeValue\":{}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"DeviceKey\":{},\"DeviceAttributes\":{\"shape\":\"Sj\"},\"DeviceCreateDate\":{\"type\":\"timestamp\"},\"DeviceLastModifiedDate\":{\"type\":\"timestamp\"},\"DeviceLastAuthenticatedDate\":{\"type\":\"timestamp\"}}},\"S1h\":{\"type\":\"list\",\"member\":{}},\"S1j\":{\"type\":\"string\",\"sensitive\":true},\"S1l\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"S1m\":{\"type\":\"structure\",\"members\":{\"AnalyticsEndpointId\":{}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"IpAddress\",\"ServerName\",\"ServerPath\",\"HttpHeaders\"],\"members\":{\"IpAddress\":{},\"ServerName\":{},\"ServerPath\":{},\"HttpHeaders\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"headerName\":{},\"headerValue\":{}}}},\"EncodedData\":{}}},\"S1t\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1u\":{\"type\":\"structure\",\"members\":{\"AccessToken\":{\"shape\":\"S1v\"},\"ExpiresIn\":{\"type\":\"integer\"},\"TokenType\":{},\"RefreshToken\":{\"shape\":\"S1v\"},\"IdToken\":{\"shape\":\"S1v\"},\"NewDeviceMetadata\":{\"type\":\"structure\",\"members\":{\"DeviceKey\":{},\"DeviceGroupKey\":{}}}}},\"S1v\":{\"type\":\"string\",\"sensitive\":true},\"S24\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}},\"S28\":{\"type\":\"list\",\"member\":{\"shape\":\"S29\"}},\"S29\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"UserPoolId\":{},\"Description\":{},\"RoleArn\":{},\"Precedence\":{\"type\":\"integer\"},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"}}},\"S2y\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S31\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"PreferredMfa\":{\"type\":\"boolean\"}}},\"S32\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"PreferredMfa\":{\"type\":\"boolean\"}}},\"S3s\":{\"type\":\"string\",\"sensitive\":true},\"S3u\":{\"type\":\"structure\",\"members\":{\"EncodedData\":{}}},\"S43\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S44\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S46\":{\"type\":\"list\",\"member\":{}},\"S49\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"ProviderName\":{},\"ProviderType\":{},\"ProviderDetails\":{\"shape\":\"S43\"},\"AttributeMapping\":{\"shape\":\"S44\"},\"IdpIdentifiers\":{\"shape\":\"S46\"},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"}}},\"S4d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ScopeName\",\"ScopeDescription\"],\"members\":{\"ScopeName\":{},\"ScopeDescription\":{}}}},\"S4i\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"Identifier\":{},\"Name\":{},\"Scopes\":{\"shape\":\"S4d\"}}},\"S4m\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobId\":{},\"UserPoolId\":{},\"PreSignedUrl\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"StartDate\":{\"type\":\"timestamp\"},\"CompletionDate\":{\"type\":\"timestamp\"},\"Status\":{},\"CloudWatchLogsRoleArn\":{},\"ImportedUsers\":{\"type\":\"long\"},\"SkippedUsers\":{\"type\":\"long\"},\"FailedUsers\":{\"type\":\"long\"},\"CompletionMessage\":{}}},\"S4u\":{\"type\":\"structure\",\"members\":{\"PasswordPolicy\":{\"type\":\"structure\",\"members\":{\"MinimumLength\":{\"type\":\"integer\"},\"RequireUppercase\":{\"type\":\"boolean\"},\"RequireLowercase\":{\"type\":\"boolean\"},\"RequireNumbers\":{\"type\":\"boolean\"},\"RequireSymbols\":{\"type\":\"boolean\"},\"TemporaryPasswordValidityDays\":{\"type\":\"integer\"}}}}},\"S4y\":{\"type\":\"structure\",\"members\":{\"PreSignUp\":{},\"CustomMessage\":{},\"PostConfirmation\":{},\"PreAuthentication\":{},\"PostAuthentication\":{},\"DefineAuthChallenge\":{},\"CreateAuthChallenge\":{},\"VerifyAuthChallengeResponse\":{},\"PreTokenGeneration\":{},\"UserMigration\":{},\"CustomSMSSender\":{\"type\":\"structure\",\"required\":[\"LambdaVersion\",\"LambdaArn\"],\"members\":{\"LambdaVersion\":{},\"LambdaArn\":{}}},\"CustomEmailSender\":{\"type\":\"structure\",\"required\":[\"LambdaVersion\",\"LambdaArn\"],\"members\":{\"LambdaVersion\":{},\"LambdaArn\":{}}},\"KMSKeyID\":{}}},\"S53\":{\"type\":\"list\",\"member\":{}},\"S55\":{\"type\":\"list\",\"member\":{}},\"S57\":{\"type\":\"list\",\"member\":{}},\"S5c\":{\"type\":\"structure\",\"members\":{\"SmsMessage\":{},\"EmailMessage\":{},\"EmailSubject\":{},\"EmailMessageByLink\":{},\"EmailSubjectByLink\":{},\"DefaultEmailOption\":{}}},\"S5h\":{\"type\":\"structure\",\"members\":{\"ChallengeRequiredOnNewDevice\":{\"type\":\"boolean\"},\"DeviceOnlyRememberedOnUserPrompt\":{\"type\":\"boolean\"}}},\"S5i\":{\"type\":\"structure\",\"members\":{\"SourceArn\":{},\"ReplyToEmailAddress\":{},\"EmailSendingAccount\":{},\"From\":{},\"ConfigurationSet\":{}}},\"S5m\":{\"type\":\"structure\",\"required\":[\"SnsCallerArn\"],\"members\":{\"SnsCallerArn\":{},\"ExternalId\":{}}},\"S5n\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S5q\":{\"type\":\"structure\",\"members\":{\"AllowAdminCreateUserOnly\":{\"type\":\"boolean\"},\"UnusedAccountValidityDays\":{\"type\":\"integer\"},\"InviteMessageTemplate\":{\"type\":\"structure\",\"members\":{\"SMSMessage\":{},\"EmailMessage\":{},\"EmailSubject\":{}}}}},\"S5t\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"S5u\":{\"type\":\"structure\",\"required\":[\"AdvancedSecurityMode\"],\"members\":{\"AdvancedSecurityMode\":{}}},\"S5w\":{\"type\":\"structure\",\"required\":[\"CaseSensitive\"],\"members\":{\"CaseSensitive\":{\"type\":\"boolean\"}}},\"S5x\":{\"type\":\"structure\",\"members\":{\"RecoveryMechanisms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Priority\",\"Name\"],\"members\":{\"Priority\":{\"type\":\"integer\"},\"Name\":{}}}}}},\"S63\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Policies\":{\"shape\":\"S4u\"},\"LambdaConfig\":{\"shape\":\"S4y\"},\"Status\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"},\"SchemaAttributes\":{\"shape\":\"S5t\"},\"AutoVerifiedAttributes\":{\"shape\":\"S53\"},\"AliasAttributes\":{\"shape\":\"S55\"},\"UsernameAttributes\":{\"shape\":\"S57\"},\"SmsVerificationMessage\":{},\"EmailVerificationMessage\":{},\"EmailVerificationSubject\":{},\"VerificationMessageTemplate\":{\"shape\":\"S5c\"},\"SmsAuthenticationMessage\":{},\"MfaConfiguration\":{},\"DeviceConfiguration\":{\"shape\":\"S5h\"},\"EstimatedNumberOfUsers\":{\"type\":\"integer\"},\"EmailConfiguration\":{\"shape\":\"S5i\"},\"SmsConfiguration\":{\"shape\":\"S5m\"},\"UserPoolTags\":{\"shape\":\"S5n\"},\"SmsConfigurationFailure\":{},\"EmailConfigurationFailure\":{},\"Domain\":{},\"CustomDomain\":{},\"AdminCreateUserConfig\":{\"shape\":\"S5q\"},\"UserPoolAddOns\":{\"shape\":\"S5u\"},\"UsernameConfiguration\":{\"shape\":\"S5w\"},\"Arn\":{},\"AccountRecoverySetting\":{\"shape\":\"S5x\"}}},\"S6c\":{\"type\":\"structure\",\"members\":{\"AccessToken\":{},\"IdToken\":{},\"RefreshToken\":{}}},\"S6e\":{\"type\":\"list\",\"member\":{}},\"S6g\":{\"type\":\"list\",\"member\":{}},\"S6i\":{\"type\":\"list\",\"member\":{}},\"S6j\":{\"type\":\"list\",\"member\":{}},\"S6l\":{\"type\":\"list\",\"member\":{}},\"S6m\":{\"type\":\"list\",\"member\":{}},\"S6o\":{\"type\":\"list\",\"member\":{}},\"S6q\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"ApplicationArn\":{},\"RoleArn\":{},\"ExternalId\":{},\"UserDataShared\":{\"type\":\"boolean\"}}},\"S6u\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"ClientName\":{},\"ClientId\":{\"shape\":\"S1j\"},\"ClientSecret\":{\"type\":\"string\",\"sensitive\":true},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"},\"RefreshTokenValidity\":{\"type\":\"integer\"},\"AccessTokenValidity\":{\"type\":\"integer\"},\"IdTokenValidity\":{\"type\":\"integer\"},\"TokenValidityUnits\":{\"shape\":\"S6c\"},\"ReadAttributes\":{\"shape\":\"S6e\"},\"WriteAttributes\":{\"shape\":\"S6e\"},\"ExplicitAuthFlows\":{\"shape\":\"S6g\"},\"SupportedIdentityProviders\":{\"shape\":\"S6i\"},\"CallbackURLs\":{\"shape\":\"S6j\"},\"LogoutURLs\":{\"shape\":\"S6l\"},\"DefaultRedirectURI\":{},\"AllowedOAuthFlows\":{\"shape\":\"S6m\"},\"AllowedOAuthScopes\":{\"shape\":\"S6o\"},\"AllowedOAuthFlowsUserPoolClient\":{\"type\":\"boolean\"},\"AnalyticsConfiguration\":{\"shape\":\"S6q\"},\"PreventUserExistenceErrors\":{}}},\"S6x\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}},\"S7f\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"CompromisedCredentialsRiskConfiguration\":{\"shape\":\"S7g\"},\"AccountTakeoverRiskConfiguration\":{\"shape\":\"S7l\"},\"RiskExceptionConfiguration\":{\"shape\":\"S7u\"},\"LastModifiedDate\":{\"type\":\"timestamp\"}}},\"S7g\":{\"type\":\"structure\",\"required\":[\"Actions\"],\"members\":{\"EventFilter\":{\"type\":\"list\",\"member\":{}},\"Actions\":{\"type\":\"structure\",\"required\":[\"EventAction\"],\"members\":{\"EventAction\":{}}}}},\"S7l\":{\"type\":\"structure\",\"required\":[\"Actions\"],\"members\":{\"NotifyConfiguration\":{\"type\":\"structure\",\"required\":[\"SourceArn\"],\"members\":{\"From\":{},\"ReplyTo\":{},\"SourceArn\":{},\"BlockEmail\":{\"shape\":\"S7n\"},\"NoActionEmail\":{\"shape\":\"S7n\"},\"MfaEmail\":{\"shape\":\"S7n\"}}},\"Actions\":{\"type\":\"structure\",\"members\":{\"LowAction\":{\"shape\":\"S7r\"},\"MediumAction\":{\"shape\":\"S7r\"},\"HighAction\":{\"shape\":\"S7r\"}}}}},\"S7n\":{\"type\":\"structure\",\"required\":[\"Subject\"],\"members\":{\"Subject\":{},\"HtmlBody\":{},\"TextBody\":{}}},\"S7r\":{\"type\":\"structure\",\"required\":[\"Notify\",\"EventAction\"],\"members\":{\"Notify\":{\"type\":\"boolean\"},\"EventAction\":{}}},\"S7u\":{\"type\":\"structure\",\"members\":{\"BlockedIPRangeList\":{\"type\":\"list\",\"member\":{}},\"SkippedIPRangeList\":{\"type\":\"list\",\"member\":{}}}},\"S8d\":{\"type\":\"structure\",\"members\":{\"Destination\":{},\"DeliveryMedium\":{},\"AttributeName\":{}}},\"S8r\":{\"type\":\"structure\",\"members\":{\"UserPoolId\":{},\"ClientId\":{\"shape\":\"S1j\"},\"ImageUrl\":{},\"CSS\":{},\"CSSVersion\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"CreationDate\":{\"type\":\"timestamp\"}}},\"S91\":{\"type\":\"structure\",\"members\":{\"SmsAuthenticationMessage\":{},\"SmsConfiguration\":{\"shape\":\"S5m\"}}},\"S92\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"Sa4\":{\"type\":\"list\",\"member\":{\"shape\":\"St\"}}}}");

/***/ }),

/***/ 32568:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"AdminListGroupsForUser\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Groups\"},\"AdminListUserAuthEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AuthEvents\"},\"ListGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Groups\"},\"ListIdentityProviders\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Providers\"},\"ListResourceServers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ResourceServers\"},\"ListUserPoolClients\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"UserPoolClients\"},\"ListUserPools\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"UserPools\"},\"ListUsers\":{\"input_token\":\"PaginationToken\",\"limit_key\":\"Limit\",\"output_token\":\"PaginationToken\",\"result_key\":\"Users\"},\"ListUsersInGroup\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Users\"}}}");

/***/ }),

/***/ 91406:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-06-30\",\"endpointPrefix\":\"cognito-sync\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Cognito Sync\",\"serviceId\":\"Cognito Sync\",\"signatureVersion\":\"v4\",\"uid\":\"cognito-sync-2014-06-30\"},\"operations\":{\"BulkPublish\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/bulkpublish\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{}}}},\"DeleteDataset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"DatasetName\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"DatasetName\":{\"location\":\"uri\",\"locationName\":\"DatasetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Dataset\":{\"shape\":\"S8\"}}}},\"DescribeDataset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"DatasetName\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"DatasetName\":{\"location\":\"uri\",\"locationName\":\"DatasetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Dataset\":{\"shape\":\"S8\"}}}},\"DescribeIdentityPoolUsage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolUsage\":{\"shape\":\"Sg\"}}}},\"DescribeIdentityUsage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityUsage\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"IdentityPoolId\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"DatasetCount\":{\"type\":\"integer\"},\"DataStorage\":{\"type\":\"long\"}}}}}},\"GetBulkPublishDetails\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/getBulkPublishDetails\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"BulkPublishStartTime\":{\"type\":\"timestamp\"},\"BulkPublishCompleteTime\":{\"type\":\"timestamp\"},\"BulkPublishStatus\":{},\"FailureMessage\":{}}}},\"GetCognitoEvents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}/events\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Events\":{\"shape\":\"Sq\"}}}},\"GetIdentityPoolConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"PushSync\":{\"shape\":\"Sv\"},\"CognitoStreams\":{\"shape\":\"Sz\"}}}},\"ListDatasets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityId\",\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Datasets\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"Count\":{\"type\":\"integer\"},\"NextToken\":{}}}},\"ListIdentityPoolUsage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolUsages\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}},\"MaxResults\":{\"type\":\"integer\"},\"Count\":{\"type\":\"integer\"},\"NextToken\":{}}}},\"ListRecords\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/records\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"DatasetName\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"DatasetName\":{\"location\":\"uri\",\"locationName\":\"DatasetName\"},\"LastSyncCount\":{\"location\":\"querystring\",\"locationName\":\"lastSyncCount\",\"type\":\"long\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"SyncSessionToken\":{\"location\":\"querystring\",\"locationName\":\"syncSessionToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Records\":{\"shape\":\"S1c\"},\"NextToken\":{},\"Count\":{\"type\":\"integer\"},\"DatasetSyncCount\":{\"type\":\"long\"},\"LastModifiedBy\":{},\"MergedDatasetNames\":{\"type\":\"list\",\"member\":{}},\"DatasetExists\":{\"type\":\"boolean\"},\"DatasetDeletedAfterRequestedSyncCount\":{\"type\":\"boolean\"},\"SyncSessionToken\":{}}}},\"RegisterDevice\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/identity/{IdentityId}/device\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"Platform\",\"Token\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"Platform\":{},\"Token\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{}}}},\"SetCognitoEvents\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/events\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"Events\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"Events\":{\"shape\":\"Sq\"}}}},\"SetIdentityPoolConfiguration\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"PushSync\":{\"shape\":\"Sv\"},\"CognitoStreams\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"PushSync\":{\"shape\":\"Sv\"},\"CognitoStreams\":{\"shape\":\"Sz\"}}}},\"SubscribeToDataset\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"DatasetName\",\"DeviceId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"DatasetName\":{\"location\":\"uri\",\"locationName\":\"DatasetName\"},\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"DeviceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UnsubscribeFromDataset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"DatasetName\",\"DeviceId\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"DatasetName\":{\"location\":\"uri\",\"locationName\":\"DatasetName\"},\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"DeviceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRecords\":{\"http\":{\"requestUri\":\"/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityPoolId\",\"IdentityId\",\"DatasetName\",\"SyncSessionToken\"],\"members\":{\"IdentityPoolId\":{\"location\":\"uri\",\"locationName\":\"IdentityPoolId\"},\"IdentityId\":{\"location\":\"uri\",\"locationName\":\"IdentityId\"},\"DatasetName\":{\"location\":\"uri\",\"locationName\":\"DatasetName\"},\"DeviceId\":{},\"RecordPatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Op\",\"Key\",\"SyncCount\"],\"members\":{\"Op\":{},\"Key\":{},\"Value\":{},\"SyncCount\":{\"type\":\"long\"},\"DeviceLastModifiedDate\":{\"type\":\"timestamp\"}}}},\"SyncSessionToken\":{},\"ClientContext\":{\"location\":\"header\",\"locationName\":\"x-amz-Client-Context\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Records\":{\"shape\":\"S1c\"}}}}},\"shapes\":{\"S8\":{\"type\":\"structure\",\"members\":{\"IdentityId\":{},\"DatasetName\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"DataStorage\":{\"type\":\"long\"},\"NumRecords\":{\"type\":\"long\"}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"IdentityPoolId\":{},\"SyncSessionsCount\":{\"type\":\"long\"},\"DataStorage\":{\"type\":\"long\"},\"LastModifiedDate\":{\"type\":\"timestamp\"}}},\"Sq\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sv\":{\"type\":\"structure\",\"members\":{\"ApplicationArns\":{\"type\":\"list\",\"member\":{}},\"RoleArn\":{}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"RoleArn\":{},\"StreamingStatus\":{}}},\"S1c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"SyncCount\":{\"type\":\"long\"},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"DeviceLastModifiedDate\":{\"type\":\"timestamp\"}}}}}}");

/***/ }),

/***/ 23418:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 71004:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-11-27\",\"endpointPrefix\":\"comprehend\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Comprehend\",\"serviceId\":\"Comprehend\",\"signatureVersion\":\"v4\",\"signingName\":\"comprehend\",\"targetPrefix\":\"Comprehend_20171127\",\"uid\":\"comprehend-2017-11-27\"},\"operations\":{\"BatchDetectDominantLanguage\":{\"input\":{\"type\":\"structure\",\"required\":[\"TextList\"],\"members\":{\"TextList\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResultList\",\"ErrorList\"],\"members\":{\"ResultList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"integer\"},\"Languages\":{\"shape\":\"S8\"}}}},\"ErrorList\":{\"shape\":\"Sc\"}},\"sensitive\":true}},\"BatchDetectEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"TextList\",\"LanguageCode\"],\"members\":{\"TextList\":{\"shape\":\"S2\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResultList\",\"ErrorList\"],\"members\":{\"ResultList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"integer\"},\"Entities\":{\"shape\":\"Sj\"}}}},\"ErrorList\":{\"shape\":\"Sc\"}},\"sensitive\":true}},\"BatchDetectKeyPhrases\":{\"input\":{\"type\":\"structure\",\"required\":[\"TextList\",\"LanguageCode\"],\"members\":{\"TextList\":{\"shape\":\"S2\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResultList\",\"ErrorList\"],\"members\":{\"ResultList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"integer\"},\"KeyPhrases\":{\"shape\":\"Sq\"}}}},\"ErrorList\":{\"shape\":\"Sc\"}},\"sensitive\":true}},\"BatchDetectSentiment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TextList\",\"LanguageCode\"],\"members\":{\"TextList\":{\"shape\":\"S2\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResultList\",\"ErrorList\"],\"members\":{\"ResultList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"integer\"},\"Sentiment\":{},\"SentimentScore\":{\"shape\":\"Sx\"}}}},\"ErrorList\":{\"shape\":\"Sc\"}},\"sensitive\":true}},\"BatchDetectSyntax\":{\"input\":{\"type\":\"structure\",\"required\":[\"TextList\",\"LanguageCode\"],\"members\":{\"TextList\":{\"shape\":\"S2\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResultList\",\"ErrorList\"],\"members\":{\"ResultList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"integer\"},\"SyntaxTokens\":{\"shape\":\"S13\"}}}},\"ErrorList\":{\"shape\":\"Sc\"}},\"sensitive\":true}},\"ClassifyDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"EndpointArn\"],\"members\":{\"Text\":{\"shape\":\"S3\"},\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Classes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Score\":{\"type\":\"float\"}}}},\"Labels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Score\":{\"type\":\"float\"}}}}},\"sensitive\":true}},\"ContainsPiiEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"LanguageCode\"],\"members\":{\"Text\":{},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Labels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Score\":{\"type\":\"float\"}}}}}}},\"CreateDocumentClassifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentClassifierName\",\"DataAccessRoleArn\",\"InputDataConfig\",\"LanguageCode\"],\"members\":{\"DocumentClassifierName\":{},\"DataAccessRoleArn\":{},\"Tags\":{\"shape\":\"S1m\"},\"InputDataConfig\":{\"shape\":\"S1q\"},\"OutputDataConfig\":{\"shape\":\"S1y\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"LanguageCode\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"},\"Mode\":{},\"ModelKmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentClassifierArn\":{}}}},\"CreateEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"ModelArn\",\"DesiredInferenceUnits\"],\"members\":{\"EndpointName\":{},\"ModelArn\":{},\"DesiredInferenceUnits\":{\"type\":\"integer\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S1m\"},\"DataAccessRoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointArn\":{}}}},\"CreateEntityRecognizer\":{\"input\":{\"type\":\"structure\",\"required\":[\"RecognizerName\",\"DataAccessRoleArn\",\"InputDataConfig\",\"LanguageCode\"],\"members\":{\"RecognizerName\":{},\"DataAccessRoleArn\":{},\"Tags\":{\"shape\":\"S1m\"},\"InputDataConfig\":{\"shape\":\"S2g\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"LanguageCode\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"},\"ModelKmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntityRecognizerArn\":{}}}},\"DeleteDocumentClassifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentClassifierArn\"],\"members\":{\"DocumentClassifierArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEntityRecognizer\":{\"input\":{\"type\":\"structure\",\"required\":[\"EntityRecognizerArn\"],\"members\":{\"EntityRecognizerArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeDocumentClassificationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentClassificationJobProperties\":{\"shape\":\"S30\"}}}},\"DescribeDocumentClassifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentClassifierArn\"],\"members\":{\"DocumentClassifierArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentClassifierProperties\":{\"shape\":\"S3a\"}}}},\"DescribeDominantLanguageDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DominantLanguageDetectionJobProperties\":{\"shape\":\"S3h\"}}}},\"DescribeEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointProperties\":{\"shape\":\"S3k\"}}}},\"DescribeEntitiesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntitiesDetectionJobProperties\":{\"shape\":\"S3o\"}}}},\"DescribeEntityRecognizer\":{\"input\":{\"type\":\"structure\",\"required\":[\"EntityRecognizerArn\"],\"members\":{\"EntityRecognizerArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntityRecognizerProperties\":{\"shape\":\"S3r\"}}}},\"DescribeEventsDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventsDetectionJobProperties\":{\"shape\":\"S3z\"}}}},\"DescribeKeyPhrasesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyPhrasesDetectionJobProperties\":{\"shape\":\"S44\"}}}},\"DescribePiiEntitiesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PiiEntitiesDetectionJobProperties\":{\"shape\":\"S47\"}}}},\"DescribeSentimentDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SentimentDetectionJobProperties\":{\"shape\":\"S4g\"}}}},\"DescribeTopicsDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TopicsDetectionJobProperties\":{\"shape\":\"S4j\"}}}},\"DetectDominantLanguage\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Languages\":{\"shape\":\"S8\"}},\"sensitive\":true}},\"DetectEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{\"shape\":\"S3\"},\"LanguageCode\":{},\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entities\":{\"shape\":\"Sj\"}},\"sensitive\":true}},\"DetectKeyPhrases\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"LanguageCode\"],\"members\":{\"Text\":{\"shape\":\"S3\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyPhrases\":{\"shape\":\"Sq\"}},\"sensitive\":true}},\"DetectPiiEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"LanguageCode\"],\"members\":{\"Text\":{},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Score\":{\"type\":\"float\"},\"Type\":{},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"}}}}}}},\"DetectSentiment\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"LanguageCode\"],\"members\":{\"Text\":{\"shape\":\"S3\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sentiment\":{},\"SentimentScore\":{\"shape\":\"Sx\"}},\"sensitive\":true}},\"DetectSyntax\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"LanguageCode\"],\"members\":{\"Text\":{\"shape\":\"S3\"},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SyntaxTokens\":{\"shape\":\"S13\"}},\"sensitive\":true}},\"ListDocumentClassificationJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentClassificationJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S30\"}},\"NextToken\":{}}}},\"ListDocumentClassifiers\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentClassifierPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3a\"}},\"NextToken\":{}}}},\"ListDominantLanguageDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DominantLanguageDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3h\"}},\"NextToken\":{}}}},\"ListEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"ModelArn\":{},\"Status\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3k\"}},\"NextToken\":{}}}},\"ListEntitiesDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntitiesDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3o\"}},\"NextToken\":{}}}},\"ListEntityRecognizers\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntityRecognizerPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3r\"}},\"NextToken\":{}}}},\"ListEventsDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventsDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3z\"}},\"NextToken\":{}}}},\"ListKeyPhrasesDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyPhrasesDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S44\"}},\"NextToken\":{}}}},\"ListPiiEntitiesDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PiiEntitiesDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S47\"}},\"NextToken\":{}}}},\"ListSentimentDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SentimentDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4g\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S1m\"}}}},\"ListTopicsDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TopicsDetectionJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4j\"}},\"NextToken\":{}}}},\"StartDocumentClassificationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentClassifierArn\",\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\"],\"members\":{\"JobName\":{},\"DocumentClassifierArn\":{},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartDominantLanguageDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartEntitiesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"EntityRecognizerArn\":{},\"LanguageCode\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartEventsDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\",\"TargetEventTypes\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"LanguageCode\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"TargetEventTypes\":{\"shape\":\"S40\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartKeyPhrasesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"LanguageCode\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartPiiEntitiesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"Mode\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"Mode\":{},\"RedactionConfig\":{\"shape\":\"S49\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"LanguageCode\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartSentimentDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"LanguageCode\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StartTopicsDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"NumberOfTopics\":{\"type\":\"integer\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopDominantLanguageDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopEntitiesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopEventsDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopKeyPhrasesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopPiiEntitiesDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopSentimentDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopTrainingDocumentClassifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentClassifierArn\"],\"members\":{\"DocumentClassifierArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopTrainingEntityRecognizer\":{\"input\":{\"type\":\"structure\",\"required\":[\"EntityRecognizerArn\"],\"members\":{\"EntityRecognizerArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S1m\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\",\"DesiredInferenceUnits\"],\"members\":{\"EndpointArn\":{},\"DesiredInferenceUnits\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"},\"sensitive\":true},\"S3\":{\"type\":\"string\",\"sensitive\":true},\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LanguageCode\":{},\"Score\":{\"type\":\"float\"}}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"integer\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Score\":{\"type\":\"float\"},\"Type\":{},\"Text\":{},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"}}}},\"Sq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Score\":{\"type\":\"float\"},\"Text\":{},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"}}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"Positive\":{\"type\":\"float\"},\"Negative\":{\"type\":\"float\"},\"Neutral\":{\"type\":\"float\"},\"Mixed\":{\"type\":\"float\"}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TokenId\":{\"type\":\"integer\"},\"Text\":{},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"PartOfSpeech\":{\"type\":\"structure\",\"members\":{\"Tag\":{},\"Score\":{\"type\":\"float\"}}}}}},\"S1m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S1q\":{\"type\":\"structure\",\"members\":{\"DataFormat\":{},\"S3Uri\":{},\"LabelDelimiter\":{},\"AugmentedManifests\":{\"type\":\"list\",\"member\":{\"shape\":\"S1v\"}}}},\"S1v\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"AttributeNames\"],\"members\":{\"S3Uri\":{},\"AttributeNames\":{\"type\":\"list\",\"member\":{}}}},\"S1y\":{\"type\":\"structure\",\"members\":{\"S3Uri\":{},\"KmsKeyId\":{}}},\"S21\":{\"type\":\"structure\",\"required\":[\"SecurityGroupIds\",\"Subnets\"],\"members\":{\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}},\"Subnets\":{\"type\":\"list\",\"member\":{}}}},\"S2g\":{\"type\":\"structure\",\"required\":[\"EntityTypes\"],\"members\":{\"DataFormat\":{},\"EntityTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}}},\"Documents\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{}}},\"Annotations\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{}}},\"EntityList\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{}}},\"AugmentedManifests\":{\"type\":\"list\",\"member\":{\"shape\":\"S1v\"}}}},\"S30\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"DocumentClassifierArn\":{},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"S35\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{},\"InputFormat\":{}}},\"S37\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{},\"KmsKeyId\":{}}},\"S3a\":{\"type\":\"structure\",\"members\":{\"DocumentClassifierArn\":{},\"LanguageCode\":{},\"Status\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"TrainingStartTime\":{\"type\":\"timestamp\"},\"TrainingEndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S1q\"},\"OutputDataConfig\":{\"shape\":\"S1y\"},\"ClassifierMetadata\":{\"type\":\"structure\",\"members\":{\"NumberOfLabels\":{\"type\":\"integer\"},\"NumberOfTrainedDocuments\":{\"type\":\"integer\"},\"NumberOfTestDocuments\":{\"type\":\"integer\"},\"EvaluationMetrics\":{\"type\":\"structure\",\"members\":{\"Accuracy\":{\"type\":\"double\"},\"Precision\":{\"type\":\"double\"},\"Recall\":{\"type\":\"double\"},\"F1Score\":{\"type\":\"double\"},\"MicroPrecision\":{\"type\":\"double\"},\"MicroRecall\":{\"type\":\"double\"},\"MicroF1Score\":{\"type\":\"double\"},\"HammingLoss\":{\"type\":\"double\"}}}},\"sensitive\":true},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"},\"Mode\":{},\"ModelKmsKeyId\":{}}},\"S3h\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"S3k\":{\"type\":\"structure\",\"members\":{\"EndpointArn\":{},\"Status\":{},\"Message\":{},\"ModelArn\":{},\"DesiredInferenceUnits\":{\"type\":\"integer\"},\"CurrentInferenceUnits\":{\"type\":\"integer\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DataAccessRoleArn\":{}}},\"S3o\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"EntityRecognizerArn\":{},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"LanguageCode\":{},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"S3r\":{\"type\":\"structure\",\"members\":{\"EntityRecognizerArn\":{},\"LanguageCode\":{},\"Status\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"TrainingStartTime\":{\"type\":\"timestamp\"},\"TrainingEndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S2g\"},\"RecognizerMetadata\":{\"type\":\"structure\",\"members\":{\"NumberOfTrainedDocuments\":{\"type\":\"integer\"},\"NumberOfTestDocuments\":{\"type\":\"integer\"},\"EvaluationMetrics\":{\"type\":\"structure\",\"members\":{\"Precision\":{\"type\":\"double\"},\"Recall\":{\"type\":\"double\"},\"F1Score\":{\"type\":\"double\"}}},\"EntityTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"EvaluationMetrics\":{\"type\":\"structure\",\"members\":{\"Precision\":{\"type\":\"double\"},\"Recall\":{\"type\":\"double\"},\"F1Score\":{\"type\":\"double\"}}},\"NumberOfTrainMentions\":{\"type\":\"integer\"}}}}},\"sensitive\":true},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"},\"ModelKmsKeyId\":{}}},\"S3z\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"LanguageCode\":{},\"DataAccessRoleArn\":{},\"TargetEventTypes\":{\"shape\":\"S40\"}}},\"S40\":{\"type\":\"list\",\"member\":{}},\"S44\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"LanguageCode\":{},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"S47\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{},\"KmsKeyId\":{}}},\"RedactionConfig\":{\"shape\":\"S49\"},\"LanguageCode\":{},\"DataAccessRoleArn\":{},\"Mode\":{}}},\"S49\":{\"type\":\"structure\",\"members\":{\"PiiEntityTypes\":{\"type\":\"list\",\"member\":{}},\"MaskMode\":{},\"MaskCharacter\":{}}},\"S4g\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"LanguageCode\":{},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}},\"S4j\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S35\"},\"OutputDataConfig\":{\"shape\":\"S37\"},\"NumberOfTopics\":{\"type\":\"integer\"},\"DataAccessRoleArn\":{},\"VolumeKmsKeyId\":{},\"VpcConfig\":{\"shape\":\"S21\"}}}}}");

/***/ }),

/***/ 70341:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDocumentClassificationJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDocumentClassifiers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDominantLanguageDetectionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListEntitiesDetectionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListEntityRecognizers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListEventsDetectionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListKeyPhrasesDetectionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSentimentDetectionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTopicsDetectionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 65085:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-10-30\",\"endpointPrefix\":\"comprehendmedical\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"ComprehendMedical\",\"serviceFullName\":\"AWS Comprehend Medical\",\"serviceId\":\"ComprehendMedical\",\"signatureVersion\":\"v4\",\"signingName\":\"comprehendmedical\",\"targetPrefix\":\"ComprehendMedical_20181030\",\"uid\":\"comprehendmedical-2018-10-30\"},\"operations\":{\"DescribeEntitiesDetectionV2Job\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobProperties\":{\"shape\":\"S4\"}}}},\"DescribeICD10CMInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobProperties\":{\"shape\":\"S4\"}}}},\"DescribePHIDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobProperties\":{\"shape\":\"S4\"}}}},\"DescribeRxNormInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobProperties\":{\"shape\":\"S4\"}}}},\"DetectEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entities\",\"ModelVersion\"],\"members\":{\"Entities\":{\"shape\":\"Sr\"},\"UnmappedAttributes\":{\"shape\":\"S14\"},\"PaginationToken\":{},\"ModelVersion\":{}}},\"deprecated\":true,\"deprecatedMessage\":\"This operation is deprecated, use DetectEntitiesV2 instead.\"},\"DetectEntitiesV2\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entities\",\"ModelVersion\"],\"members\":{\"Entities\":{\"shape\":\"Sr\"},\"UnmappedAttributes\":{\"shape\":\"S14\"},\"PaginationToken\":{},\"ModelVersion\":{}}}},\"DetectPHI\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entities\",\"ModelVersion\"],\"members\":{\"Entities\":{\"shape\":\"Sr\"},\"PaginationToken\":{},\"ModelVersion\":{}}}},\"InferICD10CM\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entities\"],\"members\":{\"Entities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"type\":\"integer\"},\"Text\":{},\"Category\":{},\"Type\":{},\"Score\":{\"type\":\"float\"},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"Attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Score\":{\"type\":\"float\"},\"RelationshipScore\":{\"type\":\"float\"},\"Id\":{\"type\":\"integer\"},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"Text\":{},\"Traits\":{\"shape\":\"S1k\"},\"Category\":{},\"RelationshipType\":{}}}},\"Traits\":{\"shape\":\"S1k\"},\"ICD10CMConcepts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Code\":{},\"Score\":{\"type\":\"float\"}}}}}}},\"PaginationToken\":{},\"ModelVersion\":{}}}},\"InferRxNorm\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\"],\"members\":{\"Text\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entities\"],\"members\":{\"Entities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"type\":\"integer\"},\"Text\":{},\"Category\":{},\"Type\":{},\"Score\":{\"type\":\"float\"},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"Attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Score\":{\"type\":\"float\"},\"RelationshipScore\":{\"type\":\"float\"},\"Id\":{\"type\":\"integer\"},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"Text\":{},\"Traits\":{\"shape\":\"S1z\"}}}},\"Traits\":{\"shape\":\"S1z\"},\"RxNormConcepts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Code\":{},\"Score\":{\"type\":\"float\"}}}}}}},\"PaginationToken\":{},\"ModelVersion\":{}}}},\"ListEntitiesDetectionV2Jobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"S25\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobPropertiesList\":{\"shape\":\"S28\"},\"NextToken\":{}}}},\"ListICD10CMInferenceJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"S25\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobPropertiesList\":{\"shape\":\"S28\"},\"NextToken\":{}}}},\"ListPHIDetectionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"S25\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobPropertiesList\":{\"shape\":\"S28\"},\"NextToken\":{}}}},\"ListRxNormInferenceJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"S25\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComprehendMedicalAsyncJobPropertiesList\":{\"shape\":\"S28\"},\"NextToken\":{}}}},\"StartEntitiesDetectionV2Job\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S9\"},\"OutputDataConfig\":{\"shape\":\"Sc\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"KMSKey\":{},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StartICD10CMInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S9\"},\"OutputDataConfig\":{\"shape\":\"Sc\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"KMSKey\":{},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StartPHIDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S9\"},\"OutputDataConfig\":{\"shape\":\"Sc\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"KMSKey\":{},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StartRxNormInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"LanguageCode\"],\"members\":{\"InputDataConfig\":{\"shape\":\"S9\"},\"OutputDataConfig\":{\"shape\":\"Sc\"},\"DataAccessRoleArn\":{},\"JobName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"KMSKey\":{},\"LanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StopEntitiesDetectionV2Job\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StopICD10CMInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StopPHIDetectionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StopRxNormInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"Message\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"S9\"},\"OutputDataConfig\":{\"shape\":\"Sc\"},\"LanguageCode\":{},\"DataAccessRoleArn\":{},\"ManifestFilePath\":{},\"KMSKey\":{},\"ModelVersion\":{}}},\"S9\":{\"type\":\"structure\",\"required\":[\"S3Bucket\"],\"members\":{\"S3Bucket\":{},\"S3Key\":{}}},\"Sc\":{\"type\":\"structure\",\"required\":[\"S3Bucket\"],\"members\":{\"S3Bucket\":{},\"S3Key\":{}}},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"type\":\"integer\"},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"Score\":{\"type\":\"float\"},\"Text\":{},\"Category\":{},\"Type\":{},\"Traits\":{\"shape\":\"Sy\"},\"Attributes\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}}}}},\"Sy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Score\":{\"type\":\"float\"}}}},\"S12\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Score\":{\"type\":\"float\"},\"RelationshipScore\":{\"type\":\"float\"},\"RelationshipType\":{},\"Id\":{\"type\":\"integer\"},\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"Text\":{},\"Category\":{},\"Traits\":{\"shape\":\"Sy\"}}},\"S14\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Attribute\":{\"shape\":\"S12\"}}}},\"S1k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Score\":{\"type\":\"float\"}}}},\"S1z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Score\":{\"type\":\"float\"}}}},\"S25\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmitTimeBefore\":{\"type\":\"timestamp\"},\"SubmitTimeAfter\":{\"type\":\"timestamp\"}}},\"S28\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}}");

/***/ }),

/***/ 89772:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 559:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-11-01\",\"endpointPrefix\":\"compute-optimizer\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Compute Optimizer\",\"serviceId\":\"Compute Optimizer\",\"signatureVersion\":\"v4\",\"signingName\":\"compute-optimizer\",\"targetPrefix\":\"ComputeOptimizerService\",\"uid\":\"compute-optimizer-2019-11-01\"},\"operations\":{\"DescribeRecommendationExportJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"jobIds\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S7\"}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"recommendationExportJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"destination\":{\"type\":\"structure\",\"members\":{\"s3\":{\"shape\":\"Sf\"}}},\"resourceType\":{},\"status\":{},\"creationTimestamp\":{\"type\":\"timestamp\"},\"lastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"failureReason\":{}}}},\"nextToken\":{}}}},\"ExportAutoScalingGroupRecommendations\":{\"input\":{\"type\":\"structure\",\"required\":[\"s3DestinationConfig\"],\"members\":{\"accountIds\":{\"shape\":\"Sp\"},\"filters\":{\"shape\":\"Sr\"},\"fieldsToExport\":{\"type\":\"list\",\"member\":{}},\"s3DestinationConfig\":{\"shape\":\"Sw\"},\"fileFormat\":{},\"includeMemberAccounts\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"s3Destination\":{\"shape\":\"Sf\"}}}},\"ExportEC2InstanceRecommendations\":{\"input\":{\"type\":\"structure\",\"required\":[\"s3DestinationConfig\"],\"members\":{\"accountIds\":{\"shape\":\"Sp\"},\"filters\":{\"shape\":\"Sr\"},\"fieldsToExport\":{\"type\":\"list\",\"member\":{}},\"s3DestinationConfig\":{\"shape\":\"Sw\"},\"fileFormat\":{},\"includeMemberAccounts\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"s3Destination\":{\"shape\":\"Sf\"}}}},\"GetAutoScalingGroupRecommendations\":{\"input\":{\"type\":\"structure\",\"members\":{\"accountIds\":{\"shape\":\"Sp\"},\"autoScalingGroupArns\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"autoScalingGroupRecommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{},\"autoScalingGroupArn\":{},\"autoScalingGroupName\":{},\"finding\":{},\"utilizationMetrics\":{\"shape\":\"S1d\"},\"lookBackPeriodInDays\":{\"type\":\"double\"},\"currentConfiguration\":{\"shape\":\"S1j\"},\"recommendationOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"configuration\":{\"shape\":\"S1j\"},\"projectedUtilizationMetrics\":{\"shape\":\"S1q\"},\"performanceRisk\":{\"type\":\"double\"},\"rank\":{\"type\":\"integer\"}}}},\"lastRefreshTimestamp\":{\"type\":\"timestamp\"}}}},\"errors\":{\"shape\":\"S1u\"}}}},\"GetEBSVolumeRecommendations\":{\"input\":{\"type\":\"structure\",\"members\":{\"volumeArns\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S7\"}}}},\"accountIds\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"volumeRecommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"volumeArn\":{},\"accountId\":{},\"currentConfiguration\":{\"shape\":\"S28\"},\"finding\":{},\"utilizationMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"statistic\":{},\"value\":{\"type\":\"double\"}}}},\"lookBackPeriodInDays\":{\"type\":\"double\"},\"volumeRecommendationOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"configuration\":{\"shape\":\"S28\"},\"performanceRisk\":{\"type\":\"double\"},\"rank\":{\"type\":\"integer\"}}}},\"lastRefreshTimestamp\":{\"type\":\"timestamp\"}}}},\"errors\":{\"shape\":\"S1u\"}}}},\"GetEC2InstanceRecommendations\":{\"input\":{\"type\":\"structure\",\"members\":{\"instanceArns\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"Sr\"},\"accountIds\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"instanceRecommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"instanceArn\":{},\"accountId\":{},\"instanceName\":{},\"currentInstanceType\":{},\"finding\":{},\"utilizationMetrics\":{\"shape\":\"S1d\"},\"lookBackPeriodInDays\":{\"type\":\"double\"},\"recommendationOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"instanceType\":{},\"projectedUtilizationMetrics\":{\"shape\":\"S1q\"},\"performanceRisk\":{\"type\":\"double\"},\"rank\":{\"type\":\"integer\"}}}},\"recommendationSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"recommendationSourceArn\":{},\"recommendationSourceType\":{}}}},\"lastRefreshTimestamp\":{\"type\":\"timestamp\"}}}},\"errors\":{\"shape\":\"S1u\"}}}},\"GetEC2RecommendationProjectedMetrics\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceArn\",\"stat\",\"period\",\"startTime\",\"endTime\"],\"members\":{\"instanceArn\":{},\"stat\":{},\"period\":{\"type\":\"integer\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"recommendedOptionProjectedMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"recommendedInstanceType\":{},\"rank\":{\"type\":\"integer\"},\"projectedMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"timestamps\":{\"type\":\"list\",\"member\":{\"type\":\"timestamp\"}},\"values\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}}}}}}}}},\"GetEnrollmentStatus\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"statusReason\":{},\"memberAccountsEnrolled\":{\"type\":\"boolean\"}}}},\"GetLambdaFunctionRecommendations\":{\"input\":{\"type\":\"structure\",\"members\":{\"functionArns\":{\"type\":\"list\",\"member\":{}},\"accountIds\":{\"shape\":\"Sp\"},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S7\"}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"lambdaFunctionRecommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"functionArn\":{},\"functionVersion\":{},\"accountId\":{},\"currentMemorySize\":{\"type\":\"integer\"},\"numberOfInvocations\":{\"type\":\"long\"},\"utilizationMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"statistic\":{},\"value\":{\"type\":\"double\"}}}},\"lookbackPeriodInDays\":{\"type\":\"double\"},\"lastRefreshTimestamp\":{\"type\":\"timestamp\"},\"finding\":{},\"findingReasonCodes\":{\"type\":\"list\",\"member\":{}},\"memorySizeRecommendationOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"rank\":{\"type\":\"integer\"},\"memorySize\":{\"type\":\"integer\"},\"projectedUtilizationMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"statistic\":{},\"value\":{\"type\":\"double\"}}}}}}}}}}}}},\"GetRecommendationSummaries\":{\"input\":{\"type\":\"structure\",\"members\":{\"accountIds\":{\"shape\":\"Sp\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"recommendationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{\"type\":\"double\"},\"reasonCodeSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{\"type\":\"double\"}}}}}}},\"recommendationResourceType\":{},\"accountId\":{}}}}}}},\"UpdateEnrollmentStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{},\"includeMemberAccounts\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"statusReason\":{}}}}},\"shapes\":{\"S7\":{\"type\":\"list\",\"member\":{}},\"Sf\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"key\":{},\"metadataKey\":{}}},\"Sp\":{\"type\":\"list\",\"member\":{}},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S7\"}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"keyPrefix\":{}}},\"S1d\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}},\"S1e\":{\"type\":\"structure\",\"members\":{\"name\":{},\"statistic\":{},\"value\":{\"type\":\"double\"}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"desiredCapacity\":{\"type\":\"integer\"},\"minSize\":{\"type\":\"integer\"},\"maxSize\":{\"type\":\"integer\"},\"instanceType\":{}}},\"S1q\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}},\"S1u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"identifier\":{},\"code\":{},\"message\":{}}}},\"S28\":{\"type\":\"structure\",\"members\":{\"volumeType\":{},\"volumeSize\":{\"type\":\"integer\"},\"volumeBaselineIOPS\":{\"type\":\"integer\"},\"volumeBurstIOPS\":{\"type\":\"integer\"},\"volumeBaselineThroughput\":{\"type\":\"integer\"},\"volumeBurstThroughput\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 16060:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 85031:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-11-12\",\"endpointPrefix\":\"config\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Config Service\",\"serviceFullName\":\"AWS Config\",\"serviceId\":\"Config Service\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"StarlingDoveService\",\"uid\":\"config-2014-11-12\"},\"operations\":{\"BatchGetAggregateResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\",\"ResourceIdentifiers\"],\"members\":{\"ConfigurationAggregatorName\":{},\"ResourceIdentifiers\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaseConfigurationItems\":{\"shape\":\"Sb\"},\"UnprocessedResourceIdentifiers\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}}},\"BatchGetResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceKeys\"],\"members\":{\"resourceKeys\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"baseConfigurationItems\":{\"shape\":\"Sb\"},\"unprocessedResourceKeys\":{\"shape\":\"Sq\"}}}},\"DeleteAggregationAuthorization\":{\"input\":{\"type\":\"structure\",\"required\":[\"AuthorizedAccountId\",\"AuthorizedAwsRegion\"],\"members\":{\"AuthorizedAccountId\":{},\"AuthorizedAwsRegion\":{}}}},\"DeleteConfigRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\"],\"members\":{\"ConfigRuleName\":{}}}},\"DeleteConfigurationAggregator\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{}}}},\"DeleteConfigurationRecorder\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationRecorderName\"],\"members\":{\"ConfigurationRecorderName\":{}}}},\"DeleteConformancePack\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\"],\"members\":{\"ConformancePackName\":{}}}},\"DeleteDeliveryChannel\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryChannelName\"],\"members\":{\"DeliveryChannelName\":{}}}},\"DeleteEvaluationResults\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\"],\"members\":{\"ConfigRuleName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteOrganizationConfigRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationConfigRuleName\"],\"members\":{\"OrganizationConfigRuleName\":{}}}},\"DeleteOrganizationConformancePack\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationConformancePackName\"],\"members\":{\"OrganizationConformancePackName\":{}}}},\"DeletePendingAggregationRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"RequesterAccountId\",\"RequesterAwsRegion\"],\"members\":{\"RequesterAccountId\":{},\"RequesterAwsRegion\":{}}}},\"DeleteRemediationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\"],\"members\":{\"ConfigRuleName\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRemediationExceptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\",\"ResourceKeys\"],\"members\":{\"ConfigRuleName\":{},\"ResourceKeys\":{\"shape\":\"S1f\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedBatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailureMessage\":{},\"FailedItems\":{\"shape\":\"S1f\"}}}}}}},\"DeleteResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\"],\"members\":{\"ResourceType\":{},\"ResourceId\":{}}}},\"DeleteRetentionConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"RetentionConfigurationName\"],\"members\":{\"RetentionConfigurationName\":{}}}},\"DeleteStoredQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryName\"],\"members\":{\"QueryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeliverConfigSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"deliveryChannelName\"],\"members\":{\"deliveryChannelName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"configSnapshotId\":{}}}},\"DescribeAggregateComplianceByConfigRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"ConfigRuleName\":{},\"ComplianceType\":{},\"AccountId\":{},\"AwsRegion\":{}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregateComplianceByConfigRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConfigRuleName\":{},\"Compliance\":{\"shape\":\"S23\"},\"AccountId\":{},\"AwsRegion\":{}}}},\"NextToken\":{}}}},\"DescribeAggregateComplianceByConformancePacks\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"ConformancePackName\":{},\"ComplianceType\":{},\"AccountId\":{},\"AwsRegion\":{}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregateComplianceByConformancePacks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConformancePackName\":{},\"Compliance\":{\"type\":\"structure\",\"members\":{\"ComplianceType\":{},\"CompliantRuleCount\":{\"type\":\"integer\"},\"NonCompliantRuleCount\":{\"type\":\"integer\"},\"TotalRuleCount\":{\"type\":\"integer\"}}},\"AccountId\":{},\"AwsRegion\":{}}}},\"NextToken\":{}}}},\"DescribeAggregationAuthorizations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregationAuthorizations\":{\"type\":\"list\",\"member\":{\"shape\":\"S2i\"}},\"NextToken\":{}}}},\"DescribeComplianceByConfigRule\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigRuleNames\":{\"shape\":\"S2l\"},\"ComplianceTypes\":{\"shape\":\"S2m\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComplianceByConfigRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConfigRuleName\":{},\"Compliance\":{\"shape\":\"S23\"}}}},\"NextToken\":{}}}},\"DescribeComplianceByResource\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ResourceId\":{},\"ComplianceTypes\":{\"shape\":\"S2m\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComplianceByResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ResourceId\":{},\"Compliance\":{\"shape\":\"S23\"}}}},\"NextToken\":{}}}},\"DescribeConfigRuleEvaluationStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigRuleNames\":{\"shape\":\"S2l\"},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigRulesEvaluationStatus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConfigRuleName\":{},\"ConfigRuleArn\":{},\"ConfigRuleId\":{},\"LastSuccessfulInvocationTime\":{\"type\":\"timestamp\"},\"LastFailedInvocationTime\":{\"type\":\"timestamp\"},\"LastSuccessfulEvaluationTime\":{\"type\":\"timestamp\"},\"LastFailedEvaluationTime\":{\"type\":\"timestamp\"},\"FirstActivatedTime\":{\"type\":\"timestamp\"},\"LastDeactivatedTime\":{\"type\":\"timestamp\"},\"LastErrorCode\":{},\"LastErrorMessage\":{},\"FirstEvaluationStarted\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"DescribeConfigRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigRuleNames\":{\"shape\":\"S2l\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigRules\":{\"type\":\"list\",\"member\":{\"shape\":\"S33\"}},\"NextToken\":{}}}},\"DescribeConfigurationAggregatorSourcesStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"UpdateStatus\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregatedSourceStatusList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceId\":{},\"SourceType\":{},\"AwsRegion\":{},\"LastUpdateStatus\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"},\"LastErrorCode\":{},\"LastErrorMessage\":{}}}},\"NextToken\":{}}}},\"DescribeConfigurationAggregators\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationAggregatorNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationAggregators\":{\"type\":\"list\",\"member\":{\"shape\":\"S3r\"}},\"NextToken\":{}}}},\"DescribeConfigurationRecorderStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationRecorderNames\":{\"shape\":\"S3z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationRecordersStatus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"lastStartTime\":{\"type\":\"timestamp\"},\"lastStopTime\":{\"type\":\"timestamp\"},\"recording\":{\"type\":\"boolean\"},\"lastStatus\":{},\"lastErrorCode\":{},\"lastErrorMessage\":{},\"lastStatusChangeTime\":{\"type\":\"timestamp\"}}}}}}},\"DescribeConfigurationRecorders\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationRecorderNames\":{\"shape\":\"S3z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationRecorders\":{\"type\":\"list\",\"member\":{\"shape\":\"S47\"}}}}},\"DescribeConformancePackCompliance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\"],\"members\":{\"ConformancePackName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"ConfigRuleNames\":{\"shape\":\"S4e\"},\"ComplianceType\":{}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\",\"ConformancePackRuleComplianceList\"],\"members\":{\"ConformancePackName\":{},\"ConformancePackRuleComplianceList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConfigRuleName\":{},\"ComplianceType\":{},\"Controls\":{\"type\":\"list\",\"member\":{}}}}},\"NextToken\":{}}}},\"DescribeConformancePackStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConformancePackNames\":{\"shape\":\"S4l\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConformancePackStatusDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\",\"ConformancePackId\",\"ConformancePackArn\",\"ConformancePackState\",\"StackArn\",\"LastUpdateRequestedTime\"],\"members\":{\"ConformancePackName\":{},\"ConformancePackId\":{},\"ConformancePackArn\":{},\"ConformancePackState\":{},\"StackArn\":{},\"ConformancePackStatusReason\":{},\"LastUpdateRequestedTime\":{\"type\":\"timestamp\"},\"LastUpdateCompletedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeConformancePacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConformancePackNames\":{\"shape\":\"S4l\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConformancePackDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\",\"ConformancePackArn\",\"ConformancePackId\"],\"members\":{\"ConformancePackName\":{},\"ConformancePackArn\":{},\"ConformancePackId\":{},\"DeliveryS3Bucket\":{},\"DeliveryS3KeyPrefix\":{},\"ConformancePackInputParameters\":{\"shape\":\"S51\"},\"LastUpdateRequestedTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{}}}},\"NextToken\":{}}}},\"DescribeDeliveryChannelStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeliveryChannelNames\":{\"shape\":\"S56\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeliveryChannelsStatus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"configSnapshotDeliveryInfo\":{\"shape\":\"S5a\"},\"configHistoryDeliveryInfo\":{\"shape\":\"S5a\"},\"configStreamDeliveryInfo\":{\"type\":\"structure\",\"members\":{\"lastStatus\":{},\"lastErrorCode\":{},\"lastErrorMessage\":{},\"lastStatusChangeTime\":{\"type\":\"timestamp\"}}}}}}}}},\"DescribeDeliveryChannels\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeliveryChannelNames\":{\"shape\":\"S56\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeliveryChannels\":{\"type\":\"list\",\"member\":{\"shape\":\"S5g\"}}}}},\"DescribeOrganizationConfigRuleStatuses\":{\"input\":{\"type\":\"structure\",\"members\":{\"OrganizationConfigRuleNames\":{\"shape\":\"S5j\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConfigRuleStatuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OrganizationConfigRuleName\",\"OrganizationRuleStatus\"],\"members\":{\"OrganizationConfigRuleName\":{},\"OrganizationRuleStatus\":{},\"ErrorCode\":{},\"ErrorMessage\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeOrganizationConfigRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"OrganizationConfigRuleNames\":{\"shape\":\"S5j\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConfigRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OrganizationConfigRuleName\",\"OrganizationConfigRuleArn\"],\"members\":{\"OrganizationConfigRuleName\":{},\"OrganizationConfigRuleArn\":{},\"OrganizationManagedRuleMetadata\":{\"shape\":\"S5t\"},\"OrganizationCustomRuleMetadata\":{\"shape\":\"S5y\"},\"ExcludedAccounts\":{\"shape\":\"S61\"},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeOrganizationConformancePackStatuses\":{\"input\":{\"type\":\"structure\",\"members\":{\"OrganizationConformancePackNames\":{\"shape\":\"S63\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConformancePackStatuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OrganizationConformancePackName\",\"Status\"],\"members\":{\"OrganizationConformancePackName\":{},\"Status\":{},\"ErrorCode\":{},\"ErrorMessage\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeOrganizationConformancePacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"OrganizationConformancePackNames\":{\"shape\":\"S63\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConformancePacks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OrganizationConformancePackName\",\"OrganizationConformancePackArn\",\"LastUpdateTime\"],\"members\":{\"OrganizationConformancePackName\":{},\"OrganizationConformancePackArn\":{},\"DeliveryS3Bucket\":{},\"DeliveryS3KeyPrefix\":{},\"ConformancePackInputParameters\":{\"shape\":\"S51\"},\"ExcludedAccounts\":{\"shape\":\"S61\"},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribePendingAggregationRequests\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PendingAggregationRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RequesterAccountId\":{},\"RequesterAwsRegion\":{}}}},\"NextToken\":{}}}},\"DescribeRemediationConfigurations\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleNames\"],\"members\":{\"ConfigRuleNames\":{\"shape\":\"S2l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RemediationConfigurations\":{\"shape\":\"S6j\"}}}},\"DescribeRemediationExceptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\"],\"members\":{\"ConfigRuleName\":{},\"ResourceKeys\":{\"shape\":\"S1f\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RemediationExceptions\":{\"shape\":\"S6z\"},\"NextToken\":{}}}},\"DescribeRemediationExecutionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\"],\"members\":{\"ConfigRuleName\":{},\"ResourceKeys\":{\"shape\":\"Sq\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RemediationExecutionStatuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceKey\":{\"shape\":\"Sr\"},\"State\":{},\"StepDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"State\":{},\"ErrorMessage\":{},\"StartTime\":{\"type\":\"timestamp\"},\"StopTime\":{\"type\":\"timestamp\"}}}},\"InvocationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeRetentionConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"RetentionConfigurationNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RetentionConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S7d\"}},\"NextToken\":{}}}},\"GetAggregateComplianceDetailsByConfigRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\",\"ConfigRuleName\",\"AccountId\",\"AwsRegion\"],\"members\":{\"ConfigurationAggregatorName\":{},\"ConfigRuleName\":{},\"AccountId\":{},\"AwsRegion\":{},\"ComplianceType\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregateEvaluationResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EvaluationResultIdentifier\":{\"shape\":\"S7j\"},\"ComplianceType\":{},\"ResultRecordedTime\":{\"type\":\"timestamp\"},\"ConfigRuleInvokedTime\":{\"type\":\"timestamp\"},\"Annotation\":{},\"AccountId\":{},\"AwsRegion\":{}}}},\"NextToken\":{}}}},\"GetAggregateConfigRuleComplianceSummary\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"AwsRegion\":{}}},\"GroupByKey\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupByKey\":{},\"AggregateComplianceCounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"ComplianceSummary\":{\"shape\":\"S7r\"}}}},\"NextToken\":{}}}},\"GetAggregateConformancePackComplianceSummary\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"AwsRegion\":{}}},\"GroupByKey\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregateConformancePackComplianceSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ComplianceSummary\":{\"type\":\"structure\",\"members\":{\"CompliantConformancePackCount\":{\"type\":\"integer\"},\"NonCompliantConformancePackCount\":{\"type\":\"integer\"}}},\"GroupName\":{}}}},\"GroupByKey\":{},\"NextToken\":{}}}},\"GetAggregateDiscoveredResourceCounts\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"AccountId\":{},\"Region\":{}}},\"GroupByKey\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TotalDiscoveredResources\"],\"members\":{\"TotalDiscoveredResources\":{\"type\":\"long\"},\"GroupByKey\":{},\"GroupedResourceCounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"ResourceCount\"],\"members\":{\"GroupName\":{},\"ResourceCount\":{\"type\":\"long\"}}}},\"NextToken\":{}}}},\"GetAggregateResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\",\"ResourceIdentifier\"],\"members\":{\"ConfigurationAggregatorName\":{},\"ResourceIdentifier\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationItem\":{\"shape\":\"S88\"}}}},\"GetComplianceDetailsByConfigRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\"],\"members\":{\"ConfigRuleName\":{},\"ComplianceTypes\":{\"shape\":\"S2m\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EvaluationResults\":{\"shape\":\"S8k\"},\"NextToken\":{}}}},\"GetComplianceDetailsByResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\"],\"members\":{\"ResourceType\":{},\"ResourceId\":{},\"ComplianceTypes\":{\"shape\":\"S2m\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EvaluationResults\":{\"shape\":\"S8k\"},\"NextToken\":{}}}},\"GetComplianceSummaryByConfigRule\":{\"output\":{\"type\":\"structure\",\"members\":{\"ComplianceSummary\":{\"shape\":\"S7r\"}}}},\"GetComplianceSummaryByResourceType\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceTypes\":{\"shape\":\"S8q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComplianceSummariesByResourceType\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ComplianceSummary\":{\"shape\":\"S7r\"}}}}}}},\"GetConformancePackComplianceDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\"],\"members\":{\"ConformancePackName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"ConfigRuleNames\":{\"shape\":\"S4e\"},\"ComplianceType\":{},\"ResourceType\":{},\"ResourceIds\":{\"type\":\"list\",\"member\":{}}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\"],\"members\":{\"ConformancePackName\":{},\"ConformancePackRuleEvaluationResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ComplianceType\",\"EvaluationResultIdentifier\",\"ConfigRuleInvokedTime\",\"ResultRecordedTime\"],\"members\":{\"ComplianceType\":{},\"EvaluationResultIdentifier\":{\"shape\":\"S7j\"},\"ConfigRuleInvokedTime\":{\"type\":\"timestamp\"},\"ResultRecordedTime\":{\"type\":\"timestamp\"},\"Annotation\":{}}}},\"NextToken\":{}}}},\"GetConformancePackComplianceSummary\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConformancePackNames\"],\"members\":{\"ConformancePackNames\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConformancePackComplianceSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\",\"ConformancePackComplianceStatus\"],\"members\":{\"ConformancePackName\":{},\"ConformancePackComplianceStatus\":{}}}},\"NextToken\":{}}}},\"GetDiscoveredResourceCounts\":{\"input\":{\"type\":\"structure\",\"members\":{\"resourceTypes\":{\"shape\":\"S8q\"},\"limit\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"totalDiscoveredResources\":{\"type\":\"long\"},\"resourceCounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"count\":{\"type\":\"long\"}}}},\"nextToken\":{}}}},\"GetOrganizationConfigRuleDetailedStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationConfigRuleName\"],\"members\":{\"OrganizationConfigRuleName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"MemberAccountRuleStatus\":{}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConfigRuleDetailedStatus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"ConfigRuleName\",\"MemberAccountRuleStatus\"],\"members\":{\"AccountId\":{},\"ConfigRuleName\":{},\"MemberAccountRuleStatus\":{},\"ErrorCode\":{},\"ErrorMessage\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetOrganizationConformancePackDetailedStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationConformancePackName\"],\"members\":{\"OrganizationConformancePackName\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"Status\":{}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConformancePackDetailedStatuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"ConformancePackName\",\"Status\"],\"members\":{\"AccountId\":{},\"ConformancePackName\":{},\"Status\":{},\"ErrorCode\":{},\"ErrorMessage\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetResourceConfigHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resourceId\"],\"members\":{\"resourceType\":{},\"resourceId\":{},\"laterTime\":{\"type\":\"timestamp\"},\"earlierTime\":{\"type\":\"timestamp\"},\"chronologicalOrder\":{},\"limit\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"configurationItems\":{\"type\":\"list\",\"member\":{\"shape\":\"S88\"}},\"nextToken\":{}}}},\"GetStoredQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryName\"],\"members\":{\"QueryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StoredQuery\":{\"shape\":\"S9v\"}}}},\"ListAggregateDiscoveredResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\",\"ResourceType\"],\"members\":{\"ConfigurationAggregatorName\":{},\"ResourceType\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"ResourceId\":{},\"ResourceName\":{},\"Region\":{}}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifiers\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"NextToken\":{}}}},\"ListDiscoveredResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceType\"],\"members\":{\"resourceType\":{},\"resourceIds\":{\"type\":\"list\",\"member\":{}},\"resourceName\":{},\"limit\":{\"type\":\"integer\"},\"includeDeletedResources\":{\"type\":\"boolean\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceIdentifiers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"resourceId\":{},\"resourceName\":{},\"resourceDeletionTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListStoredQueries\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StoredQueryMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"QueryId\",\"QueryArn\",\"QueryName\"],\"members\":{\"QueryId\":{},\"QueryArn\":{},\"QueryName\":{},\"Description\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sah\"},\"NextToken\":{}}}},\"PutAggregationAuthorization\":{\"input\":{\"type\":\"structure\",\"required\":[\"AuthorizedAccountId\",\"AuthorizedAwsRegion\"],\"members\":{\"AuthorizedAccountId\":{},\"AuthorizedAwsRegion\":{},\"Tags\":{\"shape\":\"Sam\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AggregationAuthorization\":{\"shape\":\"S2i\"}}}},\"PutConfigRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRule\"],\"members\":{\"ConfigRule\":{\"shape\":\"S33\"},\"Tags\":{\"shape\":\"Sam\"}}}},\"PutConfigurationAggregator\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationAggregatorName\"],\"members\":{\"ConfigurationAggregatorName\":{},\"AccountAggregationSources\":{\"shape\":\"S3t\"},\"OrganizationAggregationSource\":{\"shape\":\"S3x\"},\"Tags\":{\"shape\":\"Sam\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationAggregator\":{\"shape\":\"S3r\"}}}},\"PutConfigurationRecorder\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationRecorder\"],\"members\":{\"ConfigurationRecorder\":{\"shape\":\"S47\"}}}},\"PutConformancePack\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConformancePackName\"],\"members\":{\"ConformancePackName\":{},\"TemplateS3Uri\":{},\"TemplateBody\":{},\"DeliveryS3Bucket\":{},\"DeliveryS3KeyPrefix\":{},\"ConformancePackInputParameters\":{\"shape\":\"S51\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConformancePackArn\":{}}}},\"PutDeliveryChannel\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryChannel\"],\"members\":{\"DeliveryChannel\":{\"shape\":\"S5g\"}}}},\"PutEvaluations\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResultToken\"],\"members\":{\"Evaluations\":{\"shape\":\"Say\"},\"ResultToken\":{},\"TestMode\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEvaluations\":{\"shape\":\"Say\"}}}},\"PutExternalEvaluation\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\",\"ExternalEvaluation\"],\"members\":{\"ConfigRuleName\":{},\"ExternalEvaluation\":{\"type\":\"structure\",\"required\":[\"ComplianceResourceType\",\"ComplianceResourceId\",\"ComplianceType\",\"OrderingTimestamp\"],\"members\":{\"ComplianceResourceType\":{},\"ComplianceResourceId\":{},\"ComplianceType\":{},\"Annotation\":{},\"OrderingTimestamp\":{\"type\":\"timestamp\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutOrganizationConfigRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationConfigRuleName\"],\"members\":{\"OrganizationConfigRuleName\":{},\"OrganizationManagedRuleMetadata\":{\"shape\":\"S5t\"},\"OrganizationCustomRuleMetadata\":{\"shape\":\"S5y\"},\"ExcludedAccounts\":{\"shape\":\"S61\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConfigRuleArn\":{}}}},\"PutOrganizationConformancePack\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationConformancePackName\"],\"members\":{\"OrganizationConformancePackName\":{},\"TemplateS3Uri\":{},\"TemplateBody\":{},\"DeliveryS3Bucket\":{},\"DeliveryS3KeyPrefix\":{},\"ConformancePackInputParameters\":{\"shape\":\"S51\"},\"ExcludedAccounts\":{\"shape\":\"S61\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationConformancePackArn\":{}}}},\"PutRemediationConfigurations\":{\"input\":{\"type\":\"structure\",\"required\":[\"RemediationConfigurations\"],\"members\":{\"RemediationConfigurations\":{\"shape\":\"S6j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedBatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailureMessage\":{},\"FailedItems\":{\"shape\":\"S6j\"}}}}}}},\"PutRemediationExceptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\",\"ResourceKeys\"],\"members\":{\"ConfigRuleName\":{},\"ResourceKeys\":{\"shape\":\"S1f\"},\"Message\":{},\"ExpirationTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedBatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailureMessage\":{},\"FailedItems\":{\"shape\":\"S6z\"}}}}}}},\"PutResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"SchemaVersionId\",\"ResourceId\",\"Configuration\"],\"members\":{\"ResourceType\":{},\"SchemaVersionId\":{},\"ResourceId\":{},\"ResourceName\":{},\"Configuration\":{},\"Tags\":{\"shape\":\"S8a\"}}}},\"PutRetentionConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"RetentionPeriodInDays\"],\"members\":{\"RetentionPeriodInDays\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RetentionConfiguration\":{\"shape\":\"S7d\"}}}},\"PutStoredQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"StoredQuery\"],\"members\":{\"StoredQuery\":{\"shape\":\"S9v\"},\"Tags\":{\"shape\":\"Sam\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueryArn\":{}}}},\"SelectAggregateResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"Expression\",\"ConfigurationAggregatorName\"],\"members\":{\"Expression\":{},\"ConfigurationAggregatorName\":{},\"Limit\":{\"type\":\"integer\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"shape\":\"Sbq\"},\"QueryInfo\":{\"shape\":\"Sbr\"},\"NextToken\":{}}}},\"SelectResourceConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"Expression\"],\"members\":{\"Expression\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"shape\":\"Sbq\"},\"QueryInfo\":{\"shape\":\"Sbr\"},\"NextToken\":{}}}},\"StartConfigRulesEvaluation\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConfigRuleNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartConfigurationRecorder\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationRecorderName\"],\"members\":{\"ConfigurationRecorderName\":{}}}},\"StartRemediationExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\",\"ResourceKeys\"],\"members\":{\"ConfigRuleName\":{},\"ResourceKeys\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailureMessage\":{},\"FailedItems\":{\"shape\":\"Sq\"}}}},\"StopConfigurationRecorder\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationRecorderName\"],\"members\":{\"ConfigurationRecorderName\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sah\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"SourceAccountId\",\"SourceRegion\",\"ResourceId\",\"ResourceType\"],\"members\":{\"SourceAccountId\":{},\"SourceRegion\":{},\"ResourceId\":{},\"ResourceType\":{},\"ResourceName\":{}}},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"version\":{},\"accountId\":{},\"configurationItemCaptureTime\":{\"type\":\"timestamp\"},\"configurationItemStatus\":{},\"configurationStateId\":{},\"arn\":{},\"resourceType\":{},\"resourceId\":{},\"resourceName\":{},\"awsRegion\":{},\"availabilityZone\":{},\"resourceCreationTime\":{\"type\":\"timestamp\"},\"configuration\":{},\"supplementaryConfiguration\":{\"shape\":\"Sl\"}}}},\"Sl\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sq\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"Sr\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resourceId\"],\"members\":{\"resourceType\":{},\"resourceId\":{}}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ResourceId\":{}}}},\"S23\":{\"type\":\"structure\",\"members\":{\"ComplianceType\":{},\"ComplianceContributorCount\":{\"shape\":\"S24\"}}},\"S24\":{\"type\":\"structure\",\"members\":{\"CappedCount\":{\"type\":\"integer\"},\"CapExceeded\":{\"type\":\"boolean\"}}},\"S2i\":{\"type\":\"structure\",\"members\":{\"AggregationAuthorizationArn\":{},\"AuthorizedAccountId\":{},\"AuthorizedAwsRegion\":{},\"CreationTime\":{\"type\":\"timestamp\"}}},\"S2l\":{\"type\":\"list\",\"member\":{}},\"S2m\":{\"type\":\"list\",\"member\":{}},\"S33\":{\"type\":\"structure\",\"required\":[\"Source\"],\"members\":{\"ConfigRuleName\":{},\"ConfigRuleArn\":{},\"ConfigRuleId\":{},\"Description\":{},\"Scope\":{\"type\":\"structure\",\"members\":{\"ComplianceResourceTypes\":{\"type\":\"list\",\"member\":{}},\"TagKey\":{},\"TagValue\":{},\"ComplianceResourceId\":{}}},\"Source\":{\"type\":\"structure\",\"required\":[\"Owner\",\"SourceIdentifier\"],\"members\":{\"Owner\":{},\"SourceIdentifier\":{},\"SourceDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventSource\":{},\"MessageType\":{},\"MaximumExecutionFrequency\":{}}}}}},\"InputParameters\":{},\"MaximumExecutionFrequency\":{},\"ConfigRuleState\":{},\"CreatedBy\":{}}},\"S3r\":{\"type\":\"structure\",\"members\":{\"ConfigurationAggregatorName\":{},\"ConfigurationAggregatorArn\":{},\"AccountAggregationSources\":{\"shape\":\"S3t\"},\"OrganizationAggregationSource\":{\"shape\":\"S3x\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{}}},\"S3t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"type\":\"list\",\"member\":{}},\"AllAwsRegions\":{\"type\":\"boolean\"},\"AwsRegions\":{\"shape\":\"S3w\"}}}},\"S3w\":{\"type\":\"list\",\"member\":{}},\"S3x\":{\"type\":\"structure\",\"required\":[\"RoleArn\"],\"members\":{\"RoleArn\":{},\"AwsRegions\":{\"shape\":\"S3w\"},\"AllAwsRegions\":{\"type\":\"boolean\"}}},\"S3z\":{\"type\":\"list\",\"member\":{}},\"S47\":{\"type\":\"structure\",\"members\":{\"name\":{},\"roleARN\":{},\"recordingGroup\":{\"type\":\"structure\",\"members\":{\"allSupported\":{\"type\":\"boolean\"},\"includeGlobalResourceTypes\":{\"type\":\"boolean\"},\"resourceTypes\":{\"type\":\"list\",\"member\":{}}}}}},\"S4e\":{\"type\":\"list\",\"member\":{}},\"S4l\":{\"type\":\"list\",\"member\":{}},\"S51\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ParameterName\",\"ParameterValue\"],\"members\":{\"ParameterName\":{},\"ParameterValue\":{}}}},\"S56\":{\"type\":\"list\",\"member\":{}},\"S5a\":{\"type\":\"structure\",\"members\":{\"lastStatus\":{},\"lastErrorCode\":{},\"lastErrorMessage\":{},\"lastAttemptTime\":{\"type\":\"timestamp\"},\"lastSuccessfulTime\":{\"type\":\"timestamp\"},\"nextDeliveryTime\":{\"type\":\"timestamp\"}}},\"S5g\":{\"type\":\"structure\",\"members\":{\"name\":{},\"s3BucketName\":{},\"s3KeyPrefix\":{},\"s3KmsKeyArn\":{},\"snsTopicARN\":{},\"configSnapshotDeliveryProperties\":{\"type\":\"structure\",\"members\":{\"deliveryFrequency\":{}}}}},\"S5j\":{\"type\":\"list\",\"member\":{}},\"S5t\":{\"type\":\"structure\",\"required\":[\"RuleIdentifier\"],\"members\":{\"Description\":{},\"RuleIdentifier\":{},\"InputParameters\":{},\"MaximumExecutionFrequency\":{},\"ResourceTypesScope\":{\"shape\":\"S5w\"},\"ResourceIdScope\":{},\"TagKeyScope\":{},\"TagValueScope\":{}}},\"S5w\":{\"type\":\"list\",\"member\":{}},\"S5y\":{\"type\":\"structure\",\"required\":[\"LambdaFunctionArn\",\"OrganizationConfigRuleTriggerTypes\"],\"members\":{\"Description\":{},\"LambdaFunctionArn\":{},\"OrganizationConfigRuleTriggerTypes\":{\"type\":\"list\",\"member\":{}},\"InputParameters\":{},\"MaximumExecutionFrequency\":{},\"ResourceTypesScope\":{\"shape\":\"S5w\"},\"ResourceIdScope\":{},\"TagKeyScope\":{},\"TagValueScope\":{}}},\"S61\":{\"type\":\"list\",\"member\":{}},\"S63\":{\"type\":\"list\",\"member\":{}},\"S6j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\",\"TargetType\",\"TargetId\"],\"members\":{\"ConfigRuleName\":{},\"TargetType\":{},\"TargetId\":{},\"TargetVersion\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"ResourceValue\":{\"type\":\"structure\",\"required\":[\"Value\"],\"members\":{\"Value\":{}}},\"StaticValue\":{\"type\":\"structure\",\"required\":[\"Values\"],\"members\":{\"Values\":{\"type\":\"list\",\"member\":{}}}}}}},\"ResourceType\":{},\"Automatic\":{\"type\":\"boolean\"},\"ExecutionControls\":{\"type\":\"structure\",\"members\":{\"SsmControls\":{\"type\":\"structure\",\"members\":{\"ConcurrentExecutionRatePercentage\":{\"type\":\"integer\"},\"ErrorPercentage\":{\"type\":\"integer\"}}}}},\"MaximumAutomaticAttempts\":{\"type\":\"integer\"},\"RetryAttemptSeconds\":{\"type\":\"long\"},\"Arn\":{},\"CreatedByService\":{}}}},\"S6z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ConfigRuleName\",\"ResourceType\",\"ResourceId\"],\"members\":{\"ConfigRuleName\":{},\"ResourceType\":{},\"ResourceId\":{},\"Message\":{},\"ExpirationTime\":{\"type\":\"timestamp\"}}}},\"S7d\":{\"type\":\"structure\",\"required\":[\"Name\",\"RetentionPeriodInDays\"],\"members\":{\"Name\":{},\"RetentionPeriodInDays\":{\"type\":\"integer\"}}},\"S7j\":{\"type\":\"structure\",\"members\":{\"EvaluationResultQualifier\":{\"type\":\"structure\",\"members\":{\"ConfigRuleName\":{},\"ResourceType\":{},\"ResourceId\":{}}},\"OrderingTimestamp\":{\"type\":\"timestamp\"}}},\"S7r\":{\"type\":\"structure\",\"members\":{\"CompliantResourceCount\":{\"shape\":\"S24\"},\"NonCompliantResourceCount\":{\"shape\":\"S24\"},\"ComplianceSummaryTimestamp\":{\"type\":\"timestamp\"}}},\"S88\":{\"type\":\"structure\",\"members\":{\"version\":{},\"accountId\":{},\"configurationItemCaptureTime\":{\"type\":\"timestamp\"},\"configurationItemStatus\":{},\"configurationStateId\":{},\"configurationItemMD5Hash\":{},\"arn\":{},\"resourceType\":{},\"resourceId\":{},\"resourceName\":{},\"awsRegion\":{},\"availabilityZone\":{},\"resourceCreationTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S8a\"},\"relatedEvents\":{\"type\":\"list\",\"member\":{}},\"relationships\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"resourceId\":{},\"resourceName\":{},\"relationshipName\":{}}}},\"configuration\":{},\"supplementaryConfiguration\":{\"shape\":\"Sl\"}}},\"S8a\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S8k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EvaluationResultIdentifier\":{\"shape\":\"S7j\"},\"ComplianceType\":{},\"ResultRecordedTime\":{\"type\":\"timestamp\"},\"ConfigRuleInvokedTime\":{\"type\":\"timestamp\"},\"Annotation\":{},\"ResultToken\":{}}}},\"S8q\":{\"type\":\"list\",\"member\":{}},\"S9v\":{\"type\":\"structure\",\"required\":[\"QueryName\"],\"members\":{\"QueryId\":{},\"QueryArn\":{},\"QueryName\":{},\"Description\":{},\"Expression\":{}}},\"Sah\":{\"type\":\"list\",\"member\":{\"shape\":\"Sai\"}},\"Sai\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}},\"Sam\":{\"type\":\"list\",\"member\":{\"shape\":\"Sai\"}},\"Say\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ComplianceResourceType\",\"ComplianceResourceId\",\"ComplianceType\",\"OrderingTimestamp\"],\"members\":{\"ComplianceResourceType\":{},\"ComplianceResourceId\":{},\"ComplianceType\":{},\"Annotation\":{},\"OrderingTimestamp\":{\"type\":\"timestamp\"}}}},\"Sbq\":{\"type\":\"list\",\"member\":{}},\"Sbr\":{\"type\":\"structure\",\"members\":{\"SelectFields\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}}}}}}");

/***/ }),

/***/ 55050:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeRemediationExceptions\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\"},\"DescribeRemediationExecutionStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"RemediationExecutionStatuses\"},\"GetResourceConfigHistory\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"configurationItems\"},\"ListStoredQueries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"SelectAggregateResourceConfig\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 13649:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-08-08\",\"endpointPrefix\":\"connect\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon Connect\",\"serviceFullName\":\"Amazon Connect Service\",\"serviceId\":\"Connect\",\"signatureVersion\":\"v4\",\"signingName\":\"connect\",\"uid\":\"connect-2017-08-08\"},\"operations\":{\"AssociateApprovedOrigin\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/approved-origin\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Origin\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Origin\":{}}}},\"AssociateInstanceStorageConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/storage-config\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ResourceType\",\"StorageConfig\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"ResourceType\":{},\"StorageConfig\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{}}}},\"AssociateLambdaFunction\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/lambda-function\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"FunctionArn\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"FunctionArn\":{}}}},\"AssociateLexBot\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/lex-bot\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"LexBot\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"LexBot\":{\"shape\":\"So\"}}}},\"AssociateQueueQuickConnects\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/associate-quick-connects\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\",\"QuickConnectIds\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"QuickConnectIds\":{\"shape\":\"St\"}}}},\"AssociateRoutingProfileQueues\":{\"http\":{\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/associate-queues\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\",\"QueueConfigs\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"QueueConfigs\":{\"shape\":\"Sx\"}}}},\"AssociateSecurityKey\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/security-key\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Key\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Key\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{}}}},\"CreateContactFlow\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/contact-flows/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Name\",\"Type\",\"Content\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Name\":{},\"Type\":{},\"Description\":{},\"Content\":{},\"Tags\":{\"shape\":\"S1b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactFlowId\":{},\"ContactFlowArn\":{}}}},\"CreateInstance\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance\"},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityManagementType\",\"InboundCallsEnabled\",\"OutboundCallsEnabled\"],\"members\":{\"ClientToken\":{},\"IdentityManagementType\":{},\"InstanceAlias\":{\"shape\":\"S1j\"},\"DirectoryId\":{},\"InboundCallsEnabled\":{\"type\":\"boolean\"},\"OutboundCallsEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{}}}},\"CreateIntegrationAssociation\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/integration-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"IntegrationType\",\"IntegrationArn\",\"SourceApplicationUrl\",\"SourceApplicationName\",\"SourceType\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"IntegrationType\":{},\"IntegrationArn\":{},\"SourceApplicationUrl\":{},\"SourceApplicationName\":{},\"SourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IntegrationAssociationId\":{},\"IntegrationAssociationArn\":{}}}},\"CreateQueue\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/queues/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Name\",\"HoursOfOperationId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Name\":{},\"Description\":{},\"OutboundCallerConfig\":{\"shape\":\"S1y\"},\"HoursOfOperationId\":{},\"MaxContacts\":{\"type\":\"integer\"},\"QuickConnectIds\":{\"shape\":\"St\"},\"Tags\":{\"shape\":\"S1b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueueArn\":{},\"QueueId\":{}}}},\"CreateQuickConnect\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/quick-connects/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Name\",\"QuickConnectConfig\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Name\":{},\"Description\":{},\"QuickConnectConfig\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QuickConnectARN\":{},\"QuickConnectId\":{}}}},\"CreateRoutingProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/routing-profiles/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Name\",\"Description\",\"DefaultOutboundQueueId\",\"MediaConcurrencies\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Name\":{},\"Description\":{},\"DefaultOutboundQueueId\":{},\"QueueConfigs\":{\"shape\":\"Sx\"},\"MediaConcurrencies\":{\"shape\":\"S2i\"},\"Tags\":{\"shape\":\"S1b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoutingProfileArn\":{},\"RoutingProfileId\":{}}}},\"CreateUseCase\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}/use-cases\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"IntegrationAssociationId\",\"UseCaseType\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"IntegrationAssociationId\":{\"location\":\"uri\",\"locationName\":\"IntegrationAssociationId\"},\"UseCaseType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UseCaseId\":{},\"UseCaseArn\":{}}}},\"CreateUser\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/users/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Username\",\"PhoneConfig\",\"SecurityProfileIds\",\"RoutingProfileId\",\"InstanceId\"],\"members\":{\"Username\":{},\"Password\":{},\"IdentityInfo\":{\"shape\":\"S2t\"},\"PhoneConfig\":{\"shape\":\"S2x\"},\"DirectoryUserId\":{},\"SecurityProfileIds\":{\"shape\":\"S32\"},\"RoutingProfileId\":{},\"HierarchyGroupId\":{},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Tags\":{\"shape\":\"S1b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserId\":{},\"UserArn\":{}}}},\"CreateUserHierarchyGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/user-hierarchy-groups/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InstanceId\"],\"members\":{\"Name\":{},\"ParentGroupId\":{},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HierarchyGroupId\":{},\"HierarchyGroupArn\":{}}}},\"DeleteInstance\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"DeleteIntegrationAssociation\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"IntegrationAssociationId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"IntegrationAssociationId\":{\"location\":\"uri\",\"locationName\":\"IntegrationAssociationId\"}}}},\"DeleteQuickConnect\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/quick-connects/{InstanceId}/{QuickConnectId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QuickConnectId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QuickConnectId\":{\"location\":\"uri\",\"locationName\":\"QuickConnectId\"}}}},\"DeleteUseCase\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}/use-cases/{UseCaseId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"IntegrationAssociationId\",\"UseCaseId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"IntegrationAssociationId\":{\"location\":\"uri\",\"locationName\":\"IntegrationAssociationId\"},\"UseCaseId\":{\"location\":\"uri\",\"locationName\":\"UseCaseId\"}}}},\"DeleteUser\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/users/{InstanceId}/{UserId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"UserId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"}}}},\"DeleteUserHierarchyGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/user-hierarchy-groups/{InstanceId}/{HierarchyGroupId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HierarchyGroupId\",\"InstanceId\"],\"members\":{\"HierarchyGroupId\":{\"location\":\"uri\",\"locationName\":\"HierarchyGroupId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"DescribeContactFlow\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/contact-flows/{InstanceId}/{ContactFlowId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactFlowId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"ContactFlowId\":{\"location\":\"uri\",\"locationName\":\"ContactFlowId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactFlow\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{},\"Name\":{},\"Type\":{},\"Description\":{},\"Content\":{},\"Tags\":{\"shape\":\"S1b\"}}}}}},\"DescribeHoursOfOperation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/hours-of-operations/{InstanceId}/{HoursOfOperationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"HoursOfOperationId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"HoursOfOperationId\":{\"location\":\"uri\",\"locationName\":\"HoursOfOperationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HoursOfOperation\":{\"type\":\"structure\",\"members\":{\"HoursOfOperationId\":{},\"HoursOfOperationArn\":{},\"Name\":{},\"Description\":{},\"TimeZone\":{},\"Config\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Day\":{},\"StartTime\":{\"shape\":\"S3q\"},\"EndTime\":{\"shape\":\"S3q\"}}}},\"Tags\":{\"shape\":\"S1b\"}}}}}},\"DescribeInstance\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instance\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"IdentityManagementType\":{},\"InstanceAlias\":{\"shape\":\"S1j\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"ServiceRole\":{},\"InstanceStatus\":{},\"StatusReason\":{\"type\":\"structure\",\"members\":{\"Message\":{}}},\"InboundCallsEnabled\":{\"type\":\"boolean\"},\"OutboundCallsEnabled\":{\"type\":\"boolean\"}}}}}},\"DescribeInstanceAttribute\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/attribute/{AttributeType}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AttributeType\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"AttributeType\":{\"location\":\"uri\",\"locationName\":\"AttributeType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attribute\":{\"shape\":\"S43\"}}}},\"DescribeInstanceStorageConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/storage-config/{AssociationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AssociationId\",\"ResourceType\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"AssociationId\":{\"location\":\"uri\",\"locationName\":\"AssociationId\"},\"ResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StorageConfig\":{\"shape\":\"S6\"}}}},\"DescribeQueue\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/queues/{InstanceId}/{QueueId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Queue\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"QueueArn\":{},\"QueueId\":{},\"Description\":{},\"OutboundCallerConfig\":{\"shape\":\"S1y\"},\"HoursOfOperationId\":{},\"MaxContacts\":{\"type\":\"integer\"},\"Status\":{},\"Tags\":{\"shape\":\"S1b\"}}}}}},\"DescribeQuickConnect\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/quick-connects/{InstanceId}/{QuickConnectId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QuickConnectId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QuickConnectId\":{\"location\":\"uri\",\"locationName\":\"QuickConnectId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QuickConnect\":{\"type\":\"structure\",\"members\":{\"QuickConnectARN\":{},\"QuickConnectId\":{},\"Name\":{},\"Description\":{},\"QuickConnectConfig\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1b\"}}}}}},\"DescribeRoutingProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoutingProfile\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"Name\":{},\"RoutingProfileArn\":{},\"RoutingProfileId\":{},\"Description\":{},\"MediaConcurrencies\":{\"shape\":\"S2i\"},\"DefaultOutboundQueueId\":{},\"Tags\":{\"shape\":\"S1b\"}}}}}},\"DescribeUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/users/{InstanceId}/{UserId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"UserId\",\"InstanceId\"],\"members\":{\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Username\":{},\"IdentityInfo\":{\"shape\":\"S2t\"},\"PhoneConfig\":{\"shape\":\"S2x\"},\"DirectoryUserId\":{},\"SecurityProfileIds\":{\"shape\":\"S32\"},\"RoutingProfileId\":{},\"HierarchyGroupId\":{},\"Tags\":{\"shape\":\"S1b\"}}}}}},\"DescribeUserHierarchyGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/user-hierarchy-groups/{InstanceId}/{HierarchyGroupId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HierarchyGroupId\",\"InstanceId\"],\"members\":{\"HierarchyGroupId\":{\"location\":\"uri\",\"locationName\":\"HierarchyGroupId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HierarchyGroup\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"LevelId\":{},\"HierarchyPath\":{\"type\":\"structure\",\"members\":{\"LevelOne\":{\"shape\":\"S4p\"},\"LevelTwo\":{\"shape\":\"S4p\"},\"LevelThree\":{\"shape\":\"S4p\"},\"LevelFour\":{\"shape\":\"S4p\"},\"LevelFive\":{\"shape\":\"S4p\"}}}}}}}},\"DescribeUserHierarchyStructure\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/user-hierarchy-structure/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HierarchyStructure\":{\"type\":\"structure\",\"members\":{\"LevelOne\":{\"shape\":\"S4t\"},\"LevelTwo\":{\"shape\":\"S4t\"},\"LevelThree\":{\"shape\":\"S4t\"},\"LevelFour\":{\"shape\":\"S4t\"},\"LevelFive\":{\"shape\":\"S4t\"}}}}}},\"DisassociateApprovedOrigin\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/approved-origin\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Origin\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Origin\":{\"location\":\"querystring\",\"locationName\":\"origin\"}}}},\"DisassociateInstanceStorageConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/storage-config/{AssociationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AssociationId\",\"ResourceType\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"AssociationId\":{\"location\":\"uri\",\"locationName\":\"AssociationId\"},\"ResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"}}}},\"DisassociateLambdaFunction\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/lambda-function\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"FunctionArn\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"FunctionArn\":{\"location\":\"querystring\",\"locationName\":\"functionArn\"}}}},\"DisassociateLexBot\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/lex-bot\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"BotName\",\"LexRegion\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"BotName\":{\"location\":\"querystring\",\"locationName\":\"botName\"},\"LexRegion\":{\"location\":\"querystring\",\"locationName\":\"lexRegion\"}}}},\"DisassociateQueueQuickConnects\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/disassociate-quick-connects\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\",\"QuickConnectIds\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"QuickConnectIds\":{\"shape\":\"St\"}}}},\"DisassociateRoutingProfileQueues\":{\"http\":{\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/disassociate-queues\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\",\"QueueReferences\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"QueueReferences\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\"}}}}},\"DisassociateSecurityKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/instance/{InstanceId}/security-key/{AssociationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AssociationId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"AssociationId\":{\"location\":\"uri\",\"locationName\":\"AssociationId\"}}}},\"GetContactAttributes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/contact/attributes/{InstanceId}/{InitialContactId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"InitialContactId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"InitialContactId\":{\"location\":\"uri\",\"locationName\":\"InitialContactId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S56\"}}}},\"GetCurrentMetricData\":{\"http\":{\"requestUri\":\"/metrics/current/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Filters\",\"CurrentMetrics\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"Filters\":{\"shape\":\"S5a\"},\"Groupings\":{\"shape\":\"S5d\"},\"CurrentMetrics\":{\"type\":\"list\",\"member\":{\"shape\":\"S5g\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MetricResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"S5o\"},\"Collections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Metric\":{\"shape\":\"S5g\"},\"Value\":{\"type\":\"double\"}}}}}}},\"DataSnapshotTime\":{\"type\":\"timestamp\"}}}},\"GetFederationToken\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/user/federate/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Credentials\":{\"type\":\"structure\",\"members\":{\"AccessToken\":{\"shape\":\"S5x\"},\"AccessTokenExpiration\":{\"type\":\"timestamp\"},\"RefreshToken\":{\"shape\":\"S5x\"},\"RefreshTokenExpiration\":{\"type\":\"timestamp\"}}}}}},\"GetMetricData\":{\"http\":{\"requestUri\":\"/metrics/historical/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"StartTime\",\"EndTime\",\"Filters\",\"HistoricalMetrics\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Filters\":{\"shape\":\"S5a\"},\"Groupings\":{\"shape\":\"S5d\"},\"HistoricalMetrics\":{\"type\":\"list\",\"member\":{\"shape\":\"S60\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MetricResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"S5o\"},\"Collections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Metric\":{\"shape\":\"S60\"},\"Value\":{\"type\":\"double\"}}}}}}}}}},\"ListApprovedOrigins\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/approved-origins\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Origins\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListContactFlows\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/contact-flows-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"ContactFlowTypes\":{\"location\":\"querystring\",\"locationName\":\"contactFlowTypes\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactFlowSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"ContactFlowType\":{}}}},\"NextToken\":{}}}},\"ListHoursOfOperations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/hours-of-operations-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HoursOfOperationSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListInstanceAttributes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/attributes\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"type\":\"list\",\"member\":{\"shape\":\"S43\"}},\"NextToken\":{}}}},\"ListInstanceStorageConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/storage-configs\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ResourceType\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"ResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StorageConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"NextToken\":{}}}},\"ListInstances\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"IdentityManagementType\":{},\"InstanceAlias\":{\"shape\":\"S1j\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"ServiceRole\":{},\"InstanceStatus\":{},\"InboundCallsEnabled\":{\"type\":\"boolean\"},\"OutboundCallsEnabled\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"ListIntegrationAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/integration-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IntegrationAssociationSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IntegrationAssociationId\":{},\"IntegrationAssociationArn\":{},\"InstanceId\":{},\"IntegrationType\":{},\"IntegrationArn\":{},\"SourceApplicationUrl\":{},\"SourceApplicationName\":{},\"SourceType\":{}}}},\"NextToken\":{}}}},\"ListLambdaFunctions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/lambda-functions\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LambdaFunctions\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListLexBots\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/lex-bots\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LexBots\":{\"type\":\"list\",\"member\":{\"shape\":\"So\"}},\"NextToken\":{}}}},\"ListPhoneNumbers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/phone-numbers-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"PhoneNumberTypes\":{\"location\":\"querystring\",\"locationName\":\"phoneNumberTypes\",\"type\":\"list\",\"member\":{}},\"PhoneNumberCountryCodes\":{\"location\":\"querystring\",\"locationName\":\"phoneNumberCountryCodes\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PhoneNumberSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"PhoneNumber\":{},\"PhoneNumberType\":{},\"PhoneNumberCountryCode\":{}}}},\"NextToken\":{}}}},\"ListPrompts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prompts-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PromptSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListQueueQuickConnects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/queues/{InstanceId}/{QueueId}/quick-connects\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"QuickConnectSummaryList\":{\"shape\":\"S7s\"}}}},\"ListQueues\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/queues-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueTypes\":{\"location\":\"querystring\",\"locationName\":\"queueTypes\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueueSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"QueueType\":{}}}},\"NextToken\":{}}}},\"ListQuickConnects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/quick-connects/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"QuickConnectTypes\":{\"location\":\"querystring\",\"locationName\":\"QuickConnectTypes\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"QuickConnectSummaryList\":{\"shape\":\"S7s\"},\"NextToken\":{}}}},\"ListRoutingProfileQueues\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/queues\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"RoutingProfileQueueConfigSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"QueueId\",\"QueueArn\",\"QueueName\",\"Priority\",\"Delay\",\"Channel\"],\"members\":{\"QueueId\":{},\"QueueArn\":{},\"QueueName\":{},\"Priority\":{\"type\":\"integer\"},\"Delay\":{\"type\":\"integer\"},\"Channel\":{}}}}}}},\"ListRoutingProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/routing-profiles-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RoutingProfileSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListSecurityKeys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/security-keys\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"Key\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListSecurityProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/security-profiles-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityProfileSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1b\"}}}},\"ListUseCases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}/use-cases\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"IntegrationAssociationId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"IntegrationAssociationId\":{\"location\":\"uri\",\"locationName\":\"IntegrationAssociationId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UseCaseSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UseCaseId\":{},\"UseCaseArn\":{},\"UseCaseType\":{}}}},\"NextToken\":{}}}},\"ListUserHierarchyGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/user-hierarchy-groups-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserHierarchyGroupSummaryList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4p\"}},\"NextToken\":{}}}},\"ListUsers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/users-summary/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Username\":{}}}},\"NextToken\":{}}}},\"ResumeContactRecording\":{\"http\":{\"requestUri\":\"/contact/resume-recording\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactId\",\"InitialContactId\"],\"members\":{\"InstanceId\":{},\"ContactId\":{},\"InitialContactId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartChatContact\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/contact/chat\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactFlowId\",\"ParticipantDetails\"],\"members\":{\"InstanceId\":{},\"ContactFlowId\":{},\"Attributes\":{\"shape\":\"S56\"},\"ParticipantDetails\":{\"type\":\"structure\",\"required\":[\"DisplayName\"],\"members\":{\"DisplayName\":{}}},\"InitialMessage\":{\"type\":\"structure\",\"required\":[\"ContentType\",\"Content\"],\"members\":{\"ContentType\":{},\"Content\":{}}},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactId\":{},\"ParticipantId\":{},\"ParticipantToken\":{}}}},\"StartContactRecording\":{\"http\":{\"requestUri\":\"/contact/start-recording\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactId\",\"InitialContactId\",\"VoiceRecordingConfiguration\"],\"members\":{\"InstanceId\":{},\"ContactId\":{},\"InitialContactId\":{},\"VoiceRecordingConfiguration\":{\"type\":\"structure\",\"members\":{\"VoiceRecordingTrack\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartOutboundVoiceContact\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/contact/outbound-voice\"},\"input\":{\"type\":\"structure\",\"required\":[\"DestinationPhoneNumber\",\"ContactFlowId\",\"InstanceId\"],\"members\":{\"DestinationPhoneNumber\":{},\"ContactFlowId\":{},\"InstanceId\":{},\"ClientToken\":{\"idempotencyToken\":true},\"SourcePhoneNumber\":{},\"QueueId\":{},\"Attributes\":{\"shape\":\"S56\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactId\":{}}}},\"StartTaskContact\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/contact/task\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactFlowId\",\"Name\"],\"members\":{\"InstanceId\":{},\"PreviousContactId\":{},\"ContactFlowId\":{},\"Attributes\":{\"shape\":\"S56\"},\"Name\":{},\"References\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Value\",\"Type\"],\"members\":{\"Value\":{},\"Type\":{}}}},\"Description\":{},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactId\":{}}}},\"StopContact\":{\"http\":{\"requestUri\":\"/contact/stop\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactId\",\"InstanceId\"],\"members\":{\"ContactId\":{},\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopContactRecording\":{\"http\":{\"requestUri\":\"/contact/stop-recording\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactId\",\"InitialContactId\"],\"members\":{\"InstanceId\":{},\"ContactId\":{},\"InitialContactId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SuspendContactRecording\":{\"http\":{\"requestUri\":\"/contact/suspend-recording\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactId\",\"InitialContactId\"],\"members\":{\"InstanceId\":{},\"ContactId\":{},\"InitialContactId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1b\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}}},\"UpdateContactAttributes\":{\"http\":{\"requestUri\":\"/contact/attributes\"},\"input\":{\"type\":\"structure\",\"required\":[\"InitialContactId\",\"InstanceId\",\"Attributes\"],\"members\":{\"InitialContactId\":{},\"InstanceId\":{},\"Attributes\":{\"shape\":\"S56\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateContactFlowContent\":{\"http\":{\"requestUri\":\"/contact-flows/{InstanceId}/{ContactFlowId}/content\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactFlowId\",\"Content\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"ContactFlowId\":{\"location\":\"uri\",\"locationName\":\"ContactFlowId\"},\"Content\":{}}}},\"UpdateContactFlowName\":{\"http\":{\"requestUri\":\"/contact-flows/{InstanceId}/{ContactFlowId}/name\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactFlowId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"ContactFlowId\":{\"location\":\"uri\",\"locationName\":\"ContactFlowId\"},\"Name\":{},\"Description\":{}}}},\"UpdateInstanceAttribute\":{\"http\":{\"requestUri\":\"/instance/{InstanceId}/attribute/{AttributeType}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AttributeType\",\"Value\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"AttributeType\":{\"location\":\"uri\",\"locationName\":\"AttributeType\"},\"Value\":{}}}},\"UpdateInstanceStorageConfig\":{\"http\":{\"requestUri\":\"/instance/{InstanceId}/storage-config/{AssociationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"AssociationId\",\"ResourceType\",\"StorageConfig\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"AssociationId\":{\"location\":\"uri\",\"locationName\":\"AssociationId\"},\"ResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"StorageConfig\":{\"shape\":\"S6\"}}}},\"UpdateQueueHoursOfOperation\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/hours-of-operation\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\",\"HoursOfOperationId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"HoursOfOperationId\":{}}}},\"UpdateQueueMaxContacts\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/max-contacts\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\",\"MaxContacts\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"MaxContacts\":{\"type\":\"integer\"}}}},\"UpdateQueueName\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/name\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"Name\":{},\"Description\":{}}}},\"UpdateQueueOutboundCallerConfig\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/outbound-caller-config\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\",\"OutboundCallerConfig\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"OutboundCallerConfig\":{\"shape\":\"S1y\"}}}},\"UpdateQueueStatus\":{\"http\":{\"requestUri\":\"/queues/{InstanceId}/{QueueId}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QueueId\",\"Status\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QueueId\":{\"location\":\"uri\",\"locationName\":\"QueueId\"},\"Status\":{}}}},\"UpdateQuickConnectConfig\":{\"http\":{\"requestUri\":\"/quick-connects/{InstanceId}/{QuickConnectId}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QuickConnectId\",\"QuickConnectConfig\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QuickConnectId\":{\"location\":\"uri\",\"locationName\":\"QuickConnectId\"},\"QuickConnectConfig\":{\"shape\":\"S27\"}}}},\"UpdateQuickConnectName\":{\"http\":{\"requestUri\":\"/quick-connects/{InstanceId}/{QuickConnectId}/name\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"QuickConnectId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"QuickConnectId\":{\"location\":\"uri\",\"locationName\":\"QuickConnectId\"},\"Name\":{},\"Description\":{}}}},\"UpdateRoutingProfileConcurrency\":{\"http\":{\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/concurrency\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\",\"MediaConcurrencies\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"MediaConcurrencies\":{\"shape\":\"S2i\"}}}},\"UpdateRoutingProfileDefaultOutboundQueue\":{\"http\":{\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/default-outbound-queue\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\",\"DefaultOutboundQueueId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"DefaultOutboundQueueId\":{}}}},\"UpdateRoutingProfileName\":{\"http\":{\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/name\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"Name\":{},\"Description\":{}}}},\"UpdateRoutingProfileQueues\":{\"http\":{\"requestUri\":\"/routing-profiles/{InstanceId}/{RoutingProfileId}/queues\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"RoutingProfileId\",\"QueueConfigs\"],\"members\":{\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"},\"RoutingProfileId\":{\"location\":\"uri\",\"locationName\":\"RoutingProfileId\"},\"QueueConfigs\":{\"shape\":\"Sx\"}}}},\"UpdateUserHierarchy\":{\"http\":{\"requestUri\":\"/users/{InstanceId}/{UserId}/hierarchy\"},\"input\":{\"type\":\"structure\",\"required\":[\"UserId\",\"InstanceId\"],\"members\":{\"HierarchyGroupId\":{},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"UpdateUserHierarchyGroupName\":{\"http\":{\"requestUri\":\"/user-hierarchy-groups/{InstanceId}/{HierarchyGroupId}/name\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"HierarchyGroupId\",\"InstanceId\"],\"members\":{\"Name\":{},\"HierarchyGroupId\":{\"location\":\"uri\",\"locationName\":\"HierarchyGroupId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"UpdateUserHierarchyStructure\":{\"http\":{\"requestUri\":\"/user-hierarchy-structure/{InstanceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HierarchyStructure\",\"InstanceId\"],\"members\":{\"HierarchyStructure\":{\"type\":\"structure\",\"members\":{\"LevelOne\":{\"shape\":\"Saj\"},\"LevelTwo\":{\"shape\":\"Saj\"},\"LevelThree\":{\"shape\":\"Saj\"},\"LevelFour\":{\"shape\":\"Saj\"},\"LevelFive\":{\"shape\":\"Saj\"}}},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"UpdateUserIdentityInfo\":{\"http\":{\"requestUri\":\"/users/{InstanceId}/{UserId}/identity-info\"},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityInfo\",\"UserId\",\"InstanceId\"],\"members\":{\"IdentityInfo\":{\"shape\":\"S2t\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"UpdateUserPhoneConfig\":{\"http\":{\"requestUri\":\"/users/{InstanceId}/{UserId}/phone-config\"},\"input\":{\"type\":\"structure\",\"required\":[\"PhoneConfig\",\"UserId\",\"InstanceId\"],\"members\":{\"PhoneConfig\":{\"shape\":\"S2x\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"UpdateUserRoutingProfile\":{\"http\":{\"requestUri\":\"/users/{InstanceId}/{UserId}/routing-profile\"},\"input\":{\"type\":\"structure\",\"required\":[\"RoutingProfileId\",\"UserId\",\"InstanceId\"],\"members\":{\"RoutingProfileId\":{},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}},\"UpdateUserSecurityProfiles\":{\"http\":{\"requestUri\":\"/users/{InstanceId}/{UserId}/security-profiles\"},\"input\":{\"type\":\"structure\",\"required\":[\"SecurityProfileIds\",\"UserId\",\"InstanceId\"],\"members\":{\"SecurityProfileIds\":{\"shape\":\"S32\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"InstanceId\":{\"location\":\"uri\",\"locationName\":\"InstanceId\"}}}}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"required\":[\"StorageType\"],\"members\":{\"AssociationId\":{},\"StorageType\":{},\"S3Config\":{\"type\":\"structure\",\"required\":[\"BucketName\",\"BucketPrefix\"],\"members\":{\"BucketName\":{},\"BucketPrefix\":{},\"EncryptionConfig\":{\"shape\":\"Sc\"}}},\"KinesisVideoStreamConfig\":{\"type\":\"structure\",\"required\":[\"Prefix\",\"RetentionPeriodHours\",\"EncryptionConfig\"],\"members\":{\"Prefix\":{},\"RetentionPeriodHours\":{\"type\":\"integer\"},\"EncryptionConfig\":{\"shape\":\"Sc\"}}},\"KinesisStreamConfig\":{\"type\":\"structure\",\"required\":[\"StreamArn\"],\"members\":{\"StreamArn\":{}}},\"KinesisFirehoseConfig\":{\"type\":\"structure\",\"required\":[\"FirehoseArn\"],\"members\":{\"FirehoseArn\":{}}}}},\"Sc\":{\"type\":\"structure\",\"required\":[\"EncryptionType\",\"KeyId\"],\"members\":{\"EncryptionType\":{},\"KeyId\":{}}},\"So\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"LexRegion\":{}}},\"St\":{\"type\":\"list\",\"member\":{}},\"Sx\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"QueueReference\",\"Priority\",\"Delay\"],\"members\":{\"QueueReference\":{\"shape\":\"Sz\"},\"Priority\":{\"type\":\"integer\"},\"Delay\":{\"type\":\"integer\"}}}},\"Sz\":{\"type\":\"structure\",\"required\":[\"QueueId\",\"Channel\"],\"members\":{\"QueueId\":{},\"Channel\":{}}},\"S1b\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1j\":{\"type\":\"string\",\"sensitive\":true},\"S1y\":{\"type\":\"structure\",\"members\":{\"OutboundCallerIdName\":{},\"OutboundCallerIdNumberId\":{},\"OutboundFlowId\":{}}},\"S27\":{\"type\":\"structure\",\"required\":[\"QuickConnectType\"],\"members\":{\"QuickConnectType\":{},\"UserConfig\":{\"type\":\"structure\",\"required\":[\"UserId\",\"ContactFlowId\"],\"members\":{\"UserId\":{},\"ContactFlowId\":{}}},\"QueueConfig\":{\"type\":\"structure\",\"required\":[\"QueueId\",\"ContactFlowId\"],\"members\":{\"QueueId\":{},\"ContactFlowId\":{}}},\"PhoneConfig\":{\"type\":\"structure\",\"required\":[\"PhoneNumber\"],\"members\":{\"PhoneNumber\":{}}}}},\"S2i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Channel\",\"Concurrency\"],\"members\":{\"Channel\":{},\"Concurrency\":{\"type\":\"integer\"}}}},\"S2t\":{\"type\":\"structure\",\"members\":{\"FirstName\":{},\"LastName\":{},\"Email\":{}}},\"S2x\":{\"type\":\"structure\",\"required\":[\"PhoneType\"],\"members\":{\"PhoneType\":{},\"AutoAccept\":{\"type\":\"boolean\"},\"AfterContactWorkTimeLimit\":{\"type\":\"integer\"},\"DeskPhoneNumber\":{}}},\"S32\":{\"type\":\"list\",\"member\":{}},\"S3q\":{\"type\":\"structure\",\"members\":{\"Hours\":{\"type\":\"integer\"},\"Minutes\":{\"type\":\"integer\"}}},\"S43\":{\"type\":\"structure\",\"members\":{\"AttributeType\":{},\"Value\":{}}},\"S4p\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}},\"S4t\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}},\"S56\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S5a\":{\"type\":\"structure\",\"members\":{\"Queues\":{\"type\":\"list\",\"member\":{}},\"Channels\":{\"type\":\"list\",\"member\":{}}}},\"S5d\":{\"type\":\"list\",\"member\":{}},\"S5g\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Unit\":{}}},\"S5o\":{\"type\":\"structure\",\"members\":{\"Queue\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{}}},\"Channel\":{}}},\"S5x\":{\"type\":\"string\",\"sensitive\":true},\"S60\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Threshold\":{\"type\":\"structure\",\"members\":{\"Comparison\":{},\"ThresholdValue\":{\"type\":\"double\"}}},\"Statistic\":{},\"Unit\":{}}},\"S7s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"QuickConnectType\":{}}}},\"Saj\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}}}");

/***/ }),

/***/ 35649:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetCurrentMetricData\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetMetricData\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListApprovedOrigins\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Origins\"},\"ListContactFlows\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ContactFlowSummaryList\"},\"ListHoursOfOperations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"HoursOfOperationSummaryList\"},\"ListInstanceAttributes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Attributes\"},\"ListInstanceStorageConfigs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"StorageConfigs\"},\"ListInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceSummaryList\"},\"ListIntegrationAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"IntegrationAssociationSummaryList\"},\"ListLambdaFunctions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LambdaFunctions\"},\"ListLexBots\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LexBots\"},\"ListPhoneNumbers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PhoneNumberSummaryList\"},\"ListPrompts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PromptSummaryList\"},\"ListQueueQuickConnects\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"QuickConnectSummaryList\"},\"ListQueues\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"QueueSummaryList\"},\"ListQuickConnects\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"QuickConnectSummaryList\"},\"ListRoutingProfileQueues\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"RoutingProfileQueueConfigSummaryList\"},\"ListRoutingProfiles\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"RoutingProfileSummaryList\"},\"ListSecurityKeys\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SecurityKeys\"},\"ListSecurityProfiles\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SecurityProfileSummaryList\"},\"ListUseCases\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"UseCaseSummaryList\"},\"ListUserHierarchyGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"UserHierarchyGroupSummaryList\"},\"ListUsers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"UserSummaryList\"}}}");

/***/ }),

/***/ 86739:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-08-21\",\"endpointPrefix\":\"contact-lens\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon Connect Contact Lens\",\"serviceFullName\":\"Amazon Connect Contact Lens\",\"serviceId\":\"Connect Contact Lens\",\"signatureVersion\":\"v4\",\"signingName\":\"connect\",\"uid\":\"connect-contact-lens-2020-08-21\"},\"operations\":{\"ListRealtimeContactAnalysisSegments\":{\"http\":{\"requestUri\":\"/realtime-contact-analysis/analysis-segments\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ContactId\"],\"members\":{\"InstanceId\":{},\"ContactId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Segments\"],\"members\":{\"Segments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Transcript\":{\"type\":\"structure\",\"required\":[\"Id\",\"ParticipantId\",\"ParticipantRole\",\"Content\",\"BeginOffsetMillis\",\"EndOffsetMillis\",\"Sentiment\"],\"members\":{\"Id\":{},\"ParticipantId\":{},\"ParticipantRole\":{},\"Content\":{},\"BeginOffsetMillis\":{\"type\":\"integer\"},\"EndOffsetMillis\":{\"type\":\"integer\"},\"Sentiment\":{},\"IssuesDetected\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CharacterOffsets\"],\"members\":{\"CharacterOffsets\":{\"type\":\"structure\",\"required\":[\"BeginOffsetChar\",\"EndOffsetChar\"],\"members\":{\"BeginOffsetChar\":{\"type\":\"integer\"},\"EndOffsetChar\":{\"type\":\"integer\"}}}}}}}},\"Categories\":{\"type\":\"structure\",\"required\":[\"MatchedCategories\",\"MatchedDetails\"],\"members\":{\"MatchedCategories\":{\"type\":\"list\",\"member\":{}},\"MatchedDetails\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"PointsOfInterest\"],\"members\":{\"PointsOfInterest\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"BeginOffsetMillis\",\"EndOffsetMillis\"],\"members\":{\"BeginOffsetMillis\":{\"type\":\"integer\"},\"EndOffsetMillis\":{\"type\":\"integer\"}}}}}}}}}}}},\"NextToken\":{}}}}},\"shapes\":{}}");

/***/ }),

/***/ 49692:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListRealtimeContactAnalysisSegments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 46788:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-09-07\",\"endpointPrefix\":\"participant.connect\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon Connect Participant\",\"serviceFullName\":\"Amazon Connect Participant Service\",\"serviceId\":\"ConnectParticipant\",\"signatureVersion\":\"v4\",\"signingName\":\"execute-api\",\"uid\":\"connectparticipant-2018-09-07\"},\"operations\":{\"CompleteAttachmentUpload\":{\"http\":{\"requestUri\":\"/participant/complete-attachment-upload\"},\"input\":{\"type\":\"structure\",\"required\":[\"AttachmentIds\",\"ClientToken\",\"ConnectionToken\"],\"members\":{\"AttachmentIds\":{\"type\":\"list\",\"member\":{}},\"ClientToken\":{\"idempotencyToken\":true},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateParticipantConnection\":{\"http\":{\"requestUri\":\"/participant/connection\"},\"input\":{\"type\":\"structure\",\"required\":[\"Type\",\"ParticipantToken\"],\"members\":{\"Type\":{\"type\":\"list\",\"member\":{}},\"ParticipantToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Websocket\":{\"type\":\"structure\",\"members\":{\"Url\":{},\"ConnectionExpiry\":{}}},\"ConnectionCredentials\":{\"type\":\"structure\",\"members\":{\"ConnectionToken\":{},\"Expiry\":{}}}}}},\"DisconnectParticipant\":{\"http\":{\"requestUri\":\"/participant/disconnect\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionToken\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAttachment\":{\"http\":{\"requestUri\":\"/participant/attachment\"},\"input\":{\"type\":\"structure\",\"required\":[\"AttachmentId\",\"ConnectionToken\"],\"members\":{\"AttachmentId\":{},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Url\":{},\"UrlExpiry\":{}}}},\"GetTranscript\":{\"http\":{\"requestUri\":\"/participant/transcript\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionToken\"],\"members\":{\"ContactId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"ScanDirection\":{},\"SortOrder\":{},\"StartPosition\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"AbsoluteTime\":{},\"MostRecent\":{\"type\":\"integer\"}}},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InitialContactId\":{},\"Transcript\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AbsoluteTime\":{},\"Content\":{},\"ContentType\":{},\"Id\":{},\"Type\":{},\"ParticipantId\":{},\"DisplayName\":{},\"ParticipantRole\":{},\"Attachments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContentType\":{},\"AttachmentId\":{},\"AttachmentName\":{},\"Status\":{}}}}}}},\"NextToken\":{}}}},\"SendEvent\":{\"http\":{\"requestUri\":\"/participant/event\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContentType\",\"ConnectionToken\"],\"members\":{\"ContentType\":{},\"Content\":{},\"ClientToken\":{\"idempotencyToken\":true},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"AbsoluteTime\":{}}}},\"SendMessage\":{\"http\":{\"requestUri\":\"/participant/message\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContentType\",\"Content\",\"ConnectionToken\"],\"members\":{\"ContentType\":{},\"Content\":{},\"ClientToken\":{\"idempotencyToken\":true},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"AbsoluteTime\":{}}}},\"StartAttachmentUpload\":{\"http\":{\"requestUri\":\"/participant/start-attachment-upload\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContentType\",\"AttachmentSizeInBytes\",\"AttachmentName\",\"ClientToken\",\"ConnectionToken\"],\"members\":{\"ContentType\":{},\"AttachmentSizeInBytes\":{\"type\":\"long\"},\"AttachmentName\":{},\"ClientToken\":{\"idempotencyToken\":true},\"ConnectionToken\":{\"location\":\"header\",\"locationName\":\"X-Amz-Bearer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachmentId\":{},\"UploadMetadata\":{\"type\":\"structure\",\"members\":{\"Url\":{},\"UrlExpiry\":{},\"HeadersToInclude\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}},\"shapes\":{}}");

/***/ }),

/***/ 2813:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetTranscript\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 4138:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-01-06\",\"endpointPrefix\":\"cur\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Cost and Usage Report Service\",\"serviceId\":\"Cost and Usage Report Service\",\"signatureVersion\":\"v4\",\"signingName\":\"cur\",\"targetPrefix\":\"AWSOrigamiServiceGatewayService\",\"uid\":\"cur-2017-01-06\"},\"operations\":{\"DeleteReportDefinition\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReportName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResponseMessage\":{}}}},\"DescribeReportDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReportDefinitions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sa\"}},\"NextToken\":{}}}},\"ModifyReportDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReportName\",\"ReportDefinition\"],\"members\":{\"ReportName\":{},\"ReportDefinition\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutReportDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReportDefinition\"],\"members\":{\"ReportDefinition\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sa\":{\"type\":\"structure\",\"required\":[\"ReportName\",\"TimeUnit\",\"Format\",\"Compression\",\"AdditionalSchemaElements\",\"S3Bucket\",\"S3Prefix\",\"S3Region\"],\"members\":{\"ReportName\":{},\"TimeUnit\":{},\"Format\":{},\"Compression\":{},\"AdditionalSchemaElements\":{\"type\":\"list\",\"member\":{}},\"S3Bucket\":{},\"S3Prefix\":{},\"S3Region\":{},\"AdditionalArtifacts\":{\"type\":\"list\",\"member\":{}},\"RefreshClosedReports\":{\"type\":\"boolean\"},\"ReportVersioning\":{},\"BillingViewArn\":{}}}}}");

/***/ }),

/***/ 29271:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeReportDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 39734:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-08-15\",\"endpointPrefix\":\"profile\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Customer Profiles\",\"serviceFullName\":\"Amazon Connect Customer Profiles\",\"serviceId\":\"Customer Profiles\",\"signatureVersion\":\"v4\",\"signingName\":\"profile\",\"uid\":\"customer-profiles-2020-08-15\"},\"operations\":{\"AddProfileKey\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles/keys\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProfileId\",\"KeyName\",\"Values\",\"DomainName\"],\"members\":{\"ProfileId\":{},\"KeyName\":{},\"Values\":{\"shape\":\"S4\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyName\":{},\"Values\":{\"shape\":\"S4\"}}}},\"CreateDomain\":{\"http\":{\"requestUri\":\"/domains/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"DefaultExpirationDays\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"DefaultExpirationDays\":{\"type\":\"integer\"},\"DefaultEncryptionKey\":{},\"DeadLetterQueueUrl\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"DefaultExpirationDays\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"DefaultExpirationDays\":{\"type\":\"integer\"},\"DefaultEncryptionKey\":{},\"DeadLetterQueueUrl\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"CreateProfile\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"AccountNumber\":{},\"AdditionalInformation\":{},\"PartyType\":{},\"BusinessName\":{},\"FirstName\":{},\"MiddleName\":{},\"LastName\":{},\"BirthDate\":{},\"Gender\":{},\"PhoneNumber\":{},\"MobilePhoneNumber\":{},\"HomePhoneNumber\":{},\"BusinessPhoneNumber\":{},\"EmailAddress\":{},\"PersonalEmailAddress\":{},\"BusinessEmailAddress\":{},\"Address\":{\"shape\":\"Sk\"},\"ShippingAddress\":{\"shape\":\"Sk\"},\"MailingAddress\":{\"shape\":\"Sk\"},\"BillingAddress\":{\"shape\":\"Sk\"},\"Attributes\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProfileId\"],\"members\":{\"ProfileId\":{}}}},\"DeleteDomain\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/domains/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Message\"],\"members\":{\"Message\":{}}}},\"DeleteIntegration\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/integrations/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Uri\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"Uri\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Message\"],\"members\":{\"Message\":{}}}},\"DeleteProfile\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProfileId\",\"DomainName\"],\"members\":{\"ProfileId\":{},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}},\"DeleteProfileKey\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles/keys/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProfileId\",\"KeyName\",\"Values\",\"DomainName\"],\"members\":{\"ProfileId\":{},\"KeyName\":{},\"Values\":{\"shape\":\"S4\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}},\"DeleteProfileObject\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles/objects/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProfileId\",\"ProfileObjectUniqueKey\",\"ObjectTypeName\",\"DomainName\"],\"members\":{\"ProfileId\":{},\"ProfileObjectUniqueKey\":{},\"ObjectTypeName\":{},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}},\"DeleteProfileObjectType\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/domains/{DomainName}/object-types/{ObjectTypeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ObjectTypeName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"ObjectTypeName\":{\"location\":\"uri\",\"locationName\":\"ObjectTypeName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Message\"],\"members\":{\"Message\":{}}}},\"GetDomain\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domains/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"DefaultExpirationDays\":{\"type\":\"integer\"},\"DefaultEncryptionKey\":{},\"DeadLetterQueueUrl\":{},\"Stats\":{\"type\":\"structure\",\"members\":{\"ProfileCount\":{\"type\":\"long\"},\"MeteringProfileCount\":{\"type\":\"long\"},\"ObjectCount\":{\"type\":\"long\"},\"TotalSize\":{\"type\":\"long\"}}},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"GetIntegration\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/integrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Uri\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"Uri\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Uri\",\"ObjectTypeName\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"Uri\":{},\"ObjectTypeName\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"GetProfileObjectType\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domains/{DomainName}/object-types/{ObjectTypeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ObjectTypeName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"ObjectTypeName\":{\"location\":\"uri\",\"locationName\":\"ObjectTypeName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ObjectTypeName\",\"Description\"],\"members\":{\"ObjectTypeName\":{},\"Description\":{},\"TemplateId\":{},\"ExpirationDays\":{\"type\":\"integer\"},\"EncryptionKey\":{},\"AllowProfileCreation\":{\"type\":\"boolean\"},\"Fields\":{\"shape\":\"S1b\"},\"Keys\":{\"shape\":\"S1e\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"GetProfileObjectTypeTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/templates/{TemplateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateId\"],\"members\":{\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateId\":{},\"SourceName\":{},\"SourceObject\":{},\"AllowProfileCreation\":{\"type\":\"boolean\"},\"Fields\":{\"shape\":\"S1b\"},\"Keys\":{\"shape\":\"S1e\"}}}},\"ListAccountIntegrations\":{\"http\":{\"requestUri\":\"/integrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"Uri\"],\"members\":{\"Uri\":{},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"S1q\"},\"NextToken\":{}}}},\"ListDomains\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domains\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"NextToken\":{}}}},\"ListIntegrations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domains/{DomainName}/integrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"S1q\"},\"NextToken\":{}}}},\"ListProfileObjectTypeTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/templates\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TemplateId\":{},\"SourceName\":{},\"SourceObject\":{}}}},\"NextToken\":{}}}},\"ListProfileObjectTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domains/{DomainName}/object-types\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ObjectTypeName\",\"Description\"],\"members\":{\"ObjectTypeName\":{},\"Description\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"NextToken\":{}}}},\"ListProfileObjects\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles/objects\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ObjectTypeName\",\"ProfileId\"],\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"ObjectTypeName\":{},\"ProfileId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ObjectTypeName\":{},\"ProfileObjectUniqueKey\":{},\"Object\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sb\"}}}},\"PutIntegration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/domains/{DomainName}/integrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ObjectTypeName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"Uri\":{},\"ObjectTypeName\":{},\"Tags\":{\"shape\":\"Sb\"},\"FlowDefinition\":{\"type\":\"structure\",\"required\":[\"FlowName\",\"KmsArn\",\"SourceFlowConfig\",\"Tasks\",\"TriggerConfig\"],\"members\":{\"Description\":{},\"FlowName\":{},\"KmsArn\":{},\"SourceFlowConfig\":{\"type\":\"structure\",\"required\":[\"ConnectorType\",\"SourceConnectorProperties\"],\"members\":{\"ConnectorProfileName\":{},\"ConnectorType\":{},\"IncrementalPullConfig\":{\"type\":\"structure\",\"members\":{\"DatetimeTypeFieldName\":{}}},\"SourceConnectorProperties\":{\"type\":\"structure\",\"members\":{\"Marketo\":{\"type\":\"structure\",\"required\":[\"Object\"],\"members\":{\"Object\":{}}},\"S3\":{\"type\":\"structure\",\"required\":[\"BucketName\"],\"members\":{\"BucketName\":{},\"BucketPrefix\":{}}},\"Salesforce\":{\"type\":\"structure\",\"required\":[\"Object\"],\"members\":{\"Object\":{},\"EnableDynamicFieldUpdate\":{\"type\":\"boolean\"},\"IncludeDeletedRecords\":{\"type\":\"boolean\"}}},\"ServiceNow\":{\"type\":\"structure\",\"required\":[\"Object\"],\"members\":{\"Object\":{}}},\"Zendesk\":{\"type\":\"structure\",\"required\":[\"Object\"],\"members\":{\"Object\":{}}}}}}},\"Tasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SourceFields\",\"TaskType\"],\"members\":{\"ConnectorOperator\":{\"type\":\"structure\",\"members\":{\"Marketo\":{},\"S3\":{},\"Salesforce\":{},\"ServiceNow\":{},\"Zendesk\":{}}},\"DestinationField\":{},\"SourceFields\":{\"type\":\"list\",\"member\":{}},\"TaskProperties\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"TaskType\":{}}}},\"TriggerConfig\":{\"type\":\"structure\",\"required\":[\"TriggerType\"],\"members\":{\"TriggerType\":{},\"TriggerProperties\":{\"type\":\"structure\",\"members\":{\"Scheduled\":{\"type\":\"structure\",\"required\":[\"ScheduleExpression\"],\"members\":{\"ScheduleExpression\":{},\"DataPullMode\":{},\"ScheduleStartTime\":{\"type\":\"timestamp\"},\"ScheduleEndTime\":{\"type\":\"timestamp\"},\"Timezone\":{},\"ScheduleOffset\":{\"type\":\"long\"},\"FirstExecutionFrom\":{\"type\":\"timestamp\"}}}}}}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Uri\",\"ObjectTypeName\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"Uri\":{},\"ObjectTypeName\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"PutProfileObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/domains/{DomainName}/profiles/objects\"},\"input\":{\"type\":\"structure\",\"required\":[\"ObjectTypeName\",\"Object\",\"DomainName\"],\"members\":{\"ObjectTypeName\":{},\"Object\":{},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProfileObjectUniqueKey\":{}}}},\"PutProfileObjectType\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/domains/{DomainName}/object-types/{ObjectTypeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ObjectTypeName\",\"Description\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"ObjectTypeName\":{\"location\":\"uri\",\"locationName\":\"ObjectTypeName\"},\"Description\":{},\"TemplateId\":{},\"ExpirationDays\":{\"type\":\"integer\"},\"EncryptionKey\":{},\"AllowProfileCreation\":{\"type\":\"boolean\"},\"Fields\":{\"shape\":\"S1b\"},\"Keys\":{\"shape\":\"S1e\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ObjectTypeName\",\"Description\"],\"members\":{\"ObjectTypeName\":{},\"Description\":{},\"TemplateId\":{},\"ExpirationDays\":{\"type\":\"integer\"},\"EncryptionKey\":{},\"AllowProfileCreation\":{\"type\":\"boolean\"},\"Fields\":{\"shape\":\"S1b\"},\"Keys\":{\"shape\":\"S1e\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"SearchProfiles\":{\"http\":{\"requestUri\":\"/domains/{DomainName}/profiles/search\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"KeyName\",\"Values\"],\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"KeyName\":{},\"Values\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProfileId\":{},\"AccountNumber\":{},\"AdditionalInformation\":{},\"PartyType\":{},\"BusinessName\":{},\"FirstName\":{},\"MiddleName\":{},\"LastName\":{},\"BirthDate\":{},\"Gender\":{},\"PhoneNumber\":{},\"MobilePhoneNumber\":{},\"HomePhoneNumber\":{},\"BusinessPhoneNumber\":{},\"EmailAddress\":{},\"PersonalEmailAddress\":{},\"BusinessEmailAddress\":{},\"Address\":{\"shape\":\"Sk\"},\"ShippingAddress\":{\"shape\":\"Sk\"},\"MailingAddress\":{\"shape\":\"Sk\"},\"BillingAddress\":{\"shape\":\"Sk\"},\"Attributes\":{\"shape\":\"Sl\"}}}},\"NextToken\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDomain\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/domains/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"DefaultExpirationDays\":{\"type\":\"integer\"},\"DefaultEncryptionKey\":{},\"DeadLetterQueueUrl\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"DefaultExpirationDays\":{\"type\":\"integer\"},\"DefaultEncryptionKey\":{},\"DeadLetterQueueUrl\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"UpdateProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/domains/{DomainName}/profiles\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ProfileId\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"ProfileId\":{},\"AdditionalInformation\":{},\"AccountNumber\":{},\"PartyType\":{},\"BusinessName\":{},\"FirstName\":{},\"MiddleName\":{},\"LastName\":{},\"BirthDate\":{},\"Gender\":{},\"PhoneNumber\":{},\"MobilePhoneNumber\":{},\"HomePhoneNumber\":{},\"BusinessPhoneNumber\":{},\"EmailAddress\":{},\"PersonalEmailAddress\":{},\"BusinessEmailAddress\":{},\"Address\":{\"shape\":\"S44\"},\"ShippingAddress\":{\"shape\":\"S44\"},\"MailingAddress\":{\"shape\":\"S44\"},\"BillingAddress\":{\"shape\":\"S44\"},\"Attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProfileId\"],\"members\":{\"ProfileId\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{}},\"Sb\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sk\":{\"type\":\"structure\",\"members\":{\"Address1\":{},\"Address2\":{},\"Address3\":{},\"Address4\":{},\"City\":{},\"County\":{},\"State\":{},\"Province\":{},\"Country\":{},\"PostalCode\":{}}},\"Sl\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Source\":{},\"Target\":{},\"ContentType\":{}}}},\"S1e\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StandardIdentifiers\":{\"type\":\"list\",\"member\":{}},\"FieldNames\":{\"type\":\"list\",\"member\":{}}}}}},\"S1q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Uri\",\"ObjectTypeName\",\"CreatedAt\",\"LastUpdatedAt\"],\"members\":{\"DomainName\":{},\"Uri\":{},\"ObjectTypeName\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sb\"}}}},\"S44\":{\"type\":\"structure\",\"members\":{\"Address1\":{},\"Address2\":{},\"Address3\":{},\"Address4\":{},\"City\":{},\"County\":{},\"State\":{},\"Province\":{},\"Country\":{},\"PostalCode\":{}}}}}");

/***/ }),

/***/ 35003:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 42529:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"databrew\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS Glue DataBrew\",\"serviceId\":\"DataBrew\",\"signatureVersion\":\"v4\",\"signingName\":\"databrew\",\"uid\":\"databrew-2017-07-25\"},\"operations\":{\"BatchDeleteRecipeVersion\":{\"http\":{\"requestUri\":\"/recipes/{name}/batchDeleteRecipeVersion\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RecipeVersions\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RecipeVersions\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{},\"RecipeVersion\":{}}}}}}},\"CreateDataset\":{\"http\":{\"requestUri\":\"/datasets\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Input\"],\"members\":{\"Name\":{},\"Format\":{},\"FormatOptions\":{\"shape\":\"Sd\"},\"Input\":{\"shape\":\"So\"},\"PathOptions\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CreateProfileJob\":{\"http\":{\"requestUri\":\"/profileJobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\",\"Name\",\"OutputLocation\",\"RoleArn\"],\"members\":{\"DatasetName\":{},\"EncryptionKeyArn\":{},\"EncryptionMode\":{},\"Name\":{},\"LogSubscription\":{},\"MaxCapacity\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"OutputLocation\":{\"shape\":\"Sp\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1i\"},\"Timeout\":{\"type\":\"integer\"},\"JobSample\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CreateProject\":{\"http\":{\"requestUri\":\"/projects\"},\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\",\"Name\",\"RecipeName\",\"RoleArn\"],\"members\":{\"DatasetName\":{},\"Name\":{},\"RecipeName\":{},\"Sample\":{\"shape\":\"S21\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CreateRecipe\":{\"http\":{\"requestUri\":\"/recipes\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Steps\"],\"members\":{\"Description\":{},\"Name\":{},\"Steps\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CreateRecipeJob\":{\"http\":{\"requestUri\":\"/recipeJobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Outputs\",\"RoleArn\"],\"members\":{\"DatasetName\":{},\"EncryptionKeyArn\":{},\"EncryptionMode\":{},\"Name\":{},\"LogSubscription\":{},\"MaxCapacity\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"Outputs\":{\"shape\":\"S2k\"},\"ProjectName\":{},\"RecipeReference\":{\"shape\":\"S2t\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1i\"},\"Timeout\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CreateSchedule\":{\"http\":{\"requestUri\":\"/schedules\"},\"input\":{\"type\":\"structure\",\"required\":[\"CronExpression\",\"Name\"],\"members\":{\"JobNames\":{\"shape\":\"S2w\"},\"CronExpression\":{},\"Tags\":{\"shape\":\"S1i\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeleteDataset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/datasets/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeleteJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/jobs/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeleteProject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/projects/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeleteRecipeVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/recipes/{name}/recipeVersion/{recipeVersion}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RecipeVersion\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RecipeVersion\":{\"location\":\"uri\",\"locationName\":\"recipeVersion\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\",\"RecipeVersion\"],\"members\":{\"Name\":{},\"RecipeVersion\":{}}}},\"DeleteSchedule\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/schedules/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DescribeDataset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datasets/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\",\"Input\"],\"members\":{\"CreatedBy\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"Name\":{},\"Format\":{},\"FormatOptions\":{\"shape\":\"Sd\"},\"Input\":{\"shape\":\"So\"},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"Source\":{},\"PathOptions\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"S1i\"},\"ResourceArn\":{}}}},\"DescribeJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CreateDate\":{\"type\":\"timestamp\"},\"CreatedBy\":{},\"DatasetName\":{},\"EncryptionKeyArn\":{},\"EncryptionMode\":{},\"Name\":{},\"Type\":{},\"LastModifiedBy\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LogSubscription\":{},\"MaxCapacity\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"Outputs\":{\"shape\":\"S2k\"},\"ProjectName\":{},\"RecipeReference\":{\"shape\":\"S2t\"},\"ResourceArn\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1i\"},\"Timeout\":{\"type\":\"integer\"},\"JobSample\":{\"shape\":\"S1v\"}}}},\"DescribeJobRun\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{name}/jobRun/{runId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RunId\":{\"location\":\"uri\",\"locationName\":\"runId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"Attempt\":{\"type\":\"integer\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"DatasetName\":{},\"ErrorMessage\":{},\"ExecutionTime\":{\"type\":\"integer\"},\"JobName\":{},\"RunId\":{},\"State\":{},\"LogSubscription\":{},\"LogGroupName\":{},\"Outputs\":{\"shape\":\"S2k\"},\"RecipeReference\":{\"shape\":\"S2t\"},\"StartedBy\":{},\"StartedOn\":{\"type\":\"timestamp\"},\"JobSample\":{\"shape\":\"S1v\"}}}},\"DescribeProject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CreateDate\":{\"type\":\"timestamp\"},\"CreatedBy\":{},\"DatasetName\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"Name\":{},\"RecipeName\":{},\"ResourceArn\":{},\"Sample\":{\"shape\":\"S21\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1i\"},\"SessionStatus\":{},\"OpenedBy\":{},\"OpenDate\":{\"type\":\"timestamp\"}}}},\"DescribeRecipe\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/recipes/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RecipeVersion\":{\"location\":\"querystring\",\"locationName\":\"recipeVersion\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CreatedBy\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"ProjectName\":{},\"PublishedBy\":{},\"PublishedDate\":{\"type\":\"timestamp\"},\"Description\":{},\"Name\":{},\"Steps\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1i\"},\"ResourceArn\":{},\"RecipeVersion\":{}}}},\"DescribeSchedule\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/schedules/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CreateDate\":{\"type\":\"timestamp\"},\"CreatedBy\":{},\"JobNames\":{\"shape\":\"S2w\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"ResourceArn\":{},\"CronExpression\":{},\"Tags\":{\"shape\":\"S1i\"},\"Name\":{}}}},\"ListDatasets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datasets\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Datasets\"],\"members\":{\"Datasets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Input\"],\"members\":{\"AccountId\":{},\"CreatedBy\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"Name\":{},\"Format\":{},\"FormatOptions\":{\"shape\":\"Sd\"},\"Input\":{\"shape\":\"So\"},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"Source\":{},\"PathOptions\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"S1i\"},\"ResourceArn\":{}}}},\"NextToken\":{}}}},\"ListJobRuns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{name}/jobRuns\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobRuns\"],\"members\":{\"JobRuns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Attempt\":{\"type\":\"integer\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"DatasetName\":{},\"ErrorMessage\":{},\"ExecutionTime\":{\"type\":\"integer\"},\"JobName\":{},\"RunId\":{},\"State\":{},\"LogSubscription\":{},\"LogGroupName\":{},\"Outputs\":{\"shape\":\"S2k\"},\"RecipeReference\":{\"shape\":\"S2t\"},\"StartedBy\":{},\"StartedOn\":{\"type\":\"timestamp\"},\"JobSample\":{\"shape\":\"S1v\"}}}},\"NextToken\":{}}}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"DatasetName\":{\"location\":\"querystring\",\"locationName\":\"datasetName\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"ProjectName\":{\"location\":\"querystring\",\"locationName\":\"projectName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Jobs\"],\"members\":{\"Jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"AccountId\":{},\"CreatedBy\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"DatasetName\":{},\"EncryptionKeyArn\":{},\"EncryptionMode\":{},\"Name\":{},\"Type\":{},\"LastModifiedBy\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LogSubscription\":{},\"MaxCapacity\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"Outputs\":{\"shape\":\"S2k\"},\"ProjectName\":{},\"RecipeReference\":{\"shape\":\"S2t\"},\"ResourceArn\":{},\"RoleArn\":{},\"Timeout\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S1i\"},\"JobSample\":{\"shape\":\"S1v\"}}}},\"NextToken\":{}}}},\"ListProjects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Projects\"],\"members\":{\"Projects\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"RecipeName\"],\"members\":{\"AccountId\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"CreatedBy\":{},\"DatasetName\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"Name\":{},\"RecipeName\":{},\"ResourceArn\":{},\"Sample\":{\"shape\":\"S21\"},\"Tags\":{\"shape\":\"S1i\"},\"RoleArn\":{},\"OpenedBy\":{},\"OpenDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListRecipeVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/recipeVersions\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"Name\":{\"location\":\"querystring\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Recipes\"],\"members\":{\"NextToken\":{},\"Recipes\":{\"shape\":\"S4m\"}}}},\"ListRecipes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/recipes\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RecipeVersion\":{\"location\":\"querystring\",\"locationName\":\"recipeVersion\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Recipes\"],\"members\":{\"Recipes\":{\"shape\":\"S4m\"},\"NextToken\":{}}}},\"ListSchedules\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/schedules\"},\"input\":{\"type\":\"structure\",\"members\":{\"JobName\":{\"location\":\"querystring\",\"locationName\":\"jobName\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Schedules\"],\"members\":{\"Schedules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"AccountId\":{},\"CreatedBy\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"JobNames\":{\"shape\":\"S2w\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"ResourceArn\":{},\"CronExpression\":{},\"Tags\":{\"shape\":\"S1i\"},\"Name\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1i\"}}}},\"PublishRecipe\":{\"http\":{\"requestUri\":\"/recipes/{name}/publishRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Description\":{},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"SendProjectSessionAction\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{name}/sendProjectSessionAction\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Preview\":{\"type\":\"boolean\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RecipeStep\":{\"shape\":\"S28\"},\"StepIndex\":{\"type\":\"integer\"},\"ClientSessionId\":{},\"ViewFrame\":{\"type\":\"structure\",\"required\":[\"StartColumnIndex\"],\"members\":{\"StartColumnIndex\":{\"type\":\"integer\"},\"ColumnRange\":{\"type\":\"integer\"},\"HiddenColumns\":{\"type\":\"list\",\"member\":{}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Result\":{},\"Name\":{},\"ActionId\":{\"type\":\"integer\"}}}},\"StartJobRun\":{\"http\":{\"requestUri\":\"/jobs/{name}/startJobRun\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"RunId\"],\"members\":{\"RunId\":{}}}},\"StartProjectSession\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{name}/startProjectSession\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"AssumeControl\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"ClientSessionId\":{}}}},\"StopJobRun\":{\"http\":{\"requestUri\":\"/jobs/{name}/jobRun/{runId}/stopJobRun\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RunId\":{\"location\":\"uri\",\"locationName\":\"runId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"RunId\"],\"members\":{\"RunId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDataset\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/datasets/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Input\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Format\":{},\"FormatOptions\":{\"shape\":\"Sd\"},\"Input\":{\"shape\":\"So\"},\"PathOptions\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"UpdateProfileJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/profileJobs/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"OutputLocation\",\"RoleArn\"],\"members\":{\"EncryptionKeyArn\":{},\"EncryptionMode\":{},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"LogSubscription\":{},\"MaxCapacity\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"OutputLocation\":{\"shape\":\"Sp\"},\"RoleArn\":{},\"Timeout\":{\"type\":\"integer\"},\"JobSample\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"UpdateProject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"Name\"],\"members\":{\"Sample\":{\"shape\":\"S21\"},\"RoleArn\":{},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"LastModifiedDate\":{\"type\":\"timestamp\"},\"Name\":{}}}},\"UpdateRecipe\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/recipes/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Description\":{},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Steps\":{\"shape\":\"S27\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"UpdateRecipeJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/recipeJobs/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Outputs\",\"RoleArn\"],\"members\":{\"EncryptionKeyArn\":{},\"EncryptionMode\":{},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"LogSubscription\":{},\"MaxCapacity\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"Outputs\":{\"shape\":\"S2k\"},\"RoleArn\":{},\"Timeout\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"UpdateSchedule\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/schedules/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CronExpression\",\"Name\"],\"members\":{\"JobNames\":{\"shape\":\"S2w\"},\"CronExpression\":{},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}}},\"shapes\":{\"Sd\":{\"type\":\"structure\",\"members\":{\"Json\":{\"type\":\"structure\",\"members\":{\"MultiLine\":{\"type\":\"boolean\"}}},\"Excel\":{\"type\":\"structure\",\"members\":{\"SheetNames\":{\"type\":\"list\",\"member\":{}},\"SheetIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"HeaderRow\":{\"type\":\"boolean\"}}},\"Csv\":{\"type\":\"structure\",\"members\":{\"Delimiter\":{},\"HeaderRow\":{\"type\":\"boolean\"}}}}},\"So\":{\"type\":\"structure\",\"members\":{\"S3InputDefinition\":{\"shape\":\"Sp\"},\"DataCatalogInputDefinition\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"TempDirectory\":{\"shape\":\"Sp\"}}},\"DatabaseInputDefinition\":{\"type\":\"structure\",\"required\":[\"GlueConnectionName\",\"DatabaseTableName\"],\"members\":{\"GlueConnectionName\":{},\"DatabaseTableName\":{},\"TempDirectory\":{\"shape\":\"Sp\"}}}}},\"Sp\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Key\":{}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"LastModifiedDateCondition\":{\"shape\":\"S10\"},\"FilesLimit\":{\"type\":\"structure\",\"required\":[\"MaxFiles\"],\"members\":{\"MaxFiles\":{\"type\":\"integer\"},\"OrderedBy\":{},\"Order\":{}}},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{},\"DatetimeOptions\":{\"type\":\"structure\",\"required\":[\"Format\"],\"members\":{\"Format\":{},\"TimezoneOffset\":{},\"LocaleCode\":{}}},\"CreateColumn\":{\"type\":\"boolean\"},\"Filter\":{\"shape\":\"S10\"}}}}}},\"S10\":{\"type\":\"structure\",\"required\":[\"Expression\",\"ValuesMap\"],\"members\":{\"Expression\":{},\"ValuesMap\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"S1i\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1v\":{\"type\":\"structure\",\"members\":{\"Mode\":{},\"Size\":{\"type\":\"long\"}}},\"S21\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Size\":{\"type\":\"integer\"},\"Type\":{}}},\"S27\":{\"type\":\"list\",\"member\":{\"shape\":\"S28\"}},\"S28\":{\"type\":\"structure\",\"required\":[\"Action\"],\"members\":{\"Action\":{\"type\":\"structure\",\"required\":[\"Operation\"],\"members\":{\"Operation\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"ConditionExpressions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Condition\",\"TargetColumn\"],\"members\":{\"Condition\":{},\"Value\":{},\"TargetColumn\":{}}}}}},\"S2k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Location\"],\"members\":{\"CompressionFormat\":{},\"Format\":{},\"PartitionColumns\":{\"type\":\"list\",\"member\":{}},\"Location\":{\"shape\":\"Sp\"},\"Overwrite\":{\"type\":\"boolean\"},\"FormatOptions\":{\"type\":\"structure\",\"members\":{\"Csv\":{\"type\":\"structure\",\"members\":{\"Delimiter\":{}}}}}}}},\"S2t\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"RecipeVersion\":{}}},\"S2w\":{\"type\":\"list\",\"member\":{}},\"S4m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CreatedBy\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"ProjectName\":{},\"PublishedBy\":{},\"PublishedDate\":{\"type\":\"timestamp\"},\"Description\":{},\"Name\":{},\"ResourceArn\":{},\"Steps\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1i\"},\"RecipeVersion\":{}}}}}}");

/***/ }),

/***/ 91224:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDatasets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Datasets\"},\"ListJobRuns\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"JobRuns\"},\"ListJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Jobs\"},\"ListProjects\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Projects\"},\"ListRecipeVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Recipes\"},\"ListRecipes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Recipes\"},\"ListSchedules\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Schedules\"}}}");

/***/ }),

/***/ 25676:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"dataexchange\",\"signingName\":\"dataexchange\",\"serviceFullName\":\"AWS Data Exchange\",\"serviceId\":\"DataExchange\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"dataexchange-2017-07-25\",\"signatureVersion\":\"v4\"},\"operations\":{\"CancelJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/jobs/{JobId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"JobId\":{\"location\":\"uri\",\"locationName\":\"JobId\"}},\"required\":[\"JobId\"]}},\"CreateDataSet\":{\"http\":{\"requestUri\":\"/v1/data-sets\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"AssetType\":{},\"Description\":{},\"Name\":{},\"Tags\":{\"shape\":\"S7\"}},\"required\":[\"AssetType\",\"Description\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Description\":{},\"Id\":{},\"Name\":{},\"Origin\":{},\"OriginDetails\":{\"shape\":\"Sd\"},\"SourceId\":{},\"Tags\":{\"shape\":\"S7\"},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"CreateJob\":{\"http\":{\"requestUri\":\"/v1/jobs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Details\":{\"type\":\"structure\",\"members\":{\"ExportAssetToSignedUrl\":{\"type\":\"structure\",\"members\":{\"AssetId\":{},\"DataSetId\":{},\"RevisionId\":{}},\"required\":[\"DataSetId\",\"AssetId\",\"RevisionId\"]},\"ExportAssetsToS3\":{\"type\":\"structure\",\"members\":{\"AssetDestinations\":{\"shape\":\"Si\"},\"DataSetId\":{},\"Encryption\":{\"shape\":\"Sk\"},\"RevisionId\":{}},\"required\":[\"AssetDestinations\",\"DataSetId\",\"RevisionId\"]},\"ExportRevisionsToS3\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{},\"Encryption\":{\"shape\":\"Sk\"},\"RevisionDestinations\":{\"shape\":\"Sn\"}},\"required\":[\"RevisionDestinations\",\"DataSetId\"]},\"ImportAssetFromSignedUrl\":{\"type\":\"structure\",\"members\":{\"AssetName\":{},\"DataSetId\":{},\"Md5Hash\":{},\"RevisionId\":{}},\"required\":[\"DataSetId\",\"Md5Hash\",\"RevisionId\",\"AssetName\"]},\"ImportAssetsFromS3\":{\"type\":\"structure\",\"members\":{\"AssetSources\":{\"shape\":\"St\"},\"DataSetId\":{},\"RevisionId\":{}},\"required\":[\"DataSetId\",\"AssetSources\",\"RevisionId\"]}}},\"Type\":{}},\"required\":[\"Type\",\"Details\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Details\":{\"shape\":\"Sx\"},\"Errors\":{\"shape\":\"S13\"},\"Id\":{},\"State\":{},\"Type\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"CreateRevision\":{\"http\":{\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Comment\":{},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"Tags\":{\"shape\":\"S7\"}},\"required\":[\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Comment\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Finalized\":{\"type\":\"boolean\"},\"Id\":{},\"SourceId\":{},\"Tags\":{\"shape\":\"S7\"},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"DeleteAsset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"AssetId\":{\"location\":\"uri\",\"locationName\":\"AssetId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"AssetId\",\"DataSetId\"]}},\"DeleteDataSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/data-sets/{DataSetId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"}},\"required\":[\"DataSetId\"]}},\"DeleteRevision\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"DataSetId\"]}},\"GetAsset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AssetId\":{\"location\":\"uri\",\"locationName\":\"AssetId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"AssetId\",\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetDetails\":{\"shape\":\"S1l\"},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Id\":{},\"Name\":{},\"RevisionId\":{},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"GetDataSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/data-sets/{DataSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"}},\"required\":[\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Description\":{},\"Id\":{},\"Name\":{},\"Origin\":{},\"OriginDetails\":{\"shape\":\"Sd\"},\"SourceId\":{},\"Tags\":{\"shape\":\"S7\"},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"GetJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/jobs/{JobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"JobId\":{\"location\":\"uri\",\"locationName\":\"JobId\"}},\"required\":[\"JobId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Details\":{\"shape\":\"Sx\"},\"Errors\":{\"shape\":\"S13\"},\"Id\":{},\"State\":{},\"Type\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"GetRevision\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Comment\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Finalized\":{\"type\":\"boolean\"},\"Id\":{},\"SourceId\":{},\"Tags\":{\"shape\":\"S7\"},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"ListDataSetRevisions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Revisions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Comment\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Finalized\":{\"type\":\"boolean\"},\"Id\":{},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}},\"required\":[\"CreatedAt\",\"DataSetId\",\"Id\",\"Arn\",\"UpdatedAt\"]}}}}},\"ListDataSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/data-sets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"Origin\":{\"location\":\"querystring\",\"locationName\":\"origin\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Description\":{},\"Id\":{},\"Name\":{},\"Origin\":{},\"OriginDetails\":{\"shape\":\"Sd\"},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}},\"required\":[\"Origin\",\"AssetType\",\"Description\",\"CreatedAt\",\"Id\",\"Arn\",\"UpdatedAt\",\"Name\"]}},\"NextToken\":{}}}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/jobs\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"querystring\",\"locationName\":\"dataSetId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RevisionId\":{\"location\":\"querystring\",\"locationName\":\"revisionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Details\":{\"shape\":\"Sx\"},\"Errors\":{\"shape\":\"S13\"},\"Id\":{},\"State\":{},\"Type\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}},\"required\":[\"Type\",\"Details\",\"State\",\"CreatedAt\",\"Id\",\"Arn\",\"UpdatedAt\"]}},\"NextToken\":{}}}},\"ListRevisionAssets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Assets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetDetails\":{\"shape\":\"S1l\"},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Id\":{},\"Name\":{},\"RevisionId\":{},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}},\"required\":[\"AssetType\",\"CreatedAt\",\"DataSetId\",\"Id\",\"Arn\",\"AssetDetails\",\"UpdatedAt\",\"RevisionId\",\"Name\"]}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S7\",\"locationName\":\"tags\"}}}},\"StartJob\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v1/jobs/{JobId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"JobId\":{\"location\":\"uri\",\"locationName\":\"JobId\"}},\"required\":[\"JobId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"shape\":\"S7\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\",\"Tags\"]}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateAsset\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}/assets/{AssetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AssetId\":{\"location\":\"uri\",\"locationName\":\"AssetId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"Name\":{},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"AssetId\",\"DataSetId\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetDetails\":{\"shape\":\"S1l\"},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Id\":{},\"Name\":{},\"RevisionId\":{},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"UpdateDataSet\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v1/data-sets/{DataSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"Description\":{},\"Name\":{}},\"required\":[\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssetType\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"Description\":{},\"Id\":{},\"Name\":{},\"Origin\":{},\"OriginDetails\":{\"shape\":\"Sd\"},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}}}},\"UpdateRevision\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v1/data-sets/{DataSetId}/revisions/{RevisionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Comment\":{},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"Finalized\":{\"type\":\"boolean\"},\"RevisionId\":{\"location\":\"uri\",\"locationName\":\"RevisionId\"}},\"required\":[\"RevisionId\",\"DataSetId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Comment\":{},\"CreatedAt\":{\"shape\":\"Sa\"},\"DataSetId\":{},\"Finalized\":{\"type\":\"boolean\"},\"Id\":{},\"SourceId\":{},\"UpdatedAt\":{\"shape\":\"Sa\"}}}}},\"shapes\":{\"S7\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sa\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sd\":{\"type\":\"structure\",\"members\":{\"ProductId\":{}},\"required\":[\"ProductId\"]},\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssetId\":{},\"Bucket\":{},\"Key\":{}},\"required\":[\"Bucket\",\"AssetId\"]}},\"Sk\":{\"type\":\"structure\",\"members\":{\"KmsKeyArn\":{},\"Type\":{}},\"required\":[\"Type\"]},\"Sn\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"KeyPattern\":{},\"RevisionId\":{}},\"required\":[\"Bucket\",\"RevisionId\"]}},\"St\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"Key\":{}},\"required\":[\"Bucket\",\"Key\"]}},\"Sx\":{\"type\":\"structure\",\"members\":{\"ExportAssetToSignedUrl\":{\"type\":\"structure\",\"members\":{\"AssetId\":{},\"DataSetId\":{},\"RevisionId\":{},\"SignedUrl\":{},\"SignedUrlExpiresAt\":{\"shape\":\"Sa\"}},\"required\":[\"DataSetId\",\"AssetId\",\"RevisionId\"]},\"ExportAssetsToS3\":{\"type\":\"structure\",\"members\":{\"AssetDestinations\":{\"shape\":\"Si\"},\"DataSetId\":{},\"Encryption\":{\"shape\":\"Sk\"},\"RevisionId\":{}},\"required\":[\"AssetDestinations\",\"DataSetId\",\"RevisionId\"]},\"ExportRevisionsToS3\":{\"type\":\"structure\",\"members\":{\"DataSetId\":{},\"Encryption\":{\"shape\":\"Sk\"},\"RevisionDestinations\":{\"shape\":\"Sn\"}},\"required\":[\"RevisionDestinations\",\"DataSetId\"]},\"ImportAssetFromSignedUrl\":{\"type\":\"structure\",\"members\":{\"AssetName\":{},\"DataSetId\":{},\"Md5Hash\":{},\"RevisionId\":{},\"SignedUrl\":{},\"SignedUrlExpiresAt\":{\"shape\":\"Sa\"}},\"required\":[\"DataSetId\",\"AssetName\",\"RevisionId\"]},\"ImportAssetsFromS3\":{\"type\":\"structure\",\"members\":{\"AssetSources\":{\"shape\":\"St\"},\"DataSetId\":{},\"RevisionId\":{}},\"required\":[\"DataSetId\",\"AssetSources\",\"RevisionId\"]}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Details\":{\"type\":\"structure\",\"members\":{\"ImportAssetFromSignedUrlJobErrorDetails\":{\"type\":\"structure\",\"members\":{\"AssetName\":{}},\"required\":[\"AssetName\"]},\"ImportAssetsFromS3JobErrorDetails\":{\"shape\":\"St\"}}},\"LimitName\":{},\"LimitValue\":{\"type\":\"double\"},\"Message\":{},\"ResourceId\":{},\"ResourceType\":{}},\"required\":[\"Message\",\"Code\"]}},\"S1l\":{\"type\":\"structure\",\"members\":{\"S3SnapshotAsset\":{\"type\":\"structure\",\"members\":{\"Size\":{\"type\":\"double\"}},\"required\":[\"Size\"]}}}}}");

/***/ }),

/***/ 44399:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDataSetRevisions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Revisions\"},\"ListDataSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DataSets\"},\"ListJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Jobs\"},\"ListRevisionAssets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Assets\"}}}");

/***/ }),

/***/ 9547:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-10-29\",\"endpointPrefix\":\"datapipeline\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Data Pipeline\",\"serviceId\":\"Data Pipeline\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"DataPipeline\",\"uid\":\"datapipeline-2012-10-29\"},\"operations\":{\"ActivatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\"],\"members\":{\"pipelineId\":{},\"parameterValues\":{\"shape\":\"S3\"},\"startTimestamp\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"tags\"],\"members\":{\"pipelineId\":{},\"tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"uniqueId\"],\"members\":{\"name\":{},\"uniqueId\":{},\"description\":{},\"tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"pipelineId\"],\"members\":{\"pipelineId\":{}}}},\"DeactivatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\"],\"members\":{\"pipelineId\":{},\"cancelActive\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\"],\"members\":{\"pipelineId\":{}}}},\"DescribeObjects\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"objectIds\"],\"members\":{\"pipelineId\":{},\"objectIds\":{\"shape\":\"Sn\"},\"evaluateExpressions\":{\"type\":\"boolean\"},\"marker\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"pipelineObjects\"],\"members\":{\"pipelineObjects\":{\"shape\":\"Sq\"},\"marker\":{},\"hasMoreResults\":{\"type\":\"boolean\"}}}},\"DescribePipelines\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineIds\"],\"members\":{\"pipelineIds\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"pipelineDescriptionList\"],\"members\":{\"pipelineDescriptionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"name\",\"fields\"],\"members\":{\"pipelineId\":{},\"name\":{},\"fields\":{\"shape\":\"Ss\"},\"description\":{},\"tags\":{\"shape\":\"Sa\"}}}}}}},\"EvaluateExpression\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"objectId\",\"expression\"],\"members\":{\"pipelineId\":{},\"objectId\":{},\"expression\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"evaluatedExpression\"],\"members\":{\"evaluatedExpression\":{}}}},\"GetPipelineDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\"],\"members\":{\"pipelineId\":{},\"version\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineObjects\":{\"shape\":\"Sq\"},\"parameterObjects\":{\"shape\":\"S13\"},\"parameterValues\":{\"shape\":\"S3\"}}}},\"ListPipelines\":{\"input\":{\"type\":\"structure\",\"members\":{\"marker\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"pipelineIdList\"],\"members\":{\"pipelineIdList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{}}}},\"marker\":{},\"hasMoreResults\":{\"type\":\"boolean\"}}}},\"PollForTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"workerGroup\"],\"members\":{\"workerGroup\":{},\"hostname\":{},\"instanceIdentity\":{\"type\":\"structure\",\"members\":{\"document\":{},\"signature\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskObject\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"pipelineId\":{},\"attemptId\":{},\"objects\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Sr\"}}}}}}},\"PutPipelineDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"pipelineObjects\"],\"members\":{\"pipelineId\":{},\"pipelineObjects\":{\"shape\":\"Sq\"},\"parameterObjects\":{\"shape\":\"S13\"},\"parameterValues\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"errored\"],\"members\":{\"validationErrors\":{\"shape\":\"S1l\"},\"validationWarnings\":{\"shape\":\"S1p\"},\"errored\":{\"type\":\"boolean\"}}}},\"QueryObjects\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"sphere\"],\"members\":{\"pipelineId\":{},\"query\":{\"type\":\"structure\",\"members\":{\"selectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fieldName\":{},\"operator\":{\"type\":\"structure\",\"members\":{\"type\":{},\"values\":{\"shape\":\"S1x\"}}}}}}}},\"sphere\":{},\"marker\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"Sn\"},\"marker\":{},\"hasMoreResults\":{\"type\":\"boolean\"}}}},\"RemoveTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"tagKeys\"],\"members\":{\"pipelineId\":{},\"tagKeys\":{\"shape\":\"S1x\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ReportTaskProgress\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{},\"fields\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"canceled\"],\"members\":{\"canceled\":{\"type\":\"boolean\"}}}},\"ReportTaskRunnerHeartbeat\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskrunnerId\"],\"members\":{\"taskrunnerId\":{},\"workerGroup\":{},\"hostname\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"terminate\"],\"members\":{\"terminate\":{\"type\":\"boolean\"}}}},\"SetStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"objectIds\",\"status\"],\"members\":{\"pipelineId\":{},\"objectIds\":{\"shape\":\"Sn\"},\"status\":{}}}},\"SetTaskStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskId\",\"taskStatus\"],\"members\":{\"taskId\":{},\"taskStatus\":{},\"errorId\":{},\"errorMessage\":{},\"errorStackTrace\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ValidatePipelineDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"pipelineId\",\"pipelineObjects\"],\"members\":{\"pipelineId\":{},\"pipelineObjects\":{\"shape\":\"Sq\"},\"parameterObjects\":{\"shape\":\"S13\"},\"parameterValues\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"errored\"],\"members\":{\"validationErrors\":{\"shape\":\"S1l\"},\"validationWarnings\":{\"shape\":\"S1p\"},\"errored\":{\"type\":\"boolean\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"stringValue\"],\"members\":{\"id\":{},\"stringValue\":{}}}},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sq\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"Sr\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"fields\"],\"members\":{\"id\":{},\"name\":{},\"fields\":{\"shape\":\"Ss\"}}},\"Ss\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"stringValue\":{},\"refValue\":{}}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"attributes\"],\"members\":{\"id\":{},\"attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"stringValue\"],\"members\":{\"key\":{},\"stringValue\":{}}}}}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"errors\":{\"shape\":\"S1n\"}}}},\"S1n\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"warnings\":{\"shape\":\"S1n\"}}}},\"S1x\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 48471:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeObjects\":{\"input_token\":\"marker\",\"more_results\":\"hasMoreResults\",\"output_token\":\"marker\",\"result_key\":\"pipelineObjects\"},\"DescribePipelines\":{\"result_key\":\"pipelineDescriptionList\"},\"ListPipelines\":{\"input_token\":\"marker\",\"more_results\":\"hasMoreResults\",\"output_token\":\"marker\",\"result_key\":\"pipelineIdList\"},\"QueryObjects\":{\"input_token\":\"marker\",\"limit_key\":\"limit\",\"more_results\":\"hasMoreResults\",\"output_token\":\"marker\",\"result_key\":\"ids\"}}}");

/***/ }),

/***/ 37374:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-09\",\"endpointPrefix\":\"datasync\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"DataSync\",\"serviceFullName\":\"AWS DataSync\",\"serviceId\":\"DataSync\",\"signatureVersion\":\"v4\",\"signingName\":\"datasync\",\"targetPrefix\":\"FmrsService\",\"uid\":\"datasync-2018-11-09\"},\"operations\":{\"CancelTaskExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskExecutionArn\"],\"members\":{\"TaskExecutionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAgent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActivationKey\"],\"members\":{\"ActivationKey\":{},\"AgentName\":{},\"Tags\":{\"shape\":\"S7\"},\"VpcEndpointId\":{},\"SubnetArns\":{\"shape\":\"Sb\"},\"SecurityGroupArns\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AgentArn\":{}}}},\"CreateLocationEfs\":{\"input\":{\"type\":\"structure\",\"required\":[\"EfsFilesystemArn\",\"Ec2Config\"],\"members\":{\"Subdirectory\":{},\"EfsFilesystemArn\":{},\"Ec2Config\":{\"shape\":\"Sk\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{}}}},\"CreateLocationFsxWindows\":{\"input\":{\"type\":\"structure\",\"required\":[\"FsxFilesystemArn\",\"SecurityGroupArns\",\"User\",\"Password\"],\"members\":{\"Subdirectory\":{},\"FsxFilesystemArn\":{},\"SecurityGroupArns\":{\"shape\":\"Sl\"},\"Tags\":{\"shape\":\"S7\"},\"User\":{},\"Domain\":{},\"Password\":{\"shape\":\"St\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{}}}},\"CreateLocationNfs\":{\"input\":{\"type\":\"structure\",\"required\":[\"Subdirectory\",\"ServerHostname\",\"OnPremConfig\"],\"members\":{\"Subdirectory\":{},\"ServerHostname\":{},\"OnPremConfig\":{\"shape\":\"Sy\"},\"MountOptions\":{\"shape\":\"S10\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{}}}},\"CreateLocationObjectStorage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerHostname\",\"BucketName\",\"AgentArns\"],\"members\":{\"ServerHostname\":{},\"ServerPort\":{\"type\":\"integer\"},\"ServerProtocol\":{},\"Subdirectory\":{},\"BucketName\":{},\"AccessKey\":{},\"SecretKey\":{\"shape\":\"S19\"},\"AgentArns\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{}}}},\"CreateLocationS3\":{\"input\":{\"type\":\"structure\",\"required\":[\"S3BucketArn\",\"S3Config\"],\"members\":{\"Subdirectory\":{},\"S3BucketArn\":{},\"S3StorageClass\":{},\"S3Config\":{\"shape\":\"S1e\"},\"AgentArns\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{}}}},\"CreateLocationSmb\":{\"input\":{\"type\":\"structure\",\"required\":[\"Subdirectory\",\"ServerHostname\",\"User\",\"Password\",\"AgentArns\"],\"members\":{\"Subdirectory\":{},\"ServerHostname\":{},\"User\":{},\"Domain\":{},\"Password\":{\"shape\":\"St\"},\"AgentArns\":{\"shape\":\"Sz\"},\"MountOptions\":{\"shape\":\"S1j\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{}}}},\"CreateTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceLocationArn\",\"DestinationLocationArn\"],\"members\":{\"SourceLocationArn\":{},\"DestinationLocationArn\":{},\"CloudWatchLogGroupArn\":{},\"Name\":{},\"Options\":{\"shape\":\"S1o\"},\"Excludes\":{\"shape\":\"S22\"},\"Schedule\":{\"shape\":\"S26\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskArn\":{}}}},\"DeleteAgent\":{\"input\":{\"type\":\"structure\",\"required\":[\"AgentArn\"],\"members\":{\"AgentArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteLocation\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskArn\"],\"members\":{\"TaskArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAgent\":{\"input\":{\"type\":\"structure\",\"required\":[\"AgentArn\"],\"members\":{\"AgentArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AgentArn\":{},\"Name\":{},\"Status\":{},\"LastConnectionTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"EndpointType\":{},\"PrivateLinkConfig\":{\"type\":\"structure\",\"members\":{\"VpcEndpointId\":{},\"PrivateLinkEndpoint\":{},\"SubnetArns\":{\"shape\":\"Sb\"},\"SecurityGroupArns\":{\"shape\":\"Sd\"}}}}}},\"DescribeLocationEfs\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{},\"Ec2Config\":{\"shape\":\"Sk\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeLocationFsxWindows\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{},\"SecurityGroupArns\":{\"shape\":\"Sl\"},\"CreationTime\":{\"type\":\"timestamp\"},\"User\":{},\"Domain\":{}}}},\"DescribeLocationNfs\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{},\"OnPremConfig\":{\"shape\":\"Sy\"},\"MountOptions\":{\"shape\":\"S10\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeLocationObjectStorage\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{},\"AccessKey\":{},\"ServerPort\":{\"type\":\"integer\"},\"ServerProtocol\":{},\"AgentArns\":{\"shape\":\"Sz\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeLocationS3\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{},\"S3StorageClass\":{},\"S3Config\":{\"shape\":\"S1e\"},\"AgentArns\":{\"shape\":\"Sz\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeLocationSmb\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{},\"AgentArns\":{\"shape\":\"Sz\"},\"User\":{},\"Domain\":{},\"MountOptions\":{\"shape\":\"S1j\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskArn\"],\"members\":{\"TaskArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskArn\":{},\"Status\":{},\"Name\":{},\"CurrentTaskExecutionArn\":{},\"SourceLocationArn\":{},\"DestinationLocationArn\":{},\"CloudWatchLogGroupArn\":{},\"SourceNetworkInterfaceArns\":{\"type\":\"list\",\"member\":{}},\"DestinationNetworkInterfaceArns\":{\"type\":\"list\",\"member\":{}},\"Options\":{\"shape\":\"S1o\"},\"Excludes\":{\"shape\":\"S22\"},\"Schedule\":{\"shape\":\"S26\"},\"ErrorCode\":{},\"ErrorDetail\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeTaskExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskExecutionArn\"],\"members\":{\"TaskExecutionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskExecutionArn\":{},\"Status\":{},\"Options\":{\"shape\":\"S1o\"},\"Excludes\":{\"shape\":\"S22\"},\"Includes\":{\"shape\":\"S22\"},\"StartTime\":{\"type\":\"timestamp\"},\"EstimatedFilesToTransfer\":{\"type\":\"long\"},\"EstimatedBytesToTransfer\":{\"type\":\"long\"},\"FilesTransferred\":{\"type\":\"long\"},\"BytesWritten\":{\"type\":\"long\"},\"BytesTransferred\":{\"type\":\"long\"},\"Result\":{\"type\":\"structure\",\"members\":{\"PrepareDuration\":{\"type\":\"long\"},\"PrepareStatus\":{},\"TotalDuration\":{\"type\":\"long\"},\"TransferDuration\":{\"type\":\"long\"},\"TransferStatus\":{},\"VerifyDuration\":{\"type\":\"long\"},\"VerifyStatus\":{},\"ErrorCode\":{},\"ErrorDetail\":{}}}}}},\"ListAgents\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Agents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AgentArn\":{},\"Name\":{},\"Status\":{}}}},\"NextToken\":{}}}},\"ListLocations\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\",\"Operator\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S3o\"},\"Operator\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Locations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LocationArn\":{},\"LocationUri\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"NextToken\":{}}}},\"ListTaskExecutions\":{\"input\":{\"type\":\"structure\",\"members\":{\"TaskArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TaskExecutionArn\":{},\"Status\":{}}}},\"NextToken\":{}}}},\"ListTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\",\"Operator\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S3o\"},\"Operator\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TaskArn\":{},\"Status\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"StartTaskExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskArn\"],\"members\":{\"TaskArn\":{},\"OverrideOptions\":{\"shape\":\"S1o\"},\"Includes\":{\"shape\":\"S22\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskExecutionArn\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Keys\"],\"members\":{\"ResourceArn\":{},\"Keys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAgent\":{\"input\":{\"type\":\"structure\",\"required\":[\"AgentArn\"],\"members\":{\"AgentArn\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLocationNfs\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{},\"Subdirectory\":{},\"OnPremConfig\":{\"shape\":\"Sy\"},\"MountOptions\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLocationObjectStorage\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{},\"ServerPort\":{\"type\":\"integer\"},\"ServerProtocol\":{},\"Subdirectory\":{},\"AccessKey\":{},\"SecretKey\":{\"shape\":\"S19\"},\"AgentArns\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLocationSmb\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocationArn\"],\"members\":{\"LocationArn\":{},\"Subdirectory\":{},\"User\":{},\"Domain\":{},\"Password\":{\"shape\":\"St\"},\"AgentArns\":{\"shape\":\"Sz\"},\"MountOptions\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskArn\"],\"members\":{\"TaskArn\":{},\"Options\":{\"shape\":\"S1o\"},\"Excludes\":{\"shape\":\"S22\"},\"Schedule\":{\"shape\":\"S26\"},\"Name\":{},\"CloudWatchLogGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateTaskExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskExecutionArn\",\"Options\"],\"members\":{\"TaskExecutionArn\":{},\"Options\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S7\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"S8\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}},\"Sb\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"list\",\"member\":{}},\"Sk\":{\"type\":\"structure\",\"required\":[\"SubnetArn\",\"SecurityGroupArns\"],\"members\":{\"SubnetArn\":{},\"SecurityGroupArns\":{\"shape\":\"Sl\"}}},\"Sl\":{\"type\":\"list\",\"member\":{}},\"St\":{\"type\":\"string\",\"sensitive\":true},\"Sy\":{\"type\":\"structure\",\"required\":[\"AgentArns\"],\"members\":{\"AgentArns\":{\"shape\":\"Sz\"}}},\"Sz\":{\"type\":\"list\",\"member\":{}},\"S10\":{\"type\":\"structure\",\"members\":{\"Version\":{}}},\"S19\":{\"type\":\"string\",\"sensitive\":true},\"S1e\":{\"type\":\"structure\",\"required\":[\"BucketAccessRoleArn\"],\"members\":{\"BucketAccessRoleArn\":{}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"Version\":{}}},\"S1o\":{\"type\":\"structure\",\"members\":{\"VerifyMode\":{},\"OverwriteMode\":{},\"Atime\":{},\"Mtime\":{},\"Uid\":{},\"Gid\":{},\"PreserveDeletedFiles\":{},\"PreserveDevices\":{},\"PosixPermissions\":{},\"BytesPerSecond\":{\"type\":\"long\"},\"TaskQueueing\":{},\"LogLevel\":{},\"TransferMode\":{}}},\"S22\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FilterType\":{},\"Value\":{}}}},\"S26\":{\"type\":\"structure\",\"required\":[\"ScheduleExpression\"],\"members\":{\"ScheduleExpression\":{}}},\"S3o\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 18448:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAgents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLocations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTaskExecutions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTasks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 97287:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-04-19\",\"endpointPrefix\":\"dax\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon DAX\",\"serviceFullName\":\"Amazon DynamoDB Accelerator (DAX)\",\"serviceId\":\"DAX\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AmazonDAXV3\",\"uid\":\"dax-2017-04-19\"},\"operations\":{\"CreateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterName\",\"NodeType\",\"ReplicationFactor\",\"IamRoleArn\"],\"members\":{\"ClusterName\":{},\"NodeType\":{},\"Description\":{},\"ReplicationFactor\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S4\"},\"SubnetGroupName\":{},\"SecurityGroupIds\":{\"shape\":\"S5\"},\"PreferredMaintenanceWindow\":{},\"NotificationTopicArn\":{},\"IamRoleArn\":{},\"ParameterGroupName\":{},\"Tags\":{\"shape\":\"S6\"},\"SSESpecification\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sb\"}}}},\"CreateParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\"],\"members\":{\"ParameterGroupName\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ParameterGroup\":{\"shape\":\"Sq\"}}}},\"CreateSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetGroupName\",\"SubnetIds\"],\"members\":{\"SubnetGroupName\":{},\"Description\":{},\"SubnetIds\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SubnetGroup\":{\"shape\":\"Su\"}}}},\"DecreaseReplicationFactor\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterName\",\"NewReplicationFactor\"],\"members\":{\"ClusterName\":{},\"NewReplicationFactor\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S4\"},\"NodeIdsToRemove\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sb\"}}}},\"DeleteCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterName\"],\"members\":{\"ClusterName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sb\"}}}},\"DeleteParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\"],\"members\":{\"ParameterGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeletionMessage\":{}}}},\"DeleteSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetGroupName\"],\"members\":{\"SubnetGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeletionMessage\":{}}}},\"DescribeClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterNames\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Clusters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}}}}},\"DescribeDefaultParameters\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Parameters\":{\"shape\":\"S1b\"}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceName\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceName\":{},\"SourceType\":{},\"Message\":{},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"ParameterGroupNames\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}},\"DescribeParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\"],\"members\":{\"ParameterGroupName\":{},\"Source\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Parameters\":{\"shape\":\"S1b\"}}}},\"DescribeSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubnetGroupNames\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"SubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}}}}},\"IncreaseReplicationFactor\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterName\",\"NewReplicationFactor\"],\"members\":{\"ClusterName\":{},\"NewReplicationFactor\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sb\"}}}},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6\"},\"NextToken\":{}}}},\"RebootNode\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterName\",\"NodeId\"],\"members\":{\"ClusterName\":{},\"NodeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sb\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6\"}}}},\"UpdateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterName\"],\"members\":{\"ClusterName\":{},\"Description\":{},\"PreferredMaintenanceWindow\":{},\"NotificationTopicArn\":{},\"NotificationTopicStatus\":{},\"ParameterGroupName\":{},\"SecurityGroupIds\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"Sb\"}}}},\"UpdateParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\",\"ParameterNameValues\"],\"members\":{\"ParameterGroupName\":{},\"ParameterNameValues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ParameterGroup\":{\"shape\":\"Sq\"}}}},\"UpdateSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetGroupName\"],\"members\":{\"SubnetGroupName\":{},\"Description\":{},\"SubnetIds\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SubnetGroup\":{\"shape\":\"Su\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{}},\"S5\":{\"type\":\"list\",\"member\":{}},\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"ClusterName\":{},\"Description\":{},\"ClusterArn\":{},\"TotalNodes\":{\"type\":\"integer\"},\"ActiveNodes\":{\"type\":\"integer\"},\"NodeType\":{},\"Status\":{},\"ClusterDiscoveryEndpoint\":{\"shape\":\"Sd\"},\"NodeIdsToRemove\":{\"shape\":\"Se\"},\"Nodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NodeId\":{},\"Endpoint\":{\"shape\":\"Sd\"},\"NodeCreateTime\":{\"type\":\"timestamp\"},\"AvailabilityZone\":{},\"NodeStatus\":{},\"ParameterGroupStatus\":{}}}},\"PreferredMaintenanceWindow\":{},\"NotificationConfiguration\":{\"type\":\"structure\",\"members\":{\"TopicArn\":{},\"TopicStatus\":{}}},\"SubnetGroup\":{},\"SecurityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SecurityGroupIdentifier\":{},\"Status\":{}}}},\"IamRoleArn\":{},\"ParameterGroup\":{\"type\":\"structure\",\"members\":{\"ParameterGroupName\":{},\"ParameterApplyStatus\":{},\"NodeIdsToReboot\":{\"shape\":\"Se\"}}},\"SSEDescription\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"Se\":{\"type\":\"list\",\"member\":{}},\"Sq\":{\"type\":\"structure\",\"members\":{\"ParameterGroupName\":{},\"Description\":{}}},\"Ss\":{\"type\":\"list\",\"member\":{}},\"Su\":{\"type\":\"structure\",\"members\":{\"SubnetGroupName\":{},\"Description\":{},\"VpcId\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{}}}}}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterType\":{},\"ParameterValue\":{},\"NodeTypeSpecificValues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NodeType\":{},\"Value\":{}}}},\"Description\":{},\"Source\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{},\"ChangeType\":{}}}}}}");

/***/ }),

/***/ 15791:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 38107:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-10-26\",\"endpointPrefix\":\"api.detective\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Detective\",\"serviceId\":\"Detective\",\"signatureVersion\":\"v4\",\"signingName\":\"detective\",\"uid\":\"detective-2018-10-26\"},\"operations\":{\"AcceptInvitation\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/invitation\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\"],\"members\":{\"GraphArn\":{}}}},\"CreateGraph\":{\"http\":{\"requestUri\":\"/graph\"},\"input\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GraphArn\":{}}}},\"CreateMembers\":{\"http\":{\"requestUri\":\"/graph/members\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\",\"Accounts\"],\"members\":{\"GraphArn\":{},\"Message\":{},\"DisableEmailNotification\":{\"type\":\"boolean\"},\"Accounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"EmailAddress\"],\"members\":{\"AccountId\":{},\"EmailAddress\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Members\":{\"shape\":\"Sg\"},\"UnprocessedAccounts\":{\"shape\":\"Sm\"}}}},\"DeleteGraph\":{\"http\":{\"requestUri\":\"/graph/removal\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\"],\"members\":{\"GraphArn\":{}}}},\"DeleteMembers\":{\"http\":{\"requestUri\":\"/graph/members/removal\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\",\"AccountIds\"],\"members\":{\"GraphArn\":{},\"AccountIds\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountIds\":{\"shape\":\"Sr\"},\"UnprocessedAccounts\":{\"shape\":\"Sm\"}}}},\"DisassociateMembership\":{\"http\":{\"requestUri\":\"/membership/removal\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\"],\"members\":{\"GraphArn\":{}}}},\"GetMembers\":{\"http\":{\"requestUri\":\"/graph/members/get\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\",\"AccountIds\"],\"members\":{\"GraphArn\":{},\"AccountIds\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MemberDetails\":{\"shape\":\"Sg\"},\"UnprocessedAccounts\":{\"shape\":\"Sm\"}}}},\"ListGraphs\":{\"http\":{\"requestUri\":\"/graphs/list\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GraphList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedTime\":{\"shape\":\"Sk\"}}}},\"NextToken\":{}}}},\"ListInvitations\":{\"http\":{\"requestUri\":\"/invitations/list\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invitations\":{\"shape\":\"Sg\"},\"NextToken\":{}}}},\"ListMembers\":{\"http\":{\"requestUri\":\"/graph/members/list\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\"],\"members\":{\"GraphArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MemberDetails\":{\"shape\":\"Sg\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4\"}}}},\"RejectInvitation\":{\"http\":{\"requestUri\":\"/invitation/removal\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\"],\"members\":{\"GraphArn\":{}}}},\"StartMonitoringMember\":{\"http\":{\"requestUri\":\"/graph/member/monitoringstate\"},\"input\":{\"type\":\"structure\",\"required\":[\"GraphArn\",\"AccountId\"],\"members\":{\"GraphArn\":{},\"AccountId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"EmailAddress\":{},\"GraphArn\":{},\"MasterId\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use AdministratorId instead.\"},\"AdministratorId\":{},\"Status\":{},\"DisabledReason\":{},\"InvitedTime\":{\"shape\":\"Sk\"},\"UpdatedTime\":{\"shape\":\"Sk\"},\"PercentOfGraphUtilization\":{\"type\":\"double\"},\"PercentOfGraphUtilizationUpdatedTime\":{\"shape\":\"Sk\"}}}},\"Sk\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"Reason\":{}}}},\"Sr\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 26554:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListGraphs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListInvitations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMembers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 87206:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-06-23\",\"endpointPrefix\":\"devicefarm\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Device Farm\",\"serviceId\":\"Device Farm\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"DeviceFarm_20150623\",\"uid\":\"devicefarm-2015-06-23\"},\"operations\":{\"CreateDevicePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\",\"name\",\"rules\"],\"members\":{\"projectArn\":{},\"name\":{},\"description\":{},\"rules\":{\"shape\":\"S5\"},\"maxDevices\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"devicePool\":{\"shape\":\"Sc\"}}}},\"CreateInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"packageCleanup\":{\"type\":\"boolean\"},\"excludeAppPackagesFromCleanup\":{\"shape\":\"Sg\"},\"rebootAfterUse\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceProfile\":{\"shape\":\"Si\"}}}},\"CreateNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\",\"name\"],\"members\":{\"projectArn\":{},\"name\":{},\"description\":{},\"type\":{},\"uplinkBandwidthBits\":{\"type\":\"long\"},\"downlinkBandwidthBits\":{\"type\":\"long\"},\"uplinkDelayMs\":{\"type\":\"long\"},\"downlinkDelayMs\":{\"type\":\"long\"},\"uplinkJitterMs\":{\"type\":\"long\"},\"downlinkJitterMs\":{\"type\":\"long\"},\"uplinkLossPercent\":{\"type\":\"integer\"},\"downlinkLossPercent\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"networkProfile\":{\"shape\":\"So\"}}}},\"CreateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"defaultJobTimeoutMinutes\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"project\":{\"shape\":\"Ss\"}}}},\"CreateRemoteAccessSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\",\"deviceArn\"],\"members\":{\"projectArn\":{},\"deviceArn\":{},\"instanceArn\":{},\"sshPublicKey\":{},\"remoteDebugEnabled\":{\"type\":\"boolean\"},\"remoteRecordEnabled\":{\"type\":\"boolean\"},\"remoteRecordAppArn\":{},\"name\":{},\"clientId\":{},\"configuration\":{\"type\":\"structure\",\"members\":{\"billingMethod\":{},\"vpceConfigurationArns\":{\"shape\":\"Sz\"}}},\"interactionMode\":{},\"skipAppResign\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"remoteAccessSession\":{\"shape\":\"S12\"}}}},\"CreateTestGridProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"testGridProject\":{\"shape\":\"S1n\"}}}},\"CreateTestGridUrl\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\",\"expiresInSeconds\"],\"members\":{\"projectArn\":{},\"expiresInSeconds\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"url\":{},\"expires\":{\"type\":\"timestamp\"}}}},\"CreateUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\",\"name\",\"type\"],\"members\":{\"projectArn\":{},\"name\":{},\"type\":{},\"contentType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"upload\":{\"shape\":\"S1w\"}}}},\"CreateVPCEConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"vpceConfigurationName\",\"vpceServiceName\",\"serviceDnsName\"],\"members\":{\"vpceConfigurationName\":{},\"vpceServiceName\":{},\"serviceDnsName\":{},\"vpceConfigurationDescription\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"vpceConfiguration\":{\"shape\":\"S27\"}}}},\"DeleteDevicePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRemoteAccessSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTestGridProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\"],\"members\":{\"projectArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteVPCEConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAccountSettings\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"accountSettings\":{\"type\":\"structure\",\"members\":{\"awsAccountNumber\":{},\"unmeteredDevices\":{\"shape\":\"S2u\"},\"unmeteredRemoteAccessDevices\":{\"shape\":\"S2u\"},\"maxJobTimeoutMinutes\":{\"type\":\"integer\"},\"trialMinutes\":{\"type\":\"structure\",\"members\":{\"total\":{\"type\":\"double\"},\"remaining\":{\"type\":\"double\"}}},\"maxSlots\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"defaultJobTimeoutMinutes\":{\"type\":\"integer\"},\"skipAppResign\":{\"type\":\"boolean\"}}}}}},\"GetDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"device\":{\"shape\":\"S15\"}}}},\"GetDeviceInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deviceInstance\":{\"shape\":\"S1c\"}}}},\"GetDevicePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"devicePool\":{\"shape\":\"Sc\"}}}},\"GetDevicePoolCompatibility\":{\"input\":{\"type\":\"structure\",\"required\":[\"devicePoolArn\"],\"members\":{\"devicePoolArn\":{},\"appArn\":{},\"testType\":{},\"test\":{\"shape\":\"S35\"},\"configuration\":{\"shape\":\"S38\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"compatibleDevices\":{\"shape\":\"S3g\"},\"incompatibleDevices\":{\"shape\":\"S3g\"}}}},\"GetInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceProfile\":{\"shape\":\"Si\"}}}},\"GetJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"job\":{\"shape\":\"S3o\"}}}},\"GetNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"networkProfile\":{\"shape\":\"So\"}}}},\"GetOfferingStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"current\":{\"shape\":\"S3w\"},\"nextPeriod\":{\"shape\":\"S3w\"},\"nextToken\":{}}}},\"GetProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"project\":{\"shape\":\"Ss\"}}}},\"GetRemoteAccessSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"remoteAccessSession\":{\"shape\":\"S12\"}}}},\"GetRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"run\":{\"shape\":\"S4d\"}}}},\"GetSuite\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"suite\":{\"shape\":\"S4m\"}}}},\"GetTest\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"test\":{\"shape\":\"S4p\"}}}},\"GetTestGridProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\"],\"members\":{\"projectArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"testGridProject\":{\"shape\":\"S1n\"}}}},\"GetTestGridSession\":{\"input\":{\"type\":\"structure\",\"members\":{\"projectArn\":{},\"sessionId\":{},\"sessionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"testGridSession\":{\"shape\":\"S4v\"}}}},\"GetUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"upload\":{\"shape\":\"S1w\"}}}},\"GetVPCEConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"vpceConfiguration\":{\"shape\":\"S27\"}}}},\"InstallToRemoteAccessSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"remoteAccessSessionArn\",\"appArn\"],\"members\":{\"remoteAccessSessionArn\":{},\"appArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"appUpload\":{\"shape\":\"S1w\"}}}},\"ListArtifacts\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\",\"type\"],\"members\":{\"arn\":{},\"type\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"artifacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"extension\":{},\"url\":{}}}},\"nextToken\":{}}}},\"ListDeviceInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deviceInstances\":{\"shape\":\"S1b\"},\"nextToken\":{}}}},\"ListDevicePools\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"type\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"devicePools\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"nextToken\":{}}}},\"ListDevices\":{\"input\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"nextToken\":{},\"filters\":{\"shape\":\"S4g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"devices\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}},\"nextToken\":{}}}},\"ListInstanceProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceProfiles\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"nextToken\":{}}}},\"ListJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"shape\":\"S3o\"}},\"nextToken\":{}}}},\"ListNetworkProfiles\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"type\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"networkProfiles\":{\"type\":\"list\",\"member\":{\"shape\":\"So\"}},\"nextToken\":{}}}},\"ListOfferingPromotions\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"offeringPromotions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{}}}},\"nextToken\":{}}}},\"ListOfferingTransactions\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"offeringTransactions\":{\"type\":\"list\",\"member\":{\"shape\":\"S5y\"}},\"nextToken\":{}}}},\"ListOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"offerings\":{\"type\":\"list\",\"member\":{\"shape\":\"S40\"}},\"nextToken\":{}}}},\"ListProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"projects\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}},\"nextToken\":{}}}},\"ListRemoteAccessSessions\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"remoteAccessSessions\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"nextToken\":{}}}},\"ListRuns\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"runs\":{\"type\":\"list\",\"member\":{\"shape\":\"S4d\"}},\"nextToken\":{}}}},\"ListSamples\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"samples\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"type\":{},\"url\":{}}}},\"nextToken\":{}}}},\"ListSuites\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"suites\":{\"type\":\"list\",\"member\":{\"shape\":\"S4m\"}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6m\"}}}},\"ListTestGridProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"maxResult\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"testGridProjects\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\"}},\"nextToken\":{}}}},\"ListTestGridSessionActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"sessionArn\"],\"members\":{\"sessionArn\":{},\"maxResult\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"actions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"action\":{},\"started\":{\"type\":\"timestamp\"},\"duration\":{\"type\":\"long\"},\"statusCode\":{},\"requestMethod\":{}}}},\"nextToken\":{}}}},\"ListTestGridSessionArtifacts\":{\"input\":{\"type\":\"structure\",\"required\":[\"sessionArn\"],\"members\":{\"sessionArn\":{},\"type\":{},\"maxResult\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"artifacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"filename\":{},\"type\":{},\"url\":{}}}},\"nextToken\":{}}}},\"ListTestGridSessions\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\"],\"members\":{\"projectArn\":{},\"status\":{},\"creationTimeAfter\":{\"type\":\"timestamp\"},\"creationTimeBefore\":{\"type\":\"timestamp\"},\"endTimeAfter\":{\"type\":\"timestamp\"},\"endTimeBefore\":{\"type\":\"timestamp\"},\"maxResult\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"testGridSessions\":{\"type\":\"list\",\"member\":{\"shape\":\"S4v\"}},\"nextToken\":{}}}},\"ListTests\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tests\":{\"type\":\"list\",\"member\":{\"shape\":\"S4p\"}},\"nextToken\":{}}}},\"ListUniqueProblems\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"uniqueProblems\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"message\":{},\"problems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"run\":{\"shape\":\"S7h\"},\"job\":{\"shape\":\"S7h\"},\"suite\":{\"shape\":\"S7h\"},\"test\":{\"shape\":\"S7h\"},\"device\":{\"shape\":\"S15\"},\"result\":{},\"message\":{}}}}}}}},\"nextToken\":{}}}},\"ListUploads\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"type\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"uploads\":{\"type\":\"list\",\"member\":{\"shape\":\"S1w\"}},\"nextToken\":{}}}},\"ListVPCEConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"vpceConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S27\"}},\"nextToken\":{}}}},\"PurchaseOffering\":{\"input\":{\"type\":\"structure\",\"members\":{\"offeringId\":{},\"quantity\":{\"type\":\"integer\"},\"offeringPromotionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"offeringTransaction\":{\"shape\":\"S5y\"}}}},\"RenewOffering\":{\"input\":{\"type\":\"structure\",\"members\":{\"offeringId\":{},\"quantity\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"offeringTransaction\":{\"shape\":\"S5y\"}}}},\"ScheduleRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\",\"test\"],\"members\":{\"projectArn\":{},\"appArn\":{},\"devicePoolArn\":{},\"deviceSelectionConfiguration\":{\"type\":\"structure\",\"required\":[\"filters\",\"maxDevices\"],\"members\":{\"filters\":{\"shape\":\"S4g\"},\"maxDevices\":{\"type\":\"integer\"}}},\"name\":{},\"test\":{\"shape\":\"S35\"},\"configuration\":{\"shape\":\"S38\"},\"executionConfiguration\":{\"type\":\"structure\",\"members\":{\"jobTimeoutMinutes\":{\"type\":\"integer\"},\"accountsCleanup\":{\"type\":\"boolean\"},\"appPackagesCleanup\":{\"type\":\"boolean\"},\"videoCapture\":{\"type\":\"boolean\"},\"skipAppResign\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"run\":{\"shape\":\"S4d\"}}}},\"StopJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"job\":{\"shape\":\"S3o\"}}}},\"StopRemoteAccessSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"remoteAccessSession\":{\"shape\":\"S12\"}}}},\"StopRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"run\":{\"shape\":\"S4d\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDeviceInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"profileArn\":{},\"labels\":{\"shape\":\"S1d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deviceInstance\":{\"shape\":\"S1c\"}}}},\"UpdateDevicePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"rules\":{\"shape\":\"S5\"},\"maxDevices\":{\"type\":\"integer\"},\"clearMaxDevices\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"devicePool\":{\"shape\":\"Sc\"}}}},\"UpdateInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"packageCleanup\":{\"type\":\"boolean\"},\"excludeAppPackagesFromCleanup\":{\"shape\":\"Sg\"},\"rebootAfterUse\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceProfile\":{\"shape\":\"Si\"}}}},\"UpdateNetworkProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"type\":{},\"uplinkBandwidthBits\":{\"type\":\"long\"},\"downlinkBandwidthBits\":{\"type\":\"long\"},\"uplinkDelayMs\":{\"type\":\"long\"},\"downlinkDelayMs\":{\"type\":\"long\"},\"uplinkJitterMs\":{\"type\":\"long\"},\"downlinkJitterMs\":{\"type\":\"long\"},\"uplinkLossPercent\":{\"type\":\"integer\"},\"downlinkLossPercent\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"networkProfile\":{\"shape\":\"So\"}}}},\"UpdateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"name\":{},\"defaultJobTimeoutMinutes\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"project\":{\"shape\":\"Ss\"}}}},\"UpdateTestGridProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"projectArn\"],\"members\":{\"projectArn\":{},\"name\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"testGridProject\":{\"shape\":\"S1n\"}}}},\"UpdateUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"name\":{},\"contentType\":{},\"editContent\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"upload\":{\"shape\":\"S1w\"}}}},\"UpdateVPCEConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"vpceConfigurationName\":{},\"vpceServiceName\":{},\"serviceDnsName\":{},\"vpceConfigurationDescription\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"vpceConfiguration\":{\"shape\":\"S27\"}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"attribute\":{},\"operator\":{},\"value\":{}}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"type\":{},\"rules\":{\"shape\":\"S5\"},\"maxDevices\":{\"type\":\"integer\"}}},\"Sg\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"packageCleanup\":{\"type\":\"boolean\"},\"excludeAppPackagesFromCleanup\":{\"shape\":\"Sg\"},\"rebootAfterUse\":{\"type\":\"boolean\"},\"name\":{},\"description\":{}}},\"So\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"type\":{},\"uplinkBandwidthBits\":{\"type\":\"long\"},\"downlinkBandwidthBits\":{\"type\":\"long\"},\"uplinkDelayMs\":{\"type\":\"long\"},\"downlinkDelayMs\":{\"type\":\"long\"},\"uplinkJitterMs\":{\"type\":\"long\"},\"downlinkJitterMs\":{\"type\":\"long\"},\"uplinkLossPercent\":{\"type\":\"integer\"},\"downlinkLossPercent\":{\"type\":\"integer\"}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"defaultJobTimeoutMinutes\":{\"type\":\"integer\"},\"created\":{\"type\":\"timestamp\"}}},\"Sz\":{\"type\":\"list\",\"member\":{}},\"S12\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"created\":{\"type\":\"timestamp\"},\"status\":{},\"result\":{},\"message\":{},\"started\":{\"type\":\"timestamp\"},\"stopped\":{\"type\":\"timestamp\"},\"device\":{\"shape\":\"S15\"},\"instanceArn\":{},\"remoteDebugEnabled\":{\"type\":\"boolean\"},\"remoteRecordEnabled\":{\"type\":\"boolean\"},\"remoteRecordAppArn\":{},\"hostAddress\":{},\"clientId\":{},\"billingMethod\":{},\"deviceMinutes\":{\"shape\":\"S1h\"},\"endpoint\":{},\"deviceUdid\":{},\"interactionMode\":{},\"skipAppResign\":{\"type\":\"boolean\"}}},\"S15\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"manufacturer\":{},\"model\":{},\"modelId\":{},\"formFactor\":{},\"platform\":{},\"os\":{},\"cpu\":{\"type\":\"structure\",\"members\":{\"frequency\":{},\"architecture\":{},\"clock\":{\"type\":\"double\"}}},\"resolution\":{\"type\":\"structure\",\"members\":{\"width\":{\"type\":\"integer\"},\"height\":{\"type\":\"integer\"}}},\"heapSize\":{\"type\":\"long\"},\"memory\":{\"type\":\"long\"},\"image\":{},\"carrier\":{},\"radio\":{},\"remoteAccessEnabled\":{\"type\":\"boolean\"},\"remoteDebugEnabled\":{\"type\":\"boolean\"},\"fleetType\":{},\"fleetName\":{},\"instances\":{\"shape\":\"S1b\"},\"availability\":{}}},\"S1b\":{\"type\":\"list\",\"member\":{\"shape\":\"S1c\"}},\"S1c\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"deviceArn\":{},\"labels\":{\"shape\":\"S1d\"},\"status\":{},\"udid\":{},\"instanceProfile\":{\"shape\":\"Si\"}}},\"S1d\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"structure\",\"members\":{\"total\":{\"type\":\"double\"},\"metered\":{\"type\":\"double\"},\"unmetered\":{\"type\":\"double\"}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"created\":{\"type\":\"timestamp\"}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"created\":{\"type\":\"timestamp\"},\"type\":{},\"status\":{},\"url\":{},\"metadata\":{},\"contentType\":{},\"message\":{},\"category\":{}}},\"S27\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"vpceConfigurationName\":{},\"vpceServiceName\":{},\"serviceDnsName\":{},\"vpceConfigurationDescription\":{}}},\"S2u\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"S35\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"testPackageArn\":{},\"testSpecArn\":{},\"filter\":{},\"parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"S38\":{\"type\":\"structure\",\"members\":{\"extraDataPackageArn\":{},\"networkProfileArn\":{},\"locale\":{},\"location\":{\"shape\":\"S39\"},\"vpceConfigurationArns\":{\"shape\":\"Sz\"},\"customerArtifactPaths\":{\"shape\":\"S3a\"},\"radios\":{\"shape\":\"S3e\"},\"auxiliaryApps\":{\"shape\":\"Sz\"},\"billingMethod\":{}}},\"S39\":{\"type\":\"structure\",\"required\":[\"latitude\",\"longitude\"],\"members\":{\"latitude\":{\"type\":\"double\"},\"longitude\":{\"type\":\"double\"}}},\"S3a\":{\"type\":\"structure\",\"members\":{\"iosPaths\":{\"type\":\"list\",\"member\":{}},\"androidPaths\":{\"type\":\"list\",\"member\":{}},\"deviceHostPaths\":{\"type\":\"list\",\"member\":{}}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"wifi\":{\"type\":\"boolean\"},\"bluetooth\":{\"type\":\"boolean\"},\"nfc\":{\"type\":\"boolean\"},\"gps\":{\"type\":\"boolean\"}}},\"S3g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"device\":{\"shape\":\"S15\"},\"compatible\":{\"type\":\"boolean\"},\"incompatibilityMessages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"message\":{},\"type\":{}}}}}}},\"S3o\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"created\":{\"type\":\"timestamp\"},\"status\":{},\"result\":{},\"started\":{\"type\":\"timestamp\"},\"stopped\":{\"type\":\"timestamp\"},\"counters\":{\"shape\":\"S3p\"},\"message\":{},\"device\":{\"shape\":\"S15\"},\"instanceArn\":{},\"deviceMinutes\":{\"shape\":\"S1h\"},\"videoEndpoint\":{},\"videoCapture\":{\"type\":\"boolean\"}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"total\":{\"type\":\"integer\"},\"passed\":{\"type\":\"integer\"},\"failed\":{\"type\":\"integer\"},\"warned\":{\"type\":\"integer\"},\"errored\":{\"type\":\"integer\"},\"stopped\":{\"type\":\"integer\"},\"skipped\":{\"type\":\"integer\"}}},\"S3w\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S3y\"}},\"S3y\":{\"type\":\"structure\",\"members\":{\"type\":{},\"offering\":{\"shape\":\"S40\"},\"quantity\":{\"type\":\"integer\"},\"effectiveOn\":{\"type\":\"timestamp\"}}},\"S40\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"type\":{},\"platform\":{},\"recurringCharges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"cost\":{\"shape\":\"S44\"},\"frequency\":{}}}}}},\"S44\":{\"type\":\"structure\",\"members\":{\"amount\":{\"type\":\"double\"},\"currencyCode\":{}}},\"S4d\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"platform\":{},\"created\":{\"type\":\"timestamp\"},\"status\":{},\"result\":{},\"started\":{\"type\":\"timestamp\"},\"stopped\":{\"type\":\"timestamp\"},\"counters\":{\"shape\":\"S3p\"},\"message\":{},\"totalJobs\":{\"type\":\"integer\"},\"completedJobs\":{\"type\":\"integer\"},\"billingMethod\":{},\"deviceMinutes\":{\"shape\":\"S1h\"},\"networkProfile\":{\"shape\":\"So\"},\"parsingResultUrl\":{},\"resultCode\":{},\"seed\":{\"type\":\"integer\"},\"appUpload\":{},\"eventCount\":{\"type\":\"integer\"},\"jobTimeoutMinutes\":{\"type\":\"integer\"},\"devicePoolArn\":{},\"locale\":{},\"radios\":{\"shape\":\"S3e\"},\"location\":{\"shape\":\"S39\"},\"customerArtifactPaths\":{\"shape\":\"S3a\"},\"webUrl\":{},\"skipAppResign\":{\"type\":\"boolean\"},\"testSpecArn\":{},\"deviceSelectionResult\":{\"type\":\"structure\",\"members\":{\"filters\":{\"shape\":\"S4g\"},\"matchedDevicesCount\":{\"type\":\"integer\"},\"maxDevices\":{\"type\":\"integer\"}}}}},\"S4g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"attribute\":{},\"operator\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"S4m\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"created\":{\"type\":\"timestamp\"},\"status\":{},\"result\":{},\"started\":{\"type\":\"timestamp\"},\"stopped\":{\"type\":\"timestamp\"},\"counters\":{\"shape\":\"S3p\"},\"message\":{},\"deviceMinutes\":{\"shape\":\"S1h\"}}},\"S4p\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"created\":{\"type\":\"timestamp\"},\"status\":{},\"result\":{},\"started\":{\"type\":\"timestamp\"},\"stopped\":{\"type\":\"timestamp\"},\"counters\":{\"shape\":\"S3p\"},\"message\":{},\"deviceMinutes\":{\"shape\":\"S1h\"}}},\"S4v\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"created\":{\"type\":\"timestamp\"},\"ended\":{\"type\":\"timestamp\"},\"billingMinutes\":{\"type\":\"double\"},\"seleniumProperties\":{}}},\"S5y\":{\"type\":\"structure\",\"members\":{\"offeringStatus\":{\"shape\":\"S3y\"},\"transactionId\":{},\"offeringPromotionId\":{},\"createdOn\":{\"type\":\"timestamp\"},\"cost\":{\"shape\":\"S44\"}}},\"S6m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S7h\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{}}}}}");

/***/ }),

/***/ 85524:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetOfferingStatus\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":[\"current\",\"nextPeriod\"]},\"ListArtifacts\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"artifacts\"},\"ListDevicePools\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"devicePools\"},\"ListDevices\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"devices\"},\"ListJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"jobs\"},\"ListOfferingTransactions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"offeringTransactions\"},\"ListOfferings\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"offerings\"},\"ListProjects\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"projects\"},\"ListRuns\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"runs\"},\"ListSamples\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"samples\"},\"ListSuites\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"suites\"},\"ListTestGridProjects\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResult\",\"output_token\":\"nextToken\"},\"ListTestGridSessionActions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResult\",\"output_token\":\"nextToken\"},\"ListTestGridSessionArtifacts\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResult\",\"output_token\":\"nextToken\"},\"ListTestGridSessions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResult\",\"output_token\":\"nextToken\"},\"ListTests\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"tests\"},\"ListUniqueProblems\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"uniqueProblems\"},\"ListUploads\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"uploads\"}}}");

/***/ }),

/***/ 82176:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-12-01\",\"endpointPrefix\":\"devops-guru\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon DevOps Guru\",\"serviceId\":\"DevOps Guru\",\"signatureVersion\":\"v4\",\"signingName\":\"devops-guru\",\"uid\":\"devops-guru-2020-12-01\"},\"operations\":{\"AddNotificationChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Config\"],\"members\":{\"Config\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}}},\"DescribeAccountHealth\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/health\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"OpenReactiveInsights\",\"OpenProactiveInsights\",\"MetricsAnalyzed\",\"ResourceHours\"],\"members\":{\"OpenReactiveInsights\":{\"type\":\"integer\"},\"OpenProactiveInsights\":{\"type\":\"integer\"},\"MetricsAnalyzed\":{\"type\":\"integer\"},\"ResourceHours\":{\"type\":\"long\"}}}},\"DescribeAccountOverview\":{\"http\":{\"requestUri\":\"/accounts/overview\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FromTime\"],\"members\":{\"FromTime\":{\"type\":\"timestamp\"},\"ToTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ReactiveInsights\",\"ProactiveInsights\",\"MeanTimeToRecoverInMilliseconds\"],\"members\":{\"ReactiveInsights\":{\"type\":\"integer\"},\"ProactiveInsights\":{\"type\":\"integer\"},\"MeanTimeToRecoverInMilliseconds\":{\"type\":\"long\"}}}},\"DescribeAnomaly\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/anomalies/{Id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProactiveAnomaly\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Severity\":{},\"Status\":{},\"UpdateTime\":{\"type\":\"timestamp\"},\"AnomalyTimeRange\":{\"shape\":\"Sp\"},\"PredictionTimeRange\":{\"shape\":\"Sq\"},\"SourceDetails\":{\"shape\":\"Sr\"},\"AssociatedInsightId\":{},\"ResourceCollection\":{\"shape\":\"S14\"},\"Limit\":{\"type\":\"double\"}}},\"ReactiveAnomaly\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Severity\":{},\"Status\":{},\"AnomalyTimeRange\":{\"shape\":\"Sp\"},\"SourceDetails\":{\"shape\":\"Sr\"},\"AssociatedInsightId\":{},\"ResourceCollection\":{\"shape\":\"S14\"}}}}}},\"DescribeFeedback\":{\"http\":{\"requestUri\":\"/feedback\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InsightId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InsightFeedback\":{\"shape\":\"S1c\"}}}},\"DescribeInsight\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/insights/{Id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProactiveInsight\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Severity\":{},\"Status\":{},\"InsightTimeRange\":{\"shape\":\"S1k\"},\"PredictionTimeRange\":{\"shape\":\"Sq\"},\"ResourceCollection\":{\"shape\":\"S14\"},\"SsmOpsItemId\":{}}},\"ReactiveInsight\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Severity\":{},\"Status\":{},\"InsightTimeRange\":{\"shape\":\"S1k\"},\"ResourceCollection\":{\"shape\":\"S14\"},\"SsmOpsItemId\":{}}}}}},\"DescribeResourceCollectionHealth\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/health/resource-collection/{ResourceCollectionType}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceCollectionType\"],\"members\":{\"ResourceCollectionType\":{\"location\":\"uri\",\"locationName\":\"ResourceCollectionType\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CloudFormation\"],\"members\":{\"CloudFormation\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StackName\":{},\"Insight\":{\"type\":\"structure\",\"members\":{\"OpenProactiveInsights\":{\"type\":\"integer\"},\"OpenReactiveInsights\":{\"type\":\"integer\"},\"MeanTimeToRecoverInMilliseconds\":{\"type\":\"long\"}}}}}},\"NextToken\":{}}}},\"DescribeServiceIntegration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/service-integrations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceIntegration\":{\"type\":\"structure\",\"members\":{\"OpsCenter\":{\"type\":\"structure\",\"members\":{\"OptInStatus\":{}}}}}}}},\"GetResourceCollection\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/resource-collections/{ResourceCollectionType}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceCollectionType\"],\"members\":{\"ResourceCollectionType\":{\"location\":\"uri\",\"locationName\":\"ResourceCollectionType\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceCollection\":{\"type\":\"structure\",\"members\":{\"CloudFormation\":{\"type\":\"structure\",\"members\":{\"StackNames\":{\"shape\":\"S16\"}}}}},\"NextToken\":{}}}},\"ListAnomaliesForInsight\":{\"http\":{\"requestUri\":\"/anomalies/insight/{InsightId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"InsightId\"],\"members\":{\"InsightId\":{\"location\":\"uri\",\"locationName\":\"InsightId\"},\"StartTimeRange\":{\"shape\":\"S24\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProactiveAnomalies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Severity\":{},\"Status\":{},\"UpdateTime\":{\"type\":\"timestamp\"},\"AnomalyTimeRange\":{\"shape\":\"Sp\"},\"PredictionTimeRange\":{\"shape\":\"Sq\"},\"SourceDetails\":{\"shape\":\"Sr\"},\"AssociatedInsightId\":{},\"ResourceCollection\":{\"shape\":\"S14\"},\"Limit\":{\"type\":\"double\"}}}},\"ReactiveAnomalies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Severity\":{},\"Status\":{},\"AnomalyTimeRange\":{\"shape\":\"Sp\"},\"SourceDetails\":{\"shape\":\"Sr\"},\"AssociatedInsightId\":{},\"ResourceCollection\":{\"shape\":\"S14\"}}}},\"NextToken\":{}}}},\"ListEvents\":{\"http\":{\"requestUri\":\"/events\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Filters\"],\"members\":{\"Filters\":{\"type\":\"structure\",\"members\":{\"InsightId\":{},\"EventTimeRange\":{\"type\":\"structure\",\"required\":[\"FromTime\",\"ToTime\"],\"members\":{\"FromTime\":{\"type\":\"timestamp\"},\"ToTime\":{\"type\":\"timestamp\"}}},\"EventClass\":{},\"EventSource\":{},\"DataSource\":{},\"ResourceCollection\":{\"shape\":\"S14\"}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Events\"],\"members\":{\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceCollection\":{\"shape\":\"S14\"},\"Id\":{},\"Time\":{\"type\":\"timestamp\"},\"EventSource\":{},\"Name\":{},\"DataSource\":{},\"EventClass\":{},\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Name\":{},\"Arn\":{}}}}}}},\"NextToken\":{}}}},\"ListInsights\":{\"http\":{\"requestUri\":\"/insights\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"StatusFilter\"],\"members\":{\"StatusFilter\":{\"type\":\"structure\",\"members\":{\"Ongoing\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}},\"Closed\":{\"type\":\"structure\",\"required\":[\"Type\",\"EndTimeRange\"],\"members\":{\"Type\":{},\"EndTimeRange\":{\"type\":\"structure\",\"members\":{\"FromTime\":{\"type\":\"timestamp\"},\"ToTime\":{\"type\":\"timestamp\"}}}}},\"Any\":{\"type\":\"structure\",\"required\":[\"Type\",\"StartTimeRange\"],\"members\":{\"Type\":{},\"StartTimeRange\":{\"shape\":\"S24\"}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProactiveInsights\":{\"shape\":\"S31\"},\"ReactiveInsights\":{\"shape\":\"S33\"},\"NextToken\":{}}}},\"ListNotificationChannels\":{\"http\":{\"requestUri\":\"/channels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Config\":{\"shape\":\"S2\"}}}},\"NextToken\":{}}}},\"ListRecommendations\":{\"http\":{\"requestUri\":\"/recommendations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"InsightId\"],\"members\":{\"InsightId\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Recommendations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Link\":{},\"Name\":{},\"Reason\":{},\"RelatedEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{}}}}}}},\"RelatedAnomalies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{}}}},\"SourceDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CloudWatchMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricName\":{},\"Namespace\":{}}}}}}}}}}}}},\"NextToken\":{}}}},\"PutFeedback\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/feedback\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InsightFeedback\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveNotificationChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{Id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SearchInsights\":{\"http\":{\"requestUri\":\"/insights/search\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"StartTimeRange\",\"Type\"],\"members\":{\"StartTimeRange\":{\"shape\":\"S24\"},\"Filters\":{\"type\":\"structure\",\"members\":{\"Severities\":{\"type\":\"list\",\"member\":{}},\"Statuses\":{\"type\":\"list\",\"member\":{}},\"ResourceCollection\":{\"shape\":\"S14\"}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProactiveInsights\":{\"shape\":\"S31\"},\"ReactiveInsights\":{\"shape\":\"S33\"},\"NextToken\":{}}}},\"UpdateResourceCollection\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/resource-collections\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Action\",\"ResourceCollection\"],\"members\":{\"Action\":{},\"ResourceCollection\":{\"type\":\"structure\",\"members\":{\"CloudFormation\":{\"type\":\"structure\",\"members\":{\"StackNames\":{\"type\":\"list\",\"member\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateServiceIntegration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/service-integrations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ServiceIntegration\"],\"members\":{\"ServiceIntegration\":{\"type\":\"structure\",\"members\":{\"OpsCenter\":{\"type\":\"structure\",\"members\":{\"OptInStatus\":{}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"required\":[\"Sns\"],\"members\":{\"Sns\":{\"type\":\"structure\",\"members\":{\"TopicArn\":{}}}}},\"Sp\":{\"type\":\"structure\",\"required\":[\"StartTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"StartTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"CloudWatchMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricName\":{},\"Namespace\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"Stat\":{},\"Unit\":{},\"Period\":{\"type\":\"integer\"}}}}}},\"S14\":{\"type\":\"structure\",\"members\":{\"CloudFormation\":{\"type\":\"structure\",\"members\":{\"StackNames\":{\"shape\":\"S16\"}}}}},\"S16\":{\"type\":\"list\",\"member\":{}},\"S1c\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Feedback\":{}}},\"S1k\":{\"type\":\"structure\",\"required\":[\"StartTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"S24\":{\"type\":\"structure\",\"members\":{\"FromTime\":{\"type\":\"timestamp\"},\"ToTime\":{\"type\":\"timestamp\"}}},\"S31\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Severity\":{},\"Status\":{},\"InsightTimeRange\":{\"shape\":\"S1k\"},\"PredictionTimeRange\":{\"shape\":\"Sq\"},\"ResourceCollection\":{\"shape\":\"S14\"}}}},\"S33\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Severity\":{},\"Status\":{},\"InsightTimeRange\":{\"shape\":\"S1k\"},\"ResourceCollection\":{\"shape\":\"S14\"}}}}}}");

/***/ }),

/***/ 91556:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeResourceCollectionHealth\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":[\"CloudFormation\"]},\"GetResourceCollection\":{\"input_token\":\"NextToken\",\"non_aggregate_keys\":[\"ResourceCollection\"],\"output_token\":\"NextToken\",\"result_key\":[\"ResourceCollection.CloudFormation.StackNames\"]},\"ListAnomaliesForInsight\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":[\"ReactiveAnomalies\",\"ProactiveAnomalies\"]},\"ListEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Events\"},\"ListInsights\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":[\"ProactiveInsights\",\"ReactiveInsights\"]},\"ListNotificationChannels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Channels\"},\"ListRecommendations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Recommendations\"},\"SearchInsights\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":[\"ProactiveInsights\",\"ReactiveInsights\"]}}}");

/***/ }),

/***/ 49177:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-10-25\",\"endpointPrefix\":\"directconnect\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Direct Connect\",\"serviceId\":\"Direct Connect\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"OvertureService\",\"uid\":\"directconnect-2012-10-25\"},\"operations\":{\"AcceptDirectConnectGatewayAssociationProposal\":{\"input\":{\"type\":\"structure\",\"required\":[\"directConnectGatewayId\",\"proposalId\",\"associatedGatewayOwnerAccount\"],\"members\":{\"directConnectGatewayId\":{},\"proposalId\":{},\"associatedGatewayOwnerAccount\":{},\"overrideAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociation\":{\"shape\":\"S9\"}}}},\"AllocateConnectionOnInterconnect\":{\"input\":{\"type\":\"structure\",\"required\":[\"bandwidth\",\"connectionName\",\"ownerAccount\",\"interconnectId\",\"vlan\"],\"members\":{\"bandwidth\":{},\"connectionName\":{},\"ownerAccount\":{},\"interconnectId\":{},\"vlan\":{\"type\":\"integer\"}}},\"output\":{\"shape\":\"So\"},\"deprecated\":true},\"AllocateHostedConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"ownerAccount\",\"bandwidth\",\"connectionName\",\"vlan\"],\"members\":{\"connectionId\":{},\"ownerAccount\":{},\"bandwidth\":{},\"connectionName\":{},\"vlan\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"Sz\"}}},\"output\":{\"shape\":\"So\"}},\"AllocatePrivateVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"ownerAccount\",\"newPrivateVirtualInterfaceAllocation\"],\"members\":{\"connectionId\":{},\"ownerAccount\":{},\"newPrivateVirtualInterfaceAllocation\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceName\",\"vlan\",\"asn\"],\"members\":{\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"mtu\":{\"type\":\"integer\"},\"authKey\":{},\"amazonAddress\":{},\"addressFamily\":{},\"customerAddress\":{},\"tags\":{\"shape\":\"Sz\"}}}}},\"output\":{\"shape\":\"S1n\"}},\"AllocatePublicVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"ownerAccount\",\"newPublicVirtualInterfaceAllocation\"],\"members\":{\"connectionId\":{},\"ownerAccount\":{},\"newPublicVirtualInterfaceAllocation\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceName\",\"vlan\",\"asn\"],\"members\":{\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"authKey\":{},\"amazonAddress\":{},\"customerAddress\":{},\"addressFamily\":{},\"routeFilterPrefixes\":{\"shape\":\"S5\"},\"tags\":{\"shape\":\"Sz\"}}}}},\"output\":{\"shape\":\"S1n\"}},\"AllocateTransitVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"ownerAccount\",\"newTransitVirtualInterfaceAllocation\"],\"members\":{\"connectionId\":{},\"ownerAccount\":{},\"newTransitVirtualInterfaceAllocation\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"mtu\":{\"type\":\"integer\"},\"authKey\":{},\"amazonAddress\":{},\"customerAddress\":{},\"addressFamily\":{},\"tags\":{\"shape\":\"Sz\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterface\":{\"shape\":\"S1n\"}}}},\"AssociateConnectionWithLag\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"lagId\"],\"members\":{\"connectionId\":{},\"lagId\":{}}},\"output\":{\"shape\":\"So\"}},\"AssociateHostedConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"parentConnectionId\"],\"members\":{\"connectionId\":{},\"parentConnectionId\":{}}},\"output\":{\"shape\":\"So\"}},\"AssociateMacSecKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{},\"secretARN\":{},\"ckn\":{},\"cak\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectionId\":{},\"macSecKeys\":{\"shape\":\"S17\"}}}},\"AssociateVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\",\"connectionId\"],\"members\":{\"virtualInterfaceId\":{},\"connectionId\":{}}},\"output\":{\"shape\":\"S1n\"}},\"ConfirmConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectionState\":{}}}},\"ConfirmPrivateVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\"],\"members\":{\"virtualInterfaceId\":{},\"virtualGatewayId\":{},\"directConnectGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceState\":{}}}},\"ConfirmPublicVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\"],\"members\":{\"virtualInterfaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceState\":{}}}},\"ConfirmTransitVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\",\"directConnectGatewayId\"],\"members\":{\"virtualInterfaceId\":{},\"directConnectGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceState\":{}}}},\"CreateBGPPeer\":{\"input\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceId\":{},\"newBGPPeer\":{\"type\":\"structure\",\"members\":{\"asn\":{\"type\":\"integer\"},\"authKey\":{},\"addressFamily\":{},\"amazonAddress\":{},\"customerAddress\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterface\":{\"shape\":\"S1n\"}}}},\"CreateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"location\",\"bandwidth\",\"connectionName\"],\"members\":{\"location\":{},\"bandwidth\":{},\"connectionName\":{},\"lagId\":{},\"tags\":{\"shape\":\"Sz\"},\"providerName\":{},\"requestMACSec\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"So\"}},\"CreateDirectConnectGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"directConnectGatewayName\"],\"members\":{\"directConnectGatewayName\":{},\"amazonSideAsn\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGateway\":{\"shape\":\"S2p\"}}}},\"CreateDirectConnectGatewayAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"directConnectGatewayId\"],\"members\":{\"directConnectGatewayId\":{},\"gatewayId\":{},\"addAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"},\"virtualGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociation\":{\"shape\":\"S9\"}}}},\"CreateDirectConnectGatewayAssociationProposal\":{\"input\":{\"type\":\"structure\",\"required\":[\"directConnectGatewayId\",\"directConnectGatewayOwnerAccount\",\"gatewayId\"],\"members\":{\"directConnectGatewayId\":{},\"directConnectGatewayOwnerAccount\":{},\"gatewayId\":{},\"addAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"},\"removeAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociationProposal\":{\"shape\":\"S2w\"}}}},\"CreateInterconnect\":{\"input\":{\"type\":\"structure\",\"required\":[\"interconnectName\",\"bandwidth\",\"location\"],\"members\":{\"interconnectName\":{},\"bandwidth\":{},\"location\":{},\"lagId\":{},\"tags\":{\"shape\":\"Sz\"},\"providerName\":{}}},\"output\":{\"shape\":\"S30\"}},\"CreateLag\":{\"input\":{\"type\":\"structure\",\"required\":[\"numberOfConnections\",\"location\",\"connectionsBandwidth\",\"lagName\"],\"members\":{\"numberOfConnections\":{\"type\":\"integer\"},\"location\":{},\"connectionsBandwidth\":{},\"lagName\":{},\"connectionId\":{},\"tags\":{\"shape\":\"Sz\"},\"childConnectionTags\":{\"shape\":\"Sz\"},\"providerName\":{},\"requestMACSec\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S35\"}},\"CreatePrivateVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"newPrivateVirtualInterface\"],\"members\":{\"connectionId\":{},\"newPrivateVirtualInterface\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceName\",\"vlan\",\"asn\"],\"members\":{\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"mtu\":{\"type\":\"integer\"},\"authKey\":{},\"amazonAddress\":{},\"customerAddress\":{},\"addressFamily\":{},\"virtualGatewayId\":{},\"directConnectGatewayId\":{},\"tags\":{\"shape\":\"Sz\"}}}}},\"output\":{\"shape\":\"S1n\"}},\"CreatePublicVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"newPublicVirtualInterface\"],\"members\":{\"connectionId\":{},\"newPublicVirtualInterface\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceName\",\"vlan\",\"asn\"],\"members\":{\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"authKey\":{},\"amazonAddress\":{},\"customerAddress\":{},\"addressFamily\":{},\"routeFilterPrefixes\":{\"shape\":\"S5\"},\"tags\":{\"shape\":\"Sz\"}}}}},\"output\":{\"shape\":\"S1n\"}},\"CreateTransitVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"newTransitVirtualInterface\"],\"members\":{\"connectionId\":{},\"newTransitVirtualInterface\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"mtu\":{\"type\":\"integer\"},\"authKey\":{},\"amazonAddress\":{},\"customerAddress\":{},\"addressFamily\":{},\"directConnectGatewayId\":{},\"tags\":{\"shape\":\"Sz\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterface\":{\"shape\":\"S1n\"}}}},\"DeleteBGPPeer\":{\"input\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceId\":{},\"asn\":{\"type\":\"integer\"},\"customerAddress\":{},\"bgpPeerId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterface\":{\"shape\":\"S1n\"}}}},\"DeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{}}},\"output\":{\"shape\":\"So\"}},\"DeleteDirectConnectGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"directConnectGatewayId\"],\"members\":{\"directConnectGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGateway\":{\"shape\":\"S2p\"}}}},\"DeleteDirectConnectGatewayAssociation\":{\"input\":{\"type\":\"structure\",\"members\":{\"associationId\":{},\"directConnectGatewayId\":{},\"virtualGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociation\":{\"shape\":\"S9\"}}}},\"DeleteDirectConnectGatewayAssociationProposal\":{\"input\":{\"type\":\"structure\",\"required\":[\"proposalId\"],\"members\":{\"proposalId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociationProposal\":{\"shape\":\"S2w\"}}}},\"DeleteInterconnect\":{\"input\":{\"type\":\"structure\",\"required\":[\"interconnectId\"],\"members\":{\"interconnectId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"interconnectState\":{}}}},\"DeleteLag\":{\"input\":{\"type\":\"structure\",\"required\":[\"lagId\"],\"members\":{\"lagId\":{}}},\"output\":{\"shape\":\"S35\"}},\"DeleteVirtualInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\"],\"members\":{\"virtualInterfaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceState\":{}}}},\"DescribeConnectionLoa\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{},\"providerName\":{},\"loaContentType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"loa\":{\"shape\":\"S3x\"}}},\"deprecated\":true},\"DescribeConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"connectionId\":{}}},\"output\":{\"shape\":\"S40\"}},\"DescribeConnectionsOnInterconnect\":{\"input\":{\"type\":\"structure\",\"required\":[\"interconnectId\"],\"members\":{\"interconnectId\":{}}},\"output\":{\"shape\":\"S40\"},\"deprecated\":true},\"DescribeDirectConnectGatewayAssociationProposals\":{\"input\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayId\":{},\"proposalId\":{},\"associatedGatewayId\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociationProposals\":{\"type\":\"list\",\"member\":{\"shape\":\"S2w\"}},\"nextToken\":{}}}},\"DescribeDirectConnectGatewayAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"associationId\":{},\"associatedGatewayId\":{},\"directConnectGatewayId\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"virtualGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"S9\"}},\"nextToken\":{}}}},\"DescribeDirectConnectGatewayAttachments\":{\"input\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayId\":{},\"virtualInterfaceId\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAttachments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayId\":{},\"virtualInterfaceId\":{},\"virtualInterfaceRegion\":{},\"virtualInterfaceOwnerAccount\":{},\"attachmentState\":{},\"attachmentType\":{},\"stateChangeError\":{}}}},\"nextToken\":{}}}},\"DescribeDirectConnectGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayId\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGateways\":{\"type\":\"list\",\"member\":{\"shape\":\"S2p\"}},\"nextToken\":{}}}},\"DescribeHostedConnections\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{}}},\"output\":{\"shape\":\"S40\"}},\"DescribeInterconnectLoa\":{\"input\":{\"type\":\"structure\",\"required\":[\"interconnectId\"],\"members\":{\"interconnectId\":{},\"providerName\":{},\"loaContentType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"loa\":{\"shape\":\"S3x\"}}},\"deprecated\":true},\"DescribeInterconnects\":{\"input\":{\"type\":\"structure\",\"members\":{\"interconnectId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"interconnects\":{\"type\":\"list\",\"member\":{\"shape\":\"S30\"}}}}},\"DescribeLags\":{\"input\":{\"type\":\"structure\",\"members\":{\"lagId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"lags\":{\"type\":\"list\",\"member\":{\"shape\":\"S35\"}}}}},\"DescribeLoa\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{},\"providerName\":{},\"loaContentType\":{}}},\"output\":{\"shape\":\"S3x\"}},\"DescribeLocations\":{\"output\":{\"type\":\"structure\",\"members\":{\"locations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"locationCode\":{},\"locationName\":{},\"region\":{},\"availablePortSpeeds\":{\"type\":\"list\",\"member\":{}},\"availableProviders\":{\"type\":\"list\",\"member\":{}},\"availableMacSecPortSpeeds\":{\"type\":\"list\",\"member\":{}}}}}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArns\"],\"members\":{\"resourceArns\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceTags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"Sz\"}}}}}}},\"DescribeVirtualGateways\":{\"output\":{\"type\":\"structure\",\"members\":{\"virtualGateways\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"virtualGatewayId\":{},\"virtualGatewayState\":{}}}}}}},\"DescribeVirtualInterfaces\":{\"input\":{\"type\":\"structure\",\"members\":{\"connectionId\":{},\"virtualInterfaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaces\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\"}}}}},\"DisassociateConnectionFromLag\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"lagId\"],\"members\":{\"connectionId\":{},\"lagId\":{}}},\"output\":{\"shape\":\"So\"}},\"DisassociateMacSecKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\",\"secretARN\"],\"members\":{\"connectionId\":{},\"secretARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectionId\":{},\"macSecKeys\":{\"shape\":\"S17\"}}}},\"ListVirtualInterfaceTestHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"testId\":{},\"virtualInterfaceId\":{},\"bgpPeers\":{\"shape\":\"S5l\"},\"status\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceTestHistory\":{\"type\":\"list\",\"member\":{\"shape\":\"S5p\"}},\"nextToken\":{}}}},\"StartBgpFailoverTest\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\"],\"members\":{\"virtualInterfaceId\":{},\"bgpPeers\":{\"shape\":\"S5l\"},\"testDurationInMinutes\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceTest\":{\"shape\":\"S5p\"}}}},\"StopBgpFailoverTest\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\"],\"members\":{\"virtualInterfaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualInterfaceTest\":{\"shape\":\"S5p\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectionId\"],\"members\":{\"connectionId\":{},\"connectionName\":{},\"encryptionMode\":{}}},\"output\":{\"shape\":\"So\"}},\"UpdateDirectConnectGatewayAssociation\":{\"input\":{\"type\":\"structure\",\"members\":{\"associationId\":{},\"addAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"},\"removeAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayAssociation\":{\"shape\":\"S9\"}}}},\"UpdateLag\":{\"input\":{\"type\":\"structure\",\"required\":[\"lagId\"],\"members\":{\"lagId\":{},\"lagName\":{},\"minimumLinks\":{\"type\":\"integer\"},\"encryptionMode\":{}}},\"output\":{\"shape\":\"S35\"}},\"UpdateVirtualInterfaceAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"virtualInterfaceId\"],\"members\":{\"virtualInterfaceId\":{},\"mtu\":{\"type\":\"integer\"}}},\"output\":{\"shape\":\"S1n\"}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"cidr\":{}}}},\"S9\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayId\":{},\"directConnectGatewayOwnerAccount\":{},\"associationState\":{},\"stateChangeError\":{},\"associatedGateway\":{\"shape\":\"Sc\"},\"associationId\":{},\"allowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"},\"virtualGatewayId\":{},\"virtualGatewayRegion\":{\"type\":\"string\",\"deprecated\":true},\"virtualGatewayOwnerAccount\":{}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"id\":{},\"type\":{},\"ownerAccount\":{},\"region\":{}}},\"So\":{\"type\":\"structure\",\"members\":{\"ownerAccount\":{},\"connectionId\":{},\"connectionName\":{},\"connectionState\":{},\"region\":{},\"location\":{},\"bandwidth\":{},\"vlan\":{\"type\":\"integer\"},\"partnerName\":{},\"loaIssueTime\":{\"type\":\"timestamp\"},\"lagId\":{},\"awsDevice\":{\"shape\":\"Sv\"},\"jumboFrameCapable\":{\"type\":\"boolean\"},\"awsDeviceV2\":{},\"hasLogicalRedundancy\":{},\"tags\":{\"shape\":\"Sz\"},\"providerName\":{},\"macSecCapable\":{\"type\":\"boolean\"},\"portEncryptionStatus\":{},\"encryptionMode\":{},\"macSecKeys\":{\"shape\":\"S17\"}}},\"Sv\":{\"type\":\"string\",\"deprecated\":true},\"Sz\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"value\":{}}}},\"S17\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"secretARN\":{},\"ckn\":{},\"state\":{},\"startOn\":{}}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"ownerAccount\":{},\"virtualInterfaceId\":{},\"location\":{},\"connectionId\":{},\"virtualInterfaceType\":{},\"virtualInterfaceName\":{},\"vlan\":{\"type\":\"integer\"},\"asn\":{\"type\":\"integer\"},\"amazonSideAsn\":{\"type\":\"long\"},\"authKey\":{},\"amazonAddress\":{},\"customerAddress\":{},\"addressFamily\":{},\"virtualInterfaceState\":{},\"customerRouterConfig\":{},\"mtu\":{\"type\":\"integer\"},\"jumboFrameCapable\":{\"type\":\"boolean\"},\"virtualGatewayId\":{},\"directConnectGatewayId\":{},\"routeFilterPrefixes\":{\"shape\":\"S5\"},\"bgpPeers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"bgpPeerId\":{},\"asn\":{\"type\":\"integer\"},\"authKey\":{},\"addressFamily\":{},\"amazonAddress\":{},\"customerAddress\":{},\"bgpPeerState\":{},\"bgpStatus\":{},\"awsDeviceV2\":{}}}},\"region\":{},\"awsDeviceV2\":{},\"tags\":{\"shape\":\"Sz\"}}},\"S2p\":{\"type\":\"structure\",\"members\":{\"directConnectGatewayId\":{},\"directConnectGatewayName\":{},\"amazonSideAsn\":{\"type\":\"long\"},\"ownerAccount\":{},\"directConnectGatewayState\":{},\"stateChangeError\":{}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"proposalId\":{},\"directConnectGatewayId\":{},\"directConnectGatewayOwnerAccount\":{},\"proposalState\":{},\"associatedGateway\":{\"shape\":\"Sc\"},\"existingAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"},\"requestedAllowedPrefixesToDirectConnectGateway\":{\"shape\":\"S5\"}}},\"S30\":{\"type\":\"structure\",\"members\":{\"interconnectId\":{},\"interconnectName\":{},\"interconnectState\":{},\"region\":{},\"location\":{},\"bandwidth\":{},\"loaIssueTime\":{\"type\":\"timestamp\"},\"lagId\":{},\"awsDevice\":{\"shape\":\"Sv\"},\"jumboFrameCapable\":{\"type\":\"boolean\"},\"awsDeviceV2\":{},\"hasLogicalRedundancy\":{},\"tags\":{\"shape\":\"Sz\"},\"providerName\":{}}},\"S35\":{\"type\":\"structure\",\"members\":{\"connectionsBandwidth\":{},\"numberOfConnections\":{\"type\":\"integer\"},\"lagId\":{},\"ownerAccount\":{},\"lagName\":{},\"lagState\":{},\"location\":{},\"region\":{},\"minimumLinks\":{\"type\":\"integer\"},\"awsDevice\":{\"shape\":\"Sv\"},\"awsDeviceV2\":{},\"connections\":{\"shape\":\"S37\"},\"allowsHostedConnections\":{\"type\":\"boolean\"},\"jumboFrameCapable\":{\"type\":\"boolean\"},\"hasLogicalRedundancy\":{},\"tags\":{\"shape\":\"Sz\"},\"providerName\":{},\"macSecCapable\":{\"type\":\"boolean\"},\"encryptionMode\":{},\"macSecKeys\":{\"shape\":\"S17\"}}},\"S37\":{\"type\":\"list\",\"member\":{\"shape\":\"So\"}},\"S3x\":{\"type\":\"structure\",\"members\":{\"loaContent\":{\"type\":\"blob\"},\"loaContentType\":{}}},\"S40\":{\"type\":\"structure\",\"members\":{\"connections\":{\"shape\":\"S37\"}}},\"S5l\":{\"type\":\"list\",\"member\":{}},\"S5p\":{\"type\":\"structure\",\"members\":{\"testId\":{},\"virtualInterfaceId\":{},\"bgpPeers\":{\"shape\":\"S5l\"},\"status\":{},\"ownerAccount\":{},\"testDurationInMinutes\":{\"type\":\"integer\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"}}}}}");

/***/ }),

/***/ 57373:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeConnections\":{\"result_key\":\"connections\"},\"DescribeConnectionsOnInterconnect\":{\"result_key\":\"connections\"},\"DescribeInterconnects\":{\"result_key\":\"interconnects\"},\"DescribeLocations\":{\"result_key\":\"locations\"},\"DescribeVirtualGateways\":{\"result_key\":\"virtualGateways\"},\"DescribeVirtualInterfaces\":{\"result_key\":\"virtualInterfaces\"}}}");

/***/ }),

/***/ 32400:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-11-01\",\"endpointPrefix\":\"discovery\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Application Discovery Service\",\"serviceId\":\"Application Discovery Service\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSPoseidonService_V2015_11_01\",\"uid\":\"discovery-2015-11-01\"},\"operations\":{\"AssociateConfigurationItemsToApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationConfigurationId\",\"configurationIds\"],\"members\":{\"applicationConfigurationId\":{},\"configurationIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchDeleteImportData\":{\"input\":{\"type\":\"structure\",\"required\":[\"importTaskIds\"],\"members\":{\"importTaskIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"importTaskId\":{},\"errorCode\":{},\"errorDescription\":{}}}}}}},\"CreateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"configurationId\":{}}}},\"CreateTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationIds\",\"tags\"],\"members\":{\"configurationIds\":{\"shape\":\"S3\"},\"tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplications\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationIds\"],\"members\":{\"configurationIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationIds\"],\"members\":{\"configurationIds\":{\"shape\":\"S3\"},\"tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAgents\":{\"input\":{\"type\":\"structure\",\"members\":{\"agentIds\":{\"shape\":\"St\"},\"filters\":{\"shape\":\"Sv\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"agentsInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"agentId\":{},\"hostName\":{},\"agentNetworkInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ipAddress\":{},\"macAddress\":{}}}},\"connectorId\":{},\"version\":{},\"health\":{},\"lastHealthPingTime\":{},\"collectionStatus\":{},\"agentType\":{},\"registeredTime\":{}}}},\"nextToken\":{}}}},\"DescribeConfigurations\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationIds\"],\"members\":{\"configurationIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"configurations\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}},\"DescribeContinuousExports\":{\"input\":{\"type\":\"structure\",\"members\":{\"exportIds\":{\"type\":\"list\",\"member\":{}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"descriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"exportId\":{},\"status\":{},\"statusDetail\":{},\"s3Bucket\":{},\"startTime\":{\"type\":\"timestamp\"},\"stopTime\":{\"type\":\"timestamp\"},\"dataSource\":{},\"schemaStorageConfig\":{\"shape\":\"S1o\"}}}},\"nextToken\":{}}}},\"DescribeExportConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"exportIds\":{\"shape\":\"S1r\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"exportsInfo\":{\"shape\":\"S1t\"},\"nextToken\":{}}},\"deprecated\":true},\"DescribeExportTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"exportIds\":{\"shape\":\"S1r\"},\"filters\":{\"shape\":\"S21\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"exportsInfo\":{\"shape\":\"S1t\"},\"nextToken\":{}}}},\"DescribeImportTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"tasks\":{\"type\":\"list\",\"member\":{\"shape\":\"S2e\"}}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"Sx\"}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"configurationType\":{},\"configurationId\":{},\"key\":{},\"value\":{},\"timeOfCreation\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"DisassociateConfigurationItemsFromApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"applicationConfigurationId\",\"configurationIds\"],\"members\":{\"applicationConfigurationId\":{},\"configurationIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ExportConfigurations\":{\"output\":{\"type\":\"structure\",\"members\":{\"exportId\":{}}},\"deprecated\":true},\"GetDiscoverySummary\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"servers\":{\"type\":\"long\"},\"applications\":{\"type\":\"long\"},\"serversMappedToApplications\":{\"type\":\"long\"},\"serversMappedtoTags\":{\"type\":\"long\"},\"agentSummary\":{\"type\":\"structure\",\"required\":[\"activeAgents\",\"healthyAgents\",\"blackListedAgents\",\"shutdownAgents\",\"unhealthyAgents\",\"totalAgents\",\"unknownAgents\"],\"members\":{\"activeAgents\":{\"type\":\"integer\"},\"healthyAgents\":{\"type\":\"integer\"},\"blackListedAgents\":{\"type\":\"integer\"},\"shutdownAgents\":{\"type\":\"integer\"},\"unhealthyAgents\":{\"type\":\"integer\"},\"totalAgents\":{\"type\":\"integer\"},\"unknownAgents\":{\"type\":\"integer\"}}},\"connectorSummary\":{\"type\":\"structure\",\"required\":[\"activeConnectors\",\"healthyConnectors\",\"blackListedConnectors\",\"shutdownConnectors\",\"unhealthyConnectors\",\"totalConnectors\",\"unknownConnectors\"],\"members\":{\"activeConnectors\":{\"type\":\"integer\"},\"healthyConnectors\":{\"type\":\"integer\"},\"blackListedConnectors\":{\"type\":\"integer\"},\"shutdownConnectors\":{\"type\":\"integer\"},\"unhealthyConnectors\":{\"type\":\"integer\"},\"totalConnectors\":{\"type\":\"integer\"},\"unknownConnectors\":{\"type\":\"integer\"}}}}}},\"ListConfigurations\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationType\"],\"members\":{\"configurationType\":{},\"filters\":{\"shape\":\"Sv\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"orderBy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"fieldName\"],\"members\":{\"fieldName\":{},\"sortOrder\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"configurations\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}},\"nextToken\":{}}}},\"ListServerNeighbors\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationId\"],\"members\":{\"configurationId\":{},\"portInformationNeeded\":{\"type\":\"boolean\"},\"neighborConfigurationIds\":{\"shape\":\"S3\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"neighbors\"],\"members\":{\"neighbors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"sourceServerId\",\"destinationServerId\",\"connectionsCount\"],\"members\":{\"sourceServerId\":{},\"destinationServerId\":{},\"destinationPort\":{\"type\":\"integer\"},\"transportProtocol\":{},\"connectionsCount\":{\"type\":\"long\"}}}},\"nextToken\":{},\"knownDependencyCount\":{\"type\":\"long\"}}}},\"StartContinuousExport\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"exportId\":{},\"s3Bucket\":{},\"startTime\":{\"type\":\"timestamp\"},\"dataSource\":{},\"schemaStorageConfig\":{\"shape\":\"S1o\"}}}},\"StartDataCollectionByAgentIds\":{\"input\":{\"type\":\"structure\",\"required\":[\"agentIds\"],\"members\":{\"agentIds\":{\"shape\":\"St\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"agentsConfigurationStatus\":{\"shape\":\"S3f\"}}}},\"StartExportTask\":{\"input\":{\"type\":\"structure\",\"members\":{\"exportDataFormat\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"shape\":\"S21\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"exportId\":{}}}},\"StartImportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"importUrl\"],\"members\":{\"clientRequestToken\":{\"idempotencyToken\":true},\"name\":{},\"importUrl\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"task\":{\"shape\":\"S2e\"}}}},\"StopContinuousExport\":{\"input\":{\"type\":\"structure\",\"required\":[\"exportId\"],\"members\":{\"exportId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"startTime\":{\"type\":\"timestamp\"},\"stopTime\":{\"type\":\"timestamp\"}}}},\"StopDataCollectionByAgentIds\":{\"input\":{\"type\":\"structure\",\"required\":[\"agentIds\"],\"members\":{\"agentIds\":{\"shape\":\"St\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"agentsConfigurationStatus\":{\"shape\":\"S3f\"}}}},\"UpdateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"configurationId\"],\"members\":{\"configurationId\":{},\"name\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"St\":{\"type\":\"list\",\"member\":{}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"condition\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"Sx\"},\"condition\":{}}}},\"Sx\":{\"type\":\"list\",\"member\":{}},\"S1o\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1r\":{\"type\":\"list\",\"member\":{}},\"S1t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"exportId\",\"exportStatus\",\"statusMessage\",\"exportRequestTime\"],\"members\":{\"exportId\":{},\"exportStatus\":{},\"statusMessage\":{},\"configurationsDownloadUrl\":{},\"exportRequestTime\":{\"type\":\"timestamp\"},\"isTruncated\":{\"type\":\"boolean\"},\"requestedStartTime\":{\"type\":\"timestamp\"},\"requestedEndTime\":{\"type\":\"timestamp\"}}}},\"S21\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"condition\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"Sx\"},\"condition\":{}}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"importTaskId\":{},\"clientRequestToken\":{},\"name\":{},\"importUrl\":{},\"status\":{},\"importRequestTime\":{\"type\":\"timestamp\"},\"importCompletionTime\":{\"type\":\"timestamp\"},\"importDeletedTime\":{\"type\":\"timestamp\"},\"serverImportSuccess\":{\"type\":\"integer\"},\"serverImportFailure\":{\"type\":\"integer\"},\"applicationImportSuccess\":{\"type\":\"integer\"},\"applicationImportFailure\":{\"type\":\"integer\"},\"errorsAndFailedEntriesZip\":{}}},\"S3f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"agentId\":{},\"operationSucceeded\":{\"type\":\"boolean\"},\"description\":{}}}}}}");

/***/ }),

/***/ 54052:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeContinuousExports\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"DescribeImportTasks\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 19210:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-01-12\",\"endpointPrefix\":\"dlm\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon DLM\",\"serviceFullName\":\"Amazon Data Lifecycle Manager\",\"serviceId\":\"DLM\",\"signatureVersion\":\"v4\",\"signingName\":\"dlm\",\"uid\":\"dlm-2018-01-12\"},\"operations\":{\"CreateLifecyclePolicy\":{\"http\":{\"requestUri\":\"/policies\"},\"input\":{\"type\":\"structure\",\"required\":[\"ExecutionRoleArn\",\"Description\",\"State\",\"PolicyDetails\"],\"members\":{\"ExecutionRoleArn\":{},\"Description\":{},\"State\":{},\"PolicyDetails\":{\"shape\":\"S5\"},\"Tags\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyId\":{}}}},\"DeleteLifecyclePolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/policies/{policyId}/\"},\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{\"location\":\"uri\",\"locationName\":\"policyId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetLifecyclePolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policies\"},\"input\":{\"type\":\"structure\",\"members\":{\"PolicyIds\":{\"location\":\"querystring\",\"locationName\":\"policyIds\",\"type\":\"list\",\"member\":{}},\"State\":{\"location\":\"querystring\",\"locationName\":\"state\"},\"ResourceTypes\":{\"shape\":\"S7\",\"location\":\"querystring\",\"locationName\":\"resourceTypes\"},\"TargetTags\":{\"location\":\"querystring\",\"locationName\":\"targetTags\",\"type\":\"list\",\"member\":{}},\"TagsToAdd\":{\"location\":\"querystring\",\"locationName\":\"tagsToAdd\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyId\":{},\"Description\":{},\"State\":{},\"Tags\":{\"shape\":\"S1o\"},\"PolicyType\":{}}}}}}},\"GetLifecyclePolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policies/{policyId}/\"},\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{\"location\":\"uri\",\"locationName\":\"policyId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"type\":\"structure\",\"members\":{\"PolicyId\":{},\"Description\":{},\"State\":{},\"StatusMessage\":{},\"ExecutionRoleArn\":{},\"DateCreated\":{\"shape\":\"S28\"},\"DateModified\":{\"shape\":\"S28\"},\"PolicyDetails\":{\"shape\":\"S5\"},\"Tags\":{\"shape\":\"S1o\"},\"PolicyArn\":{}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1o\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLifecyclePolicy\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/policies/{policyId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{\"location\":\"uri\",\"locationName\":\"policyId\"},\"ExecutionRoleArn\":{},\"State\":{},\"Description\":{},\"PolicyDetails\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"PolicyType\":{},\"ResourceTypes\":{\"shape\":\"S7\"},\"ResourceLocations\":{\"type\":\"list\",\"member\":{}},\"TargetTags\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"Schedules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CopyTags\":{\"type\":\"boolean\"},\"TagsToAdd\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"VariableTags\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"CreateRule\":{\"type\":\"structure\",\"members\":{\"Location\":{},\"Interval\":{\"type\":\"integer\"},\"IntervalUnit\":{},\"Times\":{\"type\":\"list\",\"member\":{}},\"CronExpression\":{}}},\"RetainRule\":{\"type\":\"structure\",\"members\":{\"Count\":{\"type\":\"integer\"},\"Interval\":{\"type\":\"integer\"},\"IntervalUnit\":{}}},\"FastRestoreRule\":{\"type\":\"structure\",\"required\":[\"AvailabilityZones\"],\"members\":{\"Count\":{\"type\":\"integer\"},\"Interval\":{\"type\":\"integer\"},\"IntervalUnit\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{}}}},\"CrossRegionCopyRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Encrypted\"],\"members\":{\"TargetRegion\":{},\"Target\":{},\"Encrypted\":{\"type\":\"boolean\"},\"CmkArn\":{},\"CopyTags\":{\"type\":\"boolean\"},\"RetainRule\":{\"shape\":\"S14\"}}}},\"ShareRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TargetAccounts\"],\"members\":{\"TargetAccounts\":{\"type\":\"list\",\"member\":{}},\"UnshareInterval\":{\"type\":\"integer\"},\"UnshareIntervalUnit\":{}}}}}}},\"Parameters\":{\"type\":\"structure\",\"members\":{\"ExcludeBootVolume\":{\"type\":\"boolean\"},\"NoReboot\":{\"type\":\"boolean\"}}},\"EventSource\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Parameters\":{\"type\":\"structure\",\"required\":[\"EventType\",\"SnapshotOwner\",\"DescriptionRegex\"],\"members\":{\"EventType\":{},\"SnapshotOwner\":{\"type\":\"list\",\"member\":{}},\"DescriptionRegex\":{}}}}},\"Actions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"CrossRegionCopy\"],\"members\":{\"Name\":{},\"CrossRegionCopy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Target\",\"EncryptionConfiguration\"],\"members\":{\"Target\":{},\"EncryptionConfiguration\":{\"type\":\"structure\",\"required\":[\"Encrypted\"],\"members\":{\"Encrypted\":{\"type\":\"boolean\"},\"CmkArn\":{}}},\"RetainRule\":{\"shape\":\"S14\"}}}}}}}}},\"S7\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}},\"S14\":{\"type\":\"structure\",\"members\":{\"Interval\":{\"type\":\"integer\"},\"IntervalUnit\":{}}},\"S1o\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S28\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 69943:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 85765:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-01-01\",\"endpointPrefix\":\"dms\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Database Migration Service\",\"serviceId\":\"Database Migration Service\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AmazonDMSv20160101\",\"uid\":\"dms-2016-01-01\"},\"operations\":{\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ApplyPendingMaintenanceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceArn\",\"ApplyAction\",\"OptInType\"],\"members\":{\"ReplicationInstanceArn\":{},\"ApplyAction\":{},\"OptInType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourcePendingMaintenanceActions\":{\"shape\":\"S8\"}}}},\"CancelReplicationTaskAssessmentRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskAssessmentRunArn\"],\"members\":{\"ReplicationTaskAssessmentRunArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskAssessmentRun\":{\"shape\":\"Se\"}}}},\"CreateEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointIdentifier\",\"EndpointType\",\"EngineName\"],\"members\":{\"EndpointIdentifier\":{},\"EndpointType\":{},\"EngineName\":{},\"Username\":{},\"Password\":{\"shape\":\"Sj\"},\"ServerName\":{},\"Port\":{\"type\":\"integer\"},\"DatabaseName\":{},\"ExtraConnectionAttributes\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"S3\"},\"CertificateArn\":{},\"SslMode\":{},\"ServiceAccessRoleArn\":{},\"ExternalTableDefinition\":{},\"DynamoDbSettings\":{\"shape\":\"Sm\"},\"S3Settings\":{\"shape\":\"Sn\"},\"DmsTransferSettings\":{\"shape\":\"Sw\"},\"MongoDbSettings\":{\"shape\":\"Sx\"},\"KinesisSettings\":{\"shape\":\"S11\"},\"KafkaSettings\":{\"shape\":\"S13\"},\"ElasticsearchSettings\":{\"shape\":\"S15\"},\"NeptuneSettings\":{\"shape\":\"S16\"},\"RedshiftSettings\":{\"shape\":\"S17\"},\"PostgreSQLSettings\":{\"shape\":\"S18\"},\"MySQLSettings\":{\"shape\":\"S19\"},\"OracleSettings\":{\"shape\":\"S1b\"},\"SybaseSettings\":{\"shape\":\"S1d\"},\"MicrosoftSQLServerSettings\":{\"shape\":\"S1e\"},\"IBMDb2Settings\":{\"shape\":\"S1g\"},\"ResourceIdentifier\":{},\"DocDbSettings\":{\"shape\":\"S1h\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{\"shape\":\"S1j\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S1l\"},\"SourceIds\":{\"shape\":\"S1m\"},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S1o\"}}}},\"CreateReplicationInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceIdentifier\",\"ReplicationInstanceClass\"],\"members\":{\"ReplicationInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"ReplicationInstanceClass\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1r\"},\"AvailabilityZone\":{},\"ReplicationSubnetGroupIdentifier\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S3\"},\"KmsKeyId\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"DnsNameServers\":{},\"ResourceIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationInstance\":{\"shape\":\"S1t\"}}}},\"CreateReplicationSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationSubnetGroupIdentifier\",\"ReplicationSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"ReplicationSubnetGroupIdentifier\":{},\"ReplicationSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S24\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationSubnetGroup\":{\"shape\":\"S1w\"}}}},\"CreateReplicationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskIdentifier\",\"SourceEndpointArn\",\"TargetEndpointArn\",\"ReplicationInstanceArn\",\"MigrationType\",\"TableMappings\"],\"members\":{\"ReplicationTaskIdentifier\":{},\"SourceEndpointArn\":{},\"TargetEndpointArn\":{},\"ReplicationInstanceArn\":{},\"MigrationType\":{},\"TableMappings\":{},\"ReplicationTaskSettings\":{},\"CdcStartTime\":{\"type\":\"timestamp\"},\"CdcStartPosition\":{},\"CdcStopPosition\":{},\"Tags\":{\"shape\":\"S3\"},\"TaskData\":{},\"ResourceIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"DeleteCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateArn\"],\"members\":{\"CertificateArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{\"shape\":\"S2e\"}}}},\"DeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\",\"ReplicationInstanceArn\"],\"members\":{\"EndpointArn\":{},\"ReplicationInstanceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"S2i\"}}}},\"DeleteEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{\"shape\":\"S1j\"}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S1o\"}}}},\"DeleteReplicationInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceArn\"],\"members\":{\"ReplicationInstanceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationInstance\":{\"shape\":\"S1t\"}}}},\"DeleteReplicationSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationSubnetGroupIdentifier\"],\"members\":{\"ReplicationSubnetGroupIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteReplicationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\"],\"members\":{\"ReplicationTaskArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"DeleteReplicationTaskAssessmentRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskAssessmentRunArn\"],\"members\":{\"ReplicationTaskAssessmentRunArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskAssessmentRun\":{\"shape\":\"Se\"}}}},\"DescribeAccountAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountQuotas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountQuotaName\":{},\"Used\":{\"type\":\"long\"},\"Max\":{\"type\":\"long\"}}}},\"UniqueAccountIdentifier\":{}}}},\"DescribeApplicableIndividualAssessments\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskArn\":{},\"ReplicationInstanceArn\":{},\"SourceEngineName\":{},\"TargetEngineName\":{},\"MigrationType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IndividualAssessmentNames\":{\"type\":\"list\",\"member\":{}},\"Marker\":{}}}},\"DescribeCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"Certificates\":{\"type\":\"list\",\"member\":{\"shape\":\"S2e\"}}}}},\"DescribeConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"Connections\":{\"type\":\"list\",\"member\":{\"shape\":\"S2i\"}}}}},\"DescribeEndpointSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"EngineName\"],\"members\":{\"EngineName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"EndpointSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"EnumValues\":{\"type\":\"list\",\"member\":{}},\"Sensitive\":{\"type\":\"boolean\"},\"Units\":{},\"Applicability\":{},\"IntValueMin\":{\"type\":\"integer\"},\"IntValueMax\":{\"type\":\"integer\"}}}}}}},\"DescribeEndpointTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"SupportedEndpointTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EngineName\":{},\"SupportsCDC\":{\"type\":\"boolean\"},\"EndpointType\":{},\"ReplicationInstanceEngineMinimumVersion\":{},\"EngineDisplayName\":{}}}}}}},\"DescribeEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"Endpoints\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Filters\":{\"shape\":\"S33\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventCategoryGroupList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S1l\"}}}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1o\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S1l\"},\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S1l\"},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeOrderableReplicationInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrderableReplicationInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EngineVersion\":{},\"ReplicationInstanceClass\":{},\"StorageType\":{},\"MinAllocatedStorage\":{\"type\":\"integer\"},\"MaxAllocatedStorage\":{\"type\":\"integer\"},\"DefaultAllocatedStorage\":{\"type\":\"integer\"},\"IncludedAllocatedStorage\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{}},\"ReleaseStatus\":{}}}},\"Marker\":{}}}},\"DescribePendingMaintenanceActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReplicationInstanceArn\":{},\"Filters\":{\"shape\":\"S33\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PendingMaintenanceActions\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"Marker\":{}}}},\"DescribeRefreshSchemasStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RefreshSchemasStatus\":{\"shape\":\"S4b\"}}}},\"DescribeReplicationInstanceTaskLogs\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceArn\"],\"members\":{\"ReplicationInstanceArn\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationInstanceArn\":{},\"ReplicationInstanceTaskLogs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskName\":{},\"ReplicationTaskArn\":{},\"ReplicationInstanceTaskLogSize\":{\"type\":\"long\"}}}},\"Marker\":{}}}},\"DescribeReplicationInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReplicationInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}}}}},\"DescribeReplicationSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReplicationSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1w\"}}}}},\"DescribeReplicationTaskAssessmentResults\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskArn\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"BucketName\":{},\"ReplicationTaskAssessmentResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskIdentifier\":{},\"ReplicationTaskArn\":{},\"ReplicationTaskLastAssessmentDate\":{\"type\":\"timestamp\"},\"AssessmentStatus\":{},\"AssessmentResultsFile\":{},\"AssessmentResults\":{},\"S3ObjectUrl\":{}}}}}}},\"DescribeReplicationTaskAssessmentRuns\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReplicationTaskAssessmentRuns\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}}}}},\"DescribeReplicationTaskIndividualAssessments\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReplicationTaskIndividualAssessments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskIndividualAssessmentArn\":{},\"ReplicationTaskAssessmentRunArn\":{},\"IndividualAssessmentName\":{},\"Status\":{},\"ReplicationTaskIndividualAssessmentStartDate\":{\"type\":\"timestamp\"}}}}}}},\"DescribeReplicationTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S33\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"WithoutSettings\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReplicationTasks\":{\"type\":\"list\",\"member\":{\"shape\":\"S29\"}}}}},\"DescribeSchemas\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"Schemas\":{\"type\":\"list\",\"member\":{}}}}},\"DescribeTableStatistics\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\"],\"members\":{\"ReplicationTaskArn\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"Filters\":{\"shape\":\"S33\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskArn\":{},\"TableStatistics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SchemaName\":{},\"TableName\":{},\"Inserts\":{\"type\":\"long\"},\"Deletes\":{\"type\":\"long\"},\"Updates\":{\"type\":\"long\"},\"Ddls\":{\"type\":\"long\"},\"FullLoadRows\":{\"type\":\"long\"},\"FullLoadCondtnlChkFailedRows\":{\"type\":\"long\"},\"FullLoadErrorRows\":{\"type\":\"long\"},\"FullLoadStartTime\":{\"type\":\"timestamp\"},\"FullLoadEndTime\":{\"type\":\"timestamp\"},\"FullLoadReloaded\":{\"type\":\"boolean\"},\"LastUpdateTime\":{\"type\":\"timestamp\"},\"TableState\":{},\"ValidationPendingRecords\":{\"type\":\"long\"},\"ValidationFailedRecords\":{\"type\":\"long\"},\"ValidationSuspendedRecords\":{\"type\":\"long\"},\"ValidationState\":{},\"ValidationStateDetails\":{}}}},\"Marker\":{}}}},\"ImportCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateIdentifier\"],\"members\":{\"CertificateIdentifier\":{},\"CertificatePem\":{\"shape\":\"Sj\"},\"CertificateWallet\":{\"type\":\"blob\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{\"shape\":\"S2e\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S3\"}}}},\"ModifyEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{},\"EndpointIdentifier\":{},\"EndpointType\":{},\"EngineName\":{},\"Username\":{},\"Password\":{\"shape\":\"Sj\"},\"ServerName\":{},\"Port\":{\"type\":\"integer\"},\"DatabaseName\":{},\"ExtraConnectionAttributes\":{},\"CertificateArn\":{},\"SslMode\":{},\"ServiceAccessRoleArn\":{},\"ExternalTableDefinition\":{},\"DynamoDbSettings\":{\"shape\":\"Sm\"},\"S3Settings\":{\"shape\":\"Sn\"},\"DmsTransferSettings\":{\"shape\":\"Sw\"},\"MongoDbSettings\":{\"shape\":\"Sx\"},\"KinesisSettings\":{\"shape\":\"S11\"},\"KafkaSettings\":{\"shape\":\"S13\"},\"ElasticsearchSettings\":{\"shape\":\"S15\"},\"NeptuneSettings\":{\"shape\":\"S16\"},\"RedshiftSettings\":{\"shape\":\"S17\"},\"PostgreSQLSettings\":{\"shape\":\"S18\"},\"MySQLSettings\":{\"shape\":\"S19\"},\"OracleSettings\":{\"shape\":\"S1b\"},\"SybaseSettings\":{\"shape\":\"S1d\"},\"MicrosoftSQLServerSettings\":{\"shape\":\"S1e\"},\"IBMDb2Settings\":{\"shape\":\"S1g\"},\"DocDbSettings\":{\"shape\":\"S1h\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{\"shape\":\"S1j\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S1l\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S1o\"}}}},\"ModifyReplicationInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceArn\"],\"members\":{\"ReplicationInstanceArn\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"ReplicationInstanceClass\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1r\"},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReplicationInstanceIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationInstance\":{\"shape\":\"S1t\"}}}},\"ModifyReplicationSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationSubnetGroupIdentifier\",\"SubnetIds\"],\"members\":{\"ReplicationSubnetGroupIdentifier\":{},\"ReplicationSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S24\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationSubnetGroup\":{\"shape\":\"S1w\"}}}},\"ModifyReplicationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\"],\"members\":{\"ReplicationTaskArn\":{},\"ReplicationTaskIdentifier\":{},\"MigrationType\":{},\"TableMappings\":{},\"ReplicationTaskSettings\":{},\"CdcStartTime\":{\"type\":\"timestamp\"},\"CdcStartPosition\":{},\"CdcStopPosition\":{},\"TaskData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"MoveReplicationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\",\"TargetReplicationInstanceArn\"],\"members\":{\"ReplicationTaskArn\":{},\"TargetReplicationInstanceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"RebootReplicationInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceArn\"],\"members\":{\"ReplicationInstanceArn\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationInstance\":{\"shape\":\"S1t\"}}}},\"RefreshSchemas\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\",\"ReplicationInstanceArn\"],\"members\":{\"EndpointArn\":{},\"ReplicationInstanceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RefreshSchemasStatus\":{\"shape\":\"S4b\"}}}},\"ReloadTables\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\",\"TablesToReload\"],\"members\":{\"ReplicationTaskArn\":{},\"TablesToReload\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SchemaName\",\"TableName\"],\"members\":{\"SchemaName\":{},\"TableName\":{}}}},\"ReloadOption\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskArn\":{}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartReplicationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\",\"StartReplicationTaskType\"],\"members\":{\"ReplicationTaskArn\":{},\"StartReplicationTaskType\":{},\"CdcStartTime\":{\"type\":\"timestamp\"},\"CdcStartPosition\":{},\"CdcStopPosition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"StartReplicationTaskAssessment\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\"],\"members\":{\"ReplicationTaskArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"StartReplicationTaskAssessmentRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\",\"ServiceAccessRoleArn\",\"ResultLocationBucket\",\"AssessmentRunName\"],\"members\":{\"ReplicationTaskArn\":{},\"ServiceAccessRoleArn\":{},\"ResultLocationBucket\":{},\"ResultLocationFolder\":{},\"ResultEncryptionMode\":{},\"ResultKmsKeyArn\":{},\"AssessmentRunName\":{},\"IncludeOnly\":{\"type\":\"list\",\"member\":{}},\"Exclude\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskAssessmentRun\":{\"shape\":\"Se\"}}}},\"StopReplicationTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationTaskArn\"],\"members\":{\"ReplicationTaskArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationTask\":{\"shape\":\"S29\"}}}},\"TestConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationInstanceArn\",\"EndpointArn\"],\"members\":{\"ReplicationInstanceArn\":{},\"EndpointArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"S2i\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S8\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"PendingMaintenanceActionDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"AutoAppliedAfterDate\":{\"type\":\"timestamp\"},\"ForcedApplyDate\":{\"type\":\"timestamp\"},\"OptInStatus\":{},\"CurrentApplyDate\":{\"type\":\"timestamp\"},\"Description\":{}}}}}},\"Se\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskAssessmentRunArn\":{},\"ReplicationTaskArn\":{},\"Status\":{},\"ReplicationTaskAssessmentRunCreationDate\":{\"type\":\"timestamp\"},\"AssessmentProgress\":{\"type\":\"structure\",\"members\":{\"IndividualAssessmentCount\":{\"type\":\"integer\"},\"IndividualAssessmentCompletedCount\":{\"type\":\"integer\"}}},\"LastFailureMessage\":{},\"ServiceAccessRoleArn\":{},\"ResultLocationBucket\":{},\"ResultLocationFolder\":{},\"ResultEncryptionMode\":{},\"ResultKmsKeyArn\":{},\"AssessmentRunName\":{}}},\"Sj\":{\"type\":\"string\",\"sensitive\":true},\"Sm\":{\"type\":\"structure\",\"required\":[\"ServiceAccessRoleArn\"],\"members\":{\"ServiceAccessRoleArn\":{}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"ServiceAccessRoleArn\":{},\"ExternalTableDefinition\":{},\"CsvRowDelimiter\":{},\"CsvDelimiter\":{},\"BucketFolder\":{},\"BucketName\":{},\"CompressionType\":{},\"EncryptionMode\":{},\"ServerSideEncryptionKmsKeyId\":{},\"DataFormat\":{},\"EncodingType\":{},\"DictPageSizeLimit\":{\"type\":\"integer\"},\"RowGroupLength\":{\"type\":\"integer\"},\"DataPageSize\":{\"type\":\"integer\"},\"ParquetVersion\":{},\"EnableStatistics\":{\"type\":\"boolean\"},\"IncludeOpForFullLoad\":{\"type\":\"boolean\"},\"CdcInsertsOnly\":{\"type\":\"boolean\"},\"TimestampColumnName\":{},\"ParquetTimestampInMillisecond\":{\"type\":\"boolean\"},\"CdcInsertsAndUpdates\":{\"type\":\"boolean\"},\"DatePartitionEnabled\":{\"type\":\"boolean\"},\"DatePartitionSequence\":{},\"DatePartitionDelimiter\":{},\"UseCsvNoSupValue\":{\"type\":\"boolean\"},\"CsvNoSupValue\":{},\"PreserveTransactions\":{\"type\":\"boolean\"},\"CdcPath\":{}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"ServiceAccessRoleArn\":{},\"BucketName\":{}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"Username\":{},\"Password\":{\"shape\":\"Sj\"},\"ServerName\":{},\"Port\":{\"type\":\"integer\"},\"DatabaseName\":{},\"AuthType\":{},\"AuthMechanism\":{},\"NestingLevel\":{},\"ExtractDocId\":{},\"DocsToInvestigate\":{},\"AuthSource\":{},\"KmsKeyId\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S11\":{\"type\":\"structure\",\"members\":{\"StreamArn\":{},\"MessageFormat\":{},\"ServiceAccessRoleArn\":{},\"IncludeTransactionDetails\":{\"type\":\"boolean\"},\"IncludePartitionValue\":{\"type\":\"boolean\"},\"PartitionIncludeSchemaTable\":{\"type\":\"boolean\"},\"IncludeTableAlterOperations\":{\"type\":\"boolean\"},\"IncludeControlDetails\":{\"type\":\"boolean\"},\"IncludeNullAndEmpty\":{\"type\":\"boolean\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"Broker\":{},\"Topic\":{},\"MessageFormat\":{},\"IncludeTransactionDetails\":{\"type\":\"boolean\"},\"IncludePartitionValue\":{\"type\":\"boolean\"},\"PartitionIncludeSchemaTable\":{\"type\":\"boolean\"},\"IncludeTableAlterOperations\":{\"type\":\"boolean\"},\"IncludeControlDetails\":{\"type\":\"boolean\"},\"MessageMaxBytes\":{\"type\":\"integer\"},\"IncludeNullAndEmpty\":{\"type\":\"boolean\"},\"SecurityProtocol\":{},\"SslClientCertificateArn\":{},\"SslClientKeyArn\":{},\"SslClientKeyPassword\":{\"shape\":\"Sj\"},\"SslCaCertificateArn\":{},\"SaslUsername\":{},\"SaslPassword\":{\"shape\":\"Sj\"}}},\"S15\":{\"type\":\"structure\",\"required\":[\"ServiceAccessRoleArn\",\"EndpointUri\"],\"members\":{\"ServiceAccessRoleArn\":{},\"EndpointUri\":{},\"FullLoadErrorPercentage\":{\"type\":\"integer\"},\"ErrorRetryDuration\":{\"type\":\"integer\"}}},\"S16\":{\"type\":\"structure\",\"required\":[\"S3BucketName\",\"S3BucketFolder\"],\"members\":{\"ServiceAccessRoleArn\":{},\"S3BucketName\":{},\"S3BucketFolder\":{},\"ErrorRetryDuration\":{\"type\":\"integer\"},\"MaxFileSize\":{\"type\":\"integer\"},\"MaxRetryCount\":{\"type\":\"integer\"},\"IamAuthEnabled\":{\"type\":\"boolean\"}}},\"S17\":{\"type\":\"structure\",\"members\":{\"AcceptAnyDate\":{\"type\":\"boolean\"},\"AfterConnectScript\":{},\"BucketFolder\":{},\"BucketName\":{},\"CaseSensitiveNames\":{\"type\":\"boolean\"},\"CompUpdate\":{\"type\":\"boolean\"},\"ConnectionTimeout\":{\"type\":\"integer\"},\"DatabaseName\":{},\"DateFormat\":{},\"EmptyAsNull\":{\"type\":\"boolean\"},\"EncryptionMode\":{},\"ExplicitIds\":{\"type\":\"boolean\"},\"FileTransferUploadStreams\":{\"type\":\"integer\"},\"LoadTimeout\":{\"type\":\"integer\"},\"MaxFileSize\":{\"type\":\"integer\"},\"Password\":{\"shape\":\"Sj\"},\"Port\":{\"type\":\"integer\"},\"RemoveQuotes\":{\"type\":\"boolean\"},\"ReplaceInvalidChars\":{},\"ReplaceChars\":{},\"ServerName\":{},\"ServiceAccessRoleArn\":{},\"ServerSideEncryptionKmsKeyId\":{},\"TimeFormat\":{},\"TrimBlanks\":{\"type\":\"boolean\"},\"TruncateColumns\":{\"type\":\"boolean\"},\"Username\":{},\"WriteBufferSize\":{\"type\":\"integer\"},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"AfterConnectScript\":{},\"CaptureDdls\":{\"type\":\"boolean\"},\"MaxFileSize\":{\"type\":\"integer\"},\"DatabaseName\":{},\"DdlArtifactsSchema\":{},\"ExecuteTimeout\":{\"type\":\"integer\"},\"FailTasksOnLobTruncation\":{\"type\":\"boolean\"},\"Password\":{\"shape\":\"Sj\"},\"Port\":{\"type\":\"integer\"},\"ServerName\":{},\"Username\":{},\"SlotName\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S19\":{\"type\":\"structure\",\"members\":{\"AfterConnectScript\":{},\"CleanSourceMetadataOnMismatch\":{\"type\":\"boolean\"},\"DatabaseName\":{},\"EventsPollInterval\":{\"type\":\"integer\"},\"TargetDbType\":{},\"MaxFileSize\":{\"type\":\"integer\"},\"ParallelLoadThreads\":{\"type\":\"integer\"},\"Password\":{\"shape\":\"Sj\"},\"Port\":{\"type\":\"integer\"},\"ServerName\":{},\"ServerTimezone\":{},\"Username\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"AddSupplementalLogging\":{\"type\":\"boolean\"},\"ArchivedLogDestId\":{\"type\":\"integer\"},\"AdditionalArchivedLogDestId\":{\"type\":\"integer\"},\"AllowSelectNestedTables\":{\"type\":\"boolean\"},\"ParallelAsmReadThreads\":{\"type\":\"integer\"},\"ReadAheadBlocks\":{\"type\":\"integer\"},\"AccessAlternateDirectly\":{\"type\":\"boolean\"},\"UseAlternateFolderForOnline\":{\"type\":\"boolean\"},\"OraclePathPrefix\":{},\"UsePathPrefix\":{},\"ReplacePathPrefix\":{\"type\":\"boolean\"},\"EnableHomogenousTablespace\":{\"type\":\"boolean\"},\"DirectPathNoLog\":{\"type\":\"boolean\"},\"ArchivedLogsOnly\":{\"type\":\"boolean\"},\"AsmPassword\":{\"shape\":\"Sj\"},\"AsmServer\":{},\"AsmUser\":{},\"CharLengthSemantics\":{},\"DatabaseName\":{},\"DirectPathParallelLoad\":{\"type\":\"boolean\"},\"FailTasksOnLobTruncation\":{\"type\":\"boolean\"},\"NumberDatatypeScale\":{\"type\":\"integer\"},\"Password\":{\"shape\":\"Sj\"},\"Port\":{\"type\":\"integer\"},\"ReadTableSpaceName\":{\"type\":\"boolean\"},\"RetryInterval\":{\"type\":\"integer\"},\"SecurityDbEncryption\":{\"shape\":\"Sj\"},\"SecurityDbEncryptionName\":{},\"ServerName\":{},\"SpatialDataOptionToGeoJsonFunctionName\":{},\"Username\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{},\"SecretsManagerOracleAsmAccessRoleArn\":{},\"SecretsManagerOracleAsmSecretId\":{}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"DatabaseName\":{},\"Password\":{\"shape\":\"Sj\"},\"Port\":{\"type\":\"integer\"},\"ServerName\":{},\"Username\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"Port\":{\"type\":\"integer\"},\"BcpPacketSize\":{\"type\":\"integer\"},\"DatabaseName\":{},\"ControlTablesFileGroup\":{},\"Password\":{\"shape\":\"Sj\"},\"QuerySingleAlwaysOnNode\":{\"type\":\"boolean\"},\"ReadBackupOnly\":{\"type\":\"boolean\"},\"SafeguardPolicy\":{},\"ServerName\":{},\"Username\":{},\"UseBcpFullLoad\":{\"type\":\"boolean\"},\"UseThirdPartyBackupDevice\":{\"type\":\"boolean\"},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S1g\":{\"type\":\"structure\",\"members\":{\"DatabaseName\":{},\"Password\":{\"shape\":\"Sj\"},\"Port\":{\"type\":\"integer\"},\"ServerName\":{},\"SetDataCaptureChanges\":{\"type\":\"boolean\"},\"CurrentLsn\":{},\"MaxKBytesPerRead\":{\"type\":\"integer\"},\"Username\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"Username\":{},\"Password\":{\"shape\":\"Sj\"},\"ServerName\":{},\"Port\":{\"type\":\"integer\"},\"DatabaseName\":{},\"NestingLevel\":{},\"ExtractDocId\":{\"type\":\"boolean\"},\"DocsToInvestigate\":{\"type\":\"integer\"},\"KmsKeyId\":{},\"SecretsManagerAccessRoleArn\":{},\"SecretsManagerSecretId\":{}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"EndpointIdentifier\":{},\"EndpointType\":{},\"EngineName\":{},\"EngineDisplayName\":{},\"Username\":{},\"ServerName\":{},\"Port\":{\"type\":\"integer\"},\"DatabaseName\":{},\"ExtraConnectionAttributes\":{},\"Status\":{},\"KmsKeyId\":{},\"EndpointArn\":{},\"CertificateArn\":{},\"SslMode\":{},\"ServiceAccessRoleArn\":{},\"ExternalTableDefinition\":{},\"ExternalId\":{},\"DynamoDbSettings\":{\"shape\":\"Sm\"},\"S3Settings\":{\"shape\":\"Sn\"},\"DmsTransferSettings\":{\"shape\":\"Sw\"},\"MongoDbSettings\":{\"shape\":\"Sx\"},\"KinesisSettings\":{\"shape\":\"S11\"},\"KafkaSettings\":{\"shape\":\"S13\"},\"ElasticsearchSettings\":{\"shape\":\"S15\"},\"NeptuneSettings\":{\"shape\":\"S16\"},\"RedshiftSettings\":{\"shape\":\"S17\"},\"PostgreSQLSettings\":{\"shape\":\"S18\"},\"MySQLSettings\":{\"shape\":\"S19\"},\"OracleSettings\":{\"shape\":\"S1b\"},\"SybaseSettings\":{\"shape\":\"S1d\"},\"MicrosoftSQLServerSettings\":{\"shape\":\"S1e\"},\"IBMDb2Settings\":{\"shape\":\"S1g\"},\"DocDbSettings\":{\"shape\":\"S1h\"}}},\"S1l\":{\"type\":\"list\",\"member\":{}},\"S1m\":{\"type\":\"list\",\"member\":{}},\"S1o\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S1m\"},\"EventCategoriesList\":{\"shape\":\"S1l\"},\"Enabled\":{\"type\":\"boolean\"}}},\"S1r\":{\"type\":\"list\",\"member\":{}},\"S1t\":{\"type\":\"structure\",\"members\":{\"ReplicationInstanceIdentifier\":{},\"ReplicationInstanceClass\":{},\"ReplicationInstanceStatus\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"VpcSecurityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"AvailabilityZone\":{},\"ReplicationSubnetGroup\":{\"shape\":\"S1w\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"ReplicationInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{}}},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"ReplicationInstanceArn\":{},\"ReplicationInstancePublicIpAddress\":{\"deprecated\":true},\"ReplicationInstancePrivateIpAddress\":{\"deprecated\":true},\"ReplicationInstancePublicIpAddresses\":{\"type\":\"list\",\"member\":{}},\"ReplicationInstancePrivateIpAddresses\":{\"type\":\"list\",\"member\":{}},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"SecondaryAvailabilityZone\":{},\"FreeUntil\":{\"type\":\"timestamp\"},\"DnsNameServers\":{}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"ReplicationSubnetGroupIdentifier\":{},\"ReplicationSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"type\":\"structure\",\"members\":{\"Name\":{}}},\"SubnetStatus\":{}}}}}},\"S24\":{\"type\":\"list\",\"member\":{}},\"S29\":{\"type\":\"structure\",\"members\":{\"ReplicationTaskIdentifier\":{},\"SourceEndpointArn\":{},\"TargetEndpointArn\":{},\"ReplicationInstanceArn\":{},\"MigrationType\":{},\"TableMappings\":{},\"ReplicationTaskSettings\":{},\"Status\":{},\"LastFailureMessage\":{},\"StopReason\":{},\"ReplicationTaskCreationDate\":{\"type\":\"timestamp\"},\"ReplicationTaskStartDate\":{\"type\":\"timestamp\"},\"CdcStartPosition\":{},\"CdcStopPosition\":{},\"RecoveryCheckpoint\":{},\"ReplicationTaskArn\":{},\"ReplicationTaskStats\":{\"type\":\"structure\",\"members\":{\"FullLoadProgressPercent\":{\"type\":\"integer\"},\"ElapsedTimeMillis\":{\"type\":\"long\"},\"TablesLoaded\":{\"type\":\"integer\"},\"TablesLoading\":{\"type\":\"integer\"},\"TablesQueued\":{\"type\":\"integer\"},\"TablesErrored\":{\"type\":\"integer\"},\"FreshStartDate\":{\"type\":\"timestamp\"},\"StartDate\":{\"type\":\"timestamp\"},\"StopDate\":{\"type\":\"timestamp\"},\"FullLoadStartDate\":{\"type\":\"timestamp\"},\"FullLoadFinishDate\":{\"type\":\"timestamp\"}}},\"TaskData\":{},\"TargetReplicationInstanceArn\":{}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"CertificateIdentifier\":{},\"CertificateCreationDate\":{\"type\":\"timestamp\"},\"CertificatePem\":{},\"CertificateWallet\":{\"type\":\"blob\"},\"CertificateArn\":{},\"CertificateOwner\":{},\"ValidFromDate\":{\"type\":\"timestamp\"},\"ValidToDate\":{\"type\":\"timestamp\"},\"SigningAlgorithm\":{},\"KeyLength\":{\"type\":\"integer\"}}},\"S2i\":{\"type\":\"structure\",\"members\":{\"ReplicationInstanceArn\":{},\"EndpointArn\":{},\"Status\":{},\"LastFailureMessage\":{},\"EndpointIdentifier\":{},\"ReplicationInstanceIdentifier\":{}}},\"S33\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"S4b\":{\"type\":\"structure\",\"members\":{\"EndpointArn\":{},\"ReplicationInstanceArn\":{},\"Status\":{},\"LastRefreshDate\":{\"type\":\"timestamp\"},\"LastFailureMessage\":{}}}}}");

/***/ }),

/***/ 170:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeApplicableIndividualAssessments\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeCertificates\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeConnections\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeEndpointSettings\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeEndpointTypes\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeEndpoints\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeOrderableReplicationInstances\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribePendingMaintenanceActions\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationInstanceTaskLogs\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationInstances\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationSubnetGroups\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationTaskAssessmentResults\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationTaskAssessmentRuns\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationTaskIndividualAssessments\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeReplicationTasks\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeSchemas\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"},\"DescribeTableStatistics\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"limit_key\":\"MaxRecords\"}}}");

/***/ }),

/***/ 31491:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"TestConnectionSucceeds\":{\"acceptors\":[{\"argument\":\"Connections[].Status\",\"expected\":\"successful\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"Connections[].Status\",\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":5,\"description\":\"Wait until testing connection succeeds.\",\"maxAttempts\":60,\"operation\":\"DescribeConnections\"},\"EndpointDeleted\":{\"acceptors\":[{\"expected\":\"ResourceNotFoundFault\",\"matcher\":\"error\",\"state\":\"success\"},{\"argument\":\"Endpoints[].Status\",\"expected\":\"active\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"Endpoints[].Status\",\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":5,\"description\":\"Wait until testing endpoint is deleted.\",\"maxAttempts\":60,\"operation\":\"DescribeEndpoints\"},\"ReplicationInstanceAvailable\":{\"acceptors\":[{\"argument\":\"ReplicationInstances[].ReplicationInstanceStatus\",\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"ReplicationInstances[].ReplicationInstanceStatus\",\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationInstances[].ReplicationInstanceStatus\",\"expected\":\"incompatible-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationInstances[].ReplicationInstanceStatus\",\"expected\":\"incompatible-network\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationInstances[].ReplicationInstanceStatus\",\"expected\":\"inaccessible-encryption-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":60,\"description\":\"Wait until DMS replication instance is available.\",\"maxAttempts\":60,\"operation\":\"DescribeReplicationInstances\"},\"ReplicationInstanceDeleted\":{\"acceptors\":[{\"argument\":\"ReplicationInstances[].ReplicationInstanceStatus\",\"expected\":\"available\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"ResourceNotFoundFault\",\"matcher\":\"error\",\"state\":\"success\"}],\"delay\":15,\"description\":\"Wait until DMS replication instance is deleted.\",\"maxAttempts\":60,\"operation\":\"DescribeReplicationInstances\"},\"ReplicationTaskReady\":{\"acceptors\":[{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"ready\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"starting\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"running\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"stopping\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"stopped\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"testing\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":15,\"description\":\"Wait until DMS replication task is ready.\",\"maxAttempts\":60,\"operation\":\"DescribeReplicationTasks\"},\"ReplicationTaskStopped\":{\"acceptors\":[{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"stopped\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"ready\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"starting\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"testing\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":15,\"description\":\"Wait until DMS replication task is stopped.\",\"maxAttempts\":60,\"operation\":\"DescribeReplicationTasks\"},\"ReplicationTaskRunning\":{\"acceptors\":[{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"running\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"ready\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"stopping\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"stopped\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"testing\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":15,\"description\":\"Wait until DMS replication task is running.\",\"maxAttempts\":60,\"operation\":\"DescribeReplicationTasks\"},\"ReplicationTaskDeleted\":{\"acceptors\":[{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"ready\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"stopped\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"running\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"ReplicationTasks[].Status\",\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"ResourceNotFoundFault\",\"matcher\":\"error\",\"state\":\"success\"}],\"delay\":15,\"description\":\"Wait until DMS replication task is deleted.\",\"maxAttempts\":60,\"operation\":\"DescribeReplicationTasks\"}}}");

/***/ }),

/***/ 78804:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-10-31\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon DocDB\",\"serviceFullName\":\"Amazon DocumentDB with MongoDB compatibility\",\"serviceId\":\"DocDB\",\"signatureVersion\":\"v4\",\"signingName\":\"rds\",\"uid\":\"docdb-2014-10-31\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2014-10-31/\"},\"operations\":{\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"ApplyPendingMaintenanceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceIdentifier\",\"ApplyAction\",\"OptInType\"],\"members\":{\"ResourceIdentifier\":{},\"ApplyAction\":{},\"OptInType\":{}}},\"output\":{\"resultWrapper\":\"ApplyPendingMaintenanceActionResult\",\"type\":\"structure\",\"members\":{\"ResourcePendingMaintenanceActions\":{\"shape\":\"Sd\"}}}},\"CopyDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBClusterParameterGroupIdentifier\",\"TargetDBClusterParameterGroupIdentifier\",\"TargetDBClusterParameterGroupDescription\"],\"members\":{\"SourceDBClusterParameterGroupIdentifier\":{},\"TargetDBClusterParameterGroupIdentifier\":{},\"TargetDBClusterParameterGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CopyDBClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBClusterParameterGroup\":{\"shape\":\"Sj\"}}}},\"CopyDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBClusterSnapshotIdentifier\",\"TargetDBClusterSnapshotIdentifier\"],\"members\":{\"SourceDBClusterSnapshotIdentifier\":{},\"TargetDBClusterSnapshotIdentifier\":{},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"CopyTags\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CopyDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"Sn\"}}}},\"CreateDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"Engine\",\"MasterUsername\",\"MasterUserPassword\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"So\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBClusterIdentifier\":{},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Ss\"},\"DBSubnetGroupName\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"MasterUserPassword\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"Tags\":{\"shape\":\"S9\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"EnableCloudwatchLogsExports\":{\"shape\":\"St\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"CreateDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBClusterParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBClusterParameterGroup\":{\"shape\":\"Sj\"}}}},\"CreateDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\",\"DBClusterIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{},\"DBClusterIdentifier\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"Sn\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBInstanceClass\",\"Engine\",\"DBClusterIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"AvailabilityZone\":{},\"PreferredMaintenanceWindow\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"},\"DBClusterIdentifier\":{},\"PromotionTier\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S18\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1j\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S1a\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"SourceIds\":{\"shape\":\"S5\"},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"DeleteDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"DeleteDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{}}}},\"DeleteDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"Sn\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S18\"}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"DescribeCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateIdentifier\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCertificatesResult\",\"type\":\"structure\",\"members\":{\"Certificates\":{\"type\":\"list\",\"member\":{\"locationName\":\"Certificate\",\"type\":\"structure\",\"members\":{\"CertificateIdentifier\":{},\"CertificateType\":{},\"Thumbprint\":{},\"ValidFrom\":{\"type\":\"timestamp\"},\"ValidTill\":{\"type\":\"timestamp\"},\"CertificateArn\":{}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribeDBClusterParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sj\",\"locationName\":\"DBClusterParameterGroup\"}}}}},\"DescribeDBClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S29\"},\"Marker\":{}}}},\"DescribeDBClusterSnapshotAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterSnapshotAttributesResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshotAttributesResult\":{\"shape\":\"S2e\"}}}},\"DescribeDBClusterSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"DBClusterSnapshotIdentifier\":{},\"SnapshotType\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"IncludeShared\":{\"type\":\"boolean\"},\"IncludePublic\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\",\"locationName\":\"DBClusterSnapshot\"}}}}},\"DescribeDBClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClustersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\",\"locationName\":\"DBCluster\"}}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"},\"ListSupportedTimezones\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"ValidUpgradeTarget\":{\"type\":\"list\",\"member\":{\"locationName\":\"UpgradeTarget\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"Description\":{},\"AutoUpgrade\":{\"type\":\"boolean\"},\"IsMajorVersionUpgrade\":{\"type\":\"boolean\"}}}},\"ExportableLogTypes\":{\"shape\":\"St\"},\"SupportsLogExportsToCloudwatchLogs\":{\"type\":\"boolean\"}}}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1a\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultClusterParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S29\"}},\"wrapper\":true}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Filters\":{\"shape\":\"S1y\"}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S6\"},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Date\":{\"type\":\"timestamp\"},\"SourceArn\":{}}}}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"Vpc\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S1y\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S1d\",\"locationName\":\"AvailabilityZone\"}},\"Vpc\":{\"type\":\"boolean\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribePendingMaintenanceActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"Filters\":{\"shape\":\"S1y\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribePendingMaintenanceActionsResult\",\"type\":\"structure\",\"members\":{\"PendingMaintenanceActions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\",\"locationName\":\"ResourcePendingMaintenanceActions\"}},\"Marker\":{}}}},\"FailoverDBCluster\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"TargetDBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"FailoverDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{},\"Filters\":{\"shape\":\"S1y\"}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S9\"}}}},\"ModifyDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"NewDBClusterIdentifier\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Ss\"},\"Port\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"CloudwatchLogsExportConfiguration\":{\"type\":\"structure\",\"members\":{\"EnableLogTypes\":{\"shape\":\"St\"},\"DisableLogTypes\":{\"shape\":\"St\"}}},\"EngineVersion\":{},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"ModifyDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\",\"Parameters\"],\"members\":{\"DBClusterParameterGroupName\":{},\"Parameters\":{\"shape\":\"S29\"}}},\"output\":{\"shape\":\"S3v\",\"resultWrapper\":\"ModifyDBClusterParameterGroupResult\"}},\"ModifyDBClusterSnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\",\"AttributeName\"],\"members\":{\"DBClusterSnapshotIdentifier\":{},\"AttributeName\":{},\"ValuesToAdd\":{\"shape\":\"S2h\"},\"ValuesToRemove\":{\"shape\":\"S2h\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterSnapshotAttributeResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshotAttributesResult\":{\"shape\":\"S2e\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"PreferredMaintenanceWindow\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"NewDBInstanceIdentifier\":{},\"CACertificateIdentifier\":{},\"PromotionTier\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S18\"}}}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1j\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S1a\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S18\"}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S29\"}}},\"output\":{\"shape\":\"S3v\",\"resultWrapper\":\"ResetDBClusterParameterGroupResult\"}},\"RestoreDBClusterFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"SnapshotIdentifier\",\"Engine\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"So\"},\"DBClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"DBSubnetGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Ss\"},\"Tags\":{\"shape\":\"S9\"},\"KmsKeyId\":{},\"EnableCloudwatchLogsExports\":{\"shape\":\"St\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterFromSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"RestoreDBClusterToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"SourceDBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"SourceDBClusterIdentifier\":{},\"RestoreToTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"DBSubnetGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Ss\"},\"Tags\":{\"shape\":\"S9\"},\"KmsKeyId\":{},\"EnableCloudwatchLogsExports\":{\"shape\":\"St\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"StartDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StartDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}},\"StopDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StopDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sv\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S5\"},\"EventCategoriesList\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"},\"EventSubscriptionArn\":{}},\"wrapper\":true},\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S6\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"S9\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"PendingMaintenanceActionDetails\":{\"type\":\"list\",\"member\":{\"locationName\":\"PendingMaintenanceAction\",\"type\":\"structure\",\"members\":{\"Action\":{},\"AutoAppliedAfterDate\":{\"type\":\"timestamp\"},\"ForcedApplyDate\":{\"type\":\"timestamp\"},\"OptInStatus\":{},\"CurrentApplyDate\":{\"type\":\"timestamp\"},\"Description\":{}}}}},\"wrapper\":true},\"Sj\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"DBClusterParameterGroupArn\":{}},\"wrapper\":true},\"Sn\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"So\"},\"DBClusterSnapshotIdentifier\":{},\"DBClusterIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"VpcId\":{},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"SnapshotType\":{},\"PercentProgress\":{\"type\":\"integer\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DBClusterSnapshotArn\":{},\"SourceDBClusterSnapshotArn\":{}},\"wrapper\":true},\"So\":{\"type\":\"list\",\"member\":{\"locationName\":\"AvailabilityZone\"}},\"Ss\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"St\":{\"type\":\"list\",\"member\":{}},\"Sv\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"So\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBClusterIdentifier\":{},\"DBClusterParameterGroup\":{},\"DBSubnetGroup\":{},\"Status\":{},\"PercentProgress\":{},\"EarliestRestorableTime\":{\"type\":\"timestamp\"},\"Endpoint\":{},\"ReaderEndpoint\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Engine\":{},\"EngineVersion\":{},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"DBClusterMembers\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterMember\",\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"IsClusterWriter\":{\"type\":\"boolean\"},\"DBClusterParameterGroupStatus\":{},\"PromotionTier\":{\"type\":\"integer\"}},\"wrapper\":true}},\"VpcSecurityGroups\":{\"shape\":\"Sy\"},\"HostedZoneId\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbClusterResourceId\":{},\"DBClusterArn\":{},\"AssociatedRoles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterRole\",\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"Status\":{}}}},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"EnabledCloudwatchLogsExports\":{\"shape\":\"St\"},\"DeletionProtection\":{\"type\":\"boolean\"}},\"wrapper\":true},\"Sy\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S18\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"},\"HostedZoneId\":{}}},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"VpcSecurityGroups\":{\"shape\":\"Sy\"},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S1a\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{},\"StorageType\":{},\"CACertificateIdentifier\":{},\"DBSubnetGroupName\":{},\"PendingCloudwatchLogsExports\":{\"type\":\"structure\",\"members\":{\"LogTypesToEnable\":{\"shape\":\"St\"},\"LogTypesToDisable\":{\"shape\":\"St\"}}}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"StatusInfos\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceStatusInfo\",\"type\":\"structure\",\"members\":{\"StatusType\":{},\"Normal\":{\"type\":\"boolean\"},\"Status\":{},\"Message\":{}}}},\"DBClusterIdentifier\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbiResourceId\":{},\"CACertificateIdentifier\":{},\"PromotionTier\":{\"type\":\"integer\"},\"DBInstanceArn\":{},\"EnabledCloudwatchLogsExports\":{\"shape\":\"St\"}},\"wrapper\":true},\"S1a\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S1d\"},\"SubnetStatus\":{}}}},\"DBSubnetGroupArn\":{}},\"wrapper\":true},\"S1d\":{\"type\":\"structure\",\"members\":{\"Name\":{}},\"wrapper\":true},\"S1j\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S1y\":{\"type\":\"list\",\"member\":{\"locationName\":\"Filter\",\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"locationName\":\"Value\"}}}}},\"S29\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{}}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"DBClusterSnapshotIdentifier\":{},\"DBClusterSnapshotAttributes\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterSnapshotAttribute\",\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValues\":{\"shape\":\"S2h\"}}}}},\"wrapper\":true},\"S2h\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeValue\"}},\"S3v\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{}}}}}");

/***/ }),

/***/ 97929:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCertificates\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Certificates\"},\"DescribeDBClusterParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterParameterGroups\"},\"DescribeDBClusterParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBClusterSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterSnapshots\"},\"DescribeDBClusters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusters\"},\"DescribeDBEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBEngineVersions\"},\"DescribeDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstances\"},\"DescribeDBSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSubnetGroups\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeOrderableDBInstanceOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableDBInstanceOptions\"},\"DescribePendingMaintenanceActions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"PendingMaintenanceActions\"},\"ListTagsForResource\":{\"result_key\":\"TagList\"}}}");

/***/ }),

/***/ 61159:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DBInstanceAvailable\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]},\"DBInstanceDeleted\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"DBInstanceNotFound\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"resetting-master-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]}}}");

/***/ }),

/***/ 3174:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-04-16\",\"endpointPrefix\":\"ds\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Directory Service\",\"serviceFullName\":\"AWS Directory Service\",\"serviceId\":\"Directory Service\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"DirectoryService_20150416\",\"uid\":\"ds-2015-04-16\"},\"operations\":{\"AcceptSharedDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"SharedDirectoryId\"],\"members\":{\"SharedDirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SharedDirectory\":{\"shape\":\"S4\"}}}},\"AddIpRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"IpRoutes\"],\"members\":{\"DirectoryId\":{},\"IpRoutes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CidrIp\":{},\"Description\":{}}}},\"UpdateSecurityGroupForDirectoryControllers\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddRegion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RegionName\",\"VPCSettings\"],\"members\":{\"DirectoryId\":{},\"RegionName\":{},\"VPCSettings\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Tags\"],\"members\":{\"ResourceId\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelSchemaExtension\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"SchemaExtensionId\"],\"members\":{\"DirectoryId\":{},\"SchemaExtensionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ConnectDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Password\",\"Size\",\"ConnectSettings\"],\"members\":{\"Name\":{},\"ShortName\":{},\"Password\":{\"shape\":\"S12\"},\"Description\":{},\"Size\":{},\"ConnectSettings\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"SubnetIds\",\"CustomerDnsIps\",\"CustomerUserName\"],\"members\":{\"VpcId\":{},\"SubnetIds\":{\"shape\":\"Sm\"},\"CustomerDnsIps\":{\"shape\":\"S15\"},\"CustomerUserName\":{}}},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{}}}},\"CreateAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"Alias\"],\"members\":{\"DirectoryId\":{},\"Alias\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"Alias\":{}}}},\"CreateComputer\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"ComputerName\",\"Password\"],\"members\":{\"DirectoryId\":{},\"ComputerName\":{},\"Password\":{\"type\":\"string\",\"sensitive\":true},\"OrganizationalUnitDistinguishedName\":{},\"ComputerAttributes\":{\"shape\":\"S1g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Computer\":{\"type\":\"structure\",\"members\":{\"ComputerId\":{},\"ComputerName\":{},\"ComputerAttributes\":{\"shape\":\"S1g\"}}}}}},\"CreateConditionalForwarder\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RemoteDomainName\",\"DnsIpAddrs\"],\"members\":{\"DirectoryId\":{},\"RemoteDomainName\":{},\"DnsIpAddrs\":{\"shape\":\"S15\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Password\",\"Size\"],\"members\":{\"Name\":{},\"ShortName\":{},\"Password\":{\"shape\":\"S1r\"},\"Description\":{},\"Size\":{},\"VpcSettings\":{\"shape\":\"Sk\"},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{}}}},\"CreateLogSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"LogGroupName\"],\"members\":{\"DirectoryId\":{},\"LogGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateMicrosoftAD\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Password\",\"VpcSettings\"],\"members\":{\"Name\":{},\"ShortName\":{},\"Password\":{\"shape\":\"S1r\"},\"Description\":{},\"VpcSettings\":{\"shape\":\"Sk\"},\"Edition\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{}}}},\"CreateSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SnapshotId\":{}}}},\"CreateTrust\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RemoteDomainName\",\"TrustPassword\",\"TrustDirection\"],\"members\":{\"DirectoryId\":{},\"RemoteDomainName\":{},\"TrustPassword\":{\"type\":\"string\",\"sensitive\":true},\"TrustDirection\":{},\"TrustType\":{},\"ConditionalForwarderIpAddrs\":{\"shape\":\"S15\"},\"SelectiveAuth\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrustId\":{}}}},\"DeleteConditionalForwarder\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RemoteDomainName\"],\"members\":{\"DirectoryId\":{},\"RemoteDomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{}}}},\"DeleteLogSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\"],\"members\":{\"SnapshotId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SnapshotId\":{}}}},\"DeleteTrust\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrustId\"],\"members\":{\"TrustId\":{},\"DeleteAssociatedConditionalForwarder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrustId\":{}}}},\"DeregisterCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"CertificateId\"],\"members\":{\"DirectoryId\":{},\"CertificateId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterEventTopic\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"TopicName\"],\"members\":{\"DirectoryId\":{},\"TopicName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"CertificateId\"],\"members\":{\"DirectoryId\":{},\"CertificateId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{\"type\":\"structure\",\"members\":{\"CertificateId\":{},\"State\":{},\"StateReason\":{},\"CommonName\":{},\"RegisteredDateTime\":{\"type\":\"timestamp\"},\"ExpiryDateTime\":{\"type\":\"timestamp\"},\"Type\":{},\"ClientCertAuthSettings\":{\"shape\":\"S30\"}}}}}},\"DescribeConditionalForwarders\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"RemoteDomainNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConditionalForwarders\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RemoteDomainName\":{},\"DnsIpAddrs\":{\"shape\":\"S15\"},\"ReplicationScope\":{}}}}}}},\"DescribeDirectories\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryIds\":{\"shape\":\"S39\"},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"Name\":{},\"ShortName\":{},\"Size\":{},\"Edition\":{},\"Alias\":{},\"AccessUrl\":{},\"Description\":{},\"DnsIpAddrs\":{\"shape\":\"S15\"},\"Stage\":{},\"ShareStatus\":{},\"ShareMethod\":{},\"ShareNotes\":{\"shape\":\"S8\"},\"LaunchTime\":{\"type\":\"timestamp\"},\"StageLastUpdatedDateTime\":{\"type\":\"timestamp\"},\"Type\":{},\"VpcSettings\":{\"shape\":\"S3j\"},\"ConnectSettings\":{\"type\":\"structure\",\"members\":{\"VpcId\":{},\"SubnetIds\":{\"shape\":\"Sm\"},\"CustomerUserName\":{},\"SecurityGroupId\":{},\"AvailabilityZones\":{\"shape\":\"S3l\"},\"ConnectIps\":{\"type\":\"list\",\"member\":{}}}},\"RadiusSettings\":{\"shape\":\"S3p\"},\"RadiusStatus\":{},\"StageReason\":{},\"SsoEnabled\":{\"type\":\"boolean\"},\"DesiredNumberOfDomainControllers\":{\"type\":\"integer\"},\"OwnerDirectoryDescription\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"AccountId\":{},\"DnsIpAddrs\":{\"shape\":\"S15\"},\"VpcSettings\":{\"shape\":\"S3j\"},\"RadiusSettings\":{\"shape\":\"S3p\"},\"RadiusStatus\":{}}},\"RegionsInfo\":{\"type\":\"structure\",\"members\":{\"PrimaryRegion\":{},\"AdditionalRegions\":{\"type\":\"list\",\"member\":{}}}}}}},\"NextToken\":{}}}},\"DescribeDomainControllers\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"DomainControllerIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainControllers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"DomainControllerId\":{},\"DnsIpAddr\":{},\"VpcId\":{},\"SubnetId\":{},\"AvailabilityZone\":{},\"Status\":{},\"StatusReason\":{},\"LaunchTime\":{\"type\":\"timestamp\"},\"StatusLastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeEventTopics\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"TopicNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventTopics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"TopicName\":{},\"TopicArn\":{},\"CreatedDateTime\":{\"type\":\"timestamp\"},\"Status\":{}}}}}}},\"DescribeLDAPSSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"Type\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LDAPSSettingsInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LDAPSStatus\":{},\"LDAPSStatusReason\":{},\"LastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeRegions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"RegionName\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegionsDescription\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"RegionName\":{},\"RegionType\":{},\"Status\":{},\"VpcSettings\":{\"shape\":\"Sk\"},\"DesiredNumberOfDomainControllers\":{\"type\":\"integer\"},\"LaunchTime\":{\"type\":\"timestamp\"},\"StatusLastUpdatedDateTime\":{\"type\":\"timestamp\"},\"LastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeSharedDirectories\":{\"input\":{\"type\":\"structure\",\"required\":[\"OwnerDirectoryId\"],\"members\":{\"OwnerDirectoryId\":{},\"SharedDirectoryIds\":{\"shape\":\"S39\"},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SharedDirectories\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"NextToken\":{}}}},\"DescribeSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"SnapshotIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Snapshots\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"SnapshotId\":{},\"Type\":{},\"Name\":{},\"Status\":{},\"StartTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeTrusts\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"TrustIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Trusts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"TrustId\":{},\"RemoteDomainName\":{},\"TrustType\":{},\"TrustDirection\":{},\"TrustState\":{},\"CreatedDateTime\":{\"type\":\"timestamp\"},\"LastUpdatedDateTime\":{\"type\":\"timestamp\"},\"StateLastUpdatedDateTime\":{\"type\":\"timestamp\"},\"TrustStateReason\":{},\"SelectiveAuth\":{}}}},\"NextToken\":{}}}},\"DisableClientAuthentication\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"Type\"],\"members\":{\"DirectoryId\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableLDAPS\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"Type\"],\"members\":{\"DirectoryId\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableRadius\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableSso\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"UserName\":{},\"Password\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableClientAuthentication\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"Type\"],\"members\":{\"DirectoryId\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableLDAPS\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"Type\"],\"members\":{\"DirectoryId\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableRadius\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RadiusSettings\"],\"members\":{\"DirectoryId\":{},\"RadiusSettings\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableSso\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"UserName\":{},\"Password\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetDirectoryLimits\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"DirectoryLimits\":{\"type\":\"structure\",\"members\":{\"CloudOnlyDirectoriesLimit\":{\"type\":\"integer\"},\"CloudOnlyDirectoriesCurrentCount\":{\"type\":\"integer\"},\"CloudOnlyDirectoriesLimitReached\":{\"type\":\"boolean\"},\"CloudOnlyMicrosoftADLimit\":{\"type\":\"integer\"},\"CloudOnlyMicrosoftADCurrentCount\":{\"type\":\"integer\"},\"CloudOnlyMicrosoftADLimitReached\":{\"type\":\"boolean\"},\"ConnectedDirectoriesLimit\":{\"type\":\"integer\"},\"ConnectedDirectoriesCurrentCount\":{\"type\":\"integer\"},\"ConnectedDirectoriesLimitReached\":{\"type\":\"boolean\"}}}}}},\"GetSnapshotLimits\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SnapshotLimits\":{\"type\":\"structure\",\"members\":{\"ManualSnapshotsLimit\":{\"type\":\"integer\"},\"ManualSnapshotsCurrentCount\":{\"type\":\"integer\"},\"ManualSnapshotsLimitReached\":{\"type\":\"boolean\"}}}}}},\"ListCertificates\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"CertificatesInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CertificateId\":{},\"CommonName\":{},\"State\":{},\"ExpiryDateTime\":{\"type\":\"timestamp\"},\"Type\":{}}}}}}},\"ListIpRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IpRoutesInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"CidrIp\":{},\"IpRouteStatusMsg\":{},\"AddedDateTime\":{\"type\":\"timestamp\"},\"IpRouteStatusReason\":{},\"Description\":{}}}},\"NextToken\":{}}}},\"ListLogSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LogSubscriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"LogGroupName\":{},\"SubscriptionCreatedDateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListSchemaExtensions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaExtensionsInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"SchemaExtensionId\":{},\"Description\":{},\"SchemaExtensionStatus\":{},\"SchemaExtensionStatusReason\":{},\"StartDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sr\"},\"NextToken\":{}}}},\"RegisterCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"CertificateData\"],\"members\":{\"DirectoryId\":{},\"CertificateData\":{},\"Type\":{},\"ClientCertAuthSettings\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateId\":{}}}},\"RegisterEventTopic\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"TopicName\"],\"members\":{\"DirectoryId\":{},\"TopicName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RejectSharedDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"SharedDirectoryId\"],\"members\":{\"SharedDirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SharedDirectoryId\":{}}}},\"RemoveIpRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"CidrIps\"],\"members\":{\"DirectoryId\":{},\"CidrIps\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveRegion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagKeys\"],\"members\":{\"ResourceId\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ResetUserPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"UserName\",\"NewPassword\"],\"members\":{\"DirectoryId\":{},\"UserName\":{},\"NewPassword\":{\"type\":\"string\",\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RestoreFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\"],\"members\":{\"SnapshotId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ShareDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"ShareTarget\",\"ShareMethod\"],\"members\":{\"DirectoryId\":{},\"ShareNotes\":{\"shape\":\"S8\"},\"ShareTarget\":{\"type\":\"structure\",\"required\":[\"Id\",\"Type\"],\"members\":{\"Id\":{},\"Type\":{}}},\"ShareMethod\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SharedDirectoryId\":{}}}},\"StartSchemaExtension\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"CreateSnapshotBeforeSchemaExtension\",\"LdifContent\",\"Description\"],\"members\":{\"DirectoryId\":{},\"CreateSnapshotBeforeSchemaExtension\":{\"type\":\"boolean\"},\"LdifContent\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaExtensionId\":{}}}},\"UnshareDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"UnshareTarget\"],\"members\":{\"DirectoryId\":{},\"UnshareTarget\":{\"type\":\"structure\",\"required\":[\"Id\",\"Type\"],\"members\":{\"Id\":{},\"Type\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SharedDirectoryId\":{}}}},\"UpdateConditionalForwarder\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RemoteDomainName\",\"DnsIpAddrs\"],\"members\":{\"DirectoryId\":{},\"RemoteDomainName\":{},\"DnsIpAddrs\":{\"shape\":\"S15\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateNumberOfDomainControllers\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"DesiredNumber\"],\"members\":{\"DirectoryId\":{},\"DesiredNumber\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRadius\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"RadiusSettings\"],\"members\":{\"DirectoryId\":{},\"RadiusSettings\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateTrust\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrustId\"],\"members\":{\"TrustId\":{},\"SelectiveAuth\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"TrustId\":{}}}},\"VerifyTrust\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrustId\"],\"members\":{\"TrustId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrustId\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"OwnerAccountId\":{},\"OwnerDirectoryId\":{},\"ShareMethod\":{},\"SharedAccountId\":{},\"SharedDirectoryId\":{},\"ShareStatus\":{},\"ShareNotes\":{\"shape\":\"S8\"},\"CreatedDateTime\":{\"type\":\"timestamp\"},\"LastUpdatedDateTime\":{\"type\":\"timestamp\"}}},\"S8\":{\"type\":\"string\",\"sensitive\":true},\"Sk\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"SubnetIds\"],\"members\":{\"VpcId\":{},\"SubnetIds\":{\"shape\":\"Sm\"}}},\"Sm\":{\"type\":\"list\",\"member\":{}},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S12\":{\"type\":\"string\",\"sensitive\":true},\"S15\":{\"type\":\"list\",\"member\":{}},\"S1g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"S1r\":{\"type\":\"string\",\"sensitive\":true},\"S30\":{\"type\":\"structure\",\"members\":{\"OCSPUrl\":{}}},\"S39\":{\"type\":\"list\",\"member\":{}},\"S3j\":{\"type\":\"structure\",\"members\":{\"VpcId\":{},\"SubnetIds\":{\"shape\":\"Sm\"},\"SecurityGroupId\":{},\"AvailabilityZones\":{\"shape\":\"S3l\"}}},\"S3l\":{\"type\":\"list\",\"member\":{}},\"S3p\":{\"type\":\"structure\",\"members\":{\"RadiusServers\":{\"type\":\"list\",\"member\":{}},\"RadiusPort\":{\"type\":\"integer\"},\"RadiusTimeout\":{\"type\":\"integer\"},\"RadiusRetries\":{\"type\":\"integer\"},\"SharedSecret\":{\"type\":\"string\",\"sensitive\":true},\"AuthenticationProtocol\":{},\"DisplayLabel\":{},\"UseSameUsername\":{\"type\":\"boolean\"}}}}}");

/***/ }),

/***/ 1714:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDomainControllers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\"}}}");

/***/ }),

/***/ 59225:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2011-12-05\",\"endpointPrefix\":\"dynamodb\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"DynamoDB\",\"serviceFullName\":\"Amazon DynamoDB\",\"serviceId\":\"DynamoDB\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"DynamoDB_20111205\",\"uid\":\"dynamodb-2011-12-05\"},\"operations\":{\"BatchGetItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"RequestItems\"],\"members\":{\"RequestItems\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"Sk\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"UnprocessedKeys\":{\"shape\":\"S2\"}}}},\"BatchWriteItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"RequestItems\"],\"members\":{\"RequestItems\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"UnprocessedItems\":{\"shape\":\"So\"}}}},\"CreateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"KeySchema\",\"ProvisionedThroughput\"],\"members\":{\"TableName\":{},\"KeySchema\":{\"shape\":\"Sy\"},\"ProvisionedThroughput\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S15\"}}}},\"DeleteItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Key\"],\"members\":{\"TableName\":{},\"Key\":{\"shape\":\"S6\"},\"Expected\":{\"shape\":\"S1b\"},\"ReturnValues\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sl\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"DeleteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S15\"}}}},\"DescribeTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"S15\"}}}},\"GetItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Key\"],\"members\":{\"TableName\":{},\"Key\":{\"shape\":\"S6\"},\"AttributesToGet\":{\"shape\":\"Se\"},\"ConsistentRead\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Item\":{\"shape\":\"Sl\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"ListTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExclusiveStartTableName\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableNames\":{\"type\":\"list\",\"member\":{}},\"LastEvaluatedTableName\":{}}}},\"PutItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Item\"],\"members\":{\"TableName\":{},\"Item\":{\"shape\":\"Ss\"},\"Expected\":{\"shape\":\"S1b\"},\"ReturnValues\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sl\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"Query\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"HashKeyValue\"],\"members\":{\"TableName\":{},\"AttributesToGet\":{\"shape\":\"Se\"},\"Limit\":{\"type\":\"integer\"},\"ConsistentRead\":{\"type\":\"boolean\"},\"Count\":{\"type\":\"boolean\"},\"HashKeyValue\":{\"shape\":\"S7\"},\"RangeKeyCondition\":{\"shape\":\"S1u\"},\"ScanIndexForward\":{\"type\":\"boolean\"},\"ExclusiveStartKey\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"Sk\"},\"Count\":{\"type\":\"integer\"},\"LastEvaluatedKey\":{\"shape\":\"S6\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"Scan\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{},\"AttributesToGet\":{\"shape\":\"Se\"},\"Limit\":{\"type\":\"integer\"},\"Count\":{\"type\":\"boolean\"},\"ScanFilter\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S1u\"}},\"ExclusiveStartKey\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"Sk\"},\"Count\":{\"type\":\"integer\"},\"ScannedCount\":{\"type\":\"integer\"},\"LastEvaluatedKey\":{\"shape\":\"S6\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"UpdateItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Key\",\"AttributeUpdates\"],\"members\":{\"TableName\":{},\"Key\":{\"shape\":\"S6\"},\"AttributeUpdates\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Value\":{\"shape\":\"S7\"},\"Action\":{}}}},\"Expected\":{\"shape\":\"S1b\"},\"ReturnValues\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sl\"},\"ConsumedCapacityUnits\":{\"type\":\"double\"}}}},\"UpdateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"ProvisionedThroughput\"],\"members\":{\"TableName\":{},\"ProvisionedThroughput\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S15\"}}}}},\"shapes\":{\"S2\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Keys\"],\"members\":{\"Keys\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"AttributesToGet\":{\"shape\":\"Se\"},\"ConsistentRead\":{\"type\":\"boolean\"}}}},\"S6\":{\"type\":\"structure\",\"required\":[\"HashKeyElement\"],\"members\":{\"HashKeyElement\":{\"shape\":\"S7\"},\"RangeKeyElement\":{\"shape\":\"S7\"}}},\"S7\":{\"type\":\"structure\",\"members\":{\"S\":{},\"N\":{},\"B\":{\"type\":\"blob\"},\"SS\":{\"type\":\"list\",\"member\":{}},\"NS\":{\"type\":\"list\",\"member\":{}},\"BS\":{\"type\":\"list\",\"member\":{\"type\":\"blob\"}}}},\"Se\":{\"type\":\"list\",\"member\":{}},\"Sk\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\"}},\"Sl\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S7\"}},\"So\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PutRequest\":{\"type\":\"structure\",\"required\":[\"Item\"],\"members\":{\"Item\":{\"shape\":\"Ss\"}}},\"DeleteRequest\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{\"shape\":\"S6\"}}}}}}},\"Ss\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S7\"}},\"Sy\":{\"type\":\"structure\",\"required\":[\"HashKeyElement\"],\"members\":{\"HashKeyElement\":{\"shape\":\"Sz\"},\"RangeKeyElement\":{\"shape\":\"Sz\"}}},\"Sz\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"AttributeType\"],\"members\":{\"AttributeName\":{},\"AttributeType\":{}}},\"S12\":{\"type\":\"structure\",\"required\":[\"ReadCapacityUnits\",\"WriteCapacityUnits\"],\"members\":{\"ReadCapacityUnits\":{\"type\":\"long\"},\"WriteCapacityUnits\":{\"type\":\"long\"}}},\"S15\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"KeySchema\":{\"shape\":\"Sy\"},\"TableStatus\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"ProvisionedThroughput\":{\"type\":\"structure\",\"members\":{\"LastIncreaseDateTime\":{\"type\":\"timestamp\"},\"LastDecreaseDateTime\":{\"type\":\"timestamp\"},\"NumberOfDecreasesToday\":{\"type\":\"long\"},\"ReadCapacityUnits\":{\"type\":\"long\"},\"WriteCapacityUnits\":{\"type\":\"long\"}}},\"TableSizeBytes\":{\"type\":\"long\"},\"ItemCount\":{\"type\":\"long\"}}},\"S1b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Value\":{\"shape\":\"S7\"},\"Exists\":{\"type\":\"boolean\"}}}},\"S1u\":{\"type\":\"structure\",\"required\":[\"ComparisonOperator\"],\"members\":{\"AttributeValueList\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"ComparisonOperator\":{}}}}}");

/***/ }),

/***/ 30867:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"BatchGetItem\":{\"input_token\":\"RequestItems\",\"output_token\":\"UnprocessedKeys\"},\"ListTables\":{\"input_token\":\"ExclusiveStartTableName\",\"limit_key\":\"Limit\",\"output_token\":\"LastEvaluatedTableName\",\"result_key\":\"TableNames\"},\"Query\":{\"input_token\":\"ExclusiveStartKey\",\"limit_key\":\"Limit\",\"output_token\":\"LastEvaluatedKey\",\"result_key\":\"Items\"},\"Scan\":{\"input_token\":\"ExclusiveStartKey\",\"limit_key\":\"Limit\",\"output_token\":\"LastEvaluatedKey\",\"result_key\":\"Items\"}}}");

/***/ }),

/***/ 15606:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"TableExists\":{\"delay\":20,\"operation\":\"DescribeTable\",\"maxAttempts\":25,\"acceptors\":[{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Table.TableStatus\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"retry\"}]},\"TableNotExists\":{\"delay\":20,\"operation\":\"DescribeTable\",\"maxAttempts\":25,\"acceptors\":[{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 10198:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-08-10\",\"endpointPrefix\":\"dynamodb\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"DynamoDB\",\"serviceFullName\":\"Amazon DynamoDB\",\"serviceId\":\"DynamoDB\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"DynamoDB_20120810\",\"uid\":\"dynamodb-2012-08-10\"},\"operations\":{\"BatchExecuteStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"Statements\"],\"members\":{\"Statements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Statement\"],\"members\":{\"Statement\":{},\"Parameters\":{\"shape\":\"S5\"},\"ConsistentRead\":{\"type\":\"boolean\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Error\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"TableName\":{},\"Item\":{\"shape\":\"Sq\"}}}}}}},\"BatchGetItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"RequestItems\"],\"members\":{\"RequestItems\":{\"shape\":\"Ss\"},\"ReturnConsumedCapacity\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S13\"}},\"UnprocessedKeys\":{\"shape\":\"Ss\"},\"ConsumedCapacity\":{\"shape\":\"S14\"}}},\"endpointdiscovery\":{}},\"BatchWriteItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"RequestItems\"],\"members\":{\"RequestItems\":{\"shape\":\"S1b\"},\"ReturnConsumedCapacity\":{},\"ReturnItemCollectionMetrics\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedItems\":{\"shape\":\"S1b\"},\"ItemCollectionMetrics\":{\"shape\":\"S1j\"},\"ConsumedCapacity\":{\"shape\":\"S14\"}}},\"endpointdiscovery\":{}},\"CreateBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"BackupName\"],\"members\":{\"TableName\":{},\"BackupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupDetails\":{\"shape\":\"S1s\"}}},\"endpointdiscovery\":{}},\"CreateGlobalTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalTableName\",\"ReplicationGroup\"],\"members\":{\"GlobalTableName\":{},\"ReplicationGroup\":{\"shape\":\"S20\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalTableDescription\":{\"shape\":\"S24\"}}},\"endpointdiscovery\":{}},\"CreateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"AttributeDefinitions\",\"TableName\",\"KeySchema\"],\"members\":{\"AttributeDefinitions\":{\"shape\":\"S2i\"},\"TableName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"LocalSecondaryIndexes\":{\"shape\":\"S2p\"},\"GlobalSecondaryIndexes\":{\"shape\":\"S2v\"},\"BillingMode\":{},\"ProvisionedThroughput\":{\"shape\":\"S2x\"},\"StreamSpecification\":{\"shape\":\"S2z\"},\"SSESpecification\":{\"shape\":\"S32\"},\"Tags\":{\"shape\":\"S35\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S3a\"}}},\"endpointdiscovery\":{}},\"DeleteBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupArn\"],\"members\":{\"BackupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupDescription\":{\"shape\":\"S3y\"}}},\"endpointdiscovery\":{}},\"DeleteItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Key\"],\"members\":{\"TableName\":{},\"Key\":{\"shape\":\"Sv\"},\"Expected\":{\"shape\":\"S4b\"},\"ConditionalOperator\":{},\"ReturnValues\":{},\"ReturnConsumedCapacity\":{},\"ReturnItemCollectionMetrics\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sq\"},\"ConsumedCapacity\":{\"shape\":\"S15\"},\"ItemCollectionMetrics\":{\"shape\":\"S1l\"}}},\"endpointdiscovery\":{}},\"DeleteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S3a\"}}},\"endpointdiscovery\":{}},\"DescribeBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupArn\"],\"members\":{\"BackupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupDescription\":{\"shape\":\"S3y\"}}},\"endpointdiscovery\":{}},\"DescribeContinuousBackups\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContinuousBackupsDescription\":{\"shape\":\"S4s\"}}},\"endpointdiscovery\":{}},\"DescribeContributorInsights\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{},\"IndexName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"IndexName\":{},\"ContributorInsightsRuleList\":{\"type\":\"list\",\"member\":{}},\"ContributorInsightsStatus\":{},\"LastUpdateDateTime\":{\"type\":\"timestamp\"},\"FailureException\":{\"type\":\"structure\",\"members\":{\"ExceptionName\":{},\"ExceptionDescription\":{}}}}}},\"DescribeEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"Endpoints\"],\"members\":{\"Endpoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Address\",\"CachePeriodInMinutes\"],\"members\":{\"Address\":{},\"CachePeriodInMinutes\":{\"type\":\"long\"}}}}}},\"endpointoperation\":true},\"DescribeExport\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportArn\"],\"members\":{\"ExportArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExportDescription\":{\"shape\":\"S5c\"}}}},\"DescribeGlobalTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalTableName\"],\"members\":{\"GlobalTableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalTableDescription\":{\"shape\":\"S24\"}}},\"endpointdiscovery\":{}},\"DescribeGlobalTableSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalTableName\"],\"members\":{\"GlobalTableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalTableName\":{},\"ReplicaSettings\":{\"shape\":\"S5w\"}}},\"endpointdiscovery\":{}},\"DescribeKinesisStreamingDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"KinesisDataStreamDestinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StreamArn\":{},\"DestinationStatus\":{},\"DestinationStatusDescription\":{}}}}}},\"endpointdiscovery\":{}},\"DescribeLimits\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountMaxReadCapacityUnits\":{\"type\":\"long\"},\"AccountMaxWriteCapacityUnits\":{\"type\":\"long\"},\"TableMaxReadCapacityUnits\":{\"type\":\"long\"},\"TableMaxWriteCapacityUnits\":{\"type\":\"long\"}}},\"endpointdiscovery\":{}},\"DescribeTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"S3a\"}}},\"endpointdiscovery\":{}},\"DescribeTableReplicaAutoScaling\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableAutoScalingDescription\":{\"shape\":\"S6i\"}}}},\"DescribeTimeToLive\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TimeToLiveDescription\":{\"shape\":\"S47\"}}},\"endpointdiscovery\":{}},\"DisableKinesisStreamingDestination\":{\"input\":{\"shape\":\"S6p\"},\"output\":{\"shape\":\"S6q\"},\"endpointdiscovery\":{}},\"EnableKinesisStreamingDestination\":{\"input\":{\"shape\":\"S6p\"},\"output\":{\"shape\":\"S6q\"},\"endpointdiscovery\":{}},\"ExecuteStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"Statement\"],\"members\":{\"Statement\":{},\"Parameters\":{\"shape\":\"S5\"},\"ConsistentRead\":{\"type\":\"boolean\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"S13\"},\"NextToken\":{}}}},\"ExecuteTransaction\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransactStatements\"],\"members\":{\"TransactStatements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Statement\"],\"members\":{\"Statement\":{},\"Parameters\":{\"shape\":\"S5\"}}}},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Responses\":{\"shape\":\"S6z\"}}}},\"ExportTableToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableArn\",\"S3Bucket\"],\"members\":{\"TableArn\":{},\"ExportTime\":{\"type\":\"timestamp\"},\"ClientToken\":{\"idempotencyToken\":true},\"S3Bucket\":{},\"S3BucketOwner\":{},\"S3Prefix\":{},\"S3SseAlgorithm\":{},\"S3SseKmsKeyId\":{},\"ExportFormat\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExportDescription\":{\"shape\":\"S5c\"}}}},\"GetItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Key\"],\"members\":{\"TableName\":{},\"Key\":{\"shape\":\"Sv\"},\"AttributesToGet\":{\"shape\":\"Sw\"},\"ConsistentRead\":{\"type\":\"boolean\"},\"ReturnConsumedCapacity\":{},\"ProjectionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Item\":{\"shape\":\"Sq\"},\"ConsumedCapacity\":{\"shape\":\"S15\"}}},\"endpointdiscovery\":{}},\"ListBackups\":{\"input\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"Limit\":{\"type\":\"integer\"},\"TimeRangeLowerBound\":{\"type\":\"timestamp\"},\"TimeRangeUpperBound\":{\"type\":\"timestamp\"},\"ExclusiveStartBackupArn\":{},\"BackupType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"TableId\":{},\"TableArn\":{},\"BackupArn\":{},\"BackupName\":{},\"BackupCreationDateTime\":{\"type\":\"timestamp\"},\"BackupExpiryDateTime\":{\"type\":\"timestamp\"},\"BackupStatus\":{},\"BackupType\":{},\"BackupSizeBytes\":{\"type\":\"long\"}}}},\"LastEvaluatedBackupArn\":{}}},\"endpointdiscovery\":{}},\"ListContributorInsights\":{\"input\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContributorInsightsSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"IndexName\":{},\"ContributorInsightsStatus\":{}}}},\"NextToken\":{}}}},\"ListExports\":{\"input\":{\"type\":\"structure\",\"members\":{\"TableArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExportSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ExportArn\":{},\"ExportStatus\":{}}}},\"NextToken\":{}}}},\"ListGlobalTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExclusiveStartGlobalTableName\":{},\"Limit\":{\"type\":\"integer\"},\"RegionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalTables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GlobalTableName\":{},\"ReplicationGroup\":{\"shape\":\"S20\"}}}},\"LastEvaluatedGlobalTableName\":{}}},\"endpointdiscovery\":{}},\"ListTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExclusiveStartTableName\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableNames\":{\"type\":\"list\",\"member\":{}},\"LastEvaluatedTableName\":{}}},\"endpointdiscovery\":{}},\"ListTagsOfResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S35\"},\"NextToken\":{}}},\"endpointdiscovery\":{}},\"PutItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Item\"],\"members\":{\"TableName\":{},\"Item\":{\"shape\":\"S1f\"},\"Expected\":{\"shape\":\"S4b\"},\"ReturnValues\":{},\"ReturnConsumedCapacity\":{},\"ReturnItemCollectionMetrics\":{},\"ConditionalOperator\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sq\"},\"ConsumedCapacity\":{\"shape\":\"S15\"},\"ItemCollectionMetrics\":{\"shape\":\"S1l\"}}},\"endpointdiscovery\":{}},\"Query\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{},\"IndexName\":{},\"Select\":{},\"AttributesToGet\":{\"shape\":\"Sw\"},\"Limit\":{\"type\":\"integer\"},\"ConsistentRead\":{\"type\":\"boolean\"},\"KeyConditions\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S86\"}},\"QueryFilter\":{\"shape\":\"S87\"},\"ConditionalOperator\":{},\"ScanIndexForward\":{\"type\":\"boolean\"},\"ExclusiveStartKey\":{\"shape\":\"Sv\"},\"ReturnConsumedCapacity\":{},\"ProjectionExpression\":{},\"FilterExpression\":{},\"KeyConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"S13\"},\"Count\":{\"type\":\"integer\"},\"ScannedCount\":{\"type\":\"integer\"},\"LastEvaluatedKey\":{\"shape\":\"Sv\"},\"ConsumedCapacity\":{\"shape\":\"S15\"}}},\"endpointdiscovery\":{}},\"RestoreTableFromBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetTableName\",\"BackupArn\"],\"members\":{\"TargetTableName\":{},\"BackupArn\":{},\"BillingModeOverride\":{},\"GlobalSecondaryIndexOverride\":{\"shape\":\"S2v\"},\"LocalSecondaryIndexOverride\":{\"shape\":\"S2p\"},\"ProvisionedThroughputOverride\":{\"shape\":\"S2x\"},\"SSESpecificationOverride\":{\"shape\":\"S32\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S3a\"}}},\"endpointdiscovery\":{}},\"RestoreTableToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetTableName\"],\"members\":{\"SourceTableArn\":{},\"SourceTableName\":{},\"TargetTableName\":{},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"RestoreDateTime\":{\"type\":\"timestamp\"},\"BillingModeOverride\":{},\"GlobalSecondaryIndexOverride\":{\"shape\":\"S2v\"},\"LocalSecondaryIndexOverride\":{\"shape\":\"S2p\"},\"ProvisionedThroughputOverride\":{\"shape\":\"S2x\"},\"SSESpecificationOverride\":{\"shape\":\"S32\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S3a\"}}},\"endpointdiscovery\":{}},\"Scan\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"TableName\":{},\"IndexName\":{},\"AttributesToGet\":{\"shape\":\"Sw\"},\"Limit\":{\"type\":\"integer\"},\"Select\":{},\"ScanFilter\":{\"shape\":\"S87\"},\"ConditionalOperator\":{},\"ExclusiveStartKey\":{\"shape\":\"Sv\"},\"ReturnConsumedCapacity\":{},\"TotalSegments\":{\"type\":\"integer\"},\"Segment\":{\"type\":\"integer\"},\"ProjectionExpression\":{},\"FilterExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"},\"ConsistentRead\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"shape\":\"S13\"},\"Count\":{\"type\":\"integer\"},\"ScannedCount\":{\"type\":\"integer\"},\"LastEvaluatedKey\":{\"shape\":\"Sv\"},\"ConsumedCapacity\":{\"shape\":\"S15\"}}},\"endpointdiscovery\":{}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S35\"}}},\"endpointdiscovery\":{}},\"TransactGetItems\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransactItems\"],\"members\":{\"TransactItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Get\"],\"members\":{\"Get\":{\"type\":\"structure\",\"required\":[\"Key\",\"TableName\"],\"members\":{\"Key\":{\"shape\":\"Sv\"},\"TableName\":{},\"ProjectionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"}}}}}},\"ReturnConsumedCapacity\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConsumedCapacity\":{\"shape\":\"S14\"},\"Responses\":{\"shape\":\"S6z\"}}},\"endpointdiscovery\":{}},\"TransactWriteItems\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransactItems\"],\"members\":{\"TransactItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConditionCheck\":{\"type\":\"structure\",\"required\":[\"Key\",\"TableName\",\"ConditionExpression\"],\"members\":{\"Key\":{\"shape\":\"Sv\"},\"TableName\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"},\"ReturnValuesOnConditionCheckFailure\":{}}},\"Put\":{\"type\":\"structure\",\"required\":[\"Item\",\"TableName\"],\"members\":{\"Item\":{\"shape\":\"S1f\"},\"TableName\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"},\"ReturnValuesOnConditionCheckFailure\":{}}},\"Delete\":{\"type\":\"structure\",\"required\":[\"Key\",\"TableName\"],\"members\":{\"Key\":{\"shape\":\"Sv\"},\"TableName\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"},\"ReturnValuesOnConditionCheckFailure\":{}}},\"Update\":{\"type\":\"structure\",\"required\":[\"Key\",\"UpdateExpression\",\"TableName\"],\"members\":{\"Key\":{\"shape\":\"Sv\"},\"UpdateExpression\":{},\"TableName\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"},\"ReturnValuesOnConditionCheckFailure\":{}}}}}},\"ReturnConsumedCapacity\":{},\"ReturnItemCollectionMetrics\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConsumedCapacity\":{\"shape\":\"S14\"},\"ItemCollectionMetrics\":{\"shape\":\"S1j\"}}},\"endpointdiscovery\":{}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"endpointdiscovery\":{}},\"UpdateContinuousBackups\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"PointInTimeRecoverySpecification\"],\"members\":{\"TableName\":{},\"PointInTimeRecoverySpecification\":{\"type\":\"structure\",\"required\":[\"PointInTimeRecoveryEnabled\"],\"members\":{\"PointInTimeRecoveryEnabled\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContinuousBackupsDescription\":{\"shape\":\"S4s\"}}},\"endpointdiscovery\":{}},\"UpdateContributorInsights\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"ContributorInsightsAction\"],\"members\":{\"TableName\":{},\"IndexName\":{},\"ContributorInsightsAction\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"IndexName\":{},\"ContributorInsightsStatus\":{}}}},\"UpdateGlobalTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalTableName\",\"ReplicaUpdates\"],\"members\":{\"GlobalTableName\":{},\"ReplicaUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Create\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{}}},\"Delete\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalTableDescription\":{\"shape\":\"S24\"}}},\"endpointdiscovery\":{}},\"UpdateGlobalTableSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalTableName\"],\"members\":{\"GlobalTableName\":{},\"GlobalTableBillingMode\":{},\"GlobalTableProvisionedWriteCapacityUnits\":{\"type\":\"long\"},\"GlobalTableProvisionedWriteCapacityAutoScalingSettingsUpdate\":{\"shape\":\"S9e\"},\"GlobalTableGlobalSecondaryIndexSettingsUpdate\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{},\"ProvisionedWriteCapacityUnits\":{\"type\":\"long\"},\"ProvisionedWriteCapacityAutoScalingSettingsUpdate\":{\"shape\":\"S9e\"}}}},\"ReplicaSettingsUpdate\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{},\"ReplicaProvisionedReadCapacityUnits\":{\"type\":\"long\"},\"ReplicaProvisionedReadCapacityAutoScalingSettingsUpdate\":{\"shape\":\"S9e\"},\"ReplicaGlobalSecondaryIndexSettingsUpdate\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{},\"ProvisionedReadCapacityUnits\":{\"type\":\"long\"},\"ProvisionedReadCapacityAutoScalingSettingsUpdate\":{\"shape\":\"S9e\"}}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalTableName\":{},\"ReplicaSettings\":{\"shape\":\"S5w\"}}},\"endpointdiscovery\":{}},\"UpdateItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Key\"],\"members\":{\"TableName\":{},\"Key\":{\"shape\":\"Sv\"},\"AttributeUpdates\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Value\":{\"shape\":\"S6\"},\"Action\":{}}}},\"Expected\":{\"shape\":\"S4b\"},\"ConditionalOperator\":{},\"ReturnValues\":{},\"ReturnConsumedCapacity\":{},\"ReturnItemCollectionMetrics\":{},\"UpdateExpression\":{},\"ConditionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"},\"ExpressionAttributeValues\":{\"shape\":\"S4j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sq\"},\"ConsumedCapacity\":{\"shape\":\"S15\"},\"ItemCollectionMetrics\":{\"shape\":\"S1l\"}}},\"endpointdiscovery\":{}},\"UpdateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"AttributeDefinitions\":{\"shape\":\"S2i\"},\"TableName\":{},\"BillingMode\":{},\"ProvisionedThroughput\":{\"shape\":\"S2x\"},\"GlobalSecondaryIndexUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Update\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"ProvisionedThroughput\"],\"members\":{\"IndexName\":{},\"ProvisionedThroughput\":{\"shape\":\"S2x\"}}},\"Create\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"KeySchema\",\"Projection\"],\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"},\"ProvisionedThroughput\":{\"shape\":\"S2x\"}}},\"Delete\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{}}}}}},\"StreamSpecification\":{\"shape\":\"S2z\"},\"SSESpecification\":{\"shape\":\"S32\"},\"ReplicaUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Create\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{},\"KMSMasterKeyId\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S2b\"},\"GlobalSecondaryIndexes\":{\"shape\":\"Sa3\"}}},\"Update\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{},\"KMSMasterKeyId\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S2b\"},\"GlobalSecondaryIndexes\":{\"shape\":\"Sa3\"}}},\"Delete\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableDescription\":{\"shape\":\"S3a\"}}},\"endpointdiscovery\":{}},\"UpdateTableReplicaAutoScaling\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\"],\"members\":{\"GlobalSecondaryIndexUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"ProvisionedWriteCapacityAutoScalingUpdate\":{\"shape\":\"S9e\"}}}},\"TableName\":{},\"ProvisionedWriteCapacityAutoScalingUpdate\":{\"shape\":\"S9e\"},\"ReplicaUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{},\"ReplicaGlobalSecondaryIndexUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"ProvisionedReadCapacityAutoScalingUpdate\":{\"shape\":\"S9e\"}}}},\"ReplicaProvisionedReadCapacityAutoScalingUpdate\":{\"shape\":\"S9e\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableAutoScalingDescription\":{\"shape\":\"S6i\"}}}},\"UpdateTimeToLive\":{\"input\":{\"type\":\"structure\",\"required\":[\"TableName\",\"TimeToLiveSpecification\"],\"members\":{\"TableName\":{},\"TimeToLiveSpecification\":{\"shape\":\"Sah\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TimeToLiveSpecification\":{\"shape\":\"Sah\"}}},\"endpointdiscovery\":{}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"S6\":{\"type\":\"structure\",\"members\":{\"S\":{},\"N\":{},\"B\":{\"type\":\"blob\"},\"SS\":{\"type\":\"list\",\"member\":{}},\"NS\":{\"type\":\"list\",\"member\":{}},\"BS\":{\"type\":\"list\",\"member\":{\"type\":\"blob\"}},\"M\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S6\"}},\"L\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"NULL\":{\"type\":\"boolean\"},\"BOOL\":{\"type\":\"boolean\"}}},\"Sq\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S6\"}},\"Ss\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Keys\"],\"members\":{\"Keys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"AttributesToGet\":{\"shape\":\"Sw\"},\"ConsistentRead\":{\"type\":\"boolean\"},\"ProjectionExpression\":{},\"ExpressionAttributeNames\":{\"shape\":\"Sy\"}}}},\"Sv\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S6\"}},\"Sw\":{\"type\":\"list\",\"member\":{}},\"Sy\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S13\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}},\"S14\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}},\"S15\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"CapacityUnits\":{\"type\":\"double\"},\"ReadCapacityUnits\":{\"type\":\"double\"},\"WriteCapacityUnits\":{\"type\":\"double\"},\"Table\":{\"shape\":\"S17\"},\"LocalSecondaryIndexes\":{\"shape\":\"S18\"},\"GlobalSecondaryIndexes\":{\"shape\":\"S18\"}}},\"S17\":{\"type\":\"structure\",\"members\":{\"ReadCapacityUnits\":{\"type\":\"double\"},\"WriteCapacityUnits\":{\"type\":\"double\"},\"CapacityUnits\":{\"type\":\"double\"}}},\"S18\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S17\"}},\"S1b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PutRequest\":{\"type\":\"structure\",\"required\":[\"Item\"],\"members\":{\"Item\":{\"shape\":\"S1f\"}}},\"DeleteRequest\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{\"shape\":\"Sv\"}}}}}}},\"S1f\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S6\"}},\"S1j\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"shape\":\"S1l\"}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"ItemCollectionKey\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S6\"}},\"SizeEstimateRangeGB\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}},\"S1s\":{\"type\":\"structure\",\"required\":[\"BackupArn\",\"BackupName\",\"BackupStatus\",\"BackupType\",\"BackupCreationDateTime\"],\"members\":{\"BackupArn\":{},\"BackupName\":{},\"BackupSizeBytes\":{\"type\":\"long\"},\"BackupStatus\":{},\"BackupType\":{},\"BackupCreationDateTime\":{\"type\":\"timestamp\"},\"BackupExpiryDateTime\":{\"type\":\"timestamp\"}}},\"S20\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegionName\":{}}}},\"S24\":{\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"S25\"},\"GlobalTableArn\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"GlobalTableStatus\":{},\"GlobalTableName\":{}}},\"S25\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegionName\":{},\"ReplicaStatus\":{},\"ReplicaStatusDescription\":{},\"ReplicaStatusPercentProgress\":{},\"KMSMasterKeyId\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S2b\"},\"GlobalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S2b\"}}}},\"ReplicaInaccessibleDateTime\":{\"type\":\"timestamp\"}}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"ReadCapacityUnits\":{\"type\":\"long\"}}},\"S2i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"AttributeType\"],\"members\":{\"AttributeName\":{},\"AttributeType\":{}}}},\"S2m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"KeyType\"],\"members\":{\"AttributeName\":{},\"KeyType\":{}}}},\"S2p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"KeySchema\",\"Projection\"],\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"}}}},\"S2r\":{\"type\":\"structure\",\"members\":{\"ProjectionType\":{},\"NonKeyAttributes\":{\"type\":\"list\",\"member\":{}}}},\"S2v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"KeySchema\",\"Projection\"],\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"},\"ProvisionedThroughput\":{\"shape\":\"S2x\"}}}},\"S2x\":{\"type\":\"structure\",\"required\":[\"ReadCapacityUnits\",\"WriteCapacityUnits\"],\"members\":{\"ReadCapacityUnits\":{\"type\":\"long\"},\"WriteCapacityUnits\":{\"type\":\"long\"}}},\"S2z\":{\"type\":\"structure\",\"required\":[\"StreamEnabled\"],\"members\":{\"StreamEnabled\":{\"type\":\"boolean\"},\"StreamViewType\":{}}},\"S32\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"SSEType\":{},\"KMSMasterKeyId\":{}}},\"S35\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S3a\":{\"type\":\"structure\",\"members\":{\"AttributeDefinitions\":{\"shape\":\"S2i\"},\"TableName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"TableStatus\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"ProvisionedThroughput\":{\"shape\":\"S3c\"},\"TableSizeBytes\":{\"type\":\"long\"},\"ItemCount\":{\"type\":\"long\"},\"TableArn\":{},\"TableId\":{},\"BillingModeSummary\":{\"shape\":\"S3g\"},\"LocalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"},\"IndexSizeBytes\":{\"type\":\"long\"},\"ItemCount\":{\"type\":\"long\"},\"IndexArn\":{}}}},\"GlobalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"},\"IndexStatus\":{},\"Backfilling\":{\"type\":\"boolean\"},\"ProvisionedThroughput\":{\"shape\":\"S3c\"},\"IndexSizeBytes\":{\"type\":\"long\"},\"ItemCount\":{\"type\":\"long\"},\"IndexArn\":{}}}},\"StreamSpecification\":{\"shape\":\"S2z\"},\"LatestStreamLabel\":{},\"LatestStreamArn\":{},\"GlobalTableVersion\":{},\"Replicas\":{\"shape\":\"S25\"},\"RestoreSummary\":{\"type\":\"structure\",\"required\":[\"RestoreDateTime\",\"RestoreInProgress\"],\"members\":{\"SourceBackupArn\":{},\"SourceTableArn\":{},\"RestoreDateTime\":{\"type\":\"timestamp\"},\"RestoreInProgress\":{\"type\":\"boolean\"}}},\"SSEDescription\":{\"shape\":\"S3r\"},\"ArchivalSummary\":{\"type\":\"structure\",\"members\":{\"ArchivalDateTime\":{\"type\":\"timestamp\"},\"ArchivalReason\":{},\"ArchivalBackupArn\":{}}}}},\"S3c\":{\"type\":\"structure\",\"members\":{\"LastIncreaseDateTime\":{\"type\":\"timestamp\"},\"LastDecreaseDateTime\":{\"type\":\"timestamp\"},\"NumberOfDecreasesToday\":{\"type\":\"long\"},\"ReadCapacityUnits\":{\"type\":\"long\"},\"WriteCapacityUnits\":{\"type\":\"long\"}}},\"S3g\":{\"type\":\"structure\",\"members\":{\"BillingMode\":{},\"LastUpdateToPayPerRequestDateTime\":{\"type\":\"timestamp\"}}},\"S3r\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"SSEType\":{},\"KMSMasterKeyArn\":{},\"InaccessibleEncryptionDateTime\":{\"type\":\"timestamp\"}}},\"S3y\":{\"type\":\"structure\",\"members\":{\"BackupDetails\":{\"shape\":\"S1s\"},\"SourceTableDetails\":{\"type\":\"structure\",\"required\":[\"TableName\",\"TableId\",\"KeySchema\",\"TableCreationDateTime\",\"ProvisionedThroughput\"],\"members\":{\"TableName\":{},\"TableId\":{},\"TableArn\":{},\"TableSizeBytes\":{\"type\":\"long\"},\"KeySchema\":{\"shape\":\"S2m\"},\"TableCreationDateTime\":{\"type\":\"timestamp\"},\"ProvisionedThroughput\":{\"shape\":\"S2x\"},\"ItemCount\":{\"type\":\"long\"},\"BillingMode\":{}}},\"SourceTableFeatureDetails\":{\"type\":\"structure\",\"members\":{\"LocalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"}}}},\"GlobalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"KeySchema\":{\"shape\":\"S2m\"},\"Projection\":{\"shape\":\"S2r\"},\"ProvisionedThroughput\":{\"shape\":\"S2x\"}}}},\"StreamDescription\":{\"shape\":\"S2z\"},\"TimeToLiveDescription\":{\"shape\":\"S47\"},\"SSEDescription\":{\"shape\":\"S3r\"}}}}},\"S47\":{\"type\":\"structure\",\"members\":{\"TimeToLiveStatus\":{},\"AttributeName\":{}}},\"S4b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Value\":{\"shape\":\"S6\"},\"Exists\":{\"type\":\"boolean\"},\"ComparisonOperator\":{},\"AttributeValueList\":{\"shape\":\"S4f\"}}}},\"S4f\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"S4j\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S6\"}},\"S4s\":{\"type\":\"structure\",\"required\":[\"ContinuousBackupsStatus\"],\"members\":{\"ContinuousBackupsStatus\":{},\"PointInTimeRecoveryDescription\":{\"type\":\"structure\",\"members\":{\"PointInTimeRecoveryStatus\":{},\"EarliestRestorableDateTime\":{\"type\":\"timestamp\"},\"LatestRestorableDateTime\":{\"type\":\"timestamp\"}}}}},\"S5c\":{\"type\":\"structure\",\"members\":{\"ExportArn\":{},\"ExportStatus\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"ExportManifest\":{},\"TableArn\":{},\"TableId\":{},\"ExportTime\":{\"type\":\"timestamp\"},\"ClientToken\":{},\"S3Bucket\":{},\"S3BucketOwner\":{},\"S3Prefix\":{},\"S3SseAlgorithm\":{},\"S3SseKmsKeyId\":{},\"FailureCode\":{},\"FailureMessage\":{},\"ExportFormat\":{},\"BilledSizeBytes\":{\"type\":\"long\"},\"ItemCount\":{\"type\":\"long\"}}},\"S5w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegionName\"],\"members\":{\"RegionName\":{},\"ReplicaStatus\":{},\"ReplicaBillingModeSummary\":{\"shape\":\"S3g\"},\"ReplicaProvisionedReadCapacityUnits\":{\"type\":\"long\"},\"ReplicaProvisionedReadCapacityAutoScalingSettings\":{\"shape\":\"S5y\"},\"ReplicaProvisionedWriteCapacityUnits\":{\"type\":\"long\"},\"ReplicaProvisionedWriteCapacityAutoScalingSettings\":{\"shape\":\"S5y\"},\"ReplicaGlobalSecondaryIndexSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{},\"IndexStatus\":{},\"ProvisionedReadCapacityUnits\":{\"type\":\"long\"},\"ProvisionedReadCapacityAutoScalingSettings\":{\"shape\":\"S5y\"},\"ProvisionedWriteCapacityUnits\":{\"type\":\"long\"},\"ProvisionedWriteCapacityAutoScalingSettings\":{\"shape\":\"S5y\"}}}}}}},\"S5y\":{\"type\":\"structure\",\"members\":{\"MinimumUnits\":{\"type\":\"long\"},\"MaximumUnits\":{\"type\":\"long\"},\"AutoScalingDisabled\":{\"type\":\"boolean\"},\"AutoScalingRoleArn\":{},\"ScalingPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"TargetTrackingScalingPolicyConfiguration\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"DisableScaleIn\":{\"type\":\"boolean\"},\"ScaleInCooldown\":{\"type\":\"integer\"},\"ScaleOutCooldown\":{\"type\":\"integer\"},\"TargetValue\":{\"type\":\"double\"}}}}}}}},\"S6i\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"TableStatus\":{},\"Replicas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegionName\":{},\"GlobalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"IndexStatus\":{},\"ProvisionedReadCapacityAutoScalingSettings\":{\"shape\":\"S5y\"},\"ProvisionedWriteCapacityAutoScalingSettings\":{\"shape\":\"S5y\"}}}},\"ReplicaProvisionedReadCapacityAutoScalingSettings\":{\"shape\":\"S5y\"},\"ReplicaProvisionedWriteCapacityAutoScalingSettings\":{\"shape\":\"S5y\"},\"ReplicaStatus\":{}}}}}},\"S6p\":{\"type\":\"structure\",\"required\":[\"TableName\",\"StreamArn\"],\"members\":{\"TableName\":{},\"StreamArn\":{}}},\"S6q\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"StreamArn\":{},\"DestinationStatus\":{}}},\"S6z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Item\":{\"shape\":\"Sq\"}}}},\"S86\":{\"type\":\"structure\",\"required\":[\"ComparisonOperator\"],\"members\":{\"AttributeValueList\":{\"shape\":\"S4f\"},\"ComparisonOperator\":{}}},\"S87\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S86\"}},\"S9e\":{\"type\":\"structure\",\"members\":{\"MinimumUnits\":{\"type\":\"long\"},\"MaximumUnits\":{\"type\":\"long\"},\"AutoScalingDisabled\":{\"type\":\"boolean\"},\"AutoScalingRoleArn\":{},\"ScalingPolicyUpdate\":{\"type\":\"structure\",\"required\":[\"TargetTrackingScalingPolicyConfiguration\"],\"members\":{\"PolicyName\":{},\"TargetTrackingScalingPolicyConfiguration\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"DisableScaleIn\":{\"type\":\"boolean\"},\"ScaleInCooldown\":{\"type\":\"integer\"},\"ScaleOutCooldown\":{\"type\":\"integer\"},\"TargetValue\":{\"type\":\"double\"}}}}}}},\"Sa3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S2b\"}}}},\"Sah\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"AttributeName\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"AttributeName\":{}}}}}");

/***/ }),

/***/ 79199:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"BatchGetItem\":{\"input_token\":\"RequestItems\",\"output_token\":\"UnprocessedKeys\"},\"ListContributorInsights\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListExports\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTables\":{\"input_token\":\"ExclusiveStartTableName\",\"limit_key\":\"Limit\",\"output_token\":\"LastEvaluatedTableName\",\"result_key\":\"TableNames\"},\"Query\":{\"input_token\":\"ExclusiveStartKey\",\"limit_key\":\"Limit\",\"output_token\":\"LastEvaluatedKey\",\"result_key\":\"Items\"},\"Scan\":{\"input_token\":\"ExclusiveStartKey\",\"limit_key\":\"Limit\",\"output_token\":\"LastEvaluatedKey\",\"result_key\":\"Items\"}}}");

/***/ }),

/***/ 13814:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"TableExists\":{\"delay\":20,\"operation\":\"DescribeTable\",\"maxAttempts\":25,\"acceptors\":[{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Table.TableStatus\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"retry\"}]},\"TableNotExists\":{\"delay\":20,\"operation\":\"DescribeTable\",\"maxAttempts\":25,\"acceptors\":[{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 67263:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-11-02\",\"endpointPrefix\":\"ebs\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon EBS\",\"serviceFullName\":\"Amazon Elastic Block Store\",\"serviceId\":\"EBS\",\"signatureVersion\":\"v4\",\"uid\":\"ebs-2019-11-02\"},\"operations\":{\"CompleteSnapshot\":{\"http\":{\"requestUri\":\"/snapshots/completion/{snapshotId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\",\"ChangedBlocksCount\"],\"members\":{\"SnapshotId\":{\"location\":\"uri\",\"locationName\":\"snapshotId\"},\"ChangedBlocksCount\":{\"location\":\"header\",\"locationName\":\"x-amz-ChangedBlocksCount\",\"type\":\"integer\"},\"Checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum\"},\"ChecksumAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum-Algorithm\"},\"ChecksumAggregationMethod\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum-Aggregation-Method\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"GetSnapshotBlock\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/snapshots/{snapshotId}/blocks/{blockIndex}\"},\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\",\"BlockIndex\",\"BlockToken\"],\"members\":{\"SnapshotId\":{\"location\":\"uri\",\"locationName\":\"snapshotId\"},\"BlockIndex\":{\"location\":\"uri\",\"locationName\":\"blockIndex\",\"type\":\"integer\"},\"BlockToken\":{\"location\":\"querystring\",\"locationName\":\"blockToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataLength\":{\"location\":\"header\",\"locationName\":\"x-amz-Data-Length\",\"type\":\"integer\"},\"BlockData\":{\"shape\":\"Se\"},\"Checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum\"},\"ChecksumAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum-Algorithm\"}},\"payload\":\"BlockData\"}},\"ListChangedBlocks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/snapshots/{secondSnapshotId}/changedblocks\"},\"input\":{\"type\":\"structure\",\"required\":[\"SecondSnapshotId\"],\"members\":{\"FirstSnapshotId\":{\"location\":\"querystring\",\"locationName\":\"firstSnapshotId\"},\"SecondSnapshotId\":{\"location\":\"uri\",\"locationName\":\"secondSnapshotId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"pageToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"StartingBlockIndex\":{\"location\":\"querystring\",\"locationName\":\"startingBlockIndex\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangedBlocks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BlockIndex\":{\"type\":\"integer\"},\"FirstBlockToken\":{},\"SecondBlockToken\":{}},\"sensitive\":true}},\"ExpiryTime\":{\"type\":\"timestamp\"},\"VolumeSize\":{\"type\":\"long\"},\"BlockSize\":{\"type\":\"integer\"},\"NextToken\":{}}}},\"ListSnapshotBlocks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/snapshots/{snapshotId}/blocks\"},\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\"],\"members\":{\"SnapshotId\":{\"location\":\"uri\",\"locationName\":\"snapshotId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"pageToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"StartingBlockIndex\":{\"location\":\"querystring\",\"locationName\":\"startingBlockIndex\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Blocks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BlockIndex\":{\"type\":\"integer\"},\"BlockToken\":{}}},\"sensitive\":true},\"ExpiryTime\":{\"type\":\"timestamp\"},\"VolumeSize\":{\"type\":\"long\"},\"BlockSize\":{\"type\":\"integer\"},\"NextToken\":{}}}},\"PutSnapshotBlock\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/snapshots/{snapshotId}/blocks/{blockIndex}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\",\"BlockIndex\",\"BlockData\",\"DataLength\",\"Checksum\",\"ChecksumAlgorithm\"],\"members\":{\"SnapshotId\":{\"location\":\"uri\",\"locationName\":\"snapshotId\"},\"BlockIndex\":{\"location\":\"uri\",\"locationName\":\"blockIndex\",\"type\":\"integer\"},\"BlockData\":{\"shape\":\"Se\"},\"DataLength\":{\"location\":\"header\",\"locationName\":\"x-amz-Data-Length\",\"type\":\"integer\"},\"Progress\":{\"location\":\"header\",\"locationName\":\"x-amz-Progress\",\"type\":\"integer\"},\"Checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum\"},\"ChecksumAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum-Algorithm\"}},\"payload\":\"BlockData\"},\"output\":{\"type\":\"structure\",\"members\":{\"Checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum\"},\"ChecksumAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-Checksum-Algorithm\"}}},\"authtype\":\"v4-unsigned-body\"},\"StartSnapshot\":{\"http\":{\"requestUri\":\"/snapshots\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"VolumeSize\"],\"members\":{\"VolumeSize\":{\"type\":\"long\"},\"ParentSnapshotId\":{},\"Tags\":{\"shape\":\"Sw\"},\"Description\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyArn\":{\"shape\":\"S13\"},\"Timeout\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"SnapshotId\":{},\"OwnerId\":{},\"Status\":{},\"StartTime\":{\"type\":\"timestamp\"},\"VolumeSize\":{\"type\":\"long\"},\"BlockSize\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"Sw\"},\"ParentSnapshotId\":{},\"KmsKeyArn\":{\"shape\":\"S13\"}}}}},\"shapes\":{\"Se\":{\"type\":\"blob\",\"sensitive\":true,\"streaming\":true},\"Sw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S13\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 94934:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListChangedBlocks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSnapshotBlocks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 8893:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-15\",\"endpointPrefix\":\"ec2\",\"protocol\":\"ec2\",\"serviceAbbreviation\":\"Amazon EC2\",\"serviceFullName\":\"Amazon Elastic Compute Cloud\",\"serviceId\":\"EC2\",\"signatureVersion\":\"v4\",\"uid\":\"ec2-2016-11-15\",\"xmlNamespace\":\"http://ec2.amazonaws.com/doc/2016-11-15\"},\"operations\":{\"AcceptReservedInstancesExchangeQuote\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedInstanceIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ReservedInstanceIds\":{\"shape\":\"S3\",\"locationName\":\"ReservedInstanceId\"},\"TargetConfigurations\":{\"shape\":\"S5\",\"locationName\":\"TargetConfiguration\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExchangeId\":{\"locationName\":\"exchangeId\"}}}},\"AcceptTransitGatewayMulticastDomainAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"TransitGatewayAttachmentId\":{},\"SubnetIds\":{\"shape\":\"Se\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"shape\":\"Sg\",\"locationName\":\"associations\"}}}},\"AcceptTransitGatewayPeeringAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPeeringAttachment\":{\"shape\":\"Sn\",\"locationName\":\"transitGatewayPeeringAttachment\"}}}},\"AcceptTransitGatewayVpcAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayVpcAttachment\":{\"shape\":\"Sw\",\"locationName\":\"transitGatewayVpcAttachment\"}}}},\"AcceptVpcEndpointConnections\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\",\"VpcEndpointIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{},\"VpcEndpointIds\":{\"shape\":\"S13\",\"locationName\":\"VpcEndpointId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"AcceptVpcPeeringConnection\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcPeeringConnection\":{\"shape\":\"S1c\",\"locationName\":\"vpcPeeringConnection\"}}}},\"AdvertiseByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"S1n\",\"locationName\":\"byoipCidr\"}}}},\"AllocateAddress\":{\"input\":{\"type\":\"structure\",\"members\":{\"Domain\":{},\"Address\":{},\"PublicIpv4Pool\":{},\"NetworkBorderGroup\":{},\"CustomerOwnedIpv4Pool\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicIp\":{\"locationName\":\"publicIp\"},\"AllocationId\":{\"locationName\":\"allocationId\"},\"PublicIpv4Pool\":{\"locationName\":\"publicIpv4Pool\"},\"NetworkBorderGroup\":{\"locationName\":\"networkBorderGroup\"},\"Domain\":{\"locationName\":\"domain\"},\"CustomerOwnedIp\":{\"locationName\":\"customerOwnedIp\"},\"CustomerOwnedIpv4Pool\":{\"locationName\":\"customerOwnedIpv4Pool\"},\"CarrierIp\":{\"locationName\":\"carrierIp\"}}}},\"AllocateHosts\":{\"input\":{\"type\":\"structure\",\"required\":[\"AvailabilityZone\",\"Quantity\"],\"members\":{\"AutoPlacement\":{\"locationName\":\"autoPlacement\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"ClientToken\":{\"locationName\":\"clientToken\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"InstanceFamily\":{},\"Quantity\":{\"locationName\":\"quantity\",\"type\":\"integer\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"HostRecovery\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HostIds\":{\"shape\":\"S21\",\"locationName\":\"hostIdSet\"}}}},\"ApplySecurityGroupsToClientVpnTargetNetwork\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"VpcId\",\"SecurityGroupIds\"],\"members\":{\"ClientVpnEndpointId\":{},\"VpcId\":{},\"SecurityGroupIds\":{\"shape\":\"S25\",\"locationName\":\"SecurityGroupId\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityGroupIds\":{\"shape\":\"S25\",\"locationName\":\"securityGroupIds\"}}}},\"AssignIpv6Addresses\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\"],\"members\":{\"Ipv6AddressCount\":{\"locationName\":\"ipv6AddressCount\",\"type\":\"integer\"},\"Ipv6Addresses\":{\"shape\":\"S29\",\"locationName\":\"ipv6Addresses\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssignedIpv6Addresses\":{\"shape\":\"S29\",\"locationName\":\"assignedIpv6Addresses\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"}}}},\"AssignPrivateIpAddresses\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\"],\"members\":{\"AllowReassignment\":{\"locationName\":\"allowReassignment\",\"type\":\"boolean\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateIpAddresses\":{\"shape\":\"S2d\",\"locationName\":\"privateIpAddress\"},\"SecondaryPrivateIpAddressCount\":{\"locationName\":\"secondaryPrivateIpAddressCount\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"AssignedPrivateIpAddresses\":{\"locationName\":\"assignedPrivateIpAddressesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"}}}}}}},\"AssociateAddress\":{\"input\":{\"type\":\"structure\",\"members\":{\"AllocationId\":{},\"InstanceId\":{},\"PublicIp\":{},\"AllowReassociation\":{\"locationName\":\"allowReassociation\",\"type\":\"boolean\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"}}}},\"AssociateClientVpnTargetNetwork\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"SubnetId\"],\"members\":{\"ClientVpnEndpointId\":{},\"SubnetId\":{},\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"Status\":{\"shape\":\"S2o\",\"locationName\":\"status\"}}}},\"AssociateDhcpOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DhcpOptionsId\",\"VpcId\"],\"members\":{\"DhcpOptionsId\":{},\"VpcId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"AssociateEnclaveCertificateIamRole\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"RoleArn\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateS3BucketName\":{\"locationName\":\"certificateS3BucketName\"},\"CertificateS3ObjectKey\":{\"locationName\":\"certificateS3ObjectKey\"},\"EncryptionKmsKeyId\":{\"locationName\":\"encryptionKmsKeyId\"}}}},\"AssociateIamInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"IamInstanceProfile\",\"InstanceId\"],\"members\":{\"IamInstanceProfile\":{\"shape\":\"S2w\"},\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IamInstanceProfileAssociation\":{\"shape\":\"S2y\",\"locationName\":\"iamInstanceProfileAssociation\"}}}},\"AssociateRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"RouteTableId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"GatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"AssociationState\":{\"shape\":\"S35\",\"locationName\":\"associationState\"}}}},\"AssociateSubnetCidrBlock\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetId\",\"Ipv6CidrBlock\"],\"members\":{\"SubnetId\":{\"locationName\":\"subnetId\"},\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ipv6CidrBlockAssociation\":{\"shape\":\"S39\",\"locationName\":\"ipv6CidrBlockAssociation\"},\"SubnetId\":{\"locationName\":\"subnetId\"}}}},\"AssociateTransitGatewayMulticastDomain\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"TransitGatewayAttachmentId\":{},\"SubnetIds\":{\"shape\":\"S3e\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"shape\":\"Sg\",\"locationName\":\"associations\"}}}},\"AssociateTransitGatewayRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Association\":{\"shape\":\"S3j\",\"locationName\":\"association\"}}}},\"AssociateVpcCidrBlock\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"AmazonProvidedIpv6CidrBlock\":{\"locationName\":\"amazonProvidedIpv6CidrBlock\",\"type\":\"boolean\"},\"CidrBlock\":{},\"VpcId\":{\"locationName\":\"vpcId\"},\"Ipv6CidrBlockNetworkBorderGroup\":{},\"Ipv6Pool\":{},\"Ipv6CidrBlock\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ipv6CidrBlockAssociation\":{\"shape\":\"S3o\",\"locationName\":\"ipv6CidrBlockAssociation\"},\"CidrBlockAssociation\":{\"shape\":\"S3r\",\"locationName\":\"cidrBlockAssociation\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"AttachClassicLinkVpc\":{\"input\":{\"type\":\"structure\",\"required\":[\"Groups\",\"InstanceId\",\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"S3t\",\"locationName\":\"SecurityGroupId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"VpcId\":{\"locationName\":\"vpcId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"AttachInternetGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"InternetGatewayId\",\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InternetGatewayId\":{\"locationName\":\"internetGatewayId\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"AttachNetworkInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceIndex\",\"InstanceId\",\"NetworkInterfaceId\"],\"members\":{\"DeviceIndex\":{\"locationName\":\"deviceIndex\",\"type\":\"integer\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"NetworkCardIndex\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachmentId\":{\"locationName\":\"attachmentId\"},\"NetworkCardIndex\":{\"locationName\":\"networkCardIndex\",\"type\":\"integer\"}}}},\"AttachVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"Device\",\"InstanceId\",\"VolumeId\"],\"members\":{\"Device\":{},\"InstanceId\":{},\"VolumeId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S41\"}},\"AttachVpnGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"VpnGatewayId\"],\"members\":{\"VpcId\":{},\"VpnGatewayId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcAttachment\":{\"shape\":\"S46\",\"locationName\":\"attachment\"}}}},\"AuthorizeClientVpnIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"TargetNetworkCidr\"],\"members\":{\"ClientVpnEndpointId\":{},\"TargetNetworkCidr\":{},\"AccessGroupId\":{},\"AuthorizeAllGroups\":{\"type\":\"boolean\"},\"Description\":{},\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"shape\":\"S4a\",\"locationName\":\"status\"}}}},\"AuthorizeSecurityGroupEgress\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"GroupId\":{\"locationName\":\"groupId\"},\"IpPermissions\":{\"shape\":\"S4d\",\"locationName\":\"ipPermissions\"},\"CidrIp\":{\"locationName\":\"cidrIp\"},\"FromPort\":{\"locationName\":\"fromPort\",\"type\":\"integer\"},\"IpProtocol\":{\"locationName\":\"ipProtocol\"},\"ToPort\":{\"locationName\":\"toPort\",\"type\":\"integer\"},\"SourceSecurityGroupName\":{\"locationName\":\"sourceSecurityGroupName\"},\"SourceSecurityGroupOwnerId\":{\"locationName\":\"sourceSecurityGroupOwnerId\"}}}},\"AuthorizeSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"members\":{\"CidrIp\":{},\"FromPort\":{\"type\":\"integer\"},\"GroupId\":{},\"GroupName\":{},\"IpPermissions\":{\"shape\":\"S4d\"},\"IpProtocol\":{},\"SourceSecurityGroupName\":{},\"SourceSecurityGroupOwnerId\":{},\"ToPort\":{\"type\":\"integer\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"BundleInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Storage\"],\"members\":{\"InstanceId\":{},\"Storage\":{\"shape\":\"S4q\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BundleTask\":{\"shape\":\"S4u\",\"locationName\":\"bundleInstanceTask\"}}}},\"CancelBundleTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"BundleId\"],\"members\":{\"BundleId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BundleTask\":{\"shape\":\"S4u\",\"locationName\":\"bundleInstanceTask\"}}}},\"CancelCapacityReservation\":{\"input\":{\"type\":\"structure\",\"required\":[\"CapacityReservationId\"],\"members\":{\"CapacityReservationId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"CancelConversionTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConversionTaskId\"],\"members\":{\"ConversionTaskId\":{\"locationName\":\"conversionTaskId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"ReasonMessage\":{\"locationName\":\"reasonMessage\"}}}},\"CancelExportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportTaskId\"],\"members\":{\"ExportTaskId\":{\"locationName\":\"exportTaskId\"}}}},\"CancelImportTask\":{\"input\":{\"type\":\"structure\",\"members\":{\"CancelReason\":{},\"DryRun\":{\"type\":\"boolean\"},\"ImportTaskId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImportTaskId\":{\"locationName\":\"importTaskId\"},\"PreviousState\":{\"locationName\":\"previousState\"},\"State\":{\"locationName\":\"state\"}}}},\"CancelReservedInstancesListing\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedInstancesListingId\"],\"members\":{\"ReservedInstancesListingId\":{\"locationName\":\"reservedInstancesListingId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstancesListings\":{\"shape\":\"S5d\",\"locationName\":\"reservedInstancesListingsSet\"}}}},\"CancelSpotFleetRequests\":{\"input\":{\"type\":\"structure\",\"required\":[\"SpotFleetRequestIds\",\"TerminateInstances\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"SpotFleetRequestIds\":{\"shape\":\"S5p\",\"locationName\":\"spotFleetRequestId\"},\"TerminateInstances\":{\"locationName\":\"terminateInstances\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuccessfulFleetRequests\":{\"locationName\":\"successfulFleetRequestSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CurrentSpotFleetRequestState\":{\"locationName\":\"currentSpotFleetRequestState\"},\"PreviousSpotFleetRequestState\":{\"locationName\":\"previousSpotFleetRequestState\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"}}}},\"UnsuccessfulFleetRequests\":{\"locationName\":\"unsuccessfulFleetRequestSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"}}}}}}},\"CancelSpotInstanceRequests\":{\"input\":{\"type\":\"structure\",\"required\":[\"SpotInstanceRequestIds\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"SpotInstanceRequestIds\":{\"shape\":\"S60\",\"locationName\":\"SpotInstanceRequestId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CancelledSpotInstanceRequests\":{\"locationName\":\"spotInstanceRequestSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SpotInstanceRequestId\":{\"locationName\":\"spotInstanceRequestId\"},\"State\":{\"locationName\":\"state\"}}}}}}},\"ConfirmProductInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"ProductCode\"],\"members\":{\"InstanceId\":{},\"ProductCode\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{\"locationName\":\"ownerId\"},\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"CopyFpgaImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceFpgaImageId\",\"SourceRegion\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"SourceFpgaImageId\":{},\"Description\":{},\"Name\":{},\"SourceRegion\":{},\"ClientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FpgaImageId\":{\"locationName\":\"fpgaImageId\"}}}},\"CopyImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SourceImageId\",\"SourceRegion\"],\"members\":{\"ClientToken\":{},\"Description\":{},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"Name\":{},\"SourceImageId\":{},\"SourceRegion\":{},\"DestinationOutpostArn\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{\"locationName\":\"imageId\"}}}},\"CopySnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceRegion\",\"SourceSnapshotId\"],\"members\":{\"Description\":{},\"DestinationOutpostArn\":{},\"DestinationRegion\":{\"locationName\":\"destinationRegion\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"PresignedUrl\":{\"locationName\":\"presignedUrl\"},\"SourceRegion\":{},\"SourceSnapshotId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"CreateCapacityReservation\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceType\",\"InstancePlatform\",\"InstanceCount\"],\"members\":{\"ClientToken\":{},\"InstanceType\":{},\"InstancePlatform\":{},\"AvailabilityZone\":{},\"AvailabilityZoneId\":{},\"Tenancy\":{},\"InstanceCount\":{\"type\":\"integer\"},\"EbsOptimized\":{\"type\":\"boolean\"},\"EphemeralStorage\":{\"type\":\"boolean\"},\"EndDate\":{\"type\":\"timestamp\"},\"EndDateType\":{},\"InstanceMatchCriteria\":{},\"TagSpecifications\":{\"shape\":\"S1t\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CapacityReservation\":{\"shape\":\"S6l\",\"locationName\":\"capacityReservation\"}}}},\"CreateCarrierGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"VpcId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"CarrierGateway\":{\"shape\":\"S6q\",\"locationName\":\"carrierGateway\"}}}},\"CreateClientVpnEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientCidrBlock\",\"ServerCertificateArn\",\"AuthenticationOptions\",\"ConnectionLogOptions\"],\"members\":{\"ClientCidrBlock\":{},\"ServerCertificateArn\":{},\"AuthenticationOptions\":{\"locationName\":\"Authentication\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"ActiveDirectory\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{}}},\"MutualAuthentication\":{\"type\":\"structure\",\"members\":{\"ClientRootCertificateChainArn\":{}}},\"FederatedAuthentication\":{\"type\":\"structure\",\"members\":{\"SAMLProviderArn\":{},\"SelfServiceSAMLProviderArn\":{}}}}}},\"ConnectionLogOptions\":{\"shape\":\"S70\"},\"DnsServers\":{\"shape\":\"Se\"},\"TransportProtocol\":{},\"VpnPort\":{\"type\":\"integer\"},\"Description\":{},\"SplitTunnel\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"SecurityGroupIds\":{\"shape\":\"S25\",\"locationName\":\"SecurityGroupId\"},\"VpcId\":{},\"SelfServicePortal\":{},\"ClientConnectOptions\":{\"shape\":\"S73\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"Status\":{\"shape\":\"S75\",\"locationName\":\"status\"},\"DnsName\":{\"locationName\":\"dnsName\"}}}},\"CreateClientVpnRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"DestinationCidrBlock\",\"TargetVpcSubnetId\"],\"members\":{\"ClientVpnEndpointId\":{},\"DestinationCidrBlock\":{},\"TargetVpcSubnetId\":{},\"Description\":{},\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"shape\":\"S79\",\"locationName\":\"status\"}}}},\"CreateCustomerGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"BgpAsn\",\"Type\"],\"members\":{\"BgpAsn\":{\"type\":\"integer\"},\"PublicIp\":{\"locationName\":\"IpAddress\"},\"CertificateArn\":{},\"Type\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DeviceName\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomerGateway\":{\"shape\":\"S7e\",\"locationName\":\"customerGateway\"}}}},\"CreateDefaultSubnet\":{\"input\":{\"type\":\"structure\",\"required\":[\"AvailabilityZone\"],\"members\":{\"AvailabilityZone\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Subnet\":{\"shape\":\"S7h\",\"locationName\":\"subnet\"}}}},\"CreateDefaultVpc\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Vpc\":{\"shape\":\"S7n\",\"locationName\":\"vpc\"}}}},\"CreateDhcpOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DhcpConfigurations\"],\"members\":{\"DhcpConfigurations\":{\"locationName\":\"dhcpConfiguration\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"key\"},\"Values\":{\"shape\":\"Se\",\"locationName\":\"Value\"}}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DhcpOptions\":{\"shape\":\"S7w\",\"locationName\":\"dhcpOptions\"}}}},\"CreateEgressOnlyInternetGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"ClientToken\":{},\"DryRun\":{\"type\":\"boolean\"},\"VpcId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"EgressOnlyInternetGateway\":{\"shape\":\"S83\",\"locationName\":\"egressOnlyInternetGateway\"}}}},\"CreateFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"LaunchTemplateConfigs\",\"TargetCapacitySpecification\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{},\"SpotOptions\":{\"type\":\"structure\",\"members\":{\"AllocationStrategy\":{},\"MaintenanceStrategies\":{\"type\":\"structure\",\"members\":{\"CapacityRebalance\":{\"type\":\"structure\",\"members\":{\"ReplacementStrategy\":{}}}}},\"InstanceInterruptionBehavior\":{},\"InstancePoolsToUseCount\":{\"type\":\"integer\"},\"SingleInstanceType\":{\"type\":\"boolean\"},\"SingleAvailabilityZone\":{\"type\":\"boolean\"},\"MinTargetCapacity\":{\"type\":\"integer\"},\"MaxTotalPrice\":{}}},\"OnDemandOptions\":{\"type\":\"structure\",\"members\":{\"AllocationStrategy\":{},\"CapacityReservationOptions\":{\"type\":\"structure\",\"members\":{\"UsageStrategy\":{}}},\"SingleInstanceType\":{\"type\":\"boolean\"},\"SingleAvailabilityZone\":{\"type\":\"boolean\"},\"MinTargetCapacity\":{\"type\":\"integer\"},\"MaxTotalPrice\":{}}},\"ExcessCapacityTerminationPolicy\":{},\"LaunchTemplateConfigs\":{\"shape\":\"S8j\"},\"TargetCapacitySpecification\":{\"shape\":\"S8s\"},\"TerminateInstancesWithExpiration\":{\"type\":\"boolean\"},\"Type\":{},\"ValidFrom\":{\"type\":\"timestamp\"},\"ValidUntil\":{\"type\":\"timestamp\"},\"ReplaceUnhealthyInstances\":{\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{\"locationName\":\"fleetId\"},\"Errors\":{\"locationName\":\"errorSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateAndOverrides\":{\"shape\":\"S8z\",\"locationName\":\"launchTemplateAndOverrides\"},\"Lifecycle\":{\"locationName\":\"lifecycle\"},\"ErrorCode\":{\"locationName\":\"errorCode\"},\"ErrorMessage\":{\"locationName\":\"errorMessage\"}}}},\"Instances\":{\"locationName\":\"fleetInstanceSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateAndOverrides\":{\"shape\":\"S8z\",\"locationName\":\"launchTemplateAndOverrides\"},\"Lifecycle\":{\"locationName\":\"lifecycle\"},\"InstanceIds\":{\"shape\":\"S96\",\"locationName\":\"instanceIds\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"Platform\":{\"locationName\":\"platform\"}}}}}}},\"CreateFlowLogs\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceIds\",\"ResourceType\",\"TrafficType\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{},\"DeliverLogsPermissionArn\":{},\"LogGroupName\":{},\"ResourceIds\":{\"locationName\":\"ResourceId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"ResourceType\":{},\"TrafficType\":{},\"LogDestinationType\":{},\"LogDestination\":{},\"LogFormat\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"MaxAggregationInterval\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"FlowLogIds\":{\"shape\":\"Se\",\"locationName\":\"flowLogIdSet\"},\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"CreateFpgaImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputStorageLocation\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InputStorageLocation\":{\"shape\":\"S9g\"},\"LogsStorageLocation\":{\"shape\":\"S9g\"},\"Description\":{},\"Name\":{},\"ClientToken\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FpgaImageId\":{\"locationName\":\"fpgaImageId\"},\"FpgaImageGlobalId\":{\"locationName\":\"fpgaImageGlobalId\"}}}},\"CreateImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Name\"],\"members\":{\"BlockDeviceMappings\":{\"shape\":\"S9j\",\"locationName\":\"blockDeviceMapping\"},\"Description\":{\"locationName\":\"description\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"Name\":{\"locationName\":\"name\"},\"NoReboot\":{\"locationName\":\"noReboot\",\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{\"locationName\":\"imageId\"}}}},\"CreateInstanceExportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportToS3Task\",\"InstanceId\",\"TargetEnvironment\"],\"members\":{\"Description\":{\"locationName\":\"description\"},\"ExportToS3Task\":{\"locationName\":\"exportToS3\",\"type\":\"structure\",\"members\":{\"ContainerFormat\":{\"locationName\":\"containerFormat\"},\"DiskImageFormat\":{\"locationName\":\"diskImageFormat\"},\"S3Bucket\":{\"locationName\":\"s3Bucket\"},\"S3Prefix\":{\"locationName\":\"s3Prefix\"}}},\"InstanceId\":{\"locationName\":\"instanceId\"},\"TargetEnvironment\":{\"locationName\":\"targetEnvironment\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExportTask\":{\"shape\":\"S9u\",\"locationName\":\"exportTask\"}}}},\"CreateInternetGateway\":{\"input\":{\"type\":\"structure\",\"members\":{\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InternetGateway\":{\"shape\":\"Sa0\",\"locationName\":\"internetGateway\"}}}},\"CreateKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyName\"],\"members\":{\"KeyName\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyFingerprint\":{\"locationName\":\"keyFingerprint\"},\"KeyMaterial\":{\"locationName\":\"keyMaterial\",\"type\":\"string\",\"sensitive\":true},\"KeyName\":{\"locationName\":\"keyName\"},\"KeyPairId\":{\"locationName\":\"keyPairId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"CreateLaunchTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"LaunchTemplateName\",\"LaunchTemplateData\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{},\"LaunchTemplateName\":{},\"VersionDescription\":{},\"LaunchTemplateData\":{\"shape\":\"Sa6\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplate\":{\"shape\":\"Sbi\",\"locationName\":\"launchTemplate\"},\"Warning\":{\"shape\":\"Sbj\",\"locationName\":\"warning\"}}}},\"CreateLaunchTemplateVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"LaunchTemplateData\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{},\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"SourceVersion\":{},\"VersionDescription\":{},\"LaunchTemplateData\":{\"shape\":\"Sa6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateVersion\":{\"shape\":\"Sbo\",\"locationName\":\"launchTemplateVersion\"},\"Warning\":{\"shape\":\"Sbj\",\"locationName\":\"warning\"}}}},\"CreateLocalGatewayRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationCidrBlock\",\"LocalGatewayRouteTableId\",\"LocalGatewayVirtualInterfaceGroupId\"],\"members\":{\"DestinationCidrBlock\":{},\"LocalGatewayRouteTableId\":{},\"DryRun\":{\"type\":\"boolean\"},\"LocalGatewayVirtualInterfaceGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Route\":{\"shape\":\"Scm\",\"locationName\":\"route\"}}}},\"CreateLocalGatewayRouteTableVpcAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocalGatewayRouteTableId\",\"VpcId\"],\"members\":{\"LocalGatewayRouteTableId\":{},\"VpcId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVpcAssociation\":{\"shape\":\"Scr\",\"locationName\":\"localGatewayRouteTableVpcAssociation\"}}}},\"CreateManagedPrefixList\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrefixListName\",\"MaxEntries\",\"AddressFamily\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"PrefixListName\":{},\"Entries\":{\"shape\":\"Scu\",\"locationName\":\"Entry\"},\"MaxEntries\":{\"type\":\"integer\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"AddressFamily\":{},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrefixList\":{\"shape\":\"Scx\",\"locationName\":\"prefixList\"}}}},\"CreateNatGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetId\",\"AllocationId\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"},\"SubnetId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"AllocationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"NatGateway\":{\"shape\":\"Sd2\",\"locationName\":\"natGateway\"}}}},\"CreateNetworkAcl\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkAcl\":{\"shape\":\"Sd9\",\"locationName\":\"networkAcl\"}}}},\"CreateNetworkAclEntry\":{\"input\":{\"type\":\"structure\",\"required\":[\"Egress\",\"NetworkAclId\",\"Protocol\",\"RuleAction\",\"RuleNumber\"],\"members\":{\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Egress\":{\"locationName\":\"egress\",\"type\":\"boolean\"},\"IcmpTypeCode\":{\"shape\":\"Sde\",\"locationName\":\"Icmp\"},\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"},\"PortRange\":{\"shape\":\"Sdf\",\"locationName\":\"portRange\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RuleAction\":{\"locationName\":\"ruleAction\"},\"RuleNumber\":{\"locationName\":\"ruleNumber\",\"type\":\"integer\"}}}},\"CreateNetworkInsightsPath\":{\"input\":{\"type\":\"structure\",\"required\":[\"Source\",\"Destination\",\"Protocol\",\"ClientToken\"],\"members\":{\"SourceIp\":{},\"DestinationIp\":{},\"Source\":{},\"Destination\":{},\"Protocol\":{},\"DestinationPort\":{\"type\":\"integer\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsPath\":{\"shape\":\"Sdo\",\"locationName\":\"networkInsightsPath\"}}}},\"CreateNetworkInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetId\"],\"members\":{\"Description\":{\"locationName\":\"description\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Saf\",\"locationName\":\"SecurityGroupId\"},\"Ipv6AddressCount\":{\"locationName\":\"ipv6AddressCount\",\"type\":\"integer\"},\"Ipv6Addresses\":{\"shape\":\"Sbw\",\"locationName\":\"ipv6Addresses\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"PrivateIpAddresses\":{\"shape\":\"Sai\",\"locationName\":\"privateIpAddresses\"},\"SecondaryPrivateIpAddressCount\":{\"locationName\":\"secondaryPrivateIpAddressCount\",\"type\":\"integer\"},\"InterfaceType\":{},\"SubnetId\":{\"locationName\":\"subnetId\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInterface\":{\"shape\":\"Sdt\",\"locationName\":\"networkInterface\"}}}},\"CreateNetworkInterfacePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\",\"Permission\"],\"members\":{\"NetworkInterfaceId\":{},\"AwsAccountId\":{},\"AwsService\":{},\"Permission\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InterfacePermission\":{\"shape\":\"Se7\",\"locationName\":\"interfacePermission\"}}}},\"CreatePlacementGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"GroupName\":{\"locationName\":\"groupName\"},\"Strategy\":{\"locationName\":\"strategy\"},\"PartitionCount\":{\"type\":\"integer\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PlacementGroup\":{\"shape\":\"Sed\",\"locationName\":\"placementGroup\"}}}},\"CreateReplaceRootVolumeTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"SnapshotId\":{},\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplaceRootVolumeTask\":{\"shape\":\"Seh\",\"locationName\":\"replaceRootVolumeTask\"}}}},\"CreateReservedInstancesListing\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"InstanceCount\",\"PriceSchedules\",\"ReservedInstancesId\"],\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"PriceSchedules\":{\"locationName\":\"priceSchedules\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Price\":{\"locationName\":\"price\",\"type\":\"double\"},\"Term\":{\"locationName\":\"term\",\"type\":\"long\"}}}},\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstancesListings\":{\"shape\":\"S5d\",\"locationName\":\"reservedInstancesListingsSet\"}}}},\"CreateRestoreImageTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"ObjectKey\"],\"members\":{\"Bucket\":{},\"ObjectKey\":{},\"Name\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{\"locationName\":\"imageId\"}}}},\"CreateRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"RouteTableId\"],\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"DestinationIpv6CidrBlock\":{\"locationName\":\"destinationIpv6CidrBlock\"},\"DestinationPrefixListId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcEndpointId\":{},\"EgressOnlyInternetGatewayId\":{\"locationName\":\"egressOnlyInternetGatewayId\"},\"GatewayId\":{\"locationName\":\"gatewayId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"NatGatewayId\":{\"locationName\":\"natGatewayId\"},\"TransitGatewayId\":{},\"LocalGatewayId\":{},\"CarrierGatewayId\":{},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"CreateRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RouteTable\":{\"shape\":\"Sex\",\"locationName\":\"routeTable\"}}}},\"CreateSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Description\",\"GroupName\"],\"members\":{\"Description\":{\"locationName\":\"GroupDescription\"},\"GroupName\":{},\"VpcId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"locationName\":\"groupId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"CreateSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"Description\":{},\"OutpostArn\":{},\"VolumeId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"shape\":\"Sf9\"}},\"CreateSnapshots\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceSpecification\"],\"members\":{\"Description\":{},\"InstanceSpecification\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"ExcludeBootVolume\":{\"type\":\"boolean\"}}},\"OutpostArn\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"},\"CopyTagsFromSource\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Snapshots\":{\"locationName\":\"snapshotSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"VolumeId\":{\"locationName\":\"volumeId\"},\"State\":{\"locationName\":\"state\"},\"VolumeSize\":{\"locationName\":\"volumeSize\",\"type\":\"integer\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"Progress\":{\"locationName\":\"progress\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"}}}}}}},\"CreateSpotDatafeedSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"locationName\":\"bucket\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Prefix\":{\"locationName\":\"prefix\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SpotDatafeedSubscription\":{\"shape\":\"Sfj\",\"locationName\":\"spotDatafeedSubscription\"}}}},\"CreateStoreImageTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageId\",\"Bucket\"],\"members\":{\"ImageId\":{},\"Bucket\":{},\"S3ObjectTags\":{\"locationName\":\"S3ObjectTag\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectKey\":{\"locationName\":\"objectKey\"}}}},\"CreateSubnet\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"CidrBlock\"],\"members\":{\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"AvailabilityZone\":{},\"AvailabilityZoneId\":{},\"Ipv6CidrBlock\":{},\"OutpostArn\":{},\"VpcId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"CidrBlock\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Subnet\":{\"shape\":\"S7h\",\"locationName\":\"subnet\"}}}},\"CreateTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resources\",\"Tags\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Resources\":{\"shape\":\"Sft\",\"locationName\":\"ResourceId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"Tag\"}}}},\"CreateTrafficMirrorFilter\":{\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilter\":{\"shape\":\"Sfx\",\"locationName\":\"trafficMirrorFilter\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateTrafficMirrorFilterRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorFilterId\",\"TrafficDirection\",\"RuleNumber\",\"RuleAction\",\"DestinationCidrBlock\",\"SourceCidrBlock\"],\"members\":{\"TrafficMirrorFilterId\":{},\"TrafficDirection\":{},\"RuleNumber\":{\"type\":\"integer\"},\"RuleAction\":{},\"DestinationPortRange\":{\"shape\":\"Sg7\"},\"SourcePortRange\":{\"shape\":\"Sg7\"},\"Protocol\":{\"type\":\"integer\"},\"DestinationCidrBlock\":{},\"SourceCidrBlock\":{},\"Description\":{},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterRule\":{\"shape\":\"Sfz\",\"locationName\":\"trafficMirrorFilterRule\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateTrafficMirrorSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\",\"TrafficMirrorTargetId\",\"TrafficMirrorFilterId\",\"SessionNumber\"],\"members\":{\"NetworkInterfaceId\":{},\"TrafficMirrorTargetId\":{},\"TrafficMirrorFilterId\":{},\"PacketLength\":{\"type\":\"integer\"},\"SessionNumber\":{\"type\":\"integer\"},\"VirtualNetworkId\":{\"type\":\"integer\"},\"Description\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorSession\":{\"shape\":\"Sgc\",\"locationName\":\"trafficMirrorSession\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateTrafficMirrorTarget\":{\"input\":{\"type\":\"structure\",\"members\":{\"NetworkInterfaceId\":{},\"NetworkLoadBalancerArn\":{},\"Description\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorTarget\":{\"shape\":\"Sgf\",\"locationName\":\"trafficMirrorTarget\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateTransitGateway\":{\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Options\":{\"type\":\"structure\",\"members\":{\"AmazonSideAsn\":{\"type\":\"long\"},\"AutoAcceptSharedAttachments\":{},\"DefaultRouteTableAssociation\":{},\"DefaultRouteTablePropagation\":{},\"VpnEcmpSupport\":{},\"DnsSupport\":{},\"MulticastSupport\":{},\"TransitGatewayCidrBlocks\":{\"shape\":\"Sgo\"}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGateway\":{\"shape\":\"Sgq\",\"locationName\":\"transitGateway\"}}}},\"CreateTransitGatewayConnect\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransportTransitGatewayAttachmentId\",\"Options\"],\"members\":{\"TransportTransitGatewayAttachmentId\":{},\"Options\":{\"type\":\"structure\",\"required\":[\"Protocol\"],\"members\":{\"Protocol\":{}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnect\":{\"shape\":\"Sgx\",\"locationName\":\"transitGatewayConnect\"}}}},\"CreateTransitGatewayConnectPeer\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\",\"PeerAddress\",\"InsideCidrBlocks\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"TransitGatewayAddress\":{},\"PeerAddress\":{},\"BgpOptions\":{\"type\":\"structure\",\"members\":{\"PeerAsn\":{\"type\":\"long\"}}},\"InsideCidrBlocks\":{\"shape\":\"Sh1\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeer\":{\"shape\":\"Sh3\",\"locationName\":\"transitGatewayConnectPeer\"}}}},\"CreateTransitGatewayMulticastDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayId\"],\"members\":{\"TransitGatewayId\":{},\"Options\":{\"type\":\"structure\",\"members\":{\"Igmpv2Support\":{},\"StaticSourcesSupport\":{},\"AutoAcceptSharedAssociations\":{}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomain\":{\"shape\":\"Shg\",\"locationName\":\"transitGatewayMulticastDomain\"}}}},\"CreateTransitGatewayPeeringAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayId\",\"PeerTransitGatewayId\",\"PeerAccountId\",\"PeerRegion\"],\"members\":{\"TransitGatewayId\":{},\"PeerTransitGatewayId\":{},\"PeerAccountId\":{},\"PeerRegion\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPeeringAttachment\":{\"shape\":\"Sn\",\"locationName\":\"transitGatewayPeeringAttachment\"}}}},\"CreateTransitGatewayPrefixListReference\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"PrefixListId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"PrefixListId\":{},\"TransitGatewayAttachmentId\":{},\"Blackhole\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPrefixListReference\":{\"shape\":\"Sho\",\"locationName\":\"transitGatewayPrefixListReference\"}}}},\"CreateTransitGatewayRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationCidrBlock\",\"TransitGatewayRouteTableId\"],\"members\":{\"DestinationCidrBlock\":{},\"TransitGatewayRouteTableId\":{},\"TransitGatewayAttachmentId\":{},\"Blackhole\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Route\":{\"shape\":\"Sht\",\"locationName\":\"route\"}}}},\"CreateTransitGatewayRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayId\"],\"members\":{\"TransitGatewayId\":{},\"TagSpecifications\":{\"shape\":\"S1t\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTable\":{\"shape\":\"Si0\",\"locationName\":\"transitGatewayRouteTable\"}}}},\"CreateTransitGatewayVpcAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayId\",\"VpcId\",\"SubnetIds\"],\"members\":{\"TransitGatewayId\":{},\"VpcId\":{},\"SubnetIds\":{\"shape\":\"S3e\"},\"Options\":{\"type\":\"structure\",\"members\":{\"DnsSupport\":{},\"Ipv6Support\":{},\"ApplianceModeSupport\":{}}},\"TagSpecifications\":{\"shape\":\"S1t\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayVpcAttachment\":{\"shape\":\"Sw\",\"locationName\":\"transitGatewayVpcAttachment\"}}}},\"CreateVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"AvailabilityZone\"],\"members\":{\"AvailabilityZone\":{},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"KmsKeyId\":{},\"OutpostArn\":{},\"Size\":{\"type\":\"integer\"},\"SnapshotId\":{},\"VolumeType\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"MultiAttachEnabled\":{\"type\":\"boolean\"},\"Throughput\":{\"type\":\"integer\"}}},\"output\":{\"shape\":\"Si6\"}},\"CreateVpc\":{\"input\":{\"type\":\"structure\",\"required\":[\"CidrBlock\"],\"members\":{\"CidrBlock\":{},\"AmazonProvidedIpv6CidrBlock\":{\"locationName\":\"amazonProvidedIpv6CidrBlock\",\"type\":\"boolean\"},\"Ipv6Pool\":{},\"Ipv6CidrBlock\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceTenancy\":{\"locationName\":\"instanceTenancy\"},\"Ipv6CidrBlockNetworkBorderGroup\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Vpc\":{\"shape\":\"S7n\",\"locationName\":\"vpc\"}}}},\"CreateVpcEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"ServiceName\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"VpcEndpointType\":{},\"VpcId\":{},\"ServiceName\":{},\"PolicyDocument\":{},\"RouteTableIds\":{\"shape\":\"Sid\",\"locationName\":\"RouteTableId\"},\"SubnetIds\":{\"shape\":\"Sie\",\"locationName\":\"SubnetId\"},\"SecurityGroupIds\":{\"shape\":\"Sif\",\"locationName\":\"SecurityGroupId\"},\"ClientToken\":{},\"PrivateDnsEnabled\":{\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcEndpoint\":{\"shape\":\"Sih\",\"locationName\":\"vpcEndpoint\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateVpcEndpointConnectionNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionNotificationArn\",\"ConnectionEvents\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{},\"VpcEndpointId\":{},\"ConnectionNotificationArn\":{},\"ConnectionEvents\":{\"shape\":\"Se\"},\"ClientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionNotification\":{\"shape\":\"Siq\",\"locationName\":\"connectionNotification\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateVpcEndpointServiceConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"AcceptanceRequired\":{\"type\":\"boolean\"},\"PrivateDnsName\":{},\"NetworkLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"NetworkLoadBalancerArn\"},\"GatewayLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"GatewayLoadBalancerArn\"},\"ClientToken\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceConfiguration\":{\"shape\":\"Siv\",\"locationName\":\"serviceConfiguration\"},\"ClientToken\":{\"locationName\":\"clientToken\"}}}},\"CreateVpcPeeringConnection\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"PeerOwnerId\":{\"locationName\":\"peerOwnerId\"},\"PeerVpcId\":{\"locationName\":\"peerVpcId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"PeerRegion\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcPeeringConnection\":{\"shape\":\"S1c\",\"locationName\":\"vpcPeeringConnection\"}}}},\"CreateVpnConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomerGatewayId\",\"Type\"],\"members\":{\"CustomerGatewayId\":{},\"Type\":{},\"VpnGatewayId\":{},\"TransitGatewayId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Options\":{\"locationName\":\"options\",\"type\":\"structure\",\"members\":{\"EnableAcceleration\":{\"type\":\"boolean\"},\"StaticRoutesOnly\":{\"locationName\":\"staticRoutesOnly\",\"type\":\"boolean\"},\"TunnelInsideIpVersion\":{},\"TunnelOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TunnelInsideCidr\":{},\"TunnelInsideIpv6Cidr\":{},\"PreSharedKey\":{},\"Phase1LifetimeSeconds\":{\"type\":\"integer\"},\"Phase2LifetimeSeconds\":{\"type\":\"integer\"},\"RekeyMarginTimeSeconds\":{\"type\":\"integer\"},\"RekeyFuzzPercentage\":{\"type\":\"integer\"},\"ReplayWindowSize\":{\"type\":\"integer\"},\"DPDTimeoutSeconds\":{\"type\":\"integer\"},\"DPDTimeoutAction\":{},\"Phase1EncryptionAlgorithms\":{\"shape\":\"Sja\",\"locationName\":\"Phase1EncryptionAlgorithm\"},\"Phase2EncryptionAlgorithms\":{\"shape\":\"Sjc\",\"locationName\":\"Phase2EncryptionAlgorithm\"},\"Phase1IntegrityAlgorithms\":{\"shape\":\"Sje\",\"locationName\":\"Phase1IntegrityAlgorithm\"},\"Phase2IntegrityAlgorithms\":{\"shape\":\"Sjg\",\"locationName\":\"Phase2IntegrityAlgorithm\"},\"Phase1DHGroupNumbers\":{\"shape\":\"Sji\",\"locationName\":\"Phase1DHGroupNumber\"},\"Phase2DHGroupNumbers\":{\"shape\":\"Sjk\",\"locationName\":\"Phase2DHGroupNumber\"},\"IKEVersions\":{\"shape\":\"Sjm\",\"locationName\":\"IKEVersion\"},\"StartupAction\":{}}}},\"LocalIpv4NetworkCidr\":{},\"RemoteIpv4NetworkCidr\":{},\"LocalIpv6NetworkCidr\":{},\"RemoteIpv6NetworkCidr\":{}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnConnection\":{\"shape\":\"Sjp\",\"locationName\":\"vpnConnection\"}}}},\"CreateVpnConnectionRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationCidrBlock\",\"VpnConnectionId\"],\"members\":{\"DestinationCidrBlock\":{},\"VpnConnectionId\":{}}}},\"CreateVpnGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"AvailabilityZone\":{},\"Type\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"AmazonSideAsn\":{\"type\":\"long\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnGateway\":{\"shape\":\"Ski\",\"locationName\":\"vpnGateway\"}}}},\"DeleteCarrierGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"CarrierGatewayId\"],\"members\":{\"CarrierGatewayId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CarrierGateway\":{\"shape\":\"S6q\",\"locationName\":\"carrierGateway\"}}}},\"DeleteClientVpnEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"shape\":\"S75\",\"locationName\":\"status\"}}}},\"DeleteClientVpnRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"DestinationCidrBlock\"],\"members\":{\"ClientVpnEndpointId\":{},\"TargetVpcSubnetId\":{},\"DestinationCidrBlock\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"shape\":\"S79\",\"locationName\":\"status\"}}}},\"DeleteCustomerGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomerGatewayId\"],\"members\":{\"CustomerGatewayId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteDhcpOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DhcpOptionsId\"],\"members\":{\"DhcpOptionsId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteEgressOnlyInternetGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"EgressOnlyInternetGatewayId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"EgressOnlyInternetGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnCode\":{\"locationName\":\"returnCode\",\"type\":\"boolean\"}}}},\"DeleteFleets\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetIds\",\"TerminateInstances\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FleetIds\":{\"shape\":\"Skw\",\"locationName\":\"FleetId\"},\"TerminateInstances\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuccessfulFleetDeletions\":{\"locationName\":\"successfulFleetDeletionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CurrentFleetState\":{\"locationName\":\"currentFleetState\"},\"PreviousFleetState\":{\"locationName\":\"previousFleetState\"},\"FleetId\":{\"locationName\":\"fleetId\"}}}},\"UnsuccessfulFleetDeletions\":{\"locationName\":\"unsuccessfulFleetDeletionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"FleetId\":{\"locationName\":\"fleetId\"}}}}}}},\"DeleteFlowLogs\":{\"input\":{\"type\":\"structure\",\"required\":[\"FlowLogIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FlowLogIds\":{\"shape\":\"Sl6\",\"locationName\":\"FlowLogId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"DeleteFpgaImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"FpgaImageId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FpgaImageId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DeleteInternetGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"InternetGatewayId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InternetGatewayId\":{\"locationName\":\"internetGatewayId\"}}}},\"DeleteKeyPair\":{\"input\":{\"type\":\"structure\",\"members\":{\"KeyName\":{},\"KeyPairId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteLaunchTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"LaunchTemplateId\":{},\"LaunchTemplateName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplate\":{\"shape\":\"Sbi\",\"locationName\":\"launchTemplate\"}}}},\"DeleteLaunchTemplateVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Versions\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"Versions\":{\"shape\":\"Sli\",\"locationName\":\"LaunchTemplateVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuccessfullyDeletedLaunchTemplateVersions\":{\"locationName\":\"successfullyDeletedLaunchTemplateVersionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{\"locationName\":\"launchTemplateId\"},\"LaunchTemplateName\":{\"locationName\":\"launchTemplateName\"},\"VersionNumber\":{\"locationName\":\"versionNumber\",\"type\":\"long\"}}}},\"UnsuccessfullyDeletedLaunchTemplateVersions\":{\"locationName\":\"unsuccessfullyDeletedLaunchTemplateVersionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{\"locationName\":\"launchTemplateId\"},\"LaunchTemplateName\":{\"locationName\":\"launchTemplateName\"},\"VersionNumber\":{\"locationName\":\"versionNumber\",\"type\":\"long\"},\"ResponseError\":{\"locationName\":\"responseError\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}}}}},\"DeleteLocalGatewayRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationCidrBlock\",\"LocalGatewayRouteTableId\"],\"members\":{\"DestinationCidrBlock\":{},\"LocalGatewayRouteTableId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Route\":{\"shape\":\"Scm\",\"locationName\":\"route\"}}}},\"DeleteLocalGatewayRouteTableVpcAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocalGatewayRouteTableVpcAssociationId\"],\"members\":{\"LocalGatewayRouteTableVpcAssociationId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVpcAssociation\":{\"shape\":\"Scr\",\"locationName\":\"localGatewayRouteTableVpcAssociation\"}}}},\"DeleteManagedPrefixList\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrefixListId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"PrefixListId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrefixList\":{\"shape\":\"Scx\",\"locationName\":\"prefixList\"}}}},\"DeleteNatGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"NatGatewayId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"NatGatewayId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NatGatewayId\":{\"locationName\":\"natGatewayId\"}}}},\"DeleteNetworkAcl\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkAclId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"}}}},\"DeleteNetworkAclEntry\":{\"input\":{\"type\":\"structure\",\"required\":[\"Egress\",\"NetworkAclId\",\"RuleNumber\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Egress\":{\"locationName\":\"egress\",\"type\":\"boolean\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"},\"RuleNumber\":{\"locationName\":\"ruleNumber\",\"type\":\"integer\"}}}},\"DeleteNetworkInsightsAnalysis\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInsightsAnalysisId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"NetworkInsightsAnalysisId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsAnalysisId\":{\"locationName\":\"networkInsightsAnalysisId\"}}}},\"DeleteNetworkInsightsPath\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInsightsPathId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"NetworkInsightsPathId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsPathId\":{\"locationName\":\"networkInsightsPathId\"}}}},\"DeleteNetworkInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"}}}},\"DeleteNetworkInterfacePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfacePermissionId\"],\"members\":{\"NetworkInterfacePermissionId\":{},\"Force\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DeletePlacementGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"GroupName\":{\"locationName\":\"groupName\"}}}},\"DeleteQueuedReservedInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedInstancesIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ReservedInstancesIds\":{\"locationName\":\"ReservedInstancesId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuccessfulQueuedPurchaseDeletions\":{\"locationName\":\"successfulQueuedPurchaseDeletionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"}}}},\"FailedQueuedPurchaseDeletions\":{\"locationName\":\"failedQueuedPurchaseDeletionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"}}}}}}},\"DeleteRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"RouteTableId\"],\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"DestinationIpv6CidrBlock\":{\"locationName\":\"destinationIpv6CidrBlock\"},\"DestinationPrefixListId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"}}}},\"DeleteRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"RouteTableId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"}}}},\"DeleteSecurityGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{},\"GroupName\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\"],\"members\":{\"SnapshotId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteSpotDatafeedSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteSubnet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetId\"],\"members\":{\"SubnetId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resources\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Resources\":{\"shape\":\"Sft\",\"locationName\":\"resourceId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tag\"}}}},\"DeleteTrafficMirrorFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorFilterId\"],\"members\":{\"TrafficMirrorFilterId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterId\":{\"locationName\":\"trafficMirrorFilterId\"}}}},\"DeleteTrafficMirrorFilterRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorFilterRuleId\"],\"members\":{\"TrafficMirrorFilterRuleId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterRuleId\":{\"locationName\":\"trafficMirrorFilterRuleId\"}}}},\"DeleteTrafficMirrorSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorSessionId\"],\"members\":{\"TrafficMirrorSessionId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorSessionId\":{\"locationName\":\"trafficMirrorSessionId\"}}}},\"DeleteTrafficMirrorTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorTargetId\"],\"members\":{\"TrafficMirrorTargetId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorTargetId\":{\"locationName\":\"trafficMirrorTargetId\"}}}},\"DeleteTransitGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayId\"],\"members\":{\"TransitGatewayId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGateway\":{\"shape\":\"Sgq\",\"locationName\":\"transitGateway\"}}}},\"DeleteTransitGatewayConnect\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnect\":{\"shape\":\"Sgx\",\"locationName\":\"transitGatewayConnect\"}}}},\"DeleteTransitGatewayConnectPeer\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayConnectPeerId\"],\"members\":{\"TransitGatewayConnectPeerId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeer\":{\"shape\":\"Sh3\",\"locationName\":\"transitGatewayConnectPeer\"}}}},\"DeleteTransitGatewayMulticastDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayMulticastDomainId\"],\"members\":{\"TransitGatewayMulticastDomainId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomain\":{\"shape\":\"Shg\",\"locationName\":\"transitGatewayMulticastDomain\"}}}},\"DeleteTransitGatewayPeeringAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPeeringAttachment\":{\"shape\":\"Sn\",\"locationName\":\"transitGatewayPeeringAttachment\"}}}},\"DeleteTransitGatewayPrefixListReference\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"PrefixListId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"PrefixListId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPrefixListReference\":{\"shape\":\"Sho\",\"locationName\":\"transitGatewayPrefixListReference\"}}}},\"DeleteTransitGatewayRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"DestinationCidrBlock\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"DestinationCidrBlock\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Route\":{\"shape\":\"Sht\",\"locationName\":\"route\"}}}},\"DeleteTransitGatewayRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTable\":{\"shape\":\"Si0\",\"locationName\":\"transitGatewayRouteTable\"}}}},\"DeleteTransitGatewayVpcAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayVpcAttachment\":{\"shape\":\"Sw\",\"locationName\":\"transitGatewayVpcAttachment\"}}}},\"DeleteVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"VolumeId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteVpc\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"VpcId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteVpcEndpointConnectionNotifications\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionNotificationIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ConnectionNotificationIds\":{\"locationName\":\"ConnectionNotificationId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"DeleteVpcEndpointServiceConfigurations\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceIds\":{\"shape\":\"Snp\",\"locationName\":\"ServiceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"DeleteVpcEndpoints\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcEndpointIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"VpcEndpointIds\":{\"shape\":\"S13\",\"locationName\":\"VpcEndpointId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"DeleteVpcPeeringConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcPeeringConnectionId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DeleteVpnConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpnConnectionId\"],\"members\":{\"VpnConnectionId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeleteVpnConnectionRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationCidrBlock\",\"VpnConnectionId\"],\"members\":{\"DestinationCidrBlock\":{},\"VpnConnectionId\":{}}}},\"DeleteVpnGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpnGatewayId\"],\"members\":{\"VpnGatewayId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeprovisionByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"S1n\",\"locationName\":\"byoipCidr\"}}}},\"DeregisterImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageId\"],\"members\":{\"ImageId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DeregisterInstanceEventNotificationAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceTagAttribute\":{\"type\":\"structure\",\"members\":{\"IncludeAllTagsOfInstance\":{\"type\":\"boolean\"},\"InstanceTagKeys\":{\"shape\":\"So3\",\"locationName\":\"InstanceTagKey\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceTagAttribute\":{\"shape\":\"So5\",\"locationName\":\"instanceTagAttribute\"}}}},\"DeregisterTransitGatewayMulticastGroupMembers\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"GroupIpAddress\":{},\"NetworkInterfaceIds\":{\"shape\":\"So7\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeregisteredMulticastGroupMembers\":{\"locationName\":\"deregisteredMulticastGroupMembers\",\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{\"locationName\":\"transitGatewayMulticastDomainId\"},\"DeregisteredNetworkInterfaceIds\":{\"shape\":\"Se\",\"locationName\":\"deregisteredNetworkInterfaceIds\"},\"GroupIpAddress\":{\"locationName\":\"groupIpAddress\"}}}}}},\"DeregisterTransitGatewayMulticastGroupSources\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"GroupIpAddress\":{},\"NetworkInterfaceIds\":{\"shape\":\"So7\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeregisteredMulticastGroupSources\":{\"locationName\":\"deregisteredMulticastGroupSources\",\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{\"locationName\":\"transitGatewayMulticastDomainId\"},\"DeregisteredNetworkInterfaceIds\":{\"shape\":\"Se\",\"locationName\":\"deregisteredNetworkInterfaceIds\"},\"GroupIpAddress\":{\"locationName\":\"groupIpAddress\"}}}}}},\"DescribeAccountAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"AttributeNames\":{\"locationName\":\"attributeName\",\"type\":\"list\",\"member\":{\"locationName\":\"attributeName\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAttributes\":{\"locationName\":\"accountAttributeSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AttributeName\":{\"locationName\":\"attributeName\"},\"AttributeValues\":{\"locationName\":\"attributeValueSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AttributeValue\":{\"locationName\":\"attributeValue\"}}}}}}}}}},\"DescribeAddresses\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"PublicIps\":{\"locationName\":\"PublicIp\",\"type\":\"list\",\"member\":{\"locationName\":\"PublicIp\"}},\"AllocationIds\":{\"locationName\":\"AllocationId\",\"type\":\"list\",\"member\":{\"locationName\":\"AllocationId\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Addresses\":{\"locationName\":\"addressesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"PublicIp\":{\"locationName\":\"publicIp\"},\"AllocationId\":{\"locationName\":\"allocationId\"},\"AssociationId\":{\"locationName\":\"associationId\"},\"Domain\":{\"locationName\":\"domain\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"NetworkInterfaceOwnerId\":{\"locationName\":\"networkInterfaceOwnerId\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"PublicIpv4Pool\":{\"locationName\":\"publicIpv4Pool\"},\"NetworkBorderGroup\":{\"locationName\":\"networkBorderGroup\"},\"CustomerOwnedIp\":{\"locationName\":\"customerOwnedIp\"},\"CustomerOwnedIpv4Pool\":{\"locationName\":\"customerOwnedIpv4Pool\"},\"CarrierIp\":{\"locationName\":\"carrierIp\"}}}}}}},\"DescribeAddressesAttribute\":{\"input\":{\"type\":\"structure\",\"members\":{\"AllocationIds\":{\"locationName\":\"AllocationId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Attribute\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Addresses\":{\"locationName\":\"addressSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sp0\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeAggregateIdFormat\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UseLongIdsAggregated\":{\"locationName\":\"useLongIdsAggregated\",\"type\":\"boolean\"},\"Statuses\":{\"shape\":\"Sp4\",\"locationName\":\"statusSet\"}}}},\"DescribeAvailabilityZones\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"ZoneNames\":{\"locationName\":\"ZoneName\",\"type\":\"list\",\"member\":{\"locationName\":\"ZoneName\"}},\"ZoneIds\":{\"locationName\":\"ZoneId\",\"type\":\"list\",\"member\":{\"locationName\":\"ZoneId\"}},\"AllAvailabilityZones\":{\"type\":\"boolean\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"locationName\":\"availabilityZoneInfo\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"zoneState\"},\"OptInStatus\":{\"locationName\":\"optInStatus\"},\"Messages\":{\"locationName\":\"messageSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Message\":{\"locationName\":\"message\"}}}},\"RegionName\":{\"locationName\":\"regionName\"},\"ZoneName\":{\"locationName\":\"zoneName\"},\"ZoneId\":{\"locationName\":\"zoneId\"},\"GroupName\":{\"locationName\":\"groupName\"},\"NetworkBorderGroup\":{\"locationName\":\"networkBorderGroup\"},\"ZoneType\":{\"locationName\":\"zoneType\"},\"ParentZoneName\":{\"locationName\":\"parentZoneName\"},\"ParentZoneId\":{\"locationName\":\"parentZoneId\"}}}}}}},\"DescribeBundleTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"BundleIds\":{\"locationName\":\"BundleId\",\"type\":\"list\",\"member\":{\"locationName\":\"BundleId\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BundleTasks\":{\"locationName\":\"bundleInstanceTasksSet\",\"type\":\"list\",\"member\":{\"shape\":\"S4u\",\"locationName\":\"item\"}}}}},\"DescribeByoipCidrs\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaxResults\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidrs\":{\"locationName\":\"byoipCidrSet\",\"type\":\"list\",\"member\":{\"shape\":\"S1n\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeCapacityReservations\":{\"input\":{\"type\":\"structure\",\"members\":{\"CapacityReservationIds\":{\"locationName\":\"CapacityReservationId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"CapacityReservations\":{\"locationName\":\"capacityReservationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S6l\",\"locationName\":\"item\"}}}}},\"DescribeCarrierGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"CarrierGatewayIds\":{\"locationName\":\"CarrierGatewayId\",\"type\":\"list\",\"member\":{}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CarrierGateways\":{\"locationName\":\"carrierGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"S6q\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClassicLinkInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"locationName\":\"instancesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Groups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClientVpnAuthorizationRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"DryRun\":{\"type\":\"boolean\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizationRules\":{\"locationName\":\"authorizationRule\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"Description\":{\"locationName\":\"description\"},\"GroupId\":{\"locationName\":\"groupId\"},\"AccessAll\":{\"locationName\":\"accessAll\",\"type\":\"boolean\"},\"DestinationCidr\":{\"locationName\":\"destinationCidr\"},\"Status\":{\"shape\":\"S4a\",\"locationName\":\"status\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClientVpnConnections\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connections\":{\"locationName\":\"connections\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"Timestamp\":{\"locationName\":\"timestamp\"},\"ConnectionId\":{\"locationName\":\"connectionId\"},\"Username\":{\"locationName\":\"username\"},\"ConnectionEstablishedTime\":{\"locationName\":\"connectionEstablishedTime\"},\"IngressBytes\":{\"locationName\":\"ingressBytes\"},\"EgressBytes\":{\"locationName\":\"egressBytes\"},\"IngressPackets\":{\"locationName\":\"ingressPackets\"},\"EgressPackets\":{\"locationName\":\"egressPackets\"},\"ClientIp\":{\"locationName\":\"clientIp\"},\"CommonName\":{\"locationName\":\"commonName\"},\"Status\":{\"shape\":\"Sqe\",\"locationName\":\"status\"},\"ConnectionEndTime\":{\"locationName\":\"connectionEndTime\"},\"PostureComplianceStatuses\":{\"shape\":\"Se\",\"locationName\":\"postureComplianceStatusSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClientVpnEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClientVpnEndpointIds\":{\"locationName\":\"ClientVpnEndpointId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientVpnEndpoints\":{\"locationName\":\"clientVpnEndpoint\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"Description\":{\"locationName\":\"description\"},\"Status\":{\"shape\":\"S75\",\"locationName\":\"status\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"DeletionTime\":{\"locationName\":\"deletionTime\"},\"DnsName\":{\"locationName\":\"dnsName\"},\"ClientCidrBlock\":{\"locationName\":\"clientCidrBlock\"},\"DnsServers\":{\"shape\":\"Se\",\"locationName\":\"dnsServer\"},\"SplitTunnel\":{\"locationName\":\"splitTunnel\",\"type\":\"boolean\"},\"VpnProtocol\":{\"locationName\":\"vpnProtocol\"},\"TransportProtocol\":{\"locationName\":\"transportProtocol\"},\"VpnPort\":{\"locationName\":\"vpnPort\",\"type\":\"integer\"},\"AssociatedTargetNetworks\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated. To view the target networks associated with a Client VPN endpoint, call DescribeClientVpnTargetNetworks and inspect the clientVpnTargetNetworks response element.\",\"locationName\":\"associatedTargetNetwork\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"NetworkId\":{\"locationName\":\"networkId\"},\"NetworkType\":{\"locationName\":\"networkType\"}}}},\"ServerCertificateArn\":{\"locationName\":\"serverCertificateArn\"},\"AuthenticationOptions\":{\"locationName\":\"authenticationOptions\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Type\":{\"locationName\":\"type\"},\"ActiveDirectory\":{\"locationName\":\"activeDirectory\",\"type\":\"structure\",\"members\":{\"DirectoryId\":{\"locationName\":\"directoryId\"}}},\"MutualAuthentication\":{\"locationName\":\"mutualAuthentication\",\"type\":\"structure\",\"members\":{\"ClientRootCertificateChain\":{\"locationName\":\"clientRootCertificateChain\"}}},\"FederatedAuthentication\":{\"locationName\":\"federatedAuthentication\",\"type\":\"structure\",\"members\":{\"SamlProviderArn\":{\"locationName\":\"samlProviderArn\"},\"SelfServiceSamlProviderArn\":{\"locationName\":\"selfServiceSamlProviderArn\"}}}}}},\"ConnectionLogOptions\":{\"locationName\":\"connectionLogOptions\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"CloudwatchLogGroup\":{},\"CloudwatchLogStream\":{}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"SecurityGroupIds\":{\"shape\":\"S25\",\"locationName\":\"securityGroupIdSet\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"SelfServicePortalUrl\":{\"locationName\":\"selfServicePortalUrl\"},\"ClientConnectOptions\":{\"locationName\":\"clientConnectOptions\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"},\"LambdaFunctionArn\":{\"locationName\":\"lambdaFunctionArn\"},\"Status\":{\"locationName\":\"status\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClientVpnRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Routes\":{\"locationName\":\"routes\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"DestinationCidr\":{\"locationName\":\"destinationCidr\"},\"TargetSubnet\":{\"locationName\":\"targetSubnet\"},\"Type\":{\"locationName\":\"type\"},\"Origin\":{\"locationName\":\"origin\"},\"Status\":{\"shape\":\"S79\",\"locationName\":\"status\"},\"Description\":{\"locationName\":\"description\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClientVpnTargetNetworks\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"AssociationIds\":{\"shape\":\"Se\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientVpnTargetNetworks\":{\"locationName\":\"clientVpnTargetNetworks\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"TargetNetworkId\":{\"locationName\":\"targetNetworkId\"},\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"Status\":{\"shape\":\"S2o\",\"locationName\":\"status\"},\"SecurityGroups\":{\"shape\":\"Se\",\"locationName\":\"securityGroups\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeCoipPools\":{\"input\":{\"type\":\"structure\",\"members\":{\"PoolIds\":{\"locationName\":\"PoolId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CoipPools\":{\"locationName\":\"coipPoolSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"PoolId\":{\"locationName\":\"poolId\"},\"PoolCidrs\":{\"shape\":\"Se\",\"locationName\":\"poolCidrSet\"},\"LocalGatewayRouteTableId\":{\"locationName\":\"localGatewayRouteTableId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"PoolArn\":{\"locationName\":\"poolArn\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeConversionTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ConversionTaskIds\":{\"locationName\":\"conversionTaskId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConversionTasks\":{\"locationName\":\"conversionTasks\",\"type\":\"list\",\"member\":{\"shape\":\"Srj\",\"locationName\":\"item\"}}}}},\"DescribeCustomerGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"CustomerGatewayIds\":{\"locationName\":\"CustomerGatewayId\",\"type\":\"list\",\"member\":{\"locationName\":\"CustomerGatewayId\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomerGateways\":{\"locationName\":\"customerGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"S7e\",\"locationName\":\"item\"}}}}},\"DescribeDhcpOptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"DhcpOptionsIds\":{\"locationName\":\"DhcpOptionsId\",\"type\":\"list\",\"member\":{\"locationName\":\"DhcpOptionsId\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DhcpOptions\":{\"locationName\":\"dhcpOptionsSet\",\"type\":\"list\",\"member\":{\"shape\":\"S7w\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeEgressOnlyInternetGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"EgressOnlyInternetGatewayIds\":{\"locationName\":\"EgressOnlyInternetGatewayId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EgressOnlyInternetGateways\":{\"locationName\":\"egressOnlyInternetGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"S83\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeElasticGpus\":{\"input\":{\"type\":\"structure\",\"members\":{\"ElasticGpuIds\":{\"locationName\":\"ElasticGpuId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ElasticGpuSet\":{\"locationName\":\"elasticGpuSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ElasticGpuId\":{\"locationName\":\"elasticGpuId\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"ElasticGpuType\":{\"locationName\":\"elasticGpuType\"},\"ElasticGpuHealth\":{\"locationName\":\"elasticGpuHealth\",\"type\":\"structure\",\"members\":{\"Status\":{\"locationName\":\"status\"}}},\"ElasticGpuState\":{\"locationName\":\"elasticGpuState\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeExportImageTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"ExportImageTaskIds\":{\"locationName\":\"ExportImageTaskId\",\"type\":\"list\",\"member\":{\"locationName\":\"ExportImageTaskId\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExportImageTasks\":{\"locationName\":\"exportImageTaskSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"ExportImageTaskId\":{\"locationName\":\"exportImageTaskId\"},\"ImageId\":{\"locationName\":\"imageId\"},\"Progress\":{\"locationName\":\"progress\"},\"S3ExportLocation\":{\"shape\":\"Ssm\",\"locationName\":\"s3ExportLocation\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeExportTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExportTaskIds\":{\"locationName\":\"exportTaskId\",\"type\":\"list\",\"member\":{\"locationName\":\"ExportTaskId\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExportTasks\":{\"locationName\":\"exportTaskSet\",\"type\":\"list\",\"member\":{\"shape\":\"S9u\",\"locationName\":\"item\"}}}}},\"DescribeFastSnapshotRestores\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FastSnapshotRestores\":{\"locationName\":\"fastSnapshotRestoreSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"State\":{\"locationName\":\"state\"},\"StateTransitionReason\":{\"locationName\":\"stateTransitionReason\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"OwnerAlias\":{\"locationName\":\"ownerAlias\"},\"EnablingTime\":{\"locationName\":\"enablingTime\",\"type\":\"timestamp\"},\"OptimizingTime\":{\"locationName\":\"optimizingTime\",\"type\":\"timestamp\"},\"EnabledTime\":{\"locationName\":\"enabledTime\",\"type\":\"timestamp\"},\"DisablingTime\":{\"locationName\":\"disablingTime\",\"type\":\"timestamp\"},\"DisabledTime\":{\"locationName\":\"disabledTime\",\"type\":\"timestamp\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeFleetHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"StartTime\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"EventType\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"FleetId\":{},\"StartTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HistoryRecords\":{\"locationName\":\"historyRecordSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"EventInformation\":{\"shape\":\"St3\",\"locationName\":\"eventInformation\"},\"EventType\":{\"locationName\":\"eventType\"},\"Timestamp\":{\"locationName\":\"timestamp\",\"type\":\"timestamp\"}}}},\"LastEvaluatedTime\":{\"locationName\":\"lastEvaluatedTime\",\"type\":\"timestamp\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"FleetId\":{\"locationName\":\"fleetId\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"}}}},\"DescribeFleetInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"FleetId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActiveInstances\":{\"shape\":\"St6\",\"locationName\":\"activeInstanceSet\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"FleetId\":{\"locationName\":\"fleetId\"}}}},\"DescribeFleets\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"FleetIds\":{\"shape\":\"Skw\",\"locationName\":\"FleetId\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Fleets\":{\"locationName\":\"fleetSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ActivityStatus\":{\"locationName\":\"activityStatus\"},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"FleetId\":{\"locationName\":\"fleetId\"},\"FleetState\":{\"locationName\":\"fleetState\"},\"ClientToken\":{\"locationName\":\"clientToken\"},\"ExcessCapacityTerminationPolicy\":{\"locationName\":\"excessCapacityTerminationPolicy\"},\"FulfilledCapacity\":{\"locationName\":\"fulfilledCapacity\",\"type\":\"double\"},\"FulfilledOnDemandCapacity\":{\"locationName\":\"fulfilledOnDemandCapacity\",\"type\":\"double\"},\"LaunchTemplateConfigs\":{\"locationName\":\"launchTemplateConfigs\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateSpecification\":{\"shape\":\"S90\",\"locationName\":\"launchTemplateSpecification\"},\"Overrides\":{\"locationName\":\"overrides\",\"type\":\"list\",\"member\":{\"shape\":\"S91\",\"locationName\":\"item\"}}}}},\"TargetCapacitySpecification\":{\"locationName\":\"targetCapacitySpecification\",\"type\":\"structure\",\"members\":{\"TotalTargetCapacity\":{\"locationName\":\"totalTargetCapacity\",\"type\":\"integer\"},\"OnDemandTargetCapacity\":{\"locationName\":\"onDemandTargetCapacity\",\"type\":\"integer\"},\"SpotTargetCapacity\":{\"locationName\":\"spotTargetCapacity\",\"type\":\"integer\"},\"DefaultTargetCapacityType\":{\"locationName\":\"defaultTargetCapacityType\"}}},\"TerminateInstancesWithExpiration\":{\"locationName\":\"terminateInstancesWithExpiration\",\"type\":\"boolean\"},\"Type\":{\"locationName\":\"type\"},\"ValidFrom\":{\"locationName\":\"validFrom\",\"type\":\"timestamp\"},\"ValidUntil\":{\"locationName\":\"validUntil\",\"type\":\"timestamp\"},\"ReplaceUnhealthyInstances\":{\"locationName\":\"replaceUnhealthyInstances\",\"type\":\"boolean\"},\"SpotOptions\":{\"locationName\":\"spotOptions\",\"type\":\"structure\",\"members\":{\"AllocationStrategy\":{\"locationName\":\"allocationStrategy\"},\"MaintenanceStrategies\":{\"locationName\":\"maintenanceStrategies\",\"type\":\"structure\",\"members\":{\"CapacityRebalance\":{\"locationName\":\"capacityRebalance\",\"type\":\"structure\",\"members\":{\"ReplacementStrategy\":{\"locationName\":\"replacementStrategy\"}}}}},\"InstanceInterruptionBehavior\":{\"locationName\":\"instanceInterruptionBehavior\"},\"InstancePoolsToUseCount\":{\"locationName\":\"instancePoolsToUseCount\",\"type\":\"integer\"},\"SingleInstanceType\":{\"locationName\":\"singleInstanceType\",\"type\":\"boolean\"},\"SingleAvailabilityZone\":{\"locationName\":\"singleAvailabilityZone\",\"type\":\"boolean\"},\"MinTargetCapacity\":{\"locationName\":\"minTargetCapacity\",\"type\":\"integer\"},\"MaxTotalPrice\":{\"locationName\":\"maxTotalPrice\"}}},\"OnDemandOptions\":{\"locationName\":\"onDemandOptions\",\"type\":\"structure\",\"members\":{\"AllocationStrategy\":{\"locationName\":\"allocationStrategy\"},\"CapacityReservationOptions\":{\"locationName\":\"capacityReservationOptions\",\"type\":\"structure\",\"members\":{\"UsageStrategy\":{\"locationName\":\"usageStrategy\"}}},\"SingleInstanceType\":{\"locationName\":\"singleInstanceType\",\"type\":\"boolean\"},\"SingleAvailabilityZone\":{\"locationName\":\"singleAvailabilityZone\",\"type\":\"boolean\"},\"MinTargetCapacity\":{\"locationName\":\"minTargetCapacity\",\"type\":\"integer\"},\"MaxTotalPrice\":{\"locationName\":\"maxTotalPrice\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"Errors\":{\"locationName\":\"errorSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateAndOverrides\":{\"shape\":\"S8z\",\"locationName\":\"launchTemplateAndOverrides\"},\"Lifecycle\":{\"locationName\":\"lifecycle\"},\"ErrorCode\":{\"locationName\":\"errorCode\"},\"ErrorMessage\":{\"locationName\":\"errorMessage\"}}}},\"Instances\":{\"locationName\":\"fleetInstanceSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateAndOverrides\":{\"shape\":\"S8z\",\"locationName\":\"launchTemplateAndOverrides\"},\"Lifecycle\":{\"locationName\":\"lifecycle\"},\"InstanceIds\":{\"shape\":\"S96\",\"locationName\":\"instanceIds\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"Platform\":{\"locationName\":\"platform\"}}}}}}}}}},\"DescribeFlowLogs\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filter\":{\"shape\":\"Som\"},\"FlowLogIds\":{\"shape\":\"Sl6\",\"locationName\":\"FlowLogId\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FlowLogs\":{\"locationName\":\"flowLogSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"DeliverLogsErrorMessage\":{\"locationName\":\"deliverLogsErrorMessage\"},\"DeliverLogsPermissionArn\":{\"locationName\":\"deliverLogsPermissionArn\"},\"DeliverLogsStatus\":{\"locationName\":\"deliverLogsStatus\"},\"FlowLogId\":{\"locationName\":\"flowLogId\"},\"FlowLogStatus\":{\"locationName\":\"flowLogStatus\"},\"LogGroupName\":{\"locationName\":\"logGroupName\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"TrafficType\":{\"locationName\":\"trafficType\"},\"LogDestinationType\":{\"locationName\":\"logDestinationType\"},\"LogDestination\":{\"locationName\":\"logDestination\"},\"LogFormat\":{\"locationName\":\"logFormat\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"MaxAggregationInterval\":{\"locationName\":\"maxAggregationInterval\",\"type\":\"integer\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeFpgaImageAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"FpgaImageId\",\"Attribute\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FpgaImageId\":{},\"Attribute\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FpgaImageAttribute\":{\"shape\":\"Sty\",\"locationName\":\"fpgaImageAttribute\"}}}},\"DescribeFpgaImages\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FpgaImageIds\":{\"locationName\":\"FpgaImageId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Owners\":{\"shape\":\"Su7\",\"locationName\":\"Owner\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FpgaImages\":{\"locationName\":\"fpgaImageSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"FpgaImageId\":{\"locationName\":\"fpgaImageId\"},\"FpgaImageGlobalId\":{\"locationName\":\"fpgaImageGlobalId\"},\"Name\":{\"locationName\":\"name\"},\"Description\":{\"locationName\":\"description\"},\"ShellVersion\":{\"locationName\":\"shellVersion\"},\"PciId\":{\"locationName\":\"pciId\",\"type\":\"structure\",\"members\":{\"DeviceId\":{},\"VendorId\":{},\"SubsystemId\":{},\"SubsystemVendorId\":{}}},\"State\":{\"locationName\":\"state\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"UpdateTime\":{\"locationName\":\"updateTime\",\"type\":\"timestamp\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"OwnerAlias\":{\"locationName\":\"ownerAlias\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tags\"},\"Public\":{\"locationName\":\"public\",\"type\":\"boolean\"},\"DataRetentionSupport\":{\"locationName\":\"dataRetentionSupport\",\"type\":\"boolean\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeHostReservationOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"Som\"},\"MaxDuration\":{\"type\":\"integer\"},\"MaxResults\":{\"type\":\"integer\"},\"MinDuration\":{\"type\":\"integer\"},\"NextToken\":{},\"OfferingId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"OfferingSet\":{\"locationName\":\"offeringSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"HourlyPrice\":{\"locationName\":\"hourlyPrice\"},\"InstanceFamily\":{\"locationName\":\"instanceFamily\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"PaymentOption\":{\"locationName\":\"paymentOption\"},\"UpfrontPrice\":{\"locationName\":\"upfrontPrice\"}}}}}}},\"DescribeHostReservations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"Som\"},\"HostReservationIdSet\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HostReservationSet\":{\"locationName\":\"hostReservationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"End\":{\"locationName\":\"end\",\"type\":\"timestamp\"},\"HostIdSet\":{\"shape\":\"Sus\",\"locationName\":\"hostIdSet\"},\"HostReservationId\":{\"locationName\":\"hostReservationId\"},\"HourlyPrice\":{\"locationName\":\"hourlyPrice\"},\"InstanceFamily\":{\"locationName\":\"instanceFamily\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"PaymentOption\":{\"locationName\":\"paymentOption\"},\"Start\":{\"locationName\":\"start\",\"type\":\"timestamp\"},\"State\":{\"locationName\":\"state\"},\"UpfrontPrice\":{\"locationName\":\"upfrontPrice\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeHosts\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"Som\",\"locationName\":\"filter\"},\"HostIds\":{\"shape\":\"Suv\",\"locationName\":\"hostId\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Hosts\":{\"locationName\":\"hostSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AutoPlacement\":{\"locationName\":\"autoPlacement\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"AvailableCapacity\":{\"locationName\":\"availableCapacity\",\"type\":\"structure\",\"members\":{\"AvailableInstanceCapacity\":{\"locationName\":\"availableInstanceCapacity\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailableCapacity\":{\"locationName\":\"availableCapacity\",\"type\":\"integer\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"TotalCapacity\":{\"locationName\":\"totalCapacity\",\"type\":\"integer\"}}}},\"AvailableVCpus\":{\"locationName\":\"availableVCpus\",\"type\":\"integer\"}}},\"ClientToken\":{\"locationName\":\"clientToken\"},\"HostId\":{\"locationName\":\"hostId\"},\"HostProperties\":{\"locationName\":\"hostProperties\",\"type\":\"structure\",\"members\":{\"Cores\":{\"locationName\":\"cores\",\"type\":\"integer\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"InstanceFamily\":{\"locationName\":\"instanceFamily\"},\"Sockets\":{\"locationName\":\"sockets\",\"type\":\"integer\"},\"TotalVCpus\":{\"locationName\":\"totalVCpus\",\"type\":\"integer\"}}},\"HostReservationId\":{\"locationName\":\"hostReservationId\"},\"Instances\":{\"locationName\":\"instances\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"OwnerId\":{\"locationName\":\"ownerId\"}}}},\"State\":{\"locationName\":\"state\"},\"AllocationTime\":{\"locationName\":\"allocationTime\",\"type\":\"timestamp\"},\"ReleaseTime\":{\"locationName\":\"releaseTime\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"HostRecovery\":{\"locationName\":\"hostRecovery\"},\"AllowsMultipleInstanceTypes\":{\"locationName\":\"allowsMultipleInstanceTypes\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"AvailabilityZoneId\":{\"locationName\":\"availabilityZoneId\"},\"MemberOfServiceLinkedResourceGroup\":{\"locationName\":\"memberOfServiceLinkedResourceGroup\",\"type\":\"boolean\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeIamInstanceProfileAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"AssociationIds\":{\"locationName\":\"AssociationId\",\"type\":\"list\",\"member\":{\"locationName\":\"AssociationId\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IamInstanceProfileAssociations\":{\"locationName\":\"iamInstanceProfileAssociationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S2y\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeIdFormat\":{\"input\":{\"type\":\"structure\",\"members\":{\"Resource\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Statuses\":{\"shape\":\"Sp4\",\"locationName\":\"statusSet\"}}}},\"DescribeIdentityIdFormat\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrincipalArn\"],\"members\":{\"PrincipalArn\":{\"locationName\":\"principalArn\"},\"Resource\":{\"locationName\":\"resource\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Statuses\":{\"shape\":\"Sp4\",\"locationName\":\"statusSet\"}}}},\"DescribeImageAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"ImageId\"],\"members\":{\"Attribute\":{},\"ImageId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BlockDeviceMappings\":{\"shape\":\"Svk\",\"locationName\":\"blockDeviceMapping\"},\"ImageId\":{\"locationName\":\"imageId\"},\"LaunchPermissions\":{\"shape\":\"Svl\",\"locationName\":\"launchPermission\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"Description\":{\"shape\":\"S80\",\"locationName\":\"description\"},\"KernelId\":{\"shape\":\"S80\",\"locationName\":\"kernel\"},\"RamdiskId\":{\"shape\":\"S80\",\"locationName\":\"ramdisk\"},\"SriovNetSupport\":{\"shape\":\"S80\",\"locationName\":\"sriovNetSupport\"},\"BootMode\":{\"shape\":\"S80\",\"locationName\":\"bootMode\"}}}},\"DescribeImages\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExecutableUsers\":{\"locationName\":\"ExecutableBy\",\"type\":\"list\",\"member\":{\"locationName\":\"ExecutableBy\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"ImageIds\":{\"locationName\":\"ImageId\",\"type\":\"list\",\"member\":{\"locationName\":\"ImageId\"}},\"Owners\":{\"shape\":\"Su7\",\"locationName\":\"Owner\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Images\":{\"locationName\":\"imagesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Architecture\":{\"locationName\":\"architecture\"},\"CreationDate\":{\"locationName\":\"creationDate\"},\"ImageId\":{\"locationName\":\"imageId\"},\"ImageLocation\":{\"locationName\":\"imageLocation\"},\"ImageType\":{\"locationName\":\"imageType\"},\"Public\":{\"locationName\":\"isPublic\",\"type\":\"boolean\"},\"KernelId\":{\"locationName\":\"kernelId\"},\"OwnerId\":{\"locationName\":\"imageOwnerId\"},\"Platform\":{\"locationName\":\"platform\"},\"PlatformDetails\":{\"locationName\":\"platformDetails\"},\"UsageOperation\":{\"locationName\":\"usageOperation\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"RamdiskId\":{\"locationName\":\"ramdiskId\"},\"State\":{\"locationName\":\"imageState\"},\"BlockDeviceMappings\":{\"shape\":\"Svk\",\"locationName\":\"blockDeviceMapping\"},\"Description\":{\"locationName\":\"description\"},\"EnaSupport\":{\"locationName\":\"enaSupport\",\"type\":\"boolean\"},\"Hypervisor\":{\"locationName\":\"hypervisor\"},\"ImageOwnerAlias\":{\"locationName\":\"imageOwnerAlias\"},\"Name\":{\"locationName\":\"name\"},\"RootDeviceName\":{\"locationName\":\"rootDeviceName\"},\"RootDeviceType\":{\"locationName\":\"rootDeviceType\"},\"SriovNetSupport\":{\"locationName\":\"sriovNetSupport\"},\"StateReason\":{\"shape\":\"Svy\",\"locationName\":\"stateReason\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VirtualizationType\":{\"locationName\":\"virtualizationType\"},\"BootMode\":{\"locationName\":\"bootMode\"}}}}}}},\"DescribeImportImageTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\"},\"ImportTaskIds\":{\"locationName\":\"ImportTaskId\",\"type\":\"list\",\"member\":{\"locationName\":\"ImportTaskId\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImportImageTasks\":{\"locationName\":\"importImageTaskSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Architecture\":{\"locationName\":\"architecture\"},\"Description\":{\"locationName\":\"description\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"Hypervisor\":{\"locationName\":\"hypervisor\"},\"ImageId\":{\"locationName\":\"imageId\"},\"ImportTaskId\":{\"locationName\":\"importTaskId\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"LicenseType\":{\"locationName\":\"licenseType\"},\"Platform\":{\"locationName\":\"platform\"},\"Progress\":{\"locationName\":\"progress\"},\"SnapshotDetails\":{\"shape\":\"Sw7\",\"locationName\":\"snapshotDetailSet\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"LicenseSpecifications\":{\"shape\":\"Swa\",\"locationName\":\"licenseSpecifications\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeImportSnapshotTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\"},\"ImportTaskIds\":{\"locationName\":\"ImportTaskId\",\"type\":\"list\",\"member\":{\"locationName\":\"ImportTaskId\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImportSnapshotTasks\":{\"locationName\":\"importSnapshotTaskSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"ImportTaskId\":{\"locationName\":\"importTaskId\"},\"SnapshotTaskDetail\":{\"shape\":\"Swi\",\"locationName\":\"snapshotTaskDetail\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeInstanceAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"InstanceId\"],\"members\":{\"Attribute\":{\"locationName\":\"attribute\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceId\":{\"locationName\":\"instanceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"BlockDeviceMappings\":{\"shape\":\"Swm\",\"locationName\":\"blockDeviceMapping\"},\"DisableApiTermination\":{\"shape\":\"Swp\",\"locationName\":\"disableApiTermination\"},\"EnaSupport\":{\"shape\":\"Swp\",\"locationName\":\"enaSupport\"},\"EnclaveOptions\":{\"shape\":\"Swq\",\"locationName\":\"enclaveOptions\"},\"EbsOptimized\":{\"shape\":\"Swp\",\"locationName\":\"ebsOptimized\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceInitiatedShutdownBehavior\":{\"shape\":\"S80\",\"locationName\":\"instanceInitiatedShutdownBehavior\"},\"InstanceType\":{\"shape\":\"S80\",\"locationName\":\"instanceType\"},\"KernelId\":{\"shape\":\"S80\",\"locationName\":\"kernel\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"RamdiskId\":{\"shape\":\"S80\",\"locationName\":\"ramdisk\"},\"RootDeviceName\":{\"shape\":\"S80\",\"locationName\":\"rootDeviceName\"},\"SourceDestCheck\":{\"shape\":\"Swp\",\"locationName\":\"sourceDestCheck\"},\"SriovNetSupport\":{\"shape\":\"S80\",\"locationName\":\"sriovNetSupport\"},\"UserData\":{\"shape\":\"S80\",\"locationName\":\"userData\"}}}},\"DescribeInstanceCreditSpecifications\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceCreditSpecifications\":{\"locationName\":\"instanceCreditSpecificationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"CpuCredits\":{\"locationName\":\"cpuCredits\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeInstanceEventNotificationAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceTagAttribute\":{\"shape\":\"So5\",\"locationName\":\"instanceTagAttribute\"}}}},\"DescribeInstanceStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"IncludeAllInstances\":{\"locationName\":\"includeAllInstances\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceStatuses\":{\"locationName\":\"instanceStatusSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"Events\":{\"locationName\":\"eventsSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sx3\",\"locationName\":\"item\"}},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceState\":{\"shape\":\"Sx6\",\"locationName\":\"instanceState\"},\"InstanceStatus\":{\"shape\":\"Sx8\",\"locationName\":\"instanceStatus\"},\"SystemStatus\":{\"shape\":\"Sx8\",\"locationName\":\"systemStatus\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeInstanceTypeOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"LocationType\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceTypeOfferings\":{\"locationName\":\"instanceTypeOfferingSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceType\":{\"locationName\":\"instanceType\"},\"LocationType\":{\"locationName\":\"locationType\"},\"Location\":{\"locationName\":\"location\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeInstanceTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceTypes\":{\"locationName\":\"InstanceType\",\"type\":\"list\",\"member\":{}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceTypes\":{\"locationName\":\"instanceTypeSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceType\":{\"locationName\":\"instanceType\"},\"CurrentGeneration\":{\"locationName\":\"currentGeneration\",\"type\":\"boolean\"},\"FreeTierEligible\":{\"locationName\":\"freeTierEligible\",\"type\":\"boolean\"},\"SupportedUsageClasses\":{\"locationName\":\"supportedUsageClasses\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"SupportedRootDeviceTypes\":{\"locationName\":\"supportedRootDeviceTypes\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"SupportedVirtualizationTypes\":{\"locationName\":\"supportedVirtualizationTypes\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"BareMetal\":{\"locationName\":\"bareMetal\",\"type\":\"boolean\"},\"Hypervisor\":{\"locationName\":\"hypervisor\"},\"ProcessorInfo\":{\"locationName\":\"processorInfo\",\"type\":\"structure\",\"members\":{\"SupportedArchitectures\":{\"locationName\":\"supportedArchitectures\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"SustainedClockSpeedInGhz\":{\"locationName\":\"sustainedClockSpeedInGhz\",\"type\":\"double\"}}},\"VCpuInfo\":{\"locationName\":\"vCpuInfo\",\"type\":\"structure\",\"members\":{\"DefaultVCpus\":{\"locationName\":\"defaultVCpus\",\"type\":\"integer\"},\"DefaultCores\":{\"locationName\":\"defaultCores\",\"type\":\"integer\"},\"DefaultThreadsPerCore\":{\"locationName\":\"defaultThreadsPerCore\",\"type\":\"integer\"},\"ValidCores\":{\"locationName\":\"validCores\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"integer\"}},\"ValidThreadsPerCore\":{\"locationName\":\"validThreadsPerCore\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"integer\"}}}},\"MemoryInfo\":{\"locationName\":\"memoryInfo\",\"type\":\"structure\",\"members\":{\"SizeInMiB\":{\"locationName\":\"sizeInMiB\",\"type\":\"long\"}}},\"InstanceStorageSupported\":{\"locationName\":\"instanceStorageSupported\",\"type\":\"boolean\"},\"InstanceStorageInfo\":{\"locationName\":\"instanceStorageInfo\",\"type\":\"structure\",\"members\":{\"TotalSizeInGB\":{\"locationName\":\"totalSizeInGB\",\"type\":\"long\"},\"Disks\":{\"locationName\":\"disks\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SizeInGB\":{\"locationName\":\"sizeInGB\",\"type\":\"long\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"Type\":{\"locationName\":\"type\"}}}},\"NvmeSupport\":{\"locationName\":\"nvmeSupport\"}}},\"EbsInfo\":{\"locationName\":\"ebsInfo\",\"type\":\"structure\",\"members\":{\"EbsOptimizedSupport\":{\"locationName\":\"ebsOptimizedSupport\"},\"EncryptionSupport\":{\"locationName\":\"encryptionSupport\"},\"EbsOptimizedInfo\":{\"locationName\":\"ebsOptimizedInfo\",\"type\":\"structure\",\"members\":{\"BaselineBandwidthInMbps\":{\"locationName\":\"baselineBandwidthInMbps\",\"type\":\"integer\"},\"BaselineThroughputInMBps\":{\"locationName\":\"baselineThroughputInMBps\",\"type\":\"double\"},\"BaselineIops\":{\"locationName\":\"baselineIops\",\"type\":\"integer\"},\"MaximumBandwidthInMbps\":{\"locationName\":\"maximumBandwidthInMbps\",\"type\":\"integer\"},\"MaximumThroughputInMBps\":{\"locationName\":\"maximumThroughputInMBps\",\"type\":\"double\"},\"MaximumIops\":{\"locationName\":\"maximumIops\",\"type\":\"integer\"}}},\"NvmeSupport\":{\"locationName\":\"nvmeSupport\"}}},\"NetworkInfo\":{\"locationName\":\"networkInfo\",\"type\":\"structure\",\"members\":{\"NetworkPerformance\":{\"locationName\":\"networkPerformance\"},\"MaximumNetworkInterfaces\":{\"locationName\":\"maximumNetworkInterfaces\",\"type\":\"integer\"},\"MaximumNetworkCards\":{\"locationName\":\"maximumNetworkCards\",\"type\":\"integer\"},\"DefaultNetworkCardIndex\":{\"locationName\":\"defaultNetworkCardIndex\",\"type\":\"integer\"},\"NetworkCards\":{\"locationName\":\"networkCards\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"NetworkCardIndex\":{\"locationName\":\"networkCardIndex\",\"type\":\"integer\"},\"NetworkPerformance\":{\"locationName\":\"networkPerformance\"},\"MaximumNetworkInterfaces\":{\"locationName\":\"maximumNetworkInterfaces\",\"type\":\"integer\"}}}},\"Ipv4AddressesPerInterface\":{\"locationName\":\"ipv4AddressesPerInterface\",\"type\":\"integer\"},\"Ipv6AddressesPerInterface\":{\"locationName\":\"ipv6AddressesPerInterface\",\"type\":\"integer\"},\"Ipv6Supported\":{\"locationName\":\"ipv6Supported\",\"type\":\"boolean\"},\"EnaSupport\":{\"locationName\":\"enaSupport\"},\"EfaSupported\":{\"locationName\":\"efaSupported\",\"type\":\"boolean\"},\"EfaInfo\":{\"locationName\":\"efaInfo\",\"type\":\"structure\",\"members\":{\"MaximumEfaInterfaces\":{\"locationName\":\"maximumEfaInterfaces\",\"type\":\"integer\"}}}}},\"GpuInfo\":{\"locationName\":\"gpuInfo\",\"type\":\"structure\",\"members\":{\"Gpus\":{\"locationName\":\"gpus\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"Manufacturer\":{\"locationName\":\"manufacturer\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"MemoryInfo\":{\"locationName\":\"memoryInfo\",\"type\":\"structure\",\"members\":{\"SizeInMiB\":{\"locationName\":\"sizeInMiB\",\"type\":\"integer\"}}}}}},\"TotalGpuMemoryInMiB\":{\"locationName\":\"totalGpuMemoryInMiB\",\"type\":\"integer\"}}},\"FpgaInfo\":{\"locationName\":\"fpgaInfo\",\"type\":\"structure\",\"members\":{\"Fpgas\":{\"locationName\":\"fpgas\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"Manufacturer\":{\"locationName\":\"manufacturer\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"MemoryInfo\":{\"locationName\":\"memoryInfo\",\"type\":\"structure\",\"members\":{\"SizeInMiB\":{\"locationName\":\"sizeInMiB\",\"type\":\"integer\"}}}}}},\"TotalFpgaMemoryInMiB\":{\"locationName\":\"totalFpgaMemoryInMiB\",\"type\":\"integer\"}}},\"PlacementGroupInfo\":{\"locationName\":\"placementGroupInfo\",\"type\":\"structure\",\"members\":{\"SupportedStrategies\":{\"locationName\":\"supportedStrategies\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}},\"InferenceAcceleratorInfo\":{\"locationName\":\"inferenceAcceleratorInfo\",\"type\":\"structure\",\"members\":{\"Accelerators\":{\"locationName\":\"item\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"Manufacturer\":{\"locationName\":\"manufacturer\"}}}}}},\"HibernationSupported\":{\"locationName\":\"hibernationSupported\",\"type\":\"boolean\"},\"BurstablePerformanceSupported\":{\"locationName\":\"burstablePerformanceSupported\",\"type\":\"boolean\"},\"DedicatedHostsSupported\":{\"locationName\":\"dedicatedHostsSupported\",\"type\":\"boolean\"},\"AutoRecoverySupported\":{\"locationName\":\"autoRecoverySupported\",\"type\":\"boolean\"},\"SupportedBootModes\":{\"locationName\":\"supportedBootModes\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Reservations\":{\"locationName\":\"reservationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S10a\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeInternetGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InternetGatewayIds\":{\"locationName\":\"internetGatewayId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InternetGateways\":{\"locationName\":\"internetGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"Sa0\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeIpv6Pools\":{\"input\":{\"type\":\"structure\",\"members\":{\"PoolIds\":{\"locationName\":\"PoolId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ipv6Pools\":{\"locationName\":\"ipv6PoolSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"PoolId\":{\"locationName\":\"poolId\"},\"Description\":{\"locationName\":\"description\"},\"PoolCidrBlocks\":{\"locationName\":\"poolCidrBlockSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"poolCidrBlock\"}}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeKeyPairs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"KeyNames\":{\"locationName\":\"KeyName\",\"type\":\"list\",\"member\":{\"locationName\":\"KeyName\"}},\"KeyPairIds\":{\"locationName\":\"KeyPairId\",\"type\":\"list\",\"member\":{\"locationName\":\"KeyPairId\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyPairs\":{\"locationName\":\"keySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"KeyPairId\":{\"locationName\":\"keyPairId\"},\"KeyFingerprint\":{\"locationName\":\"keyFingerprint\"},\"KeyName\":{\"locationName\":\"keyName\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}}}}},\"DescribeLaunchTemplateVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"Versions\":{\"shape\":\"Sli\",\"locationName\":\"LaunchTemplateVersion\"},\"MinVersion\":{},\"MaxVersion\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateVersions\":{\"locationName\":\"launchTemplateVersionSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sbo\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLaunchTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"LaunchTemplateIds\":{\"locationName\":\"LaunchTemplateId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"LaunchTemplateNames\":{\"locationName\":\"LaunchTemplateName\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplates\":{\"locationName\":\"launchTemplates\",\"type\":\"list\",\"member\":{\"shape\":\"Sbi\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds\":{\"locationName\":\"LocalGatewayRouteTableVirtualInterfaceGroupAssociationId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVirtualInterfaceGroupAssociations\":{\"locationName\":\"localGatewayRouteTableVirtualInterfaceGroupAssociationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVirtualInterfaceGroupAssociationId\":{\"locationName\":\"localGatewayRouteTableVirtualInterfaceGroupAssociationId\"},\"LocalGatewayVirtualInterfaceGroupId\":{\"locationName\":\"localGatewayVirtualInterfaceGroupId\"},\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"LocalGatewayRouteTableId\":{\"locationName\":\"localGatewayRouteTableId\"},\"LocalGatewayRouteTableArn\":{\"locationName\":\"localGatewayRouteTableArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLocalGatewayRouteTableVpcAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVpcAssociationIds\":{\"locationName\":\"LocalGatewayRouteTableVpcAssociationId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVpcAssociations\":{\"locationName\":\"localGatewayRouteTableVpcAssociationSet\",\"type\":\"list\",\"member\":{\"shape\":\"Scr\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLocalGatewayRouteTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableIds\":{\"locationName\":\"LocalGatewayRouteTableId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTables\":{\"locationName\":\"localGatewayRouteTableSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableId\":{\"locationName\":\"localGatewayRouteTableId\"},\"LocalGatewayRouteTableArn\":{\"locationName\":\"localGatewayRouteTableArn\"},\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLocalGatewayVirtualInterfaceGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"LocalGatewayVirtualInterfaceGroupIds\":{\"locationName\":\"LocalGatewayVirtualInterfaceGroupId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayVirtualInterfaceGroups\":{\"locationName\":\"localGatewayVirtualInterfaceGroupSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LocalGatewayVirtualInterfaceGroupId\":{\"locationName\":\"localGatewayVirtualInterfaceGroupId\"},\"LocalGatewayVirtualInterfaceIds\":{\"shape\":\"S12c\",\"locationName\":\"localGatewayVirtualInterfaceIdSet\"},\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLocalGatewayVirtualInterfaces\":{\"input\":{\"type\":\"structure\",\"members\":{\"LocalGatewayVirtualInterfaceIds\":{\"shape\":\"S12c\",\"locationName\":\"LocalGatewayVirtualInterfaceId\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGatewayVirtualInterfaces\":{\"locationName\":\"localGatewayVirtualInterfaceSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LocalGatewayVirtualInterfaceId\":{\"locationName\":\"localGatewayVirtualInterfaceId\"},\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"Vlan\":{\"locationName\":\"vlan\",\"type\":\"integer\"},\"LocalAddress\":{\"locationName\":\"localAddress\"},\"PeerAddress\":{\"locationName\":\"peerAddress\"},\"LocalBgpAsn\":{\"locationName\":\"localBgpAsn\",\"type\":\"integer\"},\"PeerBgpAsn\":{\"locationName\":\"peerBgpAsn\",\"type\":\"integer\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeLocalGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"LocalGatewayIds\":{\"locationName\":\"LocalGatewayId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocalGateways\":{\"locationName\":\"localGatewaySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeManagedPrefixLists\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"PrefixListIds\":{\"shape\":\"Se\",\"locationName\":\"PrefixListId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"PrefixLists\":{\"locationName\":\"prefixListSet\",\"type\":\"list\",\"member\":{\"shape\":\"Scx\",\"locationName\":\"item\"}}}}},\"DescribeMovingAddresses\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"PublicIps\":{\"shape\":\"Se\",\"locationName\":\"publicIp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MovingAddressStatuses\":{\"locationName\":\"movingAddressStatusSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"MoveStatus\":{\"locationName\":\"moveStatus\"},\"PublicIp\":{\"locationName\":\"publicIp\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeNatGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filter\":{\"shape\":\"Som\"},\"MaxResults\":{\"type\":\"integer\"},\"NatGatewayIds\":{\"locationName\":\"NatGatewayId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NatGateways\":{\"locationName\":\"natGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"Sd2\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeNetworkAcls\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkAclIds\":{\"locationName\":\"NetworkAclId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkAcls\":{\"locationName\":\"networkAclSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sd9\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeNetworkInsightsAnalyses\":{\"input\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsAnalysisIds\":{\"locationName\":\"NetworkInsightsAnalysisId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NetworkInsightsPathId\":{},\"AnalysisStartTime\":{\"type\":\"timestamp\"},\"AnalysisEndTime\":{\"type\":\"timestamp\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsAnalyses\":{\"locationName\":\"networkInsightsAnalysisSet\",\"type\":\"list\",\"member\":{\"shape\":\"S13c\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeNetworkInsightsPaths\":{\"input\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsPathIds\":{\"locationName\":\"NetworkInsightsPathId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsPaths\":{\"locationName\":\"networkInsightsPathSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sdo\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeNetworkInterfaceAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\"],\"members\":{\"Attribute\":{\"locationName\":\"attribute\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attachment\":{\"shape\":\"Sdv\",\"locationName\":\"attachment\"},\"Description\":{\"shape\":\"S80\",\"locationName\":\"description\"},\"Groups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"SourceDestCheck\":{\"shape\":\"Swp\",\"locationName\":\"sourceDestCheck\"}}}},\"DescribeNetworkInterfacePermissions\":{\"input\":{\"type\":\"structure\",\"members\":{\"NetworkInterfacePermissionIds\":{\"locationName\":\"NetworkInterfacePermissionId\",\"type\":\"list\",\"member\":{}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInterfacePermissions\":{\"locationName\":\"networkInterfacePermissions\",\"type\":\"list\",\"member\":{\"shape\":\"Se7\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeNetworkInterfaces\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkInterfaceIds\":{\"locationName\":\"NetworkInterfaceId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInterfaces\":{\"locationName\":\"networkInterfaceSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sdt\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribePlacementGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"GroupNames\":{\"locationName\":\"groupName\",\"type\":\"list\",\"member\":{}},\"GroupIds\":{\"locationName\":\"GroupId\",\"type\":\"list\",\"member\":{\"locationName\":\"GroupId\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PlacementGroups\":{\"locationName\":\"placementGroupSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sed\",\"locationName\":\"item\"}}}}},\"DescribePrefixLists\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"PrefixListIds\":{\"locationName\":\"PrefixListId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"PrefixLists\":{\"locationName\":\"prefixListSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Cidrs\":{\"shape\":\"Se\",\"locationName\":\"cidrSet\"},\"PrefixListId\":{\"locationName\":\"prefixListId\"},\"PrefixListName\":{\"locationName\":\"prefixListName\"}}}}}}},\"DescribePrincipalIdFormat\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Resources\":{\"locationName\":\"Resource\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Principals\":{\"locationName\":\"principalSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Statuses\":{\"shape\":\"Sp4\",\"locationName\":\"statusSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribePublicIpv4Pools\":{\"input\":{\"type\":\"structure\",\"members\":{\"PoolIds\":{\"locationName\":\"PoolId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicIpv4Pools\":{\"locationName\":\"publicIpv4PoolSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"PoolId\":{\"locationName\":\"poolId\"},\"Description\":{\"locationName\":\"description\"},\"PoolAddressRanges\":{\"locationName\":\"poolAddressRangeSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"FirstAddress\":{\"locationName\":\"firstAddress\"},\"LastAddress\":{\"locationName\":\"lastAddress\"},\"AddressCount\":{\"locationName\":\"addressCount\",\"type\":\"integer\"},\"AvailableAddressCount\":{\"locationName\":\"availableAddressCount\",\"type\":\"integer\"}}}},\"TotalAddressCount\":{\"locationName\":\"totalAddressCount\",\"type\":\"integer\"},\"TotalAvailableAddressCount\":{\"locationName\":\"totalAvailableAddressCount\",\"type\":\"integer\"},\"NetworkBorderGroup\":{\"locationName\":\"networkBorderGroup\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeRegions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"RegionNames\":{\"locationName\":\"RegionName\",\"type\":\"list\",\"member\":{\"locationName\":\"RegionName\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"AllRegions\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Regions\":{\"locationName\":\"regionInfo\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Endpoint\":{\"locationName\":\"regionEndpoint\"},\"RegionName\":{\"locationName\":\"regionName\"},\"OptInStatus\":{\"locationName\":\"optInStatus\"}}}}}}},\"DescribeReplaceRootVolumeTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReplaceRootVolumeTaskIds\":{\"locationName\":\"ReplaceRootVolumeTaskId\",\"type\":\"list\",\"member\":{\"locationName\":\"ReplaceRootVolumeTaskId\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplaceRootVolumeTasks\":{\"locationName\":\"replaceRootVolumeTaskSet\",\"type\":\"list\",\"member\":{\"shape\":\"Seh\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeReservedInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"OfferingClass\":{},\"ReservedInstancesIds\":{\"shape\":\"S15e\",\"locationName\":\"ReservedInstancesId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"OfferingType\":{\"locationName\":\"offeringType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstances\":{\"locationName\":\"reservedInstancesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"long\"},\"End\":{\"locationName\":\"end\",\"type\":\"timestamp\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"float\"},\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"ProductDescription\":{\"locationName\":\"productDescription\"},\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"},\"Start\":{\"locationName\":\"start\",\"type\":\"timestamp\"},\"State\":{\"locationName\":\"state\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"float\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"InstanceTenancy\":{\"locationName\":\"instanceTenancy\"},\"OfferingClass\":{\"locationName\":\"offeringClass\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"RecurringCharges\":{\"shape\":\"S15m\",\"locationName\":\"recurringCharges\"},\"Scope\":{\"locationName\":\"scope\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}}}}},\"DescribeReservedInstancesListings\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"},\"ReservedInstancesListingId\":{\"locationName\":\"reservedInstancesListingId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstancesListings\":{\"shape\":\"S5d\",\"locationName\":\"reservedInstancesListingsSet\"}}}},\"DescribeReservedInstancesModifications\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"ReservedInstancesModificationIds\":{\"locationName\":\"ReservedInstancesModificationId\",\"type\":\"list\",\"member\":{\"locationName\":\"ReservedInstancesModificationId\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"ReservedInstancesModifications\":{\"locationName\":\"reservedInstancesModificationsSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"CreateDate\":{\"locationName\":\"createDate\",\"type\":\"timestamp\"},\"EffectiveDate\":{\"locationName\":\"effectiveDate\",\"type\":\"timestamp\"},\"ModificationResults\":{\"locationName\":\"modificationResultSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"},\"TargetConfiguration\":{\"shape\":\"S160\",\"locationName\":\"targetConfiguration\"}}}},\"ReservedInstancesIds\":{\"locationName\":\"reservedInstancesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"}}}},\"ReservedInstancesModificationId\":{\"locationName\":\"reservedInstancesModificationId\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"UpdateDate\":{\"locationName\":\"updateDate\",\"type\":\"timestamp\"}}}}}}},\"DescribeReservedInstancesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"IncludeMarketplace\":{\"type\":\"boolean\"},\"InstanceType\":{},\"MaxDuration\":{\"type\":\"long\"},\"MaxInstanceCount\":{\"type\":\"integer\"},\"MinDuration\":{\"type\":\"long\"},\"OfferingClass\":{},\"ProductDescription\":{},\"ReservedInstancesOfferingIds\":{\"locationName\":\"ReservedInstancesOfferingId\",\"type\":\"list\",\"member\":{}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceTenancy\":{\"locationName\":\"instanceTenancy\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"OfferingType\":{\"locationName\":\"offeringType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstancesOfferings\":{\"locationName\":\"reservedInstancesOfferingsSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"long\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"float\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"ProductDescription\":{\"locationName\":\"productDescription\"},\"ReservedInstancesOfferingId\":{\"locationName\":\"reservedInstancesOfferingId\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"float\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"InstanceTenancy\":{\"locationName\":\"instanceTenancy\"},\"Marketplace\":{\"locationName\":\"marketplace\",\"type\":\"boolean\"},\"OfferingClass\":{\"locationName\":\"offeringClass\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"PricingDetails\":{\"locationName\":\"pricingDetailsSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"Price\":{\"locationName\":\"price\",\"type\":\"double\"}}}},\"RecurringCharges\":{\"shape\":\"S15m\",\"locationName\":\"recurringCharges\"},\"Scope\":{\"locationName\":\"scope\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeRouteTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"RouteTableIds\":{\"locationName\":\"RouteTableId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RouteTables\":{\"locationName\":\"routeTableSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sex\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeScheduledInstanceAvailability\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirstSlotStartTimeRange\",\"Recurrence\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"FirstSlotStartTimeRange\":{\"type\":\"structure\",\"required\":[\"EarliestTime\",\"LatestTime\"],\"members\":{\"EarliestTime\":{\"type\":\"timestamp\"},\"LatestTime\":{\"type\":\"timestamp\"}}},\"MaxResults\":{\"type\":\"integer\"},\"MaxSlotDurationInHours\":{\"type\":\"integer\"},\"MinSlotDurationInHours\":{\"type\":\"integer\"},\"NextToken\":{},\"Recurrence\":{\"type\":\"structure\",\"members\":{\"Frequency\":{},\"Interval\":{\"type\":\"integer\"},\"OccurrenceDays\":{\"locationName\":\"OccurrenceDay\",\"type\":\"list\",\"member\":{\"locationName\":\"OccurenceDay\",\"type\":\"integer\"}},\"OccurrenceRelativeToEnd\":{\"type\":\"boolean\"},\"OccurrenceUnit\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"ScheduledInstanceAvailabilitySet\":{\"locationName\":\"scheduledInstanceAvailabilitySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"AvailableInstanceCount\":{\"locationName\":\"availableInstanceCount\",\"type\":\"integer\"},\"FirstSlotStartTime\":{\"locationName\":\"firstSlotStartTime\",\"type\":\"timestamp\"},\"HourlyPrice\":{\"locationName\":\"hourlyPrice\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"MaxTermDurationInDays\":{\"locationName\":\"maxTermDurationInDays\",\"type\":\"integer\"},\"MinTermDurationInDays\":{\"locationName\":\"minTermDurationInDays\",\"type\":\"integer\"},\"NetworkPlatform\":{\"locationName\":\"networkPlatform\"},\"Platform\":{\"locationName\":\"platform\"},\"PurchaseToken\":{\"locationName\":\"purchaseToken\"},\"Recurrence\":{\"shape\":\"S16n\",\"locationName\":\"recurrence\"},\"SlotDurationInHours\":{\"locationName\":\"slotDurationInHours\",\"type\":\"integer\"},\"TotalScheduledInstanceHours\":{\"locationName\":\"totalScheduledInstanceHours\",\"type\":\"integer\"}}}}}}},\"DescribeScheduledInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"ScheduledInstanceIds\":{\"locationName\":\"ScheduledInstanceId\",\"type\":\"list\",\"member\":{\"locationName\":\"ScheduledInstanceId\"}},\"SlotStartTimeRange\":{\"type\":\"structure\",\"members\":{\"EarliestTime\":{\"type\":\"timestamp\"},\"LatestTime\":{\"type\":\"timestamp\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"ScheduledInstanceSet\":{\"locationName\":\"scheduledInstanceSet\",\"type\":\"list\",\"member\":{\"shape\":\"S16v\",\"locationName\":\"item\"}}}}},\"DescribeSecurityGroupReferences\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"GroupId\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityGroupReferenceSet\":{\"locationName\":\"securityGroupReferenceSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"GroupId\":{\"locationName\":\"groupId\"},\"ReferencingVpcId\":{\"locationName\":\"referencingVpcId\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}}}}}},\"DescribeSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"GroupIds\":{\"shape\":\"S3t\",\"locationName\":\"GroupId\"},\"GroupNames\":{\"shape\":\"S172\",\"locationName\":\"GroupName\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityGroups\":{\"locationName\":\"securityGroupInfo\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"groupDescription\"},\"GroupName\":{\"locationName\":\"groupName\"},\"IpPermissions\":{\"shape\":\"S4d\",\"locationName\":\"ipPermissions\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"GroupId\":{\"locationName\":\"groupId\"},\"IpPermissionsEgress\":{\"shape\":\"S4d\",\"locationName\":\"ipPermissionsEgress\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeSnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"SnapshotId\"],\"members\":{\"Attribute\":{},\"SnapshotId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreateVolumePermissions\":{\"shape\":\"S17a\",\"locationName\":\"createVolumePermission\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"}}}},\"DescribeSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"OwnerIds\":{\"shape\":\"Su7\",\"locationName\":\"Owner\"},\"RestorableByUserIds\":{\"locationName\":\"RestorableBy\",\"type\":\"list\",\"member\":{}},\"SnapshotIds\":{\"shape\":\"S17e\",\"locationName\":\"SnapshotId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Snapshots\":{\"locationName\":\"snapshotSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sf9\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeSpotDatafeedSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SpotDatafeedSubscription\":{\"shape\":\"Sfj\",\"locationName\":\"spotDatafeedSubscription\"}}}},\"DescribeSpotFleetInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"SpotFleetRequestId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActiveInstances\":{\"shape\":\"St6\",\"locationName\":\"activeInstanceSet\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"}}}},\"DescribeSpotFleetRequestHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"SpotFleetRequestId\",\"StartTime\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"EventType\":{\"locationName\":\"eventType\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HistoryRecords\":{\"locationName\":\"historyRecordSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"EventInformation\":{\"shape\":\"St3\",\"locationName\":\"eventInformation\"},\"EventType\":{\"locationName\":\"eventType\"},\"Timestamp\":{\"locationName\":\"timestamp\",\"type\":\"timestamp\"}}}},\"LastEvaluatedTime\":{\"locationName\":\"lastEvaluatedTime\",\"type\":\"timestamp\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"}}}},\"DescribeSpotFleetRequests\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotFleetRequestIds\":{\"shape\":\"S5p\",\"locationName\":\"spotFleetRequestId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotFleetRequestConfigs\":{\"locationName\":\"spotFleetRequestConfigSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ActivityStatus\":{\"locationName\":\"activityStatus\"},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"SpotFleetRequestConfig\":{\"shape\":\"S17x\",\"locationName\":\"spotFleetRequestConfig\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"},\"SpotFleetRequestState\":{\"locationName\":\"spotFleetRequestState\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}}}}},\"DescribeSpotInstanceRequests\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"SpotInstanceRequestIds\":{\"shape\":\"S60\",\"locationName\":\"SpotInstanceRequestId\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SpotInstanceRequests\":{\"shape\":\"S18p\",\"locationName\":\"spotInstanceRequestSet\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeSpotPriceHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"EndTime\":{\"locationName\":\"endTime\",\"type\":\"timestamp\"},\"InstanceTypes\":{\"locationName\":\"InstanceType\",\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"ProductDescriptions\":{\"locationName\":\"ProductDescription\",\"type\":\"list\",\"member\":{}},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"SpotPriceHistory\":{\"locationName\":\"spotPriceHistorySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"ProductDescription\":{\"locationName\":\"productDescription\"},\"SpotPrice\":{\"locationName\":\"spotPrice\"},\"Timestamp\":{\"locationName\":\"timestamp\",\"type\":\"timestamp\"}}}}}}},\"DescribeStaleSecurityGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"VpcId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"StaleSecurityGroupSet\":{\"locationName\":\"staleSecurityGroupSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"GroupId\":{\"locationName\":\"groupId\"},\"GroupName\":{\"locationName\":\"groupName\"},\"StaleIpPermissions\":{\"shape\":\"S197\",\"locationName\":\"staleIpPermissions\"},\"StaleIpPermissionsEgress\":{\"shape\":\"S197\",\"locationName\":\"staleIpPermissionsEgress\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}}}}},\"DescribeStoreImageTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ImageIds\":{\"locationName\":\"ImageId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StoreImageTaskResults\":{\"locationName\":\"storeImageTaskResultSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AmiId\":{\"locationName\":\"amiId\"},\"TaskStartTime\":{\"locationName\":\"taskStartTime\",\"type\":\"timestamp\"},\"Bucket\":{\"locationName\":\"bucket\"},\"S3objectKey\":{\"locationName\":\"s3objectKey\"},\"ProgressPercentage\":{\"locationName\":\"progressPercentage\",\"type\":\"integer\"},\"StoreTaskState\":{\"locationName\":\"storeTaskState\"},\"StoreTaskFailureReason\":{\"locationName\":\"storeTaskFailureReason\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeSubnets\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"SubnetIds\":{\"locationName\":\"SubnetId\",\"type\":\"list\",\"member\":{\"locationName\":\"SubnetId\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Subnets\":{\"locationName\":\"subnetSet\",\"type\":\"list\",\"member\":{\"shape\":\"S7h\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Tags\":{\"locationName\":\"tagSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"key\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"Value\":{\"locationName\":\"value\"}}}}}}},\"DescribeTrafficMirrorFilters\":{\"input\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterIds\":{\"locationName\":\"TrafficMirrorFilterId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilters\":{\"locationName\":\"trafficMirrorFilterSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sfx\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTrafficMirrorSessions\":{\"input\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorSessionIds\":{\"locationName\":\"TrafficMirrorSessionId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorSessions\":{\"locationName\":\"trafficMirrorSessionSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sgc\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTrafficMirrorTargets\":{\"input\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorTargetIds\":{\"locationName\":\"TrafficMirrorTargetId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorTargets\":{\"locationName\":\"trafficMirrorTargetSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sgf\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayAttachments\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentIds\":{\"shape\":\"S1a5\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachments\":{\"locationName\":\"transitGatewayAttachments\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"TransitGatewayOwnerId\":{\"locationName\":\"transitGatewayOwnerId\"},\"ResourceOwnerId\":{\"locationName\":\"resourceOwnerId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"State\":{\"locationName\":\"state\"},\"Association\":{\"locationName\":\"association\",\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTableId\":{\"locationName\":\"transitGatewayRouteTableId\"},\"State\":{\"locationName\":\"state\"}}},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayConnectPeers\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeerIds\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeers\":{\"locationName\":\"transitGatewayConnectPeerSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sh3\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayConnects\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentIds\":{\"shape\":\"S1a5\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnects\":{\"locationName\":\"transitGatewayConnectSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sgx\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayMulticastDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainIds\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomains\":{\"locationName\":\"transitGatewayMulticastDomains\",\"type\":\"list\",\"member\":{\"shape\":\"Shg\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayPeeringAttachments\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentIds\":{\"shape\":\"S1a5\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPeeringAttachments\":{\"locationName\":\"transitGatewayPeeringAttachments\",\"type\":\"list\",\"member\":{\"shape\":\"Sn\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayRouteTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTableIds\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTables\":{\"locationName\":\"transitGatewayRouteTables\",\"type\":\"list\",\"member\":{\"shape\":\"Si0\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGatewayVpcAttachments\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentIds\":{\"shape\":\"S1a5\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayVpcAttachments\":{\"locationName\":\"transitGatewayVpcAttachments\",\"type\":\"list\",\"member\":{\"shape\":\"Sw\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeTransitGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayIds\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGateways\":{\"locationName\":\"transitGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"Sgq\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVolumeAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"VolumeId\"],\"members\":{\"Attribute\":{},\"VolumeId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutoEnableIO\":{\"shape\":\"Swp\",\"locationName\":\"autoEnableIO\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"VolumeId\":{\"locationName\":\"volumeId\"}}}},\"DescribeVolumeStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"VolumeIds\":{\"shape\":\"S1b4\",\"locationName\":\"VolumeId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"VolumeStatuses\":{\"locationName\":\"volumeStatusSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Actions\":{\"locationName\":\"actionsSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Description\":{\"locationName\":\"description\"},\"EventId\":{\"locationName\":\"eventId\"},\"EventType\":{\"locationName\":\"eventType\"}}}},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"Events\":{\"locationName\":\"eventsSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"EventId\":{\"locationName\":\"eventId\"},\"EventType\":{\"locationName\":\"eventType\"},\"NotAfter\":{\"locationName\":\"notAfter\",\"type\":\"timestamp\"},\"NotBefore\":{\"locationName\":\"notBefore\",\"type\":\"timestamp\"},\"InstanceId\":{\"locationName\":\"instanceId\"}}}},\"VolumeId\":{\"locationName\":\"volumeId\"},\"VolumeStatus\":{\"locationName\":\"volumeStatus\",\"type\":\"structure\",\"members\":{\"Details\":{\"locationName\":\"details\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"Status\":{\"locationName\":\"status\"}}}},\"Status\":{\"locationName\":\"status\"}}},\"AttachmentStatuses\":{\"locationName\":\"attachmentStatuses\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"IoPerformance\":{\"locationName\":\"ioPerformance\"},\"InstanceId\":{\"locationName\":\"instanceId\"}}}}}}}}}},\"DescribeVolumes\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"VolumeIds\":{\"shape\":\"S1b4\",\"locationName\":\"VolumeId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Volumes\":{\"locationName\":\"volumeSet\",\"type\":\"list\",\"member\":{\"shape\":\"Si6\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVolumesModifications\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"VolumeIds\":{\"shape\":\"S1b4\",\"locationName\":\"VolumeId\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumesModifications\":{\"locationName\":\"volumeModificationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S1bp\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"VpcId\"],\"members\":{\"Attribute\":{},\"VpcId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcId\":{\"locationName\":\"vpcId\"},\"EnableDnsHostnames\":{\"shape\":\"Swp\",\"locationName\":\"enableDnsHostnames\"},\"EnableDnsSupport\":{\"shape\":\"Swp\",\"locationName\":\"enableDnsSupport\"}}}},\"DescribeVpcClassicLink\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcIds\":{\"shape\":\"S1bv\",\"locationName\":\"VpcId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Vpcs\":{\"locationName\":\"vpcSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClassicLinkEnabled\":{\"locationName\":\"classicLinkEnabled\",\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}}}}},\"DescribeVpcClassicLinkDnsSupport\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"VpcIds\":{\"shape\":\"S1bv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Vpcs\":{\"locationName\":\"vpcs\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClassicLinkDnsSupported\":{\"locationName\":\"classicLinkDnsSupported\",\"type\":\"boolean\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}}}}},\"DescribeVpcEndpointConnectionNotifications\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ConnectionNotificationId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionNotificationSet\":{\"locationName\":\"connectionNotificationSet\",\"type\":\"list\",\"member\":{\"shape\":\"Siq\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcEndpointConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcEndpointConnections\":{\"locationName\":\"vpcEndpointConnectionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ServiceId\":{\"locationName\":\"serviceId\"},\"VpcEndpointId\":{\"locationName\":\"vpcEndpointId\"},\"VpcEndpointOwner\":{\"locationName\":\"vpcEndpointOwner\"},\"VpcEndpointState\":{\"locationName\":\"vpcEndpointState\"},\"CreationTimestamp\":{\"locationName\":\"creationTimestamp\",\"type\":\"timestamp\"},\"DnsEntries\":{\"shape\":\"Sil\",\"locationName\":\"dnsEntrySet\"},\"NetworkLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"networkLoadBalancerArnSet\"},\"GatewayLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"gatewayLoadBalancerArnSet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcEndpointServiceConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceIds\":{\"shape\":\"Snp\",\"locationName\":\"ServiceId\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceConfigurations\":{\"locationName\":\"serviceConfigurationSet\",\"type\":\"list\",\"member\":{\"shape\":\"Siv\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcEndpointServicePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AllowedPrincipals\":{\"locationName\":\"allowedPrincipals\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"PrincipalType\":{\"locationName\":\"principalType\"},\"Principal\":{\"locationName\":\"principal\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcEndpointServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceNames\":{\"shape\":\"Se\",\"locationName\":\"ServiceName\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceNames\":{\"shape\":\"Se\",\"locationName\":\"serviceNameSet\"},\"ServiceDetails\":{\"locationName\":\"serviceDetailSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ServiceName\":{\"locationName\":\"serviceName\"},\"ServiceId\":{\"locationName\":\"serviceId\"},\"ServiceType\":{\"shape\":\"Siw\",\"locationName\":\"serviceType\"},\"AvailabilityZones\":{\"shape\":\"Se\",\"locationName\":\"availabilityZoneSet\"},\"Owner\":{\"locationName\":\"owner\"},\"BaseEndpointDnsNames\":{\"shape\":\"Se\",\"locationName\":\"baseEndpointDnsNameSet\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateDnsNames\":{\"locationName\":\"privateDnsNameSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"}}}},\"VpcEndpointPolicySupported\":{\"locationName\":\"vpcEndpointPolicySupported\",\"type\":\"boolean\"},\"AcceptanceRequired\":{\"locationName\":\"acceptanceRequired\",\"type\":\"boolean\"},\"ManagesVpcEndpoints\":{\"locationName\":\"managesVpcEndpoints\",\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"PrivateDnsNameVerificationState\":{\"locationName\":\"privateDnsNameVerificationState\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"VpcEndpointIds\":{\"shape\":\"S13\",\"locationName\":\"VpcEndpointId\"},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcEndpoints\":{\"locationName\":\"vpcEndpointSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sih\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcPeeringConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcPeeringConnectionIds\":{\"locationName\":\"VpcPeeringConnectionId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcPeeringConnections\":{\"locationName\":\"vpcPeeringConnectionSet\",\"type\":\"list\",\"member\":{\"shape\":\"S1c\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpcs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"VpcIds\":{\"locationName\":\"VpcId\",\"type\":\"list\",\"member\":{\"locationName\":\"VpcId\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Vpcs\":{\"locationName\":\"vpcSet\",\"type\":\"list\",\"member\":{\"shape\":\"S7n\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeVpnConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"VpnConnectionIds\":{\"locationName\":\"VpnConnectionId\",\"type\":\"list\",\"member\":{\"locationName\":\"VpnConnectionId\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnConnections\":{\"locationName\":\"vpnConnectionSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sjp\",\"locationName\":\"item\"}}}}},\"DescribeVpnGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"VpnGatewayIds\":{\"locationName\":\"VpnGatewayId\",\"type\":\"list\",\"member\":{\"locationName\":\"VpnGatewayId\"}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnGateways\":{\"locationName\":\"vpnGatewaySet\",\"type\":\"list\",\"member\":{\"shape\":\"Ski\",\"locationName\":\"item\"}}}}},\"DetachClassicLinkVpc\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"VpcId\":{\"locationName\":\"vpcId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DetachInternetGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"InternetGatewayId\",\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InternetGatewayId\":{\"locationName\":\"internetGatewayId\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"DetachNetworkInterface\":{\"input\":{\"type\":\"structure\",\"required\":[\"AttachmentId\"],\"members\":{\"AttachmentId\":{\"locationName\":\"attachmentId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Force\":{\"locationName\":\"force\",\"type\":\"boolean\"}}}},\"DetachVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"Device\":{},\"Force\":{\"type\":\"boolean\"},\"InstanceId\":{},\"VolumeId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S41\"}},\"DetachVpnGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"VpnGatewayId\"],\"members\":{\"VpcId\":{},\"VpnGatewayId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DisableEbsEncryptionByDefault\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EbsEncryptionByDefault\":{\"locationName\":\"ebsEncryptionByDefault\",\"type\":\"boolean\"}}}},\"DisableFastSnapshotRestores\":{\"input\":{\"type\":\"structure\",\"required\":[\"AvailabilityZones\",\"SourceSnapshotIds\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"S1dl\",\"locationName\":\"AvailabilityZone\"},\"SourceSnapshotIds\":{\"shape\":\"S17e\",\"locationName\":\"SourceSnapshotId\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Successful\":{\"locationName\":\"successful\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"State\":{\"locationName\":\"state\"},\"StateTransitionReason\":{\"locationName\":\"stateTransitionReason\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"OwnerAlias\":{\"locationName\":\"ownerAlias\"},\"EnablingTime\":{\"locationName\":\"enablingTime\",\"type\":\"timestamp\"},\"OptimizingTime\":{\"locationName\":\"optimizingTime\",\"type\":\"timestamp\"},\"EnabledTime\":{\"locationName\":\"enabledTime\",\"type\":\"timestamp\"},\"DisablingTime\":{\"locationName\":\"disablingTime\",\"type\":\"timestamp\"},\"DisabledTime\":{\"locationName\":\"disabledTime\",\"type\":\"timestamp\"}}}},\"Unsuccessful\":{\"locationName\":\"unsuccessful\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"FastSnapshotRestoreStateErrors\":{\"locationName\":\"fastSnapshotRestoreStateErrorSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}}}}}}}},\"DisableSerialConsoleAccess\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SerialConsoleAccessEnabled\":{\"locationName\":\"serialConsoleAccessEnabled\",\"type\":\"boolean\"}}}},\"DisableTransitGatewayRouteTablePropagation\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Propagation\":{\"shape\":\"S1dy\",\"locationName\":\"propagation\"}}}},\"DisableVgwRoutePropagation\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayId\",\"RouteTableId\"],\"members\":{\"GatewayId\":{},\"RouteTableId\":{},\"DryRun\":{\"type\":\"boolean\"}}}},\"DisableVpcClassicLink\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcId\":{\"locationName\":\"vpcId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DisableVpcClassicLinkDnsSupport\":{\"input\":{\"type\":\"structure\",\"members\":{\"VpcId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DisassociateAddress\":{\"input\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"PublicIp\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DisassociateClientVpnTargetNetwork\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"AssociationId\"],\"members\":{\"ClientVpnEndpointId\":{},\"AssociationId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"Status\":{\"shape\":\"S2o\",\"locationName\":\"status\"}}}},\"DisassociateEnclaveCertificateIamRole\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"RoleArn\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"DisassociateIamInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IamInstanceProfileAssociation\":{\"shape\":\"S2y\",\"locationName\":\"iamInstanceProfileAssociation\"}}}},\"DisassociateRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"DisassociateSubnetCidrBlock\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ipv6CidrBlockAssociation\":{\"shape\":\"S39\",\"locationName\":\"ipv6CidrBlockAssociation\"},\"SubnetId\":{\"locationName\":\"subnetId\"}}}},\"DisassociateTransitGatewayMulticastDomain\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"TransitGatewayAttachmentId\":{},\"SubnetIds\":{\"shape\":\"S3e\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"shape\":\"Sg\",\"locationName\":\"associations\"}}}},\"DisassociateTransitGatewayRouteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Association\":{\"shape\":\"S3j\",\"locationName\":\"association\"}}}},\"DisassociateVpcCidrBlock\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ipv6CidrBlockAssociation\":{\"shape\":\"S3o\",\"locationName\":\"ipv6CidrBlockAssociation\"},\"CidrBlockAssociation\":{\"shape\":\"S3r\",\"locationName\":\"cidrBlockAssociation\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"EnableEbsEncryptionByDefault\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EbsEncryptionByDefault\":{\"locationName\":\"ebsEncryptionByDefault\",\"type\":\"boolean\"}}}},\"EnableFastSnapshotRestores\":{\"input\":{\"type\":\"structure\",\"required\":[\"AvailabilityZones\",\"SourceSnapshotIds\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"S1dl\",\"locationName\":\"AvailabilityZone\"},\"SourceSnapshotIds\":{\"shape\":\"S17e\",\"locationName\":\"SourceSnapshotId\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Successful\":{\"locationName\":\"successful\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"State\":{\"locationName\":\"state\"},\"StateTransitionReason\":{\"locationName\":\"stateTransitionReason\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"OwnerAlias\":{\"locationName\":\"ownerAlias\"},\"EnablingTime\":{\"locationName\":\"enablingTime\",\"type\":\"timestamp\"},\"OptimizingTime\":{\"locationName\":\"optimizingTime\",\"type\":\"timestamp\"},\"EnabledTime\":{\"locationName\":\"enabledTime\",\"type\":\"timestamp\"},\"DisablingTime\":{\"locationName\":\"disablingTime\",\"type\":\"timestamp\"},\"DisabledTime\":{\"locationName\":\"disabledTime\",\"type\":\"timestamp\"}}}},\"Unsuccessful\":{\"locationName\":\"unsuccessful\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"FastSnapshotRestoreStateErrors\":{\"locationName\":\"fastSnapshotRestoreStateErrorSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}}}}}}}},\"EnableSerialConsoleAccess\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SerialConsoleAccessEnabled\":{\"locationName\":\"serialConsoleAccessEnabled\",\"type\":\"boolean\"}}}},\"EnableTransitGatewayRouteTablePropagation\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Propagation\":{\"shape\":\"S1dy\",\"locationName\":\"propagation\"}}}},\"EnableVgwRoutePropagation\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayId\",\"RouteTableId\"],\"members\":{\"GatewayId\":{},\"RouteTableId\":{},\"DryRun\":{\"type\":\"boolean\"}}}},\"EnableVolumeIO\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VolumeId\":{\"locationName\":\"volumeId\"}}}},\"EnableVpcClassicLink\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcId\":{\"locationName\":\"vpcId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"EnableVpcClassicLinkDnsSupport\":{\"input\":{\"type\":\"structure\",\"members\":{\"VpcId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ExportClientVpnClientCertificateRevocationList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateRevocationList\":{\"locationName\":\"certificateRevocationList\"},\"Status\":{\"locationName\":\"status\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}},\"ExportClientVpnClientConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientConfiguration\":{\"locationName\":\"clientConfiguration\"}}}},\"ExportImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"DiskImageFormat\",\"ImageId\",\"S3ExportLocation\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"Description\":{},\"DiskImageFormat\":{},\"DryRun\":{\"type\":\"boolean\"},\"ImageId\":{},\"S3ExportLocation\":{\"type\":\"structure\",\"required\":[\"S3Bucket\"],\"members\":{\"S3Bucket\":{},\"S3Prefix\":{}}},\"RoleName\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"DiskImageFormat\":{\"locationName\":\"diskImageFormat\"},\"ExportImageTaskId\":{\"locationName\":\"exportImageTaskId\"},\"ImageId\":{\"locationName\":\"imageId\"},\"RoleName\":{\"locationName\":\"roleName\"},\"Progress\":{\"locationName\":\"progress\"},\"S3ExportLocation\":{\"shape\":\"Ssm\",\"locationName\":\"s3ExportLocation\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"ExportTransitGatewayRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"S3Bucket\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"S3Bucket\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"S3Location\":{\"locationName\":\"s3Location\"}}}},\"GetAssociatedEnclaveCertificateIamRoles\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociatedRoles\":{\"locationName\":\"associatedRoleSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AssociatedRoleArn\":{\"locationName\":\"associatedRoleArn\"},\"CertificateS3BucketName\":{\"locationName\":\"certificateS3BucketName\"},\"CertificateS3ObjectKey\":{\"locationName\":\"certificateS3ObjectKey\"},\"EncryptionKmsKeyId\":{\"locationName\":\"encryptionKmsKeyId\"}}}}}}},\"GetAssociatedIpv6PoolCidrs\":{\"input\":{\"type\":\"structure\",\"required\":[\"PoolId\"],\"members\":{\"PoolId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ipv6CidrAssociations\":{\"locationName\":\"ipv6CidrAssociationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Ipv6Cidr\":{\"locationName\":\"ipv6Cidr\"},\"AssociatedResource\":{\"locationName\":\"associatedResource\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetCapacityReservationUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"CapacityReservationId\"],\"members\":{\"CapacityReservationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"CapacityReservationId\":{\"locationName\":\"capacityReservationId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"TotalInstanceCount\":{\"locationName\":\"totalInstanceCount\",\"type\":\"integer\"},\"AvailableInstanceCount\":{\"locationName\":\"availableInstanceCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"InstanceUsages\":{\"locationName\":\"instanceUsageSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"UsedInstanceCount\":{\"locationName\":\"usedInstanceCount\",\"type\":\"integer\"}}}}}}},\"GetCoipPoolUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"PoolId\"],\"members\":{\"PoolId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CoipPoolId\":{\"locationName\":\"coipPoolId\"},\"CoipAddressUsages\":{\"locationName\":\"coipAddressUsageSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AllocationId\":{\"locationName\":\"allocationId\"},\"AwsAccountId\":{\"locationName\":\"awsAccountId\"},\"AwsService\":{\"locationName\":\"awsService\"},\"CoIp\":{\"locationName\":\"coIp\"}}}},\"LocalGatewayRouteTableId\":{\"locationName\":\"localGatewayRouteTableId\"}}}},\"GetConsoleOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Latest\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"Output\":{\"locationName\":\"output\"},\"Timestamp\":{\"locationName\":\"timestamp\",\"type\":\"timestamp\"}}}},\"GetConsoleScreenshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceId\":{},\"WakeUp\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageData\":{\"locationName\":\"imageData\"},\"InstanceId\":{\"locationName\":\"instanceId\"}}}},\"GetDefaultCreditSpecification\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceFamily\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceFamily\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceFamilyCreditSpecification\":{\"shape\":\"S1g9\",\"locationName\":\"instanceFamilyCreditSpecification\"}}}},\"GetEbsDefaultKmsKeyId\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"}}}},\"GetEbsEncryptionByDefault\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EbsEncryptionByDefault\":{\"locationName\":\"ebsEncryptionByDefault\",\"type\":\"boolean\"}}}},\"GetFlowLogsIntegrationTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"FlowLogId\",\"ConfigDeliveryS3DestinationArn\",\"IntegrateServices\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FlowLogId\":{},\"ConfigDeliveryS3DestinationArn\":{},\"IntegrateServices\":{\"locationName\":\"IntegrateService\",\"type\":\"structure\",\"members\":{\"AthenaIntegrations\":{\"locationName\":\"AthenaIntegration\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"required\":[\"IntegrationResultS3DestinationArn\",\"PartitionLoadFrequency\"],\"members\":{\"IntegrationResultS3DestinationArn\":{},\"PartitionLoadFrequency\":{},\"PartitionStartDate\":{\"type\":\"timestamp\"},\"PartitionEndDate\":{\"type\":\"timestamp\"}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Result\":{\"locationName\":\"result\"}}}},\"GetGroupsForCapacityReservation\":{\"input\":{\"type\":\"structure\",\"required\":[\"CapacityReservationId\"],\"members\":{\"CapacityReservationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"CapacityReservationGroups\":{\"locationName\":\"capacityReservationGroupSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"GroupArn\":{\"locationName\":\"groupArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"}}}}}}},\"GetHostReservationPurchasePreview\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostIdSet\",\"OfferingId\"],\"members\":{\"HostIdSet\":{\"shape\":\"S1gq\"},\"OfferingId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Purchase\":{\"shape\":\"S1gs\",\"locationName\":\"purchase\"},\"TotalHourlyPrice\":{\"locationName\":\"totalHourlyPrice\"},\"TotalUpfrontPrice\":{\"locationName\":\"totalUpfrontPrice\"}}}},\"GetLaunchTemplateData\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateData\":{\"shape\":\"Sbp\",\"locationName\":\"launchTemplateData\"}}}},\"GetManagedPrefixListAssociations\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrefixListId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"PrefixListId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrefixListAssociations\":{\"locationName\":\"prefixListAssociationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceOwner\":{\"locationName\":\"resourceOwner\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetManagedPrefixListEntries\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrefixListId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"PrefixListId\":{},\"TargetVersion\":{\"type\":\"long\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entries\":{\"locationName\":\"entrySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"cidr\"},\"Description\":{\"locationName\":\"description\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetPasswordData\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"PasswordData\":{\"locationName\":\"passwordData\"},\"Timestamp\":{\"locationName\":\"timestamp\",\"type\":\"timestamp\"}}}},\"GetReservedInstancesExchangeQuote\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedInstanceIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ReservedInstanceIds\":{\"shape\":\"S3\",\"locationName\":\"ReservedInstanceId\"},\"TargetConfigurations\":{\"shape\":\"S5\",\"locationName\":\"TargetConfiguration\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"IsValidExchange\":{\"locationName\":\"isValidExchange\",\"type\":\"boolean\"},\"OutputReservedInstancesWillExpireAt\":{\"locationName\":\"outputReservedInstancesWillExpireAt\",\"type\":\"timestamp\"},\"PaymentDue\":{\"locationName\":\"paymentDue\"},\"ReservedInstanceValueRollup\":{\"shape\":\"S1h9\",\"locationName\":\"reservedInstanceValueRollup\"},\"ReservedInstanceValueSet\":{\"locationName\":\"reservedInstanceValueSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ReservationValue\":{\"shape\":\"S1h9\",\"locationName\":\"reservationValue\"},\"ReservedInstanceId\":{\"locationName\":\"reservedInstanceId\"}}}},\"TargetConfigurationValueRollup\":{\"shape\":\"S1h9\",\"locationName\":\"targetConfigurationValueRollup\"},\"TargetConfigurationValueSet\":{\"locationName\":\"targetConfigurationValueSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ReservationValue\":{\"shape\":\"S1h9\",\"locationName\":\"reservationValue\"},\"TargetConfiguration\":{\"locationName\":\"targetConfiguration\",\"type\":\"structure\",\"members\":{\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"OfferingId\":{\"locationName\":\"offeringId\"}}}}}},\"ValidationFailureReason\":{\"locationName\":\"validationFailureReason\"}}}},\"GetSerialConsoleAccessStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SerialConsoleAccessEnabled\":{\"locationName\":\"serialConsoleAccessEnabled\",\"type\":\"boolean\"}}}},\"GetTransitGatewayAttachmentPropagations\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentPropagations\":{\"locationName\":\"transitGatewayAttachmentPropagations\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTableId\":{\"locationName\":\"transitGatewayRouteTableId\"},\"State\":{\"locationName\":\"state\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetTransitGatewayMulticastDomainAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MulticastDomainAssociations\":{\"locationName\":\"multicastDomainAssociations\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"ResourceOwnerId\":{\"locationName\":\"resourceOwnerId\"},\"Subnet\":{\"shape\":\"Sj\",\"locationName\":\"subnet\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetTransitGatewayPrefixListReferences\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPrefixListReferences\":{\"locationName\":\"transitGatewayPrefixListReferenceSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sho\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetTransitGatewayRouteTableAssociations\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"locationName\":\"associations\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"State\":{\"locationName\":\"state\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"GetTransitGatewayRouteTablePropagations\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTablePropagations\":{\"locationName\":\"transitGatewayRouteTablePropagations\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"State\":{\"locationName\":\"state\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ImportClientVpnClientCertificateRevocationList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"CertificateRevocationList\"],\"members\":{\"ClientVpnEndpointId\":{},\"CertificateRevocationList\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ImportImage\":{\"input\":{\"type\":\"structure\",\"members\":{\"Architecture\":{},\"ClientData\":{\"shape\":\"S1i3\"},\"ClientToken\":{},\"Description\":{},\"DiskContainers\":{\"locationName\":\"DiskContainer\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{},\"DeviceName\":{},\"Format\":{},\"SnapshotId\":{},\"Url\":{},\"UserBucket\":{\"shape\":\"S1i6\"}}}},\"DryRun\":{\"type\":\"boolean\"},\"Encrypted\":{\"type\":\"boolean\"},\"Hypervisor\":{},\"KmsKeyId\":{},\"LicenseType\":{},\"Platform\":{},\"RoleName\":{},\"LicenseSpecifications\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{}}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Architecture\":{\"locationName\":\"architecture\"},\"Description\":{\"locationName\":\"description\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"Hypervisor\":{\"locationName\":\"hypervisor\"},\"ImageId\":{\"locationName\":\"imageId\"},\"ImportTaskId\":{\"locationName\":\"importTaskId\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"LicenseType\":{\"locationName\":\"licenseType\"},\"Platform\":{\"locationName\":\"platform\"},\"Progress\":{\"locationName\":\"progress\"},\"SnapshotDetails\":{\"shape\":\"Sw7\",\"locationName\":\"snapshotDetailSet\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"LicenseSpecifications\":{\"shape\":\"Swa\",\"locationName\":\"licenseSpecifications\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"ImportInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"Platform\"],\"members\":{\"Description\":{\"locationName\":\"description\"},\"DiskImages\":{\"locationName\":\"diskImage\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Image\":{\"shape\":\"S1id\"},\"Volume\":{\"shape\":\"S1ie\"}}}},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"LaunchSpecification\":{\"locationName\":\"launchSpecification\",\"type\":\"structure\",\"members\":{\"AdditionalInfo\":{\"locationName\":\"additionalInfo\"},\"Architecture\":{\"locationName\":\"architecture\"},\"GroupIds\":{\"shape\":\"Saf\",\"locationName\":\"GroupId\"},\"GroupNames\":{\"shape\":\"Saz\",\"locationName\":\"GroupName\"},\"InstanceInitiatedShutdownBehavior\":{\"locationName\":\"instanceInitiatedShutdownBehavior\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"Monitoring\":{\"locationName\":\"monitoring\",\"type\":\"boolean\"},\"Placement\":{\"shape\":\"S8r\",\"locationName\":\"placement\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"UserData\":{\"locationName\":\"userData\",\"type\":\"structure\",\"members\":{\"Data\":{\"locationName\":\"data\"}},\"sensitive\":true}}},\"Platform\":{\"locationName\":\"platform\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConversionTask\":{\"shape\":\"Srj\",\"locationName\":\"conversionTask\"}}}},\"ImportKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyName\",\"PublicKeyMaterial\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"KeyName\":{\"locationName\":\"keyName\"},\"PublicKeyMaterial\":{\"locationName\":\"publicKeyMaterial\",\"type\":\"blob\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyFingerprint\":{\"locationName\":\"keyFingerprint\"},\"KeyName\":{\"locationName\":\"keyName\"},\"KeyPairId\":{\"locationName\":\"keyPairId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"ImportSnapshot\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClientData\":{\"shape\":\"S1i3\"},\"ClientToken\":{},\"Description\":{},\"DiskContainer\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Format\":{},\"Url\":{},\"UserBucket\":{\"shape\":\"S1i6\"}}},\"DryRun\":{\"type\":\"boolean\"},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"RoleName\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"ImportTaskId\":{\"locationName\":\"importTaskId\"},\"SnapshotTaskDetail\":{\"shape\":\"Swi\",\"locationName\":\"snapshotTaskDetail\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"ImportVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"AvailabilityZone\",\"Image\",\"Volume\"],\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Description\":{\"locationName\":\"description\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Image\":{\"shape\":\"S1id\",\"locationName\":\"image\"},\"Volume\":{\"shape\":\"S1ie\",\"locationName\":\"volume\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConversionTask\":{\"shape\":\"Srj\",\"locationName\":\"conversionTask\"}}}},\"ModifyAddressAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"AllocationId\"],\"members\":{\"AllocationId\":{},\"DomainName\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Address\":{\"shape\":\"Sp0\",\"locationName\":\"address\"}}}},\"ModifyAvailabilityZoneGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"OptInStatus\"],\"members\":{\"GroupName\":{},\"OptInStatus\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyCapacityReservation\":{\"input\":{\"type\":\"structure\",\"required\":[\"CapacityReservationId\"],\"members\":{\"CapacityReservationId\":{},\"InstanceCount\":{\"type\":\"integer\"},\"EndDate\":{\"type\":\"timestamp\"},\"EndDateType\":{},\"Accept\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyClientVpnEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"ServerCertificateArn\":{},\"ConnectionLogOptions\":{\"shape\":\"S70\"},\"DnsServers\":{\"type\":\"structure\",\"members\":{\"CustomDnsServers\":{\"shape\":\"Se\"},\"Enabled\":{\"type\":\"boolean\"}}},\"VpnPort\":{\"type\":\"integer\"},\"Description\":{},\"SplitTunnel\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"},\"SecurityGroupIds\":{\"shape\":\"S25\",\"locationName\":\"SecurityGroupId\"},\"VpcId\":{},\"SelfServicePortal\":{},\"ClientConnectOptions\":{\"shape\":\"S73\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyDefaultCreditSpecification\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceFamily\",\"CpuCredits\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceFamily\":{},\"CpuCredits\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceFamilyCreditSpecification\":{\"shape\":\"S1g9\",\"locationName\":\"instanceFamilyCreditSpecification\"}}}},\"ModifyEbsDefaultKmsKeyId\":{\"input\":{\"type\":\"structure\",\"required\":[\"KmsKeyId\"],\"members\":{\"KmsKeyId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"}}}},\"ModifyFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ExcessCapacityTerminationPolicy\":{},\"LaunchTemplateConfigs\":{\"shape\":\"S8j\",\"locationName\":\"LaunchTemplateConfig\"},\"FleetId\":{},\"TargetCapacitySpecification\":{\"shape\":\"S8s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyFpgaImageAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"FpgaImageId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FpgaImageId\":{},\"Attribute\":{},\"OperationType\":{},\"UserIds\":{\"shape\":\"S1j7\",\"locationName\":\"UserId\"},\"UserGroups\":{\"shape\":\"S1j8\",\"locationName\":\"UserGroup\"},\"ProductCodes\":{\"shape\":\"S1j9\",\"locationName\":\"ProductCode\"},\"LoadPermission\":{\"type\":\"structure\",\"members\":{\"Add\":{\"shape\":\"S1jb\"},\"Remove\":{\"shape\":\"S1jb\"}}},\"Description\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FpgaImageAttribute\":{\"shape\":\"Sty\",\"locationName\":\"fpgaImageAttribute\"}}}},\"ModifyHosts\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostIds\"],\"members\":{\"AutoPlacement\":{\"locationName\":\"autoPlacement\"},\"HostIds\":{\"shape\":\"Suv\",\"locationName\":\"hostId\"},\"HostRecovery\":{},\"InstanceType\":{},\"InstanceFamily\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Successful\":{\"shape\":\"S21\",\"locationName\":\"successful\"},\"Unsuccessful\":{\"shape\":\"S1jg\",\"locationName\":\"unsuccessful\"}}}},\"ModifyIdFormat\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"UseLongIds\"],\"members\":{\"Resource\":{},\"UseLongIds\":{\"type\":\"boolean\"}}}},\"ModifyIdentityIdFormat\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrincipalArn\",\"Resource\",\"UseLongIds\"],\"members\":{\"PrincipalArn\":{\"locationName\":\"principalArn\"},\"Resource\":{\"locationName\":\"resource\"},\"UseLongIds\":{\"locationName\":\"useLongIds\",\"type\":\"boolean\"}}}},\"ModifyImageAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageId\"],\"members\":{\"Attribute\":{},\"Description\":{\"shape\":\"S80\"},\"ImageId\":{},\"LaunchPermission\":{\"type\":\"structure\",\"members\":{\"Add\":{\"shape\":\"Svl\"},\"Remove\":{\"shape\":\"Svl\"}}},\"OperationType\":{},\"ProductCodes\":{\"shape\":\"S1j9\",\"locationName\":\"ProductCode\"},\"UserGroups\":{\"shape\":\"S1j8\",\"locationName\":\"UserGroup\"},\"UserIds\":{\"shape\":\"S1j7\",\"locationName\":\"UserId\"},\"Value\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"ModifyInstanceAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"SourceDestCheck\":{\"shape\":\"Swp\"},\"Attribute\":{\"locationName\":\"attribute\"},\"BlockDeviceMappings\":{\"locationName\":\"blockDeviceMapping\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"DeviceName\":{\"locationName\":\"deviceName\"},\"Ebs\":{\"locationName\":\"ebs\",\"type\":\"structure\",\"members\":{\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"VolumeId\":{\"locationName\":\"volumeId\"}}},\"NoDevice\":{\"locationName\":\"noDevice\"},\"VirtualName\":{\"locationName\":\"virtualName\"}}}},\"DisableApiTermination\":{\"shape\":\"Swp\",\"locationName\":\"disableApiTermination\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"EbsOptimized\":{\"shape\":\"Swp\",\"locationName\":\"ebsOptimized\"},\"EnaSupport\":{\"shape\":\"Swp\",\"locationName\":\"enaSupport\"},\"Groups\":{\"shape\":\"S3t\",\"locationName\":\"GroupId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceInitiatedShutdownBehavior\":{\"shape\":\"S80\",\"locationName\":\"instanceInitiatedShutdownBehavior\"},\"InstanceType\":{\"shape\":\"S80\",\"locationName\":\"instanceType\"},\"Kernel\":{\"shape\":\"S80\",\"locationName\":\"kernel\"},\"Ramdisk\":{\"shape\":\"S80\",\"locationName\":\"ramdisk\"},\"SriovNetSupport\":{\"shape\":\"S80\",\"locationName\":\"sriovNetSupport\"},\"UserData\":{\"locationName\":\"userData\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\",\"type\":\"blob\"}}},\"Value\":{\"locationName\":\"value\"}}}},\"ModifyInstanceCapacityReservationAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"CapacityReservationSpecification\"],\"members\":{\"InstanceId\":{},\"CapacityReservationSpecification\":{\"shape\":\"S1jr\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyInstanceCreditSpecification\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceCreditSpecifications\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{},\"InstanceCreditSpecifications\":{\"locationName\":\"InstanceCreditSpecification\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"CpuCredits\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuccessfulInstanceCreditSpecifications\":{\"locationName\":\"successfulInstanceCreditSpecificationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"}}}},\"UnsuccessfulInstanceCreditSpecifications\":{\"locationName\":\"unsuccessfulInstanceCreditSpecificationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}}}}},\"ModifyInstanceEventStartTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"InstanceEventId\",\"NotBefore\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceId\":{},\"InstanceEventId\":{},\"NotBefore\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Event\":{\"shape\":\"Sx3\",\"locationName\":\"event\"}}}},\"ModifyInstanceMetadataOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"HttpTokens\":{},\"HttpPutResponseHopLimit\":{\"type\":\"integer\"},\"HttpEndpoint\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceMetadataOptions\":{\"shape\":\"S10v\",\"locationName\":\"instanceMetadataOptions\"}}}},\"ModifyInstancePlacement\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"Affinity\":{\"locationName\":\"affinity\"},\"GroupName\":{},\"HostId\":{\"locationName\":\"hostId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"Tenancy\":{\"locationName\":\"tenancy\"},\"PartitionNumber\":{\"type\":\"integer\"},\"HostResourceGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyLaunchTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{},\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"DefaultVersion\":{\"locationName\":\"SetDefaultVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchTemplate\":{\"shape\":\"Sbi\",\"locationName\":\"launchTemplate\"}}}},\"ModifyManagedPrefixList\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrefixListId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"PrefixListId\":{},\"CurrentVersion\":{\"type\":\"long\"},\"PrefixListName\":{},\"AddEntries\":{\"shape\":\"Scu\",\"locationName\":\"AddEntry\"},\"RemoveEntries\":{\"locationName\":\"RemoveEntry\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrefixList\":{\"shape\":\"Scx\",\"locationName\":\"prefixList\"}}}},\"ModifyNetworkInterfaceAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\"],\"members\":{\"Attachment\":{\"locationName\":\"attachment\",\"type\":\"structure\",\"members\":{\"AttachmentId\":{\"locationName\":\"attachmentId\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"}}},\"Description\":{\"shape\":\"S80\",\"locationName\":\"description\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Saf\",\"locationName\":\"SecurityGroupId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"SourceDestCheck\":{\"shape\":\"Swp\",\"locationName\":\"sourceDestCheck\"}}}},\"ModifyReservedInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedInstancesIds\",\"TargetConfigurations\"],\"members\":{\"ReservedInstancesIds\":{\"shape\":\"S15e\",\"locationName\":\"ReservedInstancesId\"},\"ClientToken\":{\"locationName\":\"clientToken\"},\"TargetConfigurations\":{\"locationName\":\"ReservedInstancesConfigurationSetItemType\",\"type\":\"list\",\"member\":{\"shape\":\"S160\",\"locationName\":\"item\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstancesModificationId\":{\"locationName\":\"reservedInstancesModificationId\"}}}},\"ModifySnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotId\"],\"members\":{\"Attribute\":{},\"CreateVolumePermission\":{\"type\":\"structure\",\"members\":{\"Add\":{\"shape\":\"S17a\"},\"Remove\":{\"shape\":\"S17a\"}}},\"GroupNames\":{\"shape\":\"S172\",\"locationName\":\"UserGroup\"},\"OperationType\":{},\"SnapshotId\":{},\"UserIds\":{\"shape\":\"S1j7\",\"locationName\":\"UserId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"ModifySpotFleetRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"SpotFleetRequestId\"],\"members\":{\"ExcessCapacityTerminationPolicy\":{\"locationName\":\"excessCapacityTerminationPolicy\"},\"LaunchTemplateConfigs\":{\"shape\":\"S18c\",\"locationName\":\"LaunchTemplateConfig\"},\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"},\"TargetCapacity\":{\"locationName\":\"targetCapacity\",\"type\":\"integer\"},\"OnDemandTargetCapacity\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifySubnetAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetId\"],\"members\":{\"AssignIpv6AddressOnCreation\":{\"shape\":\"Swp\"},\"MapPublicIpOnLaunch\":{\"shape\":\"Swp\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"MapCustomerOwnedIpOnLaunch\":{\"shape\":\"Swp\"},\"CustomerOwnedIpv4Pool\":{}}}},\"ModifyTrafficMirrorFilterNetworkServices\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorFilterId\"],\"members\":{\"TrafficMirrorFilterId\":{},\"AddNetworkServices\":{\"shape\":\"Sg3\",\"locationName\":\"AddNetworkService\"},\"RemoveNetworkServices\":{\"shape\":\"Sg3\",\"locationName\":\"RemoveNetworkService\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilter\":{\"shape\":\"Sfx\",\"locationName\":\"trafficMirrorFilter\"}}}},\"ModifyTrafficMirrorFilterRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorFilterRuleId\"],\"members\":{\"TrafficMirrorFilterRuleId\":{},\"TrafficDirection\":{},\"RuleNumber\":{\"type\":\"integer\"},\"RuleAction\":{},\"DestinationPortRange\":{\"shape\":\"Sg7\"},\"SourcePortRange\":{\"shape\":\"Sg7\"},\"Protocol\":{\"type\":\"integer\"},\"DestinationCidrBlock\":{},\"SourceCidrBlock\":{},\"Description\":{},\"RemoveFields\":{\"locationName\":\"RemoveField\",\"type\":\"list\",\"member\":{}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterRule\":{\"shape\":\"Sfz\",\"locationName\":\"trafficMirrorFilterRule\"}}}},\"ModifyTrafficMirrorSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrafficMirrorSessionId\"],\"members\":{\"TrafficMirrorSessionId\":{},\"TrafficMirrorTargetId\":{},\"TrafficMirrorFilterId\":{},\"PacketLength\":{\"type\":\"integer\"},\"SessionNumber\":{\"type\":\"integer\"},\"VirtualNetworkId\":{\"type\":\"integer\"},\"Description\":{},\"RemoveFields\":{\"locationName\":\"RemoveField\",\"type\":\"list\",\"member\":{}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorSession\":{\"shape\":\"Sgc\",\"locationName\":\"trafficMirrorSession\"}}}},\"ModifyTransitGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayId\"],\"members\":{\"TransitGatewayId\":{},\"Description\":{},\"Options\":{\"type\":\"structure\",\"members\":{\"AddTransitGatewayCidrBlocks\":{\"shape\":\"Sgo\"},\"RemoveTransitGatewayCidrBlocks\":{\"shape\":\"Sgo\"},\"VpnEcmpSupport\":{},\"DnsSupport\":{},\"AutoAcceptSharedAttachments\":{},\"DefaultRouteTableAssociation\":{},\"AssociationDefaultRouteTableId\":{},\"DefaultRouteTablePropagation\":{},\"PropagationDefaultRouteTableId\":{}}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGateway\":{\"shape\":\"Sgq\",\"locationName\":\"transitGateway\"}}}},\"ModifyTransitGatewayPrefixListReference\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"PrefixListId\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"PrefixListId\":{},\"TransitGatewayAttachmentId\":{},\"Blackhole\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPrefixListReference\":{\"shape\":\"Sho\",\"locationName\":\"transitGatewayPrefixListReference\"}}}},\"ModifyTransitGatewayVpcAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"AddSubnetIds\":{\"shape\":\"S3e\"},\"RemoveSubnetIds\":{\"shape\":\"S3e\"},\"Options\":{\"type\":\"structure\",\"members\":{\"DnsSupport\":{},\"Ipv6Support\":{},\"ApplianceModeSupport\":{}}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayVpcAttachment\":{\"shape\":\"Sw\",\"locationName\":\"transitGatewayVpcAttachment\"}}}},\"ModifyVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"VolumeId\":{},\"Size\":{\"type\":\"integer\"},\"VolumeType\":{},\"Iops\":{\"type\":\"integer\"},\"Throughput\":{\"type\":\"integer\"},\"MultiAttachEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeModification\":{\"shape\":\"S1bp\",\"locationName\":\"volumeModification\"}}}},\"ModifyVolumeAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"AutoEnableIO\":{\"shape\":\"Swp\"},\"VolumeId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"ModifyVpcAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"EnableDnsHostnames\":{\"shape\":\"Swp\"},\"EnableDnsSupport\":{\"shape\":\"Swp\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"ModifyVpcEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcEndpointId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"VpcEndpointId\":{},\"ResetPolicy\":{\"type\":\"boolean\"},\"PolicyDocument\":{},\"AddRouteTableIds\":{\"shape\":\"Sid\",\"locationName\":\"AddRouteTableId\"},\"RemoveRouteTableIds\":{\"shape\":\"Sid\",\"locationName\":\"RemoveRouteTableId\"},\"AddSubnetIds\":{\"shape\":\"Sie\",\"locationName\":\"AddSubnetId\"},\"RemoveSubnetIds\":{\"shape\":\"Sie\",\"locationName\":\"RemoveSubnetId\"},\"AddSecurityGroupIds\":{\"shape\":\"Sif\",\"locationName\":\"AddSecurityGroupId\"},\"RemoveSecurityGroupIds\":{\"shape\":\"Sif\",\"locationName\":\"RemoveSecurityGroupId\"},\"PrivateDnsEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyVpcEndpointConnectionNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionNotificationId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ConnectionNotificationId\":{},\"ConnectionNotificationArn\":{},\"ConnectionEvents\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyVpcEndpointServiceConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{},\"PrivateDnsName\":{},\"RemovePrivateDnsName\":{\"type\":\"boolean\"},\"AcceptanceRequired\":{\"type\":\"boolean\"},\"AddNetworkLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"AddNetworkLoadBalancerArn\"},\"RemoveNetworkLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"RemoveNetworkLoadBalancerArn\"},\"AddGatewayLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"AddGatewayLoadBalancerArn\"},\"RemoveGatewayLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"RemoveGatewayLoadBalancerArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyVpcEndpointServicePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{},\"AddAllowedPrincipals\":{\"shape\":\"Se\"},\"RemoveAllowedPrincipals\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyVpcPeeringConnectionOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcPeeringConnectionId\"],\"members\":{\"AccepterPeeringConnectionOptions\":{\"shape\":\"S1lm\"},\"DryRun\":{\"type\":\"boolean\"},\"RequesterPeeringConnectionOptions\":{\"shape\":\"S1lm\"},\"VpcPeeringConnectionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccepterPeeringConnectionOptions\":{\"shape\":\"S1lo\",\"locationName\":\"accepterPeeringConnectionOptions\"},\"RequesterPeeringConnectionOptions\":{\"shape\":\"S1lo\",\"locationName\":\"requesterPeeringConnectionOptions\"}}}},\"ModifyVpcTenancy\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcId\",\"InstanceTenancy\"],\"members\":{\"VpcId\":{},\"InstanceTenancy\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ModifyVpnConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpnConnectionId\"],\"members\":{\"VpnConnectionId\":{},\"TransitGatewayId\":{},\"CustomerGatewayId\":{},\"VpnGatewayId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnConnection\":{\"shape\":\"Sjp\",\"locationName\":\"vpnConnection\"}}}},\"ModifyVpnConnectionOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpnConnectionId\"],\"members\":{\"VpnConnectionId\":{},\"LocalIpv4NetworkCidr\":{},\"RemoteIpv4NetworkCidr\":{},\"LocalIpv6NetworkCidr\":{},\"RemoteIpv6NetworkCidr\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnConnection\":{\"shape\":\"Sjp\",\"locationName\":\"vpnConnection\"}}}},\"ModifyVpnTunnelCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpnConnectionId\",\"VpnTunnelOutsideIpAddress\"],\"members\":{\"VpnConnectionId\":{},\"VpnTunnelOutsideIpAddress\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnConnection\":{\"shape\":\"Sjp\",\"locationName\":\"vpnConnection\"}}}},\"ModifyVpnTunnelOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpnConnectionId\",\"VpnTunnelOutsideIpAddress\",\"TunnelOptions\"],\"members\":{\"VpnConnectionId\":{},\"VpnTunnelOutsideIpAddress\":{},\"TunnelOptions\":{\"type\":\"structure\",\"members\":{\"TunnelInsideCidr\":{},\"TunnelInsideIpv6Cidr\":{},\"PreSharedKey\":{},\"Phase1LifetimeSeconds\":{\"type\":\"integer\"},\"Phase2LifetimeSeconds\":{\"type\":\"integer\"},\"RekeyMarginTimeSeconds\":{\"type\":\"integer\"},\"RekeyFuzzPercentage\":{\"type\":\"integer\"},\"ReplayWindowSize\":{\"type\":\"integer\"},\"DPDTimeoutSeconds\":{\"type\":\"integer\"},\"DPDTimeoutAction\":{},\"Phase1EncryptionAlgorithms\":{\"shape\":\"Sja\",\"locationName\":\"Phase1EncryptionAlgorithm\"},\"Phase2EncryptionAlgorithms\":{\"shape\":\"Sjc\",\"locationName\":\"Phase2EncryptionAlgorithm\"},\"Phase1IntegrityAlgorithms\":{\"shape\":\"Sje\",\"locationName\":\"Phase1IntegrityAlgorithm\"},\"Phase2IntegrityAlgorithms\":{\"shape\":\"Sjg\",\"locationName\":\"Phase2IntegrityAlgorithm\"},\"Phase1DHGroupNumbers\":{\"shape\":\"Sji\",\"locationName\":\"Phase1DHGroupNumber\"},\"Phase2DHGroupNumbers\":{\"shape\":\"Sjk\",\"locationName\":\"Phase2DHGroupNumber\"},\"IKEVersions\":{\"shape\":\"Sjm\",\"locationName\":\"IKEVersion\"},\"StartupAction\":{}}},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpnConnection\":{\"shape\":\"Sjp\",\"locationName\":\"vpnConnection\"}}}},\"MonitorInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceMonitorings\":{\"shape\":\"S1m3\",\"locationName\":\"instancesSet\"}}}},\"MoveAddressToVpc\":{\"input\":{\"type\":\"structure\",\"required\":[\"PublicIp\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"PublicIp\":{\"locationName\":\"publicIp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AllocationId\":{\"locationName\":\"allocationId\"},\"Status\":{\"locationName\":\"status\"}}}},\"ProvisionByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{},\"CidrAuthorizationContext\":{\"type\":\"structure\",\"required\":[\"Message\",\"Signature\"],\"members\":{\"Message\":{},\"Signature\":{}}},\"PubliclyAdvertisable\":{\"type\":\"boolean\"},\"Description\":{},\"DryRun\":{\"type\":\"boolean\"},\"PoolTagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"PoolTagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"S1n\",\"locationName\":\"byoipCidr\"}}}},\"PurchaseHostReservation\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostIdSet\",\"OfferingId\"],\"members\":{\"ClientToken\":{},\"CurrencyCode\":{},\"HostIdSet\":{\"shape\":\"S1gq\"},\"LimitPrice\":{},\"OfferingId\":{},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Purchase\":{\"shape\":\"S1gs\",\"locationName\":\"purchase\"},\"TotalHourlyPrice\":{\"locationName\":\"totalHourlyPrice\"},\"TotalUpfrontPrice\":{\"locationName\":\"totalUpfrontPrice\"}}}},\"PurchaseReservedInstancesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceCount\",\"ReservedInstancesOfferingId\"],\"members\":{\"InstanceCount\":{\"type\":\"integer\"},\"ReservedInstancesOfferingId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"LimitPrice\":{\"locationName\":\"limitPrice\",\"type\":\"structure\",\"members\":{\"Amount\":{\"locationName\":\"amount\",\"type\":\"double\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"}}},\"PurchaseTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"}}}},\"PurchaseScheduledInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"PurchaseRequests\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"},\"PurchaseRequests\":{\"locationName\":\"PurchaseRequest\",\"type\":\"list\",\"member\":{\"locationName\":\"PurchaseRequest\",\"type\":\"structure\",\"required\":[\"InstanceCount\",\"PurchaseToken\"],\"members\":{\"InstanceCount\":{\"type\":\"integer\"},\"PurchaseToken\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScheduledInstanceSet\":{\"locationName\":\"scheduledInstanceSet\",\"type\":\"list\",\"member\":{\"shape\":\"S16v\",\"locationName\":\"item\"}}}}},\"RebootInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"RegisterImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"ImageLocation\":{},\"Architecture\":{\"locationName\":\"architecture\"},\"BlockDeviceMappings\":{\"shape\":\"S9j\",\"locationName\":\"BlockDeviceMapping\"},\"Description\":{\"locationName\":\"description\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"EnaSupport\":{\"locationName\":\"enaSupport\",\"type\":\"boolean\"},\"KernelId\":{\"locationName\":\"kernelId\"},\"Name\":{\"locationName\":\"name\"},\"BillingProducts\":{\"locationName\":\"BillingProduct\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"RamdiskId\":{\"locationName\":\"ramdiskId\"},\"RootDeviceName\":{\"locationName\":\"rootDeviceName\"},\"SriovNetSupport\":{\"locationName\":\"sriovNetSupport\"},\"VirtualizationType\":{\"locationName\":\"virtualizationType\"},\"BootMode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{\"locationName\":\"imageId\"}}}},\"RegisterInstanceEventNotificationAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"InstanceTagAttribute\":{\"type\":\"structure\",\"members\":{\"IncludeAllTagsOfInstance\":{\"type\":\"boolean\"},\"InstanceTagKeys\":{\"shape\":\"So3\",\"locationName\":\"InstanceTagKey\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceTagAttribute\":{\"shape\":\"So5\",\"locationName\":\"instanceTagAttribute\"}}}},\"RegisterTransitGatewayMulticastGroupMembers\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"GroupIpAddress\":{},\"NetworkInterfaceIds\":{\"shape\":\"So7\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegisteredMulticastGroupMembers\":{\"locationName\":\"registeredMulticastGroupMembers\",\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{\"locationName\":\"transitGatewayMulticastDomainId\"},\"RegisteredNetworkInterfaceIds\":{\"shape\":\"Se\",\"locationName\":\"registeredNetworkInterfaceIds\"},\"GroupIpAddress\":{\"locationName\":\"groupIpAddress\"}}}}}},\"RegisterTransitGatewayMulticastGroupSources\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"GroupIpAddress\":{},\"NetworkInterfaceIds\":{\"shape\":\"So7\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegisteredMulticastGroupSources\":{\"locationName\":\"registeredMulticastGroupSources\",\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{\"locationName\":\"transitGatewayMulticastDomainId\"},\"RegisteredNetworkInterfaceIds\":{\"shape\":\"Se\",\"locationName\":\"registeredNetworkInterfaceIds\"},\"GroupIpAddress\":{\"locationName\":\"groupIpAddress\"}}}}}},\"RejectTransitGatewayMulticastDomainAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"TransitGatewayAttachmentId\":{},\"SubnetIds\":{\"shape\":\"Se\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"shape\":\"Sg\",\"locationName\":\"associations\"}}}},\"RejectTransitGatewayPeeringAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayPeeringAttachment\":{\"shape\":\"Sn\",\"locationName\":\"transitGatewayPeeringAttachment\"}}}},\"RejectTransitGatewayVpcAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayAttachmentId\"],\"members\":{\"TransitGatewayAttachmentId\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayVpcAttachment\":{\"shape\":\"Sw\",\"locationName\":\"transitGatewayVpcAttachment\"}}}},\"RejectVpcEndpointConnections\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\",\"VpcEndpointIds\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{},\"VpcEndpointIds\":{\"shape\":\"S13\",\"locationName\":\"VpcEndpointId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Unsuccessful\":{\"shape\":\"S16\",\"locationName\":\"unsuccessful\"}}}},\"RejectVpcPeeringConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"VpcPeeringConnectionId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ReleaseAddress\":{\"input\":{\"type\":\"structure\",\"members\":{\"AllocationId\":{},\"PublicIp\":{},\"NetworkBorderGroup\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"ReleaseHosts\":{\"input\":{\"type\":\"structure\",\"required\":[\"HostIds\"],\"members\":{\"HostIds\":{\"shape\":\"Suv\",\"locationName\":\"hostId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Successful\":{\"shape\":\"S21\",\"locationName\":\"successful\"},\"Unsuccessful\":{\"shape\":\"S1jg\",\"locationName\":\"unsuccessful\"}}}},\"ReplaceIamInstanceProfileAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"IamInstanceProfile\",\"AssociationId\"],\"members\":{\"IamInstanceProfile\":{\"shape\":\"S2w\"},\"AssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IamInstanceProfileAssociation\":{\"shape\":\"S2y\",\"locationName\":\"iamInstanceProfileAssociation\"}}}},\"ReplaceNetworkAclAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\",\"NetworkAclId\"],\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NewAssociationId\":{\"locationName\":\"newAssociationId\"}}}},\"ReplaceNetworkAclEntry\":{\"input\":{\"type\":\"structure\",\"required\":[\"Egress\",\"NetworkAclId\",\"Protocol\",\"RuleAction\",\"RuleNumber\"],\"members\":{\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Egress\":{\"locationName\":\"egress\",\"type\":\"boolean\"},\"IcmpTypeCode\":{\"shape\":\"Sde\",\"locationName\":\"Icmp\"},\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"},\"PortRange\":{\"shape\":\"Sdf\",\"locationName\":\"portRange\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RuleAction\":{\"locationName\":\"ruleAction\"},\"RuleNumber\":{\"locationName\":\"ruleNumber\",\"type\":\"integer\"}}}},\"ReplaceRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"RouteTableId\"],\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"DestinationIpv6CidrBlock\":{\"locationName\":\"destinationIpv6CidrBlock\"},\"DestinationPrefixListId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"VpcEndpointId\":{},\"EgressOnlyInternetGatewayId\":{\"locationName\":\"egressOnlyInternetGatewayId\"},\"GatewayId\":{\"locationName\":\"gatewayId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"LocalTarget\":{\"type\":\"boolean\"},\"NatGatewayId\":{\"locationName\":\"natGatewayId\"},\"TransitGatewayId\":{},\"LocalGatewayId\":{},\"CarrierGatewayId\":{},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}}},\"ReplaceRouteTableAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\",\"RouteTableId\"],\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NewAssociationId\":{\"locationName\":\"newAssociationId\"},\"AssociationState\":{\"shape\":\"S35\",\"locationName\":\"associationState\"}}}},\"ReplaceTransitGatewayRoute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DestinationCidrBlock\",\"TransitGatewayRouteTableId\"],\"members\":{\"DestinationCidrBlock\":{},\"TransitGatewayRouteTableId\":{},\"TransitGatewayAttachmentId\":{},\"Blackhole\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Route\":{\"shape\":\"Sht\",\"locationName\":\"route\"}}}},\"ReportInstanceStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Instances\",\"ReasonCodes\",\"Status\"],\"members\":{\"Description\":{\"locationName\":\"description\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"EndTime\":{\"locationName\":\"endTime\",\"type\":\"timestamp\"},\"Instances\":{\"shape\":\"Spz\",\"locationName\":\"instanceId\"},\"ReasonCodes\":{\"locationName\":\"reasonCode\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"Status\":{\"locationName\":\"status\"}}}},\"RequestSpotFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SpotFleetRequestConfig\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"SpotFleetRequestConfig\":{\"shape\":\"S17x\",\"locationName\":\"spotFleetRequestConfig\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SpotFleetRequestId\":{\"locationName\":\"spotFleetRequestId\"}}}},\"RequestSpotInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"AvailabilityZoneGroup\":{\"locationName\":\"availabilityZoneGroup\"},\"BlockDurationMinutes\":{\"locationName\":\"blockDurationMinutes\",\"type\":\"integer\"},\"ClientToken\":{\"locationName\":\"clientToken\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"LaunchGroup\":{\"locationName\":\"launchGroup\"},\"LaunchSpecification\":{\"type\":\"structure\",\"members\":{\"SecurityGroupIds\":{\"locationName\":\"SecurityGroupId\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"SecurityGroups\":{\"locationName\":\"SecurityGroup\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"AddressingType\":{\"locationName\":\"addressingType\"},\"BlockDeviceMappings\":{\"shape\":\"Svk\",\"locationName\":\"blockDeviceMapping\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"IamInstanceProfile\":{\"shape\":\"S2w\",\"locationName\":\"iamInstanceProfile\"},\"ImageId\":{\"locationName\":\"imageId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"KernelId\":{\"locationName\":\"kernelId\"},\"KeyName\":{\"locationName\":\"keyName\"},\"Monitoring\":{\"shape\":\"S18s\",\"locationName\":\"monitoring\"},\"NetworkInterfaces\":{\"shape\":\"S187\",\"locationName\":\"NetworkInterface\"},\"Placement\":{\"shape\":\"S189\",\"locationName\":\"placement\"},\"RamdiskId\":{\"locationName\":\"ramdiskId\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"UserData\":{\"locationName\":\"userData\"}}},\"SpotPrice\":{\"locationName\":\"spotPrice\"},\"Type\":{\"locationName\":\"type\"},\"ValidFrom\":{\"locationName\":\"validFrom\",\"type\":\"timestamp\"},\"ValidUntil\":{\"locationName\":\"validUntil\",\"type\":\"timestamp\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"InstanceInterruptionBehavior\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SpotInstanceRequests\":{\"shape\":\"S18p\",\"locationName\":\"spotInstanceRequestSet\"}}}},\"ResetAddressAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"AllocationId\",\"Attribute\"],\"members\":{\"AllocationId\":{},\"Attribute\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Address\":{\"shape\":\"Sp0\",\"locationName\":\"address\"}}}},\"ResetEbsDefaultKmsKeyId\":{\"input\":{\"type\":\"structure\",\"members\":{\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"}}}},\"ResetFpgaImageAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"FpgaImageId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"FpgaImageId\":{},\"Attribute\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"ResetImageAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"ImageId\"],\"members\":{\"Attribute\":{},\"ImageId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"ResetInstanceAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"InstanceId\"],\"members\":{\"Attribute\":{\"locationName\":\"attribute\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"InstanceId\":{\"locationName\":\"instanceId\"}}}},\"ResetNetworkInterfaceAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"SourceDestCheck\":{\"locationName\":\"sourceDestCheck\"}}}},\"ResetSnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"Attribute\",\"SnapshotId\"],\"members\":{\"Attribute\":{},\"SnapshotId\":{},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}}},\"RestoreAddressToClassic\":{\"input\":{\"type\":\"structure\",\"required\":[\"PublicIp\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"PublicIp\":{\"locationName\":\"publicIp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicIp\":{\"locationName\":\"publicIp\"},\"Status\":{\"locationName\":\"status\"}}}},\"RestoreManagedPrefixListVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"PrefixListId\",\"PreviousVersion\",\"CurrentVersion\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"PrefixListId\":{},\"PreviousVersion\":{\"type\":\"long\"},\"CurrentVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrefixList\":{\"shape\":\"Scx\",\"locationName\":\"prefixList\"}}}},\"RevokeClientVpnIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\",\"TargetNetworkCidr\"],\"members\":{\"ClientVpnEndpointId\":{},\"TargetNetworkCidr\":{},\"AccessGroupId\":{},\"RevokeAllGroups\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"shape\":\"S4a\",\"locationName\":\"status\"}}}},\"RevokeSecurityGroupEgress\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\"],\"members\":{\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"GroupId\":{\"locationName\":\"groupId\"},\"IpPermissions\":{\"shape\":\"S4d\",\"locationName\":\"ipPermissions\"},\"CidrIp\":{\"locationName\":\"cidrIp\"},\"FromPort\":{\"locationName\":\"fromPort\",\"type\":\"integer\"},\"IpProtocol\":{\"locationName\":\"ipProtocol\"},\"ToPort\":{\"locationName\":\"toPort\",\"type\":\"integer\"},\"SourceSecurityGroupName\":{\"locationName\":\"sourceSecurityGroupName\"},\"SourceSecurityGroupOwnerId\":{\"locationName\":\"sourceSecurityGroupOwnerId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"},\"UnknownIpPermissions\":{\"shape\":\"S4d\",\"locationName\":\"unknownIpPermissionSet\"}}}},\"RevokeSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"members\":{\"CidrIp\":{},\"FromPort\":{\"type\":\"integer\"},\"GroupId\":{},\"GroupName\":{},\"IpPermissions\":{\"shape\":\"S4d\"},\"IpProtocol\":{},\"SourceSecurityGroupName\":{},\"SourceSecurityGroupOwnerId\":{},\"ToPort\":{\"type\":\"integer\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"},\"UnknownIpPermissions\":{\"shape\":\"S4d\",\"locationName\":\"unknownIpPermissionSet\"}}}},\"RunInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaxCount\",\"MinCount\"],\"members\":{\"BlockDeviceMappings\":{\"shape\":\"S9j\",\"locationName\":\"BlockDeviceMapping\"},\"ImageId\":{},\"InstanceType\":{},\"Ipv6AddressCount\":{\"type\":\"integer\"},\"Ipv6Addresses\":{\"shape\":\"Sbw\",\"locationName\":\"Ipv6Address\"},\"KernelId\":{},\"KeyName\":{},\"MaxCount\":{\"type\":\"integer\"},\"MinCount\":{\"type\":\"integer\"},\"Monitoring\":{\"shape\":\"S18s\"},\"Placement\":{\"shape\":\"S8r\"},\"RamdiskId\":{},\"SecurityGroupIds\":{\"shape\":\"Saf\",\"locationName\":\"SecurityGroupId\"},\"SecurityGroups\":{\"shape\":\"Saz\",\"locationName\":\"SecurityGroup\"},\"SubnetId\":{},\"UserData\":{},\"AdditionalInfo\":{\"locationName\":\"additionalInfo\"},\"ClientToken\":{\"idempotencyToken\":true,\"locationName\":\"clientToken\"},\"DisableApiTermination\":{\"locationName\":\"disableApiTermination\",\"type\":\"boolean\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"IamInstanceProfile\":{\"shape\":\"S2w\",\"locationName\":\"iamInstanceProfile\"},\"InstanceInitiatedShutdownBehavior\":{\"locationName\":\"instanceInitiatedShutdownBehavior\"},\"NetworkInterfaces\":{\"shape\":\"S187\",\"locationName\":\"networkInterface\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"ElasticGpuSpecification\":{\"type\":\"list\",\"member\":{\"shape\":\"Sav\",\"locationName\":\"item\"}},\"ElasticInferenceAccelerators\":{\"locationName\":\"ElasticInferenceAccelerator\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Count\":{\"type\":\"integer\"}}}},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"LaunchTemplate\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"Version\":{}}},\"InstanceMarketOptions\":{\"type\":\"structure\",\"members\":{\"MarketType\":{},\"SpotOptions\":{\"type\":\"structure\",\"members\":{\"MaxPrice\":{},\"SpotInstanceType\":{},\"BlockDurationMinutes\":{\"type\":\"integer\"},\"ValidUntil\":{\"type\":\"timestamp\"},\"InstanceInterruptionBehavior\":{}}}}},\"CreditSpecification\":{\"shape\":\"Sb5\"},\"CpuOptions\":{\"type\":\"structure\",\"members\":{\"CoreCount\":{\"type\":\"integer\"},\"ThreadsPerCore\":{\"type\":\"integer\"}}},\"CapacityReservationSpecification\":{\"shape\":\"S1jr\"},\"HibernationOptions\":{\"type\":\"structure\",\"members\":{\"Configured\":{\"type\":\"boolean\"}}},\"LicenseSpecifications\":{\"locationName\":\"LicenseSpecification\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{}}}},\"MetadataOptions\":{\"type\":\"structure\",\"members\":{\"HttpTokens\":{},\"HttpPutResponseHopLimit\":{\"type\":\"integer\"},\"HttpEndpoint\":{}}},\"EnclaveOptions\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}}},\"output\":{\"shape\":\"S10a\"}},\"RunScheduledInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"LaunchSpecification\",\"ScheduledInstanceId\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"DryRun\":{\"type\":\"boolean\"},\"InstanceCount\":{\"type\":\"integer\"},\"LaunchSpecification\":{\"type\":\"structure\",\"required\":[\"ImageId\"],\"members\":{\"BlockDeviceMappings\":{\"locationName\":\"BlockDeviceMapping\",\"type\":\"list\",\"member\":{\"locationName\":\"BlockDeviceMapping\",\"type\":\"structure\",\"members\":{\"DeviceName\":{},\"Ebs\":{\"type\":\"structure\",\"members\":{\"DeleteOnTermination\":{\"type\":\"boolean\"},\"Encrypted\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"SnapshotId\":{},\"VolumeSize\":{\"type\":\"integer\"},\"VolumeType\":{}}},\"NoDevice\":{},\"VirtualName\":{}}}},\"EbsOptimized\":{\"type\":\"boolean\"},\"IamInstanceProfile\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}},\"ImageId\":{},\"InstanceType\":{},\"KernelId\":{},\"KeyName\":{},\"Monitoring\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"NetworkInterfaces\":{\"locationName\":\"NetworkInterface\",\"type\":\"list\",\"member\":{\"locationName\":\"NetworkInterface\",\"type\":\"structure\",\"members\":{\"AssociatePublicIpAddress\":{\"type\":\"boolean\"},\"DeleteOnTermination\":{\"type\":\"boolean\"},\"Description\":{},\"DeviceIndex\":{\"type\":\"integer\"},\"Groups\":{\"shape\":\"S1p6\",\"locationName\":\"Group\"},\"Ipv6AddressCount\":{\"type\":\"integer\"},\"Ipv6Addresses\":{\"locationName\":\"Ipv6Address\",\"type\":\"list\",\"member\":{\"locationName\":\"Ipv6Address\",\"type\":\"structure\",\"members\":{\"Ipv6Address\":{}}}},\"NetworkInterfaceId\":{},\"PrivateIpAddress\":{},\"PrivateIpAddressConfigs\":{\"locationName\":\"PrivateIpAddressConfig\",\"type\":\"list\",\"member\":{\"locationName\":\"PrivateIpAddressConfigSet\",\"type\":\"structure\",\"members\":{\"Primary\":{\"type\":\"boolean\"},\"PrivateIpAddress\":{}}}},\"SecondaryPrivateIpAddressCount\":{\"type\":\"integer\"},\"SubnetId\":{}}}},\"Placement\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{},\"GroupName\":{}}},\"RamdiskId\":{},\"SecurityGroupIds\":{\"shape\":\"S1p6\",\"locationName\":\"SecurityGroupId\"},\"SubnetId\":{},\"UserData\":{}}},\"ScheduledInstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceIdSet\":{\"locationName\":\"instanceIdSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}}}}},\"SearchLocalGatewayRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"LocalGatewayRouteTableId\",\"Filters\"],\"members\":{\"LocalGatewayRouteTableId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Routes\":{\"locationName\":\"routeSet\",\"type\":\"list\",\"member\":{\"shape\":\"Scm\",\"locationName\":\"item\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"SearchTransitGatewayMulticastGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MulticastGroups\":{\"locationName\":\"multicastGroups\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"GroupIpAddress\":{\"locationName\":\"groupIpAddress\"},\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"ResourceOwnerId\":{\"locationName\":\"resourceOwnerId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"GroupMember\":{\"locationName\":\"groupMember\",\"type\":\"boolean\"},\"GroupSource\":{\"locationName\":\"groupSource\",\"type\":\"boolean\"},\"MemberType\":{\"locationName\":\"memberType\"},\"SourceType\":{\"locationName\":\"sourceType\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"SearchTransitGatewayRoutes\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransitGatewayRouteTableId\",\"Filters\"],\"members\":{\"TransitGatewayRouteTableId\":{},\"Filters\":{\"shape\":\"Som\",\"locationName\":\"Filter\"},\"MaxResults\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Routes\":{\"locationName\":\"routeSet\",\"type\":\"list\",\"member\":{\"shape\":\"Sht\",\"locationName\":\"item\"}},\"AdditionalRoutesAvailable\":{\"locationName\":\"additionalRoutesAvailable\",\"type\":\"boolean\"}}}},\"SendDiagnosticInterrupt\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"DryRun\":{\"type\":\"boolean\"}}}},\"StartInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"AdditionalInfo\":{\"locationName\":\"additionalInfo\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StartingInstances\":{\"shape\":\"S1pu\",\"locationName\":\"instancesSet\"}}}},\"StartNetworkInsightsAnalysis\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInsightsPathId\",\"ClientToken\"],\"members\":{\"NetworkInsightsPathId\":{},\"FilterInArns\":{\"shape\":\"S13d\",\"locationName\":\"FilterInArn\"},\"DryRun\":{\"type\":\"boolean\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsAnalysis\":{\"shape\":\"S13c\",\"locationName\":\"networkInsightsAnalysis\"}}}},\"StartVpcEndpointServicePrivateDnsVerification\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"ServiceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"StopInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"Hibernate\":{\"type\":\"boolean\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"},\"Force\":{\"locationName\":\"force\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StoppingInstances\":{\"shape\":\"S1pu\",\"locationName\":\"instancesSet\"}}}},\"TerminateClientVpnConnections\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientVpnEndpointId\"],\"members\":{\"ClientVpnEndpointId\":{},\"ConnectionId\":{},\"Username\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientVpnEndpointId\":{\"locationName\":\"clientVpnEndpointId\"},\"Username\":{\"locationName\":\"username\"},\"ConnectionStatuses\":{\"locationName\":\"connectionStatuses\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ConnectionId\":{\"locationName\":\"connectionId\"},\"PreviousStatus\":{\"shape\":\"Sqe\",\"locationName\":\"previousStatus\"},\"CurrentStatus\":{\"shape\":\"Sqe\",\"locationName\":\"currentStatus\"}}}}}}},\"TerminateInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TerminatingInstances\":{\"shape\":\"S1pu\",\"locationName\":\"instancesSet\"}}}},\"UnassignIpv6Addresses\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\",\"Ipv6Addresses\"],\"members\":{\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"Ipv6Addresses\":{\"shape\":\"S29\",\"locationName\":\"ipv6Addresses\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"UnassignedIpv6Addresses\":{\"shape\":\"S29\",\"locationName\":\"unassignedIpv6Addresses\"}}}},\"UnassignPrivateIpAddresses\":{\"input\":{\"type\":\"structure\",\"required\":[\"NetworkInterfaceId\",\"PrivateIpAddresses\"],\"members\":{\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateIpAddresses\":{\"shape\":\"S2d\",\"locationName\":\"privateIpAddress\"}}}},\"UnmonitorInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Spz\",\"locationName\":\"InstanceId\"},\"DryRun\":{\"locationName\":\"dryRun\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceMonitorings\":{\"shape\":\"S1m3\",\"locationName\":\"instancesSet\"}}}},\"UpdateSecurityGroupRuleDescriptionsEgress\":{\"input\":{\"type\":\"structure\",\"required\":[\"IpPermissions\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"GroupId\":{},\"GroupName\":{},\"IpPermissions\":{\"shape\":\"S4d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"UpdateSecurityGroupRuleDescriptionsIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"IpPermissions\"],\"members\":{\"DryRun\":{\"type\":\"boolean\"},\"GroupId\":{},\"GroupName\":{},\"IpPermissions\":{\"shape\":\"S4d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Return\":{\"locationName\":\"return\",\"type\":\"boolean\"}}}},\"WithdrawByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"S1n\",\"locationName\":\"byoipCidr\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedInstanceId\"}},\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"TargetConfigurationRequest\",\"type\":\"structure\",\"required\":[\"OfferingId\"],\"members\":{\"InstanceCount\":{\"type\":\"integer\"},\"OfferingId\":{}}}},\"Se\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sg\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{\"locationName\":\"transitGatewayMulticastDomainId\"},\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"ResourceOwnerId\":{\"locationName\":\"resourceOwnerId\"},\"Subnets\":{\"locationName\":\"subnets\",\"type\":\"list\",\"member\":{\"shape\":\"Sj\",\"locationName\":\"item\"}}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"SubnetId\":{\"locationName\":\"subnetId\"},\"State\":{\"locationName\":\"state\"}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"RequesterTgwInfo\":{\"shape\":\"So\",\"locationName\":\"requesterTgwInfo\"},\"AccepterTgwInfo\":{\"shape\":\"So\",\"locationName\":\"accepterTgwInfo\"},\"Status\":{\"locationName\":\"status\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"State\":{\"locationName\":\"state\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"So\":{\"type\":\"structure\",\"members\":{\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Region\":{\"locationName\":\"region\"}}},\"Ss\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"key\"},\"Value\":{\"locationName\":\"value\"}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"VpcOwnerId\":{\"locationName\":\"vpcOwnerId\"},\"State\":{\"locationName\":\"state\"},\"SubnetIds\":{\"shape\":\"Se\",\"locationName\":\"subnetIds\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Options\":{\"locationName\":\"options\",\"type\":\"structure\",\"members\":{\"DnsSupport\":{\"locationName\":\"dnsSupport\"},\"Ipv6Support\":{\"locationName\":\"ipv6Support\"},\"ApplianceModeSupport\":{\"locationName\":\"applianceModeSupport\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S16\":{\"type\":\"list\",\"member\":{\"shape\":\"S17\",\"locationName\":\"item\"}},\"S17\":{\"type\":\"structure\",\"members\":{\"Error\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"ResourceId\":{\"locationName\":\"resourceId\"}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"AccepterVpcInfo\":{\"shape\":\"S1d\",\"locationName\":\"accepterVpcInfo\"},\"ExpirationTime\":{\"locationName\":\"expirationTime\",\"type\":\"timestamp\"},\"RequesterVpcInfo\":{\"shape\":\"S1d\",\"locationName\":\"requesterVpcInfo\"},\"Status\":{\"locationName\":\"status\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"Ipv6CidrBlockSet\":{\"locationName\":\"ipv6CidrBlockSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"}}}},\"CidrBlockSet\":{\"locationName\":\"cidrBlockSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CidrBlock\":{\"locationName\":\"cidrBlock\"}}}},\"OwnerId\":{\"locationName\":\"ownerId\"},\"PeeringOptions\":{\"locationName\":\"peeringOptions\",\"type\":\"structure\",\"members\":{\"AllowDnsResolutionFromRemoteVpc\":{\"locationName\":\"allowDnsResolutionFromRemoteVpc\",\"type\":\"boolean\"},\"AllowEgressFromLocalClassicLinkToRemoteVpc\":{\"locationName\":\"allowEgressFromLocalClassicLinkToRemoteVpc\",\"type\":\"boolean\"},\"AllowEgressFromLocalVpcToRemoteClassicLink\":{\"locationName\":\"allowEgressFromLocalVpcToRemoteClassicLink\",\"type\":\"boolean\"}}},\"VpcId\":{\"locationName\":\"vpcId\"},\"Region\":{\"locationName\":\"region\"}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"cidr\"},\"Description\":{\"locationName\":\"description\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"State\":{\"locationName\":\"state\"}}},\"S1t\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ResourceType\":{\"locationName\":\"resourceType\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"Tag\"}}}},\"S21\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S25\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S29\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S2d\":{\"type\":\"list\",\"member\":{\"locationName\":\"PrivateIpAddress\"}},\"S2o\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Name\":{\"locationName\":\"name\"}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"IamInstanceProfile\":{\"shape\":\"S2z\",\"locationName\":\"iamInstanceProfile\"},\"State\":{\"locationName\":\"state\"},\"Timestamp\":{\"locationName\":\"timestamp\",\"type\":\"timestamp\"}}},\"S2z\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Id\":{\"locationName\":\"id\"}}},\"S35\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"}}},\"S39\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"},\"Ipv6CidrBlockState\":{\"locationName\":\"ipv6CidrBlockState\",\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"}}}}},\"S3e\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S3j\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTableId\":{\"locationName\":\"transitGatewayRouteTableId\"},\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"State\":{\"locationName\":\"state\"}}},\"S3o\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"},\"Ipv6CidrBlockState\":{\"shape\":\"S3p\",\"locationName\":\"ipv6CidrBlockState\"},\"NetworkBorderGroup\":{\"locationName\":\"networkBorderGroup\"},\"Ipv6Pool\":{\"locationName\":\"ipv6Pool\"}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"}}},\"S3r\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{\"locationName\":\"associationId\"},\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"CidrBlockState\":{\"shape\":\"S3p\",\"locationName\":\"cidrBlockState\"}}},\"S3t\":{\"type\":\"list\",\"member\":{\"locationName\":\"groupId\"}},\"S41\":{\"type\":\"structure\",\"members\":{\"AttachTime\":{\"locationName\":\"attachTime\",\"type\":\"timestamp\"},\"Device\":{\"locationName\":\"device\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"State\":{\"locationName\":\"status\"},\"VolumeId\":{\"locationName\":\"volumeId\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"}}},\"S46\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"VpcId\":{\"locationName\":\"vpcId\"}}},\"S4a\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"S4d\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"FromPort\":{\"locationName\":\"fromPort\",\"type\":\"integer\"},\"IpProtocol\":{\"locationName\":\"ipProtocol\"},\"IpRanges\":{\"locationName\":\"ipRanges\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CidrIp\":{\"locationName\":\"cidrIp\"},\"Description\":{\"locationName\":\"description\"}}}},\"Ipv6Ranges\":{\"locationName\":\"ipv6Ranges\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CidrIpv6\":{\"locationName\":\"cidrIpv6\"},\"Description\":{\"locationName\":\"description\"}}}},\"PrefixListIds\":{\"locationName\":\"prefixListIds\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"PrefixListId\":{\"locationName\":\"prefixListId\"}}}},\"ToPort\":{\"locationName\":\"toPort\",\"type\":\"integer\"},\"UserIdGroupPairs\":{\"locationName\":\"groups\",\"type\":\"list\",\"member\":{\"shape\":\"S4m\",\"locationName\":\"item\"}}}}},\"S4m\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"GroupId\":{\"locationName\":\"groupId\"},\"GroupName\":{\"locationName\":\"groupName\"},\"PeeringStatus\":{\"locationName\":\"peeringStatus\"},\"UserId\":{\"locationName\":\"userId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"S4q\":{\"type\":\"structure\",\"members\":{\"S3\":{\"type\":\"structure\",\"members\":{\"AWSAccessKeyId\":{},\"Bucket\":{\"locationName\":\"bucket\"},\"Prefix\":{\"locationName\":\"prefix\"},\"UploadPolicy\":{\"locationName\":\"uploadPolicy\",\"type\":\"blob\"},\"UploadPolicySignature\":{\"locationName\":\"uploadPolicySignature\"}}}}},\"S4u\":{\"type\":\"structure\",\"members\":{\"BundleId\":{\"locationName\":\"bundleId\"},\"BundleTaskError\":{\"locationName\":\"error\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"InstanceId\":{\"locationName\":\"instanceId\"},\"Progress\":{\"locationName\":\"progress\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"State\":{\"locationName\":\"state\"},\"Storage\":{\"shape\":\"S4q\",\"locationName\":\"storage\"},\"UpdateTime\":{\"locationName\":\"updateTime\",\"type\":\"timestamp\"}}},\"S5d\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ClientToken\":{\"locationName\":\"clientToken\"},\"CreateDate\":{\"locationName\":\"createDate\",\"type\":\"timestamp\"},\"InstanceCounts\":{\"locationName\":\"instanceCounts\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"}}}},\"PriceSchedules\":{\"locationName\":\"priceSchedules\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Active\":{\"locationName\":\"active\",\"type\":\"boolean\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Price\":{\"locationName\":\"price\",\"type\":\"double\"},\"Term\":{\"locationName\":\"term\",\"type\":\"long\"}}}},\"ReservedInstancesId\":{\"locationName\":\"reservedInstancesId\"},\"ReservedInstancesListingId\":{\"locationName\":\"reservedInstancesListingId\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"UpdateDate\":{\"locationName\":\"updateDate\",\"type\":\"timestamp\"}}}},\"S5p\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S60\":{\"type\":\"list\",\"member\":{\"locationName\":\"SpotInstanceRequestId\"}},\"S6l\":{\"type\":\"structure\",\"members\":{\"CapacityReservationId\":{\"locationName\":\"capacityReservationId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"CapacityReservationArn\":{\"locationName\":\"capacityReservationArn\"},\"AvailabilityZoneId\":{\"locationName\":\"availabilityZoneId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"InstancePlatform\":{\"locationName\":\"instancePlatform\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Tenancy\":{\"locationName\":\"tenancy\"},\"TotalInstanceCount\":{\"locationName\":\"totalInstanceCount\",\"type\":\"integer\"},\"AvailableInstanceCount\":{\"locationName\":\"availableInstanceCount\",\"type\":\"integer\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"EphemeralStorage\":{\"locationName\":\"ephemeralStorage\",\"type\":\"boolean\"},\"State\":{\"locationName\":\"state\"},\"StartDate\":{\"locationName\":\"startDate\",\"type\":\"timestamp\"},\"EndDate\":{\"locationName\":\"endDate\",\"type\":\"timestamp\"},\"EndDateType\":{\"locationName\":\"endDateType\"},\"InstanceMatchCriteria\":{\"locationName\":\"instanceMatchCriteria\"},\"CreateDate\":{\"locationName\":\"createDate\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S6q\":{\"type\":\"structure\",\"members\":{\"CarrierGatewayId\":{\"locationName\":\"carrierGatewayId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"State\":{\"locationName\":\"state\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S70\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"CloudwatchLogGroup\":{},\"CloudwatchLogStream\":{}}},\"S73\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"LambdaFunctionArn\":{}}},\"S75\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"S79\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"S7e\":{\"type\":\"structure\",\"members\":{\"BgpAsn\":{\"locationName\":\"bgpAsn\"},\"CustomerGatewayId\":{\"locationName\":\"customerGatewayId\"},\"IpAddress\":{\"locationName\":\"ipAddress\"},\"CertificateArn\":{\"locationName\":\"certificateArn\"},\"State\":{\"locationName\":\"state\"},\"Type\":{\"locationName\":\"type\"},\"DeviceName\":{\"locationName\":\"deviceName\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S7h\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"AvailabilityZoneId\":{\"locationName\":\"availabilityZoneId\"},\"AvailableIpAddressCount\":{\"locationName\":\"availableIpAddressCount\",\"type\":\"integer\"},\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"DefaultForAz\":{\"locationName\":\"defaultForAz\",\"type\":\"boolean\"},\"MapPublicIpOnLaunch\":{\"locationName\":\"mapPublicIpOnLaunch\",\"type\":\"boolean\"},\"MapCustomerOwnedIpOnLaunch\":{\"locationName\":\"mapCustomerOwnedIpOnLaunch\",\"type\":\"boolean\"},\"CustomerOwnedIpv4Pool\":{\"locationName\":\"customerOwnedIpv4Pool\"},\"State\":{\"locationName\":\"state\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"AssignIpv6AddressOnCreation\":{\"locationName\":\"assignIpv6AddressOnCreation\",\"type\":\"boolean\"},\"Ipv6CidrBlockAssociationSet\":{\"locationName\":\"ipv6CidrBlockAssociationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S39\",\"locationName\":\"item\"}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"SubnetArn\":{\"locationName\":\"subnetArn\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"}}},\"S7n\":{\"type\":\"structure\",\"members\":{\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"DhcpOptionsId\":{\"locationName\":\"dhcpOptionsId\"},\"State\":{\"locationName\":\"state\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"InstanceTenancy\":{\"locationName\":\"instanceTenancy\"},\"Ipv6CidrBlockAssociationSet\":{\"locationName\":\"ipv6CidrBlockAssociationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S3o\",\"locationName\":\"item\"}},\"CidrBlockAssociationSet\":{\"locationName\":\"cidrBlockAssociationSet\",\"type\":\"list\",\"member\":{\"shape\":\"S3r\",\"locationName\":\"item\"}},\"IsDefault\":{\"locationName\":\"isDefault\",\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S7w\":{\"type\":\"structure\",\"members\":{\"DhcpConfigurations\":{\"locationName\":\"dhcpConfigurationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"key\"},\"Values\":{\"locationName\":\"valueSet\",\"type\":\"list\",\"member\":{\"shape\":\"S80\",\"locationName\":\"item\"}}}}},\"DhcpOptionsId\":{\"locationName\":\"dhcpOptionsId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S80\":{\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}},\"S83\":{\"type\":\"structure\",\"members\":{\"Attachments\":{\"shape\":\"S84\",\"locationName\":\"attachmentSet\"},\"EgressOnlyInternetGatewayId\":{\"locationName\":\"egressOnlyInternetGatewayId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S84\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"S8j\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateSpecification\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"Version\":{}}},\"Overrides\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceType\":{},\"MaxPrice\":{},\"SubnetId\":{},\"AvailabilityZone\":{},\"WeightedCapacity\":{\"type\":\"double\"},\"Priority\":{\"type\":\"double\"},\"Placement\":{\"shape\":\"S8r\"}}}}}}},\"S8r\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Affinity\":{\"locationName\":\"affinity\"},\"GroupName\":{\"locationName\":\"groupName\"},\"PartitionNumber\":{\"locationName\":\"partitionNumber\",\"type\":\"integer\"},\"HostId\":{\"locationName\":\"hostId\"},\"Tenancy\":{\"locationName\":\"tenancy\"},\"SpreadDomain\":{\"locationName\":\"spreadDomain\"},\"HostResourceGroupArn\":{\"locationName\":\"hostResourceGroupArn\"}}},\"S8s\":{\"type\":\"structure\",\"required\":[\"TotalTargetCapacity\"],\"members\":{\"TotalTargetCapacity\":{\"type\":\"integer\"},\"OnDemandTargetCapacity\":{\"type\":\"integer\"},\"SpotTargetCapacity\":{\"type\":\"integer\"},\"DefaultTargetCapacityType\":{}}},\"S8z\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateSpecification\":{\"shape\":\"S90\",\"locationName\":\"launchTemplateSpecification\"},\"Overrides\":{\"shape\":\"S91\",\"locationName\":\"overrides\"}}},\"S90\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{\"locationName\":\"launchTemplateId\"},\"LaunchTemplateName\":{\"locationName\":\"launchTemplateName\"},\"Version\":{\"locationName\":\"version\"}}},\"S91\":{\"type\":\"structure\",\"members\":{\"InstanceType\":{\"locationName\":\"instanceType\"},\"MaxPrice\":{\"locationName\":\"maxPrice\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"WeightedCapacity\":{\"locationName\":\"weightedCapacity\",\"type\":\"double\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"double\"},\"Placement\":{\"locationName\":\"placement\",\"type\":\"structure\",\"members\":{\"GroupName\":{\"locationName\":\"groupName\"}}}}},\"S96\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S9g\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"Key\":{}}},\"S9j\":{\"type\":\"list\",\"member\":{\"shape\":\"S9k\",\"locationName\":\"BlockDeviceMapping\"}},\"S9k\":{\"type\":\"structure\",\"members\":{\"DeviceName\":{\"locationName\":\"deviceName\"},\"VirtualName\":{\"locationName\":\"virtualName\"},\"Ebs\":{\"locationName\":\"ebs\",\"type\":\"structure\",\"members\":{\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"Iops\":{\"locationName\":\"iops\",\"type\":\"integer\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"VolumeSize\":{\"locationName\":\"volumeSize\",\"type\":\"integer\"},\"VolumeType\":{\"locationName\":\"volumeType\"},\"KmsKeyId\":{},\"Throughput\":{\"locationName\":\"throughput\",\"type\":\"integer\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"}}},\"NoDevice\":{\"locationName\":\"noDevice\"}}},\"S9u\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"ExportTaskId\":{\"locationName\":\"exportTaskId\"},\"ExportToS3Task\":{\"locationName\":\"exportToS3\",\"type\":\"structure\",\"members\":{\"ContainerFormat\":{\"locationName\":\"containerFormat\"},\"DiskImageFormat\":{\"locationName\":\"diskImageFormat\"},\"S3Bucket\":{\"locationName\":\"s3Bucket\"},\"S3Key\":{\"locationName\":\"s3Key\"}}},\"InstanceExportDetails\":{\"locationName\":\"instanceExport\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"TargetEnvironment\":{\"locationName\":\"targetEnvironment\"}}},\"State\":{\"locationName\":\"state\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sa0\":{\"type\":\"structure\",\"members\":{\"Attachments\":{\"shape\":\"S84\",\"locationName\":\"attachmentSet\"},\"InternetGatewayId\":{\"locationName\":\"internetGatewayId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sa6\":{\"type\":\"structure\",\"members\":{\"KernelId\":{},\"EbsOptimized\":{\"type\":\"boolean\"},\"IamInstanceProfile\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}},\"BlockDeviceMappings\":{\"locationName\":\"BlockDeviceMapping\",\"type\":\"list\",\"member\":{\"locationName\":\"BlockDeviceMapping\",\"type\":\"structure\",\"members\":{\"DeviceName\":{},\"VirtualName\":{},\"Ebs\":{\"type\":\"structure\",\"members\":{\"Encrypted\":{\"type\":\"boolean\"},\"DeleteOnTermination\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"KmsKeyId\":{},\"SnapshotId\":{},\"VolumeSize\":{\"type\":\"integer\"},\"VolumeType\":{},\"Throughput\":{\"type\":\"integer\"}}},\"NoDevice\":{}}}},\"NetworkInterfaces\":{\"locationName\":\"NetworkInterface\",\"type\":\"list\",\"member\":{\"locationName\":\"InstanceNetworkInterfaceSpecification\",\"type\":\"structure\",\"members\":{\"AssociateCarrierIpAddress\":{\"type\":\"boolean\"},\"AssociatePublicIpAddress\":{\"type\":\"boolean\"},\"DeleteOnTermination\":{\"type\":\"boolean\"},\"Description\":{},\"DeviceIndex\":{\"type\":\"integer\"},\"Groups\":{\"shape\":\"Saf\",\"locationName\":\"SecurityGroupId\"},\"InterfaceType\":{},\"Ipv6AddressCount\":{\"type\":\"integer\"},\"Ipv6Addresses\":{\"type\":\"list\",\"member\":{\"locationName\":\"InstanceIpv6Address\",\"type\":\"structure\",\"members\":{\"Ipv6Address\":{}}}},\"NetworkInterfaceId\":{},\"PrivateIpAddress\":{},\"PrivateIpAddresses\":{\"shape\":\"Sai\"},\"SecondaryPrivateIpAddressCount\":{\"type\":\"integer\"},\"SubnetId\":{},\"NetworkCardIndex\":{\"type\":\"integer\"}}}},\"ImageId\":{},\"InstanceType\":{},\"KeyName\":{},\"Monitoring\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"Placement\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{},\"Affinity\":{},\"GroupName\":{},\"HostId\":{},\"Tenancy\":{},\"SpreadDomain\":{},\"HostResourceGroupArn\":{},\"PartitionNumber\":{\"type\":\"integer\"}}},\"RamDiskId\":{},\"DisableApiTermination\":{\"type\":\"boolean\"},\"InstanceInitiatedShutdownBehavior\":{},\"UserData\":{},\"TagSpecifications\":{\"locationName\":\"TagSpecification\",\"type\":\"list\",\"member\":{\"locationName\":\"LaunchTemplateTagSpecificationRequest\",\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"Tag\"}}}},\"ElasticGpuSpecifications\":{\"locationName\":\"ElasticGpuSpecification\",\"type\":\"list\",\"member\":{\"shape\":\"Sav\",\"locationName\":\"ElasticGpuSpecification\"}},\"ElasticInferenceAccelerators\":{\"locationName\":\"ElasticInferenceAccelerator\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Count\":{\"type\":\"integer\"}}}},\"SecurityGroupIds\":{\"shape\":\"Saf\",\"locationName\":\"SecurityGroupId\"},\"SecurityGroups\":{\"shape\":\"Saz\",\"locationName\":\"SecurityGroup\"},\"InstanceMarketOptions\":{\"type\":\"structure\",\"members\":{\"MarketType\":{},\"SpotOptions\":{\"type\":\"structure\",\"members\":{\"MaxPrice\":{},\"SpotInstanceType\":{},\"BlockDurationMinutes\":{\"type\":\"integer\"},\"ValidUntil\":{\"type\":\"timestamp\"},\"InstanceInterruptionBehavior\":{}}}}},\"CreditSpecification\":{\"shape\":\"Sb5\"},\"CpuOptions\":{\"type\":\"structure\",\"members\":{\"CoreCount\":{\"type\":\"integer\"},\"ThreadsPerCore\":{\"type\":\"integer\"}}},\"CapacityReservationSpecification\":{\"type\":\"structure\",\"members\":{\"CapacityReservationPreference\":{},\"CapacityReservationTarget\":{\"shape\":\"Sb9\"}}},\"LicenseSpecifications\":{\"locationName\":\"LicenseSpecification\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{}}}},\"HibernationOptions\":{\"type\":\"structure\",\"members\":{\"Configured\":{\"type\":\"boolean\"}}},\"MetadataOptions\":{\"type\":\"structure\",\"members\":{\"HttpTokens\":{},\"HttpPutResponseHopLimit\":{\"type\":\"integer\"},\"HttpEndpoint\":{}}},\"EnclaveOptions\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}}},\"Saf\":{\"type\":\"list\",\"member\":{\"locationName\":\"SecurityGroupId\"}},\"Sai\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Primary\":{\"locationName\":\"primary\",\"type\":\"boolean\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"}}}},\"Sav\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}},\"Saz\":{\"type\":\"list\",\"member\":{\"locationName\":\"SecurityGroup\"}},\"Sb5\":{\"type\":\"structure\",\"required\":[\"CpuCredits\"],\"members\":{\"CpuCredits\":{}}},\"Sb9\":{\"type\":\"structure\",\"members\":{\"CapacityReservationId\":{},\"CapacityReservationResourceGroupArn\":{}}},\"Sbi\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{\"locationName\":\"launchTemplateId\"},\"LaunchTemplateName\":{\"locationName\":\"launchTemplateName\"},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"CreatedBy\":{\"locationName\":\"createdBy\"},\"DefaultVersionNumber\":{\"locationName\":\"defaultVersionNumber\",\"type\":\"long\"},\"LatestVersionNumber\":{\"locationName\":\"latestVersionNumber\",\"type\":\"long\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sbj\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"locationName\":\"errorSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}}}}},\"Sbo\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{\"locationName\":\"launchTemplateId\"},\"LaunchTemplateName\":{\"locationName\":\"launchTemplateName\"},\"VersionNumber\":{\"locationName\":\"versionNumber\",\"type\":\"long\"},\"VersionDescription\":{\"locationName\":\"versionDescription\"},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"CreatedBy\":{\"locationName\":\"createdBy\"},\"DefaultVersion\":{\"locationName\":\"defaultVersion\",\"type\":\"boolean\"},\"LaunchTemplateData\":{\"shape\":\"Sbp\",\"locationName\":\"launchTemplateData\"}}},\"Sbp\":{\"type\":\"structure\",\"members\":{\"KernelId\":{\"locationName\":\"kernelId\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"IamInstanceProfile\":{\"locationName\":\"iamInstanceProfile\",\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Name\":{\"locationName\":\"name\"}}},\"BlockDeviceMappings\":{\"locationName\":\"blockDeviceMappingSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"DeviceName\":{\"locationName\":\"deviceName\"},\"VirtualName\":{\"locationName\":\"virtualName\"},\"Ebs\":{\"locationName\":\"ebs\",\"type\":\"structure\",\"members\":{\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"Iops\":{\"locationName\":\"iops\",\"type\":\"integer\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"VolumeSize\":{\"locationName\":\"volumeSize\",\"type\":\"integer\"},\"VolumeType\":{\"locationName\":\"volumeType\"},\"Throughput\":{\"locationName\":\"throughput\",\"type\":\"integer\"}}},\"NoDevice\":{\"locationName\":\"noDevice\"}}}},\"NetworkInterfaces\":{\"locationName\":\"networkInterfaceSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AssociateCarrierIpAddress\":{\"locationName\":\"associateCarrierIpAddress\",\"type\":\"boolean\"},\"AssociatePublicIpAddress\":{\"locationName\":\"associatePublicIpAddress\",\"type\":\"boolean\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"Description\":{\"locationName\":\"description\"},\"DeviceIndex\":{\"locationName\":\"deviceIndex\",\"type\":\"integer\"},\"Groups\":{\"shape\":\"S3t\",\"locationName\":\"groupSet\"},\"InterfaceType\":{\"locationName\":\"interfaceType\"},\"Ipv6AddressCount\":{\"locationName\":\"ipv6AddressCount\",\"type\":\"integer\"},\"Ipv6Addresses\":{\"shape\":\"Sbw\",\"locationName\":\"ipv6AddressesSet\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"PrivateIpAddresses\":{\"shape\":\"Sai\",\"locationName\":\"privateIpAddressesSet\"},\"SecondaryPrivateIpAddressCount\":{\"locationName\":\"secondaryPrivateIpAddressCount\",\"type\":\"integer\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"NetworkCardIndex\":{\"locationName\":\"networkCardIndex\",\"type\":\"integer\"}}}},\"ImageId\":{\"locationName\":\"imageId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"KeyName\":{\"locationName\":\"keyName\"},\"Monitoring\":{\"locationName\":\"monitoring\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}}},\"Placement\":{\"locationName\":\"placement\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Affinity\":{\"locationName\":\"affinity\"},\"GroupName\":{\"locationName\":\"groupName\"},\"HostId\":{\"locationName\":\"hostId\"},\"Tenancy\":{\"locationName\":\"tenancy\"},\"SpreadDomain\":{\"locationName\":\"spreadDomain\"},\"HostResourceGroupArn\":{\"locationName\":\"hostResourceGroupArn\"},\"PartitionNumber\":{\"locationName\":\"partitionNumber\",\"type\":\"integer\"}}},\"RamDiskId\":{\"locationName\":\"ramDiskId\"},\"DisableApiTermination\":{\"locationName\":\"disableApiTermination\",\"type\":\"boolean\"},\"InstanceInitiatedShutdownBehavior\":{\"locationName\":\"instanceInitiatedShutdownBehavior\"},\"UserData\":{\"locationName\":\"userData\"},\"TagSpecifications\":{\"locationName\":\"tagSpecificationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ResourceType\":{\"locationName\":\"resourceType\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}}},\"ElasticGpuSpecifications\":{\"locationName\":\"elasticGpuSpecificationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Type\":{\"locationName\":\"type\"}}}},\"ElasticInferenceAccelerators\":{\"locationName\":\"elasticInferenceAcceleratorSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Type\":{\"locationName\":\"type\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"}}}},\"SecurityGroupIds\":{\"shape\":\"Se\",\"locationName\":\"securityGroupIdSet\"},\"SecurityGroups\":{\"shape\":\"Se\",\"locationName\":\"securityGroupSet\"},\"InstanceMarketOptions\":{\"locationName\":\"instanceMarketOptions\",\"type\":\"structure\",\"members\":{\"MarketType\":{\"locationName\":\"marketType\"},\"SpotOptions\":{\"locationName\":\"spotOptions\",\"type\":\"structure\",\"members\":{\"MaxPrice\":{\"locationName\":\"maxPrice\"},\"SpotInstanceType\":{\"locationName\":\"spotInstanceType\"},\"BlockDurationMinutes\":{\"locationName\":\"blockDurationMinutes\",\"type\":\"integer\"},\"ValidUntil\":{\"locationName\":\"validUntil\",\"type\":\"timestamp\"},\"InstanceInterruptionBehavior\":{\"locationName\":\"instanceInterruptionBehavior\"}}}}},\"CreditSpecification\":{\"locationName\":\"creditSpecification\",\"type\":\"structure\",\"members\":{\"CpuCredits\":{\"locationName\":\"cpuCredits\"}}},\"CpuOptions\":{\"locationName\":\"cpuOptions\",\"type\":\"structure\",\"members\":{\"CoreCount\":{\"locationName\":\"coreCount\",\"type\":\"integer\"},\"ThreadsPerCore\":{\"locationName\":\"threadsPerCore\",\"type\":\"integer\"}}},\"CapacityReservationSpecification\":{\"locationName\":\"capacityReservationSpecification\",\"type\":\"structure\",\"members\":{\"CapacityReservationPreference\":{\"locationName\":\"capacityReservationPreference\"},\"CapacityReservationTarget\":{\"shape\":\"Scb\",\"locationName\":\"capacityReservationTarget\"}}},\"LicenseSpecifications\":{\"locationName\":\"licenseSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{\"locationName\":\"licenseConfigurationArn\"}}}},\"HibernationOptions\":{\"locationName\":\"hibernationOptions\",\"type\":\"structure\",\"members\":{\"Configured\":{\"locationName\":\"configured\",\"type\":\"boolean\"}}},\"MetadataOptions\":{\"locationName\":\"metadataOptions\",\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"HttpTokens\":{\"locationName\":\"httpTokens\"},\"HttpPutResponseHopLimit\":{\"locationName\":\"httpPutResponseHopLimit\",\"type\":\"integer\"},\"HttpEndpoint\":{\"locationName\":\"httpEndpoint\"}}},\"EnclaveOptions\":{\"locationName\":\"enclaveOptions\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}}}}},\"Sbw\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Ipv6Address\":{\"locationName\":\"ipv6Address\"}}}},\"Scb\":{\"type\":\"structure\",\"members\":{\"CapacityReservationId\":{\"locationName\":\"capacityReservationId\"},\"CapacityReservationResourceGroupArn\":{\"locationName\":\"capacityReservationResourceGroupArn\"}}},\"Scm\":{\"type\":\"structure\",\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"LocalGatewayVirtualInterfaceGroupId\":{\"locationName\":\"localGatewayVirtualInterfaceGroupId\"},\"Type\":{\"locationName\":\"type\"},\"State\":{\"locationName\":\"state\"},\"LocalGatewayRouteTableId\":{\"locationName\":\"localGatewayRouteTableId\"},\"LocalGatewayRouteTableArn\":{\"locationName\":\"localGatewayRouteTableArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"}}},\"Scr\":{\"type\":\"structure\",\"members\":{\"LocalGatewayRouteTableVpcAssociationId\":{\"locationName\":\"localGatewayRouteTableVpcAssociationId\"},\"LocalGatewayRouteTableId\":{\"locationName\":\"localGatewayRouteTableId\"},\"LocalGatewayRouteTableArn\":{\"locationName\":\"localGatewayRouteTableArn\"},\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Scu\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{},\"Description\":{}}}},\"Scx\":{\"type\":\"structure\",\"members\":{\"PrefixListId\":{\"locationName\":\"prefixListId\"},\"AddressFamily\":{\"locationName\":\"addressFamily\"},\"State\":{\"locationName\":\"state\"},\"StateMessage\":{\"locationName\":\"stateMessage\"},\"PrefixListArn\":{\"locationName\":\"prefixListArn\"},\"PrefixListName\":{\"locationName\":\"prefixListName\"},\"MaxEntries\":{\"locationName\":\"maxEntries\",\"type\":\"integer\"},\"Version\":{\"locationName\":\"version\",\"type\":\"long\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"OwnerId\":{\"locationName\":\"ownerId\"}}},\"Sd2\":{\"type\":\"structure\",\"members\":{\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"DeleteTime\":{\"locationName\":\"deleteTime\",\"type\":\"timestamp\"},\"FailureCode\":{\"locationName\":\"failureCode\"},\"FailureMessage\":{\"locationName\":\"failureMessage\"},\"NatGatewayAddresses\":{\"locationName\":\"natGatewayAddressSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AllocationId\":{\"locationName\":\"allocationId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateIp\":{\"locationName\":\"privateIp\"},\"PublicIp\":{\"locationName\":\"publicIp\"}}}},\"NatGatewayId\":{\"locationName\":\"natGatewayId\"},\"ProvisionedBandwidth\":{\"locationName\":\"provisionedBandwidth\",\"type\":\"structure\",\"members\":{\"ProvisionTime\":{\"locationName\":\"provisionTime\",\"type\":\"timestamp\"},\"Provisioned\":{\"locationName\":\"provisioned\"},\"RequestTime\":{\"locationName\":\"requestTime\",\"type\":\"timestamp\"},\"Requested\":{\"locationName\":\"requested\"},\"Status\":{\"locationName\":\"status\"}}},\"State\":{\"locationName\":\"state\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sd9\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"locationName\":\"associationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"NetworkAclAssociationId\":{\"locationName\":\"networkAclAssociationId\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"},\"SubnetId\":{\"locationName\":\"subnetId\"}}}},\"Entries\":{\"locationName\":\"entrySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CidrBlock\":{\"locationName\":\"cidrBlock\"},\"Egress\":{\"locationName\":\"egress\",\"type\":\"boolean\"},\"IcmpTypeCode\":{\"shape\":\"Sde\",\"locationName\":\"icmpTypeCode\"},\"Ipv6CidrBlock\":{\"locationName\":\"ipv6CidrBlock\"},\"PortRange\":{\"shape\":\"Sdf\",\"locationName\":\"portRange\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RuleAction\":{\"locationName\":\"ruleAction\"},\"RuleNumber\":{\"locationName\":\"ruleNumber\",\"type\":\"integer\"}}}},\"IsDefault\":{\"locationName\":\"default\",\"type\":\"boolean\"},\"NetworkAclId\":{\"locationName\":\"networkAclId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"OwnerId\":{\"locationName\":\"ownerId\"}}},\"Sde\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\",\"type\":\"integer\"},\"Type\":{\"locationName\":\"type\",\"type\":\"integer\"}}},\"Sdf\":{\"type\":\"structure\",\"members\":{\"From\":{\"locationName\":\"from\",\"type\":\"integer\"},\"To\":{\"locationName\":\"to\",\"type\":\"integer\"}}},\"Sdo\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsPathId\":{\"locationName\":\"networkInsightsPathId\"},\"NetworkInsightsPathArn\":{\"locationName\":\"networkInsightsPathArn\"},\"CreatedDate\":{\"locationName\":\"createdDate\",\"type\":\"timestamp\"},\"Source\":{\"locationName\":\"source\"},\"Destination\":{\"locationName\":\"destination\"},\"SourceIp\":{\"locationName\":\"sourceIp\"},\"DestinationIp\":{\"locationName\":\"destinationIp\"},\"Protocol\":{\"locationName\":\"protocol\"},\"DestinationPort\":{\"locationName\":\"destinationPort\",\"type\":\"integer\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sdt\":{\"type\":\"structure\",\"members\":{\"Association\":{\"shape\":\"Sdu\",\"locationName\":\"association\"},\"Attachment\":{\"shape\":\"Sdv\",\"locationName\":\"attachment\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Description\":{\"locationName\":\"description\"},\"Groups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"InterfaceType\":{\"locationName\":\"interfaceType\"},\"Ipv6Addresses\":{\"locationName\":\"ipv6AddressesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Ipv6Address\":{\"locationName\":\"ipv6Address\"}}}},\"MacAddress\":{\"locationName\":\"macAddress\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"PrivateIpAddresses\":{\"locationName\":\"privateIpAddressesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Association\":{\"shape\":\"Sdu\",\"locationName\":\"association\"},\"Primary\":{\"locationName\":\"primary\",\"type\":\"boolean\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"}}}},\"RequesterId\":{\"locationName\":\"requesterId\"},\"RequesterManaged\":{\"locationName\":\"requesterManaged\",\"type\":\"boolean\"},\"SourceDestCheck\":{\"locationName\":\"sourceDestCheck\",\"type\":\"boolean\"},\"Status\":{\"locationName\":\"status\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"TagSet\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcId\":{\"locationName\":\"vpcId\"}}},\"Sdu\":{\"type\":\"structure\",\"members\":{\"AllocationId\":{\"locationName\":\"allocationId\"},\"AssociationId\":{\"locationName\":\"associationId\"},\"IpOwnerId\":{\"locationName\":\"ipOwnerId\"},\"PublicDnsName\":{\"locationName\":\"publicDnsName\"},\"PublicIp\":{\"locationName\":\"publicIp\"},\"CustomerOwnedIp\":{\"locationName\":\"customerOwnedIp\"},\"CarrierIp\":{\"locationName\":\"carrierIp\"}}},\"Sdv\":{\"type\":\"structure\",\"members\":{\"AttachTime\":{\"locationName\":\"attachTime\",\"type\":\"timestamp\"},\"AttachmentId\":{\"locationName\":\"attachmentId\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"DeviceIndex\":{\"locationName\":\"deviceIndex\",\"type\":\"integer\"},\"NetworkCardIndex\":{\"locationName\":\"networkCardIndex\",\"type\":\"integer\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceOwnerId\":{\"locationName\":\"instanceOwnerId\"},\"Status\":{\"locationName\":\"status\"}}},\"Sdw\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"GroupName\":{\"locationName\":\"groupName\"},\"GroupId\":{\"locationName\":\"groupId\"}}}},\"Se7\":{\"type\":\"structure\",\"members\":{\"NetworkInterfacePermissionId\":{\"locationName\":\"networkInterfacePermissionId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"AwsAccountId\":{\"locationName\":\"awsAccountId\"},\"AwsService\":{\"locationName\":\"awsService\"},\"Permission\":{\"locationName\":\"permission\"},\"PermissionState\":{\"locationName\":\"permissionState\",\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"}}}}},\"Sed\":{\"type\":\"structure\",\"members\":{\"GroupName\":{\"locationName\":\"groupName\"},\"State\":{\"locationName\":\"state\"},\"Strategy\":{\"locationName\":\"strategy\"},\"PartitionCount\":{\"locationName\":\"partitionCount\",\"type\":\"integer\"},\"GroupId\":{\"locationName\":\"groupId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Seh\":{\"type\":\"structure\",\"members\":{\"ReplaceRootVolumeTaskId\":{\"locationName\":\"replaceRootVolumeTaskId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"TaskState\":{\"locationName\":\"taskState\"},\"StartTime\":{\"locationName\":\"startTime\"},\"CompleteTime\":{\"locationName\":\"completeTime\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sex\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"locationName\":\"associationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Main\":{\"locationName\":\"main\",\"type\":\"boolean\"},\"RouteTableAssociationId\":{\"locationName\":\"routeTableAssociationId\"},\"RouteTableId\":{\"locationName\":\"routeTableId\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"GatewayId\":{\"locationName\":\"gatewayId\"},\"AssociationState\":{\"shape\":\"S35\",\"locationName\":\"associationState\"}}}},\"PropagatingVgws\":{\"locationName\":\"propagatingVgwSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"GatewayId\":{\"locationName\":\"gatewayId\"}}}},\"RouteTableId\":{\"locationName\":\"routeTableId\"},\"Routes\":{\"locationName\":\"routeSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"DestinationIpv6CidrBlock\":{\"locationName\":\"destinationIpv6CidrBlock\"},\"DestinationPrefixListId\":{\"locationName\":\"destinationPrefixListId\"},\"EgressOnlyInternetGatewayId\":{\"locationName\":\"egressOnlyInternetGatewayId\"},\"GatewayId\":{\"locationName\":\"gatewayId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceOwnerId\":{\"locationName\":\"instanceOwnerId\"},\"NatGatewayId\":{\"locationName\":\"natGatewayId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"LocalGatewayId\":{\"locationName\":\"localGatewayId\"},\"CarrierGatewayId\":{\"locationName\":\"carrierGatewayId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"Origin\":{\"locationName\":\"origin\"},\"State\":{\"locationName\":\"state\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"OwnerId\":{\"locationName\":\"ownerId\"}}},\"Sf9\":{\"type\":\"structure\",\"members\":{\"DataEncryptionKeyId\":{\"locationName\":\"dataEncryptionKeyId\"},\"Description\":{\"locationName\":\"description\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Progress\":{\"locationName\":\"progress\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"State\":{\"locationName\":\"status\"},\"StateMessage\":{\"locationName\":\"statusMessage\"},\"VolumeId\":{\"locationName\":\"volumeId\"},\"VolumeSize\":{\"locationName\":\"volumeSize\",\"type\":\"integer\"},\"OwnerAlias\":{\"locationName\":\"ownerAlias\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sfj\":{\"type\":\"structure\",\"members\":{\"Bucket\":{\"locationName\":\"bucket\"},\"Fault\":{\"shape\":\"Sfk\",\"locationName\":\"fault\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Prefix\":{\"locationName\":\"prefix\"},\"State\":{\"locationName\":\"state\"}}},\"Sfk\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"Sft\":{\"type\":\"list\",\"member\":{}},\"Sfx\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterId\":{\"locationName\":\"trafficMirrorFilterId\"},\"IngressFilterRules\":{\"shape\":\"Sfy\",\"locationName\":\"ingressFilterRuleSet\"},\"EgressFilterRules\":{\"shape\":\"Sfy\",\"locationName\":\"egressFilterRuleSet\"},\"NetworkServices\":{\"shape\":\"Sg3\",\"locationName\":\"networkServiceSet\"},\"Description\":{\"locationName\":\"description\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sfy\":{\"type\":\"list\",\"member\":{\"shape\":\"Sfz\",\"locationName\":\"item\"}},\"Sfz\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorFilterRuleId\":{\"locationName\":\"trafficMirrorFilterRuleId\"},\"TrafficMirrorFilterId\":{\"locationName\":\"trafficMirrorFilterId\"},\"TrafficDirection\":{\"locationName\":\"trafficDirection\"},\"RuleNumber\":{\"locationName\":\"ruleNumber\",\"type\":\"integer\"},\"RuleAction\":{\"locationName\":\"ruleAction\"},\"Protocol\":{\"locationName\":\"protocol\",\"type\":\"integer\"},\"DestinationPortRange\":{\"shape\":\"Sg2\",\"locationName\":\"destinationPortRange\"},\"SourcePortRange\":{\"shape\":\"Sg2\",\"locationName\":\"sourcePortRange\"},\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"SourceCidrBlock\":{\"locationName\":\"sourceCidrBlock\"},\"Description\":{\"locationName\":\"description\"}}},\"Sg2\":{\"type\":\"structure\",\"members\":{\"FromPort\":{\"locationName\":\"fromPort\",\"type\":\"integer\"},\"ToPort\":{\"locationName\":\"toPort\",\"type\":\"integer\"}}},\"Sg3\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sg7\":{\"type\":\"structure\",\"members\":{\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"}}},\"Sgc\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorSessionId\":{\"locationName\":\"trafficMirrorSessionId\"},\"TrafficMirrorTargetId\":{\"locationName\":\"trafficMirrorTargetId\"},\"TrafficMirrorFilterId\":{\"locationName\":\"trafficMirrorFilterId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"PacketLength\":{\"locationName\":\"packetLength\",\"type\":\"integer\"},\"SessionNumber\":{\"locationName\":\"sessionNumber\",\"type\":\"integer\"},\"VirtualNetworkId\":{\"locationName\":\"virtualNetworkId\",\"type\":\"integer\"},\"Description\":{\"locationName\":\"description\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sgf\":{\"type\":\"structure\",\"members\":{\"TrafficMirrorTargetId\":{\"locationName\":\"trafficMirrorTargetId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"NetworkLoadBalancerArn\":{\"locationName\":\"networkLoadBalancerArn\"},\"Type\":{\"locationName\":\"type\"},\"Description\":{\"locationName\":\"description\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sgo\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sgq\":{\"type\":\"structure\",\"members\":{\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"TransitGatewayArn\":{\"locationName\":\"transitGatewayArn\"},\"State\":{\"locationName\":\"state\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Description\":{\"locationName\":\"description\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Options\":{\"locationName\":\"options\",\"type\":\"structure\",\"members\":{\"AmazonSideAsn\":{\"locationName\":\"amazonSideAsn\",\"type\":\"long\"},\"TransitGatewayCidrBlocks\":{\"shape\":\"Se\",\"locationName\":\"transitGatewayCidrBlocks\"},\"AutoAcceptSharedAttachments\":{\"locationName\":\"autoAcceptSharedAttachments\"},\"DefaultRouteTableAssociation\":{\"locationName\":\"defaultRouteTableAssociation\"},\"AssociationDefaultRouteTableId\":{\"locationName\":\"associationDefaultRouteTableId\"},\"DefaultRouteTablePropagation\":{\"locationName\":\"defaultRouteTablePropagation\"},\"PropagationDefaultRouteTableId\":{\"locationName\":\"propagationDefaultRouteTableId\"},\"VpnEcmpSupport\":{\"locationName\":\"vpnEcmpSupport\"},\"DnsSupport\":{\"locationName\":\"dnsSupport\"},\"MulticastSupport\":{\"locationName\":\"multicastSupport\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sgx\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"TransportTransitGatewayAttachmentId\":{\"locationName\":\"transportTransitGatewayAttachmentId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"State\":{\"locationName\":\"state\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Options\":{\"locationName\":\"options\",\"type\":\"structure\",\"members\":{\"Protocol\":{\"locationName\":\"protocol\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sh1\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sh3\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"TransitGatewayConnectPeerId\":{\"locationName\":\"transitGatewayConnectPeerId\"},\"State\":{\"locationName\":\"state\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"ConnectPeerConfiguration\":{\"locationName\":\"connectPeerConfiguration\",\"type\":\"structure\",\"members\":{\"TransitGatewayAddress\":{\"locationName\":\"transitGatewayAddress\"},\"PeerAddress\":{\"locationName\":\"peerAddress\"},\"InsideCidrBlocks\":{\"shape\":\"Sh1\",\"locationName\":\"insideCidrBlocks\"},\"Protocol\":{\"locationName\":\"protocol\"},\"BgpConfigurations\":{\"locationName\":\"bgpConfigurations\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"TransitGatewayAsn\":{\"locationName\":\"transitGatewayAsn\",\"type\":\"long\"},\"PeerAsn\":{\"locationName\":\"peerAsn\",\"type\":\"long\"},\"TransitGatewayAddress\":{\"locationName\":\"transitGatewayAddress\"},\"PeerAddress\":{\"locationName\":\"peerAddress\"},\"BgpStatus\":{\"locationName\":\"bgpStatus\"}}}}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Shg\":{\"type\":\"structure\",\"members\":{\"TransitGatewayMulticastDomainId\":{\"locationName\":\"transitGatewayMulticastDomainId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"TransitGatewayMulticastDomainArn\":{\"locationName\":\"transitGatewayMulticastDomainArn\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"Options\":{\"locationName\":\"options\",\"type\":\"structure\",\"members\":{\"Igmpv2Support\":{\"locationName\":\"igmpv2Support\"},\"StaticSourcesSupport\":{\"locationName\":\"staticSourcesSupport\"},\"AutoAcceptSharedAssociations\":{\"locationName\":\"autoAcceptSharedAssociations\"}}},\"State\":{\"locationName\":\"state\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Sho\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTableId\":{\"locationName\":\"transitGatewayRouteTableId\"},\"PrefixListId\":{\"locationName\":\"prefixListId\"},\"PrefixListOwnerId\":{\"locationName\":\"prefixListOwnerId\"},\"State\":{\"locationName\":\"state\"},\"Blackhole\":{\"locationName\":\"blackhole\",\"type\":\"boolean\"},\"TransitGatewayAttachment\":{\"locationName\":\"transitGatewayAttachment\",\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"ResourceId\":{\"locationName\":\"resourceId\"}}}}},\"Sht\":{\"type\":\"structure\",\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"PrefixListId\":{\"locationName\":\"prefixListId\"},\"TransitGatewayAttachments\":{\"locationName\":\"transitGatewayAttachments\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ResourceId\":{\"locationName\":\"resourceId\"},\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceType\":{\"locationName\":\"resourceType\"}}}},\"Type\":{\"locationName\":\"type\"},\"State\":{\"locationName\":\"state\"}}},\"Si0\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRouteTableId\":{\"locationName\":\"transitGatewayRouteTableId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"State\":{\"locationName\":\"state\"},\"DefaultAssociationRouteTable\":{\"locationName\":\"defaultAssociationRouteTable\",\"type\":\"boolean\"},\"DefaultPropagationRouteTable\":{\"locationName\":\"defaultPropagationRouteTable\",\"type\":\"boolean\"},\"CreationTime\":{\"locationName\":\"creationTime\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Si6\":{\"type\":\"structure\",\"members\":{\"Attachments\":{\"locationName\":\"attachmentSet\",\"type\":\"list\",\"member\":{\"shape\":\"S41\",\"locationName\":\"item\"}},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"Size\":{\"locationName\":\"size\",\"type\":\"integer\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"State\":{\"locationName\":\"status\"},\"VolumeId\":{\"locationName\":\"volumeId\"},\"Iops\":{\"locationName\":\"iops\",\"type\":\"integer\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VolumeType\":{\"locationName\":\"volumeType\"},\"FastRestored\":{\"locationName\":\"fastRestored\",\"type\":\"boolean\"},\"MultiAttachEnabled\":{\"locationName\":\"multiAttachEnabled\",\"type\":\"boolean\"},\"Throughput\":{\"locationName\":\"throughput\",\"type\":\"integer\"}}},\"Sid\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sie\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sif\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sih\":{\"type\":\"structure\",\"members\":{\"VpcEndpointId\":{\"locationName\":\"vpcEndpointId\"},\"VpcEndpointType\":{\"locationName\":\"vpcEndpointType\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"ServiceName\":{\"locationName\":\"serviceName\"},\"State\":{\"locationName\":\"state\"},\"PolicyDocument\":{\"locationName\":\"policyDocument\"},\"RouteTableIds\":{\"shape\":\"Se\",\"locationName\":\"routeTableIdSet\"},\"SubnetIds\":{\"shape\":\"Se\",\"locationName\":\"subnetIdSet\"},\"Groups\":{\"locationName\":\"groupSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"GroupId\":{\"locationName\":\"groupId\"},\"GroupName\":{\"locationName\":\"groupName\"}}}},\"PrivateDnsEnabled\":{\"locationName\":\"privateDnsEnabled\",\"type\":\"boolean\"},\"RequesterManaged\":{\"locationName\":\"requesterManaged\",\"type\":\"boolean\"},\"NetworkInterfaceIds\":{\"shape\":\"Se\",\"locationName\":\"networkInterfaceIdSet\"},\"DnsEntries\":{\"shape\":\"Sil\",\"locationName\":\"dnsEntrySet\"},\"CreationTimestamp\":{\"locationName\":\"creationTimestamp\",\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"LastError\":{\"locationName\":\"lastError\",\"type\":\"structure\",\"members\":{\"Message\":{\"locationName\":\"message\"},\"Code\":{\"locationName\":\"code\"}}}}},\"Sil\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"DnsName\":{\"locationName\":\"dnsName\"},\"HostedZoneId\":{\"locationName\":\"hostedZoneId\"}}}},\"Siq\":{\"type\":\"structure\",\"members\":{\"ConnectionNotificationId\":{\"locationName\":\"connectionNotificationId\"},\"ServiceId\":{\"locationName\":\"serviceId\"},\"VpcEndpointId\":{\"locationName\":\"vpcEndpointId\"},\"ConnectionNotificationType\":{\"locationName\":\"connectionNotificationType\"},\"ConnectionNotificationArn\":{\"locationName\":\"connectionNotificationArn\"},\"ConnectionEvents\":{\"shape\":\"Se\",\"locationName\":\"connectionEvents\"},\"ConnectionNotificationState\":{\"locationName\":\"connectionNotificationState\"}}},\"Siv\":{\"type\":\"structure\",\"members\":{\"ServiceType\":{\"shape\":\"Siw\",\"locationName\":\"serviceType\"},\"ServiceId\":{\"locationName\":\"serviceId\"},\"ServiceName\":{\"locationName\":\"serviceName\"},\"ServiceState\":{\"locationName\":\"serviceState\"},\"AvailabilityZones\":{\"shape\":\"Se\",\"locationName\":\"availabilityZoneSet\"},\"AcceptanceRequired\":{\"locationName\":\"acceptanceRequired\",\"type\":\"boolean\"},\"ManagesVpcEndpoints\":{\"locationName\":\"managesVpcEndpoints\",\"type\":\"boolean\"},\"NetworkLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"networkLoadBalancerArnSet\"},\"GatewayLoadBalancerArns\":{\"shape\":\"Se\",\"locationName\":\"gatewayLoadBalancerArnSet\"},\"BaseEndpointDnsNames\":{\"shape\":\"Se\",\"locationName\":\"baseEndpointDnsNameSet\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateDnsNameConfiguration\":{\"locationName\":\"privateDnsNameConfiguration\",\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"Type\":{\"locationName\":\"type\"},\"Value\":{\"locationName\":\"value\"},\"Name\":{\"locationName\":\"name\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Siw\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ServiceType\":{\"locationName\":\"serviceType\"}}}},\"Sja\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"Sjc\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"Sje\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"Sjg\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"Sji\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"integer\"}}}},\"Sjk\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"integer\"}}}},\"Sjm\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"Sjp\":{\"type\":\"structure\",\"members\":{\"CustomerGatewayConfiguration\":{\"locationName\":\"customerGatewayConfiguration\"},\"CustomerGatewayId\":{\"locationName\":\"customerGatewayId\"},\"Category\":{\"locationName\":\"category\"},\"State\":{\"locationName\":\"state\"},\"Type\":{\"locationName\":\"type\"},\"VpnConnectionId\":{\"locationName\":\"vpnConnectionId\"},\"VpnGatewayId\":{\"locationName\":\"vpnGatewayId\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"Options\":{\"locationName\":\"options\",\"type\":\"structure\",\"members\":{\"EnableAcceleration\":{\"locationName\":\"enableAcceleration\",\"type\":\"boolean\"},\"StaticRoutesOnly\":{\"locationName\":\"staticRoutesOnly\",\"type\":\"boolean\"},\"LocalIpv4NetworkCidr\":{\"locationName\":\"localIpv4NetworkCidr\"},\"RemoteIpv4NetworkCidr\":{\"locationName\":\"remoteIpv4NetworkCidr\"},\"LocalIpv6NetworkCidr\":{\"locationName\":\"localIpv6NetworkCidr\"},\"RemoteIpv6NetworkCidr\":{\"locationName\":\"remoteIpv6NetworkCidr\"},\"TunnelInsideIpVersion\":{\"locationName\":\"tunnelInsideIpVersion\"},\"TunnelOptions\":{\"locationName\":\"tunnelOptionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"OutsideIpAddress\":{\"locationName\":\"outsideIpAddress\"},\"TunnelInsideCidr\":{\"locationName\":\"tunnelInsideCidr\"},\"TunnelInsideIpv6Cidr\":{\"locationName\":\"tunnelInsideIpv6Cidr\"},\"PreSharedKey\":{\"locationName\":\"preSharedKey\"},\"Phase1LifetimeSeconds\":{\"locationName\":\"phase1LifetimeSeconds\",\"type\":\"integer\"},\"Phase2LifetimeSeconds\":{\"locationName\":\"phase2LifetimeSeconds\",\"type\":\"integer\"},\"RekeyMarginTimeSeconds\":{\"locationName\":\"rekeyMarginTimeSeconds\",\"type\":\"integer\"},\"RekeyFuzzPercentage\":{\"locationName\":\"rekeyFuzzPercentage\",\"type\":\"integer\"},\"ReplayWindowSize\":{\"locationName\":\"replayWindowSize\",\"type\":\"integer\"},\"DpdTimeoutSeconds\":{\"locationName\":\"dpdTimeoutSeconds\",\"type\":\"integer\"},\"DpdTimeoutAction\":{\"locationName\":\"dpdTimeoutAction\"},\"Phase1EncryptionAlgorithms\":{\"locationName\":\"phase1EncryptionAlgorithmSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}}},\"Phase2EncryptionAlgorithms\":{\"locationName\":\"phase2EncryptionAlgorithmSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}}},\"Phase1IntegrityAlgorithms\":{\"locationName\":\"phase1IntegrityAlgorithmSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}}},\"Phase2IntegrityAlgorithms\":{\"locationName\":\"phase2IntegrityAlgorithmSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}}},\"Phase1DHGroupNumbers\":{\"locationName\":\"phase1DHGroupNumberSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\",\"type\":\"integer\"}}}},\"Phase2DHGroupNumbers\":{\"locationName\":\"phase2DHGroupNumberSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\",\"type\":\"integer\"}}}},\"IkeVersions\":{\"locationName\":\"ikeVersionSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"}}}},\"StartupAction\":{\"locationName\":\"startupAction\"}}}}}},\"Routes\":{\"locationName\":\"routes\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"DestinationCidrBlock\":{\"locationName\":\"destinationCidrBlock\"},\"Source\":{\"locationName\":\"source\"},\"State\":{\"locationName\":\"state\"}}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VgwTelemetry\":{\"locationName\":\"vgwTelemetry\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AcceptedRouteCount\":{\"locationName\":\"acceptedRouteCount\",\"type\":\"integer\"},\"LastStatusChange\":{\"locationName\":\"lastStatusChange\",\"type\":\"timestamp\"},\"OutsideIpAddress\":{\"locationName\":\"outsideIpAddress\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"CertificateArn\":{\"locationName\":\"certificateArn\"}}}}}},\"Ski\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"State\":{\"locationName\":\"state\"},\"Type\":{\"locationName\":\"type\"},\"VpcAttachments\":{\"locationName\":\"attachments\",\"type\":\"list\",\"member\":{\"shape\":\"S46\",\"locationName\":\"item\"}},\"VpnGatewayId\":{\"locationName\":\"vpnGatewayId\"},\"AmazonSideAsn\":{\"locationName\":\"amazonSideAsn\",\"type\":\"long\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Skw\":{\"type\":\"list\",\"member\":{}},\"Sl6\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Sli\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Snp\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"So3\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"So5\":{\"type\":\"structure\",\"members\":{\"InstanceTagKeys\":{\"shape\":\"So3\",\"locationName\":\"instanceTagKeySet\"},\"IncludeAllTagsOfInstance\":{\"locationName\":\"includeAllTagsOfInstance\",\"type\":\"boolean\"}}},\"So7\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Som\":{\"type\":\"list\",\"member\":{\"locationName\":\"Filter\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"shape\":\"Se\",\"locationName\":\"Value\"}}}},\"Sp0\":{\"type\":\"structure\",\"members\":{\"PublicIp\":{\"locationName\":\"publicIp\"},\"AllocationId\":{\"locationName\":\"allocationId\"},\"PtrRecord\":{\"locationName\":\"ptrRecord\"},\"PtrRecordUpdate\":{\"locationName\":\"ptrRecordUpdate\",\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\"},\"Status\":{\"locationName\":\"status\"},\"Reason\":{\"locationName\":\"reason\"}}}}},\"Sp4\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Deadline\":{\"locationName\":\"deadline\",\"type\":\"timestamp\"},\"Resource\":{\"locationName\":\"resource\"},\"UseLongIds\":{\"locationName\":\"useLongIds\",\"type\":\"boolean\"}}}},\"Spz\":{\"type\":\"list\",\"member\":{\"locationName\":\"InstanceId\"}},\"Sqe\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"Srj\":{\"type\":\"structure\",\"members\":{\"ConversionTaskId\":{\"locationName\":\"conversionTaskId\"},\"ExpirationTime\":{\"locationName\":\"expirationTime\"},\"ImportInstance\":{\"locationName\":\"importInstance\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"Platform\":{\"locationName\":\"platform\"},\"Volumes\":{\"locationName\":\"volumes\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"BytesConverted\":{\"locationName\":\"bytesConverted\",\"type\":\"long\"},\"Description\":{\"locationName\":\"description\"},\"Image\":{\"shape\":\"Srn\",\"locationName\":\"image\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Volume\":{\"shape\":\"Sro\",\"locationName\":\"volume\"}}}}}},\"ImportVolume\":{\"locationName\":\"importVolume\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"BytesConverted\":{\"locationName\":\"bytesConverted\",\"type\":\"long\"},\"Description\":{\"locationName\":\"description\"},\"Image\":{\"shape\":\"Srn\",\"locationName\":\"image\"},\"Volume\":{\"shape\":\"Sro\",\"locationName\":\"volume\"}}},\"State\":{\"locationName\":\"state\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"Srn\":{\"type\":\"structure\",\"members\":{\"Checksum\":{\"locationName\":\"checksum\"},\"Format\":{\"locationName\":\"format\"},\"ImportManifestUrl\":{\"locationName\":\"importManifestUrl\"},\"Size\":{\"locationName\":\"size\",\"type\":\"long\"}}},\"Sro\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"},\"Size\":{\"locationName\":\"size\",\"type\":\"long\"}}},\"Ssm\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{\"locationName\":\"s3Bucket\"},\"S3Prefix\":{\"locationName\":\"s3Prefix\"}}},\"St3\":{\"type\":\"structure\",\"members\":{\"EventDescription\":{\"locationName\":\"eventDescription\"},\"EventSubType\":{\"locationName\":\"eventSubType\"},\"InstanceId\":{\"locationName\":\"instanceId\"}}},\"St6\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"SpotInstanceRequestId\":{\"locationName\":\"spotInstanceRequestId\"},\"InstanceHealth\":{\"locationName\":\"instanceHealth\"}}}},\"Sty\":{\"type\":\"structure\",\"members\":{\"FpgaImageId\":{\"locationName\":\"fpgaImageId\"},\"Name\":{\"locationName\":\"name\"},\"Description\":{\"locationName\":\"description\"},\"LoadPermissions\":{\"locationName\":\"loadPermissions\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"UserId\":{\"locationName\":\"userId\"},\"Group\":{\"locationName\":\"group\"}}}},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"}}},\"Su2\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ProductCodeId\":{\"locationName\":\"productCode\"},\"ProductCodeType\":{\"locationName\":\"type\"}}}},\"Su7\":{\"type\":\"list\",\"member\":{\"locationName\":\"Owner\"}},\"Sus\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Suv\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"Svk\":{\"type\":\"list\",\"member\":{\"shape\":\"S9k\",\"locationName\":\"item\"}},\"Svl\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Group\":{\"locationName\":\"group\"},\"UserId\":{\"locationName\":\"userId\"}}}},\"Svy\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"Sw7\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"DeviceName\":{\"locationName\":\"deviceName\"},\"DiskImageSize\":{\"locationName\":\"diskImageSize\",\"type\":\"double\"},\"Format\":{\"locationName\":\"format\"},\"Progress\":{\"locationName\":\"progress\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Url\":{\"locationName\":\"url\"},\"UserBucket\":{\"shape\":\"Sw9\",\"locationName\":\"userBucket\"}}}},\"Sw9\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{\"locationName\":\"s3Bucket\"},\"S3Key\":{\"locationName\":\"s3Key\"}}},\"Swa\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{\"locationName\":\"licenseConfigurationArn\"}}}},\"Swi\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"DiskImageSize\":{\"locationName\":\"diskImageSize\",\"type\":\"double\"},\"Encrypted\":{\"locationName\":\"encrypted\",\"type\":\"boolean\"},\"Format\":{\"locationName\":\"format\"},\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"Progress\":{\"locationName\":\"progress\"},\"SnapshotId\":{\"locationName\":\"snapshotId\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"Url\":{\"locationName\":\"url\"},\"UserBucket\":{\"shape\":\"Sw9\",\"locationName\":\"userBucket\"}}},\"Swm\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"DeviceName\":{\"locationName\":\"deviceName\"},\"Ebs\":{\"locationName\":\"ebs\",\"type\":\"structure\",\"members\":{\"AttachTime\":{\"locationName\":\"attachTime\",\"type\":\"timestamp\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"Status\":{\"locationName\":\"status\"},\"VolumeId\":{\"locationName\":\"volumeId\"}}}}}},\"Swp\":{\"type\":\"structure\",\"members\":{\"Value\":{\"locationName\":\"value\",\"type\":\"boolean\"}}},\"Swq\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}}},\"Sx3\":{\"type\":\"structure\",\"members\":{\"InstanceEventId\":{\"locationName\":\"instanceEventId\"},\"Code\":{\"locationName\":\"code\"},\"Description\":{\"locationName\":\"description\"},\"NotAfter\":{\"locationName\":\"notAfter\",\"type\":\"timestamp\"},\"NotBefore\":{\"locationName\":\"notBefore\",\"type\":\"timestamp\"},\"NotBeforeDeadline\":{\"locationName\":\"notBeforeDeadline\",\"type\":\"timestamp\"}}},\"Sx6\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"}}},\"Sx8\":{\"type\":\"structure\",\"members\":{\"Details\":{\"locationName\":\"details\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ImpairedSince\":{\"locationName\":\"impairedSince\",\"type\":\"timestamp\"},\"Name\":{\"locationName\":\"name\"},\"Status\":{\"locationName\":\"status\"}}}},\"Status\":{\"locationName\":\"status\"}}},\"S10a\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"Instances\":{\"locationName\":\"instancesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AmiLaunchIndex\":{\"locationName\":\"amiLaunchIndex\",\"type\":\"integer\"},\"ImageId\":{\"locationName\":\"imageId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"KernelId\":{\"locationName\":\"kernelId\"},\"KeyName\":{\"locationName\":\"keyName\"},\"LaunchTime\":{\"locationName\":\"launchTime\",\"type\":\"timestamp\"},\"Monitoring\":{\"shape\":\"S10d\",\"locationName\":\"monitoring\"},\"Placement\":{\"shape\":\"S8r\",\"locationName\":\"placement\"},\"Platform\":{\"locationName\":\"platform\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"ProductCodes\":{\"shape\":\"Su2\",\"locationName\":\"productCodes\"},\"PublicDnsName\":{\"locationName\":\"dnsName\"},\"PublicIpAddress\":{\"locationName\":\"ipAddress\"},\"RamdiskId\":{\"locationName\":\"ramdiskId\"},\"State\":{\"shape\":\"Sx6\",\"locationName\":\"instanceState\"},\"StateTransitionReason\":{\"locationName\":\"reason\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"Architecture\":{\"locationName\":\"architecture\"},\"BlockDeviceMappings\":{\"shape\":\"Swm\",\"locationName\":\"blockDeviceMapping\"},\"ClientToken\":{\"locationName\":\"clientToken\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"EnaSupport\":{\"locationName\":\"enaSupport\",\"type\":\"boolean\"},\"Hypervisor\":{\"locationName\":\"hypervisor\"},\"IamInstanceProfile\":{\"shape\":\"S2z\",\"locationName\":\"iamInstanceProfile\"},\"InstanceLifecycle\":{\"locationName\":\"instanceLifecycle\"},\"ElasticGpuAssociations\":{\"locationName\":\"elasticGpuAssociationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ElasticGpuId\":{\"locationName\":\"elasticGpuId\"},\"ElasticGpuAssociationId\":{\"locationName\":\"elasticGpuAssociationId\"},\"ElasticGpuAssociationState\":{\"locationName\":\"elasticGpuAssociationState\"},\"ElasticGpuAssociationTime\":{\"locationName\":\"elasticGpuAssociationTime\"}}}},\"ElasticInferenceAcceleratorAssociations\":{\"locationName\":\"elasticInferenceAcceleratorAssociationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ElasticInferenceAcceleratorArn\":{\"locationName\":\"elasticInferenceAcceleratorArn\"},\"ElasticInferenceAcceleratorAssociationId\":{\"locationName\":\"elasticInferenceAcceleratorAssociationId\"},\"ElasticInferenceAcceleratorAssociationState\":{\"locationName\":\"elasticInferenceAcceleratorAssociationState\"},\"ElasticInferenceAcceleratorAssociationTime\":{\"locationName\":\"elasticInferenceAcceleratorAssociationTime\",\"type\":\"timestamp\"}}}},\"NetworkInterfaces\":{\"locationName\":\"networkInterfaceSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Association\":{\"shape\":\"S10m\",\"locationName\":\"association\"},\"Attachment\":{\"locationName\":\"attachment\",\"type\":\"structure\",\"members\":{\"AttachTime\":{\"locationName\":\"attachTime\",\"type\":\"timestamp\"},\"AttachmentId\":{\"locationName\":\"attachmentId\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"DeviceIndex\":{\"locationName\":\"deviceIndex\",\"type\":\"integer\"},\"Status\":{\"locationName\":\"status\"},\"NetworkCardIndex\":{\"locationName\":\"networkCardIndex\",\"type\":\"integer\"}}},\"Description\":{\"locationName\":\"description\"},\"Groups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"Ipv6Addresses\":{\"shape\":\"Sbw\",\"locationName\":\"ipv6AddressesSet\"},\"MacAddress\":{\"locationName\":\"macAddress\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"OwnerId\":{\"locationName\":\"ownerId\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"PrivateIpAddresses\":{\"locationName\":\"privateIpAddressesSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Association\":{\"shape\":\"S10m\",\"locationName\":\"association\"},\"Primary\":{\"locationName\":\"primary\",\"type\":\"boolean\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"}}}},\"SourceDestCheck\":{\"locationName\":\"sourceDestCheck\",\"type\":\"boolean\"},\"Status\":{\"locationName\":\"status\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"VpcId\":{\"locationName\":\"vpcId\"},\"InterfaceType\":{\"locationName\":\"interfaceType\"}}}},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"RootDeviceName\":{\"locationName\":\"rootDeviceName\"},\"RootDeviceType\":{\"locationName\":\"rootDeviceType\"},\"SecurityGroups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"SourceDestCheck\":{\"locationName\":\"sourceDestCheck\",\"type\":\"boolean\"},\"SpotInstanceRequestId\":{\"locationName\":\"spotInstanceRequestId\"},\"SriovNetSupport\":{\"locationName\":\"sriovNetSupport\"},\"StateReason\":{\"shape\":\"Svy\",\"locationName\":\"stateReason\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"VirtualizationType\":{\"locationName\":\"virtualizationType\"},\"CpuOptions\":{\"locationName\":\"cpuOptions\",\"type\":\"structure\",\"members\":{\"CoreCount\":{\"locationName\":\"coreCount\",\"type\":\"integer\"},\"ThreadsPerCore\":{\"locationName\":\"threadsPerCore\",\"type\":\"integer\"}}},\"CapacityReservationId\":{\"locationName\":\"capacityReservationId\"},\"CapacityReservationSpecification\":{\"locationName\":\"capacityReservationSpecification\",\"type\":\"structure\",\"members\":{\"CapacityReservationPreference\":{\"locationName\":\"capacityReservationPreference\"},\"CapacityReservationTarget\":{\"shape\":\"Scb\",\"locationName\":\"capacityReservationTarget\"}}},\"HibernationOptions\":{\"locationName\":\"hibernationOptions\",\"type\":\"structure\",\"members\":{\"Configured\":{\"locationName\":\"configured\",\"type\":\"boolean\"}}},\"Licenses\":{\"locationName\":\"licenseSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{\"locationName\":\"licenseConfigurationArn\"}}}},\"MetadataOptions\":{\"shape\":\"S10v\",\"locationName\":\"metadataOptions\"},\"EnclaveOptions\":{\"shape\":\"Swq\",\"locationName\":\"enclaveOptions\"},\"BootMode\":{\"locationName\":\"bootMode\"}}}},\"OwnerId\":{\"locationName\":\"ownerId\"},\"RequesterId\":{\"locationName\":\"requesterId\"},\"ReservationId\":{\"locationName\":\"reservationId\"}}},\"S10d\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"}}},\"S10m\":{\"type\":\"structure\",\"members\":{\"CarrierIp\":{\"locationName\":\"carrierIp\"},\"IpOwnerId\":{\"locationName\":\"ipOwnerId\"},\"PublicDnsName\":{\"locationName\":\"publicDnsName\"},\"PublicIp\":{\"locationName\":\"publicIp\"}}},\"S10v\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"},\"HttpTokens\":{\"locationName\":\"httpTokens\"},\"HttpPutResponseHopLimit\":{\"locationName\":\"httpPutResponseHopLimit\",\"type\":\"integer\"},\"HttpEndpoint\":{\"locationName\":\"httpEndpoint\"}}},\"S12c\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S13c\":{\"type\":\"structure\",\"members\":{\"NetworkInsightsAnalysisId\":{\"locationName\":\"networkInsightsAnalysisId\"},\"NetworkInsightsAnalysisArn\":{\"locationName\":\"networkInsightsAnalysisArn\"},\"NetworkInsightsPathId\":{\"locationName\":\"networkInsightsPathId\"},\"FilterInArns\":{\"shape\":\"S13d\",\"locationName\":\"filterInArnSet\"},\"StartDate\":{\"locationName\":\"startDate\",\"type\":\"timestamp\"},\"Status\":{\"locationName\":\"status\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"NetworkPathFound\":{\"locationName\":\"networkPathFound\",\"type\":\"boolean\"},\"ForwardPathComponents\":{\"shape\":\"S13f\",\"locationName\":\"forwardPathComponentSet\"},\"ReturnPathComponents\":{\"shape\":\"S13f\",\"locationName\":\"returnPathComponentSet\"},\"Explanations\":{\"locationName\":\"explanationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Acl\":{\"shape\":\"S13i\",\"locationName\":\"acl\"},\"AclRule\":{\"shape\":\"S13h\",\"locationName\":\"aclRule\"},\"Address\":{\"locationName\":\"address\"},\"Addresses\":{\"shape\":\"S13k\",\"locationName\":\"addressSet\"},\"AttachedTo\":{\"shape\":\"S13i\",\"locationName\":\"attachedTo\"},\"AvailabilityZones\":{\"shape\":\"Se\",\"locationName\":\"availabilityZoneSet\"},\"Cidrs\":{\"shape\":\"Se\",\"locationName\":\"cidrSet\"},\"Component\":{\"shape\":\"S13i\",\"locationName\":\"component\"},\"CustomerGateway\":{\"shape\":\"S13i\",\"locationName\":\"customerGateway\"},\"Destination\":{\"shape\":\"S13i\",\"locationName\":\"destination\"},\"DestinationVpc\":{\"shape\":\"S13i\",\"locationName\":\"destinationVpc\"},\"Direction\":{\"locationName\":\"direction\"},\"ExplanationCode\":{\"locationName\":\"explanationCode\"},\"IngressRouteTable\":{\"shape\":\"S13i\",\"locationName\":\"ingressRouteTable\"},\"InternetGateway\":{\"shape\":\"S13i\",\"locationName\":\"internetGateway\"},\"LoadBalancerArn\":{\"locationName\":\"loadBalancerArn\"},\"ClassicLoadBalancerListener\":{\"locationName\":\"classicLoadBalancerListener\",\"type\":\"structure\",\"members\":{\"LoadBalancerPort\":{\"locationName\":\"loadBalancerPort\",\"type\":\"integer\"},\"InstancePort\":{\"locationName\":\"instancePort\",\"type\":\"integer\"}}},\"LoadBalancerListenerPort\":{\"locationName\":\"loadBalancerListenerPort\",\"type\":\"integer\"},\"LoadBalancerTarget\":{\"locationName\":\"loadBalancerTarget\",\"type\":\"structure\",\"members\":{\"Address\":{\"locationName\":\"address\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Instance\":{\"shape\":\"S13i\",\"locationName\":\"instance\"},\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"}}},\"LoadBalancerTargetGroup\":{\"shape\":\"S13i\",\"locationName\":\"loadBalancerTargetGroup\"},\"LoadBalancerTargetGroups\":{\"shape\":\"S13s\",\"locationName\":\"loadBalancerTargetGroupSet\"},\"LoadBalancerTargetPort\":{\"locationName\":\"loadBalancerTargetPort\",\"type\":\"integer\"},\"ElasticLoadBalancerListener\":{\"shape\":\"S13i\",\"locationName\":\"elasticLoadBalancerListener\"},\"MissingComponent\":{\"locationName\":\"missingComponent\"},\"NatGateway\":{\"shape\":\"S13i\",\"locationName\":\"natGateway\"},\"NetworkInterface\":{\"shape\":\"S13i\",\"locationName\":\"networkInterface\"},\"PacketField\":{\"locationName\":\"packetField\"},\"VpcPeeringConnection\":{\"shape\":\"S13i\",\"locationName\":\"vpcPeeringConnection\"},\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"},\"PortRanges\":{\"shape\":\"S13l\",\"locationName\":\"portRangeSet\"},\"PrefixList\":{\"shape\":\"S13i\",\"locationName\":\"prefixList\"},\"Protocols\":{\"locationName\":\"protocolSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"RouteTableRoute\":{\"shape\":\"S13m\",\"locationName\":\"routeTableRoute\"},\"RouteTable\":{\"shape\":\"S13i\",\"locationName\":\"routeTable\"},\"SecurityGroup\":{\"shape\":\"S13i\",\"locationName\":\"securityGroup\"},\"SecurityGroupRule\":{\"shape\":\"S13n\",\"locationName\":\"securityGroupRule\"},\"SecurityGroups\":{\"shape\":\"S13s\",\"locationName\":\"securityGroupSet\"},\"SourceVpc\":{\"shape\":\"S13i\",\"locationName\":\"sourceVpc\"},\"State\":{\"locationName\":\"state\"},\"Subnet\":{\"shape\":\"S13i\",\"locationName\":\"subnet\"},\"SubnetRouteTable\":{\"shape\":\"S13i\",\"locationName\":\"subnetRouteTable\"},\"Vpc\":{\"shape\":\"S13i\",\"locationName\":\"vpc\"},\"VpcEndpoint\":{\"shape\":\"S13i\",\"locationName\":\"vpcEndpoint\"},\"VpnConnection\":{\"shape\":\"S13i\",\"locationName\":\"vpnConnection\"},\"VpnGateway\":{\"shape\":\"S13i\",\"locationName\":\"vpnGateway\"}}}},\"AlternatePathHints\":{\"locationName\":\"alternatePathHintSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ComponentId\":{\"locationName\":\"componentId\"},\"ComponentArn\":{\"locationName\":\"componentArn\"}}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"}}},\"S13d\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S13f\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SequenceNumber\":{\"locationName\":\"sequenceNumber\",\"type\":\"integer\"},\"AclRule\":{\"shape\":\"S13h\",\"locationName\":\"aclRule\"},\"Component\":{\"shape\":\"S13i\",\"locationName\":\"component\"},\"DestinationVpc\":{\"shape\":\"S13i\",\"locationName\":\"destinationVpc\"},\"OutboundHeader\":{\"shape\":\"S13j\",\"locationName\":\"outboundHeader\"},\"InboundHeader\":{\"shape\":\"S13j\",\"locationName\":\"inboundHeader\"},\"RouteTableRoute\":{\"shape\":\"S13m\",\"locationName\":\"routeTableRoute\"},\"SecurityGroupRule\":{\"shape\":\"S13n\",\"locationName\":\"securityGroupRule\"},\"SourceVpc\":{\"shape\":\"S13i\",\"locationName\":\"sourceVpc\"},\"Subnet\":{\"shape\":\"S13i\",\"locationName\":\"subnet\"},\"Vpc\":{\"shape\":\"S13i\",\"locationName\":\"vpc\"}}}},\"S13h\":{\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"cidr\"},\"Egress\":{\"locationName\":\"egress\",\"type\":\"boolean\"},\"PortRange\":{\"shape\":\"Sdf\",\"locationName\":\"portRange\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RuleAction\":{\"locationName\":\"ruleAction\"},\"RuleNumber\":{\"locationName\":\"ruleNumber\",\"type\":\"integer\"}}},\"S13i\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"},\"Arn\":{\"locationName\":\"arn\"}}},\"S13j\":{\"type\":\"structure\",\"members\":{\"DestinationAddresses\":{\"shape\":\"S13k\",\"locationName\":\"destinationAddressSet\"},\"DestinationPortRanges\":{\"shape\":\"S13l\",\"locationName\":\"destinationPortRangeSet\"},\"Protocol\":{\"locationName\":\"protocol\"},\"SourceAddresses\":{\"shape\":\"S13k\",\"locationName\":\"sourceAddressSet\"},\"SourcePortRanges\":{\"shape\":\"S13l\",\"locationName\":\"sourcePortRangeSet\"}}},\"S13k\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S13l\":{\"type\":\"list\",\"member\":{\"shape\":\"Sdf\",\"locationName\":\"item\"}},\"S13m\":{\"type\":\"structure\",\"members\":{\"DestinationCidr\":{\"locationName\":\"destinationCidr\"},\"DestinationPrefixListId\":{\"locationName\":\"destinationPrefixListId\"},\"EgressOnlyInternetGatewayId\":{\"locationName\":\"egressOnlyInternetGatewayId\"},\"GatewayId\":{\"locationName\":\"gatewayId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"NatGatewayId\":{\"locationName\":\"natGatewayId\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"Origin\":{\"locationName\":\"origin\"},\"TransitGatewayId\":{\"locationName\":\"transitGatewayId\"},\"VpcPeeringConnectionId\":{\"locationName\":\"vpcPeeringConnectionId\"}}},\"S13n\":{\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"cidr\"},\"Direction\":{\"locationName\":\"direction\"},\"SecurityGroupId\":{\"locationName\":\"securityGroupId\"},\"PortRange\":{\"shape\":\"Sdf\",\"locationName\":\"portRange\"},\"PrefixListId\":{\"locationName\":\"prefixListId\"},\"Protocol\":{\"locationName\":\"protocol\"}}},\"S13s\":{\"type\":\"list\",\"member\":{\"shape\":\"S13i\",\"locationName\":\"item\"}},\"S15e\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedInstancesId\"}},\"S15m\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Amount\":{\"locationName\":\"amount\",\"type\":\"double\"},\"Frequency\":{\"locationName\":\"frequency\"}}}},\"S160\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"Platform\":{\"locationName\":\"platform\"},\"Scope\":{\"locationName\":\"scope\"}}},\"S16n\":{\"type\":\"structure\",\"members\":{\"Frequency\":{\"locationName\":\"frequency\"},\"Interval\":{\"locationName\":\"interval\",\"type\":\"integer\"},\"OccurrenceDaySet\":{\"locationName\":\"occurrenceDaySet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"integer\"}},\"OccurrenceRelativeToEnd\":{\"locationName\":\"occurrenceRelativeToEnd\",\"type\":\"boolean\"},\"OccurrenceUnit\":{\"locationName\":\"occurrenceUnit\"}}},\"S16v\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"CreateDate\":{\"locationName\":\"createDate\",\"type\":\"timestamp\"},\"HourlyPrice\":{\"locationName\":\"hourlyPrice\"},\"InstanceCount\":{\"locationName\":\"instanceCount\",\"type\":\"integer\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"NetworkPlatform\":{\"locationName\":\"networkPlatform\"},\"NextSlotStartTime\":{\"locationName\":\"nextSlotStartTime\",\"type\":\"timestamp\"},\"Platform\":{\"locationName\":\"platform\"},\"PreviousSlotEndTime\":{\"locationName\":\"previousSlotEndTime\",\"type\":\"timestamp\"},\"Recurrence\":{\"shape\":\"S16n\",\"locationName\":\"recurrence\"},\"ScheduledInstanceId\":{\"locationName\":\"scheduledInstanceId\"},\"SlotDurationInHours\":{\"locationName\":\"slotDurationInHours\",\"type\":\"integer\"},\"TermEndDate\":{\"locationName\":\"termEndDate\",\"type\":\"timestamp\"},\"TermStartDate\":{\"locationName\":\"termStartDate\",\"type\":\"timestamp\"},\"TotalScheduledInstanceHours\":{\"locationName\":\"totalScheduledInstanceHours\",\"type\":\"integer\"}}},\"S172\":{\"type\":\"list\",\"member\":{\"locationName\":\"GroupName\"}},\"S17a\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Group\":{\"locationName\":\"group\"},\"UserId\":{\"locationName\":\"userId\"}}}},\"S17e\":{\"type\":\"list\",\"member\":{\"locationName\":\"SnapshotId\"}},\"S17x\":{\"type\":\"structure\",\"required\":[\"IamFleetRole\",\"TargetCapacity\"],\"members\":{\"AllocationStrategy\":{\"locationName\":\"allocationStrategy\"},\"OnDemandAllocationStrategy\":{\"locationName\":\"onDemandAllocationStrategy\"},\"SpotMaintenanceStrategies\":{\"locationName\":\"spotMaintenanceStrategies\",\"type\":\"structure\",\"members\":{\"CapacityRebalance\":{\"locationName\":\"capacityRebalance\",\"type\":\"structure\",\"members\":{\"ReplacementStrategy\":{\"locationName\":\"replacementStrategy\"}}}}},\"ClientToken\":{\"locationName\":\"clientToken\"},\"ExcessCapacityTerminationPolicy\":{\"locationName\":\"excessCapacityTerminationPolicy\"},\"FulfilledCapacity\":{\"locationName\":\"fulfilledCapacity\",\"type\":\"double\"},\"OnDemandFulfilledCapacity\":{\"locationName\":\"onDemandFulfilledCapacity\",\"type\":\"double\"},\"IamFleetRole\":{\"locationName\":\"iamFleetRole\"},\"LaunchSpecifications\":{\"locationName\":\"launchSpecifications\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"SecurityGroups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"AddressingType\":{\"locationName\":\"addressingType\"},\"BlockDeviceMappings\":{\"shape\":\"Svk\",\"locationName\":\"blockDeviceMapping\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"IamInstanceProfile\":{\"shape\":\"S2w\",\"locationName\":\"iamInstanceProfile\"},\"ImageId\":{\"locationName\":\"imageId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"KernelId\":{\"locationName\":\"kernelId\"},\"KeyName\":{\"locationName\":\"keyName\"},\"Monitoring\":{\"locationName\":\"monitoring\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}}},\"NetworkInterfaces\":{\"shape\":\"S187\",\"locationName\":\"networkInterfaceSet\"},\"Placement\":{\"shape\":\"S189\",\"locationName\":\"placement\"},\"RamdiskId\":{\"locationName\":\"ramdiskId\"},\"SpotPrice\":{\"locationName\":\"spotPrice\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"UserData\":{\"locationName\":\"userData\"},\"WeightedCapacity\":{\"locationName\":\"weightedCapacity\",\"type\":\"double\"},\"TagSpecifications\":{\"locationName\":\"tagSpecificationSet\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ResourceType\":{\"locationName\":\"resourceType\"},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tag\"}}}}}}},\"LaunchTemplateConfigs\":{\"shape\":\"S18c\",\"locationName\":\"launchTemplateConfigs\"},\"SpotPrice\":{\"locationName\":\"spotPrice\"},\"TargetCapacity\":{\"locationName\":\"targetCapacity\",\"type\":\"integer\"},\"OnDemandTargetCapacity\":{\"locationName\":\"onDemandTargetCapacity\",\"type\":\"integer\"},\"OnDemandMaxTotalPrice\":{\"locationName\":\"onDemandMaxTotalPrice\"},\"SpotMaxTotalPrice\":{\"locationName\":\"spotMaxTotalPrice\"},\"TerminateInstancesWithExpiration\":{\"locationName\":\"terminateInstancesWithExpiration\",\"type\":\"boolean\"},\"Type\":{\"locationName\":\"type\"},\"ValidFrom\":{\"locationName\":\"validFrom\",\"type\":\"timestamp\"},\"ValidUntil\":{\"locationName\":\"validUntil\",\"type\":\"timestamp\"},\"ReplaceUnhealthyInstances\":{\"locationName\":\"replaceUnhealthyInstances\",\"type\":\"boolean\"},\"InstanceInterruptionBehavior\":{\"locationName\":\"instanceInterruptionBehavior\"},\"LoadBalancersConfig\":{\"locationName\":\"loadBalancersConfig\",\"type\":\"structure\",\"members\":{\"ClassicLoadBalancersConfig\":{\"locationName\":\"classicLoadBalancersConfig\",\"type\":\"structure\",\"members\":{\"ClassicLoadBalancers\":{\"locationName\":\"classicLoadBalancers\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"}}}}}},\"TargetGroupsConfig\":{\"locationName\":\"targetGroupsConfig\",\"type\":\"structure\",\"members\":{\"TargetGroups\":{\"locationName\":\"targetGroups\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"}}}}}}}},\"InstancePoolsToUseCount\":{\"locationName\":\"instancePoolsToUseCount\",\"type\":\"integer\"},\"TagSpecifications\":{\"shape\":\"S1t\",\"locationName\":\"TagSpecification\"}}},\"S187\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"AssociatePublicIpAddress\":{\"locationName\":\"associatePublicIpAddress\",\"type\":\"boolean\"},\"DeleteOnTermination\":{\"locationName\":\"deleteOnTermination\",\"type\":\"boolean\"},\"Description\":{\"locationName\":\"description\"},\"DeviceIndex\":{\"locationName\":\"deviceIndex\",\"type\":\"integer\"},\"Groups\":{\"shape\":\"Saf\",\"locationName\":\"SecurityGroupId\"},\"Ipv6AddressCount\":{\"locationName\":\"ipv6AddressCount\",\"type\":\"integer\"},\"Ipv6Addresses\":{\"shape\":\"Sbw\",\"locationName\":\"ipv6AddressesSet\",\"queryName\":\"Ipv6Addresses\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"PrivateIpAddresses\":{\"shape\":\"Sai\",\"locationName\":\"privateIpAddressesSet\",\"queryName\":\"PrivateIpAddresses\"},\"SecondaryPrivateIpAddressCount\":{\"locationName\":\"secondaryPrivateIpAddressCount\",\"type\":\"integer\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"AssociateCarrierIpAddress\":{\"type\":\"boolean\"},\"InterfaceType\":{},\"NetworkCardIndex\":{\"type\":\"integer\"}}}},\"S189\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"GroupName\":{\"locationName\":\"groupName\"},\"Tenancy\":{\"locationName\":\"tenancy\"}}},\"S18c\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"LaunchTemplateSpecification\":{\"shape\":\"S90\",\"locationName\":\"launchTemplateSpecification\"},\"Overrides\":{\"locationName\":\"overrides\",\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceType\":{\"locationName\":\"instanceType\"},\"SpotPrice\":{\"locationName\":\"spotPrice\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"WeightedCapacity\":{\"locationName\":\"weightedCapacity\",\"type\":\"double\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"double\"}}}}}}},\"S18p\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"ActualBlockHourlyPrice\":{\"locationName\":\"actualBlockHourlyPrice\"},\"AvailabilityZoneGroup\":{\"locationName\":\"availabilityZoneGroup\"},\"BlockDurationMinutes\":{\"locationName\":\"blockDurationMinutes\",\"type\":\"integer\"},\"CreateTime\":{\"locationName\":\"createTime\",\"type\":\"timestamp\"},\"Fault\":{\"shape\":\"Sfk\",\"locationName\":\"fault\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"LaunchGroup\":{\"locationName\":\"launchGroup\"},\"LaunchSpecification\":{\"locationName\":\"launchSpecification\",\"type\":\"structure\",\"members\":{\"UserData\":{\"locationName\":\"userData\"},\"SecurityGroups\":{\"shape\":\"Sdw\",\"locationName\":\"groupSet\"},\"AddressingType\":{\"locationName\":\"addressingType\"},\"BlockDeviceMappings\":{\"shape\":\"Svk\",\"locationName\":\"blockDeviceMapping\"},\"EbsOptimized\":{\"locationName\":\"ebsOptimized\",\"type\":\"boolean\"},\"IamInstanceProfile\":{\"shape\":\"S2w\",\"locationName\":\"iamInstanceProfile\"},\"ImageId\":{\"locationName\":\"imageId\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"KernelId\":{\"locationName\":\"kernelId\"},\"KeyName\":{\"locationName\":\"keyName\"},\"NetworkInterfaces\":{\"shape\":\"S187\",\"locationName\":\"networkInterfaceSet\"},\"Placement\":{\"shape\":\"S189\",\"locationName\":\"placement\"},\"RamdiskId\":{\"locationName\":\"ramdiskId\"},\"SubnetId\":{\"locationName\":\"subnetId\"},\"Monitoring\":{\"shape\":\"S18s\",\"locationName\":\"monitoring\"}}},\"LaunchedAvailabilityZone\":{\"locationName\":\"launchedAvailabilityZone\"},\"ProductDescription\":{\"locationName\":\"productDescription\"},\"SpotInstanceRequestId\":{\"locationName\":\"spotInstanceRequestId\"},\"SpotPrice\":{\"locationName\":\"spotPrice\"},\"State\":{\"locationName\":\"state\"},\"Status\":{\"locationName\":\"status\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"},\"UpdateTime\":{\"locationName\":\"updateTime\",\"type\":\"timestamp\"}}},\"Tags\":{\"shape\":\"Ss\",\"locationName\":\"tagSet\"},\"Type\":{\"locationName\":\"type\"},\"ValidFrom\":{\"locationName\":\"validFrom\",\"type\":\"timestamp\"},\"ValidUntil\":{\"locationName\":\"validUntil\",\"type\":\"timestamp\"},\"InstanceInterruptionBehavior\":{\"locationName\":\"instanceInterruptionBehavior\"}}}},\"S18s\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}}},\"S197\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"FromPort\":{\"locationName\":\"fromPort\",\"type\":\"integer\"},\"IpProtocol\":{\"locationName\":\"ipProtocol\"},\"IpRanges\":{\"locationName\":\"ipRanges\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"PrefixListIds\":{\"locationName\":\"prefixListIds\",\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"ToPort\":{\"locationName\":\"toPort\",\"type\":\"integer\"},\"UserIdGroupPairs\":{\"locationName\":\"groups\",\"type\":\"list\",\"member\":{\"shape\":\"S4m\",\"locationName\":\"item\"}}}}},\"S1a5\":{\"type\":\"list\",\"member\":{}},\"S1b4\":{\"type\":\"list\",\"member\":{\"locationName\":\"VolumeId\"}},\"S1bp\":{\"type\":\"structure\",\"members\":{\"VolumeId\":{\"locationName\":\"volumeId\"},\"ModificationState\":{\"locationName\":\"modificationState\"},\"StatusMessage\":{\"locationName\":\"statusMessage\"},\"TargetSize\":{\"locationName\":\"targetSize\",\"type\":\"integer\"},\"TargetIops\":{\"locationName\":\"targetIops\",\"type\":\"integer\"},\"TargetVolumeType\":{\"locationName\":\"targetVolumeType\"},\"TargetThroughput\":{\"locationName\":\"targetThroughput\",\"type\":\"integer\"},\"TargetMultiAttachEnabled\":{\"locationName\":\"targetMultiAttachEnabled\",\"type\":\"boolean\"},\"OriginalSize\":{\"locationName\":\"originalSize\",\"type\":\"integer\"},\"OriginalIops\":{\"locationName\":\"originalIops\",\"type\":\"integer\"},\"OriginalVolumeType\":{\"locationName\":\"originalVolumeType\"},\"OriginalThroughput\":{\"locationName\":\"originalThroughput\",\"type\":\"integer\"},\"OriginalMultiAttachEnabled\":{\"locationName\":\"originalMultiAttachEnabled\",\"type\":\"boolean\"},\"Progress\":{\"locationName\":\"progress\",\"type\":\"long\"},\"StartTime\":{\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"EndTime\":{\"locationName\":\"endTime\",\"type\":\"timestamp\"}}},\"S1bv\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcId\"}},\"S1dl\":{\"type\":\"list\",\"member\":{\"locationName\":\"AvailabilityZone\"}},\"S1dy\":{\"type\":\"structure\",\"members\":{\"TransitGatewayAttachmentId\":{\"locationName\":\"transitGatewayAttachmentId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"TransitGatewayRouteTableId\":{\"locationName\":\"transitGatewayRouteTableId\"},\"State\":{\"locationName\":\"state\"}}},\"S1g9\":{\"type\":\"structure\",\"members\":{\"InstanceFamily\":{\"locationName\":\"instanceFamily\"},\"CpuCredits\":{\"locationName\":\"cpuCredits\"}}},\"S1gq\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S1gs\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"HostIdSet\":{\"shape\":\"Sus\",\"locationName\":\"hostIdSet\"},\"HostReservationId\":{\"locationName\":\"hostReservationId\"},\"HourlyPrice\":{\"locationName\":\"hourlyPrice\"},\"InstanceFamily\":{\"locationName\":\"instanceFamily\"},\"PaymentOption\":{\"locationName\":\"paymentOption\"},\"UpfrontPrice\":{\"locationName\":\"upfrontPrice\"}}}},\"S1h9\":{\"type\":\"structure\",\"members\":{\"HourlyPrice\":{\"locationName\":\"hourlyPrice\"},\"RemainingTotalValue\":{\"locationName\":\"remainingTotalValue\"},\"RemainingUpfrontValue\":{\"locationName\":\"remainingUpfrontValue\"}}},\"S1i3\":{\"type\":\"structure\",\"members\":{\"Comment\":{},\"UploadEnd\":{\"type\":\"timestamp\"},\"UploadSize\":{\"type\":\"double\"},\"UploadStart\":{\"type\":\"timestamp\"}}},\"S1i6\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{},\"S3Key\":{}}},\"S1id\":{\"type\":\"structure\",\"required\":[\"Bytes\",\"Format\",\"ImportManifestUrl\"],\"members\":{\"Bytes\":{\"locationName\":\"bytes\",\"type\":\"long\"},\"Format\":{\"locationName\":\"format\"},\"ImportManifestUrl\":{\"locationName\":\"importManifestUrl\"}}},\"S1ie\":{\"type\":\"structure\",\"required\":[\"Size\"],\"members\":{\"Size\":{\"locationName\":\"size\",\"type\":\"long\"}}},\"S1j7\":{\"type\":\"list\",\"member\":{\"locationName\":\"UserId\"}},\"S1j8\":{\"type\":\"list\",\"member\":{\"locationName\":\"UserGroup\"}},\"S1j9\":{\"type\":\"list\",\"member\":{\"locationName\":\"ProductCode\"}},\"S1jb\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"Group\":{},\"UserId\":{}}}},\"S1jg\":{\"type\":\"list\",\"member\":{\"shape\":\"S17\",\"locationName\":\"item\"}},\"S1jr\":{\"type\":\"structure\",\"members\":{\"CapacityReservationPreference\":{},\"CapacityReservationTarget\":{\"shape\":\"Sb9\"}}},\"S1lm\":{\"type\":\"structure\",\"members\":{\"AllowDnsResolutionFromRemoteVpc\":{\"type\":\"boolean\"},\"AllowEgressFromLocalClassicLinkToRemoteVpc\":{\"type\":\"boolean\"},\"AllowEgressFromLocalVpcToRemoteClassicLink\":{\"type\":\"boolean\"}}},\"S1lo\":{\"type\":\"structure\",\"members\":{\"AllowDnsResolutionFromRemoteVpc\":{\"locationName\":\"allowDnsResolutionFromRemoteVpc\",\"type\":\"boolean\"},\"AllowEgressFromLocalClassicLinkToRemoteVpc\":{\"locationName\":\"allowEgressFromLocalClassicLinkToRemoteVpc\",\"type\":\"boolean\"},\"AllowEgressFromLocalVpcToRemoteClassicLink\":{\"locationName\":\"allowEgressFromLocalVpcToRemoteClassicLink\",\"type\":\"boolean\"}}},\"S1m3\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"InstanceId\":{\"locationName\":\"instanceId\"},\"Monitoring\":{\"shape\":\"S10d\",\"locationName\":\"monitoring\"}}}},\"S1p6\":{\"type\":\"list\",\"member\":{\"locationName\":\"SecurityGroupId\"}},\"S1pu\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\",\"type\":\"structure\",\"members\":{\"CurrentState\":{\"shape\":\"Sx6\",\"locationName\":\"currentState\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"PreviousState\":{\"shape\":\"Sx6\",\"locationName\":\"previousState\"}}}}}}");

/***/ }),

/***/ 32127:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAccountAttributes\":{\"result_key\":\"AccountAttributes\"},\"DescribeAddresses\":{\"result_key\":\"Addresses\"},\"DescribeAddressesAttribute\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Addresses\"},\"DescribeAvailabilityZones\":{\"result_key\":\"AvailabilityZones\"},\"DescribeBundleTasks\":{\"result_key\":\"BundleTasks\"},\"DescribeByoipCidrs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ByoipCidrs\"},\"DescribeCapacityReservations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CapacityReservations\"},\"DescribeCarrierGateways\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CarrierGateways\"},\"DescribeClassicLinkInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Instances\"},\"DescribeClientVpnAuthorizationRules\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AuthorizationRules\"},\"DescribeClientVpnConnections\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Connections\"},\"DescribeClientVpnEndpoints\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ClientVpnEndpoints\"},\"DescribeClientVpnRoutes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Routes\"},\"DescribeClientVpnTargetNetworks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ClientVpnTargetNetworks\"},\"DescribeCoipPools\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CoipPools\"},\"DescribeConversionTasks\":{\"result_key\":\"ConversionTasks\"},\"DescribeCustomerGateways\":{\"result_key\":\"CustomerGateways\"},\"DescribeDhcpOptions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DhcpOptions\"},\"DescribeEgressOnlyInternetGateways\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"EgressOnlyInternetGateways\"},\"DescribeExportImageTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ExportImageTasks\"},\"DescribeExportTasks\":{\"result_key\":\"ExportTasks\"},\"DescribeFastSnapshotRestores\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"FastSnapshotRestores\"},\"DescribeFleets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Fleets\"},\"DescribeFlowLogs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"FlowLogs\"},\"DescribeFpgaImages\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"FpgaImages\"},\"DescribeHostReservationOfferings\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"OfferingSet\"},\"DescribeHostReservations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"HostReservationSet\"},\"DescribeHosts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Hosts\"},\"DescribeIamInstanceProfileAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"IamInstanceProfileAssociations\"},\"DescribeImages\":{\"result_key\":\"Images\"},\"DescribeImportImageTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ImportImageTasks\"},\"DescribeImportSnapshotTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ImportSnapshotTasks\"},\"DescribeInstanceCreditSpecifications\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceCreditSpecifications\"},\"DescribeInstanceStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceStatuses\"},\"DescribeInstanceTypeOfferings\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceTypeOfferings\"},\"DescribeInstanceTypes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceTypes\"},\"DescribeInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Reservations\"},\"DescribeInternetGateways\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InternetGateways\"},\"DescribeIpv6Pools\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Ipv6Pools\"},\"DescribeKeyPairs\":{\"result_key\":\"KeyPairs\"},\"DescribeLaunchTemplateVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LaunchTemplateVersions\"},\"DescribeLaunchTemplates\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LaunchTemplates\"},\"DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LocalGatewayRouteTableVirtualInterfaceGroupAssociations\"},\"DescribeLocalGatewayRouteTableVpcAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LocalGatewayRouteTableVpcAssociations\"},\"DescribeLocalGatewayRouteTables\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LocalGatewayRouteTables\"},\"DescribeLocalGatewayVirtualInterfaceGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LocalGatewayVirtualInterfaceGroups\"},\"DescribeLocalGatewayVirtualInterfaces\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LocalGatewayVirtualInterfaces\"},\"DescribeLocalGateways\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"LocalGateways\"},\"DescribeManagedPrefixLists\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PrefixLists\"},\"DescribeMovingAddresses\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"MovingAddressStatuses\"},\"DescribeNatGateways\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NatGateways\"},\"DescribeNetworkAcls\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NetworkAcls\"},\"DescribeNetworkInsightsAnalyses\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NetworkInsightsAnalyses\"},\"DescribeNetworkInsightsPaths\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NetworkInsightsPaths\"},\"DescribeNetworkInterfacePermissions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NetworkInterfacePermissions\"},\"DescribeNetworkInterfaces\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"NetworkInterfaces\"},\"DescribePlacementGroups\":{\"result_key\":\"PlacementGroups\"},\"DescribePrefixLists\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PrefixLists\"},\"DescribePrincipalIdFormat\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Principals\"},\"DescribePublicIpv4Pools\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PublicIpv4Pools\"},\"DescribeRegions\":{\"result_key\":\"Regions\"},\"DescribeReplaceRootVolumeTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ReplaceRootVolumeTasks\"},\"DescribeReservedInstances\":{\"result_key\":\"ReservedInstances\"},\"DescribeReservedInstancesListings\":{\"result_key\":\"ReservedInstancesListings\"},\"DescribeReservedInstancesModifications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"ReservedInstancesModifications\"},\"DescribeReservedInstancesOfferings\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ReservedInstancesOfferings\"},\"DescribeRouteTables\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"RouteTables\"},\"DescribeScheduledInstanceAvailability\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScheduledInstanceAvailabilitySet\"},\"DescribeScheduledInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScheduledInstanceSet\"},\"DescribeSecurityGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SecurityGroups\"},\"DescribeSnapshots\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Snapshots\"},\"DescribeSpotFleetRequests\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SpotFleetRequestConfigs\"},\"DescribeSpotInstanceRequests\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SpotInstanceRequests\"},\"DescribeSpotPriceHistory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SpotPriceHistory\"},\"DescribeStaleSecurityGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"StaleSecurityGroupSet\"},\"DescribeStoreImageTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"StoreImageTaskResults\"},\"DescribeSubnets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Subnets\"},\"DescribeTags\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"},\"DescribeTrafficMirrorFilters\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TrafficMirrorFilters\"},\"DescribeTrafficMirrorSessions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TrafficMirrorSessions\"},\"DescribeTrafficMirrorTargets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TrafficMirrorTargets\"},\"DescribeTransitGatewayAttachments\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayAttachments\"},\"DescribeTransitGatewayConnectPeers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayConnectPeers\"},\"DescribeTransitGatewayConnects\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayConnects\"},\"DescribeTransitGatewayMulticastDomains\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayMulticastDomains\"},\"DescribeTransitGatewayPeeringAttachments\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayPeeringAttachments\"},\"DescribeTransitGatewayRouteTables\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayRouteTables\"},\"DescribeTransitGatewayVpcAttachments\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayVpcAttachments\"},\"DescribeTransitGateways\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGateways\"},\"DescribeVolumeStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"VolumeStatuses\"},\"DescribeVolumes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Volumes\"},\"DescribeVolumesModifications\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"VolumesModifications\"},\"DescribeVpcClassicLinkDnsSupport\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Vpcs\"},\"DescribeVpcEndpointConnectionNotifications\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ConnectionNotificationSet\"},\"DescribeVpcEndpointConnections\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"VpcEndpointConnections\"},\"DescribeVpcEndpointServiceConfigurations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ServiceConfigurations\"},\"DescribeVpcEndpointServicePermissions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AllowedPrincipals\"},\"DescribeVpcEndpoints\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"VpcEndpoints\"},\"DescribeVpcPeeringConnections\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"VpcPeeringConnections\"},\"DescribeVpcs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Vpcs\"},\"DescribeVpnConnections\":{\"result_key\":\"VpnConnections\"},\"DescribeVpnGateways\":{\"result_key\":\"VpnGateways\"},\"GetAssociatedIpv6PoolCidrs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Ipv6CidrAssociations\"},\"GetGroupsForCapacityReservation\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CapacityReservationGroups\"},\"GetManagedPrefixListAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PrefixListAssociations\"},\"GetManagedPrefixListEntries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Entries\"},\"GetTransitGatewayAttachmentPropagations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayAttachmentPropagations\"},\"GetTransitGatewayMulticastDomainAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"MulticastDomainAssociations\"},\"GetTransitGatewayPrefixListReferences\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayPrefixListReferences\"},\"GetTransitGatewayRouteTableAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Associations\"},\"GetTransitGatewayRouteTablePropagations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"TransitGatewayRouteTablePropagations\"},\"SearchLocalGatewayRoutes\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Routes\"},\"SearchTransitGatewayMulticastGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"MulticastGroups\"}}}");

/***/ }),

/***/ 90157:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"InstanceExists\":{\"delay\":5,\"maxAttempts\":40,\"operation\":\"DescribeInstances\",\"acceptors\":[{\"matcher\":\"path\",\"expected\":true,\"argument\":\"length(Reservations[]) > `0`\",\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"InvalidInstanceID.NotFound\",\"state\":\"retry\"}]},\"BundleTaskComplete\":{\"delay\":15,\"operation\":\"DescribeBundleTasks\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"complete\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"BundleTasks[].State\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"BundleTasks[].State\"}]},\"ConversionTaskCancelled\":{\"delay\":15,\"operation\":\"DescribeConversionTasks\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"cancelled\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"ConversionTasks[].State\"}]},\"ConversionTaskCompleted\":{\"delay\":15,\"operation\":\"DescribeConversionTasks\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"completed\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"ConversionTasks[].State\"},{\"expected\":\"cancelled\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"ConversionTasks[].State\"},{\"expected\":\"cancelling\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"ConversionTasks[].State\"}]},\"ConversionTaskDeleted\":{\"delay\":15,\"operation\":\"DescribeConversionTasks\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"ConversionTasks[].State\"}]},\"CustomerGatewayAvailable\":{\"delay\":15,\"operation\":\"DescribeCustomerGateways\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"CustomerGateways[].State\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"CustomerGateways[].State\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"CustomerGateways[].State\"}]},\"ExportTaskCancelled\":{\"delay\":15,\"operation\":\"DescribeExportTasks\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"cancelled\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"ExportTasks[].State\"}]},\"ExportTaskCompleted\":{\"delay\":15,\"operation\":\"DescribeExportTasks\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"completed\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"ExportTasks[].State\"}]},\"ImageExists\":{\"operation\":\"DescribeImages\",\"maxAttempts\":40,\"delay\":15,\"acceptors\":[{\"matcher\":\"path\",\"expected\":true,\"argument\":\"length(Images[]) > `0`\",\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"InvalidAMIID.NotFound\",\"state\":\"retry\"}]},\"ImageAvailable\":{\"operation\":\"DescribeImages\",\"maxAttempts\":40,\"delay\":15,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Images[].State\",\"expected\":\"available\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"Images[].State\",\"expected\":\"failed\"}]},\"InstanceRunning\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"running\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"shutting-down\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"terminated\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"stopping\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"matcher\":\"error\",\"expected\":\"InvalidInstanceID.NotFound\",\"state\":\"retry\"}]},\"InstanceStatusOk\":{\"operation\":\"DescribeInstanceStatus\",\"maxAttempts\":40,\"delay\":15,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"InstanceStatuses[].InstanceStatus.Status\",\"expected\":\"ok\"},{\"matcher\":\"error\",\"expected\":\"InvalidInstanceID.NotFound\",\"state\":\"retry\"}]},\"InstanceStopped\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"stopped\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"pending\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"terminated\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"}]},\"InstanceTerminated\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"terminated\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"pending\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"},{\"expected\":\"stopping\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Reservations[].Instances[].State.Name\"}]},\"KeyPairExists\":{\"operation\":\"DescribeKeyPairs\",\"delay\":5,\"maxAttempts\":6,\"acceptors\":[{\"expected\":true,\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"length(KeyPairs[].KeyName) > `0`\"},{\"expected\":\"InvalidKeyPair.NotFound\",\"matcher\":\"error\",\"state\":\"retry\"}]},\"NatGatewayAvailable\":{\"operation\":\"DescribeNatGateways\",\"delay\":15,\"maxAttempts\":40,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"NatGateways[].State\",\"expected\":\"available\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"NatGateways[].State\",\"expected\":\"failed\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"NatGateways[].State\",\"expected\":\"deleting\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"NatGateways[].State\",\"expected\":\"deleted\"},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"NatGatewayNotFound\"}]},\"NetworkInterfaceAvailable\":{\"operation\":\"DescribeNetworkInterfaces\",\"delay\":20,\"maxAttempts\":10,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"NetworkInterfaces[].Status\"},{\"expected\":\"InvalidNetworkInterfaceID.NotFound\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"PasswordDataAvailable\":{\"operation\":\"GetPasswordData\",\"maxAttempts\":40,\"delay\":15,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"length(PasswordData) > `0`\",\"expected\":true}]},\"SnapshotCompleted\":{\"delay\":15,\"operation\":\"DescribeSnapshots\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"completed\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Snapshots[].State\"}]},\"SecurityGroupExists\":{\"operation\":\"DescribeSecurityGroups\",\"delay\":5,\"maxAttempts\":6,\"acceptors\":[{\"expected\":true,\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"length(SecurityGroups[].GroupId) > `0`\"},{\"expected\":\"InvalidGroup.NotFound\",\"matcher\":\"error\",\"state\":\"retry\"}]},\"SpotInstanceRequestFulfilled\":{\"operation\":\"DescribeSpotInstanceRequests\",\"maxAttempts\":40,\"delay\":15,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"SpotInstanceRequests[].Status.Code\",\"expected\":\"fulfilled\"},{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"SpotInstanceRequests[].Status.Code\",\"expected\":\"request-canceled-and-instance-running\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"SpotInstanceRequests[].Status.Code\",\"expected\":\"schedule-expired\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"SpotInstanceRequests[].Status.Code\",\"expected\":\"canceled-before-fulfillment\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"SpotInstanceRequests[].Status.Code\",\"expected\":\"bad-parameters\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"SpotInstanceRequests[].Status.Code\",\"expected\":\"system-error\"},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"InvalidSpotInstanceRequestID.NotFound\"}]},\"SubnetAvailable\":{\"delay\":15,\"operation\":\"DescribeSubnets\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Subnets[].State\"}]},\"SystemStatusOk\":{\"operation\":\"DescribeInstanceStatus\",\"maxAttempts\":40,\"delay\":15,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"InstanceStatuses[].SystemStatus.Status\",\"expected\":\"ok\"}]},\"VolumeAvailable\":{\"delay\":15,\"operation\":\"DescribeVolumes\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Volumes[].State\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Volumes[].State\"}]},\"VolumeDeleted\":{\"delay\":15,\"operation\":\"DescribeVolumes\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Volumes[].State\"},{\"matcher\":\"error\",\"expected\":\"InvalidVolume.NotFound\",\"state\":\"success\"}]},\"VolumeInUse\":{\"delay\":15,\"operation\":\"DescribeVolumes\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"in-use\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Volumes[].State\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Volumes[].State\"}]},\"VpcAvailable\":{\"delay\":15,\"operation\":\"DescribeVpcs\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Vpcs[].State\"}]},\"VpcExists\":{\"operation\":\"DescribeVpcs\",\"delay\":1,\"maxAttempts\":5,\"acceptors\":[{\"matcher\":\"status\",\"expected\":200,\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"InvalidVpcID.NotFound\",\"state\":\"retry\"}]},\"VpnConnectionAvailable\":{\"delay\":15,\"operation\":\"DescribeVpnConnections\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"VpnConnections[].State\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"VpnConnections[].State\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"VpnConnections[].State\"}]},\"VpnConnectionDeleted\":{\"delay\":15,\"operation\":\"DescribeVpnConnections\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"VpnConnections[].State\"},{\"expected\":\"pending\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"VpnConnections[].State\"}]},\"VpcPeeringConnectionExists\":{\"delay\":15,\"operation\":\"DescribeVpcPeeringConnections\",\"maxAttempts\":40,\"acceptors\":[{\"matcher\":\"status\",\"expected\":200,\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"InvalidVpcPeeringConnectionID.NotFound\",\"state\":\"retry\"}]},\"VpcPeeringConnectionDeleted\":{\"delay\":15,\"operation\":\"DescribeVpcPeeringConnections\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"VpcPeeringConnections[].Status.Code\"},{\"matcher\":\"error\",\"expected\":\"InvalidVpcPeeringConnectionID.NotFound\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 14703:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-04-02\",\"endpointPrefix\":\"ec2-instance-connect\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"EC2 Instance Connect\",\"serviceFullName\":\"AWS EC2 Instance Connect\",\"serviceId\":\"EC2 Instance Connect\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSEC2InstanceConnectService\",\"uid\":\"ec2-instance-connect-2018-04-02\"},\"operations\":{\"SendSSHPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"InstanceOSUser\",\"SSHPublicKey\",\"AvailabilityZone\"],\"members\":{\"InstanceId\":{},\"InstanceOSUser\":{},\"SSHPublicKey\":{},\"AvailabilityZone\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Success\":{\"type\":\"boolean\"}}}},\"SendSerialConsoleSSHPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"SSHPublicKey\"],\"members\":{\"InstanceId\":{},\"SerialPort\":{\"type\":\"integer\"},\"SSHPublicKey\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Success\":{\"type\":\"boolean\"}}}}},\"shapes\":{}}");

/***/ }),

/***/ 73353:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 80948:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-09-21\",\"endpointPrefix\":\"api.ecr\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon ECR\",\"serviceFullName\":\"Amazon EC2 Container Registry\",\"serviceId\":\"ECR\",\"signatureVersion\":\"v4\",\"signingName\":\"ecr\",\"targetPrefix\":\"AmazonEC2ContainerRegistry_V20150921\",\"uid\":\"ecr-2015-09-21\"},\"operations\":{\"BatchCheckLayerAvailability\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"layerDigests\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"layerDigests\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"layers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"layerDigest\":{},\"layerAvailability\":{},\"layerSize\":{\"type\":\"long\"},\"mediaType\":{}}}},\"failures\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"layerDigest\":{},\"failureCode\":{},\"failureReason\":{}}}}}}},\"BatchDeleteImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageIds\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageIds\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"imageIds\":{\"shape\":\"Si\"},\"failures\":{\"shape\":\"Sn\"}}}},\"BatchGetImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageIds\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageIds\":{\"shape\":\"Si\"},\"acceptedMediaTypes\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"images\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"failures\":{\"shape\":\"Sn\"}}}},\"CompleteLayerUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"uploadId\",\"layerDigests\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"layerDigests\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"layerDigest\":{}}}},\"CreateRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"tags\":{\"shape\":\"S12\"},\"imageTagMutability\":{},\"imageScanningConfiguration\":{\"shape\":\"S17\"},\"encryptionConfiguration\":{\"shape\":\"S19\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S1d\"}}}},\"DeleteLifecyclePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{},\"lastEvaluatedAt\":{\"type\":\"timestamp\"}}}},\"DeleteRegistryPolicy\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"policyText\":{}}}},\"DeleteRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S1d\"}}}},\"DeleteRepositoryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{}}}},\"DescribeImageScanFindings\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageId\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageId\":{\"shape\":\"Sj\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageId\":{\"shape\":\"Sj\"},\"imageScanStatus\":{\"shape\":\"S1y\"},\"imageScanFindings\":{\"type\":\"structure\",\"members\":{\"imageScanCompletedAt\":{\"type\":\"timestamp\"},\"vulnerabilitySourceUpdatedAt\":{\"type\":\"timestamp\"},\"findings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"uri\":{},\"severity\":{},\"attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"value\":{}}}}}}},\"findingSeverityCounts\":{\"shape\":\"S2d\"}}},\"nextToken\":{}}}},\"DescribeImages\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageIds\":{\"shape\":\"Si\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filter\":{\"type\":\"structure\",\"members\":{\"tagStatus\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"imageDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageDigest\":{},\"imageTags\":{\"shape\":\"S2l\"},\"imageSizeInBytes\":{\"type\":\"long\"},\"imagePushedAt\":{\"type\":\"timestamp\"},\"imageScanStatus\":{\"shape\":\"S1y\"},\"imageScanFindingsSummary\":{\"type\":\"structure\",\"members\":{\"imageScanCompletedAt\":{\"type\":\"timestamp\"},\"vulnerabilitySourceUpdatedAt\":{\"type\":\"timestamp\"},\"findingSeverityCounts\":{\"shape\":\"S2d\"}}},\"imageManifestMediaType\":{},\"artifactMediaType\":{}}}},\"nextToken\":{}}}},\"DescribeRegistry\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"replicationConfiguration\":{\"shape\":\"S2r\"}}}},\"DescribeRepositories\":{\"input\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryNames\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositories\":{\"type\":\"list\",\"member\":{\"shape\":\"S1d\"}},\"nextToken\":{}}}},\"GetAuthorizationToken\":{\"input\":{\"type\":\"structure\",\"members\":{\"registryIds\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated. The returned authorization token can be used to access any Amazon ECR registry that the IAM principal has access to, specifying a registry ID doesn't change the permissions scope of the authorization token.\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizationData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"authorizationToken\":{},\"expiresAt\":{\"type\":\"timestamp\"},\"proxyEndpoint\":{}}}}}}},\"GetDownloadUrlForLayer\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"layerDigest\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"layerDigest\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"downloadUrl\":{},\"layerDigest\":{}}}},\"GetLifecyclePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{},\"lastEvaluatedAt\":{\"type\":\"timestamp\"}}}},\"GetLifecyclePolicyPreview\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageIds\":{\"shape\":\"Si\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filter\":{\"type\":\"structure\",\"members\":{\"tagStatus\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{},\"status\":{},\"nextToken\":{},\"previewResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"imageTags\":{\"shape\":\"S2l\"},\"imageDigest\":{},\"imagePushedAt\":{\"type\":\"timestamp\"},\"action\":{\"type\":\"structure\",\"members\":{\"type\":{}}},\"appliedRulePriority\":{\"type\":\"integer\"}}}},\"summary\":{\"type\":\"structure\",\"members\":{\"expiringImageTotalCount\":{\"type\":\"integer\"}}}}}},\"GetRegistryPolicy\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"policyText\":{}}}},\"GetRepositoryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{}}}},\"InitiateLayerUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"uploadId\":{},\"partSize\":{\"type\":\"long\"}}}},\"ListImages\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filter\":{\"type\":\"structure\",\"members\":{\"tagStatus\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"imageIds\":{\"shape\":\"Si\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S12\"}}}},\"PutImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageManifest\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageManifest\":{},\"imageManifestMediaType\":{},\"imageTag\":{},\"imageDigest\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"image\":{\"shape\":\"Sv\"}}}},\"PutImageScanningConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageScanningConfiguration\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageScanningConfiguration\":{\"shape\":\"S17\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageScanningConfiguration\":{\"shape\":\"S17\"}}}},\"PutImageTagMutability\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageTagMutability\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageTagMutability\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageTagMutability\":{}}}},\"PutLifecyclePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"lifecyclePolicyText\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{}}}},\"PutRegistryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"policyText\"],\"members\":{\"policyText\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"policyText\":{}}}},\"PutReplicationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"replicationConfiguration\"],\"members\":{\"replicationConfiguration\":{\"shape\":\"S2r\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"replicationConfiguration\":{\"shape\":\"S2r\"}}}},\"SetRepositoryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"policyText\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{}}}},\"StartImageScan\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageId\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageId\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageId\":{\"shape\":\"Sj\"},\"imageScanStatus\":{\"shape\":\"S1y\"}}}},\"StartLifecyclePolicyPreview\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"lifecyclePolicyText\":{},\"status\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UploadLayerPart\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"uploadId\",\"partFirstByte\",\"partLastByte\",\"layerPartBlob\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"partFirstByte\":{\"type\":\"long\"},\"partLastByte\":{\"type\":\"long\"},\"layerPartBlob\":{\"type\":\"blob\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"lastByteReceived\":{\"type\":\"long\"}}}}},\"shapes\":{\"Si\":{\"type\":\"list\",\"member\":{\"shape\":\"Sj\"}},\"Sj\":{\"type\":\"structure\",\"members\":{\"imageDigest\":{},\"imageTag\":{}}},\"Sn\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"imageId\":{\"shape\":\"Sj\"},\"failureCode\":{},\"failureReason\":{}}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageId\":{\"shape\":\"Sj\"},\"imageManifest\":{},\"imageManifestMediaType\":{}}},\"S12\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S17\":{\"type\":\"structure\",\"members\":{\"scanOnPush\":{\"type\":\"boolean\"}}},\"S19\":{\"type\":\"structure\",\"required\":[\"encryptionType\"],\"members\":{\"encryptionType\":{},\"kmsKey\":{}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"repositoryArn\":{},\"registryId\":{},\"repositoryName\":{},\"repositoryUri\":{},\"createdAt\":{\"type\":\"timestamp\"},\"imageTagMutability\":{},\"imageScanningConfiguration\":{\"shape\":\"S17\"},\"encryptionConfiguration\":{\"shape\":\"S19\"}}},\"S1y\":{\"type\":\"structure\",\"members\":{\"status\":{},\"description\":{}}},\"S2d\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"S2l\":{\"type\":\"list\",\"member\":{}},\"S2r\":{\"type\":\"structure\",\"required\":[\"rules\"],\"members\":{\"rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"destinations\"],\"members\":{\"destinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"region\",\"registryId\"],\"members\":{\"region\":{},\"registryId\":{}}}}}}}}}}}");

/***/ }),

/***/ 66855:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeImageScanFindings\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"non_aggregate_keys\":[\"registryId\",\"repositoryName\",\"imageId\",\"imageScanStatus\",\"imageScanFindings\"],\"output_token\":\"nextToken\",\"result_key\":\"imageScanFindings.findings\"},\"DescribeImages\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"imageDetails\"},\"DescribeRepositories\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"repositories\"},\"GetLifecyclePolicyPreview\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"non_aggregate_keys\":[\"registryId\",\"repositoryName\",\"lifecyclePolicyText\",\"status\",\"summary\"],\"output_token\":\"nextToken\",\"result_key\":\"previewResults\"},\"ListImages\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"imageIds\"}}}");

/***/ }),

/***/ 69800:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ImageScanComplete\":{\"description\":\"Wait until an image scan is complete and findings can be accessed\",\"operation\":\"DescribeImageScanFindings\",\"delay\":5,\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"imageScanStatus.status\",\"expected\":\"COMPLETE\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"imageScanStatus.status\",\"expected\":\"FAILED\"}]},\"LifecyclePolicyPreviewComplete\":{\"description\":\"Wait until a lifecycle policy preview request is complete and results can be accessed\",\"operation\":\"GetLifecyclePolicyPreview\",\"delay\":5,\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"status\",\"expected\":\"COMPLETE\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"status\",\"expected\":\"FAILED\"}]}}}");

/***/ }),

/***/ 82416:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-10-30\",\"endpointPrefix\":\"api.ecr-public\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon ECR Public\",\"serviceFullName\":\"Amazon Elastic Container Registry Public\",\"serviceId\":\"ECR PUBLIC\",\"signatureVersion\":\"v4\",\"signingName\":\"ecr-public\",\"targetPrefix\":\"SpencerFrontendService\",\"uid\":\"ecr-public-2020-10-30\"},\"operations\":{\"BatchCheckLayerAvailability\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"layerDigests\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"layerDigests\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"layers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"layerDigest\":{},\"layerAvailability\":{},\"layerSize\":{\"type\":\"long\"},\"mediaType\":{}}}},\"failures\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"layerDigest\":{},\"failureCode\":{},\"failureReason\":{}}}}}}},\"BatchDeleteImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageIds\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageIds\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"imageIds\":{\"shape\":\"Sj\"},\"failures\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"imageId\":{\"shape\":\"Sk\"},\"failureCode\":{},\"failureReason\":{}}}}}}},\"CompleteLayerUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"uploadId\",\"layerDigests\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"layerDigests\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"layerDigest\":{}}}},\"CreateRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"repositoryName\":{},\"catalogData\":{\"shape\":\"Sx\"},\"tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S1b\"},\"catalogData\":{\"shape\":\"S1f\"}}}},\"DeleteRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repository\":{\"shape\":\"S1b\"}}}},\"DeleteRepositoryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{}}}},\"DescribeImageTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"imageTagDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"imageTag\":{},\"createdAt\":{\"type\":\"timestamp\"},\"imageDetail\":{\"type\":\"structure\",\"members\":{\"imageDigest\":{},\"imageSizeInBytes\":{\"type\":\"long\"},\"imagePushedAt\":{\"type\":\"timestamp\"},\"imageManifestMediaType\":{},\"artifactMediaType\":{}}}}}},\"nextToken\":{}}}},\"DescribeImages\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageIds\":{\"shape\":\"Sj\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"imageDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageDigest\":{},\"imageTags\":{\"type\":\"list\",\"member\":{}},\"imageSizeInBytes\":{\"type\":\"long\"},\"imagePushedAt\":{\"type\":\"timestamp\"},\"imageManifestMediaType\":{},\"artifactMediaType\":{}}}},\"nextToken\":{}}}},\"DescribeRegistries\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"registries\"],\"members\":{\"registries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"registryId\",\"registryArn\",\"registryUri\",\"verified\",\"aliases\"],\"members\":{\"registryId\":{},\"registryArn\":{},\"registryUri\":{},\"verified\":{\"type\":\"boolean\"},\"aliases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"status\",\"primaryRegistryAlias\",\"defaultRegistryAlias\"],\"members\":{\"name\":{},\"status\":{},\"primaryRegistryAlias\":{\"type\":\"boolean\"},\"defaultRegistryAlias\":{\"type\":\"boolean\"}}}}}}},\"nextToken\":{}}}},\"DescribeRepositories\":{\"input\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryNames\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"repositories\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}},\"nextToken\":{}}}},\"GetAuthorizationToken\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizationData\":{\"type\":\"structure\",\"members\":{\"authorizationToken\":{},\"expiresAt\":{\"type\":\"timestamp\"}}}}}},\"GetRegistryCatalogData\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"registryCatalogData\"],\"members\":{\"registryCatalogData\":{\"shape\":\"S2o\"}}}},\"GetRepositoryCatalogData\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"catalogData\":{\"shape\":\"S1f\"}}}},\"GetRepositoryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{}}}},\"InitiateLayerUpload\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\"],\"members\":{\"registryId\":{},\"repositoryName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"uploadId\":{},\"partSize\":{\"type\":\"long\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S16\"}}}},\"PutImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"imageManifest\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageManifest\":{},\"imageManifestMediaType\":{},\"imageTag\":{},\"imageDigest\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"image\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"imageId\":{\"shape\":\"Sk\"},\"imageManifest\":{},\"imageManifestMediaType\":{}}}}}},\"PutRegistryCatalogData\":{\"input\":{\"type\":\"structure\",\"members\":{\"displayName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"registryCatalogData\"],\"members\":{\"registryCatalogData\":{\"shape\":\"S2o\"}}}},\"PutRepositoryCatalogData\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"catalogData\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"catalogData\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"catalogData\":{\"shape\":\"S1f\"}}}},\"SetRepositoryPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"policyText\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"policyText\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UploadLayerPart\":{\"input\":{\"type\":\"structure\",\"required\":[\"repositoryName\",\"uploadId\",\"partFirstByte\",\"partLastByte\",\"layerPartBlob\"],\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"partFirstByte\":{\"type\":\"long\"},\"partLastByte\":{\"type\":\"long\"},\"layerPartBlob\":{\"type\":\"blob\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"registryId\":{},\"repositoryName\":{},\"uploadId\":{},\"lastByteReceived\":{\"type\":\"long\"}}}}},\"shapes\":{\"Sj\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}},\"Sk\":{\"type\":\"structure\",\"members\":{\"imageDigest\":{},\"imageTag\":{}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"description\":{},\"architectures\":{\"shape\":\"Sz\"},\"operatingSystems\":{\"shape\":\"S11\"},\"logoImageBlob\":{\"type\":\"blob\"},\"aboutText\":{},\"usageText\":{}}},\"Sz\":{\"type\":\"list\",\"member\":{}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S16\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"repositoryArn\":{},\"registryId\":{},\"repositoryName\":{},\"repositoryUri\":{},\"createdAt\":{\"type\":\"timestamp\"}}},\"S1f\":{\"type\":\"structure\",\"members\":{\"description\":{},\"architectures\":{\"shape\":\"Sz\"},\"operatingSystems\":{\"shape\":\"S11\"},\"logoUrl\":{},\"aboutText\":{},\"usageText\":{},\"marketplaceCertified\":{\"type\":\"boolean\"}}},\"S2o\":{\"type\":\"structure\",\"members\":{\"displayName\":{}}}}}");

/***/ }),

/***/ 41518:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeImageTags\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"imageTagDetails\"},\"DescribeImages\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"imageDetails\"},\"DescribeRegistries\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"registries\"},\"DescribeRepositories\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"repositories\"}}}");

/***/ }),

/***/ 68155:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-11-13\",\"endpointPrefix\":\"ecs\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon ECS\",\"serviceFullName\":\"Amazon EC2 Container Service\",\"serviceId\":\"ECS\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AmazonEC2ContainerServiceV20141113\",\"uid\":\"ecs-2014-11-13\"},\"operations\":{\"CreateCapacityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"autoScalingGroupProvider\"],\"members\":{\"name\":{},\"autoScalingGroupProvider\":{\"shape\":\"S3\"},\"tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"capacityProvider\":{\"shape\":\"Sf\"}}}},\"CreateCluster\":{\"input\":{\"type\":\"structure\",\"members\":{\"clusterName\":{},\"tags\":{\"shape\":\"Sa\"},\"settings\":{\"shape\":\"Sj\"},\"configuration\":{\"shape\":\"Sm\"},\"capacityProviders\":{\"shape\":\"Sr\"},\"defaultCapacityProviderStrategy\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"Sx\"}}}},\"CreateService\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\"],\"members\":{\"cluster\":{},\"serviceName\":{},\"taskDefinition\":{},\"loadBalancers\":{\"shape\":\"S15\"},\"serviceRegistries\":{\"shape\":\"S18\"},\"desiredCount\":{\"type\":\"integer\"},\"clientToken\":{},\"launchType\":{},\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"platformVersion\":{},\"role\":{},\"deploymentConfiguration\":{\"shape\":\"S1b\"},\"placementConstraints\":{\"shape\":\"S1d\"},\"placementStrategy\":{\"shape\":\"S1g\"},\"networkConfiguration\":{\"shape\":\"S1j\"},\"healthCheckGracePeriodSeconds\":{\"type\":\"integer\"},\"schedulingStrategy\":{},\"deploymentController\":{\"shape\":\"S1n\"},\"tags\":{\"shape\":\"Sa\"},\"enableECSManagedTags\":{\"type\":\"boolean\"},\"propagateTags\":{},\"enableExecuteCommand\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"service\":{\"shape\":\"S1r\"}}}},\"CreateTaskSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"service\",\"cluster\",\"taskDefinition\"],\"members\":{\"service\":{},\"cluster\":{},\"externalId\":{},\"taskDefinition\":{},\"networkConfiguration\":{\"shape\":\"S1j\"},\"loadBalancers\":{\"shape\":\"S15\"},\"serviceRegistries\":{\"shape\":\"S18\"},\"launchType\":{},\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"platformVersion\":{},\"scale\":{\"shape\":\"S1v\"},\"clientToken\":{},\"tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskSet\":{\"shape\":\"S1t\"}}}},\"DeleteAccountSetting\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"principalArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"setting\":{\"shape\":\"S29\"}}}},\"DeleteAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"attributes\"],\"members\":{\"cluster\":{},\"attributes\":{\"shape\":\"S2b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"shape\":\"S2b\"}}}},\"DeleteCapacityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"capacityProvider\"],\"members\":{\"capacityProvider\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"capacityProvider\":{\"shape\":\"Sf\"}}}},\"DeleteCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\"],\"members\":{\"cluster\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"Sx\"}}}},\"DeleteService\":{\"input\":{\"type\":\"structure\",\"required\":[\"service\"],\"members\":{\"cluster\":{},\"service\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"service\":{\"shape\":\"S1r\"}}}},\"DeleteTaskSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\",\"service\",\"taskSet\"],\"members\":{\"cluster\":{},\"service\":{},\"taskSet\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskSet\":{\"shape\":\"S1t\"}}}},\"DeregisterContainerInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"containerInstance\"],\"members\":{\"cluster\":{},\"containerInstance\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerInstance\":{\"shape\":\"S2q\"}}}},\"DeregisterTaskDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskDefinition\"],\"members\":{\"taskDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskDefinition\":{\"shape\":\"S2y\"}}}},\"DescribeCapacityProviders\":{\"input\":{\"type\":\"structure\",\"members\":{\"capacityProviders\":{\"shape\":\"Sr\"},\"include\":{\"type\":\"list\",\"member\":{}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"capacityProviders\":{\"type\":\"list\",\"member\":{\"shape\":\"Sf\"}},\"failures\":{\"shape\":\"S54\"},\"nextToken\":{}}}},\"DescribeClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"clusters\":{\"shape\":\"Sr\"},\"include\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"clusters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\"}},\"failures\":{\"shape\":\"S54\"}}}},\"DescribeContainerInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"containerInstances\"],\"members\":{\"cluster\":{},\"containerInstances\":{\"shape\":\"Sr\"},\"include\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerInstances\":{\"shape\":\"S5f\"},\"failures\":{\"shape\":\"S54\"}}}},\"DescribeServices\":{\"input\":{\"type\":\"structure\",\"required\":[\"services\"],\"members\":{\"cluster\":{},\"services\":{\"shape\":\"Sr\"},\"include\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"services\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}},\"failures\":{\"shape\":\"S54\"}}}},\"DescribeTaskDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskDefinition\"],\"members\":{\"taskDefinition\":{},\"include\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskDefinition\":{\"shape\":\"S2y\"},\"tags\":{\"shape\":\"Sa\"}}}},\"DescribeTaskSets\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\",\"service\"],\"members\":{\"cluster\":{},\"service\":{},\"taskSets\":{\"shape\":\"Sr\"},\"include\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskSets\":{\"shape\":\"S1s\"},\"failures\":{\"shape\":\"S54\"}}}},\"DescribeTasks\":{\"input\":{\"type\":\"structure\",\"required\":[\"tasks\"],\"members\":{\"cluster\":{},\"tasks\":{\"shape\":\"Sr\"},\"include\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"tasks\":{\"shape\":\"S5x\"},\"failures\":{\"shape\":\"S54\"}}}},\"DiscoverPollEndpoint\":{\"input\":{\"type\":\"structure\",\"members\":{\"containerInstance\":{},\"cluster\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"endpoint\":{},\"telemetryEndpoint\":{}}}},\"ExecuteCommand\":{\"input\":{\"type\":\"structure\",\"required\":[\"command\",\"interactive\",\"task\"],\"members\":{\"cluster\":{},\"container\":{},\"command\":{},\"interactive\":{\"type\":\"boolean\"},\"task\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"clusterArn\":{},\"containerArn\":{},\"containerName\":{},\"interactive\":{\"type\":\"boolean\"},\"session\":{\"type\":\"structure\",\"members\":{\"sessionId\":{},\"streamUrl\":{},\"tokenValue\":{\"type\":\"string\",\"sensitive\":true}}},\"taskArn\":{}}}},\"ListAccountSettings\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{},\"principalArn\":{},\"effectiveSettings\":{\"type\":\"boolean\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"settings\":{\"type\":\"list\",\"member\":{\"shape\":\"S29\"}},\"nextToken\":{}}}},\"ListAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"targetType\"],\"members\":{\"cluster\":{},\"targetType\":{},\"attributeName\":{},\"attributeValue\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"shape\":\"S2b\"},\"nextToken\":{}}}},\"ListClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"clusterArns\":{\"shape\":\"Sr\"},\"nextToken\":{}}}},\"ListContainerInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"cluster\":{},\"filter\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerInstanceArns\":{\"shape\":\"Sr\"},\"nextToken\":{}}}},\"ListServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"cluster\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"launchType\":{},\"schedulingStrategy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"serviceArns\":{\"shape\":\"Sr\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sa\"}}}},\"ListTaskDefinitionFamilies\":{\"input\":{\"type\":\"structure\",\"members\":{\"familyPrefix\":{},\"status\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"families\":{\"shape\":\"Sr\"},\"nextToken\":{}}}},\"ListTaskDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"familyPrefix\":{},\"status\":{},\"sort\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskDefinitionArns\":{\"shape\":\"Sr\"},\"nextToken\":{}}}},\"ListTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"cluster\":{},\"containerInstance\":{},\"family\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"startedBy\":{},\"serviceName\":{},\"desiredStatus\":{},\"launchType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskArns\":{\"shape\":\"Sr\"},\"nextToken\":{}}}},\"PutAccountSetting\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{},\"principalArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"setting\":{\"shape\":\"S29\"}}}},\"PutAccountSettingDefault\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"setting\":{\"shape\":\"S29\"}}}},\"PutAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"attributes\"],\"members\":{\"cluster\":{},\"attributes\":{\"shape\":\"S2b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"shape\":\"S2b\"}}}},\"PutClusterCapacityProviders\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\",\"capacityProviders\",\"defaultCapacityProviderStrategy\"],\"members\":{\"cluster\":{},\"capacityProviders\":{\"shape\":\"Sr\"},\"defaultCapacityProviderStrategy\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"Sx\"}}}},\"RegisterContainerInstance\":{\"input\":{\"type\":\"structure\",\"members\":{\"cluster\":{},\"instanceIdentityDocument\":{},\"instanceIdentityDocumentSignature\":{},\"totalResources\":{\"shape\":\"S2t\"},\"versionInfo\":{\"shape\":\"S2s\"},\"containerInstanceArn\":{},\"attributes\":{\"shape\":\"S2b\"},\"platformDevices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"type\"],\"members\":{\"id\":{},\"type\":{}}}},\"tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerInstance\":{\"shape\":\"S2q\"}}}},\"RegisterTaskDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"family\",\"containerDefinitions\"],\"members\":{\"family\":{},\"taskRoleArn\":{},\"executionRoleArn\":{},\"networkMode\":{},\"containerDefinitions\":{\"shape\":\"S2z\"},\"volumes\":{\"shape\":\"S49\"},\"placementConstraints\":{\"shape\":\"S4n\"},\"requiresCompatibilities\":{\"shape\":\"S4q\"},\"cpu\":{},\"memory\":{},\"tags\":{\"shape\":\"Sa\"},\"pidMode\":{},\"ipcMode\":{},\"proxyConfiguration\":{\"shape\":\"S4w\"},\"inferenceAccelerators\":{\"shape\":\"S4s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskDefinition\":{\"shape\":\"S2y\"},\"tags\":{\"shape\":\"Sa\"}}}},\"RunTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskDefinition\"],\"members\":{\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"cluster\":{},\"count\":{\"type\":\"integer\"},\"enableECSManagedTags\":{\"type\":\"boolean\"},\"enableExecuteCommand\":{\"type\":\"boolean\"},\"group\":{},\"launchType\":{},\"networkConfiguration\":{\"shape\":\"S1j\"},\"overrides\":{\"shape\":\"S6b\"},\"placementConstraints\":{\"shape\":\"S1d\"},\"placementStrategy\":{\"shape\":\"S1g\"},\"platformVersion\":{},\"propagateTags\":{},\"referenceId\":{},\"startedBy\":{},\"tags\":{\"shape\":\"Sa\"},\"taskDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tasks\":{\"shape\":\"S5x\"},\"failures\":{\"shape\":\"S54\"}}}},\"StartTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"containerInstances\",\"taskDefinition\"],\"members\":{\"cluster\":{},\"containerInstances\":{\"shape\":\"Sr\"},\"enableECSManagedTags\":{\"type\":\"boolean\"},\"enableExecuteCommand\":{\"type\":\"boolean\"},\"group\":{},\"networkConfiguration\":{\"shape\":\"S1j\"},\"overrides\":{\"shape\":\"S6b\"},\"propagateTags\":{},\"referenceId\":{},\"startedBy\":{},\"tags\":{\"shape\":\"Sa\"},\"taskDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tasks\":{\"shape\":\"S5x\"},\"failures\":{\"shape\":\"S54\"}}}},\"StopTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"task\"],\"members\":{\"cluster\":{},\"task\":{},\"reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"task\":{\"shape\":\"S5y\"}}}},\"SubmitAttachmentStateChanges\":{\"input\":{\"type\":\"structure\",\"required\":[\"attachments\"],\"members\":{\"cluster\":{},\"attachments\":{\"shape\":\"S7w\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"acknowledgment\":{}}}},\"SubmitContainerStateChange\":{\"input\":{\"type\":\"structure\",\"members\":{\"cluster\":{},\"task\":{},\"containerName\":{},\"runtimeId\":{},\"status\":{},\"exitCode\":{\"type\":\"integer\"},\"reason\":{},\"networkBindings\":{\"shape\":\"S62\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"acknowledgment\":{}}}},\"SubmitTaskStateChange\":{\"input\":{\"type\":\"structure\",\"members\":{\"cluster\":{},\"task\":{},\"status\":{},\"reason\":{},\"containers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"containerName\":{},\"imageDigest\":{},\"runtimeId\":{},\"exitCode\":{\"type\":\"integer\"},\"networkBindings\":{\"shape\":\"S62\"},\"reason\":{},\"status\":{}}}},\"attachments\":{\"shape\":\"S7w\"},\"managedAgents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"containerName\",\"managedAgentName\",\"status\"],\"members\":{\"containerName\":{},\"managedAgentName\":{},\"status\":{},\"reason\":{}}}},\"pullStartedAt\":{\"type\":\"timestamp\"},\"pullStoppedAt\":{\"type\":\"timestamp\"},\"executionStoppedAt\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"acknowledgment\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCapacityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"autoScalingGroupProvider\"],\"members\":{\"name\":{},\"autoScalingGroupProvider\":{\"type\":\"structure\",\"members\":{\"managedScaling\":{\"shape\":\"S4\"},\"managedTerminationProtection\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"capacityProvider\":{\"shape\":\"Sf\"}}}},\"UpdateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\"],\"members\":{\"cluster\":{},\"settings\":{\"shape\":\"Sj\"},\"configuration\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"Sx\"}}}},\"UpdateClusterSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\",\"settings\"],\"members\":{\"cluster\":{},\"settings\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"Sx\"}}}},\"UpdateContainerAgent\":{\"input\":{\"type\":\"structure\",\"required\":[\"containerInstance\"],\"members\":{\"cluster\":{},\"containerInstance\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerInstance\":{\"shape\":\"S2q\"}}}},\"UpdateContainerInstancesState\":{\"input\":{\"type\":\"structure\",\"required\":[\"containerInstances\",\"status\"],\"members\":{\"cluster\":{},\"containerInstances\":{\"shape\":\"Sr\"},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerInstances\":{\"shape\":\"S5f\"},\"failures\":{\"shape\":\"S54\"}}}},\"UpdateService\":{\"input\":{\"type\":\"structure\",\"required\":[\"service\"],\"members\":{\"cluster\":{},\"service\":{},\"desiredCount\":{\"type\":\"integer\"},\"taskDefinition\":{},\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"deploymentConfiguration\":{\"shape\":\"S1b\"},\"networkConfiguration\":{\"shape\":\"S1j\"},\"placementConstraints\":{\"shape\":\"S1d\"},\"placementStrategy\":{\"shape\":\"S1g\"},\"platformVersion\":{},\"forceNewDeployment\":{\"type\":\"boolean\"},\"healthCheckGracePeriodSeconds\":{\"type\":\"integer\"},\"enableExecuteCommand\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"service\":{\"shape\":\"S1r\"}}}},\"UpdateServicePrimaryTaskSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\",\"service\",\"primaryTaskSet\"],\"members\":{\"cluster\":{},\"service\":{},\"primaryTaskSet\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskSet\":{\"shape\":\"S1t\"}}}},\"UpdateTaskSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"cluster\",\"service\",\"taskSet\",\"scale\"],\"members\":{\"cluster\":{},\"service\":{},\"taskSet\":{},\"scale\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskSet\":{\"shape\":\"S1t\"}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"autoScalingGroupArn\"],\"members\":{\"autoScalingGroupArn\":{},\"managedScaling\":{\"shape\":\"S4\"},\"managedTerminationProtection\":{}}},\"S4\":{\"type\":\"structure\",\"members\":{\"status\":{},\"targetCapacity\":{\"type\":\"integer\"},\"minimumScalingStepSize\":{\"type\":\"integer\"},\"maximumScalingStepSize\":{\"type\":\"integer\"},\"instanceWarmupPeriod\":{\"type\":\"integer\"}}},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"capacityProviderArn\":{},\"name\":{},\"status\":{},\"autoScalingGroupProvider\":{\"shape\":\"S3\"},\"updateStatus\":{},\"updateStatusReason\":{},\"tags\":{\"shape\":\"Sa\"}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"executeCommandConfiguration\":{\"type\":\"structure\",\"members\":{\"kmsKeyId\":{},\"logging\":{},\"logConfiguration\":{\"type\":\"structure\",\"members\":{\"cloudWatchLogGroupName\":{},\"cloudWatchEncryptionEnabled\":{\"type\":\"boolean\"},\"s3BucketName\":{},\"s3EncryptionEnabled\":{\"type\":\"boolean\"},\"s3KeyPrefix\":{}}}}}}},\"Sr\":{\"type\":\"list\",\"member\":{}},\"Ss\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"capacityProvider\"],\"members\":{\"capacityProvider\":{},\"weight\":{\"type\":\"integer\"},\"base\":{\"type\":\"integer\"}}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"clusterArn\":{},\"clusterName\":{},\"configuration\":{\"shape\":\"Sm\"},\"status\":{},\"registeredContainerInstancesCount\":{\"type\":\"integer\"},\"runningTasksCount\":{\"type\":\"integer\"},\"pendingTasksCount\":{\"type\":\"integer\"},\"activeServicesCount\":{\"type\":\"integer\"},\"statistics\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"tags\":{\"shape\":\"Sa\"},\"settings\":{\"shape\":\"Sj\"},\"capacityProviders\":{\"shape\":\"Sr\"},\"defaultCapacityProviderStrategy\":{\"shape\":\"Ss\"},\"attachments\":{\"shape\":\"S11\"},\"attachmentsStatus\":{}}},\"S10\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}},\"S11\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"type\":{},\"status\":{},\"details\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}}}}},\"S15\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"targetGroupArn\":{},\"loadBalancerName\":{},\"containerName\":{},\"containerPort\":{\"type\":\"integer\"}}}},\"S18\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"registryArn\":{},\"port\":{\"type\":\"integer\"},\"containerName\":{},\"containerPort\":{\"type\":\"integer\"}}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"deploymentCircuitBreaker\":{\"type\":\"structure\",\"required\":[\"enable\",\"rollback\"],\"members\":{\"enable\":{\"type\":\"boolean\"},\"rollback\":{\"type\":\"boolean\"}}},\"maximumPercent\":{\"type\":\"integer\"},\"minimumHealthyPercent\":{\"type\":\"integer\"}}},\"S1d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"expression\":{}}}},\"S1g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"field\":{}}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"awsvpcConfiguration\":{\"type\":\"structure\",\"required\":[\"subnets\"],\"members\":{\"subnets\":{\"shape\":\"Sr\"},\"securityGroups\":{\"shape\":\"Sr\"},\"assignPublicIp\":{}}}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"serviceArn\":{},\"serviceName\":{},\"clusterArn\":{},\"loadBalancers\":{\"shape\":\"S15\"},\"serviceRegistries\":{\"shape\":\"S18\"},\"status\":{},\"desiredCount\":{\"type\":\"integer\"},\"runningCount\":{\"type\":\"integer\"},\"pendingCount\":{\"type\":\"integer\"},\"launchType\":{},\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"platformVersion\":{},\"taskDefinition\":{},\"deploymentConfiguration\":{\"shape\":\"S1b\"},\"taskSets\":{\"shape\":\"S1s\"},\"deployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"status\":{},\"taskDefinition\":{},\"desiredCount\":{\"type\":\"integer\"},\"pendingCount\":{\"type\":\"integer\"},\"runningCount\":{\"type\":\"integer\"},\"failedTasks\":{\"type\":\"integer\"},\"createdAt\":{\"type\":\"timestamp\"},\"updatedAt\":{\"type\":\"timestamp\"},\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"launchType\":{},\"platformVersion\":{},\"networkConfiguration\":{\"shape\":\"S1j\"},\"rolloutState\":{},\"rolloutStateReason\":{}}}},\"roleArn\":{},\"events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"createdAt\":{\"type\":\"timestamp\"},\"message\":{}}}},\"createdAt\":{\"type\":\"timestamp\"},\"placementConstraints\":{\"shape\":\"S1d\"},\"placementStrategy\":{\"shape\":\"S1g\"},\"networkConfiguration\":{\"shape\":\"S1j\"},\"healthCheckGracePeriodSeconds\":{\"type\":\"integer\"},\"schedulingStrategy\":{},\"deploymentController\":{\"shape\":\"S1n\"},\"tags\":{\"shape\":\"Sa\"},\"createdBy\":{},\"enableECSManagedTags\":{\"type\":\"boolean\"},\"propagateTags\":{},\"enableExecuteCommand\":{\"type\":\"boolean\"}}},\"S1s\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}},\"S1t\":{\"type\":\"structure\",\"members\":{\"id\":{},\"taskSetArn\":{},\"serviceArn\":{},\"clusterArn\":{},\"startedBy\":{},\"externalId\":{},\"status\":{},\"taskDefinition\":{},\"computedDesiredCount\":{\"type\":\"integer\"},\"pendingCount\":{\"type\":\"integer\"},\"runningCount\":{\"type\":\"integer\"},\"createdAt\":{\"type\":\"timestamp\"},\"updatedAt\":{\"type\":\"timestamp\"},\"launchType\":{},\"capacityProviderStrategy\":{\"shape\":\"Ss\"},\"platformVersion\":{},\"networkConfiguration\":{\"shape\":\"S1j\"},\"loadBalancers\":{\"shape\":\"S15\"},\"serviceRegistries\":{\"shape\":\"S18\"},\"scale\":{\"shape\":\"S1v\"},\"stabilityStatus\":{},\"stabilityStatusAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Sa\"}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"value\":{\"type\":\"double\"},\"unit\":{}}},\"S29\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{},\"principalArn\":{}}},\"S2b\":{\"type\":\"list\",\"member\":{\"shape\":\"S2c\"}},\"S2c\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"value\":{},\"targetType\":{},\"targetId\":{}}},\"S2q\":{\"type\":\"structure\",\"members\":{\"containerInstanceArn\":{},\"ec2InstanceId\":{},\"capacityProviderName\":{},\"version\":{\"type\":\"long\"},\"versionInfo\":{\"shape\":\"S2s\"},\"remainingResources\":{\"shape\":\"S2t\"},\"registeredResources\":{\"shape\":\"S2t\"},\"status\":{},\"statusReason\":{},\"agentConnected\":{\"type\":\"boolean\"},\"runningTasksCount\":{\"type\":\"integer\"},\"pendingTasksCount\":{\"type\":\"integer\"},\"agentUpdateStatus\":{},\"attributes\":{\"shape\":\"S2b\"},\"registeredAt\":{\"type\":\"timestamp\"},\"attachments\":{\"shape\":\"S11\"},\"tags\":{\"shape\":\"Sa\"}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"agentVersion\":{},\"agentHash\":{},\"dockerVersion\":{}}},\"S2t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"type\":{},\"doubleValue\":{\"type\":\"double\"},\"longValue\":{\"type\":\"long\"},\"integerValue\":{\"type\":\"integer\"},\"stringSetValue\":{\"shape\":\"Sr\"}}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"taskDefinitionArn\":{},\"containerDefinitions\":{\"shape\":\"S2z\"},\"family\":{},\"taskRoleArn\":{},\"executionRoleArn\":{},\"networkMode\":{},\"revision\":{\"type\":\"integer\"},\"volumes\":{\"shape\":\"S49\"},\"status\":{},\"requiresAttributes\":{\"type\":\"list\",\"member\":{\"shape\":\"S2c\"}},\"placementConstraints\":{\"shape\":\"S4n\"},\"compatibilities\":{\"shape\":\"S4q\"},\"requiresCompatibilities\":{\"shape\":\"S4q\"},\"cpu\":{},\"memory\":{},\"inferenceAccelerators\":{\"shape\":\"S4s\"},\"pidMode\":{},\"ipcMode\":{},\"proxyConfiguration\":{\"shape\":\"S4w\"},\"registeredAt\":{\"type\":\"timestamp\"},\"deregisteredAt\":{\"type\":\"timestamp\"},\"registeredBy\":{}}},\"S2z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"image\":{},\"repositoryCredentials\":{\"type\":\"structure\",\"required\":[\"credentialsParameter\"],\"members\":{\"credentialsParameter\":{}}},\"cpu\":{\"type\":\"integer\"},\"memory\":{\"type\":\"integer\"},\"memoryReservation\":{\"type\":\"integer\"},\"links\":{\"shape\":\"Sr\"},\"portMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"containerPort\":{\"type\":\"integer\"},\"hostPort\":{\"type\":\"integer\"},\"protocol\":{}}}},\"essential\":{\"type\":\"boolean\"},\"entryPoint\":{\"shape\":\"Sr\"},\"command\":{\"shape\":\"Sr\"},\"environment\":{\"shape\":\"S35\"},\"environmentFiles\":{\"shape\":\"S36\"},\"mountPoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"sourceVolume\":{},\"containerPath\":{},\"readOnly\":{\"type\":\"boolean\"}}}},\"volumesFrom\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"sourceContainer\":{},\"readOnly\":{\"type\":\"boolean\"}}}},\"linuxParameters\":{\"type\":\"structure\",\"members\":{\"capabilities\":{\"type\":\"structure\",\"members\":{\"add\":{\"shape\":\"Sr\"},\"drop\":{\"shape\":\"Sr\"}}},\"devices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"hostPath\"],\"members\":{\"hostPath\":{},\"containerPath\":{},\"permissions\":{\"type\":\"list\",\"member\":{}}}}},\"initProcessEnabled\":{\"type\":\"boolean\"},\"sharedMemorySize\":{\"type\":\"integer\"},\"tmpfs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"containerPath\",\"size\"],\"members\":{\"containerPath\":{},\"size\":{\"type\":\"integer\"},\"mountOptions\":{\"shape\":\"Sr\"}}}},\"maxSwap\":{\"type\":\"integer\"},\"swappiness\":{\"type\":\"integer\"}}},\"secrets\":{\"shape\":\"S3l\"},\"dependsOn\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"containerName\",\"condition\"],\"members\":{\"containerName\":{},\"condition\":{}}}},\"startTimeout\":{\"type\":\"integer\"},\"stopTimeout\":{\"type\":\"integer\"},\"hostname\":{},\"user\":{},\"workingDirectory\":{},\"disableNetworking\":{\"type\":\"boolean\"},\"privileged\":{\"type\":\"boolean\"},\"readonlyRootFilesystem\":{\"type\":\"boolean\"},\"dnsServers\":{\"shape\":\"Sr\"},\"dnsSearchDomains\":{\"shape\":\"Sr\"},\"extraHosts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"hostname\",\"ipAddress\"],\"members\":{\"hostname\":{},\"ipAddress\":{}}}},\"dockerSecurityOptions\":{\"shape\":\"Sr\"},\"interactive\":{\"type\":\"boolean\"},\"pseudoTerminal\":{\"type\":\"boolean\"},\"dockerLabels\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"ulimits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"softLimit\",\"hardLimit\"],\"members\":{\"name\":{},\"softLimit\":{\"type\":\"integer\"},\"hardLimit\":{\"type\":\"integer\"}}}},\"logConfiguration\":{\"type\":\"structure\",\"required\":[\"logDriver\"],\"members\":{\"logDriver\":{},\"options\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"secretOptions\":{\"shape\":\"S3l\"}}},\"healthCheck\":{\"type\":\"structure\",\"required\":[\"command\"],\"members\":{\"command\":{\"shape\":\"Sr\"},\"interval\":{\"type\":\"integer\"},\"timeout\":{\"type\":\"integer\"},\"retries\":{\"type\":\"integer\"},\"startPeriod\":{\"type\":\"integer\"}}},\"systemControls\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"namespace\":{},\"value\":{}}}},\"resourceRequirements\":{\"shape\":\"S42\"},\"firelensConfiguration\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"options\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"S35\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"S36\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"value\",\"type\"],\"members\":{\"value\":{},\"type\":{}}}},\"S3l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"valueFrom\"],\"members\":{\"name\":{},\"valueFrom\":{}}}},\"S42\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"value\",\"type\"],\"members\":{\"value\":{},\"type\":{}}}},\"S49\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"host\":{\"type\":\"structure\",\"members\":{\"sourcePath\":{}}},\"dockerVolumeConfiguration\":{\"type\":\"structure\",\"members\":{\"scope\":{},\"autoprovision\":{\"type\":\"boolean\"},\"driver\":{},\"driverOpts\":{\"shape\":\"S4e\"},\"labels\":{\"shape\":\"S4e\"}}},\"efsVolumeConfiguration\":{\"type\":\"structure\",\"required\":[\"fileSystemId\"],\"members\":{\"fileSystemId\":{},\"rootDirectory\":{},\"transitEncryption\":{},\"transitEncryptionPort\":{\"type\":\"integer\"},\"authorizationConfig\":{\"type\":\"structure\",\"members\":{\"accessPointId\":{},\"iam\":{}}}}},\"fsxWindowsFileServerVolumeConfiguration\":{\"type\":\"structure\",\"required\":[\"fileSystemId\",\"rootDirectory\",\"authorizationConfig\"],\"members\":{\"fileSystemId\":{},\"rootDirectory\":{},\"authorizationConfig\":{\"type\":\"structure\",\"required\":[\"credentialsParameter\",\"domain\"],\"members\":{\"credentialsParameter\":{},\"domain\":{}}}}}}}},\"S4e\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S4n\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"expression\":{}}}},\"S4q\":{\"type\":\"list\",\"member\":{}},\"S4s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"deviceName\",\"deviceType\"],\"members\":{\"deviceName\":{},\"deviceType\":{}}}},\"S4w\":{\"type\":\"structure\",\"required\":[\"containerName\"],\"members\":{\"type\":{},\"containerName\":{},\"properties\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}}}},\"S54\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"reason\":{},\"detail\":{}}}},\"S5f\":{\"type\":\"list\",\"member\":{\"shape\":\"S2q\"}},\"S5x\":{\"type\":\"list\",\"member\":{\"shape\":\"S5y\"}},\"S5y\":{\"type\":\"structure\",\"members\":{\"attachments\":{\"shape\":\"S11\"},\"attributes\":{\"shape\":\"S2b\"},\"availabilityZone\":{},\"capacityProviderName\":{},\"clusterArn\":{},\"connectivity\":{},\"connectivityAt\":{\"type\":\"timestamp\"},\"containerInstanceArn\":{},\"containers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"containerArn\":{},\"taskArn\":{},\"name\":{},\"image\":{},\"imageDigest\":{},\"runtimeId\":{},\"lastStatus\":{},\"exitCode\":{\"type\":\"integer\"},\"reason\":{},\"networkBindings\":{\"shape\":\"S62\"},\"networkInterfaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"attachmentId\":{},\"privateIpv4Address\":{},\"ipv6Address\":{}}}},\"healthStatus\":{},\"managedAgents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"lastStartedAt\":{\"type\":\"timestamp\"},\"name\":{},\"reason\":{},\"lastStatus\":{}}}},\"cpu\":{},\"memory\":{},\"memoryReservation\":{},\"gpuIds\":{\"type\":\"list\",\"member\":{}}}}},\"cpu\":{},\"createdAt\":{\"type\":\"timestamp\"},\"desiredStatus\":{},\"enableExecuteCommand\":{\"type\":\"boolean\"},\"executionStoppedAt\":{\"type\":\"timestamp\"},\"group\":{},\"healthStatus\":{},\"inferenceAccelerators\":{\"shape\":\"S4s\"},\"lastStatus\":{},\"launchType\":{},\"memory\":{},\"overrides\":{\"shape\":\"S6b\"},\"platformVersion\":{},\"pullStartedAt\":{\"type\":\"timestamp\"},\"pullStoppedAt\":{\"type\":\"timestamp\"},\"startedAt\":{\"type\":\"timestamp\"},\"startedBy\":{},\"stopCode\":{},\"stoppedAt\":{\"type\":\"timestamp\"},\"stoppedReason\":{},\"stoppingAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Sa\"},\"taskArn\":{},\"taskDefinitionArn\":{},\"version\":{\"type\":\"long\"}}},\"S62\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"bindIP\":{},\"containerPort\":{\"type\":\"integer\"},\"hostPort\":{\"type\":\"integer\"},\"protocol\":{}}}},\"S6b\":{\"type\":\"structure\",\"members\":{\"containerOverrides\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"command\":{\"shape\":\"Sr\"},\"environment\":{\"shape\":\"S35\"},\"environmentFiles\":{\"shape\":\"S36\"},\"cpu\":{\"type\":\"integer\"},\"memory\":{\"type\":\"integer\"},\"memoryReservation\":{\"type\":\"integer\"},\"resourceRequirements\":{\"shape\":\"S42\"}}}},\"cpu\":{},\"inferenceAcceleratorOverrides\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"deviceName\":{},\"deviceType\":{}}}},\"executionRoleArn\":{},\"memory\":{},\"taskRoleArn\":{}}},\"S7w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"attachmentArn\",\"status\"],\"members\":{\"attachmentArn\":{},\"status\":{}}}}}}");

/***/ }),

/***/ 33629:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccountSettings\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"settings\"},\"ListAttributes\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"attributes\"},\"ListClusters\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"clusterArns\"},\"ListContainerInstances\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"containerInstanceArns\"},\"ListServices\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"serviceArns\"},\"ListTaskDefinitionFamilies\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"families\"},\"ListTaskDefinitions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"taskDefinitionArns\"},\"ListTasks\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"taskArns\"}}}");

/***/ }),

/***/ 54199:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"TasksRunning\":{\"delay\":6,\"operation\":\"DescribeTasks\",\"maxAttempts\":100,\"acceptors\":[{\"expected\":\"STOPPED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"tasks[].lastStatus\"},{\"expected\":\"MISSING\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"failures[].reason\"},{\"expected\":\"RUNNING\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"tasks[].lastStatus\"}]},\"TasksStopped\":{\"delay\":6,\"operation\":\"DescribeTasks\",\"maxAttempts\":100,\"acceptors\":[{\"expected\":\"STOPPED\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"tasks[].lastStatus\"}]},\"ServicesStable\":{\"delay\":15,\"operation\":\"DescribeServices\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"MISSING\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"failures[].reason\"},{\"expected\":\"DRAINING\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"services[].status\"},{\"expected\":\"INACTIVE\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"services[].status\"},{\"expected\":true,\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"length(services[?!(length(deployments) == `1` && runningCount == desiredCount)]) == `0`\"}]},\"ServicesInactive\":{\"delay\":15,\"operation\":\"DescribeServices\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"MISSING\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"failures[].reason\"},{\"expected\":\"INACTIVE\",\"matcher\":\"pathAny\",\"state\":\"success\",\"argument\":\"services[].status\"}]}}}");

/***/ }),

/***/ 7766:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-11-01\",\"endpointPrefix\":\"eks\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon EKS\",\"serviceFullName\":\"Amazon Elastic Kubernetes Service\",\"serviceId\":\"EKS\",\"signatureVersion\":\"v4\",\"signingName\":\"eks\",\"uid\":\"eks-2017-11-01\"},\"operations\":{\"AssociateEncryptionConfig\":{\"http\":{\"requestUri\":\"/clusters/{name}/encryption-config/associate\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"encryptionConfig\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"encryptionConfig\":{\"shape\":\"S3\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"AssociateIdentityProviderConfig\":{\"http\":{\"requestUri\":\"/clusters/{name}/identity-provider-configs/associate\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"oidc\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"oidc\":{\"type\":\"structure\",\"required\":[\"identityProviderConfigName\",\"issuerUrl\",\"clientId\"],\"members\":{\"identityProviderConfigName\":{},\"issuerUrl\":{},\"clientId\":{},\"usernameClaim\":{},\"usernamePrefix\":{},\"groupsClaim\":{},\"groupsPrefix\":{},\"requiredClaims\":{\"shape\":\"Sk\"}}},\"tags\":{\"shape\":\"Sn\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"},\"tags\":{\"shape\":\"Sn\"}}}},\"CreateAddon\":{\"http\":{\"requestUri\":\"/clusters/{name}/addons\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"addonName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"addonName\":{},\"addonVersion\":{},\"serviceAccountRoleArn\":{},\"resolveConflicts\":{},\"clientRequestToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"addon\":{\"shape\":\"Sw\"}}}},\"CreateCluster\":{\"http\":{\"requestUri\":\"/clusters\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"roleArn\",\"resourcesVpcConfig\"],\"members\":{\"name\":{},\"version\":{},\"roleArn\":{},\"resourcesVpcConfig\":{\"shape\":\"S13\"},\"kubernetesNetworkConfig\":{\"type\":\"structure\",\"members\":{\"serviceIpv4Cidr\":{}}},\"logging\":{\"shape\":\"S16\"},\"clientRequestToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"Sn\"},\"encryptionConfig\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"S1c\"}}}},\"CreateFargateProfile\":{\"http\":{\"requestUri\":\"/clusters/{name}/fargate-profiles\"},\"input\":{\"type\":\"structure\",\"required\":[\"fargateProfileName\",\"clusterName\",\"podExecutionRoleArn\"],\"members\":{\"fargateProfileName\":{},\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"podExecutionRoleArn\":{},\"subnets\":{\"shape\":\"S5\"},\"selectors\":{\"shape\":\"S1l\"},\"clientRequestToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"fargateProfile\":{\"shape\":\"S1p\"}}}},\"CreateNodegroup\":{\"http\":{\"requestUri\":\"/clusters/{name}/node-groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"nodegroupName\",\"subnets\",\"nodeRole\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nodegroupName\":{},\"scalingConfig\":{\"shape\":\"S1s\"},\"diskSize\":{\"type\":\"integer\"},\"subnets\":{\"shape\":\"S5\"},\"instanceTypes\":{\"shape\":\"S5\"},\"amiType\":{},\"remoteAccess\":{\"shape\":\"S1w\"},\"nodeRole\":{},\"labels\":{\"shape\":\"S1x\"},\"tags\":{\"shape\":\"Sn\"},\"clientRequestToken\":{\"idempotencyToken\":true},\"launchTemplate\":{\"shape\":\"S20\"},\"capacityType\":{},\"version\":{},\"releaseVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"nodegroup\":{\"shape\":\"S23\"}}}},\"DeleteAddon\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/clusters/{name}/addons/{addonName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"addonName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"addonName\":{\"location\":\"uri\",\"locationName\":\"addonName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"addon\":{\"shape\":\"Sw\"}}}},\"DeleteCluster\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/clusters/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"S1c\"}}}},\"DeleteFargateProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/clusters/{name}/fargate-profiles/{fargateProfileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"fargateProfileName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"fargateProfileName\":{\"location\":\"uri\",\"locationName\":\"fargateProfileName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"fargateProfile\":{\"shape\":\"S1p\"}}}},\"DeleteNodegroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/clusters/{name}/node-groups/{nodegroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"nodegroupName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nodegroupName\":{\"location\":\"uri\",\"locationName\":\"nodegroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nodegroup\":{\"shape\":\"S23\"}}}},\"DescribeAddon\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/addons/{addonName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"addonName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"addonName\":{\"location\":\"uri\",\"locationName\":\"addonName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"addon\":{\"shape\":\"Sw\"}}}},\"DescribeAddonVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/addons/supported-versions\"},\"input\":{\"type\":\"structure\",\"members\":{\"kubernetesVersion\":{\"location\":\"querystring\",\"locationName\":\"kubernetesVersion\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"addonName\":{\"location\":\"querystring\",\"locationName\":\"addonName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"addons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"addonName\":{},\"type\":{},\"addonVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"addonVersion\":{},\"architecture\":{\"shape\":\"S5\"},\"compatibilities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"clusterVersion\":{},\"platformVersions\":{\"shape\":\"S5\"},\"defaultVersion\":{\"type\":\"boolean\"}}}}}}}}}},\"nextToken\":{}}}},\"DescribeCluster\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cluster\":{\"shape\":\"S1c\"}}}},\"DescribeFargateProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/fargate-profiles/{fargateProfileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"fargateProfileName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"fargateProfileName\":{\"location\":\"uri\",\"locationName\":\"fargateProfileName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"fargateProfile\":{\"shape\":\"S1p\"}}}},\"DescribeIdentityProviderConfig\":{\"http\":{\"requestUri\":\"/clusters/{name}/identity-provider-configs/describe\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"identityProviderConfig\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"identityProviderConfig\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"identityProviderConfig\":{\"type\":\"structure\",\"members\":{\"oidc\":{\"type\":\"structure\",\"members\":{\"identityProviderConfigName\":{},\"identityProviderConfigArn\":{},\"clusterName\":{},\"issuerUrl\":{},\"clientId\":{},\"usernameClaim\":{},\"usernamePrefix\":{},\"groupsClaim\":{},\"groupsPrefix\":{},\"requiredClaims\":{\"shape\":\"Sk\"},\"tags\":{\"shape\":\"Sn\"},\"status\":{}}}}}}}},\"DescribeNodegroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/node-groups/{nodegroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"nodegroupName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nodegroupName\":{\"location\":\"uri\",\"locationName\":\"nodegroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nodegroup\":{\"shape\":\"S23\"}}}},\"DescribeUpdate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/updates/{updateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"updateId\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"updateId\":{\"location\":\"uri\",\"locationName\":\"updateId\"},\"nodegroupName\":{\"location\":\"querystring\",\"locationName\":\"nodegroupName\"},\"addonName\":{\"location\":\"querystring\",\"locationName\":\"addonName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"DisassociateIdentityProviderConfig\":{\"http\":{\"requestUri\":\"/clusters/{name}/identity-provider-configs/disassociate\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"identityProviderConfig\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"identityProviderConfig\":{\"shape\":\"S30\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"ListAddons\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/addons\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"addons\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"ListClusters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"clusters\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"ListFargateProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/fargate-profiles\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"fargateProfileNames\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"ListIdentityProviderConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/identity-provider-configs\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"identityProviderConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S30\"}},\"nextToken\":{}}}},\"ListNodegroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/node-groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nodegroups\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sn\"}}}},\"ListUpdates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/clusters/{name}/updates\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nodegroupName\":{\"location\":\"querystring\",\"locationName\":\"nodegroupName\"},\"addonName\":{\"location\":\"querystring\",\"locationName\":\"addonName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"updateIds\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAddon\":{\"http\":{\"requestUri\":\"/clusters/{name}/addons/{addonName}/update\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"addonName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"addonName\":{\"location\":\"uri\",\"locationName\":\"addonName\"},\"addonVersion\":{},\"serviceAccountRoleArn\":{},\"resolveConflicts\":{},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"UpdateClusterConfig\":{\"http\":{\"requestUri\":\"/clusters/{name}/update-config\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"resourcesVpcConfig\":{\"shape\":\"S13\"},\"logging\":{\"shape\":\"S16\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"UpdateClusterVersion\":{\"http\":{\"requestUri\":\"/clusters/{name}/updates\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"version\":{},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"UpdateNodegroupConfig\":{\"http\":{\"requestUri\":\"/clusters/{name}/node-groups/{nodegroupName}/update-config\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"nodegroupName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nodegroupName\":{\"location\":\"uri\",\"locationName\":\"nodegroupName\"},\"labels\":{\"type\":\"structure\",\"members\":{\"addOrUpdateLabels\":{\"shape\":\"S1x\"},\"removeLabels\":{\"type\":\"list\",\"member\":{}}}},\"scalingConfig\":{\"shape\":\"S1s\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}},\"UpdateNodegroupVersion\":{\"http\":{\"requestUri\":\"/clusters/{name}/node-groups/{nodegroupName}/update-version\"},\"input\":{\"type\":\"structure\",\"required\":[\"clusterName\",\"nodegroupName\"],\"members\":{\"clusterName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nodegroupName\":{\"location\":\"uri\",\"locationName\":\"nodegroupName\"},\"version\":{},\"releaseVersion\":{},\"launchTemplate\":{\"shape\":\"S20\"},\"force\":{\"type\":\"boolean\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"update\":{\"shape\":\"S8\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resources\":{\"shape\":\"S5\"},\"provider\":{\"type\":\"structure\",\"members\":{\"keyArn\":{}}}}}},\"S5\":{\"type\":\"list\",\"member\":{}},\"S8\":{\"type\":\"structure\",\"members\":{\"id\":{},\"status\":{},\"type\":{},\"params\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"value\":{}}}},\"createdAt\":{\"type\":\"timestamp\"},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"errorCode\":{},\"errorMessage\":{},\"resourceIds\":{\"shape\":\"S5\"}}}}}},\"Sk\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sn\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sw\":{\"type\":\"structure\",\"members\":{\"addonName\":{},\"clusterName\":{},\"status\":{},\"addonVersion\":{},\"health\":{\"type\":\"structure\",\"members\":{\"issues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{},\"resourceIds\":{\"shape\":\"S5\"}}}}}},\"addonArn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"modifiedAt\":{\"type\":\"timestamp\"},\"serviceAccountRoleArn\":{},\"tags\":{\"shape\":\"Sn\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"subnetIds\":{\"shape\":\"S5\"},\"securityGroupIds\":{\"shape\":\"S5\"},\"endpointPublicAccess\":{\"type\":\"boolean\"},\"endpointPrivateAccess\":{\"type\":\"boolean\"},\"publicAccessCidrs\":{\"shape\":\"S5\"}}},\"S16\":{\"type\":\"structure\",\"members\":{\"clusterLogging\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"types\":{\"type\":\"list\",\"member\":{}},\"enabled\":{\"type\":\"boolean\"}}}}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"version\":{},\"endpoint\":{},\"roleArn\":{},\"resourcesVpcConfig\":{\"type\":\"structure\",\"members\":{\"subnetIds\":{\"shape\":\"S5\"},\"securityGroupIds\":{\"shape\":\"S5\"},\"clusterSecurityGroupId\":{},\"vpcId\":{},\"endpointPublicAccess\":{\"type\":\"boolean\"},\"endpointPrivateAccess\":{\"type\":\"boolean\"},\"publicAccessCidrs\":{\"shape\":\"S5\"}}},\"kubernetesNetworkConfig\":{\"type\":\"structure\",\"members\":{\"serviceIpv4Cidr\":{}}},\"logging\":{\"shape\":\"S16\"},\"identity\":{\"type\":\"structure\",\"members\":{\"oidc\":{\"type\":\"structure\",\"members\":{\"issuer\":{}}}}},\"status\":{},\"certificateAuthority\":{\"type\":\"structure\",\"members\":{\"data\":{}}},\"clientRequestToken\":{},\"platformVersion\":{},\"tags\":{\"shape\":\"Sn\"},\"encryptionConfig\":{\"shape\":\"S3\"}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"namespace\":{},\"labels\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S1p\":{\"type\":\"structure\",\"members\":{\"fargateProfileName\":{},\"fargateProfileArn\":{},\"clusterName\":{},\"createdAt\":{\"type\":\"timestamp\"},\"podExecutionRoleArn\":{},\"subnets\":{\"shape\":\"S5\"},\"selectors\":{\"shape\":\"S1l\"},\"status\":{},\"tags\":{\"shape\":\"Sn\"}}},\"S1s\":{\"type\":\"structure\",\"members\":{\"minSize\":{\"type\":\"integer\"},\"maxSize\":{\"type\":\"integer\"},\"desiredSize\":{\"type\":\"integer\"}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"ec2SshKey\":{},\"sourceSecurityGroups\":{\"shape\":\"S5\"}}},\"S1x\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S20\":{\"type\":\"structure\",\"members\":{\"name\":{},\"version\":{},\"id\":{}}},\"S23\":{\"type\":\"structure\",\"members\":{\"nodegroupName\":{},\"nodegroupArn\":{},\"clusterName\":{},\"version\":{},\"releaseVersion\":{},\"createdAt\":{\"type\":\"timestamp\"},\"modifiedAt\":{\"type\":\"timestamp\"},\"status\":{},\"capacityType\":{},\"scalingConfig\":{\"shape\":\"S1s\"},\"instanceTypes\":{\"shape\":\"S5\"},\"subnets\":{\"shape\":\"S5\"},\"remoteAccess\":{\"shape\":\"S1w\"},\"amiType\":{},\"nodeRole\":{},\"labels\":{\"shape\":\"S1x\"},\"resources\":{\"type\":\"structure\",\"members\":{\"autoScalingGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{}}}},\"remoteAccessSecurityGroup\":{}}},\"diskSize\":{\"type\":\"integer\"},\"health\":{\"type\":\"structure\",\"members\":{\"issues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{},\"resourceIds\":{\"shape\":\"S5\"}}}}}},\"launchTemplate\":{\"shape\":\"S20\"},\"tags\":{\"shape\":\"Sn\"}}},\"S30\":{\"type\":\"structure\",\"required\":[\"type\",\"name\"],\"members\":{\"type\":{},\"name\":{}}}}}");

/***/ }),

/***/ 17233:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAddonVersions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"addons\"},\"ListAddons\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"addons\"},\"ListClusters\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"clusters\"},\"ListFargateProfiles\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"fargateProfileNames\"},\"ListIdentityProviderConfigs\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"identityProviderConfigs\"},\"ListNodegroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"nodegroups\"},\"ListUpdates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"updateIds\"}}}");

/***/ }),

/***/ 11545:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ClusterActive\":{\"delay\":30,\"operation\":\"DescribeCluster\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"DELETING\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"cluster.status\"},{\"expected\":\"FAILED\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"cluster.status\"},{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"cluster.status\"}]},\"ClusterDeleted\":{\"delay\":30,\"operation\":\"DescribeCluster\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"cluster.status\"},{\"expected\":\"CREATING\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"cluster.status\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"}]},\"NodegroupActive\":{\"delay\":30,\"operation\":\"DescribeNodegroup\",\"maxAttempts\":80,\"acceptors\":[{\"expected\":\"CREATE_FAILED\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"nodegroup.status\"},{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"nodegroup.status\"}]},\"NodegroupDeleted\":{\"delay\":30,\"operation\":\"DescribeNodegroup\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"DELETE_FAILED\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"nodegroup.status\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"}]},\"AddonActive\":{\"delay\":10,\"operation\":\"DescribeAddon\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"CREATE_FAILED\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"addon.status\"},{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"addon.status\"}]},\"AddonDeleted\":{\"delay\":10,\"operation\":\"DescribeAddon\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"DELETE_FAILED\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"addon.status\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 76263:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"api.elastic-inference\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon Elastic Inference\",\"serviceFullName\":\"Amazon Elastic  Inference\",\"serviceId\":\"Elastic Inference\",\"signatureVersion\":\"v4\",\"signingName\":\"elastic-inference\",\"uid\":\"elastic-inference-2017-07-25\"},\"operations\":{\"DescribeAcceleratorOfferings\":{\"http\":{\"requestUri\":\"/describe-accelerator-offerings\"},\"input\":{\"type\":\"structure\",\"required\":[\"locationType\"],\"members\":{\"locationType\":{},\"acceleratorTypes\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"acceleratorTypeOfferings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"acceleratorType\":{},\"locationType\":{},\"location\":{}}}}}}},\"DescribeAcceleratorTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/describe-accelerator-types\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"acceleratorTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"acceleratorTypeName\":{},\"memoryInfo\":{\"type\":\"structure\",\"members\":{\"sizeInMiB\":{\"type\":\"integer\"}}},\"throughputInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{\"type\":\"integer\"}}}}}}}}}},\"DescribeAccelerators\":{\"http\":{\"requestUri\":\"/describe-accelerators\"},\"input\":{\"type\":\"structure\",\"members\":{\"acceleratorIds\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"acceleratorSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"acceleratorHealth\":{\"type\":\"structure\",\"members\":{\"status\":{}}},\"acceleratorType\":{},\"acceleratorId\":{},\"availabilityZone\":{},\"attachedResource\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S13\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S13\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S13\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 73815:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAccelerators\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"acceleratorSet\"}}}");

/***/ }),

/***/ 78248:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-02-02\",\"endpointPrefix\":\"elasticache\",\"protocol\":\"query\",\"serviceFullName\":\"Amazon ElastiCache\",\"serviceId\":\"ElastiCache\",\"signatureVersion\":\"v4\",\"uid\":\"elasticache-2015-02-02\",\"xmlNamespace\":\"http://elasticache.amazonaws.com/doc/2015-02-02/\"},\"operations\":{\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"shape\":\"S5\",\"resultWrapper\":\"AddTagsToResourceResult\"}},\"AuthorizeCacheSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSecurityGroupName\",\"EC2SecurityGroupName\",\"EC2SecurityGroupOwnerId\"],\"members\":{\"CacheSecurityGroupName\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeCacheSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"CacheSecurityGroup\":{\"shape\":\"S8\"}}}},\"BatchApplyUpdateAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceUpdateName\"],\"members\":{\"ReplicationGroupIds\":{\"shape\":\"Sc\"},\"CacheClusterIds\":{\"shape\":\"Sd\"},\"ServiceUpdateName\":{}}},\"output\":{\"shape\":\"Se\",\"resultWrapper\":\"BatchApplyUpdateActionResult\"}},\"BatchStopUpdateAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceUpdateName\"],\"members\":{\"ReplicationGroupIds\":{\"shape\":\"Sc\"},\"CacheClusterIds\":{\"shape\":\"Sd\"},\"ServiceUpdateName\":{}}},\"output\":{\"shape\":\"Se\",\"resultWrapper\":\"BatchStopUpdateActionResult\"}},\"CompleteMigration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\"],\"members\":{\"ReplicationGroupId\":{},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CompleteMigrationResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"CopySnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceSnapshotName\",\"TargetSnapshotName\"],\"members\":{\"SourceSnapshotName\":{},\"TargetSnapshotName\":{},\"TargetBucket\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"CopySnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"S1e\"}}}},\"CreateCacheCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheClusterId\"],\"members\":{\"CacheClusterId\":{},\"ReplicationGroupId\":{},\"AZMode\":{},\"PreferredAvailabilityZone\":{},\"PreferredAvailabilityZones\":{\"shape\":\"S1n\"},\"NumCacheNodes\":{\"type\":\"integer\"},\"CacheNodeType\":{},\"Engine\":{},\"EngineVersion\":{},\"CacheParameterGroupName\":{},\"CacheSubnetGroupName\":{},\"CacheSecurityGroupNames\":{\"shape\":\"S1o\"},\"SecurityGroupIds\":{\"shape\":\"S1p\"},\"Tags\":{\"shape\":\"S3\"},\"SnapshotArns\":{\"shape\":\"S1q\"},\"SnapshotName\":{},\"PreferredMaintenanceWindow\":{},\"Port\":{\"type\":\"integer\"},\"NotificationTopicArn\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"AuthToken\":{},\"OutpostMode\":{},\"PreferredOutpostArn\":{},\"PreferredOutpostArns\":{\"shape\":\"S1s\"}}},\"output\":{\"resultWrapper\":\"CreateCacheClusterResult\",\"type\":\"structure\",\"members\":{\"CacheCluster\":{\"shape\":\"S1u\"}}}},\"CreateCacheParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheParameterGroupName\",\"CacheParameterGroupFamily\",\"Description\"],\"members\":{\"CacheParameterGroupName\":{},\"CacheParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"CreateCacheParameterGroupResult\",\"type\":\"structure\",\"members\":{\"CacheParameterGroup\":{\"shape\":\"S27\"}}}},\"CreateCacheSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSecurityGroupName\",\"Description\"],\"members\":{\"CacheSecurityGroupName\":{},\"Description\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"CreateCacheSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"CacheSecurityGroup\":{\"shape\":\"S8\"}}}},\"CreateCacheSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSubnetGroupName\",\"CacheSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"CacheSubnetGroupName\":{},\"CacheSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S2b\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"CreateCacheSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"CacheSubnetGroup\":{\"shape\":\"S2d\"}}}},\"CreateGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupIdSuffix\",\"PrimaryReplicationGroupId\"],\"members\":{\"GlobalReplicationGroupIdSuffix\":{},\"GlobalReplicationGroupDescription\":{},\"PrimaryReplicationGroupId\":{}}},\"output\":{\"resultWrapper\":\"CreateGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"CreateReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"ReplicationGroupDescription\"],\"members\":{\"ReplicationGroupId\":{},\"ReplicationGroupDescription\":{},\"GlobalReplicationGroupId\":{},\"PrimaryClusterId\":{},\"AutomaticFailoverEnabled\":{\"type\":\"boolean\"},\"MultiAZEnabled\":{\"type\":\"boolean\"},\"NumCacheClusters\":{\"type\":\"integer\"},\"PreferredCacheClusterAZs\":{\"shape\":\"S1j\"},\"NumNodeGroups\":{\"type\":\"integer\"},\"ReplicasPerNodeGroup\":{\"type\":\"integer\"},\"NodeGroupConfiguration\":{\"type\":\"list\",\"member\":{\"shape\":\"S1h\",\"locationName\":\"NodeGroupConfiguration\"}},\"CacheNodeType\":{},\"Engine\":{},\"EngineVersion\":{},\"CacheParameterGroupName\":{},\"CacheSubnetGroupName\":{},\"CacheSecurityGroupNames\":{\"shape\":\"S1o\"},\"SecurityGroupIds\":{\"shape\":\"S1p\"},\"Tags\":{\"shape\":\"S3\"},\"SnapshotArns\":{\"shape\":\"S1q\"},\"SnapshotName\":{},\"PreferredMaintenanceWindow\":{},\"Port\":{\"type\":\"integer\"},\"NotificationTopicArn\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"AuthToken\":{},\"TransitEncryptionEnabled\":{\"type\":\"boolean\"},\"AtRestEncryptionEnabled\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"UserGroupIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"CreateReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"CreateSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotName\"],\"members\":{\"ReplicationGroupId\":{},\"CacheClusterId\":{},\"SnapshotName\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"CreateSnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"S1e\"}}}},\"CreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserId\",\"UserName\",\"Engine\",\"AccessString\"],\"members\":{\"UserId\":{},\"UserName\":{},\"Engine\":{},\"Passwords\":{\"shape\":\"S2z\"},\"AccessString\":{},\"NoPasswordRequired\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"shape\":\"S31\",\"resultWrapper\":\"CreateUserResult\"}},\"CreateUserGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserGroupId\",\"Engine\"],\"members\":{\"UserGroupId\":{},\"Engine\":{},\"UserIds\":{\"shape\":\"S35\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"shape\":\"S36\",\"resultWrapper\":\"CreateUserGroupResult\"}},\"DecreaseNodeGroupsInGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"NodeGroupCount\",\"ApplyImmediately\"],\"members\":{\"GlobalReplicationGroupId\":{},\"NodeGroupCount\":{\"type\":\"integer\"},\"GlobalNodeGroupsToRemove\":{\"shape\":\"S3b\"},\"GlobalNodeGroupsToRetain\":{\"shape\":\"S3b\"},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DecreaseNodeGroupsInGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"DecreaseReplicaCount\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"ApplyImmediately\"],\"members\":{\"ReplicationGroupId\":{},\"NewReplicaCount\":{\"type\":\"integer\"},\"ReplicaConfiguration\":{\"shape\":\"S3e\"},\"ReplicasToRemove\":{\"type\":\"list\",\"member\":{}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DecreaseReplicaCountResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"DeleteCacheCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheClusterId\"],\"members\":{\"CacheClusterId\":{},\"FinalSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteCacheClusterResult\",\"type\":\"structure\",\"members\":{\"CacheCluster\":{\"shape\":\"S1u\"}}}},\"DeleteCacheParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheParameterGroupName\"],\"members\":{\"CacheParameterGroupName\":{}}}},\"DeleteCacheSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSecurityGroupName\"],\"members\":{\"CacheSecurityGroupName\":{}}}},\"DeleteCacheSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSubnetGroupName\"],\"members\":{\"CacheSubnetGroupName\":{}}}},\"DeleteGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"RetainPrimaryReplicationGroup\"],\"members\":{\"GlobalReplicationGroupId\":{},\"RetainPrimaryReplicationGroup\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DeleteGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"DeleteReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\"],\"members\":{\"ReplicationGroupId\":{},\"RetainPrimaryCluster\":{\"type\":\"boolean\"},\"FinalSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"DeleteSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotName\"],\"members\":{\"SnapshotName\":{}}},\"output\":{\"resultWrapper\":\"DeleteSnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"S1e\"}}}},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{}}},\"output\":{\"shape\":\"S31\",\"resultWrapper\":\"DeleteUserResult\"}},\"DeleteUserGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserGroupId\"],\"members\":{\"UserGroupId\":{}}},\"output\":{\"shape\":\"S36\",\"resultWrapper\":\"DeleteUserGroupResult\"}},\"DescribeCacheClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"CacheClusterId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"ShowCacheNodeInfo\":{\"type\":\"boolean\"},\"ShowCacheClustersNotInReplicationGroups\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeCacheClustersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"CacheClusters\":{\"type\":\"list\",\"member\":{\"shape\":\"S1u\",\"locationName\":\"CacheCluster\"}}}}},\"DescribeCacheEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"CacheParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeCacheEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"CacheEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"CacheParameterGroupFamily\":{},\"CacheEngineDescription\":{},\"CacheEngineVersionDescription\":{}}}}}}},\"DescribeCacheParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"CacheParameterGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCacheParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"CacheParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S27\",\"locationName\":\"CacheParameterGroup\"}}}}},\"DescribeCacheParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheParameterGroupName\"],\"members\":{\"CacheParameterGroupName\":{},\"Source\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCacheParametersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Parameters\":{\"shape\":\"S47\"},\"CacheNodeTypeSpecificParameters\":{\"shape\":\"S4a\"}}}},\"DescribeCacheSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"CacheSecurityGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCacheSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"CacheSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\",\"locationName\":\"CacheSecurityGroup\"}}}}},\"DescribeCacheSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"CacheSubnetGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCacheSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"CacheSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\",\"locationName\":\"CacheSubnetGroup\"}}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheParameterGroupFamily\"],\"members\":{\"CacheParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"type\":\"structure\",\"members\":{\"CacheParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S47\"},\"CacheNodeTypeSpecificParameters\":{\"shape\":\"S4a\"}},\"wrapper\":true}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeGlobalReplicationGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"GlobalReplicationGroupId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"ShowMemberInfo\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeGlobalReplicationGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"GlobalReplicationGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2k\",\"locationName\":\"GlobalReplicationGroup\"}}}}},\"DescribeReplicationGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReplicationGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReplicationGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"So\",\"locationName\":\"ReplicationGroup\"}}}}},\"DescribeReservedCacheNodes\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedCacheNodeId\":{},\"ReservedCacheNodesOfferingId\":{},\"CacheNodeType\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedCacheNodesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedCacheNodes\":{\"type\":\"list\",\"member\":{\"shape\":\"S51\",\"locationName\":\"ReservedCacheNode\"}}}}},\"DescribeReservedCacheNodesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedCacheNodesOfferingId\":{},\"CacheNodeType\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedCacheNodesOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedCacheNodesOfferings\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedCacheNodesOffering\",\"type\":\"structure\",\"members\":{\"ReservedCacheNodesOfferingId\":{},\"CacheNodeType\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"ProductDescription\":{},\"OfferingType\":{},\"RecurringCharges\":{\"shape\":\"S52\"}},\"wrapper\":true}}}}},\"DescribeServiceUpdates\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServiceUpdateName\":{},\"ServiceUpdateStatus\":{\"shape\":\"S59\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeServiceUpdatesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ServiceUpdates\":{\"type\":\"list\",\"member\":{\"locationName\":\"ServiceUpdate\",\"type\":\"structure\",\"members\":{\"ServiceUpdateName\":{},\"ServiceUpdateReleaseDate\":{\"type\":\"timestamp\"},\"ServiceUpdateEndDate\":{\"type\":\"timestamp\"},\"ServiceUpdateSeverity\":{},\"ServiceUpdateRecommendedApplyByDate\":{\"type\":\"timestamp\"},\"ServiceUpdateStatus\":{},\"ServiceUpdateDescription\":{},\"ServiceUpdateType\":{},\"Engine\":{},\"EngineVersion\":{},\"AutoUpdateAfterRecommendedApplyByDate\":{\"type\":\"boolean\"},\"EstimatedUpdateTime\":{}}}}}}},\"DescribeSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"CacheClusterId\":{},\"SnapshotName\":{},\"SnapshotSource\":{},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"},\"ShowNodeGroupConfig\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Snapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\",\"locationName\":\"Snapshot\"}}}}},\"DescribeUpdateActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServiceUpdateName\":{},\"ReplicationGroupIds\":{\"shape\":\"Sc\"},\"CacheClusterIds\":{\"shape\":\"Sd\"},\"Engine\":{},\"ServiceUpdateStatus\":{\"shape\":\"S59\"},\"ServiceUpdateTimeRange\":{\"type\":\"structure\",\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"UpdateActionStatus\":{\"type\":\"list\",\"member\":{}},\"ShowNodeLevelUpdateStatus\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeUpdateActionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"UpdateActions\":{\"type\":\"list\",\"member\":{\"locationName\":\"UpdateAction\",\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"CacheClusterId\":{},\"ServiceUpdateName\":{},\"ServiceUpdateReleaseDate\":{\"type\":\"timestamp\"},\"ServiceUpdateSeverity\":{},\"ServiceUpdateStatus\":{},\"ServiceUpdateRecommendedApplyByDate\":{\"type\":\"timestamp\"},\"ServiceUpdateType\":{},\"UpdateActionAvailableDate\":{\"type\":\"timestamp\"},\"UpdateActionStatus\":{},\"NodesUpdated\":{},\"UpdateActionStatusModifiedDate\":{\"type\":\"timestamp\"},\"SlaMet\":{},\"NodeGroupUpdateStatus\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeGroupUpdateStatus\",\"type\":\"structure\",\"members\":{\"NodeGroupId\":{},\"NodeGroupMemberUpdateStatus\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeGroupMemberUpdateStatus\",\"type\":\"structure\",\"members\":{\"CacheClusterId\":{},\"CacheNodeId\":{},\"NodeUpdateStatus\":{},\"NodeDeletionDate\":{\"type\":\"timestamp\"},\"NodeUpdateStartDate\":{\"type\":\"timestamp\"},\"NodeUpdateEndDate\":{\"type\":\"timestamp\"},\"NodeUpdateInitiatedBy\":{},\"NodeUpdateInitiatedDate\":{\"type\":\"timestamp\"},\"NodeUpdateStatusModifiedDate\":{\"type\":\"timestamp\"}}}}}}},\"CacheNodeUpdateStatus\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheNodeUpdateStatus\",\"type\":\"structure\",\"members\":{\"CacheNodeId\":{},\"NodeUpdateStatus\":{},\"NodeDeletionDate\":{\"type\":\"timestamp\"},\"NodeUpdateStartDate\":{\"type\":\"timestamp\"},\"NodeUpdateEndDate\":{\"type\":\"timestamp\"},\"NodeUpdateInitiatedBy\":{},\"NodeUpdateInitiatedDate\":{\"type\":\"timestamp\"},\"NodeUpdateStatusModifiedDate\":{\"type\":\"timestamp\"}}}},\"EstimatedUpdateTime\":{},\"Engine\":{}}}}}}},\"DescribeUserGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserGroupId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeUserGroupsResult\",\"type\":\"structure\",\"members\":{\"UserGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S36\"}},\"Marker\":{}}}},\"DescribeUsers\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"UserId\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeUsersResult\",\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"shape\":\"S31\"}},\"Marker\":{}}}},\"DisassociateGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"ReplicationGroupId\",\"ReplicationGroupRegion\"],\"members\":{\"GlobalReplicationGroupId\":{},\"ReplicationGroupId\":{},\"ReplicationGroupRegion\":{}}},\"output\":{\"resultWrapper\":\"DisassociateGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"FailoverGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"PrimaryRegion\",\"PrimaryReplicationGroupId\"],\"members\":{\"GlobalReplicationGroupId\":{},\"PrimaryRegion\":{},\"PrimaryReplicationGroupId\":{}}},\"output\":{\"resultWrapper\":\"FailoverGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"IncreaseNodeGroupsInGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"NodeGroupCount\",\"ApplyImmediately\"],\"members\":{\"GlobalReplicationGroupId\":{},\"NodeGroupCount\":{\"type\":\"integer\"},\"RegionalConfigurations\":{\"type\":\"list\",\"member\":{\"locationName\":\"RegionalConfiguration\",\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"ReplicationGroupRegion\",\"ReshardingConfiguration\"],\"members\":{\"ReplicationGroupId\":{},\"ReplicationGroupRegion\":{},\"ReshardingConfiguration\":{\"shape\":\"S6g\"}}}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"IncreaseNodeGroupsInGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"IncreaseReplicaCount\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"ApplyImmediately\"],\"members\":{\"ReplicationGroupId\":{},\"NewReplicaCount\":{\"type\":\"integer\"},\"ReplicaConfiguration\":{\"shape\":\"S3e\"},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"IncreaseReplicaCountResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"ListAllowedNodeTypeModifications\":{\"input\":{\"type\":\"structure\",\"members\":{\"CacheClusterId\":{},\"ReplicationGroupId\":{}}},\"output\":{\"resultWrapper\":\"ListAllowedNodeTypeModificationsResult\",\"type\":\"structure\",\"members\":{\"ScaleUpModifications\":{\"shape\":\"S6n\"},\"ScaleDownModifications\":{\"shape\":\"S6n\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{}}},\"output\":{\"shape\":\"S5\",\"resultWrapper\":\"ListTagsForResourceResult\"}},\"ModifyCacheCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheClusterId\"],\"members\":{\"CacheClusterId\":{},\"NumCacheNodes\":{\"type\":\"integer\"},\"CacheNodeIdsToRemove\":{\"shape\":\"S1w\"},\"AZMode\":{},\"NewAvailabilityZones\":{\"shape\":\"S1n\"},\"CacheSecurityGroupNames\":{\"shape\":\"S1o\"},\"SecurityGroupIds\":{\"shape\":\"S1p\"},\"PreferredMaintenanceWindow\":{},\"NotificationTopicArn\":{},\"CacheParameterGroupName\":{},\"NotificationTopicStatus\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"CacheNodeType\":{},\"AuthToken\":{},\"AuthTokenUpdateStrategy\":{}}},\"output\":{\"resultWrapper\":\"ModifyCacheClusterResult\",\"type\":\"structure\",\"members\":{\"CacheCluster\":{\"shape\":\"S1u\"}}}},\"ModifyCacheParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheParameterGroupName\",\"ParameterNameValues\"],\"members\":{\"CacheParameterGroupName\":{},\"ParameterNameValues\":{\"shape\":\"S6t\"}}},\"output\":{\"shape\":\"S6v\",\"resultWrapper\":\"ModifyCacheParameterGroupResult\"}},\"ModifyCacheSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSubnetGroupName\"],\"members\":{\"CacheSubnetGroupName\":{},\"CacheSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S2b\"}}},\"output\":{\"resultWrapper\":\"ModifyCacheSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"CacheSubnetGroup\":{\"shape\":\"S2d\"}}}},\"ModifyGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"ApplyImmediately\"],\"members\":{\"GlobalReplicationGroupId\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"CacheNodeType\":{},\"EngineVersion\":{},\"CacheParameterGroupName\":{},\"GlobalReplicationGroupDescription\":{},\"AutomaticFailoverEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"ModifyReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\"],\"members\":{\"ReplicationGroupId\":{},\"ReplicationGroupDescription\":{},\"PrimaryClusterId\":{},\"SnapshottingClusterId\":{},\"AutomaticFailoverEnabled\":{\"type\":\"boolean\"},\"MultiAZEnabled\":{\"type\":\"boolean\"},\"NodeGroupId\":{\"deprecated\":true},\"CacheSecurityGroupNames\":{\"shape\":\"S1o\"},\"SecurityGroupIds\":{\"shape\":\"S1p\"},\"PreferredMaintenanceWindow\":{},\"NotificationTopicArn\":{},\"CacheParameterGroupName\":{},\"NotificationTopicStatus\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"CacheNodeType\":{},\"AuthToken\":{},\"AuthTokenUpdateStrategy\":{},\"UserGroupIdsToAdd\":{\"shape\":\"Sx\"},\"UserGroupIdsToRemove\":{\"shape\":\"Sx\"},\"RemoveUserGroups\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"ModifyReplicationGroupShardConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"NodeGroupCount\",\"ApplyImmediately\"],\"members\":{\"ReplicationGroupId\":{},\"NodeGroupCount\":{\"type\":\"integer\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"ReshardingConfiguration\":{\"shape\":\"S6g\"},\"NodeGroupsToRemove\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeGroupToRemove\"}},\"NodeGroupsToRetain\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeGroupToRetain\"}}}},\"output\":{\"resultWrapper\":\"ModifyReplicationGroupShardConfigurationResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"ModifyUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{},\"AccessString\":{},\"AppendAccessString\":{},\"Passwords\":{\"shape\":\"S2z\"},\"NoPasswordRequired\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S31\",\"resultWrapper\":\"ModifyUserResult\"}},\"ModifyUserGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserGroupId\"],\"members\":{\"UserGroupId\":{},\"UserIdsToAdd\":{\"shape\":\"S35\"},\"UserIdsToRemove\":{\"shape\":\"S35\"}}},\"output\":{\"shape\":\"S36\",\"resultWrapper\":\"ModifyUserGroupResult\"}},\"PurchaseReservedCacheNodesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedCacheNodesOfferingId\"],\"members\":{\"ReservedCacheNodesOfferingId\":{},\"ReservedCacheNodeId\":{},\"CacheNodeCount\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedCacheNodesOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedCacheNode\":{\"shape\":\"S51\"}}}},\"RebalanceSlotsInGlobalReplicationGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalReplicationGroupId\",\"ApplyImmediately\"],\"members\":{\"GlobalReplicationGroupId\":{},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebalanceSlotsInGlobalReplicationGroupResult\",\"type\":\"structure\",\"members\":{\"GlobalReplicationGroup\":{\"shape\":\"S2k\"}}}},\"RebootCacheCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheClusterId\",\"CacheNodeIdsToReboot\"],\"members\":{\"CacheClusterId\":{},\"CacheNodeIdsToReboot\":{\"shape\":\"S1w\"}}},\"output\":{\"resultWrapper\":\"RebootCacheClusterResult\",\"type\":\"structure\",\"members\":{\"CacheCluster\":{\"shape\":\"S1u\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"shape\":\"S5\",\"resultWrapper\":\"RemoveTagsFromResourceResult\"}},\"ResetCacheParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheParameterGroupName\"],\"members\":{\"CacheParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"ParameterNameValues\":{\"shape\":\"S6t\"}}},\"output\":{\"shape\":\"S6v\",\"resultWrapper\":\"ResetCacheParameterGroupResult\"}},\"RevokeCacheSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"CacheSecurityGroupName\",\"EC2SecurityGroupName\",\"EC2SecurityGroupOwnerId\"],\"members\":{\"CacheSecurityGroupName\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeCacheSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"CacheSecurityGroup\":{\"shape\":\"S8\"}}}},\"StartMigration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"CustomerNodeEndpointList\"],\"members\":{\"ReplicationGroupId\":{},\"CustomerNodeEndpointList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}}}}},\"output\":{\"resultWrapper\":\"StartMigrationResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}},\"TestFailover\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplicationGroupId\",\"NodeGroupId\"],\"members\":{\"ReplicationGroupId\":{},\"NodeGroupId\":{}}},\"output\":{\"resultWrapper\":\"TestFailoverResult\",\"type\":\"structure\",\"members\":{\"ReplicationGroup\":{\"shape\":\"So\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S5\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S3\"}}},\"S8\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"CacheSecurityGroupName\":{},\"Description\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupOwnerId\":{}}}},\"ARN\":{}},\"wrapper\":true},\"Sc\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"structure\",\"members\":{\"ProcessedUpdateActions\":{\"type\":\"list\",\"member\":{\"locationName\":\"ProcessedUpdateAction\",\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"CacheClusterId\":{},\"ServiceUpdateName\":{},\"UpdateActionStatus\":{}}}},\"UnprocessedUpdateActions\":{\"type\":\"list\",\"member\":{\"locationName\":\"UnprocessedUpdateAction\",\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"CacheClusterId\":{},\"ServiceUpdateName\":{},\"ErrorType\":{},\"ErrorMessage\":{}}}}}},\"So\":{\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"Description\":{},\"GlobalReplicationGroupInfo\":{\"type\":\"structure\",\"members\":{\"GlobalReplicationGroupId\":{},\"GlobalReplicationGroupMemberRole\":{}}},\"Status\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"PrimaryClusterId\":{},\"AutomaticFailoverStatus\":{},\"Resharding\":{\"type\":\"structure\",\"members\":{\"SlotMigration\":{\"type\":\"structure\",\"members\":{\"ProgressPercentage\":{\"type\":\"double\"}}}}},\"AuthTokenStatus\":{},\"UserGroups\":{\"type\":\"structure\",\"members\":{\"UserGroupIdsToAdd\":{\"shape\":\"Sx\"},\"UserGroupIdsToRemove\":{\"shape\":\"Sx\"}}}}},\"MemberClusters\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterId\"}},\"NodeGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeGroup\",\"type\":\"structure\",\"members\":{\"NodeGroupId\":{},\"Status\":{},\"PrimaryEndpoint\":{\"shape\":\"S12\"},\"ReaderEndpoint\":{\"shape\":\"S12\"},\"Slots\":{},\"NodeGroupMembers\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeGroupMember\",\"type\":\"structure\",\"members\":{\"CacheClusterId\":{},\"CacheNodeId\":{},\"ReadEndpoint\":{\"shape\":\"S12\"},\"PreferredAvailabilityZone\":{},\"PreferredOutpostArn\":{},\"CurrentRole\":{}}}}}}},\"SnapshottingClusterId\":{},\"AutomaticFailover\":{},\"MultiAZ\":{},\"ConfigurationEndpoint\":{\"shape\":\"S12\"},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"ClusterEnabled\":{\"type\":\"boolean\"},\"CacheNodeType\":{},\"AuthTokenEnabled\":{\"type\":\"boolean\"},\"AuthTokenLastModifiedDate\":{\"type\":\"timestamp\"},\"TransitEncryptionEnabled\":{\"type\":\"boolean\"},\"AtRestEncryptionEnabled\":{\"type\":\"boolean\"},\"MemberClustersOutpostArns\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReplicationGroupOutpostArn\"}},\"KmsKeyId\":{},\"ARN\":{},\"UserGroupIds\":{\"shape\":\"Sx\"}},\"wrapper\":true},\"Sx\":{\"type\":\"list\",\"member\":{}},\"S12\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"SnapshotName\":{},\"ReplicationGroupId\":{},\"ReplicationGroupDescription\":{},\"CacheClusterId\":{},\"SnapshotStatus\":{},\"SnapshotSource\":{},\"CacheNodeType\":{},\"Engine\":{},\"EngineVersion\":{},\"NumCacheNodes\":{\"type\":\"integer\"},\"PreferredAvailabilityZone\":{},\"PreferredOutpostArn\":{},\"CacheClusterCreateTime\":{\"type\":\"timestamp\"},\"PreferredMaintenanceWindow\":{},\"TopicArn\":{},\"Port\":{\"type\":\"integer\"},\"CacheParameterGroupName\":{},\"CacheSubnetGroupName\":{},\"VpcId\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"NumNodeGroups\":{\"type\":\"integer\"},\"AutomaticFailover\":{},\"NodeSnapshots\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeSnapshot\",\"type\":\"structure\",\"members\":{\"CacheClusterId\":{},\"NodeGroupId\":{},\"CacheNodeId\":{},\"NodeGroupConfiguration\":{\"shape\":\"S1h\"},\"CacheSize\":{},\"CacheNodeCreateTime\":{\"type\":\"timestamp\"},\"SnapshotCreateTime\":{\"type\":\"timestamp\"}},\"wrapper\":true}},\"KmsKeyId\":{},\"ARN\":{}},\"wrapper\":true},\"S1h\":{\"type\":\"structure\",\"members\":{\"NodeGroupId\":{},\"Slots\":{},\"ReplicaCount\":{\"type\":\"integer\"},\"PrimaryAvailabilityZone\":{},\"ReplicaAvailabilityZones\":{\"shape\":\"S1j\"},\"PrimaryOutpostArn\":{},\"ReplicaOutpostArns\":{\"type\":\"list\",\"member\":{\"locationName\":\"OutpostArn\"}}}},\"S1j\":{\"type\":\"list\",\"member\":{\"locationName\":\"AvailabilityZone\"}},\"S1n\":{\"type\":\"list\",\"member\":{\"locationName\":\"PreferredAvailabilityZone\"}},\"S1o\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheSecurityGroupName\"}},\"S1p\":{\"type\":\"list\",\"member\":{\"locationName\":\"SecurityGroupId\"}},\"S1q\":{\"type\":\"list\",\"member\":{\"locationName\":\"SnapshotArn\"}},\"S1s\":{\"type\":\"list\",\"member\":{\"locationName\":\"PreferredOutpostArn\"}},\"S1u\":{\"type\":\"structure\",\"members\":{\"CacheClusterId\":{},\"ConfigurationEndpoint\":{\"shape\":\"S12\"},\"ClientDownloadLandingPage\":{},\"CacheNodeType\":{},\"Engine\":{},\"EngineVersion\":{},\"CacheClusterStatus\":{},\"NumCacheNodes\":{\"type\":\"integer\"},\"PreferredAvailabilityZone\":{},\"PreferredOutpostArn\":{},\"CacheClusterCreateTime\":{\"type\":\"timestamp\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"NumCacheNodes\":{\"type\":\"integer\"},\"CacheNodeIdsToRemove\":{\"shape\":\"S1w\"},\"EngineVersion\":{},\"CacheNodeType\":{},\"AuthTokenStatus\":{}}},\"NotificationConfiguration\":{\"type\":\"structure\",\"members\":{\"TopicArn\":{},\"TopicStatus\":{}}},\"CacheSecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheSecurityGroup\",\"type\":\"structure\",\"members\":{\"CacheSecurityGroupName\":{},\"Status\":{}}}},\"CacheParameterGroup\":{\"type\":\"structure\",\"members\":{\"CacheParameterGroupName\":{},\"ParameterApplyStatus\":{},\"CacheNodeIdsToReboot\":{\"shape\":\"S1w\"}}},\"CacheSubnetGroupName\":{},\"CacheNodes\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheNode\",\"type\":\"structure\",\"members\":{\"CacheNodeId\":{},\"CacheNodeStatus\":{},\"CacheNodeCreateTime\":{\"type\":\"timestamp\"},\"Endpoint\":{\"shape\":\"S12\"},\"ParameterGroupStatus\":{},\"SourceCacheNodeId\":{},\"CustomerAvailabilityZone\":{},\"CustomerOutpostArn\":{}}}},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"SecurityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SecurityGroupId\":{},\"Status\":{}}}},\"ReplicationGroupId\":{},\"SnapshotRetentionLimit\":{\"type\":\"integer\"},\"SnapshotWindow\":{},\"AuthTokenEnabled\":{\"type\":\"boolean\"},\"AuthTokenLastModifiedDate\":{\"type\":\"timestamp\"},\"TransitEncryptionEnabled\":{\"type\":\"boolean\"},\"AtRestEncryptionEnabled\":{\"type\":\"boolean\"},\"ARN\":{}},\"wrapper\":true},\"S1w\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheNodeId\"}},\"S27\":{\"type\":\"structure\",\"members\":{\"CacheParameterGroupName\":{},\"CacheParameterGroupFamily\":{},\"Description\":{},\"IsGlobal\":{\"type\":\"boolean\"},\"ARN\":{}},\"wrapper\":true},\"S2b\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S2d\":{\"type\":\"structure\",\"members\":{\"CacheSubnetGroupName\":{},\"CacheSubnetGroupDescription\":{},\"VpcId\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"type\":\"structure\",\"members\":{\"Name\":{}},\"wrapper\":true},\"SubnetOutpost\":{\"type\":\"structure\",\"members\":{\"SubnetOutpostArn\":{}}}}}},\"ARN\":{}},\"wrapper\":true},\"S2k\":{\"type\":\"structure\",\"members\":{\"GlobalReplicationGroupId\":{},\"GlobalReplicationGroupDescription\":{},\"Status\":{},\"CacheNodeType\":{},\"Engine\":{},\"EngineVersion\":{},\"Members\":{\"type\":\"list\",\"member\":{\"locationName\":\"GlobalReplicationGroupMember\",\"type\":\"structure\",\"members\":{\"ReplicationGroupId\":{},\"ReplicationGroupRegion\":{},\"Role\":{},\"AutomaticFailover\":{},\"Status\":{}},\"wrapper\":true}},\"ClusterEnabled\":{\"type\":\"boolean\"},\"GlobalNodeGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"GlobalNodeGroup\",\"type\":\"structure\",\"members\":{\"GlobalNodeGroupId\":{},\"Slots\":{}}}},\"AuthTokenEnabled\":{\"type\":\"boolean\"},\"TransitEncryptionEnabled\":{\"type\":\"boolean\"},\"AtRestEncryptionEnabled\":{\"type\":\"boolean\"},\"ARN\":{}},\"wrapper\":true},\"S2z\":{\"type\":\"list\",\"member\":{}},\"S31\":{\"type\":\"structure\",\"members\":{\"UserId\":{},\"UserName\":{},\"Status\":{},\"Engine\":{},\"AccessString\":{},\"UserGroupIds\":{\"shape\":\"Sx\"},\"Authentication\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"PasswordCount\":{\"type\":\"integer\"}}},\"ARN\":{}}},\"S35\":{\"type\":\"list\",\"member\":{}},\"S36\":{\"type\":\"structure\",\"members\":{\"UserGroupId\":{},\"Status\":{},\"Engine\":{},\"UserIds\":{\"shape\":\"S37\"},\"PendingChanges\":{\"type\":\"structure\",\"members\":{\"UserIdsToRemove\":{\"shape\":\"S37\"},\"UserIdsToAdd\":{\"shape\":\"S37\"}}},\"ReplicationGroups\":{\"type\":\"list\",\"member\":{}},\"ARN\":{}}},\"S37\":{\"type\":\"list\",\"member\":{}},\"S3b\":{\"type\":\"list\",\"member\":{\"locationName\":\"GlobalNodeGroupId\"}},\"S3e\":{\"type\":\"list\",\"member\":{\"locationName\":\"ConfigureShard\",\"type\":\"structure\",\"required\":[\"NodeGroupId\",\"NewReplicaCount\"],\"members\":{\"NodeGroupId\":{},\"NewReplicaCount\":{\"type\":\"integer\"},\"PreferredAvailabilityZones\":{\"shape\":\"S1n\"},\"PreferredOutpostArns\":{\"shape\":\"S1s\"}}}},\"S47\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ChangeType\":{}}}},\"S4a\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheNodeTypeSpecificParameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"Description\":{},\"Source\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"CacheNodeTypeSpecificValues\":{\"type\":\"list\",\"member\":{\"locationName\":\"CacheNodeTypeSpecificValue\",\"type\":\"structure\",\"members\":{\"CacheNodeType\":{},\"Value\":{}}}},\"ChangeType\":{}}}},\"S51\":{\"type\":\"structure\",\"members\":{\"ReservedCacheNodeId\":{},\"ReservedCacheNodesOfferingId\":{},\"CacheNodeType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CacheNodeCount\":{\"type\":\"integer\"},\"ProductDescription\":{},\"OfferingType\":{},\"State\":{},\"RecurringCharges\":{\"shape\":\"S52\"},\"ReservationARN\":{}},\"wrapper\":true},\"S52\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"S59\":{\"type\":\"list\",\"member\":{}},\"S6g\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReshardingConfiguration\",\"type\":\"structure\",\"members\":{\"NodeGroupId\":{},\"PreferredAvailabilityZones\":{\"shape\":\"S1j\"}}}},\"S6n\":{\"type\":\"list\",\"member\":{}},\"S6t\":{\"type\":\"list\",\"member\":{\"locationName\":\"ParameterNameValue\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{}}}},\"S6v\":{\"type\":\"structure\",\"members\":{\"CacheParameterGroupName\":{}}}}}");

/***/ }),

/***/ 47954:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCacheClusters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"CacheClusters\"},\"DescribeCacheEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"CacheEngineVersions\"},\"DescribeCacheParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"CacheParameterGroups\"},\"DescribeCacheParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeCacheSecurityGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"CacheSecurityGroups\"},\"DescribeCacheSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"CacheSubnetGroups\"},\"DescribeEngineDefaultParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"EngineDefaults.Marker\",\"result_key\":\"EngineDefaults.Parameters\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeGlobalReplicationGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"GlobalReplicationGroups\"},\"DescribeReplicationGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReplicationGroups\"},\"DescribeReservedCacheNodes\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedCacheNodes\"},\"DescribeReservedCacheNodesOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedCacheNodesOfferings\"},\"DescribeServiceUpdates\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ServiceUpdates\"},\"DescribeSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Snapshots\"},\"DescribeUpdateActions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"UpdateActions\"},\"DescribeUserGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"UserGroups\"},\"DescribeUsers\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Users\"}}}");

/***/ }),

/***/ 35402:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"CacheClusterAvailable\":{\"acceptors\":[{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"incompatible-network\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"restore-failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":15,\"description\":\"Wait until ElastiCache cluster is available.\",\"maxAttempts\":40,\"operation\":\"DescribeCacheClusters\"},\"CacheClusterDeleted\":{\"acceptors\":[{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"expected\":\"CacheClusterNotFound\",\"matcher\":\"error\",\"state\":\"success\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"available\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"incompatible-network\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"restore-failed\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"argument\":\"CacheClusters[].CacheClusterStatus\",\"expected\":\"snapshotting\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":15,\"description\":\"Wait until ElastiCache cluster is deleted.\",\"maxAttempts\":40,\"operation\":\"DescribeCacheClusters\"},\"ReplicationGroupAvailable\":{\"acceptors\":[{\"argument\":\"ReplicationGroups[].Status\",\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"ReplicationGroups[].Status\",\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\"}],\"delay\":15,\"description\":\"Wait until ElastiCache replication group is available.\",\"maxAttempts\":40,\"operation\":\"DescribeReplicationGroups\"},\"ReplicationGroupDeleted\":{\"acceptors\":[{\"argument\":\"ReplicationGroups[].Status\",\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"argument\":\"ReplicationGroups[].Status\",\"expected\":\"available\",\"matcher\":\"pathAny\",\"state\":\"failure\"},{\"expected\":\"ReplicationGroupNotFoundFault\",\"matcher\":\"error\",\"state\":\"success\"}],\"delay\":15,\"description\":\"Wait until ElastiCache replication group is deleted.\",\"maxAttempts\":40,\"operation\":\"DescribeReplicationGroups\"}}}");

/***/ }),

/***/ 26770:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2010-12-01\",\"endpointPrefix\":\"elasticbeanstalk\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Elastic Beanstalk\",\"serviceFullName\":\"AWS Elastic Beanstalk\",\"serviceId\":\"Elastic Beanstalk\",\"signatureVersion\":\"v4\",\"uid\":\"elasticbeanstalk-2010-12-01\",\"xmlNamespace\":\"http://elasticbeanstalk.amazonaws.com/docs/2010-12-01/\"},\"operations\":{\"AbortEnvironmentUpdate\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{}}}},\"ApplyEnvironmentManagedAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActionId\"],\"members\":{\"EnvironmentName\":{},\"EnvironmentId\":{},\"ActionId\":{}}},\"output\":{\"resultWrapper\":\"ApplyEnvironmentManagedActionResult\",\"type\":\"structure\",\"members\":{\"ActionId\":{},\"ActionDescription\":{},\"ActionType\":{},\"Status\":{}}}},\"AssociateEnvironmentOperationsRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"EnvironmentName\",\"OperationsRole\"],\"members\":{\"EnvironmentName\":{},\"OperationsRole\":{}}}},\"CheckDNSAvailability\":{\"input\":{\"type\":\"structure\",\"required\":[\"CNAMEPrefix\"],\"members\":{\"CNAMEPrefix\":{}}},\"output\":{\"resultWrapper\":\"CheckDNSAvailabilityResult\",\"type\":\"structure\",\"members\":{\"Available\":{\"type\":\"boolean\"},\"FullyQualifiedCNAME\":{}}}},\"ComposeEnvironments\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"GroupName\":{},\"VersionLabels\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"shape\":\"Sk\",\"resultWrapper\":\"ComposeEnvironmentsResult\"}},\"CreateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"Description\":{},\"ResourceLifecycleConfig\":{\"shape\":\"S19\"},\"Tags\":{\"shape\":\"S1f\"}}},\"output\":{\"shape\":\"S1j\",\"resultWrapper\":\"CreateApplicationResult\"}},\"CreateApplicationVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"VersionLabel\"],\"members\":{\"ApplicationName\":{},\"VersionLabel\":{},\"Description\":{},\"SourceBuildInformation\":{\"shape\":\"S1p\"},\"SourceBundle\":{\"shape\":\"S1t\"},\"BuildConfiguration\":{\"type\":\"structure\",\"required\":[\"CodeBuildServiceRole\",\"Image\"],\"members\":{\"ArtifactName\":{},\"CodeBuildServiceRole\":{},\"ComputeType\":{},\"Image\":{},\"TimeoutInMinutes\":{\"type\":\"integer\"}}},\"AutoCreateApplication\":{\"type\":\"boolean\"},\"Process\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S1f\"}}},\"output\":{\"shape\":\"S21\",\"resultWrapper\":\"CreateApplicationVersionResult\"}},\"CreateConfigurationTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"TemplateName\"],\"members\":{\"ApplicationName\":{},\"TemplateName\":{},\"SolutionStackName\":{},\"PlatformArn\":{},\"SourceConfiguration\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"TemplateName\":{}}},\"EnvironmentId\":{},\"Description\":{},\"OptionSettings\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1f\"}}},\"output\":{\"shape\":\"S2d\",\"resultWrapper\":\"CreateConfigurationTemplateResult\"}},\"CreateEnvironment\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"EnvironmentName\":{},\"GroupName\":{},\"Description\":{},\"CNAMEPrefix\":{},\"Tier\":{\"shape\":\"S13\"},\"Tags\":{\"shape\":\"S1f\"},\"VersionLabel\":{},\"TemplateName\":{},\"SolutionStackName\":{},\"PlatformArn\":{},\"OptionSettings\":{\"shape\":\"S27\"},\"OptionsToRemove\":{\"shape\":\"S2g\"},\"OperationsRole\":{}}},\"output\":{\"shape\":\"Sm\",\"resultWrapper\":\"CreateEnvironmentResult\"}},\"CreatePlatformVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlatformName\",\"PlatformVersion\",\"PlatformDefinitionBundle\"],\"members\":{\"PlatformName\":{},\"PlatformVersion\":{},\"PlatformDefinitionBundle\":{\"shape\":\"S1t\"},\"EnvironmentName\":{},\"OptionSettings\":{\"shape\":\"S27\"},\"Tags\":{\"shape\":\"S1f\"}}},\"output\":{\"resultWrapper\":\"CreatePlatformVersionResult\",\"type\":\"structure\",\"members\":{\"PlatformSummary\":{\"shape\":\"S2m\"},\"Builder\":{\"type\":\"structure\",\"members\":{\"ARN\":{}}}}}},\"CreateStorageLocation\":{\"output\":{\"resultWrapper\":\"CreateStorageLocationResult\",\"type\":\"structure\",\"members\":{\"S3Bucket\":{}}}},\"DeleteApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"TerminateEnvByForce\":{\"type\":\"boolean\"}}}},\"DeleteApplicationVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"VersionLabel\"],\"members\":{\"ApplicationName\":{},\"VersionLabel\":{},\"DeleteSourceBundle\":{\"type\":\"boolean\"}}}},\"DeleteConfigurationTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"TemplateName\"],\"members\":{\"ApplicationName\":{},\"TemplateName\":{}}}},\"DeleteEnvironmentConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"EnvironmentName\"],\"members\":{\"ApplicationName\":{},\"EnvironmentName\":{}}}},\"DeletePlatformVersion\":{\"input\":{\"type\":\"structure\",\"members\":{\"PlatformArn\":{}}},\"output\":{\"resultWrapper\":\"DeletePlatformVersionResult\",\"type\":\"structure\",\"members\":{\"PlatformSummary\":{\"shape\":\"S2m\"}}}},\"DescribeAccountAttributes\":{\"output\":{\"resultWrapper\":\"DescribeAccountAttributesResult\",\"type\":\"structure\",\"members\":{\"ResourceQuotas\":{\"type\":\"structure\",\"members\":{\"ApplicationQuota\":{\"shape\":\"S3c\"},\"ApplicationVersionQuota\":{\"shape\":\"S3c\"},\"EnvironmentQuota\":{\"shape\":\"S3c\"},\"ConfigurationTemplateQuota\":{\"shape\":\"S3c\"},\"CustomPlatformQuota\":{\"shape\":\"S3c\"}}}}}},\"DescribeApplicationVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"VersionLabels\":{\"shape\":\"S1m\"},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeApplicationVersionsResult\",\"type\":\"structure\",\"members\":{\"ApplicationVersions\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"NextToken\":{}}}},\"DescribeApplications\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeApplicationsResult\",\"type\":\"structure\",\"members\":{\"Applications\":{\"type\":\"list\",\"member\":{\"shape\":\"S1k\"}}}}},\"DescribeConfigurationOptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"TemplateName\":{},\"EnvironmentName\":{},\"SolutionStackName\":{},\"PlatformArn\":{},\"Options\":{\"shape\":\"S2g\"}}},\"output\":{\"resultWrapper\":\"DescribeConfigurationOptionsResult\",\"type\":\"structure\",\"members\":{\"SolutionStackName\":{},\"PlatformArn\":{},\"Options\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Namespace\":{},\"Name\":{},\"DefaultValue\":{},\"ChangeSeverity\":{},\"UserDefined\":{\"type\":\"boolean\"},\"ValueType\":{},\"ValueOptions\":{\"type\":\"list\",\"member\":{}},\"MinValue\":{\"type\":\"integer\"},\"MaxValue\":{\"type\":\"integer\"},\"MaxLength\":{\"type\":\"integer\"},\"Regex\":{\"type\":\"structure\",\"members\":{\"Pattern\":{},\"Label\":{}}}}}}}}},\"DescribeConfigurationSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"TemplateName\":{},\"EnvironmentName\":{}}},\"output\":{\"resultWrapper\":\"DescribeConfigurationSettingsResult\",\"type\":\"structure\",\"members\":{\"ConfigurationSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}}}}},\"DescribeEnvironmentHealth\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentName\":{},\"EnvironmentId\":{},\"AttributeNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeEnvironmentHealthResult\",\"type\":\"structure\",\"members\":{\"EnvironmentName\":{},\"HealthStatus\":{},\"Status\":{},\"Color\":{},\"Causes\":{\"shape\":\"S48\"},\"ApplicationMetrics\":{\"shape\":\"S4a\"},\"InstancesHealth\":{\"type\":\"structure\",\"members\":{\"NoData\":{\"type\":\"integer\"},\"Unknown\":{\"type\":\"integer\"},\"Pending\":{\"type\":\"integer\"},\"Ok\":{\"type\":\"integer\"},\"Info\":{\"type\":\"integer\"},\"Warning\":{\"type\":\"integer\"},\"Degraded\":{\"type\":\"integer\"},\"Severe\":{\"type\":\"integer\"}}},\"RefreshedAt\":{\"type\":\"timestamp\"}}}},\"DescribeEnvironmentManagedActionHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{},\"NextToken\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeEnvironmentManagedActionHistoryResult\",\"type\":\"structure\",\"members\":{\"ManagedActionHistoryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionId\":{},\"ActionType\":{},\"ActionDescription\":{},\"FailureType\":{},\"Status\":{},\"FailureDescription\":{},\"ExecutedTime\":{\"type\":\"timestamp\"},\"FinishedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeEnvironmentManagedActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentName\":{},\"EnvironmentId\":{},\"Status\":{}}},\"output\":{\"resultWrapper\":\"DescribeEnvironmentManagedActionsResult\",\"type\":\"structure\",\"members\":{\"ManagedActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionId\":{},\"ActionDescription\":{},\"ActionType\":{},\"Status\":{},\"WindowStartTime\":{\"type\":\"timestamp\"}}}}}}},\"DescribeEnvironmentResources\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{}}},\"output\":{\"resultWrapper\":\"DescribeEnvironmentResourcesResult\",\"type\":\"structure\",\"members\":{\"EnvironmentResources\":{\"type\":\"structure\",\"members\":{\"EnvironmentName\":{},\"AutoScalingGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{}}}},\"LaunchConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"LaunchTemplates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{}}}},\"LoadBalancers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"Triggers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"Queues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"URL\":{}}}}}}}}},\"DescribeEnvironments\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"VersionLabel\":{},\"EnvironmentIds\":{\"type\":\"list\",\"member\":{}},\"EnvironmentNames\":{\"type\":\"list\",\"member\":{}},\"IncludeDeleted\":{\"type\":\"boolean\"},\"IncludedDeletedBackTo\":{\"type\":\"timestamp\"},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"shape\":\"Sk\",\"resultWrapper\":\"DescribeEnvironmentsResult\"}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"VersionLabel\":{},\"TemplateName\":{},\"EnvironmentId\":{},\"EnvironmentName\":{},\"PlatformArn\":{},\"RequestId\":{},\"Severity\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventDate\":{\"type\":\"timestamp\"},\"Message\":{},\"ApplicationName\":{},\"VersionLabel\":{},\"TemplateName\":{},\"EnvironmentName\":{},\"PlatformArn\":{},\"RequestId\":{},\"Severity\":{}}}},\"NextToken\":{}}}},\"DescribeInstancesHealth\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentName\":{},\"EnvironmentId\":{},\"AttributeNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeInstancesHealthResult\",\"type\":\"structure\",\"members\":{\"InstanceHealthList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"HealthStatus\":{},\"Color\":{},\"Causes\":{\"shape\":\"S48\"},\"LaunchedAt\":{\"type\":\"timestamp\"},\"ApplicationMetrics\":{\"shape\":\"S4a\"},\"System\":{\"type\":\"structure\",\"members\":{\"CPUUtilization\":{\"type\":\"structure\",\"members\":{\"User\":{\"type\":\"double\"},\"Nice\":{\"type\":\"double\"},\"System\":{\"type\":\"double\"},\"Idle\":{\"type\":\"double\"},\"IOWait\":{\"type\":\"double\"},\"IRQ\":{\"type\":\"double\"},\"SoftIRQ\":{\"type\":\"double\"},\"Privileged\":{\"type\":\"double\"}}},\"LoadAverage\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}},\"Deployment\":{\"type\":\"structure\",\"members\":{\"VersionLabel\":{},\"DeploymentId\":{\"type\":\"long\"},\"Status\":{},\"DeploymentTime\":{\"type\":\"timestamp\"}}},\"AvailabilityZone\":{},\"InstanceType\":{}}}},\"RefreshedAt\":{\"type\":\"timestamp\"},\"NextToken\":{}}}},\"DescribePlatformVersion\":{\"input\":{\"type\":\"structure\",\"members\":{\"PlatformArn\":{}}},\"output\":{\"resultWrapper\":\"DescribePlatformVersionResult\",\"type\":\"structure\",\"members\":{\"PlatformDescription\":{\"type\":\"structure\",\"members\":{\"PlatformArn\":{},\"PlatformOwner\":{},\"PlatformName\":{},\"PlatformVersion\":{},\"SolutionStackName\":{},\"PlatformStatus\":{},\"DateCreated\":{\"type\":\"timestamp\"},\"DateUpdated\":{\"type\":\"timestamp\"},\"PlatformCategory\":{},\"Description\":{},\"Maintainer\":{},\"OperatingSystemName\":{},\"OperatingSystemVersion\":{},\"ProgrammingLanguages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{}}}},\"Frameworks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{}}}},\"CustomAmiList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VirtualizationType\":{},\"ImageId\":{}}}},\"SupportedTierList\":{\"shape\":\"S2s\"},\"SupportedAddonList\":{\"shape\":\"S2u\"},\"PlatformLifecycleState\":{},\"PlatformBranchName\":{},\"PlatformBranchLifecycleState\":{}}}}}},\"DisassociateEnvironmentOperationsRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"EnvironmentName\"],\"members\":{\"EnvironmentName\":{}}}},\"ListAvailableSolutionStacks\":{\"output\":{\"resultWrapper\":\"ListAvailableSolutionStacksResult\",\"type\":\"structure\",\"members\":{\"SolutionStacks\":{\"type\":\"list\",\"member\":{}},\"SolutionStackDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SolutionStackName\":{},\"PermittedFileTypes\":{\"type\":\"list\",\"member\":{}}}}}}}},\"ListPlatformBranches\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Attribute\":{},\"Operator\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListPlatformBranchesResult\",\"type\":\"structure\",\"members\":{\"PlatformBranchSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlatformName\":{},\"BranchName\":{},\"LifecycleState\":{},\"BranchOrder\":{\"type\":\"integer\"},\"SupportedTierList\":{\"shape\":\"S2s\"}}}},\"NextToken\":{}}}},\"ListPlatformVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Operator\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListPlatformVersionsResult\",\"type\":\"structure\",\"members\":{\"PlatformSummaryList\":{\"type\":\"list\",\"member\":{\"shape\":\"S2m\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceTags\":{\"shape\":\"S7g\"}}}},\"RebuildEnvironment\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{}}}},\"RequestEnvironmentInfo\":{\"input\":{\"type\":\"structure\",\"required\":[\"InfoType\"],\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{},\"InfoType\":{}}}},\"RestartAppServer\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{}}}},\"RetrieveEnvironmentInfo\":{\"input\":{\"type\":\"structure\",\"required\":[\"InfoType\"],\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{},\"InfoType\":{}}},\"output\":{\"resultWrapper\":\"RetrieveEnvironmentInfoResult\",\"type\":\"structure\",\"members\":{\"EnvironmentInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InfoType\":{},\"Ec2InstanceId\":{},\"SampleTimestamp\":{\"type\":\"timestamp\"},\"Message\":{}}}}}}},\"SwapEnvironmentCNAMEs\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceEnvironmentId\":{},\"SourceEnvironmentName\":{},\"DestinationEnvironmentId\":{},\"DestinationEnvironmentName\":{}}}},\"TerminateEnvironment\":{\"input\":{\"type\":\"structure\",\"members\":{\"EnvironmentId\":{},\"EnvironmentName\":{},\"TerminateResources\":{\"type\":\"boolean\"},\"ForceTerminate\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"Sm\",\"resultWrapper\":\"TerminateEnvironmentResult\"}},\"UpdateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"Description\":{}}},\"output\":{\"shape\":\"S1j\",\"resultWrapper\":\"UpdateApplicationResult\"}},\"UpdateApplicationResourceLifecycle\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"ResourceLifecycleConfig\"],\"members\":{\"ApplicationName\":{},\"ResourceLifecycleConfig\":{\"shape\":\"S19\"}}},\"output\":{\"resultWrapper\":\"UpdateApplicationResourceLifecycleResult\",\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"ResourceLifecycleConfig\":{\"shape\":\"S19\"}}}},\"UpdateApplicationVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"VersionLabel\"],\"members\":{\"ApplicationName\":{},\"VersionLabel\":{},\"Description\":{}}},\"output\":{\"shape\":\"S21\",\"resultWrapper\":\"UpdateApplicationVersionResult\"}},\"UpdateConfigurationTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"TemplateName\"],\"members\":{\"ApplicationName\":{},\"TemplateName\":{},\"Description\":{},\"OptionSettings\":{\"shape\":\"S27\"},\"OptionsToRemove\":{\"shape\":\"S2g\"}}},\"output\":{\"shape\":\"S2d\",\"resultWrapper\":\"UpdateConfigurationTemplateResult\"}},\"UpdateEnvironment\":{\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationName\":{},\"EnvironmentId\":{},\"EnvironmentName\":{},\"GroupName\":{},\"Description\":{},\"Tier\":{\"shape\":\"S13\"},\"VersionLabel\":{},\"TemplateName\":{},\"SolutionStackName\":{},\"PlatformArn\":{},\"OptionSettings\":{\"shape\":\"S27\"},\"OptionsToRemove\":{\"shape\":\"S2g\"}}},\"output\":{\"shape\":\"Sm\",\"resultWrapper\":\"UpdateEnvironmentResult\"}},\"UpdateTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"TagsToAdd\":{\"shape\":\"S7g\"},\"TagsToRemove\":{\"type\":\"list\",\"member\":{}}}}},\"ValidateConfigurationSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"OptionSettings\"],\"members\":{\"ApplicationName\":{},\"TemplateName\":{},\"EnvironmentName\":{},\"OptionSettings\":{\"shape\":\"S27\"}}},\"output\":{\"resultWrapper\":\"ValidateConfigurationSettingsResult\",\"type\":\"structure\",\"members\":{\"Messages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Message\":{},\"Severity\":{},\"Namespace\":{},\"OptionName\":{}}}}}}}},\"shapes\":{\"Sk\":{\"type\":\"structure\",\"members\":{\"Environments\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}},\"NextToken\":{}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"EnvironmentName\":{},\"EnvironmentId\":{},\"ApplicationName\":{},\"VersionLabel\":{},\"SolutionStackName\":{},\"PlatformArn\":{},\"TemplateName\":{},\"Description\":{},\"EndpointURL\":{},\"CNAME\":{},\"DateCreated\":{\"type\":\"timestamp\"},\"DateUpdated\":{\"type\":\"timestamp\"},\"Status\":{},\"AbortableOperationInProgress\":{\"type\":\"boolean\"},\"Health\":{},\"HealthStatus\":{},\"Resources\":{\"type\":\"structure\",\"members\":{\"LoadBalancer\":{\"type\":\"structure\",\"members\":{\"LoadBalancerName\":{},\"Domain\":{},\"Listeners\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Protocol\":{},\"Port\":{\"type\":\"integer\"}}}}}}}},\"Tier\":{\"shape\":\"S13\"},\"EnvironmentLinks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LinkName\":{},\"EnvironmentName\":{}}}},\"EnvironmentArn\":{},\"OperationsRole\":{}}},\"S13\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"Version\":{}}},\"S19\":{\"type\":\"structure\",\"members\":{\"ServiceRole\":{},\"VersionLifecycleConfig\":{\"type\":\"structure\",\"members\":{\"MaxCountRule\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"MaxCount\":{\"type\":\"integer\"},\"DeleteSourceFromS3\":{\"type\":\"boolean\"}}},\"MaxAgeRule\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"MaxAgeInDays\":{\"type\":\"integer\"},\"DeleteSourceFromS3\":{\"type\":\"boolean\"}}}}}}},\"S1f\":{\"type\":\"list\",\"member\":{\"shape\":\"S1g\"}},\"S1g\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"Application\":{\"shape\":\"S1k\"}}},\"S1k\":{\"type\":\"structure\",\"members\":{\"ApplicationArn\":{},\"ApplicationName\":{},\"Description\":{},\"DateCreated\":{\"type\":\"timestamp\"},\"DateUpdated\":{\"type\":\"timestamp\"},\"Versions\":{\"shape\":\"S1m\"},\"ConfigurationTemplates\":{\"type\":\"list\",\"member\":{}},\"ResourceLifecycleConfig\":{\"shape\":\"S19\"}}},\"S1m\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"structure\",\"required\":[\"SourceType\",\"SourceRepository\",\"SourceLocation\"],\"members\":{\"SourceType\":{},\"SourceRepository\":{},\"SourceLocation\":{}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{},\"S3Key\":{}}},\"S21\":{\"type\":\"structure\",\"members\":{\"ApplicationVersion\":{\"shape\":\"S22\"}}},\"S22\":{\"type\":\"structure\",\"members\":{\"ApplicationVersionArn\":{},\"ApplicationName\":{},\"Description\":{},\"VersionLabel\":{},\"SourceBuildInformation\":{\"shape\":\"S1p\"},\"BuildArn\":{},\"SourceBundle\":{\"shape\":\"S1t\"},\"DateCreated\":{\"type\":\"timestamp\"},\"DateUpdated\":{\"type\":\"timestamp\"},\"Status\":{}}},\"S27\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceName\":{},\"Namespace\":{},\"OptionName\":{},\"Value\":{}}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"SolutionStackName\":{},\"PlatformArn\":{},\"ApplicationName\":{},\"TemplateName\":{},\"Description\":{},\"EnvironmentName\":{},\"DeploymentStatus\":{},\"DateCreated\":{\"type\":\"timestamp\"},\"DateUpdated\":{\"type\":\"timestamp\"},\"OptionSettings\":{\"shape\":\"S27\"}}},\"S2g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceName\":{},\"Namespace\":{},\"OptionName\":{}}}},\"S2m\":{\"type\":\"structure\",\"members\":{\"PlatformArn\":{},\"PlatformOwner\":{},\"PlatformStatus\":{},\"PlatformCategory\":{},\"OperatingSystemName\":{},\"OperatingSystemVersion\":{},\"SupportedTierList\":{\"shape\":\"S2s\"},\"SupportedAddonList\":{\"shape\":\"S2u\"},\"PlatformLifecycleState\":{},\"PlatformVersion\":{},\"PlatformBranchName\":{},\"PlatformBranchLifecycleState\":{}}},\"S2s\":{\"type\":\"list\",\"member\":{}},\"S2u\":{\"type\":\"list\",\"member\":{}},\"S3c\":{\"type\":\"structure\",\"members\":{\"Maximum\":{\"type\":\"integer\"}}},\"S48\":{\"type\":\"list\",\"member\":{}},\"S4a\":{\"type\":\"structure\",\"members\":{\"Duration\":{\"type\":\"integer\"},\"RequestCount\":{\"type\":\"integer\"},\"StatusCodes\":{\"type\":\"structure\",\"members\":{\"Status2xx\":{\"type\":\"integer\"},\"Status3xx\":{\"type\":\"integer\"},\"Status4xx\":{\"type\":\"integer\"},\"Status5xx\":{\"type\":\"integer\"}}},\"Latency\":{\"type\":\"structure\",\"members\":{\"P999\":{\"type\":\"double\"},\"P99\":{\"type\":\"double\"},\"P95\":{\"type\":\"double\"},\"P90\":{\"type\":\"double\"},\"P85\":{\"type\":\"double\"},\"P75\":{\"type\":\"double\"},\"P50\":{\"type\":\"double\"},\"P10\":{\"type\":\"double\"}}}}},\"S7g\":{\"type\":\"list\",\"member\":{\"shape\":\"S1g\"}}}}");

/***/ }),

/***/ 14282:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeApplicationVersions\":{\"result_key\":\"ApplicationVersions\"},\"DescribeApplications\":{\"result_key\":\"Applications\"},\"DescribeConfigurationOptions\":{\"result_key\":\"Options\"},\"DescribeEnvironmentManagedActionHistory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextToken\",\"result_key\":\"ManagedActionHistoryItems\"},\"DescribeEnvironments\":{\"result_key\":\"Environments\"},\"DescribeEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"Events\"},\"ListAvailableSolutionStacks\":{\"result_key\":\"SolutionStacks\"},\"ListPlatformBranches\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\"},\"ListPlatformVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"PlatformSummaryList\"}}}");

/***/ }),

/***/ 125:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"EnvironmentExists\":{\"delay\":20,\"maxAttempts\":20,\"operation\":\"DescribeEnvironments\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Environments[].Status\",\"expected\":\"Ready\"},{\"state\":\"retry\",\"matcher\":\"pathAll\",\"argument\":\"Environments[].Status\",\"expected\":\"Launching\"}]},\"EnvironmentUpdated\":{\"delay\":20,\"maxAttempts\":20,\"operation\":\"DescribeEnvironments\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Environments[].Status\",\"expected\":\"Ready\"},{\"state\":\"retry\",\"matcher\":\"pathAll\",\"argument\":\"Environments[].Status\",\"expected\":\"Updating\"}]},\"EnvironmentTerminated\":{\"delay\":20,\"maxAttempts\":20,\"operation\":\"DescribeEnvironments\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Environments[].Status\",\"expected\":\"Terminated\"},{\"state\":\"retry\",\"matcher\":\"pathAll\",\"argument\":\"Environments[].Status\",\"expected\":\"Terminating\"}]}}}");

/***/ }),

/***/ 54989:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-02-01\",\"endpointPrefix\":\"elasticfilesystem\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"EFS\",\"serviceFullName\":\"Amazon Elastic File System\",\"serviceId\":\"EFS\",\"signatureVersion\":\"v4\",\"uid\":\"elasticfilesystem-2015-02-01\"},\"operations\":{\"CreateAccessPoint\":{\"http\":{\"requestUri\":\"/2015-02-01/access-points\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"FileSystemId\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S3\"},\"FileSystemId\":{},\"PosixUser\":{\"shape\":\"S8\"},\"RootDirectory\":{\"shape\":\"Sc\"}}},\"output\":{\"shape\":\"Si\"}},\"CreateFileSystem\":{\"http\":{\"requestUri\":\"/2015-02-01/file-systems\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"CreationToken\"],\"members\":{\"CreationToken\":{\"idempotencyToken\":true},\"PerformanceMode\":{},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"ThroughputMode\":{},\"ProvisionedThroughputInMibps\":{\"type\":\"double\"},\"AvailabilityZoneName\":{},\"Backup\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"shape\":\"Sx\"}},\"CreateMountTarget\":{\"http\":{\"requestUri\":\"/2015-02-01/mount-targets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"SubnetId\"],\"members\":{\"FileSystemId\":{},\"SubnetId\":{},\"IpAddress\":{},\"SecurityGroups\":{\"shape\":\"S18\"}}},\"output\":{\"shape\":\"S1a\"}},\"CreateTags\":{\"http\":{\"requestUri\":\"/2015-02-01/create-tags/{FileSystemId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"Tags\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"},\"Tags\":{\"shape\":\"S3\"}}},\"deprecated\":true,\"deprecatedMessage\":\"Use TagResource.\"},\"DeleteAccessPoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-02-01/access-points/{AccessPointId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccessPointId\"],\"members\":{\"AccessPointId\":{\"location\":\"uri\",\"locationName\":\"AccessPointId\"}}}},\"DeleteFileSystem\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"}}}},\"DeleteFileSystemPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"}}}},\"DeleteMountTarget\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-02-01/mount-targets/{MountTargetId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MountTargetId\"],\"members\":{\"MountTargetId\":{\"location\":\"uri\",\"locationName\":\"MountTargetId\"}}}},\"DeleteTags\":{\"http\":{\"requestUri\":\"/2015-02-01/delete-tags/{FileSystemId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"TagKeys\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"},\"TagKeys\":{\"shape\":\"S1k\"}}},\"deprecated\":true,\"deprecatedMessage\":\"Use UntagResource.\"},\"DescribeAccessPoints\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/access-points\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"AccessPointId\":{\"location\":\"querystring\",\"locationName\":\"AccessPointId\"},\"FileSystemId\":{\"location\":\"querystring\",\"locationName\":\"FileSystemId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccessPoints\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"NextToken\":{}}}},\"DescribeBackupPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/backup-policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"}}},\"output\":{\"shape\":\"S1r\"}},\"DescribeFileSystemPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"}}},\"output\":{\"shape\":\"S1v\"}},\"DescribeFileSystems\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/file-systems\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"CreationToken\":{\"location\":\"querystring\",\"locationName\":\"CreationToken\"},\"FileSystemId\":{\"location\":\"querystring\",\"locationName\":\"FileSystemId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"FileSystems\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\"}},\"NextMarker\":{}}}},\"DescribeLifecycleConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/lifecycle-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"}}},\"output\":{\"shape\":\"S23\"}},\"DescribeMountTargetSecurityGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/mount-targets/{MountTargetId}/security-groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MountTargetId\"],\"members\":{\"MountTargetId\":{\"location\":\"uri\",\"locationName\":\"MountTargetId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"SecurityGroups\"],\"members\":{\"SecurityGroups\":{\"shape\":\"S18\"}}}},\"DescribeMountTargets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/mount-targets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"FileSystemId\":{\"location\":\"querystring\",\"locationName\":\"FileSystemId\"},\"MountTargetId\":{\"location\":\"querystring\",\"locationName\":\"MountTargetId\"},\"AccessPointId\":{\"location\":\"querystring\",\"locationName\":\"AccessPointId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"MountTargets\":{\"type\":\"list\",\"member\":{\"shape\":\"S1a\"}},\"NextMarker\":{}}}},\"DescribeTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/tags/{FileSystemId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Marker\":{},\"Tags\":{\"shape\":\"S3\"},\"NextMarker\":{}}},\"deprecated\":true,\"deprecatedMessage\":\"Use ListTagsForResource.\"},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-02-01/resource-tags/{ResourceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S3\"},\"NextToken\":{}}}},\"ModifyMountTargetSecurityGroups\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-02-01/mount-targets/{MountTargetId}/security-groups\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"MountTargetId\"],\"members\":{\"MountTargetId\":{\"location\":\"uri\",\"locationName\":\"MountTargetId\"},\"SecurityGroups\":{\"shape\":\"S18\"}}}},\"PutBackupPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/backup-policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"BackupPolicy\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"},\"BackupPolicy\":{\"shape\":\"S1s\"}}},\"output\":{\"shape\":\"S1r\"}},\"PutFileSystemPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"Policy\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"},\"Policy\":{},\"BypassPolicyLockoutSafetyCheck\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S1v\"}},\"PutLifecycleConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}/lifecycle-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"LifecyclePolicies\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"},\"LifecyclePolicies\":{\"shape\":\"S24\"}}},\"output\":{\"shape\":\"S23\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/2015-02-01/resource-tags/{ResourceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Tags\"],\"members\":{\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"Tags\":{\"shape\":\"S3\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-02-01/resource-tags/{ResourceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagKeys\"],\"members\":{\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"TagKeys\":{\"shape\":\"S1k\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}}}},\"UpdateFileSystem\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-02-01/file-systems/{FileSystemId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{\"location\":\"uri\",\"locationName\":\"FileSystemId\"},\"ThroughputMode\":{},\"ProvisionedThroughputInMibps\":{\"type\":\"double\"}}},\"output\":{\"shape\":\"Sx\"}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S8\":{\"type\":\"structure\",\"required\":[\"Uid\",\"Gid\"],\"members\":{\"Uid\":{\"type\":\"long\"},\"Gid\":{\"type\":\"long\"},\"SecondaryGids\":{\"type\":\"list\",\"member\":{\"type\":\"long\"}}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"CreationInfo\":{\"type\":\"structure\",\"required\":[\"OwnerUid\",\"OwnerGid\",\"Permissions\"],\"members\":{\"OwnerUid\":{\"type\":\"long\"},\"OwnerGid\":{\"type\":\"long\"},\"Permissions\":{}}}}},\"Si\":{\"type\":\"structure\",\"members\":{\"ClientToken\":{},\"Name\":{},\"Tags\":{\"shape\":\"S3\"},\"AccessPointId\":{},\"AccessPointArn\":{},\"FileSystemId\":{},\"PosixUser\":{\"shape\":\"S8\"},\"RootDirectory\":{\"shape\":\"Sc\"},\"OwnerId\":{},\"LifeCycleState\":{}}},\"Sx\":{\"type\":\"structure\",\"required\":[\"OwnerId\",\"CreationToken\",\"FileSystemId\",\"CreationTime\",\"LifeCycleState\",\"NumberOfMountTargets\",\"SizeInBytes\",\"PerformanceMode\",\"Tags\"],\"members\":{\"OwnerId\":{},\"CreationToken\":{},\"FileSystemId\":{},\"FileSystemArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LifeCycleState\":{},\"Name\":{},\"NumberOfMountTargets\":{\"type\":\"integer\"},\"SizeInBytes\":{\"type\":\"structure\",\"required\":[\"Value\"],\"members\":{\"Value\":{\"type\":\"long\"},\"Timestamp\":{\"type\":\"timestamp\"},\"ValueInIA\":{\"type\":\"long\"},\"ValueInStandard\":{\"type\":\"long\"}}},\"PerformanceMode\":{},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"ThroughputMode\":{},\"ProvisionedThroughputInMibps\":{\"type\":\"double\"},\"AvailabilityZoneName\":{},\"AvailabilityZoneId\":{},\"Tags\":{\"shape\":\"S3\"}}},\"S18\":{\"type\":\"list\",\"member\":{}},\"S1a\":{\"type\":\"structure\",\"required\":[\"MountTargetId\",\"FileSystemId\",\"SubnetId\",\"LifeCycleState\"],\"members\":{\"OwnerId\":{},\"MountTargetId\":{},\"FileSystemId\":{},\"SubnetId\":{},\"LifeCycleState\":{},\"IpAddress\":{},\"NetworkInterfaceId\":{},\"AvailabilityZoneId\":{},\"AvailabilityZoneName\":{},\"VpcId\":{}}},\"S1k\":{\"type\":\"list\",\"member\":{}},\"S1r\":{\"type\":\"structure\",\"members\":{\"BackupPolicy\":{\"shape\":\"S1s\"}}},\"S1s\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"FileSystemId\":{},\"Policy\":{}}},\"S23\":{\"type\":\"structure\",\"members\":{\"LifecyclePolicies\":{\"shape\":\"S24\"}}},\"S24\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TransitionToIA\":{}}}}}}");

/***/ }),

/***/ 73750:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAccessPoints\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeFileSystems\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"limit_key\":\"MaxItems\"},\"DescribeTags\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"limit_key\":\"MaxItems\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 16234:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-06-01\",\"endpointPrefix\":\"elasticloadbalancing\",\"protocol\":\"query\",\"serviceFullName\":\"Elastic Load Balancing\",\"serviceId\":\"Elastic Load Balancing\",\"signatureVersion\":\"v4\",\"uid\":\"elasticloadbalancing-2012-06-01\",\"xmlNamespace\":\"http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/\"},\"operations\":{\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerNames\",\"Tags\"],\"members\":{\"LoadBalancerNames\":{\"shape\":\"S2\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"resultWrapper\":\"AddTagsResult\",\"type\":\"structure\",\"members\":{}}},\"ApplySecurityGroupsToLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"SecurityGroups\"],\"members\":{\"LoadBalancerName\":{},\"SecurityGroups\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"ApplySecurityGroupsToLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"SecurityGroups\":{\"shape\":\"Sa\"}}}},\"AttachLoadBalancerToSubnets\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"Subnets\"],\"members\":{\"LoadBalancerName\":{},\"Subnets\":{\"shape\":\"Se\"}}},\"output\":{\"resultWrapper\":\"AttachLoadBalancerToSubnetsResult\",\"type\":\"structure\",\"members\":{\"Subnets\":{\"shape\":\"Se\"}}}},\"ConfigureHealthCheck\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"HealthCheck\"],\"members\":{\"LoadBalancerName\":{},\"HealthCheck\":{\"shape\":\"Si\"}}},\"output\":{\"resultWrapper\":\"ConfigureHealthCheckResult\",\"type\":\"structure\",\"members\":{\"HealthCheck\":{\"shape\":\"Si\"}}}},\"CreateAppCookieStickinessPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"PolicyName\",\"CookieName\"],\"members\":{\"LoadBalancerName\":{},\"PolicyName\":{},\"CookieName\":{}}},\"output\":{\"resultWrapper\":\"CreateAppCookieStickinessPolicyResult\",\"type\":\"structure\",\"members\":{}}},\"CreateLBCookieStickinessPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"PolicyName\"],\"members\":{\"LoadBalancerName\":{},\"PolicyName\":{},\"CookieExpirationPeriod\":{\"type\":\"long\"}}},\"output\":{\"resultWrapper\":\"CreateLBCookieStickinessPolicyResult\",\"type\":\"structure\",\"members\":{}}},\"CreateLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"Listeners\"],\"members\":{\"LoadBalancerName\":{},\"Listeners\":{\"shape\":\"Sx\"},\"AvailabilityZones\":{\"shape\":\"S13\"},\"Subnets\":{\"shape\":\"Se\"},\"SecurityGroups\":{\"shape\":\"Sa\"},\"Scheme\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"resultWrapper\":\"CreateLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"DNSName\":{}}}},\"CreateLoadBalancerListeners\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"Listeners\"],\"members\":{\"LoadBalancerName\":{},\"Listeners\":{\"shape\":\"Sx\"}}},\"output\":{\"resultWrapper\":\"CreateLoadBalancerListenersResult\",\"type\":\"structure\",\"members\":{}}},\"CreateLoadBalancerPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"PolicyName\",\"PolicyTypeName\"],\"members\":{\"LoadBalancerName\":{},\"PolicyName\":{},\"PolicyTypeName\":{},\"PolicyAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValue\":{}}}}}},\"output\":{\"resultWrapper\":\"CreateLoadBalancerPolicyResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\"],\"members\":{\"LoadBalancerName\":{}}},\"output\":{\"resultWrapper\":\"DeleteLoadBalancerResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteLoadBalancerListeners\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"LoadBalancerPorts\"],\"members\":{\"LoadBalancerName\":{},\"LoadBalancerPorts\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}}}},\"output\":{\"resultWrapper\":\"DeleteLoadBalancerListenersResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteLoadBalancerPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"PolicyName\"],\"members\":{\"LoadBalancerName\":{},\"PolicyName\":{}}},\"output\":{\"resultWrapper\":\"DeleteLoadBalancerPolicyResult\",\"type\":\"structure\",\"members\":{}}},\"DeregisterInstancesFromLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"Instances\"],\"members\":{\"LoadBalancerName\":{},\"Instances\":{\"shape\":\"S1p\"}}},\"output\":{\"resultWrapper\":\"DeregisterInstancesFromLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"Instances\":{\"shape\":\"S1p\"}}}},\"DescribeAccountLimits\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeAccountLimitsResult\",\"type\":\"structure\",\"members\":{\"Limits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Max\":{}}}},\"NextMarker\":{}}}},\"DescribeInstanceHealth\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\"],\"members\":{\"LoadBalancerName\":{},\"Instances\":{\"shape\":\"S1p\"}}},\"output\":{\"resultWrapper\":\"DescribeInstanceHealthResult\",\"type\":\"structure\",\"members\":{\"InstanceStates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"State\":{},\"ReasonCode\":{},\"Description\":{}}}}}}},\"DescribeLoadBalancerAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\"],\"members\":{\"LoadBalancerName\":{}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancerAttributesResult\",\"type\":\"structure\",\"members\":{\"LoadBalancerAttributes\":{\"shape\":\"S2a\"}}}},\"DescribeLoadBalancerPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"LoadBalancerName\":{},\"PolicyNames\":{\"shape\":\"S2s\"}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancerPoliciesResult\",\"type\":\"structure\",\"members\":{\"PolicyDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"PolicyTypeName\":{},\"PolicyAttributeDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValue\":{}}}}}}}}}},\"DescribeLoadBalancerPolicyTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"PolicyTypeNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancerPolicyTypesResult\",\"type\":\"structure\",\"members\":{\"PolicyTypeDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyTypeName\":{},\"Description\":{},\"PolicyAttributeTypeDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeType\":{},\"Description\":{},\"DefaultValue\":{},\"Cardinality\":{}}}}}}}}}},\"DescribeLoadBalancers\":{\"input\":{\"type\":\"structure\",\"members\":{\"LoadBalancerNames\":{\"shape\":\"S2\"},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancersResult\",\"type\":\"structure\",\"members\":{\"LoadBalancerDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LoadBalancerName\":{},\"DNSName\":{},\"CanonicalHostedZoneName\":{},\"CanonicalHostedZoneNameID\":{},\"ListenerDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"Sy\"},\"PolicyNames\":{\"shape\":\"S2s\"}}}},\"Policies\":{\"type\":\"structure\",\"members\":{\"AppCookieStickinessPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"CookieName\":{}}}},\"LBCookieStickinessPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"CookieExpirationPeriod\":{\"type\":\"long\"}}}},\"OtherPolicies\":{\"shape\":\"S2s\"}}},\"BackendServerDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstancePort\":{\"type\":\"integer\"},\"PolicyNames\":{\"shape\":\"S2s\"}}}},\"AvailabilityZones\":{\"shape\":\"S13\"},\"Subnets\":{\"shape\":\"Se\"},\"VPCId\":{},\"Instances\":{\"shape\":\"S1p\"},\"HealthCheck\":{\"shape\":\"Si\"},\"SourceSecurityGroup\":{\"type\":\"structure\",\"members\":{\"OwnerAlias\":{},\"GroupName\":{}}},\"SecurityGroups\":{\"shape\":\"Sa\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"Scheme\":{}}}},\"NextMarker\":{}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerNames\"],\"members\":{\"LoadBalancerNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeTagsResult\",\"type\":\"structure\",\"members\":{\"TagDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LoadBalancerName\":{},\"Tags\":{\"shape\":\"S4\"}}}}}}},\"DetachLoadBalancerFromSubnets\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"Subnets\"],\"members\":{\"LoadBalancerName\":{},\"Subnets\":{\"shape\":\"Se\"}}},\"output\":{\"resultWrapper\":\"DetachLoadBalancerFromSubnetsResult\",\"type\":\"structure\",\"members\":{\"Subnets\":{\"shape\":\"Se\"}}}},\"DisableAvailabilityZonesForLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"AvailabilityZones\"],\"members\":{\"LoadBalancerName\":{},\"AvailabilityZones\":{\"shape\":\"S13\"}}},\"output\":{\"resultWrapper\":\"DisableAvailabilityZonesForLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S13\"}}}},\"EnableAvailabilityZonesForLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"AvailabilityZones\"],\"members\":{\"LoadBalancerName\":{},\"AvailabilityZones\":{\"shape\":\"S13\"}}},\"output\":{\"resultWrapper\":\"EnableAvailabilityZonesForLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S13\"}}}},\"ModifyLoadBalancerAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"LoadBalancerAttributes\"],\"members\":{\"LoadBalancerName\":{},\"LoadBalancerAttributes\":{\"shape\":\"S2a\"}}},\"output\":{\"resultWrapper\":\"ModifyLoadBalancerAttributesResult\",\"type\":\"structure\",\"members\":{\"LoadBalancerName\":{},\"LoadBalancerAttributes\":{\"shape\":\"S2a\"}}}},\"RegisterInstancesWithLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"Instances\"],\"members\":{\"LoadBalancerName\":{},\"Instances\":{\"shape\":\"S1p\"}}},\"output\":{\"resultWrapper\":\"RegisterInstancesWithLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"Instances\":{\"shape\":\"S1p\"}}}},\"RemoveTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerNames\",\"Tags\"],\"members\":{\"LoadBalancerNames\":{\"shape\":\"S2\"},\"Tags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{}}}}}},\"output\":{\"resultWrapper\":\"RemoveTagsResult\",\"type\":\"structure\",\"members\":{}}},\"SetLoadBalancerListenerSSLCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"LoadBalancerPort\",\"SSLCertificateId\"],\"members\":{\"LoadBalancerName\":{},\"LoadBalancerPort\":{\"type\":\"integer\"},\"SSLCertificateId\":{}}},\"output\":{\"resultWrapper\":\"SetLoadBalancerListenerSSLCertificateResult\",\"type\":\"structure\",\"members\":{}}},\"SetLoadBalancerPoliciesForBackendServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"InstancePort\",\"PolicyNames\"],\"members\":{\"LoadBalancerName\":{},\"InstancePort\":{\"type\":\"integer\"},\"PolicyNames\":{\"shape\":\"S2s\"}}},\"output\":{\"resultWrapper\":\"SetLoadBalancerPoliciesForBackendServerResult\",\"type\":\"structure\",\"members\":{}}},\"SetLoadBalancerPoliciesOfListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerName\",\"LoadBalancerPort\",\"PolicyNames\"],\"members\":{\"LoadBalancerName\":{},\"LoadBalancerPort\":{\"type\":\"integer\"},\"PolicyNames\":{\"shape\":\"S2s\"}}},\"output\":{\"resultWrapper\":\"SetLoadBalancerPoliciesOfListenerResult\",\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sa\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"structure\",\"required\":[\"Target\",\"Interval\",\"Timeout\",\"UnhealthyThreshold\",\"HealthyThreshold\"],\"members\":{\"Target\":{},\"Interval\":{\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"UnhealthyThreshold\":{\"type\":\"integer\"},\"HealthyThreshold\":{\"type\":\"integer\"}}},\"Sx\":{\"type\":\"list\",\"member\":{\"shape\":\"Sy\"}},\"Sy\":{\"type\":\"structure\",\"required\":[\"Protocol\",\"LoadBalancerPort\",\"InstancePort\"],\"members\":{\"Protocol\":{},\"LoadBalancerPort\":{\"type\":\"integer\"},\"InstanceProtocol\":{},\"InstancePort\":{\"type\":\"integer\"},\"SSLCertificateId\":{}}},\"S13\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{}}}},\"S2a\":{\"type\":\"structure\",\"members\":{\"CrossZoneLoadBalancing\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"AccessLog\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"S3BucketName\":{},\"EmitInterval\":{\"type\":\"integer\"},\"S3BucketPrefix\":{}}},\"ConnectionDraining\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Timeout\":{\"type\":\"integer\"}}},\"ConnectionSettings\":{\"type\":\"structure\",\"required\":[\"IdleTimeout\"],\"members\":{\"IdleTimeout\":{\"type\":\"integer\"}}},\"AdditionalAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}},\"S2s\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 87921:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeInstanceHealth\":{\"result_key\":\"InstanceStates\"},\"DescribeLoadBalancerPolicies\":{\"result_key\":\"PolicyDescriptions\"},\"DescribeLoadBalancerPolicyTypes\":{\"result_key\":\"PolicyTypeDescriptions\"},\"DescribeLoadBalancers\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"result_key\":\"LoadBalancerDescriptions\"}}}");

/***/ }),

/***/ 41073:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"InstanceDeregistered\":{\"delay\":15,\"operation\":\"DescribeInstanceHealth\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":\"OutOfService\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"InstanceStates[].State\"},{\"matcher\":\"error\",\"expected\":\"InvalidInstance\",\"state\":\"success\"}]},\"AnyInstanceInService\":{\"acceptors\":[{\"argument\":\"InstanceStates[].State\",\"expected\":\"InService\",\"matcher\":\"pathAny\",\"state\":\"success\"}],\"delay\":15,\"maxAttempts\":40,\"operation\":\"DescribeInstanceHealth\"},\"InstanceInService\":{\"acceptors\":[{\"argument\":\"InstanceStates[].State\",\"expected\":\"InService\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"InvalidInstance\",\"state\":\"retry\"}],\"delay\":15,\"maxAttempts\":40,\"operation\":\"DescribeInstanceHealth\"}}}");

/***/ }),

/***/ 95067:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-12-01\",\"endpointPrefix\":\"elasticloadbalancing\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Elastic Load Balancing v2\",\"serviceFullName\":\"Elastic Load Balancing\",\"serviceId\":\"Elastic Load Balancing v2\",\"signatureVersion\":\"v4\",\"uid\":\"elasticloadbalancingv2-2015-12-01\",\"xmlNamespace\":\"http://elasticloadbalancing.amazonaws.com/doc/2015-12-01/\"},\"operations\":{\"AddListenerCertificates\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\",\"Certificates\"],\"members\":{\"ListenerArn\":{},\"Certificates\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"AddListenerCertificatesResult\",\"type\":\"structure\",\"members\":{\"Certificates\":{\"shape\":\"S3\"}}}},\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArns\",\"Tags\"],\"members\":{\"ResourceArns\":{\"shape\":\"S9\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"AddTagsResult\",\"type\":\"structure\",\"members\":{}}},\"CreateListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\",\"DefaultActions\"],\"members\":{\"LoadBalancerArn\":{},\"Protocol\":{},\"Port\":{\"type\":\"integer\"},\"SslPolicy\":{},\"Certificates\":{\"shape\":\"S3\"},\"DefaultActions\":{\"shape\":\"Sl\"},\"AlpnPolicy\":{\"shape\":\"S1y\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateListenerResult\",\"type\":\"structure\",\"members\":{\"Listeners\":{\"shape\":\"S21\"}}}},\"CreateLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Subnets\":{\"shape\":\"S25\"},\"SubnetMappings\":{\"shape\":\"S27\"},\"SecurityGroups\":{\"shape\":\"S2c\"},\"Scheme\":{},\"Tags\":{\"shape\":\"Sb\"},\"Type\":{},\"IpAddressType\":{},\"CustomerOwnedIpv4Pool\":{}}},\"output\":{\"resultWrapper\":\"CreateLoadBalancerResult\",\"type\":\"structure\",\"members\":{\"LoadBalancers\":{\"shape\":\"S2j\"}}}},\"CreateRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\",\"Conditions\",\"Priority\",\"Actions\"],\"members\":{\"ListenerArn\":{},\"Conditions\":{\"shape\":\"S30\"},\"Priority\":{\"type\":\"integer\"},\"Actions\":{\"shape\":\"Sl\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateRuleResult\",\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S3g\"}}}},\"CreateTargetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Protocol\":{},\"ProtocolVersion\":{},\"Port\":{\"type\":\"integer\"},\"VpcId\":{},\"HealthCheckProtocol\":{},\"HealthCheckPort\":{},\"HealthCheckEnabled\":{\"type\":\"boolean\"},\"HealthCheckPath\":{},\"HealthCheckIntervalSeconds\":{\"type\":\"integer\"},\"HealthCheckTimeoutSeconds\":{\"type\":\"integer\"},\"HealthyThresholdCount\":{\"type\":\"integer\"},\"UnhealthyThresholdCount\":{\"type\":\"integer\"},\"Matcher\":{\"shape\":\"S3u\"},\"TargetType\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateTargetGroupResult\",\"type\":\"structure\",\"members\":{\"TargetGroups\":{\"shape\":\"S3z\"}}}},\"DeleteListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{}}},\"output\":{\"resultWrapper\":\"DeleteListenerResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\"],\"members\":{\"LoadBalancerArn\":{}}},\"output\":{\"resultWrapper\":\"DeleteLoadBalancerResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleArn\"],\"members\":{\"RuleArn\":{}}},\"output\":{\"resultWrapper\":\"DeleteRuleResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteTargetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\"],\"members\":{\"TargetGroupArn\":{}}},\"output\":{\"resultWrapper\":\"DeleteTargetGroupResult\",\"type\":\"structure\",\"members\":{}}},\"DeregisterTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\",\"Targets\"],\"members\":{\"TargetGroupArn\":{},\"Targets\":{\"shape\":\"S4b\"}}},\"output\":{\"resultWrapper\":\"DeregisterTargetsResult\",\"type\":\"structure\",\"members\":{}}},\"DescribeAccountLimits\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeAccountLimitsResult\",\"type\":\"structure\",\"members\":{\"Limits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Max\":{}}}},\"NextMarker\":{}}}},\"DescribeListenerCertificates\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeListenerCertificatesResult\",\"type\":\"structure\",\"members\":{\"Certificates\":{\"shape\":\"S3\"},\"NextMarker\":{}}}},\"DescribeListeners\":{\"input\":{\"type\":\"structure\",\"members\":{\"LoadBalancerArn\":{},\"ListenerArns\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeListenersResult\",\"type\":\"structure\",\"members\":{\"Listeners\":{\"shape\":\"S21\"},\"NextMarker\":{}}}},\"DescribeLoadBalancerAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\"],\"members\":{\"LoadBalancerArn\":{}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancerAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4u\"}}}},\"DescribeLoadBalancers\":{\"input\":{\"type\":\"structure\",\"members\":{\"LoadBalancerArns\":{\"shape\":\"S41\"},\"Names\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeLoadBalancersResult\",\"type\":\"structure\",\"members\":{\"LoadBalancers\":{\"shape\":\"S2j\"},\"NextMarker\":{}}}},\"DescribeRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"ListenerArn\":{},\"RuleArns\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeRulesResult\",\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S3g\"},\"NextMarker\":{}}}},\"DescribeSSLPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeSSLPoliciesResult\",\"type\":\"structure\",\"members\":{\"SslPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SslProtocols\":{\"type\":\"list\",\"member\":{}},\"Ciphers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Priority\":{\"type\":\"integer\"}}}},\"Name\":{}}}},\"NextMarker\":{}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArns\"],\"members\":{\"ResourceArns\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"DescribeTagsResult\",\"type\":\"structure\",\"members\":{\"TagDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sb\"}}}}}}},\"DescribeTargetGroupAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\"],\"members\":{\"TargetGroupArn\":{}}},\"output\":{\"resultWrapper\":\"DescribeTargetGroupAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5l\"}}}},\"DescribeTargetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"LoadBalancerArn\":{},\"TargetGroupArns\":{\"type\":\"list\",\"member\":{}},\"Names\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeTargetGroupsResult\",\"type\":\"structure\",\"members\":{\"TargetGroups\":{\"shape\":\"S3z\"},\"NextMarker\":{}}}},\"DescribeTargetHealth\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\"],\"members\":{\"TargetGroupArn\":{},\"Targets\":{\"shape\":\"S4b\"}}},\"output\":{\"resultWrapper\":\"DescribeTargetHealthResult\",\"type\":\"structure\",\"members\":{\"TargetHealthDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Target\":{\"shape\":\"S4c\"},\"HealthCheckPort\":{},\"TargetHealth\":{\"type\":\"structure\",\"members\":{\"State\":{},\"Reason\":{},\"Description\":{}}}}}}}}},\"ModifyListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{},\"Port\":{\"type\":\"integer\"},\"Protocol\":{},\"SslPolicy\":{},\"Certificates\":{\"shape\":\"S3\"},\"DefaultActions\":{\"shape\":\"Sl\"},\"AlpnPolicy\":{\"shape\":\"S1y\"}}},\"output\":{\"resultWrapper\":\"ModifyListenerResult\",\"type\":\"structure\",\"members\":{\"Listeners\":{\"shape\":\"S21\"}}}},\"ModifyLoadBalancerAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\",\"Attributes\"],\"members\":{\"LoadBalancerArn\":{},\"Attributes\":{\"shape\":\"S4u\"}}},\"output\":{\"resultWrapper\":\"ModifyLoadBalancerAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4u\"}}}},\"ModifyRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleArn\"],\"members\":{\"RuleArn\":{},\"Conditions\":{\"shape\":\"S30\"},\"Actions\":{\"shape\":\"Sl\"}}},\"output\":{\"resultWrapper\":\"ModifyRuleResult\",\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S3g\"}}}},\"ModifyTargetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\"],\"members\":{\"TargetGroupArn\":{},\"HealthCheckProtocol\":{},\"HealthCheckPort\":{},\"HealthCheckPath\":{},\"HealthCheckEnabled\":{\"type\":\"boolean\"},\"HealthCheckIntervalSeconds\":{\"type\":\"integer\"},\"HealthCheckTimeoutSeconds\":{\"type\":\"integer\"},\"HealthyThresholdCount\":{\"type\":\"integer\"},\"UnhealthyThresholdCount\":{\"type\":\"integer\"},\"Matcher\":{\"shape\":\"S3u\"}}},\"output\":{\"resultWrapper\":\"ModifyTargetGroupResult\",\"type\":\"structure\",\"members\":{\"TargetGroups\":{\"shape\":\"S3z\"}}}},\"ModifyTargetGroupAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\",\"Attributes\"],\"members\":{\"TargetGroupArn\":{},\"Attributes\":{\"shape\":\"S5l\"}}},\"output\":{\"resultWrapper\":\"ModifyTargetGroupAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S5l\"}}}},\"RegisterTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupArn\",\"Targets\"],\"members\":{\"TargetGroupArn\":{},\"Targets\":{\"shape\":\"S4b\"}}},\"output\":{\"resultWrapper\":\"RegisterTargetsResult\",\"type\":\"structure\",\"members\":{}}},\"RemoveListenerCertificates\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\",\"Certificates\"],\"members\":{\"ListenerArn\":{},\"Certificates\":{\"shape\":\"S3\"}}},\"output\":{\"resultWrapper\":\"RemoveListenerCertificatesResult\",\"type\":\"structure\",\"members\":{}}},\"RemoveTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArns\",\"TagKeys\"],\"members\":{\"ResourceArns\":{\"shape\":\"S9\"},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"RemoveTagsResult\",\"type\":\"structure\",\"members\":{}}},\"SetIpAddressType\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\",\"IpAddressType\"],\"members\":{\"LoadBalancerArn\":{},\"IpAddressType\":{}}},\"output\":{\"resultWrapper\":\"SetIpAddressTypeResult\",\"type\":\"structure\",\"members\":{\"IpAddressType\":{}}}},\"SetRulePriorities\":{\"input\":{\"type\":\"structure\",\"required\":[\"RulePriorities\"],\"members\":{\"RulePriorities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleArn\":{},\"Priority\":{\"type\":\"integer\"}}}}}},\"output\":{\"resultWrapper\":\"SetRulePrioritiesResult\",\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S3g\"}}}},\"SetSecurityGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\",\"SecurityGroups\"],\"members\":{\"LoadBalancerArn\":{},\"SecurityGroups\":{\"shape\":\"S2c\"}}},\"output\":{\"resultWrapper\":\"SetSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"SecurityGroupIds\":{\"shape\":\"S2c\"}}}},\"SetSubnets\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoadBalancerArn\"],\"members\":{\"LoadBalancerArn\":{},\"Subnets\":{\"shape\":\"S25\"},\"SubnetMappings\":{\"shape\":\"S27\"},\"IpAddressType\":{}}},\"output\":{\"resultWrapper\":\"SetSubnetsResult\",\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S2s\"},\"IpAddressType\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"IsDefault\":{\"type\":\"boolean\"}}}},\"S9\":{\"type\":\"list\",\"member\":{}},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"TargetGroupArn\":{},\"AuthenticateOidcConfig\":{\"type\":\"structure\",\"required\":[\"Issuer\",\"AuthorizationEndpoint\",\"TokenEndpoint\",\"UserInfoEndpoint\",\"ClientId\"],\"members\":{\"Issuer\":{},\"AuthorizationEndpoint\":{},\"TokenEndpoint\":{},\"UserInfoEndpoint\":{},\"ClientId\":{},\"ClientSecret\":{},\"SessionCookieName\":{},\"Scope\":{},\"SessionTimeout\":{\"type\":\"long\"},\"AuthenticationRequestExtraParams\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"OnUnauthenticatedRequest\":{},\"UseExistingClientSecret\":{\"type\":\"boolean\"}}},\"AuthenticateCognitoConfig\":{\"type\":\"structure\",\"required\":[\"UserPoolArn\",\"UserPoolClientId\",\"UserPoolDomain\"],\"members\":{\"UserPoolArn\":{},\"UserPoolClientId\":{},\"UserPoolDomain\":{},\"SessionCookieName\":{},\"Scope\":{},\"SessionTimeout\":{\"type\":\"long\"},\"AuthenticationRequestExtraParams\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"OnUnauthenticatedRequest\":{}}},\"Order\":{\"type\":\"integer\"},\"RedirectConfig\":{\"type\":\"structure\",\"required\":[\"StatusCode\"],\"members\":{\"Protocol\":{},\"Port\":{},\"Host\":{},\"Path\":{},\"Query\":{},\"StatusCode\":{}}},\"FixedResponseConfig\":{\"type\":\"structure\",\"required\":[\"StatusCode\"],\"members\":{\"MessageBody\":{},\"StatusCode\":{},\"ContentType\":{}}},\"ForwardConfig\":{\"type\":\"structure\",\"members\":{\"TargetGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetGroupArn\":{},\"Weight\":{\"type\":\"integer\"}}}},\"TargetGroupStickinessConfig\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"DurationSeconds\":{\"type\":\"integer\"}}}}}}}},\"S1y\":{\"type\":\"list\",\"member\":{}},\"S21\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ListenerArn\":{},\"LoadBalancerArn\":{},\"Port\":{\"type\":\"integer\"},\"Protocol\":{},\"Certificates\":{\"shape\":\"S3\"},\"SslPolicy\":{},\"DefaultActions\":{\"shape\":\"Sl\"},\"AlpnPolicy\":{\"shape\":\"S1y\"}}}},\"S25\":{\"type\":\"list\",\"member\":{}},\"S27\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SubnetId\":{},\"AllocationId\":{},\"PrivateIPv4Address\":{},\"IPv6Address\":{}}}},\"S2c\":{\"type\":\"list\",\"member\":{}},\"S2j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LoadBalancerArn\":{},\"DNSName\":{},\"CanonicalHostedZoneId\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LoadBalancerName\":{},\"Scheme\":{},\"VpcId\":{},\"State\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Reason\":{}}},\"Type\":{},\"AvailabilityZones\":{\"shape\":\"S2s\"},\"SecurityGroups\":{\"shape\":\"S2c\"},\"IpAddressType\":{},\"CustomerOwnedIpv4Pool\":{}}}},\"S2s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ZoneName\":{},\"SubnetId\":{},\"OutpostId\":{},\"LoadBalancerAddresses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IpAddress\":{},\"AllocationId\":{},\"PrivateIPv4Address\":{},\"IPv6Address\":{}}}}}}},\"S30\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Field\":{},\"Values\":{\"shape\":\"S33\"},\"HostHeaderConfig\":{\"type\":\"structure\",\"members\":{\"Values\":{\"shape\":\"S33\"}}},\"PathPatternConfig\":{\"type\":\"structure\",\"members\":{\"Values\":{\"shape\":\"S33\"}}},\"HttpHeaderConfig\":{\"type\":\"structure\",\"members\":{\"HttpHeaderName\":{},\"Values\":{\"shape\":\"S33\"}}},\"QueryStringConfig\":{\"type\":\"structure\",\"members\":{\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}},\"HttpRequestMethodConfig\":{\"type\":\"structure\",\"members\":{\"Values\":{\"shape\":\"S33\"}}},\"SourceIpConfig\":{\"type\":\"structure\",\"members\":{\"Values\":{\"shape\":\"S33\"}}}}}},\"S33\":{\"type\":\"list\",\"member\":{}},\"S3g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleArn\":{},\"Priority\":{},\"Conditions\":{\"shape\":\"S30\"},\"Actions\":{\"shape\":\"Sl\"},\"IsDefault\":{\"type\":\"boolean\"}}}},\"S3u\":{\"type\":\"structure\",\"members\":{\"HttpCode\":{},\"GrpcCode\":{}}},\"S3z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetGroupArn\":{},\"TargetGroupName\":{},\"Protocol\":{},\"Port\":{\"type\":\"integer\"},\"VpcId\":{},\"HealthCheckProtocol\":{},\"HealthCheckPort\":{},\"HealthCheckEnabled\":{\"type\":\"boolean\"},\"HealthCheckIntervalSeconds\":{\"type\":\"integer\"},\"HealthCheckTimeoutSeconds\":{\"type\":\"integer\"},\"HealthyThresholdCount\":{\"type\":\"integer\"},\"UnhealthyThresholdCount\":{\"type\":\"integer\"},\"HealthCheckPath\":{},\"Matcher\":{\"shape\":\"S3u\"},\"LoadBalancerArns\":{\"shape\":\"S41\"},\"TargetType\":{},\"ProtocolVersion\":{}}}},\"S41\":{\"type\":\"list\",\"member\":{}},\"S4b\":{\"type\":\"list\",\"member\":{\"shape\":\"S4c\"}},\"S4c\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{}}},\"S4u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S5l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 49154:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeListeners\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"result_key\":\"Listeners\"},\"DescribeLoadBalancers\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"result_key\":\"LoadBalancers\"},\"DescribeTargetGroups\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"result_key\":\"TargetGroups\"}}}");

/***/ }),

/***/ 14244:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"LoadBalancerExists\":{\"delay\":15,\"operation\":\"DescribeLoadBalancers\",\"maxAttempts\":40,\"acceptors\":[{\"matcher\":\"status\",\"expected\":200,\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"LoadBalancerNotFound\",\"state\":\"retry\"}]},\"LoadBalancerAvailable\":{\"delay\":15,\"operation\":\"DescribeLoadBalancers\",\"maxAttempts\":40,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"LoadBalancers[].State.Code\",\"expected\":\"active\"},{\"state\":\"retry\",\"matcher\":\"pathAny\",\"argument\":\"LoadBalancers[].State.Code\",\"expected\":\"provisioning\"},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"LoadBalancerNotFound\"}]},\"LoadBalancersDeleted\":{\"delay\":15,\"operation\":\"DescribeLoadBalancers\",\"maxAttempts\":40,\"acceptors\":[{\"state\":\"retry\",\"matcher\":\"pathAll\",\"argument\":\"LoadBalancers[].State.Code\",\"expected\":\"active\"},{\"matcher\":\"error\",\"expected\":\"LoadBalancerNotFound\",\"state\":\"success\"}]},\"TargetInService\":{\"delay\":15,\"maxAttempts\":40,\"operation\":\"DescribeTargetHealth\",\"acceptors\":[{\"argument\":\"TargetHealthDescriptions[].TargetHealth.State\",\"expected\":\"healthy\",\"matcher\":\"pathAll\",\"state\":\"success\"},{\"matcher\":\"error\",\"expected\":\"InvalidInstance\",\"state\":\"retry\"}]},\"TargetDeregistered\":{\"delay\":15,\"maxAttempts\":40,\"operation\":\"DescribeTargetHealth\",\"acceptors\":[{\"matcher\":\"error\",\"expected\":\"InvalidTarget\",\"state\":\"success\"},{\"argument\":\"TargetHealthDescriptions[].TargetHealth.State\",\"expected\":\"unused\",\"matcher\":\"pathAll\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 61812:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2009-03-31\",\"endpointPrefix\":\"elasticmapreduce\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon EMR\",\"serviceFullName\":\"Amazon Elastic MapReduce\",\"serviceId\":\"EMR\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"ElasticMapReduce\",\"uid\":\"elasticmapreduce-2009-03-31\"},\"operations\":{\"AddInstanceFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"InstanceFleet\"],\"members\":{\"ClusterId\":{},\"InstanceFleet\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterId\":{},\"InstanceFleetId\":{},\"ClusterArn\":{}}}},\"AddInstanceGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceGroups\",\"JobFlowId\"],\"members\":{\"InstanceGroups\":{\"shape\":\"Sx\"},\"JobFlowId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobFlowId\":{},\"InstanceGroupIds\":{\"type\":\"list\",\"member\":{}},\"ClusterArn\":{}}}},\"AddJobFlowSteps\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobFlowId\",\"Steps\"],\"members\":{\"JobFlowId\":{},\"Steps\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StepIds\":{\"shape\":\"S1r\"}}}},\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Tags\"],\"members\":{\"ResourceId\":{},\"Tags\":{\"shape\":\"S1u\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelSteps\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"StepIds\"],\"members\":{\"ClusterId\":{},\"StepIds\":{\"shape\":\"S1r\"},\"StepCancellationOption\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CancelStepsInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StepId\":{},\"Status\":{},\"Reason\":{}}}}}}},\"CreateSecurityConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SecurityConfiguration\"],\"members\":{\"Name\":{},\"SecurityConfiguration\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\",\"CreationDateTime\"],\"members\":{\"Name\":{},\"CreationDateTime\":{\"type\":\"timestamp\"}}}},\"CreateStudio\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"AuthMode\",\"VpcId\",\"SubnetIds\",\"ServiceRole\",\"UserRole\",\"WorkspaceSecurityGroupId\",\"EngineSecurityGroupId\",\"DefaultS3Location\"],\"members\":{\"Name\":{},\"Description\":{},\"AuthMode\":{},\"VpcId\":{},\"SubnetIds\":{\"shape\":\"S29\"},\"ServiceRole\":{},\"UserRole\":{},\"WorkspaceSecurityGroupId\":{},\"EngineSecurityGroupId\":{},\"DefaultS3Location\":{},\"Tags\":{\"shape\":\"S1u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StudioId\":{},\"Url\":{}}}},\"CreateStudioSessionMapping\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\",\"IdentityType\",\"SessionPolicyArn\"],\"members\":{\"StudioId\":{},\"IdentityId\":{},\"IdentityName\":{},\"IdentityType\":{},\"SessionPolicyArn\":{}}}},\"DeleteSecurityConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteStudio\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\"],\"members\":{\"StudioId\":{}}}},\"DeleteStudioSessionMapping\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\",\"IdentityType\"],\"members\":{\"StudioId\":{},\"IdentityId\":{},\"IdentityName\":{},\"IdentityType\":{}}}},\"DescribeCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Cluster\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{\"shape\":\"S2l\"},\"Ec2InstanceAttributes\":{\"type\":\"structure\",\"members\":{\"Ec2KeyName\":{},\"Ec2SubnetId\":{},\"RequestedEc2SubnetIds\":{\"shape\":\"S2r\"},\"Ec2AvailabilityZone\":{},\"RequestedEc2AvailabilityZones\":{\"shape\":\"S2r\"},\"IamInstanceProfile\":{},\"EmrManagedMasterSecurityGroup\":{},\"EmrManagedSlaveSecurityGroup\":{},\"ServiceAccessSecurityGroup\":{},\"AdditionalMasterSecurityGroups\":{\"shape\":\"S2s\"},\"AdditionalSlaveSecurityGroups\":{\"shape\":\"S2s\"}}},\"InstanceCollectionType\":{},\"LogUri\":{},\"LogEncryptionKmsKeyId\":{},\"RequestedAmiVersion\":{},\"RunningAmiVersion\":{},\"ReleaseLabel\":{},\"AutoTerminate\":{\"type\":\"boolean\"},\"TerminationProtected\":{\"type\":\"boolean\"},\"VisibleToAllUsers\":{\"type\":\"boolean\"},\"Applications\":{\"shape\":\"S2v\"},\"Tags\":{\"shape\":\"S1u\"},\"ServiceRole\":{},\"NormalizedInstanceHours\":{\"type\":\"integer\"},\"MasterPublicDnsName\":{},\"Configurations\":{\"shape\":\"Sh\"},\"SecurityConfiguration\":{},\"AutoScalingRole\":{},\"ScaleDownBehavior\":{},\"CustomAmiId\":{},\"EbsRootVolumeSize\":{\"type\":\"integer\"},\"RepoUpgradeOnBoot\":{},\"KerberosAttributes\":{\"shape\":\"S2z\"},\"ClusterArn\":{},\"OutpostArn\":{},\"StepConcurrencyLevel\":{\"type\":\"integer\"},\"PlacementGroups\":{\"shape\":\"S31\"}}}}}},\"DescribeJobFlows\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"JobFlowIds\":{\"shape\":\"S1p\"},\"JobFlowStates\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobFlows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"JobFlowId\",\"Name\",\"ExecutionStatusDetail\",\"Instances\"],\"members\":{\"JobFlowId\":{},\"Name\":{},\"LogUri\":{},\"LogEncryptionKmsKeyId\":{},\"AmiVersion\":{},\"ExecutionStatusDetail\":{\"type\":\"structure\",\"required\":[\"State\",\"CreationDateTime\"],\"members\":{\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"StartDateTime\":{\"type\":\"timestamp\"},\"ReadyDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"},\"LastStateChangeReason\":{}}},\"Instances\":{\"type\":\"structure\",\"required\":[\"MasterInstanceType\",\"SlaveInstanceType\",\"InstanceCount\"],\"members\":{\"MasterInstanceType\":{},\"MasterPublicDnsName\":{},\"MasterInstanceId\":{},\"SlaveInstanceType\":{},\"InstanceCount\":{\"type\":\"integer\"},\"InstanceGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Market\",\"InstanceRole\",\"InstanceType\",\"InstanceRequestCount\",\"InstanceRunningCount\",\"State\",\"CreationDateTime\"],\"members\":{\"InstanceGroupId\":{},\"Name\":{},\"Market\":{},\"InstanceRole\":{},\"BidPrice\":{},\"InstanceType\":{},\"InstanceRequestCount\":{\"type\":\"integer\"},\"InstanceRunningCount\":{\"type\":\"integer\"},\"State\":{},\"LastStateChangeReason\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"StartDateTime\":{\"type\":\"timestamp\"},\"ReadyDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}},\"NormalizedInstanceHours\":{\"type\":\"integer\"},\"Ec2KeyName\":{},\"Ec2SubnetId\":{},\"Placement\":{\"shape\":\"S3f\"},\"KeepJobFlowAliveWhenNoSteps\":{\"type\":\"boolean\"},\"TerminationProtected\":{\"type\":\"boolean\"},\"HadoopVersion\":{}}},\"Steps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StepConfig\",\"ExecutionStatusDetail\"],\"members\":{\"StepConfig\":{\"shape\":\"S1j\"},\"ExecutionStatusDetail\":{\"type\":\"structure\",\"required\":[\"State\",\"CreationDateTime\"],\"members\":{\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"StartDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"},\"LastStateChangeReason\":{}}}}}},\"BootstrapActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BootstrapActionConfig\":{\"shape\":\"S3m\"}}}},\"SupportedProducts\":{\"shape\":\"S3o\"},\"VisibleToAllUsers\":{\"type\":\"boolean\"},\"JobFlowRole\":{},\"ServiceRole\":{},\"AutoScalingRole\":{},\"ScaleDownBehavior\":{}}}}}},\"deprecated\":true},\"DescribeNotebookExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookExecutionId\"],\"members\":{\"NotebookExecutionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookExecution\":{\"type\":\"structure\",\"members\":{\"NotebookExecutionId\":{},\"EditorId\":{},\"ExecutionEngine\":{\"shape\":\"S3s\"},\"NotebookExecutionName\":{},\"NotebookParams\":{},\"Status\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Arn\":{},\"OutputNotebookURI\":{},\"LastStateChangeReason\":{},\"NotebookInstanceSecurityGroupId\":{},\"Tags\":{\"shape\":\"S1u\"}}}}}},\"DescribeSecurityConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"SecurityConfiguration\":{},\"CreationDateTime\":{\"type\":\"timestamp\"}}}},\"DescribeStep\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"StepId\"],\"members\":{\"ClusterId\":{},\"StepId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Step\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Config\":{\"shape\":\"S40\"},\"ActionOnFailure\":{},\"Status\":{\"shape\":\"S41\"}}}}}},\"DescribeStudio\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\"],\"members\":{\"StudioId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Studio\":{\"type\":\"structure\",\"members\":{\"StudioId\":{},\"StudioArn\":{},\"Name\":{},\"Description\":{},\"AuthMode\":{},\"VpcId\":{},\"SubnetIds\":{\"shape\":\"S29\"},\"ServiceRole\":{},\"UserRole\":{},\"WorkspaceSecurityGroupId\":{},\"EngineSecurityGroupId\":{},\"Url\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"DefaultS3Location\":{},\"Tags\":{\"shape\":\"S1u\"}}}}}},\"GetBlockPublicAccessConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"BlockPublicAccessConfiguration\",\"BlockPublicAccessConfigurationMetadata\"],\"members\":{\"BlockPublicAccessConfiguration\":{\"shape\":\"S4c\"},\"BlockPublicAccessConfigurationMetadata\":{\"type\":\"structure\",\"required\":[\"CreationDateTime\",\"CreatedByArn\"],\"members\":{\"CreationDateTime\":{\"type\":\"timestamp\"},\"CreatedByArn\":{}}}}}},\"GetManagedScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ManagedScalingPolicy\":{\"shape\":\"S4j\"}}}},\"GetStudioSessionMapping\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\",\"IdentityType\"],\"members\":{\"StudioId\":{},\"IdentityId\":{},\"IdentityName\":{},\"IdentityType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SessionMapping\":{\"type\":\"structure\",\"members\":{\"StudioId\":{},\"IdentityId\":{},\"IdentityName\":{},\"IdentityType\":{},\"SessionPolicyArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}}}},\"ListBootstrapActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BootstrapActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ScriptPath\":{},\"Args\":{\"shape\":\"S2s\"}}}},\"Marker\":{}}}},\"ListClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"ClusterStates\":{\"type\":\"list\",\"member\":{}},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Clusters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{\"shape\":\"S2l\"},\"NormalizedInstanceHours\":{\"type\":\"integer\"},\"ClusterArn\":{},\"OutpostArn\":{}}}},\"Marker\":{}}}},\"ListInstanceFleets\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceFleets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"CreationDateTime\":{\"type\":\"timestamp\"},\"ReadyDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}}},\"InstanceFleetType\":{},\"TargetOnDemandCapacity\":{\"type\":\"integer\"},\"TargetSpotCapacity\":{\"type\":\"integer\"},\"ProvisionedOnDemandCapacity\":{\"type\":\"integer\"},\"ProvisionedSpotCapacity\":{\"type\":\"integer\"},\"InstanceTypeSpecifications\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceType\":{},\"WeightedCapacity\":{\"type\":\"integer\"},\"BidPrice\":{},\"BidPriceAsPercentageOfOnDemandPrice\":{\"type\":\"double\"},\"Configurations\":{\"shape\":\"Sh\"},\"EbsBlockDevices\":{\"shape\":\"S5a\"},\"EbsOptimized\":{\"type\":\"boolean\"}}}},\"LaunchSpecifications\":{\"shape\":\"Sk\"}}}},\"Marker\":{}}}},\"ListInstanceGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Market\":{},\"InstanceGroupType\":{},\"BidPrice\":{},\"InstanceType\":{},\"RequestedInstanceCount\":{\"type\":\"integer\"},\"RunningInstanceCount\":{\"type\":\"integer\"},\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"CreationDateTime\":{\"type\":\"timestamp\"},\"ReadyDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}}},\"Configurations\":{\"shape\":\"Sh\"},\"ConfigurationsVersion\":{\"type\":\"long\"},\"LastSuccessfullyAppliedConfigurations\":{\"shape\":\"Sh\"},\"LastSuccessfullyAppliedConfigurationsVersion\":{\"type\":\"long\"},\"EbsBlockDevices\":{\"shape\":\"S5a\"},\"EbsOptimized\":{\"type\":\"boolean\"},\"ShrinkPolicy\":{\"shape\":\"S5n\"},\"AutoScalingPolicy\":{\"shape\":\"S5r\"}}}},\"Marker\":{}}}},\"ListInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"InstanceGroupId\":{},\"InstanceGroupTypes\":{\"type\":\"list\",\"member\":{}},\"InstanceFleetId\":{},\"InstanceFleetType\":{},\"InstanceStates\":{\"type\":\"list\",\"member\":{}},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Ec2InstanceId\":{},\"PublicDnsName\":{},\"PublicIpAddress\":{},\"PrivateDnsName\":{},\"PrivateIpAddress\":{},\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"CreationDateTime\":{\"type\":\"timestamp\"},\"ReadyDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}}},\"InstanceGroupId\":{},\"InstanceFleetId\":{},\"Market\":{},\"InstanceType\":{},\"EbsVolumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Device\":{},\"VolumeId\":{}}}}}}},\"Marker\":{}}}},\"ListNotebookExecutions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EditorId\":{},\"Status\":{},\"From\":{\"type\":\"timestamp\"},\"To\":{\"type\":\"timestamp\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NotebookExecutionId\":{},\"EditorId\":{},\"NotebookExecutionName\":{},\"Status\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"ListSecurityConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CreationDateTime\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"ListSteps\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"StepStates\":{\"type\":\"list\",\"member\":{}},\"StepIds\":{\"shape\":\"S1p\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Steps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Config\":{\"shape\":\"S40\"},\"ActionOnFailure\":{},\"Status\":{\"shape\":\"S41\"}}}},\"Marker\":{}}}},\"ListStudioSessionMappings\":{\"input\":{\"type\":\"structure\",\"members\":{\"StudioId\":{},\"IdentityType\":{},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SessionMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StudioId\":{},\"IdentityId\":{},\"IdentityName\":{},\"IdentityType\":{},\"SessionPolicyArn\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"ListStudios\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Studios\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StudioId\":{},\"Name\":{},\"VpcId\":{},\"Description\":{},\"Url\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"ModifyCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"StepConcurrencyLevel\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StepConcurrencyLevel\":{\"type\":\"integer\"}}}},\"ModifyInstanceFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"InstanceFleet\"],\"members\":{\"ClusterId\":{},\"InstanceFleet\":{\"type\":\"structure\",\"required\":[\"InstanceFleetId\"],\"members\":{\"InstanceFleetId\":{},\"TargetOnDemandCapacity\":{\"type\":\"integer\"},\"TargetSpotCapacity\":{\"type\":\"integer\"}}}}}},\"ModifyInstanceGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterId\":{},\"InstanceGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceGroupId\"],\"members\":{\"InstanceGroupId\":{},\"InstanceCount\":{\"type\":\"integer\"},\"EC2InstanceIdsToTerminate\":{\"type\":\"list\",\"member\":{}},\"ShrinkPolicy\":{\"shape\":\"S5n\"},\"Configurations\":{\"shape\":\"Sh\"}}}}}}},\"PutAutoScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"InstanceGroupId\",\"AutoScalingPolicy\"],\"members\":{\"ClusterId\":{},\"InstanceGroupId\":{},\"AutoScalingPolicy\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterId\":{},\"InstanceGroupId\":{},\"AutoScalingPolicy\":{\"shape\":\"S5r\"},\"ClusterArn\":{}}}},\"PutBlockPublicAccessConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"BlockPublicAccessConfiguration\"],\"members\":{\"BlockPublicAccessConfiguration\":{\"shape\":\"S4c\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutManagedScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"ManagedScalingPolicy\"],\"members\":{\"ClusterId\":{},\"ManagedScalingPolicy\":{\"shape\":\"S4j\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveAutoScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"InstanceGroupId\"],\"members\":{\"ClusterId\":{},\"InstanceGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveManagedScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagKeys\"],\"members\":{\"ResourceId\":{},\"TagKeys\":{\"shape\":\"S2s\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RunJobFlow\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Instances\"],\"members\":{\"Name\":{},\"LogUri\":{},\"LogEncryptionKmsKeyId\":{},\"AdditionalInfo\":{},\"AmiVersion\":{},\"ReleaseLabel\":{},\"Instances\":{\"type\":\"structure\",\"members\":{\"MasterInstanceType\":{},\"SlaveInstanceType\":{},\"InstanceCount\":{\"type\":\"integer\"},\"InstanceGroups\":{\"shape\":\"Sx\"},\"InstanceFleets\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"Ec2KeyName\":{},\"Placement\":{\"shape\":\"S3f\"},\"KeepJobFlowAliveWhenNoSteps\":{\"type\":\"boolean\"},\"TerminationProtected\":{\"type\":\"boolean\"},\"HadoopVersion\":{},\"Ec2SubnetId\":{},\"Ec2SubnetIds\":{\"shape\":\"S2r\"},\"EmrManagedMasterSecurityGroup\":{},\"EmrManagedSlaveSecurityGroup\":{},\"ServiceAccessSecurityGroup\":{},\"AdditionalMasterSecurityGroups\":{\"shape\":\"S7h\"},\"AdditionalSlaveSecurityGroups\":{\"shape\":\"S7h\"}}},\"Steps\":{\"shape\":\"S1i\"},\"BootstrapActions\":{\"type\":\"list\",\"member\":{\"shape\":\"S3m\"}},\"SupportedProducts\":{\"shape\":\"S3o\"},\"NewSupportedProducts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Args\":{\"shape\":\"S1p\"}}}},\"Applications\":{\"shape\":\"S2v\"},\"Configurations\":{\"shape\":\"Sh\"},\"VisibleToAllUsers\":{\"type\":\"boolean\"},\"JobFlowRole\":{},\"ServiceRole\":{},\"Tags\":{\"shape\":\"S1u\"},\"SecurityConfiguration\":{},\"AutoScalingRole\":{},\"ScaleDownBehavior\":{},\"CustomAmiId\":{},\"EbsRootVolumeSize\":{\"type\":\"integer\"},\"RepoUpgradeOnBoot\":{},\"KerberosAttributes\":{\"shape\":\"S2z\"},\"StepConcurrencyLevel\":{\"type\":\"integer\"},\"ManagedScalingPolicy\":{\"shape\":\"S4j\"},\"PlacementGroupConfigs\":{\"shape\":\"S31\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobFlowId\":{},\"ClusterArn\":{}}}},\"SetTerminationProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobFlowIds\",\"TerminationProtected\"],\"members\":{\"JobFlowIds\":{\"shape\":\"S1p\"},\"TerminationProtected\":{\"type\":\"boolean\"}}}},\"SetVisibleToAllUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobFlowIds\",\"VisibleToAllUsers\"],\"members\":{\"JobFlowIds\":{\"shape\":\"S1p\"},\"VisibleToAllUsers\":{\"type\":\"boolean\"}}}},\"StartNotebookExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"EditorId\",\"RelativePath\",\"ExecutionEngine\",\"ServiceRole\"],\"members\":{\"EditorId\":{},\"RelativePath\":{},\"NotebookExecutionName\":{},\"NotebookParams\":{},\"ExecutionEngine\":{\"shape\":\"S3s\"},\"ServiceRole\":{},\"NotebookInstanceSecurityGroupId\":{},\"Tags\":{\"shape\":\"S1u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookExecutionId\":{}}}},\"StopNotebookExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookExecutionId\"],\"members\":{\"NotebookExecutionId\":{}}}},\"TerminateJobFlows\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobFlowIds\"],\"members\":{\"JobFlowIds\":{\"shape\":\"S1p\"}}}},\"UpdateStudio\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\"],\"members\":{\"StudioId\":{},\"Name\":{},\"Description\":{},\"SubnetIds\":{\"shape\":\"S29\"},\"DefaultS3Location\":{}}}},\"UpdateStudioSessionMapping\":{\"input\":{\"type\":\"structure\",\"required\":[\"StudioId\",\"IdentityType\",\"SessionPolicyArn\"],\"members\":{\"StudioId\":{},\"IdentityId\":{},\"IdentityName\":{},\"IdentityType\":{},\"SessionPolicyArn\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"InstanceFleetType\"],\"members\":{\"Name\":{},\"InstanceFleetType\":{},\"TargetOnDemandCapacity\":{\"type\":\"integer\"},\"TargetSpotCapacity\":{\"type\":\"integer\"},\"InstanceTypeConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceType\"],\"members\":{\"InstanceType\":{},\"WeightedCapacity\":{\"type\":\"integer\"},\"BidPrice\":{},\"BidPriceAsPercentageOfOnDemandPrice\":{\"type\":\"double\"},\"EbsConfiguration\":{\"shape\":\"Sa\"},\"Configurations\":{\"shape\":\"Sh\"}}}},\"LaunchSpecifications\":{\"shape\":\"Sk\"}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"EbsBlockDeviceConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VolumeSpecification\"],\"members\":{\"VolumeSpecification\":{\"shape\":\"Sd\"},\"VolumesPerInstance\":{\"type\":\"integer\"}}}},\"EbsOptimized\":{\"type\":\"boolean\"}}},\"Sd\":{\"type\":\"structure\",\"required\":[\"VolumeType\",\"SizeInGB\"],\"members\":{\"VolumeType\":{},\"Iops\":{\"type\":\"integer\"},\"SizeInGB\":{\"type\":\"integer\"}}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Classification\":{},\"Configurations\":{\"shape\":\"Sh\"},\"Properties\":{\"shape\":\"Sj\"}}}},\"Sj\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sk\":{\"type\":\"structure\",\"members\":{\"SpotSpecification\":{\"type\":\"structure\",\"required\":[\"TimeoutDurationMinutes\",\"TimeoutAction\"],\"members\":{\"TimeoutDurationMinutes\":{\"type\":\"integer\"},\"TimeoutAction\":{},\"BlockDurationMinutes\":{\"type\":\"integer\"},\"AllocationStrategy\":{}}},\"OnDemandSpecification\":{\"type\":\"structure\",\"required\":[\"AllocationStrategy\"],\"members\":{\"AllocationStrategy\":{},\"CapacityReservationOptions\":{\"type\":\"structure\",\"members\":{\"UsageStrategy\":{},\"CapacityReservationPreference\":{},\"CapacityReservationResourceGroupArn\":{}}}}}}},\"Sx\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceRole\",\"InstanceType\",\"InstanceCount\"],\"members\":{\"Name\":{},\"Market\":{},\"InstanceRole\":{},\"BidPrice\":{},\"InstanceType\":{},\"InstanceCount\":{\"type\":\"integer\"},\"Configurations\":{\"shape\":\"Sh\"},\"EbsConfiguration\":{\"shape\":\"Sa\"},\"AutoScalingPolicy\":{\"shape\":\"S11\"}}}},\"S11\":{\"type\":\"structure\",\"required\":[\"Constraints\",\"Rules\"],\"members\":{\"Constraints\":{\"shape\":\"S12\"},\"Rules\":{\"shape\":\"S13\"}}},\"S12\":{\"type\":\"structure\",\"required\":[\"MinCapacity\",\"MaxCapacity\"],\"members\":{\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Action\",\"Trigger\"],\"members\":{\"Name\":{},\"Description\":{},\"Action\":{\"type\":\"structure\",\"required\":[\"SimpleScalingPolicyConfiguration\"],\"members\":{\"Market\":{},\"SimpleScalingPolicyConfiguration\":{\"type\":\"structure\",\"required\":[\"ScalingAdjustment\"],\"members\":{\"AdjustmentType\":{},\"ScalingAdjustment\":{\"type\":\"integer\"},\"CoolDown\":{\"type\":\"integer\"}}}}},\"Trigger\":{\"type\":\"structure\",\"required\":[\"CloudWatchAlarmDefinition\"],\"members\":{\"CloudWatchAlarmDefinition\":{\"type\":\"structure\",\"required\":[\"ComparisonOperator\",\"MetricName\",\"Period\",\"Threshold\"],\"members\":{\"ComparisonOperator\":{},\"EvaluationPeriods\":{\"type\":\"integer\"},\"MetricName\":{},\"Namespace\":{},\"Period\":{\"type\":\"integer\"},\"Statistic\":{},\"Threshold\":{\"type\":\"double\"},\"Unit\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}}}}}}},\"S1i\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}},\"S1j\":{\"type\":\"structure\",\"required\":[\"Name\",\"HadoopJarStep\"],\"members\":{\"Name\":{},\"ActionOnFailure\":{},\"HadoopJarStep\":{\"type\":\"structure\",\"required\":[\"Jar\"],\"members\":{\"Properties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Jar\":{},\"MainClass\":{},\"Args\":{\"shape\":\"S1p\"}}}}},\"S1p\":{\"type\":\"list\",\"member\":{}},\"S1r\":{\"type\":\"list\",\"member\":{}},\"S1u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S29\":{\"type\":\"list\",\"member\":{}},\"S2l\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"CreationDateTime\":{\"type\":\"timestamp\"},\"ReadyDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}}},\"S2r\":{\"type\":\"list\",\"member\":{}},\"S2s\":{\"type\":\"list\",\"member\":{}},\"S2v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{},\"Args\":{\"shape\":\"S2s\"},\"AdditionalInfo\":{\"shape\":\"Sj\"}}}},\"S2z\":{\"type\":\"structure\",\"required\":[\"Realm\",\"KdcAdminPassword\"],\"members\":{\"Realm\":{},\"KdcAdminPassword\":{},\"CrossRealmTrustPrincipalPassword\":{},\"ADDomainJoinUser\":{},\"ADDomainJoinPassword\":{}}},\"S31\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceRole\"],\"members\":{\"InstanceRole\":{},\"PlacementStrategy\":{}}}},\"S3f\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{},\"AvailabilityZones\":{\"shape\":\"S2r\"}}},\"S3m\":{\"type\":\"structure\",\"required\":[\"Name\",\"ScriptBootstrapAction\"],\"members\":{\"Name\":{},\"ScriptBootstrapAction\":{\"type\":\"structure\",\"required\":[\"Path\"],\"members\":{\"Path\":{},\"Args\":{\"shape\":\"S1p\"}}}}},\"S3o\":{\"type\":\"list\",\"member\":{}},\"S3s\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Type\":{},\"MasterInstanceSecurityGroupId\":{}}},\"S40\":{\"type\":\"structure\",\"members\":{\"Jar\":{},\"Properties\":{\"shape\":\"Sj\"},\"MainClass\":{},\"Args\":{\"shape\":\"S2s\"}}},\"S41\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"Reason\":{},\"Message\":{},\"LogFile\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"CreationDateTime\":{\"type\":\"timestamp\"},\"StartDateTime\":{\"type\":\"timestamp\"},\"EndDateTime\":{\"type\":\"timestamp\"}}}}},\"S4c\":{\"type\":\"structure\",\"required\":[\"BlockPublicSecurityGroupRules\"],\"members\":{\"BlockPublicSecurityGroupRules\":{\"type\":\"boolean\"},\"PermittedPublicSecurityGroupRuleRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MinRange\"],\"members\":{\"MinRange\":{\"type\":\"integer\"},\"MaxRange\":{\"type\":\"integer\"}}}}}},\"S4j\":{\"type\":\"structure\",\"members\":{\"ComputeLimits\":{\"type\":\"structure\",\"required\":[\"UnitType\",\"MinimumCapacityUnits\",\"MaximumCapacityUnits\"],\"members\":{\"UnitType\":{},\"MinimumCapacityUnits\":{\"type\":\"integer\"},\"MaximumCapacityUnits\":{\"type\":\"integer\"},\"MaximumOnDemandCapacityUnits\":{\"type\":\"integer\"},\"MaximumCoreCapacityUnits\":{\"type\":\"integer\"}}}}},\"S5a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VolumeSpecification\":{\"shape\":\"Sd\"},\"Device\":{}}}},\"S5n\":{\"type\":\"structure\",\"members\":{\"DecommissionTimeout\":{\"type\":\"integer\"},\"InstanceResizePolicy\":{\"type\":\"structure\",\"members\":{\"InstancesToTerminate\":{\"shape\":\"S5p\"},\"InstancesToProtect\":{\"shape\":\"S5p\"},\"InstanceTerminationTimeout\":{\"type\":\"integer\"}}}}},\"S5p\":{\"type\":\"list\",\"member\":{}},\"S5r\":{\"type\":\"structure\",\"members\":{\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateChangeReason\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}}}},\"Constraints\":{\"shape\":\"S12\"},\"Rules\":{\"shape\":\"S13\"}}},\"S7h\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 45852:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeJobFlows\":{\"result_key\":\"JobFlows\"},\"ListBootstrapActions\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"BootstrapActions\"},\"ListClusters\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"Clusters\"},\"ListInstanceFleets\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"InstanceFleets\"},\"ListInstanceGroups\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"InstanceGroups\"},\"ListInstances\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"Instances\"},\"ListNotebookExecutions\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"NotebookExecutions\"},\"ListSecurityConfigurations\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"SecurityConfigurations\"},\"ListSteps\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"Steps\"},\"ListStudioSessionMappings\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"SessionMappings\"},\"ListStudios\":{\"input_token\":\"Marker\",\"output_token\":\"Marker\",\"result_key\":\"Studios\"}}}");

/***/ }),

/***/ 70234:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ClusterRunning\":{\"delay\":30,\"operation\":\"DescribeCluster\",\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"RUNNING\"},{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"WAITING\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"TERMINATING\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"TERMINATED\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"TERMINATED_WITH_ERRORS\"}]},\"StepComplete\":{\"delay\":30,\"operation\":\"DescribeStep\",\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"Step.Status.State\",\"expected\":\"COMPLETED\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Step.Status.State\",\"expected\":\"FAILED\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Step.Status.State\",\"expected\":\"CANCELLED\"}]},\"ClusterTerminated\":{\"delay\":30,\"operation\":\"DescribeCluster\",\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"TERMINATED\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Cluster.Status.State\",\"expected\":\"TERMINATED_WITH_ERRORS\"}]}}}");

/***/ }),

/***/ 45610:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-09-25\",\"endpointPrefix\":\"elastictranscoder\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Elastic Transcoder\",\"serviceId\":\"Elastic Transcoder\",\"signatureVersion\":\"v4\",\"uid\":\"elastictranscoder-2012-09-25\"},\"operations\":{\"CancelJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2012-09-25/jobs/{Id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateJob\":{\"http\":{\"requestUri\":\"/2012-09-25/jobs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"PipelineId\"],\"members\":{\"PipelineId\":{},\"Input\":{\"shape\":\"S5\"},\"Inputs\":{\"shape\":\"St\"},\"Output\":{\"shape\":\"Su\"},\"Outputs\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}},\"OutputKeyPrefix\":{},\"Playlists\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Format\":{},\"OutputKeys\":{\"shape\":\"S1l\"},\"HlsContentProtection\":{\"shape\":\"S1m\"},\"PlayReadyDrm\":{\"shape\":\"S1q\"}}}},\"UserMetadata\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Job\":{\"shape\":\"S1y\"}}}},\"CreatePipeline\":{\"http\":{\"requestUri\":\"/2012-09-25/pipelines\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InputBucket\",\"Role\"],\"members\":{\"Name\":{},\"InputBucket\":{},\"OutputBucket\":{},\"Role\":{},\"AwsKmsKeyArn\":{},\"Notifications\":{\"shape\":\"S2a\"},\"ContentConfig\":{\"shape\":\"S2c\"},\"ThumbnailConfig\":{\"shape\":\"S2c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Pipeline\":{\"shape\":\"S2l\"},\"Warnings\":{\"shape\":\"S2n\"}}}},\"CreatePreset\":{\"http\":{\"requestUri\":\"/2012-09-25/presets\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Container\"],\"members\":{\"Name\":{},\"Description\":{},\"Container\":{},\"Video\":{\"shape\":\"S2r\"},\"Audio\":{\"shape\":\"S37\"},\"Thumbnails\":{\"shape\":\"S3i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Preset\":{\"shape\":\"S3m\"},\"Warning\":{}}}},\"DeletePipeline\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2012-09-25/pipelines/{Id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePreset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2012-09-25/presets/{Id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListJobsByPipeline\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/jobsByPipeline/{PipelineId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PipelineId\"],\"members\":{\"PipelineId\":{\"location\":\"uri\",\"locationName\":\"PipelineId\"},\"Ascending\":{\"location\":\"querystring\",\"locationName\":\"Ascending\"},\"PageToken\":{\"location\":\"querystring\",\"locationName\":\"PageToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"shape\":\"S3v\"},\"NextPageToken\":{}}}},\"ListJobsByStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/jobsByStatus/{Status}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{\"location\":\"uri\",\"locationName\":\"Status\"},\"Ascending\":{\"location\":\"querystring\",\"locationName\":\"Ascending\"},\"PageToken\":{\"location\":\"querystring\",\"locationName\":\"PageToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"shape\":\"S3v\"},\"NextPageToken\":{}}}},\"ListPipelines\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/pipelines\"},\"input\":{\"type\":\"structure\",\"members\":{\"Ascending\":{\"location\":\"querystring\",\"locationName\":\"Ascending\"},\"PageToken\":{\"location\":\"querystring\",\"locationName\":\"PageToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Pipelines\":{\"type\":\"list\",\"member\":{\"shape\":\"S2l\"}},\"NextPageToken\":{}}}},\"ListPresets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/presets\"},\"input\":{\"type\":\"structure\",\"members\":{\"Ascending\":{\"location\":\"querystring\",\"locationName\":\"Ascending\"},\"PageToken\":{\"location\":\"querystring\",\"locationName\":\"PageToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Presets\":{\"type\":\"list\",\"member\":{\"shape\":\"S3m\"}},\"NextPageToken\":{}}}},\"ReadJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/jobs/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Job\":{\"shape\":\"S1y\"}}}},\"ReadPipeline\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/pipelines/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Pipeline\":{\"shape\":\"S2l\"},\"Warnings\":{\"shape\":\"S2n\"}}}},\"ReadPreset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2012-09-25/presets/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Preset\":{\"shape\":\"S3m\"}}}},\"TestRole\":{\"http\":{\"requestUri\":\"/2012-09-25/roleTests\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Role\",\"InputBucket\",\"OutputBucket\",\"Topics\"],\"members\":{\"Role\":{},\"InputBucket\":{},\"OutputBucket\":{},\"Topics\":{\"type\":\"list\",\"member\":{}}},\"deprecated\":true},\"output\":{\"type\":\"structure\",\"members\":{\"Success\":{},\"Messages\":{\"type\":\"list\",\"member\":{}}},\"deprecated\":true},\"deprecated\":true},\"UpdatePipeline\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2012-09-25/pipelines/{Id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Name\":{},\"InputBucket\":{},\"Role\":{},\"AwsKmsKeyArn\":{},\"Notifications\":{\"shape\":\"S2a\"},\"ContentConfig\":{\"shape\":\"S2c\"},\"ThumbnailConfig\":{\"shape\":\"S2c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Pipeline\":{\"shape\":\"S2l\"},\"Warnings\":{\"shape\":\"S2n\"}}}},\"UpdatePipelineNotifications\":{\"http\":{\"requestUri\":\"/2012-09-25/pipelines/{Id}/notifications\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"Notifications\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Notifications\":{\"shape\":\"S2a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Pipeline\":{\"shape\":\"S2l\"}}}},\"UpdatePipelineStatus\":{\"http\":{\"requestUri\":\"/2012-09-25/pipelines/{Id}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Pipeline\":{\"shape\":\"S2l\"}}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"FrameRate\":{},\"Resolution\":{},\"AspectRatio\":{},\"Interlaced\":{},\"Container\":{},\"Encryption\":{\"shape\":\"Sc\"},\"TimeSpan\":{\"shape\":\"Sg\"},\"InputCaptions\":{\"type\":\"structure\",\"members\":{\"MergePolicy\":{},\"CaptionSources\":{\"shape\":\"Sk\"}}},\"DetectedProperties\":{\"type\":\"structure\",\"members\":{\"Width\":{\"type\":\"integer\"},\"Height\":{\"type\":\"integer\"},\"FrameRate\":{},\"FileSize\":{\"type\":\"long\"},\"DurationMillis\":{\"type\":\"long\"}}}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"Mode\":{},\"Key\":{},\"KeyMd5\":{},\"InitializationVector\":{}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"StartTime\":{},\"Duration\":{}}},\"Sk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Language\":{},\"TimeOffset\":{},\"Label\":{},\"Encryption\":{\"shape\":\"Sc\"}}}},\"St\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"Su\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"ThumbnailPattern\":{},\"ThumbnailEncryption\":{\"shape\":\"Sc\"},\"Rotate\":{},\"PresetId\":{},\"SegmentDuration\":{},\"Watermarks\":{\"shape\":\"Sx\"},\"AlbumArt\":{\"shape\":\"S11\"},\"Composition\":{\"shape\":\"S19\",\"deprecated\":true},\"Captions\":{\"shape\":\"S1b\"},\"Encryption\":{\"shape\":\"Sc\"}}},\"Sx\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PresetWatermarkId\":{},\"InputKey\":{},\"Encryption\":{\"shape\":\"Sc\"}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"MergePolicy\":{},\"Artwork\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InputKey\":{},\"MaxWidth\":{},\"MaxHeight\":{},\"SizingPolicy\":{},\"PaddingPolicy\":{},\"AlbumArtFormat\":{},\"Encryption\":{\"shape\":\"Sc\"}}}}}},\"S19\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TimeSpan\":{\"shape\":\"Sg\"}},\"deprecated\":true},\"deprecated\":true},\"S1b\":{\"type\":\"structure\",\"members\":{\"MergePolicy\":{\"deprecated\":true},\"CaptionSources\":{\"shape\":\"Sk\",\"deprecated\":true},\"CaptionFormats\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"Pattern\":{},\"Encryption\":{\"shape\":\"Sc\"}}}}}},\"S1l\":{\"type\":\"list\",\"member\":{}},\"S1m\":{\"type\":\"structure\",\"members\":{\"Method\":{},\"Key\":{},\"KeyMd5\":{},\"InitializationVector\":{},\"LicenseAcquisitionUrl\":{},\"KeyStoragePolicy\":{}}},\"S1q\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"Key\":{},\"KeyMd5\":{},\"KeyId\":{},\"InitializationVector\":{},\"LicenseAcquisitionUrl\":{}}},\"S1v\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1y\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"PipelineId\":{},\"Input\":{\"shape\":\"S5\"},\"Inputs\":{\"shape\":\"St\"},\"Output\":{\"shape\":\"S1z\"},\"Outputs\":{\"type\":\"list\",\"member\":{\"shape\":\"S1z\"}},\"OutputKeyPrefix\":{},\"Playlists\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Format\":{},\"OutputKeys\":{\"shape\":\"S1l\"},\"HlsContentProtection\":{\"shape\":\"S1m\"},\"PlayReadyDrm\":{\"shape\":\"S1q\"},\"Status\":{},\"StatusDetail\":{}}}},\"Status\":{},\"UserMetadata\":{\"shape\":\"S1v\"},\"Timing\":{\"type\":\"structure\",\"members\":{\"SubmitTimeMillis\":{\"type\":\"long\"},\"StartTimeMillis\":{\"type\":\"long\"},\"FinishTimeMillis\":{\"type\":\"long\"}}}}},\"S1z\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Key\":{},\"ThumbnailPattern\":{},\"ThumbnailEncryption\":{\"shape\":\"Sc\"},\"Rotate\":{},\"PresetId\":{},\"SegmentDuration\":{},\"Status\":{},\"StatusDetail\":{},\"Duration\":{\"type\":\"long\"},\"Width\":{\"type\":\"integer\"},\"Height\":{\"type\":\"integer\"},\"FrameRate\":{},\"FileSize\":{\"type\":\"long\"},\"DurationMillis\":{\"type\":\"long\"},\"Watermarks\":{\"shape\":\"Sx\"},\"AlbumArt\":{\"shape\":\"S11\"},\"Composition\":{\"shape\":\"S19\",\"deprecated\":true},\"Captions\":{\"shape\":\"S1b\"},\"Encryption\":{\"shape\":\"Sc\"},\"AppliedColorSpaceConversion\":{}}},\"S2a\":{\"type\":\"structure\",\"members\":{\"Progressing\":{},\"Completed\":{},\"Warning\":{},\"Error\":{}}},\"S2c\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"StorageClass\":{},\"Permissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GranteeType\":{},\"Grantee\":{},\"Access\":{\"type\":\"list\",\"member\":{}}}}}}},\"S2l\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"Status\":{},\"InputBucket\":{},\"OutputBucket\":{},\"Role\":{},\"AwsKmsKeyArn\":{},\"Notifications\":{\"shape\":\"S2a\"},\"ContentConfig\":{\"shape\":\"S2c\"},\"ThumbnailConfig\":{\"shape\":\"S2c\"}}},\"S2n\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}}},\"S2r\":{\"type\":\"structure\",\"members\":{\"Codec\":{},\"CodecOptions\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"KeyframesMaxDist\":{},\"FixedGOP\":{},\"BitRate\":{},\"FrameRate\":{},\"MaxFrameRate\":{},\"Resolution\":{},\"AspectRatio\":{},\"MaxWidth\":{},\"MaxHeight\":{},\"DisplayAspectRatio\":{},\"SizingPolicy\":{},\"PaddingPolicy\":{},\"Watermarks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"MaxWidth\":{},\"MaxHeight\":{},\"SizingPolicy\":{},\"HorizontalAlign\":{},\"HorizontalOffset\":{},\"VerticalAlign\":{},\"VerticalOffset\":{},\"Opacity\":{},\"Target\":{}}}}}},\"S37\":{\"type\":\"structure\",\"members\":{\"Codec\":{},\"SampleRate\":{},\"BitRate\":{},\"Channels\":{},\"AudioPackingMode\":{},\"CodecOptions\":{\"type\":\"structure\",\"members\":{\"Profile\":{},\"BitDepth\":{},\"BitOrder\":{},\"Signed\":{}}}}},\"S3i\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"Interval\":{},\"Resolution\":{},\"AspectRatio\":{},\"MaxWidth\":{},\"MaxHeight\":{},\"SizingPolicy\":{},\"PaddingPolicy\":{}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"Description\":{},\"Container\":{},\"Audio\":{\"shape\":\"S37\"},\"Video\":{\"shape\":\"S2r\"},\"Thumbnails\":{\"shape\":\"S3i\"},\"Type\":{}}},\"S3v\":{\"type\":\"list\",\"member\":{\"shape\":\"S1y\"}}}}");

/***/ }),

/***/ 35370:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListJobsByPipeline\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"result_key\":\"Jobs\"},\"ListJobsByStatus\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"result_key\":\"Jobs\"},\"ListPipelines\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"result_key\":\"Pipelines\"},\"ListPresets\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"result_key\":\"Presets\"}}}");

/***/ }),

/***/ 13314:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"JobComplete\":{\"delay\":30,\"operation\":\"ReadJob\",\"maxAttempts\":120,\"acceptors\":[{\"expected\":\"Complete\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Job.Status\"},{\"expected\":\"Canceled\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Job.Status\"},{\"expected\":\"Error\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Job.Status\"}]}}}");

/***/ }),

/***/ 87825:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2010-12-01\",\"endpointPrefix\":\"email\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon SES\",\"serviceFullName\":\"Amazon Simple Email Service\",\"serviceId\":\"SES\",\"signatureVersion\":\"v4\",\"signingName\":\"ses\",\"uid\":\"email-2010-12-01\",\"xmlNamespace\":\"http://ses.amazonaws.com/doc/2010-12-01/\"},\"operations\":{\"CloneReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"OriginalRuleSetName\"],\"members\":{\"RuleSetName\":{},\"OriginalRuleSetName\":{}}},\"output\":{\"resultWrapper\":\"CloneReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{}}},\"CreateConfigurationSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSet\"],\"members\":{\"ConfigurationSet\":{\"shape\":\"S5\"}}},\"output\":{\"resultWrapper\":\"CreateConfigurationSetResult\",\"type\":\"structure\",\"members\":{}}},\"CreateConfigurationSetEventDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestination\"],\"members\":{\"ConfigurationSetName\":{},\"EventDestination\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateConfigurationSetEventDestinationResult\",\"type\":\"structure\",\"members\":{}}},\"CreateConfigurationSetTrackingOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"TrackingOptions\"],\"members\":{\"ConfigurationSetName\":{},\"TrackingOptions\":{\"shape\":\"Sp\"}}},\"output\":{\"resultWrapper\":\"CreateConfigurationSetTrackingOptionsResult\",\"type\":\"structure\",\"members\":{}}},\"CreateCustomVerificationEmailTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"FromEmailAddress\",\"TemplateSubject\",\"TemplateContent\",\"SuccessRedirectionURL\",\"FailureRedirectionURL\"],\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"TemplateContent\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}}},\"CreateReceiptFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"Filter\"],\"members\":{\"Filter\":{\"shape\":\"S10\"}}},\"output\":{\"resultWrapper\":\"CreateReceiptFilterResult\",\"type\":\"structure\",\"members\":{}}},\"CreateReceiptRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"Rule\"],\"members\":{\"RuleSetName\":{},\"After\":{},\"Rule\":{\"shape\":\"S18\"}}},\"output\":{\"resultWrapper\":\"CreateReceiptRuleResult\",\"type\":\"structure\",\"members\":{}}},\"CreateReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\"],\"members\":{\"RuleSetName\":{}}},\"output\":{\"resultWrapper\":\"CreateReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{}}},\"CreateTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"Template\"],\"members\":{\"Template\":{\"shape\":\"S20\"}}},\"output\":{\"resultWrapper\":\"CreateTemplateResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{}}},\"output\":{\"resultWrapper\":\"DeleteConfigurationSetResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSetEventDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\"],\"members\":{\"ConfigurationSetName\":{},\"EventDestinationName\":{}}},\"output\":{\"resultWrapper\":\"DeleteConfigurationSetEventDestinationResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSetTrackingOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{}}},\"output\":{\"resultWrapper\":\"DeleteConfigurationSetTrackingOptionsResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteCustomVerificationEmailTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{}}}},\"DeleteIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\"],\"members\":{\"Identity\":{}}},\"output\":{\"resultWrapper\":\"DeleteIdentityResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteIdentityPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"PolicyName\"],\"members\":{\"Identity\":{},\"PolicyName\":{}}},\"output\":{\"resultWrapper\":\"DeleteIdentityPolicyResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteReceiptFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"FilterName\"],\"members\":{\"FilterName\":{}}},\"output\":{\"resultWrapper\":\"DeleteReceiptFilterResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteReceiptRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"RuleName\"],\"members\":{\"RuleSetName\":{},\"RuleName\":{}}},\"output\":{\"resultWrapper\":\"DeleteReceiptRuleResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\"],\"members\":{\"RuleSetName\":{}}},\"output\":{\"resultWrapper\":\"DeleteReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{}}},\"output\":{\"resultWrapper\":\"DeleteTemplateResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteVerifiedEmailAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\"],\"members\":{\"EmailAddress\":{}}}},\"DescribeActiveReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"resultWrapper\":\"DescribeActiveReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S2t\"},\"Rules\":{\"shape\":\"S2v\"}}}},\"DescribeConfigurationSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{},\"ConfigurationSetAttributeNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DescribeConfigurationSetResult\",\"type\":\"structure\",\"members\":{\"ConfigurationSet\":{\"shape\":\"S5\"},\"EventDestinations\":{\"type\":\"list\",\"member\":{\"shape\":\"S9\"}},\"TrackingOptions\":{\"shape\":\"Sp\"},\"DeliveryOptions\":{\"shape\":\"S31\"},\"ReputationOptions\":{\"type\":\"structure\",\"members\":{\"SendingEnabled\":{\"type\":\"boolean\"},\"ReputationMetricsEnabled\":{\"type\":\"boolean\"},\"LastFreshStart\":{\"type\":\"timestamp\"}}}}}},\"DescribeReceiptRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"RuleName\"],\"members\":{\"RuleSetName\":{},\"RuleName\":{}}},\"output\":{\"resultWrapper\":\"DescribeReceiptRuleResult\",\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S18\"}}}},\"DescribeReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\"],\"members\":{\"RuleSetName\":{}}},\"output\":{\"resultWrapper\":\"DescribeReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S2t\"},\"Rules\":{\"shape\":\"S2v\"}}}},\"GetAccountSendingEnabled\":{\"output\":{\"resultWrapper\":\"GetAccountSendingEnabledResult\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}},\"GetCustomVerificationEmailTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{}}},\"output\":{\"resultWrapper\":\"GetCustomVerificationEmailTemplateResult\",\"type\":\"structure\",\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"TemplateContent\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}}},\"GetIdentityDkimAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identities\"],\"members\":{\"Identities\":{\"shape\":\"S3c\"}}},\"output\":{\"resultWrapper\":\"GetIdentityDkimAttributesResult\",\"type\":\"structure\",\"required\":[\"DkimAttributes\"],\"members\":{\"DkimAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"DkimEnabled\",\"DkimVerificationStatus\"],\"members\":{\"DkimEnabled\":{\"type\":\"boolean\"},\"DkimVerificationStatus\":{},\"DkimTokens\":{\"shape\":\"S3h\"}}}}}}},\"GetIdentityMailFromDomainAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identities\"],\"members\":{\"Identities\":{\"shape\":\"S3c\"}}},\"output\":{\"resultWrapper\":\"GetIdentityMailFromDomainAttributesResult\",\"type\":\"structure\",\"required\":[\"MailFromDomainAttributes\"],\"members\":{\"MailFromDomainAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"MailFromDomain\",\"MailFromDomainStatus\",\"BehaviorOnMXFailure\"],\"members\":{\"MailFromDomain\":{},\"MailFromDomainStatus\":{},\"BehaviorOnMXFailure\":{}}}}}}},\"GetIdentityNotificationAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identities\"],\"members\":{\"Identities\":{\"shape\":\"S3c\"}}},\"output\":{\"resultWrapper\":\"GetIdentityNotificationAttributesResult\",\"type\":\"structure\",\"required\":[\"NotificationAttributes\"],\"members\":{\"NotificationAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"BounceTopic\",\"ComplaintTopic\",\"DeliveryTopic\",\"ForwardingEnabled\"],\"members\":{\"BounceTopic\":{},\"ComplaintTopic\":{},\"DeliveryTopic\":{},\"ForwardingEnabled\":{\"type\":\"boolean\"},\"HeadersInBounceNotificationsEnabled\":{\"type\":\"boolean\"},\"HeadersInComplaintNotificationsEnabled\":{\"type\":\"boolean\"},\"HeadersInDeliveryNotificationsEnabled\":{\"type\":\"boolean\"}}}}}}},\"GetIdentityPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"PolicyNames\"],\"members\":{\"Identity\":{},\"PolicyNames\":{\"shape\":\"S3w\"}}},\"output\":{\"resultWrapper\":\"GetIdentityPoliciesResult\",\"type\":\"structure\",\"required\":[\"Policies\"],\"members\":{\"Policies\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"GetIdentityVerificationAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identities\"],\"members\":{\"Identities\":{\"shape\":\"S3c\"}}},\"output\":{\"resultWrapper\":\"GetIdentityVerificationAttributesResult\",\"type\":\"structure\",\"required\":[\"VerificationAttributes\"],\"members\":{\"VerificationAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"VerificationStatus\"],\"members\":{\"VerificationStatus\":{},\"VerificationToken\":{}}}}}}},\"GetSendQuota\":{\"output\":{\"resultWrapper\":\"GetSendQuotaResult\",\"type\":\"structure\",\"members\":{\"Max24HourSend\":{\"type\":\"double\"},\"MaxSendRate\":{\"type\":\"double\"},\"SentLast24Hours\":{\"type\":\"double\"}}}},\"GetSendStatistics\":{\"output\":{\"resultWrapper\":\"GetSendStatisticsResult\",\"type\":\"structure\",\"members\":{\"SendDataPoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"DeliveryAttempts\":{\"type\":\"long\"},\"Bounces\":{\"type\":\"long\"},\"Complaints\":{\"type\":\"long\"},\"Rejects\":{\"type\":\"long\"}}}}}}},\"GetTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{}}},\"output\":{\"resultWrapper\":\"GetTemplateResult\",\"type\":\"structure\",\"members\":{\"Template\":{\"shape\":\"S20\"}}}},\"ListConfigurationSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListConfigurationSetsResult\",\"type\":\"structure\",\"members\":{\"ConfigurationSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"NextToken\":{}}}},\"ListCustomVerificationEmailTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListCustomVerificationEmailTemplatesResult\",\"type\":\"structure\",\"members\":{\"CustomVerificationEmailTemplates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}}},\"NextToken\":{}}}},\"ListIdentities\":{\"input\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"NextToken\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListIdentitiesResult\",\"type\":\"structure\",\"required\":[\"Identities\"],\"members\":{\"Identities\":{\"shape\":\"S3c\"},\"NextToken\":{}}}},\"ListIdentityPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\"],\"members\":{\"Identity\":{}}},\"output\":{\"resultWrapper\":\"ListIdentityPoliciesResult\",\"type\":\"structure\",\"required\":[\"PolicyNames\"],\"members\":{\"PolicyNames\":{\"shape\":\"S3w\"}}}},\"ListReceiptFilters\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"resultWrapper\":\"ListReceiptFiltersResult\",\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}}}}},\"ListReceiptRuleSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListReceiptRuleSetsResult\",\"type\":\"structure\",\"members\":{\"RuleSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S2t\"}},\"NextToken\":{}}}},\"ListTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListTemplatesResult\",\"type\":\"structure\",\"members\":{\"TemplatesMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListVerifiedEmailAddresses\":{\"output\":{\"resultWrapper\":\"ListVerifiedEmailAddressesResult\",\"type\":\"structure\",\"members\":{\"VerifiedEmailAddresses\":{\"shape\":\"S54\"}}}},\"PutConfigurationSetDeliveryOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{},\"DeliveryOptions\":{\"shape\":\"S31\"}}},\"output\":{\"resultWrapper\":\"PutConfigurationSetDeliveryOptionsResult\",\"type\":\"structure\",\"members\":{}}},\"PutIdentityPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"PolicyName\",\"Policy\"],\"members\":{\"Identity\":{},\"PolicyName\":{},\"Policy\":{}}},\"output\":{\"resultWrapper\":\"PutIdentityPolicyResult\",\"type\":\"structure\",\"members\":{}}},\"ReorderReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"RuleNames\"],\"members\":{\"RuleSetName\":{},\"RuleNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"ReorderReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{}}},\"SendBounce\":{\"input\":{\"type\":\"structure\",\"required\":[\"OriginalMessageId\",\"BounceSender\",\"BouncedRecipientInfoList\"],\"members\":{\"OriginalMessageId\":{},\"BounceSender\":{},\"Explanation\":{},\"MessageDsn\":{\"type\":\"structure\",\"required\":[\"ReportingMta\"],\"members\":{\"ReportingMta\":{},\"ArrivalDate\":{\"type\":\"timestamp\"},\"ExtensionFields\":{\"shape\":\"S5i\"}}},\"BouncedRecipientInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Recipient\"],\"members\":{\"Recipient\":{},\"RecipientArn\":{},\"BounceType\":{},\"RecipientDsnFields\":{\"type\":\"structure\",\"required\":[\"Action\",\"Status\"],\"members\":{\"FinalRecipient\":{},\"Action\":{},\"RemoteMta\":{},\"Status\":{},\"DiagnosticCode\":{},\"LastAttemptDate\":{\"type\":\"timestamp\"},\"ExtensionFields\":{\"shape\":\"S5i\"}}}}}},\"BounceSenderArn\":{}}},\"output\":{\"resultWrapper\":\"SendBounceResult\",\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"SendBulkTemplatedEmail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Source\",\"Template\",\"Destinations\"],\"members\":{\"Source\":{},\"SourceArn\":{},\"ReplyToAddresses\":{\"shape\":\"S54\"},\"ReturnPath\":{},\"ReturnPathArn\":{},\"ConfigurationSetName\":{},\"DefaultTags\":{\"shape\":\"S5x\"},\"Template\":{},\"TemplateArn\":{},\"DefaultTemplateData\":{},\"Destinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Destination\"],\"members\":{\"Destination\":{\"shape\":\"S64\"},\"ReplacementTags\":{\"shape\":\"S5x\"},\"ReplacementTemplateData\":{}}}}}},\"output\":{\"resultWrapper\":\"SendBulkTemplatedEmailResult\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"Error\":{},\"MessageId\":{}}}}}}},\"SendCustomVerificationEmail\":{\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\",\"TemplateName\"],\"members\":{\"EmailAddress\":{},\"TemplateName\":{},\"ConfigurationSetName\":{}}},\"output\":{\"resultWrapper\":\"SendCustomVerificationEmailResult\",\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"SendEmail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Source\",\"Destination\",\"Message\"],\"members\":{\"Source\":{},\"Destination\":{\"shape\":\"S64\"},\"Message\":{\"type\":\"structure\",\"required\":[\"Subject\",\"Body\"],\"members\":{\"Subject\":{\"shape\":\"S6e\"},\"Body\":{\"type\":\"structure\",\"members\":{\"Text\":{\"shape\":\"S6e\"},\"Html\":{\"shape\":\"S6e\"}}}}},\"ReplyToAddresses\":{\"shape\":\"S54\"},\"ReturnPath\":{},\"SourceArn\":{},\"ReturnPathArn\":{},\"Tags\":{\"shape\":\"S5x\"},\"ConfigurationSetName\":{}}},\"output\":{\"resultWrapper\":\"SendEmailResult\",\"type\":\"structure\",\"required\":[\"MessageId\"],\"members\":{\"MessageId\":{}}}},\"SendRawEmail\":{\"input\":{\"type\":\"structure\",\"required\":[\"RawMessage\"],\"members\":{\"Source\":{},\"Destinations\":{\"shape\":\"S54\"},\"RawMessage\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{\"type\":\"blob\"}}},\"FromArn\":{},\"SourceArn\":{},\"ReturnPathArn\":{},\"Tags\":{\"shape\":\"S5x\"},\"ConfigurationSetName\":{}}},\"output\":{\"resultWrapper\":\"SendRawEmailResult\",\"type\":\"structure\",\"required\":[\"MessageId\"],\"members\":{\"MessageId\":{}}}},\"SendTemplatedEmail\":{\"input\":{\"type\":\"structure\",\"required\":[\"Source\",\"Destination\",\"Template\",\"TemplateData\"],\"members\":{\"Source\":{},\"Destination\":{\"shape\":\"S64\"},\"ReplyToAddresses\":{\"shape\":\"S54\"},\"ReturnPath\":{},\"SourceArn\":{},\"ReturnPathArn\":{},\"Tags\":{\"shape\":\"S5x\"},\"ConfigurationSetName\":{},\"Template\":{},\"TemplateArn\":{},\"TemplateData\":{}}},\"output\":{\"resultWrapper\":\"SendTemplatedEmailResult\",\"type\":\"structure\",\"required\":[\"MessageId\"],\"members\":{\"MessageId\":{}}}},\"SetActiveReceiptRuleSet\":{\"input\":{\"type\":\"structure\",\"members\":{\"RuleSetName\":{}}},\"output\":{\"resultWrapper\":\"SetActiveReceiptRuleSetResult\",\"type\":\"structure\",\"members\":{}}},\"SetIdentityDkimEnabled\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"DkimEnabled\"],\"members\":{\"Identity\":{},\"DkimEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"SetIdentityDkimEnabledResult\",\"type\":\"structure\",\"members\":{}}},\"SetIdentityFeedbackForwardingEnabled\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"ForwardingEnabled\"],\"members\":{\"Identity\":{},\"ForwardingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"SetIdentityFeedbackForwardingEnabledResult\",\"type\":\"structure\",\"members\":{}}},\"SetIdentityHeadersInNotificationsEnabled\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"NotificationType\",\"Enabled\"],\"members\":{\"Identity\":{},\"NotificationType\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"SetIdentityHeadersInNotificationsEnabledResult\",\"type\":\"structure\",\"members\":{}}},\"SetIdentityMailFromDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\"],\"members\":{\"Identity\":{},\"MailFromDomain\":{},\"BehaviorOnMXFailure\":{}}},\"output\":{\"resultWrapper\":\"SetIdentityMailFromDomainResult\",\"type\":\"structure\",\"members\":{}}},\"SetIdentityNotificationTopic\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identity\",\"NotificationType\"],\"members\":{\"Identity\":{},\"NotificationType\":{},\"SnsTopic\":{}}},\"output\":{\"resultWrapper\":\"SetIdentityNotificationTopicResult\",\"type\":\"structure\",\"members\":{}}},\"SetReceiptRulePosition\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"RuleName\"],\"members\":{\"RuleSetName\":{},\"RuleName\":{},\"After\":{}}},\"output\":{\"resultWrapper\":\"SetReceiptRulePositionResult\",\"type\":\"structure\",\"members\":{}}},\"TestRenderTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"TemplateData\"],\"members\":{\"TemplateName\":{},\"TemplateData\":{}}},\"output\":{\"resultWrapper\":\"TestRenderTemplateResult\",\"type\":\"structure\",\"members\":{\"RenderedTemplate\":{}}}},\"UpdateAccountSendingEnabled\":{\"input\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}},\"UpdateConfigurationSetEventDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestination\"],\"members\":{\"ConfigurationSetName\":{},\"EventDestination\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"UpdateConfigurationSetEventDestinationResult\",\"type\":\"structure\",\"members\":{}}},\"UpdateConfigurationSetReputationMetricsEnabled\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"Enabled\"],\"members\":{\"ConfigurationSetName\":{},\"Enabled\":{\"type\":\"boolean\"}}}},\"UpdateConfigurationSetSendingEnabled\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"Enabled\"],\"members\":{\"ConfigurationSetName\":{},\"Enabled\":{\"type\":\"boolean\"}}}},\"UpdateConfigurationSetTrackingOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"TrackingOptions\"],\"members\":{\"ConfigurationSetName\":{},\"TrackingOptions\":{\"shape\":\"Sp\"}}},\"output\":{\"resultWrapper\":\"UpdateConfigurationSetTrackingOptionsResult\",\"type\":\"structure\",\"members\":{}}},\"UpdateCustomVerificationEmailTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"TemplateContent\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}}},\"UpdateReceiptRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetName\",\"Rule\"],\"members\":{\"RuleSetName\":{},\"Rule\":{\"shape\":\"S18\"}}},\"output\":{\"resultWrapper\":\"UpdateReceiptRuleResult\",\"type\":\"structure\",\"members\":{}}},\"UpdateTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"Template\"],\"members\":{\"Template\":{\"shape\":\"S20\"}}},\"output\":{\"resultWrapper\":\"UpdateTemplateResult\",\"type\":\"structure\",\"members\":{}}},\"VerifyDomainDkim\":{\"input\":{\"type\":\"structure\",\"required\":[\"Domain\"],\"members\":{\"Domain\":{}}},\"output\":{\"resultWrapper\":\"VerifyDomainDkimResult\",\"type\":\"structure\",\"required\":[\"DkimTokens\"],\"members\":{\"DkimTokens\":{\"shape\":\"S3h\"}}}},\"VerifyDomainIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"Domain\"],\"members\":{\"Domain\":{}}},\"output\":{\"resultWrapper\":\"VerifyDomainIdentityResult\",\"type\":\"structure\",\"required\":[\"VerificationToken\"],\"members\":{\"VerificationToken\":{}}}},\"VerifyEmailAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\"],\"members\":{\"EmailAddress\":{}}}},\"VerifyEmailIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\"],\"members\":{\"EmailAddress\":{}}},\"output\":{\"resultWrapper\":\"VerifyEmailIdentityResult\",\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"S9\":{\"type\":\"structure\",\"required\":[\"Name\",\"MatchingEventTypes\"],\"members\":{\"Name\":{},\"Enabled\":{\"type\":\"boolean\"},\"MatchingEventTypes\":{\"type\":\"list\",\"member\":{}},\"KinesisFirehoseDestination\":{\"type\":\"structure\",\"required\":[\"IAMRoleARN\",\"DeliveryStreamARN\"],\"members\":{\"IAMRoleARN\":{},\"DeliveryStreamARN\":{}}},\"CloudWatchDestination\":{\"type\":\"structure\",\"required\":[\"DimensionConfigurations\"],\"members\":{\"DimensionConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DimensionName\",\"DimensionValueSource\",\"DefaultDimensionValue\"],\"members\":{\"DimensionName\":{},\"DimensionValueSource\":{},\"DefaultDimensionValue\":{}}}}}},\"SNSDestination\":{\"type\":\"structure\",\"required\":[\"TopicARN\"],\"members\":{\"TopicARN\":{}}}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"CustomRedirectDomain\":{}}},\"S10\":{\"type\":\"structure\",\"required\":[\"Name\",\"IpFilter\"],\"members\":{\"Name\":{},\"IpFilter\":{\"type\":\"structure\",\"required\":[\"Policy\",\"Cidr\"],\"members\":{\"Policy\":{},\"Cidr\":{}}}}},\"S18\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Enabled\":{\"type\":\"boolean\"},\"TlsPolicy\":{},\"Recipients\":{\"type\":\"list\",\"member\":{}},\"Actions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"S3Action\":{\"type\":\"structure\",\"required\":[\"BucketName\"],\"members\":{\"TopicArn\":{},\"BucketName\":{},\"ObjectKeyPrefix\":{},\"KmsKeyArn\":{}}},\"BounceAction\":{\"type\":\"structure\",\"required\":[\"SmtpReplyCode\",\"Message\",\"Sender\"],\"members\":{\"TopicArn\":{},\"SmtpReplyCode\":{},\"StatusCode\":{},\"Message\":{},\"Sender\":{}}},\"WorkmailAction\":{\"type\":\"structure\",\"required\":[\"OrganizationArn\"],\"members\":{\"TopicArn\":{},\"OrganizationArn\":{}}},\"LambdaAction\":{\"type\":\"structure\",\"required\":[\"FunctionArn\"],\"members\":{\"TopicArn\":{},\"FunctionArn\":{},\"InvocationType\":{}}},\"StopAction\":{\"type\":\"structure\",\"required\":[\"Scope\"],\"members\":{\"Scope\":{},\"TopicArn\":{}}},\"AddHeaderAction\":{\"type\":\"structure\",\"required\":[\"HeaderName\",\"HeaderValue\"],\"members\":{\"HeaderName\":{},\"HeaderValue\":{}}},\"SNSAction\":{\"type\":\"structure\",\"required\":[\"TopicArn\"],\"members\":{\"TopicArn\":{},\"Encoding\":{}}}}}},\"ScanEnabled\":{\"type\":\"boolean\"}}},\"S20\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{},\"SubjectPart\":{},\"TextPart\":{},\"HtmlPart\":{}}},\"S2t\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"}}},\"S2v\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\"}},\"S31\":{\"type\":\"structure\",\"members\":{\"TlsPolicy\":{}}},\"S3c\":{\"type\":\"list\",\"member\":{}},\"S3h\":{\"type\":\"list\",\"member\":{}},\"S3w\":{\"type\":\"list\",\"member\":{}},\"S54\":{\"type\":\"list\",\"member\":{}},\"S5i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"S5x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"S64\":{\"type\":\"structure\",\"members\":{\"ToAddresses\":{\"shape\":\"S54\"},\"CcAddresses\":{\"shape\":\"S54\"},\"BccAddresses\":{\"shape\":\"S54\"}}},\"S6e\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{},\"Charset\":{}}}}}");

/***/ }),

/***/ 61348:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListCustomVerificationEmailTemplates\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListIdentities\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextToken\",\"result_key\":\"Identities\"},\"ListVerifiedEmailAddresses\":{\"result_key\":\"VerifiedEmailAddresses\"}}}");

/***/ }),

/***/ 84476:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"IdentityExists\":{\"delay\":3,\"operation\":\"GetIdentityVerificationAttributes\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":\"Success\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"VerificationAttributes.*.VerificationStatus\"}]}}}");

/***/ }),

/***/ 96210:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-10-01\",\"endpointPrefix\":\"emr-containers\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon EMR Containers\",\"serviceId\":\"EMR containers\",\"signatureVersion\":\"v4\",\"signingName\":\"emr-containers\",\"uid\":\"emr-containers-2020-10-01\"},\"operations\":{\"CancelJobRun\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/virtualclusters/{virtualClusterId}/jobruns/{jobRunId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"virtualClusterId\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"jobRunId\"},\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"virtualClusterId\":{}}}},\"CreateManagedEndpoint\":{\"http\":{\"requestUri\":\"/virtualclusters/{virtualClusterId}/endpoints\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"virtualClusterId\",\"type\",\"releaseLabel\",\"executionRoleArn\",\"certificateArn\",\"clientToken\"],\"members\":{\"name\":{},\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"},\"type\":{},\"releaseLabel\":{},\"executionRoleArn\":{},\"certificateArn\":{},\"configurationOverrides\":{\"shape\":\"Sa\"},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"arn\":{},\"virtualClusterId\":{}}}},\"CreateVirtualCluster\":{\"http\":{\"requestUri\":\"/virtualclusters\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"containerProvider\",\"clientToken\"],\"members\":{\"name\":{},\"containerProvider\":{\"shape\":\"St\"},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"arn\":{}}}},\"DeleteManagedEndpoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/virtualclusters/{virtualClusterId}/endpoints/{endpointId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"virtualClusterId\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"endpointId\"},\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"virtualClusterId\":{}}}},\"DeleteVirtualCluster\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/virtualclusters/{virtualClusterId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{}}}},\"DescribeJobRun\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/virtualclusters/{virtualClusterId}/jobruns/{jobRunId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"virtualClusterId\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"jobRunId\"},\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobRun\":{\"shape\":\"S15\"}}}},\"DescribeManagedEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/virtualclusters/{virtualClusterId}/endpoints/{endpointId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"virtualClusterId\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"endpointId\"},\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"endpoint\":{\"shape\":\"S1j\"}}}},\"DescribeVirtualCluster\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/virtualclusters/{virtualClusterId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualCluster\":{\"shape\":\"S1o\"}}}},\"ListJobRuns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/virtualclusters/{virtualClusterId}/jobruns\"},\"input\":{\"type\":\"structure\",\"required\":[\"virtualClusterId\"],\"members\":{\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"},\"createdBefore\":{\"shape\":\"S1e\",\"location\":\"querystring\",\"locationName\":\"createdBefore\"},\"createdAfter\":{\"shape\":\"S1e\",\"location\":\"querystring\",\"locationName\":\"createdAfter\"},\"name\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"states\":{\"location\":\"querystring\",\"locationName\":\"states\",\"type\":\"list\",\"member\":{}},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobRuns\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}},\"nextToken\":{}}}},\"ListManagedEndpoints\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/virtualclusters/{virtualClusterId}/endpoints\"},\"input\":{\"type\":\"structure\",\"required\":[\"virtualClusterId\"],\"members\":{\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"},\"createdBefore\":{\"shape\":\"S1e\",\"location\":\"querystring\",\"locationName\":\"createdBefore\"},\"createdAfter\":{\"shape\":\"S1e\",\"location\":\"querystring\",\"locationName\":\"createdAfter\"},\"types\":{\"location\":\"querystring\",\"locationName\":\"types\",\"type\":\"list\",\"member\":{}},\"states\":{\"location\":\"querystring\",\"locationName\":\"states\",\"type\":\"list\",\"member\":{}},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"endpoints\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sn\"}}}},\"ListVirtualClusters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/virtualclusters\"},\"input\":{\"type\":\"structure\",\"members\":{\"containerProviderId\":{\"location\":\"querystring\",\"locationName\":\"containerProviderId\"},\"containerProviderType\":{\"location\":\"querystring\",\"locationName\":\"containerProviderType\"},\"createdAfter\":{\"shape\":\"S1e\",\"location\":\"querystring\",\"locationName\":\"createdAfter\"},\"createdBefore\":{\"shape\":\"S1e\",\"location\":\"querystring\",\"locationName\":\"createdBefore\"},\"states\":{\"location\":\"querystring\",\"locationName\":\"states\",\"type\":\"list\",\"member\":{}},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"virtualClusters\":{\"type\":\"list\",\"member\":{\"shape\":\"S1o\"}},\"nextToken\":{}}}},\"StartJobRun\":{\"http\":{\"requestUri\":\"/virtualclusters/{virtualClusterId}/jobruns\"},\"input\":{\"type\":\"structure\",\"required\":[\"virtualClusterId\",\"clientToken\",\"executionRoleArn\",\"releaseLabel\",\"jobDriver\"],\"members\":{\"name\":{},\"virtualClusterId\":{\"location\":\"uri\",\"locationName\":\"virtualClusterId\"},\"clientToken\":{\"idempotencyToken\":true},\"executionRoleArn\":{},\"releaseLabel\":{},\"jobDriver\":{\"shape\":\"S18\"},\"configurationOverrides\":{\"shape\":\"Sa\"},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"arn\":{},\"virtualClusterId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sa\":{\"type\":\"structure\",\"members\":{\"applicationConfiguration\":{\"shape\":\"Sb\"},\"monitoringConfiguration\":{\"type\":\"structure\",\"members\":{\"persistentAppUI\":{},\"cloudWatchMonitoringConfiguration\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{},\"logStreamNamePrefix\":{}}},\"s3MonitoringConfiguration\":{\"type\":\"structure\",\"required\":[\"logUri\"],\"members\":{\"logUri\":{}}}}}}},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"classification\"],\"members\":{\"classification\":{},\"properties\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"configurations\":{\"shape\":\"Sb\"}}}},\"Sn\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"St\":{\"type\":\"structure\",\"required\":[\"type\",\"id\"],\"members\":{\"type\":{},\"id\":{},\"info\":{\"type\":\"structure\",\"members\":{\"eksInfo\":{\"type\":\"structure\",\"members\":{\"namespace\":{}}}},\"union\":true}}},\"S15\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"virtualClusterId\":{},\"arn\":{},\"state\":{},\"clientToken\":{},\"executionRoleArn\":{},\"releaseLabel\":{},\"configurationOverrides\":{\"shape\":\"Sa\"},\"jobDriver\":{\"shape\":\"S18\"},\"createdAt\":{\"shape\":\"S1e\"},\"createdBy\":{},\"finishedAt\":{\"shape\":\"S1e\"},\"stateDetails\":{},\"failureReason\":{},\"tags\":{\"shape\":\"Sn\"}}},\"S18\":{\"type\":\"structure\",\"members\":{\"sparkSubmitJobDriver\":{\"type\":\"structure\",\"required\":[\"entryPoint\"],\"members\":{\"entryPoint\":{\"type\":\"string\",\"sensitive\":true},\"entryPointArguments\":{\"type\":\"list\",\"member\":{\"type\":\"string\",\"sensitive\":true}},\"sparkSubmitParameters\":{\"type\":\"string\",\"sensitive\":true}}}}},\"S1e\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S1j\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"arn\":{},\"virtualClusterId\":{},\"type\":{},\"state\":{},\"releaseLabel\":{},\"executionRoleArn\":{},\"certificateArn\":{},\"configurationOverrides\":{\"shape\":\"Sa\"},\"serverUrl\":{},\"createdAt\":{\"shape\":\"S1e\"},\"securityGroup\":{},\"subnetIds\":{\"type\":\"list\",\"member\":{}},\"tags\":{\"shape\":\"Sn\"}}},\"S1o\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"arn\":{},\"state\":{},\"containerProvider\":{\"shape\":\"St\"},\"createdAt\":{\"shape\":\"S1e\"},\"tags\":{\"shape\":\"Sn\"}}}}}");

/***/ }),

/***/ 83173:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListJobRuns\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"jobRuns\"},\"ListManagedEndpoints\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"endpoints\"},\"ListVirtualClusters\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"virtualClusters\"}}}");

/***/ }),

/***/ 23864:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-01-11\",\"endpointPrefix\":\"entitlement.marketplace\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Marketplace Entitlement Service\",\"serviceId\":\"Marketplace Entitlement Service\",\"signatureVersion\":\"v4\",\"signingName\":\"aws-marketplace\",\"targetPrefix\":\"AWSMPEntitlementService\",\"uid\":\"entitlement.marketplace-2017-01-11\"},\"operations\":{\"GetEntitlements\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductCode\"],\"members\":{\"ProductCode\":{},\"Filter\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entitlements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProductCode\":{},\"Dimension\":{},\"CustomerIdentifier\":{},\"Value\":{\"type\":\"structure\",\"members\":{\"IntegerValue\":{\"type\":\"integer\"},\"DoubleValue\":{\"type\":\"double\"},\"BooleanValue\":{\"type\":\"boolean\"},\"StringValue\":{}}},\"ExpirationDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}}},\"shapes\":{}}");

/***/ }),

/***/ 98218:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 69235:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-01-01\",\"endpointPrefix\":\"es\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Elasticsearch Service\",\"serviceId\":\"Elasticsearch Service\",\"signatureVersion\":\"v4\",\"uid\":\"es-2015-01-01\"},\"operations\":{\"AcceptInboundCrossClusterSearchConnection\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-01-01/es/ccs/inboundConnection/{ConnectionId}/accept\"},\"input\":{\"type\":\"structure\",\"required\":[\"CrossClusterSearchConnectionId\"],\"members\":{\"CrossClusterSearchConnectionId\":{\"location\":\"uri\",\"locationName\":\"ConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrossClusterSearchConnection\":{\"shape\":\"S4\"}}}},\"AddTags\":{\"http\":{\"requestUri\":\"/2015-01-01/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ARN\",\"TagList\"],\"members\":{\"ARN\":{},\"TagList\":{\"shape\":\"Se\"}}}},\"AssociatePackage\":{\"http\":{\"requestUri\":\"/2015-01-01/packages/associate/{PackageID}/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageID\",\"DomainName\"],\"members\":{\"PackageID\":{\"location\":\"uri\",\"locationName\":\"PackageID\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainPackageDetails\":{\"shape\":\"Sl\"}}}},\"CancelElasticsearchServiceSoftwareUpdate\":{\"http\":{\"requestUri\":\"/2015-01-01/es/serviceSoftwareUpdate/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceSoftwareOptions\":{\"shape\":\"Sx\"}}}},\"CreateElasticsearchDomain\":{\"http\":{\"requestUri\":\"/2015-01-01/es/domain\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"ElasticsearchVersion\":{},\"ElasticsearchClusterConfig\":{\"shape\":\"S14\"},\"EBSOptions\":{\"shape\":\"S19\"},\"AccessPolicies\":{},\"SnapshotOptions\":{\"shape\":\"S1c\"},\"VPCOptions\":{\"shape\":\"S1d\"},\"CognitoOptions\":{\"shape\":\"S1f\"},\"EncryptionAtRestOptions\":{\"shape\":\"S1j\"},\"NodeToNodeEncryptionOptions\":{\"shape\":\"S1l\"},\"AdvancedOptions\":{\"shape\":\"S1m\"},\"LogPublishingOptions\":{\"shape\":\"S1n\"},\"DomainEndpointOptions\":{\"shape\":\"S1r\"},\"AdvancedSecurityOptions\":{\"shape\":\"S1u\"},\"AutoTuneOptions\":{\"type\":\"structure\",\"members\":{\"DesiredState\":{},\"MaintenanceSchedules\":{\"shape\":\"S25\"}}},\"TagList\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainStatus\":{\"shape\":\"S2c\"}}}},\"CreateOutboundCrossClusterSearchConnection\":{\"http\":{\"requestUri\":\"/2015-01-01/es/ccs/outboundConnection\"},\"input\":{\"type\":\"structure\",\"required\":[\"SourceDomainInfo\",\"DestinationDomainInfo\",\"ConnectionAlias\"],\"members\":{\"SourceDomainInfo\":{\"shape\":\"S5\"},\"DestinationDomainInfo\":{\"shape\":\"S5\"},\"ConnectionAlias\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SourceDomainInfo\":{\"shape\":\"S5\"},\"DestinationDomainInfo\":{\"shape\":\"S5\"},\"ConnectionAlias\":{},\"ConnectionStatus\":{\"shape\":\"S2o\"},\"CrossClusterSearchConnectionId\":{}}}},\"CreatePackage\":{\"http\":{\"requestUri\":\"/2015-01-01/packages\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageName\",\"PackageType\",\"PackageSource\"],\"members\":{\"PackageName\":{},\"PackageType\":{},\"PackageDescription\":{},\"PackageSource\":{\"shape\":\"S2s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PackageDetails\":{\"shape\":\"S2w\"}}}},\"DeleteElasticsearchDomain\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-01-01/es/domain/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainStatus\":{\"shape\":\"S2c\"}}}},\"DeleteElasticsearchServiceRole\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-01-01/es/role\"}},\"DeleteInboundCrossClusterSearchConnection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-01-01/es/ccs/inboundConnection/{ConnectionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CrossClusterSearchConnectionId\"],\"members\":{\"CrossClusterSearchConnectionId\":{\"location\":\"uri\",\"locationName\":\"ConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrossClusterSearchConnection\":{\"shape\":\"S4\"}}}},\"DeleteOutboundCrossClusterSearchConnection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-01-01/es/ccs/outboundConnection/{ConnectionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CrossClusterSearchConnectionId\"],\"members\":{\"CrossClusterSearchConnectionId\":{\"location\":\"uri\",\"locationName\":\"ConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrossClusterSearchConnection\":{\"shape\":\"S35\"}}}},\"DeletePackage\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-01-01/packages/{PackageID}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageID\"],\"members\":{\"PackageID\":{\"location\":\"uri\",\"locationName\":\"PackageID\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PackageDetails\":{\"shape\":\"S2w\"}}}},\"DescribeDomainAutoTunes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/domain/{DomainName}/autoTunes\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutoTunes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutoTuneType\":{},\"AutoTuneDetails\":{\"type\":\"structure\",\"members\":{\"ScheduledAutoTuneDetails\":{\"type\":\"structure\",\"members\":{\"Date\":{\"type\":\"timestamp\"},\"ActionType\":{},\"Action\":{},\"Severity\":{}}}}}}}},\"NextToken\":{}}}},\"DescribeElasticsearchDomain\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/domain/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainStatus\"],\"members\":{\"DomainStatus\":{\"shape\":\"S2c\"}}}},\"DescribeElasticsearchDomainConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/domain/{DomainName}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainConfig\"],\"members\":{\"DomainConfig\":{\"shape\":\"S3p\"}}}},\"DescribeElasticsearchDomains\":{\"http\":{\"requestUri\":\"/2015-01-01/es/domain-info\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainNames\"],\"members\":{\"DomainNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainStatusList\"],\"members\":{\"DomainStatusList\":{\"type\":\"list\",\"member\":{\"shape\":\"S2c\"}}}}},\"DescribeElasticsearchInstanceTypeLimits\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/instanceTypeLimits/{ElasticsearchVersion}/{InstanceType}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InstanceType\",\"ElasticsearchVersion\"],\"members\":{\"DomainName\":{\"location\":\"querystring\",\"locationName\":\"domainName\"},\"InstanceType\":{\"location\":\"uri\",\"locationName\":\"InstanceType\"},\"ElasticsearchVersion\":{\"location\":\"uri\",\"locationName\":\"ElasticsearchVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LimitsByRole\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"StorageTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StorageTypeName\":{},\"StorageSubTypeName\":{},\"StorageTypeLimits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LimitName\":{},\"LimitValues\":{\"shape\":\"S4r\"}}}}}}},\"InstanceLimits\":{\"type\":\"structure\",\"members\":{\"InstanceCountLimits\":{\"type\":\"structure\",\"members\":{\"MinimumInstanceCount\":{\"type\":\"integer\"},\"MaximumInstanceCount\":{\"type\":\"integer\"}}}}},\"AdditionalLimits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LimitName\":{},\"LimitValues\":{\"shape\":\"S4r\"}}}}}}}}}},\"DescribeInboundCrossClusterSearchConnections\":{\"http\":{\"requestUri\":\"/2015-01-01/es/ccs/inboundConnection/search\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S50\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrossClusterSearchConnections\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"NextToken\":{}}}},\"DescribeOutboundCrossClusterSearchConnections\":{\"http\":{\"requestUri\":\"/2015-01-01/es/ccs/outboundConnection/search\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S50\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrossClusterSearchConnections\":{\"type\":\"list\",\"member\":{\"shape\":\"S35\"}},\"NextToken\":{}}}},\"DescribePackages\":{\"http\":{\"requestUri\":\"/2015-01-01/packages/describe\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PackageDetailsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S2w\"}},\"NextToken\":{}}}},\"DescribeReservedElasticsearchInstanceOfferings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/reservedInstanceOfferings\"},\"input\":{\"type\":\"structure\",\"members\":{\"ReservedElasticsearchInstanceOfferingId\":{\"location\":\"querystring\",\"locationName\":\"offeringId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ReservedElasticsearchInstanceOfferings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReservedElasticsearchInstanceOfferingId\":{},\"ElasticsearchInstanceType\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"PaymentOption\":{},\"RecurringCharges\":{\"shape\":\"S5p\"}}}}}}},\"DescribeReservedElasticsearchInstances\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/reservedInstances\"},\"input\":{\"type\":\"structure\",\"members\":{\"ReservedElasticsearchInstanceId\":{\"location\":\"querystring\",\"locationName\":\"reservationId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ReservedElasticsearchInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReservationName\":{},\"ReservedElasticsearchInstanceId\":{},\"ReservedElasticsearchInstanceOfferingId\":{},\"ElasticsearchInstanceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"ElasticsearchInstanceCount\":{\"type\":\"integer\"},\"State\":{},\"PaymentOption\":{},\"RecurringCharges\":{\"shape\":\"S5p\"}}}}}}},\"DissociatePackage\":{\"http\":{\"requestUri\":\"/2015-01-01/packages/dissociate/{PackageID}/{DomainName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageID\",\"DomainName\"],\"members\":{\"PackageID\":{\"location\":\"uri\",\"locationName\":\"PackageID\"},\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainPackageDetails\":{\"shape\":\"Sl\"}}}},\"GetCompatibleElasticsearchVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/compatibleVersions\"},\"input\":{\"type\":\"structure\",\"members\":{\"DomainName\":{\"location\":\"querystring\",\"locationName\":\"domainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CompatibleElasticsearchVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceVersion\":{},\"TargetVersions\":{\"shape\":\"S62\"}}}}}}},\"GetPackageVersionHistory\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/packages/{PackageID}/history\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageID\"],\"members\":{\"PackageID\":{\"location\":\"uri\",\"locationName\":\"PackageID\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PackageID\":{},\"PackageVersionHistoryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PackageVersion\":{},\"CommitMessage\":{},\"CreatedAt\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetUpgradeHistory\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/upgradeDomain/{DomainName}/history\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpgradeHistories\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UpgradeName\":{},\"StartTimestamp\":{\"type\":\"timestamp\"},\"UpgradeStatus\":{},\"StepsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UpgradeStep\":{},\"UpgradeStepStatus\":{},\"Issues\":{\"type\":\"list\",\"member\":{}},\"ProgressPercent\":{\"type\":\"double\"}}}}}}},\"NextToken\":{}}}},\"GetUpgradeStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/upgradeDomain/{DomainName}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpgradeStep\":{},\"StepStatus\":{},\"UpgradeName\":{}}}},\"ListDomainNames\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/domain\"},\"output\":{\"type\":\"structure\",\"members\":{\"DomainNames\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainName\":{}}}}}}},\"ListDomainsForPackage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/packages/{PackageID}/domains\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageID\"],\"members\":{\"PackageID\":{\"location\":\"uri\",\"locationName\":\"PackageID\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainPackageDetailsList\":{\"shape\":\"S6r\"},\"NextToken\":{}}}},\"ListElasticsearchInstanceTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/instanceTypes/{ElasticsearchVersion}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ElasticsearchVersion\"],\"members\":{\"ElasticsearchVersion\":{\"location\":\"uri\",\"locationName\":\"ElasticsearchVersion\"},\"DomainName\":{\"location\":\"querystring\",\"locationName\":\"domainName\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ElasticsearchInstanceTypes\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListElasticsearchVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/es/versions\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ElasticsearchVersions\":{\"shape\":\"S62\"},\"NextToken\":{}}}},\"ListPackagesForDomain\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/domain/{DomainName}/packages\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainPackageDetailsList\":{\"shape\":\"S6r\"},\"NextToken\":{}}}},\"ListTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-01-01/tags/\"},\"input\":{\"type\":\"structure\",\"required\":[\"ARN\"],\"members\":{\"ARN\":{\"location\":\"querystring\",\"locationName\":\"arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"Se\"}}}},\"PurchaseReservedElasticsearchInstanceOffering\":{\"http\":{\"requestUri\":\"/2015-01-01/es/purchaseReservedInstanceOffering\"},\"input\":{\"type\":\"structure\",\"required\":[\"ReservedElasticsearchInstanceOfferingId\",\"ReservationName\"],\"members\":{\"ReservedElasticsearchInstanceOfferingId\":{},\"ReservationName\":{},\"InstanceCount\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedElasticsearchInstanceId\":{},\"ReservationName\":{}}}},\"RejectInboundCrossClusterSearchConnection\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-01-01/es/ccs/inboundConnection/{ConnectionId}/reject\"},\"input\":{\"type\":\"structure\",\"required\":[\"CrossClusterSearchConnectionId\"],\"members\":{\"CrossClusterSearchConnectionId\":{\"location\":\"uri\",\"locationName\":\"ConnectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrossClusterSearchConnection\":{\"shape\":\"S4\"}}}},\"RemoveTags\":{\"http\":{\"requestUri\":\"/2015-01-01/tags-removal\"},\"input\":{\"type\":\"structure\",\"required\":[\"ARN\",\"TagKeys\"],\"members\":{\"ARN\":{},\"TagKeys\":{\"shape\":\"S1e\"}}}},\"StartElasticsearchServiceSoftwareUpdate\":{\"http\":{\"requestUri\":\"/2015-01-01/es/serviceSoftwareUpdate/start\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceSoftwareOptions\":{\"shape\":\"Sx\"}}}},\"UpdateElasticsearchDomainConfig\":{\"http\":{\"requestUri\":\"/2015-01-01/es/domain/{DomainName}/config\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{\"location\":\"uri\",\"locationName\":\"DomainName\"},\"ElasticsearchClusterConfig\":{\"shape\":\"S14\"},\"EBSOptions\":{\"shape\":\"S19\"},\"SnapshotOptions\":{\"shape\":\"S1c\"},\"VPCOptions\":{\"shape\":\"S1d\"},\"CognitoOptions\":{\"shape\":\"S1f\"},\"AdvancedOptions\":{\"shape\":\"S1m\"},\"AccessPolicies\":{},\"LogPublishingOptions\":{\"shape\":\"S1n\"},\"DomainEndpointOptions\":{\"shape\":\"S1r\"},\"AdvancedSecurityOptions\":{\"shape\":\"S1u\"},\"NodeToNodeEncryptionOptions\":{\"shape\":\"S1l\"},\"EncryptionAtRestOptions\":{\"shape\":\"S1j\"},\"AutoTuneOptions\":{\"shape\":\"S48\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainConfig\"],\"members\":{\"DomainConfig\":{\"shape\":\"S3p\"}}}},\"UpdatePackage\":{\"http\":{\"requestUri\":\"/2015-01-01/packages/update\"},\"input\":{\"type\":\"structure\",\"required\":[\"PackageID\",\"PackageSource\"],\"members\":{\"PackageID\":{},\"PackageSource\":{\"shape\":\"S2s\"},\"PackageDescription\":{},\"CommitMessage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PackageDetails\":{\"shape\":\"S2w\"}}}},\"UpgradeElasticsearchDomain\":{\"http\":{\"requestUri\":\"/2015-01-01/es/upgradeDomain\"},\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"TargetVersion\"],\"members\":{\"DomainName\":{},\"TargetVersion\":{},\"PerformCheckOnly\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"TargetVersion\":{},\"PerformCheckOnly\":{\"type\":\"boolean\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"SourceDomainInfo\":{\"shape\":\"S5\"},\"DestinationDomainInfo\":{\"shape\":\"S5\"},\"CrossClusterSearchConnectionId\":{},\"ConnectionStatus\":{\"type\":\"structure\",\"members\":{\"StatusCode\":{},\"Message\":{}}}}},\"S5\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"OwnerId\":{},\"DomainName\":{},\"Region\":{}}},\"Se\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sl\":{\"type\":\"structure\",\"members\":{\"PackageID\":{},\"PackageName\":{},\"PackageType\":{},\"LastUpdated\":{\"type\":\"timestamp\"},\"DomainName\":{},\"DomainPackageStatus\":{},\"PackageVersion\":{},\"ReferencePath\":{},\"ErrorDetails\":{\"shape\":\"Ss\"}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"ErrorType\":{},\"ErrorMessage\":{}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"CurrentVersion\":{},\"NewVersion\":{},\"UpdateAvailable\":{\"type\":\"boolean\"},\"Cancellable\":{\"type\":\"boolean\"},\"UpdateStatus\":{},\"Description\":{},\"AutomatedUpdateDate\":{\"type\":\"timestamp\"},\"OptionalDeployment\":{\"type\":\"boolean\"}}},\"S14\":{\"type\":\"structure\",\"members\":{\"InstanceType\":{},\"InstanceCount\":{\"type\":\"integer\"},\"DedicatedMasterEnabled\":{\"type\":\"boolean\"},\"ZoneAwarenessEnabled\":{\"type\":\"boolean\"},\"ZoneAwarenessConfig\":{\"type\":\"structure\",\"members\":{\"AvailabilityZoneCount\":{\"type\":\"integer\"}}},\"DedicatedMasterType\":{},\"DedicatedMasterCount\":{\"type\":\"integer\"},\"WarmEnabled\":{\"type\":\"boolean\"},\"WarmType\":{},\"WarmCount\":{\"type\":\"integer\"}}},\"S19\":{\"type\":\"structure\",\"members\":{\"EBSEnabled\":{\"type\":\"boolean\"},\"VolumeType\":{},\"VolumeSize\":{\"type\":\"integer\"},\"Iops\":{\"type\":\"integer\"}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"AutomatedSnapshotStartHour\":{\"type\":\"integer\"}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"SubnetIds\":{\"shape\":\"S1e\"},\"SecurityGroupIds\":{\"shape\":\"S1e\"}}},\"S1e\":{\"type\":\"list\",\"member\":{}},\"S1f\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"UserPoolId\":{},\"IdentityPoolId\":{},\"RoleArn\":{}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"KmsKeyId\":{}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"S1m\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1n\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"CloudWatchLogsLogGroupArn\":{},\"Enabled\":{\"type\":\"boolean\"}}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"EnforceHTTPS\":{\"type\":\"boolean\"},\"TLSSecurityPolicy\":{},\"CustomEndpointEnabled\":{\"type\":\"boolean\"},\"CustomEndpoint\":{},\"CustomEndpointCertificateArn\":{}}},\"S1u\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"InternalUserDatabaseEnabled\":{\"type\":\"boolean\"},\"MasterUserOptions\":{\"type\":\"structure\",\"members\":{\"MasterUserARN\":{},\"MasterUserName\":{\"shape\":\"S1w\"},\"MasterUserPassword\":{\"type\":\"string\",\"sensitive\":true}}},\"SAMLOptions\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Idp\":{\"shape\":\"S1z\"},\"MasterUserName\":{\"shape\":\"S1w\"},\"MasterBackendRole\":{},\"SubjectKey\":{},\"RolesKey\":{},\"SessionTimeoutMinutes\":{\"type\":\"integer\"}}}}},\"S1w\":{\"type\":\"string\",\"sensitive\":true},\"S1z\":{\"type\":\"structure\",\"required\":[\"MetadataContent\",\"EntityId\"],\"members\":{\"MetadataContent\":{},\"EntityId\":{}}},\"S25\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StartAt\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"long\"},\"Unit\":{}}},\"CronExpressionForRecurrence\":{}}}},\"S2c\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"DomainName\",\"ARN\",\"ElasticsearchClusterConfig\"],\"members\":{\"DomainId\":{},\"DomainName\":{},\"ARN\":{},\"Created\":{\"type\":\"boolean\"},\"Deleted\":{\"type\":\"boolean\"},\"Endpoint\":{},\"Endpoints\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Processing\":{\"type\":\"boolean\"},\"UpgradeProcessing\":{\"type\":\"boolean\"},\"ElasticsearchVersion\":{},\"ElasticsearchClusterConfig\":{\"shape\":\"S14\"},\"EBSOptions\":{\"shape\":\"S19\"},\"AccessPolicies\":{},\"SnapshotOptions\":{\"shape\":\"S1c\"},\"VPCOptions\":{\"shape\":\"S2g\"},\"CognitoOptions\":{\"shape\":\"S1f\"},\"EncryptionAtRestOptions\":{\"shape\":\"S1j\"},\"NodeToNodeEncryptionOptions\":{\"shape\":\"S1l\"},\"AdvancedOptions\":{\"shape\":\"S1m\"},\"LogPublishingOptions\":{\"shape\":\"S1n\"},\"ServiceSoftwareOptions\":{\"shape\":\"Sx\"},\"DomainEndpointOptions\":{\"shape\":\"S1r\"},\"AdvancedSecurityOptions\":{\"shape\":\"S2h\"},\"AutoTuneOptions\":{\"type\":\"structure\",\"members\":{\"State\":{},\"ErrorMessage\":{}}}}},\"S2g\":{\"type\":\"structure\",\"members\":{\"VPCId\":{},\"SubnetIds\":{\"shape\":\"S1e\"},\"AvailabilityZones\":{\"shape\":\"S1e\"},\"SecurityGroupIds\":{\"shape\":\"S1e\"}}},\"S2h\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"InternalUserDatabaseEnabled\":{\"type\":\"boolean\"},\"SAMLOptions\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Idp\":{\"shape\":\"S1z\"},\"SubjectKey\":{},\"RolesKey\":{},\"SessionTimeoutMinutes\":{\"type\":\"integer\"}}}}},\"S2o\":{\"type\":\"structure\",\"members\":{\"StatusCode\":{},\"Message\":{}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"S3BucketName\":{},\"S3Key\":{}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"PackageID\":{},\"PackageName\":{},\"PackageType\":{},\"PackageDescription\":{},\"PackageStatus\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"AvailablePackageVersion\":{},\"ErrorDetails\":{\"shape\":\"Ss\"}}},\"S35\":{\"type\":\"structure\",\"members\":{\"SourceDomainInfo\":{\"shape\":\"S5\"},\"DestinationDomainInfo\":{\"shape\":\"S5\"},\"CrossClusterSearchConnectionId\":{},\"ConnectionAlias\":{},\"ConnectionStatus\":{\"shape\":\"S2o\"}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"ElasticsearchVersion\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"S3r\"}}},\"ElasticsearchClusterConfig\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S14\"},\"Status\":{\"shape\":\"S3r\"}}},\"EBSOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S19\"},\"Status\":{\"shape\":\"S3r\"}}},\"AccessPolicies\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{},\"Status\":{\"shape\":\"S3r\"}}},\"SnapshotOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1c\"},\"Status\":{\"shape\":\"S3r\"}}},\"VPCOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S2g\"},\"Status\":{\"shape\":\"S3r\"}}},\"CognitoOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1f\"},\"Status\":{\"shape\":\"S3r\"}}},\"EncryptionAtRestOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1j\"},\"Status\":{\"shape\":\"S3r\"}}},\"NodeToNodeEncryptionOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1l\"},\"Status\":{\"shape\":\"S3r\"}}},\"AdvancedOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1m\"},\"Status\":{\"shape\":\"S3r\"}}},\"LogPublishingOptions\":{\"type\":\"structure\",\"members\":{\"Options\":{\"shape\":\"S1n\"},\"Status\":{\"shape\":\"S3r\"}}},\"DomainEndpointOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S1r\"},\"Status\":{\"shape\":\"S3r\"}}},\"AdvancedSecurityOptions\":{\"type\":\"structure\",\"required\":[\"Options\",\"Status\"],\"members\":{\"Options\":{\"shape\":\"S2h\"},\"Status\":{\"shape\":\"S3r\"}}},\"AutoTuneOptions\":{\"type\":\"structure\",\"members\":{\"Options\":{\"shape\":\"S48\"},\"Status\":{\"type\":\"structure\",\"required\":[\"CreationDate\",\"UpdateDate\",\"State\"],\"members\":{\"CreationDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"UpdateVersion\":{\"type\":\"integer\"},\"State\":{},\"ErrorMessage\":{},\"PendingDeletion\":{\"type\":\"boolean\"}}}}}}},\"S3r\":{\"type\":\"structure\",\"required\":[\"CreationDate\",\"UpdateDate\",\"State\"],\"members\":{\"CreationDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"UpdateVersion\":{\"type\":\"integer\"},\"State\":{},\"PendingDeletion\":{\"type\":\"boolean\"}}},\"S48\":{\"type\":\"structure\",\"members\":{\"DesiredState\":{},\"RollbackOnDisable\":{},\"MaintenanceSchedules\":{\"shape\":\"S25\"}}},\"S4r\":{\"type\":\"list\",\"member\":{}},\"S50\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"S5p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}}}},\"S62\":{\"type\":\"list\",\"member\":{}},\"S6r\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\"}}}}");

/***/ }),

/***/ 5589:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDomainAutoTunes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeInboundCrossClusterSearchConnections\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeOutboundCrossClusterSearchConnections\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribePackages\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeReservedElasticsearchInstanceOfferings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeReservedElasticsearchInstances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetPackageVersionHistory\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetUpgradeHistory\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDomainsForPackage\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListElasticsearchInstanceTypes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListElasticsearchVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPackagesForDomain\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 16181:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-10-07\",\"endpointPrefix\":\"events\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon EventBridge\",\"serviceId\":\"EventBridge\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSEvents\",\"uid\":\"eventbridge-2015-10-07\"},\"operations\":{\"ActivateEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CancelReplay\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplayName\"],\"members\":{\"ReplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplayArn\":{},\"State\":{},\"StateReason\":{}}}},\"CreateApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ConnectionArn\",\"InvocationEndpoint\",\"HttpMethod\"],\"members\":{\"Name\":{},\"Description\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"ApiDestinationState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"CreateArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\",\"EventSourceArn\"],\"members\":{\"ArchiveName\":{},\"EventSourceArn\":{},\"Description\":{},\"EventPattern\":{},\"RetentionDays\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArchiveArn\":{},\"State\":{},\"StateReason\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"CreateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"AuthorizationType\",\"AuthParameters\"],\"members\":{\"Name\":{},\"Description\":{},\"AuthorizationType\":{},\"AuthParameters\":{\"type\":\"structure\",\"members\":{\"BasicAuthParameters\":{\"type\":\"structure\",\"required\":[\"Username\",\"Password\"],\"members\":{\"Username\":{},\"Password\":{}}},\"OAuthParameters\":{\"type\":\"structure\",\"required\":[\"ClientParameters\",\"AuthorizationEndpoint\",\"HttpMethod\"],\"members\":{\"ClientParameters\":{\"type\":\"structure\",\"required\":[\"ClientID\",\"ClientSecret\"],\"members\":{\"ClientID\":{},\"ClientSecret\":{}}},\"AuthorizationEndpoint\":{},\"HttpMethod\":{},\"OAuthHttpParameters\":{\"shape\":\"S14\"}}},\"ApiKeyAuthParameters\":{\"type\":\"structure\",\"required\":[\"ApiKeyName\",\"ApiKeyValue\"],\"members\":{\"ApiKeyName\":{},\"ApiKeyValue\":{}}},\"InvocationHttpParameters\":{\"shape\":\"S14\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"CreateEventBus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventSourceName\":{},\"Tags\":{\"shape\":\"S1m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventBusArn\":{}}}},\"CreatePartnerEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Account\"],\"members\":{\"Name\":{},\"Account\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSourceArn\":{}}}},\"DeactivateEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeauthorizeConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"DeleteApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\"],\"members\":{\"ArchiveName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"DeleteEventBus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeletePartnerEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Account\"],\"members\":{\"Name\":{},\"Account\":{}}}},\"DeleteRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{},\"Force\":{\"type\":\"boolean\"}}}},\"DescribeApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"Name\":{},\"Description\":{},\"ApiDestinationState\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"DescribeArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\"],\"members\":{\"ArchiveName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArchiveArn\":{},\"ArchiveName\":{},\"EventSourceArn\":{},\"Description\":{},\"EventPattern\":{},\"State\":{},\"StateReason\":{},\"RetentionDays\":{\"type\":\"integer\"},\"SizeBytes\":{\"type\":\"long\"},\"EventCount\":{\"type\":\"long\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"Name\":{},\"Description\":{},\"ConnectionState\":{},\"StateReason\":{},\"AuthorizationType\":{},\"SecretArn\":{},\"AuthParameters\":{\"type\":\"structure\",\"members\":{\"BasicAuthParameters\":{\"type\":\"structure\",\"members\":{\"Username\":{}}},\"OAuthParameters\":{\"type\":\"structure\",\"members\":{\"ClientParameters\":{\"type\":\"structure\",\"members\":{\"ClientID\":{}}},\"AuthorizationEndpoint\":{},\"HttpMethod\":{},\"OAuthHttpParameters\":{\"shape\":\"S14\"}}},\"ApiKeyAuthParameters\":{\"type\":\"structure\",\"members\":{\"ApiKeyName\":{}}},\"InvocationHttpParameters\":{\"shape\":\"S14\"}}},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"DescribeEventBus\":{\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Policy\":{}}}},\"DescribeEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedBy\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"Name\":{},\"State\":{}}}},\"DescribePartnerEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}}},\"DescribeReplay\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplayName\"],\"members\":{\"ReplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplayName\":{},\"ReplayArn\":{},\"Description\":{},\"State\":{},\"StateReason\":{},\"EventSourceArn\":{},\"Destination\":{\"shape\":\"S2w\"},\"EventStartTime\":{\"type\":\"timestamp\"},\"EventEndTime\":{\"type\":\"timestamp\"},\"EventLastReplayedTime\":{\"type\":\"timestamp\"},\"ReplayStartTime\":{\"type\":\"timestamp\"},\"ReplayEndTime\":{\"type\":\"timestamp\"}}}},\"DescribeRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"EventPattern\":{},\"ScheduleExpression\":{},\"State\":{},\"Description\":{},\"RoleArn\":{},\"ManagedBy\":{},\"EventBusName\":{},\"CreatedBy\":{}}}},\"DisableRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{}}}},\"EnableRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{}}}},\"ListApiDestinations\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"ConnectionArn\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"Name\":{},\"ApiDestinationState\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListArchives\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"EventSourceArn\":{},\"State\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Archives\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ArchiveName\":{},\"EventSourceArn\":{},\"State\":{},\"StateReason\":{},\"RetentionDays\":{\"type\":\"integer\"},\"SizeBytes\":{\"type\":\"long\"},\"EventCount\":{\"type\":\"long\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"ConnectionState\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"Name\":{},\"ConnectionState\":{},\"StateReason\":{},\"AuthorizationType\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListEventBuses\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventBuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Policy\":{}}}},\"NextToken\":{}}}},\"ListEventSources\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedBy\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"Name\":{},\"State\":{}}}},\"NextToken\":{}}}},\"ListPartnerEventSourceAccounts\":{\"input\":{\"type\":\"structure\",\"required\":[\"EventSourceName\"],\"members\":{\"EventSourceName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PartnerEventSourceAccounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Account\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"State\":{}}}},\"NextToken\":{}}}},\"ListPartnerEventSources\":{\"input\":{\"type\":\"structure\",\"required\":[\"NamePrefix\"],\"members\":{\"NamePrefix\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PartnerEventSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListReplays\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"State\":{},\"EventSourceArn\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Replays\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReplayName\":{},\"EventSourceArn\":{},\"State\":{},\"StateReason\":{},\"EventStartTime\":{\"type\":\"timestamp\"},\"EventEndTime\":{\"type\":\"timestamp\"},\"EventLastReplayedTime\":{\"type\":\"timestamp\"},\"ReplayStartTime\":{\"type\":\"timestamp\"},\"ReplayEndTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListRuleNamesByTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetArn\"],\"members\":{\"TargetArn\":{},\"EventBusName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"EventBusName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"EventPattern\":{},\"State\":{},\"Description\":{},\"ScheduleExpression\":{},\"RoleArn\":{},\"ManagedBy\":{},\"EventBusName\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1m\"}}}},\"ListTargetsByRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Rule\"],\"members\":{\"Rule\":{},\"EventBusName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Targets\":{\"shape\":\"S4l\"},\"NextToken\":{}}}},\"PutEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Time\":{\"type\":\"timestamp\"},\"Source\":{},\"Resources\":{\"shape\":\"S64\"},\"DetailType\":{},\"Detail\":{},\"EventBusName\":{},\"TraceHeader\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"PutPartnerEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Time\":{\"type\":\"timestamp\"},\"Source\":{},\"Resources\":{\"shape\":\"S64\"},\"DetailType\":{},\"Detail\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"PutPermission\":{\"input\":{\"type\":\"structure\",\"members\":{\"EventBusName\":{},\"Action\":{},\"Principal\":{},\"StatementId\":{},\"Condition\":{\"type\":\"structure\",\"required\":[\"Type\",\"Key\",\"Value\"],\"members\":{\"Type\":{},\"Key\":{},\"Value\":{}}},\"Policy\":{}}}},\"PutRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"ScheduleExpression\":{},\"EventPattern\":{},\"State\":{},\"Description\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1m\"},\"EventBusName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleArn\":{}}}},\"PutTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"Rule\",\"Targets\"],\"members\":{\"Rule\":{},\"EventBusName\":{},\"Targets\":{\"shape\":\"S4l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"FailedEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"RemovePermission\":{\"input\":{\"type\":\"structure\",\"members\":{\"StatementId\":{},\"RemoveAllPermissions\":{\"type\":\"boolean\"},\"EventBusName\":{}}}},\"RemoveTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"Rule\",\"Ids\"],\"members\":{\"Rule\":{},\"EventBusName\":{},\"Ids\":{\"type\":\"list\",\"member\":{}},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"FailedEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"StartReplay\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplayName\",\"EventSourceArn\",\"EventStartTime\",\"EventEndTime\",\"Destination\"],\"members\":{\"ReplayName\":{},\"Description\":{},\"EventSourceArn\":{},\"EventStartTime\":{\"type\":\"timestamp\"},\"EventEndTime\":{\"type\":\"timestamp\"},\"Destination\":{\"shape\":\"S2w\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplayArn\":{},\"State\":{},\"StateReason\":{},\"ReplayStartTime\":{\"type\":\"timestamp\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S1m\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TestEventPattern\":{\"input\":{\"type\":\"structure\",\"required\":[\"EventPattern\",\"Event\"],\"members\":{\"EventPattern\":{},\"Event\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Result\":{\"type\":\"boolean\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"ApiDestinationState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"UpdateArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\"],\"members\":{\"ArchiveName\":{},\"Description\":{},\"EventPattern\":{},\"RetentionDays\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArchiveArn\":{},\"State\":{},\"StateReason\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"UpdateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"AuthorizationType\":{},\"AuthParameters\":{\"type\":\"structure\",\"members\":{\"BasicAuthParameters\":{\"type\":\"structure\",\"members\":{\"Username\":{},\"Password\":{}}},\"OAuthParameters\":{\"type\":\"structure\",\"members\":{\"ClientParameters\":{\"type\":\"structure\",\"members\":{\"ClientID\":{},\"ClientSecret\":{}}},\"AuthorizationEndpoint\":{},\"HttpMethod\":{},\"OAuthHttpParameters\":{\"shape\":\"S14\"}}},\"ApiKeyAuthParameters\":{\"type\":\"structure\",\"members\":{\"ApiKeyName\":{},\"ApiKeyValue\":{}}},\"InvocationHttpParameters\":{\"shape\":\"S14\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S14\":{\"type\":\"structure\",\"members\":{\"HeaderParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"IsValueSecret\":{\"type\":\"boolean\"}}}},\"QueryStringParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"IsValueSecret\":{\"type\":\"boolean\"}}}},\"BodyParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"IsValueSecret\":{\"type\":\"boolean\"}}}}}},\"S1m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S2w\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"FilterArns\":{\"type\":\"list\",\"member\":{}}}},\"S4l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"Arn\"],\"members\":{\"Id\":{},\"Arn\":{},\"RoleArn\":{},\"Input\":{},\"InputPath\":{},\"InputTransformer\":{\"type\":\"structure\",\"required\":[\"InputTemplate\"],\"members\":{\"InputPathsMap\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"InputTemplate\":{}}},\"KinesisParameters\":{\"type\":\"structure\",\"required\":[\"PartitionKeyPath\"],\"members\":{\"PartitionKeyPath\":{}}},\"RunCommandParameters\":{\"type\":\"structure\",\"required\":[\"RunCommandTargets\"],\"members\":{\"RunCommandTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}}}},\"EcsParameters\":{\"type\":\"structure\",\"required\":[\"TaskDefinitionArn\"],\"members\":{\"TaskDefinitionArn\":{},\"TaskCount\":{\"type\":\"integer\"},\"LaunchType\":{},\"NetworkConfiguration\":{\"type\":\"structure\",\"members\":{\"awsvpcConfiguration\":{\"type\":\"structure\",\"required\":[\"Subnets\"],\"members\":{\"Subnets\":{\"shape\":\"S57\"},\"SecurityGroups\":{\"shape\":\"S57\"},\"AssignPublicIp\":{}}}}},\"PlatformVersion\":{},\"Group\":{}}},\"BatchParameters\":{\"type\":\"structure\",\"required\":[\"JobDefinition\",\"JobName\"],\"members\":{\"JobDefinition\":{},\"JobName\":{},\"ArrayProperties\":{\"type\":\"structure\",\"members\":{\"Size\":{\"type\":\"integer\"}}},\"RetryStrategy\":{\"type\":\"structure\",\"members\":{\"Attempts\":{\"type\":\"integer\"}}}}},\"SqsParameters\":{\"type\":\"structure\",\"members\":{\"MessageGroupId\":{}}},\"HttpParameters\":{\"type\":\"structure\",\"members\":{\"PathParameterValues\":{\"type\":\"list\",\"member\":{}},\"HeaderParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"QueryStringParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"RedshiftDataParameters\":{\"type\":\"structure\",\"required\":[\"Database\",\"Sql\"],\"members\":{\"SecretManagerArn\":{},\"Database\":{},\"DbUser\":{},\"Sql\":{},\"StatementName\":{},\"WithEvent\":{\"type\":\"boolean\"}}},\"SageMakerPipelineParameters\":{\"type\":\"structure\",\"members\":{\"PipelineParameterList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}}}},\"DeadLetterConfig\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"RetryPolicy\":{\"type\":\"structure\",\"members\":{\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"MaximumEventAgeInSeconds\":{\"type\":\"integer\"}}}}}},\"S57\":{\"type\":\"list\",\"member\":{}},\"S64\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 41745:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 2845:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-10-07\",\"endpointPrefix\":\"events\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon CloudWatch Events\",\"serviceId\":\"CloudWatch Events\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSEvents\",\"uid\":\"events-2015-10-07\"},\"operations\":{\"ActivateEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"CancelReplay\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplayName\"],\"members\":{\"ReplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplayArn\":{},\"State\":{},\"StateReason\":{}}}},\"CreateApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ConnectionArn\",\"InvocationEndpoint\",\"HttpMethod\"],\"members\":{\"Name\":{},\"Description\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"ApiDestinationState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"CreateArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\",\"EventSourceArn\"],\"members\":{\"ArchiveName\":{},\"EventSourceArn\":{},\"Description\":{},\"EventPattern\":{},\"RetentionDays\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArchiveArn\":{},\"State\":{},\"StateReason\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"CreateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"AuthorizationType\",\"AuthParameters\"],\"members\":{\"Name\":{},\"Description\":{},\"AuthorizationType\":{},\"AuthParameters\":{\"type\":\"structure\",\"members\":{\"BasicAuthParameters\":{\"type\":\"structure\",\"required\":[\"Username\",\"Password\"],\"members\":{\"Username\":{},\"Password\":{}}},\"OAuthParameters\":{\"type\":\"structure\",\"required\":[\"ClientParameters\",\"AuthorizationEndpoint\",\"HttpMethod\"],\"members\":{\"ClientParameters\":{\"type\":\"structure\",\"required\":[\"ClientID\",\"ClientSecret\"],\"members\":{\"ClientID\":{},\"ClientSecret\":{}}},\"AuthorizationEndpoint\":{},\"HttpMethod\":{},\"OAuthHttpParameters\":{\"shape\":\"S14\"}}},\"ApiKeyAuthParameters\":{\"type\":\"structure\",\"required\":[\"ApiKeyName\",\"ApiKeyValue\"],\"members\":{\"ApiKeyName\":{},\"ApiKeyValue\":{}}},\"InvocationHttpParameters\":{\"shape\":\"S14\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"CreateEventBus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventSourceName\":{},\"Tags\":{\"shape\":\"S1m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventBusArn\":{}}}},\"CreatePartnerEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Account\"],\"members\":{\"Name\":{},\"Account\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSourceArn\":{}}}},\"DeactivateEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeauthorizeConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"DeleteApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\"],\"members\":{\"ArchiveName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"DeleteEventBus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DeletePartnerEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Account\"],\"members\":{\"Name\":{},\"Account\":{}}}},\"DeleteRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{},\"Force\":{\"type\":\"boolean\"}}}},\"DescribeApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"Name\":{},\"Description\":{},\"ApiDestinationState\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"DescribeArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\"],\"members\":{\"ArchiveName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArchiveArn\":{},\"ArchiveName\":{},\"EventSourceArn\":{},\"Description\":{},\"EventPattern\":{},\"State\":{},\"StateReason\":{},\"RetentionDays\":{\"type\":\"integer\"},\"SizeBytes\":{\"type\":\"long\"},\"EventCount\":{\"type\":\"long\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"Name\":{},\"Description\":{},\"ConnectionState\":{},\"StateReason\":{},\"AuthorizationType\":{},\"SecretArn\":{},\"AuthParameters\":{\"type\":\"structure\",\"members\":{\"BasicAuthParameters\":{\"type\":\"structure\",\"members\":{\"Username\":{}}},\"OAuthParameters\":{\"type\":\"structure\",\"members\":{\"ClientParameters\":{\"type\":\"structure\",\"members\":{\"ClientID\":{}}},\"AuthorizationEndpoint\":{},\"HttpMethod\":{},\"OAuthHttpParameters\":{\"shape\":\"S14\"}}},\"ApiKeyAuthParameters\":{\"type\":\"structure\",\"members\":{\"ApiKeyName\":{}}},\"InvocationHttpParameters\":{\"shape\":\"S14\"}}},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"DescribeEventBus\":{\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Policy\":{}}}},\"DescribeEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedBy\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"Name\":{},\"State\":{}}}},\"DescribePartnerEventSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}}},\"DescribeReplay\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplayName\"],\"members\":{\"ReplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplayName\":{},\"ReplayArn\":{},\"Description\":{},\"State\":{},\"StateReason\":{},\"EventSourceArn\":{},\"Destination\":{\"shape\":\"S2w\"},\"EventStartTime\":{\"type\":\"timestamp\"},\"EventEndTime\":{\"type\":\"timestamp\"},\"EventLastReplayedTime\":{\"type\":\"timestamp\"},\"ReplayStartTime\":{\"type\":\"timestamp\"},\"ReplayEndTime\":{\"type\":\"timestamp\"}}}},\"DescribeRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"EventPattern\":{},\"ScheduleExpression\":{},\"State\":{},\"Description\":{},\"RoleArn\":{},\"ManagedBy\":{},\"EventBusName\":{},\"CreatedBy\":{}}}},\"DisableRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{}}}},\"EnableRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"EventBusName\":{}}}},\"ListApiDestinations\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"ConnectionArn\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"Name\":{},\"ApiDestinationState\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListArchives\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"EventSourceArn\":{},\"State\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Archives\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ArchiveName\":{},\"EventSourceArn\":{},\"State\":{},\"StateReason\":{},\"RetentionDays\":{\"type\":\"integer\"},\"SizeBytes\":{\"type\":\"long\"},\"EventCount\":{\"type\":\"long\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"ConnectionState\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"Name\":{},\"ConnectionState\":{},\"StateReason\":{},\"AuthorizationType\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListEventBuses\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventBuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Policy\":{}}}},\"NextToken\":{}}}},\"ListEventSources\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedBy\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"Name\":{},\"State\":{}}}},\"NextToken\":{}}}},\"ListPartnerEventSourceAccounts\":{\"input\":{\"type\":\"structure\",\"required\":[\"EventSourceName\"],\"members\":{\"EventSourceName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PartnerEventSourceAccounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Account\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"},\"State\":{}}}},\"NextToken\":{}}}},\"ListPartnerEventSources\":{\"input\":{\"type\":\"structure\",\"required\":[\"NamePrefix\"],\"members\":{\"NamePrefix\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PartnerEventSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListReplays\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"State\":{},\"EventSourceArn\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Replays\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReplayName\":{},\"EventSourceArn\":{},\"State\":{},\"StateReason\":{},\"EventStartTime\":{\"type\":\"timestamp\"},\"EventEndTime\":{\"type\":\"timestamp\"},\"EventLastReplayedTime\":{\"type\":\"timestamp\"},\"ReplayStartTime\":{\"type\":\"timestamp\"},\"ReplayEndTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListRuleNamesByTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetArn\"],\"members\":{\"TargetArn\":{},\"EventBusName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NamePrefix\":{},\"EventBusName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"EventPattern\":{},\"State\":{},\"Description\":{},\"ScheduleExpression\":{},\"RoleArn\":{},\"ManagedBy\":{},\"EventBusName\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1m\"}}}},\"ListTargetsByRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Rule\"],\"members\":{\"Rule\":{},\"EventBusName\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Targets\":{\"shape\":\"S4l\"},\"NextToken\":{}}}},\"PutEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Time\":{\"type\":\"timestamp\"},\"Source\":{},\"Resources\":{\"shape\":\"S64\"},\"DetailType\":{},\"Detail\":{},\"EventBusName\":{},\"TraceHeader\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"PutPartnerEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Time\":{\"type\":\"timestamp\"},\"Source\":{},\"Resources\":{\"shape\":\"S64\"},\"DetailType\":{},\"Detail\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"PutPermission\":{\"input\":{\"type\":\"structure\",\"members\":{\"EventBusName\":{},\"Action\":{},\"Principal\":{},\"StatementId\":{},\"Condition\":{\"type\":\"structure\",\"required\":[\"Type\",\"Key\",\"Value\"],\"members\":{\"Type\":{},\"Key\":{},\"Value\":{}}},\"Policy\":{}}}},\"PutRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"ScheduleExpression\":{},\"EventPattern\":{},\"State\":{},\"Description\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1m\"},\"EventBusName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleArn\":{}}}},\"PutTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"Rule\",\"Targets\"],\"members\":{\"Rule\":{},\"EventBusName\":{},\"Targets\":{\"shape\":\"S4l\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"FailedEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"RemovePermission\":{\"input\":{\"type\":\"structure\",\"members\":{\"StatementId\":{},\"RemoveAllPermissions\":{\"type\":\"boolean\"},\"EventBusName\":{}}}},\"RemoveTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"Rule\",\"Ids\"],\"members\":{\"Rule\":{},\"EventBusName\":{},\"Ids\":{\"type\":\"list\",\"member\":{}},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedEntryCount\":{\"type\":\"integer\"},\"FailedEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"StartReplay\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReplayName\",\"EventSourceArn\",\"EventStartTime\",\"EventEndTime\",\"Destination\"],\"members\":{\"ReplayName\":{},\"Description\":{},\"EventSourceArn\":{},\"EventStartTime\":{\"type\":\"timestamp\"},\"EventEndTime\":{\"type\":\"timestamp\"},\"Destination\":{\"shape\":\"S2w\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplayArn\":{},\"State\":{},\"StateReason\":{},\"ReplayStartTime\":{\"type\":\"timestamp\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S1m\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TestEventPattern\":{\"input\":{\"type\":\"structure\",\"required\":[\"EventPattern\",\"Event\"],\"members\":{\"EventPattern\":{},\"Event\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Result\":{\"type\":\"boolean\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApiDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"ConnectionArn\":{},\"InvocationEndpoint\":{},\"HttpMethod\":{},\"InvocationRateLimitPerSecond\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApiDestinationArn\":{},\"ApiDestinationState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"UpdateArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArchiveName\"],\"members\":{\"ArchiveName\":{},\"Description\":{},\"EventPattern\":{},\"RetentionDays\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArchiveArn\":{},\"State\":{},\"StateReason\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"UpdateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"AuthorizationType\":{},\"AuthParameters\":{\"type\":\"structure\",\"members\":{\"BasicAuthParameters\":{\"type\":\"structure\",\"members\":{\"Username\":{},\"Password\":{}}},\"OAuthParameters\":{\"type\":\"structure\",\"members\":{\"ClientParameters\":{\"type\":\"structure\",\"members\":{\"ClientID\":{},\"ClientSecret\":{}}},\"AuthorizationEndpoint\":{},\"HttpMethod\":{},\"OAuthHttpParameters\":{\"shape\":\"S14\"}}},\"ApiKeyAuthParameters\":{\"type\":\"structure\",\"members\":{\"ApiKeyName\":{},\"ApiKeyValue\":{}}},\"InvocationHttpParameters\":{\"shape\":\"S14\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionArn\":{},\"ConnectionState\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastAuthorizedTime\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S14\":{\"type\":\"structure\",\"members\":{\"HeaderParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"IsValueSecret\":{\"type\":\"boolean\"}}}},\"QueryStringParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"IsValueSecret\":{\"type\":\"boolean\"}}}},\"BodyParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"IsValueSecret\":{\"type\":\"boolean\"}}}}}},\"S1m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S2w\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"FilterArns\":{\"type\":\"list\",\"member\":{}}}},\"S4l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"Arn\"],\"members\":{\"Id\":{},\"Arn\":{},\"RoleArn\":{},\"Input\":{},\"InputPath\":{},\"InputTransformer\":{\"type\":\"structure\",\"required\":[\"InputTemplate\"],\"members\":{\"InputPathsMap\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"InputTemplate\":{}}},\"KinesisParameters\":{\"type\":\"structure\",\"required\":[\"PartitionKeyPath\"],\"members\":{\"PartitionKeyPath\":{}}},\"RunCommandParameters\":{\"type\":\"structure\",\"required\":[\"RunCommandTargets\"],\"members\":{\"RunCommandTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}}}},\"EcsParameters\":{\"type\":\"structure\",\"required\":[\"TaskDefinitionArn\"],\"members\":{\"TaskDefinitionArn\":{},\"TaskCount\":{\"type\":\"integer\"},\"LaunchType\":{},\"NetworkConfiguration\":{\"type\":\"structure\",\"members\":{\"awsvpcConfiguration\":{\"type\":\"structure\",\"required\":[\"Subnets\"],\"members\":{\"Subnets\":{\"shape\":\"S57\"},\"SecurityGroups\":{\"shape\":\"S57\"},\"AssignPublicIp\":{}}}}},\"PlatformVersion\":{},\"Group\":{}}},\"BatchParameters\":{\"type\":\"structure\",\"required\":[\"JobDefinition\",\"JobName\"],\"members\":{\"JobDefinition\":{},\"JobName\":{},\"ArrayProperties\":{\"type\":\"structure\",\"members\":{\"Size\":{\"type\":\"integer\"}}},\"RetryStrategy\":{\"type\":\"structure\",\"members\":{\"Attempts\":{\"type\":\"integer\"}}}}},\"SqsParameters\":{\"type\":\"structure\",\"members\":{\"MessageGroupId\":{}}},\"HttpParameters\":{\"type\":\"structure\",\"members\":{\"PathParameterValues\":{\"type\":\"list\",\"member\":{}},\"HeaderParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"QueryStringParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"RedshiftDataParameters\":{\"type\":\"structure\",\"required\":[\"Database\",\"Sql\"],\"members\":{\"SecretManagerArn\":{},\"Database\":{},\"DbUser\":{},\"Sql\":{},\"StatementName\":{},\"WithEvent\":{\"type\":\"boolean\"}}},\"SageMakerPipelineParameters\":{\"type\":\"structure\",\"members\":{\"PipelineParameterList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}}}},\"DeadLetterConfig\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"RetryPolicy\":{\"type\":\"structure\",\"members\":{\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"MaximumEventAgeInSeconds\":{\"type\":\"integer\"}}}}}},\"S57\":{\"type\":\"list\",\"member\":{}},\"S64\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 96939:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 53370:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-08-04\",\"endpointPrefix\":\"firehose\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Firehose\",\"serviceFullName\":\"Amazon Kinesis Firehose\",\"serviceId\":\"Firehose\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Firehose_20150804\",\"uid\":\"firehose-2015-08-04\"},\"operations\":{\"CreateDeliveryStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\"],\"members\":{\"DeliveryStreamName\":{},\"DeliveryStreamType\":{},\"KinesisStreamSourceConfiguration\":{\"type\":\"structure\",\"required\":[\"KinesisStreamARN\",\"RoleARN\"],\"members\":{\"KinesisStreamARN\":{},\"RoleARN\":{}}},\"DeliveryStreamEncryptionConfigurationInput\":{\"shape\":\"S7\"},\"S3DestinationConfiguration\":{\"shape\":\"Sa\",\"deprecated\":true},\"ExtendedS3DestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"BucketARN\"],\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"Prefix\":{},\"ErrorOutputPrefix\":{},\"BufferingHints\":{\"shape\":\"Se\"},\"CompressionFormat\":{},\"EncryptionConfiguration\":{\"shape\":\"Si\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"S3BackupMode\":{},\"S3BackupConfiguration\":{\"shape\":\"Sa\"},\"DataFormatConversionConfiguration\":{\"shape\":\"Sz\"}}},\"RedshiftDestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"ClusterJDBCURL\",\"CopyCommand\",\"Username\",\"Password\",\"S3Configuration\"],\"members\":{\"RoleARN\":{},\"ClusterJDBCURL\":{},\"CopyCommand\":{\"shape\":\"S1q\"},\"Username\":{\"shape\":\"S1u\"},\"Password\":{\"shape\":\"S1v\"},\"RetryOptions\":{\"shape\":\"S1w\"},\"S3Configuration\":{\"shape\":\"Sa\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"S3BackupMode\":{},\"S3BackupConfiguration\":{\"shape\":\"Sa\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"ElasticsearchDestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"IndexName\",\"S3Configuration\"],\"members\":{\"RoleARN\":{},\"DomainARN\":{},\"ClusterEndpoint\":{},\"IndexName\":{},\"TypeName\":{},\"IndexRotationPeriod\":{},\"BufferingHints\":{\"shape\":\"S25\"},\"RetryOptions\":{\"shape\":\"S28\"},\"S3BackupMode\":{},\"S3Configuration\":{\"shape\":\"Sa\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"VpcConfiguration\":{\"type\":\"structure\",\"required\":[\"SubnetIds\",\"RoleARN\",\"SecurityGroupIds\"],\"members\":{\"SubnetIds\":{\"shape\":\"S2c\"},\"RoleARN\":{},\"SecurityGroupIds\":{\"shape\":\"S2d\"}}}}},\"SplunkDestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"HECEndpoint\",\"HECEndpointType\",\"HECToken\",\"S3Configuration\"],\"members\":{\"HECEndpoint\":{},\"HECEndpointType\":{},\"HECToken\":{},\"HECAcknowledgmentTimeoutInSeconds\":{\"type\":\"integer\"},\"RetryOptions\":{\"shape\":\"S2j\"},\"S3BackupMode\":{},\"S3Configuration\":{\"shape\":\"Sa\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"HttpEndpointDestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"EndpointConfiguration\",\"S3Configuration\"],\"members\":{\"EndpointConfiguration\":{\"shape\":\"S2n\"},\"BufferingHints\":{\"shape\":\"S2r\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"RequestConfiguration\":{\"shape\":\"S2u\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"RoleARN\":{},\"RetryOptions\":{\"shape\":\"S30\"},\"S3BackupMode\":{},\"S3Configuration\":{\"shape\":\"Sa\"}}},\"Tags\":{\"shape\":\"S33\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeliveryStreamARN\":{}}}},\"DeleteDeliveryStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\"],\"members\":{\"DeliveryStreamName\":{},\"AllowForceDelete\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeDeliveryStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\"],\"members\":{\"DeliveryStreamName\":{},\"Limit\":{\"type\":\"integer\"},\"ExclusiveStartDestinationId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamDescription\"],\"members\":{\"DeliveryStreamDescription\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\",\"DeliveryStreamARN\",\"DeliveryStreamStatus\",\"DeliveryStreamType\",\"VersionId\",\"Destinations\",\"HasMoreDestinations\"],\"members\":{\"DeliveryStreamName\":{},\"DeliveryStreamARN\":{},\"DeliveryStreamStatus\":{},\"FailureDescription\":{\"shape\":\"S3h\"},\"DeliveryStreamEncryptionConfiguration\":{\"type\":\"structure\",\"members\":{\"KeyARN\":{},\"KeyType\":{},\"Status\":{},\"FailureDescription\":{\"shape\":\"S3h\"}}},\"DeliveryStreamType\":{},\"VersionId\":{},\"CreateTimestamp\":{\"type\":\"timestamp\"},\"LastUpdateTimestamp\":{\"type\":\"timestamp\"},\"Source\":{\"type\":\"structure\",\"members\":{\"KinesisStreamSourceDescription\":{\"type\":\"structure\",\"members\":{\"KinesisStreamARN\":{},\"RoleARN\":{},\"DeliveryStartTimestamp\":{\"type\":\"timestamp\"}}}}},\"Destinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DestinationId\"],\"members\":{\"DestinationId\":{},\"S3DestinationDescription\":{\"shape\":\"S3s\"},\"ExtendedS3DestinationDescription\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"BucketARN\",\"BufferingHints\",\"CompressionFormat\",\"EncryptionConfiguration\"],\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"Prefix\":{},\"ErrorOutputPrefix\":{},\"BufferingHints\":{\"shape\":\"Se\"},\"CompressionFormat\":{},\"EncryptionConfiguration\":{\"shape\":\"Si\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"S3BackupMode\":{},\"S3BackupDescription\":{\"shape\":\"S3s\"},\"DataFormatConversionConfiguration\":{\"shape\":\"Sz\"}}},\"RedshiftDestinationDescription\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"ClusterJDBCURL\",\"CopyCommand\",\"Username\",\"S3DestinationDescription\"],\"members\":{\"RoleARN\":{},\"ClusterJDBCURL\":{},\"CopyCommand\":{\"shape\":\"S1q\"},\"Username\":{\"shape\":\"S1u\"},\"RetryOptions\":{\"shape\":\"S1w\"},\"S3DestinationDescription\":{\"shape\":\"S3s\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"S3BackupMode\":{},\"S3BackupDescription\":{\"shape\":\"S3s\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"ElasticsearchDestinationDescription\":{\"type\":\"structure\",\"members\":{\"RoleARN\":{},\"DomainARN\":{},\"ClusterEndpoint\":{},\"IndexName\":{},\"TypeName\":{},\"IndexRotationPeriod\":{},\"BufferingHints\":{\"shape\":\"S25\"},\"RetryOptions\":{\"shape\":\"S28\"},\"S3BackupMode\":{},\"S3DestinationDescription\":{\"shape\":\"S3s\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"VpcConfigurationDescription\":{\"type\":\"structure\",\"required\":[\"SubnetIds\",\"RoleARN\",\"SecurityGroupIds\",\"VpcId\"],\"members\":{\"SubnetIds\":{\"shape\":\"S2c\"},\"RoleARN\":{},\"SecurityGroupIds\":{\"shape\":\"S2d\"},\"VpcId\":{}}}}},\"SplunkDestinationDescription\":{\"type\":\"structure\",\"members\":{\"HECEndpoint\":{},\"HECEndpointType\":{},\"HECToken\":{},\"HECAcknowledgmentTimeoutInSeconds\":{\"type\":\"integer\"},\"RetryOptions\":{\"shape\":\"S2j\"},\"S3BackupMode\":{},\"S3DestinationDescription\":{\"shape\":\"S3s\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"HttpEndpointDestinationDescription\":{\"type\":\"structure\",\"members\":{\"EndpointConfiguration\":{\"type\":\"structure\",\"members\":{\"Url\":{\"shape\":\"S2o\"},\"Name\":{}}},\"BufferingHints\":{\"shape\":\"S2r\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"RequestConfiguration\":{\"shape\":\"S2u\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"RoleARN\":{},\"RetryOptions\":{\"shape\":\"S30\"},\"S3BackupMode\":{},\"S3DestinationDescription\":{\"shape\":\"S3s\"}}}}}},\"HasMoreDestinations\":{\"type\":\"boolean\"}}}}}},\"ListDeliveryStreams\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"DeliveryStreamType\":{},\"ExclusiveStartDeliveryStreamName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamNames\",\"HasMoreDeliveryStreams\"],\"members\":{\"DeliveryStreamNames\":{\"type\":\"list\",\"member\":{}},\"HasMoreDeliveryStreams\":{\"type\":\"boolean\"}}}},\"ListTagsForDeliveryStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\"],\"members\":{\"DeliveryStreamName\":{},\"ExclusiveStartTagKey\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\",\"HasMoreTags\"],\"members\":{\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S34\"}},\"HasMoreTags\":{\"type\":\"boolean\"}}}},\"PutRecord\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\",\"Record\"],\"members\":{\"DeliveryStreamName\":{},\"Record\":{\"shape\":\"S49\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"RecordId\"],\"members\":{\"RecordId\":{},\"Encrypted\":{\"type\":\"boolean\"}}}},\"PutRecordBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\",\"Records\"],\"members\":{\"DeliveryStreamName\":{},\"Records\":{\"type\":\"list\",\"member\":{\"shape\":\"S49\"}}}},\"output\":{\"type\":\"structure\",\"required\":[\"FailedPutCount\",\"RequestResponses\"],\"members\":{\"FailedPutCount\":{\"type\":\"integer\"},\"Encrypted\":{\"type\":\"boolean\"},\"RequestResponses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RecordId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"StartDeliveryStreamEncryption\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\"],\"members\":{\"DeliveryStreamName\":{},\"DeliveryStreamEncryptionConfigurationInput\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopDeliveryStreamEncryption\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\"],\"members\":{\"DeliveryStreamName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagDeliveryStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\",\"Tags\"],\"members\":{\"DeliveryStreamName\":{},\"Tags\":{\"shape\":\"S33\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagDeliveryStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\",\"TagKeys\"],\"members\":{\"DeliveryStreamName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeliveryStreamName\",\"CurrentDeliveryStreamVersionId\",\"DestinationId\"],\"members\":{\"DeliveryStreamName\":{},\"CurrentDeliveryStreamVersionId\":{},\"DestinationId\":{},\"S3DestinationUpdate\":{\"shape\":\"S4u\",\"deprecated\":true},\"ExtendedS3DestinationUpdate\":{\"type\":\"structure\",\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"Prefix\":{},\"ErrorOutputPrefix\":{},\"BufferingHints\":{\"shape\":\"Se\"},\"CompressionFormat\":{},\"EncryptionConfiguration\":{\"shape\":\"Si\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"S3BackupMode\":{},\"S3BackupUpdate\":{\"shape\":\"S4u\"},\"DataFormatConversionConfiguration\":{\"shape\":\"Sz\"}}},\"RedshiftDestinationUpdate\":{\"type\":\"structure\",\"members\":{\"RoleARN\":{},\"ClusterJDBCURL\":{},\"CopyCommand\":{\"shape\":\"S1q\"},\"Username\":{\"shape\":\"S1u\"},\"Password\":{\"shape\":\"S1v\"},\"RetryOptions\":{\"shape\":\"S1w\"},\"S3Update\":{\"shape\":\"S4u\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"S3BackupMode\":{},\"S3BackupUpdate\":{\"shape\":\"S4u\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"ElasticsearchDestinationUpdate\":{\"type\":\"structure\",\"members\":{\"RoleARN\":{},\"DomainARN\":{},\"ClusterEndpoint\":{},\"IndexName\":{},\"TypeName\":{},\"IndexRotationPeriod\":{},\"BufferingHints\":{\"shape\":\"S25\"},\"RetryOptions\":{\"shape\":\"S28\"},\"S3Update\":{\"shape\":\"S4u\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"SplunkDestinationUpdate\":{\"type\":\"structure\",\"members\":{\"HECEndpoint\":{},\"HECEndpointType\":{},\"HECToken\":{},\"HECAcknowledgmentTimeoutInSeconds\":{\"type\":\"integer\"},\"RetryOptions\":{\"shape\":\"S2j\"},\"S3BackupMode\":{},\"S3Update\":{\"shape\":\"S4u\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"HttpEndpointDestinationUpdate\":{\"type\":\"structure\",\"members\":{\"EndpointConfiguration\":{\"shape\":\"S2n\"},\"BufferingHints\":{\"shape\":\"S2r\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"},\"RequestConfiguration\":{\"shape\":\"S2u\"},\"ProcessingConfiguration\":{\"shape\":\"Sq\"},\"RoleARN\":{},\"RetryOptions\":{\"shape\":\"S30\"},\"S3BackupMode\":{},\"S3Update\":{\"shape\":\"S4u\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"required\":[\"KeyType\"],\"members\":{\"KeyARN\":{},\"KeyType\":{}}},\"Sa\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"BucketARN\"],\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"Prefix\":{},\"ErrorOutputPrefix\":{},\"BufferingHints\":{\"shape\":\"Se\"},\"CompressionFormat\":{},\"EncryptionConfiguration\":{\"shape\":\"Si\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"Se\":{\"type\":\"structure\",\"members\":{\"SizeInMBs\":{\"type\":\"integer\"},\"IntervalInSeconds\":{\"type\":\"integer\"}}},\"Si\":{\"type\":\"structure\",\"members\":{\"NoEncryptionConfig\":{},\"KMSEncryptionConfig\":{\"type\":\"structure\",\"required\":[\"AWSKMSKeyARN\"],\"members\":{\"AWSKMSKeyARN\":{}}}}},\"Sl\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"LogGroupName\":{},\"LogStreamName\":{}}},\"Sq\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Processors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ParameterName\",\"ParameterValue\"],\"members\":{\"ParameterName\":{},\"ParameterValue\":{}}}}}}}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"SchemaConfiguration\":{\"type\":\"structure\",\"members\":{\"RoleARN\":{},\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"Region\":{},\"VersionId\":{}}},\"InputFormatConfiguration\":{\"type\":\"structure\",\"members\":{\"Deserializer\":{\"type\":\"structure\",\"members\":{\"OpenXJsonSerDe\":{\"type\":\"structure\",\"members\":{\"ConvertDotsInJsonKeysToUnderscores\":{\"type\":\"boolean\"},\"CaseInsensitive\":{\"type\":\"boolean\"},\"ColumnToJsonKeyMappings\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"HiveJsonSerDe\":{\"type\":\"structure\",\"members\":{\"TimestampFormats\":{\"type\":\"list\",\"member\":{}}}}}}}},\"OutputFormatConfiguration\":{\"type\":\"structure\",\"members\":{\"Serializer\":{\"type\":\"structure\",\"members\":{\"ParquetSerDe\":{\"type\":\"structure\",\"members\":{\"BlockSizeBytes\":{\"type\":\"integer\"},\"PageSizeBytes\":{\"type\":\"integer\"},\"Compression\":{},\"EnableDictionaryCompression\":{\"type\":\"boolean\"},\"MaxPaddingBytes\":{\"type\":\"integer\"},\"WriterVersion\":{}}},\"OrcSerDe\":{\"type\":\"structure\",\"members\":{\"StripeSizeBytes\":{\"type\":\"integer\"},\"BlockSizeBytes\":{\"type\":\"integer\"},\"RowIndexStride\":{\"type\":\"integer\"},\"EnablePadding\":{\"type\":\"boolean\"},\"PaddingTolerance\":{\"type\":\"double\"},\"Compression\":{},\"BloomFilterColumns\":{\"type\":\"list\",\"member\":{}},\"BloomFilterFalsePositiveProbability\":{\"type\":\"double\"},\"DictionaryKeyThreshold\":{\"type\":\"double\"},\"FormatVersion\":{}}}}}}},\"Enabled\":{\"type\":\"boolean\"}}},\"S1q\":{\"type\":\"structure\",\"required\":[\"DataTableName\"],\"members\":{\"DataTableName\":{},\"DataTableColumns\":{},\"CopyOptions\":{}}},\"S1u\":{\"type\":\"string\",\"sensitive\":true},\"S1v\":{\"type\":\"string\",\"sensitive\":true},\"S1w\":{\"type\":\"structure\",\"members\":{\"DurationInSeconds\":{\"type\":\"integer\"}}},\"S25\":{\"type\":\"structure\",\"members\":{\"IntervalInSeconds\":{\"type\":\"integer\"},\"SizeInMBs\":{\"type\":\"integer\"}}},\"S28\":{\"type\":\"structure\",\"members\":{\"DurationInSeconds\":{\"type\":\"integer\"}}},\"S2c\":{\"type\":\"list\",\"member\":{}},\"S2d\":{\"type\":\"list\",\"member\":{}},\"S2j\":{\"type\":\"structure\",\"members\":{\"DurationInSeconds\":{\"type\":\"integer\"}}},\"S2n\":{\"type\":\"structure\",\"required\":[\"Url\"],\"members\":{\"Url\":{\"shape\":\"S2o\"},\"Name\":{},\"AccessKey\":{\"type\":\"string\",\"sensitive\":true}}},\"S2o\":{\"type\":\"string\",\"sensitive\":true},\"S2r\":{\"type\":\"structure\",\"members\":{\"SizeInMBs\":{\"type\":\"integer\"},\"IntervalInSeconds\":{\"type\":\"integer\"}}},\"S2u\":{\"type\":\"structure\",\"members\":{\"ContentEncoding\":{},\"CommonAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"AttributeValue\"],\"members\":{\"AttributeName\":{\"type\":\"string\",\"sensitive\":true},\"AttributeValue\":{\"type\":\"string\",\"sensitive\":true}}}}}},\"S30\":{\"type\":\"structure\",\"members\":{\"DurationInSeconds\":{\"type\":\"integer\"}}},\"S33\":{\"type\":\"list\",\"member\":{\"shape\":\"S34\"}},\"S34\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}},\"S3h\":{\"type\":\"structure\",\"required\":[\"Type\",\"Details\"],\"members\":{\"Type\":{},\"Details\":{}}},\"S3s\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"BucketARN\",\"BufferingHints\",\"CompressionFormat\",\"EncryptionConfiguration\"],\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"Prefix\":{},\"ErrorOutputPrefix\":{},\"BufferingHints\":{\"shape\":\"Se\"},\"CompressionFormat\":{},\"EncryptionConfiguration\":{\"shape\":\"Si\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}},\"S49\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{\"type\":\"blob\"}}},\"S4u\":{\"type\":\"structure\",\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"Prefix\":{},\"ErrorOutputPrefix\":{},\"BufferingHints\":{\"shape\":\"Se\"},\"CompressionFormat\":{},\"EncryptionConfiguration\":{\"shape\":\"Si\"},\"CloudWatchLoggingOptions\":{\"shape\":\"Sl\"}}}}}");

/***/ }),

/***/ 16459:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 75416:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-12-01\",\"endpointPrefix\":\"fis\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"FIS\",\"serviceFullName\":\"AWS Fault Injection Simulator\",\"serviceId\":\"fis\",\"signatureVersion\":\"v4\",\"signingName\":\"fis\",\"uid\":\"fis-2020-12-01\"},\"operations\":{\"CreateExperimentTemplate\":{\"http\":{\"requestUri\":\"/experimentTemplates\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"clientToken\",\"description\",\"stopConditions\",\"actions\",\"roleArn\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"description\":{},\"stopConditions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"source\"],\"members\":{\"source\":{},\"value\":{}}}},\"targets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"selectionMode\"],\"members\":{\"resourceType\":{},\"resourceArns\":{\"shape\":\"Sc\"},\"resourceTags\":{\"shape\":\"Se\"},\"filters\":{\"shape\":\"Sh\"},\"selectionMode\":{}}}},\"actions\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"actionId\"],\"members\":{\"actionId\":{},\"description\":{},\"parameters\":{\"shape\":\"Ss\"},\"targets\":{\"shape\":\"Sv\"},\"startAfter\":{\"shape\":\"Sx\"}}}},\"roleArn\":{},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experimentTemplate\":{\"shape\":\"S11\"}}}},\"DeleteExperimentTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/experimentTemplates/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experimentTemplate\":{\"shape\":\"S11\"}}}},\"GetAction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/actions/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"action\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"parameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"description\":{},\"required\":{\"type\":\"boolean\"}}}},\"targets\":{\"shape\":\"S1o\"},\"tags\":{\"shape\":\"Se\"}}}}}},\"GetExperiment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/experiments/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experiment\":{\"shape\":\"S1v\"}}}},\"GetExperimentTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/experimentTemplates/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experimentTemplate\":{\"shape\":\"S11\"}}}},\"ListActions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/actions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"targets\":{\"shape\":\"S1o\"},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListExperimentTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/experimentTemplates\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experimentTemplates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListExperiments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/experiments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experiments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"experimentTemplateId\":{},\"state\":{\"shape\":\"S1w\"},\"creationTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Se\"}}}},\"StartExperiment\":{\"http\":{\"requestUri\":\"/experiments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"clientToken\",\"experimentTemplateId\"],\"members\":{\"clientToken\":{\"idempotencyToken\":true},\"experimentTemplateId\":{},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experiment\":{\"shape\":\"S1v\"}}}},\"StopExperiment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/experiments/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"experiment\":{\"shape\":\"S1v\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateExperimentTemplate\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/experimentTemplates/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"description\":{},\"stopConditions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"source\"],\"members\":{\"source\":{},\"value\":{}}}},\"targets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"selectionMode\"],\"members\":{\"resourceType\":{},\"resourceArns\":{\"shape\":\"Sc\"},\"resourceTags\":{\"shape\":\"Se\"},\"filters\":{\"shape\":\"Sh\"},\"selectionMode\":{}}}},\"actions\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"actionId\":{},\"description\":{},\"parameters\":{\"shape\":\"Ss\"},\"targets\":{\"shape\":\"Sv\"},\"startAfter\":{\"shape\":\"Sx\"}}}},\"roleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"experimentTemplate\":{\"shape\":\"S11\"}}}}},\"shapes\":{\"Sc\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"path\",\"values\"],\"members\":{\"path\":{},\"values\":{\"shape\":\"Sk\"}}}},\"Sk\":{\"type\":\"list\",\"member\":{}},\"Ss\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sv\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sx\":{\"type\":\"list\",\"member\":{}},\"S11\":{\"type\":\"structure\",\"members\":{\"id\":{},\"description\":{},\"targets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"resourceArns\":{\"shape\":\"Sc\"},\"resourceTags\":{\"shape\":\"Se\"},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"path\":{},\"values\":{\"shape\":\"Sk\"}}}},\"selectionMode\":{}}}},\"actions\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"actionId\":{},\"description\":{},\"parameters\":{\"shape\":\"Ss\"},\"targets\":{\"shape\":\"Sv\"},\"startAfter\":{\"shape\":\"Sx\"}}}},\"stopConditions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"source\":{},\"value\":{}}}},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"roleArn\":{},\"tags\":{\"shape\":\"Se\"}}},\"S1o\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"resourceType\":{}}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"id\":{},\"experimentTemplateId\":{},\"roleArn\":{},\"state\":{\"shape\":\"S1w\"},\"targets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"resourceArns\":{\"shape\":\"Sc\"},\"resourceTags\":{\"shape\":\"Se\"},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"path\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"selectionMode\":{}}}},\"actions\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"actionId\":{},\"description\":{},\"parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"targets\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"startAfter\":{\"type\":\"list\",\"member\":{}},\"state\":{\"type\":\"structure\",\"members\":{\"status\":{},\"reason\":{}}}}}},\"stopConditions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"source\":{},\"value\":{}}}},\"creationTime\":{\"type\":\"timestamp\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Se\"}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"status\":{},\"reason\":{}}}}}");

/***/ }),

/***/ 703:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListActions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListExperimentTemplates\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListExperiments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 86359:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-01-01\",\"endpointPrefix\":\"fms\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"FMS\",\"serviceFullName\":\"Firewall Management Service\",\"serviceId\":\"FMS\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSFMS_20180101\",\"uid\":\"fms-2018-01-01\"},\"operations\":{\"AssociateAdminAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"AdminAccount\"],\"members\":{\"AdminAccount\":{}}}},\"DeleteAppsList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListId\"],\"members\":{\"ListId\":{}}}},\"DeleteNotificationChannel\":{\"input\":{\"type\":\"structure\",\"members\":{}}},\"DeletePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{},\"DeleteAllPolicyResources\":{\"type\":\"boolean\"}}}},\"DeleteProtocolsList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListId\"],\"members\":{\"ListId\":{}}}},\"DisassociateAdminAccount\":{\"input\":{\"type\":\"structure\",\"members\":{}}},\"GetAdminAccount\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AdminAccount\":{},\"RoleStatus\":{}}}},\"GetAppsList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListId\"],\"members\":{\"ListId\":{},\"DefaultList\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppsList\":{\"shape\":\"Sg\"},\"AppsListArn\":{}}}},\"GetComplianceDetail\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\",\"MemberAccount\"],\"members\":{\"PolicyId\":{},\"MemberAccount\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyComplianceDetail\":{\"type\":\"structure\",\"members\":{\"PolicyOwner\":{},\"PolicyId\":{},\"MemberAccount\":{},\"Violators\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ViolationReason\":{},\"ResourceType\":{}}}},\"EvaluationLimitExceeded\":{\"type\":\"boolean\"},\"ExpiredAt\":{\"type\":\"timestamp\"},\"IssueInfoMap\":{\"shape\":\"Sz\"}}}}}},\"GetNotificationChannel\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"SnsTopicArn\":{},\"SnsRoleName\":{}}}},\"GetPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S16\"},\"PolicyArn\":{}}}},\"GetProtectionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{},\"MemberAccountId\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AdminAccountId\":{},\"ServiceType\":{},\"Data\":{},\"NextToken\":{}}}},\"GetProtocolsList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListId\"],\"members\":{\"ListId\":{},\"DefaultList\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProtocolsList\":{\"shape\":\"S1r\"},\"ProtocolsListArn\":{}}}},\"GetViolationDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\",\"MemberAccount\",\"ResourceId\",\"ResourceType\"],\"members\":{\"PolicyId\":{},\"MemberAccount\":{},\"ResourceId\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ViolationDetail\":{\"type\":\"structure\",\"required\":[\"PolicyId\",\"MemberAccount\",\"ResourceId\",\"ResourceType\",\"ResourceViolations\"],\"members\":{\"PolicyId\":{},\"MemberAccount\":{},\"ResourceId\":{},\"ResourceType\":{},\"ResourceViolations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AwsVPCSecurityGroupViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"ViolationTargetDescription\":{},\"PartialMatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Reference\":{},\"TargetViolationReasons\":{\"type\":\"list\",\"member\":{}}}}},\"PossibleSecurityGroupRemediationActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RemediationActionType\":{},\"Description\":{},\"RemediationResult\":{\"type\":\"structure\",\"members\":{\"IPV4Range\":{},\"IPV6Range\":{},\"PrefixListId\":{},\"Protocol\":{},\"FromPort\":{\"type\":\"long\"},\"ToPort\":{\"type\":\"long\"}}},\"IsDefaultAction\":{\"type\":\"boolean\"}}}}}},\"AwsEc2NetworkInterfaceViolation\":{\"shape\":\"S2d\"},\"AwsEc2InstanceViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"AwsEc2NetworkInterfaceViolations\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}}}},\"NetworkFirewallMissingFirewallViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"VPC\":{},\"AvailabilityZone\":{},\"TargetViolationReason\":{}}},\"NetworkFirewallMissingSubnetViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"VPC\":{},\"AvailabilityZone\":{},\"TargetViolationReason\":{}}},\"NetworkFirewallMissingExpectedRTViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"VPC\":{},\"AvailabilityZone\":{},\"CurrentRouteTable\":{},\"ExpectedRouteTable\":{}}},\"NetworkFirewallPolicyModifiedViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"CurrentPolicyDescription\":{\"shape\":\"S2l\"},\"ExpectedPolicyDescription\":{\"shape\":\"S2l\"}}},\"DnsRuleGroupPriorityConflictViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"ViolationTargetDescription\":{},\"ConflictingPriority\":{\"type\":\"integer\"},\"ConflictingPolicyId\":{},\"UnavailablePriorities\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}}}},\"DnsDuplicateRuleGroupViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"ViolationTargetDescription\":{}}},\"DnsRuleGroupLimitExceededViolation\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"ViolationTargetDescription\":{},\"NumberOfRuleGroupsAlreadyAssociated\":{\"type\":\"integer\"}}}}}},\"ResourceTags\":{\"shape\":\"S30\"},\"ResourceDescription\":{}}}}}},\"ListAppsLists\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaxResults\"],\"members\":{\"DefaultLists\":{\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppsLists\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ListArn\":{},\"ListId\":{},\"ListName\":{},\"AppsList\":{\"shape\":\"Sk\"}}}},\"NextToken\":{}}}},\"ListComplianceStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyComplianceStatusList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyOwner\":{},\"PolicyId\":{},\"PolicyName\":{},\"MemberAccount\":{},\"EvaluationResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ComplianceStatus\":{},\"ViolatorCount\":{\"type\":\"long\"},\"EvaluationLimitExceeded\":{\"type\":\"boolean\"}}}},\"LastUpdated\":{\"type\":\"timestamp\"},\"IssueInfoMap\":{\"shape\":\"Sz\"}}}},\"NextToken\":{}}}},\"ListMemberAccounts\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MemberAccounts\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyArn\":{},\"PolicyId\":{},\"PolicyName\":{},\"ResourceType\":{},\"SecurityServiceType\":{},\"RemediationEnabled\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"ListProtocolsLists\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaxResults\"],\"members\":{\"DefaultLists\":{\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProtocolsLists\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ListArn\":{},\"ListId\":{},\"ListName\":{},\"ProtocolsList\":{\"shape\":\"S1s\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S30\"}}}},\"PutAppsList\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppsList\"],\"members\":{\"AppsList\":{\"shape\":\"Sg\"},\"TagList\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppsList\":{\"shape\":\"Sg\"},\"AppsListArn\":{}}}},\"PutNotificationChannel\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnsTopicArn\",\"SnsRoleName\"],\"members\":{\"SnsTopicArn\":{},\"SnsRoleName\":{}}}},\"PutPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Policy\"],\"members\":{\"Policy\":{\"shape\":\"S16\"},\"TagList\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S16\"},\"PolicyArn\":{}}}},\"PutProtocolsList\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtocolsList\"],\"members\":{\"ProtocolsList\":{\"shape\":\"S1r\"},\"TagList\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProtocolsList\":{\"shape\":\"S1r\"},\"ProtocolsListArn\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagList\"],\"members\":{\"ResourceArn\":{},\"TagList\":{\"shape\":\"S30\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sg\":{\"type\":\"structure\",\"required\":[\"ListName\",\"AppsList\"],\"members\":{\"ListId\":{},\"ListName\":{},\"ListUpdateToken\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"LastUpdateTime\":{\"type\":\"timestamp\"},\"AppsList\":{\"shape\":\"Sk\"},\"PreviousAppsList\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Sk\"}}}},\"Sk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AppName\",\"Protocol\",\"Port\"],\"members\":{\"AppName\":{},\"Protocol\":{},\"Port\":{\"type\":\"long\"}}}},\"Sz\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S16\":{\"type\":\"structure\",\"required\":[\"PolicyName\",\"SecurityServicePolicyData\",\"ResourceType\",\"ExcludeResourceTags\",\"RemediationEnabled\"],\"members\":{\"PolicyId\":{},\"PolicyName\":{},\"PolicyUpdateToken\":{},\"SecurityServicePolicyData\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"ManagedServiceData\":{}}},\"ResourceType\":{},\"ResourceTypeList\":{\"type\":\"list\",\"member\":{}},\"ResourceTags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"ExcludeResourceTags\":{\"type\":\"boolean\"},\"RemediationEnabled\":{\"type\":\"boolean\"},\"IncludeMap\":{\"shape\":\"S1g\"},\"ExcludeMap\":{\"shape\":\"S1g\"}}},\"S1g\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"S1r\":{\"type\":\"structure\",\"required\":[\"ListName\",\"ProtocolsList\"],\"members\":{\"ListId\":{},\"ListName\":{},\"ListUpdateToken\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"LastUpdateTime\":{\"type\":\"timestamp\"},\"ProtocolsList\":{\"shape\":\"S1s\"},\"PreviousProtocolsList\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S1s\"}}}},\"S1s\":{\"type\":\"list\",\"member\":{}},\"S2d\":{\"type\":\"structure\",\"members\":{\"ViolationTarget\":{},\"ViolatingSecurityGroups\":{\"type\":\"list\",\"member\":{}}}},\"S2l\":{\"type\":\"structure\",\"members\":{\"StatelessRuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleGroupName\":{},\"ResourceId\":{},\"Priority\":{\"type\":\"integer\"}}}},\"StatelessDefaultActions\":{\"shape\":\"S2q\"},\"StatelessFragmentDefaultActions\":{\"shape\":\"S2q\"},\"StatelessCustomActions\":{\"shape\":\"S2q\"},\"StatefulRuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleGroupName\":{},\"ResourceId\":{}}}}}},\"S2q\":{\"type\":\"list\",\"member\":{}},\"S30\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 47569:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListComplianceStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PolicyComplianceStatusList\"},\"ListMemberAccounts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"MemberAccounts\"},\"ListPolicies\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PolicyList\"}}}");

/***/ }),

/***/ 55586:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-06-26\",\"endpointPrefix\":\"forecast\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Forecast Service\",\"serviceId\":\"forecast\",\"signatureVersion\":\"v4\",\"signingName\":\"forecast\",\"targetPrefix\":\"AmazonForecast\",\"uid\":\"forecast-2018-06-26\"},\"operations\":{\"CreateDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\",\"Domain\",\"DatasetType\",\"Schema\"],\"members\":{\"DatasetName\":{},\"Domain\":{},\"DatasetType\":{},\"DataFrequency\":{},\"Schema\":{\"shape\":\"S6\"},\"EncryptionConfig\":{\"shape\":\"Sa\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetArn\":{}}}},\"CreateDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetGroupName\",\"Domain\"],\"members\":{\"DatasetGroupName\":{},\"Domain\":{},\"DatasetArns\":{\"shape\":\"Sj\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetGroupArn\":{}}}},\"CreateDatasetImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetImportJobName\",\"DatasetArn\",\"DataSource\"],\"members\":{\"DatasetImportJobName\":{},\"DatasetArn\":{},\"DataSource\":{\"shape\":\"Sm\"},\"TimestampFormat\":{},\"TimeZone\":{},\"UseGeolocationForTimeZone\":{\"type\":\"boolean\"},\"GeolocationFormat\":{},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetImportJobArn\":{}}}},\"CreateForecast\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastName\",\"PredictorArn\"],\"members\":{\"ForecastName\":{},\"PredictorArn\":{},\"ForecastTypes\":{\"shape\":\"Sv\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ForecastArn\":{}}}},\"CreateForecastExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastExportJobName\",\"ForecastArn\",\"Destination\"],\"members\":{\"ForecastExportJobName\":{},\"ForecastArn\":{},\"Destination\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ForecastExportJobArn\":{}}}},\"CreatePredictor\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorName\",\"ForecastHorizon\",\"InputDataConfig\",\"FeaturizationConfig\"],\"members\":{\"PredictorName\":{},\"AlgorithmArn\":{},\"ForecastHorizon\":{\"type\":\"integer\"},\"ForecastTypes\":{\"shape\":\"Sv\"},\"PerformAutoML\":{\"type\":\"boolean\"},\"PerformHPO\":{\"type\":\"boolean\"},\"TrainingParameters\":{\"shape\":\"S14\"},\"EvaluationParameters\":{\"shape\":\"S17\"},\"HPOConfig\":{\"shape\":\"S18\"},\"InputDataConfig\":{\"shape\":\"S1k\"},\"FeaturizationConfig\":{\"shape\":\"S1n\"},\"EncryptionConfig\":{\"shape\":\"Sa\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PredictorArn\":{}}}},\"CreatePredictorBacktestExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorBacktestExportJobName\",\"PredictorArn\",\"Destination\"],\"members\":{\"PredictorBacktestExportJobName\":{},\"PredictorArn\":{},\"Destination\":{\"shape\":\"Sz\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PredictorBacktestExportJobArn\":{}}}},\"DeleteDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetArn\"],\"members\":{\"DatasetArn\":{}}},\"idempotent\":true},\"DeleteDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetGroupArn\"],\"members\":{\"DatasetGroupArn\":{}}},\"idempotent\":true},\"DeleteDatasetImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetImportJobArn\"],\"members\":{\"DatasetImportJobArn\":{}}},\"idempotent\":true},\"DeleteForecast\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastArn\"],\"members\":{\"ForecastArn\":{}}},\"idempotent\":true},\"DeleteForecastExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastExportJobArn\"],\"members\":{\"ForecastExportJobArn\":{}}},\"idempotent\":true},\"DeletePredictor\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorArn\"],\"members\":{\"PredictorArn\":{}}},\"idempotent\":true},\"DeletePredictorBacktestExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorBacktestExportJobArn\"],\"members\":{\"PredictorBacktestExportJobArn\":{}}},\"idempotent\":true},\"DescribeDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetArn\"],\"members\":{\"DatasetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetArn\":{},\"DatasetName\":{},\"Domain\":{},\"DatasetType\":{},\"DataFrequency\":{},\"Schema\":{\"shape\":\"S6\"},\"EncryptionConfig\":{\"shape\":\"Sa\"},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetGroupArn\"],\"members\":{\"DatasetGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetGroupName\":{},\"DatasetGroupArn\":{},\"DatasetArns\":{\"shape\":\"Sj\"},\"Domain\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeDatasetImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetImportJobArn\"],\"members\":{\"DatasetImportJobArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetImportJobName\":{},\"DatasetImportJobArn\":{},\"DatasetArn\":{},\"TimestampFormat\":{},\"TimeZone\":{},\"UseGeolocationForTimeZone\":{\"type\":\"boolean\"},\"GeolocationFormat\":{},\"DataSource\":{\"shape\":\"Sm\"},\"FieldStatistics\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Count\":{\"type\":\"integer\"},\"CountDistinct\":{\"type\":\"integer\"},\"CountNull\":{\"type\":\"integer\"},\"CountNan\":{\"type\":\"integer\"},\"Min\":{},\"Max\":{},\"Avg\":{\"type\":\"double\"},\"Stddev\":{\"type\":\"double\"}}}},\"DataSize\":{\"type\":\"double\"},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeForecast\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastArn\"],\"members\":{\"ForecastArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ForecastArn\":{},\"ForecastName\":{},\"ForecastTypes\":{\"shape\":\"Sv\"},\"PredictorArn\":{},\"DatasetGroupArn\":{},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeForecastExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastExportJobArn\"],\"members\":{\"ForecastExportJobArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ForecastExportJobArn\":{},\"ForecastExportJobName\":{},\"ForecastArn\":{},\"Destination\":{\"shape\":\"Sz\"},\"Message\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribePredictor\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorArn\"],\"members\":{\"PredictorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PredictorArn\":{},\"PredictorName\":{},\"AlgorithmArn\":{},\"ForecastHorizon\":{\"type\":\"integer\"},\"ForecastTypes\":{\"shape\":\"Sv\"},\"PerformAutoML\":{\"type\":\"boolean\"},\"PerformHPO\":{\"type\":\"boolean\"},\"TrainingParameters\":{\"shape\":\"S14\"},\"EvaluationParameters\":{\"shape\":\"S17\"},\"HPOConfig\":{\"shape\":\"S18\"},\"InputDataConfig\":{\"shape\":\"S1k\"},\"FeaturizationConfig\":{\"shape\":\"S1n\"},\"EncryptionConfig\":{\"shape\":\"Sa\"},\"PredictorExecutionDetails\":{\"type\":\"structure\",\"members\":{\"PredictorExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlgorithmArn\":{},\"TestWindows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TestWindowStart\":{\"type\":\"timestamp\"},\"TestWindowEnd\":{\"type\":\"timestamp\"},\"Status\":{},\"Message\":{}}}}}}}}},\"DatasetImportJobArns\":{\"shape\":\"Sj\"},\"AutoMLAlgorithmArns\":{\"shape\":\"Sj\"},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribePredictorBacktestExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorBacktestExportJobArn\"],\"members\":{\"PredictorBacktestExportJobArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PredictorBacktestExportJobArn\":{},\"PredictorBacktestExportJobName\":{},\"PredictorArn\":{},\"Destination\":{\"shape\":\"Sz\"},\"Message\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"GetAccuracyMetrics\":{\"input\":{\"type\":\"structure\",\"required\":[\"PredictorArn\"],\"members\":{\"PredictorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PredictorEvaluationResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlgorithmArn\":{},\"TestWindows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TestWindowStart\":{\"type\":\"timestamp\"},\"TestWindowEnd\":{\"type\":\"timestamp\"},\"ItemCount\":{\"type\":\"integer\"},\"EvaluationType\":{},\"Metrics\":{\"type\":\"structure\",\"members\":{\"RMSE\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, please refer to ErrorMetrics for both RMSE and WAPE\",\"type\":\"double\"},\"WeightedQuantileLosses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Quantile\":{\"type\":\"double\"},\"LossValue\":{\"type\":\"double\"}}}},\"ErrorMetrics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ForecastType\":{},\"WAPE\":{\"type\":\"double\"},\"RMSE\":{\"type\":\"double\"}}}}}}}}}}}}}},\"idempotent\":true},\"ListDatasetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DatasetGroupArn\":{},\"DatasetGroupName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListDatasetImportJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetImportJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DatasetImportJobArn\":{},\"DatasetImportJobName\":{},\"DataSource\":{\"shape\":\"Sm\"},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListDatasets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Datasets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DatasetArn\":{},\"DatasetName\":{},\"DatasetType\":{},\"Domain\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListForecastExportJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ForecastExportJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ForecastExportJobArn\":{},\"ForecastExportJobName\":{},\"Destination\":{\"shape\":\"Sz\"},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListForecasts\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Forecasts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ForecastArn\":{},\"ForecastName\":{},\"PredictorArn\":{},\"DatasetGroupArn\":{},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListPredictorBacktestExportJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PredictorBacktestExportJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PredictorBacktestExportJobArn\":{},\"PredictorBacktestExportJobName\":{},\"Destination\":{\"shape\":\"Sz\"},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListPredictors\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Predictors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PredictorArn\":{},\"PredictorName\":{},\"DatasetGroupArn\":{},\"Status\":{},\"Message\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sd\"}}}},\"StopResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"idempotent\":true},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sf\"}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetGroupArn\",\"DatasetArns\"],\"members\":{\"DatasetGroupArn\":{},\"DatasetArns\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeType\":{}}}}}},\"Sa\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"KMSKeyArn\"],\"members\":{\"RoleArn\":{},\"KMSKeyArn\":{}}},\"Sd\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{\"shape\":\"Sf\"},\"Value\":{\"type\":\"string\",\"sensitive\":true}}}},\"Sf\":{\"type\":\"string\",\"sensitive\":true},\"Sj\":{\"type\":\"list\",\"member\":{}},\"Sm\":{\"type\":\"structure\",\"required\":[\"S3Config\"],\"members\":{\"S3Config\":{\"shape\":\"Sn\"}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"Path\",\"RoleArn\"],\"members\":{\"Path\":{},\"RoleArn\":{},\"KMSKeyArn\":{}}},\"Sv\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"structure\",\"required\":[\"S3Config\"],\"members\":{\"S3Config\":{\"shape\":\"Sn\"}}},\"S14\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S17\":{\"type\":\"structure\",\"members\":{\"NumberOfBacktestWindows\":{\"type\":\"integer\"},\"BackTestWindowOffset\":{\"type\":\"integer\"}}},\"S18\":{\"type\":\"structure\",\"members\":{\"ParameterRanges\":{\"type\":\"structure\",\"members\":{\"CategoricalParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"ContinuousParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"MaxValue\",\"MinValue\"],\"members\":{\"Name\":{},\"MaxValue\":{\"type\":\"double\"},\"MinValue\":{\"type\":\"double\"},\"ScalingType\":{}}}},\"IntegerParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"MaxValue\",\"MinValue\"],\"members\":{\"Name\":{},\"MaxValue\":{\"type\":\"integer\"},\"MinValue\":{\"type\":\"integer\"},\"ScalingType\":{}}}}}}}},\"S1k\":{\"type\":\"structure\",\"required\":[\"DatasetGroupArn\"],\"members\":{\"DatasetGroupArn\":{},\"SupplementaryFeatures\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"ForecastFrequency\"],\"members\":{\"ForecastFrequency\":{},\"ForecastDimensions\":{\"type\":\"list\",\"member\":{}},\"Featurizations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\"],\"members\":{\"AttributeName\":{},\"FeaturizationPipeline\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FeaturizationMethodName\"],\"members\":{\"FeaturizationMethodName\":{},\"FeaturizationMethodParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}}}},\"S3e\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\",\"Condition\"],\"members\":{\"Key\":{},\"Value\":{},\"Condition\":{}}}}}}");

/***/ }),

/***/ 83052:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDatasetGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DatasetGroups\"},\"ListDatasetImportJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DatasetImportJobs\"},\"ListDatasets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Datasets\"},\"ListForecastExportJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ForecastExportJobs\"},\"ListForecasts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Forecasts\"},\"ListPredictorBacktestExportJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PredictorBacktestExportJobs\"},\"ListPredictors\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Predictors\"}}}");

/***/ }),

/***/ 6430:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-06-26\",\"endpointPrefix\":\"forecastquery\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Forecast Query Service\",\"serviceId\":\"forecastquery\",\"signatureVersion\":\"v4\",\"signingName\":\"forecast\",\"targetPrefix\":\"AmazonForecastRuntime\",\"uid\":\"forecastquery-2018-06-26\"},\"operations\":{\"QueryForecast\":{\"input\":{\"type\":\"structure\",\"required\":[\"ForecastArn\",\"Filters\"],\"members\":{\"ForecastArn\":{},\"StartDate\":{},\"EndDate\":{},\"Filters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Forecast\":{\"type\":\"structure\",\"members\":{\"Predictions\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{},\"Value\":{\"type\":\"double\"}}}}}}}}}}},\"shapes\":{}}");

/***/ }),

/***/ 30372:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 93807:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-11-15\",\"endpointPrefix\":\"frauddetector\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Fraud Detector\",\"serviceId\":\"FraudDetector\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSHawksNestServiceFacade\",\"uid\":\"frauddetector-2019-11-15\"},\"operations\":{\"BatchCreateVariable\":{\"input\":{\"type\":\"structure\",\"required\":[\"variableEntries\"],\"members\":{\"variableEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"dataType\":{},\"dataSource\":{},\"defaultValue\":{},\"description\":{},\"variableType\":{}}}},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"code\":{\"type\":\"integer\"},\"message\":{}}}}}}},\"BatchGetVariable\":{\"input\":{\"type\":\"structure\",\"required\":[\"names\"],\"members\":{\"names\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"variables\":{\"shape\":\"Sg\"},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"code\":{\"type\":\"integer\"},\"message\":{}}}}}}},\"CancelBatchPredictionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateBatchPredictionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"inputPath\",\"outputPath\",\"eventTypeName\",\"detectorName\",\"iamRoleArn\"],\"members\":{\"jobId\":{},\"inputPath\":{},\"outputPath\":{},\"eventTypeName\":{},\"detectorName\":{},\"detectorVersion\":{},\"iamRoleArn\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDetectorVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"rules\"],\"members\":{\"detectorId\":{},\"description\":{},\"externalModelEndpoints\":{\"shape\":\"Sy\"},\"rules\":{\"shape\":\"Sz\"},\"modelVersions\":{\"shape\":\"S11\"},\"ruleExecutionMode\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorId\":{},\"detectorVersionId\":{},\"status\":{}}}},\"CreateModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"eventTypeName\"],\"members\":{\"modelId\":{},\"modelType\":{},\"description\":{},\"eventTypeName\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateModelVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"trainingDataSource\",\"trainingDataSchema\"],\"members\":{\"modelId\":{},\"modelType\":{},\"trainingDataSource\":{},\"trainingDataSchema\":{\"shape\":\"S1d\"},\"externalEventsDetail\":{\"shape\":\"S1g\"},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{},\"status\":{}}}},\"CreateRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ruleId\",\"detectorId\",\"expression\",\"language\",\"outcomes\"],\"members\":{\"ruleId\":{},\"detectorId\":{},\"description\":{},\"expression\":{\"shape\":\"S1j\"},\"language\":{},\"outcomes\":{\"shape\":\"S1l\"},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"rule\":{\"shape\":\"S10\"}}}},\"CreateVariable\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"dataType\",\"dataSource\",\"defaultValue\"],\"members\":{\"name\":{},\"dataType\":{},\"dataSource\":{},\"defaultValue\":{},\"description\":{},\"variableType\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteBatchPredictionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDetector\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\"],\"members\":{\"detectorId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDetectorVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"detectorVersionId\"],\"members\":{\"detectorId\":{},\"detectorVersionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEntityType\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEvent\":{\"input\":{\"type\":\"structure\",\"required\":[\"eventId\",\"eventTypeName\"],\"members\":{\"eventId\":{},\"eventTypeName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEventType\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteExternalModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelEndpoint\"],\"members\":{\"modelEndpoint\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteLabel\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\"],\"members\":{\"modelId\":{},\"modelType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteModelVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"modelVersionNumber\"],\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteOutcome\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"rule\"],\"members\":{\"rule\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteVariable\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeDetector\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\"],\"members\":{\"detectorId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorId\":{},\"detectorVersionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"detectorVersionId\":{},\"status\":{},\"description\":{},\"lastUpdatedTime\":{}}}},\"nextToken\":{},\"arn\":{}}}},\"DescribeModelVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelVersionNumber\":{},\"modelType\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"modelVersionDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{},\"status\":{},\"trainingDataSource\":{},\"trainingDataSchema\":{\"shape\":\"S1d\"},\"externalEventsDetail\":{\"shape\":\"S1g\"},\"trainingResult\":{\"type\":\"structure\",\"members\":{\"dataValidationMetrics\":{\"type\":\"structure\",\"members\":{\"fileLevelMessages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"title\":{},\"content\":{},\"type\":{}}}},\"fieldLevelMessages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fieldName\":{},\"identifier\":{},\"title\":{},\"content\":{},\"type\":{}}}}}},\"trainingMetrics\":{\"type\":\"structure\",\"members\":{\"auc\":{\"type\":\"float\"},\"metricDataPoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fpr\":{\"type\":\"float\"},\"precision\":{\"type\":\"float\"},\"tpr\":{\"type\":\"float\"},\"threshold\":{\"type\":\"float\"}}}}}}}},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetBatchPredictionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"batchPredictions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"status\":{},\"failureReason\":{},\"startTime\":{},\"completionTime\":{},\"lastHeartbeatTime\":{},\"inputPath\":{},\"outputPath\":{},\"eventTypeName\":{},\"detectorName\":{},\"detectorVersion\":{},\"iamRoleArn\":{},\"arn\":{},\"processedRecordsCount\":{\"type\":\"integer\"},\"totalRecordsCount\":{\"type\":\"integer\"}}}},\"nextToken\":{}}}},\"GetDetectorVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"detectorVersionId\"],\"members\":{\"detectorId\":{},\"detectorVersionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorId\":{},\"detectorVersionId\":{},\"description\":{},\"externalModelEndpoints\":{\"shape\":\"Sy\"},\"modelVersions\":{\"shape\":\"S11\"},\"rules\":{\"shape\":\"Sz\"},\"status\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"ruleExecutionMode\":{},\"arn\":{}}}},\"GetDetectors\":{\"input\":{\"type\":\"structure\",\"members\":{\"detectorId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"detectorId\":{},\"description\":{},\"eventTypeName\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetEntityTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"entityTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetEventPrediction\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"eventId\",\"eventTypeName\",\"entities\",\"eventTimestamp\",\"eventVariables\"],\"members\":{\"detectorId\":{},\"detectorVersionId\":{},\"eventId\":{},\"eventTypeName\":{},\"entities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"entityType\",\"entityId\"],\"members\":{\"entityType\":{},\"entityId\":{}}}},\"eventTimestamp\":{},\"eventVariables\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"string\",\"sensitive\":true}},\"externalModelEndpointDataBlobs\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"byteBuffer\":{\"type\":\"blob\"},\"contentType\":{}}},\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"modelScores\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"modelVersion\":{\"shape\":\"S12\"},\"scores\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"float\"}}}}},\"ruleResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ruleId\":{},\"outcomes\":{\"shape\":\"Sy\"}}}}}}},\"GetEventTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"eventTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"eventVariables\":{\"shape\":\"Sy\"},\"labels\":{\"shape\":\"Sy\"},\"entityTypes\":{\"shape\":\"S1l\"},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetExternalModels\":{\"input\":{\"type\":\"structure\",\"members\":{\"modelEndpoint\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"externalModels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"modelEndpoint\":{},\"modelSource\":{},\"invokeModelEndpointRoleArn\":{},\"inputConfiguration\":{\"shape\":\"S4b\"},\"outputConfiguration\":{\"shape\":\"S4e\"},\"modelEndpointStatus\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetKMSEncryptionKey\":{\"output\":{\"type\":\"structure\",\"members\":{\"kmsKey\":{\"type\":\"structure\",\"members\":{\"kmsEncryptionKeyArn\":{}}}}}},\"GetLabels\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"labels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetModelVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"modelVersionNumber\"],\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{},\"trainingDataSource\":{},\"trainingDataSchema\":{\"shape\":\"S1d\"},\"externalEventsDetail\":{\"shape\":\"S1g\"},\"status\":{},\"arn\":{}}}},\"GetModels\":{\"input\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelType\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"models\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelType\":{},\"description\":{},\"eventTypeName\":{},\"createdTime\":{},\"lastUpdatedTime\":{},\"arn\":{}}}}}}},\"GetOutcomes\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"outcomes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\"],\"members\":{\"ruleId\":{},\"detectorId\":{},\"ruleVersion\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ruleDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ruleId\":{},\"description\":{},\"detectorId\":{},\"ruleVersion\":{},\"expression\":{\"shape\":\"S1j\"},\"language\":{},\"outcomes\":{\"shape\":\"S1l\"},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"GetVariables\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"variables\":{\"shape\":\"Sg\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceARN\"],\"members\":{\"resourceARN\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S5\"},\"nextToken\":{}}}},\"PutDetector\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"eventTypeName\"],\"members\":{\"detectorId\":{},\"description\":{},\"eventTypeName\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEntityType\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEventType\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"eventVariables\",\"entityTypes\"],\"members\":{\"name\":{},\"description\":{},\"eventVariables\":{\"shape\":\"S1l\"},\"labels\":{\"shape\":\"Sy\"},\"entityTypes\":{\"shape\":\"S1l\"},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutExternalModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelEndpoint\",\"modelSource\",\"invokeModelEndpointRoleArn\",\"inputConfiguration\",\"outputConfiguration\",\"modelEndpointStatus\"],\"members\":{\"modelEndpoint\":{},\"modelSource\":{},\"invokeModelEndpointRoleArn\":{},\"inputConfiguration\":{\"shape\":\"S4b\"},\"outputConfiguration\":{\"shape\":\"S4e\"},\"modelEndpointStatus\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutKMSEncryptionKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"kmsEncryptionKeyArn\"],\"members\":{\"kmsEncryptionKeyArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutLabel\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutOutcome\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"description\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceARN\",\"tags\"],\"members\":{\"resourceARN\":{},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceARN\",\"tagKeys\"],\"members\":{\"resourceARN\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDetectorVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"detectorVersionId\",\"externalModelEndpoints\",\"rules\"],\"members\":{\"detectorId\":{},\"detectorVersionId\":{},\"externalModelEndpoints\":{\"shape\":\"Sy\"},\"rules\":{\"shape\":\"Sz\"},\"description\":{},\"modelVersions\":{\"shape\":\"S11\"},\"ruleExecutionMode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDetectorVersionMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"detectorVersionId\",\"description\"],\"members\":{\"detectorId\":{},\"detectorVersionId\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDetectorVersionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"detectorVersionId\",\"status\"],\"members\":{\"detectorId\":{},\"detectorVersionId\":{},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\"],\"members\":{\"modelId\":{},\"modelType\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateModelVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"majorVersionNumber\"],\"members\":{\"modelId\":{},\"modelType\":{},\"majorVersionNumber\":{},\"externalEventsDetail\":{\"shape\":\"S1g\"},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{},\"status\":{}}}},\"UpdateModelVersionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"modelVersionNumber\",\"status\"],\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRuleMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"rule\",\"description\"],\"members\":{\"rule\":{\"shape\":\"S10\"},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRuleVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"rule\",\"expression\",\"language\",\"outcomes\"],\"members\":{\"rule\":{\"shape\":\"S10\"},\"description\":{},\"expression\":{\"shape\":\"S1j\"},\"language\":{},\"outcomes\":{\"shape\":\"S1l\"},\"tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"rule\":{\"shape\":\"S10\"}}}},\"UpdateVariable\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"defaultValue\":{},\"description\":{},\"variableType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"dataType\":{},\"dataSource\":{},\"defaultValue\":{},\"description\":{},\"variableType\":{},\"lastUpdatedTime\":{},\"createdTime\":{},\"arn\":{}}}},\"Sy\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"S10\":{\"type\":\"structure\",\"required\":[\"detectorId\",\"ruleId\",\"ruleVersion\"],\"members\":{\"detectorId\":{},\"ruleId\":{},\"ruleVersion\":{}}},\"S11\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"S12\":{\"type\":\"structure\",\"required\":[\"modelId\",\"modelType\",\"modelVersionNumber\"],\"members\":{\"modelId\":{},\"modelType\":{},\"modelVersionNumber\":{},\"arn\":{}}},\"S1d\":{\"type\":\"structure\",\"required\":[\"modelVariables\",\"labelSchema\"],\"members\":{\"modelVariables\":{\"shape\":\"Sy\"},\"labelSchema\":{\"type\":\"structure\",\"required\":[\"labelMapper\"],\"members\":{\"labelMapper\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Sy\"}}}}}},\"S1g\":{\"type\":\"structure\",\"required\":[\"dataLocation\",\"dataAccessRoleArn\"],\"members\":{\"dataLocation\":{},\"dataAccessRoleArn\":{}}},\"S1j\":{\"type\":\"string\",\"sensitive\":true},\"S1l\":{\"type\":\"list\",\"member\":{}},\"S4b\":{\"type\":\"structure\",\"required\":[\"useEventVariables\"],\"members\":{\"eventTypeName\":{},\"format\":{},\"useEventVariables\":{\"type\":\"boolean\"},\"jsonInputTemplate\":{},\"csvInputTemplate\":{}}},\"S4e\":{\"type\":\"structure\",\"required\":[\"format\"],\"members\":{\"format\":{},\"jsonKeyToVariableMap\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"csvIndexToVariableMap\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}");

/***/ }),

/***/ 32681:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeModelVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetBatchPredictionJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetDetectors\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetEntityTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetEventTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetExternalModels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetLabels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetModels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetOutcomes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetRules\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetVariables\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListTagsForResource\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 85233:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-03-01\",\"endpointPrefix\":\"fsx\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon FSx\",\"serviceId\":\"FSx\",\"signatureVersion\":\"v4\",\"signingName\":\"fsx\",\"targetPrefix\":\"AWSSimbaAPIService_v20180301\",\"uid\":\"fsx-2018-03-01\"},\"operations\":{\"AssociateFileSystemAliases\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"Aliases\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"FileSystemId\":{},\"Aliases\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Aliases\":{\"shape\":\"S7\"}}}},\"CancelDataRepositoryTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"TaskId\"],\"members\":{\"TaskId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Lifecycle\":{},\"TaskId\":{}}},\"idempotent\":true},\"CopyBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceBackupId\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"SourceBackupId\":{},\"SourceRegion\":{},\"KmsKeyId\":{},\"CopyTags\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backup\":{\"shape\":\"So\"}}},\"idempotent\":true},\"CreateBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backup\":{\"shape\":\"So\"}}},\"idempotent\":true},\"CreateDataRepositoryTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"Type\",\"FileSystemId\",\"Report\"],\"members\":{\"Type\":{},\"Paths\":{\"shape\":\"S2c\"},\"FileSystemId\":{},\"Report\":{\"shape\":\"S2e\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataRepositoryTask\":{\"shape\":\"S2i\"}}},\"idempotent\":true},\"CreateFileSystem\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemType\",\"StorageCapacity\",\"SubnetIds\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"FileSystemType\":{},\"StorageCapacity\":{\"type\":\"integer\"},\"StorageType\":{},\"SubnetIds\":{\"shape\":\"S15\"},\"SecurityGroupIds\":{\"shape\":\"S2s\"},\"Tags\":{\"shape\":\"Sj\"},\"KmsKeyId\":{},\"WindowsConfiguration\":{\"shape\":\"S2u\"},\"LustreConfiguration\":{\"shape\":\"S2x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystem\":{\"shape\":\"Sx\"}}}},\"CreateFileSystemFromBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\",\"SubnetIds\"],\"members\":{\"BackupId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"SubnetIds\":{\"shape\":\"S15\"},\"SecurityGroupIds\":{\"shape\":\"S2s\"},\"Tags\":{\"shape\":\"Sj\"},\"WindowsConfiguration\":{\"shape\":\"S2u\"},\"LustreConfiguration\":{\"shape\":\"S2x\"},\"StorageType\":{},\"KmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystem\":{\"shape\":\"Sx\"}}}},\"DeleteBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\"],\"members\":{\"BackupId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"BackupId\":{},\"Lifecycle\":{}}},\"idempotent\":true},\"DeleteFileSystem\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"WindowsConfiguration\":{\"type\":\"structure\",\"members\":{\"SkipFinalBackup\":{\"type\":\"boolean\"},\"FinalBackupTags\":{\"shape\":\"Sj\"}}},\"LustreConfiguration\":{\"type\":\"structure\",\"members\":{\"SkipFinalBackup\":{\"type\":\"boolean\"},\"FinalBackupTags\":{\"shape\":\"Sj\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystemId\":{},\"Lifecycle\":{},\"WindowsResponse\":{\"type\":\"structure\",\"members\":{\"FinalBackupId\":{},\"FinalBackupTags\":{\"shape\":\"Sj\"}}},\"LustreResponse\":{\"type\":\"structure\",\"members\":{\"FinalBackupId\":{},\"FinalBackupTags\":{\"shape\":\"Sj\"}}}}},\"idempotent\":true},\"DescribeBackups\":{\"input\":{\"type\":\"structure\",\"members\":{\"BackupIds\":{\"type\":\"list\",\"member\":{}},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backups\":{\"type\":\"list\",\"member\":{\"shape\":\"So\"}},\"NextToken\":{}}}},\"DescribeDataRepositoryTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"TaskIds\":{\"type\":\"list\",\"member\":{}},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataRepositoryTasks\":{\"type\":\"list\",\"member\":{\"shape\":\"S2i\"}},\"NextToken\":{}}}},\"DescribeFileSystemAliases\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"FileSystemId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Aliases\":{\"shape\":\"S7\"},\"NextToken\":{}}}},\"DescribeFileSystems\":{\"input\":{\"type\":\"structure\",\"members\":{\"FileSystemIds\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystems\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\"}},\"NextToken\":{}}}},\"DisassociateFileSystemAliases\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"Aliases\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"FileSystemId\":{},\"Aliases\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Aliases\":{\"shape\":\"S7\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sj\"},\"NextToken\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateFileSystem\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemId\"],\"members\":{\"FileSystemId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"StorageCapacity\":{\"type\":\"integer\"},\"WindowsConfiguration\":{\"type\":\"structure\",\"members\":{\"WeeklyMaintenanceStartTime\":{},\"DailyAutomaticBackupStartTime\":{},\"AutomaticBackupRetentionDays\":{\"type\":\"integer\"},\"ThroughputCapacity\":{\"type\":\"integer\"},\"SelfManagedActiveDirectoryConfiguration\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"Password\":{\"shape\":\"S2w\"},\"DnsIps\":{\"shape\":\"S1h\"}}}}},\"LustreConfiguration\":{\"type\":\"structure\",\"members\":{\"WeeklyMaintenanceStartTime\":{},\"DailyAutomaticBackupStartTime\":{},\"AutomaticBackupRetentionDays\":{\"type\":\"integer\"},\"AutoImportPolicy\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystem\":{\"shape\":\"Sx\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Lifecycle\":{}}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"So\":{\"type\":\"structure\",\"required\":[\"BackupId\",\"Lifecycle\",\"Type\",\"CreationTime\",\"FileSystem\"],\"members\":{\"BackupId\":{},\"Lifecycle\":{},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"Message\":{}}},\"Type\":{},\"ProgressPercent\":{\"type\":\"integer\"},\"CreationTime\":{\"type\":\"timestamp\"},\"KmsKeyId\":{},\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sj\"},\"FileSystem\":{\"shape\":\"Sx\"},\"DirectoryInformation\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"ActiveDirectoryId\":{},\"ResourceARN\":{}}},\"OwnerId\":{},\"SourceBackupId\":{},\"SourceBackupRegion\":{}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"FileSystemId\":{},\"FileSystemType\":{},\"Lifecycle\":{},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"Message\":{}}},\"StorageCapacity\":{\"type\":\"integer\"},\"StorageType\":{},\"VpcId\":{},\"SubnetIds\":{\"shape\":\"S15\"},\"NetworkInterfaceIds\":{\"type\":\"list\",\"member\":{}},\"DNSName\":{},\"KmsKeyId\":{},\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sj\"},\"WindowsConfiguration\":{\"type\":\"structure\",\"members\":{\"ActiveDirectoryId\":{},\"SelfManagedActiveDirectoryConfiguration\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"OrganizationalUnitDistinguishedName\":{},\"FileSystemAdministratorsGroup\":{},\"UserName\":{},\"DnsIps\":{\"shape\":\"S1h\"}}},\"DeploymentType\":{},\"RemoteAdministrationEndpoint\":{},\"PreferredSubnetId\":{},\"PreferredFileServerIp\":{},\"ThroughputCapacity\":{\"type\":\"integer\"},\"MaintenanceOperationsInProgress\":{\"type\":\"list\",\"member\":{}},\"WeeklyMaintenanceStartTime\":{},\"DailyAutomaticBackupStartTime\":{},\"AutomaticBackupRetentionDays\":{\"type\":\"integer\"},\"CopyTagsToBackups\":{\"type\":\"boolean\"},\"Aliases\":{\"shape\":\"S7\"}}},\"LustreConfiguration\":{\"type\":\"structure\",\"members\":{\"WeeklyMaintenanceStartTime\":{},\"DataRepositoryConfiguration\":{\"type\":\"structure\",\"members\":{\"Lifecycle\":{},\"ImportPath\":{},\"ExportPath\":{},\"ImportedFileChunkSize\":{\"type\":\"integer\"},\"AutoImportPolicy\":{},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}}},\"DeploymentType\":{},\"PerUnitStorageThroughput\":{\"type\":\"integer\"},\"MountName\":{},\"DailyAutomaticBackupStartTime\":{},\"AutomaticBackupRetentionDays\":{\"type\":\"integer\"},\"CopyTagsToBackups\":{\"type\":\"boolean\"},\"DriveCacheType\":{}}},\"AdministrativeActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AdministrativeActionType\":{},\"ProgressPercent\":{\"type\":\"integer\"},\"RequestTime\":{\"type\":\"timestamp\"},\"Status\":{},\"TargetFileSystemValues\":{\"shape\":\"Sx\"},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}}}}}},\"S15\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"list\",\"member\":{}},\"S2c\":{\"type\":\"list\",\"member\":{}},\"S2e\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Path\":{},\"Format\":{},\"Scope\":{}}},\"S2i\":{\"type\":\"structure\",\"required\":[\"TaskId\",\"Lifecycle\",\"Type\",\"CreationTime\",\"FileSystemId\"],\"members\":{\"TaskId\":{},\"Lifecycle\":{},\"Type\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sj\"},\"FileSystemId\":{},\"Paths\":{\"shape\":\"S2c\"},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"Message\":{}}},\"Status\":{\"type\":\"structure\",\"members\":{\"TotalCount\":{\"type\":\"long\"},\"SucceededCount\":{\"type\":\"long\"},\"FailedCount\":{\"type\":\"long\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"Report\":{\"shape\":\"S2e\"}}},\"S2s\":{\"type\":\"list\",\"member\":{}},\"S2u\":{\"type\":\"structure\",\"required\":[\"ThroughputCapacity\"],\"members\":{\"ActiveDirectoryId\":{},\"SelfManagedActiveDirectoryConfiguration\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"UserName\",\"Password\",\"DnsIps\"],\"members\":{\"DomainName\":{},\"OrganizationalUnitDistinguishedName\":{},\"FileSystemAdministratorsGroup\":{},\"UserName\":{},\"Password\":{\"shape\":\"S2w\"},\"DnsIps\":{\"shape\":\"S1h\"}}},\"DeploymentType\":{},\"PreferredSubnetId\":{},\"ThroughputCapacity\":{\"type\":\"integer\"},\"WeeklyMaintenanceStartTime\":{},\"DailyAutomaticBackupStartTime\":{},\"AutomaticBackupRetentionDays\":{\"type\":\"integer\"},\"CopyTagsToBackups\":{\"type\":\"boolean\"},\"Aliases\":{\"shape\":\"S4\"}}},\"S2w\":{\"type\":\"string\",\"sensitive\":true},\"S2x\":{\"type\":\"structure\",\"members\":{\"WeeklyMaintenanceStartTime\":{},\"ImportPath\":{},\"ExportPath\":{},\"ImportedFileChunkSize\":{\"type\":\"integer\"},\"DeploymentType\":{},\"AutoImportPolicy\":{},\"PerUnitStorageThroughput\":{\"type\":\"integer\"},\"DailyAutomaticBackupStartTime\":{},\"AutomaticBackupRetentionDays\":{\"type\":\"integer\"},\"CopyTagsToBackups\":{\"type\":\"boolean\"},\"DriveCacheType\":{}}}}}");

/***/ }),

/***/ 8719:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeBackups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeDataRepositoryTasks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeFileSystemAliases\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeFileSystems\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 71658:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-10-01\",\"endpointPrefix\":\"gamelift\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon GameLift\",\"serviceId\":\"GameLift\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"GameLift\",\"uid\":\"gamelift-2015-10-01\"},\"operations\":{\"AcceptMatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"TicketId\",\"PlayerIds\",\"AcceptanceType\"],\"members\":{\"TicketId\":{},\"PlayerIds\":{\"shape\":\"S3\"},\"AcceptanceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ClaimGameServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\"],\"members\":{\"GameServerGroupName\":{},\"GameServerId\":{},\"GameServerData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServer\":{\"shape\":\"Sc\"}}}},\"CreateAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RoutingStrategy\"],\"members\":{\"Name\":{},\"Description\":{},\"RoutingStrategy\":{\"shape\":\"Sm\"},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Alias\":{\"shape\":\"Sv\"}}}},\"CreateBuild\":{\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{},\"StorageLocation\":{\"shape\":\"Sz\"},\"OperatingSystem\":{},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Build\":{\"shape\":\"S13\"},\"UploadCredentials\":{\"shape\":\"S18\"},\"StorageLocation\":{\"shape\":\"Sz\"}}}},\"CreateFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"EC2InstanceType\"],\"members\":{\"Name\":{},\"Description\":{},\"BuildId\":{},\"ScriptId\":{},\"ServerLaunchPath\":{},\"ServerLaunchParameters\":{},\"LogPaths\":{\"shape\":\"S3\"},\"EC2InstanceType\":{},\"EC2InboundPermissions\":{\"shape\":\"S1d\"},\"NewGameSessionProtectionPolicy\":{},\"RuntimeConfiguration\":{\"shape\":\"S1j\"},\"ResourceCreationLimitPolicy\":{\"shape\":\"S1p\"},\"MetricGroups\":{\"shape\":\"S1r\"},\"PeerVpcAwsAccountId\":{},\"PeerVpcId\":{},\"FleetType\":{},\"InstanceRoleArn\":{},\"CertificateConfiguration\":{\"shape\":\"S1u\"},\"Locations\":{\"shape\":\"S1w\"},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetAttributes\":{\"shape\":\"S20\"},\"LocationStates\":{\"shape\":\"S27\"}}}},\"CreateFleetLocations\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"Locations\"],\"members\":{\"FleetId\":{},\"Locations\":{\"shape\":\"S1w\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"LocationStates\":{\"shape\":\"S27\"}}}},\"CreateGameServerGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"RoleArn\",\"MinSize\",\"MaxSize\",\"LaunchTemplate\",\"InstanceDefinitions\"],\"members\":{\"GameServerGroupName\":{},\"RoleArn\":{},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"LaunchTemplate\":{\"type\":\"structure\",\"members\":{\"LaunchTemplateId\":{},\"LaunchTemplateName\":{},\"Version\":{}}},\"InstanceDefinitions\":{\"shape\":\"S2i\"},\"AutoScalingPolicy\":{\"type\":\"structure\",\"required\":[\"TargetTrackingConfiguration\"],\"members\":{\"EstimatedInstanceWarmup\":{\"type\":\"integer\"},\"TargetTrackingConfiguration\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"TargetValue\":{\"type\":\"double\"}}}}},\"BalancingStrategy\":{},\"GameServerProtectionPolicy\":{},\"VpcSubnets\":{\"type\":\"list\",\"member\":{}},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroup\":{\"shape\":\"S2u\"}}}},\"CreateGameSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"MaximumPlayerSessionCount\"],\"members\":{\"FleetId\":{},\"AliasId\":{},\"MaximumPlayerSessionCount\":{\"type\":\"integer\"},\"Name\":{},\"GameProperties\":{\"shape\":\"S31\"},\"CreatorId\":{},\"GameSessionId\":{},\"IdempotencyToken\":{},\"GameSessionData\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSession\":{\"shape\":\"S38\"}}}},\"CreateGameSessionQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"TimeoutInSeconds\":{\"type\":\"integer\"},\"PlayerLatencyPolicies\":{\"shape\":\"S3h\"},\"Destinations\":{\"shape\":\"S3j\"},\"FilterConfiguration\":{\"shape\":\"S3m\"},\"PriorityConfiguration\":{\"shape\":\"S3o\"},\"CustomEventData\":{},\"NotificationTarget\":{},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionQueue\":{\"shape\":\"S3u\"}}}},\"CreateMatchmakingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RequestTimeoutSeconds\",\"AcceptanceRequired\",\"RuleSetName\"],\"members\":{\"Name\":{},\"Description\":{},\"GameSessionQueueArns\":{\"shape\":\"S3x\"},\"RequestTimeoutSeconds\":{\"type\":\"integer\"},\"AcceptanceTimeoutSeconds\":{\"type\":\"integer\"},\"AcceptanceRequired\":{\"type\":\"boolean\"},\"RuleSetName\":{},\"NotificationTarget\":{},\"AdditionalPlayerCount\":{\"type\":\"integer\"},\"CustomEventData\":{},\"GameProperties\":{\"shape\":\"S31\"},\"GameSessionData\":{},\"BackfillMode\":{},\"FlexMatchMode\":{},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configuration\":{\"shape\":\"S48\"}}}},\"CreateMatchmakingRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RuleSetBody\"],\"members\":{\"Name\":{},\"RuleSetBody\":{},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"RuleSet\"],\"members\":{\"RuleSet\":{\"shape\":\"S4e\"}}}},\"CreatePlayerSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameSessionId\",\"PlayerId\"],\"members\":{\"GameSessionId\":{},\"PlayerId\":{},\"PlayerData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PlayerSession\":{\"shape\":\"S4i\"}}}},\"CreatePlayerSessions\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameSessionId\",\"PlayerIds\"],\"members\":{\"GameSessionId\":{},\"PlayerIds\":{\"type\":\"list\",\"member\":{}},\"PlayerDataMap\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PlayerSessions\":{\"shape\":\"S4p\"}}}},\"CreateScript\":{\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{},\"StorageLocation\":{\"shape\":\"Sz\"},\"ZipFile\":{\"type\":\"blob\"},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Script\":{\"shape\":\"S4t\"}}}},\"CreateVpcPeeringAuthorization\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameLiftAwsAccountId\",\"PeerVpcId\"],\"members\":{\"GameLiftAwsAccountId\":{},\"PeerVpcId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcPeeringAuthorization\":{\"shape\":\"S4w\"}}}},\"CreateVpcPeeringConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"PeerVpcAwsAccountId\",\"PeerVpcId\"],\"members\":{\"FleetId\":{},\"PeerVpcAwsAccountId\":{},\"PeerVpcId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{}}}},\"DeleteBuild\":{\"input\":{\"type\":\"structure\",\"required\":[\"BuildId\"],\"members\":{\"BuildId\":{}}}},\"DeleteFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{}}}},\"DeleteFleetLocations\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"Locations\"],\"members\":{\"FleetId\":{},\"Locations\":{\"shape\":\"S3n\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"LocationStates\":{\"shape\":\"S27\"}}}},\"DeleteGameServerGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\"],\"members\":{\"GameServerGroupName\":{},\"DeleteOption\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroup\":{\"shape\":\"S2u\"}}}},\"DeleteGameSessionQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteMatchmakingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteMatchmakingRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"FleetId\"],\"members\":{\"Name\":{},\"FleetId\":{}}}},\"DeleteScript\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScriptId\"],\"members\":{\"ScriptId\":{}}}},\"DeleteVpcPeeringAuthorization\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameLiftAwsAccountId\",\"PeerVpcId\"],\"members\":{\"GameLiftAwsAccountId\":{},\"PeerVpcId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteVpcPeeringConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"VpcPeeringConnectionId\"],\"members\":{\"FleetId\":{},\"VpcPeeringConnectionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterGameServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"GameServerId\"],\"members\":{\"GameServerGroupName\":{},\"GameServerId\":{}}}},\"DescribeAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Alias\":{\"shape\":\"Sv\"}}}},\"DescribeBuild\":{\"input\":{\"type\":\"structure\",\"required\":[\"BuildId\"],\"members\":{\"BuildId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Build\":{\"shape\":\"S13\"}}}},\"DescribeEC2InstanceLimits\":{\"input\":{\"type\":\"structure\",\"members\":{\"EC2InstanceType\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EC2InstanceLimits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EC2InstanceType\":{},\"CurrentInstances\":{\"type\":\"integer\"},\"InstanceLimit\":{\"type\":\"integer\"},\"Location\":{}}}}}}},\"DescribeFleetAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetIds\":{\"shape\":\"S5v\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetAttributes\":{\"type\":\"list\",\"member\":{\"shape\":\"S20\"}},\"NextToken\":{}}}},\"DescribeFleetCapacity\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetIds\":{\"shape\":\"S5v\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetCapacity\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}},\"NextToken\":{}}}},\"DescribeFleetEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventId\":{},\"ResourceId\":{},\"EventCode\":{},\"Message\":{},\"EventTime\":{\"type\":\"timestamp\"},\"PreSignedLogUrl\":{}}}},\"NextToken\":{}}}},\"DescribeFleetLocationAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"Locations\":{\"shape\":\"S3n\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"LocationAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LocationState\":{\"shape\":\"S28\"},\"StoppedActions\":{\"shape\":\"S25\"},\"UpdateStatus\":{}}}},\"NextToken\":{}}}},\"DescribeFleetLocationCapacity\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"Location\"],\"members\":{\"FleetId\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetCapacity\":{\"shape\":\"S61\"}}}},\"DescribeFleetLocationUtilization\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"Location\"],\"members\":{\"FleetId\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetUtilization\":{\"shape\":\"S6h\"}}}},\"DescribeFleetPortSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"InboundPermissions\":{\"shape\":\"S1d\"},\"UpdateStatus\":{},\"Location\":{}}}},\"DescribeFleetUtilization\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetIds\":{\"shape\":\"S5v\"},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetUtilization\":{\"type\":\"list\",\"member\":{\"shape\":\"S6h\"}},\"NextToken\":{}}}},\"DescribeGameServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"GameServerId\"],\"members\":{\"GameServerGroupName\":{},\"GameServerId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServer\":{\"shape\":\"Sc\"}}}},\"DescribeGameServerGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\"],\"members\":{\"GameServerGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroup\":{\"shape\":\"S2u\"}}}},\"DescribeGameServerInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\"],\"members\":{\"GameServerGroupName\":{},\"InstanceIds\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GameServerGroupName\":{},\"GameServerGroupArn\":{},\"InstanceId\":{},\"InstanceStatus\":{}}}},\"NextToken\":{}}}},\"DescribeGameSessionDetails\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"GameSessionId\":{},\"AliasId\":{},\"Location\":{},\"StatusFilter\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GameSession\":{\"shape\":\"S38\"},\"ProtectionPolicy\":{}}}},\"NextToken\":{}}}},\"DescribeGameSessionPlacement\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlacementId\"],\"members\":{\"PlacementId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionPlacement\":{\"shape\":\"S73\"}}}},\"DescribeGameSessionQueues\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionQueues\":{\"type\":\"list\",\"member\":{\"shape\":\"S3u\"}},\"NextToken\":{}}}},\"DescribeGameSessions\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"GameSessionId\":{},\"AliasId\":{},\"Location\":{},\"StatusFilter\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessions\":{\"shape\":\"S7g\"},\"NextToken\":{}}}},\"DescribeInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"InstanceId\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"InstanceId\":{},\"IpAddress\":{},\"DnsName\":{},\"OperatingSystem\":{},\"Type\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"Location\":{}}}},\"NextToken\":{}}}},\"DescribeMatchmaking\":{\"input\":{\"type\":\"structure\",\"required\":[\"TicketIds\"],\"members\":{\"TicketIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"TicketList\":{\"type\":\"list\",\"member\":{\"shape\":\"S7r\"}}}}},\"DescribeMatchmakingConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"type\":\"list\",\"member\":{}},\"RuleSetName\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S48\"}},\"NextToken\":{}}}},\"DescribeMatchmakingRuleSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"Names\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"RuleSets\"],\"members\":{\"RuleSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S4e\"}},\"NextToken\":{}}}},\"DescribePlayerSessions\":{\"input\":{\"type\":\"structure\",\"members\":{\"GameSessionId\":{},\"PlayerId\":{},\"PlayerSessionId\":{},\"PlayerSessionStatusFilter\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PlayerSessions\":{\"shape\":\"S4p\"},\"NextToken\":{}}}},\"DescribeRuntimeConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuntimeConfiguration\":{\"shape\":\"S1j\"}}}},\"DescribeScalingPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"StatusFilter\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScalingPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"Name\":{},\"Status\":{},\"ScalingAdjustment\":{\"type\":\"integer\"},\"ScalingAdjustmentType\":{},\"ComparisonOperator\":{},\"Threshold\":{\"type\":\"double\"},\"EvaluationPeriods\":{\"type\":\"integer\"},\"MetricName\":{},\"PolicyType\":{},\"TargetConfiguration\":{\"shape\":\"S8s\"},\"UpdateStatus\":{},\"Location\":{}}}},\"NextToken\":{}}}},\"DescribeScript\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScriptId\"],\"members\":{\"ScriptId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Script\":{\"shape\":\"S4t\"}}}},\"DescribeVpcPeeringAuthorizations\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcPeeringAuthorizations\":{\"type\":\"list\",\"member\":{\"shape\":\"S4w\"}}}}},\"DescribeVpcPeeringConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcPeeringConnections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"IpV4CidrBlock\":{},\"VpcPeeringConnectionId\":{},\"Status\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"PeerVpcId\":{},\"GameLiftVpcId\":{}}}}}}},\"GetGameSessionLogUrl\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameSessionId\"],\"members\":{\"GameSessionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PreSignedUrl\":{}}}},\"GetInstanceAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"InstanceId\"],\"members\":{\"FleetId\":{},\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceAccess\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"InstanceId\":{},\"IpAddress\":{},\"OperatingSystem\":{},\"Credentials\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"Secret\":{}},\"sensitive\":true}}}}}},\"ListAliases\":{\"input\":{\"type\":\"structure\",\"members\":{\"RoutingStrategyType\":{},\"Name\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Aliases\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"NextToken\":{}}}},\"ListBuilds\":{\"input\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Builds\":{\"type\":\"list\",\"member\":{\"shape\":\"S13\"}},\"NextToken\":{}}}},\"ListFleets\":{\"input\":{\"type\":\"structure\",\"members\":{\"BuildId\":{},\"ScriptId\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListGameServerGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2u\"}},\"NextToken\":{}}}},\"ListGameServers\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\"],\"members\":{\"GameServerGroupName\":{},\"SortOrder\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServers\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"NextToken\":{}}}},\"ListScripts\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Scripts\":{\"type\":\"list\",\"member\":{\"shape\":\"S4t\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sq\"}}}},\"PutScalingPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"FleetId\",\"MetricName\"],\"members\":{\"Name\":{},\"FleetId\":{},\"ScalingAdjustment\":{\"type\":\"integer\"},\"ScalingAdjustmentType\":{},\"Threshold\":{\"type\":\"double\"},\"ComparisonOperator\":{},\"EvaluationPeriods\":{\"type\":\"integer\"},\"MetricName\":{},\"PolicyType\":{},\"TargetConfiguration\":{\"shape\":\"S8s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"RegisterGameServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"GameServerId\",\"InstanceId\"],\"members\":{\"GameServerGroupName\":{},\"GameServerId\":{},\"InstanceId\":{},\"ConnectionInfo\":{},\"GameServerData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServer\":{\"shape\":\"Sc\"}}}},\"RequestUploadCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"BuildId\"],\"members\":{\"BuildId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UploadCredentials\":{\"shape\":\"S18\"},\"StorageLocation\":{\"shape\":\"Sz\"}}}},\"ResolveAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{}}}},\"ResumeGameServerGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"ResumeActions\"],\"members\":{\"GameServerGroupName\":{},\"ResumeActions\":{\"shape\":\"S2x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroup\":{\"shape\":\"S2u\"}}}},\"SearchGameSessions\":{\"input\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"AliasId\":{},\"Location\":{},\"FilterExpression\":{},\"SortExpression\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessions\":{\"shape\":\"S7g\"},\"NextToken\":{}}}},\"StartFleetActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"Actions\"],\"members\":{\"FleetId\":{},\"Actions\":{\"shape\":\"S25\"},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{}}}},\"StartGameSessionPlacement\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlacementId\",\"GameSessionQueueName\",\"MaximumPlayerSessionCount\"],\"members\":{\"PlacementId\":{},\"GameSessionQueueName\":{},\"GameProperties\":{\"shape\":\"S31\"},\"MaximumPlayerSessionCount\":{\"type\":\"integer\"},\"GameSessionName\":{},\"PlayerLatencies\":{\"shape\":\"S75\"},\"DesiredPlayerSessions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlayerId\":{},\"PlayerData\":{}}}},\"GameSessionData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionPlacement\":{\"shape\":\"S73\"}}}},\"StartMatchBackfill\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationName\",\"Players\"],\"members\":{\"TicketId\":{},\"ConfigurationName\":{},\"GameSessionArn\":{},\"Players\":{\"shape\":\"S7u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MatchmakingTicket\":{\"shape\":\"S7r\"}}}},\"StartMatchmaking\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationName\",\"Players\"],\"members\":{\"TicketId\":{},\"ConfigurationName\":{},\"Players\":{\"shape\":\"S7u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MatchmakingTicket\":{\"shape\":\"S7r\"}}}},\"StopFleetActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"Actions\"],\"members\":{\"FleetId\":{},\"Actions\":{\"shape\":\"S25\"},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{}}}},\"StopGameSessionPlacement\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlacementId\"],\"members\":{\"PlacementId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionPlacement\":{\"shape\":\"S73\"}}}},\"StopMatchmaking\":{\"input\":{\"type\":\"structure\",\"required\":[\"TicketId\"],\"members\":{\"TicketId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SuspendGameServerGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"SuspendActions\"],\"members\":{\"GameServerGroupName\":{},\"SuspendActions\":{\"shape\":\"S2x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroup\":{\"shape\":\"S2u\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{},\"Name\":{},\"Description\":{},\"RoutingStrategy\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Alias\":{\"shape\":\"Sv\"}}}},\"UpdateBuild\":{\"input\":{\"type\":\"structure\",\"required\":[\"BuildId\"],\"members\":{\"BuildId\":{},\"Name\":{},\"Version\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Build\":{\"shape\":\"S13\"}}}},\"UpdateFleetAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"Name\":{},\"Description\":{},\"NewGameSessionProtectionPolicy\":{},\"ResourceCreationLimitPolicy\":{\"shape\":\"S1p\"},\"MetricGroups\":{\"shape\":\"S1r\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{}}}},\"UpdateFleetCapacity\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"DesiredInstances\":{\"type\":\"integer\"},\"MinSize\":{\"type\":\"integer\"},\"MaxSize\":{\"type\":\"integer\"},\"Location\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"Location\":{}}}},\"UpdateFleetPortSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\"],\"members\":{\"FleetId\":{},\"InboundPermissionAuthorizations\":{\"shape\":\"S1d\"},\"InboundPermissionRevocations\":{\"shape\":\"S1d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetId\":{}}}},\"UpdateGameServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\",\"GameServerId\"],\"members\":{\"GameServerGroupName\":{},\"GameServerId\":{},\"GameServerData\":{},\"UtilizationStatus\":{},\"HealthCheck\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServer\":{\"shape\":\"Sc\"}}}},\"UpdateGameServerGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameServerGroupName\"],\"members\":{\"GameServerGroupName\":{},\"RoleArn\":{},\"InstanceDefinitions\":{\"shape\":\"S2i\"},\"GameServerProtectionPolicy\":{},\"BalancingStrategy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameServerGroup\":{\"shape\":\"S2u\"}}}},\"UpdateGameSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"GameSessionId\"],\"members\":{\"GameSessionId\":{},\"MaximumPlayerSessionCount\":{\"type\":\"integer\"},\"Name\":{},\"PlayerSessionCreationPolicy\":{},\"ProtectionPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSession\":{\"shape\":\"S38\"}}}},\"UpdateGameSessionQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"TimeoutInSeconds\":{\"type\":\"integer\"},\"PlayerLatencyPolicies\":{\"shape\":\"S3h\"},\"Destinations\":{\"shape\":\"S3j\"},\"FilterConfiguration\":{\"shape\":\"S3m\"},\"PriorityConfiguration\":{\"shape\":\"S3o\"},\"CustomEventData\":{},\"NotificationTarget\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GameSessionQueue\":{\"shape\":\"S3u\"}}}},\"UpdateMatchmakingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"GameSessionQueueArns\":{\"shape\":\"S3x\"},\"RequestTimeoutSeconds\":{\"type\":\"integer\"},\"AcceptanceTimeoutSeconds\":{\"type\":\"integer\"},\"AcceptanceRequired\":{\"type\":\"boolean\"},\"RuleSetName\":{},\"NotificationTarget\":{},\"AdditionalPlayerCount\":{\"type\":\"integer\"},\"CustomEventData\":{},\"GameProperties\":{\"shape\":\"S31\"},\"GameSessionData\":{},\"BackfillMode\":{},\"FlexMatchMode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configuration\":{\"shape\":\"S48\"}}}},\"UpdateRuntimeConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"FleetId\",\"RuntimeConfiguration\"],\"members\":{\"FleetId\":{},\"RuntimeConfiguration\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuntimeConfiguration\":{\"shape\":\"S1j\"}}}},\"UpdateScript\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScriptId\"],\"members\":{\"ScriptId\":{},\"Name\":{},\"Version\":{},\"StorageLocation\":{\"shape\":\"Sz\"},\"ZipFile\":{\"type\":\"blob\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Script\":{\"shape\":\"S4t\"}}}},\"ValidateMatchmakingRuleSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleSetBody\"],\"members\":{\"RuleSetBody\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Valid\":{\"type\":\"boolean\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"structure\",\"members\":{\"GameServerGroupName\":{},\"GameServerGroupArn\":{},\"GameServerId\":{},\"InstanceId\":{},\"ConnectionInfo\":{},\"GameServerData\":{},\"ClaimStatus\":{},\"UtilizationStatus\":{},\"RegistrationTime\":{\"type\":\"timestamp\"},\"LastClaimTime\":{\"type\":\"timestamp\"},\"LastHealthCheckTime\":{\"type\":\"timestamp\"}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"FleetId\":{},\"Message\":{}}},\"Sq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"AliasId\":{},\"Name\":{},\"AliasArn\":{},\"Description\":{},\"RoutingStrategy\":{\"shape\":\"Sm\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"Key\":{},\"RoleArn\":{},\"ObjectVersion\":{}}},\"S13\":{\"type\":\"structure\",\"members\":{\"BuildId\":{},\"BuildArn\":{},\"Name\":{},\"Version\":{},\"Status\":{},\"SizeOnDisk\":{\"type\":\"long\"},\"OperatingSystem\":{},\"CreationTime\":{\"type\":\"timestamp\"}}},\"S18\":{\"type\":\"structure\",\"members\":{\"AccessKeyId\":{},\"SecretAccessKey\":{},\"SessionToken\":{}},\"sensitive\":true},\"S1d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FromPort\",\"ToPort\",\"IpRange\",\"Protocol\"],\"members\":{\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"},\"IpRange\":{},\"Protocol\":{}}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"ServerProcesses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LaunchPath\",\"ConcurrentExecutions\"],\"members\":{\"LaunchPath\":{},\"Parameters\":{},\"ConcurrentExecutions\":{\"type\":\"integer\"}}}},\"MaxConcurrentGameSessionActivations\":{\"type\":\"integer\"},\"GameSessionActivationTimeoutSeconds\":{\"type\":\"integer\"}}},\"S1p\":{\"type\":\"structure\",\"members\":{\"NewGameSessionsPerCreator\":{\"type\":\"integer\"},\"PolicyPeriodInMinutes\":{\"type\":\"integer\"}}},\"S1r\":{\"type\":\"list\",\"member\":{}},\"S1u\":{\"type\":\"structure\",\"required\":[\"CertificateType\"],\"members\":{\"CertificateType\":{}}},\"S1w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Location\":{}}}},\"S20\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"FleetType\":{},\"InstanceType\":{},\"Description\":{},\"Name\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TerminationTime\":{\"type\":\"timestamp\"},\"Status\":{},\"BuildId\":{},\"BuildArn\":{},\"ScriptId\":{},\"ScriptArn\":{},\"ServerLaunchPath\":{},\"ServerLaunchParameters\":{},\"LogPaths\":{\"shape\":\"S3\"},\"NewGameSessionProtectionPolicy\":{},\"OperatingSystem\":{},\"ResourceCreationLimitPolicy\":{\"shape\":\"S1p\"},\"MetricGroups\":{\"shape\":\"S1r\"},\"StoppedActions\":{\"shape\":\"S25\"},\"InstanceRoleArn\":{},\"CertificateConfiguration\":{\"shape\":\"S1u\"}}},\"S25\":{\"type\":\"list\",\"member\":{}},\"S27\":{\"type\":\"list\",\"member\":{\"shape\":\"S28\"}},\"S28\":{\"type\":\"structure\",\"members\":{\"Location\":{},\"Status\":{}}},\"S2i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InstanceType\"],\"members\":{\"InstanceType\":{},\"WeightedCapacity\":{}}}},\"S2u\":{\"type\":\"structure\",\"members\":{\"GameServerGroupName\":{},\"GameServerGroupArn\":{},\"RoleArn\":{},\"InstanceDefinitions\":{\"shape\":\"S2i\"},\"BalancingStrategy\":{},\"GameServerProtectionPolicy\":{},\"AutoScalingGroupArn\":{},\"Status\":{},\"StatusReason\":{},\"SuspendedActions\":{\"shape\":\"S2x\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"S2x\":{\"type\":\"list\",\"member\":{}},\"S31\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S38\":{\"type\":\"structure\",\"members\":{\"GameSessionId\":{},\"Name\":{},\"FleetId\":{},\"FleetArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TerminationTime\":{\"type\":\"timestamp\"},\"CurrentPlayerSessionCount\":{\"type\":\"integer\"},\"MaximumPlayerSessionCount\":{\"type\":\"integer\"},\"Status\":{},\"StatusReason\":{},\"GameProperties\":{\"shape\":\"S31\"},\"IpAddress\":{},\"DnsName\":{},\"Port\":{\"type\":\"integer\"},\"PlayerSessionCreationPolicy\":{},\"CreatorId\":{},\"GameSessionData\":{},\"MatchmakerData\":{},\"Location\":{}}},\"S3h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MaximumIndividualPlayerLatencyMilliseconds\":{\"type\":\"integer\"},\"PolicyDurationSeconds\":{\"type\":\"integer\"}}}},\"S3j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DestinationArn\":{}}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"AllowedLocations\":{\"shape\":\"S3n\"}}},\"S3n\":{\"type\":\"list\",\"member\":{}},\"S3o\":{\"type\":\"structure\",\"members\":{\"PriorityOrder\":{\"type\":\"list\",\"member\":{}},\"LocationOrder\":{\"shape\":\"S3n\"}}},\"S3u\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"GameSessionQueueArn\":{},\"TimeoutInSeconds\":{\"type\":\"integer\"},\"PlayerLatencyPolicies\":{\"shape\":\"S3h\"},\"Destinations\":{\"shape\":\"S3j\"},\"FilterConfiguration\":{\"shape\":\"S3m\"},\"PriorityConfiguration\":{\"shape\":\"S3o\"},\"CustomEventData\":{},\"NotificationTarget\":{}}},\"S3x\":{\"type\":\"list\",\"member\":{}},\"S48\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ConfigurationArn\":{},\"Description\":{},\"GameSessionQueueArns\":{\"shape\":\"S3x\"},\"RequestTimeoutSeconds\":{\"type\":\"integer\"},\"AcceptanceTimeoutSeconds\":{\"type\":\"integer\"},\"AcceptanceRequired\":{\"type\":\"boolean\"},\"RuleSetName\":{},\"RuleSetArn\":{},\"NotificationTarget\":{},\"AdditionalPlayerCount\":{\"type\":\"integer\"},\"CustomEventData\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"GameProperties\":{\"shape\":\"S31\"},\"GameSessionData\":{},\"BackfillMode\":{},\"FlexMatchMode\":{}}},\"S4e\":{\"type\":\"structure\",\"required\":[\"RuleSetBody\"],\"members\":{\"RuleSetName\":{},\"RuleSetArn\":{},\"RuleSetBody\":{},\"CreationTime\":{\"type\":\"timestamp\"}}},\"S4i\":{\"type\":\"structure\",\"members\":{\"PlayerSessionId\":{},\"PlayerId\":{},\"GameSessionId\":{},\"FleetId\":{},\"FleetArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TerminationTime\":{\"type\":\"timestamp\"},\"Status\":{},\"IpAddress\":{},\"DnsName\":{},\"Port\":{\"type\":\"integer\"},\"PlayerData\":{}}},\"S4p\":{\"type\":\"list\",\"member\":{\"shape\":\"S4i\"}},\"S4t\":{\"type\":\"structure\",\"members\":{\"ScriptId\":{},\"ScriptArn\":{},\"Name\":{},\"Version\":{},\"SizeOnDisk\":{\"type\":\"long\"},\"CreationTime\":{\"type\":\"timestamp\"},\"StorageLocation\":{\"shape\":\"Sz\"}}},\"S4w\":{\"type\":\"structure\",\"members\":{\"GameLiftAwsAccountId\":{},\"PeerVpcAwsAccountId\":{},\"PeerVpcId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ExpirationTime\":{\"type\":\"timestamp\"}}},\"S5v\":{\"type\":\"list\",\"member\":{}},\"S61\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"InstanceType\":{},\"InstanceCounts\":{\"type\":\"structure\",\"members\":{\"DESIRED\":{\"type\":\"integer\"},\"MINIMUM\":{\"type\":\"integer\"},\"MAXIMUM\":{\"type\":\"integer\"},\"PENDING\":{\"type\":\"integer\"},\"ACTIVE\":{\"type\":\"integer\"},\"IDLE\":{\"type\":\"integer\"},\"TERMINATING\":{\"type\":\"integer\"}}},\"Location\":{}}},\"S6h\":{\"type\":\"structure\",\"members\":{\"FleetId\":{},\"FleetArn\":{},\"ActiveServerProcessCount\":{\"type\":\"integer\"},\"ActiveGameSessionCount\":{\"type\":\"integer\"},\"CurrentPlayerSessionCount\":{\"type\":\"integer\"},\"MaximumPlayerSessionCount\":{\"type\":\"integer\"},\"Location\":{}}},\"S73\":{\"type\":\"structure\",\"members\":{\"PlacementId\":{},\"GameSessionQueueName\":{},\"Status\":{},\"GameProperties\":{\"shape\":\"S31\"},\"MaximumPlayerSessionCount\":{\"type\":\"integer\"},\"GameSessionName\":{},\"GameSessionId\":{},\"GameSessionArn\":{},\"GameSessionRegion\":{},\"PlayerLatencies\":{\"shape\":\"S75\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"IpAddress\":{},\"DnsName\":{},\"Port\":{\"type\":\"integer\"},\"PlacedPlayerSessions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlayerId\":{},\"PlayerSessionId\":{}}}},\"GameSessionData\":{},\"MatchmakerData\":{}}},\"S75\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlayerId\":{},\"RegionIdentifier\":{},\"LatencyInMilliseconds\":{\"type\":\"float\"}}}},\"S7g\":{\"type\":\"list\",\"member\":{\"shape\":\"S38\"}},\"S7r\":{\"type\":\"structure\",\"members\":{\"TicketId\":{},\"ConfigurationName\":{},\"ConfigurationArn\":{},\"Status\":{},\"StatusReason\":{},\"StatusMessage\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Players\":{\"shape\":\"S7u\"},\"GameSessionConnectionInfo\":{\"type\":\"structure\",\"members\":{\"GameSessionArn\":{},\"IpAddress\":{},\"DnsName\":{},\"Port\":{\"type\":\"integer\"},\"MatchedPlayerSessions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlayerId\":{},\"PlayerSessionId\":{}}}}}},\"EstimatedWaitTime\":{\"type\":\"integer\"}}},\"S7u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlayerId\":{},\"PlayerAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"S\":{},\"N\":{\"type\":\"double\"},\"SL\":{\"shape\":\"S3\"},\"SDM\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"double\"}}}}},\"Team\":{},\"LatencyInMs\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}}},\"S8s\":{\"type\":\"structure\",\"required\":[\"TargetValue\"],\"members\":{\"TargetValue\":{\"type\":\"double\"}}}}}");

/***/ }),

/***/ 32274:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeFleetAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"FleetAttributes\"},\"DescribeFleetCapacity\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"FleetCapacity\"},\"DescribeFleetEvents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Events\"},\"DescribeFleetLocationAttributes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\"},\"DescribeFleetUtilization\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"FleetUtilization\"},\"DescribeGameServerInstances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameServerInstances\"},\"DescribeGameSessionDetails\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameSessionDetails\"},\"DescribeGameSessionQueues\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameSessionQueues\"},\"DescribeGameSessions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameSessions\"},\"DescribeInstances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Instances\"},\"DescribeMatchmakingConfigurations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Configurations\"},\"DescribeMatchmakingRuleSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"RuleSets\"},\"DescribePlayerSessions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"PlayerSessions\"},\"DescribeScalingPolicies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"ScalingPolicies\"},\"ListAliases\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Aliases\"},\"ListBuilds\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Builds\"},\"ListFleets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"FleetIds\"},\"ListGameServerGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameServerGroups\"},\"ListGameServers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameServers\"},\"ListScripts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Scripts\"},\"SearchGameSessions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"GameSessions\"}}}");

/***/ }),

/***/ 47563:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-06-01\",\"checksumFormat\":\"sha256\",\"endpointPrefix\":\"glacier\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Glacier\",\"serviceId\":\"Glacier\",\"signatureVersion\":\"v4\",\"uid\":\"glacier-2012-06-01\"},\"operations\":{\"AbortMultipartUpload\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"uploadId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"uploadId\":{\"location\":\"uri\",\"locationName\":\"uploadId\"}}}},\"AbortVaultLock\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/lock-policy\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}}},\"AddTagsToVault\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/tags?operation=add\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"Tags\":{\"shape\":\"S5\"}}}},\"CompleteMultipartUpload\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"uploadId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"uploadId\":{\"location\":\"uri\",\"locationName\":\"uploadId\"},\"archiveSize\":{\"location\":\"header\",\"locationName\":\"x-amz-archive-size\"},\"checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-sha256-tree-hash\"}}},\"output\":{\"shape\":\"S9\"}},\"CompleteVaultLock\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/lock-policy/{lockId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"lockId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"lockId\":{\"location\":\"uri\",\"locationName\":\"lockId\"}}}},\"CreateVault\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{accountId}/vaults/{vaultName}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"DeleteArchive\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/archives/{archiveId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"archiveId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"archiveId\":{\"location\":\"uri\",\"locationName\":\"archiveId\"}}}},\"DeleteVault\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{accountId}/vaults/{vaultName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}}},\"DeleteVaultAccessPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/access-policy\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}}},\"DeleteVaultNotifications\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/notification-configuration\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}}},\"DescribeJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"jobId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"shape\":\"Si\"}},\"DescribeVault\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}},\"output\":{\"shape\":\"S1a\"}},\"GetDataRetrievalPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/policies/data-retrieval\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S1e\"}}}},\"GetJobOutput\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/jobs/{jobId}/output\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"jobId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"range\":{\"location\":\"header\",\"locationName\":\"Range\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"body\":{\"shape\":\"S1k\"},\"checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-sha256-tree-hash\"},\"status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"contentRange\":{\"location\":\"header\",\"locationName\":\"Content-Range\"},\"acceptRanges\":{\"location\":\"header\",\"locationName\":\"Accept-Ranges\"},\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"archiveDescription\":{\"location\":\"header\",\"locationName\":\"x-amz-archive-description\"}},\"payload\":\"body\"}},\"GetVaultAccessPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/access-policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policy\":{\"shape\":\"S1o\"}},\"payload\":\"policy\"}},\"GetVaultLock\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/lock-policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{},\"State\":{},\"ExpirationDate\":{},\"CreationDate\":{}}}},\"GetVaultNotifications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/notification-configuration\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"vaultNotificationConfig\":{\"shape\":\"S1t\"}},\"payload\":\"vaultNotificationConfig\"}},\"InitiateJob\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/jobs\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"jobParameters\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"Type\":{},\"ArchiveId\":{},\"Description\":{},\"SNSTopic\":{},\"RetrievalByteRange\":{},\"Tier\":{},\"InventoryRetrievalParameters\":{\"type\":\"structure\",\"members\":{\"StartDate\":{},\"EndDate\":{},\"Limit\":{},\"Marker\":{}}},\"SelectParameters\":{\"shape\":\"Sp\"},\"OutputLocation\":{\"shape\":\"Sx\"}}}},\"payload\":\"jobParameters\"},\"output\":{\"type\":\"structure\",\"members\":{\"location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"jobId\":{\"location\":\"header\",\"locationName\":\"x-amz-job-id\"},\"jobOutputPath\":{\"location\":\"header\",\"locationName\":\"x-amz-job-output-path\"}}}},\"InitiateMultipartUpload\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/multipart-uploads\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"archiveDescription\":{\"location\":\"header\",\"locationName\":\"x-amz-archive-description\"},\"partSize\":{\"location\":\"header\",\"locationName\":\"x-amz-part-size\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"uploadId\":{\"location\":\"header\",\"locationName\":\"x-amz-multipart-upload-id\"}}}},\"InitiateVaultLock\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/lock-policy\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"policy\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"payload\":\"policy\"},\"output\":{\"type\":\"structure\",\"members\":{\"lockId\":{\"location\":\"header\",\"locationName\":\"x-amz-lock-id\"}}}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"statuscode\":{\"location\":\"querystring\",\"locationName\":\"statuscode\"},\"completed\":{\"location\":\"querystring\",\"locationName\":\"completed\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobList\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"Marker\":{}}}},\"ListMultipartUploads\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/multipart-uploads\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UploadsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MultipartUploadId\":{},\"VaultARN\":{},\"ArchiveDescription\":{},\"PartSizeInBytes\":{\"type\":\"long\"},\"CreationDate\":{}}}},\"Marker\":{}}}},\"ListParts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"uploadId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"uploadId\":{\"location\":\"uri\",\"locationName\":\"uploadId\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MultipartUploadId\":{},\"VaultARN\":{},\"ArchiveDescription\":{},\"PartSizeInBytes\":{\"type\":\"long\"},\"CreationDate\":{},\"Parts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RangeInBytes\":{},\"SHA256TreeHash\":{}}}},\"Marker\":{}}}},\"ListProvisionedCapacity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/provisioned-capacity\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedCapacityList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CapacityId\":{},\"StartDate\":{},\"ExpirationDate\":{}}}}}}},\"ListTagsForVault\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S5\"}}}},\"ListVaults\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{accountId}/vaults\"},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"limit\":{\"location\":\"querystring\",\"locationName\":\"limit\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VaultList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1a\"}},\"Marker\":{}}}},\"PurchaseProvisionedCapacity\":{\"http\":{\"requestUri\":\"/{accountId}/provisioned-capacity\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"capacityId\":{\"location\":\"header\",\"locationName\":\"x-amz-capacity-id\"}}}},\"RemoveTagsFromVault\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/tags?operation=remove\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"SetDataRetrievalPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{accountId}/policies/data-retrieval\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"Policy\":{\"shape\":\"S1e\"}}}},\"SetVaultAccessPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/access-policy\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"policy\":{\"shape\":\"S1o\"}},\"payload\":\"policy\"}},\"SetVaultNotifications\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/notification-configuration\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"vaultNotificationConfig\":{\"shape\":\"S1t\"}},\"payload\":\"vaultNotificationConfig\"}},\"UploadArchive\":{\"http\":{\"requestUri\":\"/{accountId}/vaults/{vaultName}/archives\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"vaultName\",\"accountId\"],\"members\":{\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"archiveDescription\":{\"location\":\"header\",\"locationName\":\"x-amz-archive-description\"},\"checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-sha256-tree-hash\"},\"body\":{\"shape\":\"S1k\"}},\"payload\":\"body\"},\"output\":{\"shape\":\"S9\"}},\"UploadMultipartPart\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{accountId}/vaults/{vaultName}/multipart-uploads/{uploadId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accountId\",\"vaultName\",\"uploadId\"],\"members\":{\"accountId\":{\"location\":\"uri\",\"locationName\":\"accountId\"},\"vaultName\":{\"location\":\"uri\",\"locationName\":\"vaultName\"},\"uploadId\":{\"location\":\"uri\",\"locationName\":\"uploadId\"},\"checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-sha256-tree-hash\"},\"range\":{\"location\":\"header\",\"locationName\":\"Content-Range\"},\"body\":{\"shape\":\"S1k\"}},\"payload\":\"body\"},\"output\":{\"type\":\"structure\",\"members\":{\"checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-sha256-tree-hash\"}}}}},\"shapes\":{\"S5\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S9\":{\"type\":\"structure\",\"members\":{\"location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"checksum\":{\"location\":\"header\",\"locationName\":\"x-amz-sha256-tree-hash\"},\"archiveId\":{\"location\":\"header\",\"locationName\":\"x-amz-archive-id\"}}},\"Si\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobDescription\":{},\"Action\":{},\"ArchiveId\":{},\"VaultARN\":{},\"CreationDate\":{},\"Completed\":{\"type\":\"boolean\"},\"StatusCode\":{},\"StatusMessage\":{},\"ArchiveSizeInBytes\":{\"type\":\"long\"},\"InventorySizeInBytes\":{\"type\":\"long\"},\"SNSTopic\":{},\"CompletionDate\":{},\"SHA256TreeHash\":{},\"ArchiveSHA256TreeHash\":{},\"RetrievalByteRange\":{},\"Tier\":{},\"InventoryRetrievalParameters\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"StartDate\":{},\"EndDate\":{},\"Limit\":{},\"Marker\":{}}},\"JobOutputPath\":{},\"SelectParameters\":{\"shape\":\"Sp\"},\"OutputLocation\":{\"shape\":\"Sx\"}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"InputSerialization\":{\"type\":\"structure\",\"members\":{\"csv\":{\"type\":\"structure\",\"members\":{\"FileHeaderInfo\":{},\"Comments\":{},\"QuoteEscapeCharacter\":{},\"RecordDelimiter\":{},\"FieldDelimiter\":{},\"QuoteCharacter\":{}}}}},\"ExpressionType\":{},\"Expression\":{},\"OutputSerialization\":{\"type\":\"structure\",\"members\":{\"csv\":{\"type\":\"structure\",\"members\":{\"QuoteFields\":{},\"QuoteEscapeCharacter\":{},\"RecordDelimiter\":{},\"FieldDelimiter\":{},\"QuoteCharacter\":{}}}}}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"S3\":{\"type\":\"structure\",\"members\":{\"BucketName\":{},\"Prefix\":{},\"Encryption\":{\"type\":\"structure\",\"members\":{\"EncryptionType\":{},\"KMSKeyId\":{},\"KMSContext\":{}}},\"CannedACL\":{},\"AccessControlList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Grantee\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"DisplayName\":{},\"URI\":{},\"ID\":{},\"EmailAddress\":{}}},\"Permission\":{}}}},\"Tagging\":{\"shape\":\"S17\"},\"UserMetadata\":{\"shape\":\"S17\"},\"StorageClass\":{}}}}},\"S17\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1a\":{\"type\":\"structure\",\"members\":{\"VaultARN\":{},\"VaultName\":{},\"CreationDate\":{},\"LastInventoryDate\":{},\"NumberOfArchives\":{\"type\":\"long\"},\"SizeInBytes\":{\"type\":\"long\"}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Strategy\":{},\"BytesPerHour\":{\"type\":\"long\"}}}}}},\"S1k\":{\"type\":\"blob\",\"streaming\":true},\"S1o\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"SNSTopic\":{},\"Events\":{\"type\":\"list\",\"member\":{}}}}}}");

/***/ }),

/***/ 77100:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListJobs\":{\"input_token\":\"marker\",\"limit_key\":\"limit\",\"output_token\":\"Marker\",\"result_key\":\"JobList\"},\"ListMultipartUploads\":{\"input_token\":\"marker\",\"limit_key\":\"limit\",\"output_token\":\"Marker\",\"result_key\":\"UploadsList\"},\"ListParts\":{\"input_token\":\"marker\",\"limit_key\":\"limit\",\"output_token\":\"Marker\",\"result_key\":\"Parts\"},\"ListVaults\":{\"input_token\":\"marker\",\"limit_key\":\"limit\",\"output_token\":\"Marker\",\"result_key\":\"VaultList\"}}}");

/***/ }),

/***/ 81219:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"VaultExists\":{\"operation\":\"DescribeVault\",\"delay\":3,\"maxAttempts\":15,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\"}]},\"VaultNotExists\":{\"operation\":\"DescribeVault\",\"delay\":3,\"maxAttempts\":15,\"acceptors\":[{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"success\",\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\"}]}}}");

/***/ }),

/***/ 5157:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-08-08\",\"endpointPrefix\":\"globalaccelerator\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Global Accelerator\",\"serviceId\":\"Global Accelerator\",\"signatureVersion\":\"v4\",\"signingName\":\"globalaccelerator\",\"targetPrefix\":\"GlobalAccelerator_V20180706\",\"uid\":\"globalaccelerator-2018-08-08\"},\"operations\":{\"AddCustomRoutingEndpoints\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointConfigurations\",\"EndpointGroupArn\"],\"members\":{\"EndpointConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndpointId\":{}}}},\"EndpointGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointDescriptions\":{\"shape\":\"S6\"},\"EndpointGroupArn\":{}}}},\"AdvertiseByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"Sa\"}}}},\"AllowCustomRoutingTraffic\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\",\"EndpointId\"],\"members\":{\"EndpointGroupArn\":{},\"EndpointId\":{},\"DestinationAddresses\":{\"shape\":\"Sg\"},\"DestinationPorts\":{\"shape\":\"Si\"},\"AllowAllTrafficToEndpoint\":{\"type\":\"boolean\"}}}},\"CreateAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"IdempotencyToken\"],\"members\":{\"Name\":{},\"IpAddressType\":{},\"IpAddresses\":{\"shape\":\"Sn\"},\"Enabled\":{\"type\":\"boolean\"},\"IdempotencyToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerator\":{\"shape\":\"Su\"}}}},\"CreateCustomRoutingAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"IdempotencyToken\"],\"members\":{\"Name\":{},\"IpAddressType\":{},\"IpAddresses\":{\"shape\":\"Sn\"},\"Enabled\":{\"type\":\"boolean\"},\"IdempotencyToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerator\":{\"shape\":\"S10\"}}}},\"CreateCustomRoutingEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\",\"EndpointGroupRegion\",\"DestinationConfigurations\",\"IdempotencyToken\"],\"members\":{\"ListenerArn\":{},\"EndpointGroupRegion\":{},\"DestinationConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FromPort\",\"ToPort\",\"Protocols\"],\"members\":{\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"},\"Protocols\":{\"shape\":\"S15\"}}}},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroup\":{\"shape\":\"S18\"}}}},\"CreateCustomRoutingListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\",\"PortRanges\",\"IdempotencyToken\"],\"members\":{\"AcceleratorArn\":{},\"PortRanges\":{\"shape\":\"S1e\"},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"S1h\"}}}},\"CreateEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\",\"EndpointGroupRegion\",\"IdempotencyToken\"],\"members\":{\"ListenerArn\":{},\"EndpointGroupRegion\":{},\"EndpointConfigurations\":{\"shape\":\"S1j\"},\"TrafficDialPercentage\":{\"type\":\"float\"},\"HealthCheckPort\":{\"type\":\"integer\"},\"HealthCheckProtocol\":{},\"HealthCheckPath\":{},\"HealthCheckIntervalSeconds\":{\"type\":\"integer\"},\"ThresholdCount\":{\"type\":\"integer\"},\"IdempotencyToken\":{\"idempotencyToken\":true},\"PortOverrides\":{\"shape\":\"S1s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroup\":{\"shape\":\"S1v\"}}}},\"CreateListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\",\"PortRanges\",\"Protocol\",\"IdempotencyToken\"],\"members\":{\"AcceleratorArn\":{},\"PortRanges\":{\"shape\":\"S1e\"},\"Protocol\":{},\"ClientAffinity\":{},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"S22\"}}}},\"DeleteAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{}}}},\"DeleteCustomRoutingAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{}}}},\"DeleteCustomRoutingEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\"],\"members\":{\"EndpointGroupArn\":{}}}},\"DeleteCustomRoutingListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{}}}},\"DeleteEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\"],\"members\":{\"EndpointGroupArn\":{}}}},\"DeleteListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{}}}},\"DenyCustomRoutingTraffic\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\",\"EndpointId\"],\"members\":{\"EndpointGroupArn\":{},\"EndpointId\":{},\"DestinationAddresses\":{\"shape\":\"Sg\"},\"DestinationPorts\":{\"shape\":\"Si\"},\"DenyAllTrafficToEndpoint\":{\"type\":\"boolean\"}}}},\"DeprovisionByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"Sa\"}}}},\"DescribeAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerator\":{\"shape\":\"Su\"}}}},\"DescribeAcceleratorAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AcceleratorAttributes\":{\"shape\":\"S2g\"}}}},\"DescribeCustomRoutingAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerator\":{\"shape\":\"S10\"}}}},\"DescribeCustomRoutingAcceleratorAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AcceleratorAttributes\":{\"shape\":\"S2l\"}}}},\"DescribeCustomRoutingEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\"],\"members\":{\"EndpointGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroup\":{\"shape\":\"S18\"}}}},\"DescribeCustomRoutingListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"S1h\"}}}},\"DescribeEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\"],\"members\":{\"EndpointGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroup\":{\"shape\":\"S1v\"}}}},\"DescribeListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"S22\"}}}},\"ListAccelerators\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerators\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}},\"NextToken\":{}}}},\"ListByoipCidrs\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidrs\":{\"type\":\"list\",\"member\":{\"shape\":\"Sa\"}},\"NextToken\":{}}}},\"ListCustomRoutingAccelerators\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerators\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"NextToken\":{}}}},\"ListCustomRoutingEndpointGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\"}},\"NextToken\":{}}}},\"ListCustomRoutingListeners\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listeners\":{\"type\":\"list\",\"member\":{\"shape\":\"S1h\"}},\"NextToken\":{}}}},\"ListCustomRoutingPortMappings\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"EndpointGroupArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AcceleratorPort\":{\"type\":\"integer\"},\"EndpointGroupArn\":{},\"EndpointId\":{},\"DestinationSocketAddress\":{\"shape\":\"S3f\"},\"Protocols\":{\"shape\":\"S15\"},\"DestinationTrafficState\":{}}}},\"NextToken\":{}}}},\"ListCustomRoutingPortMappingsByDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointId\",\"DestinationAddress\"],\"members\":{\"EndpointId\":{},\"DestinationAddress\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DestinationPortMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AcceleratorArn\":{},\"AcceleratorSocketAddresses\":{\"type\":\"list\",\"member\":{\"shape\":\"S3f\"}},\"EndpointGroupArn\":{},\"EndpointId\":{},\"EndpointGroupRegion\":{},\"DestinationSocketAddress\":{\"shape\":\"S3f\"},\"IpAddressType\":{},\"DestinationTrafficState\":{}}}},\"NextToken\":{}}}},\"ListEndpointGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1v\"}},\"NextToken\":{}}}},\"ListListeners\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listeners\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sp\"}}}},\"ProvisionByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\",\"CidrAuthorizationContext\"],\"members\":{\"Cidr\":{},\"CidrAuthorizationContext\":{\"type\":\"structure\",\"required\":[\"Message\",\"Signature\"],\"members\":{\"Message\":{},\"Signature\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"Sa\"}}}},\"RemoveCustomRoutingEndpoints\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointIds\",\"EndpointGroupArn\"],\"members\":{\"EndpointIds\":{\"type\":\"list\",\"member\":{}},\"EndpointGroupArn\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"Name\":{},\"IpAddressType\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerator\":{\"shape\":\"Su\"}}}},\"UpdateAcceleratorAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"FlowLogsEnabled\":{\"type\":\"boolean\"},\"FlowLogsS3Bucket\":{},\"FlowLogsS3Prefix\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AcceleratorAttributes\":{\"shape\":\"S2g\"}}}},\"UpdateCustomRoutingAccelerator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"Name\":{},\"IpAddressType\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accelerator\":{\"shape\":\"S10\"}}}},\"UpdateCustomRoutingAcceleratorAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"AcceleratorArn\"],\"members\":{\"AcceleratorArn\":{},\"FlowLogsEnabled\":{\"type\":\"boolean\"},\"FlowLogsS3Bucket\":{},\"FlowLogsS3Prefix\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AcceleratorAttributes\":{\"shape\":\"S2l\"}}}},\"UpdateCustomRoutingListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\",\"PortRanges\"],\"members\":{\"ListenerArn\":{},\"PortRanges\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"S1h\"}}}},\"UpdateEndpointGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointGroupArn\"],\"members\":{\"EndpointGroupArn\":{},\"EndpointConfigurations\":{\"shape\":\"S1j\"},\"TrafficDialPercentage\":{\"type\":\"float\"},\"HealthCheckPort\":{\"type\":\"integer\"},\"HealthCheckProtocol\":{},\"HealthCheckPath\":{},\"HealthCheckIntervalSeconds\":{\"type\":\"integer\"},\"ThresholdCount\":{\"type\":\"integer\"},\"PortOverrides\":{\"shape\":\"S1s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointGroup\":{\"shape\":\"S1v\"}}}},\"UpdateListener\":{\"input\":{\"type\":\"structure\",\"required\":[\"ListenerArn\"],\"members\":{\"ListenerArn\":{},\"PortRanges\":{\"shape\":\"S1e\"},\"Protocol\":{},\"ClientAffinity\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"shape\":\"S22\"}}}},\"WithdrawByoipCidr\":{\"input\":{\"type\":\"structure\",\"required\":[\"Cidr\"],\"members\":{\"Cidr\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByoipCidr\":{\"shape\":\"Sa\"}}}}},\"shapes\":{\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndpointId\":{}}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"Cidr\":{},\"State\":{},\"Events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Message\":{},\"Timestamp\":{\"type\":\"timestamp\"}}}}}},\"Sg\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Su\":{\"type\":\"structure\",\"members\":{\"AcceleratorArn\":{},\"Name\":{},\"IpAddressType\":{},\"Enabled\":{\"type\":\"boolean\"},\"IpSets\":{\"shape\":\"Sv\"},\"DnsName\":{},\"Status\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IpFamily\":{},\"IpAddresses\":{\"shape\":\"Sn\"}}}},\"S10\":{\"type\":\"structure\",\"members\":{\"AcceleratorArn\":{},\"Name\":{},\"IpAddressType\":{},\"Enabled\":{\"type\":\"boolean\"},\"IpSets\":{\"shape\":\"Sv\"},\"DnsName\":{},\"Status\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}},\"S15\":{\"type\":\"list\",\"member\":{}},\"S18\":{\"type\":\"structure\",\"members\":{\"EndpointGroupArn\":{},\"EndpointGroupRegion\":{},\"DestinationDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"},\"Protocols\":{\"type\":\"list\",\"member\":{}}}}},\"EndpointDescriptions\":{\"shape\":\"S6\"}}},\"S1e\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"}}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"ListenerArn\":{},\"PortRanges\":{\"shape\":\"S1e\"}}},\"S1j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndpointId\":{},\"Weight\":{\"type\":\"integer\"},\"ClientIPPreservationEnabled\":{\"type\":\"boolean\"}}}},\"S1s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ListenerPort\":{\"type\":\"integer\"},\"EndpointPort\":{\"type\":\"integer\"}}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"EndpointGroupArn\":{},\"EndpointGroupRegion\":{},\"EndpointDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndpointId\":{},\"Weight\":{\"type\":\"integer\"},\"HealthState\":{},\"HealthReason\":{},\"ClientIPPreservationEnabled\":{\"type\":\"boolean\"}}}},\"TrafficDialPercentage\":{\"type\":\"float\"},\"HealthCheckPort\":{\"type\":\"integer\"},\"HealthCheckProtocol\":{},\"HealthCheckPath\":{},\"HealthCheckIntervalSeconds\":{\"type\":\"integer\"},\"ThresholdCount\":{\"type\":\"integer\"},\"PortOverrides\":{\"shape\":\"S1s\"}}},\"S22\":{\"type\":\"structure\",\"members\":{\"ListenerArn\":{},\"PortRanges\":{\"shape\":\"S1e\"},\"Protocol\":{},\"ClientAffinity\":{}}},\"S2g\":{\"type\":\"structure\",\"members\":{\"FlowLogsEnabled\":{\"type\":\"boolean\"},\"FlowLogsS3Bucket\":{},\"FlowLogsS3Prefix\":{}}},\"S2l\":{\"type\":\"structure\",\"members\":{\"FlowLogsEnabled\":{\"type\":\"boolean\"},\"FlowLogsS3Bucket\":{},\"FlowLogsS3Prefix\":{}}},\"S3f\":{\"type\":\"structure\",\"members\":{\"IpAddress\":{},\"Port\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 9696:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccelerators\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Accelerators\"},\"ListByoipCidrs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ByoipCidrs\"},\"ListCustomRoutingAccelerators\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Accelerators\"},\"ListCustomRoutingEndpointGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListCustomRoutingListeners\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Listeners\"},\"ListCustomRoutingPortMappings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"PortMappings\"},\"ListCustomRoutingPortMappingsByDestination\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DestinationPortMappings\"},\"ListEndpointGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"EndpointGroups\"},\"ListListeners\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Listeners\"}}}");

/***/ }),

/***/ 91789:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-03-31\",\"endpointPrefix\":\"glue\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Glue\",\"serviceId\":\"Glue\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSGlue\",\"uid\":\"glue-2017-03-31\"},\"operations\":{\"BatchCreatePartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionInputList\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionInputList\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"shape\":\"S11\"}}}},\"BatchDeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionNameList\"],\"members\":{\"CatalogId\":{},\"ConnectionNameList\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Succeeded\":{\"shape\":\"Sm\"},\"Errors\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S13\"}}}}},\"BatchDeletePartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionsToDelete\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionsToDelete\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"shape\":\"S11\"}}}},\"BatchDeleteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TablesToDelete\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TablesToDelete\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"ErrorDetail\":{\"shape\":\"S13\"}}}}}}},\"BatchDeleteTableVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"VersionIds\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"VersionIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"VersionId\":{},\"ErrorDetail\":{\"shape\":\"S13\"}}}}}}},\"BatchGetCrawlers\":{\"input\":{\"type\":\"structure\",\"required\":[\"CrawlerNames\"],\"members\":{\"CrawlerNames\":{\"shape\":\"S1p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Crawlers\":{\"shape\":\"S1r\"},\"CrawlersNotFound\":{\"shape\":\"S1p\"}}}},\"BatchGetDevEndpoints\":{\"input\":{\"type\":\"structure\",\"required\":[\"DevEndpointNames\"],\"members\":{\"DevEndpointNames\":{\"shape\":\"S2z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DevEndpoints\":{\"shape\":\"S32\"},\"DevEndpointsNotFound\":{\"shape\":\"S2z\"}}}},\"BatchGetJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobNames\"],\"members\":{\"JobNames\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"shape\":\"S3g\"},\"JobsNotFound\":{\"shape\":\"S3e\"}}}},\"BatchGetPartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionsToGet\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionsToGet\":{\"shape\":\"S3x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Partitions\":{\"shape\":\"S3z\"},\"UnprocessedKeys\":{\"shape\":\"S3x\"}}}},\"BatchGetTriggers\":{\"input\":{\"type\":\"structure\",\"required\":[\"TriggerNames\"],\"members\":{\"TriggerNames\":{\"shape\":\"S42\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Triggers\":{\"shape\":\"S44\"},\"TriggersNotFound\":{\"shape\":\"S42\"}}}},\"BatchGetWorkflows\":{\"input\":{\"type\":\"structure\",\"required\":[\"Names\"],\"members\":{\"Names\":{\"shape\":\"S4j\"},\"IncludeGraph\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Workflows\":{\"type\":\"list\",\"member\":{\"shape\":\"S4m\"}},\"MissingWorkflows\":{\"shape\":\"S4j\"}}}},\"BatchStopJobRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\",\"JobRunIds\"],\"members\":{\"JobName\":{},\"JobRunIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuccessfulSubmissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobRunId\":{}}}},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobRunId\":{},\"ErrorDetail\":{\"shape\":\"S13\"}}}}}}},\"BatchUpdatePartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"Entries\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PartitionValueList\",\"PartitionInput\"],\"members\":{\"PartitionValueList\":{\"shape\":\"S5j\"},\"PartitionInput\":{\"shape\":\"S5\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PartitionValueList\":{\"shape\":\"S5j\"},\"ErrorDetail\":{\"shape\":\"S13\"}}}}}}},\"CancelMLTaskRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\",\"TaskRunId\"],\"members\":{\"TransformId\":{},\"TaskRunId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransformId\":{},\"TaskRunId\":{},\"Status\":{}}}},\"CheckSchemaVersionValidity\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataFormat\",\"SchemaDefinition\"],\"members\":{\"DataFormat\":{},\"SchemaDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Valid\":{\"type\":\"boolean\"},\"Error\":{}}}},\"CreateClassifier\":{\"input\":{\"type\":\"structure\",\"members\":{\"GrokClassifier\":{\"type\":\"structure\",\"required\":[\"Classification\",\"Name\",\"GrokPattern\"],\"members\":{\"Classification\":{},\"Name\":{},\"GrokPattern\":{},\"CustomPatterns\":{}}},\"XMLClassifier\":{\"type\":\"structure\",\"required\":[\"Classification\",\"Name\"],\"members\":{\"Classification\":{},\"Name\":{},\"RowTag\":{}}},\"JsonClassifier\":{\"type\":\"structure\",\"required\":[\"Name\",\"JsonPath\"],\"members\":{\"Name\":{},\"JsonPath\":{}}},\"CsvClassifier\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Delimiter\":{},\"QuoteSymbol\":{},\"ContainsHeader\":{},\"Header\":{\"shape\":\"S6a\"},\"DisableValueTrimming\":{\"type\":\"boolean\"},\"AllowSingleColumn\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionInput\"],\"members\":{\"CatalogId\":{},\"ConnectionInput\":{\"shape\":\"S6d\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateCrawler\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Role\",\"Targets\"],\"members\":{\"Name\":{},\"Role\":{},\"DatabaseName\":{},\"Description\":{},\"Targets\":{\"shape\":\"S1u\"},\"Schedule\":{},\"Classifiers\":{\"shape\":\"S2c\"},\"TablePrefix\":{},\"SchemaChangePolicy\":{\"shape\":\"S2f\"},\"RecrawlPolicy\":{\"shape\":\"S2d\"},\"LineageConfiguration\":{\"shape\":\"S2i\"},\"Configuration\":{},\"CrawlerSecurityConfiguration\":{},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseInput\"],\"members\":{\"CatalogId\":{},\"DatabaseInput\":{\"shape\":\"S6r\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDevEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"RoleArn\"],\"members\":{\"EndpointName\":{},\"RoleArn\":{},\"SecurityGroupIds\":{\"shape\":\"S35\"},\"SubnetId\":{},\"PublicKey\":{},\"PublicKeys\":{\"shape\":\"S3b\"},\"NumberOfNodes\":{\"type\":\"integer\"},\"WorkerType\":{},\"GlueVersion\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"ExtraPythonLibsS3Path\":{},\"ExtraJarsS3Path\":{},\"SecurityConfiguration\":{},\"Tags\":{\"shape\":\"S6m\"},\"Arguments\":{\"shape\":\"S3c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"Status\":{},\"SecurityGroupIds\":{\"shape\":\"S35\"},\"SubnetId\":{},\"RoleArn\":{},\"YarnEndpointAddress\":{},\"ZeppelinRemoteSparkInterpreterPort\":{\"type\":\"integer\"},\"NumberOfNodes\":{\"type\":\"integer\"},\"WorkerType\":{},\"GlueVersion\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"ExtraPythonLibsS3Path\":{},\"ExtraJarsS3Path\":{},\"FailureReason\":{},\"SecurityConfiguration\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"Arguments\":{\"shape\":\"S3c\"}}}},\"CreateJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Role\",\"Command\"],\"members\":{\"Name\":{},\"Description\":{},\"LogUri\":{},\"Role\":{},\"ExecutionProperty\":{\"shape\":\"S3k\"},\"Command\":{\"shape\":\"S3m\"},\"DefaultArguments\":{\"shape\":\"S3p\"},\"NonOverridableArguments\":{\"shape\":\"S3p\"},\"Connections\":{\"shape\":\"S3q\"},\"MaxRetries\":{\"type\":\"integer\"},\"AllocatedCapacity\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use MaxCapacity instead.\",\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"double\"},\"SecurityConfiguration\":{},\"Tags\":{\"shape\":\"S6m\"},\"NotificationProperty\":{\"shape\":\"S3u\"},\"GlueVersion\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"WorkerType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"CreateMLTransform\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InputRecordTables\",\"Parameters\",\"Role\"],\"members\":{\"Name\":{},\"Description\":{},\"InputRecordTables\":{\"shape\":\"S76\"},\"Parameters\":{\"shape\":\"S78\"},\"Role\":{},\"GlueVersion\":{},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S6m\"},\"TransformEncryption\":{\"shape\":\"S7d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransformId\":{}}}},\"CreatePartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionInput\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionInput\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreatePartitionIndex\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionIndex\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionIndex\":{\"shape\":\"S7k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateRegistry\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegistryName\"],\"members\":{\"RegistryName\":{},\"Description\":{},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegistryArn\":{},\"RegistryName\":{},\"Description\":{},\"Tags\":{\"shape\":\"S6m\"}}}},\"CreateSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaName\",\"DataFormat\"],\"members\":{\"RegistryId\":{\"shape\":\"S7q\"},\"SchemaName\":{},\"DataFormat\":{},\"Compatibility\":{},\"Description\":{},\"Tags\":{\"shape\":\"S6m\"},\"SchemaDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{},\"SchemaName\":{},\"SchemaArn\":{},\"Description\":{},\"DataFormat\":{},\"Compatibility\":{},\"SchemaCheckpoint\":{\"type\":\"long\"},\"LatestSchemaVersion\":{\"type\":\"long\"},\"NextSchemaVersion\":{\"type\":\"long\"},\"SchemaStatus\":{},\"Tags\":{\"shape\":\"S6m\"},\"SchemaVersionId\":{},\"SchemaVersionStatus\":{}}}},\"CreateScript\":{\"input\":{\"type\":\"structure\",\"members\":{\"DagNodes\":{\"shape\":\"S7x\"},\"DagEdges\":{\"shape\":\"S85\"},\"Language\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PythonScript\":{},\"ScalaCode\":{}}}},\"CreateSecurityConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"EncryptionConfiguration\"],\"members\":{\"Name\":{},\"EncryptionConfiguration\":{\"shape\":\"S8c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"}}}},\"CreateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableInput\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableInput\":{\"shape\":\"S8n\"},\"PartitionIndexes\":{\"type\":\"list\",\"member\":{\"shape\":\"S7k\"}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateTrigger\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\",\"Actions\"],\"members\":{\"Name\":{},\"WorkflowName\":{},\"Type\":{},\"Schedule\":{},\"Predicate\":{\"shape\":\"S4b\"},\"Actions\":{\"shape\":\"S49\"},\"Description\":{},\"StartOnCreation\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"CreateUserDefinedFunction\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"FunctionInput\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"FunctionInput\":{\"shape\":\"S8y\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateWorkflow\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"DefaultRunProperties\":{\"shape\":\"S4n\"},\"Tags\":{\"shape\":\"S6m\"},\"MaxConcurrentRuns\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"DeleteClassifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteColumnStatisticsForPartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionValues\",\"ColumnName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionValues\":{\"shape\":\"S6\"},\"ColumnName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteColumnStatisticsForTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"ColumnName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"ColumnName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionName\"],\"members\":{\"CatalogId\":{},\"ConnectionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCrawler\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CatalogId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDevEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"JobName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobName\":{}}}},\"DeleteMLTransform\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\"],\"members\":{\"TransformId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransformId\":{}}}},\"DeletePartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionValues\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionValues\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePartitionIndex\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"IndexName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"IndexName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRegistry\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegistryId\"],\"members\":{\"RegistryId\":{\"shape\":\"S7q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{},\"Status\":{}}}},\"DeleteResourcePolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"PolicyHashCondition\":{},\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaName\":{},\"Status\":{}}}},\"DeleteSchemaVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\",\"Versions\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"Versions\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaVersionErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VersionNumber\":{\"type\":\"long\"},\"ErrorDetails\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}}}},\"DeleteSecurityConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"Name\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTableVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"VersionId\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"VersionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTrigger\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"DeleteUserDefinedFunction\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"FunctionName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"FunctionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWorkflow\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"GetCatalogImportStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImportStatus\":{\"type\":\"structure\",\"members\":{\"ImportCompleted\":{\"type\":\"boolean\"},\"ImportTime\":{\"type\":\"timestamp\"},\"ImportedBy\":{}}}}}},\"GetClassifier\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Classifier\":{\"shape\":\"Sao\"}}}},\"GetClassifiers\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Classifiers\":{\"type\":\"list\",\"member\":{\"shape\":\"Sao\"}},\"NextToken\":{}}}},\"GetColumnStatisticsForPartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionValues\",\"ColumnNames\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionValues\":{\"shape\":\"S6\"},\"ColumnNames\":{\"shape\":\"Saz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ColumnStatisticsList\":{\"shape\":\"Sb1\"},\"Errors\":{\"shape\":\"Sbj\"}}}},\"GetColumnStatisticsForTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"ColumnNames\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"ColumnNames\":{\"shape\":\"Saz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ColumnStatisticsList\":{\"shape\":\"Sb1\"},\"Errors\":{\"shape\":\"Sbj\"}}}},\"GetConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CatalogId\":{},\"Name\":{},\"HidePassword\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"Sbp\"}}}},\"GetConnections\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{},\"Filter\":{\"type\":\"structure\",\"members\":{\"MatchCriteria\":{\"shape\":\"S6f\"},\"ConnectionType\":{}}},\"HidePassword\":{\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sbp\"}},\"NextToken\":{}}}},\"GetCrawler\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Crawler\":{\"shape\":\"S1s\"}}}},\"GetCrawlerMetrics\":{\"input\":{\"type\":\"structure\",\"members\":{\"CrawlerNameList\":{\"shape\":\"S1p\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrawlerMetricsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CrawlerName\":{},\"TimeLeftSeconds\":{\"type\":\"double\"},\"StillEstimating\":{\"type\":\"boolean\"},\"LastRuntimeSeconds\":{\"type\":\"double\"},\"MedianRuntimeSeconds\":{\"type\":\"double\"},\"TablesCreated\":{\"type\":\"integer\"},\"TablesUpdated\":{\"type\":\"integer\"},\"TablesDeleted\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"GetCrawlers\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Crawlers\":{\"shape\":\"S1r\"},\"NextToken\":{}}}},\"GetDataCatalogEncryptionSettings\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataCatalogEncryptionSettings\":{\"shape\":\"Sc4\"}}}},\"GetDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CatalogId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Database\":{\"shape\":\"Sca\"}}}},\"GetDatabases\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResourceShareType\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DatabaseList\"],\"members\":{\"DatabaseList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sca\"}},\"NextToken\":{}}}},\"GetDataflowGraph\":{\"input\":{\"type\":\"structure\",\"members\":{\"PythonScript\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DagNodes\":{\"shape\":\"S7x\"},\"DagEdges\":{\"shape\":\"S85\"}}}},\"GetDevEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DevEndpoint\":{\"shape\":\"S33\"}}}},\"GetDevEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DevEndpoints\":{\"shape\":\"S32\"},\"NextToken\":{}}}},\"GetJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"JobName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Job\":{\"shape\":\"S3h\"}}}},\"GetJobBookmark\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"JobName\":{},\"RunId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobBookmarkEntry\":{\"shape\":\"Scs\"}}}},\"GetJobRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\",\"RunId\"],\"members\":{\"JobName\":{},\"RunId\":{},\"PredecessorsIncluded\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobRun\":{\"shape\":\"S4z\"}}}},\"GetJobRuns\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"JobName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobRuns\":{\"shape\":\"S4y\"},\"NextToken\":{}}}},\"GetJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"shape\":\"S3g\"},\"NextToken\":{}}}},\"GetMLTaskRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\",\"TaskRunId\"],\"members\":{\"TransformId\":{},\"TaskRunId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransformId\":{},\"TaskRunId\":{},\"Status\":{},\"LogGroupName\":{},\"Properties\":{\"shape\":\"Sd2\"},\"ErrorString\":{},\"StartedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"ExecutionTime\":{\"type\":\"integer\"}}}},\"GetMLTaskRuns\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\"],\"members\":{\"TransformId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filter\":{\"type\":\"structure\",\"members\":{\"TaskRunType\":{},\"Status\":{},\"StartedBefore\":{\"type\":\"timestamp\"},\"StartedAfter\":{\"type\":\"timestamp\"}}},\"Sort\":{\"type\":\"structure\",\"required\":[\"Column\",\"SortDirection\"],\"members\":{\"Column\":{},\"SortDirection\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskRuns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TransformId\":{},\"TaskRunId\":{},\"Status\":{},\"LogGroupName\":{},\"Properties\":{\"shape\":\"Sd2\"},\"ErrorString\":{},\"StartedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"ExecutionTime\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"GetMLTransform\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\"],\"members\":{\"TransformId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransformId\":{},\"Name\":{},\"Description\":{},\"Status\":{},\"CreatedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"InputRecordTables\":{\"shape\":\"S76\"},\"Parameters\":{\"shape\":\"S78\"},\"EvaluationMetrics\":{\"shape\":\"Sdl\"},\"LabelCount\":{\"type\":\"integer\"},\"Schema\":{\"shape\":\"Sds\"},\"Role\":{},\"GlueVersion\":{},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"TransformEncryption\":{\"shape\":\"S7d\"}}}},\"GetMLTransforms\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filter\":{\"shape\":\"Sdv\"},\"Sort\":{\"shape\":\"Sdw\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Transforms\"],\"members\":{\"Transforms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TransformId\":{},\"Name\":{},\"Description\":{},\"Status\":{},\"CreatedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"InputRecordTables\":{\"shape\":\"S76\"},\"Parameters\":{\"shape\":\"S78\"},\"EvaluationMetrics\":{\"shape\":\"Sdl\"},\"LabelCount\":{\"type\":\"integer\"},\"Schema\":{\"shape\":\"Sds\"},\"Role\":{},\"GlueVersion\":{},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"},\"TransformEncryption\":{\"shape\":\"S7d\"}}}},\"NextToken\":{}}}},\"GetMapping\":{\"input\":{\"type\":\"structure\",\"required\":[\"Source\"],\"members\":{\"Source\":{\"shape\":\"Se2\"},\"Sinks\":{\"shape\":\"Se3\"},\"Location\":{\"shape\":\"Se4\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Mapping\"],\"members\":{\"Mapping\":{\"shape\":\"Se6\"}}}},\"GetPartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionValues\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionValues\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Partition\":{\"shape\":\"S40\"}}}},\"GetPartitionIndexes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PartitionIndexDescriptorList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"Keys\",\"IndexStatus\"],\"members\":{\"IndexName\":{},\"Keys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{}}}},\"IndexStatus\":{},\"BackfillErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Partitions\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}}}}}}}},\"NextToken\":{}}}},\"GetPartitions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"Expression\":{},\"NextToken\":{},\"Segment\":{\"type\":\"structure\",\"required\":[\"SegmentNumber\",\"TotalSegments\"],\"members\":{\"SegmentNumber\":{\"type\":\"integer\"},\"TotalSegments\":{\"type\":\"integer\"}}},\"MaxResults\":{\"type\":\"integer\"},\"ExcludeColumnSchema\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Partitions\":{\"shape\":\"S3z\"},\"NextToken\":{}}}},\"GetPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"Mapping\",\"Source\"],\"members\":{\"Mapping\":{\"shape\":\"Se6\"},\"Source\":{\"shape\":\"Se2\"},\"Sinks\":{\"shape\":\"Se3\"},\"Location\":{\"shape\":\"Se4\"},\"Language\":{},\"AdditionalPlanOptionsMap\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PythonScript\":{},\"ScalaCode\":{}}}},\"GetRegistry\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegistryId\"],\"members\":{\"RegistryId\":{\"shape\":\"S7q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{},\"Description\":{},\"Status\":{},\"CreatedTime\":{},\"UpdatedTime\":{}}}},\"GetResourcePolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GetResourcePoliciesResponseList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyInJson\":{},\"PolicyHash\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"UpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetResourcePolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyInJson\":{},\"PolicyHash\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"UpdateTime\":{\"type\":\"timestamp\"}}}},\"GetSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{},\"SchemaName\":{},\"SchemaArn\":{},\"Description\":{},\"DataFormat\":{},\"Compatibility\":{},\"SchemaCheckpoint\":{\"type\":\"long\"},\"LatestSchemaVersion\":{\"type\":\"long\"},\"NextSchemaVersion\":{\"type\":\"long\"},\"SchemaStatus\":{},\"CreatedTime\":{},\"UpdatedTime\":{}}}},\"GetSchemaByDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\",\"SchemaDefinition\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaVersionId\":{},\"SchemaArn\":{},\"DataFormat\":{},\"Status\":{},\"CreatedTime\":{}}}},\"GetSchemaVersion\":{\"input\":{\"type\":\"structure\",\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaVersionId\":{},\"SchemaVersionNumber\":{\"shape\":\"Sfd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaVersionId\":{},\"SchemaDefinition\":{},\"DataFormat\":{},\"SchemaArn\":{},\"VersionNumber\":{\"type\":\"long\"},\"Status\":{},\"CreatedTime\":{}}}},\"GetSchemaVersionsDiff\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\",\"FirstSchemaVersionNumber\",\"SecondSchemaVersionNumber\",\"SchemaDiffType\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"FirstSchemaVersionNumber\":{\"shape\":\"Sfd\"},\"SecondSchemaVersionNumber\":{\"shape\":\"Sfd\"},\"SchemaDiffType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Diff\":{}}}},\"GetSecurityConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityConfiguration\":{\"shape\":\"Sfm\"}}}},\"GetSecurityConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"Sfm\"}},\"NextToken\":{}}}},\"GetTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"Name\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"Sfs\"}}}},\"GetTableVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"VersionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableVersion\":{\"shape\":\"Sfv\"}}}},\"GetTableVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableVersions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sfv\"}},\"NextToken\":{}}}},\"GetTables\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Expression\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TableList\":{\"shape\":\"Sg2\"},\"NextToken\":{}}}},\"GetTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6m\"}}}},\"GetTrigger\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Trigger\":{\"shape\":\"S45\"}}}},\"GetTriggers\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DependentJobName\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Triggers\":{\"shape\":\"S44\"},\"NextToken\":{}}}},\"GetUserDefinedFunction\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"FunctionName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"FunctionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserDefinedFunction\":{\"shape\":\"Sgb\"}}}},\"GetUserDefinedFunctions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Pattern\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Pattern\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserDefinedFunctions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sgb\"}},\"NextToken\":{}}}},\"GetWorkflow\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"IncludeGraph\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Workflow\":{\"shape\":\"S4m\"}}}},\"GetWorkflowRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\"],\"members\":{\"Name\":{},\"RunId\":{},\"IncludeGraph\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Run\":{\"shape\":\"S4o\"}}}},\"GetWorkflowRunProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\"],\"members\":{\"Name\":{},\"RunId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RunProperties\":{\"shape\":\"S4n\"}}}},\"GetWorkflowRuns\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"IncludeGraph\":{\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Runs\":{\"type\":\"list\",\"member\":{\"shape\":\"S4o\"}},\"NextToken\":{}}}},\"ImportCatalogToGlue\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListCrawlers\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CrawlerNames\":{\"shape\":\"S1p\"},\"NextToken\":{}}}},\"ListDevEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DevEndpointNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobNames\":{\"shape\":\"S3e\"},\"NextToken\":{}}}},\"ListMLTransforms\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filter\":{\"shape\":\"Sdv\"},\"Sort\":{\"shape\":\"Sdw\"},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TransformIds\"],\"members\":{\"TransformIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListRegistries\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Registries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{},\"Description\":{},\"Status\":{},\"CreatedTime\":{},\"UpdatedTime\":{}}}},\"NextToken\":{}}}},\"ListSchemaVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Schemas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaVersionId\":{},\"VersionNumber\":{\"type\":\"long\"},\"Status\":{},\"CreatedTime\":{}}}},\"NextToken\":{}}}},\"ListSchemas\":{\"input\":{\"type\":\"structure\",\"members\":{\"RegistryId\":{\"shape\":\"S7q\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Schemas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"SchemaName\":{},\"SchemaArn\":{},\"Description\":{},\"SchemaStatus\":{},\"CreatedTime\":{},\"UpdatedTime\":{}}}},\"NextToken\":{}}}},\"ListTriggers\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DependentJobName\":{},\"MaxResults\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TriggerNames\":{\"shape\":\"S42\"},\"NextToken\":{}}}},\"ListWorkflows\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Workflows\":{\"shape\":\"S4j\"},\"NextToken\":{}}}},\"PutDataCatalogEncryptionSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataCatalogEncryptionSettings\"],\"members\":{\"CatalogId\":{},\"DataCatalogEncryptionSettings\":{\"shape\":\"Sc4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyInJson\"],\"members\":{\"PolicyInJson\":{},\"ResourceArn\":{},\"PolicyHashCondition\":{},\"PolicyExistsCondition\":{},\"EnableHybrid\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyHash\":{}}}},\"PutSchemaVersionMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"MetadataKeyValue\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaVersionNumber\":{\"shape\":\"Sfd\"},\"SchemaVersionId\":{},\"MetadataKeyValue\":{\"shape\":\"Shp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaName\":{},\"RegistryName\":{},\"LatestVersion\":{\"type\":\"boolean\"},\"VersionNumber\":{\"type\":\"long\"},\"SchemaVersionId\":{},\"MetadataKey\":{},\"MetadataValue\":{}}}},\"PutWorkflowRunProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\",\"RunProperties\"],\"members\":{\"Name\":{},\"RunId\":{},\"RunProperties\":{\"shape\":\"S4n\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"QuerySchemaVersionMetadata\":{\"input\":{\"type\":\"structure\",\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaVersionNumber\":{\"shape\":\"Sfd\"},\"SchemaVersionId\":{},\"MetadataList\":{\"type\":\"list\",\"member\":{\"shape\":\"Shp\"}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MetadataInfoMap\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"MetadataValue\":{},\"CreatedTime\":{},\"OtherMetadataValueList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetadataValue\":{},\"CreatedTime\":{}}}}}}},\"SchemaVersionId\":{},\"NextToken\":{}}}},\"RegisterSchemaVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\",\"SchemaDefinition\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaDefinition\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaVersionId\":{},\"VersionNumber\":{\"type\":\"long\"},\"Status\":{}}}},\"RemoveSchemaVersionMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"MetadataKeyValue\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaVersionNumber\":{\"shape\":\"Sfd\"},\"SchemaVersionId\":{},\"MetadataKeyValue\":{\"shape\":\"Shp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaName\":{},\"RegistryName\":{},\"LatestVersion\":{\"type\":\"boolean\"},\"VersionNumber\":{\"type\":\"long\"},\"SchemaVersionId\":{},\"MetadataKey\":{},\"MetadataValue\":{}}}},\"ResetJobBookmark\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"JobName\":{},\"RunId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobBookmarkEntry\":{\"shape\":\"Scs\"}}}},\"ResumeWorkflowRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\",\"NodeIds\"],\"members\":{\"Name\":{},\"RunId\":{},\"NodeIds\":{\"shape\":\"Sia\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RunId\":{},\"NodeIds\":{\"shape\":\"Sia\"}}}},\"SearchTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{},\"NextToken\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Comparator\":{}}}},\"SearchText\":{},\"SortCriteria\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FieldName\":{},\"Sort\":{}}}},\"MaxResults\":{\"type\":\"integer\"},\"ResourceShareType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"TableList\":{\"shape\":\"Sg2\"}}}},\"StartCrawler\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartCrawlerSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"CrawlerName\"],\"members\":{\"CrawlerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartExportLabelsTaskRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\",\"OutputS3Path\"],\"members\":{\"TransformId\":{},\"OutputS3Path\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskRunId\":{}}}},\"StartImportLabelsTaskRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\",\"InputS3Path\"],\"members\":{\"TransformId\":{},\"InputS3Path\":{},\"ReplaceAllLabels\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskRunId\":{}}}},\"StartJobRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\"],\"members\":{\"JobName\":{},\"JobRunId\":{},\"Arguments\":{\"shape\":\"S3p\"},\"AllocatedCapacity\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use MaxCapacity instead.\",\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"double\"},\"SecurityConfiguration\":{},\"NotificationProperty\":{\"shape\":\"S3u\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobRunId\":{}}}},\"StartMLEvaluationTaskRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\"],\"members\":{\"TransformId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskRunId\":{}}}},\"StartMLLabelingSetGenerationTaskRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\",\"OutputS3Path\"],\"members\":{\"TransformId\":{},\"OutputS3Path\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TaskRunId\":{}}}},\"StartTrigger\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"StartWorkflowRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RunId\":{}}}},\"StopCrawler\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopCrawlerSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"CrawlerName\"],\"members\":{\"CrawlerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopTrigger\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"StopWorkflowRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RunId\"],\"members\":{\"Name\":{},\"RunId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagsToAdd\"],\"members\":{\"ResourceArn\":{},\"TagsToAdd\":{\"shape\":\"S6m\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagsToRemove\"],\"members\":{\"ResourceArn\":{},\"TagsToRemove\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateClassifier\":{\"input\":{\"type\":\"structure\",\"members\":{\"GrokClassifier\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Classification\":{},\"GrokPattern\":{},\"CustomPatterns\":{}}},\"XMLClassifier\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Classification\":{},\"RowTag\":{}}},\"JsonClassifier\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"JsonPath\":{}}},\"CsvClassifier\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Delimiter\":{},\"QuoteSymbol\":{},\"ContainsHeader\":{},\"Header\":{\"shape\":\"S6a\"},\"DisableValueTrimming\":{\"type\":\"boolean\"},\"AllowSingleColumn\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateColumnStatisticsForPartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionValues\",\"ColumnStatisticsList\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionValues\":{\"shape\":\"S6\"},\"ColumnStatisticsList\":{\"shape\":\"Sjm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"shape\":\"Sjo\"}}}},\"UpdateColumnStatisticsForTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"ColumnStatisticsList\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"ColumnStatisticsList\":{\"shape\":\"Sjm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Errors\":{\"shape\":\"Sjo\"}}}},\"UpdateConnection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ConnectionInput\"],\"members\":{\"CatalogId\":{},\"Name\":{},\"ConnectionInput\":{\"shape\":\"S6d\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCrawler\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Role\":{},\"DatabaseName\":{},\"Description\":{},\"Targets\":{\"shape\":\"S1u\"},\"Schedule\":{},\"Classifiers\":{\"shape\":\"S2c\"},\"TablePrefix\":{},\"SchemaChangePolicy\":{\"shape\":\"S2f\"},\"RecrawlPolicy\":{\"shape\":\"S2d\"},\"LineageConfiguration\":{\"shape\":\"S2i\"},\"Configuration\":{},\"CrawlerSecurityConfiguration\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCrawlerSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"CrawlerName\"],\"members\":{\"CrawlerName\":{},\"Schedule\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"DatabaseInput\"],\"members\":{\"CatalogId\":{},\"Name\":{},\"DatabaseInput\":{\"shape\":\"S6r\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDevEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{},\"PublicKey\":{},\"AddPublicKeys\":{\"shape\":\"S3b\"},\"DeletePublicKeys\":{\"shape\":\"S3b\"},\"CustomLibraries\":{\"type\":\"structure\",\"members\":{\"ExtraPythonLibsS3Path\":{},\"ExtraJarsS3Path\":{}}},\"UpdateEtlLibraries\":{\"type\":\"boolean\"},\"DeleteArguments\":{\"shape\":\"S35\"},\"AddArguments\":{\"shape\":\"S3c\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobName\",\"JobUpdate\"],\"members\":{\"JobName\":{},\"JobUpdate\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"LogUri\":{},\"Role\":{},\"ExecutionProperty\":{\"shape\":\"S3k\"},\"Command\":{\"shape\":\"S3m\"},\"DefaultArguments\":{\"shape\":\"S3p\"},\"NonOverridableArguments\":{\"shape\":\"S3p\"},\"Connections\":{\"shape\":\"S3q\"},\"MaxRetries\":{\"type\":\"integer\"},\"AllocatedCapacity\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use MaxCapacity instead.\",\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"SecurityConfiguration\":{},\"NotificationProperty\":{\"shape\":\"S3u\"},\"GlueVersion\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobName\":{}}}},\"UpdateMLTransform\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformId\"],\"members\":{\"TransformId\":{},\"Name\":{},\"Description\":{},\"Parameters\":{\"shape\":\"S78\"},\"Role\":{},\"GlueVersion\":{},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxRetries\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransformId\":{}}}},\"UpdatePartition\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"PartitionValueList\",\"PartitionInput\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableName\":{},\"PartitionValueList\":{\"shape\":\"S5j\"},\"PartitionInput\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRegistry\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegistryId\",\"Description\"],\"members\":{\"RegistryId\":{\"shape\":\"S7q\"},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{}}}},\"UpdateSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"SchemaId\"],\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaVersionNumber\":{\"shape\":\"Sfd\"},\"Compatibility\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaName\":{},\"RegistryName\":{}}}},\"UpdateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableInput\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"TableInput\":{\"shape\":\"S8n\"},\"SkipArchive\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateTrigger\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"TriggerUpdate\"],\"members\":{\"Name\":{},\"TriggerUpdate\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"Schedule\":{},\"Actions\":{\"shape\":\"S49\"},\"Predicate\":{\"shape\":\"S4b\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Trigger\":{\"shape\":\"S45\"}}}},\"UpdateUserDefinedFunction\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"FunctionName\",\"FunctionInput\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"FunctionName\":{},\"FunctionInput\":{\"shape\":\"S8y\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateWorkflow\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"DefaultRunProperties\":{\"shape\":\"S4n\"},\"MaxConcurrentRuns\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"Values\":{\"shape\":\"S6\"},\"LastAccessTime\":{\"type\":\"timestamp\"},\"StorageDescriptor\":{\"shape\":\"S9\"},\"Parameters\":{\"shape\":\"Se\"},\"LastAnalyzedTime\":{\"type\":\"timestamp\"}}},\"S6\":{\"type\":\"list\",\"member\":{}},\"S9\":{\"type\":\"structure\",\"members\":{\"Columns\":{\"shape\":\"Sa\"},\"Location\":{},\"InputFormat\":{},\"OutputFormat\":{},\"Compressed\":{\"type\":\"boolean\"},\"NumberOfBuckets\":{\"type\":\"integer\"},\"SerdeInfo\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"SerializationLibrary\":{},\"Parameters\":{\"shape\":\"Se\"}}},\"BucketColumns\":{\"shape\":\"Sm\"},\"SortColumns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Column\",\"SortOrder\"],\"members\":{\"Column\":{},\"SortOrder\":{\"type\":\"integer\"}}}},\"Parameters\":{\"shape\":\"Se\"},\"SkewedInfo\":{\"type\":\"structure\",\"members\":{\"SkewedColumnNames\":{\"shape\":\"Sm\"},\"SkewedColumnValues\":{\"type\":\"list\",\"member\":{}},\"SkewedColumnValueLocationMaps\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"StoredAsSubDirectories\":{\"type\":\"boolean\"},\"SchemaReference\":{\"type\":\"structure\",\"members\":{\"SchemaId\":{\"shape\":\"Sv\"},\"SchemaVersionId\":{},\"SchemaVersionNumber\":{\"type\":\"long\"}}}}},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Type\":{},\"Comment\":{},\"Parameters\":{\"shape\":\"Se\"}}}},\"Se\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sm\":{\"type\":\"list\",\"member\":{}},\"Sv\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaName\":{},\"RegistryName\":{}}},\"S11\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PartitionValues\":{\"shape\":\"S6\"},\"ErrorDetail\":{\"shape\":\"S13\"}}}},\"S13\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"Values\"],\"members\":{\"Values\":{\"shape\":\"S6\"}}},\"S1p\":{\"type\":\"list\",\"member\":{}},\"S1r\":{\"type\":\"list\",\"member\":{\"shape\":\"S1s\"}},\"S1s\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Role\":{},\"Targets\":{\"shape\":\"S1u\"},\"DatabaseName\":{},\"Description\":{},\"Classifiers\":{\"shape\":\"S2c\"},\"RecrawlPolicy\":{\"shape\":\"S2d\"},\"SchemaChangePolicy\":{\"shape\":\"S2f\"},\"LineageConfiguration\":{\"shape\":\"S2i\"},\"State\":{},\"TablePrefix\":{},\"Schedule\":{\"type\":\"structure\",\"members\":{\"ScheduleExpression\":{},\"State\":{}}},\"CrawlElapsedTime\":{\"type\":\"long\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdated\":{\"type\":\"timestamp\"},\"LastCrawl\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"ErrorMessage\":{},\"LogGroup\":{},\"LogStream\":{},\"MessagePrefix\":{},\"StartTime\":{\"type\":\"timestamp\"}}},\"Version\":{\"type\":\"long\"},\"Configuration\":{},\"CrawlerSecurityConfiguration\":{}}},\"S1u\":{\"type\":\"structure\",\"members\":{\"S3Targets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"Exclusions\":{\"shape\":\"S1y\"},\"ConnectionName\":{}}}},\"JdbcTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConnectionName\":{},\"Path\":{},\"Exclusions\":{\"shape\":\"S1y\"}}}},\"MongoDBTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConnectionName\":{},\"Path\":{},\"ScanAll\":{\"type\":\"boolean\"}}}},\"DynamoDBTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"scanAll\":{\"type\":\"boolean\"},\"scanRate\":{\"type\":\"double\"}}}},\"CatalogTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"Tables\"],\"members\":{\"DatabaseName\":{},\"Tables\":{\"type\":\"list\",\"member\":{}}}}}}},\"S1y\":{\"type\":\"list\",\"member\":{}},\"S2c\":{\"type\":\"list\",\"member\":{}},\"S2d\":{\"type\":\"structure\",\"members\":{\"RecrawlBehavior\":{}}},\"S2f\":{\"type\":\"structure\",\"members\":{\"UpdateBehavior\":{},\"DeleteBehavior\":{}}},\"S2i\":{\"type\":\"structure\",\"members\":{\"CrawlerLineageSettings\":{}}},\"S2z\":{\"type\":\"list\",\"member\":{}},\"S32\":{\"type\":\"list\",\"member\":{\"shape\":\"S33\"}},\"S33\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"RoleArn\":{},\"SecurityGroupIds\":{\"shape\":\"S35\"},\"SubnetId\":{},\"YarnEndpointAddress\":{},\"PrivateAddress\":{},\"ZeppelinRemoteSparkInterpreterPort\":{\"type\":\"integer\"},\"PublicAddress\":{},\"Status\":{},\"WorkerType\":{},\"GlueVersion\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"NumberOfNodes\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"ExtraPythonLibsS3Path\":{},\"ExtraJarsS3Path\":{},\"FailureReason\":{},\"LastUpdateStatus\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastModifiedTimestamp\":{\"type\":\"timestamp\"},\"PublicKey\":{},\"PublicKeys\":{\"shape\":\"S3b\"},\"SecurityConfiguration\":{},\"Arguments\":{\"shape\":\"S3c\"}}},\"S35\":{\"type\":\"list\",\"member\":{}},\"S3b\":{\"type\":\"list\",\"member\":{}},\"S3c\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S3e\":{\"type\":\"list\",\"member\":{}},\"S3g\":{\"type\":\"list\",\"member\":{\"shape\":\"S3h\"}},\"S3h\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"LogUri\":{},\"Role\":{},\"CreatedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"ExecutionProperty\":{\"shape\":\"S3k\"},\"Command\":{\"shape\":\"S3m\"},\"DefaultArguments\":{\"shape\":\"S3p\"},\"NonOverridableArguments\":{\"shape\":\"S3p\"},\"Connections\":{\"shape\":\"S3q\"},\"MaxRetries\":{\"type\":\"integer\"},\"AllocatedCapacity\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use MaxCapacity instead.\",\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"SecurityConfiguration\":{},\"NotificationProperty\":{\"shape\":\"S3u\"},\"GlueVersion\":{}}},\"S3k\":{\"type\":\"structure\",\"members\":{\"MaxConcurrentRuns\":{\"type\":\"integer\"}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ScriptLocation\":{},\"PythonVersion\":{}}},\"S3p\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S3q\":{\"type\":\"structure\",\"members\":{\"Connections\":{\"type\":\"list\",\"member\":{}}}},\"S3u\":{\"type\":\"structure\",\"members\":{\"NotifyDelayAfter\":{\"type\":\"integer\"}}},\"S3x\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}},\"S3z\":{\"type\":\"list\",\"member\":{\"shape\":\"S40\"}},\"S40\":{\"type\":\"structure\",\"members\":{\"Values\":{\"shape\":\"S6\"},\"DatabaseName\":{},\"TableName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastAccessTime\":{\"type\":\"timestamp\"},\"StorageDescriptor\":{\"shape\":\"S9\"},\"Parameters\":{\"shape\":\"Se\"},\"LastAnalyzedTime\":{\"type\":\"timestamp\"},\"CatalogId\":{}}},\"S42\":{\"type\":\"list\",\"member\":{}},\"S44\":{\"type\":\"list\",\"member\":{\"shape\":\"S45\"}},\"S45\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"WorkflowName\":{},\"Id\":{},\"Type\":{},\"State\":{},\"Description\":{},\"Schedule\":{},\"Actions\":{\"shape\":\"S49\"},\"Predicate\":{\"shape\":\"S4b\"}}},\"S49\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"Arguments\":{\"shape\":\"S3p\"},\"Timeout\":{\"type\":\"integer\"},\"SecurityConfiguration\":{},\"NotificationProperty\":{\"shape\":\"S3u\"},\"CrawlerName\":{}}}},\"S4b\":{\"type\":\"structure\",\"members\":{\"Logical\":{},\"Conditions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LogicalOperator\":{},\"JobName\":{},\"State\":{},\"CrawlerName\":{},\"CrawlState\":{}}}}}},\"S4j\":{\"type\":\"list\",\"member\":{}},\"S4m\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"DefaultRunProperties\":{\"shape\":\"S4n\"},\"CreatedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"LastRun\":{\"shape\":\"S4o\"},\"Graph\":{\"shape\":\"S4s\"},\"MaxConcurrentRuns\":{\"type\":\"integer\"}}},\"S4n\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S4o\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"WorkflowRunId\":{},\"PreviousRunId\":{},\"WorkflowRunProperties\":{\"shape\":\"S4n\"},\"StartedOn\":{\"type\":\"timestamp\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"Status\":{},\"ErrorMessage\":{},\"Statistics\":{\"type\":\"structure\",\"members\":{\"TotalActions\":{\"type\":\"integer\"},\"TimeoutActions\":{\"type\":\"integer\"},\"FailedActions\":{\"type\":\"integer\"},\"StoppedActions\":{\"type\":\"integer\"},\"SucceededActions\":{\"type\":\"integer\"},\"RunningActions\":{\"type\":\"integer\"}}},\"Graph\":{\"shape\":\"S4s\"}}},\"S4s\":{\"type\":\"structure\",\"members\":{\"Nodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Name\":{},\"UniqueId\":{},\"TriggerDetails\":{\"type\":\"structure\",\"members\":{\"Trigger\":{\"shape\":\"S45\"}}},\"JobDetails\":{\"type\":\"structure\",\"members\":{\"JobRuns\":{\"shape\":\"S4y\"}}},\"CrawlerDetails\":{\"type\":\"structure\",\"members\":{\"Crawls\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StartedOn\":{\"type\":\"timestamp\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"ErrorMessage\":{},\"LogGroup\":{},\"LogStream\":{}}}}}}}}},\"Edges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceId\":{},\"DestinationId\":{}}}}}},\"S4y\":{\"type\":\"list\",\"member\":{\"shape\":\"S4z\"}},\"S4z\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Attempt\":{\"type\":\"integer\"},\"PreviousRunId\":{},\"TriggerName\":{},\"JobName\":{},\"StartedOn\":{\"type\":\"timestamp\"},\"LastModifiedOn\":{\"type\":\"timestamp\"},\"CompletedOn\":{\"type\":\"timestamp\"},\"JobRunState\":{},\"Arguments\":{\"shape\":\"S3p\"},\"ErrorMessage\":{},\"PredecessorRuns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"RunId\":{}}}},\"AllocatedCapacity\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use MaxCapacity instead.\",\"type\":\"integer\"},\"ExecutionTime\":{\"type\":\"integer\"},\"Timeout\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"double\"},\"WorkerType\":{},\"NumberOfWorkers\":{\"type\":\"integer\"},\"SecurityConfiguration\":{},\"LogGroupName\":{},\"NotificationProperty\":{\"shape\":\"S3u\"},\"GlueVersion\":{}}},\"S5j\":{\"type\":\"list\",\"member\":{}},\"S6a\":{\"type\":\"list\",\"member\":{}},\"S6d\":{\"type\":\"structure\",\"required\":[\"Name\",\"ConnectionType\",\"ConnectionProperties\"],\"members\":{\"Name\":{},\"Description\":{},\"ConnectionType\":{},\"MatchCriteria\":{\"shape\":\"S6f\"},\"ConnectionProperties\":{\"shape\":\"S6g\"},\"PhysicalConnectionRequirements\":{\"shape\":\"S6i\"}}},\"S6f\":{\"type\":\"list\",\"member\":{}},\"S6g\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S6i\":{\"type\":\"structure\",\"members\":{\"SubnetId\":{},\"SecurityGroupIdList\":{\"type\":\"list\",\"member\":{}},\"AvailabilityZone\":{}}},\"S6m\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S6r\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"LocationUri\":{},\"Parameters\":{\"shape\":\"Se\"},\"CreateTableDefaultPermissions\":{\"shape\":\"S6t\"},\"TargetDatabase\":{\"shape\":\"S6z\"}}},\"S6t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Principal\":{\"type\":\"structure\",\"members\":{\"DataLakePrincipalIdentifier\":{}}},\"Permissions\":{\"type\":\"list\",\"member\":{}}}}},\"S6z\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{},\"DatabaseName\":{}}},\"S76\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"DatabaseName\":{},\"TableName\":{},\"CatalogId\":{},\"ConnectionName\":{}}}},\"S78\":{\"type\":\"structure\",\"required\":[\"TransformType\"],\"members\":{\"TransformType\":{},\"FindMatchesParameters\":{\"type\":\"structure\",\"members\":{\"PrimaryKeyColumnName\":{},\"PrecisionRecallTradeoff\":{\"type\":\"double\"},\"AccuracyCostTradeoff\":{\"type\":\"double\"},\"EnforceProvidedLabels\":{\"type\":\"boolean\"}}}}},\"S7d\":{\"type\":\"structure\",\"members\":{\"MlUserDataEncryption\":{\"type\":\"structure\",\"required\":[\"MlUserDataEncryptionMode\"],\"members\":{\"MlUserDataEncryptionMode\":{},\"KmsKeyId\":{}}},\"TaskRunSecurityConfigurationName\":{}}},\"S7k\":{\"type\":\"structure\",\"required\":[\"Keys\",\"IndexName\"],\"members\":{\"Keys\":{\"type\":\"list\",\"member\":{}},\"IndexName\":{}}},\"S7q\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"RegistryArn\":{}}},\"S7x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"NodeType\",\"Args\"],\"members\":{\"Id\":{},\"NodeType\":{},\"Args\":{\"shape\":\"S81\"},\"LineNumber\":{\"type\":\"integer\"}}}},\"S81\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{},\"Param\":{\"type\":\"boolean\"}}}},\"S85\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Source\",\"Target\"],\"members\":{\"Source\":{},\"Target\":{},\"TargetParameter\":{}}}},\"S8c\":{\"type\":\"structure\",\"members\":{\"S3Encryption\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"S3EncryptionMode\":{},\"KmsKeyArn\":{}}}},\"CloudWatchEncryption\":{\"type\":\"structure\",\"members\":{\"CloudWatchEncryptionMode\":{},\"KmsKeyArn\":{}}},\"JobBookmarksEncryption\":{\"type\":\"structure\",\"members\":{\"JobBookmarksEncryptionMode\":{},\"KmsKeyArn\":{}}}}},\"S8n\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"Owner\":{},\"LastAccessTime\":{\"type\":\"timestamp\"},\"LastAnalyzedTime\":{\"type\":\"timestamp\"},\"Retention\":{\"type\":\"integer\"},\"StorageDescriptor\":{\"shape\":\"S9\"},\"PartitionKeys\":{\"shape\":\"Sa\"},\"ViewOriginalText\":{},\"ViewExpandedText\":{},\"TableType\":{},\"Parameters\":{\"shape\":\"Se\"},\"TargetTable\":{\"shape\":\"S8r\"}}},\"S8r\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Name\":{}}},\"S8y\":{\"type\":\"structure\",\"members\":{\"FunctionName\":{},\"ClassName\":{},\"OwnerName\":{},\"OwnerType\":{},\"ResourceUris\":{\"shape\":\"S90\"}}},\"S90\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"Uri\":{}}}},\"Sao\":{\"type\":\"structure\",\"members\":{\"GrokClassifier\":{\"type\":\"structure\",\"required\":[\"Name\",\"Classification\",\"GrokPattern\"],\"members\":{\"Name\":{},\"Classification\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdated\":{\"type\":\"timestamp\"},\"Version\":{\"type\":\"long\"},\"GrokPattern\":{},\"CustomPatterns\":{}}},\"XMLClassifier\":{\"type\":\"structure\",\"required\":[\"Name\",\"Classification\"],\"members\":{\"Name\":{},\"Classification\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdated\":{\"type\":\"timestamp\"},\"Version\":{\"type\":\"long\"},\"RowTag\":{}}},\"JsonClassifier\":{\"type\":\"structure\",\"required\":[\"Name\",\"JsonPath\"],\"members\":{\"Name\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdated\":{\"type\":\"timestamp\"},\"Version\":{\"type\":\"long\"},\"JsonPath\":{}}},\"CsvClassifier\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdated\":{\"type\":\"timestamp\"},\"Version\":{\"type\":\"long\"},\"Delimiter\":{},\"QuoteSymbol\":{},\"ContainsHeader\":{},\"Header\":{\"shape\":\"S6a\"},\"DisableValueTrimming\":{\"type\":\"boolean\"},\"AllowSingleColumn\":{\"type\":\"boolean\"}}}}},\"Saz\":{\"type\":\"list\",\"member\":{}},\"Sb1\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb2\"}},\"Sb2\":{\"type\":\"structure\",\"required\":[\"ColumnName\",\"ColumnType\",\"AnalyzedTime\",\"StatisticsData\"],\"members\":{\"ColumnName\":{},\"ColumnType\":{},\"AnalyzedTime\":{\"type\":\"timestamp\"},\"StatisticsData\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"BooleanColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"NumberOfTrues\",\"NumberOfFalses\",\"NumberOfNulls\"],\"members\":{\"NumberOfTrues\":{\"type\":\"long\"},\"NumberOfFalses\":{\"type\":\"long\"},\"NumberOfNulls\":{\"type\":\"long\"}}},\"DateColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"NumberOfNulls\",\"NumberOfDistinctValues\"],\"members\":{\"MinimumValue\":{\"type\":\"timestamp\"},\"MaximumValue\":{\"type\":\"timestamp\"},\"NumberOfNulls\":{\"type\":\"long\"},\"NumberOfDistinctValues\":{\"type\":\"long\"}}},\"DecimalColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"NumberOfNulls\",\"NumberOfDistinctValues\"],\"members\":{\"MinimumValue\":{\"shape\":\"Sba\"},\"MaximumValue\":{\"shape\":\"Sba\"},\"NumberOfNulls\":{\"type\":\"long\"},\"NumberOfDistinctValues\":{\"type\":\"long\"}}},\"DoubleColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"NumberOfNulls\",\"NumberOfDistinctValues\"],\"members\":{\"MinimumValue\":{\"type\":\"double\"},\"MaximumValue\":{\"type\":\"double\"},\"NumberOfNulls\":{\"type\":\"long\"},\"NumberOfDistinctValues\":{\"type\":\"long\"}}},\"LongColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"NumberOfNulls\",\"NumberOfDistinctValues\"],\"members\":{\"MinimumValue\":{\"type\":\"long\"},\"MaximumValue\":{\"type\":\"long\"},\"NumberOfNulls\":{\"type\":\"long\"},\"NumberOfDistinctValues\":{\"type\":\"long\"}}},\"StringColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"MaximumLength\",\"AverageLength\",\"NumberOfNulls\",\"NumberOfDistinctValues\"],\"members\":{\"MaximumLength\":{\"type\":\"long\"},\"AverageLength\":{\"type\":\"double\"},\"NumberOfNulls\":{\"type\":\"long\"},\"NumberOfDistinctValues\":{\"type\":\"long\"}}},\"BinaryColumnStatisticsData\":{\"type\":\"structure\",\"required\":[\"MaximumLength\",\"AverageLength\",\"NumberOfNulls\"],\"members\":{\"MaximumLength\":{\"type\":\"long\"},\"AverageLength\":{\"type\":\"double\"},\"NumberOfNulls\":{\"type\":\"long\"}}}}}}},\"Sba\":{\"type\":\"structure\",\"required\":[\"UnscaledValue\",\"Scale\"],\"members\":{\"UnscaledValue\":{\"type\":\"blob\"},\"Scale\":{\"type\":\"integer\"}}},\"Sbj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ColumnName\":{},\"Error\":{\"shape\":\"S13\"}}}},\"Sbp\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"ConnectionType\":{},\"MatchCriteria\":{\"shape\":\"S6f\"},\"ConnectionProperties\":{\"shape\":\"S6g\"},\"PhysicalConnectionRequirements\":{\"shape\":\"S6i\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedBy\":{}}},\"Sc4\":{\"type\":\"structure\",\"members\":{\"EncryptionAtRest\":{\"type\":\"structure\",\"required\":[\"CatalogEncryptionMode\"],\"members\":{\"CatalogEncryptionMode\":{},\"SseAwsKmsKeyId\":{}}},\"ConnectionPasswordEncryption\":{\"type\":\"structure\",\"required\":[\"ReturnConnectionPasswordEncrypted\"],\"members\":{\"ReturnConnectionPasswordEncrypted\":{\"type\":\"boolean\"},\"AwsKmsKeyId\":{}}}}},\"Sca\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"LocationUri\":{},\"Parameters\":{\"shape\":\"Se\"},\"CreateTime\":{\"type\":\"timestamp\"},\"CreateTableDefaultPermissions\":{\"shape\":\"S6t\"},\"TargetDatabase\":{\"shape\":\"S6z\"},\"CatalogId\":{}}},\"Scs\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"Version\":{\"type\":\"integer\"},\"Run\":{\"type\":\"integer\"},\"Attempt\":{\"type\":\"integer\"},\"PreviousRunId\":{},\"RunId\":{},\"JobBookmark\":{}}},\"Sd2\":{\"type\":\"structure\",\"members\":{\"TaskType\":{},\"ImportLabelsTaskRunProperties\":{\"type\":\"structure\",\"members\":{\"InputS3Path\":{},\"Replace\":{\"type\":\"boolean\"}}},\"ExportLabelsTaskRunProperties\":{\"type\":\"structure\",\"members\":{\"OutputS3Path\":{}}},\"LabelingSetGenerationTaskRunProperties\":{\"type\":\"structure\",\"members\":{\"OutputS3Path\":{}}},\"FindMatchesTaskRunProperties\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobRunId\":{}}}}},\"Sdl\":{\"type\":\"structure\",\"required\":[\"TransformType\"],\"members\":{\"TransformType\":{},\"FindMatchesMetrics\":{\"type\":\"structure\",\"members\":{\"AreaUnderPRCurve\":{\"type\":\"double\"},\"Precision\":{\"type\":\"double\"},\"Recall\":{\"type\":\"double\"},\"F1\":{\"type\":\"double\"},\"ConfusionMatrix\":{\"type\":\"structure\",\"members\":{\"NumTruePositives\":{\"type\":\"long\"},\"NumFalsePositives\":{\"type\":\"long\"},\"NumTrueNegatives\":{\"type\":\"long\"},\"NumFalseNegatives\":{\"type\":\"long\"}}},\"ColumnImportances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ColumnName\":{},\"Importance\":{\"type\":\"double\"}}}}}}}},\"Sds\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DataType\":{}}}},\"Sdv\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"TransformType\":{},\"Status\":{},\"GlueVersion\":{},\"CreatedBefore\":{\"type\":\"timestamp\"},\"CreatedAfter\":{\"type\":\"timestamp\"},\"LastModifiedBefore\":{\"type\":\"timestamp\"},\"LastModifiedAfter\":{\"type\":\"timestamp\"},\"Schema\":{\"shape\":\"Sds\"}}},\"Sdw\":{\"type\":\"structure\",\"required\":[\"Column\",\"SortDirection\"],\"members\":{\"Column\":{},\"SortDirection\":{}}},\"Se2\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"DatabaseName\":{},\"TableName\":{}}},\"Se3\":{\"type\":\"list\",\"member\":{\"shape\":\"Se2\"}},\"Se4\":{\"type\":\"structure\",\"members\":{\"Jdbc\":{\"shape\":\"S81\"},\"S3\":{\"shape\":\"S81\"},\"DynamoDB\":{\"shape\":\"S81\"}}},\"Se6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceTable\":{},\"SourcePath\":{},\"SourceType\":{},\"TargetTable\":{},\"TargetPath\":{},\"TargetType\":{}}}},\"Sfd\":{\"type\":\"structure\",\"members\":{\"LatestVersion\":{\"type\":\"boolean\"},\"VersionNumber\":{\"type\":\"long\"}}},\"Sfm\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"CreatedTimeStamp\":{\"type\":\"timestamp\"},\"EncryptionConfiguration\":{\"shape\":\"S8c\"}}},\"Sfs\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"DatabaseName\":{},\"Description\":{},\"Owner\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"UpdateTime\":{\"type\":\"timestamp\"},\"LastAccessTime\":{\"type\":\"timestamp\"},\"LastAnalyzedTime\":{\"type\":\"timestamp\"},\"Retention\":{\"type\":\"integer\"},\"StorageDescriptor\":{\"shape\":\"S9\"},\"PartitionKeys\":{\"shape\":\"Sa\"},\"ViewOriginalText\":{},\"ViewExpandedText\":{},\"TableType\":{},\"Parameters\":{\"shape\":\"Se\"},\"CreatedBy\":{},\"IsRegisteredWithLakeFormation\":{\"type\":\"boolean\"},\"TargetTable\":{\"shape\":\"S8r\"},\"CatalogId\":{}}},\"Sfv\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"Sfs\"},\"VersionId\":{}}},\"Sg2\":{\"type\":\"list\",\"member\":{\"shape\":\"Sfs\"}},\"Sgb\":{\"type\":\"structure\",\"members\":{\"FunctionName\":{},\"DatabaseName\":{},\"ClassName\":{},\"OwnerName\":{},\"OwnerType\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"ResourceUris\":{\"shape\":\"S90\"},\"CatalogId\":{}}},\"Shp\":{\"type\":\"structure\",\"members\":{\"MetadataKey\":{},\"MetadataValue\":{}}},\"Sia\":{\"type\":\"list\",\"member\":{}},\"Sjm\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb2\"}},\"Sjo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ColumnStatistics\":{\"shape\":\"Sb2\"},\"Error\":{\"shape\":\"S13\"}}}}}}");

/***/ }),

/***/ 14005:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetClassifiers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetConnections\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetCrawlerMetrics\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetCrawlers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetDatabases\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetDevEndpoints\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetJobRuns\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetMLTaskRuns\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetMLTransforms\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetPartitionIndexes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"PartitionIndexDescriptorList\"},\"GetPartitions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetResourcePolicies\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"GetResourcePoliciesResponseList\"},\"GetSecurityConfigurations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"SecurityConfigurations\"},\"GetTableVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetTables\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetTriggers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetUserDefinedFunctions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetWorkflowRuns\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListCrawlers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListDevEndpoints\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListMLTransforms\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListRegistries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Registries\"},\"ListSchemaVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Schemas\"},\"ListSchemas\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Schemas\"},\"ListTriggers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListWorkflows\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"SearchTables\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 25031:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-06-07\",\"endpointPrefix\":\"greengrass\",\"signingName\":\"greengrass\",\"serviceFullName\":\"AWS Greengrass\",\"serviceId\":\"Greengrass\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"greengrass-2017-06-07\",\"signatureVersion\":\"v4\"},\"operations\":{\"AssociateRoleToGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/groups/{GroupId}/role\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"RoleArn\":{}},\"required\":[\"GroupId\",\"RoleArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AssociatedAt\":{}}}},\"AssociateServiceRoleToAccount\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/servicerole\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RoleArn\":{}},\"required\":[\"RoleArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AssociatedAt\":{}}}},\"CreateConnectorDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/connectors\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"S7\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateConnectorDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/connectors/{ConnectorDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"ConnectorDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionId\"},\"Connectors\":{\"shape\":\"S8\"}},\"required\":[\"ConnectorDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateCoreDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/cores\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"Sg\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateCoreDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/cores/{CoreDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"CoreDefinitionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionId\"},\"Cores\":{\"shape\":\"Sh\"}},\"required\":[\"CoreDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateDeployment\":{\"http\":{\"requestUri\":\"/greengrass/groups/{GroupId}/deployments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"DeploymentId\":{},\"DeploymentType\":{},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"GroupVersionId\":{}},\"required\":[\"GroupId\",\"DeploymentType\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DeploymentArn\":{},\"DeploymentId\":{}}}},\"CreateDeviceDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/devices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"Sr\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateDeviceDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/devices/{DeviceDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"DeviceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionId\"},\"Devices\":{\"shape\":\"Ss\"}},\"required\":[\"DeviceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateFunctionDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/functions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"Sy\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateFunctionDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/functions/{FunctionDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"DefaultConfig\":{\"shape\":\"Sz\"},\"FunctionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionId\"},\"Functions\":{\"shape\":\"S14\"}},\"required\":[\"FunctionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateGroup\":{\"http\":{\"requestUri\":\"/greengrass/groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"S1h\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateGroupCertificateAuthority\":{\"http\":{\"requestUri\":\"/greengrass/groups/{GroupId}/certificateauthorities\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"GroupCertificateAuthorityArn\":{}}}},\"CreateGroupVersion\":{\"http\":{\"requestUri\":\"/greengrass/groups/{GroupId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"ConnectorDefinitionVersionArn\":{},\"CoreDefinitionVersionArn\":{},\"DeviceDefinitionVersionArn\":{},\"FunctionDefinitionVersionArn\":{},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"LoggerDefinitionVersionArn\":{},\"ResourceDefinitionVersionArn\":{},\"SubscriptionDefinitionVersionArn\":{}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateLoggerDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/loggers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"S1o\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateLoggerDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/loggers/{LoggerDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"LoggerDefinitionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionId\"},\"Loggers\":{\"shape\":\"S1p\"}},\"required\":[\"LoggerDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateResourceDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/resources\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"S1y\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateResourceDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/resources/{ResourceDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"ResourceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionId\"},\"Resources\":{\"shape\":\"S1z\"}},\"required\":[\"ResourceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"CreateSoftwareUpdateJob\":{\"http\":{\"requestUri\":\"/greengrass/updates\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"S3UrlSignerRole\":{},\"SoftwareToUpdate\":{},\"UpdateAgentLogLevel\":{},\"UpdateTargets\":{\"type\":\"list\",\"member\":{}},\"UpdateTargetsArchitecture\":{},\"UpdateTargetsOperatingSystem\":{}},\"required\":[\"S3UrlSignerRole\",\"UpdateTargetsArchitecture\",\"SoftwareToUpdate\",\"UpdateTargets\",\"UpdateTargetsOperatingSystem\"]},\"output\":{\"type\":\"structure\",\"members\":{\"IotJobArn\":{},\"IotJobId\":{},\"PlatformSoftwareVersion\":{}}}},\"CreateSubscriptionDefinition\":{\"http\":{\"requestUri\":\"/greengrass/definition/subscriptions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"InitialVersion\":{\"shape\":\"S2m\"},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"CreateSubscriptionDefinitionVersion\":{\"http\":{\"requestUri\":\"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"SubscriptionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionId\"},\"Subscriptions\":{\"shape\":\"S2n\"}},\"required\":[\"SubscriptionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"DeleteConnectorDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/connectors/{ConnectorDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectorDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionId\"}},\"required\":[\"ConnectorDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCoreDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/cores/{CoreDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CoreDefinitionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionId\"}},\"required\":[\"CoreDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDeviceDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/devices/{DeviceDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionId\"}},\"required\":[\"DeviceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteFunctionDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/functions/{FunctionDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FunctionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionId\"}},\"required\":[\"FunctionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/groups/{GroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteLoggerDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/loggers/{LoggerDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"LoggerDefinitionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionId\"}},\"required\":[\"LoggerDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteResourceDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/resources/{ResourceDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionId\"}},\"required\":[\"ResourceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSubscriptionDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionId\"}},\"required\":[\"SubscriptionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateRoleFromGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/groups/{GroupId}/role\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DisassociatedAt\":{}}}},\"DisassociateServiceRoleFromAccount\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/servicerole\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"DisassociatedAt\":{}}}},\"GetAssociatedRole\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/role\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AssociatedAt\":{},\"RoleArn\":{}}}},\"GetBulkDeploymentStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/bulk/deployments/{BulkDeploymentId}/status\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BulkDeploymentId\":{\"location\":\"uri\",\"locationName\":\"BulkDeploymentId\"}},\"required\":[\"BulkDeploymentId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BulkDeploymentMetrics\":{\"type\":\"structure\",\"members\":{\"InvalidInputRecords\":{\"type\":\"integer\"},\"RecordsProcessed\":{\"type\":\"integer\"},\"RetryAttempts\":{\"type\":\"integer\"}}},\"BulkDeploymentStatus\":{},\"CreatedAt\":{},\"ErrorDetails\":{\"shape\":\"S3i\"},\"ErrorMessage\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetConnectivityInfo\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/things/{ThingName}/connectivityInfo\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ThingName\":{\"location\":\"uri\",\"locationName\":\"ThingName\"}},\"required\":[\"ThingName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectivityInfo\":{\"shape\":\"S3m\"},\"Message\":{\"locationName\":\"message\"}}}},\"GetConnectorDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/connectors/{ConnectorDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectorDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionId\"}},\"required\":[\"ConnectorDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetConnectorDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/connectors/{ConnectorDefinitionId}/versions/{ConnectorDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectorDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionId\"},\"ConnectorDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionVersionId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"ConnectorDefinitionId\",\"ConnectorDefinitionVersionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"S7\"},\"Id\":{},\"NextToken\":{},\"Version\":{}}}},\"GetCoreDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/cores/{CoreDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CoreDefinitionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionId\"}},\"required\":[\"CoreDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetCoreDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/cores/{CoreDefinitionId}/versions/{CoreDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CoreDefinitionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionId\"},\"CoreDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionVersionId\"}},\"required\":[\"CoreDefinitionId\",\"CoreDefinitionVersionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"Sg\"},\"Id\":{},\"NextToken\":{},\"Version\":{}}}},\"GetDeploymentStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/deployments/{DeploymentId}/status\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeploymentId\":{\"location\":\"uri\",\"locationName\":\"DeploymentId\"},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\",\"DeploymentId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DeploymentStatus\":{},\"DeploymentType\":{},\"ErrorDetails\":{\"shape\":\"S3i\"},\"ErrorMessage\":{},\"UpdatedAt\":{}}}},\"GetDeviceDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/devices/{DeviceDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionId\"}},\"required\":[\"DeviceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetDeviceDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/devices/{DeviceDefinitionId}/versions/{DeviceDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionId\"},\"DeviceDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionVersionId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"DeviceDefinitionVersionId\",\"DeviceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"Sr\"},\"Id\":{},\"NextToken\":{},\"Version\":{}}}},\"GetFunctionDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/functions/{FunctionDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FunctionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionId\"}},\"required\":[\"FunctionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetFunctionDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/functions/{FunctionDefinitionId}/versions/{FunctionDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FunctionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionId\"},\"FunctionDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionVersionId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"FunctionDefinitionId\",\"FunctionDefinitionVersionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"Sy\"},\"Id\":{},\"NextToken\":{},\"Version\":{}}}},\"GetGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetGroupCertificateAuthority\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/certificateauthorities/{CertificateAuthorityId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorityId\":{\"location\":\"uri\",\"locationName\":\"CertificateAuthorityId\"},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"CertificateAuthorityId\",\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"GroupCertificateAuthorityArn\":{},\"GroupCertificateAuthorityId\":{},\"PemEncodedCertificate\":{}}}},\"GetGroupCertificateConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/certificateauthorities/configuration/expiry\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorityExpiryInMilliseconds\":{},\"CertificateExpiryInMilliseconds\":{},\"GroupId\":{}}}},\"GetGroupVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/versions/{GroupVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"GroupVersionId\":{\"location\":\"uri\",\"locationName\":\"GroupVersionId\"}},\"required\":[\"GroupVersionId\",\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"S1h\"},\"Id\":{},\"Version\":{}}}},\"GetLoggerDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/loggers/{LoggerDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"LoggerDefinitionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionId\"}},\"required\":[\"LoggerDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetLoggerDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/loggers/{LoggerDefinitionId}/versions/{LoggerDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"LoggerDefinitionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionId\"},\"LoggerDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionVersionId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"LoggerDefinitionVersionId\",\"LoggerDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"S1o\"},\"Id\":{},\"Version\":{}}}},\"GetResourceDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/resources/{ResourceDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionId\"}},\"required\":[\"ResourceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetResourceDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/resources/{ResourceDefinitionId}/versions/{ResourceDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionId\"},\"ResourceDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionVersionId\"}},\"required\":[\"ResourceDefinitionVersionId\",\"ResourceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"S1y\"},\"Id\":{},\"Version\":{}}}},\"GetServiceRoleForAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/servicerole\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociatedAt\":{},\"RoleArn\":{}}}},\"GetSubscriptionDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionId\"}},\"required\":[\"SubscriptionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"tags\":{\"shape\":\"Sb\"}}}},\"GetSubscriptionDefinitionVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions/{SubscriptionDefinitionVersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"SubscriptionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionId\"},\"SubscriptionDefinitionVersionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionVersionId\"}},\"required\":[\"SubscriptionDefinitionId\",\"SubscriptionDefinitionVersionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Definition\":{\"shape\":\"S2m\"},\"Id\":{},\"NextToken\":{},\"Version\":{}}}},\"GetThingRuntimeConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/things/{ThingName}/runtimeconfig\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ThingName\":{\"location\":\"uri\",\"locationName\":\"ThingName\"}},\"required\":[\"ThingName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"RuntimeConfiguration\":{\"type\":\"structure\",\"members\":{\"TelemetryConfiguration\":{\"type\":\"structure\",\"members\":{\"ConfigurationSyncStatus\":{},\"Telemetry\":{}},\"required\":[\"Telemetry\"]}}}}}},\"ListBulkDeploymentDetailedReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/bulk/deployments/{BulkDeploymentId}/detailed-reports\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BulkDeploymentId\":{\"location\":\"uri\",\"locationName\":\"BulkDeploymentId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"BulkDeploymentId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Deployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreatedAt\":{},\"DeploymentArn\":{},\"DeploymentId\":{},\"DeploymentStatus\":{},\"DeploymentType\":{},\"ErrorDetails\":{\"shape\":\"S3i\"},\"ErrorMessage\":{},\"GroupArn\":{}}}},\"NextToken\":{}}}},\"ListBulkDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/bulk/deployments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BulkDeployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BulkDeploymentArn\":{},\"BulkDeploymentId\":{},\"CreatedAt\":{}}}},\"NextToken\":{}}}},\"ListConnectorDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/connectors/{ConnectorDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectorDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"ConnectorDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListConnectorDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/connectors\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListCoreDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/cores/{CoreDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CoreDefinitionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"CoreDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListCoreDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/cores\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/deployments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Deployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreatedAt\":{},\"DeploymentArn\":{},\"DeploymentId\":{},\"DeploymentType\":{},\"GroupArn\":{}}}},\"NextToken\":{}}}},\"ListDeviceDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/devices/{DeviceDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"DeviceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListDeviceDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/devices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListFunctionDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/functions/{FunctionDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FunctionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"FunctionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListFunctionDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/functions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListGroupCertificateAuthorities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/certificateauthorities\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"GroupCertificateAuthorities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupCertificateAuthorityArn\":{},\"GroupCertificateAuthorityId\":{}}}}}}},\"ListGroupVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups/{GroupId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListLoggerDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/loggers/{LoggerDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"LoggerDefinitionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"required\":[\"LoggerDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListLoggerDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/loggers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListResourceDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/resources/{ResourceDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"ResourceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionId\"}},\"required\":[\"ResourceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListResourceDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/resources\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListSubscriptionDefinitionVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"SubscriptionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionId\"}},\"required\":[\"SubscriptionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Versions\":{\"shape\":\"S58\"}}}},\"ListSubscriptionDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/definition/subscriptions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Definitions\":{\"shape\":\"S5c\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sb\"}}}},\"ResetDeployments\":{\"http\":{\"requestUri\":\"/greengrass/groups/{GroupId}/deployments/$reset\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"Force\":{\"type\":\"boolean\"},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DeploymentArn\":{},\"DeploymentId\":{}}}},\"StartBulkDeployment\":{\"http\":{\"requestUri\":\"/greengrass/bulk/deployments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AmznClientToken\":{\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"ExecutionRoleArn\":{},\"InputFileUri\":{},\"tags\":{\"shape\":\"Sb\"}},\"required\":[\"ExecutionRoleArn\",\"InputFileUri\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BulkDeploymentArn\":{},\"BulkDeploymentId\":{}}}},\"StopBulkDeployment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/bulk/deployments/{BulkDeploymentId}/$stop\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BulkDeploymentId\":{\"location\":\"uri\",\"locationName\":\"BulkDeploymentId\"}},\"required\":[\"BulkDeploymentId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"tags\":{\"shape\":\"Sb\"}},\"required\":[\"ResourceArn\"]}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"shape\":\"S29\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateConnectivityInfo\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/things/{ThingName}/connectivityInfo\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectivityInfo\":{\"shape\":\"S3m\"},\"ThingName\":{\"location\":\"uri\",\"locationName\":\"ThingName\"}},\"required\":[\"ThingName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Message\":{\"locationName\":\"message\"},\"Version\":{}}}},\"UpdateConnectorDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/connectors/{ConnectorDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConnectorDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ConnectorDefinitionId\"},\"Name\":{}},\"required\":[\"ConnectorDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCoreDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/cores/{CoreDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CoreDefinitionId\":{\"location\":\"uri\",\"locationName\":\"CoreDefinitionId\"},\"Name\":{}},\"required\":[\"CoreDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDeviceDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/devices/{DeviceDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"DeviceDefinitionId\"},\"Name\":{}},\"required\":[\"DeviceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFunctionDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/functions/{FunctionDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FunctionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"FunctionDefinitionId\"},\"Name\":{}},\"required\":[\"FunctionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/groups/{GroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"},\"Name\":{}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateGroupCertificateConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/groups/{GroupId}/certificateauthorities/configuration/expiry\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CertificateExpiryInMilliseconds\":{},\"GroupId\":{\"location\":\"uri\",\"locationName\":\"GroupId\"}},\"required\":[\"GroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorityExpiryInMilliseconds\":{},\"CertificateExpiryInMilliseconds\":{},\"GroupId\":{}}}},\"UpdateLoggerDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/loggers/{LoggerDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"LoggerDefinitionId\":{\"location\":\"uri\",\"locationName\":\"LoggerDefinitionId\"},\"Name\":{}},\"required\":[\"LoggerDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateResourceDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/resources/{ResourceDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ResourceDefinitionId\":{\"location\":\"uri\",\"locationName\":\"ResourceDefinitionId\"}},\"required\":[\"ResourceDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSubscriptionDefinition\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"SubscriptionDefinitionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionDefinitionId\"}},\"required\":[\"SubscriptionDefinitionId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateThingRuntimeConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/greengrass/things/{ThingName}/runtimeconfig\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"TelemetryConfiguration\":{\"type\":\"structure\",\"members\":{\"Telemetry\":{}},\"required\":[\"Telemetry\"]},\"ThingName\":{\"location\":\"uri\",\"locationName\":\"ThingName\"}},\"required\":[\"ThingName\"]},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"members\":{\"Connectors\":{\"shape\":\"S8\"}}},\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConnectorArn\":{},\"Id\":{},\"Parameters\":{\"shape\":\"Sa\"}},\"required\":[\"ConnectorArn\",\"Id\"]}},\"Sa\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sb\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sg\":{\"type\":\"structure\",\"members\":{\"Cores\":{\"shape\":\"Sh\"}}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"Id\":{},\"SyncShadow\":{\"type\":\"boolean\"},\"ThingArn\":{}},\"required\":[\"ThingArn\",\"Id\",\"CertificateArn\"]}},\"Sr\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"shape\":\"Ss\"}}},\"Ss\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{},\"Id\":{},\"SyncShadow\":{\"type\":\"boolean\"},\"ThingArn\":{}},\"required\":[\"ThingArn\",\"Id\",\"CertificateArn\"]}},\"Sy\":{\"type\":\"structure\",\"members\":{\"DefaultConfig\":{\"shape\":\"Sz\"},\"Functions\":{\"shape\":\"S14\"}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"Execution\":{\"type\":\"structure\",\"members\":{\"IsolationMode\":{},\"RunAs\":{\"shape\":\"S12\"}}}}},\"S12\":{\"type\":\"structure\",\"members\":{\"Gid\":{\"type\":\"integer\"},\"Uid\":{\"type\":\"integer\"}}},\"S14\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FunctionArn\":{},\"FunctionConfiguration\":{\"type\":\"structure\",\"members\":{\"EncodingType\":{},\"Environment\":{\"type\":\"structure\",\"members\":{\"AccessSysfs\":{\"type\":\"boolean\"},\"Execution\":{\"type\":\"structure\",\"members\":{\"IsolationMode\":{},\"RunAs\":{\"shape\":\"S12\"}}},\"ResourceAccessPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Permission\":{},\"ResourceId\":{}},\"required\":[\"ResourceId\"]}},\"Variables\":{\"shape\":\"Sa\"}}},\"ExecArgs\":{},\"Executable\":{},\"MemorySize\":{\"type\":\"integer\"},\"Pinned\":{\"type\":\"boolean\"},\"Timeout\":{\"type\":\"integer\"}}},\"Id\":{}},\"required\":[\"Id\"]}},\"S1h\":{\"type\":\"structure\",\"members\":{\"ConnectorDefinitionVersionArn\":{},\"CoreDefinitionVersionArn\":{},\"DeviceDefinitionVersionArn\":{},\"FunctionDefinitionVersionArn\":{},\"LoggerDefinitionVersionArn\":{},\"ResourceDefinitionVersionArn\":{},\"SubscriptionDefinitionVersionArn\":{}}},\"S1o\":{\"type\":\"structure\",\"members\":{\"Loggers\":{\"shape\":\"S1p\"}}},\"S1p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Component\":{},\"Id\":{},\"Level\":{},\"Space\":{\"type\":\"integer\"},\"Type\":{}},\"required\":[\"Type\",\"Level\",\"Id\",\"Component\"]}},\"S1y\":{\"type\":\"structure\",\"members\":{\"Resources\":{\"shape\":\"S1z\"}}},\"S1z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"ResourceDataContainer\":{\"type\":\"structure\",\"members\":{\"LocalDeviceResourceData\":{\"type\":\"structure\",\"members\":{\"GroupOwnerSetting\":{\"shape\":\"S23\"},\"SourcePath\":{}}},\"LocalVolumeResourceData\":{\"type\":\"structure\",\"members\":{\"DestinationPath\":{},\"GroupOwnerSetting\":{\"shape\":\"S23\"},\"SourcePath\":{}}},\"S3MachineLearningModelResourceData\":{\"type\":\"structure\",\"members\":{\"DestinationPath\":{},\"OwnerSetting\":{\"shape\":\"S26\"},\"S3Uri\":{}}},\"SageMakerMachineLearningModelResourceData\":{\"type\":\"structure\",\"members\":{\"DestinationPath\":{},\"OwnerSetting\":{\"shape\":\"S26\"},\"SageMakerJobArn\":{}}},\"SecretsManagerSecretResourceData\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"AdditionalStagingLabelsToDownload\":{\"shape\":\"S29\"}}}}}},\"required\":[\"ResourceDataContainer\",\"Id\",\"Name\"]}},\"S23\":{\"type\":\"structure\",\"members\":{\"AutoAddGroupOwner\":{\"type\":\"boolean\"},\"GroupOwner\":{}}},\"S26\":{\"type\":\"structure\",\"members\":{\"GroupOwner\":{},\"GroupPermission\":{}},\"required\":[\"GroupOwner\",\"GroupPermission\"]},\"S29\":{\"type\":\"list\",\"member\":{}},\"S2m\":{\"type\":\"structure\",\"members\":{\"Subscriptions\":{\"shape\":\"S2n\"}}},\"S2n\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Source\":{},\"Subject\":{},\"Target\":{}},\"required\":[\"Target\",\"Id\",\"Subject\",\"Source\"]}},\"S3i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DetailedErrorCode\":{},\"DetailedErrorMessage\":{}}}},\"S3m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"HostAddress\":{},\"Id\":{},\"Metadata\":{},\"PortNumber\":{\"type\":\"integer\"}}}},\"S58\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"Version\":{}}}},\"S5c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationTimestamp\":{},\"Id\":{},\"LastUpdatedTimestamp\":{},\"LatestVersion\":{},\"LatestVersionArn\":{},\"Name\":{},\"Tags\":{\"shape\":\"Sb\",\"locationName\":\"tags\"}}}}}}");

/***/ }),

/***/ 22710:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-11-30\",\"endpointPrefix\":\"greengrass\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWS GreengrassV2\",\"serviceFullName\":\"AWS IoT Greengrass V2\",\"serviceId\":\"GreengrassV2\",\"signatureVersion\":\"v4\",\"uid\":\"greengrassv2-2020-11-30\"},\"operations\":{\"CancelDeployment\":{\"http\":{\"requestUri\":\"/greengrass/v2/deployments/{deploymentId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\"],\"members\":{\"deploymentId\":{\"location\":\"uri\",\"locationName\":\"deploymentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"message\":{}}}},\"CreateComponentVersion\":{\"http\":{\"requestUri\":\"/greengrass/v2/createComponentVersion\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"inlineRecipe\":{\"type\":\"blob\"},\"lambdaFunction\":{\"type\":\"structure\",\"required\":[\"lambdaArn\"],\"members\":{\"lambdaArn\":{},\"componentName\":{},\"componentVersion\":{},\"componentPlatforms\":{\"shape\":\"Sa\"},\"componentDependencies\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"versionRequirement\":{},\"dependencyType\":{}}}},\"componentLambdaParameters\":{\"type\":\"structure\",\"members\":{\"eventSources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"topic\",\"type\"],\"members\":{\"topic\":{},\"type\":{}}}},\"maxQueueSize\":{\"type\":\"integer\"},\"maxInstancesCount\":{\"type\":\"integer\"},\"maxIdleTimeInSeconds\":{\"type\":\"integer\"},\"timeoutInSeconds\":{\"type\":\"integer\"},\"statusTimeoutInSeconds\":{\"type\":\"integer\"},\"pinned\":{\"type\":\"boolean\"},\"inputPayloadEncodingType\":{},\"execArgs\":{\"type\":\"list\",\"member\":{}},\"environmentVariables\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"linuxProcessParams\":{\"type\":\"structure\",\"members\":{\"isolationMode\":{},\"containerParams\":{\"type\":\"structure\",\"members\":{\"memorySizeInKB\":{\"type\":\"integer\"},\"mountROSysfs\":{\"type\":\"boolean\"},\"volumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"sourcePath\",\"destinationPath\"],\"members\":{\"sourcePath\":{},\"destinationPath\":{},\"permission\":{},\"addGroupOwner\":{\"type\":\"boolean\"}}}},\"devices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"path\"],\"members\":{\"path\":{},\"permission\":{},\"addGroupOwner\":{\"type\":\"boolean\"}}}}}}}}}}}},\"tags\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"componentName\",\"componentVersion\",\"creationTimestamp\",\"status\"],\"members\":{\"arn\":{},\"componentName\":{},\"componentVersion\":{},\"creationTimestamp\":{\"type\":\"timestamp\"},\"status\":{\"shape\":\"S17\"}}}},\"CreateDeployment\":{\"http\":{\"requestUri\":\"/greengrass/v2/deployments\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"targetArn\"],\"members\":{\"targetArn\":{},\"deploymentName\":{},\"components\":{\"shape\":\"S1c\"},\"iotJobConfiguration\":{\"shape\":\"S1j\"},\"deploymentPolicies\":{\"shape\":\"S20\"},\"tags\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentId\":{},\"iotJobId\":{},\"iotJobArn\":{}}}},\"DeleteComponent\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/v2/components/{arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}}}},\"DeleteCoreDevice\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/greengrass/v2/coreDevices/{coreDeviceThingName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"coreDeviceThingName\"],\"members\":{\"coreDeviceThingName\":{\"location\":\"uri\",\"locationName\":\"coreDeviceThingName\"}}}},\"DescribeComponent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/components/{arn}/metadata\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"componentName\":{},\"componentVersion\":{},\"creationTimestamp\":{\"type\":\"timestamp\"},\"publisher\":{},\"description\":{},\"status\":{\"shape\":\"S17\"},\"platforms\":{\"shape\":\"Sa\"},\"tags\":{\"shape\":\"S11\"}}}},\"GetComponent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/components/{arn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"recipeOutputFormat\":{\"location\":\"querystring\",\"locationName\":\"recipeOutputFormat\"},\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"recipeOutputFormat\",\"recipe\"],\"members\":{\"recipeOutputFormat\":{},\"recipe\":{\"type\":\"blob\"},\"tags\":{\"shape\":\"S11\"}}}},\"GetComponentVersionArtifact\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/components/{arn}/artifacts/{artifactName+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\",\"artifactName\"],\"members\":{\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"},\"artifactName\":{\"location\":\"uri\",\"locationName\":\"artifactName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"preSignedUrl\"],\"members\":{\"preSignedUrl\":{}}}},\"GetCoreDevice\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/coreDevices/{coreDeviceThingName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"coreDeviceThingName\"],\"members\":{\"coreDeviceThingName\":{\"location\":\"uri\",\"locationName\":\"coreDeviceThingName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"coreDeviceThingName\":{},\"coreVersion\":{},\"platform\":{},\"architecture\":{},\"status\":{},\"lastStatusUpdateTimestamp\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S11\"}}}},\"GetDeployment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/deployments/{deploymentId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"deploymentId\"],\"members\":{\"deploymentId\":{\"location\":\"uri\",\"locationName\":\"deploymentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"targetArn\":{},\"revisionId\":{},\"deploymentId\":{},\"deploymentName\":{},\"deploymentStatus\":{},\"iotJobId\":{},\"iotJobArn\":{},\"components\":{\"shape\":\"S1c\"},\"deploymentPolicies\":{\"shape\":\"S20\"},\"iotJobConfiguration\":{\"shape\":\"S1j\"},\"creationTimestamp\":{\"type\":\"timestamp\"},\"isLatestForTarget\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"S11\"}}}},\"ListComponentVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/components/{arn}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"componentVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"componentName\":{},\"componentVersion\":{},\"arn\":{}}}},\"nextToken\":{}}}},\"ListComponents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/components\"},\"input\":{\"type\":\"structure\",\"members\":{\"scope\":{\"location\":\"querystring\",\"locationName\":\"scope\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"components\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"componentName\":{},\"latestVersion\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"componentVersion\":{},\"creationTimestamp\":{\"type\":\"timestamp\"},\"description\":{},\"publisher\":{},\"platforms\":{\"shape\":\"Sa\"}}}}}},\"nextToken\":{}}}},\"ListCoreDevices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/coreDevices\"},\"input\":{\"type\":\"structure\",\"members\":{\"thingGroupArn\":{\"location\":\"querystring\",\"locationName\":\"thingGroupArn\"},\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"coreDevices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"coreDeviceThingName\":{},\"status\":{},\"lastStatusUpdateTimestamp\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/deployments\"},\"input\":{\"type\":\"structure\",\"members\":{\"targetArn\":{\"location\":\"querystring\",\"locationName\":\"targetArn\"},\"historyFilter\":{\"location\":\"querystring\",\"locationName\":\"historyFilter\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"targetArn\":{},\"revisionId\":{},\"deploymentId\":{},\"deploymentName\":{},\"creationTimestamp\":{\"type\":\"timestamp\"},\"deploymentStatus\":{},\"isLatestForTarget\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListEffectiveDeployments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/coreDevices/{coreDeviceThingName}/effectiveDeployments\"},\"input\":{\"type\":\"structure\",\"required\":[\"coreDeviceThingName\"],\"members\":{\"coreDeviceThingName\":{\"location\":\"uri\",\"locationName\":\"coreDeviceThingName\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"effectiveDeployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"deploymentId\",\"deploymentName\",\"targetArn\",\"coreDeviceExecutionStatus\",\"creationTimestamp\",\"modifiedTimestamp\"],\"members\":{\"deploymentId\":{},\"deploymentName\":{},\"iotJobId\":{},\"iotJobArn\":{},\"description\":{},\"targetArn\":{},\"coreDeviceExecutionStatus\":{},\"reason\":{},\"creationTimestamp\":{\"type\":\"timestamp\"},\"modifiedTimestamp\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListInstalledComponents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/greengrass/v2/coreDevices/{coreDeviceThingName}/installedComponents\"},\"input\":{\"type\":\"structure\",\"required\":[\"coreDeviceThingName\"],\"members\":{\"coreDeviceThingName\":{\"location\":\"uri\",\"locationName\":\"coreDeviceThingName\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"installedComponents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"componentName\":{},\"componentVersion\":{},\"lifecycleState\":{},\"lifecycleStateDetails\":{},\"isRoot\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S11\"}}}},\"ResolveComponentCandidates\":{\"http\":{\"requestUri\":\"/greengrass/v2/resolveComponentCandidates\"},\"input\":{\"type\":\"structure\",\"required\":[\"platform\",\"componentCandidates\"],\"members\":{\"platform\":{\"shape\":\"Sb\"},\"componentCandidates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"componentName\":{},\"componentVersion\":{},\"versionRequirements\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"resolvedComponentVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"componentName\":{},\"componentVersion\":{},\"recipe\":{\"type\":\"blob\"}}}}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sa\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}},\"Sb\":{\"type\":\"structure\",\"members\":{\"name\":{},\"attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"S11\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S17\":{\"type\":\"structure\",\"members\":{\"componentState\":{},\"message\":{},\"errors\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"S1c\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"componentVersion\":{},\"configurationUpdate\":{\"type\":\"structure\",\"members\":{\"merge\":{},\"reset\":{\"type\":\"list\",\"member\":{}}}},\"runWith\":{\"type\":\"structure\",\"members\":{\"posixUser\":{}}}}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"jobExecutionsRolloutConfig\":{\"type\":\"structure\",\"members\":{\"exponentialRate\":{\"type\":\"structure\",\"required\":[\"baseRatePerMinute\",\"incrementFactor\",\"rateIncreaseCriteria\"],\"members\":{\"baseRatePerMinute\":{\"type\":\"integer\"},\"incrementFactor\":{\"type\":\"double\"},\"rateIncreaseCriteria\":{\"type\":\"structure\",\"members\":{\"numberOfNotifiedThings\":{\"type\":\"integer\"},\"numberOfSucceededThings\":{\"type\":\"integer\"}}}}},\"maximumPerMinute\":{\"type\":\"integer\"}}},\"abortConfig\":{\"type\":\"structure\",\"required\":[\"criteriaList\"],\"members\":{\"criteriaList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"failureType\",\"action\",\"thresholdPercentage\",\"minNumberOfExecutedThings\"],\"members\":{\"failureType\":{},\"action\":{},\"thresholdPercentage\":{\"type\":\"double\"},\"minNumberOfExecutedThings\":{\"type\":\"integer\"}}}}}},\"timeoutConfig\":{\"type\":\"structure\",\"members\":{\"inProgressTimeoutInMinutes\":{\"type\":\"long\"}}}}},\"S20\":{\"type\":\"structure\",\"members\":{\"failureHandlingPolicy\":{},\"componentUpdatePolicy\":{\"type\":\"structure\",\"members\":{\"timeoutInSeconds\":{\"type\":\"integer\"},\"action\":{}}},\"configurationValidationPolicy\":{\"type\":\"structure\",\"members\":{\"timeoutInSeconds\":{\"type\":\"integer\"}}}}}}}");

/***/ }),

/***/ 94180:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListComponentVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"componentVersions\"},\"ListComponents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"components\"},\"ListCoreDevices\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"coreDevices\"},\"ListDeployments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"deployments\"},\"ListEffectiveDeployments\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"effectiveDeployments\"},\"ListInstalledComponents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"installedComponents\"}}}");

/***/ }),

/***/ 78309:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-05-23\",\"endpointPrefix\":\"groundstation\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS Ground Station\",\"serviceId\":\"GroundStation\",\"signatureVersion\":\"v4\",\"signingName\":\"groundstation\",\"uid\":\"groundstation-2019-05-23\"},\"operations\":{\"CancelContact\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/contact/{contactId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"contactId\"],\"members\":{\"contactId\":{\"location\":\"uri\",\"locationName\":\"contactId\"}}},\"output\":{\"shape\":\"S3\"},\"idempotent\":true},\"CreateConfig\":{\"http\":{\"requestUri\":\"/config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"configData\",\"name\"],\"members\":{\"configData\":{\"shape\":\"S5\"},\"name\":{},\"tags\":{\"shape\":\"St\"}}},\"output\":{\"shape\":\"Su\"}},\"CreateDataflowEndpointGroup\":{\"http\":{\"requestUri\":\"/dataflowEndpointGroup\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"endpointDetails\"],\"members\":{\"endpointDetails\":{\"shape\":\"Sx\"},\"tags\":{\"shape\":\"St\"}}},\"output\":{\"shape\":\"S18\"}},\"CreateMissionProfile\":{\"http\":{\"requestUri\":\"/missionprofile\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"dataflowEdges\",\"minimumViableContactDurationSeconds\",\"name\",\"trackingConfigArn\"],\"members\":{\"contactPostPassDurationSeconds\":{\"type\":\"integer\"},\"contactPrePassDurationSeconds\":{\"type\":\"integer\"},\"dataflowEdges\":{\"shape\":\"S1b\"},\"minimumViableContactDurationSeconds\":{\"type\":\"integer\"},\"name\":{},\"tags\":{\"shape\":\"St\"},\"trackingConfigArn\":{}}},\"output\":{\"shape\":\"S1d\"}},\"DeleteConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/config/{configType}/{configId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"configId\",\"configType\"],\"members\":{\"configId\":{\"location\":\"uri\",\"locationName\":\"configId\"},\"configType\":{\"location\":\"uri\",\"locationName\":\"configType\"}}},\"output\":{\"shape\":\"Su\"},\"idempotent\":true},\"DeleteDataflowEndpointGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/dataflowEndpointGroup/{dataflowEndpointGroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"dataflowEndpointGroupId\"],\"members\":{\"dataflowEndpointGroupId\":{\"location\":\"uri\",\"locationName\":\"dataflowEndpointGroupId\"}}},\"output\":{\"shape\":\"S18\"},\"idempotent\":true},\"DeleteMissionProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/missionprofile/{missionProfileId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"missionProfileId\"],\"members\":{\"missionProfileId\":{\"location\":\"uri\",\"locationName\":\"missionProfileId\"}}},\"output\":{\"shape\":\"S1d\"},\"idempotent\":true},\"DescribeContact\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/contact/{contactId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"contactId\"],\"members\":{\"contactId\":{\"location\":\"uri\",\"locationName\":\"contactId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contactId\":{},\"contactStatus\":{},\"dataflowList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"destination\":{\"type\":\"structure\",\"members\":{\"configDetails\":{\"shape\":\"S1n\"},\"configId\":{},\"configType\":{},\"dataflowDestinationRegion\":{}}},\"errorMessage\":{},\"source\":{\"type\":\"structure\",\"members\":{\"configDetails\":{\"shape\":\"S1n\"},\"configId\":{},\"configType\":{},\"dataflowSourceRegion\":{}}}}}},\"endTime\":{\"type\":\"timestamp\"},\"errorMessage\":{},\"groundStation\":{},\"maximumElevation\":{\"shape\":\"S1r\"},\"missionProfileArn\":{},\"postPassEndTime\":{\"type\":\"timestamp\"},\"prePassStartTime\":{\"type\":\"timestamp\"},\"region\":{},\"satelliteArn\":{},\"startTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"St\"}}}},\"GetConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/config/{configType}/{configId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"configId\",\"configType\"],\"members\":{\"configId\":{\"location\":\"uri\",\"locationName\":\"configId\"},\"configType\":{\"location\":\"uri\",\"locationName\":\"configType\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"configArn\",\"configData\",\"configId\",\"name\"],\"members\":{\"configArn\":{},\"configData\":{\"shape\":\"S5\"},\"configId\":{},\"configType\":{},\"name\":{},\"tags\":{\"shape\":\"St\"}}}},\"GetDataflowEndpointGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dataflowEndpointGroup/{dataflowEndpointGroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"dataflowEndpointGroupId\"],\"members\":{\"dataflowEndpointGroupId\":{\"location\":\"uri\",\"locationName\":\"dataflowEndpointGroupId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataflowEndpointGroupArn\":{},\"dataflowEndpointGroupId\":{},\"endpointsDetails\":{\"shape\":\"Sx\"},\"tags\":{\"shape\":\"St\"}}}},\"GetMinuteUsage\":{\"http\":{\"requestUri\":\"/minute-usage\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"month\",\"year\"],\"members\":{\"month\":{\"type\":\"integer\"},\"year\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"estimatedMinutesRemaining\":{\"type\":\"integer\"},\"isReservedMinutesCustomer\":{\"type\":\"boolean\"},\"totalReservedMinuteAllocation\":{\"type\":\"integer\"},\"totalScheduledMinutes\":{\"type\":\"integer\"},\"upcomingMinutesScheduled\":{\"type\":\"integer\"}}}},\"GetMissionProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/missionprofile/{missionProfileId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"missionProfileId\"],\"members\":{\"missionProfileId\":{\"location\":\"uri\",\"locationName\":\"missionProfileId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contactPostPassDurationSeconds\":{\"type\":\"integer\"},\"contactPrePassDurationSeconds\":{\"type\":\"integer\"},\"dataflowEdges\":{\"shape\":\"S1b\"},\"minimumViableContactDurationSeconds\":{\"type\":\"integer\"},\"missionProfileArn\":{},\"missionProfileId\":{},\"name\":{},\"region\":{},\"tags\":{\"shape\":\"St\"},\"trackingConfigArn\":{}}}},\"GetSatellite\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/satellite/{satelliteId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"satelliteId\"],\"members\":{\"satelliteId\":{\"location\":\"uri\",\"locationName\":\"satelliteId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"groundStations\":{\"shape\":\"S26\"},\"noradSatelliteID\":{\"type\":\"integer\"},\"satelliteArn\":{},\"satelliteId\":{}}}},\"ListConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"configList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"configArn\":{},\"configId\":{},\"configType\":{},\"name\":{}}}},\"nextToken\":{}}}},\"ListContacts\":{\"http\":{\"requestUri\":\"/contacts\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"endTime\",\"startTime\",\"statusList\"],\"members\":{\"endTime\":{\"type\":\"timestamp\"},\"groundStation\":{},\"maxResults\":{\"type\":\"integer\"},\"missionProfileArn\":{},\"nextToken\":{},\"satelliteArn\":{},\"startTime\":{\"type\":\"timestamp\"},\"statusList\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"contactList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"contactId\":{},\"contactStatus\":{},\"endTime\":{\"type\":\"timestamp\"},\"errorMessage\":{},\"groundStation\":{},\"maximumElevation\":{\"shape\":\"S1r\"},\"missionProfileArn\":{},\"postPassEndTime\":{\"type\":\"timestamp\"},\"prePassStartTime\":{\"type\":\"timestamp\"},\"region\":{},\"satelliteArn\":{},\"startTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"St\"}}}},\"nextToken\":{}}}},\"ListDataflowEndpointGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dataflowEndpointGroup\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataflowEndpointGroupList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"dataflowEndpointGroupArn\":{},\"dataflowEndpointGroupId\":{}}}},\"nextToken\":{}}}},\"ListGroundStations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/groundstation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"satelliteId\":{\"location\":\"querystring\",\"locationName\":\"satelliteId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"groundStationList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"groundStationId\":{},\"groundStationName\":{},\"region\":{}}}},\"nextToken\":{}}}},\"ListMissionProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/missionprofile\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"missionProfileList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"missionProfileArn\":{},\"missionProfileId\":{},\"name\":{},\"region\":{}}}},\"nextToken\":{}}}},\"ListSatellites\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/satellite\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"satellites\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"groundStations\":{\"shape\":\"S26\"},\"noradSatelliteID\":{\"type\":\"integer\"},\"satelliteArn\":{},\"satelliteId\":{}}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"St\"}}}},\"ReserveContact\":{\"http\":{\"requestUri\":\"/contact\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"endTime\",\"groundStation\",\"missionProfileArn\",\"satelliteArn\",\"startTime\"],\"members\":{\"endTime\":{\"type\":\"timestamp\"},\"groundStation\":{},\"missionProfileArn\":{},\"satelliteArn\":{},\"startTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"St\"}}},\"output\":{\"shape\":\"S3\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"St\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/config/{configType}/{configId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"configData\",\"configId\",\"configType\",\"name\"],\"members\":{\"configData\":{\"shape\":\"S5\"},\"configId\":{\"location\":\"uri\",\"locationName\":\"configId\"},\"configType\":{\"location\":\"uri\",\"locationName\":\"configType\"},\"name\":{}}},\"output\":{\"shape\":\"Su\"},\"idempotent\":true},\"UpdateMissionProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/missionprofile/{missionProfileId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"missionProfileId\"],\"members\":{\"contactPostPassDurationSeconds\":{\"type\":\"integer\"},\"contactPrePassDurationSeconds\":{\"type\":\"integer\"},\"dataflowEdges\":{\"shape\":\"S1b\"},\"minimumViableContactDurationSeconds\":{\"type\":\"integer\"},\"missionProfileId\":{\"location\":\"uri\",\"locationName\":\"missionProfileId\"},\"name\":{},\"trackingConfigArn\":{}}},\"output\":{\"shape\":\"S1d\"},\"idempotent\":true}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"members\":{\"contactId\":{}}},\"S5\":{\"type\":\"structure\",\"members\":{\"antennaDownlinkConfig\":{\"type\":\"structure\",\"required\":[\"spectrumConfig\"],\"members\":{\"spectrumConfig\":{\"shape\":\"S7\"}}},\"antennaDownlinkDemodDecodeConfig\":{\"type\":\"structure\",\"required\":[\"decodeConfig\",\"demodulationConfig\",\"spectrumConfig\"],\"members\":{\"decodeConfig\":{\"type\":\"structure\",\"required\":[\"unvalidatedJSON\"],\"members\":{\"unvalidatedJSON\":{}}},\"demodulationConfig\":{\"type\":\"structure\",\"required\":[\"unvalidatedJSON\"],\"members\":{\"unvalidatedJSON\":{}}},\"spectrumConfig\":{\"shape\":\"S7\"}}},\"antennaUplinkConfig\":{\"type\":\"structure\",\"required\":[\"spectrumConfig\",\"targetEirp\"],\"members\":{\"spectrumConfig\":{\"type\":\"structure\",\"required\":[\"centerFrequency\"],\"members\":{\"centerFrequency\":{\"shape\":\"Sb\"},\"polarization\":{}}},\"targetEirp\":{\"type\":\"structure\",\"required\":[\"units\",\"value\"],\"members\":{\"units\":{},\"value\":{\"type\":\"double\"}}},\"transmitDisabled\":{\"type\":\"boolean\"}}},\"dataflowEndpointConfig\":{\"type\":\"structure\",\"required\":[\"dataflowEndpointName\"],\"members\":{\"dataflowEndpointName\":{},\"dataflowEndpointRegion\":{}}},\"trackingConfig\":{\"type\":\"structure\",\"required\":[\"autotrack\"],\"members\":{\"autotrack\":{}}},\"uplinkEchoConfig\":{\"type\":\"structure\",\"required\":[\"antennaUplinkConfigArn\",\"enabled\"],\"members\":{\"antennaUplinkConfigArn\":{},\"enabled\":{\"type\":\"boolean\"}}}}},\"S7\":{\"type\":\"structure\",\"required\":[\"bandwidth\",\"centerFrequency\"],\"members\":{\"bandwidth\":{\"type\":\"structure\",\"required\":[\"units\",\"value\"],\"members\":{\"units\":{},\"value\":{\"type\":\"double\"}}},\"centerFrequency\":{\"shape\":\"Sb\"},\"polarization\":{}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"units\",\"value\"],\"members\":{\"units\":{},\"value\":{\"type\":\"double\"}}},\"St\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Su\":{\"type\":\"structure\",\"members\":{\"configArn\":{},\"configId\":{},\"configType\":{}}},\"Sx\":{\"type\":\"list\",\"member\":{\"shape\":\"Sy\"}},\"Sy\":{\"type\":\"structure\",\"members\":{\"endpoint\":{\"type\":\"structure\",\"members\":{\"address\":{\"type\":\"structure\",\"required\":[\"name\",\"port\"],\"members\":{\"name\":{},\"port\":{\"type\":\"integer\"}}},\"mtu\":{\"type\":\"integer\"},\"name\":{},\"status\":{}}},\"securityDetails\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"securityGroupIds\",\"subnetIds\"],\"members\":{\"roleArn\":{},\"securityGroupIds\":{\"type\":\"list\",\"member\":{}},\"subnetIds\":{\"type\":\"list\",\"member\":{}}}}}},\"S18\":{\"type\":\"structure\",\"members\":{\"dataflowEndpointGroupId\":{}}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"missionProfileId\":{}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"antennaDemodDecodeDetails\":{\"type\":\"structure\",\"members\":{\"outputNode\":{}}},\"endpointDetails\":{\"shape\":\"Sy\"}}},\"S1r\":{\"type\":\"structure\",\"required\":[\"unit\",\"value\"],\"members\":{\"unit\":{},\"value\":{\"type\":\"double\"}}},\"S26\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 76938:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListConfigs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"configList\"},\"ListContacts\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"contactList\"},\"ListDataflowEndpointGroups\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"dataflowEndpointGroupList\"},\"ListGroundStations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"groundStationList\"},\"ListMissionProfiles\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"missionProfileList\"},\"ListSatellites\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"satellites\"}}}");

/***/ }),

/***/ 89297:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-11-28\",\"endpointPrefix\":\"guardduty\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon GuardDuty\",\"serviceId\":\"GuardDuty\",\"signatureVersion\":\"v4\",\"signingName\":\"guardduty\",\"uid\":\"guardduty-2017-11-28\"},\"operations\":{\"AcceptInvitation\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/master\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"MasterId\",\"InvitationId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"MasterId\":{\"locationName\":\"masterId\"},\"InvitationId\":{\"locationName\":\"invitationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ArchiveFindings\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings/archive\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FindingIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingIds\":{\"shape\":\"S6\",\"locationName\":\"findingIds\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDetector\":{\"http\":{\"requestUri\":\"/detector\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Enable\"],\"members\":{\"Enable\":{\"locationName\":\"enable\",\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true,\"locationName\":\"clientToken\"},\"FindingPublishingFrequency\":{\"locationName\":\"findingPublishingFrequency\"},\"DataSources\":{\"shape\":\"Sd\",\"locationName\":\"dataSources\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DetectorId\":{\"locationName\":\"detectorId\"}}}},\"CreateFilter\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/filter\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"Name\",\"FindingCriteria\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"Name\":{\"locationName\":\"name\"},\"Description\":{\"locationName\":\"description\"},\"Action\":{\"locationName\":\"action\"},\"Rank\":{\"locationName\":\"rank\",\"type\":\"integer\"},\"FindingCriteria\":{\"shape\":\"So\",\"locationName\":\"findingCriteria\"},\"ClientToken\":{\"idempotencyToken\":true,\"locationName\":\"clientToken\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"locationName\":\"name\"}}}},\"CreateIPSet\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/ipset\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"Name\",\"Format\",\"Location\",\"Activate\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"Name\":{\"locationName\":\"name\"},\"Format\":{\"locationName\":\"format\"},\"Location\":{\"locationName\":\"location\"},\"Activate\":{\"locationName\":\"activate\",\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true,\"locationName\":\"clientToken\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"IpSetId\"],\"members\":{\"IpSetId\":{\"locationName\":\"ipSetId\"}}}},\"CreateMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountDetails\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountDetails\":{\"locationName\":\"accountDetails\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Email\"],\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"Email\":{\"locationName\":\"email\"}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"CreatePublishingDestination\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/publishingDestination\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"DestinationType\",\"DestinationProperties\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"DestinationType\":{\"locationName\":\"destinationType\"},\"DestinationProperties\":{\"shape\":\"S1d\",\"locationName\":\"destinationProperties\"},\"ClientToken\":{\"idempotencyToken\":true,\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DestinationId\"],\"members\":{\"DestinationId\":{\"locationName\":\"destinationId\"}}}},\"CreateSampleFindings\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings/create\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingTypes\":{\"locationName\":\"findingTypes\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateThreatIntelSet\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/threatintelset\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"Name\",\"Format\",\"Location\",\"Activate\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"Name\":{\"locationName\":\"name\"},\"Format\":{\"locationName\":\"format\"},\"Location\":{\"locationName\":\"location\"},\"Activate\":{\"locationName\":\"activate\",\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true,\"locationName\":\"clientToken\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ThreatIntelSetId\"],\"members\":{\"ThreatIntelSetId\":{\"locationName\":\"threatIntelSetId\"}}}},\"DeclineInvitations\":{\"http\":{\"requestUri\":\"/invitation/decline\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"DeleteDetector\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/detector/{detectorId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteFilter\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/detector/{detectorId}/filter/{filterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FilterName\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FilterName\":{\"location\":\"uri\",\"locationName\":\"filterName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteIPSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/detector/{detectorId}/ipset/{ipSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"IpSetId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"IpSetId\":{\"location\":\"uri\",\"locationName\":\"ipSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInvitations\":{\"http\":{\"requestUri\":\"/invitation/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"DeleteMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"DeletePublishingDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/detector/{detectorId}/publishingDestination/{destinationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"DestinationId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"DestinationId\":{\"location\":\"uri\",\"locationName\":\"destinationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteThreatIntelSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/detector/{detectorId}/threatintelset/{threatIntelSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"ThreatIntelSetId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"ThreatIntelSetId\":{\"location\":\"uri\",\"locationName\":\"threatIntelSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeOrganizationConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/admin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AutoEnable\",\"MemberAccountLimitReached\"],\"members\":{\"AutoEnable\":{\"locationName\":\"autoEnable\",\"type\":\"boolean\"},\"MemberAccountLimitReached\":{\"locationName\":\"memberAccountLimitReached\",\"type\":\"boolean\"},\"DataSources\":{\"locationName\":\"dataSources\",\"type\":\"structure\",\"required\":[\"S3Logs\"],\"members\":{\"S3Logs\":{\"locationName\":\"s3Logs\",\"type\":\"structure\",\"required\":[\"AutoEnable\"],\"members\":{\"AutoEnable\":{\"locationName\":\"autoEnable\",\"type\":\"boolean\"}}}}}}}},\"DescribePublishingDestination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/publishingDestination/{destinationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"DestinationId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"DestinationId\":{\"location\":\"uri\",\"locationName\":\"destinationId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DestinationId\",\"DestinationType\",\"Status\",\"PublishingFailureStartTimestamp\",\"DestinationProperties\"],\"members\":{\"DestinationId\":{\"locationName\":\"destinationId\"},\"DestinationType\":{\"locationName\":\"destinationType\"},\"Status\":{\"locationName\":\"status\"},\"PublishingFailureStartTimestamp\":{\"locationName\":\"publishingFailureStartTimestamp\",\"type\":\"long\"},\"DestinationProperties\":{\"shape\":\"S1d\",\"locationName\":\"destinationProperties\"}}}},\"DisableOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/admin/disable\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AdminAccountId\"],\"members\":{\"AdminAccountId\":{\"locationName\":\"adminAccountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateFromMasterAccount\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/master/disassociate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/disassociate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"EnableOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/admin/enable\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AdminAccountId\"],\"members\":{\"AdminAccountId\":{\"locationName\":\"adminAccountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetDetector\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServiceRole\",\"Status\"],\"members\":{\"CreatedAt\":{\"locationName\":\"createdAt\"},\"FindingPublishingFrequency\":{\"locationName\":\"findingPublishingFrequency\"},\"ServiceRole\":{\"locationName\":\"serviceRole\"},\"Status\":{\"locationName\":\"status\"},\"UpdatedAt\":{\"locationName\":\"updatedAt\"},\"DataSources\":{\"shape\":\"S2l\",\"locationName\":\"dataSources\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}}},\"GetFilter\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/filter/{filterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FilterName\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FilterName\":{\"location\":\"uri\",\"locationName\":\"filterName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\",\"Action\",\"FindingCriteria\"],\"members\":{\"Name\":{\"locationName\":\"name\"},\"Description\":{\"locationName\":\"description\"},\"Action\":{\"locationName\":\"action\"},\"Rank\":{\"locationName\":\"rank\",\"type\":\"integer\"},\"FindingCriteria\":{\"shape\":\"So\",\"locationName\":\"findingCriteria\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}}},\"GetFindings\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FindingIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingIds\":{\"shape\":\"S6\",\"locationName\":\"findingIds\"},\"SortCriteria\":{\"shape\":\"S2u\",\"locationName\":\"sortCriteria\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Findings\"],\"members\":{\"Findings\":{\"locationName\":\"findings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Arn\",\"CreatedAt\",\"Id\",\"Region\",\"Resource\",\"SchemaVersion\",\"Severity\",\"Type\",\"UpdatedAt\"],\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"Arn\":{\"locationName\":\"arn\"},\"Confidence\":{\"locationName\":\"confidence\",\"type\":\"double\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"Description\":{\"locationName\":\"description\"},\"Id\":{\"locationName\":\"id\"},\"Partition\":{\"locationName\":\"partition\"},\"Region\":{\"locationName\":\"region\"},\"Resource\":{\"locationName\":\"resource\",\"type\":\"structure\",\"members\":{\"AccessKeyDetails\":{\"locationName\":\"accessKeyDetails\",\"type\":\"structure\",\"members\":{\"AccessKeyId\":{\"locationName\":\"accessKeyId\"},\"PrincipalId\":{\"locationName\":\"principalId\"},\"UserName\":{\"locationName\":\"userName\"},\"UserType\":{\"locationName\":\"userType\"}}},\"S3BucketDetails\":{\"locationName\":\"s3BucketDetails\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Name\":{\"locationName\":\"name\"},\"Type\":{\"locationName\":\"type\"},\"CreatedAt\":{\"locationName\":\"createdAt\",\"type\":\"timestamp\"},\"Owner\":{\"locationName\":\"owner\",\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"}}},\"Tags\":{\"shape\":\"S36\",\"locationName\":\"tags\"},\"DefaultServerSideEncryption\":{\"locationName\":\"defaultServerSideEncryption\",\"type\":\"structure\",\"members\":{\"EncryptionType\":{\"locationName\":\"encryptionType\"},\"KmsMasterKeyArn\":{\"locationName\":\"kmsMasterKeyArn\"}}},\"PublicAccess\":{\"locationName\":\"publicAccess\",\"type\":\"structure\",\"members\":{\"PermissionConfiguration\":{\"locationName\":\"permissionConfiguration\",\"type\":\"structure\",\"members\":{\"BucketLevelPermissions\":{\"locationName\":\"bucketLevelPermissions\",\"type\":\"structure\",\"members\":{\"AccessControlList\":{\"locationName\":\"accessControlList\",\"type\":\"structure\",\"members\":{\"AllowsPublicReadAccess\":{\"locationName\":\"allowsPublicReadAccess\",\"type\":\"boolean\"},\"AllowsPublicWriteAccess\":{\"locationName\":\"allowsPublicWriteAccess\",\"type\":\"boolean\"}}},\"BucketPolicy\":{\"locationName\":\"bucketPolicy\",\"type\":\"structure\",\"members\":{\"AllowsPublicReadAccess\":{\"locationName\":\"allowsPublicReadAccess\",\"type\":\"boolean\"},\"AllowsPublicWriteAccess\":{\"locationName\":\"allowsPublicWriteAccess\",\"type\":\"boolean\"}}},\"BlockPublicAccess\":{\"shape\":\"S3e\",\"locationName\":\"blockPublicAccess\"}}},\"AccountLevelPermissions\":{\"locationName\":\"accountLevelPermissions\",\"type\":\"structure\",\"members\":{\"BlockPublicAccess\":{\"shape\":\"S3e\",\"locationName\":\"blockPublicAccess\"}}}}},\"EffectivePermission\":{\"locationName\":\"effectivePermission\"}}}}}},\"InstanceDetails\":{\"locationName\":\"instanceDetails\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"IamInstanceProfile\":{\"locationName\":\"iamInstanceProfile\",\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Id\":{\"locationName\":\"id\"}}},\"ImageDescription\":{\"locationName\":\"imageDescription\"},\"ImageId\":{\"locationName\":\"imageId\"},\"InstanceId\":{\"locationName\":\"instanceId\"},\"InstanceState\":{\"locationName\":\"instanceState\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"OutpostArn\":{\"locationName\":\"outpostArn\"},\"LaunchTime\":{\"locationName\":\"launchTime\"},\"NetworkInterfaces\":{\"locationName\":\"networkInterfaces\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Ipv6Addresses\":{\"locationName\":\"ipv6Addresses\",\"type\":\"list\",\"member\":{}},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"},\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"},\"PrivateIpAddresses\":{\"locationName\":\"privateIpAddresses\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PrivateDnsName\":{\"locationName\":\"privateDnsName\"},\"PrivateIpAddress\":{\"locationName\":\"privateIpAddress\"}}}},\"PublicDnsName\":{\"locationName\":\"publicDnsName\"},\"PublicIp\":{\"locationName\":\"publicIp\"},\"SecurityGroups\":{\"locationName\":\"securityGroups\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupId\":{\"locationName\":\"groupId\"},\"GroupName\":{\"locationName\":\"groupName\"}}}},\"SubnetId\":{\"locationName\":\"subnetId\"},\"VpcId\":{\"locationName\":\"vpcId\"}}}},\"Platform\":{\"locationName\":\"platform\"},\"ProductCodes\":{\"locationName\":\"productCodes\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"ProductType\":{\"locationName\":\"productType\"}}}},\"Tags\":{\"shape\":\"S36\",\"locationName\":\"tags\"}}},\"ResourceType\":{\"locationName\":\"resourceType\"}}},\"SchemaVersion\":{\"locationName\":\"schemaVersion\"},\"Service\":{\"locationName\":\"service\",\"type\":\"structure\",\"members\":{\"Action\":{\"locationName\":\"action\",\"type\":\"structure\",\"members\":{\"ActionType\":{\"locationName\":\"actionType\"},\"AwsApiCallAction\":{\"locationName\":\"awsApiCallAction\",\"type\":\"structure\",\"members\":{\"Api\":{\"locationName\":\"api\"},\"CallerType\":{\"locationName\":\"callerType\"},\"DomainDetails\":{\"locationName\":\"domainDetails\",\"type\":\"structure\",\"members\":{\"Domain\":{\"locationName\":\"domain\"}}},\"ErrorCode\":{\"locationName\":\"errorCode\"},\"RemoteIpDetails\":{\"shape\":\"S3v\",\"locationName\":\"remoteIpDetails\"},\"ServiceName\":{\"locationName\":\"serviceName\"}}},\"DnsRequestAction\":{\"locationName\":\"dnsRequestAction\",\"type\":\"structure\",\"members\":{\"Domain\":{\"locationName\":\"domain\"}}},\"NetworkConnectionAction\":{\"locationName\":\"networkConnectionAction\",\"type\":\"structure\",\"members\":{\"Blocked\":{\"locationName\":\"blocked\",\"type\":\"boolean\"},\"ConnectionDirection\":{\"locationName\":\"connectionDirection\"},\"LocalPortDetails\":{\"shape\":\"S42\",\"locationName\":\"localPortDetails\"},\"Protocol\":{\"locationName\":\"protocol\"},\"LocalIpDetails\":{\"shape\":\"S43\",\"locationName\":\"localIpDetails\"},\"RemoteIpDetails\":{\"shape\":\"S3v\",\"locationName\":\"remoteIpDetails\"},\"RemotePortDetails\":{\"locationName\":\"remotePortDetails\",\"type\":\"structure\",\"members\":{\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"},\"PortName\":{\"locationName\":\"portName\"}}}}},\"PortProbeAction\":{\"locationName\":\"portProbeAction\",\"type\":\"structure\",\"members\":{\"Blocked\":{\"locationName\":\"blocked\",\"type\":\"boolean\"},\"PortProbeDetails\":{\"locationName\":\"portProbeDetails\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LocalPortDetails\":{\"shape\":\"S42\",\"locationName\":\"localPortDetails\"},\"LocalIpDetails\":{\"shape\":\"S43\",\"locationName\":\"localIpDetails\"},\"RemoteIpDetails\":{\"shape\":\"S3v\",\"locationName\":\"remoteIpDetails\"}}}}}}}},\"Evidence\":{\"locationName\":\"evidence\",\"type\":\"structure\",\"members\":{\"ThreatIntelligenceDetails\":{\"locationName\":\"threatIntelligenceDetails\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ThreatListName\":{\"locationName\":\"threatListName\"},\"ThreatNames\":{\"locationName\":\"threatNames\",\"type\":\"list\",\"member\":{}}}}}}},\"Archived\":{\"locationName\":\"archived\",\"type\":\"boolean\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"DetectorId\":{\"locationName\":\"detectorId\"},\"EventFirstSeen\":{\"locationName\":\"eventFirstSeen\"},\"EventLastSeen\":{\"locationName\":\"eventLastSeen\"},\"ResourceRole\":{\"locationName\":\"resourceRole\"},\"ServiceName\":{\"locationName\":\"serviceName\"},\"UserFeedback\":{\"locationName\":\"userFeedback\"}}},\"Severity\":{\"locationName\":\"severity\",\"type\":\"double\"},\"Title\":{\"locationName\":\"title\"},\"Type\":{\"locationName\":\"type\"},\"UpdatedAt\":{\"locationName\":\"updatedAt\"}}}}}}},\"GetFindingsStatistics\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FindingStatisticTypes\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingStatisticTypes\":{\"locationName\":\"findingStatisticTypes\",\"type\":\"list\",\"member\":{}},\"FindingCriteria\":{\"shape\":\"So\",\"locationName\":\"findingCriteria\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"FindingStatistics\"],\"members\":{\"FindingStatistics\":{\"locationName\":\"findingStatistics\",\"type\":\"structure\",\"members\":{\"CountBySeverity\":{\"locationName\":\"countBySeverity\",\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}}}}},\"GetIPSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/ipset/{ipSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"IpSetId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"IpSetId\":{\"location\":\"uri\",\"locationName\":\"ipSetId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\",\"Format\",\"Location\",\"Status\"],\"members\":{\"Name\":{\"locationName\":\"name\"},\"Format\":{\"locationName\":\"format\"},\"Location\":{\"locationName\":\"location\"},\"Status\":{\"locationName\":\"status\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}}},\"GetInvitationsCount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitation/count\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"InvitationsCount\":{\"locationName\":\"invitationsCount\",\"type\":\"integer\"}}}},\"GetMasterAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/master\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Master\"],\"members\":{\"Master\":{\"locationName\":\"master\",\"type\":\"structure\",\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"InvitationId\":{\"locationName\":\"invitationId\"},\"RelationshipStatus\":{\"locationName\":\"relationshipStatus\"},\"InvitedAt\":{\"locationName\":\"invitedAt\"}}}}}},\"GetMemberDetectors\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/detector/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"MemberDataSourceConfigurations\",\"UnprocessedAccounts\"],\"members\":{\"MemberDataSourceConfigurations\":{\"locationName\":\"members\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"DataSources\"],\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"DataSources\":{\"shape\":\"S2l\",\"locationName\":\"dataSources\"}}}},\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"GetMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Members\",\"UnprocessedAccounts\"],\"members\":{\"Members\":{\"shape\":\"S4w\",\"locationName\":\"members\"},\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"GetThreatIntelSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/threatintelset/{threatIntelSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"ThreatIntelSetId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"ThreatIntelSetId\":{\"location\":\"uri\",\"locationName\":\"threatIntelSetId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\",\"Format\",\"Location\",\"Status\"],\"members\":{\"Name\":{\"locationName\":\"name\"},\"Format\":{\"locationName\":\"format\"},\"Location\":{\"locationName\":\"location\"},\"Status\":{\"locationName\":\"status\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}}},\"GetUsageStatistics\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/usage/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"UsageStatisticType\",\"UsageCriteria\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"UsageStatisticType\":{\"locationName\":\"usageStatisticsType\"},\"UsageCriteria\":{\"locationName\":\"usageCriteria\",\"type\":\"structure\",\"required\":[\"DataSources\"],\"members\":{\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"},\"DataSources\":{\"locationName\":\"dataSources\",\"type\":\"list\",\"member\":{}},\"Resources\":{\"locationName\":\"resources\",\"type\":\"list\",\"member\":{}}}},\"Unit\":{\"locationName\":\"unit\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UsageStatistics\":{\"locationName\":\"usageStatistics\",\"type\":\"structure\",\"members\":{\"SumByAccount\":{\"locationName\":\"sumByAccount\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"Total\":{\"shape\":\"S5c\",\"locationName\":\"total\"}}}},\"SumByDataSource\":{\"locationName\":\"sumByDataSource\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataSource\":{\"locationName\":\"dataSource\"},\"Total\":{\"shape\":\"S5c\",\"locationName\":\"total\"}}}},\"SumByResource\":{\"shape\":\"S5f\",\"locationName\":\"sumByResource\"},\"TopResources\":{\"shape\":\"S5f\",\"locationName\":\"topResources\"}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"InviteMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/invite\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"},\"DisableEmailNotification\":{\"locationName\":\"disableEmailNotification\",\"type\":\"boolean\"},\"Message\":{\"locationName\":\"message\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"ListDetectors\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DetectorIds\"],\"members\":{\"DetectorIds\":{\"locationName\":\"detectorIds\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListFilters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/filter\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"FilterNames\"],\"members\":{\"FilterNames\":{\"locationName\":\"filterNames\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListFindings\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingCriteria\":{\"shape\":\"So\",\"locationName\":\"findingCriteria\"},\"SortCriteria\":{\"shape\":\"S2u\",\"locationName\":\"sortCriteria\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"FindingIds\"],\"members\":{\"FindingIds\":{\"shape\":\"S6\",\"locationName\":\"findingIds\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListIPSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/ipset\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"IpSetIds\"],\"members\":{\"IpSetIds\":{\"locationName\":\"ipSetIds\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListInvitations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invitations\":{\"locationName\":\"invitations\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"InvitationId\":{\"locationName\":\"invitationId\"},\"RelationshipStatus\":{\"locationName\":\"relationshipStatus\"},\"InvitedAt\":{\"locationName\":\"invitedAt\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListMembers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/member\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"OnlyAssociated\":{\"location\":\"querystring\",\"locationName\":\"onlyAssociated\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Members\":{\"shape\":\"S4w\",\"locationName\":\"members\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListOrganizationAdminAccounts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/admin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AdminAccounts\":{\"locationName\":\"adminAccounts\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AdminAccountId\":{\"locationName\":\"adminAccountId\"},\"AdminStatus\":{\"locationName\":\"adminStatus\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListPublishingDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/publishingDestination\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Destinations\"],\"members\":{\"Destinations\":{\"locationName\":\"destinations\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DestinationId\",\"DestinationType\",\"Status\"],\"members\":{\"DestinationId\":{\"locationName\":\"destinationId\"},\"DestinationType\":{\"locationName\":\"destinationType\"},\"Status\":{\"locationName\":\"status\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}}},\"ListThreatIntelSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector/{detectorId}/threatintelset\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ThreatIntelSetIds\"],\"members\":{\"ThreatIntelSetIds\":{\"locationName\":\"threatIntelSetIds\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"StartMonitoringMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/start\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"StopMonitoringMembers\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/stop\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sf\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UnarchiveFindings\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings/unarchive\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FindingIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingIds\":{\"shape\":\"S6\",\"locationName\":\"findingIds\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDetector\":{\"http\":{\"requestUri\":\"/detector/{detectorId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"Enable\":{\"locationName\":\"enable\",\"type\":\"boolean\"},\"FindingPublishingFrequency\":{\"locationName\":\"findingPublishingFrequency\"},\"DataSources\":{\"shape\":\"Sd\",\"locationName\":\"dataSources\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFilter\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/filter/{filterName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FilterName\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FilterName\":{\"location\":\"uri\",\"locationName\":\"filterName\"},\"Description\":{\"locationName\":\"description\"},\"Action\":{\"locationName\":\"action\"},\"Rank\":{\"locationName\":\"rank\",\"type\":\"integer\"},\"FindingCriteria\":{\"shape\":\"So\",\"locationName\":\"findingCriteria\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"locationName\":\"name\"}}}},\"UpdateFindingsFeedback\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/findings/feedback\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"FindingIds\",\"Feedback\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"FindingIds\":{\"shape\":\"S6\",\"locationName\":\"findingIds\"},\"Feedback\":{\"locationName\":\"feedback\"},\"Comments\":{\"locationName\":\"comments\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateIPSet\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/ipset/{ipSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"IpSetId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"IpSetId\":{\"location\":\"uri\",\"locationName\":\"ipSetId\"},\"Name\":{\"locationName\":\"name\"},\"Location\":{\"locationName\":\"location\"},\"Activate\":{\"locationName\":\"activate\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateMemberDetectors\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/member/detector/update\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AccountIds\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AccountIds\":{\"shape\":\"S1n\",\"locationName\":\"accountIds\"},\"DataSources\":{\"shape\":\"Sd\",\"locationName\":\"dataSources\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UnprocessedAccounts\"],\"members\":{\"UnprocessedAccounts\":{\"shape\":\"S19\",\"locationName\":\"unprocessedAccounts\"}}}},\"UpdateOrganizationConfiguration\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/admin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"AutoEnable\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"AutoEnable\":{\"locationName\":\"autoEnable\",\"type\":\"boolean\"},\"DataSources\":{\"locationName\":\"dataSources\",\"type\":\"structure\",\"members\":{\"S3Logs\":{\"locationName\":\"s3Logs\",\"type\":\"structure\",\"required\":[\"AutoEnable\"],\"members\":{\"AutoEnable\":{\"locationName\":\"autoEnable\",\"type\":\"boolean\"}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePublishingDestination\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/publishingDestination/{destinationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"DestinationId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"DestinationId\":{\"location\":\"uri\",\"locationName\":\"destinationId\"},\"DestinationProperties\":{\"shape\":\"S1d\",\"locationName\":\"destinationProperties\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateThreatIntelSet\":{\"http\":{\"requestUri\":\"/detector/{detectorId}/threatintelset/{threatIntelSetId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DetectorId\",\"ThreatIntelSetId\"],\"members\":{\"DetectorId\":{\"location\":\"uri\",\"locationName\":\"detectorId\"},\"ThreatIntelSetId\":{\"location\":\"uri\",\"locationName\":\"threatIntelSetId\"},\"Name\":{\"locationName\":\"name\"},\"Location\":{\"locationName\":\"location\"},\"Activate\":{\"locationName\":\"activate\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S6\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"structure\",\"members\":{\"S3Logs\":{\"locationName\":\"s3Logs\",\"type\":\"structure\",\"required\":[\"Enable\"],\"members\":{\"Enable\":{\"locationName\":\"enable\",\"type\":\"boolean\"}}}}},\"Sf\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"So\":{\"type\":\"structure\",\"members\":{\"Criterion\":{\"locationName\":\"criterion\",\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Eq\":{\"deprecated\":true,\"locationName\":\"eq\",\"type\":\"list\",\"member\":{}},\"Neq\":{\"deprecated\":true,\"locationName\":\"neq\",\"type\":\"list\",\"member\":{}},\"Gt\":{\"deprecated\":true,\"locationName\":\"gt\",\"type\":\"integer\"},\"Gte\":{\"deprecated\":true,\"locationName\":\"gte\",\"type\":\"integer\"},\"Lt\":{\"deprecated\":true,\"locationName\":\"lt\",\"type\":\"integer\"},\"Lte\":{\"deprecated\":true,\"locationName\":\"lte\",\"type\":\"integer\"},\"Equals\":{\"locationName\":\"equals\",\"type\":\"list\",\"member\":{}},\"NotEquals\":{\"locationName\":\"notEquals\",\"type\":\"list\",\"member\":{}},\"GreaterThan\":{\"locationName\":\"greaterThan\",\"type\":\"long\"},\"GreaterThanOrEqual\":{\"locationName\":\"greaterThanOrEqual\",\"type\":\"long\"},\"LessThan\":{\"locationName\":\"lessThan\",\"type\":\"long\"},\"LessThanOrEqual\":{\"locationName\":\"lessThanOrEqual\",\"type\":\"long\"}}}}}},\"S19\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Result\"],\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"Result\":{\"locationName\":\"result\"}}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"DestinationArn\":{\"locationName\":\"destinationArn\"},\"KmsKeyArn\":{\"locationName\":\"kmsKeyArn\"}}},\"S1n\":{\"type\":\"list\",\"member\":{}},\"S2l\":{\"type\":\"structure\",\"required\":[\"CloudTrail\",\"DNSLogs\",\"FlowLogs\",\"S3Logs\"],\"members\":{\"CloudTrail\":{\"locationName\":\"cloudTrail\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{\"locationName\":\"status\"}}},\"DNSLogs\":{\"locationName\":\"dnsLogs\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{\"locationName\":\"status\"}}},\"FlowLogs\":{\"locationName\":\"flowLogs\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{\"locationName\":\"status\"}}},\"S3Logs\":{\"locationName\":\"s3Logs\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{\"locationName\":\"status\"}}}}},\"S2u\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{\"locationName\":\"attributeName\"},\"OrderBy\":{\"locationName\":\"orderBy\"}}},\"S36\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"key\"},\"Value\":{\"locationName\":\"value\"}}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"IgnorePublicAcls\":{\"locationName\":\"ignorePublicAcls\",\"type\":\"boolean\"},\"RestrictPublicBuckets\":{\"locationName\":\"restrictPublicBuckets\",\"type\":\"boolean\"},\"BlockPublicAcls\":{\"locationName\":\"blockPublicAcls\",\"type\":\"boolean\"},\"BlockPublicPolicy\":{\"locationName\":\"blockPublicPolicy\",\"type\":\"boolean\"}}},\"S3v\":{\"type\":\"structure\",\"members\":{\"City\":{\"locationName\":\"city\",\"type\":\"structure\",\"members\":{\"CityName\":{\"locationName\":\"cityName\"}}},\"Country\":{\"locationName\":\"country\",\"type\":\"structure\",\"members\":{\"CountryCode\":{\"locationName\":\"countryCode\"},\"CountryName\":{\"locationName\":\"countryName\"}}},\"GeoLocation\":{\"locationName\":\"geoLocation\",\"type\":\"structure\",\"members\":{\"Lat\":{\"locationName\":\"lat\",\"type\":\"double\"},\"Lon\":{\"locationName\":\"lon\",\"type\":\"double\"}}},\"IpAddressV4\":{\"locationName\":\"ipAddressV4\"},\"Organization\":{\"locationName\":\"organization\",\"type\":\"structure\",\"members\":{\"Asn\":{\"locationName\":\"asn\"},\"AsnOrg\":{\"locationName\":\"asnOrg\"},\"Isp\":{\"locationName\":\"isp\"},\"Org\":{\"locationName\":\"org\"}}}}},\"S42\":{\"type\":\"structure\",\"members\":{\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"},\"PortName\":{\"locationName\":\"portName\"}}},\"S43\":{\"type\":\"structure\",\"members\":{\"IpAddressV4\":{\"locationName\":\"ipAddressV4\"}}},\"S4w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"MasterId\",\"Email\",\"RelationshipStatus\",\"UpdatedAt\"],\"members\":{\"AccountId\":{\"locationName\":\"accountId\"},\"DetectorId\":{\"locationName\":\"detectorId\"},\"MasterId\":{\"locationName\":\"masterId\"},\"Email\":{\"locationName\":\"email\"},\"RelationshipStatus\":{\"locationName\":\"relationshipStatus\"},\"InvitedAt\":{\"locationName\":\"invitedAt\"},\"UpdatedAt\":{\"locationName\":\"updatedAt\"}}}},\"S5c\":{\"type\":\"structure\",\"members\":{\"Amount\":{\"locationName\":\"amount\"},\"Unit\":{\"locationName\":\"unit\"}}},\"S5f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Resource\":{\"locationName\":\"resource\"},\"Total\":{\"shape\":\"S5c\",\"locationName\":\"total\"}}}}}}");

/***/ }),

/***/ 69484:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetUsageStatistics\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDetectors\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DetectorIds\"},\"ListFilters\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FilterNames\"},\"ListFindings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FindingIds\"},\"ListIPSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"IpSetIds\"},\"ListInvitations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Invitations\"},\"ListMembers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Members\"},\"ListOrganizationAdminAccounts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AdminAccounts\"},\"ListPublishingDestinations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListThreatIntelSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ThreatIntelSetIds\"}}}");

/***/ }),

/***/ 88191:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-08-04\",\"endpointPrefix\":\"health\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWSHealth\",\"serviceFullName\":\"AWS Health APIs and Notifications\",\"serviceId\":\"Health\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSHealth_20160804\",\"uid\":\"health-2016-08-04\"},\"operations\":{\"DescribeAffectedAccountsForOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"eventArn\"],\"members\":{\"eventArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"affectedAccounts\":{\"type\":\"list\",\"member\":{}},\"eventScopeCode\":{},\"nextToken\":{}}},\"idempotent\":true},\"DescribeAffectedEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"filter\"],\"members\":{\"filter\":{\"type\":\"structure\",\"required\":[\"eventArns\"],\"members\":{\"eventArns\":{\"shape\":\"Sb\"},\"entityArns\":{\"shape\":\"Sc\"},\"entityValues\":{\"shape\":\"Se\"},\"lastUpdatedTimes\":{\"shape\":\"Sg\"},\"tags\":{\"shape\":\"Sj\"},\"statusCodes\":{\"type\":\"list\",\"member\":{}}}},\"locale\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"entities\":{\"shape\":\"Sr\"},\"nextToken\":{}}},\"idempotent\":true},\"DescribeAffectedEntitiesForOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"organizationEntityFilters\"],\"members\":{\"organizationEntityFilters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}},\"locale\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"entities\":{\"shape\":\"Sr\"},\"failedSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"awsAccountId\":{},\"eventArn\":{},\"errorName\":{},\"errorMessage\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"DescribeEntityAggregates\":{\"input\":{\"type\":\"structure\",\"members\":{\"eventArns\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"entityAggregates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"eventArn\":{},\"count\":{\"type\":\"integer\"}}}}}},\"idempotent\":true},\"DescribeEventAggregates\":{\"input\":{\"type\":\"structure\",\"required\":[\"aggregateField\"],\"members\":{\"filter\":{\"shape\":\"S18\"},\"aggregateField\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"eventAggregates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"aggregateValue\":{},\"count\":{\"type\":\"integer\"}}}},\"nextToken\":{}}},\"idempotent\":true},\"DescribeEventDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"eventArns\"],\"members\":{\"eventArns\":{\"shape\":\"Sb\"},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"event\":{\"shape\":\"S1u\"},\"eventDescription\":{\"shape\":\"S1w\"},\"eventMetadata\":{\"shape\":\"S1y\"}}}},\"failedSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"eventArn\":{},\"errorName\":{},\"errorMessage\":{}}}}}},\"idempotent\":true},\"DescribeEventDetailsForOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"organizationEventDetailFilters\"],\"members\":{\"organizationEventDetailFilters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"successfulSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"awsAccountId\":{},\"event\":{\"shape\":\"S1u\"},\"eventDescription\":{\"shape\":\"S1w\"},\"eventMetadata\":{\"shape\":\"S1y\"}}}},\"failedSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"awsAccountId\":{},\"eventArn\":{},\"errorName\":{},\"errorMessage\":{}}}}}},\"idempotent\":true},\"DescribeEventTypes\":{\"input\":{\"type\":\"structure\",\"members\":{\"filter\":{\"type\":\"structure\",\"members\":{\"eventTypeCodes\":{\"type\":\"list\",\"member\":{}},\"services\":{\"shape\":\"S1b\"},\"eventTypeCategories\":{\"type\":\"list\",\"member\":{}}}},\"locale\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"eventTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"service\":{},\"code\":{},\"category\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"filter\":{\"shape\":\"S18\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"events\":{\"type\":\"list\",\"member\":{\"shape\":\"S1u\"}},\"nextToken\":{}}},\"idempotent\":true},\"DescribeEventsForOrganization\":{\"input\":{\"type\":\"structure\",\"members\":{\"filter\":{\"type\":\"structure\",\"members\":{\"eventTypeCodes\":{\"shape\":\"S19\"},\"awsAccountIds\":{\"type\":\"list\",\"member\":{}},\"services\":{\"shape\":\"S1b\"},\"regions\":{\"shape\":\"S1d\"},\"startTime\":{\"shape\":\"Sh\"},\"endTime\":{\"shape\":\"Sh\"},\"lastUpdatedTime\":{\"shape\":\"Sh\"},\"entityArns\":{\"shape\":\"Sc\"},\"entityValues\":{\"shape\":\"Se\"},\"eventTypeCategories\":{\"shape\":\"S1h\"},\"eventStatusCodes\":{\"shape\":\"S1j\"}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"service\":{},\"eventTypeCode\":{},\"eventTypeCategory\":{},\"eventScopeCode\":{},\"region\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"},\"statusCode\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"DescribeHealthServiceStatusForOrganization\":{\"output\":{\"type\":\"structure\",\"members\":{\"healthServiceAccessStatusForOrganization\":{}}},\"idempotent\":true},\"DisableHealthServiceAccessForOrganization\":{\"idempotent\":true},\"EnableHealthServiceAccessForOrganization\":{\"idempotent\":true}},\"shapes\":{\"Sb\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"list\",\"member\":{}},\"Sg\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}},\"Sh\":{\"type\":\"structure\",\"members\":{\"from\":{\"type\":\"timestamp\"},\"to\":{\"type\":\"timestamp\"}}},\"Sj\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}},\"Sk\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"entityArn\":{},\"eventArn\":{},\"entityValue\":{},\"entityUrl\":{},\"awsAccountId\":{},\"lastUpdatedTime\":{\"type\":\"timestamp\"},\"statusCode\":{},\"tags\":{\"shape\":\"Sk\"}}}},\"Sw\":{\"type\":\"structure\",\"required\":[\"eventArn\"],\"members\":{\"eventArn\":{},\"awsAccountId\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"eventArns\":{\"shape\":\"Sb\"},\"eventTypeCodes\":{\"shape\":\"S19\"},\"services\":{\"shape\":\"S1b\"},\"regions\":{\"shape\":\"S1d\"},\"availabilityZones\":{\"type\":\"list\",\"member\":{}},\"startTimes\":{\"shape\":\"Sg\"},\"endTimes\":{\"shape\":\"Sg\"},\"lastUpdatedTimes\":{\"shape\":\"Sg\"},\"entityArns\":{\"shape\":\"Sc\"},\"entityValues\":{\"shape\":\"Se\"},\"eventTypeCategories\":{\"shape\":\"S1h\"},\"tags\":{\"shape\":\"Sj\"},\"eventStatusCodes\":{\"shape\":\"S1j\"}}},\"S19\":{\"type\":\"list\",\"member\":{}},\"S1b\":{\"type\":\"list\",\"member\":{}},\"S1d\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"list\",\"member\":{}},\"S1j\":{\"type\":\"list\",\"member\":{}},\"S1u\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"service\":{},\"eventTypeCode\":{},\"eventTypeCategory\":{},\"region\":{},\"availabilityZone\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"},\"statusCode\":{},\"eventScopeCode\":{}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"latestDescription\":{}}},\"S1y\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 87844:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAffectedAccountsForOrganization\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"non_aggregate_keys\":[\"eventScopeCode\"],\"output_token\":\"nextToken\",\"result_key\":\"affectedAccounts\"},\"DescribeAffectedEntities\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"entities\"},\"DescribeAffectedEntitiesForOrganization\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"non_aggregate_keys\":[\"failedSet\"],\"output_token\":\"nextToken\",\"result_key\":\"entities\"},\"DescribeEntityAggregates\":{\"result_key\":\"entityAggregates\"},\"DescribeEventAggregates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"eventAggregates\"},\"DescribeEventTypes\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"eventTypes\"},\"DescribeEvents\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"events\"},\"DescribeEventsForOrganization\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"events\"}}}");

/***/ }),

/***/ 78700:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-01\",\"endpointPrefix\":\"healthlake\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"HealthLake\",\"serviceFullName\":\"Amazon HealthLake\",\"serviceId\":\"HealthLake\",\"signatureVersion\":\"v4\",\"signingName\":\"healthlake\",\"targetPrefix\":\"HealthLake\",\"uid\":\"healthlake-2017-07-01\"},\"operations\":{\"CreateFHIRDatastore\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatastoreTypeVersion\"],\"members\":{\"DatastoreName\":{},\"DatastoreTypeVersion\":{},\"PreloadDataConfig\":{\"shape\":\"S4\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"DatastoreId\",\"DatastoreArn\",\"DatastoreStatus\",\"DatastoreEndpoint\"],\"members\":{\"DatastoreId\":{},\"DatastoreArn\":{},\"DatastoreStatus\":{},\"DatastoreEndpoint\":{}}}},\"DeleteFHIRDatastore\":{\"input\":{\"type\":\"structure\",\"members\":{\"DatastoreId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DatastoreId\",\"DatastoreArn\",\"DatastoreStatus\",\"DatastoreEndpoint\"],\"members\":{\"DatastoreId\":{},\"DatastoreArn\":{},\"DatastoreStatus\":{},\"DatastoreEndpoint\":{}}}},\"DescribeFHIRDatastore\":{\"input\":{\"type\":\"structure\",\"members\":{\"DatastoreId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DatastoreProperties\"],\"members\":{\"DatastoreProperties\":{\"shape\":\"Sg\"}}}},\"DescribeFHIRExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatastoreId\",\"JobId\"],\"members\":{\"DatastoreId\":{},\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ExportJobProperties\"],\"members\":{\"ExportJobProperties\":{\"type\":\"structure\",\"required\":[\"JobId\",\"JobStatus\",\"SubmitTime\",\"DatastoreId\",\"OutputDataConfig\"],\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"DatastoreId\":{},\"OutputDataConfig\":{\"shape\":\"Sp\"},\"DataAccessRoleArn\":{},\"Message\":{}}}}}},\"DescribeFHIRImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatastoreId\",\"JobId\"],\"members\":{\"DatastoreId\":{},\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ImportJobProperties\"],\"members\":{\"ImportJobProperties\":{\"type\":\"structure\",\"required\":[\"JobId\",\"JobStatus\",\"SubmitTime\",\"DatastoreId\",\"InputDataConfig\"],\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"SubmitTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"DatastoreId\":{},\"InputDataConfig\":{\"shape\":\"Sw\"},\"DataAccessRoleArn\":{},\"Message\":{}}}}}},\"ListFHIRDatastores\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"DatastoreName\":{},\"DatastoreStatus\":{},\"CreatedBefore\":{\"type\":\"timestamp\"},\"CreatedAfter\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DatastorePropertiesList\"],\"members\":{\"DatastorePropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}},\"NextToken\":{}}}},\"StartFHIRExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"OutputDataConfig\",\"DatastoreId\",\"DataAccessRoleArn\",\"ClientToken\"],\"members\":{\"JobName\":{},\"OutputDataConfig\":{\"shape\":\"Sp\"},\"DatastoreId\":{},\"DataAccessRoleArn\":{},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobId\",\"JobStatus\"],\"members\":{\"JobId\":{},\"JobStatus\":{},\"DatastoreId\":{}}}},\"StartFHIRImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"DatastoreId\",\"DataAccessRoleArn\",\"ClientToken\"],\"members\":{\"JobName\":{},\"InputDataConfig\":{\"shape\":\"Sw\"},\"DatastoreId\":{},\"DataAccessRoleArn\":{},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobId\",\"JobStatus\"],\"members\":{\"JobId\":{},\"JobStatus\":{},\"DatastoreId\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"PreloadDataType\"],\"members\":{\"PreloadDataType\":{}}},\"Sg\":{\"type\":\"structure\",\"required\":[\"DatastoreId\",\"DatastoreArn\",\"DatastoreStatus\",\"DatastoreTypeVersion\",\"DatastoreEndpoint\"],\"members\":{\"DatastoreId\":{},\"DatastoreArn\":{},\"DatastoreName\":{},\"DatastoreStatus\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"DatastoreTypeVersion\":{},\"DatastoreEndpoint\":{},\"PreloadDataConfig\":{\"shape\":\"S4\"}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"S3Uri\":{}},\"union\":true},\"Sw\":{\"type\":\"structure\",\"members\":{\"S3Uri\":{}},\"union\":true}}}");

/***/ }),

/***/ 31590:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListFHIRDatastores\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 77536:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-03-01\",\"endpointPrefix\":\"honeycode\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Honeycode\",\"serviceFullName\":\"Amazon Honeycode\",\"serviceId\":\"Honeycode\",\"signatureVersion\":\"v4\",\"signingName\":\"honeycode\",\"uid\":\"honeycode-2020-03-01\"},\"operations\":{\"BatchCreateTableRows\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/rows/batchcreate\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\",\"rowsToCreate\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"rowsToCreate\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"batchItemId\",\"cellsToCreate\"],\"members\":{\"batchItemId\":{},\"cellsToCreate\":{\"shape\":\"S6\"}}}},\"clientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"workbookCursor\",\"createdRows\"],\"members\":{\"workbookCursor\":{\"type\":\"long\"},\"createdRows\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"failedBatchItems\":{\"shape\":\"Se\"}}}},\"BatchDeleteTableRows\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/rows/batchdelete\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\",\"rowIds\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"rowIds\":{\"shape\":\"Si\"},\"clientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"workbookCursor\"],\"members\":{\"workbookCursor\":{\"type\":\"long\"},\"failedBatchItems\":{\"shape\":\"Se\"}}}},\"BatchUpdateTableRows\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/rows/batchupdate\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\",\"rowsToUpdate\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"rowsToUpdate\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"rowId\",\"cellsToUpdate\"],\"members\":{\"rowId\":{},\"cellsToUpdate\":{\"shape\":\"S6\"}}}},\"clientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"workbookCursor\"],\"members\":{\"workbookCursor\":{\"type\":\"long\"},\"failedBatchItems\":{\"shape\":\"Se\"}}}},\"BatchUpsertTableRows\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/rows/batchupsert\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\",\"rowsToUpsert\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"rowsToUpsert\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"batchItemId\",\"filter\",\"cellsToUpdate\"],\"members\":{\"batchItemId\":{},\"filter\":{\"shape\":\"Sr\"},\"cellsToUpdate\":{\"shape\":\"S6\"}}}},\"clientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"rows\",\"workbookCursor\"],\"members\":{\"rows\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"rowIds\",\"upsertAction\"],\"members\":{\"rowIds\":{\"shape\":\"Si\"},\"upsertAction\":{}}}},\"workbookCursor\":{\"type\":\"long\"},\"failedBatchItems\":{\"shape\":\"Se\"}}}},\"DescribeTableDataImportJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/import/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\",\"jobId\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobStatus\",\"message\",\"jobMetadata\"],\"members\":{\"jobStatus\":{},\"message\":{},\"jobMetadata\":{\"type\":\"structure\",\"required\":[\"submitter\",\"submitTime\",\"importOptions\",\"dataSource\"],\"members\":{\"submitter\":{\"type\":\"structure\",\"members\":{\"email\":{\"type\":\"string\",\"sensitive\":true},\"userArn\":{}}},\"submitTime\":{\"type\":\"timestamp\"},\"importOptions\":{\"shape\":\"S17\"},\"dataSource\":{\"shape\":\"S1h\"}}}}}},\"GetScreenData\":{\"http\":{\"requestUri\":\"/screendata\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"appId\",\"screenId\"],\"members\":{\"workbookId\":{},\"appId\":{},\"screenId\":{},\"variables\":{\"shape\":\"S1l\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"results\",\"workbookCursor\"],\"members\":{\"results\":{\"type\":\"map\",\"key\":{\"shape\":\"S1t\"},\"value\":{\"type\":\"structure\",\"required\":[\"headers\",\"rows\"],\"members\":{\"headers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"format\"],\"members\":{\"name\":{\"shape\":\"S1t\"},\"format\":{}}}},\"rows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"dataItems\"],\"members\":{\"rowId\":{},\"dataItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"overrideFormat\":{},\"rawValue\":{},\"formattedValue\":{}},\"sensitive\":true}}}}}}}},\"workbookCursor\":{\"type\":\"long\"},\"nextToken\":{}}}},\"InvokeScreenAutomation\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/apps/{appId}/screens/{screenId}/automations/{automationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"appId\",\"screenId\",\"screenAutomationId\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"appId\":{\"location\":\"uri\",\"locationName\":\"appId\"},\"screenId\":{\"location\":\"uri\",\"locationName\":\"screenId\"},\"screenAutomationId\":{\"location\":\"uri\",\"locationName\":\"automationId\"},\"variables\":{\"shape\":\"S1l\"},\"rowId\":{},\"clientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"workbookCursor\"],\"members\":{\"workbookCursor\":{\"type\":\"long\"}}}},\"ListTableColumns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/columns\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"tableColumns\"],\"members\":{\"tableColumns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"tableColumnId\":{},\"tableColumnName\":{},\"format\":{}}}},\"nextToken\":{},\"workbookCursor\":{\"type\":\"long\"}}}},\"ListTableRows\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/rows/list\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"rowIds\":{\"shape\":\"Si\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"columnIds\",\"rows\",\"workbookCursor\"],\"members\":{\"columnIds\":{\"shape\":\"S2c\"},\"rows\":{\"shape\":\"S2d\"},\"rowIdsNotFound\":{\"shape\":\"Si\"},\"nextToken\":{},\"workbookCursor\":{\"type\":\"long\"}}}},\"ListTables\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workbooks/{workbookId}/tables\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"tables\"],\"members\":{\"tables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"tableId\":{},\"tableName\":{}}}},\"nextToken\":{},\"workbookCursor\":{\"type\":\"long\"}}}},\"QueryTableRows\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/rows/query\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"tableId\",\"filterFormula\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"tableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"filterFormula\":{\"shape\":\"Sr\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"columnIds\",\"rows\",\"workbookCursor\"],\"members\":{\"columnIds\":{\"shape\":\"S2c\"},\"rows\":{\"shape\":\"S2d\"},\"nextToken\":{},\"workbookCursor\":{\"type\":\"long\"}}}},\"StartTableDataImportJob\":{\"http\":{\"requestUri\":\"/workbooks/{workbookId}/tables/{tableId}/import\"},\"input\":{\"type\":\"structure\",\"required\":[\"workbookId\",\"dataSource\",\"dataFormat\",\"destinationTableId\",\"importOptions\",\"clientRequestToken\"],\"members\":{\"workbookId\":{\"location\":\"uri\",\"locationName\":\"workbookId\"},\"dataSource\":{\"shape\":\"S1h\"},\"dataFormat\":{},\"destinationTableId\":{\"location\":\"uri\",\"locationName\":\"tableId\"},\"importOptions\":{\"shape\":\"S17\"},\"clientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"jobId\",\"jobStatus\"],\"members\":{\"jobId\":{},\"jobStatus\":{}}}}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"fact\":{\"type\":\"string\",\"sensitive\":true}}}},\"Se\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"errorMessage\"],\"members\":{\"id\":{},\"errorMessage\":{}}}},\"Si\":{\"type\":\"list\",\"member\":{}},\"Sr\":{\"type\":\"structure\",\"required\":[\"formula\"],\"members\":{\"formula\":{\"shape\":\"Ss\"},\"contextRowId\":{}}},\"Ss\":{\"type\":\"string\",\"sensitive\":true},\"S17\":{\"type\":\"structure\",\"members\":{\"destinationOptions\":{\"type\":\"structure\",\"members\":{\"columnMap\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"columnIndex\":{\"type\":\"integer\"}}}}}},\"delimitedTextOptions\":{\"type\":\"structure\",\"required\":[\"delimiter\"],\"members\":{\"delimiter\":{},\"hasHeaderRow\":{\"type\":\"boolean\"},\"ignoreEmptyRows\":{\"type\":\"boolean\"},\"dataCharacterEncoding\":{}}}}},\"S1h\":{\"type\":\"structure\",\"required\":[\"dataSourceConfig\"],\"members\":{\"dataSourceConfig\":{\"type\":\"structure\",\"members\":{\"dataSourceUrl\":{}}}}},\"S1l\":{\"type\":\"map\",\"key\":{\"type\":\"string\",\"sensitive\":true},\"value\":{\"type\":\"structure\",\"required\":[\"rawValue\"],\"members\":{\"rawValue\":{}},\"sensitive\":true},\"sensitive\":true},\"S1t\":{\"type\":\"string\",\"sensitive\":true},\"S2c\":{\"type\":\"list\",\"member\":{}},\"S2d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"rowId\",\"cells\"],\"members\":{\"rowId\":{},\"cells\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"formula\":{\"shape\":\"Ss\"},\"format\":{},\"rawValue\":{},\"formattedValue\":{}},\"sensitive\":true}}}}}}}");

/***/ }),

/***/ 83349:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListTableColumns\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"tableColumns\"},\"ListTableRows\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"rows\"},\"ListTables\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"tables\"},\"QueryTableRows\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"rows\"}}}");

/***/ }),

/***/ 46818:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2010-05-08\",\"endpointPrefix\":\"iam\",\"globalEndpoint\":\"iam.amazonaws.com\",\"protocol\":\"query\",\"serviceAbbreviation\":\"IAM\",\"serviceFullName\":\"AWS Identity and Access Management\",\"serviceId\":\"IAM\",\"signatureVersion\":\"v4\",\"uid\":\"iam-2010-05-08\",\"xmlNamespace\":\"https://iam.amazonaws.com/doc/2010-05-08/\"},\"operations\":{\"AddClientIDToOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\",\"ClientID\"],\"members\":{\"OpenIDConnectProviderArn\":{},\"ClientID\":{}}}},\"AddRoleToInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\",\"RoleName\"],\"members\":{\"InstanceProfileName\":{},\"RoleName\":{}}}},\"AddUserToGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"UserName\"],\"members\":{\"GroupName\":{},\"UserName\":{}}}},\"AttachGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"PolicyArn\"],\"members\":{\"GroupName\":{},\"PolicyArn\":{}}}},\"AttachRolePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyArn\"],\"members\":{\"RoleName\":{},\"PolicyArn\":{}}}},\"AttachUserPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"PolicyArn\"],\"members\":{\"UserName\":{},\"PolicyArn\":{}}}},\"ChangePassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"OldPassword\",\"NewPassword\"],\"members\":{\"OldPassword\":{\"shape\":\"Sf\"},\"NewPassword\":{\"shape\":\"Sf\"}}}},\"CreateAccessKey\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{}}},\"output\":{\"resultWrapper\":\"CreateAccessKeyResult\",\"type\":\"structure\",\"required\":[\"AccessKey\"],\"members\":{\"AccessKey\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AccessKeyId\",\"Status\",\"SecretAccessKey\"],\"members\":{\"UserName\":{},\"AccessKeyId\":{},\"Status\":{},\"SecretAccessKey\":{\"type\":\"string\",\"sensitive\":true},\"CreateDate\":{\"type\":\"timestamp\"}}}}}},\"CreateAccountAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountAlias\"],\"members\":{\"AccountAlias\":{}}}},\"CreateGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"Path\":{},\"GroupName\":{}}},\"output\":{\"resultWrapper\":\"CreateGroupResult\",\"type\":\"structure\",\"required\":[\"Group\"],\"members\":{\"Group\":{\"shape\":\"Ss\"}}}},\"CreateInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\"],\"members\":{\"InstanceProfileName\":{},\"Path\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreateInstanceProfileResult\",\"type\":\"structure\",\"required\":[\"InstanceProfile\"],\"members\":{\"InstanceProfile\":{\"shape\":\"S10\"}}}},\"CreateLoginProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"Password\"],\"members\":{\"UserName\":{},\"Password\":{\"shape\":\"Sf\"},\"PasswordResetRequired\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateLoginProfileResult\",\"type\":\"structure\",\"required\":[\"LoginProfile\"],\"members\":{\"LoginProfile\":{\"shape\":\"S1d\"}}}},\"CreateOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"Url\",\"ThumbprintList\"],\"members\":{\"Url\":{},\"ClientIDList\":{\"shape\":\"S1g\"},\"ThumbprintList\":{\"shape\":\"S1h\"},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreateOpenIDConnectProviderResult\",\"type\":\"structure\",\"members\":{\"OpenIDConnectProviderArn\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"CreatePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyName\",\"PolicyDocument\"],\"members\":{\"PolicyName\":{},\"Path\":{},\"PolicyDocument\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreatePolicyResult\",\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S1p\"}}}},\"CreatePolicyVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\",\"PolicyDocument\"],\"members\":{\"PolicyArn\":{},\"PolicyDocument\":{},\"SetAsDefault\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreatePolicyVersionResult\",\"type\":\"structure\",\"members\":{\"PolicyVersion\":{\"shape\":\"S1u\"}}}},\"CreateRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"AssumeRolePolicyDocument\"],\"members\":{\"Path\":{},\"RoleName\":{},\"AssumeRolePolicyDocument\":{},\"Description\":{},\"MaxSessionDuration\":{\"type\":\"integer\"},\"PermissionsBoundary\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreateRoleResult\",\"type\":\"structure\",\"required\":[\"Role\"],\"members\":{\"Role\":{\"shape\":\"S12\"}}}},\"CreateSAMLProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLMetadataDocument\",\"Name\"],\"members\":{\"SAMLMetadataDocument\":{},\"Name\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreateSAMLProviderResult\",\"type\":\"structure\",\"members\":{\"SAMLProviderArn\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"CreateServiceLinkedRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"AWSServiceName\"],\"members\":{\"AWSServiceName\":{},\"Description\":{},\"CustomSuffix\":{}}},\"output\":{\"resultWrapper\":\"CreateServiceLinkedRoleResult\",\"type\":\"structure\",\"members\":{\"Role\":{\"shape\":\"S12\"}}}},\"CreateServiceSpecificCredential\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"ServiceName\"],\"members\":{\"UserName\":{},\"ServiceName\":{}}},\"output\":{\"resultWrapper\":\"CreateServiceSpecificCredentialResult\",\"type\":\"structure\",\"members\":{\"ServiceSpecificCredential\":{\"shape\":\"S27\"}}}},\"CreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"Path\":{},\"UserName\":{},\"PermissionsBoundary\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreateUserResult\",\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S2d\"}}}},\"CreateVirtualMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"VirtualMFADeviceName\"],\"members\":{\"Path\":{},\"VirtualMFADeviceName\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"CreateVirtualMFADeviceResult\",\"type\":\"structure\",\"required\":[\"VirtualMFADevice\"],\"members\":{\"VirtualMFADevice\":{\"shape\":\"S2h\"}}}},\"DeactivateMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SerialNumber\"],\"members\":{\"UserName\":{},\"SerialNumber\":{}}}},\"DeleteAccessKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessKeyId\"],\"members\":{\"UserName\":{},\"AccessKeyId\":{}}}},\"DeleteAccountAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountAlias\"],\"members\":{\"AccountAlias\":{}}}},\"DeleteAccountPasswordPolicy\":{},\"DeleteGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{}}}},\"DeleteGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"PolicyName\"],\"members\":{\"GroupName\":{},\"PolicyName\":{}}}},\"DeleteInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\"],\"members\":{\"InstanceProfileName\":{}}}},\"DeleteLoginProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{}}}},\"DeleteOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\"],\"members\":{\"OpenIDConnectProviderArn\":{}}}},\"DeletePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\"],\"members\":{\"PolicyArn\":{}}}},\"DeletePolicyVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\",\"VersionId\"],\"members\":{\"PolicyArn\":{},\"VersionId\":{}}}},\"DeleteRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{}}}},\"DeleteRolePermissionsBoundary\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{}}}},\"DeleteRolePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyName\"],\"members\":{\"RoleName\":{},\"PolicyName\":{}}}},\"DeleteSAMLProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLProviderArn\"],\"members\":{\"SAMLProviderArn\":{}}}},\"DeleteSSHPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SSHPublicKeyId\"],\"members\":{\"UserName\":{},\"SSHPublicKeyId\":{}}}},\"DeleteServerCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\"],\"members\":{\"ServerCertificateName\":{}}}},\"DeleteServiceLinkedRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{}}},\"output\":{\"resultWrapper\":\"DeleteServiceLinkedRoleResult\",\"type\":\"structure\",\"required\":[\"DeletionTaskId\"],\"members\":{\"DeletionTaskId\":{}}}},\"DeleteServiceSpecificCredential\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceSpecificCredentialId\"],\"members\":{\"UserName\":{},\"ServiceSpecificCredentialId\":{}}}},\"DeleteSigningCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateId\"],\"members\":{\"UserName\":{},\"CertificateId\":{}}}},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{}}}},\"DeleteUserPermissionsBoundary\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{}}}},\"DeleteUserPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"PolicyName\"],\"members\":{\"UserName\":{},\"PolicyName\":{}}}},\"DeleteVirtualMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"SerialNumber\"],\"members\":{\"SerialNumber\":{}}}},\"DetachGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"PolicyArn\"],\"members\":{\"GroupName\":{},\"PolicyArn\":{}}}},\"DetachRolePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyArn\"],\"members\":{\"RoleName\":{},\"PolicyArn\":{}}}},\"DetachUserPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"PolicyArn\"],\"members\":{\"UserName\":{},\"PolicyArn\":{}}}},\"EnableMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SerialNumber\",\"AuthenticationCode1\",\"AuthenticationCode2\"],\"members\":{\"UserName\":{},\"SerialNumber\":{},\"AuthenticationCode1\":{},\"AuthenticationCode2\":{}}}},\"GenerateCredentialReport\":{\"output\":{\"resultWrapper\":\"GenerateCredentialReportResult\",\"type\":\"structure\",\"members\":{\"State\":{},\"Description\":{}}}},\"GenerateOrganizationsAccessReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"EntityPath\"],\"members\":{\"EntityPath\":{},\"OrganizationsPolicyId\":{}}},\"output\":{\"resultWrapper\":\"GenerateOrganizationsAccessReportResult\",\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"GenerateServiceLastAccessedDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"Granularity\":{}}},\"output\":{\"resultWrapper\":\"GenerateServiceLastAccessedDetailsResult\",\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"GetAccessKeyLastUsed\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessKeyId\"],\"members\":{\"AccessKeyId\":{}}},\"output\":{\"resultWrapper\":\"GetAccessKeyLastUsedResult\",\"type\":\"structure\",\"members\":{\"UserName\":{},\"AccessKeyLastUsed\":{\"type\":\"structure\",\"required\":[\"LastUsedDate\",\"ServiceName\",\"Region\"],\"members\":{\"LastUsedDate\":{\"type\":\"timestamp\"},\"ServiceName\":{},\"Region\":{}}}}}},\"GetAccountAuthorizationDetails\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"list\",\"member\":{}},\"MaxItems\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"GetAccountAuthorizationDetailsResult\",\"type\":\"structure\",\"members\":{\"UserDetailList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"UserName\":{},\"UserId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"UserPolicyList\":{\"shape\":\"S43\"},\"GroupList\":{\"type\":\"list\",\"member\":{}},\"AttachedManagedPolicies\":{\"shape\":\"S46\"},\"PermissionsBoundary\":{\"shape\":\"S16\"},\"Tags\":{\"shape\":\"Sv\"}}}},\"GroupDetailList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"GroupName\":{},\"GroupId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"GroupPolicyList\":{\"shape\":\"S43\"},\"AttachedManagedPolicies\":{\"shape\":\"S46\"}}}},\"RoleDetailList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Path\":{},\"RoleName\":{},\"RoleId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"AssumeRolePolicyDocument\":{},\"InstanceProfileList\":{\"shape\":\"S4c\"},\"RolePolicyList\":{\"shape\":\"S43\"},\"AttachedManagedPolicies\":{\"shape\":\"S46\"},\"PermissionsBoundary\":{\"shape\":\"S16\"},\"Tags\":{\"shape\":\"Sv\"},\"RoleLastUsed\":{\"shape\":\"S18\"}}}},\"Policies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"PolicyId\":{},\"Arn\":{},\"Path\":{},\"DefaultVersionId\":{},\"AttachmentCount\":{\"type\":\"integer\"},\"PermissionsBoundaryUsageCount\":{\"type\":\"integer\"},\"IsAttachable\":{\"type\":\"boolean\"},\"Description\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"PolicyVersionList\":{\"shape\":\"S4f\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"GetAccountPasswordPolicy\":{\"output\":{\"resultWrapper\":\"GetAccountPasswordPolicyResult\",\"type\":\"structure\",\"required\":[\"PasswordPolicy\"],\"members\":{\"PasswordPolicy\":{\"type\":\"structure\",\"members\":{\"MinimumPasswordLength\":{\"type\":\"integer\"},\"RequireSymbols\":{\"type\":\"boolean\"},\"RequireNumbers\":{\"type\":\"boolean\"},\"RequireUppercaseCharacters\":{\"type\":\"boolean\"},\"RequireLowercaseCharacters\":{\"type\":\"boolean\"},\"AllowUsersToChangePassword\":{\"type\":\"boolean\"},\"ExpirePasswords\":{\"type\":\"boolean\"},\"MaxPasswordAge\":{\"type\":\"integer\"},\"PasswordReusePrevention\":{\"type\":\"integer\"},\"HardExpiry\":{\"type\":\"boolean\"}}}}}},\"GetAccountSummary\":{\"output\":{\"resultWrapper\":\"GetAccountSummaryResult\",\"type\":\"structure\",\"members\":{\"SummaryMap\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}}},\"GetContextKeysForCustomPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyInputList\"],\"members\":{\"PolicyInputList\":{\"shape\":\"S4s\"}}},\"output\":{\"shape\":\"S4t\",\"resultWrapper\":\"GetContextKeysForCustomPolicyResult\"}},\"GetContextKeysForPrincipalPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicySourceArn\"],\"members\":{\"PolicySourceArn\":{},\"PolicyInputList\":{\"shape\":\"S4s\"}}},\"output\":{\"shape\":\"S4t\",\"resultWrapper\":\"GetContextKeysForPrincipalPolicyResult\"}},\"GetCredentialReport\":{\"output\":{\"resultWrapper\":\"GetCredentialReportResult\",\"type\":\"structure\",\"members\":{\"Content\":{\"type\":\"blob\"},\"ReportFormat\":{},\"GeneratedTime\":{\"type\":\"timestamp\"}}}},\"GetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"GetGroupResult\",\"type\":\"structure\",\"required\":[\"Group\",\"Users\"],\"members\":{\"Group\":{\"shape\":\"Ss\"},\"Users\":{\"shape\":\"S52\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"GetGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"PolicyName\"],\"members\":{\"GroupName\":{},\"PolicyName\":{}}},\"output\":{\"resultWrapper\":\"GetGroupPolicyResult\",\"type\":\"structure\",\"required\":[\"GroupName\",\"PolicyName\",\"PolicyDocument\"],\"members\":{\"GroupName\":{},\"PolicyName\":{},\"PolicyDocument\":{}}}},\"GetInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\"],\"members\":{\"InstanceProfileName\":{}}},\"output\":{\"resultWrapper\":\"GetInstanceProfileResult\",\"type\":\"structure\",\"required\":[\"InstanceProfile\"],\"members\":{\"InstanceProfile\":{\"shape\":\"S10\"}}}},\"GetLoginProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{}}},\"output\":{\"resultWrapper\":\"GetLoginProfileResult\",\"type\":\"structure\",\"required\":[\"LoginProfile\"],\"members\":{\"LoginProfile\":{\"shape\":\"S1d\"}}}},\"GetOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\"],\"members\":{\"OpenIDConnectProviderArn\":{}}},\"output\":{\"resultWrapper\":\"GetOpenIDConnectProviderResult\",\"type\":\"structure\",\"members\":{\"Url\":{},\"ClientIDList\":{\"shape\":\"S1g\"},\"ThumbprintList\":{\"shape\":\"S1h\"},\"CreateDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sv\"}}}},\"GetOrganizationsAccessReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxItems\":{\"type\":\"integer\"},\"Marker\":{},\"SortKey\":{}}},\"output\":{\"resultWrapper\":\"GetOrganizationsAccessReportResult\",\"type\":\"structure\",\"required\":[\"JobStatus\",\"JobCreationDate\"],\"members\":{\"JobStatus\":{},\"JobCreationDate\":{\"type\":\"timestamp\"},\"JobCompletionDate\":{\"type\":\"timestamp\"},\"NumberOfServicesAccessible\":{\"type\":\"integer\"},\"NumberOfServicesNotAccessed\":{\"type\":\"integer\"},\"AccessDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ServiceName\",\"ServiceNamespace\"],\"members\":{\"ServiceName\":{},\"ServiceNamespace\":{},\"Region\":{},\"EntityPath\":{},\"LastAuthenticatedTime\":{\"type\":\"timestamp\"},\"TotalAuthenticatedEntities\":{\"type\":\"integer\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{},\"ErrorDetails\":{\"shape\":\"S5k\"}}}},\"GetPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\"],\"members\":{\"PolicyArn\":{}}},\"output\":{\"resultWrapper\":\"GetPolicyResult\",\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S1p\"}}}},\"GetPolicyVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\",\"VersionId\"],\"members\":{\"PolicyArn\":{},\"VersionId\":{}}},\"output\":{\"resultWrapper\":\"GetPolicyVersionResult\",\"type\":\"structure\",\"members\":{\"PolicyVersion\":{\"shape\":\"S1u\"}}}},\"GetRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{}}},\"output\":{\"resultWrapper\":\"GetRoleResult\",\"type\":\"structure\",\"required\":[\"Role\"],\"members\":{\"Role\":{\"shape\":\"S12\"}}}},\"GetRolePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyName\"],\"members\":{\"RoleName\":{},\"PolicyName\":{}}},\"output\":{\"resultWrapper\":\"GetRolePolicyResult\",\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyName\",\"PolicyDocument\"],\"members\":{\"RoleName\":{},\"PolicyName\":{},\"PolicyDocument\":{}}}},\"GetSAMLProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLProviderArn\"],\"members\":{\"SAMLProviderArn\":{}}},\"output\":{\"resultWrapper\":\"GetSAMLProviderResult\",\"type\":\"structure\",\"members\":{\"SAMLMetadataDocument\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"ValidUntil\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sv\"}}}},\"GetSSHPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SSHPublicKeyId\",\"Encoding\"],\"members\":{\"UserName\":{},\"SSHPublicKeyId\":{},\"Encoding\":{}}},\"output\":{\"resultWrapper\":\"GetSSHPublicKeyResult\",\"type\":\"structure\",\"members\":{\"SSHPublicKey\":{\"shape\":\"S5y\"}}}},\"GetServerCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\"],\"members\":{\"ServerCertificateName\":{}}},\"output\":{\"resultWrapper\":\"GetServerCertificateResult\",\"type\":\"structure\",\"required\":[\"ServerCertificate\"],\"members\":{\"ServerCertificate\":{\"type\":\"structure\",\"required\":[\"ServerCertificateMetadata\",\"CertificateBody\"],\"members\":{\"ServerCertificateMetadata\":{\"shape\":\"S64\"},\"CertificateBody\":{},\"CertificateChain\":{},\"Tags\":{\"shape\":\"Sv\"}}}}}},\"GetServiceLastAccessedDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxItems\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"GetServiceLastAccessedDetailsResult\",\"type\":\"structure\",\"required\":[\"JobStatus\",\"JobCreationDate\",\"ServicesLastAccessed\",\"JobCompletionDate\"],\"members\":{\"JobStatus\":{},\"JobType\":{},\"JobCreationDate\":{\"type\":\"timestamp\"},\"ServicesLastAccessed\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ServiceName\",\"ServiceNamespace\"],\"members\":{\"ServiceName\":{},\"LastAuthenticated\":{\"type\":\"timestamp\"},\"ServiceNamespace\":{},\"LastAuthenticatedEntity\":{},\"LastAuthenticatedRegion\":{},\"TotalAuthenticatedEntities\":{\"type\":\"integer\"},\"TrackedActionsLastAccessed\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionName\":{},\"LastAccessedEntity\":{},\"LastAccessedTime\":{\"type\":\"timestamp\"},\"LastAccessedRegion\":{}}}}}}},\"JobCompletionDate\":{\"type\":\"timestamp\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{},\"Error\":{\"shape\":\"S5k\"}}}},\"GetServiceLastAccessedDetailsWithEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\",\"ServiceNamespace\"],\"members\":{\"JobId\":{},\"ServiceNamespace\":{},\"MaxItems\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"GetServiceLastAccessedDetailsWithEntitiesResult\",\"type\":\"structure\",\"required\":[\"JobStatus\",\"JobCreationDate\",\"JobCompletionDate\",\"EntityDetailsList\"],\"members\":{\"JobStatus\":{},\"JobCreationDate\":{\"type\":\"timestamp\"},\"JobCompletionDate\":{\"type\":\"timestamp\"},\"EntityDetailsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EntityInfo\"],\"members\":{\"EntityInfo\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Name\",\"Type\",\"Id\"],\"members\":{\"Arn\":{},\"Name\":{},\"Type\":{},\"Id\":{},\"Path\":{}}},\"LastAuthenticated\":{\"type\":\"timestamp\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{},\"Error\":{\"shape\":\"S5k\"}}}},\"GetServiceLinkedRoleDeletionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeletionTaskId\"],\"members\":{\"DeletionTaskId\":{}}},\"output\":{\"resultWrapper\":\"GetServiceLinkedRoleDeletionStatusResult\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{},\"Reason\":{\"type\":\"structure\",\"members\":{\"Reason\":{},\"RoleUsageList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Region\":{},\"Resources\":{\"type\":\"list\",\"member\":{}}}}}}}}}},\"GetUser\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{}}},\"output\":{\"resultWrapper\":\"GetUserResult\",\"type\":\"structure\",\"required\":[\"User\"],\"members\":{\"User\":{\"shape\":\"S2d\"}}}},\"GetUserPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"PolicyName\"],\"members\":{\"UserName\":{},\"PolicyName\":{}}},\"output\":{\"resultWrapper\":\"GetUserPolicyResult\",\"type\":\"structure\",\"required\":[\"UserName\",\"PolicyName\",\"PolicyDocument\"],\"members\":{\"UserName\":{},\"PolicyName\":{},\"PolicyDocument\":{}}}},\"ListAccessKeys\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListAccessKeysResult\",\"type\":\"structure\",\"required\":[\"AccessKeyMetadata\"],\"members\":{\"AccessKeyMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"AccessKeyId\":{},\"Status\":{},\"CreateDate\":{\"type\":\"timestamp\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListAccountAliases\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListAccountAliasesResult\",\"type\":\"structure\",\"required\":[\"AccountAliases\"],\"members\":{\"AccountAliases\":{\"type\":\"list\",\"member\":{}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListAttachedGroupPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{},\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListAttachedGroupPoliciesResult\",\"type\":\"structure\",\"members\":{\"AttachedPolicies\":{\"shape\":\"S46\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListAttachedRolePolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{},\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListAttachedRolePoliciesResult\",\"type\":\"structure\",\"members\":{\"AttachedPolicies\":{\"shape\":\"S46\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListAttachedUserPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{},\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListAttachedUserPoliciesResult\",\"type\":\"structure\",\"members\":{\"AttachedPolicies\":{\"shape\":\"S46\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListEntitiesForPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\"],\"members\":{\"PolicyArn\":{},\"EntityFilter\":{},\"PathPrefix\":{},\"PolicyUsageFilter\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListEntitiesForPolicyResult\",\"type\":\"structure\",\"members\":{\"PolicyGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupId\":{}}}},\"PolicyUsers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"UserId\":{}}}},\"PolicyRoles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RoleName\":{},\"RoleId\":{}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListGroupPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListGroupPoliciesResult\",\"type\":\"structure\",\"required\":[\"PolicyNames\"],\"members\":{\"PolicyNames\":{\"shape\":\"S7k\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListGroupsResult\",\"type\":\"structure\",\"required\":[\"Groups\"],\"members\":{\"Groups\":{\"shape\":\"S7o\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListGroupsForUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListGroupsForUserResult\",\"type\":\"structure\",\"required\":[\"Groups\"],\"members\":{\"Groups\":{\"shape\":\"S7o\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListInstanceProfileTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\"],\"members\":{\"InstanceProfileName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListInstanceProfileTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListInstanceProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListInstanceProfilesResult\",\"type\":\"structure\",\"required\":[\"InstanceProfiles\"],\"members\":{\"InstanceProfiles\":{\"shape\":\"S4c\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListInstanceProfilesForRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListInstanceProfilesForRoleResult\",\"type\":\"structure\",\"required\":[\"InstanceProfiles\"],\"members\":{\"InstanceProfiles\":{\"shape\":\"S4c\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListMFADeviceTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"SerialNumber\"],\"members\":{\"SerialNumber\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListMFADeviceTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListMFADevices\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListMFADevicesResult\",\"type\":\"structure\",\"required\":[\"MFADevices\"],\"members\":{\"MFADevices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SerialNumber\",\"EnableDate\"],\"members\":{\"UserName\":{},\"SerialNumber\":{},\"EnableDate\":{\"type\":\"timestamp\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListOpenIDConnectProviderTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\"],\"members\":{\"OpenIDConnectProviderArn\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListOpenIDConnectProviderTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListOpenIDConnectProviders\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"resultWrapper\":\"ListOpenIDConnectProvidersResult\",\"type\":\"structure\",\"members\":{\"OpenIDConnectProviderList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}}}}},\"ListPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"Scope\":{},\"OnlyAttached\":{\"type\":\"boolean\"},\"PathPrefix\":{},\"PolicyUsageFilter\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListPoliciesResult\",\"type\":\"structure\",\"members\":{\"Policies\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListPoliciesGrantingServiceAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"ServiceNamespaces\"],\"members\":{\"Marker\":{},\"Arn\":{},\"ServiceNamespaces\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"ListPoliciesGrantingServiceAccessResult\",\"type\":\"structure\",\"required\":[\"PoliciesGrantingServiceAccess\"],\"members\":{\"PoliciesGrantingServiceAccess\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServiceNamespace\":{},\"Policies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PolicyName\",\"PolicyType\"],\"members\":{\"PolicyName\":{},\"PolicyType\":{},\"PolicyArn\":{},\"EntityType\":{},\"EntityName\":{}}}}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListPolicyTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\"],\"members\":{\"PolicyArn\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListPolicyTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListPolicyVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\"],\"members\":{\"PolicyArn\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListPolicyVersionsResult\",\"type\":\"structure\",\"members\":{\"Versions\":{\"shape\":\"S4f\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListRolePolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListRolePoliciesResult\",\"type\":\"structure\",\"required\":[\"PolicyNames\"],\"members\":{\"PolicyNames\":{\"shape\":\"S7k\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListRoleTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListRoleTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListRoles\":{\"input\":{\"type\":\"structure\",\"members\":{\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListRolesResult\",\"type\":\"structure\",\"required\":[\"Roles\"],\"members\":{\"Roles\":{\"shape\":\"S11\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListSAMLProviderTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLProviderArn\"],\"members\":{\"SAMLProviderArn\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListSAMLProviderTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListSAMLProviders\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"resultWrapper\":\"ListSAMLProvidersResult\",\"type\":\"structure\",\"members\":{\"SAMLProviderList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"ValidUntil\":{\"type\":\"timestamp\"},\"CreateDate\":{\"type\":\"timestamp\"}}}}}}},\"ListSSHPublicKeys\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListSSHPublicKeysResult\",\"type\":\"structure\",\"members\":{\"SSHPublicKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SSHPublicKeyId\",\"Status\",\"UploadDate\"],\"members\":{\"UserName\":{},\"SSHPublicKeyId\":{},\"Status\":{},\"UploadDate\":{\"type\":\"timestamp\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListServerCertificateTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\"],\"members\":{\"ServerCertificateName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListServerCertificateTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListServerCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListServerCertificatesResult\",\"type\":\"structure\",\"required\":[\"ServerCertificateMetadataList\"],\"members\":{\"ServerCertificateMetadataList\":{\"type\":\"list\",\"member\":{\"shape\":\"S64\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListServiceSpecificCredentials\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"ServiceName\":{}}},\"output\":{\"resultWrapper\":\"ListServiceSpecificCredentialsResult\",\"type\":\"structure\",\"members\":{\"ServiceSpecificCredentials\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"UserName\",\"Status\",\"ServiceUserName\",\"CreateDate\",\"ServiceSpecificCredentialId\",\"ServiceName\"],\"members\":{\"UserName\":{},\"Status\":{},\"ServiceUserName\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"ServiceSpecificCredentialId\":{},\"ServiceName\":{}}}}}}},\"ListSigningCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListSigningCertificatesResult\",\"type\":\"structure\",\"required\":[\"Certificates\"],\"members\":{\"Certificates\":{\"type\":\"list\",\"member\":{\"shape\":\"S9i\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListUserPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListUserPoliciesResult\",\"type\":\"structure\",\"required\":[\"PolicyNames\"],\"members\":{\"PolicyNames\":{\"shape\":\"S7k\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListUserTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListUserTagsResult\",\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListUsers\":{\"input\":{\"type\":\"structure\",\"members\":{\"PathPrefix\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListUsersResult\",\"type\":\"structure\",\"required\":[\"Users\"],\"members\":{\"Users\":{\"shape\":\"S52\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"ListVirtualMFADevices\":{\"input\":{\"type\":\"structure\",\"members\":{\"AssignmentStatus\":{},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListVirtualMFADevicesResult\",\"type\":\"structure\",\"required\":[\"VirtualMFADevices\"],\"members\":{\"VirtualMFADevices\":{\"type\":\"list\",\"member\":{\"shape\":\"S2h\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}}},\"PutGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"PolicyName\",\"PolicyDocument\"],\"members\":{\"GroupName\":{},\"PolicyName\":{},\"PolicyDocument\":{}}}},\"PutRolePermissionsBoundary\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PermissionsBoundary\"],\"members\":{\"RoleName\":{},\"PermissionsBoundary\":{}}}},\"PutRolePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyName\",\"PolicyDocument\"],\"members\":{\"RoleName\":{},\"PolicyName\":{},\"PolicyDocument\":{}}}},\"PutUserPermissionsBoundary\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"PermissionsBoundary\"],\"members\":{\"UserName\":{},\"PermissionsBoundary\":{}}}},\"PutUserPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"PolicyName\",\"PolicyDocument\"],\"members\":{\"UserName\":{},\"PolicyName\":{},\"PolicyDocument\":{}}}},\"RemoveClientIDFromOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\",\"ClientID\"],\"members\":{\"OpenIDConnectProviderArn\":{},\"ClientID\":{}}}},\"RemoveRoleFromInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\",\"RoleName\"],\"members\":{\"InstanceProfileName\":{},\"RoleName\":{}}}},\"RemoveUserFromGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"UserName\"],\"members\":{\"GroupName\":{},\"UserName\":{}}}},\"ResetServiceSpecificCredential\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceSpecificCredentialId\"],\"members\":{\"UserName\":{},\"ServiceSpecificCredentialId\":{}}},\"output\":{\"resultWrapper\":\"ResetServiceSpecificCredentialResult\",\"type\":\"structure\",\"members\":{\"ServiceSpecificCredential\":{\"shape\":\"S27\"}}}},\"ResyncMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SerialNumber\",\"AuthenticationCode1\",\"AuthenticationCode2\"],\"members\":{\"UserName\":{},\"SerialNumber\":{},\"AuthenticationCode1\":{},\"AuthenticationCode2\":{}}}},\"SetDefaultPolicyVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\",\"VersionId\"],\"members\":{\"PolicyArn\":{},\"VersionId\":{}}}},\"SetSecurityTokenServicePreferences\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalEndpointTokenVersion\"],\"members\":{\"GlobalEndpointTokenVersion\":{}}}},\"SimulateCustomPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyInputList\",\"ActionNames\"],\"members\":{\"PolicyInputList\":{\"shape\":\"S4s\"},\"PermissionsBoundaryPolicyInputList\":{\"shape\":\"S4s\"},\"ActionNames\":{\"shape\":\"Sa8\"},\"ResourceArns\":{\"shape\":\"Saa\"},\"ResourcePolicy\":{},\"ResourceOwner\":{},\"CallerArn\":{},\"ContextEntries\":{\"shape\":\"Sac\"},\"ResourceHandlingOption\":{},\"MaxItems\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"shape\":\"Sai\",\"resultWrapper\":\"SimulateCustomPolicyResult\"}},\"SimulatePrincipalPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicySourceArn\",\"ActionNames\"],\"members\":{\"PolicySourceArn\":{},\"PolicyInputList\":{\"shape\":\"S4s\"},\"PermissionsBoundaryPolicyInputList\":{\"shape\":\"S4s\"},\"ActionNames\":{\"shape\":\"Sa8\"},\"ResourceArns\":{\"shape\":\"Saa\"},\"ResourcePolicy\":{},\"ResourceOwner\":{},\"CallerArn\":{},\"ContextEntries\":{\"shape\":\"Sac\"},\"ResourceHandlingOption\":{},\"MaxItems\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"shape\":\"Sai\",\"resultWrapper\":\"SimulatePrincipalPolicyResult\"}},\"TagInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\",\"Tags\"],\"members\":{\"InstanceProfileName\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"SerialNumber\",\"Tags\"],\"members\":{\"SerialNumber\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\",\"Tags\"],\"members\":{\"OpenIDConnectProviderArn\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\",\"Tags\"],\"members\":{\"PolicyArn\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"Tags\"],\"members\":{\"RoleName\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagSAMLProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLProviderArn\",\"Tags\"],\"members\":{\"SAMLProviderArn\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagServerCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\",\"Tags\"],\"members\":{\"ServerCertificateName\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"TagUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"Tags\"],\"members\":{\"UserName\":{},\"Tags\":{\"shape\":\"Sv\"}}}},\"UntagInstanceProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceProfileName\",\"TagKeys\"],\"members\":{\"InstanceProfileName\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagMFADevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"SerialNumber\",\"TagKeys\"],\"members\":{\"SerialNumber\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagOpenIDConnectProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\",\"TagKeys\"],\"members\":{\"OpenIDConnectProviderArn\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyArn\",\"TagKeys\"],\"members\":{\"PolicyArn\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"TagKeys\"],\"members\":{\"RoleName\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagSAMLProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLProviderArn\",\"TagKeys\"],\"members\":{\"SAMLProviderArn\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagServerCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\",\"TagKeys\"],\"members\":{\"ServerCertificateName\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UntagUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"TagKeys\"],\"members\":{\"UserName\":{},\"TagKeys\":{\"shape\":\"Sb9\"}}}},\"UpdateAccessKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessKeyId\",\"Status\"],\"members\":{\"UserName\":{},\"AccessKeyId\":{},\"Status\":{}}}},\"UpdateAccountPasswordPolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"MinimumPasswordLength\":{\"type\":\"integer\"},\"RequireSymbols\":{\"type\":\"boolean\"},\"RequireNumbers\":{\"type\":\"boolean\"},\"RequireUppercaseCharacters\":{\"type\":\"boolean\"},\"RequireLowercaseCharacters\":{\"type\":\"boolean\"},\"AllowUsersToChangePassword\":{\"type\":\"boolean\"},\"MaxPasswordAge\":{\"type\":\"integer\"},\"PasswordReusePrevention\":{\"type\":\"integer\"},\"HardExpiry\":{\"type\":\"boolean\"}}}},\"UpdateAssumeRolePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"PolicyDocument\"],\"members\":{\"RoleName\":{},\"PolicyDocument\":{}}}},\"UpdateGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{},\"NewPath\":{},\"NewGroupName\":{}}}},\"UpdateLoginProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{},\"Password\":{\"shape\":\"Sf\"},\"PasswordResetRequired\":{\"type\":\"boolean\"}}}},\"UpdateOpenIDConnectProviderThumbprint\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpenIDConnectProviderArn\",\"ThumbprintList\"],\"members\":{\"OpenIDConnectProviderArn\":{},\"ThumbprintList\":{\"shape\":\"S1h\"}}}},\"UpdateRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\"],\"members\":{\"RoleName\":{},\"Description\":{},\"MaxSessionDuration\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"UpdateRoleResult\",\"type\":\"structure\",\"members\":{}}},\"UpdateRoleDescription\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleName\",\"Description\"],\"members\":{\"RoleName\":{},\"Description\":{}}},\"output\":{\"resultWrapper\":\"UpdateRoleDescriptionResult\",\"type\":\"structure\",\"members\":{\"Role\":{\"shape\":\"S12\"}}}},\"UpdateSAMLProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"SAMLMetadataDocument\",\"SAMLProviderArn\"],\"members\":{\"SAMLMetadataDocument\":{},\"SAMLProviderArn\":{}}},\"output\":{\"resultWrapper\":\"UpdateSAMLProviderResult\",\"type\":\"structure\",\"members\":{\"SAMLProviderArn\":{}}}},\"UpdateSSHPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SSHPublicKeyId\",\"Status\"],\"members\":{\"UserName\":{},\"SSHPublicKeyId\":{},\"Status\":{}}}},\"UpdateServerCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\"],\"members\":{\"ServerCertificateName\":{},\"NewPath\":{},\"NewServerCertificateName\":{}}}},\"UpdateServiceSpecificCredential\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceSpecificCredentialId\",\"Status\"],\"members\":{\"UserName\":{},\"ServiceSpecificCredentialId\":{},\"Status\":{}}}},\"UpdateSigningCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateId\",\"Status\"],\"members\":{\"UserName\":{},\"CertificateId\":{},\"Status\":{}}}},\"UpdateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\"],\"members\":{\"UserName\":{},\"NewPath\":{},\"NewUserName\":{}}}},\"UploadSSHPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SSHPublicKeyBody\"],\"members\":{\"UserName\":{},\"SSHPublicKeyBody\":{}}},\"output\":{\"resultWrapper\":\"UploadSSHPublicKeyResult\",\"type\":\"structure\",\"members\":{\"SSHPublicKey\":{\"shape\":\"S5y\"}}}},\"UploadServerCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerCertificateName\",\"CertificateBody\",\"PrivateKey\"],\"members\":{\"Path\":{},\"ServerCertificateName\":{},\"CertificateBody\":{},\"PrivateKey\":{\"type\":\"string\",\"sensitive\":true},\"CertificateChain\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"UploadServerCertificateResult\",\"type\":\"structure\",\"members\":{\"ServerCertificateMetadata\":{\"shape\":\"S64\"},\"Tags\":{\"shape\":\"Sv\"}}}},\"UploadSigningCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"CertificateBody\"],\"members\":{\"UserName\":{},\"CertificateBody\":{}}},\"output\":{\"resultWrapper\":\"UploadSigningCertificateResult\",\"type\":\"structure\",\"required\":[\"Certificate\"],\"members\":{\"Certificate\":{\"shape\":\"S9i\"}}}}},\"shapes\":{\"Sf\":{\"type\":\"string\",\"sensitive\":true},\"Ss\":{\"type\":\"structure\",\"required\":[\"Path\",\"GroupName\",\"GroupId\",\"Arn\",\"CreateDate\"],\"members\":{\"Path\":{},\"GroupName\":{},\"GroupId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S10\":{\"type\":\"structure\",\"required\":[\"Path\",\"InstanceProfileName\",\"InstanceProfileId\",\"Arn\",\"CreateDate\",\"Roles\"],\"members\":{\"Path\":{},\"InstanceProfileName\":{},\"InstanceProfileId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"Roles\":{\"shape\":\"S11\"},\"Tags\":{\"shape\":\"Sv\"}}},\"S11\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"S12\":{\"type\":\"structure\",\"required\":[\"Path\",\"RoleName\",\"RoleId\",\"Arn\",\"CreateDate\"],\"members\":{\"Path\":{},\"RoleName\":{},\"RoleId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"AssumeRolePolicyDocument\":{},\"Description\":{},\"MaxSessionDuration\":{\"type\":\"integer\"},\"PermissionsBoundary\":{\"shape\":\"S16\"},\"Tags\":{\"shape\":\"Sv\"},\"RoleLastUsed\":{\"shape\":\"S18\"}}},\"S16\":{\"type\":\"structure\",\"members\":{\"PermissionsBoundaryType\":{},\"PermissionsBoundaryArn\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"LastUsedDate\":{\"type\":\"timestamp\"},\"Region\":{}}},\"S1d\":{\"type\":\"structure\",\"required\":[\"UserName\",\"CreateDate\"],\"members\":{\"UserName\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"PasswordResetRequired\":{\"type\":\"boolean\"}}},\"S1g\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"PolicyId\":{},\"Arn\":{},\"Path\":{},\"DefaultVersionId\":{},\"AttachmentCount\":{\"type\":\"integer\"},\"PermissionsBoundaryUsageCount\":{\"type\":\"integer\"},\"IsAttachable\":{\"type\":\"boolean\"},\"Description\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sv\"}}},\"S1u\":{\"type\":\"structure\",\"members\":{\"Document\":{},\"VersionId\":{},\"IsDefaultVersion\":{\"type\":\"boolean\"},\"CreateDate\":{\"type\":\"timestamp\"}}},\"S27\":{\"type\":\"structure\",\"required\":[\"CreateDate\",\"ServiceName\",\"ServiceUserName\",\"ServicePassword\",\"ServiceSpecificCredentialId\",\"UserName\",\"Status\"],\"members\":{\"CreateDate\":{\"type\":\"timestamp\"},\"ServiceName\":{},\"ServiceUserName\":{},\"ServicePassword\":{\"type\":\"string\",\"sensitive\":true},\"ServiceSpecificCredentialId\":{},\"UserName\":{},\"Status\":{}}},\"S2d\":{\"type\":\"structure\",\"required\":[\"Path\",\"UserName\",\"UserId\",\"Arn\",\"CreateDate\"],\"members\":{\"Path\":{},\"UserName\":{},\"UserId\":{},\"Arn\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"PasswordLastUsed\":{\"type\":\"timestamp\"},\"PermissionsBoundary\":{\"shape\":\"S16\"},\"Tags\":{\"shape\":\"Sv\"}}},\"S2h\":{\"type\":\"structure\",\"required\":[\"SerialNumber\"],\"members\":{\"SerialNumber\":{},\"Base32StringSeed\":{\"shape\":\"S2j\"},\"QRCodePNG\":{\"shape\":\"S2j\"},\"User\":{\"shape\":\"S2d\"},\"EnableDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sv\"}}},\"S2j\":{\"type\":\"blob\",\"sensitive\":true},\"S43\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"PolicyDocument\":{}}}},\"S46\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"PolicyArn\":{}}}},\"S4c\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"S4f\":{\"type\":\"list\",\"member\":{\"shape\":\"S1u\"}},\"S4s\":{\"type\":\"list\",\"member\":{}},\"S4t\":{\"type\":\"structure\",\"members\":{\"ContextKeyNames\":{\"shape\":\"S4u\"}}},\"S4u\":{\"type\":\"list\",\"member\":{}},\"S52\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}},\"S5k\":{\"type\":\"structure\",\"required\":[\"Message\",\"Code\"],\"members\":{\"Message\":{},\"Code\":{}}},\"S5y\":{\"type\":\"structure\",\"required\":[\"UserName\",\"SSHPublicKeyId\",\"Fingerprint\",\"SSHPublicKeyBody\",\"Status\"],\"members\":{\"UserName\":{},\"SSHPublicKeyId\":{},\"Fingerprint\":{},\"SSHPublicKeyBody\":{},\"Status\":{},\"UploadDate\":{\"type\":\"timestamp\"}}},\"S64\":{\"type\":\"structure\",\"required\":[\"Path\",\"ServerCertificateName\",\"ServerCertificateId\",\"Arn\"],\"members\":{\"Path\":{},\"ServerCertificateName\":{},\"ServerCertificateId\":{},\"Arn\":{},\"UploadDate\":{\"type\":\"timestamp\"},\"Expiration\":{\"type\":\"timestamp\"}}},\"S7k\":{\"type\":\"list\",\"member\":{}},\"S7o\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\"}},\"S9i\":{\"type\":\"structure\",\"required\":[\"UserName\",\"CertificateId\",\"CertificateBody\",\"Status\"],\"members\":{\"UserName\":{},\"CertificateId\":{},\"CertificateBody\":{},\"Status\":{},\"UploadDate\":{\"type\":\"timestamp\"}}},\"Sa8\":{\"type\":\"list\",\"member\":{}},\"Saa\":{\"type\":\"list\",\"member\":{}},\"Sac\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContextKeyName\":{},\"ContextKeyValues\":{\"type\":\"list\",\"member\":{}},\"ContextKeyType\":{}}}},\"Sai\":{\"type\":\"structure\",\"members\":{\"EvaluationResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EvalActionName\",\"EvalDecision\"],\"members\":{\"EvalActionName\":{},\"EvalResourceName\":{},\"EvalDecision\":{},\"MatchedStatements\":{\"shape\":\"Sam\"},\"MissingContextValues\":{\"shape\":\"S4u\"},\"OrganizationsDecisionDetail\":{\"type\":\"structure\",\"members\":{\"AllowedByOrganizations\":{\"type\":\"boolean\"}}},\"PermissionsBoundaryDecisionDetail\":{\"shape\":\"Sau\"},\"EvalDecisionDetails\":{\"shape\":\"Sav\"},\"ResourceSpecificResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EvalResourceName\",\"EvalResourceDecision\"],\"members\":{\"EvalResourceName\":{},\"EvalResourceDecision\":{},\"MatchedStatements\":{\"shape\":\"Sam\"},\"MissingContextValues\":{\"shape\":\"S4u\"},\"EvalDecisionDetails\":{\"shape\":\"Sav\"},\"PermissionsBoundaryDecisionDetail\":{\"shape\":\"Sau\"}}}}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{}}},\"Sam\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourcePolicyId\":{},\"SourcePolicyType\":{},\"StartPosition\":{\"shape\":\"Saq\"},\"EndPosition\":{\"shape\":\"Saq\"}}}},\"Saq\":{\"type\":\"structure\",\"members\":{\"Line\":{\"type\":\"integer\"},\"Column\":{\"type\":\"integer\"}}},\"Sau\":{\"type\":\"structure\",\"members\":{\"AllowedByPermissionsBoundary\":{\"type\":\"boolean\"}}},\"Sav\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sb9\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 49015:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetAccountAuthorizationDetails\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":[\"UserDetailList\",\"GroupDetailList\",\"RoleDetailList\",\"Policies\"]},\"GetGroup\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Users\"},\"ListAccessKeys\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"AccessKeyMetadata\"},\"ListAccountAliases\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"AccountAliases\"},\"ListAttachedGroupPolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"AttachedPolicies\"},\"ListAttachedRolePolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"AttachedPolicies\"},\"ListAttachedUserPolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"AttachedPolicies\"},\"ListEntitiesForPolicy\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":[\"PolicyGroups\",\"PolicyUsers\",\"PolicyRoles\"]},\"ListGroupPolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"PolicyNames\"},\"ListGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Groups\"},\"ListGroupsForUser\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Groups\"},\"ListInstanceProfiles\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"InstanceProfiles\"},\"ListInstanceProfilesForRole\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"InstanceProfiles\"},\"ListMFADevices\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"MFADevices\"},\"ListPolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Policies\"},\"ListPolicyVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Versions\"},\"ListRolePolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"PolicyNames\"},\"ListRoles\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Roles\"},\"ListSAMLProviders\":{\"result_key\":\"SAMLProviderList\"},\"ListSSHPublicKeys\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"SSHPublicKeys\"},\"ListServerCertificates\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"ServerCertificateMetadataList\"},\"ListSigningCertificates\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Certificates\"},\"ListUserPolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"PolicyNames\"},\"ListUsers\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"Users\"},\"ListVirtualMFADevices\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"VirtualMFADevices\"},\"SimulateCustomPolicy\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"EvaluationResults\"},\"SimulatePrincipalPolicy\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"Marker\",\"result_key\":\"EvaluationResults\"}}}");

/***/ }),

/***/ 48986:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"InstanceProfileExists\":{\"delay\":1,\"operation\":\"GetInstanceProfile\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":200,\"matcher\":\"status\",\"state\":\"success\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":404}]},\"UserExists\":{\"delay\":1,\"operation\":\"GetUser\",\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"NoSuchEntity\"}]},\"RoleExists\":{\"delay\":1,\"operation\":\"GetRole\",\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"NoSuchEntity\"}]},\"PolicyExists\":{\"delay\":1,\"operation\":\"GetPolicy\",\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"NoSuchEntity\"}]}}}");

/***/ }),

/***/ 14536:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-06-15\",\"endpointPrefix\":\"identitystore\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"IdentityStore\",\"serviceFullName\":\"AWS SSO Identity Store\",\"serviceId\":\"identitystore\",\"signatureVersion\":\"v4\",\"signingName\":\"identitystore\",\"targetPrefix\":\"AWSIdentityStore\",\"uid\":\"identitystore-2020-06-15\"},\"operations\":{\"DescribeGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityStoreId\",\"GroupId\"],\"members\":{\"IdentityStoreId\":{},\"GroupId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"GroupId\",\"DisplayName\"],\"members\":{\"GroupId\":{},\"DisplayName\":{}}}},\"DescribeUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityStoreId\",\"UserId\"],\"members\":{\"IdentityStoreId\":{},\"UserId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"UserName\",\"UserId\"],\"members\":{\"UserName\":{\"shape\":\"S8\"},\"UserId\":{}}}},\"ListGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityStoreId\"],\"members\":{\"IdentityStoreId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Groups\"],\"members\":{\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GroupId\",\"DisplayName\"],\"members\":{\"GroupId\":{},\"DisplayName\":{}}}},\"NextToken\":{}}}},\"ListUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"IdentityStoreId\"],\"members\":{\"IdentityStoreId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Users\"],\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"UserName\",\"UserId\"],\"members\":{\"UserName\":{\"shape\":\"S8\"},\"UserId\":{}}}},\"NextToken\":{}}}}},\"shapes\":{\"S8\":{\"type\":\"string\",\"sensitive\":true},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributePath\",\"AttributeValue\"],\"members\":{\"AttributePath\":{},\"AttributeValue\":{\"type\":\"string\",\"sensitive\":true}}}}}}");

/***/ }),

/***/ 96554:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListUsers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 79595:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-12-02\",\"endpointPrefix\":\"imagebuilder\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"imagebuilder\",\"serviceFullName\":\"EC2 Image Builder\",\"serviceId\":\"imagebuilder\",\"signatureVersion\":\"v4\",\"signingName\":\"imagebuilder\",\"uid\":\"imagebuilder-2019-12-02\"},\"operations\":{\"CancelImageCreation\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CancelImageCreation\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageBuildVersionArn\",\"clientToken\"],\"members\":{\"imageBuildVersionArn\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"imageBuildVersionArn\":{}}}},\"CreateComponent\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateComponent\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"semanticVersion\",\"platform\",\"clientToken\"],\"members\":{\"name\":{},\"semanticVersion\":{},\"description\":{},\"changeDescription\":{},\"platform\":{},\"supportedOsVersions\":{\"shape\":\"Sa\"},\"data\":{},\"uri\":{},\"kmsKeyId\":{},\"tags\":{\"shape\":\"Se\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"componentBuildVersionArn\":{}}}},\"CreateContainerRecipe\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateContainerRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"containerType\",\"name\",\"semanticVersion\",\"components\",\"parentImage\",\"targetRepository\",\"clientToken\"],\"members\":{\"containerType\":{},\"name\":{},\"description\":{},\"semanticVersion\":{},\"components\":{\"shape\":\"Sl\"},\"instanceConfiguration\":{\"shape\":\"So\"},\"dockerfileTemplateData\":{},\"dockerfileTemplateUri\":{},\"platformOverride\":{},\"imageOsVersionOverride\":{},\"parentImage\":{},\"tags\":{\"shape\":\"Se\"},\"workingDirectory\":{},\"targetRepository\":{\"shape\":\"Sy\"},\"kmsKeyId\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"containerRecipeArn\":{}}}},\"CreateDistributionConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateDistributionConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"distributions\",\"clientToken\"],\"members\":{\"name\":{},\"description\":{},\"distributions\":{\"shape\":\"S13\"},\"tags\":{\"shape\":\"Se\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"distributionConfigurationArn\":{}}}},\"CreateImage\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateImage\"},\"input\":{\"type\":\"structure\",\"required\":[\"infrastructureConfigurationArn\",\"clientToken\"],\"members\":{\"imageRecipeArn\":{},\"containerRecipeArn\":{},\"distributionConfigurationArn\":{},\"infrastructureConfigurationArn\":{},\"imageTestsConfiguration\":{\"shape\":\"S1n\"},\"enhancedImageMetadataEnabled\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"Se\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"imageBuildVersionArn\":{}}}},\"CreateImagePipeline\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateImagePipeline\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"infrastructureConfigurationArn\",\"clientToken\"],\"members\":{\"name\":{},\"description\":{},\"imageRecipeArn\":{},\"containerRecipeArn\":{},\"infrastructureConfigurationArn\":{},\"distributionConfigurationArn\":{},\"imageTestsConfiguration\":{\"shape\":\"S1n\"},\"enhancedImageMetadataEnabled\":{\"type\":\"boolean\"},\"schedule\":{\"shape\":\"S1r\"},\"status\":{},\"tags\":{\"shape\":\"Se\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"imagePipelineArn\":{}}}},\"CreateImageRecipe\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateImageRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"semanticVersion\",\"components\",\"parentImage\",\"clientToken\"],\"members\":{\"name\":{},\"description\":{},\"semanticVersion\":{},\"components\":{\"shape\":\"Sl\"},\"parentImage\":{},\"blockDeviceMappings\":{\"shape\":\"Sp\"},\"tags\":{\"shape\":\"Se\"},\"workingDirectory\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"imageRecipeArn\":{}}}},\"CreateInfrastructureConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/CreateInfrastructureConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"instanceProfileName\",\"clientToken\"],\"members\":{\"name\":{},\"description\":{},\"instanceTypes\":{\"shape\":\"S20\"},\"instanceProfileName\":{},\"securityGroupIds\":{\"shape\":\"S23\"},\"subnetId\":{},\"logging\":{\"shape\":\"S24\"},\"keyPair\":{},\"terminateInstanceOnFailure\":{\"type\":\"boolean\"},\"snsTopicArn\":{},\"resourceTags\":{\"shape\":\"S27\"},\"tags\":{\"shape\":\"Se\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"infrastructureConfigurationArn\":{}}}},\"DeleteComponent\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteComponent\"},\"input\":{\"type\":\"structure\",\"required\":[\"componentBuildVersionArn\"],\"members\":{\"componentBuildVersionArn\":{\"location\":\"querystring\",\"locationName\":\"componentBuildVersionArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"componentBuildVersionArn\":{}}}},\"DeleteContainerRecipe\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteContainerRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"containerRecipeArn\"],\"members\":{\"containerRecipeArn\":{\"location\":\"querystring\",\"locationName\":\"containerRecipeArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"containerRecipeArn\":{}}}},\"DeleteDistributionConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteDistributionConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"distributionConfigurationArn\"],\"members\":{\"distributionConfigurationArn\":{\"location\":\"querystring\",\"locationName\":\"distributionConfigurationArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"distributionConfigurationArn\":{}}}},\"DeleteImage\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteImage\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageBuildVersionArn\"],\"members\":{\"imageBuildVersionArn\":{\"location\":\"querystring\",\"locationName\":\"imageBuildVersionArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageBuildVersionArn\":{}}}},\"DeleteImagePipeline\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteImagePipeline\"},\"input\":{\"type\":\"structure\",\"required\":[\"imagePipelineArn\"],\"members\":{\"imagePipelineArn\":{\"location\":\"querystring\",\"locationName\":\"imagePipelineArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imagePipelineArn\":{}}}},\"DeleteImageRecipe\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteImageRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageRecipeArn\"],\"members\":{\"imageRecipeArn\":{\"location\":\"querystring\",\"locationName\":\"imageRecipeArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageRecipeArn\":{}}}},\"DeleteInfrastructureConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/DeleteInfrastructureConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"infrastructureConfigurationArn\"],\"members\":{\"infrastructureConfigurationArn\":{\"location\":\"querystring\",\"locationName\":\"infrastructureConfigurationArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"infrastructureConfigurationArn\":{}}}},\"GetComponent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetComponent\"},\"input\":{\"type\":\"structure\",\"required\":[\"componentBuildVersionArn\"],\"members\":{\"componentBuildVersionArn\":{\"location\":\"querystring\",\"locationName\":\"componentBuildVersionArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"component\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"description\":{},\"changeDescription\":{},\"type\":{},\"platform\":{},\"supportedOsVersions\":{\"shape\":\"Sa\"},\"owner\":{},\"data\":{},\"kmsKeyId\":{},\"encrypted\":{\"type\":\"boolean\"},\"dateCreated\":{},\"tags\":{\"shape\":\"Se\"}}}}}},\"GetComponentPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetComponentPolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"componentArn\"],\"members\":{\"componentArn\":{\"location\":\"querystring\",\"locationName\":\"componentArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"policy\":{}}}},\"GetContainerRecipe\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetContainerRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"containerRecipeArn\"],\"members\":{\"containerRecipeArn\":{\"location\":\"querystring\",\"locationName\":\"containerRecipeArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"containerRecipe\":{\"shape\":\"S2z\"}}}},\"GetContainerRecipePolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetContainerRecipePolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"containerRecipeArn\"],\"members\":{\"containerRecipeArn\":{\"location\":\"querystring\",\"locationName\":\"containerRecipeArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"policy\":{}}}},\"GetDistributionConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetDistributionConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"distributionConfigurationArn\"],\"members\":{\"distributionConfigurationArn\":{\"location\":\"querystring\",\"locationName\":\"distributionConfigurationArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"distributionConfiguration\":{\"shape\":\"S35\"}}}},\"GetImage\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetImage\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageBuildVersionArn\"],\"members\":{\"imageBuildVersionArn\":{\"location\":\"querystring\",\"locationName\":\"imageBuildVersionArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"image\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"type\":{},\"name\":{},\"version\":{},\"platform\":{},\"enhancedImageMetadataEnabled\":{\"type\":\"boolean\"},\"osVersion\":{},\"state\":{\"shape\":\"S3c\"},\"imageRecipe\":{\"shape\":\"S3e\"},\"containerRecipe\":{\"shape\":\"S2z\"},\"sourcePipelineName\":{},\"sourcePipelineArn\":{},\"infrastructureConfiguration\":{\"shape\":\"S3g\"},\"distributionConfiguration\":{\"shape\":\"S35\"},\"imageTestsConfiguration\":{\"shape\":\"S1n\"},\"dateCreated\":{},\"outputResources\":{\"shape\":\"S3h\"},\"tags\":{\"shape\":\"Se\"}}}}}},\"GetImagePipeline\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetImagePipeline\"},\"input\":{\"type\":\"structure\",\"required\":[\"imagePipelineArn\"],\"members\":{\"imagePipelineArn\":{\"location\":\"querystring\",\"locationName\":\"imagePipelineArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imagePipeline\":{\"shape\":\"S3o\"}}}},\"GetImagePolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetImagePolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageArn\"],\"members\":{\"imageArn\":{\"location\":\"querystring\",\"locationName\":\"imageArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"policy\":{}}}},\"GetImageRecipe\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetImageRecipe\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageRecipeArn\"],\"members\":{\"imageRecipeArn\":{\"location\":\"querystring\",\"locationName\":\"imageRecipeArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageRecipe\":{\"shape\":\"S3e\"}}}},\"GetImageRecipePolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetImageRecipePolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageRecipeArn\"],\"members\":{\"imageRecipeArn\":{\"location\":\"querystring\",\"locationName\":\"imageRecipeArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"policy\":{}}}},\"GetInfrastructureConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/GetInfrastructureConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"infrastructureConfigurationArn\"],\"members\":{\"infrastructureConfigurationArn\":{\"location\":\"querystring\",\"locationName\":\"infrastructureConfigurationArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"infrastructureConfiguration\":{\"shape\":\"S3g\"}}}},\"ImportComponent\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/ImportComponent\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"semanticVersion\",\"type\",\"format\",\"platform\",\"clientToken\"],\"members\":{\"name\":{},\"semanticVersion\":{},\"description\":{},\"changeDescription\":{},\"type\":{},\"format\":{},\"platform\":{},\"data\":{},\"uri\":{},\"kmsKeyId\":{},\"tags\":{\"shape\":\"Se\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"componentBuildVersionArn\":{}}}},\"ListComponentBuildVersions\":{\"http\":{\"requestUri\":\"/ListComponentBuildVersions\"},\"input\":{\"type\":\"structure\",\"required\":[\"componentVersionArn\"],\"members\":{\"componentVersionArn\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"componentSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"platform\":{},\"supportedOsVersions\":{\"shape\":\"Sa\"},\"type\":{},\"owner\":{},\"description\":{},\"changeDescription\":{},\"dateCreated\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListComponents\":{\"http\":{\"requestUri\":\"/ListComponents\"},\"input\":{\"type\":\"structure\",\"members\":{\"owner\":{},\"filters\":{\"shape\":\"S49\"},\"byName\":{\"type\":\"boolean\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"componentVersionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"description\":{},\"platform\":{},\"supportedOsVersions\":{\"shape\":\"Sa\"},\"type\":{},\"owner\":{},\"dateCreated\":{}}}},\"nextToken\":{}}}},\"ListContainerRecipes\":{\"http\":{\"requestUri\":\"/ListContainerRecipes\"},\"input\":{\"type\":\"structure\",\"members\":{\"owner\":{},\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"containerRecipeSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"containerType\":{},\"name\":{},\"platform\":{},\"owner\":{},\"parentImage\":{},\"dateCreated\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListDistributionConfigurations\":{\"http\":{\"requestUri\":\"/ListDistributionConfigurations\"},\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"distributionConfigurationSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"dateCreated\":{},\"dateUpdated\":{},\"tags\":{\"shape\":\"Se\"},\"regions\":{\"type\":\"list\",\"member\":{}}}}},\"nextToken\":{}}}},\"ListImageBuildVersions\":{\"http\":{\"requestUri\":\"/ListImageBuildVersions\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageVersionArn\"],\"members\":{\"imageVersionArn\":{},\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageSummaryList\":{\"shape\":\"S4t\"},\"nextToken\":{}}}},\"ListImagePackages\":{\"http\":{\"requestUri\":\"/ListImagePackages\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageBuildVersionArn\"],\"members\":{\"imageBuildVersionArn\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imagePackageList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"packageName\":{},\"packageVersion\":{}}}},\"nextToken\":{}}}},\"ListImagePipelineImages\":{\"http\":{\"requestUri\":\"/ListImagePipelineImages\"},\"input\":{\"type\":\"structure\",\"required\":[\"imagePipelineArn\"],\"members\":{\"imagePipelineArn\":{},\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageSummaryList\":{\"shape\":\"S4t\"},\"nextToken\":{}}}},\"ListImagePipelines\":{\"http\":{\"requestUri\":\"/ListImagePipelines\"},\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imagePipelineList\":{\"type\":\"list\",\"member\":{\"shape\":\"S3o\"}},\"nextToken\":{}}}},\"ListImageRecipes\":{\"http\":{\"requestUri\":\"/ListImageRecipes\"},\"input\":{\"type\":\"structure\",\"members\":{\"owner\":{},\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageRecipeSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"platform\":{},\"owner\":{},\"parentImage\":{},\"dateCreated\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListImages\":{\"http\":{\"requestUri\":\"/ListImages\"},\"input\":{\"type\":\"structure\",\"members\":{\"owner\":{},\"filters\":{\"shape\":\"S49\"},\"byName\":{\"type\":\"boolean\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"includeDeprecated\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageVersionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"version\":{},\"platform\":{},\"osVersion\":{},\"owner\":{},\"dateCreated\":{}}}},\"nextToken\":{}}}},\"ListInfrastructureConfigurations\":{\"http\":{\"requestUri\":\"/ListInfrastructureConfigurations\"},\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"shape\":\"S49\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"infrastructureConfigurationSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"dateCreated\":{},\"dateUpdated\":{},\"resourceTags\":{\"shape\":\"S27\"},\"tags\":{\"shape\":\"Se\"},\"instanceTypes\":{\"shape\":\"S20\"},\"instanceProfileName\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Se\"}}}},\"PutComponentPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/PutComponentPolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"componentArn\",\"policy\"],\"members\":{\"componentArn\":{},\"policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"componentArn\":{}}}},\"PutContainerRecipePolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/PutContainerRecipePolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"containerRecipeArn\",\"policy\"],\"members\":{\"containerRecipeArn\":{},\"policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"containerRecipeArn\":{}}}},\"PutImagePolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/PutImagePolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageArn\",\"policy\"],\"members\":{\"imageArn\":{},\"policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageArn\":{}}}},\"PutImageRecipePolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/PutImageRecipePolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"imageRecipeArn\",\"policy\"],\"members\":{\"imageRecipeArn\":{},\"policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"imageRecipeArn\":{}}}},\"StartImagePipelineExecution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/StartImagePipelineExecution\"},\"input\":{\"type\":\"structure\",\"required\":[\"imagePipelineArn\",\"clientToken\"],\"members\":{\"imagePipelineArn\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"imageBuildVersionArn\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDistributionConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/UpdateDistributionConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"distributionConfigurationArn\",\"distributions\",\"clientToken\"],\"members\":{\"distributionConfigurationArn\":{},\"description\":{},\"distributions\":{\"shape\":\"S13\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"distributionConfigurationArn\":{}}}},\"UpdateImagePipeline\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/UpdateImagePipeline\"},\"input\":{\"type\":\"structure\",\"required\":[\"imagePipelineArn\",\"infrastructureConfigurationArn\",\"clientToken\"],\"members\":{\"imagePipelineArn\":{},\"description\":{},\"imageRecipeArn\":{},\"containerRecipeArn\":{},\"infrastructureConfigurationArn\":{},\"distributionConfigurationArn\":{},\"imageTestsConfiguration\":{\"shape\":\"S1n\"},\"enhancedImageMetadataEnabled\":{\"type\":\"boolean\"},\"schedule\":{\"shape\":\"S1r\"},\"status\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"imagePipelineArn\":{}}}},\"UpdateInfrastructureConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/UpdateInfrastructureConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"infrastructureConfigurationArn\",\"instanceProfileName\",\"clientToken\"],\"members\":{\"infrastructureConfigurationArn\":{},\"description\":{},\"instanceTypes\":{\"shape\":\"S20\"},\"instanceProfileName\":{},\"securityGroupIds\":{\"shape\":\"S23\"},\"subnetId\":{},\"logging\":{\"shape\":\"S24\"},\"keyPair\":{},\"terminateInstanceOnFailure\":{\"type\":\"boolean\"},\"snsTopicArn\":{},\"clientToken\":{\"idempotencyToken\":true},\"resourceTags\":{\"shape\":\"S27\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"requestId\":{},\"clientToken\":{},\"infrastructureConfigurationArn\":{}}}}},\"shapes\":{\"Sa\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"componentArn\"],\"members\":{\"componentArn\":{}}}},\"So\":{\"type\":\"structure\",\"members\":{\"image\":{},\"blockDeviceMappings\":{\"shape\":\"Sp\"}}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"deviceName\":{},\"ebs\":{\"type\":\"structure\",\"members\":{\"encrypted\":{\"type\":\"boolean\"},\"deleteOnTermination\":{\"type\":\"boolean\"},\"iops\":{\"type\":\"integer\"},\"kmsKeyId\":{},\"snapshotId\":{},\"volumeSize\":{\"type\":\"integer\"},\"volumeType\":{}}},\"virtualName\":{},\"noDevice\":{}}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"service\",\"repositoryName\"],\"members\":{\"service\":{},\"repositoryName\":{}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"region\"],\"members\":{\"region\":{},\"amiDistributionConfiguration\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"targetAccountIds\":{\"shape\":\"S17\"},\"amiTags\":{\"shape\":\"Se\"},\"kmsKeyId\":{},\"launchPermission\":{\"type\":\"structure\",\"members\":{\"userIds\":{\"shape\":\"S17\"},\"userGroups\":{\"shape\":\"S1a\"}}}}},\"containerDistributionConfiguration\":{\"type\":\"structure\",\"required\":[\"targetRepository\"],\"members\":{\"description\":{},\"containerTags\":{\"shape\":\"S1a\"},\"targetRepository\":{\"shape\":\"Sy\"}}},\"licenseConfigurationArns\":{\"type\":\"list\",\"member\":{}},\"launchTemplateConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"launchTemplateId\"],\"members\":{\"launchTemplateId\":{},\"accountId\":{},\"setDefaultVersion\":{\"type\":\"boolean\"}}}}}}},\"S17\":{\"type\":\"list\",\"member\":{}},\"S1a\":{\"type\":\"list\",\"member\":{}},\"S1n\":{\"type\":\"structure\",\"members\":{\"imageTestsEnabled\":{\"type\":\"boolean\"},\"timeoutMinutes\":{\"type\":\"integer\"}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"scheduleExpression\":{},\"timezone\":{},\"pipelineExecutionStartCondition\":{}}},\"S20\":{\"type\":\"list\",\"member\":{}},\"S23\":{\"type\":\"list\",\"member\":{}},\"S24\":{\"type\":\"structure\",\"members\":{\"s3Logs\":{\"type\":\"structure\",\"members\":{\"s3BucketName\":{},\"s3KeyPrefix\":{}}}}},\"S27\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2z\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"containerType\":{},\"name\":{},\"description\":{},\"platform\":{},\"owner\":{},\"version\":{},\"components\":{\"shape\":\"Sl\"},\"instanceConfiguration\":{\"shape\":\"So\"},\"dockerfileTemplateData\":{},\"kmsKeyId\":{},\"encrypted\":{\"type\":\"boolean\"},\"parentImage\":{},\"dateCreated\":{},\"tags\":{\"shape\":\"Se\"},\"workingDirectory\":{},\"targetRepository\":{\"shape\":\"Sy\"}}},\"S35\":{\"type\":\"structure\",\"required\":[\"timeoutMinutes\"],\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"distributions\":{\"shape\":\"S13\"},\"timeoutMinutes\":{\"type\":\"integer\"},\"dateCreated\":{},\"dateUpdated\":{},\"tags\":{\"shape\":\"Se\"}}},\"S3c\":{\"type\":\"structure\",\"members\":{\"status\":{},\"reason\":{}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"type\":{},\"name\":{},\"description\":{},\"platform\":{},\"owner\":{},\"version\":{},\"components\":{\"shape\":\"Sl\"},\"parentImage\":{},\"blockDeviceMappings\":{\"shape\":\"Sp\"},\"dateCreated\":{},\"tags\":{\"shape\":\"Se\"},\"workingDirectory\":{}}},\"S3g\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"instanceTypes\":{\"shape\":\"S20\"},\"instanceProfileName\":{},\"securityGroupIds\":{\"shape\":\"S23\"},\"subnetId\":{},\"logging\":{\"shape\":\"S24\"},\"keyPair\":{},\"terminateInstanceOnFailure\":{\"type\":\"boolean\"},\"snsTopicArn\":{},\"dateCreated\":{},\"dateUpdated\":{},\"resourceTags\":{\"shape\":\"S27\"},\"tags\":{\"shape\":\"Se\"}}},\"S3h\":{\"type\":\"structure\",\"members\":{\"amis\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"region\":{},\"image\":{},\"name\":{},\"description\":{},\"state\":{\"shape\":\"S3c\"},\"accountId\":{}}}},\"containers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"region\":{},\"imageUris\":{\"shape\":\"S1a\"}}}}}},\"S3o\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"description\":{},\"platform\":{},\"enhancedImageMetadataEnabled\":{\"type\":\"boolean\"},\"imageRecipeArn\":{},\"containerRecipeArn\":{},\"infrastructureConfigurationArn\":{},\"distributionConfigurationArn\":{},\"imageTestsConfiguration\":{\"shape\":\"S1n\"},\"schedule\":{\"shape\":\"S1r\"},\"status\":{},\"dateCreated\":{},\"dateUpdated\":{},\"dateLastRun\":{},\"dateNextRun\":{},\"tags\":{\"shape\":\"Se\"}}},\"S49\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}},\"S4t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"type\":{},\"version\":{},\"platform\":{},\"osVersion\":{},\"state\":{\"shape\":\"S3c\"},\"owner\":{},\"dateCreated\":{},\"outputResources\":{\"shape\":\"S3h\"},\"tags\":{\"shape\":\"Se\"}}}}}}");

/***/ }),

/***/ 57060:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListComponentBuildVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"componentSummaryList\"},\"ListComponents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"componentVersionList\"},\"ListContainerRecipes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"containerRecipeSummaryList\"},\"ListDistributionConfigurations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"distributionConfigurationSummaryList\"},\"ListImageBuildVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"imageSummaryList\"},\"ListImagePackages\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"imagePackageList\"},\"ListImagePipelineImages\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"imageSummaryList\"},\"ListImagePipelines\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"imagePipelineList\"},\"ListImageRecipes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"imageRecipeSummaryList\"},\"ListImages\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"imageVersionList\"},\"ListInfrastructureConfigurations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"infrastructureConfigurationSummaryList\"}}}");

/***/ }),

/***/ 85415:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"uid\":\"importexport-2010-06-01\",\"apiVersion\":\"2010-06-01\",\"endpointPrefix\":\"importexport\",\"globalEndpoint\":\"importexport.amazonaws.com\",\"serviceFullName\":\"AWS Import/Export\",\"serviceId\":\"ImportExport\",\"signatureVersion\":\"v2\",\"xmlNamespace\":\"http://importexport.amazonaws.com/doc/2010-06-01/\",\"protocol\":\"query\"},\"operations\":{\"CancelJob\":{\"http\":{\"requestUri\":\"/?Operation=CancelJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"APIVersion\":{}}},\"output\":{\"resultWrapper\":\"CancelJobResult\",\"type\":\"structure\",\"members\":{\"Success\":{\"type\":\"boolean\"}}}},\"CreateJob\":{\"http\":{\"requestUri\":\"/?Operation=CreateJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"JobType\",\"Manifest\",\"ValidateOnly\"],\"members\":{\"JobType\":{},\"Manifest\":{},\"ManifestAddendum\":{},\"ValidateOnly\":{\"type\":\"boolean\"},\"APIVersion\":{}}},\"output\":{\"resultWrapper\":\"CreateJobResult\",\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobType\":{},\"Signature\":{},\"SignatureFileContents\":{},\"WarningMessage\":{},\"ArtifactList\":{\"shape\":\"Sf\"}}}},\"GetShippingLabel\":{\"http\":{\"requestUri\":\"/?Operation=GetShippingLabel\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobIds\"],\"members\":{\"jobIds\":{\"type\":\"list\",\"member\":{}},\"name\":{},\"company\":{},\"phoneNumber\":{},\"country\":{},\"stateOrProvince\":{},\"city\":{},\"postalCode\":{},\"street1\":{},\"street2\":{},\"street3\":{},\"APIVersion\":{}}},\"output\":{\"resultWrapper\":\"GetShippingLabelResult\",\"type\":\"structure\",\"members\":{\"ShippingLabelURL\":{},\"Warning\":{}}}},\"GetStatus\":{\"http\":{\"requestUri\":\"/?Operation=GetStatus\"},\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"APIVersion\":{}}},\"output\":{\"resultWrapper\":\"GetStatusResult\",\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobType\":{},\"LocationCode\":{},\"LocationMessage\":{},\"ProgressCode\":{},\"ProgressMessage\":{},\"Carrier\":{},\"TrackingNumber\":{},\"LogBucket\":{},\"LogKey\":{},\"ErrorCount\":{\"type\":\"integer\"},\"Signature\":{},\"SignatureFileContents\":{},\"CurrentManifest\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"ArtifactList\":{\"shape\":\"Sf\"}}}},\"ListJobs\":{\"http\":{\"requestUri\":\"/?Operation=ListJobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxJobs\":{\"type\":\"integer\"},\"Marker\":{},\"APIVersion\":{}}},\"output\":{\"resultWrapper\":\"ListJobsResult\",\"type\":\"structure\",\"members\":{\"Jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"IsCanceled\":{\"type\":\"boolean\"},\"JobType\":{}}}},\"IsTruncated\":{\"type\":\"boolean\"}}}},\"UpdateJob\":{\"http\":{\"requestUri\":\"/?Operation=UpdateJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"JobId\",\"Manifest\",\"JobType\",\"ValidateOnly\"],\"members\":{\"JobId\":{},\"Manifest\":{},\"JobType\":{},\"ValidateOnly\":{\"type\":\"boolean\"},\"APIVersion\":{}}},\"output\":{\"resultWrapper\":\"UpdateJobResult\",\"type\":\"structure\",\"members\":{\"Success\":{\"type\":\"boolean\"},\"WarningMessage\":{},\"ArtifactList\":{\"shape\":\"Sf\"}}}}},\"shapes\":{\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"URL\":{}}}}},\"examples\":{}}");

/***/ }),

/***/ 60069:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListJobs\":{\"input_token\":\"Marker\",\"output_token\":\"Jobs[-1].JobId\",\"more_results\":\"IsTruncated\",\"limit_key\":\"MaxJobs\",\"result_key\":\"Jobs\"}}}");

/***/ }),

/***/ 92652:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-02-16\",\"endpointPrefix\":\"inspector\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Inspector\",\"serviceId\":\"Inspector\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"InspectorService\",\"uid\":\"inspector-2016-02-16\"},\"operations\":{\"AddAttributesToFindings\":{\"input\":{\"type\":\"structure\",\"required\":[\"findingArns\",\"attributes\"],\"members\":{\"findingArns\":{\"shape\":\"S2\"},\"attributes\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"failedItems\"],\"members\":{\"failedItems\":{\"shape\":\"S9\"}}}},\"CreateAssessmentTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTargetName\"],\"members\":{\"assessmentTargetName\":{},\"resourceGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentTargetArn\"],\"members\":{\"assessmentTargetArn\":{}}}},\"CreateAssessmentTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTargetArn\",\"assessmentTemplateName\",\"durationInSeconds\",\"rulesPackageArns\"],\"members\":{\"assessmentTargetArn\":{},\"assessmentTemplateName\":{},\"durationInSeconds\":{\"type\":\"integer\"},\"rulesPackageArns\":{\"shape\":\"Sj\"},\"userAttributesForFindings\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArn\"],\"members\":{\"assessmentTemplateArn\":{}}}},\"CreateExclusionsPreview\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArn\"],\"members\":{\"assessmentTemplateArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"previewToken\"],\"members\":{\"previewToken\":{}}}},\"CreateResourceGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceGroupTags\"],\"members\":{\"resourceGroupTags\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"resourceGroupArn\"],\"members\":{\"resourceGroupArn\":{}}}},\"DeleteAssessmentRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\"],\"members\":{\"assessmentRunArn\":{}}}},\"DeleteAssessmentTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTargetArn\"],\"members\":{\"assessmentTargetArn\":{}}}},\"DeleteAssessmentTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArn\"],\"members\":{\"assessmentTemplateArn\":{}}}},\"DescribeAssessmentRuns\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArns\"],\"members\":{\"assessmentRunArns\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentRuns\",\"failedItems\"],\"members\":{\"assessmentRuns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"name\",\"assessmentTemplateArn\",\"state\",\"durationInSeconds\",\"rulesPackageArns\",\"userAttributesForFindings\",\"createdAt\",\"stateChangedAt\",\"dataCollected\",\"stateChanges\",\"notifications\",\"findingCounts\"],\"members\":{\"arn\":{},\"name\":{},\"assessmentTemplateArn\":{},\"state\":{},\"durationInSeconds\":{\"type\":\"integer\"},\"rulesPackageArns\":{\"type\":\"list\",\"member\":{}},\"userAttributesForFindings\":{\"shape\":\"S4\"},\"createdAt\":{\"type\":\"timestamp\"},\"startedAt\":{\"type\":\"timestamp\"},\"completedAt\":{\"type\":\"timestamp\"},\"stateChangedAt\":{\"type\":\"timestamp\"},\"dataCollected\":{\"type\":\"boolean\"},\"stateChanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"stateChangedAt\",\"state\"],\"members\":{\"stateChangedAt\":{\"type\":\"timestamp\"},\"state\":{}}}},\"notifications\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"date\",\"event\",\"error\"],\"members\":{\"date\":{\"type\":\"timestamp\"},\"event\":{},\"message\":{},\"error\":{\"type\":\"boolean\"},\"snsTopicArn\":{},\"snsPublishStatusCode\":{}}}},\"findingCounts\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"DescribeAssessmentTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTargetArns\"],\"members\":{\"assessmentTargetArns\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentTargets\",\"failedItems\"],\"members\":{\"assessmentTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"name\",\"createdAt\",\"updatedAt\"],\"members\":{\"arn\":{},\"name\":{},\"resourceGroupArn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"updatedAt\":{\"type\":\"timestamp\"}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"DescribeAssessmentTemplates\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArns\"],\"members\":{\"assessmentTemplateArns\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentTemplates\",\"failedItems\"],\"members\":{\"assessmentTemplates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"name\",\"assessmentTargetArn\",\"durationInSeconds\",\"rulesPackageArns\",\"userAttributesForFindings\",\"assessmentRunCount\",\"createdAt\"],\"members\":{\"arn\":{},\"name\":{},\"assessmentTargetArn\":{},\"durationInSeconds\":{\"type\":\"integer\"},\"rulesPackageArns\":{\"shape\":\"Sj\"},\"userAttributesForFindings\":{\"shape\":\"S4\"},\"lastAssessmentRunArn\":{},\"assessmentRunCount\":{\"type\":\"integer\"},\"createdAt\":{\"type\":\"timestamp\"}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"DescribeCrossAccountAccessRole\":{\"output\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"valid\",\"registeredAt\"],\"members\":{\"roleArn\":{},\"valid\":{\"type\":\"boolean\"},\"registeredAt\":{\"type\":\"timestamp\"}}}},\"DescribeExclusions\":{\"input\":{\"type\":\"structure\",\"required\":[\"exclusionArns\"],\"members\":{\"exclusionArns\":{\"type\":\"list\",\"member\":{}},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"exclusions\",\"failedItems\"],\"members\":{\"exclusions\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"arn\",\"title\",\"description\",\"recommendation\",\"scopes\"],\"members\":{\"arn\":{},\"title\":{},\"description\":{},\"recommendation\":{},\"scopes\":{\"shape\":\"S1x\"},\"attributes\":{\"shape\":\"S21\"}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"DescribeFindings\":{\"input\":{\"type\":\"structure\",\"required\":[\"findingArns\"],\"members\":{\"findingArns\":{\"shape\":\"Sy\"},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"findings\",\"failedItems\"],\"members\":{\"findings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"attributes\",\"userAttributes\",\"createdAt\",\"updatedAt\"],\"members\":{\"arn\":{},\"schemaVersion\":{\"type\":\"integer\"},\"service\":{},\"serviceAttributes\":{\"type\":\"structure\",\"required\":[\"schemaVersion\"],\"members\":{\"schemaVersion\":{\"type\":\"integer\"},\"assessmentRunArn\":{},\"rulesPackageArn\":{}}},\"assetType\":{},\"assetAttributes\":{\"type\":\"structure\",\"required\":[\"schemaVersion\"],\"members\":{\"schemaVersion\":{\"type\":\"integer\"},\"agentId\":{},\"autoScalingGroup\":{},\"amiId\":{},\"hostname\":{},\"ipv4Addresses\":{\"type\":\"list\",\"member\":{}},\"tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S2i\"}},\"networkInterfaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"networkInterfaceId\":{},\"subnetId\":{},\"vpcId\":{},\"privateDnsName\":{},\"privateIpAddress\":{},\"privateIpAddresses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"privateDnsName\":{},\"privateIpAddress\":{}}}},\"publicDnsName\":{},\"publicIp\":{},\"ipv6Addresses\":{\"type\":\"list\",\"member\":{}},\"securityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"groupName\":{},\"groupId\":{}}}}}}}}},\"id\":{},\"title\":{},\"description\":{},\"recommendation\":{},\"severity\":{},\"numericSeverity\":{\"type\":\"double\"},\"confidence\":{\"type\":\"integer\"},\"indicatorOfCompromise\":{\"type\":\"boolean\"},\"attributes\":{\"shape\":\"S21\"},\"userAttributes\":{\"shape\":\"S4\"},\"createdAt\":{\"type\":\"timestamp\"},\"updatedAt\":{\"type\":\"timestamp\"}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"DescribeResourceGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceGroupArns\"],\"members\":{\"resourceGroupArns\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"resourceGroups\",\"failedItems\"],\"members\":{\"resourceGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"tags\",\"createdAt\"],\"members\":{\"arn\":{},\"tags\":{\"shape\":\"Sp\"},\"createdAt\":{\"type\":\"timestamp\"}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"DescribeRulesPackages\":{\"input\":{\"type\":\"structure\",\"required\":[\"rulesPackageArns\"],\"members\":{\"rulesPackageArns\":{\"shape\":\"Sy\"},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"rulesPackages\",\"failedItems\"],\"members\":{\"rulesPackages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"name\",\"version\",\"provider\"],\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"provider\":{},\"description\":{}}}},\"failedItems\":{\"shape\":\"S9\"}}}},\"GetAssessmentReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\",\"reportFileFormat\",\"reportType\"],\"members\":{\"assessmentRunArn\":{},\"reportFileFormat\":{},\"reportType\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{},\"url\":{}}}},\"GetExclusionsPreview\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArn\",\"previewToken\"],\"members\":{\"assessmentTemplateArn\":{},\"previewToken\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"locale\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"previewStatus\"],\"members\":{\"previewStatus\":{},\"exclusionPreviews\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"title\",\"description\",\"recommendation\",\"scopes\"],\"members\":{\"title\":{},\"description\":{},\"recommendation\":{},\"scopes\":{\"shape\":\"S1x\"},\"attributes\":{\"shape\":\"S21\"}}}},\"nextToken\":{}}}},\"GetTelemetryMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\"],\"members\":{\"assessmentRunArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"telemetryMetadata\"],\"members\":{\"telemetryMetadata\":{\"shape\":\"S3j\"}}}},\"ListAssessmentRunAgents\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\"],\"members\":{\"assessmentRunArn\":{},\"filter\":{\"type\":\"structure\",\"required\":[\"agentHealths\",\"agentHealthCodes\"],\"members\":{\"agentHealths\":{\"type\":\"list\",\"member\":{}},\"agentHealthCodes\":{\"type\":\"list\",\"member\":{}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentRunAgents\"],\"members\":{\"assessmentRunAgents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"agentId\",\"assessmentRunArn\",\"agentHealth\",\"agentHealthCode\",\"telemetryMetadata\"],\"members\":{\"agentId\":{},\"assessmentRunArn\":{},\"agentHealth\":{},\"agentHealthCode\":{},\"agentHealthDetails\":{},\"autoScalingGroup\":{},\"telemetryMetadata\":{\"shape\":\"S3j\"}}}},\"nextToken\":{}}}},\"ListAssessmentRuns\":{\"input\":{\"type\":\"structure\",\"members\":{\"assessmentTemplateArns\":{\"shape\":\"S3x\"},\"filter\":{\"type\":\"structure\",\"members\":{\"namePattern\":{},\"states\":{\"type\":\"list\",\"member\":{}},\"durationRange\":{\"shape\":\"S41\"},\"rulesPackageArns\":{\"shape\":\"S42\"},\"startTimeRange\":{\"shape\":\"S43\"},\"completionTimeRange\":{\"shape\":\"S43\"},\"stateChangeTimeRange\":{\"shape\":\"S43\"}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentRunArns\"],\"members\":{\"assessmentRunArns\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"ListAssessmentTargets\":{\"input\":{\"type\":\"structure\",\"members\":{\"filter\":{\"type\":\"structure\",\"members\":{\"assessmentTargetNamePattern\":{}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentTargetArns\"],\"members\":{\"assessmentTargetArns\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"ListAssessmentTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"assessmentTargetArns\":{\"shape\":\"S3x\"},\"filter\":{\"type\":\"structure\",\"members\":{\"namePattern\":{},\"durationRange\":{\"shape\":\"S41\"},\"rulesPackageArns\":{\"shape\":\"S42\"}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArns\"],\"members\":{\"assessmentTemplateArns\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"ListEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"subscriptions\"],\"members\":{\"subscriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"topicArn\",\"eventSubscriptions\"],\"members\":{\"resourceArn\":{},\"topicArn\":{},\"eventSubscriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"event\",\"subscribedAt\"],\"members\":{\"event\":{},\"subscribedAt\":{\"type\":\"timestamp\"}}}}}}},\"nextToken\":{}}}},\"ListExclusions\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\"],\"members\":{\"assessmentRunArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"exclusionArns\"],\"members\":{\"exclusionArns\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"ListFindings\":{\"input\":{\"type\":\"structure\",\"members\":{\"assessmentRunArns\":{\"shape\":\"S3x\"},\"filter\":{\"type\":\"structure\",\"members\":{\"agentIds\":{\"type\":\"list\",\"member\":{}},\"autoScalingGroups\":{\"type\":\"list\",\"member\":{}},\"ruleNames\":{\"type\":\"list\",\"member\":{}},\"severities\":{\"type\":\"list\",\"member\":{}},\"rulesPackageArns\":{\"shape\":\"S42\"},\"attributes\":{\"shape\":\"S21\"},\"userAttributes\":{\"shape\":\"S21\"},\"creationTimeRange\":{\"shape\":\"S43\"}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"findingArns\"],\"members\":{\"findingArns\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"ListRulesPackages\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"rulesPackageArns\"],\"members\":{\"rulesPackageArns\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"tags\"],\"members\":{\"tags\":{\"shape\":\"S4x\"}}}},\"PreviewAgents\":{\"input\":{\"type\":\"structure\",\"required\":[\"previewAgentsArn\"],\"members\":{\"previewAgentsArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"agentPreviews\"],\"members\":{\"agentPreviews\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"agentId\"],\"members\":{\"hostname\":{},\"agentId\":{},\"autoScalingGroup\":{},\"agentHealth\":{},\"agentVersion\":{},\"operatingSystem\":{},\"kernelVersion\":{},\"ipv4Address\":{}}}},\"nextToken\":{}}}},\"RegisterCrossAccountAccessRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"roleArn\"],\"members\":{\"roleArn\":{}}}},\"RemoveAttributesFromFindings\":{\"input\":{\"type\":\"structure\",\"required\":[\"findingArns\",\"attributeKeys\"],\"members\":{\"findingArns\":{\"shape\":\"S2\"},\"attributeKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"failedItems\"],\"members\":{\"failedItems\":{\"shape\":\"S9\"}}}},\"SetTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S4x\"}}}},\"StartAssessmentRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTemplateArn\"],\"members\":{\"assessmentTemplateArn\":{},\"assessmentRunName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\"],\"members\":{\"assessmentRunArn\":{}}}},\"StopAssessmentRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentRunArn\"],\"members\":{\"assessmentRunArn\":{},\"stopAction\":{}}}},\"SubscribeToEvent\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"event\",\"topicArn\"],\"members\":{\"resourceArn\":{},\"event\":{},\"topicArn\":{}}}},\"UnsubscribeFromEvent\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"event\",\"topicArn\"],\"members\":{\"resourceArn\":{},\"event\":{},\"topicArn\":{}}}},\"UpdateAssessmentTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"assessmentTargetArn\",\"assessmentTargetName\"],\"members\":{\"assessmentTargetArn\":{},\"assessmentTargetName\":{},\"resourceGroupArn\":{}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"S4\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"S5\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"value\":{}}},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"failureCode\",\"retryable\"],\"members\":{\"failureCode\":{},\"retryable\":{\"type\":\"boolean\"}}}},\"Sj\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sy\":{\"type\":\"list\",\"member\":{}},\"S1x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"S21\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"S2i\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"value\":{}}},\"S3j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"messageType\",\"count\"],\"members\":{\"messageType\":{},\"count\":{\"type\":\"long\"},\"dataSize\":{\"type\":\"long\"}}}},\"S3x\":{\"type\":\"list\",\"member\":{}},\"S41\":{\"type\":\"structure\",\"members\":{\"minSeconds\":{\"type\":\"integer\"},\"maxSeconds\":{\"type\":\"integer\"}}},\"S42\":{\"type\":\"list\",\"member\":{}},\"S43\":{\"type\":\"structure\",\"members\":{\"beginDate\":{\"type\":\"timestamp\"},\"endDate\":{\"type\":\"timestamp\"}}},\"S45\":{\"type\":\"list\",\"member\":{}},\"S4x\":{\"type\":\"list\",\"member\":{\"shape\":\"S2i\"}}}}");

/***/ }),

/***/ 98432:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetExclusionsPreview\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessmentRunAgents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessmentRuns\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessmentTargets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListAssessmentTemplates\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListEventSubscriptions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListExclusions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListFindings\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListRulesPackages\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"PreviewAgents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 47091:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-05-28\",\"endpointPrefix\":\"iot\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT\",\"serviceId\":\"IoT\",\"signatureVersion\":\"v4\",\"signingName\":\"execute-api\",\"uid\":\"iot-2015-05-28\"},\"operations\":{\"AcceptCertificateTransfer\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/accept-certificate-transfer/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"},\"setAsActive\":{\"location\":\"querystring\",\"locationName\":\"setAsActive\",\"type\":\"boolean\"}}}},\"AddThingToBillingGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/billing-groups/addThingToBillingGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"billingGroupName\":{},\"billingGroupArn\":{},\"thingName\":{},\"thingArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddThingToThingGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/thing-groups/addThingToThingGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"thingGroupName\":{},\"thingGroupArn\":{},\"thingName\":{},\"thingArn\":{},\"overrideDynamicGroups\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateTargetsWithJob\":{\"http\":{\"requestUri\":\"/jobs/{jobId}/targets\"},\"input\":{\"type\":\"structure\",\"required\":[\"targets\",\"jobId\"],\"members\":{\"targets\":{\"shape\":\"Sg\"},\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"comment\":{},\"namespaceId\":{\"location\":\"querystring\",\"locationName\":\"namespaceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobArn\":{},\"jobId\":{},\"description\":{}}}},\"AttachPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/target-policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"target\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"target\":{}}}},\"AttachPrincipalPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/principal-policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"principal\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"principal\":{\"location\":\"header\",\"locationName\":\"x-amzn-iot-principal\"}}},\"deprecated\":true},\"AttachSecurityProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/security-profiles/{securityProfileName}/targets\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\",\"securityProfileTargetArn\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"},\"securityProfileTargetArn\":{\"location\":\"querystring\",\"locationName\":\"securityProfileTargetArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AttachThingPrincipal\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/things/{thingName}/principals\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\",\"principal\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"principal\":{\"location\":\"header\",\"locationName\":\"x-amzn-principal\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelAuditMitigationActionsTask\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/audit/mitigationactions/tasks/{taskId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelAuditTask\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/audit/tasks/{taskId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelCertificateTransfer\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/cancel-certificate-transfer/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"}}}},\"CancelDetectMitigationActionsTask\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/detect/mitigationactions/tasks/{taskId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/jobs/{jobId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"reasonCode\":{},\"comment\":{},\"force\":{\"location\":\"querystring\",\"locationName\":\"force\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobArn\":{},\"jobId\":{},\"description\":{}}}},\"CancelJobExecution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/things/{thingName}/jobs/{jobId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"thingName\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"force\":{\"location\":\"querystring\",\"locationName\":\"force\",\"type\":\"boolean\"},\"expectedVersion\":{\"type\":\"long\"},\"statusDetails\":{\"shape\":\"S1e\"}}}},\"ClearDefaultAuthorizer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/default-authorizer\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ConfirmTopicRuleDestination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/confirmdestination/{confirmationToken+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"confirmationToken\"],\"members\":{\"confirmationToken\":{\"location\":\"uri\",\"locationName\":\"confirmationToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAuditSuppression\":{\"http\":{\"requestUri\":\"/audit/suppressions/create\"},\"input\":{\"type\":\"structure\",\"required\":[\"checkName\",\"resourceIdentifier\",\"clientRequestToken\"],\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"expirationDate\":{\"type\":\"timestamp\"},\"suppressIndefinitely\":{\"type\":\"boolean\"},\"description\":{},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAuthorizer\":{\"http\":{\"requestUri\":\"/authorizer/{authorizerName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"authorizerName\",\"authorizerFunctionArn\"],\"members\":{\"authorizerName\":{\"location\":\"uri\",\"locationName\":\"authorizerName\"},\"authorizerFunctionArn\":{},\"tokenKeyName\":{},\"tokenSigningPublicKeys\":{\"shape\":\"S25\"},\"status\":{},\"tags\":{\"shape\":\"S29\"},\"signingDisabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizerName\":{},\"authorizerArn\":{}}}},\"CreateBillingGroup\":{\"http\":{\"requestUri\":\"/billing-groups/{billingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"billingGroupName\"],\"members\":{\"billingGroupName\":{\"location\":\"uri\",\"locationName\":\"billingGroupName\"},\"billingGroupProperties\":{\"shape\":\"S2h\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"billingGroupName\":{},\"billingGroupArn\":{},\"billingGroupId\":{}}}},\"CreateCertificateFromCsr\":{\"http\":{\"requestUri\":\"/certificates\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateSigningRequest\"],\"members\":{\"certificateSigningRequest\":{},\"setAsActive\":{\"location\":\"querystring\",\"locationName\":\"setAsActive\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"certificatePem\":{}}}},\"CreateCustomMetric\":{\"http\":{\"requestUri\":\"/custom-metric/{metricName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"metricName\",\"metricType\",\"clientRequestToken\"],\"members\":{\"metricName\":{\"location\":\"uri\",\"locationName\":\"metricName\"},\"displayName\":{},\"metricType\":{},\"tags\":{\"shape\":\"S29\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricArn\":{}}}},\"CreateDimension\":{\"http\":{\"requestUri\":\"/dimensions/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"type\",\"stringValues\",\"clientRequestToken\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"type\":{},\"stringValues\":{\"shape\":\"S2z\"},\"tags\":{\"shape\":\"S29\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{}}}},\"CreateDomainConfiguration\":{\"http\":{\"requestUri\":\"/domainConfigurations/{domainConfigurationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainConfigurationName\"],\"members\":{\"domainConfigurationName\":{\"location\":\"uri\",\"locationName\":\"domainConfigurationName\"},\"domainName\":{},\"serverCertificateArns\":{\"type\":\"list\",\"member\":{}},\"validationCertificateArn\":{},\"authorizerConfig\":{\"shape\":\"S38\"},\"serviceType\":{},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domainConfigurationName\":{},\"domainConfigurationArn\":{}}}},\"CreateDynamicThingGroup\":{\"http\":{\"requestUri\":\"/dynamic-thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\",\"queryString\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"thingGroupProperties\":{\"shape\":\"S3e\"},\"indexName\":{},\"queryString\":{},\"queryVersion\":{},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingGroupName\":{},\"thingGroupArn\":{},\"thingGroupId\":{},\"indexName\":{},\"queryString\":{},\"queryVersion\":{}}}},\"CreateJob\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"targets\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"targets\":{\"shape\":\"Sg\"},\"documentSource\":{},\"document\":{},\"description\":{},\"presignedUrlConfig\":{\"shape\":\"S3t\"},\"targetSelection\":{},\"jobExecutionsRolloutConfig\":{\"shape\":\"S3w\"},\"abortConfig\":{\"shape\":\"S43\"},\"timeoutConfig\":{\"shape\":\"S4a\"},\"tags\":{\"shape\":\"S29\"},\"namespaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobArn\":{},\"jobId\":{},\"description\":{}}}},\"CreateKeysAndCertificate\":{\"http\":{\"requestUri\":\"/keys-and-certificate\"},\"input\":{\"type\":\"structure\",\"members\":{\"setAsActive\":{\"location\":\"querystring\",\"locationName\":\"setAsActive\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"certificatePem\":{},\"keyPair\":{\"shape\":\"S4f\"}}}},\"CreateMitigationAction\":{\"http\":{\"requestUri\":\"/mitigationactions/actions/{actionName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"actionName\",\"roleArn\",\"actionParams\"],\"members\":{\"actionName\":{\"location\":\"uri\",\"locationName\":\"actionName\"},\"roleArn\":{},\"actionParams\":{\"shape\":\"S4k\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionArn\":{},\"actionId\":{}}}},\"CreateOTAUpdate\":{\"http\":{\"requestUri\":\"/otaUpdates/{otaUpdateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"otaUpdateId\",\"targets\",\"files\",\"roleArn\"],\"members\":{\"otaUpdateId\":{\"location\":\"uri\",\"locationName\":\"otaUpdateId\"},\"description\":{},\"targets\":{\"shape\":\"S53\"},\"protocols\":{\"shape\":\"S55\"},\"targetSelection\":{},\"awsJobExecutionsRolloutConfig\":{\"shape\":\"S57\"},\"awsJobPresignedUrlConfig\":{\"shape\":\"S5e\"},\"awsJobAbortConfig\":{\"type\":\"structure\",\"required\":[\"abortCriteriaList\"],\"members\":{\"abortCriteriaList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"failureType\",\"action\",\"thresholdPercentage\",\"minNumberOfExecutedThings\"],\"members\":{\"failureType\":{},\"action\":{},\"thresholdPercentage\":{\"type\":\"double\"},\"minNumberOfExecutedThings\":{\"type\":\"integer\"}}}}}},\"awsJobTimeoutConfig\":{\"type\":\"structure\",\"members\":{\"inProgressTimeoutInMinutes\":{\"type\":\"long\"}}},\"files\":{\"shape\":\"S5p\"},\"roleArn\":{},\"additionalParameters\":{\"shape\":\"S6n\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"otaUpdateId\":{},\"awsIotJobId\":{},\"otaUpdateArn\":{},\"awsIotJobArn\":{},\"otaUpdateStatus\":{}}}},\"CreatePolicy\":{\"http\":{\"requestUri\":\"/policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"policyDocument\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"policyDocument\":{},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyArn\":{},\"policyDocument\":{},\"policyVersionId\":{}}}},\"CreatePolicyVersion\":{\"http\":{\"requestUri\":\"/policies/{policyName}/version\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"policyDocument\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"policyDocument\":{},\"setAsDefault\":{\"location\":\"querystring\",\"locationName\":\"setAsDefault\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policyArn\":{},\"policyDocument\":{},\"policyVersionId\":{},\"isDefaultVersion\":{\"type\":\"boolean\"}}}},\"CreateProvisioningClaim\":{\"http\":{\"requestUri\":\"/provisioning-templates/{templateName}/provisioning-claim\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateId\":{},\"certificatePem\":{},\"keyPair\":{\"shape\":\"S4f\"},\"expiration\":{\"type\":\"timestamp\"}}}},\"CreateProvisioningTemplate\":{\"http\":{\"requestUri\":\"/provisioning-templates\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\",\"templateBody\",\"provisioningRoleArn\"],\"members\":{\"templateName\":{},\"description\":{},\"templateBody\":{},\"enabled\":{\"type\":\"boolean\"},\"provisioningRoleArn\":{},\"preProvisioningHook\":{\"shape\":\"S79\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"templateArn\":{},\"templateName\":{},\"defaultVersionId\":{\"type\":\"integer\"}}}},\"CreateProvisioningTemplateVersion\":{\"http\":{\"requestUri\":\"/provisioning-templates/{templateName}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\",\"templateBody\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"},\"templateBody\":{},\"setAsDefault\":{\"location\":\"querystring\",\"locationName\":\"setAsDefault\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"templateArn\":{},\"templateName\":{},\"versionId\":{\"type\":\"integer\"},\"isDefaultVersion\":{\"type\":\"boolean\"}}}},\"CreateRoleAlias\":{\"http\":{\"requestUri\":\"/role-aliases/{roleAlias}\"},\"input\":{\"type\":\"structure\",\"required\":[\"roleAlias\",\"roleArn\"],\"members\":{\"roleAlias\":{\"location\":\"uri\",\"locationName\":\"roleAlias\"},\"roleArn\":{},\"credentialDurationSeconds\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"roleAlias\":{},\"roleAliasArn\":{}}}},\"CreateScheduledAudit\":{\"http\":{\"requestUri\":\"/audit/scheduledaudits/{scheduledAuditName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"frequency\",\"targetCheckNames\",\"scheduledAuditName\"],\"members\":{\"frequency\":{},\"dayOfMonth\":{},\"dayOfWeek\":{},\"targetCheckNames\":{\"shape\":\"S7o\"},\"scheduledAuditName\":{\"location\":\"uri\",\"locationName\":\"scheduledAuditName\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"scheduledAuditArn\":{}}}},\"CreateSecurityProfile\":{\"http\":{\"requestUri\":\"/security-profiles/{securityProfileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"},\"securityProfileDescription\":{},\"behaviors\":{\"shape\":\"S7u\"},\"alertTargets\":{\"shape\":\"S8k\"},\"additionalMetricsToRetain\":{\"shape\":\"S8o\",\"deprecated\":true,\"deprecatedMessage\":\"Use additionalMetricsToRetainV2.\"},\"additionalMetricsToRetainV2\":{\"shape\":\"S8p\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"securityProfileName\":{},\"securityProfileArn\":{}}}},\"CreateStream\":{\"http\":{\"requestUri\":\"/streams/{streamId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"streamId\",\"files\",\"roleArn\"],\"members\":{\"streamId\":{\"location\":\"uri\",\"locationName\":\"streamId\"},\"description\":{},\"files\":{\"shape\":\"S8v\"},\"roleArn\":{},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"streamId\":{},\"streamArn\":{},\"description\":{},\"streamVersion\":{\"type\":\"integer\"}}}},\"CreateThing\":{\"http\":{\"requestUri\":\"/things/{thingName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"thingTypeName\":{},\"attributePayload\":{\"shape\":\"S3g\"},\"billingGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingName\":{},\"thingArn\":{},\"thingId\":{}}}},\"CreateThingGroup\":{\"http\":{\"requestUri\":\"/thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"parentGroupName\":{},\"thingGroupProperties\":{\"shape\":\"S3e\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingGroupName\":{},\"thingGroupArn\":{},\"thingGroupId\":{}}}},\"CreateThingType\":{\"http\":{\"requestUri\":\"/thing-types/{thingTypeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingTypeName\"],\"members\":{\"thingTypeName\":{\"location\":\"uri\",\"locationName\":\"thingTypeName\"},\"thingTypeProperties\":{\"shape\":\"S97\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingTypeName\":{},\"thingTypeArn\":{},\"thingTypeId\":{}}}},\"CreateTopicRule\":{\"http\":{\"requestUri\":\"/rules/{ruleName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ruleName\",\"topicRulePayload\"],\"members\":{\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"},\"topicRulePayload\":{\"shape\":\"S9f\"},\"tags\":{\"location\":\"header\",\"locationName\":\"x-amz-tagging\"}},\"payload\":\"topicRulePayload\"}},\"CreateTopicRuleDestination\":{\"http\":{\"requestUri\":\"/destinations\"},\"input\":{\"type\":\"structure\",\"required\":[\"destinationConfiguration\"],\"members\":{\"destinationConfiguration\":{\"type\":\"structure\",\"members\":{\"httpUrlConfiguration\":{\"type\":\"structure\",\"required\":[\"confirmationUrl\"],\"members\":{\"confirmationUrl\":{}}},\"vpcConfiguration\":{\"type\":\"structure\",\"required\":[\"subnetIds\",\"vpcId\",\"roleArn\"],\"members\":{\"subnetIds\":{\"shape\":\"Scf\"},\"securityGroups\":{\"shape\":\"Sch\"},\"vpcId\":{},\"roleArn\":{}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"topicRuleDestination\":{\"shape\":\"Scl\"}}}},\"DeleteAccountAuditConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/audit/configuration\"},\"input\":{\"type\":\"structure\",\"members\":{\"deleteScheduledAudits\":{\"location\":\"querystring\",\"locationName\":\"deleteScheduledAudits\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAuditSuppression\":{\"http\":{\"requestUri\":\"/audit/suppressions/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"checkName\",\"resourceIdentifier\"],\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAuthorizer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/authorizer/{authorizerName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"authorizerName\"],\"members\":{\"authorizerName\":{\"location\":\"uri\",\"locationName\":\"authorizerName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteBillingGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/billing-groups/{billingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"billingGroupName\"],\"members\":{\"billingGroupName\":{\"location\":\"uri\",\"locationName\":\"billingGroupName\"},\"expectedVersion\":{\"location\":\"querystring\",\"locationName\":\"expectedVersion\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCACertificate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/cacertificate/{caCertificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"caCertificateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCertificate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/certificates/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"},\"forceDelete\":{\"location\":\"querystring\",\"locationName\":\"forceDelete\",\"type\":\"boolean\"}}}},\"DeleteCustomMetric\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/custom-metric/{metricName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"metricName\"],\"members\":{\"metricName\":{\"location\":\"uri\",\"locationName\":\"metricName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDimension\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/dimensions/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDomainConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/domainConfigurations/{domainConfigurationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainConfigurationName\"],\"members\":{\"domainConfigurationName\":{\"location\":\"uri\",\"locationName\":\"domainConfigurationName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDynamicThingGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/dynamic-thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"expectedVersion\":{\"location\":\"querystring\",\"locationName\":\"expectedVersion\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"force\":{\"location\":\"querystring\",\"locationName\":\"force\",\"type\":\"boolean\"},\"namespaceId\":{\"location\":\"querystring\",\"locationName\":\"namespaceId\"}}}},\"DeleteJobExecution\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/things/{thingName}/jobs/{jobId}/executionNumber/{executionNumber}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"thingName\",\"executionNumber\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"executionNumber\":{\"location\":\"uri\",\"locationName\":\"executionNumber\",\"type\":\"long\"},\"force\":{\"location\":\"querystring\",\"locationName\":\"force\",\"type\":\"boolean\"},\"namespaceId\":{\"location\":\"querystring\",\"locationName\":\"namespaceId\"}}}},\"DeleteMitigationAction\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/mitigationactions/actions/{actionName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"actionName\"],\"members\":{\"actionName\":{\"location\":\"uri\",\"locationName\":\"actionName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteOTAUpdate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/otaUpdates/{otaUpdateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"otaUpdateId\"],\"members\":{\"otaUpdateId\":{\"location\":\"uri\",\"locationName\":\"otaUpdateId\"},\"deleteStream\":{\"location\":\"querystring\",\"locationName\":\"deleteStream\",\"type\":\"boolean\"},\"forceDeleteAWSJob\":{\"location\":\"querystring\",\"locationName\":\"forceDeleteAWSJob\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"}}}},\"DeletePolicyVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/policies/{policyName}/version/{policyVersionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"policyVersionId\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"policyVersionId\":{\"location\":\"uri\",\"locationName\":\"policyVersionId\"}}}},\"DeleteProvisioningTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/provisioning-templates/{templateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProvisioningTemplateVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/provisioning-templates/{templateName}/versions/{versionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\",\"versionId\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"},\"versionId\":{\"location\":\"uri\",\"locationName\":\"versionId\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRegistrationCode\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/registrationcode\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRoleAlias\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/role-aliases/{roleAlias}\"},\"input\":{\"type\":\"structure\",\"required\":[\"roleAlias\"],\"members\":{\"roleAlias\":{\"location\":\"uri\",\"locationName\":\"roleAlias\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteScheduledAudit\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/audit/scheduledaudits/{scheduledAuditName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"scheduledAuditName\"],\"members\":{\"scheduledAuditName\":{\"location\":\"uri\",\"locationName\":\"scheduledAuditName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSecurityProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/security-profiles/{securityProfileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"},\"expectedVersion\":{\"location\":\"querystring\",\"locationName\":\"expectedVersion\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteStream\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/streams/{streamId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"streamId\"],\"members\":{\"streamId\":{\"location\":\"uri\",\"locationName\":\"streamId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteThing\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/things/{thingName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"expectedVersion\":{\"location\":\"querystring\",\"locationName\":\"expectedVersion\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteThingGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"expectedVersion\":{\"location\":\"querystring\",\"locationName\":\"expectedVersion\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteThingType\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/thing-types/{thingTypeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingTypeName\"],\"members\":{\"thingTypeName\":{\"location\":\"uri\",\"locationName\":\"thingTypeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTopicRule\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/rules/{ruleName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ruleName\"],\"members\":{\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}}},\"DeleteTopicRuleDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/destinations/{arn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteV2LoggingLevel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2LoggingLevel\"},\"input\":{\"type\":\"structure\",\"required\":[\"targetType\",\"targetName\"],\"members\":{\"targetType\":{\"location\":\"querystring\",\"locationName\":\"targetType\"},\"targetName\":{\"location\":\"querystring\",\"locationName\":\"targetName\"}}}},\"DeprecateThingType\":{\"http\":{\"requestUri\":\"/thing-types/{thingTypeName}/deprecate\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingTypeName\"],\"members\":{\"thingTypeName\":{\"location\":\"uri\",\"locationName\":\"thingTypeName\"},\"undoDeprecate\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAccountAuditConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/configuration\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"roleArn\":{},\"auditNotificationTargetConfigurations\":{\"shape\":\"Sej\"},\"auditCheckConfigurations\":{\"shape\":\"Sem\"}}}},\"DescribeAuditFinding\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/findings/{findingId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"findingId\"],\"members\":{\"findingId\":{\"location\":\"uri\",\"locationName\":\"findingId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"finding\":{\"shape\":\"Ser\"}}}},\"DescribeAuditMitigationActionsTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/mitigationactions/tasks/{taskId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskStatus\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"taskStatistics\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"totalFindingsCount\":{\"type\":\"long\"},\"failedFindingsCount\":{\"type\":\"long\"},\"succeededFindingsCount\":{\"type\":\"long\"},\"skippedFindingsCount\":{\"type\":\"long\"},\"canceledFindingsCount\":{\"type\":\"long\"}}}},\"target\":{\"shape\":\"Sfb\"},\"auditCheckToActionsMapping\":{\"shape\":\"Sff\"},\"actionsDefinition\":{\"shape\":\"Sfh\"}}}},\"DescribeAuditSuppression\":{\"http\":{\"requestUri\":\"/audit/suppressions/describe\"},\"input\":{\"type\":\"structure\",\"required\":[\"checkName\",\"resourceIdentifier\"],\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"expirationDate\":{\"type\":\"timestamp\"},\"suppressIndefinitely\":{\"type\":\"boolean\"},\"description\":{}}}},\"DescribeAuditTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/tasks/{taskId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskStatus\":{},\"taskType\":{},\"taskStartTime\":{\"type\":\"timestamp\"},\"taskStatistics\":{\"type\":\"structure\",\"members\":{\"totalChecks\":{\"type\":\"integer\"},\"inProgressChecks\":{\"type\":\"integer\"},\"waitingForDataCollectionChecks\":{\"type\":\"integer\"},\"compliantChecks\":{\"type\":\"integer\"},\"nonCompliantChecks\":{\"type\":\"integer\"},\"failedChecks\":{\"type\":\"integer\"},\"canceledChecks\":{\"type\":\"integer\"}}},\"scheduledAuditName\":{},\"auditDetails\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"checkRunStatus\":{},\"checkCompliant\":{\"type\":\"boolean\"},\"totalResourcesCount\":{\"type\":\"long\"},\"nonCompliantResourcesCount\":{\"type\":\"long\"},\"suppressedNonCompliantResourcesCount\":{\"type\":\"long\"},\"errorCode\":{},\"message\":{}}}}}}},\"DescribeAuthorizer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/authorizer/{authorizerName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"authorizerName\"],\"members\":{\"authorizerName\":{\"location\":\"uri\",\"locationName\":\"authorizerName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizerDescription\":{\"shape\":\"Sg8\"}}}},\"DescribeBillingGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/billing-groups/{billingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"billingGroupName\"],\"members\":{\"billingGroupName\":{\"location\":\"uri\",\"locationName\":\"billingGroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"billingGroupName\":{},\"billingGroupId\":{},\"billingGroupArn\":{},\"version\":{\"type\":\"long\"},\"billingGroupProperties\":{\"shape\":\"S2h\"},\"billingGroupMetadata\":{\"type\":\"structure\",\"members\":{\"creationDate\":{\"type\":\"timestamp\"}}}}}},\"DescribeCACertificate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/cacertificate/{caCertificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"caCertificateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateDescription\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"status\":{},\"certificatePem\":{},\"ownedBy\":{},\"creationDate\":{\"type\":\"timestamp\"},\"autoRegistrationStatus\":{},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"customerVersion\":{\"type\":\"integer\"},\"generationId\":{},\"validity\":{\"shape\":\"Sgl\"}}},\"registrationConfig\":{\"shape\":\"Sgm\"}}}},\"DescribeCertificate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/certificates/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateDescription\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"caCertificateId\":{},\"status\":{},\"certificatePem\":{},\"ownedBy\":{},\"previousOwnedBy\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"customerVersion\":{\"type\":\"integer\"},\"transferData\":{\"type\":\"structure\",\"members\":{\"transferMessage\":{},\"rejectReason\":{},\"transferDate\":{\"type\":\"timestamp\"},\"acceptDate\":{\"type\":\"timestamp\"},\"rejectDate\":{\"type\":\"timestamp\"}}},\"generationId\":{},\"validity\":{\"shape\":\"Sgl\"},\"certificateMode\":{}}}}}},\"DescribeCustomMetric\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/custom-metric/{metricName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"metricName\"],\"members\":{\"metricName\":{\"location\":\"uri\",\"locationName\":\"metricName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricArn\":{},\"metricType\":{},\"displayName\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"DescribeDefaultAuthorizer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/default-authorizer\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizerDescription\":{\"shape\":\"Sg8\"}}}},\"DescribeDetectMitigationActionsTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detect/mitigationactions/tasks/{taskId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskSummary\":{\"shape\":\"Sh0\"}}}},\"DescribeDimension\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dimensions/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"type\":{},\"stringValues\":{\"shape\":\"S2z\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"DescribeDomainConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domainConfigurations/{domainConfigurationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainConfigurationName\"],\"members\":{\"domainConfigurationName\":{\"location\":\"uri\",\"locationName\":\"domainConfigurationName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domainConfigurationName\":{},\"domainConfigurationArn\":{},\"domainName\":{},\"serverCertificates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serverCertificateArn\":{},\"serverCertificateStatus\":{},\"serverCertificateStatusDetail\":{}}}},\"authorizerConfig\":{\"shape\":\"S38\"},\"domainConfigurationStatus\":{},\"serviceType\":{},\"domainType\":{},\"lastStatusChangeDate\":{\"type\":\"timestamp\"}}}},\"DescribeEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/endpoint\"},\"input\":{\"type\":\"structure\",\"members\":{\"endpointType\":{\"location\":\"querystring\",\"locationName\":\"endpointType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"endpointAddress\":{}}}},\"DescribeEventConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/event-configurations\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"eventConfigurations\":{\"shape\":\"Shq\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"DescribeIndex\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/indices/{indexName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"indexName\"],\"members\":{\"indexName\":{\"location\":\"uri\",\"locationName\":\"indexName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"indexName\":{},\"indexStatus\":{},\"schema\":{}}}},\"DescribeJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"documentSource\":{},\"job\":{\"type\":\"structure\",\"members\":{\"jobArn\":{},\"jobId\":{},\"targetSelection\":{},\"status\":{},\"forceCanceled\":{\"type\":\"boolean\"},\"reasonCode\":{},\"comment\":{},\"targets\":{\"shape\":\"Sg\"},\"description\":{},\"presignedUrlConfig\":{\"shape\":\"S3t\"},\"jobExecutionsRolloutConfig\":{\"shape\":\"S3w\"},\"abortConfig\":{\"shape\":\"S43\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"completedAt\":{\"type\":\"timestamp\"},\"jobProcessDetails\":{\"type\":\"structure\",\"members\":{\"processingTargets\":{\"type\":\"list\",\"member\":{}},\"numberOfCanceledThings\":{\"type\":\"integer\"},\"numberOfSucceededThings\":{\"type\":\"integer\"},\"numberOfFailedThings\":{\"type\":\"integer\"},\"numberOfRejectedThings\":{\"type\":\"integer\"},\"numberOfQueuedThings\":{\"type\":\"integer\"},\"numberOfInProgressThings\":{\"type\":\"integer\"},\"numberOfRemovedThings\":{\"type\":\"integer\"},\"numberOfTimedOutThings\":{\"type\":\"integer\"}}},\"timeoutConfig\":{\"shape\":\"S4a\"},\"namespaceId\":{}}}}}},\"DescribeJobExecution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"thingName\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"executionNumber\":{\"location\":\"querystring\",\"locationName\":\"executionNumber\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"execution\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"status\":{},\"forceCanceled\":{\"type\":\"boolean\"},\"statusDetails\":{\"type\":\"structure\",\"members\":{\"detailsMap\":{\"shape\":\"S1e\"}}},\"thingArn\":{},\"queuedAt\":{\"type\":\"timestamp\"},\"startedAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"executionNumber\":{\"type\":\"long\"},\"versionNumber\":{\"type\":\"long\"},\"approximateSecondsBeforeTimedOut\":{\"type\":\"long\"}}}}}},\"DescribeMitigationAction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/mitigationactions/actions/{actionName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"actionName\"],\"members\":{\"actionName\":{\"location\":\"uri\",\"locationName\":\"actionName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionName\":{},\"actionType\":{},\"actionArn\":{},\"actionId\":{},\"roleArn\":{},\"actionParams\":{\"shape\":\"S4k\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"DescribeProvisioningTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/provisioning-templates/{templateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"templateArn\":{},\"templateName\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"defaultVersionId\":{\"type\":\"integer\"},\"templateBody\":{},\"enabled\":{\"type\":\"boolean\"},\"provisioningRoleArn\":{},\"preProvisioningHook\":{\"shape\":\"S79\"}}}},\"DescribeProvisioningTemplateVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/provisioning-templates/{templateName}/versions/{versionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\",\"versionId\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"},\"versionId\":{\"location\":\"uri\",\"locationName\":\"versionId\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"versionId\":{\"type\":\"integer\"},\"creationDate\":{\"type\":\"timestamp\"},\"templateBody\":{},\"isDefaultVersion\":{\"type\":\"boolean\"}}}},\"DescribeRoleAlias\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/role-aliases/{roleAlias}\"},\"input\":{\"type\":\"structure\",\"required\":[\"roleAlias\"],\"members\":{\"roleAlias\":{\"location\":\"uri\",\"locationName\":\"roleAlias\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"roleAliasDescription\":{\"type\":\"structure\",\"members\":{\"roleAlias\":{},\"roleAliasArn\":{},\"roleArn\":{},\"owner\":{},\"credentialDurationSeconds\":{\"type\":\"integer\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}}}},\"DescribeScheduledAudit\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/scheduledaudits/{scheduledAuditName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"scheduledAuditName\"],\"members\":{\"scheduledAuditName\":{\"location\":\"uri\",\"locationName\":\"scheduledAuditName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"frequency\":{},\"dayOfMonth\":{},\"dayOfWeek\":{},\"targetCheckNames\":{\"shape\":\"S7o\"},\"scheduledAuditName\":{},\"scheduledAuditArn\":{}}}},\"DescribeSecurityProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/security-profiles/{securityProfileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"securityProfileName\":{},\"securityProfileArn\":{},\"securityProfileDescription\":{},\"behaviors\":{\"shape\":\"S7u\"},\"alertTargets\":{\"shape\":\"S8k\"},\"additionalMetricsToRetain\":{\"shape\":\"S8o\",\"deprecated\":true,\"deprecatedMessage\":\"Use additionalMetricsToRetainV2.\"},\"additionalMetricsToRetainV2\":{\"shape\":\"S8p\"},\"version\":{\"type\":\"long\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"DescribeStream\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/streams/{streamId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"streamId\"],\"members\":{\"streamId\":{\"location\":\"uri\",\"locationName\":\"streamId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"streamInfo\":{\"type\":\"structure\",\"members\":{\"streamId\":{},\"streamArn\":{},\"streamVersion\":{\"type\":\"integer\"},\"description\":{},\"files\":{\"shape\":\"S8v\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"roleArn\":{}}}}}},\"DescribeThing\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"defaultClientId\":{},\"thingName\":{},\"thingId\":{},\"thingArn\":{},\"thingTypeName\":{},\"attributes\":{\"shape\":\"S3h\"},\"version\":{\"type\":\"long\"},\"billingGroupName\":{}}}},\"DescribeThingGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingGroupName\":{},\"thingGroupId\":{},\"thingGroupArn\":{},\"version\":{\"type\":\"long\"},\"thingGroupProperties\":{\"shape\":\"S3e\"},\"thingGroupMetadata\":{\"type\":\"structure\",\"members\":{\"parentGroupName\":{},\"rootToParentThingGroups\":{\"shape\":\"Sj7\"},\"creationDate\":{\"type\":\"timestamp\"}}},\"indexName\":{},\"queryString\":{},\"queryVersion\":{},\"status\":{}}}},\"DescribeThingRegistrationTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-registration-tasks/{taskId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"templateBody\":{},\"inputFileBucket\":{},\"inputFileKey\":{},\"roleArn\":{},\"status\":{},\"message\":{},\"successCount\":{\"type\":\"integer\"},\"failureCount\":{\"type\":\"integer\"},\"percentageProgress\":{\"type\":\"integer\"}}}},\"DescribeThingType\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-types/{thingTypeName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingTypeName\"],\"members\":{\"thingTypeName\":{\"location\":\"uri\",\"locationName\":\"thingTypeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingTypeName\":{},\"thingTypeId\":{},\"thingTypeArn\":{},\"thingTypeProperties\":{\"shape\":\"S97\"},\"thingTypeMetadata\":{\"shape\":\"Sjk\"}}}},\"DetachPolicy\":{\"http\":{\"requestUri\":\"/target-policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"target\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"target\":{}}}},\"DetachPrincipalPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/principal-policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"principal\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"principal\":{\"location\":\"header\",\"locationName\":\"x-amzn-iot-principal\"}}},\"deprecated\":true},\"DetachSecurityProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/security-profiles/{securityProfileName}/targets\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\",\"securityProfileTargetArn\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"},\"securityProfileTargetArn\":{\"location\":\"querystring\",\"locationName\":\"securityProfileTargetArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DetachThingPrincipal\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/things/{thingName}/principals\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\",\"principal\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"principal\":{\"location\":\"header\",\"locationName\":\"x-amzn-principal\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableTopicRule\":{\"http\":{\"requestUri\":\"/rules/{ruleName}/disable\"},\"input\":{\"type\":\"structure\",\"required\":[\"ruleName\"],\"members\":{\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}}},\"EnableTopicRule\":{\"http\":{\"requestUri\":\"/rules/{ruleName}/enable\"},\"input\":{\"type\":\"structure\",\"required\":[\"ruleName\"],\"members\":{\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}}},\"GetBehaviorModelTrainingSummaries\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/behavior-model-training/summaries\"},\"input\":{\"type\":\"structure\",\"members\":{\"securityProfileName\":{\"location\":\"querystring\",\"locationName\":\"securityProfileName\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"securityProfileName\":{},\"behaviorName\":{},\"trainingDataCollectionStartDate\":{\"type\":\"timestamp\"},\"modelStatus\":{},\"datapointsCollectionPercentage\":{\"type\":\"double\"},\"lastModelRefreshDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"GetCardinality\":{\"http\":{\"requestUri\":\"/indices/cardinality\"},\"input\":{\"type\":\"structure\",\"required\":[\"queryString\"],\"members\":{\"indexName\":{},\"queryString\":{},\"aggregationField\":{},\"queryVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"cardinality\":{\"type\":\"integer\"}}}},\"GetEffectivePolicies\":{\"http\":{\"requestUri\":\"/effective-policies\"},\"input\":{\"type\":\"structure\",\"members\":{\"principal\":{},\"cognitoIdentityPoolId\":{},\"thingName\":{\"location\":\"querystring\",\"locationName\":\"thingName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"effectivePolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyArn\":{},\"policyDocument\":{}}}}}}},\"GetIndexingConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/indexing/config\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"thingIndexingConfiguration\":{\"shape\":\"Skc\"},\"thingGroupIndexingConfiguration\":{\"shape\":\"Skj\"}}}},\"GetJobDocument\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{jobId}/job-document\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"document\":{}}}},\"GetLoggingOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/loggingOptions\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"roleArn\":{},\"logLevel\":{}}}},\"GetOTAUpdate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/otaUpdates/{otaUpdateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"otaUpdateId\"],\"members\":{\"otaUpdateId\":{\"location\":\"uri\",\"locationName\":\"otaUpdateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"otaUpdateInfo\":{\"type\":\"structure\",\"members\":{\"otaUpdateId\":{},\"otaUpdateArn\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"description\":{},\"targets\":{\"shape\":\"S53\"},\"protocols\":{\"shape\":\"S55\"},\"awsJobExecutionsRolloutConfig\":{\"shape\":\"S57\"},\"awsJobPresignedUrlConfig\":{\"shape\":\"S5e\"},\"targetSelection\":{},\"otaUpdateFiles\":{\"shape\":\"S5p\"},\"otaUpdateStatus\":{},\"awsIotJobId\":{},\"awsIotJobArn\":{},\"errorInfo\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{}}},\"additionalParameters\":{\"shape\":\"S6n\"}}}}}},\"GetPercentiles\":{\"http\":{\"requestUri\":\"/indices/percentiles\"},\"input\":{\"type\":\"structure\",\"required\":[\"queryString\"],\"members\":{\"indexName\":{},\"queryString\":{},\"aggregationField\":{},\"queryVersion\":{},\"percents\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"percentiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"percent\":{\"type\":\"double\"},\"value\":{\"type\":\"double\"}}}}}}},\"GetPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policies/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyArn\":{},\"policyDocument\":{},\"defaultVersionId\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"generationId\":{}}}},\"GetPolicyVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policies/{policyName}/version/{policyVersionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"policyVersionId\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"policyVersionId\":{\"location\":\"uri\",\"locationName\":\"policyVersionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policyArn\":{},\"policyName\":{},\"policyDocument\":{},\"policyVersionId\":{},\"isDefaultVersion\":{\"type\":\"boolean\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"generationId\":{}}}},\"GetRegistrationCode\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/registrationcode\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"registrationCode\":{}}}},\"GetStatistics\":{\"http\":{\"requestUri\":\"/indices/statistics\"},\"input\":{\"type\":\"structure\",\"required\":[\"queryString\"],\"members\":{\"indexName\":{},\"queryString\":{},\"aggregationField\":{},\"queryVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"statistics\":{\"type\":\"structure\",\"members\":{\"count\":{\"type\":\"integer\"},\"average\":{\"type\":\"double\"},\"sum\":{\"type\":\"double\"},\"minimum\":{\"type\":\"double\"},\"maximum\":{\"type\":\"double\"},\"sumOfSquares\":{\"type\":\"double\"},\"variance\":{\"type\":\"double\"},\"stdDeviation\":{\"type\":\"double\"}}}}}},\"GetTopicRule\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/rules/{ruleName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ruleName\"],\"members\":{\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ruleArn\":{},\"rule\":{\"type\":\"structure\",\"members\":{\"ruleName\":{},\"sql\":{},\"description\":{},\"createdAt\":{\"type\":\"timestamp\"},\"actions\":{\"shape\":\"S9i\"},\"ruleDisabled\":{\"type\":\"boolean\"},\"awsIotSqlVersion\":{},\"errorAction\":{\"shape\":\"S9j\"}}}}}},\"GetTopicRuleDestination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/destinations/{arn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"topicRuleDestination\":{\"shape\":\"Scl\"}}}},\"GetV2LoggingOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2LoggingOptions\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"roleArn\":{},\"defaultLogLevel\":{},\"disableAllLogs\":{\"type\":\"boolean\"}}}},\"ListActiveViolations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/active-violations\"},\"input\":{\"type\":\"structure\",\"members\":{\"thingName\":{\"location\":\"querystring\",\"locationName\":\"thingName\"},\"securityProfileName\":{\"location\":\"querystring\",\"locationName\":\"securityProfileName\"},\"behaviorCriteriaType\":{\"location\":\"querystring\",\"locationName\":\"behaviorCriteriaType\"},\"listSuppressedAlerts\":{\"location\":\"querystring\",\"locationName\":\"listSuppressedAlerts\",\"type\":\"boolean\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"activeViolations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"violationId\":{},\"thingName\":{},\"securityProfileName\":{},\"behavior\":{\"shape\":\"S7v\"},\"lastViolationValue\":{\"shape\":\"S82\"},\"violationEventAdditionalInfo\":{\"shape\":\"Sm0\"},\"lastViolationTime\":{\"type\":\"timestamp\"},\"violationStartTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListAttachedPolicies\":{\"http\":{\"requestUri\":\"/attached-policies/{target}\"},\"input\":{\"type\":\"structure\",\"required\":[\"target\"],\"members\":{\"target\":{\"location\":\"uri\",\"locationName\":\"target\"},\"recursive\":{\"location\":\"querystring\",\"locationName\":\"recursive\",\"type\":\"boolean\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policies\":{\"shape\":\"Sm6\"},\"nextMarker\":{}}}},\"ListAuditFindings\":{\"http\":{\"requestUri\":\"/audit/findings\"},\"input\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"listSuppressedFindings\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"findings\":{\"type\":\"list\",\"member\":{\"shape\":\"Ser\"}},\"nextToken\":{}}}},\"ListAuditMitigationActionsExecutions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/mitigationactions/executions\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\",\"findingId\"],\"members\":{\"taskId\":{\"location\":\"querystring\",\"locationName\":\"taskId\"},\"actionStatus\":{\"location\":\"querystring\",\"locationName\":\"actionStatus\"},\"findingId\":{\"location\":\"querystring\",\"locationName\":\"findingId\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionsExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"findingId\":{},\"actionName\":{},\"actionId\":{},\"status\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"errorCode\":{},\"message\":{}}}},\"nextToken\":{}}}},\"ListAuditMitigationActionsTasks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/mitigationactions/tasks\"},\"input\":{\"type\":\"structure\",\"required\":[\"startTime\",\"endTime\"],\"members\":{\"auditTaskId\":{\"location\":\"querystring\",\"locationName\":\"auditTaskId\"},\"findingId\":{\"location\":\"querystring\",\"locationName\":\"findingId\"},\"taskStatus\":{\"location\":\"querystring\",\"locationName\":\"taskStatus\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"startTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"endTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"startTime\":{\"type\":\"timestamp\"},\"taskStatus\":{}}}},\"nextToken\":{}}}},\"ListAuditSuppressions\":{\"http\":{\"requestUri\":\"/audit/suppressions/list\"},\"input\":{\"type\":\"structure\",\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"ascendingOrder\":{\"type\":\"boolean\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suppressions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"checkName\",\"resourceIdentifier\"],\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"expirationDate\":{\"type\":\"timestamp\"},\"suppressIndefinitely\":{\"type\":\"boolean\"},\"description\":{}}}},\"nextToken\":{}}}},\"ListAuditTasks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/tasks\"},\"input\":{\"type\":\"structure\",\"required\":[\"startTime\",\"endTime\"],\"members\":{\"startTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"endTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"},\"taskType\":{\"location\":\"querystring\",\"locationName\":\"taskType\"},\"taskStatus\":{\"location\":\"querystring\",\"locationName\":\"taskStatus\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"taskStatus\":{},\"taskType\":{}}}},\"nextToken\":{}}}},\"ListAuthorizers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/authorizers/\"},\"input\":{\"type\":\"structure\",\"members\":{\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"},\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"authorizerName\":{},\"authorizerArn\":{}}}},\"nextMarker\":{}}}},\"ListBillingGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/billing-groups\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"namePrefixFilter\":{\"location\":\"querystring\",\"locationName\":\"namePrefixFilter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"billingGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sj8\"}},\"nextToken\":{}}}},\"ListCACertificates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/cacertificates\"},\"input\":{\"type\":\"structure\",\"members\":{\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"status\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"nextMarker\":{}}}},\"ListCertificates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/certificates\"},\"input\":{\"type\":\"structure\",\"members\":{\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificates\":{\"shape\":\"Sn8\"},\"nextMarker\":{}}}},\"ListCertificatesByCA\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/certificates-by-ca/{caCertificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"caCertificateId\"],\"members\":{\"caCertificateId\":{\"location\":\"uri\",\"locationName\":\"caCertificateId\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificates\":{\"shape\":\"Sn8\"},\"nextMarker\":{}}}},\"ListCustomMetrics\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/custom-metrics\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricNames\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListDetectMitigationActionsExecutions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detect/mitigationactions/executions\"},\"input\":{\"type\":\"structure\",\"members\":{\"taskId\":{\"location\":\"querystring\",\"locationName\":\"taskId\"},\"violationId\":{\"location\":\"querystring\",\"locationName\":\"violationId\"},\"thingName\":{\"location\":\"querystring\",\"locationName\":\"thingName\"},\"startTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"endTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionsExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"violationId\":{},\"actionName\":{},\"thingName\":{},\"executionStartDate\":{\"type\":\"timestamp\"},\"executionEndDate\":{\"type\":\"timestamp\"},\"status\":{},\"errorCode\":{},\"message\":{}}}},\"nextToken\":{}}}},\"ListDetectMitigationActionsTasks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detect/mitigationactions/tasks\"},\"input\":{\"type\":\"structure\",\"required\":[\"startTime\",\"endTime\"],\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"startTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"endTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tasks\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh0\"}},\"nextToken\":{}}}},\"ListDimensions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dimensions\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dimensionNames\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListDomainConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/domainConfigurations\"},\"input\":{\"type\":\"structure\",\"members\":{\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"serviceType\":{\"location\":\"querystring\",\"locationName\":\"serviceType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domainConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"domainConfigurationName\":{},\"domainConfigurationArn\":{},\"serviceType\":{}}}},\"nextMarker\":{}}}},\"ListIndices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/indices\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"indexNames\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListJobExecutionsForJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{jobId}/things\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"executionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"thingArn\":{},\"jobExecutionSummary\":{\"shape\":\"So4\"}}}},\"nextToken\":{}}}},\"ListJobExecutionsForThing\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"namespaceId\":{\"location\":\"querystring\",\"locationName\":\"namespaceId\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"executionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"jobExecutionSummary\":{\"shape\":\"So4\"}}}},\"nextToken\":{}}}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"targetSelection\":{\"location\":\"querystring\",\"locationName\":\"targetSelection\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"thingGroupName\":{\"location\":\"querystring\",\"locationName\":\"thingGroupName\"},\"thingGroupId\":{\"location\":\"querystring\",\"locationName\":\"thingGroupId\"},\"namespaceId\":{\"location\":\"querystring\",\"locationName\":\"namespaceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobArn\":{},\"jobId\":{},\"thingGroupId\":{},\"targetSelection\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"completedAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListMitigationActions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/mitigationactions/actions\"},\"input\":{\"type\":\"structure\",\"members\":{\"actionType\":{\"location\":\"querystring\",\"locationName\":\"actionType\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionIdentifiers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"actionName\":{},\"actionArn\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListOTAUpdates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/otaUpdates\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"otaUpdateStatus\":{\"location\":\"querystring\",\"locationName\":\"otaUpdateStatus\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"otaUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"otaUpdateId\":{},\"otaUpdateArn\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListOutgoingCertificates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/certificates-out-going\"},\"input\":{\"type\":\"structure\",\"members\":{\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"outgoingCertificates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"transferredTo\":{},\"transferDate\":{\"type\":\"timestamp\"},\"transferMessage\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"nextMarker\":{}}}},\"ListPolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policies\"},\"input\":{\"type\":\"structure\",\"members\":{\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policies\":{\"shape\":\"Sm6\"},\"nextMarker\":{}}}},\"ListPolicyPrincipals\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policy-principals\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\"],\"members\":{\"policyName\":{\"location\":\"header\",\"locationName\":\"x-amzn-iot-policy\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"principals\":{\"shape\":\"Sot\"},\"nextMarker\":{}}},\"deprecated\":true},\"ListPolicyVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/policies/{policyName}/version\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policyVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"versionId\":{},\"isDefaultVersion\":{\"type\":\"boolean\"},\"createDate\":{\"type\":\"timestamp\"}}}}}}},\"ListPrincipalPolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/principal-policies\"},\"input\":{\"type\":\"structure\",\"required\":[\"principal\"],\"members\":{\"principal\":{\"location\":\"header\",\"locationName\":\"x-amzn-iot-principal\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policies\":{\"shape\":\"Sm6\"},\"nextMarker\":{}}},\"deprecated\":true},\"ListPrincipalThings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/principals/things\"},\"input\":{\"type\":\"structure\",\"required\":[\"principal\"],\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"principal\":{\"location\":\"header\",\"locationName\":\"x-amzn-principal\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"things\":{\"shape\":\"Sp3\"},\"nextToken\":{}}}},\"ListProvisioningTemplateVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/provisioning-templates/{templateName}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"versions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"versionId\":{\"type\":\"integer\"},\"creationDate\":{\"type\":\"timestamp\"},\"isDefaultVersion\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListProvisioningTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/provisioning-templates\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"templates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"templateArn\":{},\"templateName\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"enabled\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListRoleAliases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/role-aliases\"},\"input\":{\"type\":\"structure\",\"members\":{\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"roleAliases\":{\"type\":\"list\",\"member\":{}},\"nextMarker\":{}}}},\"ListScheduledAudits\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/audit/scheduledaudits\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"scheduledAudits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"scheduledAuditName\":{},\"scheduledAuditArn\":{},\"frequency\":{},\"dayOfMonth\":{},\"dayOfWeek\":{}}}},\"nextToken\":{}}}},\"ListSecurityProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/security-profiles\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"dimensionName\":{\"location\":\"querystring\",\"locationName\":\"dimensionName\"},\"metricName\":{\"location\":\"querystring\",\"locationName\":\"metricName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"securityProfileIdentifiers\":{\"type\":\"list\",\"member\":{\"shape\":\"Spm\"}},\"nextToken\":{}}}},\"ListSecurityProfilesForTarget\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/security-profiles-for-target\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileTargetArn\"],\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"recursive\":{\"location\":\"querystring\",\"locationName\":\"recursive\",\"type\":\"boolean\"},\"securityProfileTargetArn\":{\"location\":\"querystring\",\"locationName\":\"securityProfileTargetArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"securityProfileTargetMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"securityProfileIdentifier\":{\"shape\":\"Spm\"},\"target\":{\"shape\":\"Spr\"}}}},\"nextToken\":{}}}},\"ListStreams\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/streams\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"ascendingOrder\":{\"location\":\"querystring\",\"locationName\":\"isAscendingOrder\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"streams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"streamId\":{},\"streamArn\":{},\"streamVersion\":{\"type\":\"integer\"},\"description\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S29\"},\"nextToken\":{}}}},\"ListTargetsForPolicy\":{\"http\":{\"requestUri\":\"/policy-targets/{policyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"targets\":{\"type\":\"list\",\"member\":{}},\"nextMarker\":{}}}},\"ListTargetsForSecurityProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/security-profiles/{securityProfileName}/targets\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"securityProfileTargets\":{\"type\":\"list\",\"member\":{\"shape\":\"Spr\"}},\"nextToken\":{}}}},\"ListThingGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-groups\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"parentGroup\":{\"location\":\"querystring\",\"locationName\":\"parentGroup\"},\"namePrefixFilter\":{\"location\":\"querystring\",\"locationName\":\"namePrefixFilter\"},\"recursive\":{\"location\":\"querystring\",\"locationName\":\"recursive\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingGroups\":{\"shape\":\"Sj7\"},\"nextToken\":{}}}},\"ListThingGroupsForThing\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/thing-groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingGroups\":{\"shape\":\"Sj7\"},\"nextToken\":{}}}},\"ListThingPrincipals\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/principals\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"principals\":{\"shape\":\"Sot\"},\"nextToken\":{}}}},\"ListThingRegistrationTaskReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-registration-tasks/{taskId}/reports\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\",\"reportType\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"},\"reportType\":{\"location\":\"querystring\",\"locationName\":\"reportType\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceLinks\":{\"type\":\"list\",\"member\":{}},\"reportType\":{},\"nextToken\":{}}}},\"ListThingRegistrationTasks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-registration-tasks\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskIds\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListThingTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-types\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"thingTypeName\":{\"location\":\"querystring\",\"locationName\":\"thingTypeName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"thingTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"thingTypeName\":{},\"thingTypeArn\":{},\"thingTypeProperties\":{\"shape\":\"S97\"},\"thingTypeMetadata\":{\"shape\":\"Sjk\"}}}},\"nextToken\":{}}}},\"ListThings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"attributeName\":{\"location\":\"querystring\",\"locationName\":\"attributeName\"},\"attributeValue\":{\"location\":\"querystring\",\"locationName\":\"attributeValue\"},\"thingTypeName\":{\"location\":\"querystring\",\"locationName\":\"thingTypeName\"},\"usePrefixAttributeValue\":{\"location\":\"querystring\",\"locationName\":\"usePrefixAttributeValue\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"things\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"thingName\":{},\"thingTypeName\":{},\"thingArn\":{},\"attributes\":{\"shape\":\"S3h\"},\"version\":{\"type\":\"long\"}}}},\"nextToken\":{}}}},\"ListThingsInBillingGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/billing-groups/{billingGroupName}/things\"},\"input\":{\"type\":\"structure\",\"required\":[\"billingGroupName\"],\"members\":{\"billingGroupName\":{\"location\":\"uri\",\"locationName\":\"billingGroupName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"things\":{\"shape\":\"Sp3\"},\"nextToken\":{}}}},\"ListThingsInThingGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/thing-groups/{thingGroupName}/things\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"recursive\":{\"location\":\"querystring\",\"locationName\":\"recursive\",\"type\":\"boolean\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"things\":{\"shape\":\"Sp3\"},\"nextToken\":{}}}},\"ListTopicRuleDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/destinations\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"destinationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"statusReason\":{},\"httpUrlSummary\":{\"type\":\"structure\",\"members\":{\"confirmationUrl\":{}}},\"vpcDestinationSummary\":{\"type\":\"structure\",\"members\":{\"subnetIds\":{\"shape\":\"Scf\"},\"securityGroups\":{\"shape\":\"Sch\"},\"vpcId\":{},\"roleArn\":{}}}}}},\"nextToken\":{}}}},\"ListTopicRules\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/rules\"},\"input\":{\"type\":\"structure\",\"members\":{\"topic\":{\"location\":\"querystring\",\"locationName\":\"topic\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"ruleDisabled\":{\"location\":\"querystring\",\"locationName\":\"ruleDisabled\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ruleArn\":{},\"ruleName\":{},\"topicPattern\":{},\"createdAt\":{\"type\":\"timestamp\"},\"ruleDisabled\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListV2LoggingLevels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2LoggingLevel\"},\"input\":{\"type\":\"structure\",\"members\":{\"targetType\":{\"location\":\"querystring\",\"locationName\":\"targetType\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"logTargetConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"logTarget\":{\"shape\":\"Srf\"},\"logLevel\":{}}}},\"nextToken\":{}}}},\"ListViolationEvents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/violation-events\"},\"input\":{\"type\":\"structure\",\"required\":[\"startTime\",\"endTime\"],\"members\":{\"startTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"endTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"},\"thingName\":{\"location\":\"querystring\",\"locationName\":\"thingName\"},\"securityProfileName\":{\"location\":\"querystring\",\"locationName\":\"securityProfileName\"},\"behaviorCriteriaType\":{\"location\":\"querystring\",\"locationName\":\"behaviorCriteriaType\"},\"listSuppressedAlerts\":{\"location\":\"querystring\",\"locationName\":\"listSuppressedAlerts\",\"type\":\"boolean\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"violationEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"violationId\":{},\"thingName\":{},\"securityProfileName\":{},\"behavior\":{\"shape\":\"S7v\"},\"metricValue\":{\"shape\":\"S82\"},\"violationEventAdditionalInfo\":{\"shape\":\"Sm0\"},\"violationEventType\":{},\"violationEventTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"RegisterCACertificate\":{\"http\":{\"requestUri\":\"/cacertificate\"},\"input\":{\"type\":\"structure\",\"required\":[\"caCertificate\",\"verificationCertificate\"],\"members\":{\"caCertificate\":{},\"verificationCertificate\":{},\"setAsActive\":{\"location\":\"querystring\",\"locationName\":\"setAsActive\",\"type\":\"boolean\"},\"allowAutoRegistration\":{\"location\":\"querystring\",\"locationName\":\"allowAutoRegistration\",\"type\":\"boolean\"},\"registrationConfig\":{\"shape\":\"Sgm\"},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{}}}},\"RegisterCertificate\":{\"http\":{\"requestUri\":\"/certificate/register\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificatePem\"],\"members\":{\"certificatePem\":{},\"caCertificatePem\":{},\"setAsActive\":{\"deprecated\":true,\"location\":\"querystring\",\"locationName\":\"setAsActive\",\"type\":\"boolean\"},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{}}}},\"RegisterCertificateWithoutCA\":{\"http\":{\"requestUri\":\"/certificate/register-no-ca\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificatePem\"],\"members\":{\"certificatePem\":{},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{}}}},\"RegisterThing\":{\"http\":{\"requestUri\":\"/things\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateBody\"],\"members\":{\"templateBody\":{},\"parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificatePem\":{},\"resourceArns\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"RejectCertificateTransfer\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/reject-certificate-transfer/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"},\"rejectReason\":{}}}},\"RemoveThingFromBillingGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/billing-groups/removeThingFromBillingGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"billingGroupName\":{},\"billingGroupArn\":{},\"thingName\":{},\"thingArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RemoveThingFromThingGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/thing-groups/removeThingFromThingGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"thingGroupName\":{},\"thingGroupArn\":{},\"thingName\":{},\"thingArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ReplaceTopicRule\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/rules/{ruleName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ruleName\",\"topicRulePayload\"],\"members\":{\"ruleName\":{\"location\":\"uri\",\"locationName\":\"ruleName\"},\"topicRulePayload\":{\"shape\":\"S9f\"}},\"payload\":\"topicRulePayload\"}},\"SearchIndex\":{\"http\":{\"requestUri\":\"/indices/search\"},\"input\":{\"type\":\"structure\",\"required\":[\"queryString\"],\"members\":{\"indexName\":{},\"queryString\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"queryVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"things\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"thingName\":{},\"thingId\":{},\"thingTypeName\":{},\"thingGroupNames\":{\"shape\":\"Ss9\"},\"attributes\":{\"shape\":\"S3h\"},\"shadow\":{},\"connectivity\":{\"type\":\"structure\",\"members\":{\"connected\":{\"type\":\"boolean\"},\"timestamp\":{\"type\":\"long\"}}}}}},\"thingGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"thingGroupName\":{},\"thingGroupId\":{},\"thingGroupDescription\":{},\"attributes\":{\"shape\":\"S3h\"},\"parentGroupNames\":{\"shape\":\"Ss9\"}}}}}}},\"SetDefaultAuthorizer\":{\"http\":{\"requestUri\":\"/default-authorizer\"},\"input\":{\"type\":\"structure\",\"required\":[\"authorizerName\"],\"members\":{\"authorizerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizerName\":{},\"authorizerArn\":{}}}},\"SetDefaultPolicyVersion\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/policies/{policyName}/version/{policyVersionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"policyName\",\"policyVersionId\"],\"members\":{\"policyName\":{\"location\":\"uri\",\"locationName\":\"policyName\"},\"policyVersionId\":{\"location\":\"uri\",\"locationName\":\"policyVersionId\"}}}},\"SetLoggingOptions\":{\"http\":{\"requestUri\":\"/loggingOptions\"},\"input\":{\"type\":\"structure\",\"required\":[\"loggingOptionsPayload\"],\"members\":{\"loggingOptionsPayload\":{\"type\":\"structure\",\"required\":[\"roleArn\"],\"members\":{\"roleArn\":{},\"logLevel\":{}}}},\"payload\":\"loggingOptionsPayload\"}},\"SetV2LoggingLevel\":{\"http\":{\"requestUri\":\"/v2LoggingLevel\"},\"input\":{\"type\":\"structure\",\"required\":[\"logTarget\",\"logLevel\"],\"members\":{\"logTarget\":{\"shape\":\"Srf\"},\"logLevel\":{}}}},\"SetV2LoggingOptions\":{\"http\":{\"requestUri\":\"/v2LoggingOptions\"},\"input\":{\"type\":\"structure\",\"members\":{\"roleArn\":{},\"defaultLogLevel\":{},\"disableAllLogs\":{\"type\":\"boolean\"}}}},\"StartAuditMitigationActionsTask\":{\"http\":{\"requestUri\":\"/audit/mitigationactions/tasks/{taskId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\",\"target\",\"auditCheckToActionsMapping\",\"clientRequestToken\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"},\"target\":{\"shape\":\"Sfb\"},\"auditCheckToActionsMapping\":{\"shape\":\"Sff\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskId\":{}}}},\"StartDetectMitigationActionsTask\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/detect/mitigationactions/tasks/{taskId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\",\"target\",\"actions\",\"clientRequestToken\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"},\"target\":{\"shape\":\"Sh2\"},\"actions\":{\"type\":\"list\",\"member\":{}},\"violationEventOccurrenceRange\":{\"shape\":\"Sh5\"},\"includeOnlyActiveViolations\":{\"type\":\"boolean\"},\"includeSuppressedAlerts\":{\"type\":\"boolean\"},\"clientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskId\":{}}}},\"StartOnDemandAuditTask\":{\"http\":{\"requestUri\":\"/audit/tasks\"},\"input\":{\"type\":\"structure\",\"required\":[\"targetCheckNames\"],\"members\":{\"targetCheckNames\":{\"shape\":\"S7o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskId\":{}}}},\"StartThingRegistrationTask\":{\"http\":{\"requestUri\":\"/thing-registration-tasks\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateBody\",\"inputFileBucket\",\"inputFileKey\",\"roleArn\"],\"members\":{\"templateBody\":{},\"inputFileBucket\":{},\"inputFileKey\":{},\"roleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskId\":{}}}},\"StopThingRegistrationTask\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/thing-registration-tasks/{taskId}/cancel\"},\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{\"location\":\"uri\",\"locationName\":\"taskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TestAuthorization\":{\"http\":{\"requestUri\":\"/test-authorization\"},\"input\":{\"type\":\"structure\",\"required\":[\"authInfos\"],\"members\":{\"principal\":{},\"cognitoIdentityPoolId\":{},\"authInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"St2\"}},\"clientId\":{\"location\":\"querystring\",\"locationName\":\"clientId\"},\"policyNamesToAdd\":{\"shape\":\"St6\"},\"policyNamesToSkip\":{\"shape\":\"St6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"authResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"authInfo\":{\"shape\":\"St2\"},\"allowed\":{\"type\":\"structure\",\"members\":{\"policies\":{\"shape\":\"Sm6\"}}},\"denied\":{\"type\":\"structure\",\"members\":{\"implicitDeny\":{\"type\":\"structure\",\"members\":{\"policies\":{\"shape\":\"Sm6\"}}},\"explicitDeny\":{\"type\":\"structure\",\"members\":{\"policies\":{\"shape\":\"Sm6\"}}}}},\"authDecision\":{},\"missingContextValues\":{\"type\":\"list\",\"member\":{}}}}}}}},\"TestInvokeAuthorizer\":{\"http\":{\"requestUri\":\"/authorizer/{authorizerName}/test\"},\"input\":{\"type\":\"structure\",\"required\":[\"authorizerName\"],\"members\":{\"authorizerName\":{\"location\":\"uri\",\"locationName\":\"authorizerName\"},\"token\":{},\"tokenSignature\":{},\"httpContext\":{\"type\":\"structure\",\"members\":{\"headers\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"queryString\":{}}},\"mqttContext\":{\"type\":\"structure\",\"members\":{\"username\":{},\"password\":{\"type\":\"blob\"},\"clientId\":{}}},\"tlsContext\":{\"type\":\"structure\",\"members\":{\"serverName\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"isAuthenticated\":{\"type\":\"boolean\"},\"principalId\":{},\"policyDocuments\":{\"type\":\"list\",\"member\":{}},\"refreshAfterInSeconds\":{\"type\":\"integer\"},\"disconnectAfterInSeconds\":{\"type\":\"integer\"}}}},\"TransferCertificate\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/transfer-certificate/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\",\"targetAwsAccount\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"},\"targetAwsAccount\":{\"location\":\"querystring\",\"locationName\":\"targetAwsAccount\"},\"transferMessage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"transferredCertificateArn\":{}}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/untag\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAccountAuditConfiguration\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/audit/configuration\"},\"input\":{\"type\":\"structure\",\"members\":{\"roleArn\":{},\"auditNotificationTargetConfigurations\":{\"shape\":\"Sej\"},\"auditCheckConfigurations\":{\"shape\":\"Sem\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAuditSuppression\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/audit/suppressions/update\"},\"input\":{\"type\":\"structure\",\"required\":[\"checkName\",\"resourceIdentifier\"],\"members\":{\"checkName\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"expirationDate\":{\"type\":\"timestamp\"},\"suppressIndefinitely\":{\"type\":\"boolean\"},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAuthorizer\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/authorizer/{authorizerName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"authorizerName\"],\"members\":{\"authorizerName\":{\"location\":\"uri\",\"locationName\":\"authorizerName\"},\"authorizerFunctionArn\":{},\"tokenKeyName\":{},\"tokenSigningPublicKeys\":{\"shape\":\"S25\"},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"authorizerName\":{},\"authorizerArn\":{}}}},\"UpdateBillingGroup\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/billing-groups/{billingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"billingGroupName\",\"billingGroupProperties\"],\"members\":{\"billingGroupName\":{\"location\":\"uri\",\"locationName\":\"billingGroupName\"},\"billingGroupProperties\":{\"shape\":\"S2h\"},\"expectedVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"version\":{\"type\":\"long\"}}}},\"UpdateCACertificate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/cacertificate/{caCertificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"caCertificateId\"},\"newStatus\":{\"location\":\"querystring\",\"locationName\":\"newStatus\"},\"newAutoRegistrationStatus\":{\"location\":\"querystring\",\"locationName\":\"newAutoRegistrationStatus\"},\"registrationConfig\":{\"shape\":\"Sgm\"},\"removeAutoRegistration\":{\"type\":\"boolean\"}}}},\"UpdateCertificate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/certificates/{certificateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"certificateId\",\"newStatus\"],\"members\":{\"certificateId\":{\"location\":\"uri\",\"locationName\":\"certificateId\"},\"newStatus\":{\"location\":\"querystring\",\"locationName\":\"newStatus\"}}}},\"UpdateCustomMetric\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/custom-metric/{metricName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"metricName\",\"displayName\"],\"members\":{\"metricName\":{\"location\":\"uri\",\"locationName\":\"metricName\"},\"displayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricArn\":{},\"metricType\":{},\"displayName\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"UpdateDimension\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/dimensions/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"stringValues\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"stringValues\":{\"shape\":\"S2z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"type\":{},\"stringValues\":{\"shape\":\"S2z\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"UpdateDomainConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/domainConfigurations/{domainConfigurationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"domainConfigurationName\"],\"members\":{\"domainConfigurationName\":{\"location\":\"uri\",\"locationName\":\"domainConfigurationName\"},\"authorizerConfig\":{\"shape\":\"S38\"},\"domainConfigurationStatus\":{},\"removeAuthorizerConfig\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"domainConfigurationName\":{},\"domainConfigurationArn\":{}}}},\"UpdateDynamicThingGroup\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/dynamic-thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\",\"thingGroupProperties\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"thingGroupProperties\":{\"shape\":\"S3e\"},\"expectedVersion\":{\"type\":\"long\"},\"indexName\":{},\"queryString\":{},\"queryVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"version\":{\"type\":\"long\"}}}},\"UpdateEventConfigurations\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/event-configurations\"},\"input\":{\"type\":\"structure\",\"members\":{\"eventConfigurations\":{\"shape\":\"Shq\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateIndexingConfiguration\":{\"http\":{\"requestUri\":\"/indexing/config\"},\"input\":{\"type\":\"structure\",\"members\":{\"thingIndexingConfiguration\":{\"shape\":\"Skc\"},\"thingGroupIndexingConfiguration\":{\"shape\":\"Skj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateJob\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"description\":{},\"presignedUrlConfig\":{\"shape\":\"S3t\"},\"jobExecutionsRolloutConfig\":{\"shape\":\"S3w\"},\"abortConfig\":{\"shape\":\"S43\"},\"timeoutConfig\":{\"shape\":\"S4a\"},\"namespaceId\":{\"location\":\"querystring\",\"locationName\":\"namespaceId\"}}}},\"UpdateMitigationAction\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/mitigationactions/actions/{actionName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"actionName\"],\"members\":{\"actionName\":{\"location\":\"uri\",\"locationName\":\"actionName\"},\"roleArn\":{},\"actionParams\":{\"shape\":\"S4k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"actionArn\":{},\"actionId\":{}}}},\"UpdateProvisioningTemplate\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/provisioning-templates/{templateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"templateName\"],\"members\":{\"templateName\":{\"location\":\"uri\",\"locationName\":\"templateName\"},\"description\":{},\"enabled\":{\"type\":\"boolean\"},\"defaultVersionId\":{\"type\":\"integer\"},\"provisioningRoleArn\":{},\"preProvisioningHook\":{\"shape\":\"S79\"},\"removePreProvisioningHook\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRoleAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/role-aliases/{roleAlias}\"},\"input\":{\"type\":\"structure\",\"required\":[\"roleAlias\"],\"members\":{\"roleAlias\":{\"location\":\"uri\",\"locationName\":\"roleAlias\"},\"roleArn\":{},\"credentialDurationSeconds\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"roleAlias\":{},\"roleAliasArn\":{}}}},\"UpdateScheduledAudit\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/audit/scheduledaudits/{scheduledAuditName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"scheduledAuditName\"],\"members\":{\"frequency\":{},\"dayOfMonth\":{},\"dayOfWeek\":{},\"targetCheckNames\":{\"shape\":\"S7o\"},\"scheduledAuditName\":{\"location\":\"uri\",\"locationName\":\"scheduledAuditName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"scheduledAuditArn\":{}}}},\"UpdateSecurityProfile\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/security-profiles/{securityProfileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"securityProfileName\"],\"members\":{\"securityProfileName\":{\"location\":\"uri\",\"locationName\":\"securityProfileName\"},\"securityProfileDescription\":{},\"behaviors\":{\"shape\":\"S7u\"},\"alertTargets\":{\"shape\":\"S8k\"},\"additionalMetricsToRetain\":{\"shape\":\"S8o\",\"deprecated\":true,\"deprecatedMessage\":\"Use additionalMetricsToRetainV2.\"},\"additionalMetricsToRetainV2\":{\"shape\":\"S8p\"},\"deleteBehaviors\":{\"type\":\"boolean\"},\"deleteAlertTargets\":{\"type\":\"boolean\"},\"deleteAdditionalMetricsToRetain\":{\"type\":\"boolean\"},\"expectedVersion\":{\"location\":\"querystring\",\"locationName\":\"expectedVersion\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"securityProfileName\":{},\"securityProfileArn\":{},\"securityProfileDescription\":{},\"behaviors\":{\"shape\":\"S7u\"},\"alertTargets\":{\"shape\":\"S8k\"},\"additionalMetricsToRetain\":{\"shape\":\"S8o\",\"deprecated\":true,\"deprecatedMessage\":\"Use additionalMetricsToRetainV2.\"},\"additionalMetricsToRetainV2\":{\"shape\":\"S8p\"},\"version\":{\"type\":\"long\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"}}}},\"UpdateStream\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/streams/{streamId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"streamId\"],\"members\":{\"streamId\":{\"location\":\"uri\",\"locationName\":\"streamId\"},\"description\":{},\"files\":{\"shape\":\"S8v\"},\"roleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"streamId\":{},\"streamArn\":{},\"description\":{},\"streamVersion\":{\"type\":\"integer\"}}}},\"UpdateThing\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/things/{thingName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"thingTypeName\":{},\"attributePayload\":{\"shape\":\"S3g\"},\"expectedVersion\":{\"type\":\"long\"},\"removeThingType\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateThingGroup\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/thing-groups/{thingGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingGroupName\",\"thingGroupProperties\"],\"members\":{\"thingGroupName\":{\"location\":\"uri\",\"locationName\":\"thingGroupName\"},\"thingGroupProperties\":{\"shape\":\"S3e\"},\"expectedVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"version\":{\"type\":\"long\"}}}},\"UpdateThingGroupsForThing\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/thing-groups/updateThingGroupsForThing\"},\"input\":{\"type\":\"structure\",\"members\":{\"thingName\":{},\"thingGroupsToAdd\":{\"shape\":\"Svg\"},\"thingGroupsToRemove\":{\"shape\":\"Svg\"},\"overrideDynamicGroups\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateTopicRuleDestination\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/destinations\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\",\"status\"],\"members\":{\"arn\":{},\"status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ValidateSecurityProfileBehaviors\":{\"http\":{\"requestUri\":\"/security-profile-behaviors/validate\"},\"input\":{\"type\":\"structure\",\"required\":[\"behaviors\"],\"members\":{\"behaviors\":{\"shape\":\"S7u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"valid\":{\"type\":\"boolean\"},\"validationErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"errorMessage\":{}}}}}}}},\"shapes\":{\"Sg\":{\"type\":\"list\",\"member\":{}},\"S1e\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1o\":{\"type\":\"structure\",\"members\":{\"deviceCertificateId\":{},\"caCertificateId\":{},\"cognitoIdentityPoolId\":{},\"clientId\":{},\"policyVersionIdentifier\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyVersionId\":{}}},\"account\":{},\"iamRoleArn\":{},\"roleAliasArn\":{}}},\"S25\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S29\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S2h\":{\"type\":\"structure\",\"members\":{\"billingGroupDescription\":{}}},\"S2z\":{\"type\":\"list\",\"member\":{}},\"S38\":{\"type\":\"structure\",\"members\":{\"defaultAuthorizerName\":{},\"allowAuthorizerOverride\":{\"type\":\"boolean\"}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"thingGroupDescription\":{},\"attributePayload\":{\"shape\":\"S3g\"}}},\"S3g\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"shape\":\"S3h\"},\"merge\":{\"type\":\"boolean\"}}},\"S3h\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S3t\":{\"type\":\"structure\",\"members\":{\"roleArn\":{},\"expiresInSec\":{\"type\":\"long\"}}},\"S3w\":{\"type\":\"structure\",\"members\":{\"maximumPerMinute\":{\"type\":\"integer\"},\"exponentialRate\":{\"type\":\"structure\",\"required\":[\"baseRatePerMinute\",\"incrementFactor\",\"rateIncreaseCriteria\"],\"members\":{\"baseRatePerMinute\":{\"type\":\"integer\"},\"incrementFactor\":{\"type\":\"double\"},\"rateIncreaseCriteria\":{\"type\":\"structure\",\"members\":{\"numberOfNotifiedThings\":{\"type\":\"integer\"},\"numberOfSucceededThings\":{\"type\":\"integer\"}}}}}}},\"S43\":{\"type\":\"structure\",\"required\":[\"criteriaList\"],\"members\":{\"criteriaList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"failureType\",\"action\",\"thresholdPercentage\",\"minNumberOfExecutedThings\"],\"members\":{\"failureType\":{},\"action\":{},\"thresholdPercentage\":{\"type\":\"double\"},\"minNumberOfExecutedThings\":{\"type\":\"integer\"}}}}}},\"S4a\":{\"type\":\"structure\",\"members\":{\"inProgressTimeoutInMinutes\":{\"type\":\"long\"}}},\"S4f\":{\"type\":\"structure\",\"members\":{\"PublicKey\":{},\"PrivateKey\":{\"type\":\"string\",\"sensitive\":true}}},\"S4k\":{\"type\":\"structure\",\"members\":{\"updateDeviceCertificateParams\":{\"type\":\"structure\",\"required\":[\"action\"],\"members\":{\"action\":{}}},\"updateCACertificateParams\":{\"type\":\"structure\",\"required\":[\"action\"],\"members\":{\"action\":{}}},\"addThingsToThingGroupParams\":{\"type\":\"structure\",\"required\":[\"thingGroupNames\"],\"members\":{\"thingGroupNames\":{\"type\":\"list\",\"member\":{}},\"overrideDynamicGroups\":{\"type\":\"boolean\"}}},\"replaceDefaultPolicyVersionParams\":{\"type\":\"structure\",\"required\":[\"templateName\"],\"members\":{\"templateName\":{}}},\"enableIoTLoggingParams\":{\"type\":\"structure\",\"required\":[\"roleArnForLogging\",\"logLevel\"],\"members\":{\"roleArnForLogging\":{},\"logLevel\":{}}},\"publishFindingToSnsParams\":{\"type\":\"structure\",\"required\":[\"topicArn\"],\"members\":{\"topicArn\":{}}}}},\"S53\":{\"type\":\"list\",\"member\":{}},\"S55\":{\"type\":\"list\",\"member\":{}},\"S57\":{\"type\":\"structure\",\"members\":{\"maximumPerMinute\":{\"type\":\"integer\"},\"exponentialRate\":{\"type\":\"structure\",\"required\":[\"baseRatePerMinute\",\"incrementFactor\",\"rateIncreaseCriteria\"],\"members\":{\"baseRatePerMinute\":{\"type\":\"integer\"},\"incrementFactor\":{\"type\":\"double\"},\"rateIncreaseCriteria\":{\"type\":\"structure\",\"members\":{\"numberOfNotifiedThings\":{\"type\":\"integer\"},\"numberOfSucceededThings\":{\"type\":\"integer\"}}}}}}},\"S5e\":{\"type\":\"structure\",\"members\":{\"expiresInSec\":{\"type\":\"long\"}}},\"S5p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fileName\":{},\"fileType\":{\"type\":\"integer\"},\"fileVersion\":{},\"fileLocation\":{\"type\":\"structure\",\"members\":{\"stream\":{\"type\":\"structure\",\"members\":{\"streamId\":{},\"fileId\":{\"type\":\"integer\"}}},\"s3Location\":{\"shape\":\"S5y\"}}},\"codeSigning\":{\"type\":\"structure\",\"members\":{\"awsSignerJobId\":{},\"startSigningJobParameter\":{\"type\":\"structure\",\"members\":{\"signingProfileParameter\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"platform\":{},\"certificatePathOnDevice\":{}}},\"signingProfileName\":{},\"destination\":{\"type\":\"structure\",\"members\":{\"s3Destination\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"prefix\":{}}}}}}},\"customCodeSigning\":{\"type\":\"structure\",\"members\":{\"signature\":{\"type\":\"structure\",\"members\":{\"inlineDocument\":{\"type\":\"blob\"}}},\"certificateChain\":{\"type\":\"structure\",\"members\":{\"certificateName\":{},\"inlineDocument\":{}}},\"hashAlgorithm\":{},\"signatureAlgorithm\":{}}}}},\"attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S5y\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"key\":{},\"version\":{}}},\"S6n\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S79\":{\"type\":\"structure\",\"required\":[\"targetArn\"],\"members\":{\"payloadVersion\":{},\"targetArn\":{}}},\"S7o\":{\"type\":\"list\",\"member\":{}},\"S7u\":{\"type\":\"list\",\"member\":{\"shape\":\"S7v\"}},\"S7v\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"metric\":{},\"metricDimension\":{\"shape\":\"S7y\"},\"criteria\":{\"type\":\"structure\",\"members\":{\"comparisonOperator\":{},\"value\":{\"shape\":\"S82\"},\"durationSeconds\":{\"type\":\"integer\"},\"consecutiveDatapointsToAlarm\":{\"type\":\"integer\"},\"consecutiveDatapointsToClear\":{\"type\":\"integer\"},\"statisticalThreshold\":{\"type\":\"structure\",\"members\":{\"statistic\":{}}},\"mlDetectionConfig\":{\"type\":\"structure\",\"required\":[\"confidenceLevel\"],\"members\":{\"confidenceLevel\":{}}}}},\"suppressAlerts\":{\"type\":\"boolean\"}}},\"S7y\":{\"type\":\"structure\",\"required\":[\"dimensionName\"],\"members\":{\"dimensionName\":{},\"operator\":{}}},\"S82\":{\"type\":\"structure\",\"members\":{\"count\":{\"type\":\"long\"},\"cidrs\":{\"type\":\"list\",\"member\":{}},\"ports\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"number\":{\"type\":\"double\"},\"numbers\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}},\"strings\":{\"type\":\"list\",\"member\":{}}}},\"S8k\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"alertTargetArn\",\"roleArn\"],\"members\":{\"alertTargetArn\":{},\"roleArn\":{}}}},\"S8o\":{\"type\":\"list\",\"member\":{}},\"S8p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"metric\"],\"members\":{\"metric\":{},\"metricDimension\":{\"shape\":\"S7y\"}}}},\"S8v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fileId\":{\"type\":\"integer\"},\"s3Location\":{\"shape\":\"S5y\"}}}},\"S97\":{\"type\":\"structure\",\"members\":{\"thingTypeDescription\":{},\"searchableAttributes\":{\"type\":\"list\",\"member\":{}}}},\"S9f\":{\"type\":\"structure\",\"required\":[\"sql\",\"actions\"],\"members\":{\"sql\":{},\"description\":{},\"actions\":{\"shape\":\"S9i\"},\"ruleDisabled\":{\"type\":\"boolean\"},\"awsIotSqlVersion\":{},\"errorAction\":{\"shape\":\"S9j\"}}},\"S9i\":{\"type\":\"list\",\"member\":{\"shape\":\"S9j\"}},\"S9j\":{\"type\":\"structure\",\"members\":{\"dynamoDB\":{\"type\":\"structure\",\"required\":[\"tableName\",\"roleArn\",\"hashKeyField\",\"hashKeyValue\"],\"members\":{\"tableName\":{},\"roleArn\":{},\"operation\":{},\"hashKeyField\":{},\"hashKeyValue\":{},\"hashKeyType\":{},\"rangeKeyField\":{},\"rangeKeyValue\":{},\"rangeKeyType\":{},\"payloadField\":{}}},\"dynamoDBv2\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"putItem\"],\"members\":{\"roleArn\":{},\"putItem\":{\"type\":\"structure\",\"required\":[\"tableName\"],\"members\":{\"tableName\":{}}}}},\"lambda\":{\"type\":\"structure\",\"required\":[\"functionArn\"],\"members\":{\"functionArn\":{}}},\"sns\":{\"type\":\"structure\",\"required\":[\"targetArn\",\"roleArn\"],\"members\":{\"targetArn\":{},\"roleArn\":{},\"messageFormat\":{}}},\"sqs\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"queueUrl\"],\"members\":{\"roleArn\":{},\"queueUrl\":{},\"useBase64\":{\"type\":\"boolean\"}}},\"kinesis\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"streamName\"],\"members\":{\"roleArn\":{},\"streamName\":{},\"partitionKey\":{}}},\"republish\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"topic\"],\"members\":{\"roleArn\":{},\"topic\":{},\"qos\":{\"type\":\"integer\"}}},\"s3\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"bucketName\",\"key\"],\"members\":{\"roleArn\":{},\"bucketName\":{},\"key\":{},\"cannedAcl\":{}}},\"firehose\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"deliveryStreamName\"],\"members\":{\"roleArn\":{},\"deliveryStreamName\":{},\"separator\":{},\"batchMode\":{\"type\":\"boolean\"}}},\"cloudwatchMetric\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"metricNamespace\",\"metricName\",\"metricValue\",\"metricUnit\"],\"members\":{\"roleArn\":{},\"metricNamespace\":{},\"metricName\":{},\"metricValue\":{},\"metricUnit\":{},\"metricTimestamp\":{}}},\"cloudwatchAlarm\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"alarmName\",\"stateReason\",\"stateValue\"],\"members\":{\"roleArn\":{},\"alarmName\":{},\"stateReason\":{},\"stateValue\":{}}},\"cloudwatchLogs\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"logGroupName\"],\"members\":{\"roleArn\":{},\"logGroupName\":{}}},\"elasticsearch\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"endpoint\",\"index\",\"type\",\"id\"],\"members\":{\"roleArn\":{},\"endpoint\":{},\"index\":{},\"type\":{},\"id\":{}}},\"salesforce\":{\"type\":\"structure\",\"required\":[\"token\",\"url\"],\"members\":{\"token\":{},\"url\":{}}},\"iotAnalytics\":{\"type\":\"structure\",\"members\":{\"channelArn\":{},\"channelName\":{},\"batchMode\":{\"type\":\"boolean\"},\"roleArn\":{}}},\"iotEvents\":{\"type\":\"structure\",\"required\":[\"inputName\",\"roleArn\"],\"members\":{\"inputName\":{},\"messageId\":{},\"batchMode\":{\"type\":\"boolean\"},\"roleArn\":{}}},\"iotSiteWise\":{\"type\":\"structure\",\"required\":[\"putAssetPropertyValueEntries\",\"roleArn\"],\"members\":{\"putAssetPropertyValueEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"propertyValues\"],\"members\":{\"entryId\":{},\"assetId\":{},\"propertyId\":{},\"propertyAlias\":{},\"propertyValues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"value\",\"timestamp\"],\"members\":{\"value\":{\"type\":\"structure\",\"members\":{\"stringValue\":{},\"integerValue\":{},\"doubleValue\":{},\"booleanValue\":{}}},\"timestamp\":{\"type\":\"structure\",\"required\":[\"timeInSeconds\"],\"members\":{\"timeInSeconds\":{},\"offsetInNanos\":{}}},\"quality\":{}}}}}}},\"roleArn\":{}}},\"stepFunctions\":{\"type\":\"structure\",\"required\":[\"stateMachineName\",\"roleArn\"],\"members\":{\"executionNamePrefix\":{},\"stateMachineName\":{},\"roleArn\":{}}},\"timestream\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"databaseName\",\"tableName\",\"dimensions\"],\"members\":{\"roleArn\":{},\"databaseName\":{},\"tableName\":{},\"dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{}}}},\"timestamp\":{\"type\":\"structure\",\"required\":[\"value\",\"unit\"],\"members\":{\"value\":{},\"unit\":{}}}}},\"http\":{\"type\":\"structure\",\"required\":[\"url\"],\"members\":{\"url\":{},\"confirmationUrl\":{},\"headers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"auth\":{\"type\":\"structure\",\"members\":{\"sigv4\":{\"type\":\"structure\",\"required\":[\"signingRegion\",\"serviceName\",\"roleArn\"],\"members\":{\"signingRegion\":{},\"serviceName\":{},\"roleArn\":{}}}}}}},\"kafka\":{\"type\":\"structure\",\"required\":[\"destinationArn\",\"topic\",\"clientProperties\"],\"members\":{\"destinationArn\":{},\"topic\":{},\"key\":{},\"partition\":{},\"clientProperties\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}},\"Scf\":{\"type\":\"list\",\"member\":{}},\"Sch\":{\"type\":\"list\",\"member\":{}},\"Scl\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"statusReason\":{},\"httpUrlProperties\":{\"type\":\"structure\",\"members\":{\"confirmationUrl\":{}}},\"vpcProperties\":{\"type\":\"structure\",\"members\":{\"subnetIds\":{\"shape\":\"Scf\"},\"securityGroups\":{\"shape\":\"Sch\"},\"vpcId\":{},\"roleArn\":{}}}}},\"Sej\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"targetArn\":{},\"roleArn\":{},\"enabled\":{\"type\":\"boolean\"}}}},\"Sem\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"enabled\":{\"type\":\"boolean\"}}}},\"Ser\":{\"type\":\"structure\",\"members\":{\"findingId\":{},\"taskId\":{},\"checkName\":{},\"taskStartTime\":{\"type\":\"timestamp\"},\"findingTime\":{\"type\":\"timestamp\"},\"severity\":{},\"nonCompliantResource\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"additionalInfo\":{\"shape\":\"Sev\"}}},\"relatedResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"resourceIdentifier\":{\"shape\":\"S1o\"},\"additionalInfo\":{\"shape\":\"Sev\"}}}},\"reasonForNonCompliance\":{},\"reasonForNonComplianceCode\":{},\"isSuppressed\":{\"type\":\"boolean\"}}},\"Sev\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sfb\":{\"type\":\"structure\",\"members\":{\"auditTaskId\":{},\"findingIds\":{\"type\":\"list\",\"member\":{}},\"auditCheckToReasonCodeFilter\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"Sff\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"Sfh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"id\":{},\"roleArn\":{},\"actionParams\":{\"shape\":\"S4k\"}}}},\"Sg8\":{\"type\":\"structure\",\"members\":{\"authorizerName\":{},\"authorizerArn\":{},\"authorizerFunctionArn\":{},\"tokenKeyName\":{},\"tokenSigningPublicKeys\":{\"shape\":\"S25\"},\"status\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastModifiedDate\":{\"type\":\"timestamp\"},\"signingDisabled\":{\"type\":\"boolean\"}}},\"Sgl\":{\"type\":\"structure\",\"members\":{\"notBefore\":{\"type\":\"timestamp\"},\"notAfter\":{\"type\":\"timestamp\"}}},\"Sgm\":{\"type\":\"structure\",\"members\":{\"templateBody\":{},\"roleArn\":{}}},\"Sh0\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"taskStatus\":{},\"taskStartTime\":{\"type\":\"timestamp\"},\"taskEndTime\":{\"type\":\"timestamp\"},\"target\":{\"shape\":\"Sh2\"},\"violationEventOccurrenceRange\":{\"shape\":\"Sh5\"},\"onlyActiveViolationsIncluded\":{\"type\":\"boolean\"},\"suppressedAlertsIncluded\":{\"type\":\"boolean\"},\"actionsDefinition\":{\"shape\":\"Sfh\"},\"taskStatistics\":{\"type\":\"structure\",\"members\":{\"actionsExecuted\":{\"type\":\"long\"},\"actionsSkipped\":{\"type\":\"long\"},\"actionsFailed\":{\"type\":\"long\"}}}}},\"Sh2\":{\"type\":\"structure\",\"members\":{\"violationIds\":{\"type\":\"list\",\"member\":{}},\"securityProfileName\":{},\"behaviorName\":{}}},\"Sh5\":{\"type\":\"structure\",\"required\":[\"startTime\",\"endTime\"],\"members\":{\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"}}},\"Shq\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}},\"Sj7\":{\"type\":\"list\",\"member\":{\"shape\":\"Sj8\"}},\"Sj8\":{\"type\":\"structure\",\"members\":{\"groupName\":{},\"groupArn\":{}}},\"Sjk\":{\"type\":\"structure\",\"members\":{\"deprecated\":{\"type\":\"boolean\"},\"deprecationDate\":{\"type\":\"timestamp\"},\"creationDate\":{\"type\":\"timestamp\"}}},\"Skc\":{\"type\":\"structure\",\"required\":[\"thingIndexingMode\"],\"members\":{\"thingIndexingMode\":{},\"thingConnectivityIndexingMode\":{},\"managedFields\":{\"shape\":\"Skf\"},\"customFields\":{\"shape\":\"Skf\"}}},\"Skf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"type\":{}}}},\"Skj\":{\"type\":\"structure\",\"required\":[\"thingGroupIndexingMode\"],\"members\":{\"thingGroupIndexingMode\":{},\"managedFields\":{\"shape\":\"Skf\"},\"customFields\":{\"shape\":\"Skf\"}}},\"Sm0\":{\"type\":\"structure\",\"members\":{\"confidenceLevel\":{}}},\"Sm6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyArn\":{}}}},\"Sn8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateId\":{},\"status\":{},\"certificateMode\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"So4\":{\"type\":\"structure\",\"members\":{\"status\":{},\"queuedAt\":{\"type\":\"timestamp\"},\"startedAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"executionNumber\":{\"type\":\"long\"}}},\"Sot\":{\"type\":\"list\",\"member\":{}},\"Sp3\":{\"type\":\"list\",\"member\":{}},\"Spm\":{\"type\":\"structure\",\"required\":[\"name\",\"arn\"],\"members\":{\"name\":{},\"arn\":{}}},\"Spr\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"Srf\":{\"type\":\"structure\",\"required\":[\"targetType\"],\"members\":{\"targetType\":{},\"targetName\":{}}},\"Ss9\":{\"type\":\"list\",\"member\":{}},\"St2\":{\"type\":\"structure\",\"required\":[\"resources\"],\"members\":{\"actionType\":{},\"resources\":{\"type\":\"list\",\"member\":{}}}},\"St6\":{\"type\":\"list\",\"member\":{}},\"Svg\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 39946:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetBehaviorModelTrainingSummaries\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"ListActiveViolations\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"activeViolations\"},\"ListAttachedPolicies\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"policies\"},\"ListAuditFindings\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"findings\"},\"ListAuditMitigationActionsExecutions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"actionsExecutions\"},\"ListAuditMitigationActionsTasks\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"tasks\"},\"ListAuditSuppressions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"suppressions\"},\"ListAuditTasks\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"tasks\"},\"ListAuthorizers\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"authorizers\"},\"ListBillingGroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"billingGroups\"},\"ListCACertificates\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"certificates\"},\"ListCertificates\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"certificates\"},\"ListCertificatesByCA\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"certificates\"},\"ListCustomMetrics\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"metricNames\"},\"ListDetectMitigationActionsExecutions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"actionsExecutions\"},\"ListDetectMitigationActionsTasks\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"tasks\"},\"ListDimensions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"dimensionNames\"},\"ListDomainConfigurations\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"domainConfigurations\"},\"ListIndices\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"indexNames\"},\"ListJobExecutionsForJob\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"executionSummaries\"},\"ListJobExecutionsForThing\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"executionSummaries\"},\"ListJobs\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"jobs\"},\"ListMitigationActions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"actionIdentifiers\"},\"ListOTAUpdates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"otaUpdates\"},\"ListOutgoingCertificates\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"outgoingCertificates\"},\"ListPolicies\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"policies\"},\"ListPolicyPrincipals\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"principals\"},\"ListPrincipalPolicies\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"policies\"},\"ListPrincipalThings\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"things\"},\"ListProvisioningTemplateVersions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"versions\"},\"ListProvisioningTemplates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"templates\"},\"ListRoleAliases\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"roleAliases\"},\"ListScheduledAudits\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"scheduledAudits\"},\"ListSecurityProfiles\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"securityProfileIdentifiers\"},\"ListSecurityProfilesForTarget\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"securityProfileTargetMappings\"},\"ListStreams\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"streams\"},\"ListTagsForResource\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"tags\"},\"ListTargetsForPolicy\":{\"input_token\":\"marker\",\"limit_key\":\"pageSize\",\"output_token\":\"nextMarker\",\"result_key\":\"targets\"},\"ListTargetsForSecurityProfile\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"securityProfileTargets\"},\"ListThingGroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"thingGroups\"},\"ListThingGroupsForThing\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"thingGroups\"},\"ListThingPrincipals\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"principals\"},\"ListThingRegistrationTaskReports\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"non_aggregate_keys\":[\"reportType\"],\"output_token\":\"nextToken\",\"result_key\":\"resourceLinks\"},\"ListThingRegistrationTasks\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"taskIds\"},\"ListThingTypes\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"thingTypes\"},\"ListThings\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"things\"},\"ListThingsInBillingGroup\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"things\"},\"ListThingsInThingGroup\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"things\"},\"ListTopicRuleDestinations\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"destinationSummaries\"},\"ListTopicRules\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"rules\"},\"ListV2LoggingLevels\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"logTargetConfigurations\"},\"ListViolationEvents\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"violationEvents\"}}}");

/***/ }),

/***/ 94126:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-05-28\",\"endpointPrefix\":\"data.iot\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Data Plane\",\"serviceId\":\"IoT Data Plane\",\"signatureVersion\":\"v4\",\"signingName\":\"iotdata\",\"uid\":\"iot-data-2015-05-28\"},\"operations\":{\"DeleteThingShadow\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/things/{thingName}/shadow\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"shadowName\":{\"location\":\"querystring\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"payload\"],\"members\":{\"payload\":{\"type\":\"blob\"}},\"payload\":\"payload\"}},\"GetThingShadow\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/shadow\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"shadowName\":{\"location\":\"querystring\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"payload\":{\"type\":\"blob\"}},\"payload\":\"payload\"}},\"ListNamedShadowsForThing\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/things/shadow/ListNamedShadowsForThing/{thingName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"pageSize\":{\"location\":\"querystring\",\"locationName\":\"pageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"results\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"timestamp\":{\"type\":\"long\"}}}},\"Publish\":{\"http\":{\"requestUri\":\"/topics/{topic}\"},\"input\":{\"type\":\"structure\",\"required\":[\"topic\"],\"members\":{\"topic\":{\"location\":\"uri\",\"locationName\":\"topic\"},\"qos\":{\"location\":\"querystring\",\"locationName\":\"qos\",\"type\":\"integer\"},\"payload\":{\"type\":\"blob\"}},\"payload\":\"payload\"}},\"UpdateThingShadow\":{\"http\":{\"requestUri\":\"/things/{thingName}/shadow\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\",\"payload\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"shadowName\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"payload\":{\"type\":\"blob\"}},\"payload\":\"payload\"},\"output\":{\"type\":\"structure\",\"members\":{\"payload\":{\"type\":\"blob\"}},\"payload\":\"payload\"}}},\"shapes\":{}}");

/***/ }),

/***/ 6435:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 27052:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-29\",\"endpointPrefix\":\"data.jobs.iot\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Jobs Data Plane\",\"serviceId\":\"IoT Jobs Data Plane\",\"signatureVersion\":\"v4\",\"signingName\":\"iot-jobs-data\",\"uid\":\"iot-jobs-data-2017-09-29\"},\"operations\":{\"DescribeJobExecution\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"thingName\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"includeJobDocument\":{\"location\":\"querystring\",\"locationName\":\"includeJobDocument\",\"type\":\"boolean\"},\"executionNumber\":{\"location\":\"querystring\",\"locationName\":\"executionNumber\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"execution\":{\"shape\":\"S7\"}}}},\"GetPendingJobExecutions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/things/{thingName}/jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"inProgressJobs\":{\"shape\":\"Sl\"},\"queuedJobs\":{\"shape\":\"Sl\"}}}},\"StartNextPendingJobExecution\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/things/{thingName}/jobs/$next\"},\"input\":{\"type\":\"structure\",\"required\":[\"thingName\"],\"members\":{\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"statusDetails\":{\"shape\":\"Sa\"},\"stepTimeoutInMinutes\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"execution\":{\"shape\":\"S7\"}}}},\"UpdateJobExecution\":{\"http\":{\"requestUri\":\"/things/{thingName}/jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\",\"thingName\",\"status\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"thingName\":{\"location\":\"uri\",\"locationName\":\"thingName\"},\"status\":{},\"statusDetails\":{\"shape\":\"Sa\"},\"stepTimeoutInMinutes\":{\"type\":\"long\"},\"expectedVersion\":{\"type\":\"long\"},\"includeJobExecutionState\":{\"type\":\"boolean\"},\"includeJobDocument\":{\"type\":\"boolean\"},\"executionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"executionState\":{\"type\":\"structure\",\"members\":{\"status\":{},\"statusDetails\":{\"shape\":\"Sa\"},\"versionNumber\":{\"type\":\"long\"}}},\"jobDocument\":{}}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"thingName\":{},\"status\":{},\"statusDetails\":{\"shape\":\"Sa\"},\"queuedAt\":{\"type\":\"long\"},\"startedAt\":{\"type\":\"long\"},\"lastUpdatedAt\":{\"type\":\"long\"},\"approximateSecondsBeforeTimedOut\":{\"type\":\"long\"},\"versionNumber\":{\"type\":\"long\"},\"executionNumber\":{\"type\":\"long\"},\"jobDocument\":{}}},\"Sa\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"queuedAt\":{\"type\":\"long\"},\"startedAt\":{\"type\":\"long\"},\"lastUpdatedAt\":{\"type\":\"long\"},\"versionNumber\":{\"type\":\"long\"},\"executionNumber\":{\"type\":\"long\"}}}}}}");

/***/ }),

/***/ 87653:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 69668:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-05-14\",\"endpointPrefix\":\"devices.iot1click\",\"signingName\":\"iot1click\",\"serviceFullName\":\"AWS IoT 1-Click Devices Service\",\"serviceId\":\"IoT 1Click Devices Service\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"devices-2018-05-14\",\"signatureVersion\":\"v4\"},\"operations\":{\"ClaimDevicesByClaimCode\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/claims/{claimCode}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClaimCode\":{\"location\":\"uri\",\"locationName\":\"claimCode\"}},\"required\":[\"ClaimCode\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClaimCode\":{\"locationName\":\"claimCode\"},\"Total\":{\"locationName\":\"total\",\"type\":\"integer\"}}}},\"DescribeDevice\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/devices/{deviceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceDescription\":{\"shape\":\"S8\",\"locationName\":\"deviceDescription\"}}}},\"FinalizeDeviceClaim\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/devices/{deviceId}/finalize-claim\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"},\"Tags\":{\"shape\":\"Sc\",\"locationName\":\"tags\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"}}}},\"GetDeviceMethods\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/devices/{deviceId}/methods\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceMethods\":{\"locationName\":\"deviceMethods\",\"type\":\"list\",\"member\":{\"shape\":\"Si\"}}}}},\"InitiateDeviceClaim\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/devices/{deviceId}/initiate-claim\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"}}}},\"InvokeDeviceMethod\":{\"http\":{\"requestUri\":\"/devices/{deviceId}/methods\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"},\"DeviceMethod\":{\"shape\":\"Si\",\"locationName\":\"deviceMethod\"},\"DeviceMethodParameters\":{\"locationName\":\"deviceMethodParameters\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceMethodResponse\":{\"locationName\":\"deviceMethodResponse\"}}}},\"ListDeviceEvents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/devices/{deviceId}/events\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"},\"FromTimeStamp\":{\"shape\":\"So\",\"location\":\"querystring\",\"locationName\":\"fromTimeStamp\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"ToTimeStamp\":{\"shape\":\"So\",\"location\":\"querystring\",\"locationName\":\"toTimeStamp\"}},\"required\":[\"DeviceId\",\"FromTimeStamp\",\"ToTimeStamp\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Events\":{\"locationName\":\"events\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Device\":{\"locationName\":\"device\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"locationName\":\"attributes\",\"type\":\"structure\",\"members\":{}},\"DeviceId\":{\"locationName\":\"deviceId\"},\"Type\":{\"locationName\":\"type\"}}},\"StdEvent\":{\"locationName\":\"stdEvent\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListDevices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/devices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceType\":{\"location\":\"querystring\",\"locationName\":\"deviceType\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"locationName\":\"devices\",\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sc\",\"locationName\":\"tags\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"shape\":\"Sc\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\",\"Tags\"]}},\"UnclaimDevice\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/devices/{deviceId}/unclaim\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"State\":{\"locationName\":\"state\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateDeviceState\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/devices/{deviceId}/state\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"},\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}},\"required\":[\"DeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S8\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Attributes\":{\"locationName\":\"attributes\",\"type\":\"map\",\"key\":{},\"value\":{}},\"DeviceId\":{\"locationName\":\"deviceId\"},\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"},\"RemainingLife\":{\"locationName\":\"remainingLife\",\"type\":\"double\"},\"Type\":{\"locationName\":\"type\"},\"Tags\":{\"shape\":\"Sc\",\"locationName\":\"tags\"}}},\"Sc\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Si\":{\"type\":\"structure\",\"members\":{\"DeviceType\":{\"locationName\":\"deviceType\"},\"MethodName\":{\"locationName\":\"methodName\"}}},\"So\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 66389:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-05-14\",\"endpointPrefix\":\"projects.iot1click\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWS IoT 1-Click Projects\",\"serviceFullName\":\"AWS IoT 1-Click Projects Service\",\"serviceId\":\"IoT 1Click Projects\",\"signatureVersion\":\"v4\",\"signingName\":\"iot1click\",\"uid\":\"iot1click-projects-2018-05-14\"},\"operations\":{\"AssociateDeviceWithPlacement\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{projectName}/placements/{placementName}/devices/{deviceTemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\",\"placementName\",\"deviceId\",\"deviceTemplateName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"placementName\":{\"location\":\"uri\",\"locationName\":\"placementName\"},\"deviceId\":{},\"deviceTemplateName\":{\"location\":\"uri\",\"locationName\":\"deviceTemplateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreatePlacement\":{\"http\":{\"requestUri\":\"/projects/{projectName}/placements\"},\"input\":{\"type\":\"structure\",\"required\":[\"placementName\",\"projectName\"],\"members\":{\"placementName\":{},\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"attributes\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateProject\":{\"http\":{\"requestUri\":\"/projects\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{},\"description\":{},\"placementTemplate\":{\"shape\":\"Se\"},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePlacement\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/projects/{projectName}/placements/{placementName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"placementName\",\"projectName\"],\"members\":{\"placementName\":{\"location\":\"uri\",\"locationName\":\"placementName\"},\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/projects/{projectName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribePlacement\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{projectName}/placements/{placementName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"placementName\",\"projectName\"],\"members\":{\"placementName\":{\"location\":\"uri\",\"locationName\":\"placementName\"},\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"placement\"],\"members\":{\"placement\":{\"type\":\"structure\",\"required\":[\"projectName\",\"placementName\",\"attributes\",\"createdDate\",\"updatedDate\"],\"members\":{\"projectName\":{},\"placementName\":{},\"attributes\":{\"shape\":\"S8\"},\"createdDate\":{\"type\":\"timestamp\"},\"updatedDate\":{\"type\":\"timestamp\"}}}}}},\"DescribeProject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{projectName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"project\"],\"members\":{\"project\":{\"type\":\"structure\",\"required\":[\"projectName\",\"createdDate\",\"updatedDate\"],\"members\":{\"arn\":{},\"projectName\":{},\"description\":{},\"createdDate\":{\"type\":\"timestamp\"},\"updatedDate\":{\"type\":\"timestamp\"},\"placementTemplate\":{\"shape\":\"Se\"},\"tags\":{\"shape\":\"Sn\"}}}}}},\"DisassociateDeviceFromPlacement\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/projects/{projectName}/placements/{placementName}/devices/{deviceTemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\",\"placementName\",\"deviceTemplateName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"placementName\":{\"location\":\"uri\",\"locationName\":\"placementName\"},\"deviceTemplateName\":{\"location\":\"uri\",\"locationName\":\"deviceTemplateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetDevicesInPlacement\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{projectName}/placements/{placementName}/devices\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\",\"placementName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"placementName\":{\"location\":\"uri\",\"locationName\":\"placementName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"devices\"],\"members\":{\"devices\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"ListPlacements\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{projectName}/placements\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"placements\"],\"members\":{\"placements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"projectName\",\"placementName\",\"createdDate\",\"updatedDate\"],\"members\":{\"projectName\":{},\"placementName\":{},\"createdDate\":{\"type\":\"timestamp\"},\"updatedDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListProjects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"projects\"],\"members\":{\"projects\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"projectName\",\"createdDate\",\"updatedDate\"],\"members\":{\"arn\":{},\"projectName\":{},\"createdDate\":{\"type\":\"timestamp\"},\"updatedDate\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Sn\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sn\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePlacement\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{projectName}/placements/{placementName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"placementName\",\"projectName\"],\"members\":{\"placementName\":{\"location\":\"uri\",\"locationName\":\"placementName\"},\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"attributes\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateProject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{projectName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectName\"],\"members\":{\"projectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"description\":{},\"placementTemplate\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S8\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Se\":{\"type\":\"structure\",\"members\":{\"defaultAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"deviceTemplates\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"deviceType\":{},\"callbackOverrides\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"Sn\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 42078:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListPlacements\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"placements\"},\"ListProjects\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"projects\"}}}");

/***/ }),

/***/ 87696:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-11-27\",\"endpointPrefix\":\"iotanalytics\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Analytics\",\"serviceId\":\"IoTAnalytics\",\"signatureVersion\":\"v4\",\"signingName\":\"iotanalytics\",\"uid\":\"iotanalytics-2017-11-27\"},\"operations\":{\"BatchPutMessage\":{\"http\":{\"requestUri\":\"/messages/batch\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"channelName\",\"messages\"],\"members\":{\"channelName\":{},\"messages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"messageId\",\"payload\"],\"members\":{\"messageId\":{},\"payload\":{\"type\":\"blob\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"batchPutMessageErrorEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"messageId\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"CancelPipelineReprocessing\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/pipelines/{pipelineName}/reprocessing/{reprocessingId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"reprocessingId\"],\"members\":{\"pipelineName\":{\"location\":\"uri\",\"locationName\":\"pipelineName\"},\"reprocessingId\":{\"location\":\"uri\",\"locationName\":\"reprocessingId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateChannel\":{\"http\":{\"requestUri\":\"/channels\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"channelName\"],\"members\":{\"channelName\":{},\"channelStorage\":{\"shape\":\"Sh\"},\"retentionPeriod\":{\"shape\":\"Sn\"},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"channelName\":{},\"channelArn\":{},\"retentionPeriod\":{\"shape\":\"Sn\"}}}},\"CreateDataset\":{\"http\":{\"requestUri\":\"/datasets\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\",\"actions\"],\"members\":{\"datasetName\":{},\"actions\":{\"shape\":\"Sy\"},\"triggers\":{\"shape\":\"S1l\"},\"contentDeliveryRules\":{\"shape\":\"S1q\"},\"retentionPeriod\":{\"shape\":\"Sn\"},\"versioningConfiguration\":{\"shape\":\"S21\"},\"tags\":{\"shape\":\"Sq\"},\"lateDataRules\":{\"shape\":\"S24\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetName\":{},\"datasetArn\":{},\"retentionPeriod\":{\"shape\":\"Sn\"}}}},\"CreateDatasetContent\":{\"http\":{\"requestUri\":\"/datasets/{datasetName}/content\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"},\"versionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"versionId\":{}}}},\"CreateDatastore\":{\"http\":{\"requestUri\":\"/datastores\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"datastoreName\"],\"members\":{\"datastoreName\":{},\"datastoreStorage\":{\"shape\":\"S2h\"},\"retentionPeriod\":{\"shape\":\"Sn\"},\"tags\":{\"shape\":\"Sq\"},\"fileFormatConfiguration\":{\"shape\":\"S2k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datastoreName\":{},\"datastoreArn\":{},\"retentionPeriod\":{\"shape\":\"Sn\"}}}},\"CreatePipeline\":{\"http\":{\"requestUri\":\"/pipelines\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"pipelineActivities\"],\"members\":{\"pipelineName\":{},\"pipelineActivities\":{\"shape\":\"S2v\"},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineName\":{},\"pipelineArn\":{}}}},\"DeleteChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{channelName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"channelName\"],\"members\":{\"channelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}}}},\"DeleteDataset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/datasets/{datasetName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"}}}},\"DeleteDatasetContent\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/datasets/{datasetName}/content\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"},\"versionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"}}}},\"DeleteDatastore\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/datastores/{datastoreName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"datastoreName\"],\"members\":{\"datastoreName\":{\"location\":\"uri\",\"locationName\":\"datastoreName\"}}}},\"DeletePipeline\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/pipelines/{pipelineName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\"],\"members\":{\"pipelineName\":{\"location\":\"uri\",\"locationName\":\"pipelineName\"}}}},\"DescribeChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelName\"],\"members\":{\"channelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"includeStatistics\":{\"location\":\"querystring\",\"locationName\":\"includeStatistics\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"channel\":{\"type\":\"structure\",\"members\":{\"name\":{},\"storage\":{\"shape\":\"Sh\"},\"arn\":{},\"status\":{},\"retentionPeriod\":{\"shape\":\"Sn\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"lastMessageArrivalTime\":{\"type\":\"timestamp\"}}},\"statistics\":{\"type\":\"structure\",\"members\":{\"size\":{\"shape\":\"S3t\"}}}}}},\"DescribeDataset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datasets/{datasetName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataset\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"actions\":{\"shape\":\"Sy\"},\"triggers\":{\"shape\":\"S1l\"},\"contentDeliveryRules\":{\"shape\":\"S1q\"},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"retentionPeriod\":{\"shape\":\"Sn\"},\"versioningConfiguration\":{\"shape\":\"S21\"},\"lateDataRules\":{\"shape\":\"S24\"}}}}}},\"DescribeDatastore\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datastores/{datastoreName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"datastoreName\"],\"members\":{\"datastoreName\":{\"location\":\"uri\",\"locationName\":\"datastoreName\"},\"includeStatistics\":{\"location\":\"querystring\",\"locationName\":\"includeStatistics\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datastore\":{\"type\":\"structure\",\"members\":{\"name\":{},\"storage\":{\"shape\":\"S2h\"},\"arn\":{},\"status\":{},\"retentionPeriod\":{\"shape\":\"Sn\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"lastMessageArrivalTime\":{\"type\":\"timestamp\"},\"fileFormatConfiguration\":{\"shape\":\"S2k\"}}},\"statistics\":{\"type\":\"structure\",\"members\":{\"size\":{\"shape\":\"S3t\"}}}}}},\"DescribeLoggingOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/logging\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"loggingOptions\":{\"shape\":\"S46\"}}}},\"DescribePipeline\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/pipelines/{pipelineName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\"],\"members\":{\"pipelineName\":{\"location\":\"uri\",\"locationName\":\"pipelineName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipeline\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"activities\":{\"shape\":\"S2v\"},\"reprocessingSummaries\":{\"shape\":\"S4c\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"}}}}}},\"GetDatasetContent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datasets/{datasetName}/content\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"},\"versionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"entryName\":{},\"dataURI\":{}}}},\"timestamp\":{\"type\":\"timestamp\"},\"status\":{\"shape\":\"S4k\"}}}},\"ListChannels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"channelSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"channelName\":{},\"channelStorage\":{\"type\":\"structure\",\"members\":{\"serviceManagedS3\":{\"type\":\"structure\",\"members\":{}},\"customerManagedS3\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"keyPrefix\":{},\"roleArn\":{}}}}},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"lastMessageArrivalTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListDatasetContents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datasets/{datasetName}/contents\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"scheduledOnOrAfter\":{\"location\":\"querystring\",\"locationName\":\"scheduledOnOrAfter\",\"type\":\"timestamp\"},\"scheduledBefore\":{\"location\":\"querystring\",\"locationName\":\"scheduledBefore\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetContentSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"version\":{},\"status\":{\"shape\":\"S4k\"},\"creationTime\":{\"type\":\"timestamp\"},\"scheduleTime\":{\"type\":\"timestamp\"},\"completionTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListDatasets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datasets\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"datasetName\":{},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"triggers\":{\"shape\":\"S1l\"},\"actions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"actionName\":{},\"actionType\":{}}}}}}},\"nextToken\":{}}}},\"ListDatastores\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/datastores\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datastoreSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"datastoreName\":{},\"datastoreStorage\":{\"type\":\"structure\",\"members\":{\"serviceManagedS3\":{\"type\":\"structure\",\"members\":{}},\"customerManagedS3\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"keyPrefix\":{},\"roleArn\":{}}}}},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"lastMessageArrivalTime\":{\"type\":\"timestamp\"},\"fileFormatType\":{}}}},\"nextToken\":{}}}},\"ListPipelines\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/pipelines\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"pipelineSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"pipelineName\":{},\"reprocessingSummaries\":{\"shape\":\"S4c\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sq\"}}}},\"PutLoggingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/logging\"},\"input\":{\"type\":\"structure\",\"required\":[\"loggingOptions\"],\"members\":{\"loggingOptions\":{\"shape\":\"S46\"}}}},\"RunPipelineActivity\":{\"http\":{\"requestUri\":\"/pipelineactivities/run\"},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineActivity\",\"payloads\"],\"members\":{\"pipelineActivity\":{\"shape\":\"S2w\"},\"payloads\":{\"shape\":\"S5o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"payloads\":{\"shape\":\"S5o\"},\"logResult\":{}}}},\"SampleChannelData\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{channelName}/sample\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelName\"],\"members\":{\"channelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"maxMessages\":{\"location\":\"querystring\",\"locationName\":\"maxMessages\",\"type\":\"integer\"},\"startTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"endTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"payloads\":{\"shape\":\"S5o\"}}}},\"StartPipelineReprocessing\":{\"http\":{\"requestUri\":\"/pipelines/{pipelineName}/reprocessing\"},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\"],\"members\":{\"pipelineName\":{\"location\":\"uri\",\"locationName\":\"pipelineName\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"channelMessages\":{\"type\":\"structure\",\"members\":{\"s3Paths\":{\"type\":\"list\",\"member\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"reprocessingId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sq\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{channelName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelName\"],\"members\":{\"channelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"channelStorage\":{\"shape\":\"Sh\"},\"retentionPeriod\":{\"shape\":\"Sn\"}}}},\"UpdateDataset\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/datasets/{datasetName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetName\",\"actions\"],\"members\":{\"datasetName\":{\"location\":\"uri\",\"locationName\":\"datasetName\"},\"actions\":{\"shape\":\"Sy\"},\"triggers\":{\"shape\":\"S1l\"},\"contentDeliveryRules\":{\"shape\":\"S1q\"},\"retentionPeriod\":{\"shape\":\"Sn\"},\"versioningConfiguration\":{\"shape\":\"S21\"},\"lateDataRules\":{\"shape\":\"S24\"}}}},\"UpdateDatastore\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/datastores/{datastoreName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"datastoreName\"],\"members\":{\"datastoreName\":{\"location\":\"uri\",\"locationName\":\"datastoreName\"},\"retentionPeriod\":{\"shape\":\"Sn\"},\"datastoreStorage\":{\"shape\":\"S2h\"},\"fileFormatConfiguration\":{\"shape\":\"S2k\"}}}},\"UpdatePipeline\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/pipelines/{pipelineName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"pipelineName\",\"pipelineActivities\"],\"members\":{\"pipelineName\":{\"location\":\"uri\",\"locationName\":\"pipelineName\"},\"pipelineActivities\":{\"shape\":\"S2v\"}}}}},\"shapes\":{\"Sh\":{\"type\":\"structure\",\"members\":{\"serviceManagedS3\":{\"type\":\"structure\",\"members\":{}},\"customerManagedS3\":{\"type\":\"structure\",\"required\":[\"bucket\",\"roleArn\"],\"members\":{\"bucket\":{},\"keyPrefix\":{},\"roleArn\":{}}}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"unlimited\":{\"type\":\"boolean\"},\"numberOfDays\":{\"type\":\"integer\"}}},\"Sq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"actionName\":{},\"queryAction\":{\"type\":\"structure\",\"required\":[\"sqlQuery\"],\"members\":{\"sqlQuery\":{},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"deltaTime\":{\"type\":\"structure\",\"required\":[\"offsetSeconds\",\"timeExpression\"],\"members\":{\"offsetSeconds\":{\"type\":\"integer\"},\"timeExpression\":{}}}}}}}},\"containerAction\":{\"type\":\"structure\",\"required\":[\"image\",\"executionRoleArn\",\"resourceConfiguration\"],\"members\":{\"image\":{},\"executionRoleArn\":{},\"resourceConfiguration\":{\"type\":\"structure\",\"required\":[\"computeType\",\"volumeSizeInGB\"],\"members\":{\"computeType\":{},\"volumeSizeInGB\":{\"type\":\"integer\"}}},\"variables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"stringValue\":{},\"doubleValue\":{\"type\":\"double\"},\"datasetContentVersionValue\":{\"type\":\"structure\",\"required\":[\"datasetName\"],\"members\":{\"datasetName\":{}}},\"outputFileUriValue\":{\"type\":\"structure\",\"required\":[\"fileName\"],\"members\":{\"fileName\":{}}}}}}}}}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"schedule\":{\"type\":\"structure\",\"members\":{\"expression\":{}}},\"dataset\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}}}},\"S1q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"destination\"],\"members\":{\"entryName\":{},\"destination\":{\"type\":\"structure\",\"members\":{\"iotEventsDestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"inputName\",\"roleArn\"],\"members\":{\"inputName\":{},\"roleArn\":{}}},\"s3DestinationConfiguration\":{\"type\":\"structure\",\"required\":[\"bucket\",\"key\",\"roleArn\"],\"members\":{\"bucket\":{},\"key\":{},\"glueConfiguration\":{\"type\":\"structure\",\"required\":[\"tableName\",\"databaseName\"],\"members\":{\"tableName\":{},\"databaseName\":{}}},\"roleArn\":{}}}}}}}},\"S21\":{\"type\":\"structure\",\"members\":{\"unlimited\":{\"type\":\"boolean\"},\"maxVersions\":{\"type\":\"integer\"}}},\"S24\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ruleConfiguration\"],\"members\":{\"ruleName\":{},\"ruleConfiguration\":{\"type\":\"structure\",\"members\":{\"deltaTimeSessionWindowConfiguration\":{\"type\":\"structure\",\"required\":[\"timeoutInMinutes\"],\"members\":{\"timeoutInMinutes\":{\"type\":\"integer\"}}}}}}}},\"S2h\":{\"type\":\"structure\",\"members\":{\"serviceManagedS3\":{\"type\":\"structure\",\"members\":{}},\"customerManagedS3\":{\"type\":\"structure\",\"required\":[\"bucket\",\"roleArn\"],\"members\":{\"bucket\":{},\"keyPrefix\":{},\"roleArn\":{}}}}},\"S2k\":{\"type\":\"structure\",\"members\":{\"jsonConfiguration\":{\"type\":\"structure\",\"members\":{}},\"parquetConfiguration\":{\"type\":\"structure\",\"members\":{\"schemaDefinition\":{\"type\":\"structure\",\"members\":{\"columns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"type\"],\"members\":{\"name\":{},\"type\":{}}}}}}}}}},\"S2v\":{\"type\":\"list\",\"member\":{\"shape\":\"S2w\"}},\"S2w\":{\"type\":\"structure\",\"members\":{\"channel\":{\"type\":\"structure\",\"required\":[\"name\",\"channelName\"],\"members\":{\"name\":{},\"channelName\":{},\"next\":{}}},\"lambda\":{\"type\":\"structure\",\"required\":[\"name\",\"lambdaName\",\"batchSize\"],\"members\":{\"name\":{},\"lambdaName\":{},\"batchSize\":{\"type\":\"integer\"},\"next\":{}}},\"datastore\":{\"type\":\"structure\",\"required\":[\"name\",\"datastoreName\"],\"members\":{\"name\":{},\"datastoreName\":{}}},\"addAttributes\":{\"type\":\"structure\",\"required\":[\"name\",\"attributes\"],\"members\":{\"name\":{},\"attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"next\":{}}},\"removeAttributes\":{\"type\":\"structure\",\"required\":[\"name\",\"attributes\"],\"members\":{\"name\":{},\"attributes\":{\"shape\":\"S37\"},\"next\":{}}},\"selectAttributes\":{\"type\":\"structure\",\"required\":[\"name\",\"attributes\"],\"members\":{\"name\":{},\"attributes\":{\"shape\":\"S37\"},\"next\":{}}},\"filter\":{\"type\":\"structure\",\"required\":[\"name\",\"filter\"],\"members\":{\"name\":{},\"filter\":{},\"next\":{}}},\"math\":{\"type\":\"structure\",\"required\":[\"name\",\"attribute\",\"math\"],\"members\":{\"name\":{},\"attribute\":{},\"math\":{},\"next\":{}}},\"deviceRegistryEnrich\":{\"type\":\"structure\",\"required\":[\"name\",\"attribute\",\"thingName\",\"roleArn\"],\"members\":{\"name\":{},\"attribute\":{},\"thingName\":{},\"roleArn\":{},\"next\":{}}},\"deviceShadowEnrich\":{\"type\":\"structure\",\"required\":[\"name\",\"attribute\",\"thingName\",\"roleArn\"],\"members\":{\"name\":{},\"attribute\":{},\"thingName\":{},\"roleArn\":{},\"next\":{}}}}},\"S37\":{\"type\":\"list\",\"member\":{}},\"S3t\":{\"type\":\"structure\",\"members\":{\"estimatedSizeInBytes\":{\"type\":\"double\"},\"estimatedOn\":{\"type\":\"timestamp\"}}},\"S46\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"level\",\"enabled\"],\"members\":{\"roleArn\":{},\"level\":{},\"enabled\":{\"type\":\"boolean\"}}},\"S4c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"}}}},\"S4k\":{\"type\":\"structure\",\"members\":{\"state\":{},\"reason\":{}}},\"S5o\":{\"type\":\"list\",\"member\":{\"type\":\"blob\"}}}}");

/***/ }),

/***/ 58536:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListChannels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListDatasetContents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListDatasets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListDatastores\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListPipelines\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 19317:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-09-18\",\"endpointPrefix\":\"api.iotdeviceadvisor\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWSIoTDeviceAdvisor\",\"serviceFullName\":\"AWS IoT Core Device Advisor\",\"serviceId\":\"IotDeviceAdvisor\",\"signatureVersion\":\"v4\",\"signingName\":\"iotdeviceadvisor\",\"uid\":\"iotdeviceadvisor-2020-09-18\"},\"operations\":{\"CreateSuiteDefinition\":{\"http\":{\"requestUri\":\"/suiteDefinitions\"},\"input\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionConfiguration\":{\"shape\":\"S2\"},\"tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{},\"suiteDefinitionArn\":{},\"suiteDefinitionName\":{},\"createdAt\":{\"type\":\"timestamp\"}}}},\"DeleteSuiteDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/suiteDefinitions/{suiteDefinitionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"suiteDefinitionId\"],\"members\":{\"suiteDefinitionId\":{\"location\":\"uri\",\"locationName\":\"suiteDefinitionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetSuiteDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/suiteDefinitions/{suiteDefinitionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"suiteDefinitionId\"],\"members\":{\"suiteDefinitionId\":{\"location\":\"uri\",\"locationName\":\"suiteDefinitionId\"},\"suiteDefinitionVersion\":{\"location\":\"querystring\",\"locationName\":\"suiteDefinitionVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{},\"suiteDefinitionArn\":{},\"suiteDefinitionVersion\":{},\"latestVersion\":{},\"suiteDefinitionConfiguration\":{\"shape\":\"S2\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastModifiedAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S9\"}}}},\"GetSuiteRun\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/suiteDefinitions/{suiteDefinitionId}/suiteRuns/{suiteRunId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"suiteDefinitionId\",\"suiteRunId\"],\"members\":{\"suiteDefinitionId\":{\"location\":\"uri\",\"locationName\":\"suiteDefinitionId\"},\"suiteRunId\":{\"location\":\"uri\",\"locationName\":\"suiteRunId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{},\"suiteDefinitionVersion\":{},\"suiteRunId\":{},\"suiteRunArn\":{},\"suiteRunConfiguration\":{\"shape\":\"Sm\"},\"testResult\":{\"type\":\"structure\",\"members\":{\"groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"groupId\":{},\"groupName\":{},\"tests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"testCaseRunId\":{},\"testCaseDefinitionId\":{},\"testCaseDefinitionName\":{},\"status\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"logUrl\":{},\"warnings\":{},\"failure\":{}}}}}}}}},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"status\":{},\"errorReason\":{},\"tags\":{\"shape\":\"S9\"}}}},\"GetSuiteRunReport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/suiteDefinitions/{suiteDefinitionId}/suiteRuns/{suiteRunId}/report\"},\"input\":{\"type\":\"structure\",\"required\":[\"suiteDefinitionId\",\"suiteRunId\"],\"members\":{\"suiteDefinitionId\":{\"location\":\"uri\",\"locationName\":\"suiteDefinitionId\"},\"suiteRunId\":{\"location\":\"uri\",\"locationName\":\"suiteRunId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"qualificationReportDownloadUrl\":{}}}},\"ListSuiteDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/suiteDefinitions\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionInformationList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{},\"suiteDefinitionName\":{},\"defaultDevices\":{\"shape\":\"S4\"},\"intendedForQualification\":{\"type\":\"boolean\"},\"createdAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListSuiteRuns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/suiteRuns\"},\"input\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{\"location\":\"querystring\",\"locationName\":\"suiteDefinitionId\"},\"suiteDefinitionVersion\":{\"location\":\"querystring\",\"locationName\":\"suiteDefinitionVersion\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteRunsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{},\"suiteDefinitionVersion\":{},\"suiteDefinitionName\":{},\"suiteRunId\":{},\"createdAt\":{\"type\":\"timestamp\"},\"startedAt\":{\"type\":\"timestamp\"},\"endAt\":{\"type\":\"timestamp\"},\"status\":{},\"passed\":{\"type\":\"integer\"},\"failed\":{\"type\":\"integer\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S9\"}}}},\"ListTestCases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/testCases\"},\"input\":{\"type\":\"structure\",\"members\":{\"intendedForQualification\":{\"location\":\"querystring\",\"locationName\":\"intendedForQualification\",\"type\":\"boolean\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"categories\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"tests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"configuration\":{\"shape\":\"S1p\"},\"test\":{\"type\":\"structure\",\"members\":{\"id\":{},\"testCaseVersion\":{}}}}}}}}},\"rootGroupConfiguration\":{\"shape\":\"S1p\"},\"groupConfiguration\":{\"shape\":\"S1p\"},\"nextToken\":{}}}},\"StartSuiteRun\":{\"http\":{\"requestUri\":\"/suiteDefinitions/{suiteDefinitionId}/suiteRuns\"},\"input\":{\"type\":\"structure\",\"required\":[\"suiteDefinitionId\"],\"members\":{\"suiteDefinitionId\":{\"location\":\"uri\",\"locationName\":\"suiteDefinitionId\"},\"suiteDefinitionVersion\":{},\"suiteRunConfiguration\":{\"shape\":\"Sm\"},\"tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteRunId\":{},\"suiteRunArn\":{},\"createdAt\":{\"type\":\"timestamp\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSuiteDefinition\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/suiteDefinitions/{suiteDefinitionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"suiteDefinitionId\"],\"members\":{\"suiteDefinitionId\":{\"location\":\"uri\",\"locationName\":\"suiteDefinitionId\"},\"suiteDefinitionConfiguration\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionId\":{},\"suiteDefinitionArn\":{},\"suiteDefinitionName\":{},\"suiteDefinitionVersion\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"members\":{\"suiteDefinitionName\":{},\"devices\":{\"shape\":\"S4\"},\"intendedForQualification\":{\"type\":\"boolean\"},\"rootGroup\":{},\"devicePermissionRoleArn\":{}}},\"S4\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"S5\":{\"type\":\"structure\",\"members\":{\"thingArn\":{},\"certificateArn\":{}}},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sm\":{\"type\":\"structure\",\"members\":{\"primaryDevice\":{\"shape\":\"S5\"},\"secondaryDevice\":{\"shape\":\"S5\"},\"selectedTestList\":{\"type\":\"list\",\"member\":{}}}},\"S1p\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 9465:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListSuiteDefinitions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListSuiteRuns\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListTestCases\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 55666:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-07-27\",\"endpointPrefix\":\"iotevents\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Events\",\"serviceId\":\"IoT Events\",\"signatureVersion\":\"v4\",\"signingName\":\"iotevents\",\"uid\":\"iotevents-2018-07-27\"},\"operations\":{\"CreateDetectorModel\":{\"http\":{\"requestUri\":\"/detector-models\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\",\"detectorModelDefinition\",\"roleArn\"],\"members\":{\"detectorModelName\":{},\"detectorModelDefinition\":{\"shape\":\"S3\"},\"detectorModelDescription\":{},\"key\":{},\"roleArn\":{},\"tags\":{\"shape\":\"S1u\"},\"evaluationMethod\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorModelConfiguration\":{\"shape\":\"S20\"}}}},\"CreateInput\":{\"http\":{\"requestUri\":\"/inputs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"inputName\",\"inputDefinition\"],\"members\":{\"inputName\":{},\"inputDescription\":{},\"inputDefinition\":{\"shape\":\"S27\"},\"tags\":{\"shape\":\"S1u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"inputConfiguration\":{\"shape\":\"S2b\"}}}},\"DeleteDetectorModel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/detector-models/{detectorModelName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\"],\"members\":{\"detectorModelName\":{\"location\":\"uri\",\"locationName\":\"detectorModelName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInput\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/inputs/{inputName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"inputName\"],\"members\":{\"inputName\":{\"location\":\"uri\",\"locationName\":\"inputName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeDetectorModel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector-models/{detectorModelName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\"],\"members\":{\"detectorModelName\":{\"location\":\"uri\",\"locationName\":\"detectorModelName\"},\"detectorModelVersion\":{\"location\":\"querystring\",\"locationName\":\"version\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorModel\":{\"type\":\"structure\",\"members\":{\"detectorModelDefinition\":{\"shape\":\"S3\"},\"detectorModelConfiguration\":{\"shape\":\"S20\"}}}}}},\"DescribeDetectorModelAnalysis\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analysis/detector-models/{analysisId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"analysisId\"],\"members\":{\"analysisId\":{\"location\":\"uri\",\"locationName\":\"analysisId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{}}}},\"DescribeInput\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/inputs/{inputName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"inputName\"],\"members\":{\"inputName\":{\"location\":\"uri\",\"locationName\":\"inputName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"input\":{\"type\":\"structure\",\"members\":{\"inputConfiguration\":{\"shape\":\"S2b\"},\"inputDefinition\":{\"shape\":\"S27\"}}}}}},\"DescribeLoggingOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/logging\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"loggingOptions\":{\"shape\":\"S2u\"}}}},\"GetDetectorModelAnalysisResults\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/analysis/detector-models/{analysisId}/results\"},\"input\":{\"type\":\"structure\",\"required\":[\"analysisId\"],\"members\":{\"analysisId\":{\"location\":\"uri\",\"locationName\":\"analysisId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"analysisResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"level\":{},\"message\":{},\"locations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"path\":{}}}}}}},\"nextToken\":{}}}},\"ListDetectorModelVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector-models/{detectorModelName}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\"],\"members\":{\"detectorModelName\":{\"location\":\"uri\",\"locationName\":\"detectorModelName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorModelVersionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"detectorModelName\":{},\"detectorModelVersion\":{},\"detectorModelArn\":{},\"roleArn\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"status\":{},\"evaluationMethod\":{}}}},\"nextToken\":{}}}},\"ListDetectorModels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detector-models\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorModelSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"detectorModelName\":{},\"detectorModelDescription\":{},\"creationTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListInputs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/inputs\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"inputSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"inputName\":{},\"inputDescription\":{},\"inputArn\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"status\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1u\"}}}},\"PutLoggingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/logging\"},\"input\":{\"type\":\"structure\",\"required\":[\"loggingOptions\"],\"members\":{\"loggingOptions\":{\"shape\":\"S2u\"}}}},\"StartDetectorModelAnalysis\":{\"http\":{\"requestUri\":\"/analysis/detector-models/\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelDefinition\"],\"members\":{\"detectorModelDefinition\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"analysisId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1u\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDetectorModel\":{\"http\":{\"requestUri\":\"/detector-models/{detectorModelName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\",\"detectorModelDefinition\",\"roleArn\"],\"members\":{\"detectorModelName\":{\"location\":\"uri\",\"locationName\":\"detectorModelName\"},\"detectorModelDefinition\":{\"shape\":\"S3\"},\"detectorModelDescription\":{},\"roleArn\":{},\"evaluationMethod\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorModelConfiguration\":{\"shape\":\"S20\"}}}},\"UpdateInput\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/inputs/{inputName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"inputName\",\"inputDefinition\"],\"members\":{\"inputName\":{\"location\":\"uri\",\"locationName\":\"inputName\"},\"inputDescription\":{},\"inputDefinition\":{\"shape\":\"S27\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"inputConfiguration\":{\"shape\":\"S2b\"}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"states\",\"initialStateName\"],\"members\":{\"states\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"stateName\"],\"members\":{\"stateName\":{},\"onInput\":{\"type\":\"structure\",\"members\":{\"events\":{\"shape\":\"S8\"},\"transitionEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"eventName\",\"condition\",\"nextState\"],\"members\":{\"eventName\":{},\"condition\":{},\"actions\":{\"shape\":\"Sc\"},\"nextState\":{}}}}}},\"onEnter\":{\"type\":\"structure\",\"members\":{\"events\":{\"shape\":\"S8\"}}},\"onExit\":{\"type\":\"structure\",\"members\":{\"events\":{\"shape\":\"S8\"}}}}}},\"initialStateName\":{}}},\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"eventName\"],\"members\":{\"eventName\":{},\"condition\":{},\"actions\":{\"shape\":\"Sc\"}}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"setVariable\":{\"type\":\"structure\",\"required\":[\"variableName\",\"value\"],\"members\":{\"variableName\":{},\"value\":{}}},\"sns\":{\"type\":\"structure\",\"required\":[\"targetArn\"],\"members\":{\"targetArn\":{},\"payload\":{\"shape\":\"Sj\"}}},\"iotTopicPublish\":{\"type\":\"structure\",\"required\":[\"mqttTopic\"],\"members\":{\"mqttTopic\":{},\"payload\":{\"shape\":\"Sj\"}}},\"setTimer\":{\"type\":\"structure\",\"required\":[\"timerName\"],\"members\":{\"timerName\":{},\"seconds\":{\"deprecated\":true,\"deprecatedMessage\":\"seconds is deprecated. You can use durationExpression for SetTimerAction. The value of seconds can be used as a string expression for durationExpression.\",\"type\":\"integer\"},\"durationExpression\":{}}},\"clearTimer\":{\"type\":\"structure\",\"required\":[\"timerName\"],\"members\":{\"timerName\":{}}},\"resetTimer\":{\"type\":\"structure\",\"required\":[\"timerName\"],\"members\":{\"timerName\":{}}},\"lambda\":{\"type\":\"structure\",\"required\":[\"functionArn\"],\"members\":{\"functionArn\":{},\"payload\":{\"shape\":\"Sj\"}}},\"iotEvents\":{\"type\":\"structure\",\"required\":[\"inputName\"],\"members\":{\"inputName\":{},\"payload\":{\"shape\":\"Sj\"}}},\"sqs\":{\"type\":\"structure\",\"required\":[\"queueUrl\"],\"members\":{\"queueUrl\":{},\"useBase64\":{\"type\":\"boolean\"},\"payload\":{\"shape\":\"Sj\"}}},\"firehose\":{\"type\":\"structure\",\"required\":[\"deliveryStreamName\"],\"members\":{\"deliveryStreamName\":{},\"separator\":{},\"payload\":{\"shape\":\"Sj\"}}},\"dynamoDB\":{\"type\":\"structure\",\"required\":[\"hashKeyField\",\"hashKeyValue\",\"tableName\"],\"members\":{\"hashKeyType\":{},\"hashKeyField\":{},\"hashKeyValue\":{},\"rangeKeyType\":{},\"rangeKeyField\":{},\"rangeKeyValue\":{},\"operation\":{},\"payloadField\":{},\"tableName\":{},\"payload\":{\"shape\":\"Sj\"}}},\"dynamoDBv2\":{\"type\":\"structure\",\"required\":[\"tableName\"],\"members\":{\"tableName\":{},\"payload\":{\"shape\":\"Sj\"}}},\"iotSiteWise\":{\"type\":\"structure\",\"required\":[\"propertyValue\"],\"members\":{\"entryId\":{},\"assetId\":{},\"propertyId\":{},\"propertyAlias\":{},\"propertyValue\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{\"type\":\"structure\",\"members\":{\"stringValue\":{},\"integerValue\":{},\"doubleValue\":{},\"booleanValue\":{}}},\"timestamp\":{\"type\":\"structure\",\"required\":[\"timeInSeconds\"],\"members\":{\"timeInSeconds\":{},\"offsetInNanos\":{}}},\"quality\":{}}}}}}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"contentExpression\",\"type\"],\"members\":{\"contentExpression\":{},\"type\":{}}},\"S1u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"S20\":{\"type\":\"structure\",\"members\":{\"detectorModelName\":{},\"detectorModelVersion\":{},\"detectorModelDescription\":{},\"detectorModelArn\":{},\"roleArn\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"status\":{},\"key\":{},\"evaluationMethod\":{}}},\"S27\":{\"type\":\"structure\",\"required\":[\"attributes\"],\"members\":{\"attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jsonPath\"],\"members\":{\"jsonPath\":{}}}}}},\"S2b\":{\"type\":\"structure\",\"required\":[\"inputName\",\"inputArn\",\"creationTime\",\"lastUpdateTime\",\"status\"],\"members\":{\"inputName\":{},\"inputDescription\":{},\"inputArn\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"},\"status\":{}}},\"S2u\":{\"type\":\"structure\",\"required\":[\"roleArn\",\"level\",\"enabled\"],\"members\":{\"roleArn\":{},\"level\":{},\"enabled\":{\"type\":\"boolean\"},\"detectorDebugOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"detectorModelName\"],\"members\":{\"detectorModelName\":{},\"keyValue\":{}}}}}}}}");

/***/ }),

/***/ 13523:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 14647:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-10-23\",\"endpointPrefix\":\"data.iotevents\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Events Data\",\"serviceId\":\"IoT Events Data\",\"signatureVersion\":\"v4\",\"signingName\":\"ioteventsdata\",\"uid\":\"iotevents-data-2018-10-23\"},\"operations\":{\"BatchPutMessage\":{\"http\":{\"requestUri\":\"/inputs/messages\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"messages\"],\"members\":{\"messages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"messageId\",\"inputName\",\"payload\"],\"members\":{\"messageId\":{},\"inputName\":{},\"payload\":{\"type\":\"blob\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"BatchPutMessageErrorEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"messageId\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"BatchUpdateDetector\":{\"http\":{\"requestUri\":\"/detectors\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"detectors\"],\"members\":{\"detectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"messageId\",\"detectorModelName\",\"state\"],\"members\":{\"messageId\":{},\"detectorModelName\":{},\"keyValue\":{},\"state\":{\"type\":\"structure\",\"required\":[\"stateName\",\"variables\",\"timers\"],\"members\":{\"stateName\":{},\"variables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{}}}},\"timers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"seconds\"],\"members\":{\"name\":{},\"seconds\":{\"type\":\"integer\"}}}}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"batchUpdateDetectorErrorEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"messageId\":{},\"errorCode\":{},\"errorMessage\":{}}}}}}},\"DescribeDetector\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detectors/{detectorModelName}/keyValues/\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\"],\"members\":{\"detectorModelName\":{\"location\":\"uri\",\"locationName\":\"detectorModelName\"},\"keyValue\":{\"location\":\"querystring\",\"locationName\":\"keyValue\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detector\":{\"type\":\"structure\",\"members\":{\"detectorModelName\":{},\"keyValue\":{},\"detectorModelVersion\":{},\"state\":{\"type\":\"structure\",\"required\":[\"stateName\",\"variables\",\"timers\"],\"members\":{\"stateName\":{},\"variables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{}}}},\"timers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"timestamp\"],\"members\":{\"name\":{},\"timestamp\":{\"type\":\"timestamp\"}}}}}},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"}}}}}},\"ListDetectors\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/detectors/{detectorModelName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"detectorModelName\"],\"members\":{\"detectorModelName\":{\"location\":\"uri\",\"locationName\":\"detectorModelName\"},\"stateName\":{\"location\":\"querystring\",\"locationName\":\"stateName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"detectorSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"detectorModelName\":{},\"keyValue\":{},\"detectorModelVersion\":{},\"state\":{\"type\":\"structure\",\"members\":{\"stateName\":{}}},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}}},\"shapes\":{}}");

/***/ }),

/***/ 12541:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 53518:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-11-03\",\"endpointPrefix\":\"api.fleethub.iot\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Fleet Hub\",\"serviceId\":\"IoTFleetHub\",\"signatureVersion\":\"v4\",\"signingName\":\"iotfleethub\",\"uid\":\"iotfleethub-2020-11-03\"},\"operations\":{\"CreateApplication\":{\"http\":{\"requestUri\":\"/applications\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"applicationName\",\"roleArn\"],\"members\":{\"applicationName\":{},\"applicationDescription\":{},\"clientToken\":{\"idempotencyToken\":true},\"roleArn\":{},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"applicationId\",\"applicationArn\"],\"members\":{\"applicationId\":{},\"applicationArn\":{}}}},\"DeleteApplication\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{applicationId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"applicationId\"],\"members\":{\"applicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeApplication\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{applicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"applicationId\"],\"members\":{\"applicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"applicationId\",\"applicationArn\",\"applicationName\",\"applicationUrl\",\"applicationState\",\"applicationCreationDate\",\"applicationLastUpdateDate\",\"roleArn\"],\"members\":{\"applicationId\":{},\"applicationArn\":{},\"applicationName\":{},\"applicationDescription\":{},\"applicationUrl\":{},\"applicationState\":{},\"applicationCreationDate\":{\"type\":\"long\"},\"applicationLastUpdateDate\":{\"type\":\"long\"},\"roleArn\":{},\"ssoClientId\":{},\"errorMessage\":{},\"tags\":{\"shape\":\"S6\"}}}},\"ListApplications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"applicationId\",\"applicationName\",\"applicationUrl\"],\"members\":{\"applicationId\":{},\"applicationName\":{},\"applicationDescription\":{},\"applicationUrl\":{},\"applicationCreationDate\":{\"type\":\"long\"},\"applicationLastUpdateDate\":{\"type\":\"long\"},\"applicationState\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S6\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApplication\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/applications/{applicationId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"applicationId\"],\"members\":{\"applicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"applicationName\":{},\"applicationDescription\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 90350:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplications\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"result_key\":\"applicationSummaries\"}}}");

/***/ }),

/***/ 47810:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-10-05\",\"endpointPrefix\":\"api.tunneling.iot\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS IoT Secure Tunneling\",\"serviceId\":\"IoTSecureTunneling\",\"signatureVersion\":\"v4\",\"signingName\":\"IoTSecuredTunneling\",\"targetPrefix\":\"IoTSecuredTunneling\",\"uid\":\"iotsecuretunneling-2018-10-05\"},\"operations\":{\"CloseTunnel\":{\"input\":{\"type\":\"structure\",\"required\":[\"tunnelId\"],\"members\":{\"tunnelId\":{},\"delete\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeTunnel\":{\"input\":{\"type\":\"structure\",\"required\":[\"tunnelId\"],\"members\":{\"tunnelId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tunnel\":{\"type\":\"structure\",\"members\":{\"tunnelId\":{},\"tunnelArn\":{},\"status\":{},\"sourceConnectionState\":{\"shape\":\"Sa\"},\"destinationConnectionState\":{\"shape\":\"Sa\"},\"description\":{},\"destinationConfig\":{\"shape\":\"Se\"},\"timeoutConfig\":{\"shape\":\"Si\"},\"tags\":{\"shape\":\"Sk\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sk\"}}}},\"ListTunnels\":{\"input\":{\"type\":\"structure\",\"members\":{\"thingName\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tunnelSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"tunnelId\":{},\"tunnelArn\":{},\"status\":{},\"description\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"OpenTunnel\":{\"input\":{\"type\":\"structure\",\"members\":{\"description\":{},\"tags\":{\"shape\":\"Sk\"},\"destinationConfig\":{\"shape\":\"Se\"},\"timeoutConfig\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tunnelId\":{},\"tunnelArn\":{},\"sourceAccessToken\":{\"shape\":\"Sz\"},\"destinationAccessToken\":{\"shape\":\"Sz\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sa\":{\"type\":\"structure\",\"members\":{\"status\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}},\"Se\":{\"type\":\"structure\",\"required\":[\"services\"],\"members\":{\"thingName\":{},\"services\":{\"type\":\"list\",\"member\":{}}}},\"Si\":{\"type\":\"structure\",\"members\":{\"maxLifetimeTimeoutMinutes\":{\"type\":\"integer\"}}},\"Sk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sz\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 16978:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListTunnels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 94166:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-12-02\",\"endpointPrefix\":\"iotsitewise\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT SiteWise\",\"serviceId\":\"IoTSiteWise\",\"signatureVersion\":\"v4\",\"signingName\":\"iotsitewise\",\"uid\":\"iotsitewise-2019-12-02\"},\"operations\":{\"AssociateAssets\":{\"http\":{\"requestUri\":\"/assets/{assetId}/associate\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\",\"hierarchyId\",\"childAssetId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"hierarchyId\":{},\"childAssetId\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"BatchAssociateProjectAssets\":{\"http\":{\"requestUri\":\"/projects/{projectId}/assets/associate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"assetIds\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"},\"assetIds\":{\"shape\":\"S5\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"BatchDisassociateProjectAssets\":{\"http\":{\"requestUri\":\"/projects/{projectId}/assets/disassociate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"assetIds\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"},\"assetIds\":{\"shape\":\"S5\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"errors\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"BatchPutAssetPropertyValue\":{\"http\":{\"requestUri\":\"/properties\"},\"input\":{\"type\":\"structure\",\"required\":[\"entries\"],\"members\":{\"entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"entryId\",\"propertyValues\"],\"members\":{\"entryId\":{},\"assetId\":{},\"propertyId\":{},\"propertyAlias\":{},\"propertyValues\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"errorEntries\"],\"members\":{\"errorEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"entryId\",\"errors\"],\"members\":{\"entryId\":{},\"errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"errorCode\",\"errorMessage\",\"timestamps\"],\"members\":{\"errorCode\":{},\"errorMessage\":{},\"timestamps\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}}}}}}},\"endpoint\":{\"hostPrefix\":\"data.\"}},\"CreateAccessPolicy\":{\"http\":{\"requestUri\":\"/access-policies\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"accessPolicyIdentity\",\"accessPolicyResource\",\"accessPolicyPermission\"],\"members\":{\"accessPolicyIdentity\":{\"shape\":\"S13\"},\"accessPolicyResource\":{\"shape\":\"S1a\"},\"accessPolicyPermission\":{},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"accessPolicyId\",\"accessPolicyArn\"],\"members\":{\"accessPolicyId\":{},\"accessPolicyArn\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"CreateAsset\":{\"http\":{\"requestUri\":\"/assets\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"assetName\",\"assetModelId\"],\"members\":{\"assetName\":{},\"assetModelId\":{},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetId\",\"assetArn\",\"assetStatus\"],\"members\":{\"assetId\":{},\"assetArn\":{},\"assetStatus\":{\"shape\":\"S1l\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"CreateAssetModel\":{\"http\":{\"requestUri\":\"/asset-models\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"assetModelName\"],\"members\":{\"assetModelName\":{},\"assetModelDescription\":{},\"assetModelProperties\":{\"shape\":\"S1r\"},\"assetModelHierarchies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"childAssetModelId\"],\"members\":{\"name\":{},\"childAssetModelId\":{}}}},\"assetModelCompositeModels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"type\"],\"members\":{\"name\":{},\"description\":{},\"type\":{},\"properties\":{\"shape\":\"S1r\"}}}},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetModelId\",\"assetModelArn\",\"assetModelStatus\"],\"members\":{\"assetModelId\":{},\"assetModelArn\":{},\"assetModelStatus\":{\"shape\":\"S2f\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"CreateDashboard\":{\"http\":{\"requestUri\":\"/dashboards\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"dashboardName\",\"dashboardDefinition\"],\"members\":{\"projectId\":{},\"dashboardName\":{},\"dashboardDescription\":{},\"dashboardDefinition\":{},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"dashboardId\",\"dashboardArn\"],\"members\":{\"dashboardId\":{},\"dashboardArn\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"CreateGateway\":{\"http\":{\"requestUri\":\"/20200301/gateways\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayName\",\"gatewayPlatform\"],\"members\":{\"gatewayName\":{},\"gatewayPlatform\":{\"shape\":\"S2l\"},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"gatewayArn\"],\"members\":{\"gatewayId\":{},\"gatewayArn\":{}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"CreatePortal\":{\"http\":{\"requestUri\":\"/portals\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"portalName\",\"portalContactEmail\",\"roleArn\"],\"members\":{\"portalName\":{},\"portalDescription\":{},\"portalContactEmail\":{},\"clientToken\":{\"idempotencyToken\":true},\"portalLogoImageFile\":{\"shape\":\"S2q\"},\"roleArn\":{},\"tags\":{\"shape\":\"S1e\"},\"portalAuthMode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"portalId\",\"portalArn\",\"portalStartUrl\",\"portalStatus\",\"ssoApplicationId\"],\"members\":{\"portalId\":{},\"portalArn\":{},\"portalStartUrl\":{},\"portalStatus\":{\"shape\":\"S2w\"},\"ssoApplicationId\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"CreateProject\":{\"http\":{\"requestUri\":\"/projects\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"portalId\",\"projectName\"],\"members\":{\"portalId\":{},\"projectName\":{},\"projectDescription\":{},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"projectId\",\"projectArn\"],\"members\":{\"projectId\":{},\"projectArn\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DeleteAccessPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/access-policies/{accessPolicyId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"accessPolicyId\"],\"members\":{\"accessPolicyId\":{\"location\":\"uri\",\"locationName\":\"accessPolicyId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DeleteAsset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/assets/{assetId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetStatus\"],\"members\":{\"assetStatus\":{\"shape\":\"S1l\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"DeleteAssetModel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/asset-models/{assetModelId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"assetModelId\"],\"members\":{\"assetModelId\":{\"location\":\"uri\",\"locationName\":\"assetModelId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetModelStatus\"],\"members\":{\"assetModelStatus\":{\"shape\":\"S2f\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"DeleteDashboard\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/dashboards/{dashboardId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"dashboardId\"],\"members\":{\"dashboardId\":{\"location\":\"uri\",\"locationName\":\"dashboardId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DeleteGateway\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/20200301/gateways/{gatewayId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayId\"],\"members\":{\"gatewayId\":{\"location\":\"uri\",\"locationName\":\"gatewayId\"}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"DeletePortal\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/portals/{portalId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"portalId\"],\"members\":{\"portalId\":{\"location\":\"uri\",\"locationName\":\"portalId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"portalStatus\"],\"members\":{\"portalStatus\":{\"shape\":\"S2w\"}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DeleteProject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/projects/{projectId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"},\"clientToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DescribeAccessPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/access-policies/{accessPolicyId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"accessPolicyId\"],\"members\":{\"accessPolicyId\":{\"location\":\"uri\",\"locationName\":\"accessPolicyId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"accessPolicyId\",\"accessPolicyArn\",\"accessPolicyIdentity\",\"accessPolicyResource\",\"accessPolicyPermission\",\"accessPolicyCreationDate\",\"accessPolicyLastUpdateDate\"],\"members\":{\"accessPolicyId\":{},\"accessPolicyArn\":{},\"accessPolicyIdentity\":{\"shape\":\"S13\"},\"accessPolicyResource\":{\"shape\":\"S1a\"},\"accessPolicyPermission\":{},\"accessPolicyCreationDate\":{\"type\":\"timestamp\"},\"accessPolicyLastUpdateDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DescribeAsset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets/{assetId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetId\",\"assetArn\",\"assetName\",\"assetModelId\",\"assetProperties\",\"assetHierarchies\",\"assetCreationDate\",\"assetLastUpdateDate\",\"assetStatus\"],\"members\":{\"assetId\":{},\"assetArn\":{},\"assetName\":{},\"assetModelId\":{},\"assetProperties\":{\"shape\":\"S3m\"},\"assetHierarchies\":{\"shape\":\"S3s\"},\"assetCompositeModels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"type\",\"properties\"],\"members\":{\"name\":{},\"description\":{},\"type\":{},\"properties\":{\"shape\":\"S3m\"}}}},\"assetCreationDate\":{\"type\":\"timestamp\"},\"assetLastUpdateDate\":{\"type\":\"timestamp\"},\"assetStatus\":{\"shape\":\"S1l\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"DescribeAssetModel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/asset-models/{assetModelId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetModelId\"],\"members\":{\"assetModelId\":{\"location\":\"uri\",\"locationName\":\"assetModelId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetModelId\",\"assetModelArn\",\"assetModelName\",\"assetModelDescription\",\"assetModelProperties\",\"assetModelHierarchies\",\"assetModelCreationDate\",\"assetModelLastUpdateDate\",\"assetModelStatus\"],\"members\":{\"assetModelId\":{},\"assetModelArn\":{},\"assetModelName\":{},\"assetModelDescription\":{},\"assetModelProperties\":{\"shape\":\"S3y\"},\"assetModelHierarchies\":{\"shape\":\"S40\"},\"assetModelCompositeModels\":{\"shape\":\"S42\"},\"assetModelCreationDate\":{\"type\":\"timestamp\"},\"assetModelLastUpdateDate\":{\"type\":\"timestamp\"},\"assetModelStatus\":{\"shape\":\"S2f\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"DescribeAssetProperty\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets/{assetId}/properties/{propertyId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\",\"propertyId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"propertyId\":{\"location\":\"uri\",\"locationName\":\"propertyId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetId\",\"assetName\",\"assetModelId\"],\"members\":{\"assetId\":{},\"assetName\":{},\"assetModelId\":{},\"assetProperty\":{\"shape\":\"S46\"},\"compositeModel\":{\"type\":\"structure\",\"required\":[\"name\",\"type\",\"assetProperty\"],\"members\":{\"name\":{},\"type\":{},\"assetProperty\":{\"shape\":\"S46\"}}}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"DescribeDashboard\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dashboards/{dashboardId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"dashboardId\"],\"members\":{\"dashboardId\":{\"location\":\"uri\",\"locationName\":\"dashboardId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"dashboardId\",\"dashboardArn\",\"dashboardName\",\"projectId\",\"dashboardDefinition\",\"dashboardCreationDate\",\"dashboardLastUpdateDate\"],\"members\":{\"dashboardId\":{},\"dashboardArn\":{},\"dashboardName\":{},\"projectId\":{},\"dashboardDescription\":{},\"dashboardDefinition\":{},\"dashboardCreationDate\":{\"type\":\"timestamp\"},\"dashboardLastUpdateDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DescribeDefaultEncryptionConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/configuration/account/encryption\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"encryptionType\",\"configurationStatus\"],\"members\":{\"encryptionType\":{},\"kmsKeyArn\":{},\"configurationStatus\":{\"shape\":\"S4d\"}}}},\"DescribeGateway\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/20200301/gateways/{gatewayId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayId\"],\"members\":{\"gatewayId\":{\"location\":\"uri\",\"locationName\":\"gatewayId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"gatewayName\",\"gatewayArn\",\"gatewayCapabilitySummaries\",\"creationDate\",\"lastUpdateDate\"],\"members\":{\"gatewayId\":{},\"gatewayName\":{},\"gatewayArn\":{},\"gatewayPlatform\":{\"shape\":\"S2l\"},\"gatewayCapabilitySummaries\":{\"shape\":\"S4i\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"DescribeGatewayCapabilityConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/20200301/gateways/{gatewayId}/capability/{capabilityNamespace}\"},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"capabilityNamespace\"],\"members\":{\"gatewayId\":{\"location\":\"uri\",\"locationName\":\"gatewayId\"},\"capabilityNamespace\":{\"location\":\"uri\",\"locationName\":\"capabilityNamespace\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"capabilityNamespace\",\"capabilityConfiguration\",\"capabilitySyncStatus\"],\"members\":{\"gatewayId\":{},\"capabilityNamespace\":{},\"capabilityConfiguration\":{},\"capabilitySyncStatus\":{}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"DescribeLoggingOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/logging\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"loggingOptions\"],\"members\":{\"loggingOptions\":{\"shape\":\"S4r\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"DescribePortal\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/portals/{portalId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"portalId\"],\"members\":{\"portalId\":{\"location\":\"uri\",\"locationName\":\"portalId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"portalId\",\"portalArn\",\"portalName\",\"portalClientId\",\"portalStartUrl\",\"portalContactEmail\",\"portalStatus\",\"portalCreationDate\",\"portalLastUpdateDate\"],\"members\":{\"portalId\":{},\"portalArn\":{},\"portalName\":{},\"portalDescription\":{},\"portalClientId\":{},\"portalStartUrl\":{},\"portalContactEmail\":{},\"portalStatus\":{\"shape\":\"S2w\"},\"portalCreationDate\":{\"type\":\"timestamp\"},\"portalLastUpdateDate\":{\"type\":\"timestamp\"},\"portalLogoImageLocation\":{\"type\":\"structure\",\"required\":[\"id\",\"url\"],\"members\":{\"id\":{},\"url\":{}}},\"roleArn\":{},\"portalAuthMode\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DescribeProject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{projectId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"projectId\",\"projectArn\",\"projectName\",\"portalId\",\"projectCreationDate\",\"projectLastUpdateDate\"],\"members\":{\"projectId\":{},\"projectArn\":{},\"projectName\":{},\"portalId\":{},\"projectDescription\":{},\"projectCreationDate\":{\"type\":\"timestamp\"},\"projectLastUpdateDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"DisassociateAssets\":{\"http\":{\"requestUri\":\"/assets/{assetId}/disassociate\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\",\"hierarchyId\",\"childAssetId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"hierarchyId\":{},\"childAssetId\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"GetAssetPropertyAggregates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/properties/aggregates\"},\"input\":{\"type\":\"structure\",\"required\":[\"aggregateTypes\",\"resolution\",\"startDate\",\"endDate\"],\"members\":{\"assetId\":{\"location\":\"querystring\",\"locationName\":\"assetId\"},\"propertyId\":{\"location\":\"querystring\",\"locationName\":\"propertyId\"},\"propertyAlias\":{\"location\":\"querystring\",\"locationName\":\"propertyAlias\"},\"aggregateTypes\":{\"location\":\"querystring\",\"locationName\":\"aggregateTypes\",\"type\":\"list\",\"member\":{}},\"resolution\":{\"location\":\"querystring\",\"locationName\":\"resolution\"},\"qualities\":{\"shape\":\"S54\",\"location\":\"querystring\",\"locationName\":\"qualities\"},\"startDate\":{\"location\":\"querystring\",\"locationName\":\"startDate\",\"type\":\"timestamp\"},\"endDate\":{\"location\":\"querystring\",\"locationName\":\"endDate\",\"type\":\"timestamp\"},\"timeOrdering\":{\"location\":\"querystring\",\"locationName\":\"timeOrdering\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"aggregatedValues\"],\"members\":{\"aggregatedValues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"timestamp\",\"value\"],\"members\":{\"timestamp\":{\"type\":\"timestamp\"},\"quality\":{},\"value\":{\"type\":\"structure\",\"members\":{\"average\":{\"type\":\"double\"},\"count\":{\"type\":\"double\"},\"maximum\":{\"type\":\"double\"},\"minimum\":{\"type\":\"double\"},\"sum\":{\"type\":\"double\"},\"standardDeviation\":{\"type\":\"double\"}}}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"data.\"}},\"GetAssetPropertyValue\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/properties/latest\"},\"input\":{\"type\":\"structure\",\"members\":{\"assetId\":{\"location\":\"querystring\",\"locationName\":\"assetId\"},\"propertyId\":{\"location\":\"querystring\",\"locationName\":\"propertyId\"},\"propertyAlias\":{\"location\":\"querystring\",\"locationName\":\"propertyAlias\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"propertyValue\":{\"shape\":\"Sk\"}}},\"endpoint\":{\"hostPrefix\":\"data.\"}},\"GetAssetPropertyValueHistory\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/properties/history\"},\"input\":{\"type\":\"structure\",\"members\":{\"assetId\":{\"location\":\"querystring\",\"locationName\":\"assetId\"},\"propertyId\":{\"location\":\"querystring\",\"locationName\":\"propertyId\"},\"propertyAlias\":{\"location\":\"querystring\",\"locationName\":\"propertyAlias\"},\"startDate\":{\"location\":\"querystring\",\"locationName\":\"startDate\",\"type\":\"timestamp\"},\"endDate\":{\"location\":\"querystring\",\"locationName\":\"endDate\",\"type\":\"timestamp\"},\"qualities\":{\"shape\":\"S54\",\"location\":\"querystring\",\"locationName\":\"qualities\"},\"timeOrdering\":{\"location\":\"querystring\",\"locationName\":\"timeOrdering\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetPropertyValueHistory\"],\"members\":{\"assetPropertyValueHistory\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"data.\"}},\"ListAccessPolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/access-policies\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"identityType\":{\"location\":\"querystring\",\"locationName\":\"identityType\"},\"identityId\":{\"location\":\"querystring\",\"locationName\":\"identityId\"},\"resourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"resourceId\":{\"location\":\"querystring\",\"locationName\":\"resourceId\"},\"iamArn\":{\"location\":\"querystring\",\"locationName\":\"iamArn\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"accessPolicySummaries\"],\"members\":{\"accessPolicySummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"identity\",\"resource\",\"permission\"],\"members\":{\"id\":{},\"identity\":{\"shape\":\"S13\"},\"resource\":{\"shape\":\"S1a\"},\"permission\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"ListAssetModels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/asset-models\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetModelSummaries\"],\"members\":{\"assetModelSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"arn\",\"name\",\"description\",\"creationDate\",\"lastUpdateDate\",\"status\"],\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"},\"status\":{\"shape\":\"S2f\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"ListAssetRelationships\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets/{assetId}/assetRelationships\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\",\"traversalType\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"traversalType\":{\"location\":\"querystring\",\"locationName\":\"traversalType\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetRelationshipSummaries\"],\"members\":{\"assetRelationshipSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"relationshipType\"],\"members\":{\"hierarchyInfo\":{\"type\":\"structure\",\"members\":{\"parentAssetId\":{},\"childAssetId\":{}}},\"relationshipType\":{}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"ListAssets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"assetModelId\":{\"location\":\"querystring\",\"locationName\":\"assetModelId\"},\"filter\":{\"location\":\"querystring\",\"locationName\":\"filter\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetSummaries\"],\"members\":{\"assetSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"arn\",\"name\",\"assetModelId\",\"creationDate\",\"lastUpdateDate\",\"status\",\"hierarchies\"],\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"assetModelId\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"},\"status\":{\"shape\":\"S1l\"},\"hierarchies\":{\"shape\":\"S3s\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"ListAssociatedAssets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets/{assetId}/hierarchies\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"hierarchyId\":{\"location\":\"querystring\",\"locationName\":\"hierarchyId\"},\"traversalDirection\":{\"location\":\"querystring\",\"locationName\":\"traversalDirection\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetSummaries\"],\"members\":{\"assetSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"arn\",\"name\",\"assetModelId\",\"creationDate\",\"lastUpdateDate\",\"status\",\"hierarchies\"],\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"assetModelId\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"},\"status\":{\"shape\":\"S1l\"},\"hierarchies\":{\"shape\":\"S3s\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"ListDashboards\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/dashboards\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"querystring\",\"locationName\":\"projectId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"dashboardSummaries\"],\"members\":{\"dashboardSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"name\"],\"members\":{\"id\":{},\"name\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"ListGateways\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/20200301/gateways\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"gatewaySummaries\"],\"members\":{\"gatewaySummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"gatewayName\",\"creationDate\",\"lastUpdateDate\"],\"members\":{\"gatewayId\":{},\"gatewayName\":{},\"gatewayCapabilitySummaries\":{\"shape\":\"S4i\"},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"ListPortals\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/portals\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"portalSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"startUrl\",\"status\"],\"members\":{\"id\":{},\"name\":{},\"description\":{},\"startUrl\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"},\"roleArn\":{},\"status\":{\"shape\":\"S2w\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"ListProjectAssets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects/{projectId}/assets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetIds\"],\"members\":{\"assetIds\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"ListProjects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"portalId\"],\"members\":{\"portalId\":{\"location\":\"querystring\",\"locationName\":\"portalId\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"projectSummaries\"],\"members\":{\"projectSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"name\"],\"members\":{\"id\":{},\"name\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"lastUpdateDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1e\"}}}},\"PutDefaultEncryptionConfiguration\":{\"http\":{\"requestUri\":\"/configuration/account/encryption\"},\"input\":{\"type\":\"structure\",\"required\":[\"encryptionType\"],\"members\":{\"encryptionType\":{},\"kmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"encryptionType\",\"configurationStatus\"],\"members\":{\"encryptionType\":{},\"kmsKeyArn\":{},\"configurationStatus\":{\"shape\":\"S4d\"}}}},\"PutLoggingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/logging\"},\"input\":{\"type\":\"structure\",\"required\":[\"loggingOptions\"],\"members\":{\"loggingOptions\":{\"shape\":\"S4r\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAccessPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/access-policies/{accessPolicyId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"accessPolicyId\",\"accessPolicyIdentity\",\"accessPolicyResource\",\"accessPolicyPermission\"],\"members\":{\"accessPolicyId\":{\"location\":\"uri\",\"locationName\":\"accessPolicyId\"},\"accessPolicyIdentity\":{\"shape\":\"S13\"},\"accessPolicyResource\":{\"shape\":\"S1a\"},\"accessPolicyPermission\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"UpdateAsset\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assets/{assetId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\",\"assetName\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"assetName\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetStatus\"],\"members\":{\"assetStatus\":{\"shape\":\"S1l\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"UpdateAssetModel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/asset-models/{assetModelId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"assetModelId\",\"assetModelName\"],\"members\":{\"assetModelId\":{\"location\":\"uri\",\"locationName\":\"assetModelId\"},\"assetModelName\":{},\"assetModelDescription\":{},\"assetModelProperties\":{\"shape\":\"S3y\"},\"assetModelHierarchies\":{\"shape\":\"S40\"},\"assetModelCompositeModels\":{\"shape\":\"S42\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"assetModelStatus\"],\"members\":{\"assetModelStatus\":{\"shape\":\"S2f\"}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"UpdateAssetProperty\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/assets/{assetId}/properties/{propertyId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"assetId\",\"propertyId\"],\"members\":{\"assetId\":{\"location\":\"uri\",\"locationName\":\"assetId\"},\"propertyId\":{\"location\":\"uri\",\"locationName\":\"propertyId\"},\"propertyAlias\":{},\"propertyNotificationState\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"endpoint\":{\"hostPrefix\":\"model.\"}},\"UpdateDashboard\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/dashboards/{dashboardId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"dashboardId\",\"dashboardName\",\"dashboardDefinition\"],\"members\":{\"dashboardId\":{\"location\":\"uri\",\"locationName\":\"dashboardId\"},\"dashboardName\":{},\"dashboardDescription\":{},\"dashboardDefinition\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"UpdateGateway\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/20200301/gateways/{gatewayId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"gatewayName\"],\"members\":{\"gatewayId\":{\"location\":\"uri\",\"locationName\":\"gatewayId\"},\"gatewayName\":{}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"UpdateGatewayCapabilityConfiguration\":{\"http\":{\"requestUri\":\"/20200301/gateways/{gatewayId}/capability\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"gatewayId\",\"capabilityNamespace\",\"capabilityConfiguration\"],\"members\":{\"gatewayId\":{\"location\":\"uri\",\"locationName\":\"gatewayId\"},\"capabilityNamespace\":{},\"capabilityConfiguration\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"capabilityNamespace\",\"capabilitySyncStatus\"],\"members\":{\"capabilityNamespace\":{},\"capabilitySyncStatus\":{}}},\"endpoint\":{\"hostPrefix\":\"edge.\"}},\"UpdatePortal\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/portals/{portalId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"portalId\",\"portalName\",\"portalContactEmail\",\"roleArn\"],\"members\":{\"portalId\":{\"location\":\"uri\",\"locationName\":\"portalId\"},\"portalName\":{},\"portalDescription\":{},\"portalContactEmail\":{},\"portalLogoImage\":{\"type\":\"structure\",\"members\":{\"id\":{},\"file\":{\"shape\":\"S2q\"}}},\"roleArn\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"portalStatus\"],\"members\":{\"portalStatus\":{\"shape\":\"S2w\"}}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}},\"UpdateProject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/projects/{projectId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\",\"projectName\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"},\"projectName\":{},\"projectDescription\":{},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"monitor.\"}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{}},\"S8\":{\"type\":\"structure\",\"required\":[\"assetId\",\"code\",\"message\"],\"members\":{\"assetId\":{},\"code\":{},\"message\":{}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"value\",\"timestamp\"],\"members\":{\"value\":{\"type\":\"structure\",\"members\":{\"stringValue\":{},\"integerValue\":{\"type\":\"integer\"},\"doubleValue\":{\"type\":\"double\"},\"booleanValue\":{\"type\":\"boolean\"}}},\"timestamp\":{\"shape\":\"Sq\"},\"quality\":{}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"timeInSeconds\"],\"members\":{\"timeInSeconds\":{\"type\":\"long\"},\"offsetInNanos\":{\"type\":\"integer\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"user\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"group\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"iamUser\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"iamRole\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}}}},\"S1a\":{\"type\":\"structure\",\"members\":{\"portal\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"project\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}}}},\"S1e\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1l\":{\"type\":\"structure\",\"required\":[\"state\"],\"members\":{\"state\":{},\"error\":{\"shape\":\"S1n\"}}},\"S1n\":{\"type\":\"structure\",\"required\":[\"code\",\"message\"],\"members\":{\"code\":{},\"message\":{}}},\"S1r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"dataType\",\"type\"],\"members\":{\"name\":{},\"dataType\":{},\"dataTypeSpec\":{},\"unit\":{},\"type\":{\"shape\":\"S1v\"}}}},\"S1v\":{\"type\":\"structure\",\"members\":{\"attribute\":{\"type\":\"structure\",\"members\":{\"defaultValue\":{}}},\"measurement\":{\"type\":\"structure\",\"members\":{}},\"transform\":{\"type\":\"structure\",\"required\":[\"expression\",\"variables\"],\"members\":{\"expression\":{},\"variables\":{\"shape\":\"S21\"}}},\"metric\":{\"type\":\"structure\",\"required\":[\"expression\",\"variables\",\"window\"],\"members\":{\"expression\":{},\"variables\":{\"shape\":\"S21\"},\"window\":{\"type\":\"structure\",\"members\":{\"tumbling\":{\"type\":\"structure\",\"required\":[\"interval\"],\"members\":{\"interval\":{}}}}}}}}},\"S21\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{\"type\":\"structure\",\"required\":[\"propertyId\"],\"members\":{\"propertyId\":{},\"hierarchyId\":{}}}}}},\"S2f\":{\"type\":\"structure\",\"required\":[\"state\"],\"members\":{\"state\":{},\"error\":{\"shape\":\"S1n\"}}},\"S2l\":{\"type\":\"structure\",\"required\":[\"greengrass\"],\"members\":{\"greengrass\":{\"type\":\"structure\",\"required\":[\"groupArn\"],\"members\":{\"groupArn\":{}}}}},\"S2q\":{\"type\":\"structure\",\"required\":[\"data\",\"type\"],\"members\":{\"data\":{\"type\":\"blob\"},\"type\":{}}},\"S2w\":{\"type\":\"structure\",\"required\":[\"state\"],\"members\":{\"state\":{},\"error\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{}}}}},\"S3m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"dataType\"],\"members\":{\"id\":{},\"name\":{},\"alias\":{},\"notification\":{\"shape\":\"S3p\"},\"dataType\":{},\"dataTypeSpec\":{},\"unit\":{}}}},\"S3p\":{\"type\":\"structure\",\"required\":[\"topic\",\"state\"],\"members\":{\"topic\":{},\"state\":{}}},\"S3s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"id\":{},\"name\":{}}}},\"S3y\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"dataType\",\"type\"],\"members\":{\"id\":{},\"name\":{},\"dataType\":{},\"dataTypeSpec\":{},\"unit\":{},\"type\":{\"shape\":\"S1v\"}}}},\"S40\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"childAssetModelId\"],\"members\":{\"id\":{},\"name\":{},\"childAssetModelId\":{}}}},\"S42\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"type\"],\"members\":{\"name\":{},\"description\":{},\"type\":{},\"properties\":{\"shape\":\"S3y\"}}}},\"S46\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"dataType\"],\"members\":{\"id\":{},\"name\":{},\"alias\":{},\"notification\":{\"shape\":\"S3p\"},\"dataType\":{},\"unit\":{},\"type\":{\"shape\":\"S1v\"}}},\"S4d\":{\"type\":\"structure\",\"required\":[\"state\"],\"members\":{\"state\":{},\"error\":{\"type\":\"structure\",\"required\":[\"code\",\"message\"],\"members\":{\"code\":{},\"message\":{}}}}},\"S4i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"capabilityNamespace\",\"capabilitySyncStatus\"],\"members\":{\"capabilityNamespace\":{},\"capabilitySyncStatus\":{}}}},\"S4r\":{\"type\":\"structure\",\"required\":[\"level\"],\"members\":{\"level\":{}}},\"S54\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 81755:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetAssetPropertyAggregates\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"aggregatedValues\"},\"GetAssetPropertyValueHistory\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assetPropertyValueHistory\"},\"ListAccessPolicies\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"accessPolicySummaries\"},\"ListAssetModels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assetModelSummaries\"},\"ListAssetRelationships\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assetRelationshipSummaries\"},\"ListAssets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assetSummaries\"},\"ListAssociatedAssets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assetSummaries\"},\"ListDashboards\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"dashboardSummaries\"},\"ListGateways\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"gatewaySummaries\"},\"ListPortals\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"portalSummaries\"},\"ListProjectAssets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"assetIds\"},\"ListProjects\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"projectSummaries\"}}}");

/***/ }),

/***/ 4197:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"AssetModelNotExists\":{\"delay\":3,\"maxAttempts\":20,\"operation\":\"DescribeAssetModel\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\"}]},\"AssetModelActive\":{\"delay\":3,\"maxAttempts\":20,\"operation\":\"DescribeAssetModel\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"assetModelStatus.state\",\"expected\":\"ACTIVE\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"assetModelStatus.state\",\"expected\":\"FAILED\"}]},\"AssetNotExists\":{\"delay\":3,\"maxAttempts\":20,\"operation\":\"DescribeAsset\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\"}]},\"AssetActive\":{\"delay\":3,\"maxAttempts\":20,\"operation\":\"DescribeAsset\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"assetStatus.state\",\"expected\":\"ACTIVE\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"assetStatus.state\",\"expected\":\"FAILED\"}]},\"PortalNotExists\":{\"delay\":3,\"maxAttempts\":20,\"operation\":\"DescribePortal\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\"}]},\"PortalActive\":{\"delay\":3,\"maxAttempts\":20,\"operation\":\"DescribePortal\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"portalStatus.state\",\"expected\":\"ACTIVE\"}]}}}");

/***/ }),

/***/ 6038:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-09-06\",\"endpointPrefix\":\"iotthingsgraph\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS IoT Things Graph\",\"serviceId\":\"IoTThingsGraph\",\"signatureVersion\":\"v4\",\"signingName\":\"iotthingsgraph\",\"targetPrefix\":\"IotThingsGraphFrontEndService\",\"uid\":\"iotthingsgraph-2018-09-06\"},\"operations\":{\"AssociateEntityToThing\":{\"input\":{\"type\":\"structure\",\"required\":[\"thingName\",\"entityId\"],\"members\":{\"thingName\":{},\"entityId\":{},\"namespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateFlowTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"definition\"],\"members\":{\"definition\":{\"shape\":\"S7\"},\"compatibleNamespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sb\"}}}},\"CreateSystemInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"definition\",\"target\"],\"members\":{\"tags\":{\"shape\":\"Sf\"},\"definition\":{\"shape\":\"S7\"},\"target\":{},\"greengrassGroupName\":{},\"s3BucketName\":{},\"metricsConfiguration\":{\"shape\":\"Sm\"},\"flowActionsRoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sq\"}}}},\"CreateSystemTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"definition\"],\"members\":{\"definition\":{\"shape\":\"S7\"},\"compatibleNamespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sw\"}}}},\"DeleteFlowTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteNamespace\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"namespaceArn\":{},\"namespaceName\":{}}}},\"DeleteSystemInstance\":{\"input\":{\"type\":\"structure\",\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSystemTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeploySystemInstance\":{\"input\":{\"type\":\"structure\",\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"summary\"],\"members\":{\"summary\":{\"shape\":\"Sq\"},\"greengrassDeploymentId\":{}}}},\"DeprecateFlowTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeprecateSystemTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeNamespace\":{\"input\":{\"type\":\"structure\",\"members\":{\"namespaceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"namespaceArn\":{},\"namespaceName\":{},\"trackingNamespaceName\":{},\"trackingNamespaceVersion\":{\"type\":\"long\"},\"namespaceVersion\":{\"type\":\"long\"}}}},\"DissociateEntityFromThing\":{\"input\":{\"type\":\"structure\",\"required\":[\"thingName\",\"entityType\"],\"members\":{\"thingName\":{},\"entityType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"ids\"],\"members\":{\"ids\":{\"type\":\"list\",\"member\":{}},\"namespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"descriptions\":{\"shape\":\"S1l\"}}}},\"GetFlowTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"revisionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"description\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sb\"},\"definition\":{\"shape\":\"S7\"},\"validatedNamespaceVersion\":{\"type\":\"long\"}}}}}},\"GetFlowTemplateRevisions\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"shape\":\"S1u\"},\"nextToken\":{}}}},\"GetNamespaceDeletionStatus\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"namespaceArn\":{},\"namespaceName\":{},\"status\":{},\"errorCode\":{},\"errorMessage\":{}}}},\"GetSystemInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"description\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sq\"},\"definition\":{\"shape\":\"S7\"},\"s3BucketName\":{},\"metricsConfiguration\":{\"shape\":\"Sm\"},\"validatedNamespaceVersion\":{\"type\":\"long\"},\"validatedDependencyRevisions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"revisionNumber\":{\"type\":\"long\"}}}},\"flowActionsRoleArn\":{}}}}}},\"GetSystemTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"revisionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"description\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sw\"},\"definition\":{\"shape\":\"S7\"},\"validatedNamespaceVersion\":{\"type\":\"long\"}}}}}},\"GetSystemTemplateRevisions\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\"],\"members\":{\"id\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"shape\":\"S2a\"},\"nextToken\":{}}}},\"GetUploadStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"uploadId\"],\"members\":{\"uploadId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"uploadId\",\"uploadStatus\",\"createdDate\"],\"members\":{\"uploadId\":{},\"uploadStatus\":{},\"namespaceArn\":{},\"namespaceName\":{},\"namespaceVersion\":{\"type\":\"long\"},\"failureReason\":{\"type\":\"list\",\"member\":{}},\"createdDate\":{\"type\":\"timestamp\"}}}},\"ListFlowExecutionMessages\":{\"input\":{\"type\":\"structure\",\"required\":[\"flowExecutionId\"],\"members\":{\"flowExecutionId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"messages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"messageId\":{},\"eventType\":{},\"timestamp\":{\"type\":\"timestamp\"},\"payload\":{}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"maxResults\":{\"type\":\"integer\"},\"resourceArn\":{},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sf\"},\"nextToken\":{}}}},\"SearchEntities\":{\"input\":{\"type\":\"structure\",\"required\":[\"entityTypes\"],\"members\":{\"entityTypes\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"namespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"descriptions\":{\"shape\":\"S1l\"},\"nextToken\":{}}}},\"SearchFlowExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"systemInstanceId\"],\"members\":{\"systemInstanceId\":{},\"flowExecutionId\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"flowExecutionId\":{},\"status\":{},\"systemInstanceId\":{},\"flowTemplateId\":{},\"createdAt\":{\"type\":\"timestamp\"},\"updatedAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"SearchFlowTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"shape\":\"S1u\"},\"nextToken\":{}}}},\"SearchSystemInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}},\"nextToken\":{}}}},\"SearchSystemTemplates\":{\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"value\"],\"members\":{\"name\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summaries\":{\"shape\":\"S2a\"},\"nextToken\":{}}}},\"SearchThings\":{\"input\":{\"type\":\"structure\",\"required\":[\"entityId\"],\"members\":{\"entityId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"namespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"things\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"thingArn\":{},\"thingName\":{}}}},\"nextToken\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UndeploySystemInstance\":{\"input\":{\"type\":\"structure\",\"members\":{\"id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sq\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFlowTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"definition\"],\"members\":{\"id\":{},\"definition\":{\"shape\":\"S7\"},\"compatibleNamespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sb\"}}}},\"UpdateSystemTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"id\",\"definition\"],\"members\":{\"id\":{},\"definition\":{\"shape\":\"S7\"},\"compatibleNamespaceVersion\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"summary\":{\"shape\":\"Sw\"}}}},\"UploadEntityDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"document\":{\"shape\":\"S7\"},\"syncWithPublicNamespace\":{\"type\":\"boolean\"},\"deprecateExistingEntities\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"uploadId\"],\"members\":{\"uploadId\":{}}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"required\":[\"language\",\"text\"],\"members\":{\"language\":{},\"text\":{}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"revisionNumber\":{\"type\":\"long\"},\"createdAt\":{\"type\":\"timestamp\"}}},\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"cloudMetricEnabled\":{\"type\":\"boolean\"},\"metricRuleRoleArn\":{}}},\"Sq\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"status\":{},\"target\":{},\"greengrassGroupName\":{},\"createdAt\":{\"type\":\"timestamp\"},\"updatedAt\":{\"type\":\"timestamp\"},\"greengrassGroupId\":{},\"greengrassGroupVersionId\":{}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"revisionNumber\":{\"type\":\"long\"},\"createdAt\":{\"type\":\"timestamp\"}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"type\":{},\"createdAt\":{\"type\":\"timestamp\"},\"definition\":{\"shape\":\"S7\"}}}},\"S1u\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}},\"S2a\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}}}}");

/***/ }),

/***/ 91296:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetFlowTemplateRevisions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"GetSystemTemplateRevisions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"ListFlowExecutionMessages\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"messages\"},\"ListTagsForResource\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"tags\"},\"SearchEntities\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"descriptions\"},\"SearchFlowExecutions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"SearchFlowTemplates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"SearchSystemInstances\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"SearchSystemTemplates\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"summaries\"},\"SearchThings\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"things\"}}}");

/***/ }),

/***/ 44396:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-11-22\",\"endpointPrefix\":\"api.iotwireless\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS IoT Wireless\",\"serviceId\":\"IoT Wireless\",\"signatureVersion\":\"v4\",\"signingName\":\"iotwireless\",\"uid\":\"iotwireless-2020-11-22\"},\"operations\":{\"AssociateAwsAccountWithPartnerAccount\":{\"http\":{\"requestUri\":\"/partner-accounts\"},\"input\":{\"type\":\"structure\",\"required\":[\"Sidewalk\"],\"members\":{\"Sidewalk\":{\"shape\":\"S2\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sidewalk\":{\"shape\":\"S2\"},\"Arn\":{}}}},\"AssociateWirelessDeviceWithThing\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/wireless-devices/{Id}/thing\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"ThingArn\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"ThingArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateWirelessGatewayWithCertificate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/wireless-gateways/{Id}/certificate\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IotCertificateId\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"IotCertificateId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IotCertificateId\":{}}}},\"AssociateWirelessGatewayWithThing\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/wireless-gateways/{Id}/thing\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"ThingArn\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"ThingArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDestination\":{\"http\":{\"requestUri\":\"/destinations\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ExpressionType\",\"Expression\",\"RoleArn\"],\"members\":{\"Name\":{},\"ExpressionType\":{},\"Expression\":{},\"Description\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S6\"},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{}}}},\"CreateDeviceProfile\":{\"http\":{\"requestUri\":\"/device-profiles\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"LoRaWAN\":{\"shape\":\"Sw\"},\"Tags\":{\"shape\":\"S6\"},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{}}}},\"CreateServiceProfile\":{\"http\":{\"requestUri\":\"/service-profiles\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"AddGwMetadata\":{\"type\":\"boolean\"}}},\"Tags\":{\"shape\":\"S6\"},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{}}}},\"CreateWirelessDevice\":{\"http\":{\"requestUri\":\"/wireless-devices\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Type\",\"DestinationName\"],\"members\":{\"Type\":{},\"Name\":{},\"Description\":{},\"DestinationName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"LoRaWAN\":{\"shape\":\"S1u\"},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{}}}},\"CreateWirelessGateway\":{\"http\":{\"requestUri\":\"/wireless-gateways\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"LoRaWAN\"],\"members\":{\"Name\":{},\"Description\":{},\"LoRaWAN\":{\"shape\":\"S2g\"},\"Tags\":{\"shape\":\"S6\"},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{}}}},\"CreateWirelessGatewayTask\":{\"http\":{\"requestUri\":\"/wireless-gateways/{Id}/tasks\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"WirelessGatewayTaskDefinitionId\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"WirelessGatewayTaskDefinitionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WirelessGatewayTaskDefinitionId\":{},\"Status\":{}}}},\"CreateWirelessGatewayTaskDefinition\":{\"http\":{\"requestUri\":\"/wireless-gateway-task-definitions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AutoCreateTasks\"],\"members\":{\"AutoCreateTasks\":{\"type\":\"boolean\"},\"Name\":{},\"Update\":{\"shape\":\"S2r\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{}}}},\"DeleteDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/destinations/{Name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDeviceProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/device-profiles/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteServiceProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/service-profiles/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWirelessDevice\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-devices/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWirelessGateway\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-gateways/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWirelessGatewayTask\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-gateways/{Id}/tasks\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWirelessGatewayTaskDefinition\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-gateway-task-definitions/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateAwsAccountFromPartnerAccount\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/partner-accounts/{PartnerAccountId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"PartnerAccountId\",\"PartnerType\"],\"members\":{\"PartnerAccountId\":{\"location\":\"uri\",\"locationName\":\"PartnerAccountId\"},\"PartnerType\":{\"location\":\"querystring\",\"locationName\":\"partnerType\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateWirelessDeviceFromThing\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-devices/{Id}/thing\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateWirelessGatewayFromCertificate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-gateways/{Id}/certificate\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateWirelessGatewayFromThing\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/wireless-gateways/{Id}/thing\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetDestination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/destinations/{Name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Expression\":{},\"ExpressionType\":{},\"Description\":{},\"RoleArn\":{}}}},\"GetDeviceProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/device-profiles/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Id\":{},\"LoRaWAN\":{\"shape\":\"Sw\"}}}},\"GetPartnerAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/partner-accounts/{PartnerAccountId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PartnerAccountId\",\"PartnerType\"],\"members\":{\"PartnerAccountId\":{\"location\":\"uri\",\"locationName\":\"PartnerAccountId\"},\"PartnerType\":{\"location\":\"querystring\",\"locationName\":\"partnerType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sidewalk\":{\"shape\":\"S3w\"},\"AccountLinked\":{\"type\":\"boolean\"}}}},\"GetServiceEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/service-endpoint\"},\"input\":{\"type\":\"structure\",\"members\":{\"ServiceType\":{\"location\":\"querystring\",\"locationName\":\"serviceType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceType\":{},\"ServiceEndpoint\":{},\"ServerTrust\":{}}}},\"GetServiceProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/service-profiles/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Id\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"UlRate\":{\"type\":\"integer\"},\"UlBucketSize\":{\"type\":\"integer\"},\"UlRatePolicy\":{},\"DlRate\":{\"type\":\"integer\"},\"DlBucketSize\":{\"type\":\"integer\"},\"DlRatePolicy\":{},\"AddGwMetadata\":{\"type\":\"boolean\"},\"DevStatusReqFreq\":{\"type\":\"integer\"},\"ReportDevStatusBattery\":{\"type\":\"boolean\"},\"ReportDevStatusMargin\":{\"type\":\"boolean\"},\"DrMin\":{\"type\":\"integer\"},\"DrMax\":{\"type\":\"integer\"},\"ChannelMask\":{},\"PrAllowed\":{\"type\":\"boolean\"},\"HrAllowed\":{\"type\":\"boolean\"},\"RaAllowed\":{\"type\":\"boolean\"},\"NwkGeoLoc\":{\"type\":\"boolean\"},\"TargetPer\":{\"type\":\"integer\"},\"MinGwDiversity\":{\"type\":\"integer\"}}}}}},\"GetWirelessDevice\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-devices/{Identifier}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Identifier\",\"IdentifierType\"],\"members\":{\"Identifier\":{\"location\":\"uri\",\"locationName\":\"Identifier\"},\"IdentifierType\":{\"location\":\"querystring\",\"locationName\":\"identifierType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Name\":{},\"Description\":{},\"DestinationName\":{},\"Id\":{},\"Arn\":{},\"ThingName\":{},\"ThingArn\":{},\"LoRaWAN\":{\"shape\":\"S1u\"},\"Sidewalk\":{\"type\":\"structure\",\"members\":{\"SidewalkId\":{},\"SidewalkManufacturingSn\":{},\"DeviceCertificates\":{\"shape\":\"S4x\"}}}}}},\"GetWirelessDeviceStatistics\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-devices/{Id}/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"WirelessDeviceId\"],\"members\":{\"WirelessDeviceId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WirelessDeviceId\":{},\"LastUplinkReceivedAt\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"DevEui\":{},\"FPort\":{\"type\":\"integer\"},\"DataRate\":{\"type\":\"integer\"},\"Frequency\":{\"type\":\"integer\"},\"Timestamp\":{},\"Gateways\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GatewayEui\":{},\"Snr\":{\"type\":\"double\"},\"Rssi\":{\"type\":\"double\"}}}}}},\"Sidewalk\":{\"type\":\"structure\",\"members\":{\"Rssi\":{\"type\":\"integer\"},\"BatteryLevel\":{},\"Event\":{},\"DeviceState\":{}}}}}},\"GetWirelessGateway\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateways/{Identifier}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Identifier\",\"IdentifierType\"],\"members\":{\"Identifier\":{\"location\":\"uri\",\"locationName\":\"Identifier\"},\"IdentifierType\":{\"location\":\"querystring\",\"locationName\":\"identifierType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Description\":{},\"LoRaWAN\":{\"shape\":\"S2g\"},\"Arn\":{},\"ThingName\":{},\"ThingArn\":{}}}},\"GetWirelessGatewayCertificate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateways/{Id}/certificate\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IotCertificateId\":{},\"LoRaWANNetworkServerCertificateId\":{}}}},\"GetWirelessGatewayFirmwareInformation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateways/{Id}/firmware-information\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"CurrentVersion\":{\"shape\":\"S2w\"}}}}}},\"GetWirelessGatewayStatistics\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateways/{Id}/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"WirelessGatewayId\"],\"members\":{\"WirelessGatewayId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WirelessGatewayId\":{},\"LastUplinkReceivedAt\":{},\"ConnectionStatus\":{}}}},\"GetWirelessGatewayTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateways/{Id}/tasks\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WirelessGatewayId\":{},\"WirelessGatewayTaskDefinitionId\":{},\"LastUplinkReceivedAt\":{},\"TaskCreatedAt\":{},\"Status\":{}}}},\"GetWirelessGatewayTaskDefinition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateway-task-definitions/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutoCreateTasks\":{\"type\":\"boolean\"},\"Name\":{},\"Update\":{\"shape\":\"S2r\"},\"Arn\":{}}}},\"ListDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/destinations\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DestinationList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"ExpressionType\":{},\"Expression\":{},\"Description\":{},\"RoleArn\":{}}}}}}},\"ListDeviceProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/device-profiles\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DeviceProfileList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Id\":{}}}}}}},\"ListPartnerAccounts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/partner-accounts\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Sidewalk\":{\"type\":\"list\",\"member\":{\"shape\":\"S3w\"}}}}},\"ListServiceProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/service-profiles\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ServiceProfileList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Id\":{}}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6\"}}}},\"ListWirelessDevices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-devices\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"DestinationName\":{\"location\":\"querystring\",\"locationName\":\"destinationName\"},\"DeviceProfileId\":{\"location\":\"querystring\",\"locationName\":\"deviceProfileId\"},\"ServiceProfileId\":{\"location\":\"querystring\",\"locationName\":\"serviceProfileId\"},\"WirelessDeviceType\":{\"location\":\"querystring\",\"locationName\":\"wirelessDeviceType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"WirelessDeviceList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{},\"Type\":{},\"Name\":{},\"DestinationName\":{},\"LastUplinkReceivedAt\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"DevEui\":{}}},\"Sidewalk\":{\"type\":\"structure\",\"members\":{\"AmazonId\":{},\"SidewalkId\":{},\"SidewalkManufacturingSn\":{},\"DeviceCertificates\":{\"shape\":\"S4x\"}}}}}}}}},\"ListWirelessGatewayTaskDefinitions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateway-task-definitions\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"TaskDefinitionType\":{\"location\":\"querystring\",\"locationName\":\"taskDefinitionType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"TaskDefinitions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"CurrentVersion\":{\"shape\":\"S2w\"},\"UpdateVersion\":{\"shape\":\"S2w\"}}},\"Arn\":{}}}}}}},\"ListWirelessGateways\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/wireless-gateways\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"WirelessGatewayList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{},\"Name\":{},\"Description\":{},\"LoRaWAN\":{\"shape\":\"S2g\"},\"LastUplinkReceivedAt\":{}}}}}}},\"SendDataToWirelessDevice\":{\"http\":{\"requestUri\":\"/wireless-devices/{Id}/data\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"TransmitMode\",\"PayloadData\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"TransmitMode\":{\"type\":\"integer\"},\"PayloadData\":{},\"WirelessMetadata\":{\"type\":\"structure\",\"members\":{\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"FPort\":{\"type\":\"integer\"}}},\"Sidewalk\":{\"type\":\"structure\",\"members\":{\"Seq\":{\"type\":\"integer\"}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TestWirelessDevice\":{\"http\":{\"requestUri\":\"/wireless-devices/{Id}/test\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Result\":{}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDestination\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/destinations/{Name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"},\"ExpressionType\":{},\"Expression\":{},\"Description\":{},\"RoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePartnerAccount\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/partner-accounts/{PartnerAccountId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Sidewalk\",\"PartnerAccountId\",\"PartnerType\"],\"members\":{\"Sidewalk\":{\"type\":\"structure\",\"members\":{\"AppServerPrivateKey\":{\"shape\":\"S4\"}}},\"PartnerAccountId\":{\"location\":\"uri\",\"locationName\":\"PartnerAccountId\"},\"PartnerType\":{\"location\":\"querystring\",\"locationName\":\"partnerType\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateWirelessDevice\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/wireless-devices/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"DestinationName\":{},\"Name\":{},\"Description\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"DeviceProfileId\":{},\"ServiceProfileId\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateWirelessGateway\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/wireless-gateways/{Id}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Name\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"members\":{\"AmazonId\":{},\"AppServerPrivateKey\":{\"shape\":\"S4\"}}},\"S4\":{\"type\":\"string\",\"sensitive\":true},\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"SupportsClassB\":{\"type\":\"boolean\"},\"ClassBTimeout\":{\"type\":\"integer\"},\"PingSlotPeriod\":{\"type\":\"integer\"},\"PingSlotDr\":{\"type\":\"integer\"},\"PingSlotFreq\":{\"type\":\"integer\"},\"SupportsClassC\":{\"type\":\"boolean\"},\"ClassCTimeout\":{\"type\":\"integer\"},\"MacVersion\":{},\"RegParamsRevision\":{},\"RxDelay1\":{\"type\":\"integer\"},\"RxDrOffset1\":{\"type\":\"integer\"},\"RxDataRate2\":{\"type\":\"integer\"},\"RxFreq2\":{\"type\":\"integer\"},\"FactoryPresetFreqsList\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"MaxEirp\":{\"type\":\"integer\"},\"MaxDutyCycle\":{\"type\":\"integer\"},\"RfRegion\":{},\"SupportsJoin\":{\"type\":\"boolean\"},\"Supports32BitFCnt\":{\"type\":\"boolean\"}}},\"S1u\":{\"type\":\"structure\",\"members\":{\"DevEui\":{},\"DeviceProfileId\":{},\"ServiceProfileId\":{},\"OtaaV1_1\":{\"type\":\"structure\",\"members\":{\"AppKey\":{},\"NwkKey\":{},\"JoinEui\":{}}},\"OtaaV1_0_x\":{\"type\":\"structure\",\"members\":{\"AppKey\":{},\"AppEui\":{}}},\"AbpV1_1\":{\"type\":\"structure\",\"members\":{\"DevAddr\":{},\"SessionKeys\":{\"type\":\"structure\",\"members\":{\"FNwkSIntKey\":{},\"SNwkSIntKey\":{},\"NwkSEncKey\":{},\"AppSKey\":{}}}}},\"AbpV1_0_x\":{\"type\":\"structure\",\"members\":{\"DevAddr\":{},\"SessionKeys\":{\"type\":\"structure\",\"members\":{\"NwkSKey\":{},\"AppSKey\":{}}}}}}},\"S2g\":{\"type\":\"structure\",\"members\":{\"GatewayEui\":{},\"RfRegion\":{}}},\"S2r\":{\"type\":\"structure\",\"members\":{\"UpdateDataSource\":{},\"UpdateDataRole\":{},\"LoRaWAN\":{\"type\":\"structure\",\"members\":{\"UpdateSignature\":{},\"SigKeyCrc\":{\"type\":\"long\"},\"CurrentVersion\":{\"shape\":\"S2w\"},\"UpdateVersion\":{\"shape\":\"S2w\"}}}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"PackageVersion\":{},\"Model\":{},\"Station\":{}}},\"S3w\":{\"type\":\"structure\",\"members\":{\"AmazonId\":{},\"Fingerprint\":{\"type\":\"string\",\"sensitive\":true},\"Arn\":{}}},\"S4x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SigningAlg\",\"Value\"],\"members\":{\"SigningAlg\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 31164:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDestinations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDeviceProfiles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListServiceProfiles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWirelessDevices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWirelessGateways\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 41816:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-07-14\",\"endpointPrefix\":\"ivs\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon IVS\",\"serviceFullName\":\"Amazon Interactive Video Service\",\"serviceId\":\"ivs\",\"signatureVersion\":\"v4\",\"signingName\":\"ivs\",\"uid\":\"ivs-2020-07-14\"},\"operations\":{\"BatchGetChannel\":{\"http\":{\"requestUri\":\"/BatchGetChannel\"},\"input\":{\"type\":\"structure\",\"required\":[\"arns\"],\"members\":{\"arns\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"channels\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"errors\":{\"shape\":\"Sh\"}}}},\"BatchGetStreamKey\":{\"http\":{\"requestUri\":\"/BatchGetStreamKey\"},\"input\":{\"type\":\"structure\",\"required\":[\"arns\"],\"members\":{\"arns\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"streamKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"errors\":{\"shape\":\"Sh\"}}}},\"CreateChannel\":{\"http\":{\"requestUri\":\"/CreateChannel\"},\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"latencyMode\":{},\"type\":{},\"authorized\":{\"type\":\"boolean\"},\"recordingConfigurationArn\":{},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"channel\":{\"shape\":\"S6\"},\"streamKey\":{\"shape\":\"Sr\"}}}},\"CreateRecordingConfiguration\":{\"http\":{\"requestUri\":\"/CreateRecordingConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"destinationConfiguration\"],\"members\":{\"name\":{},\"destinationConfiguration\":{\"shape\":\"Sy\"},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"recordingConfiguration\":{\"shape\":\"S12\"}}}},\"CreateStreamKey\":{\"http\":{\"requestUri\":\"/CreateStreamKey\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelArn\"],\"members\":{\"channelArn\":{},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"streamKey\":{\"shape\":\"Sr\"}}}},\"DeleteChannel\":{\"http\":{\"requestUri\":\"/DeleteChannel\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}}},\"DeletePlaybackKeyPair\":{\"http\":{\"requestUri\":\"/DeletePlaybackKeyPair\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRecordingConfiguration\":{\"http\":{\"requestUri\":\"/DeleteRecordingConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}}},\"DeleteStreamKey\":{\"http\":{\"requestUri\":\"/DeleteStreamKey\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}}},\"GetChannel\":{\"http\":{\"requestUri\":\"/GetChannel\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"channel\":{\"shape\":\"S6\"}}}},\"GetPlaybackKeyPair\":{\"http\":{\"requestUri\":\"/GetPlaybackKeyPair\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"keyPair\":{\"shape\":\"S1h\"}}}},\"GetRecordingConfiguration\":{\"http\":{\"requestUri\":\"/GetRecordingConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"recordingConfiguration\":{\"shape\":\"S12\"}}}},\"GetStream\":{\"http\":{\"requestUri\":\"/GetStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelArn\"],\"members\":{\"channelArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"stream\":{\"type\":\"structure\",\"members\":{\"channelArn\":{},\"playbackUrl\":{},\"startTime\":{\"shape\":\"S1p\"},\"state\":{},\"health\":{},\"viewerCount\":{\"type\":\"long\"}}}}}},\"GetStreamKey\":{\"http\":{\"requestUri\":\"/GetStreamKey\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"streamKey\":{\"shape\":\"Sr\"}}}},\"ImportPlaybackKeyPair\":{\"http\":{\"requestUri\":\"/ImportPlaybackKeyPair\"},\"input\":{\"type\":\"structure\",\"required\":[\"publicKeyMaterial\"],\"members\":{\"publicKeyMaterial\":{},\"name\":{},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"keyPair\":{\"shape\":\"S1h\"}}}},\"ListChannels\":{\"http\":{\"requestUri\":\"/ListChannels\"},\"input\":{\"type\":\"structure\",\"members\":{\"filterByName\":{},\"filterByRecordingConfigurationArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"channels\"],\"members\":{\"channels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"latencyMode\":{},\"authorized\":{\"type\":\"boolean\"},\"recordingConfigurationArn\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListPlaybackKeyPairs\":{\"http\":{\"requestUri\":\"/ListPlaybackKeyPairs\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"keyPairs\"],\"members\":{\"keyPairs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListRecordingConfigurations\":{\"http\":{\"requestUri\":\"/ListRecordingConfigurations\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"recordingConfigurations\"],\"members\":{\"recordingConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"arn\",\"destinationConfiguration\",\"state\"],\"members\":{\"arn\":{},\"name\":{},\"destinationConfiguration\":{\"shape\":\"Sy\"},\"state\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListStreamKeys\":{\"http\":{\"requestUri\":\"/ListStreamKeys\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelArn\"],\"members\":{\"channelArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"streamKeys\"],\"members\":{\"streamKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"channelArn\":{},\"tags\":{\"shape\":\"Se\"}}}},\"nextToken\":{}}}},\"ListStreams\":{\"http\":{\"requestUri\":\"/ListStreams\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"streams\"],\"members\":{\"streams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"channelArn\":{},\"state\":{},\"health\":{},\"viewerCount\":{\"type\":\"long\"},\"startTime\":{\"shape\":\"S1p\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"tags\"],\"members\":{\"tags\":{\"shape\":\"Se\"},\"nextToken\":{}}}},\"PutMetadata\":{\"http\":{\"requestUri\":\"/PutMetadata\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelArn\",\"metadata\"],\"members\":{\"channelArn\":{},\"metadata\":{}}}},\"StopStream\":{\"http\":{\"requestUri\":\"/StopStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"channelArn\"],\"members\":{\"channelArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateChannel\":{\"http\":{\"requestUri\":\"/UpdateChannel\"},\"input\":{\"type\":\"structure\",\"required\":[\"arn\"],\"members\":{\"arn\":{},\"name\":{},\"latencyMode\":{},\"type\":{},\"authorized\":{\"type\":\"boolean\"},\"recordingConfigurationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"channel\":{\"shape\":\"S6\"}}}}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"latencyMode\":{},\"type\":{},\"recordingConfigurationArn\":{},\"ingestEndpoint\":{},\"playbackUrl\":{},\"authorized\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"Se\"}}},\"Se\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"code\":{},\"message\":{}}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"value\":{},\"channelArn\":{},\"tags\":{\"shape\":\"Se\"}}},\"Sy\":{\"type\":\"structure\",\"members\":{\"s3\":{\"type\":\"structure\",\"required\":[\"bucketName\"],\"members\":{\"bucketName\":{}}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"arn\",\"destinationConfiguration\",\"state\"],\"members\":{\"arn\":{},\"name\":{},\"destinationConfiguration\":{\"shape\":\"Sy\"},\"state\":{},\"tags\":{\"shape\":\"Se\"}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"fingerprint\":{},\"tags\":{\"shape\":\"Se\"}}},\"S1p\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 38184:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListChannels\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"channels\"},\"ListPlaybackKeyPairs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"keyPairs\"},\"ListRecordingConfigurations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"recordingConfigurations\"},\"ListStreamKeys\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"streamKeys\"},\"ListStreams\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"streams\"},\"ListTagsForResource\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 52315:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-11-14\",\"endpointPrefix\":\"kafka\",\"signingName\":\"kafka\",\"serviceFullName\":\"Managed Streaming for Kafka\",\"serviceAbbreviation\":\"Kafka\",\"serviceId\":\"Kafka\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"kafka-2018-11-14\",\"signatureVersion\":\"v4\"},\"operations\":{\"BatchAssociateScramSecret\":{\"http\":{\"requestUri\":\"/v1/clusters/{clusterArn}/scram-secrets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"SecretArnList\":{\"shape\":\"S3\",\"locationName\":\"secretArnList\"}},\"required\":[\"ClusterArn\",\"SecretArnList\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"UnprocessedScramSecrets\":{\"shape\":\"S5\",\"locationName\":\"unprocessedScramSecrets\"}}}},\"CreateCluster\":{\"http\":{\"requestUri\":\"/v1/clusters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerNodeGroupInfo\":{\"shape\":\"S8\",\"locationName\":\"brokerNodeGroupInfo\"},\"ClientAuthentication\":{\"shape\":\"Se\",\"locationName\":\"clientAuthentication\"},\"ClusterName\":{\"locationName\":\"clusterName\"},\"ConfigurationInfo\":{\"shape\":\"Sk\",\"locationName\":\"configurationInfo\"},\"EncryptionInfo\":{\"shape\":\"Sm\",\"locationName\":\"encryptionInfo\"},\"EnhancedMonitoring\":{\"locationName\":\"enhancedMonitoring\"},\"OpenMonitoring\":{\"shape\":\"Sr\",\"locationName\":\"openMonitoring\"},\"KafkaVersion\":{\"locationName\":\"kafkaVersion\"},\"LoggingInfo\":{\"shape\":\"Sw\",\"locationName\":\"loggingInfo\"},\"NumberOfBrokerNodes\":{\"locationName\":\"numberOfBrokerNodes\",\"type\":\"integer\"},\"Tags\":{\"shape\":\"S12\",\"locationName\":\"tags\"}},\"required\":[\"BrokerNodeGroupInfo\",\"KafkaVersion\",\"NumberOfBrokerNodes\",\"ClusterName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterName\":{\"locationName\":\"clusterName\"},\"State\":{\"locationName\":\"state\"}}}},\"CreateConfiguration\":{\"http\":{\"requestUri\":\"/v1/configurations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"KafkaVersions\":{\"shape\":\"S3\",\"locationName\":\"kafkaVersions\"},\"Name\":{\"locationName\":\"name\"},\"ServerProperties\":{\"locationName\":\"serverProperties\",\"type\":\"blob\"}},\"required\":[\"ServerProperties\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"LatestRevision\":{\"shape\":\"S19\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"},\"State\":{\"locationName\":\"state\"}}}},\"DeleteCluster\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/clusters/{clusterArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"CurrentVersion\":{\"location\":\"querystring\",\"locationName\":\"currentVersion\"}},\"required\":[\"ClusterArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"State\":{\"locationName\":\"state\"}}}},\"DeleteConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/configurations/{arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"State\":{\"locationName\":\"state\"}}}},\"DescribeCluster\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/clusters/{clusterArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"}},\"required\":[\"ClusterArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterInfo\":{\"shape\":\"S1h\",\"locationName\":\"clusterInfo\"}}}},\"DescribeClusterOperation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/operations/{clusterOperationArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterOperationArn\":{\"location\":\"uri\",\"locationName\":\"clusterOperationArn\"}},\"required\":[\"ClusterOperationArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterOperationInfo\":{\"shape\":\"S1r\",\"locationName\":\"clusterOperationInfo\"}}}},\"DescribeConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations/{arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"arn\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"KafkaVersions\":{\"shape\":\"S3\",\"locationName\":\"kafkaVersions\"},\"LatestRevision\":{\"shape\":\"S19\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"},\"State\":{\"locationName\":\"state\"}}}},\"DescribeConfigurationRevision\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations/{arn}/revisions/{revision}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"arn\"},\"Revision\":{\"location\":\"uri\",\"locationName\":\"revision\",\"type\":\"long\"}},\"required\":[\"Revision\",\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"Revision\":{\"locationName\":\"revision\",\"type\":\"long\"},\"ServerProperties\":{\"locationName\":\"serverProperties\",\"type\":\"blob\"}}}},\"BatchDisassociateScramSecret\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/v1/clusters/{clusterArn}/scram-secrets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"SecretArnList\":{\"shape\":\"S3\",\"locationName\":\"secretArnList\"}},\"required\":[\"ClusterArn\",\"SecretArnList\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"UnprocessedScramSecrets\":{\"shape\":\"S5\",\"locationName\":\"unprocessedScramSecrets\"}}}},\"GetBootstrapBrokers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/clusters/{clusterArn}/bootstrap-brokers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"}},\"required\":[\"ClusterArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BootstrapBrokerString\":{\"locationName\":\"bootstrapBrokerString\"},\"BootstrapBrokerStringTls\":{\"locationName\":\"bootstrapBrokerStringTls\"},\"BootstrapBrokerStringSaslScram\":{\"locationName\":\"bootstrapBrokerStringSaslScram\"}}}},\"GetCompatibleKafkaVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/compatible-kafka-versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"querystring\",\"locationName\":\"clusterArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CompatibleKafkaVersions\":{\"locationName\":\"compatibleKafkaVersions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceVersion\":{\"locationName\":\"sourceVersion\"},\"TargetVersions\":{\"shape\":\"S3\",\"locationName\":\"targetVersions\"}}}}}}},\"ListClusterOperations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/clusters/{clusterArn}/operations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ClusterArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterOperationInfoList\":{\"locationName\":\"clusterOperationInfoList\",\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListClusters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/clusters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterNameFilter\":{\"location\":\"querystring\",\"locationName\":\"clusterNameFilter\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterInfoList\":{\"locationName\":\"clusterInfoList\",\"type\":\"list\",\"member\":{\"shape\":\"S1h\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListConfigurationRevisions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations/{arn}/revisions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"arn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Revisions\":{\"locationName\":\"revisions\",\"type\":\"list\",\"member\":{\"shape\":\"S19\"}}}}},\"ListConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configurations\":{\"locationName\":\"configurations\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"KafkaVersions\":{\"shape\":\"S3\",\"locationName\":\"kafkaVersions\"},\"LatestRevision\":{\"shape\":\"S19\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"},\"State\":{\"locationName\":\"state\"}},\"required\":[\"Description\",\"LatestRevision\",\"CreationTime\",\"KafkaVersions\",\"Arn\",\"Name\",\"State\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListKafkaVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/kafka-versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KafkaVersions\":{\"locationName\":\"kafkaVersions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Version\":{\"locationName\":\"version\"},\"Status\":{\"locationName\":\"status\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListNodes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/clusters/{clusterArn}/nodes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ClusterArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"NodeInfoList\":{\"locationName\":\"nodeInfoList\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AddedToClusterTime\":{\"locationName\":\"addedToClusterTime\"},\"BrokerNodeInfo\":{\"locationName\":\"brokerNodeInfo\",\"type\":\"structure\",\"members\":{\"AttachedENIId\":{\"locationName\":\"attachedENIId\"},\"BrokerId\":{\"locationName\":\"brokerId\",\"type\":\"double\"},\"ClientSubnet\":{\"locationName\":\"clientSubnet\"},\"ClientVpcIpAddress\":{\"locationName\":\"clientVpcIpAddress\"},\"CurrentBrokerSoftwareInfo\":{\"shape\":\"S1i\",\"locationName\":\"currentBrokerSoftwareInfo\"},\"Endpoints\":{\"shape\":\"S3\",\"locationName\":\"endpoints\"}}},\"InstanceType\":{\"locationName\":\"instanceType\"},\"NodeARN\":{\"locationName\":\"nodeARN\"},\"NodeType\":{\"locationName\":\"nodeType\"},\"ZookeeperNodeInfo\":{\"locationName\":\"zookeeperNodeInfo\",\"type\":\"structure\",\"members\":{\"AttachedENIId\":{\"locationName\":\"attachedENIId\"},\"ClientVpcIpAddress\":{\"locationName\":\"clientVpcIpAddress\"},\"Endpoints\":{\"shape\":\"S3\",\"locationName\":\"endpoints\"},\"ZookeeperId\":{\"locationName\":\"zookeeperId\",\"type\":\"double\"},\"ZookeeperVersion\":{\"locationName\":\"zookeeperVersion\"}}}}}}}}},\"ListScramSecrets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/clusters/{clusterArn}/scram-secrets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ClusterArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"SecretArnList\":{\"shape\":\"S3\",\"locationName\":\"secretArnList\"}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S12\",\"locationName\":\"tags\"}}}},\"RebootBroker\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/reboot-broker\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerIds\":{\"shape\":\"S3\",\"locationName\":\"brokerIds\"},\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"}},\"required\":[\"ClusterArn\",\"BrokerIds\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v1/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"S12\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\",\"Tags\"]}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"shape\":\"S3\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateBrokerCount\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/nodes/count\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"},\"TargetNumberOfBrokerNodes\":{\"locationName\":\"targetNumberOfBrokerNodes\",\"type\":\"integer\"}},\"required\":[\"ClusterArn\",\"CurrentVersion\",\"TargetNumberOfBrokerNodes\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}},\"UpdateBrokerType\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/nodes/type\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"},\"TargetInstanceType\":{\"locationName\":\"targetInstanceType\"}},\"required\":[\"ClusterArn\",\"CurrentVersion\",\"TargetInstanceType\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}},\"UpdateBrokerStorage\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/nodes/storage\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"},\"TargetBrokerEBSVolumeInfo\":{\"shape\":\"S1x\",\"locationName\":\"targetBrokerEBSVolumeInfo\"}},\"required\":[\"ClusterArn\",\"TargetBrokerEBSVolumeInfo\",\"CurrentVersion\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}},\"UpdateConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/configurations/{arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"ServerProperties\":{\"locationName\":\"serverProperties\",\"type\":\"blob\"}},\"required\":[\"Arn\",\"ServerProperties\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"LatestRevision\":{\"shape\":\"S19\",\"locationName\":\"latestRevision\"}}}},\"UpdateClusterConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"ConfigurationInfo\":{\"shape\":\"Sk\",\"locationName\":\"configurationInfo\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"}},\"required\":[\"ClusterArn\",\"CurrentVersion\",\"ConfigurationInfo\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}},\"UpdateClusterKafkaVersion\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/version\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"ConfigurationInfo\":{\"shape\":\"Sk\",\"locationName\":\"configurationInfo\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"},\"TargetKafkaVersion\":{\"locationName\":\"targetKafkaVersion\"}},\"required\":[\"ClusterArn\",\"TargetKafkaVersion\",\"CurrentVersion\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}},\"UpdateMonitoring\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/clusters/{clusterArn}/monitoring\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"location\":\"uri\",\"locationName\":\"clusterArn\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"},\"EnhancedMonitoring\":{\"locationName\":\"enhancedMonitoring\"},\"OpenMonitoring\":{\"shape\":\"Sr\",\"locationName\":\"openMonitoring\"},\"LoggingInfo\":{\"shape\":\"Sw\",\"locationName\":\"loggingInfo\"}},\"required\":[\"ClusterArn\",\"CurrentVersion\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterOperationArn\":{\"locationName\":\"clusterOperationArn\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{}},\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{\"locationName\":\"errorCode\"},\"ErrorMessage\":{\"locationName\":\"errorMessage\"},\"SecretArn\":{\"locationName\":\"secretArn\"}}}},\"S8\":{\"type\":\"structure\",\"members\":{\"BrokerAZDistribution\":{\"locationName\":\"brokerAZDistribution\"},\"ClientSubnets\":{\"shape\":\"S3\",\"locationName\":\"clientSubnets\"},\"InstanceType\":{\"locationName\":\"instanceType\"},\"SecurityGroups\":{\"shape\":\"S3\",\"locationName\":\"securityGroups\"},\"StorageInfo\":{\"locationName\":\"storageInfo\",\"type\":\"structure\",\"members\":{\"EbsStorageInfo\":{\"locationName\":\"ebsStorageInfo\",\"type\":\"structure\",\"members\":{\"VolumeSize\":{\"locationName\":\"volumeSize\",\"type\":\"integer\"}}}}}},\"required\":[\"ClientSubnets\",\"InstanceType\"]},\"Se\":{\"type\":\"structure\",\"members\":{\"Sasl\":{\"locationName\":\"sasl\",\"type\":\"structure\",\"members\":{\"Scram\":{\"locationName\":\"scram\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}}}}},\"Tls\":{\"locationName\":\"tls\",\"type\":\"structure\",\"members\":{\"CertificateAuthorityArnList\":{\"shape\":\"S3\",\"locationName\":\"certificateAuthorityArnList\"}}}}},\"Sk\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Revision\":{\"locationName\":\"revision\",\"type\":\"long\"}},\"required\":[\"Revision\",\"Arn\"]},\"Sm\":{\"type\":\"structure\",\"members\":{\"EncryptionAtRest\":{\"locationName\":\"encryptionAtRest\",\"type\":\"structure\",\"members\":{\"DataVolumeKMSKeyId\":{\"locationName\":\"dataVolumeKMSKeyId\"}},\"required\":[\"DataVolumeKMSKeyId\"]},\"EncryptionInTransit\":{\"locationName\":\"encryptionInTransit\",\"type\":\"structure\",\"members\":{\"ClientBroker\":{\"locationName\":\"clientBroker\"},\"InCluster\":{\"locationName\":\"inCluster\",\"type\":\"boolean\"}}}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"Prometheus\":{\"locationName\":\"prometheus\",\"type\":\"structure\",\"members\":{\"JmxExporter\":{\"locationName\":\"jmxExporter\",\"type\":\"structure\",\"members\":{\"EnabledInBroker\":{\"locationName\":\"enabledInBroker\",\"type\":\"boolean\"}},\"required\":[\"EnabledInBroker\"]},\"NodeExporter\":{\"locationName\":\"nodeExporter\",\"type\":\"structure\",\"members\":{\"EnabledInBroker\":{\"locationName\":\"enabledInBroker\",\"type\":\"boolean\"}},\"required\":[\"EnabledInBroker\"]}}}},\"required\":[\"Prometheus\"]},\"Sw\":{\"type\":\"structure\",\"members\":{\"BrokerLogs\":{\"locationName\":\"brokerLogs\",\"type\":\"structure\",\"members\":{\"CloudWatchLogs\":{\"locationName\":\"cloudWatchLogs\",\"type\":\"structure\",\"members\":{\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"},\"LogGroup\":{\"locationName\":\"logGroup\"}},\"required\":[\"Enabled\"]},\"Firehose\":{\"locationName\":\"firehose\",\"type\":\"structure\",\"members\":{\"DeliveryStream\":{\"locationName\":\"deliveryStream\"},\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"}},\"required\":[\"Enabled\"]},\"S3\":{\"locationName\":\"s3\",\"type\":\"structure\",\"members\":{\"Bucket\":{\"locationName\":\"bucket\"},\"Enabled\":{\"locationName\":\"enabled\",\"type\":\"boolean\"},\"Prefix\":{\"locationName\":\"prefix\"}},\"required\":[\"Enabled\"]}}}},\"required\":[\"BrokerLogs\"]},\"S12\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S18\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S19\":{\"type\":\"structure\",\"members\":{\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"Revision\":{\"locationName\":\"revision\",\"type\":\"long\"}},\"required\":[\"Revision\",\"CreationTime\"]},\"S1h\":{\"type\":\"structure\",\"members\":{\"ActiveOperationArn\":{\"locationName\":\"activeOperationArn\"},\"BrokerNodeGroupInfo\":{\"shape\":\"S8\",\"locationName\":\"brokerNodeGroupInfo\"},\"ClientAuthentication\":{\"shape\":\"Se\",\"locationName\":\"clientAuthentication\"},\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"ClusterName\":{\"locationName\":\"clusterName\"},\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"CurrentBrokerSoftwareInfo\":{\"shape\":\"S1i\",\"locationName\":\"currentBrokerSoftwareInfo\"},\"CurrentVersion\":{\"locationName\":\"currentVersion\"},\"EncryptionInfo\":{\"shape\":\"Sm\",\"locationName\":\"encryptionInfo\"},\"EnhancedMonitoring\":{\"locationName\":\"enhancedMonitoring\"},\"OpenMonitoring\":{\"shape\":\"S1j\",\"locationName\":\"openMonitoring\"},\"LoggingInfo\":{\"shape\":\"Sw\",\"locationName\":\"loggingInfo\"},\"NumberOfBrokerNodes\":{\"locationName\":\"numberOfBrokerNodes\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"StateInfo\":{\"locationName\":\"stateInfo\",\"type\":\"structure\",\"members\":{\"Code\":{\"locationName\":\"code\"},\"Message\":{\"locationName\":\"message\"}}},\"Tags\":{\"shape\":\"S12\",\"locationName\":\"tags\"},\"ZookeeperConnectString\":{\"locationName\":\"zookeeperConnectString\"},\"ZookeeperConnectStringTls\":{\"locationName\":\"zookeeperConnectStringTls\"}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"ConfigurationArn\":{\"locationName\":\"configurationArn\"},\"ConfigurationRevision\":{\"locationName\":\"configurationRevision\",\"type\":\"long\"},\"KafkaVersion\":{\"locationName\":\"kafkaVersion\"}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"Prometheus\":{\"locationName\":\"prometheus\",\"type\":\"structure\",\"members\":{\"JmxExporter\":{\"locationName\":\"jmxExporter\",\"type\":\"structure\",\"members\":{\"EnabledInBroker\":{\"locationName\":\"enabledInBroker\",\"type\":\"boolean\"}},\"required\":[\"EnabledInBroker\"]},\"NodeExporter\":{\"locationName\":\"nodeExporter\",\"type\":\"structure\",\"members\":{\"EnabledInBroker\":{\"locationName\":\"enabledInBroker\",\"type\":\"boolean\"}},\"required\":[\"EnabledInBroker\"]}}}},\"required\":[\"Prometheus\"]},\"S1r\":{\"type\":\"structure\",\"members\":{\"ClientRequestId\":{\"locationName\":\"clientRequestId\"},\"ClusterArn\":{\"locationName\":\"clusterArn\"},\"CreationTime\":{\"shape\":\"S18\",\"locationName\":\"creationTime\"},\"EndTime\":{\"shape\":\"S18\",\"locationName\":\"endTime\"},\"ErrorInfo\":{\"locationName\":\"errorInfo\",\"type\":\"structure\",\"members\":{\"ErrorCode\":{\"locationName\":\"errorCode\"},\"ErrorString\":{\"locationName\":\"errorString\"}}},\"OperationArn\":{\"locationName\":\"operationArn\"},\"OperationState\":{\"locationName\":\"operationState\"},\"OperationSteps\":{\"locationName\":\"operationSteps\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StepInfo\":{\"locationName\":\"stepInfo\",\"type\":\"structure\",\"members\":{\"StepStatus\":{\"locationName\":\"stepStatus\"}}},\"StepName\":{\"locationName\":\"stepName\"}}}},\"OperationType\":{\"locationName\":\"operationType\"},\"SourceClusterInfo\":{\"shape\":\"S1w\",\"locationName\":\"sourceClusterInfo\"},\"TargetClusterInfo\":{\"shape\":\"S1w\",\"locationName\":\"targetClusterInfo\"}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"BrokerEBSVolumeInfo\":{\"shape\":\"S1x\",\"locationName\":\"brokerEBSVolumeInfo\"},\"ConfigurationInfo\":{\"shape\":\"Sk\",\"locationName\":\"configurationInfo\"},\"NumberOfBrokerNodes\":{\"locationName\":\"numberOfBrokerNodes\",\"type\":\"integer\"},\"EnhancedMonitoring\":{\"locationName\":\"enhancedMonitoring\"},\"OpenMonitoring\":{\"shape\":\"S1j\",\"locationName\":\"openMonitoring\"},\"KafkaVersion\":{\"locationName\":\"kafkaVersion\"},\"LoggingInfo\":{\"shape\":\"Sw\",\"locationName\":\"loggingInfo\"},\"InstanceType\":{\"locationName\":\"instanceType\"}}},\"S1x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"KafkaBrokerNodeId\":{\"locationName\":\"kafkaBrokerNodeId\"},\"VolumeSizeGB\":{\"locationName\":\"volumeSizeGB\",\"type\":\"integer\"}},\"required\":[\"VolumeSizeGB\",\"KafkaBrokerNodeId\"]}}}}");

/***/ }),

/***/ 71066:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListClusters\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ClusterInfoList\"},\"ListConfigurations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Configurations\"},\"ListKafkaVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"KafkaVersions\"},\"ListNodes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"NodeInfoList\"},\"ListClusterOperations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ClusterOperationInfoList\"},\"ListConfigurationRevisions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Revisions\"},\"ListScramSecrets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"SecretArnList\"}}}");

/***/ }),

/***/ 61785:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-02-03\",\"endpointPrefix\":\"kendra\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"kendra\",\"serviceFullName\":\"AWSKendraFrontendService\",\"serviceId\":\"kendra\",\"signatureVersion\":\"v4\",\"signingName\":\"kendra\",\"targetPrefix\":\"AWSKendraFrontendService\",\"uid\":\"kendra-2019-02-03\"},\"operations\":{\"BatchDeleteDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\",\"DocumentIdList\"],\"members\":{\"IndexId\":{},\"DocumentIdList\":{\"type\":\"list\",\"member\":{}},\"DataSourceSyncJobMetricTarget\":{\"type\":\"structure\",\"required\":[\"DataSourceId\",\"DataSourceSyncJobId\"],\"members\":{\"DataSourceId\":{},\"DataSourceSyncJobId\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedDocuments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"BatchPutDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\",\"Documents\"],\"members\":{\"IndexId\":{},\"RoleArn\":{},\"Documents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Title\":{},\"Blob\":{\"type\":\"blob\"},\"S3Path\":{\"shape\":\"Sj\"},\"Attributes\":{\"shape\":\"Sm\"},\"AccessControlList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\",\"Access\"],\"members\":{\"Name\":{},\"Type\":{},\"Access\":{}}}},\"ContentType\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedDocuments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"CreateDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"IndexId\",\"Type\"],\"members\":{\"Name\":{},\"IndexId\":{},\"Type\":{},\"Configuration\":{\"shape\":\"S17\"},\"Description\":{},\"Schedule\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S3q\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}}},\"CreateFaq\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\",\"Name\",\"S3Path\",\"RoleArn\"],\"members\":{\"IndexId\":{},\"Name\":{},\"Description\":{},\"S3Path\":{\"shape\":\"Sj\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S3q\"},\"FileFormat\":{},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{}}}},\"CreateIndex\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"RoleArn\"],\"members\":{\"Name\":{},\"Edition\":{},\"RoleArn\":{},\"ServerSideEncryptionConfiguration\":{\"shape\":\"S44\"},\"Description\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S3q\"},\"UserTokenConfigurations\":{\"shape\":\"S46\"},\"UserContextPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{}}}},\"CreateThesaurus\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\",\"Name\",\"RoleArn\",\"SourceS3Path\"],\"members\":{\"IndexId\":{},\"Name\":{},\"Description\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S3q\"},\"SourceS3Path\":{\"shape\":\"Sj\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{}}}},\"DeleteDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}}},\"DeleteFaq\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}}},\"DeleteIndex\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}}},\"DeleteThesaurus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}}},\"DescribeDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"IndexId\":{},\"Name\":{},\"Type\":{},\"Configuration\":{\"shape\":\"S17\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"Description\":{},\"Status\":{},\"Schedule\":{},\"RoleArn\":{},\"ErrorMessage\":{}}}},\"DescribeFaq\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"IndexId\":{},\"Name\":{},\"Description\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"S3Path\":{\"shape\":\"Sj\"},\"Status\":{},\"RoleArn\":{},\"ErrorMessage\":{},\"FileFormat\":{}}}},\"DescribeIndex\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Edition\":{},\"RoleArn\":{},\"ServerSideEncryptionConfiguration\":{\"shape\":\"S44\"},\"Status\":{},\"Description\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"DocumentMetadataConfigurations\":{\"shape\":\"S4y\"},\"IndexStatistics\":{\"type\":\"structure\",\"required\":[\"FaqStatistics\",\"TextDocumentStatistics\"],\"members\":{\"FaqStatistics\":{\"type\":\"structure\",\"required\":[\"IndexedQuestionAnswersCount\"],\"members\":{\"IndexedQuestionAnswersCount\":{\"type\":\"integer\"}}},\"TextDocumentStatistics\":{\"type\":\"structure\",\"required\":[\"IndexedTextDocumentsCount\",\"IndexedTextBytes\"],\"members\":{\"IndexedTextDocumentsCount\":{\"type\":\"integer\"},\"IndexedTextBytes\":{\"type\":\"long\"}}}}},\"ErrorMessage\":{},\"CapacityUnits\":{\"shape\":\"S5g\"},\"UserTokenConfigurations\":{\"shape\":\"S46\"},\"UserContextPolicy\":{}}}},\"DescribeThesaurus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"IndexId\":{},\"Name\":{},\"Description\":{},\"Status\":{},\"ErrorMessage\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"RoleArn\":{},\"SourceS3Path\":{\"shape\":\"Sj\"},\"FileSizeBytes\":{\"type\":\"long\"},\"TermCount\":{\"type\":\"long\"},\"SynonymRuleCount\":{\"type\":\"long\"}}}},\"ListDataSourceSyncJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"StartTimeFilter\":{\"type\":\"structure\",\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"StatusFilter\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"History\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ExecutionId\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Status\":{},\"ErrorMessage\":{},\"ErrorCode\":{},\"DataSourceErrorCode\":{},\"Metrics\":{\"type\":\"structure\",\"members\":{\"DocumentsAdded\":{},\"DocumentsModified\":{},\"DocumentsDeleted\":{},\"DocumentsFailed\":{},\"DocumentsScanned\":{}}}}}},\"NextToken\":{}}}},\"ListDataSources\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\"],\"members\":{\"IndexId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Type\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"Status\":{}}}},\"NextToken\":{}}}},\"ListFaqs\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\"],\"members\":{\"IndexId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FaqSummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"FileFormat\":{}}}}}}},\"ListIndices\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IndexConfigurationSummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreatedAt\",\"UpdatedAt\",\"Status\"],\"members\":{\"Name\":{},\"Id\":{},\"Edition\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"Status\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S3q\"}}}},\"ListThesauri\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\"],\"members\":{\"IndexId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ThesaurusSummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"}}}}}}},\"Query\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\",\"QueryText\"],\"members\":{\"IndexId\":{},\"QueryText\":{},\"AttributeFilter\":{\"shape\":\"S6l\"},\"Facets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DocumentAttributeKey\":{}}}},\"RequestedDocumentAttributes\":{\"type\":\"list\",\"member\":{}},\"QueryResultTypeFilter\":{},\"PageNumber\":{\"type\":\"integer\"},\"PageSize\":{\"type\":\"integer\"},\"SortingConfiguration\":{\"type\":\"structure\",\"required\":[\"DocumentAttributeKey\",\"SortOrder\"],\"members\":{\"DocumentAttributeKey\":{},\"SortOrder\":{}}},\"UserContext\":{\"type\":\"structure\",\"members\":{\"Token\":{}}},\"VisitorId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"QueryId\":{},\"ResultItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Type\":{},\"AdditionalAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"ValueType\",\"Value\"],\"members\":{\"Key\":{},\"ValueType\":{},\"Value\":{\"type\":\"structure\",\"members\":{\"TextWithHighlightsValue\":{\"shape\":\"S76\"}}}}}},\"DocumentId\":{},\"DocumentTitle\":{\"shape\":\"S76\"},\"DocumentExcerpt\":{\"shape\":\"S76\"},\"DocumentURI\":{},\"DocumentAttributes\":{\"shape\":\"Sm\"},\"ScoreAttributes\":{\"type\":\"structure\",\"members\":{\"ScoreConfidence\":{}}},\"FeedbackToken\":{}}}},\"FacetResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DocumentAttributeKey\":{},\"DocumentAttributeValueType\":{},\"DocumentAttributeValueCountPairs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DocumentAttributeValue\":{\"shape\":\"Sp\"},\"Count\":{\"type\":\"integer\"}}}}}}},\"TotalNumberOfResults\":{\"type\":\"integer\"}}}},\"StartDataSourceSyncJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExecutionId\":{}}}},\"StopDataSourceSyncJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"IndexId\":{}}}},\"SubmitFeedback\":{\"input\":{\"type\":\"structure\",\"required\":[\"IndexId\",\"QueryId\"],\"members\":{\"IndexId\":{},\"QueryId\":{},\"ClickFeedbackItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ResultId\",\"ClickTime\"],\"members\":{\"ResultId\":{},\"ClickTime\":{\"type\":\"timestamp\"}}}},\"RelevanceFeedbackItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ResultId\",\"RelevanceValue\"],\"members\":{\"ResultId\":{},\"RelevanceValue\":{}}}}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S3q\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"Name\":{},\"IndexId\":{},\"Configuration\":{\"shape\":\"S17\"},\"Description\":{},\"Schedule\":{},\"RoleArn\":{}}}},\"UpdateIndex\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Name\":{},\"RoleArn\":{},\"Description\":{},\"DocumentMetadataConfigurationUpdates\":{\"shape\":\"S4y\"},\"CapacityUnits\":{\"shape\":\"S5g\"},\"UserTokenConfigurations\":{\"shape\":\"S46\"},\"UserContextPolicy\":{}}}},\"UpdateThesaurus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"IndexId\"],\"members\":{\"Id\":{},\"Name\":{},\"IndexId\":{},\"Description\":{},\"RoleArn\":{},\"SourceS3Path\":{\"shape\":\"Sj\"}}}}},\"shapes\":{\"Sj\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{},\"Key\":{}}},\"Sm\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}},\"Sn\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{\"shape\":\"Sp\"}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"StringValue\":{},\"StringListValue\":{\"type\":\"list\",\"member\":{}},\"LongValue\":{\"type\":\"long\"},\"DateValue\":{\"type\":\"timestamp\"}}},\"S17\":{\"type\":\"structure\",\"members\":{\"S3Configuration\":{\"type\":\"structure\",\"required\":[\"BucketName\"],\"members\":{\"BucketName\":{},\"InclusionPrefixes\":{\"shape\":\"S19\"},\"InclusionPatterns\":{\"shape\":\"S19\"},\"ExclusionPatterns\":{\"shape\":\"S19\"},\"DocumentsMetadataConfiguration\":{\"type\":\"structure\",\"members\":{\"S3Prefix\":{}}},\"AccessControlListConfiguration\":{\"type\":\"structure\",\"members\":{\"KeyPath\":{}}}}},\"SharePointConfiguration\":{\"type\":\"structure\",\"required\":[\"SharePointVersion\",\"Urls\",\"SecretArn\"],\"members\":{\"SharePointVersion\":{},\"Urls\":{\"type\":\"list\",\"member\":{}},\"SecretArn\":{},\"CrawlAttachments\":{\"type\":\"boolean\"},\"UseChangeLog\":{\"type\":\"boolean\"},\"InclusionPatterns\":{\"shape\":\"S19\"},\"ExclusionPatterns\":{\"shape\":\"S19\"},\"VpcConfiguration\":{\"shape\":\"S1j\"},\"FieldMappings\":{\"shape\":\"S1o\"},\"DocumentTitleFieldName\":{},\"DisableLocalGroups\":{\"type\":\"boolean\"}}},\"DatabaseConfiguration\":{\"type\":\"structure\",\"required\":[\"DatabaseEngineType\",\"ConnectionConfiguration\",\"ColumnConfiguration\"],\"members\":{\"DatabaseEngineType\":{},\"ConnectionConfiguration\":{\"type\":\"structure\",\"required\":[\"DatabaseHost\",\"DatabasePort\",\"DatabaseName\",\"TableName\",\"SecretArn\"],\"members\":{\"DatabaseHost\":{},\"DatabasePort\":{\"type\":\"integer\"},\"DatabaseName\":{},\"TableName\":{},\"SecretArn\":{}}},\"VpcConfiguration\":{\"shape\":\"S1j\"},\"ColumnConfiguration\":{\"type\":\"structure\",\"required\":[\"DocumentIdColumnName\",\"DocumentDataColumnName\",\"ChangeDetectingColumns\"],\"members\":{\"DocumentIdColumnName\":{},\"DocumentDataColumnName\":{},\"DocumentTitleColumnName\":{},\"FieldMappings\":{\"shape\":\"S1o\"},\"ChangeDetectingColumns\":{\"type\":\"list\",\"member\":{}}}},\"AclConfiguration\":{\"type\":\"structure\",\"required\":[\"AllowedGroupsColumnName\"],\"members\":{\"AllowedGroupsColumnName\":{}}},\"SqlConfiguration\":{\"type\":\"structure\",\"members\":{\"QueryIdentifiersEnclosingOption\":{}}}}},\"SalesforceConfiguration\":{\"type\":\"structure\",\"required\":[\"ServerUrl\",\"SecretArn\"],\"members\":{\"ServerUrl\":{},\"SecretArn\":{},\"StandardObjectConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"DocumentDataFieldName\"],\"members\":{\"Name\":{},\"DocumentDataFieldName\":{},\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"}}}},\"KnowledgeArticleConfiguration\":{\"type\":\"structure\",\"required\":[\"IncludedStates\"],\"members\":{\"IncludedStates\":{\"type\":\"list\",\"member\":{}},\"StandardKnowledgeArticleTypeConfiguration\":{\"type\":\"structure\",\"required\":[\"DocumentDataFieldName\"],\"members\":{\"DocumentDataFieldName\":{},\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"}}},\"CustomKnowledgeArticleTypeConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"DocumentDataFieldName\"],\"members\":{\"Name\":{},\"DocumentDataFieldName\":{},\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"}}}}}},\"ChatterFeedConfiguration\":{\"type\":\"structure\",\"required\":[\"DocumentDataFieldName\"],\"members\":{\"DocumentDataFieldName\":{},\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"},\"IncludeFilterTypes\":{\"type\":\"list\",\"member\":{}}}},\"CrawlAttachments\":{\"type\":\"boolean\"},\"StandardObjectAttachmentConfiguration\":{\"type\":\"structure\",\"members\":{\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"}}},\"IncludeAttachmentFilePatterns\":{\"shape\":\"S19\"},\"ExcludeAttachmentFilePatterns\":{\"shape\":\"S19\"}}},\"OneDriveConfiguration\":{\"type\":\"structure\",\"required\":[\"TenantDomain\",\"SecretArn\",\"OneDriveUsers\"],\"members\":{\"TenantDomain\":{},\"SecretArn\":{},\"OneDriveUsers\":{\"type\":\"structure\",\"members\":{\"OneDriveUserList\":{\"type\":\"list\",\"member\":{}},\"OneDriveUserS3Path\":{\"shape\":\"Sj\"}}},\"InclusionPatterns\":{\"shape\":\"S19\"},\"ExclusionPatterns\":{\"shape\":\"S19\"},\"FieldMappings\":{\"shape\":\"S1o\"},\"DisableLocalGroups\":{\"type\":\"boolean\"}}},\"ServiceNowConfiguration\":{\"type\":\"structure\",\"required\":[\"HostUrl\",\"SecretArn\",\"ServiceNowBuildVersion\"],\"members\":{\"HostUrl\":{},\"SecretArn\":{},\"ServiceNowBuildVersion\":{},\"KnowledgeArticleConfiguration\":{\"type\":\"structure\",\"required\":[\"DocumentDataFieldName\"],\"members\":{\"CrawlAttachments\":{\"type\":\"boolean\"},\"IncludeAttachmentFilePatterns\":{\"shape\":\"S19\"},\"ExcludeAttachmentFilePatterns\":{\"shape\":\"S19\"},\"DocumentDataFieldName\":{},\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"},\"FilterQuery\":{}}},\"ServiceCatalogConfiguration\":{\"type\":\"structure\",\"required\":[\"DocumentDataFieldName\"],\"members\":{\"CrawlAttachments\":{\"type\":\"boolean\"},\"IncludeAttachmentFilePatterns\":{\"shape\":\"S19\"},\"ExcludeAttachmentFilePatterns\":{\"shape\":\"S19\"},\"DocumentDataFieldName\":{},\"DocumentTitleFieldName\":{},\"FieldMappings\":{\"shape\":\"S1o\"}}},\"AuthenticationType\":{}}},\"ConfluenceConfiguration\":{\"type\":\"structure\",\"required\":[\"ServerUrl\",\"SecretArn\",\"Version\"],\"members\":{\"ServerUrl\":{},\"SecretArn\":{},\"Version\":{},\"SpaceConfiguration\":{\"type\":\"structure\",\"members\":{\"CrawlPersonalSpaces\":{\"type\":\"boolean\"},\"CrawlArchivedSpaces\":{\"type\":\"boolean\"},\"IncludeSpaces\":{\"shape\":\"S30\"},\"ExcludeSpaces\":{\"shape\":\"S30\"},\"SpaceFieldMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataSourceFieldName\":{},\"DateFieldFormat\":{},\"IndexFieldName\":{}}}}}},\"PageConfiguration\":{\"type\":\"structure\",\"members\":{\"PageFieldMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataSourceFieldName\":{},\"DateFieldFormat\":{},\"IndexFieldName\":{}}}}}},\"BlogConfiguration\":{\"type\":\"structure\",\"members\":{\"BlogFieldMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataSourceFieldName\":{},\"DateFieldFormat\":{},\"IndexFieldName\":{}}}}}},\"AttachmentConfiguration\":{\"type\":\"structure\",\"members\":{\"CrawlAttachments\":{\"type\":\"boolean\"},\"AttachmentFieldMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataSourceFieldName\":{},\"DateFieldFormat\":{},\"IndexFieldName\":{}}}}}},\"VpcConfiguration\":{\"shape\":\"S1j\"},\"InclusionPatterns\":{\"shape\":\"S19\"},\"ExclusionPatterns\":{\"shape\":\"S19\"}}},\"GoogleDriveConfiguration\":{\"type\":\"structure\",\"required\":[\"SecretArn\"],\"members\":{\"SecretArn\":{},\"InclusionPatterns\":{\"shape\":\"S19\"},\"ExclusionPatterns\":{\"shape\":\"S19\"},\"FieldMappings\":{\"shape\":\"S1o\"},\"ExcludeMimeTypes\":{\"type\":\"list\",\"member\":{}},\"ExcludeUserAccounts\":{\"type\":\"list\",\"member\":{}},\"ExcludeSharedDrives\":{\"type\":\"list\",\"member\":{}}}}}},\"S19\":{\"type\":\"list\",\"member\":{}},\"S1j\":{\"type\":\"structure\",\"required\":[\"SubnetIds\",\"SecurityGroupIds\"],\"members\":{\"SubnetIds\":{\"type\":\"list\",\"member\":{}},\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}}}},\"S1o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DataSourceFieldName\",\"IndexFieldName\"],\"members\":{\"DataSourceFieldName\":{},\"DateFieldFormat\":{},\"IndexFieldName\":{}}}},\"S30\":{\"type\":\"list\",\"member\":{}},\"S3q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S44\":{\"type\":\"structure\",\"members\":{\"KmsKeyId\":{\"type\":\"string\",\"sensitive\":true}}},\"S46\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JwtTokenTypeConfiguration\":{\"type\":\"structure\",\"required\":[\"KeyLocation\"],\"members\":{\"KeyLocation\":{},\"URL\":{},\"SecretManagerArn\":{},\"UserNameAttributeField\":{},\"GroupAttributeField\":{},\"Issuer\":{},\"ClaimRegex\":{}}},\"JsonTokenTypeConfiguration\":{\"type\":\"structure\",\"required\":[\"UserNameAttributeField\",\"GroupAttributeField\"],\"members\":{\"UserNameAttributeField\":{},\"GroupAttributeField\":{}}}}}},\"S4y\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{},\"Relevance\":{\"type\":\"structure\",\"members\":{\"Freshness\":{\"type\":\"boolean\"},\"Importance\":{\"type\":\"integer\"},\"Duration\":{},\"RankOrder\":{},\"ValueImportanceMap\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}},\"Search\":{\"type\":\"structure\",\"members\":{\"Facetable\":{\"type\":\"boolean\"},\"Searchable\":{\"type\":\"boolean\"},\"Displayable\":{\"type\":\"boolean\"},\"Sortable\":{\"type\":\"boolean\"}}}}}},\"S5g\":{\"type\":\"structure\",\"required\":[\"StorageCapacityUnits\",\"QueryCapacityUnits\"],\"members\":{\"StorageCapacityUnits\":{\"type\":\"integer\"},\"QueryCapacityUnits\":{\"type\":\"integer\"}}},\"S6l\":{\"type\":\"structure\",\"members\":{\"AndAllFilters\":{\"shape\":\"S6m\"},\"OrAllFilters\":{\"shape\":\"S6m\"},\"NotFilter\":{\"shape\":\"S6l\"},\"EqualsTo\":{\"shape\":\"Sn\"},\"ContainsAll\":{\"shape\":\"Sn\"},\"ContainsAny\":{\"shape\":\"Sn\"},\"GreaterThan\":{\"shape\":\"Sn\"},\"GreaterThanOrEquals\":{\"shape\":\"Sn\"},\"LessThan\":{\"shape\":\"Sn\"},\"LessThanOrEquals\":{\"shape\":\"Sn\"}}},\"S6m\":{\"type\":\"list\",\"member\":{\"shape\":\"S6l\"}},\"S76\":{\"type\":\"structure\",\"members\":{\"Text\":{},\"Highlights\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"BeginOffset\",\"EndOffset\"],\"members\":{\"BeginOffset\":{\"type\":\"integer\"},\"EndOffset\":{\"type\":\"integer\"},\"TopAnswer\":{\"type\":\"boolean\"},\"Type\":{}}}}}}}}");

/***/ }),

/***/ 31633:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDataSourceSyncJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDataSources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListIndices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 74556:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-12-02\",\"endpointPrefix\":\"kinesis\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"protocolSettings\":{\"h2\":\"eventstream\"},\"serviceAbbreviation\":\"Kinesis\",\"serviceFullName\":\"Amazon Kinesis\",\"serviceId\":\"Kinesis\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Kinesis_20131202\",\"uid\":\"kinesis-2013-12-02\"},\"operations\":{\"AddTagsToStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"Tags\"],\"members\":{\"StreamName\":{},\"Tags\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"CreateStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"ShardCount\"],\"members\":{\"StreamName\":{},\"ShardCount\":{\"type\":\"integer\"}}}},\"DecreaseStreamRetentionPeriod\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"RetentionPeriodHours\"],\"members\":{\"StreamName\":{},\"RetentionPeriodHours\":{\"type\":\"integer\"}}}},\"DeleteStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\"],\"members\":{\"StreamName\":{},\"EnforceConsumerDeletion\":{\"type\":\"boolean\"}}}},\"DeregisterStreamConsumer\":{\"input\":{\"type\":\"structure\",\"members\":{\"StreamARN\":{},\"ConsumerName\":{},\"ConsumerARN\":{}}}},\"DescribeLimits\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"ShardLimit\",\"OpenShardCount\"],\"members\":{\"ShardLimit\":{\"type\":\"integer\"},\"OpenShardCount\":{\"type\":\"integer\"}}}},\"DescribeStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\"],\"members\":{\"StreamName\":{},\"Limit\":{\"type\":\"integer\"},\"ExclusiveStartShardId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"StreamDescription\"],\"members\":{\"StreamDescription\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"StreamARN\",\"StreamStatus\",\"Shards\",\"HasMoreShards\",\"RetentionPeriodHours\",\"StreamCreationTimestamp\",\"EnhancedMonitoring\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"StreamStatus\":{},\"Shards\":{\"shape\":\"Sp\"},\"HasMoreShards\":{\"type\":\"boolean\"},\"RetentionPeriodHours\":{\"type\":\"integer\"},\"StreamCreationTimestamp\":{\"type\":\"timestamp\"},\"EnhancedMonitoring\":{\"shape\":\"Sw\"},\"EncryptionType\":{},\"KeyId\":{}}}}}},\"DescribeStreamConsumer\":{\"input\":{\"type\":\"structure\",\"members\":{\"StreamARN\":{},\"ConsumerName\":{},\"ConsumerARN\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ConsumerDescription\"],\"members\":{\"ConsumerDescription\":{\"type\":\"structure\",\"required\":[\"ConsumerName\",\"ConsumerARN\",\"ConsumerStatus\",\"ConsumerCreationTimestamp\",\"StreamARN\"],\"members\":{\"ConsumerName\":{},\"ConsumerARN\":{},\"ConsumerStatus\":{},\"ConsumerCreationTimestamp\":{\"type\":\"timestamp\"},\"StreamARN\":{}}}}}},\"DescribeStreamSummary\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\"],\"members\":{\"StreamName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"StreamDescriptionSummary\"],\"members\":{\"StreamDescriptionSummary\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"StreamARN\",\"StreamStatus\",\"RetentionPeriodHours\",\"StreamCreationTimestamp\",\"EnhancedMonitoring\",\"OpenShardCount\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"StreamStatus\":{},\"RetentionPeriodHours\":{\"type\":\"integer\"},\"StreamCreationTimestamp\":{\"type\":\"timestamp\"},\"EnhancedMonitoring\":{\"shape\":\"Sw\"},\"EncryptionType\":{},\"KeyId\":{},\"OpenShardCount\":{\"type\":\"integer\"},\"ConsumerCount\":{\"type\":\"integer\"}}}}}},\"DisableEnhancedMonitoring\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"ShardLevelMetrics\"],\"members\":{\"StreamName\":{},\"ShardLevelMetrics\":{\"shape\":\"Sy\"}}},\"output\":{\"shape\":\"S1b\"}},\"EnableEnhancedMonitoring\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"ShardLevelMetrics\"],\"members\":{\"StreamName\":{},\"ShardLevelMetrics\":{\"shape\":\"Sy\"}}},\"output\":{\"shape\":\"S1b\"}},\"GetRecords\":{\"input\":{\"type\":\"structure\",\"required\":[\"ShardIterator\"],\"members\":{\"ShardIterator\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Records\"],\"members\":{\"Records\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SequenceNumber\",\"Data\",\"PartitionKey\"],\"members\":{\"SequenceNumber\":{},\"ApproximateArrivalTimestamp\":{\"type\":\"timestamp\"},\"Data\":{\"type\":\"blob\"},\"PartitionKey\":{},\"EncryptionType\":{}}}},\"NextShardIterator\":{},\"MillisBehindLatest\":{\"type\":\"long\"},\"ChildShards\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ShardId\",\"ParentShards\",\"HashKeyRange\"],\"members\":{\"ShardId\":{},\"ParentShards\":{\"type\":\"list\",\"member\":{}},\"HashKeyRange\":{\"shape\":\"Sr\"}}}}}}},\"GetShardIterator\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"ShardId\",\"ShardIteratorType\"],\"members\":{\"StreamName\":{},\"ShardId\":{},\"ShardIteratorType\":{},\"StartingSequenceNumber\":{},\"Timestamp\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ShardIterator\":{}}}},\"IncreaseStreamRetentionPeriod\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"RetentionPeriodHours\"],\"members\":{\"StreamName\":{},\"RetentionPeriodHours\":{\"type\":\"integer\"}}}},\"ListShards\":{\"input\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"NextToken\":{},\"ExclusiveStartShardId\":{},\"MaxResults\":{\"type\":\"integer\"},\"StreamCreationTimestamp\":{\"type\":\"timestamp\"},\"ShardFilter\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"ShardId\":{},\"Timestamp\":{\"type\":\"timestamp\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Shards\":{\"shape\":\"Sp\"},\"NextToken\":{}}}},\"ListStreamConsumers\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamARN\"],\"members\":{\"StreamARN\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"StreamCreationTimestamp\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Consumers\":{\"type\":\"list\",\"member\":{\"shape\":\"S23\"}},\"NextToken\":{}}}},\"ListStreams\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"ExclusiveStartStreamName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"StreamNames\",\"HasMoreStreams\"],\"members\":{\"StreamNames\":{\"type\":\"list\",\"member\":{}},\"HasMoreStreams\":{\"type\":\"boolean\"}}}},\"ListTagsForStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\"],\"members\":{\"StreamName\":{},\"ExclusiveStartTagKey\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\",\"HasMoreTags\"],\"members\":{\"Tags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"HasMoreTags\":{\"type\":\"boolean\"}}}},\"MergeShards\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"ShardToMerge\",\"AdjacentShardToMerge\"],\"members\":{\"StreamName\":{},\"ShardToMerge\":{},\"AdjacentShardToMerge\":{}}}},\"PutRecord\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"Data\",\"PartitionKey\"],\"members\":{\"StreamName\":{},\"Data\":{\"type\":\"blob\"},\"PartitionKey\":{},\"ExplicitHashKey\":{},\"SequenceNumberForOrdering\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ShardId\",\"SequenceNumber\"],\"members\":{\"ShardId\":{},\"SequenceNumber\":{},\"EncryptionType\":{}}}},\"PutRecords\":{\"input\":{\"type\":\"structure\",\"required\":[\"Records\",\"StreamName\"],\"members\":{\"Records\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Data\",\"PartitionKey\"],\"members\":{\"Data\":{\"type\":\"blob\"},\"ExplicitHashKey\":{},\"PartitionKey\":{}}}},\"StreamName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Records\"],\"members\":{\"FailedRecordCount\":{\"type\":\"integer\"},\"Records\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SequenceNumber\":{},\"ShardId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"EncryptionType\":{}}}},\"RegisterStreamConsumer\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamARN\",\"ConsumerName\"],\"members\":{\"StreamARN\":{},\"ConsumerName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Consumer\"],\"members\":{\"Consumer\":{\"shape\":\"S23\"}}}},\"RemoveTagsFromStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"TagKeys\"],\"members\":{\"StreamName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"SplitShard\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"ShardToSplit\",\"NewStartingHashKey\"],\"members\":{\"StreamName\":{},\"ShardToSplit\":{},\"NewStartingHashKey\":{}}}},\"StartStreamEncryption\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"EncryptionType\",\"KeyId\"],\"members\":{\"StreamName\":{},\"EncryptionType\":{},\"KeyId\":{}}}},\"StopStreamEncryption\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"EncryptionType\",\"KeyId\"],\"members\":{\"StreamName\":{},\"EncryptionType\":{},\"KeyId\":{}}}},\"UpdateShardCount\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\",\"TargetShardCount\",\"ScalingType\"],\"members\":{\"StreamName\":{},\"TargetShardCount\":{\"type\":\"integer\"},\"ScalingType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"CurrentShardCount\":{\"type\":\"integer\"},\"TargetShardCount\":{\"type\":\"integer\"}}}}},\"shapes\":{\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ShardId\",\"HashKeyRange\",\"SequenceNumberRange\"],\"members\":{\"ShardId\":{},\"ParentShardId\":{},\"AdjacentParentShardId\":{},\"HashKeyRange\":{\"shape\":\"Sr\"},\"SequenceNumberRange\":{\"type\":\"structure\",\"required\":[\"StartingSequenceNumber\"],\"members\":{\"StartingSequenceNumber\":{},\"EndingSequenceNumber\":{}}}}}},\"Sr\":{\"type\":\"structure\",\"required\":[\"StartingHashKey\",\"EndingHashKey\"],\"members\":{\"StartingHashKey\":{},\"EndingHashKey\":{}}},\"Sw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ShardLevelMetrics\":{\"shape\":\"Sy\"}}}},\"Sy\":{\"type\":\"list\",\"member\":{}},\"S1b\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"CurrentShardLevelMetrics\":{\"shape\":\"Sy\"},\"DesiredShardLevelMetrics\":{\"shape\":\"Sy\"}}},\"S23\":{\"type\":\"structure\",\"required\":[\"ConsumerName\",\"ConsumerARN\",\"ConsumerStatus\",\"ConsumerCreationTimestamp\"],\"members\":{\"ConsumerName\":{},\"ConsumerARN\":{},\"ConsumerStatus\":{},\"ConsumerCreationTimestamp\":{\"type\":\"timestamp\"}}}}}");

/***/ }),

/***/ 38540:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeStream\":{\"input_token\":\"ExclusiveStartShardId\",\"limit_key\":\"Limit\",\"more_results\":\"StreamDescription.HasMoreShards\",\"output_token\":\"StreamDescription.Shards[-1].ShardId\",\"result_key\":\"StreamDescription.Shards\"},\"ListStreamConsumers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListStreams\":{\"input_token\":\"ExclusiveStartStreamName\",\"limit_key\":\"Limit\",\"more_results\":\"HasMoreStreams\",\"output_token\":\"StreamNames[-1]\",\"result_key\":\"StreamNames\"}}}");

/***/ }),

/***/ 80745:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"StreamExists\":{\"delay\":10,\"operation\":\"DescribeStream\",\"maxAttempts\":18,\"acceptors\":[{\"expected\":\"ACTIVE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"StreamDescription.StreamStatus\"}]},\"StreamNotExists\":{\"delay\":10,\"operation\":\"DescribeStream\",\"maxAttempts\":18,\"acceptors\":[{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 64288:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-30\",\"endpointPrefix\":\"kinesisvideo\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Kinesis Video Archived Media\",\"serviceFullName\":\"Amazon Kinesis Video Streams Archived Media\",\"serviceId\":\"Kinesis Video Archived Media\",\"signatureVersion\":\"v4\",\"uid\":\"kinesis-video-archived-media-2017-09-30\"},\"operations\":{\"GetClip\":{\"http\":{\"requestUri\":\"/getClip\"},\"input\":{\"type\":\"structure\",\"required\":[\"ClipFragmentSelector\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"ClipFragmentSelector\":{\"type\":\"structure\",\"required\":[\"FragmentSelectorType\",\"TimestampRange\"],\"members\":{\"FragmentSelectorType\":{},\"TimestampRange\":{\"type\":\"structure\",\"required\":[\"StartTimestamp\",\"EndTimestamp\"],\"members\":{\"StartTimestamp\":{\"type\":\"timestamp\"},\"EndTimestamp\":{\"type\":\"timestamp\"}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Payload\":{\"shape\":\"Sa\"}},\"payload\":\"Payload\"}},\"GetDASHStreamingSessionURL\":{\"http\":{\"requestUri\":\"/getDASHStreamingSessionURL\"},\"input\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"StreamARN\":{},\"PlaybackMode\":{},\"DisplayFragmentTimestamp\":{},\"DisplayFragmentNumber\":{},\"DASHFragmentSelector\":{\"type\":\"structure\",\"members\":{\"FragmentSelectorType\":{},\"TimestampRange\":{\"type\":\"structure\",\"members\":{\"StartTimestamp\":{\"type\":\"timestamp\"},\"EndTimestamp\":{\"type\":\"timestamp\"}}}}},\"Expires\":{\"type\":\"integer\"},\"MaxManifestFragmentResults\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DASHStreamingSessionURL\":{}}}},\"GetHLSStreamingSessionURL\":{\"http\":{\"requestUri\":\"/getHLSStreamingSessionURL\"},\"input\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"StreamARN\":{},\"PlaybackMode\":{},\"HLSFragmentSelector\":{\"type\":\"structure\",\"members\":{\"FragmentSelectorType\":{},\"TimestampRange\":{\"type\":\"structure\",\"members\":{\"StartTimestamp\":{\"type\":\"timestamp\"},\"EndTimestamp\":{\"type\":\"timestamp\"}}}}},\"ContainerFormat\":{},\"DiscontinuityMode\":{},\"DisplayFragmentTimestamp\":{},\"Expires\":{\"type\":\"integer\"},\"MaxMediaPlaylistFragmentResults\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HLSStreamingSessionURL\":{}}}},\"GetMediaForFragmentList\":{\"http\":{\"requestUri\":\"/getMediaForFragmentList\"},\"input\":{\"type\":\"structure\",\"required\":[\"Fragments\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"Fragments\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Payload\":{\"shape\":\"Sa\"}},\"payload\":\"Payload\"}},\"ListFragments\":{\"http\":{\"requestUri\":\"/listFragments\"},\"input\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"StreamARN\":{},\"MaxResults\":{\"type\":\"long\"},\"NextToken\":{},\"FragmentSelector\":{\"type\":\"structure\",\"required\":[\"FragmentSelectorType\",\"TimestampRange\"],\"members\":{\"FragmentSelectorType\":{},\"TimestampRange\":{\"type\":\"structure\",\"required\":[\"StartTimestamp\",\"EndTimestamp\"],\"members\":{\"StartTimestamp\":{\"type\":\"timestamp\"},\"EndTimestamp\":{\"type\":\"timestamp\"}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Fragments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FragmentNumber\":{},\"FragmentSizeInBytes\":{\"type\":\"long\"},\"ProducerTimestamp\":{\"type\":\"timestamp\"},\"ServerTimestamp\":{\"type\":\"timestamp\"},\"FragmentLengthInMilliseconds\":{\"type\":\"long\"}}}},\"NextToken\":{}}}}},\"shapes\":{\"Sa\":{\"type\":\"blob\",\"streaming\":true}}}");

/***/ }),

/***/ 78514:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListFragments\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Fragments\"}}}");

/***/ }),

/***/ 97818:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-30\",\"endpointPrefix\":\"kinesisvideo\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Kinesis Video Media\",\"serviceFullName\":\"Amazon Kinesis Video Streams Media\",\"serviceId\":\"Kinesis Video Media\",\"signatureVersion\":\"v4\",\"uid\":\"kinesis-video-media-2017-09-30\"},\"operations\":{\"GetMedia\":{\"http\":{\"requestUri\":\"/getMedia\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartSelector\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"StartSelector\":{\"type\":\"structure\",\"required\":[\"StartSelectorType\"],\"members\":{\"StartSelectorType\":{},\"AfterFragmentNumber\":{},\"StartTimestamp\":{\"type\":\"timestamp\"},\"ContinuationToken\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Payload\":{\"type\":\"blob\",\"streaming\":true}},\"payload\":\"Payload\"}}},\"shapes\":{}}");

/***/ }),

/***/ 16923:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 58849:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-12-04\",\"endpointPrefix\":\"kinesisvideo\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon Kinesis Video Signaling Channels\",\"serviceFullName\":\"Amazon Kinesis Video Signaling Channels\",\"serviceId\":\"Kinesis Video Signaling\",\"signatureVersion\":\"v4\",\"uid\":\"kinesis-video-signaling-2019-12-04\"},\"operations\":{\"GetIceServerConfig\":{\"http\":{\"requestUri\":\"/v1/get-ice-server-config\"},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelARN\"],\"members\":{\"ChannelARN\":{},\"ClientId\":{},\"Service\":{},\"Username\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IceServerList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Uris\":{\"type\":\"list\",\"member\":{}},\"Username\":{},\"Password\":{},\"Ttl\":{\"type\":\"integer\"}}}}}}},\"SendAlexaOfferToMaster\":{\"http\":{\"requestUri\":\"/v1/send-alexa-offer-to-master\"},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelARN\",\"SenderClientId\",\"MessagePayload\"],\"members\":{\"ChannelARN\":{},\"SenderClientId\":{},\"MessagePayload\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Answer\":{}}}}},\"shapes\":{}}");

/***/ }),

/***/ 10473:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 91105:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-08-14\",\"endpointPrefix\":\"kinesisanalytics\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Kinesis Analytics\",\"serviceFullName\":\"Amazon Kinesis Analytics\",\"serviceId\":\"Kinesis Analytics\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"KinesisAnalytics_20150814\",\"uid\":\"kinesisanalytics-2015-08-14\"},\"operations\":{\"AddApplicationCloudWatchLoggingOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"CloudWatchLoggingOption\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"CloudWatchLoggingOption\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddApplicationInput\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"Input\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"Input\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddApplicationInputProcessingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"InputId\",\"InputProcessingConfiguration\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"InputId\":{},\"InputProcessingConfiguration\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddApplicationOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"Output\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"Output\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AddApplicationReferenceDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"ReferenceDataSource\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"ReferenceDataSource\":{\"type\":\"structure\",\"required\":[\"TableName\",\"ReferenceSchema\"],\"members\":{\"TableName\":{},\"S3ReferenceDataSource\":{\"type\":\"structure\",\"required\":[\"BucketARN\",\"FileKey\",\"ReferenceRoleARN\"],\"members\":{\"BucketARN\":{},\"FileKey\":{},\"ReferenceRoleARN\":{}}},\"ReferenceSchema\":{\"shape\":\"Si\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"ApplicationDescription\":{},\"Inputs\":{\"type\":\"list\",\"member\":{\"shape\":\"S9\"}},\"Outputs\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"CloudWatchLoggingOptions\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"ApplicationCode\":{},\"Tags\":{\"shape\":\"S1l\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationSummary\"],\"members\":{\"ApplicationSummary\":{\"shape\":\"S1q\"}}}},\"DeleteApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CreateTimestamp\"],\"members\":{\"ApplicationName\":{},\"CreateTimestamp\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplicationCloudWatchLoggingOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"CloudWatchLoggingOptionId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"CloudWatchLoggingOptionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplicationInputProcessingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"InputId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"InputId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplicationOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"OutputId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"OutputId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplicationReferenceDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"ReferenceId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"ReferenceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationDetail\"],\"members\":{\"ApplicationDetail\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"ApplicationARN\",\"ApplicationStatus\",\"ApplicationVersionId\"],\"members\":{\"ApplicationName\":{},\"ApplicationDescription\":{},\"ApplicationARN\":{},\"ApplicationStatus\":{},\"CreateTimestamp\":{\"type\":\"timestamp\"},\"LastUpdateTimestamp\":{\"type\":\"timestamp\"},\"InputDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InputId\":{},\"NamePrefix\":{},\"InAppStreamNames\":{\"type\":\"list\",\"member\":{}},\"InputProcessingConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"InputLambdaProcessorDescription\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}}}},\"KinesisStreamsInputDescription\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"KinesisFirehoseInputDescription\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"InputSchema\":{\"shape\":\"Si\"},\"InputParallelism\":{\"shape\":\"Sg\"},\"InputStartingPositionConfiguration\":{\"shape\":\"S2d\"}}}},\"OutputDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OutputId\":{},\"Name\":{},\"KinesisStreamsOutputDescription\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"KinesisFirehoseOutputDescription\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"LambdaOutputDescription\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"DestinationSchema\":{\"shape\":\"S16\"}}}},\"ReferenceDataSourceDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ReferenceId\",\"TableName\",\"S3ReferenceDataSourceDescription\"],\"members\":{\"ReferenceId\":{},\"TableName\":{},\"S3ReferenceDataSourceDescription\":{\"type\":\"structure\",\"required\":[\"BucketARN\",\"FileKey\",\"ReferenceRoleARN\"],\"members\":{\"BucketARN\":{},\"FileKey\":{},\"ReferenceRoleARN\":{}}},\"ReferenceSchema\":{\"shape\":\"Si\"}}}},\"CloudWatchLoggingOptionDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LogStreamARN\",\"RoleARN\"],\"members\":{\"CloudWatchLoggingOptionId\":{},\"LogStreamARN\":{},\"RoleARN\":{}}}},\"ApplicationCode\":{},\"ApplicationVersionId\":{\"type\":\"long\"}}}}}},\"DiscoverInputSchema\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"RoleARN\":{},\"InputStartingPositionConfiguration\":{\"shape\":\"S2d\"},\"S3Configuration\":{\"type\":\"structure\",\"required\":[\"RoleARN\",\"BucketARN\",\"FileKey\"],\"members\":{\"RoleARN\":{},\"BucketARN\":{},\"FileKey\":{}}},\"InputProcessingConfiguration\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InputSchema\":{\"shape\":\"Si\"},\"ParsedInputRecords\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{}}},\"ProcessedInputRecords\":{\"type\":\"list\",\"member\":{}},\"RawInputRecords\":{\"type\":\"list\",\"member\":{}}}}},\"ListApplications\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"ExclusiveStartApplicationName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationSummaries\",\"HasMoreApplications\"],\"members\":{\"ApplicationSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"S1q\"}},\"HasMoreApplications\":{\"type\":\"boolean\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1l\"}}}},\"StartApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"InputConfigurations\"],\"members\":{\"ApplicationName\":{},\"InputConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"InputStartingPositionConfiguration\"],\"members\":{\"Id\":{},\"InputStartingPositionConfiguration\":{\"shape\":\"S2d\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S1l\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"ApplicationUpdate\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"ApplicationUpdate\":{\"type\":\"structure\",\"members\":{\"InputUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InputId\"],\"members\":{\"InputId\":{},\"NamePrefixUpdate\":{},\"InputProcessingConfigurationUpdate\":{\"type\":\"structure\",\"required\":[\"InputLambdaProcessorUpdate\"],\"members\":{\"InputLambdaProcessorUpdate\":{\"type\":\"structure\",\"members\":{\"ResourceARNUpdate\":{},\"RoleARNUpdate\":{}}}}},\"KinesisStreamsInputUpdate\":{\"type\":\"structure\",\"members\":{\"ResourceARNUpdate\":{},\"RoleARNUpdate\":{}}},\"KinesisFirehoseInputUpdate\":{\"type\":\"structure\",\"members\":{\"ResourceARNUpdate\":{},\"RoleARNUpdate\":{}}},\"InputSchemaUpdate\":{\"type\":\"structure\",\"members\":{\"RecordFormatUpdate\":{\"shape\":\"Sj\"},\"RecordEncodingUpdate\":{},\"RecordColumnUpdates\":{\"shape\":\"Ss\"}}},\"InputParallelismUpdate\":{\"type\":\"structure\",\"members\":{\"CountUpdate\":{\"type\":\"integer\"}}}}}},\"ApplicationCodeUpdate\":{},\"OutputUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OutputId\"],\"members\":{\"OutputId\":{},\"NameUpdate\":{},\"KinesisStreamsOutputUpdate\":{\"type\":\"structure\",\"members\":{\"ResourceARNUpdate\":{},\"RoleARNUpdate\":{}}},\"KinesisFirehoseOutputUpdate\":{\"type\":\"structure\",\"members\":{\"ResourceARNUpdate\":{},\"RoleARNUpdate\":{}}},\"LambdaOutputUpdate\":{\"type\":\"structure\",\"members\":{\"ResourceARNUpdate\":{},\"RoleARNUpdate\":{}}},\"DestinationSchemaUpdate\":{\"shape\":\"S16\"}}}},\"ReferenceDataSourceUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ReferenceId\"],\"members\":{\"ReferenceId\":{},\"TableNameUpdate\":{},\"S3ReferenceDataSourceUpdate\":{\"type\":\"structure\",\"members\":{\"BucketARNUpdate\":{},\"FileKeyUpdate\":{},\"ReferenceRoleARNUpdate\":{}}},\"ReferenceSchemaUpdate\":{\"shape\":\"Si\"}}}},\"CloudWatchLoggingOptionUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CloudWatchLoggingOptionId\"],\"members\":{\"CloudWatchLoggingOptionId\":{},\"LogStreamARNUpdate\":{},\"RoleARNUpdate\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"LogStreamARN\",\"RoleARN\"],\"members\":{\"LogStreamARN\":{},\"RoleARN\":{}}},\"S9\":{\"type\":\"structure\",\"required\":[\"NamePrefix\",\"InputSchema\"],\"members\":{\"NamePrefix\":{},\"InputProcessingConfiguration\":{\"shape\":\"Sb\"},\"KinesisStreamsInput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"RoleARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"KinesisFirehoseInput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"RoleARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"InputParallelism\":{\"shape\":\"Sg\"},\"InputSchema\":{\"shape\":\"Si\"}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"InputLambdaProcessor\"],\"members\":{\"InputLambdaProcessor\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"RoleARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"Count\":{\"type\":\"integer\"}}},\"Si\":{\"type\":\"structure\",\"required\":[\"RecordFormat\",\"RecordColumns\"],\"members\":{\"RecordFormat\":{\"shape\":\"Sj\"},\"RecordEncoding\":{},\"RecordColumns\":{\"shape\":\"Ss\"}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"RecordFormatType\"],\"members\":{\"RecordFormatType\":{},\"MappingParameters\":{\"type\":\"structure\",\"members\":{\"JSONMappingParameters\":{\"type\":\"structure\",\"required\":[\"RecordRowPath\"],\"members\":{\"RecordRowPath\":{}}},\"CSVMappingParameters\":{\"type\":\"structure\",\"required\":[\"RecordRowDelimiter\",\"RecordColumnDelimiter\"],\"members\":{\"RecordRowDelimiter\":{},\"RecordColumnDelimiter\":{}}}}}}},\"Ss\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"SqlType\"],\"members\":{\"Name\":{},\"Mapping\":{},\"SqlType\":{}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"Name\",\"DestinationSchema\"],\"members\":{\"Name\":{},\"KinesisStreamsOutput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"RoleARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"KinesisFirehoseOutput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"RoleARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"LambdaOutput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"RoleARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"DestinationSchema\":{\"shape\":\"S16\"}}},\"S16\":{\"type\":\"structure\",\"required\":[\"RecordFormatType\"],\"members\":{\"RecordFormatType\":{}}},\"S1l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S1q\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"ApplicationARN\",\"ApplicationStatus\"],\"members\":{\"ApplicationName\":{},\"ApplicationARN\":{},\"ApplicationStatus\":{}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"InputStartingPosition\":{}}}}}");

/***/ }),

/***/ 18363:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 70128:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-05-23\",\"endpointPrefix\":\"kinesisanalytics\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Kinesis Analytics V2\",\"serviceFullName\":\"Amazon Kinesis Analytics\",\"serviceId\":\"Kinesis Analytics V2\",\"signatureVersion\":\"v4\",\"signingName\":\"kinesisanalytics\",\"targetPrefix\":\"KinesisAnalytics_20180523\",\"uid\":\"kinesisanalyticsv2-2018-05-23\"},\"operations\":{\"AddApplicationCloudWatchLoggingOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"CloudWatchLoggingOption\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"CloudWatchLoggingOption\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"CloudWatchLoggingOptionDescriptions\":{\"shape\":\"S8\"}}}},\"AddApplicationInput\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"Input\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"Input\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"InputDescriptions\":{\"shape\":\"S11\"}}}},\"AddApplicationInputProcessingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"InputId\",\"InputProcessingConfiguration\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"InputId\":{},\"InputProcessingConfiguration\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"InputId\":{},\"InputProcessingConfigurationDescription\":{\"shape\":\"S14\"}}}},\"AddApplicationOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"Output\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"Output\":{\"shape\":\"S1d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"OutputDescriptions\":{\"shape\":\"S1j\"}}}},\"AddApplicationReferenceDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"ReferenceDataSource\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"ReferenceDataSource\":{\"shape\":\"S1p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"ReferenceDataSourceDescriptions\":{\"shape\":\"S1v\"}}}},\"AddApplicationVpcConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"VpcConfiguration\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"VpcConfiguration\":{\"shape\":\"S1z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"VpcConfigurationDescription\":{\"shape\":\"S25\"}}}},\"CreateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"RuntimeEnvironment\",\"ServiceExecutionRole\"],\"members\":{\"ApplicationName\":{},\"ApplicationDescription\":{},\"RuntimeEnvironment\":{},\"ServiceExecutionRole\":{},\"ApplicationConfiguration\":{\"type\":\"structure\",\"required\":[\"ApplicationCodeConfiguration\"],\"members\":{\"SqlApplicationConfiguration\":{\"type\":\"structure\",\"members\":{\"Inputs\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\"}},\"Outputs\":{\"type\":\"list\",\"member\":{\"shape\":\"S1d\"}},\"ReferenceDataSources\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\"}}}},\"FlinkApplicationConfiguration\":{\"type\":\"structure\",\"members\":{\"CheckpointConfiguration\":{\"type\":\"structure\",\"required\":[\"ConfigurationType\"],\"members\":{\"ConfigurationType\":{},\"CheckpointingEnabled\":{\"type\":\"boolean\"},\"CheckpointInterval\":{\"type\":\"long\"},\"MinPauseBetweenCheckpoints\":{\"type\":\"long\"}}},\"MonitoringConfiguration\":{\"type\":\"structure\",\"required\":[\"ConfigurationType\"],\"members\":{\"ConfigurationType\":{},\"MetricsLevel\":{},\"LogLevel\":{}}},\"ParallelismConfiguration\":{\"type\":\"structure\",\"required\":[\"ConfigurationType\"],\"members\":{\"ConfigurationType\":{},\"Parallelism\":{\"type\":\"integer\"},\"ParallelismPerKPU\":{\"type\":\"integer\"},\"AutoScalingEnabled\":{\"type\":\"boolean\"}}}}},\"EnvironmentProperties\":{\"type\":\"structure\",\"required\":[\"PropertyGroups\"],\"members\":{\"PropertyGroups\":{\"shape\":\"S2s\"}}},\"ApplicationCodeConfiguration\":{\"type\":\"structure\",\"required\":[\"CodeContentType\"],\"members\":{\"CodeContent\":{\"type\":\"structure\",\"members\":{\"TextContent\":{},\"ZipFileContent\":{\"type\":\"blob\"},\"S3ContentLocation\":{\"type\":\"structure\",\"required\":[\"BucketARN\",\"FileKey\"],\"members\":{\"BucketARN\":{},\"FileKey\":{},\"ObjectVersion\":{}}}}},\"CodeContentType\":{}}},\"ApplicationSnapshotConfiguration\":{\"type\":\"structure\",\"required\":[\"SnapshotsEnabled\"],\"members\":{\"SnapshotsEnabled\":{\"type\":\"boolean\"}}},\"VpcConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S1z\"}}}},\"CloudWatchLoggingOptions\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"Tags\":{\"shape\":\"S37\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationDetail\"],\"members\":{\"ApplicationDetail\":{\"shape\":\"S3c\"}}}},\"CreateApplicationPresignedUrl\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"UrlType\"],\"members\":{\"ApplicationName\":{},\"UrlType\":{},\"SessionExpirationDurationInSeconds\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizedUrl\":{}}}},\"CreateApplicationSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"SnapshotName\"],\"members\":{\"ApplicationName\":{},\"SnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CreateTimestamp\"],\"members\":{\"ApplicationName\":{},\"CreateTimestamp\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplicationCloudWatchLoggingOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"CloudWatchLoggingOptionId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"CloudWatchLoggingOptionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"CloudWatchLoggingOptionDescriptions\":{\"shape\":\"S8\"}}}},\"DeleteApplicationInputProcessingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"InputId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"InputId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"}}}},\"DeleteApplicationOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"OutputId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"OutputId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"}}}},\"DeleteApplicationReferenceDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"ReferenceId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"ReferenceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"}}}},\"DeleteApplicationSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"SnapshotName\",\"SnapshotCreationTimestamp\"],\"members\":{\"ApplicationName\":{},\"SnapshotName\":{},\"SnapshotCreationTimestamp\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteApplicationVpcConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\",\"VpcConfigurationId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"VpcConfigurationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationARN\":{},\"ApplicationVersionId\":{\"type\":\"long\"}}}},\"DescribeApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"IncludeAdditionalDetails\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationDetail\"],\"members\":{\"ApplicationDetail\":{\"shape\":\"S3c\"}}}},\"DescribeApplicationSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"SnapshotName\"],\"members\":{\"ApplicationName\":{},\"SnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"SnapshotDetails\"],\"members\":{\"SnapshotDetails\":{\"shape\":\"S4o\"}}}},\"DiscoverInputSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceExecutionRole\"],\"members\":{\"ResourceARN\":{},\"ServiceExecutionRole\":{},\"InputStartingPositionConfiguration\":{\"shape\":\"S18\"},\"S3Configuration\":{\"type\":\"structure\",\"required\":[\"BucketARN\",\"FileKey\"],\"members\":{\"BucketARN\":{},\"FileKey\":{}}},\"InputProcessingConfiguration\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InputSchema\":{\"shape\":\"Sl\"},\"ParsedInputRecords\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{}}},\"ProcessedInputRecords\":{\"type\":\"list\",\"member\":{}},\"RawInputRecords\":{\"type\":\"list\",\"member\":{}}}}},\"ListApplicationSnapshots\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SnapshotSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"S4o\"}},\"NextToken\":{}}}},\"ListApplications\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationSummaries\"],\"members\":{\"ApplicationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"ApplicationARN\",\"ApplicationStatus\",\"ApplicationVersionId\",\"RuntimeEnvironment\"],\"members\":{\"ApplicationName\":{},\"ApplicationARN\":{},\"ApplicationStatus\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"RuntimeEnvironment\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S37\"}}}},\"StartApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"RunConfiguration\"],\"members\":{\"ApplicationName\":{},\"RunConfiguration\":{\"type\":\"structure\",\"members\":{\"FlinkRunConfiguration\":{\"shape\":\"S3q\"},\"SqlRunConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InputId\",\"InputStartingPositionConfiguration\"],\"members\":{\"InputId\":{},\"InputStartingPositionConfiguration\":{\"shape\":\"S18\"}}}},\"ApplicationRestoreConfiguration\":{\"shape\":\"S3n\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\"],\"members\":{\"ApplicationName\":{},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S37\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"ApplicationName\",\"CurrentApplicationVersionId\"],\"members\":{\"ApplicationName\":{},\"CurrentApplicationVersionId\":{\"type\":\"long\"},\"ApplicationConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"SqlApplicationConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"InputUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InputId\"],\"members\":{\"InputId\":{},\"NamePrefixUpdate\":{},\"InputProcessingConfigurationUpdate\":{\"type\":\"structure\",\"required\":[\"InputLambdaProcessorUpdate\"],\"members\":{\"InputLambdaProcessorUpdate\":{\"type\":\"structure\",\"required\":[\"ResourceARNUpdate\"],\"members\":{\"ResourceARNUpdate\":{}}}}},\"KinesisStreamsInputUpdate\":{\"type\":\"structure\",\"required\":[\"ResourceARNUpdate\"],\"members\":{\"ResourceARNUpdate\":{}}},\"KinesisFirehoseInputUpdate\":{\"type\":\"structure\",\"required\":[\"ResourceARNUpdate\"],\"members\":{\"ResourceARNUpdate\":{}}},\"InputSchemaUpdate\":{\"type\":\"structure\",\"members\":{\"RecordFormatUpdate\":{\"shape\":\"Sm\"},\"RecordEncodingUpdate\":{},\"RecordColumnUpdates\":{\"shape\":\"Sv\"}}},\"InputParallelismUpdate\":{\"type\":\"structure\",\"required\":[\"CountUpdate\"],\"members\":{\"CountUpdate\":{\"type\":\"integer\"}}}}}},\"OutputUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OutputId\"],\"members\":{\"OutputId\":{},\"NameUpdate\":{},\"KinesisStreamsOutputUpdate\":{\"type\":\"structure\",\"required\":[\"ResourceARNUpdate\"],\"members\":{\"ResourceARNUpdate\":{}}},\"KinesisFirehoseOutputUpdate\":{\"type\":\"structure\",\"required\":[\"ResourceARNUpdate\"],\"members\":{\"ResourceARNUpdate\":{}}},\"LambdaOutputUpdate\":{\"type\":\"structure\",\"required\":[\"ResourceARNUpdate\"],\"members\":{\"ResourceARNUpdate\":{}}},\"DestinationSchemaUpdate\":{\"shape\":\"S1h\"}}}},\"ReferenceDataSourceUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ReferenceId\"],\"members\":{\"ReferenceId\":{},\"TableNameUpdate\":{},\"S3ReferenceDataSourceUpdate\":{\"type\":\"structure\",\"members\":{\"BucketARNUpdate\":{},\"FileKeyUpdate\":{}}},\"ReferenceSchemaUpdate\":{\"shape\":\"Sl\"}}}}}},\"ApplicationCodeConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"CodeContentTypeUpdate\":{},\"CodeContentUpdate\":{\"type\":\"structure\",\"members\":{\"TextContentUpdate\":{},\"ZipFileContentUpdate\":{\"type\":\"blob\"},\"S3ContentLocationUpdate\":{\"type\":\"structure\",\"members\":{\"BucketARNUpdate\":{},\"FileKeyUpdate\":{},\"ObjectVersionUpdate\":{}}}}}}},\"FlinkApplicationConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"CheckpointConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"ConfigurationTypeUpdate\":{},\"CheckpointingEnabledUpdate\":{\"type\":\"boolean\"},\"CheckpointIntervalUpdate\":{\"type\":\"long\"},\"MinPauseBetweenCheckpointsUpdate\":{\"type\":\"long\"}}},\"MonitoringConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"ConfigurationTypeUpdate\":{},\"MetricsLevelUpdate\":{},\"LogLevelUpdate\":{}}},\"ParallelismConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"ConfigurationTypeUpdate\":{},\"ParallelismUpdate\":{\"type\":\"integer\"},\"ParallelismPerKPUUpdate\":{\"type\":\"integer\"},\"AutoScalingEnabledUpdate\":{\"type\":\"boolean\"}}}}},\"EnvironmentPropertyUpdates\":{\"type\":\"structure\",\"required\":[\"PropertyGroups\"],\"members\":{\"PropertyGroups\":{\"shape\":\"S2s\"}}},\"ApplicationSnapshotConfigurationUpdate\":{\"type\":\"structure\",\"required\":[\"SnapshotsEnabledUpdate\"],\"members\":{\"SnapshotsEnabledUpdate\":{\"type\":\"boolean\"}}},\"VpcConfigurationUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VpcConfigurationId\"],\"members\":{\"VpcConfigurationId\":{},\"SubnetIdUpdates\":{\"shape\":\"S20\"},\"SecurityGroupIdUpdates\":{\"shape\":\"S22\"}}}}}},\"ServiceExecutionRoleUpdate\":{},\"RunConfigurationUpdate\":{\"type\":\"structure\",\"members\":{\"FlinkRunConfiguration\":{\"shape\":\"S3q\"},\"ApplicationRestoreConfiguration\":{\"shape\":\"S3n\"}}},\"CloudWatchLoggingOptionUpdates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CloudWatchLoggingOptionId\"],\"members\":{\"CloudWatchLoggingOptionId\":{},\"LogStreamARNUpdate\":{}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"ApplicationDetail\"],\"members\":{\"ApplicationDetail\":{\"shape\":\"S3c\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"LogStreamARN\"],\"members\":{\"LogStreamARN\":{}}},\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LogStreamARN\"],\"members\":{\"CloudWatchLoggingOptionId\":{},\"LogStreamARN\":{},\"RoleARN\":{}}}},\"Sd\":{\"type\":\"structure\",\"required\":[\"NamePrefix\",\"InputSchema\"],\"members\":{\"NamePrefix\":{},\"InputProcessingConfiguration\":{\"shape\":\"Sf\"},\"KinesisStreamsInput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"KinesisFirehoseInput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"InputParallelism\":{\"shape\":\"Sj\"},\"InputSchema\":{\"shape\":\"Sl\"}}},\"Sf\":{\"type\":\"structure\",\"required\":[\"InputLambdaProcessor\"],\"members\":{\"InputLambdaProcessor\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"Count\":{\"type\":\"integer\"}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"RecordFormat\",\"RecordColumns\"],\"members\":{\"RecordFormat\":{\"shape\":\"Sm\"},\"RecordEncoding\":{},\"RecordColumns\":{\"shape\":\"Sv\"}}},\"Sm\":{\"type\":\"structure\",\"required\":[\"RecordFormatType\"],\"members\":{\"RecordFormatType\":{},\"MappingParameters\":{\"type\":\"structure\",\"members\":{\"JSONMappingParameters\":{\"type\":\"structure\",\"required\":[\"RecordRowPath\"],\"members\":{\"RecordRowPath\":{}}},\"CSVMappingParameters\":{\"type\":\"structure\",\"required\":[\"RecordRowDelimiter\",\"RecordColumnDelimiter\"],\"members\":{\"RecordRowDelimiter\":{},\"RecordColumnDelimiter\":{}}}}}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"SqlType\"],\"members\":{\"Name\":{},\"Mapping\":{},\"SqlType\":{}}}},\"S11\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InputId\":{},\"NamePrefix\":{},\"InAppStreamNames\":{\"type\":\"list\",\"member\":{}},\"InputProcessingConfigurationDescription\":{\"shape\":\"S14\"},\"KinesisStreamsInputDescription\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"KinesisFirehoseInputDescription\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"InputSchema\":{\"shape\":\"Sl\"},\"InputParallelism\":{\"shape\":\"Sj\"},\"InputStartingPositionConfiguration\":{\"shape\":\"S18\"}}}},\"S14\":{\"type\":\"structure\",\"members\":{\"InputLambdaProcessorDescription\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}}}},\"S18\":{\"type\":\"structure\",\"members\":{\"InputStartingPosition\":{}}},\"S1d\":{\"type\":\"structure\",\"required\":[\"Name\",\"DestinationSchema\"],\"members\":{\"Name\":{},\"KinesisStreamsOutput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"KinesisFirehoseOutput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"LambdaOutput\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"DestinationSchema\":{\"shape\":\"S1h\"}}},\"S1h\":{\"type\":\"structure\",\"required\":[\"RecordFormatType\"],\"members\":{\"RecordFormatType\":{}}},\"S1j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OutputId\":{},\"Name\":{},\"KinesisStreamsOutputDescription\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"KinesisFirehoseOutputDescription\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"LambdaOutputDescription\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"RoleARN\":{}}},\"DestinationSchema\":{\"shape\":\"S1h\"}}}},\"S1p\":{\"type\":\"structure\",\"required\":[\"TableName\",\"ReferenceSchema\"],\"members\":{\"TableName\":{},\"S3ReferenceDataSource\":{\"type\":\"structure\",\"members\":{\"BucketARN\":{},\"FileKey\":{}}},\"ReferenceSchema\":{\"shape\":\"Sl\"}}},\"S1v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ReferenceId\",\"TableName\",\"S3ReferenceDataSourceDescription\"],\"members\":{\"ReferenceId\":{},\"TableName\":{},\"S3ReferenceDataSourceDescription\":{\"type\":\"structure\",\"required\":[\"BucketARN\",\"FileKey\"],\"members\":{\"BucketARN\":{},\"FileKey\":{},\"ReferenceRoleARN\":{}}},\"ReferenceSchema\":{\"shape\":\"Sl\"}}}},\"S1z\":{\"type\":\"structure\",\"required\":[\"SubnetIds\",\"SecurityGroupIds\"],\"members\":{\"SubnetIds\":{\"shape\":\"S20\"},\"SecurityGroupIds\":{\"shape\":\"S22\"}}},\"S20\":{\"type\":\"list\",\"member\":{}},\"S22\":{\"type\":\"list\",\"member\":{}},\"S25\":{\"type\":\"structure\",\"required\":[\"VpcConfigurationId\",\"VpcId\",\"SubnetIds\",\"SecurityGroupIds\"],\"members\":{\"VpcConfigurationId\":{},\"VpcId\":{},\"SubnetIds\":{\"shape\":\"S20\"},\"SecurityGroupIds\":{\"shape\":\"S22\"}}},\"S2s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PropertyGroupId\",\"PropertyMap\"],\"members\":{\"PropertyGroupId\":{},\"PropertyMap\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S37\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S3c\":{\"type\":\"structure\",\"required\":[\"ApplicationARN\",\"ApplicationName\",\"RuntimeEnvironment\",\"ApplicationStatus\",\"ApplicationVersionId\"],\"members\":{\"ApplicationARN\":{},\"ApplicationDescription\":{},\"ApplicationName\":{},\"RuntimeEnvironment\":{},\"ServiceExecutionRole\":{},\"ApplicationStatus\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"CreateTimestamp\":{\"type\":\"timestamp\"},\"LastUpdateTimestamp\":{\"type\":\"timestamp\"},\"ApplicationConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"SqlApplicationConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"InputDescriptions\":{\"shape\":\"S11\"},\"OutputDescriptions\":{\"shape\":\"S1j\"},\"ReferenceDataSourceDescriptions\":{\"shape\":\"S1v\"}}},\"ApplicationCodeConfigurationDescription\":{\"type\":\"structure\",\"required\":[\"CodeContentType\"],\"members\":{\"CodeContentType\":{},\"CodeContentDescription\":{\"type\":\"structure\",\"members\":{\"TextContent\":{},\"CodeMD5\":{},\"CodeSize\":{\"type\":\"long\"},\"S3ApplicationCodeLocationDescription\":{\"type\":\"structure\",\"required\":[\"BucketARN\",\"FileKey\"],\"members\":{\"BucketARN\":{},\"FileKey\":{},\"ObjectVersion\":{}}}}}}},\"RunConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"ApplicationRestoreConfigurationDescription\":{\"shape\":\"S3n\"},\"FlinkRunConfigurationDescription\":{\"shape\":\"S3q\"}}},\"FlinkApplicationConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"CheckpointConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"ConfigurationType\":{},\"CheckpointingEnabled\":{\"type\":\"boolean\"},\"CheckpointInterval\":{\"type\":\"long\"},\"MinPauseBetweenCheckpoints\":{\"type\":\"long\"}}},\"MonitoringConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"ConfigurationType\":{},\"MetricsLevel\":{},\"LogLevel\":{}}},\"ParallelismConfigurationDescription\":{\"type\":\"structure\",\"members\":{\"ConfigurationType\":{},\"Parallelism\":{\"type\":\"integer\"},\"ParallelismPerKPU\":{\"type\":\"integer\"},\"CurrentParallelism\":{\"type\":\"integer\"},\"AutoScalingEnabled\":{\"type\":\"boolean\"}}},\"JobPlanDescription\":{}}},\"EnvironmentPropertyDescriptions\":{\"type\":\"structure\",\"members\":{\"PropertyGroupDescriptions\":{\"shape\":\"S2s\"}}},\"ApplicationSnapshotConfigurationDescription\":{\"type\":\"structure\",\"required\":[\"SnapshotsEnabled\"],\"members\":{\"SnapshotsEnabled\":{\"type\":\"boolean\"}}},\"VpcConfigurationDescriptions\":{\"type\":\"list\",\"member\":{\"shape\":\"S25\"}}}},\"CloudWatchLoggingOptionDescriptions\":{\"shape\":\"S8\"}}},\"S3n\":{\"type\":\"structure\",\"required\":[\"ApplicationRestoreType\"],\"members\":{\"ApplicationRestoreType\":{},\"SnapshotName\":{}}},\"S3q\":{\"type\":\"structure\",\"members\":{\"AllowNonRestoredState\":{\"type\":\"boolean\"}}},\"S4o\":{\"type\":\"structure\",\"required\":[\"SnapshotName\",\"SnapshotStatus\",\"ApplicationVersionId\"],\"members\":{\"SnapshotName\":{},\"SnapshotStatus\":{},\"ApplicationVersionId\":{\"type\":\"long\"},\"SnapshotCreationTimestamp\":{\"type\":\"timestamp\"}}}}}");

/***/ }),

/***/ 6842:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 28189:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-30\",\"endpointPrefix\":\"kinesisvideo\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Kinesis Video\",\"serviceFullName\":\"Amazon Kinesis Video Streams\",\"serviceId\":\"Kinesis Video\",\"signatureVersion\":\"v4\",\"uid\":\"kinesisvideo-2017-09-30\"},\"operations\":{\"CreateSignalingChannel\":{\"http\":{\"requestUri\":\"/createSignalingChannel\"},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelName\"],\"members\":{\"ChannelName\":{},\"ChannelType\":{},\"SingleMasterConfiguration\":{\"shape\":\"S4\"},\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelARN\":{}}}},\"CreateStream\":{\"http\":{\"requestUri\":\"/createStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamName\"],\"members\":{\"DeviceName\":{},\"StreamName\":{},\"MediaType\":{},\"KmsKeyId\":{},\"DataRetentionInHours\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamARN\":{}}}},\"DeleteSignalingChannel\":{\"http\":{\"requestUri\":\"/deleteSignalingChannel\"},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelARN\"],\"members\":{\"ChannelARN\":{},\"CurrentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteStream\":{\"http\":{\"requestUri\":\"/deleteStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"StreamARN\"],\"members\":{\"StreamARN\":{},\"CurrentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeSignalingChannel\":{\"http\":{\"requestUri\":\"/describeSignalingChannel\"},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelName\":{},\"ChannelARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelInfo\":{\"shape\":\"Sr\"}}}},\"DescribeStream\":{\"http\":{\"requestUri\":\"/describeStream\"},\"input\":{\"type\":\"structure\",\"members\":{\"StreamName\":{},\"StreamARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamInfo\":{\"shape\":\"Sw\"}}}},\"GetDataEndpoint\":{\"http\":{\"requestUri\":\"/getDataEndpoint\"},\"input\":{\"type\":\"structure\",\"required\":[\"APIName\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"APIName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataEndpoint\":{}}}},\"GetSignalingChannelEndpoint\":{\"http\":{\"requestUri\":\"/getSignalingChannelEndpoint\"},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelARN\"],\"members\":{\"ChannelARN\":{},\"SingleMasterChannelEndpointConfiguration\":{\"type\":\"structure\",\"members\":{\"Protocols\":{\"type\":\"list\",\"member\":{}},\"Role\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceEndpointList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Protocol\":{},\"ResourceEndpoint\":{}}}}}}},\"ListSignalingChannels\":{\"http\":{\"requestUri\":\"/listSignalingChannels\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"ChannelNameCondition\":{\"type\":\"structure\",\"members\":{\"ComparisonOperator\":{},\"ComparisonValue\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelInfoList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"NextToken\":{}}}},\"ListStreams\":{\"http\":{\"requestUri\":\"/listStreams\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"StreamNameCondition\":{\"type\":\"structure\",\"members\":{\"ComparisonOperator\":{},\"ComparisonValue\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamInfoList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/ListTagsForResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"NextToken\":{},\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Tags\":{\"shape\":\"Si\"}}}},\"ListTagsForStream\":{\"http\":{\"requestUri\":\"/listTagsForStream\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"StreamARN\":{},\"StreamName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Tags\":{\"shape\":\"Si\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/TagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagStream\":{\"http\":{\"requestUri\":\"/tagStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"StreamARN\":{},\"StreamName\":{},\"Tags\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/UntagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeyList\"],\"members\":{\"ResourceARN\":{},\"TagKeyList\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagStream\":{\"http\":{\"requestUri\":\"/untagStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"TagKeyList\"],\"members\":{\"StreamARN\":{},\"StreamName\":{},\"TagKeyList\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDataRetention\":{\"http\":{\"requestUri\":\"/updateDataRetention\"},\"input\":{\"type\":\"structure\",\"required\":[\"CurrentVersion\",\"Operation\",\"DataRetentionChangeInHours\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"CurrentVersion\":{},\"Operation\":{},\"DataRetentionChangeInHours\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSignalingChannel\":{\"http\":{\"requestUri\":\"/updateSignalingChannel\"},\"input\":{\"type\":\"structure\",\"required\":[\"ChannelARN\",\"CurrentVersion\"],\"members\":{\"ChannelARN\":{},\"CurrentVersion\":{},\"SingleMasterConfiguration\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateStream\":{\"http\":{\"requestUri\":\"/updateStream\"},\"input\":{\"type\":\"structure\",\"required\":[\"CurrentVersion\"],\"members\":{\"StreamName\":{},\"StreamARN\":{},\"CurrentVersion\":{},\"DeviceName\":{},\"MediaType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"MessageTtlSeconds\":{\"type\":\"integer\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}},\"Si\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sr\":{\"type\":\"structure\",\"members\":{\"ChannelName\":{},\"ChannelARN\":{},\"ChannelType\":{},\"ChannelStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"SingleMasterConfiguration\":{\"shape\":\"S4\"},\"Version\":{}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"DeviceName\":{},\"StreamName\":{},\"StreamARN\":{},\"MediaType\":{},\"KmsKeyId\":{},\"Version\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"DataRetentionInHours\":{\"type\":\"integer\"}}},\"S1v\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 15191:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListSignalingChannels\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ChannelInfoList\"},\"ListStreams\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"StreamInfoList\"}}}");

/***/ }),

/***/ 60611:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-11-01\",\"endpointPrefix\":\"kms\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"KMS\",\"serviceFullName\":\"AWS Key Management Service\",\"serviceId\":\"KMS\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"TrentService\",\"uid\":\"kms-2014-11-01\"},\"operations\":{\"CancelKeyDeletion\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{}}}},\"ConnectCustomKeyStore\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomKeyStoreId\"],\"members\":{\"CustomKeyStoreId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasName\",\"TargetKeyId\"],\"members\":{\"AliasName\":{},\"TargetKeyId\":{}}}},\"CreateCustomKeyStore\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomKeyStoreName\",\"CloudHsmClusterId\",\"TrustAnchorCertificate\",\"KeyStorePassword\"],\"members\":{\"CustomKeyStoreName\":{},\"CloudHsmClusterId\":{},\"TrustAnchorCertificate\":{},\"KeyStorePassword\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomKeyStoreId\":{}}}},\"CreateGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"GranteePrincipal\",\"Operations\"],\"members\":{\"KeyId\":{},\"GranteePrincipal\":{},\"RetiringPrincipal\":{},\"Operations\":{\"shape\":\"Sh\"},\"Constraints\":{\"shape\":\"Sj\"},\"GrantTokens\":{\"shape\":\"Sn\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GrantToken\":{},\"GrantId\":{}}}},\"CreateKey\":{\"input\":{\"type\":\"structure\",\"members\":{\"Policy\":{},\"Description\":{},\"KeyUsage\":{},\"CustomerMasterKeySpec\":{},\"Origin\":{},\"CustomKeyStoreId\":{},\"BypassPolicyLockoutSafetyCheck\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyMetadata\":{\"shape\":\"S14\"}}}},\"Decrypt\":{\"input\":{\"type\":\"structure\",\"required\":[\"CiphertextBlob\"],\"members\":{\"CiphertextBlob\":{\"type\":\"blob\"},\"EncryptionContext\":{\"shape\":\"Sk\"},\"GrantTokens\":{\"shape\":\"Sn\"},\"KeyId\":{},\"EncryptionAlgorithm\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"Plaintext\":{\"shape\":\"S1i\"},\"EncryptionAlgorithm\":{}}}},\"DeleteAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasName\"],\"members\":{\"AliasName\":{}}}},\"DeleteCustomKeyStore\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomKeyStoreId\"],\"members\":{\"CustomKeyStoreId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteImportedKeyMaterial\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}}},\"DescribeCustomKeyStores\":{\"input\":{\"type\":\"structure\",\"members\":{\"CustomKeyStoreId\":{},\"CustomKeyStoreName\":{},\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomKeyStores\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CustomKeyStoreId\":{},\"CustomKeyStoreName\":{},\"CloudHsmClusterId\":{},\"TrustAnchorCertificate\":{},\"ConnectionState\":{},\"ConnectionErrorCode\":{},\"CreationDate\":{\"type\":\"timestamp\"}}}},\"NextMarker\":{},\"Truncated\":{\"type\":\"boolean\"}}}},\"DescribeKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyMetadata\":{\"shape\":\"S14\"}}}},\"DisableKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}}},\"DisableKeyRotation\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}}},\"DisconnectCustomKeyStore\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomKeyStoreId\"],\"members\":{\"CustomKeyStoreId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}}},\"EnableKeyRotation\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}}},\"Encrypt\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"Plaintext\"],\"members\":{\"KeyId\":{},\"Plaintext\":{\"shape\":\"S1i\"},\"EncryptionContext\":{\"shape\":\"Sk\"},\"GrantTokens\":{\"shape\":\"Sn\"},\"EncryptionAlgorithm\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CiphertextBlob\":{\"type\":\"blob\"},\"KeyId\":{},\"EncryptionAlgorithm\":{}}}},\"GenerateDataKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"EncryptionContext\":{\"shape\":\"Sk\"},\"NumberOfBytes\":{\"type\":\"integer\"},\"KeySpec\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CiphertextBlob\":{\"type\":\"blob\"},\"Plaintext\":{\"shape\":\"S1i\"},\"KeyId\":{}}}},\"GenerateDataKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"KeyPairSpec\"],\"members\":{\"EncryptionContext\":{\"shape\":\"Sk\"},\"KeyId\":{},\"KeyPairSpec\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrivateKeyCiphertextBlob\":{\"type\":\"blob\"},\"PrivateKeyPlaintext\":{\"shape\":\"S1i\"},\"PublicKey\":{\"type\":\"blob\"},\"KeyId\":{},\"KeyPairSpec\":{}}}},\"GenerateDataKeyPairWithoutPlaintext\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"KeyPairSpec\"],\"members\":{\"EncryptionContext\":{\"shape\":\"Sk\"},\"KeyId\":{},\"KeyPairSpec\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrivateKeyCiphertextBlob\":{\"type\":\"blob\"},\"PublicKey\":{\"type\":\"blob\"},\"KeyId\":{},\"KeyPairSpec\":{}}}},\"GenerateDataKeyWithoutPlaintext\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"EncryptionContext\":{\"shape\":\"Sk\"},\"KeySpec\":{},\"NumberOfBytes\":{\"type\":\"integer\"},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CiphertextBlob\":{\"type\":\"blob\"},\"KeyId\":{}}}},\"GenerateRandom\":{\"input\":{\"type\":\"structure\",\"members\":{\"NumberOfBytes\":{\"type\":\"integer\"},\"CustomKeyStoreId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Plaintext\":{\"shape\":\"S1i\"}}}},\"GetKeyPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"PolicyName\"],\"members\":{\"KeyId\":{},\"PolicyName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"GetKeyRotationStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyRotationEnabled\":{\"type\":\"boolean\"}}}},\"GetParametersForImport\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"WrappingAlgorithm\",\"WrappingKeySpec\"],\"members\":{\"KeyId\":{},\"WrappingAlgorithm\":{},\"WrappingKeySpec\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"ImportToken\":{\"type\":\"blob\"},\"PublicKey\":{\"shape\":\"S1i\"},\"ParametersValidTo\":{\"type\":\"timestamp\"}}}},\"GetPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"PublicKey\":{\"type\":\"blob\"},\"CustomerMasterKeySpec\":{},\"KeyUsage\":{},\"EncryptionAlgorithms\":{\"shape\":\"S1b\"},\"SigningAlgorithms\":{\"shape\":\"S1d\"}}}},\"ImportKeyMaterial\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"ImportToken\",\"EncryptedKeyMaterial\"],\"members\":{\"KeyId\":{},\"ImportToken\":{\"type\":\"blob\"},\"EncryptedKeyMaterial\":{\"type\":\"blob\"},\"ValidTo\":{\"type\":\"timestamp\"},\"ExpirationModel\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListAliases\":{\"input\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Aliases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AliasName\":{},\"AliasArn\":{},\"TargetKeyId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"LastUpdatedDate\":{\"type\":\"timestamp\"}}}},\"NextMarker\":{},\"Truncated\":{\"type\":\"boolean\"}}}},\"ListGrants\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"Limit\":{\"type\":\"integer\"},\"Marker\":{},\"KeyId\":{},\"GrantId\":{},\"GranteePrincipal\":{}}},\"output\":{\"shape\":\"S31\"}},\"ListKeyPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyNames\":{\"type\":\"list\",\"member\":{}},\"NextMarker\":{},\"Truncated\":{\"type\":\"boolean\"}}}},\"ListKeys\":{\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Keys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"KeyArn\":{}}}},\"NextMarker\":{},\"Truncated\":{\"type\":\"boolean\"}}}},\"ListResourceTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sz\"},\"NextMarker\":{},\"Truncated\":{\"type\":\"boolean\"}}}},\"ListRetirableGrants\":{\"input\":{\"type\":\"structure\",\"required\":[\"RetiringPrincipal\"],\"members\":{\"Limit\":{\"type\":\"integer\"},\"Marker\":{},\"RetiringPrincipal\":{}}},\"output\":{\"shape\":\"S31\"}},\"PutKeyPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"PolicyName\",\"Policy\"],\"members\":{\"KeyId\":{},\"PolicyName\":{},\"Policy\":{},\"BypassPolicyLockoutSafetyCheck\":{\"type\":\"boolean\"}}}},\"ReEncrypt\":{\"input\":{\"type\":\"structure\",\"required\":[\"CiphertextBlob\",\"DestinationKeyId\"],\"members\":{\"CiphertextBlob\":{\"type\":\"blob\"},\"SourceEncryptionContext\":{\"shape\":\"Sk\"},\"SourceKeyId\":{},\"DestinationKeyId\":{},\"DestinationEncryptionContext\":{\"shape\":\"Sk\"},\"SourceEncryptionAlgorithm\":{},\"DestinationEncryptionAlgorithm\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CiphertextBlob\":{\"type\":\"blob\"},\"SourceKeyId\":{},\"KeyId\":{},\"SourceEncryptionAlgorithm\":{},\"DestinationEncryptionAlgorithm\":{}}}},\"RetireGrant\":{\"input\":{\"type\":\"structure\",\"members\":{\"GrantToken\":{},\"KeyId\":{},\"GrantId\":{}}}},\"RevokeGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"GrantId\"],\"members\":{\"KeyId\":{},\"GrantId\":{}}}},\"ScheduleKeyDeletion\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{},\"PendingWindowInDays\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"DeletionDate\":{\"type\":\"timestamp\"}}}},\"Sign\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"Message\",\"SigningAlgorithm\"],\"members\":{\"KeyId\":{},\"Message\":{\"shape\":\"S1i\"},\"MessageType\":{},\"GrantTokens\":{\"shape\":\"Sn\"},\"SigningAlgorithm\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"Signature\":{\"type\":\"blob\"},\"SigningAlgorithm\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"Tags\"],\"members\":{\"KeyId\":{},\"Tags\":{\"shape\":\"Sz\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"TagKeys\"],\"members\":{\"KeyId\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"UpdateAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasName\",\"TargetKeyId\"],\"members\":{\"AliasName\":{},\"TargetKeyId\":{}}}},\"UpdateCustomKeyStore\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomKeyStoreId\"],\"members\":{\"CustomKeyStoreId\":{},\"NewCustomKeyStoreName\":{},\"KeyStorePassword\":{\"shape\":\"Sd\"},\"CloudHsmClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateKeyDescription\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"Description\"],\"members\":{\"KeyId\":{},\"Description\":{}}}},\"Verify\":{\"input\":{\"type\":\"structure\",\"required\":[\"KeyId\",\"Message\",\"Signature\",\"SigningAlgorithm\"],\"members\":{\"KeyId\":{},\"Message\":{\"shape\":\"S1i\"},\"MessageType\":{},\"Signature\":{\"type\":\"blob\"},\"SigningAlgorithm\":{},\"GrantTokens\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"SignatureValid\":{\"type\":\"boolean\"},\"SigningAlgorithm\":{}}}}},\"shapes\":{\"Sd\":{\"type\":\"string\",\"sensitive\":true},\"Sh\":{\"type\":\"list\",\"member\":{}},\"Sj\":{\"type\":\"structure\",\"members\":{\"EncryptionContextSubset\":{\"shape\":\"Sk\"},\"EncryptionContextEquals\":{\"shape\":\"Sk\"}}},\"Sk\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TagKey\",\"TagValue\"],\"members\":{\"TagKey\":{},\"TagValue\":{}}}},\"S14\":{\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"AWSAccountId\":{},\"KeyId\":{},\"Arn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"Enabled\":{\"type\":\"boolean\"},\"Description\":{},\"KeyUsage\":{},\"KeyState\":{},\"DeletionDate\":{\"type\":\"timestamp\"},\"ValidTo\":{\"type\":\"timestamp\"},\"Origin\":{},\"CustomKeyStoreId\":{},\"CloudHsmClusterId\":{},\"ExpirationModel\":{},\"KeyManager\":{},\"CustomerMasterKeySpec\":{},\"EncryptionAlgorithms\":{\"shape\":\"S1b\"},\"SigningAlgorithms\":{\"shape\":\"S1d\"}}},\"S1b\":{\"type\":\"list\",\"member\":{}},\"S1d\":{\"type\":\"list\",\"member\":{}},\"S1i\":{\"type\":\"blob\",\"sensitive\":true},\"S31\":{\"type\":\"structure\",\"members\":{\"Grants\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"GrantId\":{},\"Name\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"GranteePrincipal\":{},\"RetiringPrincipal\":{},\"IssuingAccount\":{},\"Operations\":{\"shape\":\"Sh\"},\"Constraints\":{\"shape\":\"Sj\"}}}},\"NextMarker\":{},\"Truncated\":{\"type\":\"boolean\"}}}}}");

/***/ }),

/***/ 97690:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAliases\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"more_results\":\"Truncated\",\"output_token\":\"NextMarker\",\"result_key\":\"Aliases\"},\"ListGrants\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"more_results\":\"Truncated\",\"output_token\":\"NextMarker\",\"result_key\":\"Grants\"},\"ListKeyPolicies\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"more_results\":\"Truncated\",\"output_token\":\"NextMarker\",\"result_key\":\"PolicyNames\"},\"ListKeys\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"more_results\":\"Truncated\",\"output_token\":\"NextMarker\",\"result_key\":\"Keys\"}}}");

/***/ }),

/***/ 65408:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-03-31\",\"endpointPrefix\":\"lakeformation\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Lake Formation\",\"serviceId\":\"LakeFormation\",\"signatureVersion\":\"v4\",\"signingName\":\"lakeformation\",\"targetPrefix\":\"AWSLakeFormation\",\"uid\":\"lakeformation-2017-03-31\"},\"operations\":{\"BatchGrantPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"CatalogId\":{},\"Entries\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Failures\":{\"shape\":\"Sm\"}}}},\"BatchRevokePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"CatalogId\":{},\"Entries\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Failures\":{\"shape\":\"Sm\"}}}},\"DeregisterResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceInfo\":{\"shape\":\"Sw\"}}}},\"GetDataLakeSettings\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataLakeSettings\":{\"shape\":\"S11\"}}}},\"GetEffectivePermissionsForPath\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"CatalogId\":{},\"ResourceArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Permissions\":{\"shape\":\"S1a\"},\"NextToken\":{}}}},\"GrantPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Principal\",\"Resource\",\"Permissions\"],\"members\":{\"CatalogId\":{},\"Principal\":{\"shape\":\"S6\"},\"Resource\":{\"shape\":\"S8\"},\"Permissions\":{\"shape\":\"Sj\"},\"PermissionsWithGrantOption\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListPermissions\":{\"input\":{\"type\":\"structure\",\"members\":{\"CatalogId\":{},\"Principal\":{\"shape\":\"S6\"},\"ResourceType\":{},\"Resource\":{\"shape\":\"S8\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PrincipalResourcePermissions\":{\"shape\":\"S1a\"},\"NextToken\":{}}}},\"ListResources\":{\"input\":{\"type\":\"structure\",\"members\":{\"FilterConditionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Field\":{},\"ComparisonOperator\":{},\"StringValueList\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceInfoList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}},\"NextToken\":{}}}},\"PutDataLakeSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataLakeSettings\"],\"members\":{\"CatalogId\":{},\"DataLakeSettings\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RegisterResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"UseServiceLinkedRole\":{\"type\":\"boolean\"},\"RoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RevokePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Principal\",\"Resource\",\"Permissions\"],\"members\":{\"CatalogId\":{},\"Principal\":{\"shape\":\"S6\"},\"Resource\":{\"shape\":\"S8\"},\"Permissions\":{\"shape\":\"Sj\"},\"PermissionsWithGrantOption\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"ResourceArn\"],\"members\":{\"RoleArn\":{},\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"S4\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Principal\":{\"shape\":\"S6\"},\"Resource\":{\"shape\":\"S8\"},\"Permissions\":{\"shape\":\"Sj\"},\"PermissionsWithGrantOption\":{\"shape\":\"Sj\"}}},\"S6\":{\"type\":\"structure\",\"members\":{\"DataLakePrincipalIdentifier\":{}}},\"S8\":{\"type\":\"structure\",\"members\":{\"Catalog\":{\"type\":\"structure\",\"members\":{}},\"Database\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"CatalogId\":{},\"Name\":{}}},\"Table\":{\"type\":\"structure\",\"required\":[\"DatabaseName\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Name\":{},\"TableWildcard\":{\"type\":\"structure\",\"members\":{}}}},\"TableWithColumns\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"Name\"],\"members\":{\"CatalogId\":{},\"DatabaseName\":{},\"Name\":{},\"ColumnNames\":{\"shape\":\"Sf\"},\"ColumnWildcard\":{\"type\":\"structure\",\"members\":{\"ExcludedColumnNames\":{\"shape\":\"Sf\"}}}}},\"DataLocation\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"CatalogId\":{},\"ResourceArn\":{}}}}},\"Sf\":{\"type\":\"list\",\"member\":{}},\"Sj\":{\"type\":\"list\",\"member\":{}},\"Sm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RequestEntry\":{\"shape\":\"S4\"},\"Error\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"RoleArn\":{},\"LastModified\":{\"type\":\"timestamp\"}}},\"S11\":{\"type\":\"structure\",\"members\":{\"DataLakeAdmins\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"CreateDatabaseDefaultPermissions\":{\"shape\":\"S13\"},\"CreateTableDefaultPermissions\":{\"shape\":\"S13\"},\"TrustedResourceOwners\":{\"type\":\"list\",\"member\":{}}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Principal\":{\"shape\":\"S6\"},\"Permissions\":{\"shape\":\"Sj\"}}}},\"S1a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Principal\":{\"shape\":\"S6\"},\"Resource\":{\"shape\":\"S8\"},\"Permissions\":{\"shape\":\"Sj\"},\"PermissionsWithGrantOption\":{\"shape\":\"Sj\"},\"AdditionalDetails\":{\"type\":\"structure\",\"members\":{\"ResourceShare\":{\"type\":\"list\",\"member\":{}}}}}}}}}");

/***/ }),

/***/ 89923:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetEffectivePermissionsForPath\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListPermissions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListResources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 63935:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2014-11-11\",\"endpointPrefix\":\"lambda\",\"serviceFullName\":\"AWS Lambda\",\"serviceId\":\"Lambda\",\"signatureVersion\":\"v4\",\"protocol\":\"rest-json\"},\"operations\":{\"AddEventSource\":{\"http\":{\"requestUri\":\"/2014-11-13/event-source-mappings/\"},\"input\":{\"type\":\"structure\",\"required\":[\"EventSource\",\"FunctionName\",\"Role\"],\"members\":{\"EventSource\":{},\"FunctionName\":{},\"Role\":{},\"BatchSize\":{\"type\":\"integer\"},\"Parameters\":{\"shape\":\"S6\"}}},\"output\":{\"shape\":\"S7\"}},\"DeleteFunction\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2014-11-13/functions/{FunctionName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}}},\"GetEventSource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2014-11-13/event-source-mappings/{UUID}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"UUID\"],\"members\":{\"UUID\":{\"location\":\"uri\",\"locationName\":\"UUID\"}}},\"output\":{\"shape\":\"S7\"}},\"GetFunction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2014-11-13/functions/{FunctionName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configuration\":{\"shape\":\"Se\"},\"Code\":{\"type\":\"structure\",\"members\":{\"RepositoryType\":{},\"Location\":{}}}}}},\"GetFunctionConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2014-11-13/functions/{FunctionName}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}},\"output\":{\"shape\":\"Se\"}},\"InvokeAsync\":{\"http\":{\"requestUri\":\"/2014-11-13/functions/{FunctionName}/invoke-async/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"InvokeArgs\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"InvokeArgs\":{\"shape\":\"Sq\"}},\"payload\":\"InvokeArgs\"},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListEventSources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2014-11-13/event-source-mappings/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"EventSourceArn\":{\"location\":\"querystring\",\"locationName\":\"EventSource\"},\"FunctionName\":{\"location\":\"querystring\",\"locationName\":\"FunctionName\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"EventSources\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}}}}},\"ListFunctions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2014-11-13/functions/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Functions\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}}}}},\"RemoveEventSource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2014-11-13/event-source-mappings/{UUID}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"UUID\"],\"members\":{\"UUID\":{\"location\":\"uri\",\"locationName\":\"UUID\"}}}},\"UpdateFunctionConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2014-11-13/functions/{FunctionName}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Role\":{\"location\":\"querystring\",\"locationName\":\"Role\"},\"Handler\":{\"location\":\"querystring\",\"locationName\":\"Handler\"},\"Description\":{\"location\":\"querystring\",\"locationName\":\"Description\"},\"Timeout\":{\"location\":\"querystring\",\"locationName\":\"Timeout\",\"type\":\"integer\"},\"MemorySize\":{\"location\":\"querystring\",\"locationName\":\"MemorySize\",\"type\":\"integer\"}}},\"output\":{\"shape\":\"Se\"}},\"UploadFunction\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2014-11-13/functions/{FunctionName}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"FunctionZip\",\"Runtime\",\"Role\",\"Handler\",\"Mode\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"FunctionZip\":{\"shape\":\"Sq\"},\"Runtime\":{\"location\":\"querystring\",\"locationName\":\"Runtime\"},\"Role\":{\"location\":\"querystring\",\"locationName\":\"Role\"},\"Handler\":{\"location\":\"querystring\",\"locationName\":\"Handler\"},\"Mode\":{\"location\":\"querystring\",\"locationName\":\"Mode\"},\"Description\":{\"location\":\"querystring\",\"locationName\":\"Description\"},\"Timeout\":{\"location\":\"querystring\",\"locationName\":\"Timeout\",\"type\":\"integer\"},\"MemorySize\":{\"location\":\"querystring\",\"locationName\":\"MemorySize\",\"type\":\"integer\"}},\"payload\":\"FunctionZip\"},\"output\":{\"shape\":\"Se\"}}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S7\":{\"type\":\"structure\",\"members\":{\"UUID\":{},\"BatchSize\":{\"type\":\"integer\"},\"EventSource\":{},\"FunctionName\":{},\"Parameters\":{\"shape\":\"S6\"},\"Role\":{},\"LastModified\":{\"type\":\"timestamp\"},\"IsActive\":{\"type\":\"boolean\"},\"Status\":{}}},\"Se\":{\"type\":\"structure\",\"members\":{\"FunctionName\":{},\"FunctionARN\":{},\"ConfigurationId\":{},\"Runtime\":{},\"Role\":{},\"Handler\":{},\"Mode\":{},\"CodeSize\":{\"type\":\"long\"},\"Description\":{},\"Timeout\":{\"type\":\"integer\"},\"MemorySize\":{\"type\":\"integer\"},\"LastModified\":{\"type\":\"timestamp\"}}},\"Sq\":{\"type\":\"blob\",\"streaming\":true}}}");

/***/ }),

/***/ 86208:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListEventSources\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"limit_key\":\"MaxItems\",\"result_key\":\"EventSources\"},\"ListFunctions\":{\"input_token\":\"Marker\",\"output_token\":\"NextMarker\",\"limit_key\":\"MaxItems\",\"result_key\":\"Functions\"}}}");

/***/ }),

/***/ 50409:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-03-31\",\"endpointPrefix\":\"lambda\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS Lambda\",\"serviceId\":\"Lambda\",\"signatureVersion\":\"v4\",\"uid\":\"lambda-2015-03-31\"},\"operations\":{\"AddLayerVersionPermission\":{\"http\":{\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\",\"VersionNumber\",\"StatementId\",\"Action\",\"Principal\"],\"members\":{\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"long\"},\"StatementId\":{},\"Action\":{},\"Principal\":{},\"OrganizationId\":{},\"RevisionId\":{\"location\":\"querystring\",\"locationName\":\"RevisionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Statement\":{},\"RevisionId\":{}}}},\"AddPermission\":{\"http\":{\"requestUri\":\"/2015-03-31/functions/{FunctionName}/policy\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"StatementId\",\"Action\",\"Principal\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"StatementId\":{},\"Action\":{},\"Principal\":{},\"SourceArn\":{},\"SourceAccount\":{},\"EventSourceToken\":{},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"},\"RevisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Statement\":{}}}},\"CreateAlias\":{\"http\":{\"requestUri\":\"/2015-03-31/functions/{FunctionName}/aliases\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Name\",\"FunctionVersion\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Name\":{},\"FunctionVersion\":{},\"Description\":{},\"RoutingConfig\":{\"shape\":\"Sn\"}}},\"output\":{\"shape\":\"Sr\"}},\"CreateCodeSigningConfig\":{\"http\":{\"requestUri\":\"/2020-04-22/code-signing-configs/\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"AllowedPublishers\"],\"members\":{\"Description\":{},\"AllowedPublishers\":{\"shape\":\"Su\"},\"CodeSigningPolicies\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfig\"],\"members\":{\"CodeSigningConfig\":{\"shape\":\"Sz\"}}}},\"CreateEventSourceMapping\":{\"http\":{\"requestUri\":\"/2015-03-31/event-source-mappings/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"EventSourceArn\":{},\"FunctionName\":{},\"Enabled\":{\"type\":\"boolean\"},\"BatchSize\":{\"type\":\"integer\"},\"MaximumBatchingWindowInSeconds\":{\"type\":\"integer\"},\"ParallelizationFactor\":{\"type\":\"integer\"},\"StartingPosition\":{},\"StartingPositionTimestamp\":{\"type\":\"timestamp\"},\"DestinationConfig\":{\"shape\":\"S1a\"},\"MaximumRecordAgeInSeconds\":{\"type\":\"integer\"},\"BisectBatchOnFunctionError\":{\"type\":\"boolean\"},\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"TumblingWindowInSeconds\":{\"type\":\"integer\"},\"Topics\":{\"shape\":\"S1i\"},\"Queues\":{\"shape\":\"S1k\"},\"SourceAccessConfigurations\":{\"shape\":\"S1m\"},\"SelfManagedEventSource\":{\"shape\":\"S1q\"},\"FunctionResponseTypes\":{\"shape\":\"S1v\"}}},\"output\":{\"shape\":\"S1x\"}},\"CreateFunction\":{\"http\":{\"requestUri\":\"/2015-03-31/functions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Role\",\"Code\"],\"members\":{\"FunctionName\":{},\"Runtime\":{},\"Role\":{},\"Handler\":{},\"Code\":{\"type\":\"structure\",\"members\":{\"ZipFile\":{\"shape\":\"S23\"},\"S3Bucket\":{},\"S3Key\":{},\"S3ObjectVersion\":{},\"ImageUri\":{}}},\"Description\":{},\"Timeout\":{\"type\":\"integer\"},\"MemorySize\":{\"type\":\"integer\"},\"Publish\":{\"type\":\"boolean\"},\"VpcConfig\":{\"shape\":\"S2a\"},\"PackageType\":{},\"DeadLetterConfig\":{\"shape\":\"S2g\"},\"Environment\":{\"shape\":\"S2i\"},\"KMSKeyArn\":{},\"TracingConfig\":{\"shape\":\"S2n\"},\"Tags\":{\"shape\":\"S2p\"},\"Layers\":{\"shape\":\"S2s\"},\"FileSystemConfigs\":{\"shape\":\"S2u\"},\"ImageConfig\":{\"shape\":\"S2y\"},\"CodeSigningConfigArn\":{}}},\"output\":{\"shape\":\"S31\"}},\"DeleteAlias\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/aliases/{Name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Name\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}}},\"DeleteCodeSigningConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-04-22/code-signing-configs/{CodeSigningConfigArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\"],\"members\":{\"CodeSigningConfigArn\":{\"location\":\"uri\",\"locationName\":\"CodeSigningConfigArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEventSourceMapping\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-03-31/event-source-mappings/{UUID}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"UUID\"],\"members\":{\"UUID\":{\"location\":\"uri\",\"locationName\":\"UUID\"}}},\"output\":{\"shape\":\"S1x\"}},\"DeleteFunction\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}}},\"DeleteFunctionCodeSigningConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-06-30/functions/{FunctionName}/code-signing-config\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}}},\"DeleteFunctionConcurrency\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-10-31/functions/{FunctionName}/concurrency\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}}},\"DeleteFunctionEventInvokeConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-09-25/functions/{FunctionName}/event-invoke-config\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}}},\"DeleteLayerVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions/{VersionNumber}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\",\"VersionNumber\"],\"members\":{\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"long\"}}}},\"DeleteProvisionedConcurrencyConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2019-09-30/functions/{FunctionName}/provisioned-concurrency\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Qualifier\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}}},\"GetAccountSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2016-08-19/account-settings/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountLimit\":{\"type\":\"structure\",\"members\":{\"TotalCodeSize\":{\"type\":\"long\"},\"CodeSizeUnzipped\":{\"type\":\"long\"},\"CodeSizeZipped\":{\"type\":\"long\"},\"ConcurrentExecutions\":{\"type\":\"integer\"},\"UnreservedConcurrentExecutions\":{\"type\":\"integer\"}}},\"AccountUsage\":{\"type\":\"structure\",\"members\":{\"TotalCodeSize\":{\"type\":\"long\"},\"FunctionCount\":{\"type\":\"long\"}}}}}},\"GetAlias\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/aliases/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Name\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"shape\":\"Sr\"}},\"GetCodeSigningConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-04-22/code-signing-configs/{CodeSigningConfigArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\"],\"members\":{\"CodeSigningConfigArn\":{\"location\":\"uri\",\"locationName\":\"CodeSigningConfigArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfig\"],\"members\":{\"CodeSigningConfig\":{\"shape\":\"Sz\"}}}},\"GetEventSourceMapping\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/event-source-mappings/{UUID}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"UUID\"],\"members\":{\"UUID\":{\"location\":\"uri\",\"locationName\":\"UUID\"}}},\"output\":{\"shape\":\"S1x\"}},\"GetFunction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configuration\":{\"shape\":\"S31\"},\"Code\":{\"type\":\"structure\",\"members\":{\"RepositoryType\":{},\"Location\":{},\"ImageUri\":{},\"ResolvedImageUri\":{}}},\"Tags\":{\"shape\":\"S2p\"},\"Concurrency\":{\"shape\":\"S48\"}}}},\"GetFunctionCodeSigningConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-06-30/functions/{FunctionName}/code-signing-config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\",\"FunctionName\"],\"members\":{\"CodeSigningConfigArn\":{},\"FunctionName\":{}}}},\"GetFunctionConcurrency\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-09-30/functions/{FunctionName}/concurrency\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReservedConcurrentExecutions\":{\"type\":\"integer\"}}}},\"GetFunctionConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}},\"output\":{\"shape\":\"S31\"}},\"GetFunctionEventInvokeConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-09-25/functions/{FunctionName}/event-invoke-config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}},\"output\":{\"shape\":\"S4g\"}},\"GetLayerVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions/{VersionNumber}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\",\"VersionNumber\"],\"members\":{\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"long\"}}},\"output\":{\"shape\":\"S4k\"}},\"GetLayerVersionByArn\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-10-31/layers?find=LayerVersion\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{\"location\":\"querystring\",\"locationName\":\"Arn\"}}},\"output\":{\"shape\":\"S4k\"}},\"GetLayerVersionPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\",\"VersionNumber\"],\"members\":{\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{},\"RevisionId\":{}}}},\"GetPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{},\"RevisionId\":{}}}},\"GetProvisionedConcurrencyConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-09-30/functions/{FunctionName}/provisioned-concurrency\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Qualifier\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestedProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"AvailableProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"AllocatedProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"Status\":{},\"StatusReason\":{},\"LastModified\":{}}}},\"Invoke\":{\"http\":{\"requestUri\":\"/2015-03-31/functions/{FunctionName}/invocations\"},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"InvocationType\":{\"location\":\"header\",\"locationName\":\"X-Amz-Invocation-Type\"},\"LogType\":{\"location\":\"header\",\"locationName\":\"X-Amz-Log-Type\"},\"ClientContext\":{\"location\":\"header\",\"locationName\":\"X-Amz-Client-Context\"},\"Payload\":{\"shape\":\"S23\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"}},\"payload\":\"Payload\"},\"output\":{\"type\":\"structure\",\"members\":{\"StatusCode\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"FunctionError\":{\"location\":\"header\",\"locationName\":\"X-Amz-Function-Error\"},\"LogResult\":{\"location\":\"header\",\"locationName\":\"X-Amz-Log-Result\"},\"Payload\":{\"shape\":\"S23\"},\"ExecutedVersion\":{\"location\":\"header\",\"locationName\":\"X-Amz-Executed-Version\"}},\"payload\":\"Payload\"}},\"InvokeAsync\":{\"http\":{\"requestUri\":\"/2014-11-13/functions/{FunctionName}/invoke-async/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"InvokeArgs\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"InvokeArgs\":{\"type\":\"blob\",\"streaming\":true}},\"deprecated\":true,\"payload\":\"InvokeArgs\"},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}},\"deprecated\":true},\"deprecated\":true},\"ListAliases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/aliases\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"FunctionVersion\":{\"location\":\"querystring\",\"locationName\":\"FunctionVersion\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Aliases\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}}}}},\"ListCodeSigningConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-04-22/code-signing-configs/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"CodeSigningConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\"}}}}},\"ListEventSourceMappings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/event-source-mappings/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"EventSourceArn\":{\"location\":\"querystring\",\"locationName\":\"EventSourceArn\"},\"FunctionName\":{\"location\":\"querystring\",\"locationName\":\"FunctionName\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"EventSourceMappings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1x\"}}}}},\"ListFunctionEventInvokeConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-09-25/functions/{FunctionName}/event-invoke-config/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FunctionEventInvokeConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S4g\"}},\"NextMarker\":{}}}},\"ListFunctions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MasterRegion\":{\"location\":\"querystring\",\"locationName\":\"MasterRegion\"},\"FunctionVersion\":{\"location\":\"querystring\",\"locationName\":\"FunctionVersion\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Functions\":{\"shape\":\"S5p\"}}}},\"ListFunctionsByCodeSigningConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-04-22/code-signing-configs/{CodeSigningConfigArn}/functions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\"],\"members\":{\"CodeSigningConfigArn\":{\"location\":\"uri\",\"locationName\":\"CodeSigningConfigArn\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"FunctionArns\":{\"type\":\"list\",\"member\":{}}}}},\"ListLayerVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\"],\"members\":{\"CompatibleRuntime\":{\"location\":\"querystring\",\"locationName\":\"CompatibleRuntime\"},\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"LayerVersions\":{\"type\":\"list\",\"member\":{\"shape\":\"S5x\"}}}}},\"ListLayers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2018-10-31/layers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CompatibleRuntime\":{\"location\":\"querystring\",\"locationName\":\"CompatibleRuntime\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Layers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LayerName\":{},\"LayerArn\":{},\"LatestMatchingVersion\":{\"shape\":\"S5x\"}}}}}}},\"ListProvisionedConcurrencyConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2019-09-30/functions/{FunctionName}/provisioned-concurrency?List=ALL\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedConcurrencyConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FunctionArn\":{},\"RequestedProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"AvailableProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"AllocatedProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"Status\":{},\"StatusReason\":{},\"LastModified\":{}}}},\"NextMarker\":{}}}},\"ListTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-03-31/tags/{ARN}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{\"location\":\"uri\",\"locationName\":\"ARN\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S2p\"}}}},\"ListVersionsByFunction\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"Marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"MaxItems\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Versions\":{\"shape\":\"S5p\"}}}},\"PublishLayerVersion\":{\"http\":{\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\",\"Content\"],\"members\":{\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"Description\":{},\"Content\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{},\"S3Key\":{},\"S3ObjectVersion\":{},\"ZipFile\":{\"shape\":\"S23\"}}},\"CompatibleRuntimes\":{\"shape\":\"S4n\"},\"LicenseInfo\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Content\":{\"shape\":\"S4l\"},\"LayerArn\":{},\"LayerVersionArn\":{},\"Description\":{},\"CreatedDate\":{},\"Version\":{\"type\":\"long\"},\"CompatibleRuntimes\":{\"shape\":\"S4n\"},\"LicenseInfo\":{}}}},\"PublishVersion\":{\"http\":{\"requestUri\":\"/2015-03-31/functions/{FunctionName}/versions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"CodeSha256\":{},\"Description\":{},\"RevisionId\":{}}},\"output\":{\"shape\":\"S31\"}},\"PutFunctionCodeSigningConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-06-30/functions/{FunctionName}/code-signing-config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\",\"FunctionName\"],\"members\":{\"CodeSigningConfigArn\":{},\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\",\"FunctionName\"],\"members\":{\"CodeSigningConfigArn\":{},\"FunctionName\":{}}}},\"PutFunctionConcurrency\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-10-31/functions/{FunctionName}/concurrency\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"ReservedConcurrentExecutions\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"ReservedConcurrentExecutions\":{\"type\":\"integer\"}}},\"output\":{\"shape\":\"S48\"}},\"PutFunctionEventInvokeConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-09-25/functions/{FunctionName}/event-invoke-config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"},\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"MaximumEventAgeInSeconds\":{\"type\":\"integer\"},\"DestinationConfig\":{\"shape\":\"S1a\"}}},\"output\":{\"shape\":\"S4g\"}},\"PutProvisionedConcurrencyConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2019-09-30/functions/{FunctionName}/provisioned-concurrency\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Qualifier\",\"ProvisionedConcurrentExecutions\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"},\"ProvisionedConcurrentExecutions\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestedProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"AvailableProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"AllocatedProvisionedConcurrentExecutions\":{\"type\":\"integer\"},\"Status\":{},\"StatusReason\":{},\"LastModified\":{}}}},\"RemoveLayerVersionPermission\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy/{StatementId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"LayerName\",\"VersionNumber\",\"StatementId\"],\"members\":{\"LayerName\":{\"location\":\"uri\",\"locationName\":\"LayerName\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"long\"},\"StatementId\":{\"location\":\"uri\",\"locationName\":\"StatementId\"},\"RevisionId\":{\"location\":\"querystring\",\"locationName\":\"RevisionId\"}}}},\"RemovePermission\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/policy/{StatementId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"StatementId\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"StatementId\":{\"location\":\"uri\",\"locationName\":\"StatementId\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"},\"RevisionId\":{\"location\":\"querystring\",\"locationName\":\"RevisionId\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/2017-03-31/tags/{ARN}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{\"location\":\"uri\",\"locationName\":\"ARN\"},\"Tags\":{\"shape\":\"S2p\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-03-31/tags/{ARN}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{\"location\":\"uri\",\"locationName\":\"ARN\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}}},\"UpdateAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/aliases/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\",\"Name\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"},\"FunctionVersion\":{},\"Description\":{},\"RoutingConfig\":{\"shape\":\"Sn\"},\"RevisionId\":{}}},\"output\":{\"shape\":\"Sr\"}},\"UpdateCodeSigningConfig\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2020-04-22/code-signing-configs/{CodeSigningConfigArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigArn\"],\"members\":{\"CodeSigningConfigArn\":{\"location\":\"uri\",\"locationName\":\"CodeSigningConfigArn\"},\"Description\":{},\"AllowedPublishers\":{\"shape\":\"Su\"},\"CodeSigningPolicies\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfig\"],\"members\":{\"CodeSigningConfig\":{\"shape\":\"Sz\"}}}},\"UpdateEventSourceMapping\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-03-31/event-source-mappings/{UUID}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"UUID\"],\"members\":{\"UUID\":{\"location\":\"uri\",\"locationName\":\"UUID\"},\"FunctionName\":{},\"Enabled\":{\"type\":\"boolean\"},\"BatchSize\":{\"type\":\"integer\"},\"MaximumBatchingWindowInSeconds\":{\"type\":\"integer\"},\"DestinationConfig\":{\"shape\":\"S1a\"},\"MaximumRecordAgeInSeconds\":{\"type\":\"integer\"},\"BisectBatchOnFunctionError\":{\"type\":\"boolean\"},\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"ParallelizationFactor\":{\"type\":\"integer\"},\"SourceAccessConfigurations\":{\"shape\":\"S1m\"},\"TumblingWindowInSeconds\":{\"type\":\"integer\"},\"FunctionResponseTypes\":{\"shape\":\"S1v\"}}},\"output\":{\"shape\":\"S1x\"}},\"UpdateFunctionCode\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/code\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"ZipFile\":{\"shape\":\"S23\"},\"S3Bucket\":{},\"S3Key\":{},\"S3ObjectVersion\":{},\"ImageUri\":{},\"Publish\":{\"type\":\"boolean\"},\"DryRun\":{\"type\":\"boolean\"},\"RevisionId\":{}}},\"output\":{\"shape\":\"S31\"}},\"UpdateFunctionConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2015-03-31/functions/{FunctionName}/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Role\":{},\"Handler\":{},\"Description\":{},\"Timeout\":{\"type\":\"integer\"},\"MemorySize\":{\"type\":\"integer\"},\"VpcConfig\":{\"shape\":\"S2a\"},\"Environment\":{\"shape\":\"S2i\"},\"Runtime\":{},\"DeadLetterConfig\":{\"shape\":\"S2g\"},\"KMSKeyArn\":{},\"TracingConfig\":{\"shape\":\"S2n\"},\"RevisionId\":{},\"Layers\":{\"shape\":\"S2s\"},\"FileSystemConfigs\":{\"shape\":\"S2u\"},\"ImageConfig\":{\"shape\":\"S2y\"}}},\"output\":{\"shape\":\"S31\"}},\"UpdateFunctionEventInvokeConfig\":{\"http\":{\"requestUri\":\"/2019-09-25/functions/{FunctionName}/event-invoke-config\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FunctionName\"],\"members\":{\"FunctionName\":{\"location\":\"uri\",\"locationName\":\"FunctionName\"},\"Qualifier\":{\"location\":\"querystring\",\"locationName\":\"Qualifier\"},\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"MaximumEventAgeInSeconds\":{\"type\":\"integer\"},\"DestinationConfig\":{\"shape\":\"S1a\"}}},\"output\":{\"shape\":\"S4g\"}}},\"shapes\":{\"Sn\":{\"type\":\"structure\",\"members\":{\"AdditionalVersionWeights\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"double\"}}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"AliasArn\":{},\"Name\":{},\"FunctionVersion\":{},\"Description\":{},\"RoutingConfig\":{\"shape\":\"Sn\"},\"RevisionId\":{}}},\"Su\":{\"type\":\"structure\",\"required\":[\"SigningProfileVersionArns\"],\"members\":{\"SigningProfileVersionArns\":{\"type\":\"list\",\"member\":{}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"UntrustedArtifactOnDeployment\":{}}},\"Sz\":{\"type\":\"structure\",\"required\":[\"CodeSigningConfigId\",\"CodeSigningConfigArn\",\"AllowedPublishers\",\"CodeSigningPolicies\",\"LastModified\"],\"members\":{\"CodeSigningConfigId\":{},\"CodeSigningConfigArn\":{},\"Description\":{},\"AllowedPublishers\":{\"shape\":\"Su\"},\"CodeSigningPolicies\":{\"shape\":\"Sw\"},\"LastModified\":{}}},\"S1a\":{\"type\":\"structure\",\"members\":{\"OnSuccess\":{\"type\":\"structure\",\"members\":{\"Destination\":{}}},\"OnFailure\":{\"type\":\"structure\",\"members\":{\"Destination\":{}}}}},\"S1i\":{\"type\":\"list\",\"member\":{}},\"S1k\":{\"type\":\"list\",\"member\":{}},\"S1m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"URI\":{}}}},\"S1q\":{\"type\":\"structure\",\"members\":{\"Endpoints\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"S1v\":{\"type\":\"list\",\"member\":{}},\"S1x\":{\"type\":\"structure\",\"members\":{\"UUID\":{},\"StartingPosition\":{},\"StartingPositionTimestamp\":{\"type\":\"timestamp\"},\"BatchSize\":{\"type\":\"integer\"},\"MaximumBatchingWindowInSeconds\":{\"type\":\"integer\"},\"ParallelizationFactor\":{\"type\":\"integer\"},\"EventSourceArn\":{},\"FunctionArn\":{},\"LastModified\":{\"type\":\"timestamp\"},\"LastProcessingResult\":{},\"State\":{},\"StateTransitionReason\":{},\"DestinationConfig\":{\"shape\":\"S1a\"},\"Topics\":{\"shape\":\"S1i\"},\"Queues\":{\"shape\":\"S1k\"},\"SourceAccessConfigurations\":{\"shape\":\"S1m\"},\"SelfManagedEventSource\":{\"shape\":\"S1q\"},\"MaximumRecordAgeInSeconds\":{\"type\":\"integer\"},\"BisectBatchOnFunctionError\":{\"type\":\"boolean\"},\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"TumblingWindowInSeconds\":{\"type\":\"integer\"},\"FunctionResponseTypes\":{\"shape\":\"S1v\"}}},\"S23\":{\"type\":\"blob\",\"sensitive\":true},\"S2a\":{\"type\":\"structure\",\"members\":{\"SubnetIds\":{\"shape\":\"S2b\"},\"SecurityGroupIds\":{\"shape\":\"S2d\"}}},\"S2b\":{\"type\":\"list\",\"member\":{}},\"S2d\":{\"type\":\"list\",\"member\":{}},\"S2g\":{\"type\":\"structure\",\"members\":{\"TargetArn\":{}}},\"S2i\":{\"type\":\"structure\",\"members\":{\"Variables\":{\"shape\":\"S2j\"}}},\"S2j\":{\"type\":\"map\",\"key\":{\"type\":\"string\",\"sensitive\":true},\"value\":{\"type\":\"string\",\"sensitive\":true},\"sensitive\":true},\"S2n\":{\"type\":\"structure\",\"members\":{\"Mode\":{}}},\"S2p\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2s\":{\"type\":\"list\",\"member\":{}},\"S2u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Arn\",\"LocalMountPath\"],\"members\":{\"Arn\":{},\"LocalMountPath\":{}}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"EntryPoint\":{\"shape\":\"S2z\"},\"Command\":{\"shape\":\"S2z\"},\"WorkingDirectory\":{}}},\"S2z\":{\"type\":\"list\",\"member\":{}},\"S31\":{\"type\":\"structure\",\"members\":{\"FunctionName\":{},\"FunctionArn\":{},\"Runtime\":{},\"Role\":{},\"Handler\":{},\"CodeSize\":{\"type\":\"long\"},\"Description\":{},\"Timeout\":{\"type\":\"integer\"},\"MemorySize\":{\"type\":\"integer\"},\"LastModified\":{},\"CodeSha256\":{},\"Version\":{},\"VpcConfig\":{\"type\":\"structure\",\"members\":{\"SubnetIds\":{\"shape\":\"S2b\"},\"SecurityGroupIds\":{\"shape\":\"S2d\"},\"VpcId\":{}}},\"DeadLetterConfig\":{\"shape\":\"S2g\"},\"Environment\":{\"type\":\"structure\",\"members\":{\"Variables\":{\"shape\":\"S2j\"},\"Error\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"Message\":{\"shape\":\"S39\"}}}}},\"KMSKeyArn\":{},\"TracingConfig\":{\"type\":\"structure\",\"members\":{\"Mode\":{}}},\"MasterArn\":{},\"RevisionId\":{},\"Layers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CodeSize\":{\"type\":\"long\"},\"SigningProfileVersionArn\":{},\"SigningJobArn\":{}}}},\"State\":{},\"StateReason\":{},\"StateReasonCode\":{},\"LastUpdateStatus\":{},\"LastUpdateStatusReason\":{},\"LastUpdateStatusReasonCode\":{},\"FileSystemConfigs\":{\"shape\":\"S2u\"},\"PackageType\":{},\"ImageConfigResponse\":{\"type\":\"structure\",\"members\":{\"ImageConfig\":{\"shape\":\"S2y\"},\"Error\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"Message\":{\"shape\":\"S39\"}}}}},\"SigningProfileVersionArn\":{},\"SigningJobArn\":{}}},\"S39\":{\"type\":\"string\",\"sensitive\":true},\"S48\":{\"type\":\"structure\",\"members\":{\"ReservedConcurrentExecutions\":{\"type\":\"integer\"}}},\"S4g\":{\"type\":\"structure\",\"members\":{\"LastModified\":{\"type\":\"timestamp\"},\"FunctionArn\":{},\"MaximumRetryAttempts\":{\"type\":\"integer\"},\"MaximumEventAgeInSeconds\":{\"type\":\"integer\"},\"DestinationConfig\":{\"shape\":\"S1a\"}}},\"S4k\":{\"type\":\"structure\",\"members\":{\"Content\":{\"shape\":\"S4l\"},\"LayerArn\":{},\"LayerVersionArn\":{},\"Description\":{},\"CreatedDate\":{},\"Version\":{\"type\":\"long\"},\"CompatibleRuntimes\":{\"shape\":\"S4n\"},\"LicenseInfo\":{}}},\"S4l\":{\"type\":\"structure\",\"members\":{\"Location\":{},\"CodeSha256\":{},\"CodeSize\":{\"type\":\"long\"},\"SigningProfileVersionArn\":{},\"SigningJobArn\":{}}},\"S4n\":{\"type\":\"list\",\"member\":{}},\"S5p\":{\"type\":\"list\",\"member\":{\"shape\":\"S31\"}},\"S5x\":{\"type\":\"structure\",\"members\":{\"LayerVersionArn\":{},\"Version\":{\"type\":\"long\"},\"Description\":{},\"CreatedDate\":{},\"CompatibleRuntimes\":{\"shape\":\"S4n\"},\"LicenseInfo\":{}}}}}");

/***/ }),

/***/ 98920:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAliases\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"Aliases\"},\"ListCodeSigningConfigs\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"CodeSigningConfigs\"},\"ListEventSourceMappings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"EventSourceMappings\"},\"ListFunctionEventInvokeConfigs\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"FunctionEventInvokeConfigs\"},\"ListFunctions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"Functions\"},\"ListFunctionsByCodeSigningConfig\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"FunctionArns\"},\"ListLayerVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"LayerVersions\"},\"ListLayers\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"Layers\"},\"ListProvisionedConcurrencyConfigs\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"ProvisionedConcurrencyConfigs\"},\"ListVersionsByFunction\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextMarker\",\"result_key\":\"Versions\"}}}");

/***/ }),

/***/ 37582:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"FunctionExists\":{\"delay\":1,\"operation\":\"GetFunction\",\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":200},{\"state\":\"retry\",\"matcher\":\"error\",\"expected\":\"ResourceNotFoundException\"}]},\"FunctionActive\":{\"delay\":5,\"maxAttempts\":60,\"operation\":\"GetFunctionConfiguration\",\"description\":\"Waits for the function's State to be Active.\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"Active\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"Failed\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"Pending\"}]},\"FunctionUpdated\":{\"delay\":5,\"maxAttempts\":60,\"operation\":\"GetFunctionConfiguration\",\"description\":\"Waits for the function's LastUpdateStatus to be Successful.\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"LastUpdateStatus\",\"expected\":\"Successful\"},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"LastUpdateStatus\",\"expected\":\"Failed\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"LastUpdateStatus\",\"expected\":\"InProgress\"}]}}}");

/***/ }),

/***/ 57942:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-04-19\",\"endpointPrefix\":\"models.lex\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Lex Model Building Service\",\"serviceId\":\"Lex Model Building Service\",\"signatureVersion\":\"v4\",\"signingName\":\"lex\",\"uid\":\"lex-models-2017-04-19\"},\"operations\":{\"CreateBotVersion\":{\"http\":{\"requestUri\":\"/bots/{name}/versions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"checksum\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"intents\":{\"shape\":\"S6\"},\"clarificationPrompt\":{\"shape\":\"Sa\"},\"abortStatement\":{\"shape\":\"Si\"},\"status\":{},\"failureReason\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"voiceId\":{},\"checksum\":{},\"version\":{},\"locale\":{},\"childDirected\":{\"type\":\"boolean\"},\"enableModelImprovements\":{\"type\":\"boolean\"},\"detectSentiment\":{\"type\":\"boolean\"}}}},\"CreateIntentVersion\":{\"http\":{\"requestUri\":\"/intents/{name}/versions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"checksum\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"slots\":{\"shape\":\"Sq\"},\"sampleUtterances\":{\"shape\":\"S13\"},\"confirmationPrompt\":{\"shape\":\"Sa\"},\"rejectionStatement\":{\"shape\":\"Si\"},\"followUpPrompt\":{\"shape\":\"S14\"},\"conclusionStatement\":{\"shape\":\"Si\"},\"dialogCodeHook\":{\"shape\":\"S15\"},\"fulfillmentActivity\":{\"shape\":\"S18\"},\"parentIntentSignature\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"checksum\":{},\"kendraConfiguration\":{\"shape\":\"S1b\"},\"inputContexts\":{\"shape\":\"S1f\"},\"outputContexts\":{\"shape\":\"S1i\"}}}},\"CreateSlotTypeVersion\":{\"http\":{\"requestUri\":\"/slottypes/{name}/versions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"checksum\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"enumerationValues\":{\"shape\":\"S1q\"},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"checksum\":{},\"valueSelectionStrategy\":{},\"parentSlotTypeSignature\":{},\"slotTypeConfigurations\":{\"shape\":\"S1v\"}}}},\"DeleteBot\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}}},\"DeleteBotAlias\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botName}/aliases/{name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"botName\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"}}}},\"DeleteBotChannelAssociation\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botName}/aliases/{aliasName}/channels/{name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"botName\",\"botAlias\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"aliasName\"}}}},\"DeleteBotVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{name}/versions/{version}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"version\":{\"location\":\"uri\",\"locationName\":\"version\"}}}},\"DeleteIntent\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/intents/{name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}}},\"DeleteIntentVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/intents/{name}/versions/{version}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"version\":{\"location\":\"uri\",\"locationName\":\"version\"}}}},\"DeleteSlotType\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/slottypes/{name}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"}}}},\"DeleteSlotTypeVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/slottypes/{name}/version/{version}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"version\":{\"location\":\"uri\",\"locationName\":\"version\"}}}},\"DeleteUtterances\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botName}/utterances/{userId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"userId\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"userId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}}},\"GetBot\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{name}/versions/{versionoralias}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"versionOrAlias\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"versionOrAlias\":{\"location\":\"uri\",\"locationName\":\"versionoralias\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"intents\":{\"shape\":\"S6\"},\"enableModelImprovements\":{\"type\":\"boolean\"},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"clarificationPrompt\":{\"shape\":\"Sa\"},\"abortStatement\":{\"shape\":\"Si\"},\"status\":{},\"failureReason\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"voiceId\":{},\"checksum\":{},\"version\":{},\"locale\":{},\"childDirected\":{\"type\":\"boolean\"},\"detectSentiment\":{\"type\":\"boolean\"}}}},\"GetBotAlias\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botName}/aliases/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"botName\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"botVersion\":{},\"botName\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"checksum\":{},\"conversationLogs\":{\"shape\":\"S2h\"}}}},\"GetBotAliases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botName}/aliases/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botName\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nameContains\":{\"location\":\"querystring\",\"locationName\":\"nameContains\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BotAliases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"botVersion\":{},\"botName\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"checksum\":{},\"conversationLogs\":{\"shape\":\"S2h\"}}}},\"nextToken\":{}}}},\"GetBotChannelAssociation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botName}/aliases/{aliasName}/channels/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"botName\",\"botAlias\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"aliasName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"botAlias\":{},\"botName\":{},\"createdDate\":{\"type\":\"timestamp\"},\"type\":{},\"botConfiguration\":{\"shape\":\"S2z\"},\"status\":{},\"failureReason\":{}}}},\"GetBotChannelAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botName}/aliases/{aliasName}/channels/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botAlias\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"aliasName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nameContains\":{\"location\":\"querystring\",\"locationName\":\"nameContains\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botChannelAssociations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"botAlias\":{},\"botName\":{},\"createdDate\":{\"type\":\"timestamp\"},\"type\":{},\"botConfiguration\":{\"shape\":\"S2z\"},\"status\":{},\"failureReason\":{}}}},\"nextToken\":{}}}},\"GetBotVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{name}/versions/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"bots\":{\"shape\":\"S38\"},\"nextToken\":{}}}},\"GetBots\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nameContains\":{\"location\":\"querystring\",\"locationName\":\"nameContains\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"bots\":{\"shape\":\"S38\"},\"nextToken\":{}}}},\"GetBuiltinIntent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/builtins/intents/{signature}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"signature\"],\"members\":{\"signature\":{\"location\":\"uri\",\"locationName\":\"signature\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"signature\":{},\"supportedLocales\":{\"shape\":\"S3e\"},\"slots\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{}}}}}}},\"GetBuiltinIntents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/builtins/intents/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"locale\":{\"location\":\"querystring\",\"locationName\":\"locale\"},\"signatureContains\":{\"location\":\"querystring\",\"locationName\":\"signatureContains\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"signature\":{},\"supportedLocales\":{\"shape\":\"S3e\"}}}},\"nextToken\":{}}}},\"GetBuiltinSlotTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/builtins/slottypes/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"locale\":{\"location\":\"querystring\",\"locationName\":\"locale\"},\"signatureContains\":{\"location\":\"querystring\",\"locationName\":\"signatureContains\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"signature\":{},\"supportedLocales\":{\"shape\":\"S3e\"}}}},\"nextToken\":{}}}},\"GetExport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/exports/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\",\"resourceType\",\"exportType\"],\"members\":{\"name\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"version\":{\"location\":\"querystring\",\"locationName\":\"version\"},\"resourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"exportType\":{\"location\":\"querystring\",\"locationName\":\"exportType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"version\":{},\"resourceType\":{},\"exportType\":{},\"exportStatus\":{},\"failureReason\":{},\"url\":{}}}},\"GetImport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/imports/{importId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"importId\"],\"members\":{\"importId\":{\"location\":\"uri\",\"locationName\":\"importId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"resourceType\":{},\"mergeStrategy\":{},\"importId\":{},\"importStatus\":{},\"failureReason\":{\"type\":\"list\",\"member\":{}},\"createdDate\":{\"type\":\"timestamp\"}}}},\"GetIntent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/intents/{name}/versions/{version}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"version\":{\"location\":\"uri\",\"locationName\":\"version\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"slots\":{\"shape\":\"Sq\"},\"sampleUtterances\":{\"shape\":\"S13\"},\"confirmationPrompt\":{\"shape\":\"Sa\"},\"rejectionStatement\":{\"shape\":\"Si\"},\"followUpPrompt\":{\"shape\":\"S14\"},\"conclusionStatement\":{\"shape\":\"Si\"},\"dialogCodeHook\":{\"shape\":\"S15\"},\"fulfillmentActivity\":{\"shape\":\"S18\"},\"parentIntentSignature\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"checksum\":{},\"kendraConfiguration\":{\"shape\":\"S1b\"},\"inputContexts\":{\"shape\":\"S1f\"},\"outputContexts\":{\"shape\":\"S1i\"}}}},\"GetIntentVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/intents/{name}/versions/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intents\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"GetIntents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/intents/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nameContains\":{\"location\":\"querystring\",\"locationName\":\"nameContains\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intents\":{\"shape\":\"S45\"},\"nextToken\":{}}}},\"GetSlotType\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/slottypes/{name}/versions/{version}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"version\":{\"location\":\"uri\",\"locationName\":\"version\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"enumerationValues\":{\"shape\":\"S1q\"},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"checksum\":{},\"valueSelectionStrategy\":{},\"parentSlotTypeSignature\":{},\"slotTypeConfigurations\":{\"shape\":\"S1v\"}}}},\"GetSlotTypeVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/slottypes/{name}/versions/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotTypes\":{\"shape\":\"S4d\"},\"nextToken\":{}}}},\"GetSlotTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/slottypes/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nameContains\":{\"location\":\"querystring\",\"locationName\":\"nameContains\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotTypes\":{\"shape\":\"S4d\"},\"nextToken\":{}}}},\"GetUtterancesView\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botname}/utterances?view=aggregation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botVersions\",\"statusType\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botname\"},\"botVersions\":{\"location\":\"querystring\",\"locationName\":\"bot_versions\",\"type\":\"list\",\"member\":{}},\"statusType\":{\"location\":\"querystring\",\"locationName\":\"status_type\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botName\":{},\"utterances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"botVersion\":{},\"utterances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"utteranceString\":{},\"count\":{\"type\":\"integer\"},\"distinctUsers\":{\"type\":\"integer\"},\"firstUtteredDate\":{\"type\":\"timestamp\"},\"lastUtteredDate\":{\"type\":\"timestamp\"}}}}}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S4u\"}}}},\"PutBot\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{name}/versions/$LATEST\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"locale\",\"childDirected\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"description\":{},\"intents\":{\"shape\":\"S6\"},\"enableModelImprovements\":{\"type\":\"boolean\"},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"clarificationPrompt\":{\"shape\":\"Sa\"},\"abortStatement\":{\"shape\":\"Si\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"voiceId\":{},\"checksum\":{},\"processBehavior\":{},\"locale\":{},\"childDirected\":{\"type\":\"boolean\"},\"detectSentiment\":{\"type\":\"boolean\"},\"createVersion\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"S4u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"intents\":{\"shape\":\"S6\"},\"enableModelImprovements\":{\"type\":\"boolean\"},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"clarificationPrompt\":{\"shape\":\"Sa\"},\"abortStatement\":{\"shape\":\"Si\"},\"status\":{},\"failureReason\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"voiceId\":{},\"checksum\":{},\"version\":{},\"locale\":{},\"childDirected\":{\"type\":\"boolean\"},\"createVersion\":{\"type\":\"boolean\"},\"detectSentiment\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"S4u\"}}}},\"PutBotAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botName}/aliases/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"botVersion\",\"botName\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"description\":{},\"botVersion\":{},\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"checksum\":{},\"conversationLogs\":{\"type\":\"structure\",\"required\":[\"logSettings\",\"iamRoleArn\"],\"members\":{\"logSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"logType\",\"destination\",\"resourceArn\"],\"members\":{\"logType\":{},\"destination\":{},\"kmsKeyArn\":{},\"resourceArn\":{}}}},\"iamRoleArn\":{}}},\"tags\":{\"shape\":\"S4u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"botVersion\":{},\"botName\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"checksum\":{},\"conversationLogs\":{\"shape\":\"S2h\"},\"tags\":{\"shape\":\"S4u\"}}}},\"PutIntent\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/intents/{name}/versions/$LATEST\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"description\":{},\"slots\":{\"shape\":\"Sq\"},\"sampleUtterances\":{\"shape\":\"S13\"},\"confirmationPrompt\":{\"shape\":\"Sa\"},\"rejectionStatement\":{\"shape\":\"Si\"},\"followUpPrompt\":{\"shape\":\"S14\"},\"conclusionStatement\":{\"shape\":\"Si\"},\"dialogCodeHook\":{\"shape\":\"S15\"},\"fulfillmentActivity\":{\"shape\":\"S18\"},\"parentIntentSignature\":{},\"checksum\":{},\"createVersion\":{\"type\":\"boolean\"},\"kendraConfiguration\":{\"shape\":\"S1b\"},\"inputContexts\":{\"shape\":\"S1f\"},\"outputContexts\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"slots\":{\"shape\":\"Sq\"},\"sampleUtterances\":{\"shape\":\"S13\"},\"confirmationPrompt\":{\"shape\":\"Sa\"},\"rejectionStatement\":{\"shape\":\"Si\"},\"followUpPrompt\":{\"shape\":\"S14\"},\"conclusionStatement\":{\"shape\":\"Si\"},\"dialogCodeHook\":{\"shape\":\"S15\"},\"fulfillmentActivity\":{\"shape\":\"S18\"},\"parentIntentSignature\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"checksum\":{},\"createVersion\":{\"type\":\"boolean\"},\"kendraConfiguration\":{\"shape\":\"S1b\"},\"inputContexts\":{\"shape\":\"S1f\"},\"outputContexts\":{\"shape\":\"S1i\"}}}},\"PutSlotType\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/slottypes/{name}/versions/$LATEST\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"description\":{},\"enumerationValues\":{\"shape\":\"S1q\"},\"checksum\":{},\"valueSelectionStrategy\":{},\"createVersion\":{\"type\":\"boolean\"},\"parentSlotTypeSignature\":{},\"slotTypeConfigurations\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"enumerationValues\":{\"shape\":\"S1q\"},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{},\"checksum\":{},\"valueSelectionStrategy\":{},\"createVersion\":{\"type\":\"boolean\"},\"parentSlotTypeSignature\":{},\"slotTypeConfigurations\":{\"shape\":\"S1v\"}}}},\"StartImport\":{\"http\":{\"requestUri\":\"/imports/\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"payload\",\"resourceType\",\"mergeStrategy\"],\"members\":{\"payload\":{\"type\":\"blob\"},\"resourceType\":{},\"mergeStrategy\":{},\"tags\":{\"shape\":\"S4u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"resourceType\":{},\"mergeStrategy\":{},\"importId\":{},\"importStatus\":{},\"tags\":{\"shape\":\"S4u\"},\"createdDate\":{\"type\":\"timestamp\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S4u\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"intentName\",\"intentVersion\"],\"members\":{\"intentName\":{},\"intentVersion\":{}}}},\"Sa\":{\"type\":\"structure\",\"required\":[\"messages\",\"maxAttempts\"],\"members\":{\"messages\":{\"shape\":\"Sb\"},\"maxAttempts\":{\"type\":\"integer\"},\"responseCard\":{}}},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"contentType\",\"content\"],\"members\":{\"contentType\":{},\"content\":{},\"groupNumber\":{\"type\":\"integer\"}}}},\"Si\":{\"type\":\"structure\",\"required\":[\"messages\"],\"members\":{\"messages\":{\"shape\":\"Sb\"},\"responseCard\":{}}},\"Sq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"slotConstraint\"],\"members\":{\"name\":{},\"description\":{},\"slotConstraint\":{},\"slotType\":{},\"slotTypeVersion\":{},\"valueElicitationPrompt\":{\"shape\":\"Sa\"},\"priority\":{\"type\":\"integer\"},\"sampleUtterances\":{\"type\":\"list\",\"member\":{}},\"responseCard\":{},\"obfuscationSetting\":{},\"defaultValueSpec\":{\"type\":\"structure\",\"required\":[\"defaultValueList\"],\"members\":{\"defaultValueList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"defaultValue\"],\"members\":{\"defaultValue\":{}}}}}}}}},\"S13\":{\"type\":\"list\",\"member\":{}},\"S14\":{\"type\":\"structure\",\"required\":[\"prompt\",\"rejectionStatement\"],\"members\":{\"prompt\":{\"shape\":\"Sa\"},\"rejectionStatement\":{\"shape\":\"Si\"}}},\"S15\":{\"type\":\"structure\",\"required\":[\"uri\",\"messageVersion\"],\"members\":{\"uri\":{},\"messageVersion\":{}}},\"S18\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"codeHook\":{\"shape\":\"S15\"}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"kendraIndex\",\"role\"],\"members\":{\"kendraIndex\":{},\"queryFilterString\":{},\"role\":{}}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"S1i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"timeToLiveInSeconds\",\"turnsToLive\"],\"members\":{\"name\":{},\"timeToLiveInSeconds\":{\"type\":\"integer\"},\"turnsToLive\":{\"type\":\"integer\"}}}},\"S1q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{},\"synonyms\":{\"type\":\"list\",\"member\":{}}}}},\"S1v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"regexConfiguration\":{\"type\":\"structure\",\"required\":[\"pattern\"],\"members\":{\"pattern\":{}}}}}},\"S2h\":{\"type\":\"structure\",\"members\":{\"logSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"logType\":{},\"destination\":{},\"kmsKeyArn\":{},\"resourceArn\":{},\"resourcePrefix\":{}}}},\"iamRoleArn\":{}}},\"S2z\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"S38\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"status\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{}}}},\"S3e\":{\"type\":\"list\",\"member\":{}},\"S45\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{}}}},\"S4d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"createdDate\":{\"type\":\"timestamp\"},\"version\":{}}}},\"S4u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}}}}");

/***/ }),

/***/ 34148:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetBotAliases\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetBotChannelAssociations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetBotVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetBots\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetBuiltinIntents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetBuiltinSlotTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetIntentVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetIntents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetSlotTypeVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetSlotTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 58445:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-08-01\",\"endpointPrefix\":\"license-manager\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS License Manager\",\"serviceId\":\"License Manager\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSLicenseManager\",\"uid\":\"license-manager-2018-08-01\"},\"operations\":{\"AcceptGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"GrantArn\"],\"members\":{\"GrantArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GrantArn\":{},\"Status\":{},\"Version\":{}}}},\"CheckInLicense\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConsumptionToken\"],\"members\":{\"LicenseConsumptionToken\":{},\"Beneficiary\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CheckoutBorrowLicense\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\",\"Entitlements\",\"DigitalSignatureMethod\",\"ClientToken\"],\"members\":{\"LicenseArn\":{},\"Entitlements\":{\"shape\":\"S9\"},\"DigitalSignatureMethod\":{},\"NodeId\":{},\"CheckoutMetadata\":{\"shape\":\"Sd\"},\"ClientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseArn\":{},\"LicenseConsumptionToken\":{},\"EntitlementsAllowed\":{\"shape\":\"S9\"},\"NodeId\":{},\"SignedToken\":{},\"IssuedAt\":{},\"Expiration\":{},\"CheckoutMetadata\":{\"shape\":\"Sd\"}}}},\"CheckoutLicense\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductSKU\",\"CheckoutType\",\"KeyFingerprint\",\"Entitlements\",\"ClientToken\"],\"members\":{\"ProductSKU\":{},\"CheckoutType\":{},\"KeyFingerprint\":{},\"Entitlements\":{\"shape\":\"S9\"},\"ClientToken\":{},\"Beneficiary\":{},\"NodeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CheckoutType\":{},\"LicenseConsumptionToken\":{},\"EntitlementsAllowed\":{\"shape\":\"S9\"},\"SignedToken\":{},\"NodeId\":{},\"IssuedAt\":{},\"Expiration\":{}}}},\"CreateGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"GrantName\",\"LicenseArn\",\"Principals\",\"HomeRegion\",\"AllowedOperations\"],\"members\":{\"ClientToken\":{},\"GrantName\":{},\"LicenseArn\":{},\"Principals\":{\"type\":\"list\",\"member\":{}},\"HomeRegion\":{},\"AllowedOperations\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GrantArn\":{},\"Status\":{},\"Version\":{}}}},\"CreateGrantVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"GrantArn\"],\"members\":{\"ClientToken\":{},\"GrantArn\":{},\"GrantName\":{},\"AllowedOperations\":{\"shape\":\"So\"},\"Status\":{},\"SourceVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GrantArn\":{},\"Status\":{},\"Version\":{}}}},\"CreateLicense\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseName\",\"ProductName\",\"ProductSKU\",\"Issuer\",\"HomeRegion\",\"Validity\",\"Entitlements\",\"Beneficiary\",\"ConsumptionConfiguration\",\"ClientToken\"],\"members\":{\"LicenseName\":{},\"ProductName\":{},\"ProductSKU\":{},\"Issuer\":{\"shape\":\"Su\"},\"HomeRegion\":{},\"Validity\":{\"shape\":\"Sv\"},\"Entitlements\":{\"shape\":\"Sw\"},\"Beneficiary\":{},\"ConsumptionConfiguration\":{\"shape\":\"S11\"},\"LicenseMetadata\":{\"shape\":\"Sd\"},\"ClientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseArn\":{},\"Status\":{},\"Version\":{}}}},\"CreateLicenseConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"LicenseCountingType\"],\"members\":{\"Name\":{},\"Description\":{},\"LicenseCountingType\":{},\"LicenseCount\":{\"type\":\"long\"},\"LicenseCountHardLimit\":{\"type\":\"boolean\"},\"LicenseRules\":{\"shape\":\"S1b\"},\"Tags\":{\"shape\":\"S1c\"},\"DisassociateWhenNotFound\":{\"type\":\"boolean\"},\"ProductInformationList\":{\"shape\":\"S1e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurationArn\":{}}}},\"CreateLicenseVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\",\"LicenseName\",\"ProductName\",\"Issuer\",\"HomeRegion\",\"Validity\",\"Entitlements\",\"ConsumptionConfiguration\",\"Status\",\"ClientToken\"],\"members\":{\"LicenseArn\":{},\"LicenseName\":{},\"ProductName\":{},\"Issuer\":{\"shape\":\"Su\"},\"HomeRegion\":{},\"Validity\":{\"shape\":\"Sv\"},\"LicenseMetadata\":{\"shape\":\"Sd\"},\"Entitlements\":{\"shape\":\"Sw\"},\"ConsumptionConfiguration\":{\"shape\":\"S11\"},\"Status\":{},\"ClientToken\":{},\"SourceVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseArn\":{},\"Version\":{},\"Status\":{}}}},\"CreateToken\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\",\"ClientToken\"],\"members\":{\"LicenseArn\":{},\"RoleArns\":{\"shape\":\"S1m\"},\"ExpirationInDays\":{\"type\":\"integer\"},\"TokenProperties\":{\"shape\":\"S1o\"},\"ClientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TokenId\":{},\"TokenType\":{},\"Token\":{}}}},\"DeleteGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"GrantArn\",\"Version\"],\"members\":{\"GrantArn\":{},\"Version\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GrantArn\":{},\"Status\":{},\"Version\":{}}}},\"DeleteLicense\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\",\"SourceVersion\"],\"members\":{\"LicenseArn\":{},\"SourceVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"DeletionDate\":{}}}},\"DeleteLicenseConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteToken\":{\"input\":{\"type\":\"structure\",\"required\":[\"TokenId\"],\"members\":{\"TokenId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ExtendLicenseConsumption\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConsumptionToken\"],\"members\":{\"LicenseConsumptionToken\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseConsumptionToken\":{},\"Expiration\":{}}}},\"GetAccessToken\":{\"input\":{\"type\":\"structure\",\"required\":[\"Token\"],\"members\":{\"Token\":{},\"TokenProperties\":{\"shape\":\"S1o\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccessToken\":{}}}},\"GetGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"GrantArn\"],\"members\":{\"GrantArn\":{},\"Version\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Grant\":{\"shape\":\"S29\"}}}},\"GetLicense\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\"],\"members\":{\"LicenseArn\":{},\"Version\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"License\":{\"shape\":\"S2c\"}}}},\"GetLicenseConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurationId\":{},\"LicenseConfigurationArn\":{},\"Name\":{},\"Description\":{},\"LicenseCountingType\":{},\"LicenseRules\":{\"shape\":\"S1b\"},\"LicenseCount\":{\"type\":\"long\"},\"LicenseCountHardLimit\":{\"type\":\"boolean\"},\"ConsumedLicenses\":{\"type\":\"long\"},\"Status\":{},\"OwnerAccountId\":{},\"ConsumedLicenseSummaryList\":{\"shape\":\"S2g\"},\"ManagedResourceSummaryList\":{\"shape\":\"S2j\"},\"Tags\":{\"shape\":\"S1c\"},\"ProductInformationList\":{\"shape\":\"S1e\"},\"AutomatedDiscoveryInformation\":{\"shape\":\"S2l\"},\"DisassociateWhenNotFound\":{\"type\":\"boolean\"}}}},\"GetLicenseUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\"],\"members\":{\"LicenseArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseUsage\":{\"type\":\"structure\",\"members\":{\"EntitlementUsages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"ConsumedValue\",\"Unit\"],\"members\":{\"Name\":{},\"ConsumedValue\":{},\"MaxCount\":{},\"Unit\":{}}}}}}}}},\"GetServiceSettings\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"S3BucketArn\":{},\"SnsTopicArn\":{},\"OrganizationConfiguration\":{\"shape\":\"S2u\"},\"EnableCrossAccountsDiscovery\":{\"type\":\"boolean\"},\"LicenseManagerResourceShareArn\":{}}}},\"ListAssociationsForLicenseConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurationAssociations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceType\":{},\"ResourceOwnerId\":{},\"AssociationTime\":{\"type\":\"timestamp\"},\"AmiAssociationScope\":{}}}},\"NextToken\":{}}}},\"ListDistributedGrants\":{\"input\":{\"type\":\"structure\",\"members\":{\"GrantArns\":{\"shape\":\"S1m\"},\"Filters\":{\"shape\":\"S30\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Grants\":{\"shape\":\"S37\"},\"NextToken\":{}}}},\"ListFailuresForLicenseConfigurationOperations\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseOperationFailureList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceType\":{},\"ErrorMessage\":{},\"FailureTime\":{\"type\":\"timestamp\"},\"OperationName\":{},\"ResourceOwnerId\":{},\"OperationRequestedBy\":{},\"MetadataList\":{\"shape\":\"Sd\"}}}},\"NextToken\":{}}}},\"ListLicenseConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurationArns\":{\"shape\":\"S1b\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S3d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurationId\":{},\"LicenseConfigurationArn\":{},\"Name\":{},\"Description\":{},\"LicenseCountingType\":{},\"LicenseRules\":{\"shape\":\"S1b\"},\"LicenseCount\":{\"type\":\"long\"},\"LicenseCountHardLimit\":{\"type\":\"boolean\"},\"DisassociateWhenNotFound\":{\"type\":\"boolean\"},\"ConsumedLicenses\":{\"type\":\"long\"},\"Status\":{},\"OwnerAccountId\":{},\"ConsumedLicenseSummaryList\":{\"shape\":\"S2g\"},\"ManagedResourceSummaryList\":{\"shape\":\"S2j\"},\"ProductInformationList\":{\"shape\":\"S1e\"},\"AutomatedDiscoveryInformation\":{\"shape\":\"S2l\"}}}},\"NextToken\":{}}}},\"ListLicenseSpecificationsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseSpecifications\":{\"shape\":\"S3j\"},\"NextToken\":{}}}},\"ListLicenseVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseArn\"],\"members\":{\"LicenseArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Licenses\":{\"shape\":\"S3n\"},\"NextToken\":{}}}},\"ListLicenses\":{\"input\":{\"type\":\"structure\",\"members\":{\"LicenseArns\":{\"shape\":\"S1m\"},\"Filters\":{\"shape\":\"S30\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Licenses\":{\"shape\":\"S3n\"},\"NextToken\":{}}}},\"ListReceivedGrants\":{\"input\":{\"type\":\"structure\",\"members\":{\"GrantArns\":{\"shape\":\"S1m\"},\"Filters\":{\"shape\":\"S30\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Grants\":{\"shape\":\"S37\"},\"NextToken\":{}}}},\"ListReceivedLicenses\":{\"input\":{\"type\":\"structure\",\"members\":{\"LicenseArns\":{\"shape\":\"S1m\"},\"Filters\":{\"shape\":\"S30\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Licenses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LicenseArn\":{},\"LicenseName\":{},\"ProductName\":{},\"ProductSKU\":{},\"Issuer\":{\"shape\":\"S2d\"},\"HomeRegion\":{},\"Status\":{},\"Validity\":{\"shape\":\"Sv\"},\"Beneficiary\":{},\"Entitlements\":{\"shape\":\"Sw\"},\"ConsumptionConfiguration\":{\"shape\":\"S11\"},\"LicenseMetadata\":{\"shape\":\"Sd\"},\"CreateTime\":{},\"Version\":{},\"ReceivedMetadata\":{\"type\":\"structure\",\"members\":{\"ReceivedStatus\":{},\"AllowedOperations\":{\"shape\":\"So\"}}}}}},\"NextToken\":{}}}},\"ListResourceInventory\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Condition\"],\"members\":{\"Name\":{},\"Condition\":{},\"Value\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceInventoryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ResourceType\":{},\"ResourceArn\":{},\"Platform\":{},\"PlatformVersion\":{},\"ResourceOwningAccountId\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1c\"}}}},\"ListTokens\":{\"input\":{\"type\":\"structure\",\"members\":{\"TokenIds\":{\"shape\":\"S1b\"},\"Filters\":{\"shape\":\"S30\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tokens\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TokenId\":{},\"TokenType\":{},\"LicenseArn\":{},\"ExpirationTime\":{},\"TokenProperties\":{\"shape\":\"S1o\"},\"RoleArns\":{\"shape\":\"S1m\"},\"Status\":{}}}},\"NextToken\":{}}}},\"ListUsageForLicenseConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S3d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LicenseConfigurationUsageList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceType\":{},\"ResourceStatus\":{},\"ResourceOwnerId\":{},\"AssociationTime\":{\"type\":\"timestamp\"},\"ConsumedLicenses\":{\"type\":\"long\"}}}},\"NextToken\":{}}}},\"RejectGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"GrantArn\"],\"members\":{\"GrantArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GrantArn\":{},\"Status\":{},\"Version\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLicenseConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{},\"LicenseConfigurationStatus\":{},\"LicenseRules\":{\"shape\":\"S1b\"},\"LicenseCount\":{\"type\":\"long\"},\"LicenseCountHardLimit\":{\"type\":\"boolean\"},\"Name\":{},\"Description\":{},\"ProductInformationList\":{\"shape\":\"S1e\"},\"DisassociateWhenNotFound\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLicenseSpecificationsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"AddLicenseSpecifications\":{\"shape\":\"S3j\"},\"RemoveLicenseSpecifications\":{\"shape\":\"S3j\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateServiceSettings\":{\"input\":{\"type\":\"structure\",\"members\":{\"S3BucketArn\":{},\"SnsTopicArn\":{},\"OrganizationConfiguration\":{\"shape\":\"S2u\"},\"EnableCrossAccountsDiscovery\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S9\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Unit\"],\"members\":{\"Name\":{},\"Value\":{},\"Unit\":{}}}},\"Sd\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"So\":{\"type\":\"list\",\"member\":{}},\"Su\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"SignKey\":{}}},\"Sv\":{\"type\":\"structure\",\"required\":[\"Begin\"],\"members\":{\"Begin\":{},\"End\":{}}},\"Sw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Unit\"],\"members\":{\"Name\":{},\"Value\":{},\"MaxCount\":{\"type\":\"long\"},\"Overage\":{\"type\":\"boolean\"},\"Unit\":{},\"AllowCheckIn\":{\"type\":\"boolean\"}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"RenewType\":{},\"ProvisionalConfiguration\":{\"type\":\"structure\",\"required\":[\"MaxTimeToLiveInMinutes\"],\"members\":{\"MaxTimeToLiveInMinutes\":{\"type\":\"integer\"}}},\"BorrowConfiguration\":{\"type\":\"structure\",\"required\":[\"AllowEarlyCheckIn\",\"MaxTimeToLiveInMinutes\"],\"members\":{\"AllowEarlyCheckIn\":{\"type\":\"boolean\"},\"MaxTimeToLiveInMinutes\":{\"type\":\"integer\"}}}}},\"S1b\":{\"type\":\"list\",\"member\":{}},\"S1c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S1e\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ProductInformationFilterList\"],\"members\":{\"ResourceType\":{},\"ProductInformationFilterList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProductInformationFilterName\",\"ProductInformationFilterComparator\"],\"members\":{\"ProductInformationFilterName\":{},\"ProductInformationFilterValue\":{\"shape\":\"S1b\"},\"ProductInformationFilterComparator\":{}}}}}}},\"S1m\":{\"type\":\"list\",\"member\":{}},\"S1o\":{\"type\":\"list\",\"member\":{}},\"S29\":{\"type\":\"structure\",\"required\":[\"GrantArn\",\"GrantName\",\"ParentArn\",\"LicenseArn\",\"GranteePrincipalArn\",\"HomeRegion\",\"GrantStatus\",\"Version\",\"GrantedOperations\"],\"members\":{\"GrantArn\":{},\"GrantName\":{},\"ParentArn\":{},\"LicenseArn\":{},\"GranteePrincipalArn\":{},\"HomeRegion\":{},\"GrantStatus\":{},\"StatusReason\":{},\"Version\":{},\"GrantedOperations\":{\"shape\":\"So\"}}},\"S2c\":{\"type\":\"structure\",\"members\":{\"LicenseArn\":{},\"LicenseName\":{},\"ProductName\":{},\"ProductSKU\":{},\"Issuer\":{\"shape\":\"S2d\"},\"HomeRegion\":{},\"Status\":{},\"Validity\":{\"shape\":\"Sv\"},\"Beneficiary\":{},\"Entitlements\":{\"shape\":\"Sw\"},\"ConsumptionConfiguration\":{\"shape\":\"S11\"},\"LicenseMetadata\":{\"shape\":\"Sd\"},\"CreateTime\":{},\"Version\":{}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"SignKey\":{},\"KeyFingerprint\":{}}},\"S2g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ConsumedLicenses\":{\"type\":\"long\"}}}},\"S2j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"AssociationCount\":{\"type\":\"long\"}}}},\"S2l\":{\"type\":\"structure\",\"members\":{\"LastRunTime\":{\"type\":\"timestamp\"}}},\"S2u\":{\"type\":\"structure\",\"required\":[\"EnableIntegration\"],\"members\":{\"EnableIntegration\":{\"type\":\"boolean\"}}},\"S30\":{\"type\":\"list\",\"member\":{\"shape\":\"S31\"}},\"S31\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}},\"S37\":{\"type\":\"list\",\"member\":{\"shape\":\"S29\"}},\"S3d\":{\"type\":\"list\",\"member\":{\"shape\":\"S31\"}},\"S3j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LicenseConfigurationArn\"],\"members\":{\"LicenseConfigurationArn\":{},\"AmiAssociationScope\":{}}}},\"S3n\":{\"type\":\"list\",\"member\":{\"shape\":\"S2c\"}}}}");

/***/ }),

/***/ 73736:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 59034:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-28\",\"endpointPrefix\":\"lightsail\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Lightsail\",\"serviceId\":\"Lightsail\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Lightsail_20161128\",\"uid\":\"lightsail-2016-11-28\"},\"operations\":{\"AllocateStaticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"staticIpName\"],\"members\":{\"staticIpName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"AttachCertificateToDistribution\":{\"input\":{\"type\":\"structure\",\"required\":[\"distributionName\",\"certificateName\"],\"members\":{\"distributionName\":{},\"certificateName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"AttachDisk\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskName\",\"instanceName\",\"diskPath\"],\"members\":{\"diskName\":{},\"instanceName\":{},\"diskPath\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"AttachInstancesToLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"instanceNames\"],\"members\":{\"loadBalancerName\":{},\"instanceNames\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"AttachLoadBalancerTlsCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"certificateName\"],\"members\":{\"loadBalancerName\":{},\"certificateName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"AttachStaticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"staticIpName\",\"instanceName\"],\"members\":{\"staticIpName\":{},\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CloseInstancePublicPorts\":{\"input\":{\"type\":\"structure\",\"required\":[\"portInfo\",\"instanceName\"],\"members\":{\"portInfo\":{\"shape\":\"Sr\"},\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"CopySnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"targetSnapshotName\",\"sourceRegion\"],\"members\":{\"sourceSnapshotName\":{},\"sourceResourceName\":{},\"restoreDate\":{},\"useLatestRestorableAutoSnapshot\":{\"type\":\"boolean\"},\"targetSnapshotName\":{},\"sourceRegion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"certificateName\",\"domainName\"],\"members\":{\"certificateName\":{},\"domainName\":{},\"subjectAlternativeNames\":{\"shape\":\"S11\"},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificate\":{\"shape\":\"S17\"},\"operations\":{\"shape\":\"S4\"}}}},\"CreateCloudFormationStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"instances\"],\"members\":{\"instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"sourceName\",\"instanceType\",\"portInfoSource\",\"availabilityZone\"],\"members\":{\"sourceName\":{},\"instanceType\":{},\"portInfoSource\":{},\"userData\":{},\"availabilityZone\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateContactMethod\":{\"input\":{\"type\":\"structure\",\"required\":[\"protocol\",\"contactEndpoint\"],\"members\":{\"protocol\":{},\"contactEndpoint\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateContainerService\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\",\"power\",\"scale\"],\"members\":{\"serviceName\":{},\"power\":{},\"scale\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"S12\"},\"publicDomainNames\":{\"shape\":\"S20\"},\"deployment\":{\"type\":\"structure\",\"members\":{\"containers\":{\"shape\":\"S23\"},\"publicEndpoint\":{\"shape\":\"S29\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerService\":{\"shape\":\"S2d\"}}}},\"CreateContainerServiceDeployment\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\"],\"members\":{\"serviceName\":{},\"containers\":{\"shape\":\"S23\"},\"publicEndpoint\":{\"shape\":\"S29\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerService\":{\"shape\":\"S2d\"}}}},\"CreateContainerServiceRegistryLogin\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"registryLogin\":{\"type\":\"structure\",\"members\":{\"username\":{},\"password\":{},\"expiresAt\":{\"type\":\"timestamp\"},\"registry\":{}}}}}},\"CreateDisk\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskName\",\"availabilityZone\",\"sizeInGb\"],\"members\":{\"diskName\":{},\"availabilityZone\":{},\"sizeInGb\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"S12\"},\"addOns\":{\"shape\":\"S2q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateDiskFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskName\",\"availabilityZone\",\"sizeInGb\"],\"members\":{\"diskName\":{},\"diskSnapshotName\":{},\"availabilityZone\":{},\"sizeInGb\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"S12\"},\"addOns\":{\"shape\":\"S2q\"},\"sourceDiskName\":{},\"restoreDate\":{},\"useLatestRestorableAutoSnapshot\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateDiskSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskSnapshotName\"],\"members\":{\"diskName\":{},\"diskSnapshotName\":{},\"instanceName\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateDistribution\":{\"input\":{\"type\":\"structure\",\"required\":[\"distributionName\",\"origin\",\"defaultCacheBehavior\",\"bundleId\"],\"members\":{\"distributionName\":{},\"origin\":{\"shape\":\"S31\"},\"defaultCacheBehavior\":{\"shape\":\"S33\"},\"cacheBehaviorSettings\":{\"shape\":\"S35\"},\"cacheBehaviors\":{\"shape\":\"S3d\"},\"bundleId\":{},\"ipAddressType\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"distribution\":{\"shape\":\"S3h\"},\"operation\":{\"shape\":\"S5\"}}}},\"CreateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"CreateDomainEntry\":{\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"domainEntry\"],\"members\":{\"domainName\":{},\"domainEntry\":{\"shape\":\"S3m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"CreateInstanceSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceSnapshotName\",\"instanceName\"],\"members\":{\"instanceSnapshotName\":{},\"instanceName\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceNames\",\"availabilityZone\",\"blueprintId\",\"bundleId\"],\"members\":{\"instanceNames\":{\"shape\":\"Su\"},\"availabilityZone\":{},\"customImageName\":{\"deprecated\":true},\"blueprintId\":{},\"bundleId\":{},\"userData\":{},\"keyPairName\":{},\"tags\":{\"shape\":\"S12\"},\"addOns\":{\"shape\":\"S2q\"},\"ipAddressType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateInstancesFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceNames\",\"availabilityZone\",\"bundleId\"],\"members\":{\"instanceNames\":{\"shape\":\"Su\"},\"attachedDiskMapping\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"originalDiskPath\":{},\"newDiskName\":{}}}}},\"availabilityZone\":{},\"instanceSnapshotName\":{},\"bundleId\":{},\"userData\":{},\"keyPairName\":{},\"tags\":{\"shape\":\"S12\"},\"addOns\":{\"shape\":\"S2q\"},\"ipAddressType\":{},\"sourceInstanceName\":{},\"restoreDate\":{},\"useLatestRestorableAutoSnapshot\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"keyPairName\"],\"members\":{\"keyPairName\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"keyPair\":{\"shape\":\"S42\"},\"publicKeyBase64\":{},\"privateKeyBase64\":{},\"operation\":{\"shape\":\"S5\"}}}},\"CreateLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"instancePort\"],\"members\":{\"loadBalancerName\":{},\"instancePort\":{\"type\":\"integer\"},\"healthCheckPath\":{},\"certificateName\":{},\"certificateDomainName\":{},\"certificateAlternativeNames\":{\"shape\":\"S45\"},\"tags\":{\"shape\":\"S12\"},\"ipAddressType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateLoadBalancerTlsCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"certificateName\",\"certificateDomainName\"],\"members\":{\"loadBalancerName\":{},\"certificateName\":{},\"certificateDomainName\":{},\"certificateAlternativeNames\":{\"shape\":\"S45\"},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\",\"relationalDatabaseBlueprintId\",\"relationalDatabaseBundleId\",\"masterDatabaseName\",\"masterUsername\"],\"members\":{\"relationalDatabaseName\":{},\"availabilityZone\":{},\"relationalDatabaseBlueprintId\":{},\"relationalDatabaseBundleId\":{},\"masterDatabaseName\":{},\"masterUsername\":{},\"masterUserPassword\":{\"shape\":\"S4a\"},\"preferredBackupWindow\":{},\"preferredMaintenanceWindow\":{},\"publiclyAccessible\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateRelationalDatabaseFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"availabilityZone\":{},\"publiclyAccessible\":{\"type\":\"boolean\"},\"relationalDatabaseSnapshotName\":{},\"relationalDatabaseBundleId\":{},\"sourceRelationalDatabaseName\":{},\"restoreTime\":{\"type\":\"timestamp\"},\"useLatestRestorableTime\":{\"type\":\"boolean\"},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"CreateRelationalDatabaseSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\",\"relationalDatabaseSnapshotName\"],\"members\":{\"relationalDatabaseName\":{},\"relationalDatabaseSnapshotName\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteAlarm\":{\"input\":{\"type\":\"structure\",\"required\":[\"alarmName\"],\"members\":{\"alarmName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteAutoSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceName\",\"date\"],\"members\":{\"resourceName\":{},\"date\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"certificateName\"],\"members\":{\"certificateName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteContactMethod\":{\"input\":{\"type\":\"structure\",\"required\":[\"protocol\"],\"members\":{\"protocol\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteContainerImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\",\"image\"],\"members\":{\"serviceName\":{},\"image\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteContainerService\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\"],\"members\":{\"serviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDisk\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskName\"],\"members\":{\"diskName\":{},\"forceDeleteAddOns\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteDiskSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskSnapshotName\"],\"members\":{\"diskSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteDistribution\":{\"input\":{\"type\":\"structure\",\"members\":{\"distributionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"DeleteDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"DeleteDomainEntry\":{\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"domainEntry\"],\"members\":{\"domainName\":{},\"domainEntry\":{\"shape\":\"S3m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"DeleteInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{},\"forceDeleteAddOns\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteInstanceSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceSnapshotName\"],\"members\":{\"instanceSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"keyPairName\"],\"members\":{\"keyPairName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"DeleteKnownHostKeys\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\"],\"members\":{\"loadBalancerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteLoadBalancerTlsCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"certificateName\"],\"members\":{\"loadBalancerName\":{},\"certificateName\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"skipFinalSnapshot\":{\"type\":\"boolean\"},\"finalRelationalDatabaseSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DeleteRelationalDatabaseSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseSnapshotName\"],\"members\":{\"relationalDatabaseSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DetachCertificateFromDistribution\":{\"input\":{\"type\":\"structure\",\"required\":[\"distributionName\"],\"members\":{\"distributionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"DetachDisk\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskName\"],\"members\":{\"diskName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DetachInstancesFromLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"instanceNames\"],\"members\":{\"loadBalancerName\":{},\"instanceNames\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DetachStaticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"staticIpName\"],\"members\":{\"staticIpName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DisableAddOn\":{\"input\":{\"type\":\"structure\",\"required\":[\"addOnType\",\"resourceName\"],\"members\":{\"addOnType\":{},\"resourceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"DownloadDefaultKeyPair\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"publicKeyBase64\":{},\"privateKeyBase64\":{}}}},\"EnableAddOn\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceName\",\"addOnRequest\"],\"members\":{\"resourceName\":{},\"addOnRequest\":{\"shape\":\"S2r\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"ExportSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"sourceSnapshotName\"],\"members\":{\"sourceSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"GetActiveNames\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"activeNames\":{\"shape\":\"Su\"},\"nextPageToken\":{}}}},\"GetAlarms\":{\"input\":{\"type\":\"structure\",\"members\":{\"alarmName\":{},\"pageToken\":{},\"monitoredResourceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"alarms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"supportCode\":{},\"monitoredResourceInfo\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"resourceType\":{}}},\"comparisonOperator\":{},\"evaluationPeriods\":{\"type\":\"integer\"},\"period\":{\"type\":\"integer\"},\"threshold\":{\"type\":\"double\"},\"datapointsToAlarm\":{\"type\":\"integer\"},\"treatMissingData\":{},\"statistic\":{},\"metricName\":{},\"state\":{},\"unit\":{},\"contactProtocols\":{\"shape\":\"S6f\"},\"notificationTriggers\":{\"shape\":\"S6g\"},\"notificationEnabled\":{\"type\":\"boolean\"}}}},\"nextPageToken\":{}}}},\"GetAutoSnapshots\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceName\"],\"members\":{\"resourceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceName\":{},\"resourceType\":{},\"autoSnapshots\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"date\":{},\"createdAt\":{\"type\":\"timestamp\"},\"status\":{},\"fromAttachedDisks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"path\":{},\"sizeInGb\":{\"type\":\"integer\"}}}}}}}}}},\"GetBlueprints\":{\"input\":{\"type\":\"structure\",\"members\":{\"includeInactive\":{\"type\":\"boolean\"},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"blueprints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"blueprintId\":{},\"name\":{},\"group\":{},\"type\":{},\"description\":{},\"isActive\":{\"type\":\"boolean\"},\"minPower\":{\"type\":\"integer\"},\"version\":{},\"versionCode\":{},\"productUrl\":{},\"licenseUrl\":{},\"platform\":{}}}},\"nextPageToken\":{}}}},\"GetBundles\":{\"input\":{\"type\":\"structure\",\"members\":{\"includeInactive\":{\"type\":\"boolean\"},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"bundles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"price\":{\"type\":\"float\"},\"cpuCount\":{\"type\":\"integer\"},\"diskSizeInGb\":{\"type\":\"integer\"},\"bundleId\":{},\"instanceType\":{},\"isActive\":{\"type\":\"boolean\"},\"name\":{},\"power\":{\"type\":\"integer\"},\"ramSizeInGb\":{\"type\":\"float\"},\"transferPerMonthInGb\":{\"type\":\"integer\"},\"supportedPlatforms\":{\"type\":\"list\",\"member\":{}}}}},\"nextPageToken\":{}}}},\"GetCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"certificateStatuses\":{\"type\":\"list\",\"member\":{}},\"includeCertificateDetails\":{\"type\":\"boolean\"},\"certificateName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"certificates\":{\"type\":\"list\",\"member\":{\"shape\":\"S17\"}}}}},\"GetCloudFormationStackRecords\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"cloudFormationStackRecords\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"state\":{},\"sourceInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"name\":{},\"arn\":{}}}},\"destinationInfo\":{\"shape\":\"S7d\"}}}},\"nextPageToken\":{}}}},\"GetContactMethods\":{\"input\":{\"type\":\"structure\",\"members\":{\"protocols\":{\"shape\":\"S6f\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contactMethods\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"contactEndpoint\":{},\"status\":{},\"protocol\":{},\"name\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"supportCode\":{}}}}}}},\"GetContainerAPIMetadata\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"metadata\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}},\"GetContainerImages\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\"],\"members\":{\"serviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerImages\":{\"type\":\"list\",\"member\":{\"shape\":\"S7q\"}}}}},\"GetContainerLog\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\",\"containerName\"],\"members\":{\"serviceName\":{},\"containerName\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"filterPattern\":{},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"logEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"createdAt\":{\"type\":\"timestamp\"},\"message\":{}}}},\"nextPageToken\":{}}}},\"GetContainerServiceDeployments\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\"],\"members\":{\"serviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deployments\":{\"type\":\"list\",\"member\":{\"shape\":\"S2h\"}}}}},\"GetContainerServiceMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\",\"metricName\",\"startTime\",\"endTime\",\"period\",\"statistics\"],\"members\":{\"serviceName\":{},\"metricName\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"period\":{\"type\":\"integer\"},\"statistics\":{\"shape\":\"S80\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricData\":{\"shape\":\"S82\"}}}},\"GetContainerServicePowers\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"powers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"powerId\":{},\"price\":{\"type\":\"float\"},\"cpuCount\":{\"type\":\"float\"},\"ramSizeInGb\":{\"type\":\"float\"},\"name\":{},\"isActive\":{\"type\":\"boolean\"}}}}}}},\"GetContainerServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"serviceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerServices\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}}}}},\"GetDisk\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskName\"],\"members\":{\"diskName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"disk\":{\"shape\":\"S8e\"}}}},\"GetDiskSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"diskSnapshotName\"],\"members\":{\"diskSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"diskSnapshot\":{\"shape\":\"S8k\"}}}},\"GetDiskSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"diskSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"S8k\"}},\"nextPageToken\":{}}}},\"GetDisks\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"disks\":{\"shape\":\"S8r\"},\"nextPageToken\":{}}}},\"GetDistributionBundles\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"bundles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"bundleId\":{},\"name\":{},\"price\":{\"type\":\"float\"},\"transferPerMonthInGb\":{\"type\":\"integer\"},\"isActive\":{\"type\":\"boolean\"}}}}}}},\"GetDistributionLatestCacheReset\":{\"input\":{\"type\":\"structure\",\"members\":{\"distributionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"createTime\":{\"type\":\"timestamp\"}}}},\"GetDistributionMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"distributionName\",\"metricName\",\"startTime\",\"endTime\",\"period\",\"unit\",\"statistics\"],\"members\":{\"distributionName\":{},\"metricName\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"period\":{\"type\":\"integer\"},\"unit\":{},\"statistics\":{\"shape\":\"S80\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricData\":{\"shape\":\"S82\"}}}},\"GetDistributions\":{\"input\":{\"type\":\"structure\",\"members\":{\"distributionName\":{},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"distributions\":{\"type\":\"list\",\"member\":{\"shape\":\"S3h\"}},\"nextPageToken\":{}}}},\"GetDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"domainName\"],\"members\":{\"domainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"domain\":{\"shape\":\"S96\"}}}},\"GetDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"domains\":{\"type\":\"list\",\"member\":{\"shape\":\"S96\"}},\"nextPageToken\":{}}}},\"GetExportSnapshotRecords\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"exportSnapshotRecords\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"state\":{},\"sourceInfo\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"createdAt\":{\"type\":\"timestamp\"},\"name\":{},\"arn\":{},\"fromResourceName\":{},\"fromResourceArn\":{},\"instanceSnapshotInfo\":{\"type\":\"structure\",\"members\":{\"fromBundleId\":{},\"fromBlueprintId\":{},\"fromDiskInfo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"path\":{},\"sizeInGb\":{\"type\":\"integer\"},\"isSystemDisk\":{\"type\":\"boolean\"}}}}}},\"diskSnapshotInfo\":{\"type\":\"structure\",\"members\":{\"sizeInGb\":{\"type\":\"integer\"}}}}},\"destinationInfo\":{\"shape\":\"S7d\"}}}},\"nextPageToken\":{}}}},\"GetInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instance\":{\"shape\":\"S9n\"}}}},\"GetInstanceAccessDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{},\"protocol\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"accessDetails\":{\"type\":\"structure\",\"members\":{\"certKey\":{},\"expiresAt\":{\"type\":\"timestamp\"},\"ipAddress\":{},\"password\":{},\"passwordData\":{\"type\":\"structure\",\"members\":{\"ciphertext\":{},\"keyPairName\":{}}},\"privateKey\":{},\"protocol\":{},\"instanceName\":{},\"username\":{},\"hostKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"algorithm\":{},\"publicKey\":{},\"witnessedAt\":{\"type\":\"timestamp\"},\"fingerprintSHA1\":{},\"fingerprintSHA256\":{},\"notValidBefore\":{\"type\":\"timestamp\"},\"notValidAfter\":{\"type\":\"timestamp\"}}}}}}}}},\"GetInstanceMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\",\"metricName\",\"period\",\"startTime\",\"endTime\",\"unit\",\"statistics\"],\"members\":{\"instanceName\":{},\"metricName\":{},\"period\":{\"type\":\"integer\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"unit\":{},\"statistics\":{\"shape\":\"S80\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricData\":{\"shape\":\"S82\"}}}},\"GetInstancePortStates\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"portStates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fromPort\":{\"type\":\"integer\"},\"toPort\":{\"type\":\"integer\"},\"protocol\":{},\"state\":{},\"cidrs\":{\"shape\":\"Su\"},\"ipv6Cidrs\":{\"shape\":\"Su\"},\"cidrListAliases\":{\"shape\":\"Su\"}}}}}}},\"GetInstanceSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceSnapshotName\"],\"members\":{\"instanceSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceSnapshot\":{\"shape\":\"Sag\"}}}},\"GetInstanceSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instanceSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sag\"}},\"nextPageToken\":{}}}},\"GetInstanceState\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"state\":{\"shape\":\"S9y\"}}}},\"GetInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"instances\":{\"type\":\"list\",\"member\":{\"shape\":\"S9n\"}},\"nextPageToken\":{}}}},\"GetKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"keyPairName\"],\"members\":{\"keyPairName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"keyPair\":{\"shape\":\"S42\"}}}},\"GetKeyPairs\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"keyPairs\":{\"type\":\"list\",\"member\":{\"shape\":\"S42\"}},\"nextPageToken\":{}}}},\"GetLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\"],\"members\":{\"loadBalancerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"loadBalancer\":{\"shape\":\"Sax\"}}}},\"GetLoadBalancerMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"metricName\",\"period\",\"startTime\",\"endTime\",\"unit\",\"statistics\"],\"members\":{\"loadBalancerName\":{},\"metricName\":{},\"period\":{\"type\":\"integer\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"unit\":{},\"statistics\":{\"shape\":\"S80\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricData\":{\"shape\":\"S82\"}}}},\"GetLoadBalancerTlsCertificates\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\"],\"members\":{\"loadBalancerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tlsCertificates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"loadBalancerName\":{},\"isAttached\":{\"type\":\"boolean\"},\"status\":{},\"domainName\":{},\"domainValidationRecords\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"type\":{},\"value\":{},\"validationStatus\":{},\"domainName\":{}}}},\"failureReason\":{},\"issuedAt\":{\"type\":\"timestamp\"},\"issuer\":{},\"keyAlgorithm\":{},\"notAfter\":{\"type\":\"timestamp\"},\"notBefore\":{\"type\":\"timestamp\"},\"renewalSummary\":{\"type\":\"structure\",\"members\":{\"renewalStatus\":{},\"domainValidationOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"domainName\":{},\"validationStatus\":{}}}}}},\"revocationReason\":{},\"revokedAt\":{\"type\":\"timestamp\"},\"serial\":{},\"signatureAlgorithm\":{},\"subject\":{},\"subjectAlternativeNames\":{\"shape\":\"Su\"}}}}}}},\"GetLoadBalancers\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"loadBalancers\":{\"type\":\"list\",\"member\":{\"shape\":\"Sax\"}},\"nextPageToken\":{}}}},\"GetOperation\":{\"input\":{\"type\":\"structure\",\"required\":[\"operationId\"],\"members\":{\"operationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"GetOperations\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"},\"nextPageToken\":{}}}},\"GetOperationsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceName\"],\"members\":{\"resourceName\":{},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"},\"nextPageCount\":{\"deprecated\":true},\"nextPageToken\":{}}}},\"GetRegions\":{\"input\":{\"type\":\"structure\",\"members\":{\"includeAvailabilityZones\":{\"type\":\"boolean\"},\"includeRelationalDatabaseAvailabilityZones\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"regions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"continentCode\":{},\"description\":{},\"displayName\":{},\"name\":{},\"availabilityZones\":{\"shape\":\"Sc3\"},\"relationalDatabaseAvailabilityZones\":{\"shape\":\"Sc3\"}}}}}}},\"GetRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"relationalDatabase\":{\"shape\":\"Sc7\"}}}},\"GetRelationalDatabaseBlueprints\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"blueprints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"blueprintId\":{},\"engine\":{},\"engineVersion\":{},\"engineDescription\":{},\"engineVersionDescription\":{},\"isEngineDefault\":{\"type\":\"boolean\"}}}},\"nextPageToken\":{}}}},\"GetRelationalDatabaseBundles\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"bundles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"bundleId\":{},\"name\":{},\"price\":{\"type\":\"float\"},\"ramSizeInGb\":{\"type\":\"float\"},\"diskSizeInGb\":{\"type\":\"integer\"},\"transferPerMonthInGb\":{\"type\":\"integer\"},\"cpuCount\":{\"type\":\"integer\"},\"isEncrypted\":{\"type\":\"boolean\"},\"isActive\":{\"type\":\"boolean\"}}}},\"nextPageToken\":{}}}},\"GetRelationalDatabaseEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"durationInMinutes\":{\"type\":\"integer\"},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"relationalDatabaseEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resource\":{},\"createdAt\":{\"type\":\"timestamp\"},\"message\":{},\"eventCategories\":{\"shape\":\"Su\"}}}},\"nextPageToken\":{}}}},\"GetRelationalDatabaseLogEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\",\"logStreamName\"],\"members\":{\"relationalDatabaseName\":{},\"logStreamName\":{},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"startFromHead\":{\"type\":\"boolean\"},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceLogEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"createdAt\":{\"type\":\"timestamp\"},\"message\":{}}}},\"nextBackwardToken\":{},\"nextForwardToken\":{}}}},\"GetRelationalDatabaseLogStreams\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"logStreams\":{\"shape\":\"Su\"}}}},\"GetRelationalDatabaseMasterUserPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"passwordVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"masterUserPassword\":{\"shape\":\"S4a\"},\"createdAt\":{\"type\":\"timestamp\"}}}},\"GetRelationalDatabaseMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\",\"metricName\",\"period\",\"startTime\",\"endTime\",\"unit\",\"statistics\"],\"members\":{\"relationalDatabaseName\":{},\"metricName\":{},\"period\":{\"type\":\"integer\"},\"startTime\":{\"type\":\"timestamp\"},\"endTime\":{\"type\":\"timestamp\"},\"unit\":{},\"statistics\":{\"shape\":\"S80\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"metricData\":{\"shape\":\"S82\"}}}},\"GetRelationalDatabaseParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"parameters\":{\"shape\":\"Sd4\"},\"nextPageToken\":{}}}},\"GetRelationalDatabaseSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseSnapshotName\"],\"members\":{\"relationalDatabaseSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"relationalDatabaseSnapshot\":{\"shape\":\"Sd8\"}}}},\"GetRelationalDatabaseSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"relationalDatabaseSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd8\"}},\"nextPageToken\":{}}}},\"GetRelationalDatabases\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"relationalDatabases\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc7\"}},\"nextPageToken\":{}}}},\"GetStaticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"staticIpName\"],\"members\":{\"staticIpName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"staticIp\":{\"shape\":\"Sdh\"}}}},\"GetStaticIps\":{\"input\":{\"type\":\"structure\",\"members\":{\"pageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"staticIps\":{\"type\":\"list\",\"member\":{\"shape\":\"Sdh\"}},\"nextPageToken\":{}}}},\"ImportKeyPair\":{\"input\":{\"type\":\"structure\",\"required\":[\"keyPairName\",\"publicKeyBase64\"],\"members\":{\"keyPairName\":{},\"publicKeyBase64\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"IsVpcPeered\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"isPeered\":{\"type\":\"boolean\"}}}},\"OpenInstancePublicPorts\":{\"input\":{\"type\":\"structure\",\"required\":[\"portInfo\",\"instanceName\"],\"members\":{\"portInfo\":{\"shape\":\"Sr\"},\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"PeerVpc\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"PutAlarm\":{\"input\":{\"type\":\"structure\",\"required\":[\"alarmName\",\"metricName\",\"monitoredResourceName\",\"comparisonOperator\",\"threshold\",\"evaluationPeriods\"],\"members\":{\"alarmName\":{},\"metricName\":{},\"monitoredResourceName\":{},\"comparisonOperator\":{},\"threshold\":{\"type\":\"double\"},\"evaluationPeriods\":{\"type\":\"integer\"},\"datapointsToAlarm\":{\"type\":\"integer\"},\"treatMissingData\":{},\"contactProtocols\":{\"shape\":\"S6f\"},\"notificationTriggers\":{\"shape\":\"S6g\"},\"notificationEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"PutInstancePublicPorts\":{\"input\":{\"type\":\"structure\",\"required\":[\"portInfos\",\"instanceName\"],\"members\":{\"portInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"RebootInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"RebootRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"RegisterContainerImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\",\"label\",\"digest\"],\"members\":{\"serviceName\":{},\"label\":{},\"digest\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerImage\":{\"shape\":\"S7q\"}}}},\"ReleaseStaticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"staticIpName\"],\"members\":{\"staticIpName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"ResetDistributionCache\":{\"input\":{\"type\":\"structure\",\"members\":{\"distributionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"status\":{},\"createTime\":{\"type\":\"timestamp\"},\"operation\":{\"shape\":\"S5\"}}}},\"SendContactMethodVerification\":{\"input\":{\"type\":\"structure\",\"required\":[\"protocol\"],\"members\":{\"protocol\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"SetIpAddressType\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resourceName\",\"ipAddressType\"],\"members\":{\"resourceType\":{},\"resourceName\":{},\"ipAddressType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"StartInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"StartRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"StopInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"instanceName\"],\"members\":{\"instanceName\":{},\"force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"StopRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"relationalDatabaseSnapshotName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceName\",\"tags\"],\"members\":{\"resourceName\":{},\"resourceArn\":{},\"tags\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"TestAlarm\":{\"input\":{\"type\":\"structure\",\"required\":[\"alarmName\",\"state\"],\"members\":{\"alarmName\":{},\"state\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"UnpeerVpc\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceName\",\"tagKeys\"],\"members\":{\"resourceName\":{},\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"UpdateContainerService\":{\"input\":{\"type\":\"structure\",\"required\":[\"serviceName\"],\"members\":{\"serviceName\":{},\"power\":{},\"scale\":{\"type\":\"integer\"},\"isDisabled\":{\"type\":\"boolean\"},\"publicDomainNames\":{\"shape\":\"S20\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"containerService\":{\"shape\":\"S2d\"}}}},\"UpdateDistribution\":{\"input\":{\"type\":\"structure\",\"required\":[\"distributionName\"],\"members\":{\"distributionName\":{},\"origin\":{\"shape\":\"S31\"},\"defaultCacheBehavior\":{\"shape\":\"S33\"},\"cacheBehaviorSettings\":{\"shape\":\"S35\"},\"cacheBehaviors\":{\"shape\":\"S3d\"},\"isEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"UpdateDistributionBundle\":{\"input\":{\"type\":\"structure\",\"members\":{\"distributionName\":{},\"bundleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operation\":{\"shape\":\"S5\"}}}},\"UpdateDomainEntry\":{\"input\":{\"type\":\"structure\",\"required\":[\"domainName\",\"domainEntry\"],\"members\":{\"domainName\":{},\"domainEntry\":{\"shape\":\"S3m\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"UpdateLoadBalancerAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"loadBalancerName\",\"attributeName\",\"attributeValue\"],\"members\":{\"loadBalancerName\":{},\"attributeName\":{},\"attributeValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"UpdateRelationalDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\"],\"members\":{\"relationalDatabaseName\":{},\"masterUserPassword\":{\"shape\":\"S4a\"},\"rotateMasterUserPassword\":{\"type\":\"boolean\"},\"preferredBackupWindow\":{},\"preferredMaintenanceWindow\":{},\"enableBackupRetention\":{\"type\":\"boolean\"},\"disableBackupRetention\":{\"type\":\"boolean\"},\"publiclyAccessible\":{\"type\":\"boolean\"},\"applyImmediately\":{\"type\":\"boolean\"},\"caCertificateIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}},\"UpdateRelationalDatabaseParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"relationalDatabaseName\",\"parameters\"],\"members\":{\"relationalDatabaseName\":{},\"parameters\":{\"shape\":\"Sd4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"operations\":{\"shape\":\"S4\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"S5\":{\"type\":\"structure\",\"members\":{\"id\":{},\"resourceName\":{},\"resourceType\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"isTerminal\":{\"type\":\"boolean\"},\"operationDetails\":{},\"operationType\":{},\"status\":{},\"statusChangedAt\":{\"type\":\"timestamp\"},\"errorCode\":{},\"errorDetails\":{}}},\"S9\":{\"type\":\"structure\",\"members\":{\"availabilityZone\":{},\"regionName\":{}}},\"Sk\":{\"type\":\"list\",\"member\":{}},\"Sr\":{\"type\":\"structure\",\"members\":{\"fromPort\":{\"type\":\"integer\"},\"toPort\":{\"type\":\"integer\"},\"protocol\":{},\"cidrs\":{\"shape\":\"Su\"},\"ipv6Cidrs\":{\"shape\":\"Su\"},\"cidrListAliases\":{\"shape\":\"Su\"}}},\"Su\":{\"type\":\"list\",\"member\":{}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S12\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"S17\":{\"type\":\"structure\",\"members\":{\"certificateArn\":{},\"certificateName\":{},\"domainName\":{},\"certificateDetail\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"domainName\":{},\"status\":{},\"serialNumber\":{},\"subjectAlternativeNames\":{\"shape\":\"S11\"},\"domainValidationRecords\":{\"shape\":\"S1b\"},\"requestFailureReason\":{},\"inUseResourceCount\":{\"type\":\"integer\"},\"keyAlgorithm\":{},\"createdAt\":{\"type\":\"timestamp\"},\"issuedAt\":{\"type\":\"timestamp\"},\"issuerCA\":{},\"notBefore\":{\"type\":\"timestamp\"},\"notAfter\":{\"type\":\"timestamp\"},\"eligibleToRenew\":{},\"renewalSummary\":{\"type\":\"structure\",\"members\":{\"domainValidationRecords\":{\"shape\":\"S1b\"},\"renewalStatus\":{},\"renewalStatusReason\":{},\"updatedAt\":{\"type\":\"timestamp\"}}},\"revokedAt\":{\"type\":\"timestamp\"},\"revocationReason\":{},\"tags\":{\"shape\":\"S12\"},\"supportCode\":{}}},\"tags\":{\"shape\":\"S12\"}}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"domainName\":{},\"resourceRecord\":{\"type\":\"structure\",\"members\":{\"name\":{},\"type\":{},\"value\":{}}}}}},\"S20\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"S23\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"image\":{},\"command\":{\"shape\":\"Su\"},\"environment\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"ports\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"S29\":{\"type\":\"structure\",\"required\":[\"containerName\",\"containerPort\"],\"members\":{\"containerName\":{},\"containerPort\":{\"type\":\"integer\"},\"healthCheck\":{\"shape\":\"S2b\"}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"healthyThreshold\":{\"type\":\"integer\"},\"unhealthyThreshold\":{\"type\":\"integer\"},\"timeoutSeconds\":{\"type\":\"integer\"},\"intervalSeconds\":{\"type\":\"integer\"},\"path\":{},\"successCodes\":{}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"containerServiceName\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"power\":{},\"powerId\":{},\"state\":{},\"stateDetail\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{}}},\"scale\":{\"type\":\"integer\"},\"currentDeployment\":{\"shape\":\"S2h\"},\"nextDeployment\":{\"shape\":\"S2h\"},\"isDisabled\":{\"type\":\"boolean\"},\"principalArn\":{},\"privateDomainName\":{},\"publicDomainNames\":{\"shape\":\"S20\"},\"url\":{}}},\"S2h\":{\"type\":\"structure\",\"members\":{\"version\":{\"type\":\"integer\"},\"state\":{},\"containers\":{\"shape\":\"S23\"},\"publicEndpoint\":{\"type\":\"structure\",\"members\":{\"containerName\":{},\"containerPort\":{\"type\":\"integer\"},\"healthCheck\":{\"shape\":\"S2b\"}}},\"createdAt\":{\"type\":\"timestamp\"}}},\"S2q\":{\"type\":\"list\",\"member\":{\"shape\":\"S2r\"}},\"S2r\":{\"type\":\"structure\",\"required\":[\"addOnType\"],\"members\":{\"addOnType\":{},\"autoSnapshotAddOnRequest\":{\"type\":\"structure\",\"members\":{\"snapshotTimeOfDay\":{}}}}},\"S31\":{\"type\":\"structure\",\"members\":{\"name\":{},\"regionName\":{},\"protocolPolicy\":{}}},\"S33\":{\"type\":\"structure\",\"members\":{\"behavior\":{}}},\"S35\":{\"type\":\"structure\",\"members\":{\"defaultTTL\":{\"type\":\"long\"},\"minimumTTL\":{\"type\":\"long\"},\"maximumTTL\":{\"type\":\"long\"},\"allowedHTTPMethods\":{},\"cachedHTTPMethods\":{},\"forwardedCookies\":{\"type\":\"structure\",\"members\":{\"option\":{},\"cookiesAllowList\":{\"shape\":\"Su\"}}},\"forwardedHeaders\":{\"type\":\"structure\",\"members\":{\"option\":{},\"headersAllowList\":{\"type\":\"list\",\"member\":{}}}},\"forwardedQueryStrings\":{\"type\":\"structure\",\"members\":{\"option\":{\"type\":\"boolean\"},\"queryStringsAllowList\":{\"shape\":\"Su\"}}}}},\"S3d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"path\":{},\"behavior\":{}}}},\"S3h\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"alternativeDomainNames\":{\"shape\":\"Su\"},\"status\":{},\"isEnabled\":{\"type\":\"boolean\"},\"domainName\":{},\"bundleId\":{},\"certificateName\":{},\"origin\":{\"type\":\"structure\",\"members\":{\"name\":{},\"resourceType\":{},\"regionName\":{},\"protocolPolicy\":{}}},\"originPublicDNS\":{},\"defaultCacheBehavior\":{\"shape\":\"S33\"},\"cacheBehaviorSettings\":{\"shape\":\"S35\"},\"cacheBehaviors\":{\"shape\":\"S3d\"},\"ableToUpdateBundle\":{\"type\":\"boolean\"},\"ipAddressType\":{},\"tags\":{\"shape\":\"S12\"}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"id\":{},\"name\":{},\"target\":{},\"isAlias\":{\"type\":\"boolean\"},\"type\":{},\"options\":{\"deprecated\":true,\"type\":\"map\",\"key\":{},\"value\":{}}}},\"S42\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"fingerprint\":{}}},\"S45\":{\"type\":\"list\",\"member\":{}},\"S4a\":{\"type\":\"string\",\"sensitive\":true},\"S6f\":{\"type\":\"list\",\"member\":{}},\"S6g\":{\"type\":\"list\",\"member\":{}},\"S7d\":{\"type\":\"structure\",\"members\":{\"id\":{},\"service\":{}}},\"S7q\":{\"type\":\"structure\",\"members\":{\"image\":{},\"digest\":{},\"createdAt\":{\"type\":\"timestamp\"}}},\"S80\":{\"type\":\"list\",\"member\":{}},\"S82\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"average\":{\"type\":\"double\"},\"maximum\":{\"type\":\"double\"},\"minimum\":{\"type\":\"double\"},\"sampleCount\":{\"type\":\"double\"},\"sum\":{\"type\":\"double\"},\"timestamp\":{\"type\":\"timestamp\"},\"unit\":{}}}},\"S8e\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"addOns\":{\"shape\":\"S8f\"},\"sizeInGb\":{\"type\":\"integer\"},\"isSystemDisk\":{\"type\":\"boolean\"},\"iops\":{\"type\":\"integer\"},\"path\":{},\"state\":{},\"attachedTo\":{},\"isAttached\":{\"type\":\"boolean\"},\"attachmentState\":{\"deprecated\":true},\"gbInUse\":{\"deprecated\":true,\"type\":\"integer\"}}},\"S8f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"status\":{},\"snapshotTimeOfDay\":{},\"nextSnapshotTimeOfDay\":{}}}},\"S8k\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"sizeInGb\":{\"type\":\"integer\"},\"state\":{},\"progress\":{},\"fromDiskName\":{},\"fromDiskArn\":{},\"fromInstanceName\":{},\"fromInstanceArn\":{},\"isFromAutoSnapshot\":{\"type\":\"boolean\"}}},\"S8r\":{\"type\":\"list\",\"member\":{\"shape\":\"S8e\"}},\"S96\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"domainEntries\":{\"type\":\"list\",\"member\":{\"shape\":\"S3m\"}}}},\"S9n\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"blueprintId\":{},\"blueprintName\":{},\"bundleId\":{},\"addOns\":{\"shape\":\"S8f\"},\"isStaticIp\":{\"type\":\"boolean\"},\"privateIpAddress\":{},\"publicIpAddress\":{},\"ipv6Addresses\":{\"type\":\"list\",\"member\":{}},\"ipAddressType\":{},\"hardware\":{\"type\":\"structure\",\"members\":{\"cpuCount\":{\"type\":\"integer\"},\"disks\":{\"shape\":\"S8r\"},\"ramSizeInGb\":{\"type\":\"float\"}}},\"networking\":{\"type\":\"structure\",\"members\":{\"monthlyTransfer\":{\"type\":\"structure\",\"members\":{\"gbPerMonthAllocated\":{\"type\":\"integer\"}}},\"ports\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"fromPort\":{\"type\":\"integer\"},\"toPort\":{\"type\":\"integer\"},\"protocol\":{},\"accessFrom\":{},\"accessType\":{},\"commonName\":{},\"accessDirection\":{},\"cidrs\":{\"shape\":\"Su\"},\"ipv6Cidrs\":{\"shape\":\"Su\"},\"cidrListAliases\":{\"shape\":\"Su\"}}}}}},\"state\":{\"shape\":\"S9y\"},\"username\":{},\"sshKeyName\":{}}},\"S9y\":{\"type\":\"structure\",\"members\":{\"code\":{\"type\":\"integer\"},\"name\":{}}},\"Sag\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"state\":{},\"progress\":{},\"fromAttachedDisks\":{\"shape\":\"S8r\"},\"fromInstanceName\":{},\"fromInstanceArn\":{},\"fromBlueprintId\":{},\"fromBundleId\":{},\"isFromAutoSnapshot\":{\"type\":\"boolean\"},\"sizeInGb\":{\"type\":\"integer\"}}},\"Sax\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"dnsName\":{},\"state\":{},\"protocol\":{},\"publicPorts\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"healthCheckPath\":{},\"instancePort\":{\"type\":\"integer\"},\"instanceHealthSummary\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"instanceName\":{},\"instanceHealth\":{},\"instanceHealthReason\":{}}}},\"tlsCertificateSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"isAttached\":{\"type\":\"boolean\"}}}},\"configurationOptions\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"ipAddressType\":{}}},\"Sc3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"zoneName\":{},\"state\":{}}}},\"Sc7\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"relationalDatabaseBlueprintId\":{},\"relationalDatabaseBundleId\":{},\"masterDatabaseName\":{},\"hardware\":{\"type\":\"structure\",\"members\":{\"cpuCount\":{\"type\":\"integer\"},\"diskSizeInGb\":{\"type\":\"integer\"},\"ramSizeInGb\":{\"type\":\"float\"}}},\"state\":{},\"secondaryAvailabilityZone\":{},\"backupRetentionEnabled\":{\"type\":\"boolean\"},\"pendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"masterUserPassword\":{},\"engineVersion\":{},\"backupRetentionEnabled\":{\"type\":\"boolean\"}}},\"engine\":{},\"engineVersion\":{},\"latestRestorableTime\":{\"type\":\"timestamp\"},\"masterUsername\":{},\"parameterApplyStatus\":{},\"preferredBackupWindow\":{},\"preferredMaintenanceWindow\":{},\"publiclyAccessible\":{\"type\":\"boolean\"},\"masterEndpoint\":{\"type\":\"structure\",\"members\":{\"port\":{\"type\":\"integer\"},\"address\":{}}},\"pendingMaintenanceActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"action\":{},\"description\":{},\"currentApplyDate\":{\"type\":\"timestamp\"}}}},\"caCertificateIdentifier\":{}}},\"Sd4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"allowedValues\":{},\"applyMethod\":{},\"applyType\":{},\"dataType\":{},\"description\":{},\"isModifiable\":{\"type\":\"boolean\"},\"parameterName\":{},\"parameterValue\":{}}}},\"Sd8\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"tags\":{\"shape\":\"S12\"},\"engine\":{},\"engineVersion\":{},\"sizeInGb\":{\"type\":\"integer\"},\"state\":{},\"fromRelationalDatabaseName\":{},\"fromRelationalDatabaseArn\":{},\"fromRelationalDatabaseBundleId\":{},\"fromRelationalDatabaseBlueprintId\":{}}},\"Sdh\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"supportCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"location\":{\"shape\":\"S9\"},\"resourceType\":{},\"ipAddress\":{},\"attachedTo\":{},\"isAttached\":{\"type\":\"boolean\"}}}}}");

/***/ }),

/***/ 96768:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 77371:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-11-19\",\"endpointPrefix\":\"geo\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Location Service\",\"serviceId\":\"Location\",\"signatureVersion\":\"v4\",\"signingName\":\"geo\",\"uid\":\"location-2020-11-19\"},\"operations\":{\"AssociateTrackerConsumer\":{\"http\":{\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/consumers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ConsumerArn\",\"TrackerName\"],\"members\":{\"ConsumerArn\":{},\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"BatchDeleteGeofence\":{\"http\":{\"requestUri\":\"/geofencing/v0/collections/{CollectionName}/delete-geofences\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"GeofenceIds\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"},\"GeofenceIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Errors\"],\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Error\",\"GeofenceId\"],\"members\":{\"Error\":{\"shape\":\"Sb\"},\"GeofenceId\":{}}}}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"BatchEvaluateGeofences\":{\"http\":{\"requestUri\":\"/geofencing/v0/collections/{CollectionName}/positions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"DevicePositionUpdates\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"},\"DevicePositionUpdates\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Errors\"],\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceId\",\"Error\",\"SampleTime\"],\"members\":{\"DeviceId\":{},\"Error\":{\"shape\":\"Sb\"},\"SampleTime\":{\"shape\":\"Sj\"}}}}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"BatchGetDevicePosition\":{\"http\":{\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/get-positions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DeviceIds\",\"TrackerName\"],\"members\":{\"DeviceIds\":{\"type\":\"list\",\"member\":{}},\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DevicePositions\",\"Errors\"],\"members\":{\"DevicePositions\":{\"shape\":\"Sr\"},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceId\",\"Error\"],\"members\":{\"DeviceId\":{},\"Error\":{\"shape\":\"Sb\"}}}}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"BatchPutGeofence\":{\"http\":{\"requestUri\":\"/geofencing/v0/collections/{CollectionName}/put-geofences\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"Entries\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GeofenceId\",\"Geometry\"],\"members\":{\"GeofenceId\":{},\"Geometry\":{\"shape\":\"Sy\"}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Errors\",\"Successes\"],\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Error\",\"GeofenceId\"],\"members\":{\"Error\":{\"shape\":\"Sb\"},\"GeofenceId\":{}}}},\"Successes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"GeofenceId\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"GeofenceId\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}}}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"BatchUpdateDevicePosition\":{\"http\":{\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/positions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"TrackerName\",\"Updates\"],\"members\":{\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"},\"Updates\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}}}},\"output\":{\"type\":\"structure\",\"required\":[\"Errors\"],\"members\":{\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceId\",\"Error\",\"SampleTime\"],\"members\":{\"DeviceId\":{},\"Error\":{\"shape\":\"Sb\"},\"SampleTime\":{\"shape\":\"Sj\"}}}}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"CreateGeofenceCollection\":{\"http\":{\"requestUri\":\"/geofencing/v0/collections\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"PricingPlan\"],\"members\":{\"CollectionName\":{},\"Description\":{},\"PricingPlan\":{},\"PricingPlanDataSource\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CollectionArn\",\"CollectionName\",\"CreateTime\"],\"members\":{\"CollectionArn\":{},\"CollectionName\":{},\"CreateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"},\"idempotent\":true},\"CreateMap\":{\"http\":{\"requestUri\":\"/maps/v0/maps\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Configuration\",\"MapName\",\"PricingPlan\"],\"members\":{\"Configuration\":{\"shape\":\"S1g\"},\"Description\":{},\"MapName\":{},\"PricingPlan\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"MapArn\",\"MapName\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"MapArn\":{},\"MapName\":{}}},\"endpoint\":{\"hostPrefix\":\"maps.\"},\"idempotent\":true},\"CreatePlaceIndex\":{\"http\":{\"requestUri\":\"/places/v0/indexes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DataSource\",\"IndexName\",\"PricingPlan\"],\"members\":{\"DataSource\":{},\"DataSourceConfiguration\":{\"shape\":\"S1k\"},\"Description\":{},\"IndexName\":{},\"PricingPlan\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"IndexArn\",\"IndexName\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"IndexArn\":{},\"IndexName\":{}}},\"endpoint\":{\"hostPrefix\":\"places.\"},\"idempotent\":true},\"CreateTracker\":{\"http\":{\"requestUri\":\"/tracking/v0/trackers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"PricingPlan\",\"TrackerName\"],\"members\":{\"Description\":{},\"PricingPlan\":{},\"PricingPlanDataSource\":{},\"TrackerName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"TrackerArn\",\"TrackerName\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"TrackerArn\":{},\"TrackerName\":{}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"},\"idempotent\":true},\"DeleteGeofenceCollection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/geofencing/v0/collections/{CollectionName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"},\"idempotent\":true},\"DeleteMap\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/maps/v0/maps/{MapName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MapName\"],\"members\":{\"MapName\":{\"location\":\"uri\",\"locationName\":\"MapName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"maps.\"},\"idempotent\":true},\"DeletePlaceIndex\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/places/v0/indexes/{IndexName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{\"location\":\"uri\",\"locationName\":\"IndexName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"places.\"},\"idempotent\":true},\"DeleteTracker\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tracking/v0/trackers/{TrackerName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"TrackerName\"],\"members\":{\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"tracking.\"},\"idempotent\":true},\"DescribeGeofenceCollection\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/geofencing/v0/collections/{CollectionName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CollectionArn\",\"CollectionName\",\"CreateTime\",\"Description\",\"PricingPlan\",\"UpdateTime\"],\"members\":{\"CollectionArn\":{},\"CollectionName\":{},\"CreateTime\":{\"shape\":\"Sj\"},\"Description\":{},\"PricingPlan\":{},\"PricingPlanDataSource\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"DescribeMap\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/maps/v0/maps/{MapName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MapName\"],\"members\":{\"MapName\":{\"location\":\"uri\",\"locationName\":\"MapName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Configuration\",\"CreateTime\",\"DataSource\",\"Description\",\"MapArn\",\"MapName\",\"PricingPlan\",\"UpdateTime\"],\"members\":{\"Configuration\":{\"shape\":\"S1g\"},\"CreateTime\":{\"shape\":\"Sj\"},\"DataSource\":{},\"Description\":{},\"MapArn\":{},\"MapName\":{},\"PricingPlan\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"maps.\"}},\"DescribePlaceIndex\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/places/v0/indexes/{IndexName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IndexName\"],\"members\":{\"IndexName\":{\"location\":\"uri\",\"locationName\":\"IndexName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"DataSource\",\"DataSourceConfiguration\",\"Description\",\"IndexArn\",\"IndexName\",\"PricingPlan\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"DataSource\":{},\"DataSourceConfiguration\":{\"shape\":\"S1k\"},\"Description\":{},\"IndexArn\":{},\"IndexName\":{},\"PricingPlan\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"places.\"}},\"DescribeTracker\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tracking/v0/trackers/{TrackerName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"TrackerName\"],\"members\":{\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"Description\",\"PricingPlan\",\"TrackerArn\",\"TrackerName\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"Description\":{},\"PricingPlan\":{},\"PricingPlanDataSource\":{},\"TrackerArn\":{},\"TrackerName\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"DisassociateTrackerConsumer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/consumers/{ConsumerArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ConsumerArn\",\"TrackerName\"],\"members\":{\"ConsumerArn\":{\"location\":\"uri\",\"locationName\":\"ConsumerArn\"},\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"GetDevicePosition\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/positions/latest\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DeviceId\",\"TrackerName\"],\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"DeviceId\"},\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Position\",\"ReceivedTime\",\"SampleTime\"],\"members\":{\"DeviceId\":{},\"Position\":{\"shape\":\"Sh\"},\"ReceivedTime\":{\"shape\":\"Sj\"},\"SampleTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"GetDevicePositionHistory\":{\"http\":{\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/list-positions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DeviceId\",\"TrackerName\"],\"members\":{\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"DeviceId\"},\"EndTimeExclusive\":{\"shape\":\"Sj\"},\"NextToken\":{},\"StartTimeInclusive\":{\"shape\":\"Sj\"},\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DevicePositions\"],\"members\":{\"DevicePositions\":{\"shape\":\"Sr\"},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"GetGeofence\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"GeofenceId\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"},\"GeofenceId\":{\"location\":\"uri\",\"locationName\":\"GeofenceId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"GeofenceId\",\"Geometry\",\"Status\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"GeofenceId\":{},\"Geometry\":{\"shape\":\"Sy\"},\"Status\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"GetMapGlyphs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/maps/v0/maps/{MapName}/glyphs/{FontStack}/{FontUnicodeRange}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FontStack\",\"FontUnicodeRange\",\"MapName\"],\"members\":{\"FontStack\":{\"location\":\"uri\",\"locationName\":\"FontStack\"},\"FontUnicodeRange\":{\"location\":\"uri\",\"locationName\":\"FontUnicodeRange\"},\"MapName\":{\"location\":\"uri\",\"locationName\":\"MapName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Blob\":{\"type\":\"blob\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Blob\"},\"endpoint\":{\"hostPrefix\":\"maps.\"}},\"GetMapSprites\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/maps/v0/maps/{MapName}/sprites/{FileName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FileName\",\"MapName\"],\"members\":{\"FileName\":{\"location\":\"uri\",\"locationName\":\"FileName\"},\"MapName\":{\"location\":\"uri\",\"locationName\":\"MapName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Blob\":{\"type\":\"blob\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Blob\"},\"endpoint\":{\"hostPrefix\":\"maps.\"}},\"GetMapStyleDescriptor\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/maps/v0/maps/{MapName}/style-descriptor\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MapName\"],\"members\":{\"MapName\":{\"location\":\"uri\",\"locationName\":\"MapName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Blob\":{\"type\":\"blob\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Blob\"},\"endpoint\":{\"hostPrefix\":\"maps.\"}},\"GetMapTile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/maps/v0/maps/{MapName}/tiles/{Z}/{X}/{Y}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"MapName\",\"X\",\"Y\",\"Z\"],\"members\":{\"MapName\":{\"location\":\"uri\",\"locationName\":\"MapName\"},\"X\":{\"location\":\"uri\",\"locationName\":\"X\"},\"Y\":{\"location\":\"uri\",\"locationName\":\"Y\"},\"Z\":{\"location\":\"uri\",\"locationName\":\"Z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Blob\":{\"type\":\"blob\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Blob\"},\"endpoint\":{\"hostPrefix\":\"maps.\"}},\"ListGeofenceCollections\":{\"http\":{\"requestUri\":\"/geofencing/v0/list-collections\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"CreateTime\",\"Description\",\"PricingPlan\",\"UpdateTime\"],\"members\":{\"CollectionName\":{},\"CreateTime\":{\"shape\":\"Sj\"},\"Description\":{},\"PricingPlan\":{},\"PricingPlanDataSource\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"ListGeofences\":{\"http\":{\"requestUri\":\"/geofencing/v0/collections/{CollectionName}/list-geofences\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"GeofenceId\",\"Geometry\",\"Status\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"GeofenceId\":{},\"Geometry\":{\"shape\":\"Sy\"},\"Status\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"ListMaps\":{\"http\":{\"requestUri\":\"/maps/v0/list-maps\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"DataSource\",\"Description\",\"MapName\",\"PricingPlan\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"DataSource\":{},\"Description\":{},\"MapName\":{},\"PricingPlan\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"maps.\"}},\"ListPlaceIndexes\":{\"http\":{\"requestUri\":\"/places/v0/list-indexes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"DataSource\",\"Description\",\"IndexName\",\"PricingPlan\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"DataSource\":{},\"Description\":{},\"IndexName\":{},\"PricingPlan\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"places.\"}},\"ListTrackerConsumers\":{\"http\":{\"requestUri\":\"/tracking/v0/trackers/{TrackerName}/list-consumers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"TrackerName\"],\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"TrackerName\":{\"location\":\"uri\",\"locationName\":\"TrackerName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ConsumerArns\"],\"members\":{\"ConsumerArns\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"ListTrackers\":{\"http\":{\"requestUri\":\"/tracking/v0/list-trackers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"Description\",\"PricingPlan\",\"TrackerName\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"Description\":{},\"PricingPlan\":{},\"PricingPlanDataSource\":{},\"TrackerName\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"tracking.\"}},\"PutGeofence\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"CollectionName\",\"GeofenceId\",\"Geometry\"],\"members\":{\"CollectionName\":{\"location\":\"uri\",\"locationName\":\"CollectionName\"},\"GeofenceId\":{\"location\":\"uri\",\"locationName\":\"GeofenceId\"},\"Geometry\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreateTime\",\"GeofenceId\",\"UpdateTime\"],\"members\":{\"CreateTime\":{\"shape\":\"Sj\"},\"GeofenceId\":{},\"UpdateTime\":{\"shape\":\"Sj\"}}},\"endpoint\":{\"hostPrefix\":\"geofencing.\"}},\"SearchPlaceIndexForPosition\":{\"http\":{\"requestUri\":\"/places/v0/indexes/{IndexName}/search/position\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"Position\"],\"members\":{\"IndexName\":{\"location\":\"uri\",\"locationName\":\"IndexName\"},\"MaxResults\":{\"type\":\"integer\"},\"Position\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Results\",\"Summary\"],\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Place\"],\"members\":{\"Place\":{\"shape\":\"S3r\"}}}},\"Summary\":{\"type\":\"structure\",\"required\":[\"DataSource\",\"Position\"],\"members\":{\"DataSource\":{},\"MaxResults\":{\"type\":\"integer\"},\"Position\":{\"shape\":\"Sh\"}}}}},\"endpoint\":{\"hostPrefix\":\"places.\"}},\"SearchPlaceIndexForText\":{\"http\":{\"requestUri\":\"/places/v0/indexes/{IndexName}/search/text\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"IndexName\",\"Text\"],\"members\":{\"BiasPosition\":{\"shape\":\"Sh\"},\"FilterBBox\":{\"shape\":\"S3v\"},\"FilterCountries\":{\"shape\":\"S3w\"},\"IndexName\":{\"location\":\"uri\",\"locationName\":\"IndexName\"},\"MaxResults\":{\"type\":\"integer\"},\"Text\":{\"type\":\"string\",\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"Results\",\"Summary\"],\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Place\"],\"members\":{\"Place\":{\"shape\":\"S3r\"}}}},\"Summary\":{\"type\":\"structure\",\"required\":[\"DataSource\",\"Text\"],\"members\":{\"BiasPosition\":{\"shape\":\"Sh\"},\"DataSource\":{},\"FilterBBox\":{\"shape\":\"S3v\"},\"FilterCountries\":{\"shape\":\"S3w\"},\"MaxResults\":{\"type\":\"integer\"},\"ResultBBox\":{\"shape\":\"S3v\"},\"Text\":{\"type\":\"string\",\"sensitive\":true}}}}},\"endpoint\":{\"hostPrefix\":\"places.\"}}},\"shapes\":{\"Sb\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}},\"Sg\":{\"type\":\"structure\",\"required\":[\"DeviceId\",\"Position\",\"SampleTime\"],\"members\":{\"DeviceId\":{},\"Position\":{\"shape\":\"Sh\"},\"SampleTime\":{\"shape\":\"Sj\"}}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"double\"},\"sensitive\":true},\"Sj\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Position\",\"ReceivedTime\",\"SampleTime\"],\"members\":{\"DeviceId\":{},\"Position\":{\"shape\":\"Sh\"},\"ReceivedTime\":{\"shape\":\"Sj\"},\"SampleTime\":{\"shape\":\"Sj\"}}}},\"Sy\":{\"type\":\"structure\",\"members\":{\"Polygon\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}}}}},\"S1g\":{\"type\":\"structure\",\"required\":[\"Style\"],\"members\":{\"Style\":{}}},\"S1k\":{\"type\":\"structure\",\"members\":{\"IntendedUse\":{}}},\"S3r\":{\"type\":\"structure\",\"required\":[\"Geometry\"],\"members\":{\"AddressNumber\":{},\"Country\":{},\"Geometry\":{\"type\":\"structure\",\"members\":{\"Point\":{\"shape\":\"Sh\"}}},\"Label\":{},\"Municipality\":{},\"Neighborhood\":{},\"PostalCode\":{},\"Region\":{},\"Street\":{},\"SubRegion\":{}}},\"S3v\":{\"type\":\"list\",\"member\":{\"type\":\"double\"},\"sensitive\":true},\"S3w\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 23890:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetDevicePositionHistory\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"DevicePositions\"},\"ListGeofenceCollections\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Entries\"},\"ListGeofences\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Entries\"},\"ListMaps\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Entries\"},\"ListPlaceIndexes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Entries\"},\"ListTrackerConsumers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ConsumerArns\"},\"ListTrackers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Entries\"}}}");

/***/ }),

/***/ 69022:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-03-28\",\"endpointPrefix\":\"logs\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon CloudWatch Logs\",\"serviceId\":\"CloudWatch Logs\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Logs_20140328\",\"uid\":\"logs-2014-03-28\"},\"operations\":{\"AssociateKmsKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"kmsKeyId\"],\"members\":{\"logGroupName\":{},\"kmsKeyId\":{}}}},\"CancelExportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskId\"],\"members\":{\"taskId\":{}}}},\"CreateExportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"from\",\"to\",\"destination\"],\"members\":{\"taskName\":{},\"logGroupName\":{},\"logStreamNamePrefix\":{},\"from\":{\"type\":\"long\"},\"to\":{\"type\":\"long\"},\"destination\":{},\"destinationPrefix\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskId\":{}}}},\"CreateLogGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{},\"kmsKeyId\":{},\"tags\":{\"shape\":\"Se\"}}}},\"CreateLogStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"logStreamName\"],\"members\":{\"logGroupName\":{},\"logStreamName\":{}}}},\"DeleteDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"destinationName\"],\"members\":{\"destinationName\":{}}}},\"DeleteLogGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{}}}},\"DeleteLogStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"logStreamName\"],\"members\":{\"logGroupName\":{},\"logStreamName\":{}}}},\"DeleteMetricFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"filterName\"],\"members\":{\"logGroupName\":{},\"filterName\":{}}}},\"DeleteQueryDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"queryDefinitionId\"],\"members\":{\"queryDefinitionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"success\":{\"type\":\"boolean\"}}}},\"DeleteResourcePolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"policyName\":{}}}},\"DeleteRetentionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{}}}},\"DeleteSubscriptionFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"filterName\"],\"members\":{\"logGroupName\":{},\"filterName\":{}}}},\"DescribeDestinations\":{\"input\":{\"type\":\"structure\",\"members\":{\"DestinationNamePrefix\":{},\"nextToken\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"destinations\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\"}},\"nextToken\":{}}}},\"DescribeExportTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"statusCode\":{},\"nextToken\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"exportTasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"taskId\":{},\"taskName\":{},\"logGroupName\":{},\"from\":{\"type\":\"long\"},\"to\":{\"type\":\"long\"},\"destination\":{},\"destinationPrefix\":{},\"status\":{\"type\":\"structure\",\"members\":{\"code\":{},\"message\":{}}},\"executionInfo\":{\"type\":\"structure\",\"members\":{\"creationTime\":{\"type\":\"long\"},\"completionTime\":{\"type\":\"long\"}}}}}},\"nextToken\":{}}}},\"DescribeLogGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"logGroupNamePrefix\":{},\"nextToken\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"logGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"logGroupName\":{},\"creationTime\":{\"type\":\"long\"},\"retentionInDays\":{\"type\":\"integer\"},\"metricFilterCount\":{\"type\":\"integer\"},\"arn\":{},\"storedBytes\":{\"type\":\"long\"},\"kmsKeyId\":{}}}},\"nextToken\":{}}}},\"DescribeLogStreams\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{},\"logStreamNamePrefix\":{},\"orderBy\":{},\"descending\":{\"type\":\"boolean\"},\"nextToken\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"logStreams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"logStreamName\":{},\"creationTime\":{\"type\":\"long\"},\"firstEventTimestamp\":{\"type\":\"long\"},\"lastEventTimestamp\":{\"type\":\"long\"},\"lastIngestionTime\":{\"type\":\"long\"},\"uploadSequenceToken\":{},\"arn\":{},\"storedBytes\":{\"deprecated\":true,\"deprecatedMessage\":\"Starting on June 17, 2019, this parameter will be deprecated for log streams, and will be reported as zero. This change applies only to log streams. The storedBytes parameter for log groups is not affected.\",\"type\":\"long\"}}}},\"nextToken\":{}}}},\"DescribeMetricFilters\":{\"input\":{\"type\":\"structure\",\"members\":{\"logGroupName\":{},\"filterNamePrefix\":{},\"nextToken\":{},\"limit\":{\"type\":\"integer\"},\"metricName\":{},\"metricNamespace\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"metricFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"filterName\":{},\"filterPattern\":{},\"metricTransformations\":{\"shape\":\"S1z\"},\"creationTime\":{\"type\":\"long\"},\"logGroupName\":{}}}},\"nextToken\":{}}}},\"DescribeQueries\":{\"input\":{\"type\":\"structure\",\"members\":{\"logGroupName\":{},\"status\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"queries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"queryId\":{},\"queryString\":{},\"status\":{},\"createTime\":{\"type\":\"long\"},\"logGroupName\":{}}}},\"nextToken\":{}}}},\"DescribeQueryDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"queryDefinitionNamePrefix\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"queryDefinitions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"queryDefinitionId\":{},\"name\":{},\"queryString\":{},\"lastModified\":{\"type\":\"long\"},\"logGroupNames\":{\"shape\":\"S2h\"}}}},\"nextToken\":{}}}},\"DescribeResourcePolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourcePolicies\":{\"type\":\"list\",\"member\":{\"shape\":\"S2l\"}},\"nextToken\":{}}}},\"DescribeSubscriptionFilters\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{},\"filterNamePrefix\":{},\"nextToken\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"subscriptionFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"filterName\":{},\"logGroupName\":{},\"filterPattern\":{},\"destinationArn\":{},\"roleArn\":{},\"distribution\":{},\"creationTime\":{\"type\":\"long\"}}}},\"nextToken\":{}}}},\"DisassociateKmsKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{}}}},\"FilterLogEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{},\"logStreamNames\":{\"type\":\"list\",\"member\":{}},\"logStreamNamePrefix\":{},\"startTime\":{\"type\":\"long\"},\"endTime\":{\"type\":\"long\"},\"filterPattern\":{},\"nextToken\":{},\"limit\":{\"type\":\"integer\"},\"interleaved\":{\"deprecated\":true,\"deprecatedMessage\":\"Starting on June 17, 2019, this parameter will be ignored and the value will be assumed to be true. The response from this operation will always interleave events from multiple log streams within a log group.\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"logStreamName\":{},\"timestamp\":{\"type\":\"long\"},\"message\":{},\"ingestionTime\":{\"type\":\"long\"},\"eventId\":{}}}},\"searchedLogStreams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"logStreamName\":{},\"searchedCompletely\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"GetLogEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"logStreamName\"],\"members\":{\"logGroupName\":{},\"logStreamName\":{},\"startTime\":{\"type\":\"long\"},\"endTime\":{\"type\":\"long\"},\"nextToken\":{},\"limit\":{\"type\":\"integer\"},\"startFromHead\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"timestamp\":{\"type\":\"long\"},\"message\":{},\"ingestionTime\":{\"type\":\"long\"}}}},\"nextForwardToken\":{},\"nextBackwardToken\":{}}}},\"GetLogGroupFields\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{},\"time\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"logGroupFields\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"percent\":{\"type\":\"integer\"}}}}}}},\"GetLogRecord\":{\"input\":{\"type\":\"structure\",\"required\":[\"logRecordPointer\"],\"members\":{\"logRecordPointer\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"logRecord\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"GetQueryResults\":{\"input\":{\"type\":\"structure\",\"required\":[\"queryId\"],\"members\":{\"queryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"results\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"field\":{},\"value\":{}}}}},\"statistics\":{\"type\":\"structure\",\"members\":{\"recordsMatched\":{\"type\":\"double\"},\"recordsScanned\":{\"type\":\"double\"},\"bytesScanned\":{\"type\":\"double\"}}},\"status\":{}}}},\"ListTagsLogGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\"],\"members\":{\"logGroupName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Se\"}}}},\"PutDestination\":{\"input\":{\"type\":\"structure\",\"required\":[\"destinationName\",\"targetArn\",\"roleArn\"],\"members\":{\"destinationName\":{},\"targetArn\":{},\"roleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"destination\":{\"shape\":\"S11\"}}}},\"PutDestinationPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"destinationName\",\"accessPolicy\"],\"members\":{\"destinationName\":{},\"accessPolicy\":{}}}},\"PutLogEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"logStreamName\",\"logEvents\"],\"members\":{\"logGroupName\":{},\"logStreamName\":{},\"logEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"timestamp\",\"message\"],\"members\":{\"timestamp\":{\"type\":\"long\"},\"message\":{}}}},\"sequenceToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextSequenceToken\":{},\"rejectedLogEventsInfo\":{\"type\":\"structure\",\"members\":{\"tooNewLogEventStartIndex\":{\"type\":\"integer\"},\"tooOldLogEventEndIndex\":{\"type\":\"integer\"},\"expiredLogEventEndIndex\":{\"type\":\"integer\"}}}}}},\"PutMetricFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"filterName\",\"filterPattern\",\"metricTransformations\"],\"members\":{\"logGroupName\":{},\"filterName\":{},\"filterPattern\":{},\"metricTransformations\":{\"shape\":\"S1z\"}}}},\"PutQueryDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"queryString\"],\"members\":{\"name\":{},\"queryDefinitionId\":{},\"logGroupNames\":{\"shape\":\"S2h\"},\"queryString\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"queryDefinitionId\":{}}}},\"PutResourcePolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyDocument\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourcePolicy\":{\"shape\":\"S2l\"}}}},\"PutRetentionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"retentionInDays\"],\"members\":{\"logGroupName\":{},\"retentionInDays\":{\"type\":\"integer\"}}}},\"PutSubscriptionFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"filterName\",\"filterPattern\",\"destinationArn\"],\"members\":{\"logGroupName\":{},\"filterName\":{},\"filterPattern\":{},\"destinationArn\":{},\"roleArn\":{},\"distribution\":{}}}},\"StartQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"startTime\",\"endTime\",\"queryString\"],\"members\":{\"logGroupName\":{},\"logGroupNames\":{\"shape\":\"S2h\"},\"startTime\":{\"type\":\"long\"},\"endTime\":{\"type\":\"long\"},\"queryString\":{},\"limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"queryId\":{}}}},\"StopQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"queryId\"],\"members\":{\"queryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"success\":{\"type\":\"boolean\"}}}},\"TagLogGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"tags\"],\"members\":{\"logGroupName\":{},\"tags\":{\"shape\":\"Se\"}}}},\"TestMetricFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"filterPattern\",\"logEventMessages\"],\"members\":{\"filterPattern\":{},\"logEventMessages\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"matches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"eventNumber\":{\"type\":\"long\"},\"eventMessage\":{},\"extractedValues\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}},\"UntagLogGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"logGroupName\",\"tags\"],\"members\":{\"logGroupName\":{},\"tags\":{\"type\":\"list\",\"member\":{}}}}}},\"shapes\":{\"Se\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S11\":{\"type\":\"structure\",\"members\":{\"destinationName\":{},\"targetArn\":{},\"roleArn\":{},\"accessPolicy\":{},\"arn\":{},\"creationTime\":{\"type\":\"long\"}}},\"S1z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"metricName\",\"metricNamespace\",\"metricValue\"],\"members\":{\"metricName\":{},\"metricNamespace\":{},\"metricValue\":{},\"defaultValue\":{\"type\":\"double\"}}}},\"S2h\":{\"type\":\"list\",\"member\":{}},\"S2l\":{\"type\":\"structure\",\"members\":{\"policyName\":{},\"policyDocument\":{},\"lastUpdatedTime\":{\"type\":\"long\"}}}}}");

/***/ }),

/***/ 26273:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDestinations\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"destinations\"},\"DescribeLogGroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"logGroups\"},\"DescribeLogStreams\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"logStreams\"},\"DescribeMetricFilters\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"metricFilters\"},\"DescribeSubscriptionFilters\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":\"subscriptionFilters\"},\"FilterLogEvents\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextToken\",\"result_key\":[\"events\",\"searchedLogStreams\"]},\"GetLogEvents\":{\"input_token\":\"nextToken\",\"limit_key\":\"limit\",\"output_token\":\"nextForwardToken\",\"result_key\":\"events\"}}}");

/***/ }),

/***/ 31015:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-12-15\",\"endpointPrefix\":\"lookoutequipment\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"LookoutEquipment\",\"serviceFullName\":\"Amazon Lookout for Equipment\",\"serviceId\":\"LookoutEquipment\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSLookoutEquipmentFrontendService\",\"uid\":\"lookoutequipment-2020-12-15\"},\"operations\":{\"CreateDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\",\"DatasetSchema\",\"ClientToken\"],\"members\":{\"DatasetName\":{},\"DatasetSchema\":{\"shape\":\"S3\"},\"ServerSideKmsKeyId\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetName\":{},\"DatasetArn\":{},\"Status\":{}}}},\"CreateInferenceScheduler\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"InferenceSchedulerName\",\"DataUploadFrequency\",\"DataInputConfiguration\",\"DataOutputConfiguration\",\"RoleArn\",\"ClientToken\"],\"members\":{\"ModelName\":{},\"InferenceSchedulerName\":{},\"DataDelayOffsetInMinutes\":{\"type\":\"long\"},\"DataUploadFrequency\":{},\"DataInputConfiguration\":{\"shape\":\"Sj\"},\"DataOutputConfiguration\":{\"shape\":\"Sr\"},\"RoleArn\":{},\"ServerSideKmsKeyId\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InferenceSchedulerArn\":{},\"InferenceSchedulerName\":{},\"Status\":{}}}},\"CreateModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"DatasetName\",\"ClientToken\"],\"members\":{\"ModelName\":{},\"DatasetName\":{},\"DatasetSchema\":{\"shape\":\"S3\"},\"LabelsInputConfiguration\":{\"shape\":\"Sz\"},\"ClientToken\":{\"idempotencyToken\":true},\"TrainingDataStartTime\":{\"type\":\"timestamp\"},\"TrainingDataEndTime\":{\"type\":\"timestamp\"},\"EvaluationDataStartTime\":{\"type\":\"timestamp\"},\"EvaluationDataEndTime\":{\"type\":\"timestamp\"},\"RoleArn\":{},\"DataPreProcessingConfiguration\":{\"shape\":\"S12\"},\"ServerSideKmsKeyId\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelArn\":{},\"Status\":{}}}},\"DeleteDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\"],\"members\":{\"DatasetName\":{}}}},\"DeleteInferenceScheduler\":{\"input\":{\"type\":\"structure\",\"required\":[\"InferenceSchedulerName\"],\"members\":{\"InferenceSchedulerName\":{}}}},\"DeleteModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\"],\"members\":{\"ModelName\":{}}}},\"DescribeDataIngestionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"DatasetArn\":{},\"IngestionInputConfiguration\":{\"shape\":\"S1e\"},\"RoleArn\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"Status\":{},\"FailedReason\":{}}}},\"DescribeDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\"],\"members\":{\"DatasetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetName\":{},\"DatasetArn\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Status\":{},\"Schema\":{\"jsonvalue\":true},\"ServerSideKmsKeyId\":{},\"IngestionInputConfiguration\":{\"shape\":\"S1e\"}}}},\"DescribeInferenceScheduler\":{\"input\":{\"type\":\"structure\",\"required\":[\"InferenceSchedulerName\"],\"members\":{\"InferenceSchedulerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelArn\":{},\"ModelName\":{},\"InferenceSchedulerName\":{},\"InferenceSchedulerArn\":{},\"Status\":{},\"DataDelayOffsetInMinutes\":{\"type\":\"long\"},\"DataUploadFrequency\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"UpdatedAt\":{\"type\":\"timestamp\"},\"DataInputConfiguration\":{\"shape\":\"Sj\"},\"DataOutputConfiguration\":{\"shape\":\"Sr\"},\"RoleArn\":{},\"ServerSideKmsKeyId\":{}}}},\"DescribeModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\"],\"members\":{\"ModelName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelName\":{},\"ModelArn\":{},\"DatasetName\":{},\"DatasetArn\":{},\"Schema\":{\"jsonvalue\":true},\"LabelsInputConfiguration\":{\"shape\":\"Sz\"},\"TrainingDataStartTime\":{\"type\":\"timestamp\"},\"TrainingDataEndTime\":{\"type\":\"timestamp\"},\"EvaluationDataStartTime\":{\"type\":\"timestamp\"},\"EvaluationDataEndTime\":{\"type\":\"timestamp\"},\"RoleArn\":{},\"DataPreProcessingConfiguration\":{\"shape\":\"S12\"},\"Status\":{},\"TrainingExecutionStartTime\":{\"type\":\"timestamp\"},\"TrainingExecutionEndTime\":{\"type\":\"timestamp\"},\"FailedReason\":{},\"ModelMetrics\":{\"jsonvalue\":true},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"ServerSideKmsKeyId\":{}}}},\"ListDataIngestionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"DatasetName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DataIngestionJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"DatasetName\":{},\"DatasetArn\":{},\"IngestionInputConfiguration\":{\"shape\":\"S1e\"},\"Status\":{}}}}}}},\"ListDatasets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"DatasetNameBeginsWith\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"DatasetSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DatasetName\":{},\"DatasetArn\":{},\"Status\":{},\"CreatedAt\":{\"type\":\"timestamp\"}}}}}}},\"ListInferenceExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"InferenceSchedulerName\"],\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"InferenceSchedulerName\":{},\"DataStartTimeAfter\":{\"type\":\"timestamp\"},\"DataEndTimeBefore\":{\"type\":\"timestamp\"},\"Status\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"InferenceExecutionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ModelName\":{},\"ModelArn\":{},\"InferenceSchedulerName\":{},\"InferenceSchedulerArn\":{},\"ScheduledStartTime\":{\"type\":\"timestamp\"},\"DataStartTime\":{\"type\":\"timestamp\"},\"DataEndTime\":{\"type\":\"timestamp\"},\"DataInputConfiguration\":{\"shape\":\"Sj\"},\"DataOutputConfiguration\":{\"shape\":\"Sr\"},\"CustomerResultObject\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{},\"Key\":{}}},\"Status\":{},\"FailedReason\":{}}}}}}},\"ListInferenceSchedulers\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"InferenceSchedulerNameBeginsWith\":{},\"ModelName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"InferenceSchedulerSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ModelName\":{},\"ModelArn\":{},\"InferenceSchedulerName\":{},\"InferenceSchedulerArn\":{},\"Status\":{},\"DataDelayOffsetInMinutes\":{\"type\":\"long\"},\"DataUploadFrequency\":{}}}}}}},\"ListModels\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Status\":{},\"ModelNameBeginsWith\":{},\"DatasetNameBeginsWith\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ModelSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ModelName\":{},\"ModelArn\":{},\"DatasetName\":{},\"DatasetArn\":{},\"Status\":{},\"CreatedAt\":{\"type\":\"timestamp\"}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S7\"}}}},\"StartDataIngestionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatasetName\",\"IngestionInputConfiguration\",\"RoleArn\",\"ClientToken\"],\"members\":{\"DatasetName\":{},\"IngestionInputConfiguration\":{\"shape\":\"S1e\"},\"RoleArn\":{},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"Status\":{}}}},\"StartInferenceScheduler\":{\"input\":{\"type\":\"structure\",\"required\":[\"InferenceSchedulerName\"],\"members\":{\"InferenceSchedulerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelArn\":{},\"ModelName\":{},\"InferenceSchedulerName\":{},\"InferenceSchedulerArn\":{},\"Status\":{}}}},\"StopInferenceScheduler\":{\"input\":{\"type\":\"structure\",\"required\":[\"InferenceSchedulerName\"],\"members\":{\"InferenceSchedulerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelArn\":{},\"ModelName\":{},\"InferenceSchedulerName\":{},\"InferenceSchedulerArn\":{},\"Status\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateInferenceScheduler\":{\"input\":{\"type\":\"structure\",\"required\":[\"InferenceSchedulerName\"],\"members\":{\"InferenceSchedulerName\":{},\"DataDelayOffsetInMinutes\":{\"type\":\"long\"},\"DataUploadFrequency\":{},\"DataInputConfiguration\":{\"shape\":\"Sj\"},\"DataOutputConfiguration\":{\"shape\":\"Sr\"},\"RoleArn\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"members\":{\"InlineDataSchema\":{\"jsonvalue\":true}}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"S3InputConfiguration\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Prefix\":{}}},\"InputTimeZoneOffset\":{},\"InferenceInputNameConfiguration\":{\"type\":\"structure\",\"members\":{\"TimestampFormat\":{},\"ComponentTimestampDelimiter\":{}}}}},\"Sr\":{\"type\":\"structure\",\"required\":[\"S3OutputConfiguration\"],\"members\":{\"S3OutputConfiguration\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Prefix\":{}}},\"KmsKeyId\":{}}},\"Sz\":{\"type\":\"structure\",\"required\":[\"S3InputConfiguration\"],\"members\":{\"S3InputConfiguration\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Prefix\":{}}}}},\"S12\":{\"type\":\"structure\",\"members\":{\"TargetSamplingRate\":{}}},\"S1e\":{\"type\":\"structure\",\"required\":[\"S3InputConfiguration\"],\"members\":{\"S3InputConfiguration\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Prefix\":{}}}}}}}");

/***/ }),

/***/ 93065:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDataIngestionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDatasets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListInferenceExecutions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListInferenceSchedulers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListModels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 57300:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"lookoutmetrics\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"LookoutMetrics\",\"serviceFullName\":\"Amazon Lookout for Metrics\",\"serviceId\":\"LookoutMetrics\",\"signatureVersion\":\"v4\",\"signingName\":\"lookoutmetrics\",\"uid\":\"lookoutmetrics-2017-07-25\"},\"operations\":{\"ActivateAnomalyDetector\":{\"http\":{\"requestUri\":\"/ActivateAnomalyDetector\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\"],\"members\":{\"AnomalyDetectorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BackTestAnomalyDetector\":{\"http\":{\"requestUri\":\"/BackTestAnomalyDetector\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\"],\"members\":{\"AnomalyDetectorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAlert\":{\"http\":{\"requestUri\":\"/CreateAlert\"},\"input\":{\"type\":\"structure\",\"required\":[\"AlertName\",\"AlertSensitivityThreshold\",\"AnomalyDetectorArn\",\"Action\"],\"members\":{\"AlertName\":{},\"AlertSensitivityThreshold\":{\"type\":\"integer\"},\"AlertDescription\":{},\"AnomalyDetectorArn\":{},\"Action\":{\"shape\":\"Sa\"},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AlertArn\":{}}}},\"CreateAnomalyDetector\":{\"http\":{\"requestUri\":\"/CreateAnomalyDetector\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorName\",\"AnomalyDetectorConfig\"],\"members\":{\"AnomalyDetectorName\":{},\"AnomalyDetectorDescription\":{},\"AnomalyDetectorConfig\":{\"shape\":\"Sk\"},\"KmsKeyArn\":{},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorArn\":{}}}},\"CreateMetricSet\":{\"http\":{\"requestUri\":\"/CreateMetricSet\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\",\"MetricSetName\",\"MetricList\",\"MetricSource\"],\"members\":{\"AnomalyDetectorArn\":{},\"MetricSetName\":{},\"MetricSetDescription\":{},\"MetricList\":{\"shape\":\"Sr\"},\"Offset\":{\"type\":\"integer\"},\"TimestampColumn\":{\"shape\":\"Sx\"},\"DimensionList\":{\"shape\":\"Sz\"},\"MetricSetFrequency\":{},\"MetricSource\":{\"shape\":\"S10\"},\"Timezone\":{},\"Tags\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MetricSetArn\":{}}}},\"DeleteAlert\":{\"http\":{\"requestUri\":\"/DeleteAlert\"},\"input\":{\"type\":\"structure\",\"required\":[\"AlertArn\"],\"members\":{\"AlertArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAnomalyDetector\":{\"http\":{\"requestUri\":\"/DeleteAnomalyDetector\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\"],\"members\":{\"AnomalyDetectorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAlert\":{\"http\":{\"requestUri\":\"/DescribeAlert\"},\"input\":{\"type\":\"structure\",\"required\":[\"AlertArn\"],\"members\":{\"AlertArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Alert\":{\"type\":\"structure\",\"members\":{\"Action\":{\"shape\":\"Sa\"},\"AlertDescription\":{},\"AlertArn\":{},\"AnomalyDetectorArn\":{},\"AlertName\":{},\"AlertSensitivityThreshold\":{\"type\":\"integer\"},\"AlertType\":{},\"AlertStatus\":{},\"LastModificationTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"}}}}}},\"DescribeAnomalyDetectionExecutions\":{\"http\":{\"requestUri\":\"/DescribeAnomalyDetectionExecutions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\"],\"members\":{\"AnomalyDetectorArn\":{},\"Timestamp\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExecutionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{},\"Status\":{},\"FailureReason\":{}}}},\"NextToken\":{}}}},\"DescribeAnomalyDetector\":{\"http\":{\"requestUri\":\"/DescribeAnomalyDetector\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\"],\"members\":{\"AnomalyDetectorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorArn\":{},\"AnomalyDetectorName\":{},\"AnomalyDetectorDescription\":{},\"AnomalyDetectorConfig\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorFrequency\":{}}},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"},\"Status\":{},\"FailureReason\":{},\"KmsKeyArn\":{}}}},\"DescribeMetricSet\":{\"http\":{\"requestUri\":\"/DescribeMetricSet\"},\"input\":{\"type\":\"structure\",\"required\":[\"MetricSetArn\"],\"members\":{\"MetricSetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MetricSetArn\":{},\"AnomalyDetectorArn\":{},\"MetricSetName\":{},\"MetricSetDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"},\"Offset\":{\"type\":\"integer\"},\"MetricList\":{\"shape\":\"Sr\"},\"TimestampColumn\":{\"shape\":\"Sx\"},\"DimensionList\":{\"shape\":\"Sz\"},\"MetricSetFrequency\":{},\"Timezone\":{},\"MetricSource\":{\"shape\":\"S10\"}}}},\"GetAnomalyGroup\":{\"http\":{\"requestUri\":\"/GetAnomalyGroup\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyGroupId\",\"AnomalyDetectorArn\"],\"members\":{\"AnomalyGroupId\":{},\"AnomalyDetectorArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyGroup\":{\"type\":\"structure\",\"members\":{\"StartTime\":{},\"EndTime\":{},\"AnomalyGroupId\":{},\"AnomalyGroupScore\":{\"type\":\"double\"},\"PrimaryMetricName\":{},\"MetricLevelImpactList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricName\":{},\"NumTimeSeries\":{\"type\":\"integer\"},\"ContributionMatrix\":{\"type\":\"structure\",\"members\":{\"DimensionContributionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DimensionName\":{},\"DimensionValueContributionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DimensionValue\":{},\"ContributionScore\":{\"type\":\"double\"}}}}}}}}}}}}}}}}},\"GetFeedback\":{\"http\":{\"requestUri\":\"/GetFeedback\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\",\"AnomalyGroupTimeSeriesFeedback\"],\"members\":{\"AnomalyDetectorArn\":{},\"AnomalyGroupTimeSeriesFeedback\":{\"type\":\"structure\",\"required\":[\"AnomalyGroupId\"],\"members\":{\"AnomalyGroupId\":{},\"TimeSeriesId\":{}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyGroupTimeSeriesFeedback\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TimeSeriesId\":{},\"IsAnomaly\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"GetSampleData\":{\"http\":{\"requestUri\":\"/GetSampleData\"},\"input\":{\"type\":\"structure\",\"members\":{\"S3SourceConfig\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"FileFormatDescriptor\"],\"members\":{\"RoleArn\":{},\"TemplatedPathList\":{\"shape\":\"S12\"},\"HistoricalDataPathList\":{\"shape\":\"S14\"},\"FileFormatDescriptor\":{\"shape\":\"S16\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"HeaderValues\":{\"type\":\"list\",\"member\":{}},\"SampleRows\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{}}}}}},\"ListAlerts\":{\"http\":{\"requestUri\":\"/ListAlerts\"},\"input\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AlertSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlertArn\":{},\"AnomalyDetectorArn\":{},\"AlertName\":{},\"AlertSensitivityThreshold\":{\"type\":\"integer\"},\"AlertType\":{},\"AlertStatus\":{},\"LastModificationTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sd\"}}}},\"NextToken\":{}}}},\"ListAnomalyDetectors\":{\"http\":{\"requestUri\":\"/ListAnomalyDetectors\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorArn\":{},\"AnomalyDetectorName\":{},\"AnomalyDetectorDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"},\"Status\":{},\"Tags\":{\"shape\":\"Sd\"}}}},\"NextToken\":{}}}},\"ListAnomalyGroupSummaries\":{\"http\":{\"requestUri\":\"/ListAnomalyGroupSummaries\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\",\"SensitivityThreshold\"],\"members\":{\"AnomalyDetectorArn\":{},\"SensitivityThreshold\":{\"type\":\"integer\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyGroupSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StartTime\":{},\"EndTime\":{},\"AnomalyGroupId\":{},\"AnomalyGroupScore\":{\"type\":\"double\"},\"PrimaryMetricName\":{}}}},\"AnomalyGroupStatistics\":{\"type\":\"structure\",\"members\":{\"EvaluationStartDate\":{},\"TotalCount\":{\"type\":\"integer\"},\"ItemizedMetricStatsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricName\":{},\"OccurrenceCount\":{\"type\":\"integer\"}}}}}},\"NextToken\":{}}}},\"ListAnomalyGroupTimeSeries\":{\"http\":{\"requestUri\":\"/ListAnomalyGroupTimeSeries\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\",\"AnomalyGroupId\",\"MetricName\"],\"members\":{\"AnomalyDetectorArn\":{},\"AnomalyGroupId\":{},\"MetricName\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyGroupId\":{},\"MetricName\":{},\"TimestampList\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"TimeSeriesList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TimeSeriesId\",\"DimensionList\",\"MetricValueList\"],\"members\":{\"TimeSeriesId\":{},\"DimensionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DimensionName\",\"DimensionValue\"],\"members\":{\"DimensionName\":{},\"DimensionValue\":{}}}},\"MetricValueList\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}}}}}},\"ListMetricSets\":{\"http\":{\"requestUri\":\"/ListMetricSets\"},\"input\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MetricSetSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricSetArn\":{},\"AnomalyDetectorArn\":{},\"MetricSetDescription\":{},\"MetricSetName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModificationTime\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sd\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sd\",\"locationName\":\"Tags\"}}}},\"PutFeedback\":{\"http\":{\"requestUri\":\"/PutFeedback\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\",\"AnomalyGroupTimeSeriesFeedback\"],\"members\":{\"AnomalyDetectorArn\":{},\"AnomalyGroupTimeSeriesFeedback\":{\"type\":\"structure\",\"required\":[\"AnomalyGroupId\",\"TimeSeriesId\",\"IsAnomaly\"],\"members\":{\"AnomalyGroupId\":{},\"TimeSeriesId\":{},\"IsAnomaly\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sd\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAnomalyDetector\":{\"http\":{\"requestUri\":\"/UpdateAnomalyDetector\"},\"input\":{\"type\":\"structure\",\"required\":[\"AnomalyDetectorArn\"],\"members\":{\"AnomalyDetectorArn\":{},\"KmsKeyArn\":{},\"AnomalyDetectorDescription\":{},\"AnomalyDetectorConfig\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorArn\":{}}}},\"UpdateMetricSet\":{\"http\":{\"requestUri\":\"/UpdateMetricSet\"},\"input\":{\"type\":\"structure\",\"required\":[\"MetricSetArn\"],\"members\":{\"MetricSetArn\":{},\"MetricSetDescription\":{},\"MetricList\":{\"shape\":\"Sr\"},\"Offset\":{\"type\":\"integer\"},\"TimestampColumn\":{\"shape\":\"Sx\"},\"DimensionList\":{\"shape\":\"Sz\"},\"MetricSetFrequency\":{},\"MetricSource\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MetricSetArn\":{}}}}},\"shapes\":{\"Sa\":{\"type\":\"structure\",\"members\":{\"SNSConfiguration\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"SnsTopicArn\"],\"members\":{\"RoleArn\":{},\"SnsTopicArn\":{}}},\"LambdaConfiguration\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"LambdaArn\"],\"members\":{\"RoleArn\":{},\"LambdaArn\":{}}}}},\"Sd\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sk\":{\"type\":\"structure\",\"members\":{\"AnomalyDetectorFrequency\":{}}},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"AggregationFunction\"],\"members\":{\"MetricName\":{},\"AggregationFunction\":{},\"Namespace\":{}}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"ColumnName\":{},\"ColumnFormat\":{}}},\"Sz\":{\"type\":\"list\",\"member\":{}},\"S10\":{\"type\":\"structure\",\"members\":{\"S3SourceConfig\":{\"type\":\"structure\",\"required\":[\"RoleArn\"],\"members\":{\"RoleArn\":{},\"TemplatedPathList\":{\"shape\":\"S12\"},\"HistoricalDataPathList\":{\"shape\":\"S14\"},\"FileFormatDescriptor\":{\"shape\":\"S16\"}}},\"AppFlowConfig\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"FlowName\"],\"members\":{\"RoleArn\":{},\"FlowName\":{}}},\"CloudWatchConfig\":{\"type\":\"structure\",\"required\":[\"RoleArn\"],\"members\":{\"RoleArn\":{}}},\"RDSSourceConfig\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DatabaseHost\",\"DatabasePort\",\"SecretManagerArn\",\"DatabaseName\",\"TableName\",\"RoleArn\",\"VpcConfiguration\"],\"members\":{\"DBInstanceIdentifier\":{},\"DatabaseHost\":{},\"DatabasePort\":{\"type\":\"integer\"},\"SecretManagerArn\":{},\"DatabaseName\":{},\"TableName\":{},\"RoleArn\":{},\"VpcConfiguration\":{\"shape\":\"S1q\"}}},\"RedshiftSourceConfig\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"DatabaseHost\",\"DatabasePort\",\"SecretManagerArn\",\"DatabaseName\",\"TableName\",\"RoleArn\",\"VpcConfiguration\"],\"members\":{\"ClusterIdentifier\":{},\"DatabaseHost\":{},\"DatabasePort\":{\"type\":\"integer\"},\"SecretManagerArn\":{},\"DatabaseName\":{},\"TableName\":{},\"RoleArn\":{},\"VpcConfiguration\":{\"shape\":\"S1q\"}}}}},\"S12\":{\"type\":\"list\",\"member\":{}},\"S14\":{\"type\":\"list\",\"member\":{}},\"S16\":{\"type\":\"structure\",\"members\":{\"CsvFormatDescriptor\":{\"type\":\"structure\",\"members\":{\"FileCompression\":{},\"Charset\":{},\"ContainsHeader\":{\"type\":\"boolean\"},\"Delimiter\":{},\"HeaderList\":{\"type\":\"list\",\"member\":{}},\"QuoteSymbol\":{}}},\"JsonFormatDescriptor\":{\"type\":\"structure\",\"members\":{\"FileCompression\":{},\"Charset\":{}}}}},\"S1q\":{\"type\":\"structure\",\"required\":[\"SubnetIdList\",\"SecurityGroupIdList\"],\"members\":{\"SubnetIdList\":{\"type\":\"list\",\"member\":{}},\"SecurityGroupIdList\":{\"type\":\"list\",\"member\":{}}}}}}");

/***/ }),

/***/ 86272:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAnomalyDetectionExecutions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetFeedback\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAlerts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAnomalyDetectors\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAnomalyGroupSummaries\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAnomalyGroupTimeSeries\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMetricSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 43317:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-11-20\",\"endpointPrefix\":\"lookoutvision\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Lookout for Vision\",\"serviceId\":\"LookoutVision\",\"signatureVersion\":\"v4\",\"signingName\":\"lookoutvision\",\"uid\":\"lookoutvision-2020-11-20\"},\"operations\":{\"CreateDataset\":{\"http\":{\"requestUri\":\"/2020-11-20/projects/{projectName}/datasets\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"DatasetType\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"DatasetType\":{},\"DatasetSource\":{\"type\":\"structure\",\"members\":{\"GroundTruthManifest\":{\"type\":\"structure\",\"members\":{\"S3Object\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{},\"Key\":{},\"VersionId\":{}}}}}}},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetMetadata\":{\"shape\":\"Sc\"}}}},\"CreateModel\":{\"http\":{\"requestUri\":\"/2020-11-20/projects/{projectName}/models\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"OutputConfig\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"Description\":{},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"},\"OutputConfig\":{\"shape\":\"Si\"},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelMetadata\":{\"shape\":\"Sr\"}}}},\"CreateProject\":{\"http\":{\"requestUri\":\"/2020-11-20/projects\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectMetadata\":{\"shape\":\"S10\"}}}},\"DeleteDataset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-11-20/projects/{projectName}/datasets/{datasetType}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"DatasetType\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"DatasetType\":{\"location\":\"uri\",\"locationName\":\"datasetType\"},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteModel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-11-20/projects/{projectName}/models/{modelVersion}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ModelVersion\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"ModelVersion\":{\"location\":\"uri\",\"locationName\":\"modelVersion\"},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelArn\":{}}}},\"DeleteProject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-11-20/projects/{projectName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectArn\":{}}}},\"DescribeDataset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/projects/{projectName}/datasets/{datasetType}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"DatasetType\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"DatasetType\":{\"location\":\"uri\",\"locationName\":\"datasetType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetDescription\":{\"type\":\"structure\",\"members\":{\"ProjectName\":{},\"DatasetType\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusMessage\":{},\"ImageStats\":{\"type\":\"structure\",\"members\":{\"Total\":{\"type\":\"integer\"},\"Labeled\":{\"type\":\"integer\"},\"Normal\":{\"type\":\"integer\"},\"Anomaly\":{\"type\":\"integer\"}}}}}}}},\"DescribeModel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/projects/{projectName}/models/{modelVersion}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ModelVersion\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"ModelVersion\":{\"location\":\"uri\",\"locationName\":\"modelVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModelDescription\":{\"type\":\"structure\",\"members\":{\"ModelVersion\":{},\"ModelArn\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"Description\":{},\"Status\":{},\"StatusMessage\":{},\"Performance\":{\"shape\":\"Sw\"},\"OutputConfig\":{\"shape\":\"Si\"},\"EvaluationManifest\":{\"shape\":\"S1g\"},\"EvaluationResult\":{\"shape\":\"S1g\"},\"EvaluationEndTimestamp\":{\"type\":\"timestamp\"},\"KmsKeyId\":{}}}}}},\"DescribeProject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/projects/{projectName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectDescription\":{\"type\":\"structure\",\"members\":{\"ProjectArn\":{},\"ProjectName\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"Datasets\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}}}}}}},\"DetectAnomalies\":{\"http\":{\"requestUri\":\"/2020-11-20/projects/{projectName}/models/{modelVersion}/detect\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ModelVersion\",\"Body\",\"ContentType\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"ModelVersion\":{\"location\":\"uri\",\"locationName\":\"modelVersion\"},\"Body\":{\"type\":\"blob\",\"requiresLength\":true,\"streaming\":true},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"}},\"payload\":\"Body\"},\"output\":{\"type\":\"structure\",\"members\":{\"DetectAnomalyResult\":{\"type\":\"structure\",\"members\":{\"Source\":{\"type\":\"structure\",\"members\":{\"Type\":{}}},\"IsAnomalous\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}}}}},\"ListDatasetEntries\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/projects/{projectName}/datasets/{datasetType}/entries\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"DatasetType\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"DatasetType\":{\"location\":\"uri\",\"locationName\":\"datasetType\"},\"Labeled\":{\"location\":\"querystring\",\"locationName\":\"labeled\",\"type\":\"boolean\"},\"AnomalyClass\":{\"location\":\"querystring\",\"locationName\":\"anomalyClass\"},\"BeforeCreationDate\":{\"location\":\"querystring\",\"locationName\":\"createdBefore\",\"type\":\"timestamp\"},\"AfterCreationDate\":{\"location\":\"querystring\",\"locationName\":\"createdAfter\",\"type\":\"timestamp\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"SourceRefContains\":{\"location\":\"querystring\",\"locationName\":\"sourceRefContains\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DatasetEntries\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListModels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/projects/{projectName}/models\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Models\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"NextToken\":{}}}},\"ListProjects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/projects\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Projects\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2020-11-20/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sm\"}}}},\"StartModel\":{\"http\":{\"requestUri\":\"/2020-11-20/projects/{projectName}/models/{modelVersion}/start\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ModelVersion\",\"MinInferenceUnits\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"ModelVersion\":{\"location\":\"uri\",\"locationName\":\"modelVersion\"},\"MinInferenceUnits\":{\"type\":\"integer\"},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"StopModel\":{\"http\":{\"requestUri\":\"/2020-11-20/projects/{projectName}/models/{modelVersion}/stop\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ModelVersion\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"ModelVersion\":{\"location\":\"uri\",\"locationName\":\"modelVersion\"},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/2020-11-20/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2020-11-20/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDatasetEntries\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/2020-11-20/projects/{projectName}/datasets/{datasetType}/entries\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"DatasetType\",\"Changes\"],\"members\":{\"ProjectName\":{\"location\":\"uri\",\"locationName\":\"projectName\"},\"DatasetType\":{\"location\":\"uri\",\"locationName\":\"datasetType\"},\"Changes\":{\"type\":\"blob\"},\"ClientToken\":{\"idempotencyToken\":true,\"location\":\"header\",\"locationName\":\"X-Amzn-Client-Token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}}},\"shapes\":{\"Sc\":{\"type\":\"structure\",\"members\":{\"DatasetType\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusMessage\":{}}},\"Si\":{\"type\":\"structure\",\"required\":[\"S3Location\"],\"members\":{\"S3Location\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Prefix\":{}}}}},\"Sm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"CreationTimestamp\":{\"type\":\"timestamp\"},\"ModelVersion\":{},\"ModelArn\":{},\"Description\":{},\"Status\":{},\"StatusMessage\":{},\"Performance\":{\"shape\":\"Sw\"}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"F1Score\":{\"type\":\"float\"},\"Recall\":{\"type\":\"float\"},\"Precision\":{\"type\":\"float\"}}},\"S10\":{\"type\":\"structure\",\"members\":{\"ProjectArn\":{},\"ProjectName\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"}}},\"S1g\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{},\"Key\":{}}}}}");

/***/ }),

/***/ 34273:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDatasetEntries\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DatasetEntries\"},\"ListModels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Models\"},\"ListProjects\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Projects\"}}}");

/***/ }),

/***/ 41946:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-12-12\",\"endpointPrefix\":\"machinelearning\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Machine Learning\",\"serviceId\":\"Machine Learning\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AmazonML_20141212\",\"uid\":\"machinelearning-2014-12-12\"},\"operations\":{\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"Tags\",\"ResourceId\",\"ResourceType\"],\"members\":{\"Tags\":{\"shape\":\"S2\"},\"ResourceId\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ResourceType\":{}}}},\"CreateBatchPrediction\":{\"input\":{\"type\":\"structure\",\"required\":[\"BatchPredictionId\",\"MLModelId\",\"BatchPredictionDataSourceId\",\"OutputUri\"],\"members\":{\"BatchPredictionId\":{},\"BatchPredictionName\":{},\"MLModelId\":{},\"BatchPredictionDataSourceId\":{},\"OutputUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BatchPredictionId\":{}}}},\"CreateDataSourceFromRDS\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataSourceId\",\"RDSData\",\"RoleARN\"],\"members\":{\"DataSourceId\":{},\"DataSourceName\":{},\"RDSData\":{\"type\":\"structure\",\"required\":[\"DatabaseInformation\",\"SelectSqlQuery\",\"DatabaseCredentials\",\"S3StagingLocation\",\"ResourceRole\",\"ServiceRole\",\"SubnetId\",\"SecurityGroupIds\"],\"members\":{\"DatabaseInformation\":{\"shape\":\"Sf\"},\"SelectSqlQuery\":{},\"DatabaseCredentials\":{\"type\":\"structure\",\"required\":[\"Username\",\"Password\"],\"members\":{\"Username\":{},\"Password\":{}}},\"S3StagingLocation\":{},\"DataRearrangement\":{},\"DataSchema\":{},\"DataSchemaUri\":{},\"ResourceRole\":{},\"ServiceRole\":{},\"SubnetId\":{},\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}}}},\"RoleARN\":{},\"ComputeStatistics\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{}}}},\"CreateDataSourceFromRedshift\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataSourceId\",\"DataSpec\",\"RoleARN\"],\"members\":{\"DataSourceId\":{},\"DataSourceName\":{},\"DataSpec\":{\"type\":\"structure\",\"required\":[\"DatabaseInformation\",\"SelectSqlQuery\",\"DatabaseCredentials\",\"S3StagingLocation\"],\"members\":{\"DatabaseInformation\":{\"shape\":\"Sy\"},\"SelectSqlQuery\":{},\"DatabaseCredentials\":{\"type\":\"structure\",\"required\":[\"Username\",\"Password\"],\"members\":{\"Username\":{},\"Password\":{}}},\"S3StagingLocation\":{},\"DataRearrangement\":{},\"DataSchema\":{},\"DataSchemaUri\":{}}},\"RoleARN\":{},\"ComputeStatistics\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{}}}},\"CreateDataSourceFromS3\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataSourceId\",\"DataSpec\"],\"members\":{\"DataSourceId\":{},\"DataSourceName\":{},\"DataSpec\":{\"type\":\"structure\",\"required\":[\"DataLocationS3\"],\"members\":{\"DataLocationS3\":{},\"DataRearrangement\":{},\"DataSchema\":{},\"DataSchemaLocationS3\":{}}},\"ComputeStatistics\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{}}}},\"CreateEvaluation\":{\"input\":{\"type\":\"structure\",\"required\":[\"EvaluationId\",\"MLModelId\",\"EvaluationDataSourceId\"],\"members\":{\"EvaluationId\":{},\"EvaluationName\":{},\"MLModelId\":{},\"EvaluationDataSourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EvaluationId\":{}}}},\"CreateMLModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\",\"MLModelType\",\"TrainingDataSourceId\"],\"members\":{\"MLModelId\":{},\"MLModelName\":{},\"MLModelType\":{},\"Parameters\":{\"shape\":\"S1d\"},\"TrainingDataSourceId\":{},\"Recipe\":{},\"RecipeUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{}}}},\"CreateRealtimeEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\"],\"members\":{\"MLModelId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{},\"RealtimeEndpointInfo\":{\"shape\":\"S1j\"}}}},\"DeleteBatchPrediction\":{\"input\":{\"type\":\"structure\",\"required\":[\"BatchPredictionId\"],\"members\":{\"BatchPredictionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BatchPredictionId\":{}}}},\"DeleteDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataSourceId\"],\"members\":{\"DataSourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{}}}},\"DeleteEvaluation\":{\"input\":{\"type\":\"structure\",\"required\":[\"EvaluationId\"],\"members\":{\"EvaluationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EvaluationId\":{}}}},\"DeleteMLModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\"],\"members\":{\"MLModelId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{}}}},\"DeleteRealtimeEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\"],\"members\":{\"MLModelId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{},\"RealtimeEndpointInfo\":{\"shape\":\"S1j\"}}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"TagKeys\",\"ResourceId\",\"ResourceType\"],\"members\":{\"TagKeys\":{\"type\":\"list\",\"member\":{}},\"ResourceId\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ResourceType\":{}}}},\"DescribeBatchPredictions\":{\"input\":{\"type\":\"structure\",\"members\":{\"FilterVariable\":{},\"EQ\":{},\"GT\":{},\"LT\":{},\"GE\":{},\"LE\":{},\"NE\":{},\"Prefix\":{},\"SortOrder\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BatchPredictionId\":{},\"MLModelId\":{},\"BatchPredictionDataSourceId\":{},\"InputDataLocationS3\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Name\":{},\"Status\":{},\"OutputUri\":{},\"Message\":{},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"},\"TotalRecordCount\":{\"type\":\"long\"},\"InvalidRecordCount\":{\"type\":\"long\"}}}},\"NextToken\":{}}}},\"DescribeDataSources\":{\"input\":{\"type\":\"structure\",\"members\":{\"FilterVariable\":{},\"EQ\":{},\"GT\":{},\"LT\":{},\"GE\":{},\"LE\":{},\"NE\":{},\"Prefix\":{},\"SortOrder\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{},\"DataLocationS3\":{},\"DataRearrangement\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"DataSizeInBytes\":{\"type\":\"long\"},\"NumberOfFiles\":{\"type\":\"long\"},\"Name\":{},\"Status\":{},\"Message\":{},\"RedshiftMetadata\":{\"shape\":\"S2i\"},\"RDSMetadata\":{\"shape\":\"S2j\"},\"RoleARN\":{},\"ComputeStatistics\":{\"type\":\"boolean\"},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeEvaluations\":{\"input\":{\"type\":\"structure\",\"members\":{\"FilterVariable\":{},\"EQ\":{},\"GT\":{},\"LT\":{},\"GE\":{},\"LE\":{},\"NE\":{},\"Prefix\":{},\"SortOrder\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EvaluationId\":{},\"MLModelId\":{},\"EvaluationDataSourceId\":{},\"InputDataLocationS3\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Name\":{},\"Status\":{},\"PerformanceMetrics\":{\"shape\":\"S2q\"},\"Message\":{},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeMLModels\":{\"input\":{\"type\":\"structure\",\"members\":{\"FilterVariable\":{},\"EQ\":{},\"GT\":{},\"LT\":{},\"GE\":{},\"LE\":{},\"NE\":{},\"Prefix\":{},\"SortOrder\":{},\"NextToken\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{},\"TrainingDataSourceId\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Name\":{},\"Status\":{},\"SizeInBytes\":{\"type\":\"long\"},\"EndpointInfo\":{\"shape\":\"S1j\"},\"TrainingParameters\":{\"shape\":\"S1d\"},\"InputDataLocationS3\":{},\"Algorithm\":{},\"MLModelType\":{},\"ScoreThreshold\":{\"type\":\"float\"},\"ScoreThresholdLastUpdatedAt\":{\"type\":\"timestamp\"},\"Message\":{},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"ResourceType\"],\"members\":{\"ResourceId\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ResourceType\":{},\"Tags\":{\"shape\":\"S2\"}}}},\"GetBatchPrediction\":{\"input\":{\"type\":\"structure\",\"required\":[\"BatchPredictionId\"],\"members\":{\"BatchPredictionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BatchPredictionId\":{},\"MLModelId\":{},\"BatchPredictionDataSourceId\":{},\"InputDataLocationS3\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Name\":{},\"Status\":{},\"OutputUri\":{},\"LogUri\":{},\"Message\":{},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"},\"TotalRecordCount\":{\"type\":\"long\"},\"InvalidRecordCount\":{\"type\":\"long\"}}}},\"GetDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataSourceId\"],\"members\":{\"DataSourceId\":{},\"Verbose\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{},\"DataLocationS3\":{},\"DataRearrangement\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"DataSizeInBytes\":{\"type\":\"long\"},\"NumberOfFiles\":{\"type\":\"long\"},\"Name\":{},\"Status\":{},\"LogUri\":{},\"Message\":{},\"RedshiftMetadata\":{\"shape\":\"S2i\"},\"RDSMetadata\":{\"shape\":\"S2j\"},\"RoleARN\":{},\"ComputeStatistics\":{\"type\":\"boolean\"},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"},\"DataSourceSchema\":{}}}},\"GetEvaluation\":{\"input\":{\"type\":\"structure\",\"required\":[\"EvaluationId\"],\"members\":{\"EvaluationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EvaluationId\":{},\"MLModelId\":{},\"EvaluationDataSourceId\":{},\"InputDataLocationS3\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Name\":{},\"Status\":{},\"PerformanceMetrics\":{\"shape\":\"S2q\"},\"LogUri\":{},\"Message\":{},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"}}}},\"GetMLModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\"],\"members\":{\"MLModelId\":{},\"Verbose\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{},\"TrainingDataSourceId\":{},\"CreatedByIamUser\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"Name\":{},\"Status\":{},\"SizeInBytes\":{\"type\":\"long\"},\"EndpointInfo\":{\"shape\":\"S1j\"},\"TrainingParameters\":{\"shape\":\"S1d\"},\"InputDataLocationS3\":{},\"MLModelType\":{},\"ScoreThreshold\":{\"type\":\"float\"},\"ScoreThresholdLastUpdatedAt\":{\"type\":\"timestamp\"},\"LogUri\":{},\"Message\":{},\"ComputeTime\":{\"type\":\"long\"},\"FinishedAt\":{\"type\":\"timestamp\"},\"StartedAt\":{\"type\":\"timestamp\"},\"Recipe\":{},\"Schema\":{}}}},\"Predict\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\",\"Record\",\"PredictEndpoint\"],\"members\":{\"MLModelId\":{},\"Record\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"PredictEndpoint\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Prediction\":{\"type\":\"structure\",\"members\":{\"predictedLabel\":{},\"predictedValue\":{\"type\":\"float\"},\"predictedScores\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"float\"}},\"details\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"UpdateBatchPrediction\":{\"input\":{\"type\":\"structure\",\"required\":[\"BatchPredictionId\",\"BatchPredictionName\"],\"members\":{\"BatchPredictionId\":{},\"BatchPredictionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BatchPredictionId\":{}}}},\"UpdateDataSource\":{\"input\":{\"type\":\"structure\",\"required\":[\"DataSourceId\",\"DataSourceName\"],\"members\":{\"DataSourceId\":{},\"DataSourceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceId\":{}}}},\"UpdateEvaluation\":{\"input\":{\"type\":\"structure\",\"required\":[\"EvaluationId\",\"EvaluationName\"],\"members\":{\"EvaluationId\":{},\"EvaluationName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EvaluationId\":{}}}},\"UpdateMLModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"MLModelId\"],\"members\":{\"MLModelId\":{},\"MLModelName\":{},\"ScoreThreshold\":{\"type\":\"float\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MLModelId\":{}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sf\":{\"type\":\"structure\",\"required\":[\"InstanceIdentifier\",\"DatabaseName\"],\"members\":{\"InstanceIdentifier\":{},\"DatabaseName\":{}}},\"Sy\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"ClusterIdentifier\"],\"members\":{\"DatabaseName\":{},\"ClusterIdentifier\":{}}},\"S1d\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1j\":{\"type\":\"structure\",\"members\":{\"PeakRequestsPerSecond\":{\"type\":\"integer\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"EndpointUrl\":{},\"EndpointStatus\":{}}},\"S2i\":{\"type\":\"structure\",\"members\":{\"RedshiftDatabase\":{\"shape\":\"Sy\"},\"DatabaseUserName\":{},\"SelectSqlQuery\":{}}},\"S2j\":{\"type\":\"structure\",\"members\":{\"Database\":{\"shape\":\"Sf\"},\"DatabaseUserName\":{},\"SelectSqlQuery\":{},\"ResourceRole\":{},\"ServiceRole\":{},\"DataPipelineId\":{}}},\"S2q\":{\"type\":\"structure\",\"members\":{\"Properties\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}");

/***/ }),

/***/ 11688:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeBatchPredictions\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Results\"},\"DescribeDataSources\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Results\"},\"DescribeEvaluations\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Results\"},\"DescribeMLModels\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Results\"}}}");

/***/ }),

/***/ 92349:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DataSourceAvailable\":{\"delay\":30,\"operation\":\"DescribeDataSources\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"COMPLETED\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Results[].Status\"},{\"expected\":\"FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Results[].Status\"}]},\"MLModelAvailable\":{\"delay\":30,\"operation\":\"DescribeMLModels\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"COMPLETED\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Results[].Status\"},{\"expected\":\"FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Results[].Status\"}]},\"EvaluationAvailable\":{\"delay\":30,\"operation\":\"DescribeEvaluations\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"COMPLETED\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Results[].Status\"},{\"expected\":\"FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Results[].Status\"}]},\"BatchPredictionAvailable\":{\"delay\":30,\"operation\":\"DescribeBatchPredictions\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"COMPLETED\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Results[].Status\"},{\"expected\":\"FAILED\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Results[].Status\"}]}}}");

/***/ }),

/***/ 27101:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-12-19\",\"endpointPrefix\":\"macie\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Macie\",\"serviceId\":\"Macie\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"MacieService\",\"uid\":\"macie-2017-12-19\"},\"operations\":{\"AssociateMemberAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"memberAccountId\"],\"members\":{\"memberAccountId\":{}}}},\"AssociateS3Resources\":{\"input\":{\"type\":\"structure\",\"required\":[\"s3Resources\"],\"members\":{\"memberAccountId\":{},\"s3Resources\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"failedS3Resources\":{\"shape\":\"Sc\"}}}},\"DisassociateMemberAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"memberAccountId\"],\"members\":{\"memberAccountId\":{}}}},\"DisassociateS3Resources\":{\"input\":{\"type\":\"structure\",\"required\":[\"associatedS3Resources\"],\"members\":{\"memberAccountId\":{},\"associatedS3Resources\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"failedS3Resources\":{\"shape\":\"Sc\"}}}},\"ListMemberAccounts\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"memberAccounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{}}}},\"nextToken\":{}}}},\"ListS3Resources\":{\"input\":{\"type\":\"structure\",\"members\":{\"memberAccountId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"s3Resources\":{\"shape\":\"S4\"},\"nextToken\":{}}}},\"UpdateS3Resources\":{\"input\":{\"type\":\"structure\",\"required\":[\"s3ResourcesUpdate\"],\"members\":{\"memberAccountId\":{},\"s3ResourcesUpdate\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"bucketName\",\"classificationTypeUpdate\"],\"members\":{\"bucketName\":{},\"prefix\":{},\"classificationTypeUpdate\":{\"type\":\"structure\",\"members\":{\"oneTime\":{},\"continuous\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"failedS3Resources\":{\"shape\":\"Sc\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"bucketName\",\"classificationType\"],\"members\":{\"bucketName\":{},\"prefix\":{},\"classificationType\":{\"type\":\"structure\",\"required\":[\"oneTime\",\"continuous\"],\"members\":{\"oneTime\":{},\"continuous\":{}}}}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"failedItem\":{\"shape\":\"Se\"},\"errorCode\":{},\"errorMessage\":{}}}},\"Se\":{\"type\":\"structure\",\"required\":[\"bucketName\"],\"members\":{\"bucketName\":{},\"prefix\":{}}}}}");

/***/ }),

/***/ 9057:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListMemberAccounts\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListS3Resources\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 27105:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2020-01-01\",\"endpointPrefix\":\"macie2\",\"signingName\":\"macie2\",\"serviceFullName\":\"Amazon Macie 2\",\"serviceId\":\"Macie2\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"macie2-2020-01-01\",\"signatureVersion\":\"v4\"},\"operations\":{\"AcceptInvitation\":{\"http\":{\"requestUri\":\"/invitations/accept\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"administratorAccountId\":{\"locationName\":\"administratorAccountId\"},\"invitationId\":{\"locationName\":\"invitationId\"},\"masterAccount\":{\"locationName\":\"masterAccount\"}},\"required\":[\"invitationId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchGetCustomDataIdentifiers\":{\"http\":{\"requestUri\":\"/custom-data-identifiers/get\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ids\":{\"shape\":\"S5\",\"locationName\":\"ids\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"customDataIdentifiers\":{\"locationName\":\"customDataIdentifiers\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"deleted\":{\"locationName\":\"deleted\",\"type\":\"boolean\"},\"description\":{\"locationName\":\"description\"},\"id\":{\"locationName\":\"id\"},\"name\":{\"locationName\":\"name\"}}}},\"notFoundIdentifierIds\":{\"shape\":\"S5\",\"locationName\":\"notFoundIdentifierIds\"}}}},\"CreateClassificationJob\":{\"http\":{\"requestUri\":\"/jobs\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true},\"customDataIdentifierIds\":{\"shape\":\"S5\",\"locationName\":\"customDataIdentifierIds\"},\"description\":{\"locationName\":\"description\"},\"initialRun\":{\"locationName\":\"initialRun\",\"type\":\"boolean\"},\"jobType\":{\"locationName\":\"jobType\"},\"name\":{\"locationName\":\"name\"},\"s3JobDefinition\":{\"shape\":\"Sd\",\"locationName\":\"s3JobDefinition\"},\"samplingPercentage\":{\"locationName\":\"samplingPercentage\",\"type\":\"integer\"},\"scheduleFrequency\":{\"shape\":\"Ss\",\"locationName\":\"scheduleFrequency\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}},\"required\":[\"s3JobDefinition\",\"jobType\",\"clientToken\",\"name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"jobArn\":{\"locationName\":\"jobArn\"},\"jobId\":{\"locationName\":\"jobId\"}}}},\"CreateCustomDataIdentifier\":{\"http\":{\"requestUri\":\"/custom-data-identifiers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true},\"description\":{\"locationName\":\"description\"},\"ignoreWords\":{\"shape\":\"S5\",\"locationName\":\"ignoreWords\"},\"keywords\":{\"shape\":\"S5\",\"locationName\":\"keywords\"},\"maximumMatchDistance\":{\"locationName\":\"maximumMatchDistance\",\"type\":\"integer\"},\"name\":{\"locationName\":\"name\"},\"regex\":{\"locationName\":\"regex\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"customDataIdentifierId\":{\"locationName\":\"customDataIdentifierId\"}}}},\"CreateFindingsFilter\":{\"http\":{\"requestUri\":\"/findingsfilters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"action\":{\"locationName\":\"action\"},\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true},\"description\":{\"locationName\":\"description\"},\"findingCriteria\":{\"shape\":\"S13\",\"locationName\":\"findingCriteria\"},\"name\":{\"locationName\":\"name\"},\"position\":{\"locationName\":\"position\",\"type\":\"integer\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}},\"required\":[\"action\",\"findingCriteria\",\"name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"id\":{\"locationName\":\"id\"}}}},\"CreateInvitations\":{\"http\":{\"requestUri\":\"/invitations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"accountIds\":{\"shape\":\"S5\",\"locationName\":\"accountIds\"},\"disableEmailNotification\":{\"locationName\":\"disableEmailNotification\",\"type\":\"boolean\"},\"message\":{\"locationName\":\"message\"}},\"required\":[\"accountIds\"]},\"output\":{\"type\":\"structure\",\"members\":{\"unprocessedAccounts\":{\"shape\":\"S1a\",\"locationName\":\"unprocessedAccounts\"}}}},\"CreateMember\":{\"http\":{\"requestUri\":\"/members\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"account\":{\"locationName\":\"account\",\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"email\":{\"locationName\":\"email\"}},\"required\":[\"email\",\"accountId\"]},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}},\"required\":[\"account\"]},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"}}}},\"CreateSampleFindings\":{\"http\":{\"requestUri\":\"/findings/sample\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"findingTypes\":{\"locationName\":\"findingTypes\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeclineInvitations\":{\"http\":{\"requestUri\":\"/invitations/decline\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"accountIds\":{\"shape\":\"S5\",\"locationName\":\"accountIds\"}},\"required\":[\"accountIds\"]},\"output\":{\"type\":\"structure\",\"members\":{\"unprocessedAccounts\":{\"shape\":\"S1a\",\"locationName\":\"unprocessedAccounts\"}}}},\"DeleteCustomDataIdentifier\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/custom-data-identifiers/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteFindingsFilter\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/findingsfilters/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInvitations\":{\"http\":{\"requestUri\":\"/invitations/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"accountIds\":{\"shape\":\"S5\",\"locationName\":\"accountIds\"}},\"required\":[\"accountIds\"]},\"output\":{\"type\":\"structure\",\"members\":{\"unprocessedAccounts\":{\"shape\":\"S1a\",\"locationName\":\"unprocessedAccounts\"}}}},\"DeleteMember\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/members/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeBuckets\":{\"http\":{\"requestUri\":\"/datasources/s3\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"criteria\":{\"locationName\":\"criteria\",\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"eq\":{\"shape\":\"S5\",\"locationName\":\"eq\"},\"gt\":{\"locationName\":\"gt\",\"type\":\"long\"},\"gte\":{\"locationName\":\"gte\",\"type\":\"long\"},\"lt\":{\"locationName\":\"lt\",\"type\":\"long\"},\"lte\":{\"locationName\":\"lte\",\"type\":\"long\"},\"neq\":{\"shape\":\"S5\",\"locationName\":\"neq\"},\"prefix\":{\"locationName\":\"prefix\"}}}},\"maxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"locationName\":\"nextToken\"},\"sortCriteria\":{\"locationName\":\"sortCriteria\",\"type\":\"structure\",\"members\":{\"attributeName\":{\"locationName\":\"attributeName\"},\"orderBy\":{\"locationName\":\"orderBy\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"buckets\":{\"locationName\":\"buckets\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"bucketArn\":{\"locationName\":\"bucketArn\"},\"bucketCreatedAt\":{\"shape\":\"S9\",\"locationName\":\"bucketCreatedAt\"},\"bucketName\":{\"locationName\":\"bucketName\"},\"classifiableObjectCount\":{\"locationName\":\"classifiableObjectCount\",\"type\":\"long\"},\"classifiableSizeInBytes\":{\"locationName\":\"classifiableSizeInBytes\",\"type\":\"long\"},\"jobDetails\":{\"locationName\":\"jobDetails\",\"type\":\"structure\",\"members\":{\"isDefinedInJob\":{\"locationName\":\"isDefinedInJob\"},\"isMonitoredByJob\":{\"locationName\":\"isMonitoredByJob\"},\"lastJobId\":{\"locationName\":\"lastJobId\"},\"lastJobRunTime\":{\"shape\":\"S9\",\"locationName\":\"lastJobRunTime\"}}},\"lastUpdated\":{\"shape\":\"S9\",\"locationName\":\"lastUpdated\"},\"objectCount\":{\"locationName\":\"objectCount\",\"type\":\"long\"},\"objectCountByEncryptionType\":{\"locationName\":\"objectCountByEncryptionType\",\"type\":\"structure\",\"members\":{\"customerManaged\":{\"locationName\":\"customerManaged\",\"type\":\"long\"},\"kmsManaged\":{\"locationName\":\"kmsManaged\",\"type\":\"long\"},\"s3Managed\":{\"locationName\":\"s3Managed\",\"type\":\"long\"},\"unencrypted\":{\"locationName\":\"unencrypted\",\"type\":\"long\"}}},\"publicAccess\":{\"shape\":\"S26\",\"locationName\":\"publicAccess\"},\"region\":{\"locationName\":\"region\"},\"replicationDetails\":{\"locationName\":\"replicationDetails\",\"type\":\"structure\",\"members\":{\"replicated\":{\"locationName\":\"replicated\",\"type\":\"boolean\"},\"replicatedExternally\":{\"locationName\":\"replicatedExternally\",\"type\":\"boolean\"},\"replicationAccounts\":{\"shape\":\"S5\",\"locationName\":\"replicationAccounts\"}}},\"serverSideEncryption\":{\"locationName\":\"serverSideEncryption\",\"type\":\"structure\",\"members\":{\"kmsMasterKeyId\":{\"locationName\":\"kmsMasterKeyId\"},\"type\":{\"locationName\":\"type\"}}},\"sharedAccess\":{\"locationName\":\"sharedAccess\"},\"sizeInBytes\":{\"locationName\":\"sizeInBytes\",\"type\":\"long\"},\"sizeInBytesCompressed\":{\"locationName\":\"sizeInBytesCompressed\",\"type\":\"long\"},\"tags\":{\"locationName\":\"tags\",\"type\":\"list\",\"member\":{\"shape\":\"S2j\"}},\"unclassifiableObjectCount\":{\"shape\":\"S2k\",\"locationName\":\"unclassifiableObjectCount\"},\"unclassifiableObjectSizeInBytes\":{\"shape\":\"S2k\",\"locationName\":\"unclassifiableObjectSizeInBytes\"},\"versioning\":{\"locationName\":\"versioning\",\"type\":\"boolean\"}}}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeClassificationJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/jobs/{jobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}},\"required\":[\"jobId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"customDataIdentifierIds\":{\"shape\":\"S5\",\"locationName\":\"customDataIdentifierIds\"},\"description\":{\"locationName\":\"description\"},\"initialRun\":{\"locationName\":\"initialRun\",\"type\":\"boolean\"},\"jobArn\":{\"locationName\":\"jobArn\"},\"jobId\":{\"locationName\":\"jobId\"},\"jobStatus\":{\"locationName\":\"jobStatus\"},\"jobType\":{\"locationName\":\"jobType\"},\"lastRunErrorStatus\":{\"shape\":\"S2o\",\"locationName\":\"lastRunErrorStatus\"},\"lastRunTime\":{\"shape\":\"S9\",\"locationName\":\"lastRunTime\"},\"name\":{\"locationName\":\"name\"},\"s3JobDefinition\":{\"shape\":\"Sd\",\"locationName\":\"s3JobDefinition\"},\"samplingPercentage\":{\"locationName\":\"samplingPercentage\",\"type\":\"integer\"},\"scheduleFrequency\":{\"shape\":\"Ss\",\"locationName\":\"scheduleFrequency\"},\"statistics\":{\"locationName\":\"statistics\",\"type\":\"structure\",\"members\":{\"approximateNumberOfObjectsToProcess\":{\"locationName\":\"approximateNumberOfObjectsToProcess\",\"type\":\"double\"},\"numberOfRuns\":{\"locationName\":\"numberOfRuns\",\"type\":\"double\"}}},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"},\"userPausedDetails\":{\"shape\":\"S2s\",\"locationName\":\"userPausedDetails\"}}}},\"DescribeOrganizationConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/admin/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"autoEnable\":{\"locationName\":\"autoEnable\",\"type\":\"boolean\"},\"maxAccountLimitReached\":{\"locationName\":\"maxAccountLimitReached\",\"type\":\"boolean\"}}}},\"DisableMacie\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/macie\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableOrganizationAdminAccount\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/admin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"adminAccountId\":{\"location\":\"querystring\",\"locationName\":\"adminAccountId\"}},\"required\":[\"adminAccountId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateFromAdministratorAccount\":{\"http\":{\"requestUri\":\"/administrator/disassociate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateFromMasterAccount\":{\"http\":{\"requestUri\":\"/master/disassociate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateMember\":{\"http\":{\"requestUri\":\"/members/disassociate/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableMacie\":{\"http\":{\"requestUri\":\"/macie\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true},\"findingPublishingFrequency\":{\"locationName\":\"findingPublishingFrequency\"},\"status\":{\"locationName\":\"status\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/admin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"adminAccountId\":{\"locationName\":\"adminAccountId\"},\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true}},\"required\":[\"adminAccountId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAdministratorAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/administrator\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"administrator\":{\"shape\":\"S3d\",\"locationName\":\"administrator\"}}}},\"GetBucketStatistics\":{\"http\":{\"requestUri\":\"/datasources/s3/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"bucketCount\":{\"locationName\":\"bucketCount\",\"type\":\"long\"},\"bucketCountByEffectivePermission\":{\"locationName\":\"bucketCountByEffectivePermission\",\"type\":\"structure\",\"members\":{\"publiclyAccessible\":{\"locationName\":\"publiclyAccessible\",\"type\":\"long\"},\"publiclyReadable\":{\"locationName\":\"publiclyReadable\",\"type\":\"long\"},\"publiclyWritable\":{\"locationName\":\"publiclyWritable\",\"type\":\"long\"},\"unknown\":{\"locationName\":\"unknown\",\"type\":\"long\"}}},\"bucketCountByEncryptionType\":{\"locationName\":\"bucketCountByEncryptionType\",\"type\":\"structure\",\"members\":{\"kmsManaged\":{\"locationName\":\"kmsManaged\",\"type\":\"long\"},\"s3Managed\":{\"locationName\":\"s3Managed\",\"type\":\"long\"},\"unencrypted\":{\"locationName\":\"unencrypted\",\"type\":\"long\"}}},\"bucketCountBySharedAccessType\":{\"locationName\":\"bucketCountBySharedAccessType\",\"type\":\"structure\",\"members\":{\"external\":{\"locationName\":\"external\",\"type\":\"long\"},\"internal\":{\"locationName\":\"internal\",\"type\":\"long\"},\"notShared\":{\"locationName\":\"notShared\",\"type\":\"long\"},\"unknown\":{\"locationName\":\"unknown\",\"type\":\"long\"}}},\"classifiableObjectCount\":{\"locationName\":\"classifiableObjectCount\",\"type\":\"long\"},\"classifiableSizeInBytes\":{\"locationName\":\"classifiableSizeInBytes\",\"type\":\"long\"},\"lastUpdated\":{\"shape\":\"S9\",\"locationName\":\"lastUpdated\"},\"objectCount\":{\"locationName\":\"objectCount\",\"type\":\"long\"},\"sizeInBytes\":{\"locationName\":\"sizeInBytes\",\"type\":\"long\"},\"sizeInBytesCompressed\":{\"locationName\":\"sizeInBytesCompressed\",\"type\":\"long\"},\"unclassifiableObjectCount\":{\"shape\":\"S2k\",\"locationName\":\"unclassifiableObjectCount\"},\"unclassifiableObjectSizeInBytes\":{\"shape\":\"S2k\",\"locationName\":\"unclassifiableObjectSizeInBytes\"}}}},\"GetClassificationExportConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/classification-export-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"configuration\":{\"shape\":\"S3m\",\"locationName\":\"configuration\"}}}},\"GetCustomDataIdentifier\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/custom-data-identifiers/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"deleted\":{\"locationName\":\"deleted\",\"type\":\"boolean\"},\"description\":{\"locationName\":\"description\"},\"id\":{\"locationName\":\"id\"},\"ignoreWords\":{\"shape\":\"S5\",\"locationName\":\"ignoreWords\"},\"keywords\":{\"shape\":\"S5\",\"locationName\":\"keywords\"},\"maximumMatchDistance\":{\"locationName\":\"maximumMatchDistance\",\"type\":\"integer\"},\"name\":{\"locationName\":\"name\"},\"regex\":{\"locationName\":\"regex\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}}}},\"GetFindingStatistics\":{\"http\":{\"requestUri\":\"/findings/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"findingCriteria\":{\"shape\":\"S13\",\"locationName\":\"findingCriteria\"},\"groupBy\":{\"locationName\":\"groupBy\"},\"size\":{\"locationName\":\"size\",\"type\":\"integer\"},\"sortCriteria\":{\"locationName\":\"sortCriteria\",\"type\":\"structure\",\"members\":{\"attributeName\":{\"locationName\":\"attributeName\"},\"orderBy\":{\"locationName\":\"orderBy\"}}}},\"required\":[\"groupBy\"]},\"output\":{\"type\":\"structure\",\"members\":{\"countsByGroup\":{\"locationName\":\"countsByGroup\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"count\":{\"locationName\":\"count\",\"type\":\"long\"},\"groupKey\":{\"locationName\":\"groupKey\"}}}}}}},\"GetFindings\":{\"http\":{\"requestUri\":\"/findings/describe\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"findingIds\":{\"shape\":\"S5\",\"locationName\":\"findingIds\"},\"sortCriteria\":{\"shape\":\"S3y\",\"locationName\":\"sortCriteria\"}},\"required\":[\"findingIds\"]},\"output\":{\"type\":\"structure\",\"members\":{\"findings\":{\"locationName\":\"findings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"archived\":{\"locationName\":\"archived\",\"type\":\"boolean\"},\"category\":{\"locationName\":\"category\"},\"classificationDetails\":{\"locationName\":\"classificationDetails\",\"type\":\"structure\",\"members\":{\"detailedResultsLocation\":{\"locationName\":\"detailedResultsLocation\"},\"jobArn\":{\"locationName\":\"jobArn\"},\"jobId\":{\"locationName\":\"jobId\"},\"result\":{\"locationName\":\"result\",\"type\":\"structure\",\"members\":{\"additionalOccurrences\":{\"locationName\":\"additionalOccurrences\",\"type\":\"boolean\"},\"customDataIdentifiers\":{\"locationName\":\"customDataIdentifiers\",\"type\":\"structure\",\"members\":{\"detections\":{\"locationName\":\"detections\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"count\":{\"locationName\":\"count\",\"type\":\"long\"},\"name\":{\"locationName\":\"name\"},\"occurrences\":{\"shape\":\"S48\",\"locationName\":\"occurrences\"}}}},\"totalCount\":{\"locationName\":\"totalCount\",\"type\":\"long\"}}},\"mimeType\":{\"locationName\":\"mimeType\"},\"sensitiveData\":{\"locationName\":\"sensitiveData\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"category\":{\"locationName\":\"category\"},\"detections\":{\"locationName\":\"detections\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"count\":{\"locationName\":\"count\",\"type\":\"long\"},\"occurrences\":{\"shape\":\"S48\",\"locationName\":\"occurrences\"},\"type\":{\"locationName\":\"type\"}}}},\"totalCount\":{\"locationName\":\"totalCount\",\"type\":\"long\"}}}},\"sizeClassified\":{\"locationName\":\"sizeClassified\",\"type\":\"long\"},\"status\":{\"locationName\":\"status\",\"type\":\"structure\",\"members\":{\"code\":{\"locationName\":\"code\"},\"reason\":{\"locationName\":\"reason\"}}}}}}},\"count\":{\"locationName\":\"count\",\"type\":\"long\"},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"description\":{\"locationName\":\"description\"},\"id\":{\"locationName\":\"id\"},\"partition\":{\"locationName\":\"partition\"},\"policyDetails\":{\"locationName\":\"policyDetails\",\"type\":\"structure\",\"members\":{\"action\":{\"locationName\":\"action\",\"type\":\"structure\",\"members\":{\"actionType\":{\"locationName\":\"actionType\"},\"apiCallDetails\":{\"locationName\":\"apiCallDetails\",\"type\":\"structure\",\"members\":{\"api\":{\"locationName\":\"api\"},\"apiServiceName\":{\"locationName\":\"apiServiceName\"},\"firstSeen\":{\"shape\":\"S9\",\"locationName\":\"firstSeen\"},\"lastSeen\":{\"shape\":\"S9\",\"locationName\":\"lastSeen\"}}}}},\"actor\":{\"locationName\":\"actor\",\"type\":\"structure\",\"members\":{\"domainDetails\":{\"locationName\":\"domainDetails\",\"type\":\"structure\",\"members\":{\"domainName\":{\"locationName\":\"domainName\"}}},\"ipAddressDetails\":{\"locationName\":\"ipAddressDetails\",\"type\":\"structure\",\"members\":{\"ipAddressV4\":{\"locationName\":\"ipAddressV4\"},\"ipCity\":{\"locationName\":\"ipCity\",\"type\":\"structure\",\"members\":{\"name\":{\"locationName\":\"name\"}}},\"ipCountry\":{\"locationName\":\"ipCountry\",\"type\":\"structure\",\"members\":{\"code\":{\"locationName\":\"code\"},\"name\":{\"locationName\":\"name\"}}},\"ipGeoLocation\":{\"locationName\":\"ipGeoLocation\",\"type\":\"structure\",\"members\":{\"lat\":{\"locationName\":\"lat\",\"type\":\"double\"},\"lon\":{\"locationName\":\"lon\",\"type\":\"double\"}}},\"ipOwner\":{\"locationName\":\"ipOwner\",\"type\":\"structure\",\"members\":{\"asn\":{\"locationName\":\"asn\"},\"asnOrg\":{\"locationName\":\"asnOrg\"},\"isp\":{\"locationName\":\"isp\"},\"org\":{\"locationName\":\"org\"}}}}},\"userIdentity\":{\"locationName\":\"userIdentity\",\"type\":\"structure\",\"members\":{\"assumedRole\":{\"locationName\":\"assumedRole\",\"type\":\"structure\",\"members\":{\"accessKeyId\":{\"locationName\":\"accessKeyId\"},\"accountId\":{\"locationName\":\"accountId\"},\"arn\":{\"locationName\":\"arn\"},\"principalId\":{\"locationName\":\"principalId\"},\"sessionContext\":{\"shape\":\"S50\",\"locationName\":\"sessionContext\"}}},\"awsAccount\":{\"locationName\":\"awsAccount\",\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"principalId\":{\"locationName\":\"principalId\"}}},\"awsService\":{\"locationName\":\"awsService\",\"type\":\"structure\",\"members\":{\"invokedBy\":{\"locationName\":\"invokedBy\"}}},\"federatedUser\":{\"locationName\":\"federatedUser\",\"type\":\"structure\",\"members\":{\"accessKeyId\":{\"locationName\":\"accessKeyId\"},\"accountId\":{\"locationName\":\"accountId\"},\"arn\":{\"locationName\":\"arn\"},\"principalId\":{\"locationName\":\"principalId\"},\"sessionContext\":{\"shape\":\"S50\",\"locationName\":\"sessionContext\"}}},\"iamUser\":{\"locationName\":\"iamUser\",\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"arn\":{\"locationName\":\"arn\"},\"principalId\":{\"locationName\":\"principalId\"},\"userName\":{\"locationName\":\"userName\"}}},\"root\":{\"locationName\":\"root\",\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"arn\":{\"locationName\":\"arn\"},\"principalId\":{\"locationName\":\"principalId\"}}},\"type\":{\"locationName\":\"type\"}}}}}}},\"region\":{\"locationName\":\"region\"},\"resourcesAffected\":{\"locationName\":\"resourcesAffected\",\"type\":\"structure\",\"members\":{\"s3Bucket\":{\"locationName\":\"s3Bucket\",\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"defaultServerSideEncryption\":{\"shape\":\"S5b\",\"locationName\":\"defaultServerSideEncryption\"},\"name\":{\"locationName\":\"name\"},\"owner\":{\"locationName\":\"owner\",\"type\":\"structure\",\"members\":{\"displayName\":{\"locationName\":\"displayName\"},\"id\":{\"locationName\":\"id\"}}},\"publicAccess\":{\"shape\":\"S26\",\"locationName\":\"publicAccess\"},\"tags\":{\"shape\":\"S5e\",\"locationName\":\"tags\"}}},\"s3Object\":{\"locationName\":\"s3Object\",\"type\":\"structure\",\"members\":{\"bucketArn\":{\"locationName\":\"bucketArn\"},\"eTag\":{\"locationName\":\"eTag\"},\"extension\":{\"locationName\":\"extension\"},\"key\":{\"locationName\":\"key\"},\"lastModified\":{\"shape\":\"S9\",\"locationName\":\"lastModified\"},\"path\":{\"locationName\":\"path\"},\"publicAccess\":{\"locationName\":\"publicAccess\",\"type\":\"boolean\"},\"serverSideEncryption\":{\"shape\":\"S5b\",\"locationName\":\"serverSideEncryption\"},\"size\":{\"locationName\":\"size\",\"type\":\"long\"},\"storageClass\":{\"locationName\":\"storageClass\"},\"tags\":{\"shape\":\"S5e\",\"locationName\":\"tags\"},\"versionId\":{\"locationName\":\"versionId\"}}}}},\"sample\":{\"locationName\":\"sample\",\"type\":\"boolean\"},\"schemaVersion\":{\"locationName\":\"schemaVersion\"},\"severity\":{\"locationName\":\"severity\",\"type\":\"structure\",\"members\":{\"description\":{\"locationName\":\"description\"},\"score\":{\"locationName\":\"score\",\"type\":\"long\"}}},\"title\":{\"locationName\":\"title\"},\"type\":{\"locationName\":\"type\"},\"updatedAt\":{\"shape\":\"S9\",\"locationName\":\"updatedAt\"}}}}}}},\"GetFindingsFilter\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/findingsfilters/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{\"action\":{\"locationName\":\"action\"},\"arn\":{\"locationName\":\"arn\"},\"description\":{\"locationName\":\"description\"},\"findingCriteria\":{\"shape\":\"S13\",\"locationName\":\"findingCriteria\"},\"id\":{\"locationName\":\"id\"},\"name\":{\"locationName\":\"name\"},\"position\":{\"locationName\":\"position\",\"type\":\"integer\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}}}},\"GetFindingsPublicationConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/findings-publication-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"securityHubConfiguration\":{\"shape\":\"S5n\",\"locationName\":\"securityHubConfiguration\"}}}},\"GetInvitationsCount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitations/count\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"invitationsCount\":{\"locationName\":\"invitationsCount\",\"type\":\"long\"}}}},\"GetMacieSession\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/macie\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"findingPublishingFrequency\":{\"locationName\":\"findingPublishingFrequency\"},\"serviceRole\":{\"locationName\":\"serviceRole\"},\"status\":{\"locationName\":\"status\"},\"updatedAt\":{\"shape\":\"S9\",\"locationName\":\"updatedAt\"}}}},\"GetMasterAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/master\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"master\":{\"shape\":\"S3d\",\"locationName\":\"master\"}}}},\"GetMember\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/members/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"administratorAccountId\":{\"locationName\":\"administratorAccountId\"},\"arn\":{\"locationName\":\"arn\"},\"email\":{\"locationName\":\"email\"},\"invitedAt\":{\"shape\":\"S9\",\"locationName\":\"invitedAt\"},\"masterAccountId\":{\"locationName\":\"masterAccountId\"},\"relationshipStatus\":{\"locationName\":\"relationshipStatus\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"},\"updatedAt\":{\"shape\":\"S9\",\"locationName\":\"updatedAt\"}}}},\"GetUsageStatistics\":{\"http\":{\"requestUri\":\"/usage/statistics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"filterBy\":{\"locationName\":\"filterBy\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"comparator\":{\"locationName\":\"comparator\"},\"key\":{\"locationName\":\"key\"},\"values\":{\"shape\":\"S5\",\"locationName\":\"values\"}}}},\"maxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"locationName\":\"nextToken\"},\"sortBy\":{\"locationName\":\"sortBy\",\"type\":\"structure\",\"members\":{\"key\":{\"locationName\":\"key\"},\"orderBy\":{\"locationName\":\"orderBy\"}}},\"timeRange\":{\"locationName\":\"timeRange\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"locationName\":\"nextToken\"},\"records\":{\"locationName\":\"records\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"freeTrialStartDate\":{\"shape\":\"S9\",\"locationName\":\"freeTrialStartDate\"},\"usage\":{\"locationName\":\"usage\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"currency\":{\"locationName\":\"currency\"},\"estimatedCost\":{\"locationName\":\"estimatedCost\"},\"serviceLimit\":{\"locationName\":\"serviceLimit\",\"type\":\"structure\",\"members\":{\"isServiceLimited\":{\"locationName\":\"isServiceLimited\",\"type\":\"boolean\"},\"unit\":{\"locationName\":\"unit\"},\"value\":{\"locationName\":\"value\",\"type\":\"long\"}}},\"type\":{\"locationName\":\"type\"}}}}}}},\"timeRange\":{\"locationName\":\"timeRange\"}}}},\"GetUsageTotals\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/usage\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"timeRange\":{\"location\":\"querystring\",\"locationName\":\"timeRange\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"timeRange\":{\"locationName\":\"timeRange\"},\"usageTotals\":{\"locationName\":\"usageTotals\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"currency\":{\"locationName\":\"currency\"},\"estimatedCost\":{\"locationName\":\"estimatedCost\"},\"type\":{\"locationName\":\"type\"}}}}}}},\"ListClassificationJobs\":{\"http\":{\"requestUri\":\"/jobs/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"filterCriteria\":{\"locationName\":\"filterCriteria\",\"type\":\"structure\",\"members\":{\"excludes\":{\"shape\":\"S6j\",\"locationName\":\"excludes\"},\"includes\":{\"shape\":\"S6j\",\"locationName\":\"includes\"}}},\"maxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"locationName\":\"nextToken\"},\"sortCriteria\":{\"locationName\":\"sortCriteria\",\"type\":\"structure\",\"members\":{\"attributeName\":{\"locationName\":\"attributeName\"},\"orderBy\":{\"locationName\":\"orderBy\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"bucketDefinitions\":{\"shape\":\"Se\",\"locationName\":\"bucketDefinitions\"},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"jobId\":{\"locationName\":\"jobId\"},\"jobStatus\":{\"locationName\":\"jobStatus\"},\"jobType\":{\"locationName\":\"jobType\"},\"lastRunErrorStatus\":{\"shape\":\"S2o\",\"locationName\":\"lastRunErrorStatus\"},\"name\":{\"locationName\":\"name\"},\"userPausedDetails\":{\"shape\":\"S2s\",\"locationName\":\"userPausedDetails\"}}}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListCustomDataIdentifiers\":{\"http\":{\"requestUri\":\"/custom-data-identifiers/list\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"items\":{\"locationName\":\"items\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"createdAt\":{\"shape\":\"S9\",\"locationName\":\"createdAt\"},\"description\":{\"locationName\":\"description\"},\"id\":{\"locationName\":\"id\"},\"name\":{\"locationName\":\"name\"}}}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListFindings\":{\"http\":{\"requestUri\":\"/findings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"findingCriteria\":{\"shape\":\"S13\",\"locationName\":\"findingCriteria\"},\"maxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"locationName\":\"nextToken\"},\"sortCriteria\":{\"shape\":\"S3y\",\"locationName\":\"sortCriteria\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"findingIds\":{\"shape\":\"S5\",\"locationName\":\"findingIds\"},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListFindingsFilters\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/findingsfilters\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"findingsFilterListItems\":{\"locationName\":\"findingsFilterListItems\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"action\":{\"locationName\":\"action\"},\"arn\":{\"locationName\":\"arn\"},\"id\":{\"locationName\":\"id\"},\"name\":{\"locationName\":\"name\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}}}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListInvitations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"invitations\":{\"locationName\":\"invitations\",\"type\":\"list\",\"member\":{\"shape\":\"S3d\"}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListMembers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/members\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"onlyAssociated\":{\"location\":\"querystring\",\"locationName\":\"onlyAssociated\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"members\":{\"locationName\":\"members\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"administratorAccountId\":{\"locationName\":\"administratorAccountId\"},\"arn\":{\"locationName\":\"arn\"},\"email\":{\"locationName\":\"email\"},\"invitedAt\":{\"shape\":\"S9\",\"locationName\":\"invitedAt\"},\"masterAccountId\":{\"locationName\":\"masterAccountId\"},\"relationshipStatus\":{\"locationName\":\"relationshipStatus\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"},\"updatedAt\":{\"shape\":\"S9\",\"locationName\":\"updatedAt\"}}}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListOrganizationAdminAccounts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/admin\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"adminAccounts\":{\"locationName\":\"adminAccounts\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"status\":{\"locationName\":\"status\"}}}},\"nextToken\":{\"locationName\":\"nextToken\"}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}},\"required\":[\"resourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}}}},\"PutClassificationExportConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/classification-export-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"configuration\":{\"shape\":\"S3m\",\"locationName\":\"configuration\"}},\"required\":[\"configuration\"]},\"output\":{\"type\":\"structure\",\"members\":{\"configuration\":{\"shape\":\"S3m\",\"locationName\":\"configuration\"}}}},\"PutFindingsPublicationConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/findings-publication-configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"clientToken\":{\"locationName\":\"clientToken\",\"idempotencyToken\":true},\"securityHubConfiguration\":{\"shape\":\"S5n\",\"locationName\":\"securityHubConfiguration\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sx\",\"locationName\":\"tags\"}},\"required\":[\"resourceArn\",\"tags\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TestCustomDataIdentifier\":{\"http\":{\"requestUri\":\"/custom-data-identifiers/test\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ignoreWords\":{\"shape\":\"S5\",\"locationName\":\"ignoreWords\"},\"keywords\":{\"shape\":\"S5\",\"locationName\":\"keywords\"},\"maximumMatchDistance\":{\"locationName\":\"maximumMatchDistance\",\"type\":\"integer\"},\"regex\":{\"locationName\":\"regex\"},\"sampleText\":{\"locationName\":\"sampleText\"}},\"required\":[\"regex\",\"sampleText\"]},\"output\":{\"type\":\"structure\",\"members\":{\"matchCount\":{\"locationName\":\"matchCount\",\"type\":\"integer\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"shape\":\"S5\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"tagKeys\",\"resourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateClassificationJob\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/jobs/{jobId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"jobStatus\":{\"locationName\":\"jobStatus\"}},\"required\":[\"jobId\",\"jobStatus\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFindingsFilter\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/findingsfilters/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"action\":{\"locationName\":\"action\"},\"description\":{\"locationName\":\"description\"},\"findingCriteria\":{\"shape\":\"S13\",\"locationName\":\"findingCriteria\"},\"id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"name\":{\"locationName\":\"name\"},\"position\":{\"locationName\":\"position\",\"type\":\"integer\"}},\"required\":[\"id\"]},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{\"locationName\":\"arn\"},\"id\":{\"locationName\":\"id\"}}}},\"UpdateMacieSession\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/macie\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"findingPublishingFrequency\":{\"locationName\":\"findingPublishingFrequency\"},\"status\":{\"locationName\":\"status\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateMemberSession\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/macie/members/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"status\":{\"locationName\":\"status\"}},\"required\":[\"id\",\"status\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateOrganizationConfiguration\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/admin/configuration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"autoEnable\":{\"locationName\":\"autoEnable\",\"type\":\"boolean\"}},\"required\":[\"autoEnable\"]},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{}},\"S9\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sd\":{\"type\":\"structure\",\"members\":{\"bucketDefinitions\":{\"shape\":\"Se\",\"locationName\":\"bucketDefinitions\"},\"scoping\":{\"locationName\":\"scoping\",\"type\":\"structure\",\"members\":{\"excludes\":{\"shape\":\"Sh\",\"locationName\":\"excludes\"},\"includes\":{\"shape\":\"Sh\",\"locationName\":\"includes\"}}}}},\"Se\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"buckets\":{\"shape\":\"S5\",\"locationName\":\"buckets\"}},\"required\":[\"accountId\",\"buckets\"]}},\"Sh\":{\"type\":\"structure\",\"members\":{\"and\":{\"locationName\":\"and\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"simpleScopeTerm\":{\"locationName\":\"simpleScopeTerm\",\"type\":\"structure\",\"members\":{\"comparator\":{\"locationName\":\"comparator\"},\"key\":{\"locationName\":\"key\"},\"values\":{\"shape\":\"S5\",\"locationName\":\"values\"}}},\"tagScopeTerm\":{\"locationName\":\"tagScopeTerm\",\"type\":\"structure\",\"members\":{\"comparator\":{\"locationName\":\"comparator\"},\"key\":{\"locationName\":\"key\"},\"tagValues\":{\"locationName\":\"tagValues\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{\"locationName\":\"key\"},\"value\":{\"locationName\":\"value\"}}}},\"target\":{\"locationName\":\"target\"}}}}}}}},\"Ss\":{\"type\":\"structure\",\"members\":{\"dailySchedule\":{\"locationName\":\"dailySchedule\",\"type\":\"structure\",\"members\":{}},\"monthlySchedule\":{\"locationName\":\"monthlySchedule\",\"type\":\"structure\",\"members\":{\"dayOfMonth\":{\"locationName\":\"dayOfMonth\",\"type\":\"integer\"}}},\"weeklySchedule\":{\"locationName\":\"weeklySchedule\",\"type\":\"structure\",\"members\":{\"dayOfWeek\":{\"locationName\":\"dayOfWeek\"}}}}},\"Sx\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S13\":{\"type\":\"structure\",\"members\":{\"criterion\":{\"locationName\":\"criterion\",\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"eq\":{\"shape\":\"S5\",\"locationName\":\"eq\"},\"eqExactMatch\":{\"shape\":\"S5\",\"locationName\":\"eqExactMatch\"},\"gt\":{\"locationName\":\"gt\",\"type\":\"long\"},\"gte\":{\"locationName\":\"gte\",\"type\":\"long\"},\"lt\":{\"locationName\":\"lt\",\"type\":\"long\"},\"lte\":{\"locationName\":\"lte\",\"type\":\"long\"},\"neq\":{\"shape\":\"S5\",\"locationName\":\"neq\"}}}}}},\"S1a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"errorCode\":{\"locationName\":\"errorCode\"},\"errorMessage\":{\"locationName\":\"errorMessage\"}}}},\"S26\":{\"type\":\"structure\",\"members\":{\"effectivePermission\":{\"locationName\":\"effectivePermission\"},\"permissionConfiguration\":{\"locationName\":\"permissionConfiguration\",\"type\":\"structure\",\"members\":{\"accountLevelPermissions\":{\"locationName\":\"accountLevelPermissions\",\"type\":\"structure\",\"members\":{\"blockPublicAccess\":{\"shape\":\"S2a\",\"locationName\":\"blockPublicAccess\"}}},\"bucketLevelPermissions\":{\"locationName\":\"bucketLevelPermissions\",\"type\":\"structure\",\"members\":{\"accessControlList\":{\"locationName\":\"accessControlList\",\"type\":\"structure\",\"members\":{\"allowsPublicReadAccess\":{\"locationName\":\"allowsPublicReadAccess\",\"type\":\"boolean\"},\"allowsPublicWriteAccess\":{\"locationName\":\"allowsPublicWriteAccess\",\"type\":\"boolean\"}}},\"blockPublicAccess\":{\"shape\":\"S2a\",\"locationName\":\"blockPublicAccess\"},\"bucketPolicy\":{\"locationName\":\"bucketPolicy\",\"type\":\"structure\",\"members\":{\"allowsPublicReadAccess\":{\"locationName\":\"allowsPublicReadAccess\",\"type\":\"boolean\"},\"allowsPublicWriteAccess\":{\"locationName\":\"allowsPublicWriteAccess\",\"type\":\"boolean\"}}}}}}}}},\"S2a\":{\"type\":\"structure\",\"members\":{\"blockPublicAcls\":{\"locationName\":\"blockPublicAcls\",\"type\":\"boolean\"},\"blockPublicPolicy\":{\"locationName\":\"blockPublicPolicy\",\"type\":\"boolean\"},\"ignorePublicAcls\":{\"locationName\":\"ignorePublicAcls\",\"type\":\"boolean\"},\"restrictPublicBuckets\":{\"locationName\":\"restrictPublicBuckets\",\"type\":\"boolean\"}}},\"S2j\":{\"type\":\"structure\",\"members\":{\"key\":{\"locationName\":\"key\"},\"value\":{\"locationName\":\"value\"}}},\"S2k\":{\"type\":\"structure\",\"members\":{\"fileType\":{\"locationName\":\"fileType\",\"type\":\"long\"},\"storageClass\":{\"locationName\":\"storageClass\",\"type\":\"long\"},\"total\":{\"locationName\":\"total\",\"type\":\"long\"}}},\"S2o\":{\"type\":\"structure\",\"members\":{\"code\":{\"locationName\":\"code\"}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"jobExpiresAt\":{\"shape\":\"S9\",\"locationName\":\"jobExpiresAt\"},\"jobImminentExpirationHealthEventArn\":{\"locationName\":\"jobImminentExpirationHealthEventArn\"},\"jobPausedAt\":{\"shape\":\"S9\",\"locationName\":\"jobPausedAt\"}}},\"S3d\":{\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"invitationId\":{\"locationName\":\"invitationId\"},\"invitedAt\":{\"shape\":\"S9\",\"locationName\":\"invitedAt\"},\"relationshipStatus\":{\"locationName\":\"relationshipStatus\"}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"s3Destination\":{\"locationName\":\"s3Destination\",\"type\":\"structure\",\"members\":{\"bucketName\":{\"locationName\":\"bucketName\"},\"keyPrefix\":{\"locationName\":\"keyPrefix\"},\"kmsKeyArn\":{\"locationName\":\"kmsKeyArn\"}},\"required\":[\"bucketName\",\"kmsKeyArn\"]}}},\"S3y\":{\"type\":\"structure\",\"members\":{\"attributeName\":{\"locationName\":\"attributeName\"},\"orderBy\":{\"locationName\":\"orderBy\"}}},\"S48\":{\"type\":\"structure\",\"members\":{\"cells\":{\"locationName\":\"cells\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"cellReference\":{\"locationName\":\"cellReference\"},\"column\":{\"locationName\":\"column\",\"type\":\"long\"},\"columnName\":{\"locationName\":\"columnName\"},\"row\":{\"locationName\":\"row\",\"type\":\"long\"}}}},\"lineRanges\":{\"shape\":\"S4b\",\"locationName\":\"lineRanges\"},\"offsetRanges\":{\"shape\":\"S4b\",\"locationName\":\"offsetRanges\"},\"pages\":{\"locationName\":\"pages\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"lineRange\":{\"shape\":\"S4c\",\"locationName\":\"lineRange\"},\"offsetRange\":{\"shape\":\"S4c\",\"locationName\":\"offsetRange\"},\"pageNumber\":{\"locationName\":\"pageNumber\",\"type\":\"long\"}}}},\"records\":{\"locationName\":\"records\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jsonPath\":{\"locationName\":\"jsonPath\"},\"recordIndex\":{\"locationName\":\"recordIndex\",\"type\":\"long\"}}}}}},\"S4b\":{\"type\":\"list\",\"member\":{\"shape\":\"S4c\"}},\"S4c\":{\"type\":\"structure\",\"members\":{\"end\":{\"locationName\":\"end\",\"type\":\"long\"},\"start\":{\"locationName\":\"start\",\"type\":\"long\"},\"startColumn\":{\"locationName\":\"startColumn\",\"type\":\"long\"}}},\"S50\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"locationName\":\"attributes\",\"type\":\"structure\",\"members\":{\"creationDate\":{\"shape\":\"S9\",\"locationName\":\"creationDate\"},\"mfaAuthenticated\":{\"locationName\":\"mfaAuthenticated\",\"type\":\"boolean\"}}},\"sessionIssuer\":{\"locationName\":\"sessionIssuer\",\"type\":\"structure\",\"members\":{\"accountId\":{\"locationName\":\"accountId\"},\"arn\":{\"locationName\":\"arn\"},\"principalId\":{\"locationName\":\"principalId\"},\"type\":{\"locationName\":\"type\"},\"userName\":{\"locationName\":\"userName\"}}}}},\"S5b\":{\"type\":\"structure\",\"members\":{\"encryptionType\":{\"locationName\":\"encryptionType\"},\"kmsMasterKeyId\":{\"locationName\":\"kmsMasterKeyId\"}}},\"S5e\":{\"type\":\"list\",\"member\":{\"shape\":\"S2j\"}},\"S5n\":{\"type\":\"structure\",\"members\":{\"publishClassificationFindings\":{\"locationName\":\"publishClassificationFindings\",\"type\":\"boolean\"},\"publishPolicyFindings\":{\"locationName\":\"publishPolicyFindings\",\"type\":\"boolean\"}},\"required\":[\"publishPolicyFindings\",\"publishClassificationFindings\"]},\"S6j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"comparator\":{\"locationName\":\"comparator\"},\"key\":{\"locationName\":\"key\"},\"values\":{\"shape\":\"S5\",\"locationName\":\"values\"}}}}}}");

/***/ }),

/***/ 93284:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeBuckets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"buckets\"},\"GetUsageStatistics\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"records\"},\"ListClassificationJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"items\"},\"ListCustomDataIdentifiers\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"items\"},\"ListFindings\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"findingIds\"},\"ListFindingsFilters\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"findingsFilterListItems\"},\"ListInvitations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"invitations\"},\"ListMembers\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"members\"},\"ListOrganizationAdminAccounts\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"adminAccounts\"}}}");

/***/ }),

/***/ 70690:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-09-24\",\"endpointPrefix\":\"managedblockchain\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"ManagedBlockchain\",\"serviceFullName\":\"Amazon Managed Blockchain\",\"serviceId\":\"ManagedBlockchain\",\"signatureVersion\":\"v4\",\"signingName\":\"managedblockchain\",\"uid\":\"managedblockchain-2018-09-24\"},\"operations\":{\"CreateMember\":{\"http\":{\"requestUri\":\"/networks/{networkId}/members\"},\"input\":{\"type\":\"structure\",\"required\":[\"ClientRequestToken\",\"InvitationId\",\"NetworkId\",\"MemberConfiguration\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"InvitationId\":{},\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberConfiguration\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MemberId\":{}}}},\"CreateNetwork\":{\"http\":{\"requestUri\":\"/networks\"},\"input\":{\"type\":\"structure\",\"required\":[\"ClientRequestToken\",\"Name\",\"Framework\",\"FrameworkVersion\",\"VotingPolicy\",\"MemberConfiguration\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"Name\":{},\"Description\":{},\"Framework\":{},\"FrameworkVersion\":{},\"FrameworkConfiguration\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"required\":[\"Edition\"],\"members\":{\"Edition\":{}}}}},\"VotingPolicy\":{\"shape\":\"Sr\"},\"MemberConfiguration\":{\"shape\":\"S4\"},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NetworkId\":{},\"MemberId\":{}}}},\"CreateNode\":{\"http\":{\"requestUri\":\"/networks/{networkId}/nodes\"},\"input\":{\"type\":\"structure\",\"required\":[\"ClientRequestToken\",\"NetworkId\",\"NodeConfiguration\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{},\"NodeConfiguration\":{\"type\":\"structure\",\"required\":[\"InstanceType\"],\"members\":{\"InstanceType\":{},\"AvailabilityZone\":{},\"LogPublishingConfiguration\":{\"shape\":\"S11\"},\"StateDB\":{}}},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NodeId\":{}}}},\"CreateProposal\":{\"http\":{\"requestUri\":\"/networks/{networkId}/proposals\"},\"input\":{\"type\":\"structure\",\"required\":[\"ClientRequestToken\",\"NetworkId\",\"MemberId\",\"Actions\"],\"members\":{\"ClientRequestToken\":{\"idempotencyToken\":true},\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{},\"Actions\":{\"shape\":\"S16\"},\"Description\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProposalId\":{}}}},\"DeleteMember\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/networks/{networkId}/members/{memberId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"MemberId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{\"location\":\"uri\",\"locationName\":\"memberId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteNode\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/networks/{networkId}/nodes/{nodeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"NodeId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{\"location\":\"querystring\",\"locationName\":\"memberId\"},\"NodeId\":{\"location\":\"uri\",\"locationName\":\"nodeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetMember\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/members/{memberId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"MemberId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{\"location\":\"uri\",\"locationName\":\"memberId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Member\":{\"type\":\"structure\",\"members\":{\"NetworkId\":{},\"Id\":{},\"Name\":{},\"Description\":{},\"FrameworkAttributes\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"members\":{\"AdminUsername\":{},\"CaEndpoint\":{}}}}},\"LogPublishingConfiguration\":{\"shape\":\"Sb\"},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"Tags\":{\"shape\":\"S1p\"},\"Arn\":{}}}}}},\"GetNetwork\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Network\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"Framework\":{},\"FrameworkVersion\":{},\"FrameworkAttributes\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"members\":{\"OrderingServiceEndpoint\":{},\"Edition\":{}}},\"Ethereum\":{\"type\":\"structure\",\"members\":{\"ChainId\":{}}}}},\"VpcEndpointServiceName\":{},\"VotingPolicy\":{\"shape\":\"Sr\"},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"Tags\":{\"shape\":\"S1p\"},\"Arn\":{}}}}}},\"GetNode\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/nodes/{nodeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"NodeId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{\"location\":\"querystring\",\"locationName\":\"memberId\"},\"NodeId\":{\"location\":\"uri\",\"locationName\":\"nodeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Node\":{\"type\":\"structure\",\"members\":{\"NetworkId\":{},\"MemberId\":{},\"Id\":{},\"InstanceType\":{},\"AvailabilityZone\":{},\"FrameworkAttributes\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"members\":{\"PeerEndpoint\":{},\"PeerEventEndpoint\":{}}},\"Ethereum\":{\"type\":\"structure\",\"members\":{\"HttpEndpoint\":{},\"WebSocketEndpoint\":{}}}}},\"LogPublishingConfiguration\":{\"shape\":\"S11\"},\"StateDB\":{},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"Tags\":{\"shape\":\"S1p\"},\"Arn\":{}}}}}},\"GetProposal\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/proposals/{proposalId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"ProposalId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"ProposalId\":{\"location\":\"uri\",\"locationName\":\"proposalId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Proposal\":{\"type\":\"structure\",\"members\":{\"ProposalId\":{},\"NetworkId\":{},\"Description\":{},\"Actions\":{\"shape\":\"S16\"},\"ProposedByMemberId\":{},\"ProposedByMemberName\":{},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"ExpirationDate\":{\"shape\":\"S1o\"},\"YesVoteCount\":{\"type\":\"integer\"},\"NoVoteCount\":{\"type\":\"integer\"},\"OutstandingVoteCount\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S1p\"},\"Arn\":{}}}}}},\"ListInvitations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitations\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invitations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InvitationId\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"ExpirationDate\":{\"shape\":\"S1o\"},\"Status\":{},\"NetworkSummary\":{\"shape\":\"S2h\"},\"Arn\":{}}}},\"NextToken\":{}}}},\"ListMembers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/members\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"Name\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"Status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"IsOwned\":{\"location\":\"querystring\",\"locationName\":\"isOwned\",\"type\":\"boolean\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Members\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"IsOwned\":{\"type\":\"boolean\"},\"Arn\":{}}}},\"NextToken\":{}}}},\"ListNetworks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks\"},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"Framework\":{\"location\":\"querystring\",\"locationName\":\"framework\"},\"Status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Networks\":{\"type\":\"list\",\"member\":{\"shape\":\"S2h\"}},\"NextToken\":{}}}},\"ListNodes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/nodes\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{\"location\":\"querystring\",\"locationName\":\"memberId\"},\"Status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Nodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"AvailabilityZone\":{},\"InstanceType\":{},\"Arn\":{}}}},\"NextToken\":{}}}},\"ListProposalVotes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/proposals/{proposalId}/votes\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"ProposalId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"ProposalId\":{\"location\":\"uri\",\"locationName\":\"proposalId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProposalVotes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Vote\":{},\"MemberName\":{},\"MemberId\":{}}}},\"NextToken\":{}}}},\"ListProposals\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/networks/{networkId}/proposals\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Proposals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProposalId\":{},\"Description\":{},\"ProposedByMemberId\":{},\"ProposedByMemberName\":{},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"ExpirationDate\":{\"shape\":\"S1o\"},\"Arn\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1p\"}}}},\"RejectInvitation\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/invitations/{invitationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InvitationId\"],\"members\":{\"InvitationId\":{\"location\":\"uri\",\"locationName\":\"invitationId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateMember\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/networks/{networkId}/members/{memberId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"MemberId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{\"location\":\"uri\",\"locationName\":\"memberId\"},\"LogPublishingConfiguration\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateNode\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/networks/{networkId}/nodes/{nodeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"NodeId\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"MemberId\":{},\"NodeId\":{\"location\":\"uri\",\"locationName\":\"nodeId\"},\"LogPublishingConfiguration\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"VoteOnProposal\":{\"http\":{\"requestUri\":\"/networks/{networkId}/proposals/{proposalId}/votes\"},\"input\":{\"type\":\"structure\",\"required\":[\"NetworkId\",\"ProposalId\",\"VoterMemberId\",\"Vote\"],\"members\":{\"NetworkId\":{\"location\":\"uri\",\"locationName\":\"networkId\"},\"ProposalId\":{\"location\":\"uri\",\"locationName\":\"proposalId\"},\"VoterMemberId\":{},\"Vote\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"Name\",\"FrameworkConfiguration\"],\"members\":{\"Name\":{},\"Description\":{},\"FrameworkConfiguration\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"required\":[\"AdminUsername\",\"AdminPassword\"],\"members\":{\"AdminUsername\":{},\"AdminPassword\":{\"type\":\"string\",\"sensitive\":true}}}}},\"LogPublishingConfiguration\":{\"shape\":\"Sb\"},\"Tags\":{\"shape\":\"Sg\"}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"members\":{\"CaLogs\":{\"shape\":\"Sd\"}}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"Cloudwatch\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}}},\"Sg\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sr\":{\"type\":\"structure\",\"members\":{\"ApprovalThresholdPolicy\":{\"type\":\"structure\",\"members\":{\"ThresholdPercentage\":{\"type\":\"integer\"},\"ProposalDurationInHours\":{\"type\":\"integer\"},\"ThresholdComparator\":{}}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"Fabric\":{\"type\":\"structure\",\"members\":{\"ChaincodeLogs\":{\"shape\":\"Sd\"},\"PeerLogs\":{\"shape\":\"Sd\"}}}}},\"S16\":{\"type\":\"structure\",\"members\":{\"Invitations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Principal\"],\"members\":{\"Principal\":{}}}},\"Removals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MemberId\"],\"members\":{\"MemberId\":{}}}}}},\"S1o\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S1p\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2h\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"Framework\":{},\"FrameworkVersion\":{},\"Status\":{},\"CreationDate\":{\"shape\":\"S1o\"},\"Arn\":{}}}}}");

/***/ }),

/***/ 45932:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListInvitations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMembers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListNetworks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListNodes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListProposalVotes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListProposals\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 15560:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-09-17\",\"endpointPrefix\":\"catalog.marketplace\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWS Marketplace Catalog\",\"serviceFullName\":\"AWS Marketplace Catalog Service\",\"serviceId\":\"Marketplace Catalog\",\"signatureVersion\":\"v4\",\"signingName\":\"aws-marketplace\",\"uid\":\"marketplace-catalog-2018-09-17\"},\"operations\":{\"CancelChangeSet\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/CancelChangeSet\"},\"input\":{\"type\":\"structure\",\"required\":[\"Catalog\",\"ChangeSetId\"],\"members\":{\"Catalog\":{\"location\":\"querystring\",\"locationName\":\"catalog\"},\"ChangeSetId\":{\"location\":\"querystring\",\"locationName\":\"changeSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeSetId\":{},\"ChangeSetArn\":{}}}},\"DescribeChangeSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/DescribeChangeSet\"},\"input\":{\"type\":\"structure\",\"required\":[\"Catalog\",\"ChangeSetId\"],\"members\":{\"Catalog\":{\"location\":\"querystring\",\"locationName\":\"catalog\"},\"ChangeSetId\":{\"location\":\"querystring\",\"locationName\":\"changeSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeSetId\":{},\"ChangeSetArn\":{},\"ChangeSetName\":{},\"StartTime\":{},\"EndTime\":{},\"Status\":{},\"FailureCode\":{},\"FailureDescription\":{},\"ChangeSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ChangeType\":{},\"Entity\":{\"shape\":\"Sg\"},\"Details\":{},\"ErrorDetailList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}}}}},\"DescribeEntity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/DescribeEntity\"},\"input\":{\"type\":\"structure\",\"required\":[\"Catalog\",\"EntityId\"],\"members\":{\"Catalog\":{\"location\":\"querystring\",\"locationName\":\"catalog\"},\"EntityId\":{\"location\":\"querystring\",\"locationName\":\"entityId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntityType\":{},\"EntityIdentifier\":{},\"EntityArn\":{},\"LastModifiedDate\":{},\"Details\":{}}}},\"ListChangeSets\":{\"http\":{\"requestUri\":\"/ListChangeSets\"},\"input\":{\"type\":\"structure\",\"required\":[\"Catalog\"],\"members\":{\"Catalog\":{},\"FilterList\":{\"shape\":\"Sp\"},\"Sort\":{\"shape\":\"St\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeSetSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ChangeSetId\":{},\"ChangeSetArn\":{},\"ChangeSetName\":{},\"StartTime\":{},\"EndTime\":{},\"Status\":{},\"EntityIdList\":{\"type\":\"list\",\"member\":{}},\"FailureCode\":{}}}},\"NextToken\":{}}}},\"ListEntities\":{\"http\":{\"requestUri\":\"/ListEntities\"},\"input\":{\"type\":\"structure\",\"required\":[\"Catalog\",\"EntityType\"],\"members\":{\"Catalog\":{},\"EntityType\":{},\"FilterList\":{\"shape\":\"Sp\"},\"Sort\":{\"shape\":\"St\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntitySummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"EntityType\":{},\"EntityId\":{},\"EntityArn\":{},\"LastModifiedDate\":{},\"Visibility\":{}}}},\"NextToken\":{}}}},\"StartChangeSet\":{\"http\":{\"requestUri\":\"/StartChangeSet\"},\"input\":{\"type\":\"structure\",\"required\":[\"Catalog\",\"ChangeSet\"],\"members\":{\"Catalog\":{},\"ChangeSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ChangeType\",\"Entity\",\"Details\"],\"members\":{\"ChangeType\":{},\"Entity\":{\"shape\":\"Sg\"},\"Details\":{}}}},\"ChangeSetName\":{},\"ClientRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeSetId\":{},\"ChangeSetArn\":{}}}}},\"shapes\":{\"Sg\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Identifier\":{}}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ValueList\":{\"type\":\"list\",\"member\":{}}}}},\"St\":{\"type\":\"structure\",\"members\":{\"SortBy\":{},\"SortOrder\":{}}}}}");

/***/ }),

/***/ 23129:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListChangeSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListEntities\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 30768:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-07-01\",\"endpointPrefix\":\"marketplacecommerceanalytics\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Marketplace Commerce Analytics\",\"serviceId\":\"Marketplace Commerce Analytics\",\"signatureVersion\":\"v4\",\"signingName\":\"marketplacecommerceanalytics\",\"targetPrefix\":\"MarketplaceCommerceAnalytics20150701\",\"uid\":\"marketplacecommerceanalytics-2015-07-01\"},\"operations\":{\"GenerateDataSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"dataSetType\",\"dataSetPublicationDate\",\"roleNameArn\",\"destinationS3BucketName\",\"snsTopicArn\"],\"members\":{\"dataSetType\":{},\"dataSetPublicationDate\":{\"type\":\"timestamp\"},\"roleNameArn\":{},\"destinationS3BucketName\":{},\"destinationS3Prefix\":{},\"snsTopicArn\":{},\"customerDefinedValues\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataSetRequestId\":{}}}},\"StartSupportDataExport\":{\"input\":{\"type\":\"structure\",\"required\":[\"dataSetType\",\"fromDate\",\"roleNameArn\",\"destinationS3BucketName\",\"snsTopicArn\"],\"members\":{\"dataSetType\":{},\"fromDate\":{\"type\":\"timestamp\"},\"roleNameArn\":{},\"destinationS3BucketName\":{},\"destinationS3Prefix\":{},\"snsTopicArn\":{},\"customerDefinedValues\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataSetRequestId\":{}}}}},\"shapes\":{\"S8\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 88266:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 38828:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-11-14\",\"endpointPrefix\":\"mediaconnect\",\"signingName\":\"mediaconnect\",\"serviceFullName\":\"AWS MediaConnect\",\"serviceId\":\"MediaConnect\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"mediaconnect-2018-11-14\",\"signatureVersion\":\"v4\"},\"operations\":{\"AddFlowOutputs\":{\"http\":{\"requestUri\":\"/v1/flows/{flowArn}/outputs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"Outputs\":{\"shape\":\"S3\",\"locationName\":\"outputs\"}},\"required\":[\"FlowArn\",\"Outputs\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Outputs\":{\"shape\":\"Sd\",\"locationName\":\"outputs\"}}}},\"AddFlowSources\":{\"http\":{\"requestUri\":\"/v1/flows/{flowArn}/source\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"Sources\":{\"shape\":\"Sh\",\"locationName\":\"sources\"}},\"required\":[\"FlowArn\",\"Sources\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Sources\":{\"shape\":\"Sk\",\"locationName\":\"sources\"}}}},\"AddFlowVpcInterfaces\":{\"http\":{\"requestUri\":\"/v1/flows/{flowArn}/vpcInterfaces\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"VpcInterfaces\":{\"shape\":\"Sn\",\"locationName\":\"vpcInterfaces\"}},\"required\":[\"FlowArn\",\"VpcInterfaces\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"VpcInterfaces\":{\"shape\":\"Sq\",\"locationName\":\"vpcInterfaces\"}}}},\"CreateFlow\":{\"http\":{\"requestUri\":\"/v1/flows\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Entitlements\":{\"shape\":\"St\",\"locationName\":\"entitlements\"},\"Name\":{\"locationName\":\"name\"},\"Outputs\":{\"shape\":\"S3\",\"locationName\":\"outputs\"},\"Source\":{\"shape\":\"Si\",\"locationName\":\"source\"},\"SourceFailoverConfig\":{\"shape\":\"Sw\",\"locationName\":\"sourceFailoverConfig\"},\"Sources\":{\"shape\":\"Sh\",\"locationName\":\"sources\"},\"VpcInterfaces\":{\"shape\":\"Sn\",\"locationName\":\"vpcInterfaces\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Flow\":{\"shape\":\"Sz\",\"locationName\":\"flow\"}}}},\"DeleteFlow\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/flows/{flowArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"}},\"required\":[\"FlowArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Status\":{\"locationName\":\"status\"}}}},\"DescribeFlow\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/flows/{flowArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"}},\"required\":[\"FlowArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Flow\":{\"shape\":\"Sz\",\"locationName\":\"flow\"},\"Messages\":{\"locationName\":\"messages\",\"type\":\"structure\",\"members\":{\"Errors\":{\"shape\":\"S5\",\"locationName\":\"errors\"}},\"required\":[\"Errors\"]}}}},\"DescribeOffering\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/offerings/{offeringArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"OfferingArn\":{\"location\":\"uri\",\"locationName\":\"offeringArn\"}},\"required\":[\"OfferingArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Offering\":{\"shape\":\"S1a\",\"locationName\":\"offering\"}}}},\"DescribeReservation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/reservations/{reservationArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ReservationArn\":{\"location\":\"uri\",\"locationName\":\"reservationArn\"}},\"required\":[\"ReservationArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Reservation\":{\"shape\":\"S1h\",\"locationName\":\"reservation\"}}}},\"GrantFlowEntitlements\":{\"http\":{\"requestUri\":\"/v1/flows/{flowArn}/entitlements\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Entitlements\":{\"shape\":\"St\",\"locationName\":\"entitlements\"},\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"}},\"required\":[\"FlowArn\",\"Entitlements\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Entitlements\":{\"shape\":\"S10\",\"locationName\":\"entitlements\"},\"FlowArn\":{\"locationName\":\"flowArn\"}}}},\"ListEntitlements\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/entitlements\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entitlements\":{\"locationName\":\"entitlements\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataTransferSubscriberFeePercent\":{\"locationName\":\"dataTransferSubscriberFeePercent\",\"type\":\"integer\"},\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"EntitlementName\":{\"locationName\":\"entitlementName\"}},\"required\":[\"EntitlementArn\",\"EntitlementName\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListFlows\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/flows\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Flows\":{\"locationName\":\"flows\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Description\":{\"locationName\":\"description\"},\"FlowArn\":{\"locationName\":\"flowArn\"},\"Name\":{\"locationName\":\"name\"},\"SourceType\":{\"locationName\":\"sourceType\"},\"Status\":{\"locationName\":\"status\"}},\"required\":[\"Status\",\"Description\",\"SourceType\",\"AvailabilityZone\",\"FlowArn\",\"Name\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListOfferings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/offerings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Offerings\":{\"locationName\":\"offerings\",\"type\":\"list\",\"member\":{\"shape\":\"S1a\"}}}}},\"ListReservations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/reservations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Reservations\":{\"locationName\":\"reservations\",\"type\":\"list\",\"member\":{\"shape\":\"S1h\"}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S23\",\"locationName\":\"tags\"}}}},\"PurchaseOffering\":{\"http\":{\"requestUri\":\"/v1/offerings/{offeringArn}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"OfferingArn\":{\"location\":\"uri\",\"locationName\":\"offeringArn\"},\"ReservationName\":{\"locationName\":\"reservationName\"},\"Start\":{\"locationName\":\"start\"}},\"required\":[\"OfferingArn\",\"Start\",\"ReservationName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Reservation\":{\"shape\":\"S1h\",\"locationName\":\"reservation\"}}}},\"RemoveFlowOutput\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/flows/{flowArn}/outputs/{outputArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"OutputArn\":{\"location\":\"uri\",\"locationName\":\"outputArn\"}},\"required\":[\"FlowArn\",\"OutputArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"OutputArn\":{\"locationName\":\"outputArn\"}}}},\"RemoveFlowSource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/flows/{flowArn}/source/{sourceArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"SourceArn\":{\"location\":\"uri\",\"locationName\":\"sourceArn\"}},\"required\":[\"FlowArn\",\"SourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"SourceArn\":{\"locationName\":\"sourceArn\"}}}},\"RemoveFlowVpcInterface\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/flows/{flowArn}/vpcInterfaces/{vpcInterfaceName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"VpcInterfaceName\":{\"location\":\"uri\",\"locationName\":\"vpcInterfaceName\"}},\"required\":[\"FlowArn\",\"VpcInterfaceName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"NonDeletedNetworkInterfaceIds\":{\"shape\":\"S5\",\"locationName\":\"nonDeletedNetworkInterfaceIds\"},\"VpcInterfaceName\":{\"locationName\":\"vpcInterfaceName\"}}}},\"RevokeFlowEntitlement\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/flows/{flowArn}/entitlements/{entitlementArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"EntitlementArn\":{\"location\":\"uri\",\"locationName\":\"entitlementArn\"},\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"}},\"required\":[\"FlowArn\",\"EntitlementArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"FlowArn\":{\"locationName\":\"flowArn\"}}}},\"StartFlow\":{\"http\":{\"requestUri\":\"/v1/flows/start/{flowArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"}},\"required\":[\"FlowArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Status\":{\"locationName\":\"status\"}}}},\"StopFlow\":{\"http\":{\"requestUri\":\"/v1/flows/stop/{flowArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"}},\"required\":[\"FlowArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Status\":{\"locationName\":\"status\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"S23\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\",\"Tags\"]}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"shape\":\"S5\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateFlow\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/flows/{flowArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"SourceFailoverConfig\":{\"locationName\":\"sourceFailoverConfig\",\"type\":\"structure\",\"members\":{\"RecoveryWindow\":{\"locationName\":\"recoveryWindow\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"}}}},\"required\":[\"FlowArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Flow\":{\"shape\":\"Sz\",\"locationName\":\"flow\"}}}},\"UpdateFlowEntitlement\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/flows/{flowArn}/entitlements/{entitlementArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"Encryption\":{\"shape\":\"S2o\",\"locationName\":\"encryption\"},\"EntitlementArn\":{\"location\":\"uri\",\"locationName\":\"entitlementArn\"},\"EntitlementStatus\":{\"locationName\":\"entitlementStatus\"},\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"Subscribers\":{\"shape\":\"S5\",\"locationName\":\"subscribers\"}},\"required\":[\"FlowArn\",\"EntitlementArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Entitlement\":{\"shape\":\"S11\",\"locationName\":\"entitlement\"},\"FlowArn\":{\"locationName\":\"flowArn\"}}}},\"UpdateFlowOutput\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/flows/{flowArn}/outputs/{outputArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"CidrAllowList\":{\"shape\":\"S5\",\"locationName\":\"cidrAllowList\"},\"Description\":{\"locationName\":\"description\"},\"Destination\":{\"locationName\":\"destination\"},\"Encryption\":{\"shape\":\"S2o\",\"locationName\":\"encryption\"},\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"MaxLatency\":{\"locationName\":\"maxLatency\",\"type\":\"integer\"},\"MinLatency\":{\"locationName\":\"minLatency\",\"type\":\"integer\"},\"OutputArn\":{\"location\":\"uri\",\"locationName\":\"outputArn\"},\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RemoteId\":{\"locationName\":\"remoteId\"},\"SmoothingLatency\":{\"locationName\":\"smoothingLatency\",\"type\":\"integer\"},\"StreamId\":{\"locationName\":\"streamId\"},\"VpcInterfaceAttachment\":{\"shape\":\"Sb\",\"locationName\":\"vpcInterfaceAttachment\"}},\"required\":[\"FlowArn\",\"OutputArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Output\":{\"shape\":\"Se\",\"locationName\":\"output\"}}}},\"UpdateFlowSource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/flows/{flowArn}/source/{sourceArn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Decryption\":{\"shape\":\"S2o\",\"locationName\":\"decryption\"},\"Description\":{\"locationName\":\"description\"},\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"FlowArn\":{\"location\":\"uri\",\"locationName\":\"flowArn\"},\"IngestPort\":{\"locationName\":\"ingestPort\",\"type\":\"integer\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MaxLatency\":{\"locationName\":\"maxLatency\",\"type\":\"integer\"},\"MinLatency\":{\"locationName\":\"minLatency\",\"type\":\"integer\"},\"Protocol\":{\"locationName\":\"protocol\"},\"SourceArn\":{\"location\":\"uri\",\"locationName\":\"sourceArn\"},\"StreamId\":{\"locationName\":\"streamId\"},\"VpcInterfaceName\":{\"locationName\":\"vpcInterfaceName\"},\"WhitelistCidr\":{\"locationName\":\"whitelistCidr\"}},\"required\":[\"FlowArn\",\"SourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"},\"Source\":{\"shape\":\"Sl\",\"locationName\":\"source\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CidrAllowList\":{\"shape\":\"S5\",\"locationName\":\"cidrAllowList\"},\"Description\":{\"locationName\":\"description\"},\"Destination\":{\"locationName\":\"destination\"},\"Encryption\":{\"shape\":\"S6\",\"locationName\":\"encryption\"},\"MaxLatency\":{\"locationName\":\"maxLatency\",\"type\":\"integer\"},\"MinLatency\":{\"locationName\":\"minLatency\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RemoteId\":{\"locationName\":\"remoteId\"},\"SmoothingLatency\":{\"locationName\":\"smoothingLatency\",\"type\":\"integer\"},\"StreamId\":{\"locationName\":\"streamId\"},\"VpcInterfaceAttachment\":{\"shape\":\"Sb\",\"locationName\":\"vpcInterfaceAttachment\"}},\"required\":[\"Protocol\"]}},\"S5\":{\"type\":\"list\",\"member\":{}},\"S6\":{\"type\":\"structure\",\"members\":{\"Algorithm\":{\"locationName\":\"algorithm\"},\"ConstantInitializationVector\":{\"locationName\":\"constantInitializationVector\"},\"DeviceId\":{\"locationName\":\"deviceId\"},\"KeyType\":{\"locationName\":\"keyType\"},\"Region\":{\"locationName\":\"region\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SecretArn\":{\"locationName\":\"secretArn\"},\"Url\":{\"locationName\":\"url\"}},\"required\":[\"RoleArn\"]},\"Sb\":{\"type\":\"structure\",\"members\":{\"VpcInterfaceName\":{\"locationName\":\"vpcInterfaceName\"}}},\"Sd\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}},\"Se\":{\"type\":\"structure\",\"members\":{\"DataTransferSubscriberFeePercent\":{\"locationName\":\"dataTransferSubscriberFeePercent\",\"type\":\"integer\"},\"Description\":{\"locationName\":\"description\"},\"Destination\":{\"locationName\":\"destination\"},\"Encryption\":{\"shape\":\"S6\",\"locationName\":\"encryption\"},\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"ListenerAddress\":{\"locationName\":\"listenerAddress\"},\"MediaLiveInputArn\":{\"locationName\":\"mediaLiveInputArn\"},\"Name\":{\"locationName\":\"name\"},\"OutputArn\":{\"locationName\":\"outputArn\"},\"Port\":{\"locationName\":\"port\",\"type\":\"integer\"},\"Transport\":{\"shape\":\"Sf\",\"locationName\":\"transport\"},\"VpcInterfaceAttachment\":{\"shape\":\"Sb\",\"locationName\":\"vpcInterfaceAttachment\"}},\"required\":[\"OutputArn\",\"Name\"]},\"Sf\":{\"type\":\"structure\",\"members\":{\"CidrAllowList\":{\"shape\":\"S5\",\"locationName\":\"cidrAllowList\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MaxLatency\":{\"locationName\":\"maxLatency\",\"type\":\"integer\"},\"MinLatency\":{\"locationName\":\"minLatency\",\"type\":\"integer\"},\"Protocol\":{\"locationName\":\"protocol\"},\"RemoteId\":{\"locationName\":\"remoteId\"},\"SmoothingLatency\":{\"locationName\":\"smoothingLatency\",\"type\":\"integer\"},\"StreamId\":{\"locationName\":\"streamId\"}},\"required\":[\"Protocol\"]},\"Sh\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"Si\":{\"type\":\"structure\",\"members\":{\"Decryption\":{\"shape\":\"S6\",\"locationName\":\"decryption\"},\"Description\":{\"locationName\":\"description\"},\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"IngestPort\":{\"locationName\":\"ingestPort\",\"type\":\"integer\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MaxLatency\":{\"locationName\":\"maxLatency\",\"type\":\"integer\"},\"MinLatency\":{\"locationName\":\"minLatency\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"Protocol\":{\"locationName\":\"protocol\"},\"StreamId\":{\"locationName\":\"streamId\"},\"VpcInterfaceName\":{\"locationName\":\"vpcInterfaceName\"},\"WhitelistCidr\":{\"locationName\":\"whitelistCidr\"}}},\"Sk\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\"}},\"Sl\":{\"type\":\"structure\",\"members\":{\"DataTransferSubscriberFeePercent\":{\"locationName\":\"dataTransferSubscriberFeePercent\",\"type\":\"integer\"},\"Decryption\":{\"shape\":\"S6\",\"locationName\":\"decryption\"},\"Description\":{\"locationName\":\"description\"},\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"IngestIp\":{\"locationName\":\"ingestIp\"},\"IngestPort\":{\"locationName\":\"ingestPort\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"SourceArn\":{\"locationName\":\"sourceArn\"},\"Transport\":{\"shape\":\"Sf\",\"locationName\":\"transport\"},\"VpcInterfaceName\":{\"locationName\":\"vpcInterfaceName\"},\"WhitelistCidr\":{\"locationName\":\"whitelistCidr\"}},\"required\":[\"SourceArn\",\"Name\"]},\"Sn\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SecurityGroupIds\":{\"shape\":\"S5\",\"locationName\":\"securityGroupIds\"},\"SubnetId\":{\"locationName\":\"subnetId\"}},\"required\":[\"SubnetId\",\"SecurityGroupIds\",\"RoleArn\",\"Name\"]}},\"Sq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"NetworkInterfaceIds\":{\"shape\":\"S5\",\"locationName\":\"networkInterfaceIds\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SecurityGroupIds\":{\"shape\":\"S5\",\"locationName\":\"securityGroupIds\"},\"SubnetId\":{\"locationName\":\"subnetId\"}},\"required\":[\"NetworkInterfaceIds\",\"SubnetId\",\"SecurityGroupIds\",\"RoleArn\",\"Name\"]}},\"St\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataTransferSubscriberFeePercent\":{\"locationName\":\"dataTransferSubscriberFeePercent\",\"type\":\"integer\"},\"Description\":{\"locationName\":\"description\"},\"Encryption\":{\"shape\":\"S6\",\"locationName\":\"encryption\"},\"EntitlementStatus\":{\"locationName\":\"entitlementStatus\"},\"Name\":{\"locationName\":\"name\"},\"Subscribers\":{\"shape\":\"S5\",\"locationName\":\"subscribers\"}},\"required\":[\"Subscribers\"]}},\"Sw\":{\"type\":\"structure\",\"members\":{\"RecoveryWindow\":{\"locationName\":\"recoveryWindow\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"Description\":{\"locationName\":\"description\"},\"EgressIp\":{\"locationName\":\"egressIp\"},\"Entitlements\":{\"shape\":\"S10\",\"locationName\":\"entitlements\"},\"FlowArn\":{\"locationName\":\"flowArn\"},\"Name\":{\"locationName\":\"name\"},\"Outputs\":{\"shape\":\"Sd\",\"locationName\":\"outputs\"},\"Source\":{\"shape\":\"Sl\",\"locationName\":\"source\"},\"SourceFailoverConfig\":{\"shape\":\"Sw\",\"locationName\":\"sourceFailoverConfig\"},\"Sources\":{\"shape\":\"Sk\",\"locationName\":\"sources\"},\"Status\":{\"locationName\":\"status\"},\"VpcInterfaces\":{\"shape\":\"Sq\",\"locationName\":\"vpcInterfaces\"}},\"required\":[\"Status\",\"Entitlements\",\"Outputs\",\"AvailabilityZone\",\"FlowArn\",\"Source\",\"Name\"]},\"S10\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\"}},\"S11\":{\"type\":\"structure\",\"members\":{\"DataTransferSubscriberFeePercent\":{\"locationName\":\"dataTransferSubscriberFeePercent\",\"type\":\"integer\"},\"Description\":{\"locationName\":\"description\"},\"Encryption\":{\"shape\":\"S6\",\"locationName\":\"encryption\"},\"EntitlementArn\":{\"locationName\":\"entitlementArn\"},\"EntitlementStatus\":{\"locationName\":\"entitlementStatus\"},\"Name\":{\"locationName\":\"name\"},\"Subscribers\":{\"shape\":\"S5\",\"locationName\":\"subscribers\"}},\"required\":[\"EntitlementArn\",\"Subscribers\",\"Name\"]},\"S1a\":{\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"OfferingArn\":{\"locationName\":\"offeringArn\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"PricePerUnit\":{\"locationName\":\"pricePerUnit\"},\"PriceUnits\":{\"locationName\":\"priceUnits\"},\"ResourceSpecification\":{\"shape\":\"S1d\",\"locationName\":\"resourceSpecification\"}},\"required\":[\"CurrencyCode\",\"OfferingArn\",\"OfferingDescription\",\"DurationUnits\",\"Duration\",\"PricePerUnit\",\"ResourceSpecification\",\"PriceUnits\"]},\"S1d\":{\"type\":\"structure\",\"members\":{\"ReservedBitrate\":{\"locationName\":\"reservedBitrate\",\"type\":\"integer\"},\"ResourceType\":{\"locationName\":\"resourceType\"}},\"required\":[\"ResourceType\"]},\"S1h\":{\"type\":\"structure\",\"members\":{\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"End\":{\"locationName\":\"end\"},\"OfferingArn\":{\"locationName\":\"offeringArn\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"PricePerUnit\":{\"locationName\":\"pricePerUnit\"},\"PriceUnits\":{\"locationName\":\"priceUnits\"},\"ReservationArn\":{\"locationName\":\"reservationArn\"},\"ReservationName\":{\"locationName\":\"reservationName\"},\"ReservationState\":{\"locationName\":\"reservationState\"},\"ResourceSpecification\":{\"shape\":\"S1d\",\"locationName\":\"resourceSpecification\"},\"Start\":{\"locationName\":\"start\"}},\"required\":[\"CurrencyCode\",\"ReservationState\",\"OfferingArn\",\"ReservationArn\",\"Start\",\"OfferingDescription\",\"ReservationName\",\"End\",\"Duration\",\"DurationUnits\",\"PricePerUnit\",\"ResourceSpecification\",\"PriceUnits\"]},\"S23\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2o\":{\"type\":\"structure\",\"members\":{\"Algorithm\":{\"locationName\":\"algorithm\"},\"ConstantInitializationVector\":{\"locationName\":\"constantInitializationVector\"},\"DeviceId\":{\"locationName\":\"deviceId\"},\"KeyType\":{\"locationName\":\"keyType\"},\"Region\":{\"locationName\":\"region\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SecretArn\":{\"locationName\":\"secretArn\"},\"Url\":{\"locationName\":\"url\"}}}}}");

/***/ }),

/***/ 52701:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListEntitlements\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Entitlements\"},\"ListFlows\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Flows\"},\"ListOfferings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Offerings\"},\"ListReservations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Reservations\"}}}");

/***/ }),

/***/ 69547:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"FlowActive\":{\"description\":\"Wait until a flow is active\",\"operation\":\"DescribeFlow\",\"delay\":3,\"maxAttempts\":40,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"ACTIVE\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"STARTING\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"UPDATING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":503},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"ERROR\"}]},\"FlowStandby\":{\"description\":\"Wait until a flow is in standby mode\",\"operation\":\"DescribeFlow\",\"delay\":3,\"maxAttempts\":40,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"STANDBY\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"STOPPING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":503},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"ERROR\"}]},\"FlowDeleted\":{\"description\":\"Wait until a flow is deleted\",\"operation\":\"DescribeFlow\",\"delay\":3,\"maxAttempts\":40,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"status\",\"expected\":404},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"DELETING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":503},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"Flow.Status\",\"expected\":\"ERROR\"}]}}}");

/***/ }),

/***/ 95103:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-08-29\",\"endpointPrefix\":\"mediaconvert\",\"signingName\":\"mediaconvert\",\"serviceFullName\":\"AWS Elemental MediaConvert\",\"serviceId\":\"MediaConvert\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"mediaconvert-2017-08-29\",\"signatureVersion\":\"v4\",\"serviceAbbreviation\":\"MediaConvert\"},\"operations\":{\"AssociateCertificate\":{\"http\":{\"requestUri\":\"/2017-08-29/certificates\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelJob\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-08-29/jobs/{id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\",\"location\":\"uri\"}},\"required\":[\"Id\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateJob\":{\"http\":{\"requestUri\":\"/2017-08-29/jobs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"AccelerationSettings\":{\"shape\":\"S7\",\"locationName\":\"accelerationSettings\"},\"BillingTagsSource\":{\"locationName\":\"billingTagsSource\"},\"ClientRequestToken\":{\"locationName\":\"clientRequestToken\",\"idempotencyToken\":true},\"HopDestinations\":{\"shape\":\"Sa\",\"locationName\":\"hopDestinations\"},\"JobTemplate\":{\"locationName\":\"jobTemplate\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"},\"Queue\":{\"locationName\":\"queue\"},\"Role\":{\"locationName\":\"role\"},\"Settings\":{\"shape\":\"Se\",\"locationName\":\"settings\"},\"SimulateReservedQueue\":{\"locationName\":\"simulateReservedQueue\"},\"StatusUpdateInterval\":{\"locationName\":\"statusUpdateInterval\"},\"Tags\":{\"shape\":\"Sgv\",\"locationName\":\"tags\"},\"UserMetadata\":{\"shape\":\"Sgv\",\"locationName\":\"userMetadata\"}},\"required\":[\"Role\",\"Settings\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Job\":{\"shape\":\"Sgx\",\"locationName\":\"job\"}}}},\"CreateJobTemplate\":{\"http\":{\"requestUri\":\"/2017-08-29/jobTemplates\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"AccelerationSettings\":{\"shape\":\"S7\",\"locationName\":\"accelerationSettings\"},\"Category\":{\"locationName\":\"category\"},\"Description\":{\"locationName\":\"description\"},\"HopDestinations\":{\"shape\":\"Sa\",\"locationName\":\"hopDestinations\"},\"Name\":{\"locationName\":\"name\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"},\"Queue\":{\"locationName\":\"queue\"},\"Settings\":{\"shape\":\"Shd\",\"locationName\":\"settings\"},\"StatusUpdateInterval\":{\"locationName\":\"statusUpdateInterval\"},\"Tags\":{\"shape\":\"Sgv\",\"locationName\":\"tags\"}},\"required\":[\"Settings\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JobTemplate\":{\"shape\":\"Shh\",\"locationName\":\"jobTemplate\"}}}},\"CreatePreset\":{\"http\":{\"requestUri\":\"/2017-08-29/presets\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Category\":{\"locationName\":\"category\"},\"Description\":{\"locationName\":\"description\"},\"Name\":{\"locationName\":\"name\"},\"Settings\":{\"shape\":\"Shk\",\"locationName\":\"settings\"},\"Tags\":{\"shape\":\"Sgv\",\"locationName\":\"tags\"}},\"required\":[\"Settings\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Preset\":{\"shape\":\"Sho\",\"locationName\":\"preset\"}}}},\"CreateQueue\":{\"http\":{\"requestUri\":\"/2017-08-29/queues\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"Name\":{\"locationName\":\"name\"},\"PricingPlan\":{\"locationName\":\"pricingPlan\"},\"ReservationPlanSettings\":{\"shape\":\"Shr\",\"locationName\":\"reservationPlanSettings\"},\"Status\":{\"locationName\":\"status\"},\"Tags\":{\"shape\":\"Sgv\",\"locationName\":\"tags\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Queue\":{\"shape\":\"Shw\",\"locationName\":\"queue\"}}}},\"DeleteJobTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-08-29/jobTemplates/{name}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePreset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-08-29/presets/{name}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteQueue\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-08-29/queues/{name}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeEndpoints\":{\"http\":{\"requestUri\":\"/2017-08-29/endpoints\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"Mode\":{\"locationName\":\"mode\"},\"NextToken\":{\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Endpoints\":{\"locationName\":\"endpoints\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Url\":{\"locationName\":\"url\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DisassociateCertificate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2017-08-29/certificates/{arn}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\",\"location\":\"uri\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/jobs/{id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\",\"location\":\"uri\"}},\"required\":[\"Id\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Job\":{\"shape\":\"Sgx\",\"locationName\":\"job\"}}}},\"GetJobTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/jobTemplates/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JobTemplate\":{\"shape\":\"Shh\",\"locationName\":\"jobTemplate\"}}}},\"GetPreset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/presets/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Preset\":{\"shape\":\"Sho\",\"locationName\":\"preset\"}}}},\"GetQueue\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/queues/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Queue\":{\"shape\":\"Shw\",\"locationName\":\"queue\"}}}},\"ListJobTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/jobTemplates\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Category\":{\"locationName\":\"category\",\"location\":\"querystring\"},\"ListBy\":{\"locationName\":\"listBy\",\"location\":\"querystring\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"location\":\"querystring\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\",\"location\":\"querystring\"},\"Order\":{\"locationName\":\"order\",\"location\":\"querystring\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobTemplates\":{\"locationName\":\"jobTemplates\",\"type\":\"list\",\"member\":{\"shape\":\"Shh\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/jobs\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"locationName\":\"maxResults\",\"location\":\"querystring\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\",\"location\":\"querystring\"},\"Order\":{\"locationName\":\"order\",\"location\":\"querystring\"},\"Queue\":{\"locationName\":\"queue\",\"location\":\"querystring\"},\"Status\":{\"locationName\":\"status\",\"location\":\"querystring\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"locationName\":\"jobs\",\"type\":\"list\",\"member\":{\"shape\":\"Sgx\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListPresets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/presets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Category\":{\"locationName\":\"category\",\"location\":\"querystring\"},\"ListBy\":{\"locationName\":\"listBy\",\"location\":\"querystring\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"location\":\"querystring\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\",\"location\":\"querystring\"},\"Order\":{\"locationName\":\"order\",\"location\":\"querystring\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Presets\":{\"locationName\":\"presets\",\"type\":\"list\",\"member\":{\"shape\":\"Sho\"}}}}},\"ListQueues\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/queues\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ListBy\":{\"locationName\":\"listBy\",\"location\":\"querystring\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"location\":\"querystring\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\",\"location\":\"querystring\"},\"Order\":{\"locationName\":\"order\",\"location\":\"querystring\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Queues\":{\"locationName\":\"queues\",\"type\":\"list\",\"member\":{\"shape\":\"Shw\"}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2017-08-29/tags/{arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\",\"location\":\"uri\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceTags\":{\"locationName\":\"resourceTags\",\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Tags\":{\"shape\":\"Sgv\",\"locationName\":\"tags\"}}}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/2017-08-29/tags\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Tags\":{\"shape\":\"Sgv\",\"locationName\":\"tags\"}},\"required\":[\"Arn\",\"Tags\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-08-29/tags/{arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\",\"location\":\"uri\"},\"TagKeys\":{\"shape\":\"Sh2\",\"locationName\":\"tagKeys\"}},\"required\":[\"Arn\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateJobTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-08-29/jobTemplates/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AccelerationSettings\":{\"shape\":\"S7\",\"locationName\":\"accelerationSettings\"},\"Category\":{\"locationName\":\"category\"},\"Description\":{\"locationName\":\"description\"},\"HopDestinations\":{\"shape\":\"Sa\",\"locationName\":\"hopDestinations\"},\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"},\"Queue\":{\"locationName\":\"queue\"},\"Settings\":{\"shape\":\"Shd\",\"locationName\":\"settings\"},\"StatusUpdateInterval\":{\"locationName\":\"statusUpdateInterval\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JobTemplate\":{\"shape\":\"Shh\",\"locationName\":\"jobTemplate\"}}}},\"UpdatePreset\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-08-29/presets/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Category\":{\"locationName\":\"category\"},\"Description\":{\"locationName\":\"description\"},\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"},\"Settings\":{\"shape\":\"Shk\",\"locationName\":\"settings\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Preset\":{\"shape\":\"Sho\",\"locationName\":\"preset\"}}}},\"UpdateQueue\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/2017-08-29/queues/{name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{\"locationName\":\"description\"},\"Name\":{\"locationName\":\"name\",\"location\":\"uri\"},\"ReservationPlanSettings\":{\"shape\":\"Shr\",\"locationName\":\"reservationPlanSettings\"},\"Status\":{\"locationName\":\"status\"}},\"required\":[\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Queue\":{\"shape\":\"Shw\",\"locationName\":\"queue\"}}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"members\":{\"Mode\":{\"locationName\":\"mode\"}},\"required\":[\"Mode\"]},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"},\"Queue\":{\"locationName\":\"queue\"},\"WaitMinutes\":{\"locationName\":\"waitMinutes\",\"type\":\"integer\"}}}},\"Se\":{\"type\":\"structure\",\"members\":{\"AdAvailOffset\":{\"locationName\":\"adAvailOffset\",\"type\":\"integer\"},\"AvailBlanking\":{\"shape\":\"Sg\",\"locationName\":\"availBlanking\"},\"Esam\":{\"shape\":\"Si\",\"locationName\":\"esam\"},\"Inputs\":{\"locationName\":\"inputs\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AudioSelectorGroups\":{\"shape\":\"Sq\",\"locationName\":\"audioSelectorGroups\"},\"AudioSelectors\":{\"shape\":\"Su\",\"locationName\":\"audioSelectors\"},\"CaptionSelectors\":{\"shape\":\"S1e\",\"locationName\":\"captionSelectors\"},\"Crop\":{\"shape\":\"S20\",\"locationName\":\"crop\"},\"DeblockFilter\":{\"locationName\":\"deblockFilter\"},\"DecryptionSettings\":{\"locationName\":\"decryptionSettings\",\"type\":\"structure\",\"members\":{\"DecryptionMode\":{\"locationName\":\"decryptionMode\"},\"EncryptedDecryptionKey\":{\"locationName\":\"encryptedDecryptionKey\"},\"InitializationVector\":{\"locationName\":\"initializationVector\"},\"KmsKeyRegion\":{\"locationName\":\"kmsKeyRegion\"}}},\"DenoiseFilter\":{\"locationName\":\"denoiseFilter\"},\"FileInput\":{\"locationName\":\"fileInput\"},\"FilterEnable\":{\"locationName\":\"filterEnable\"},\"FilterStrength\":{\"locationName\":\"filterStrength\",\"type\":\"integer\"},\"ImageInserter\":{\"shape\":\"S2d\",\"locationName\":\"imageInserter\"},\"InputClippings\":{\"shape\":\"S2k\",\"locationName\":\"inputClippings\"},\"InputScanType\":{\"locationName\":\"inputScanType\"},\"Position\":{\"shape\":\"S20\",\"locationName\":\"position\"},\"ProgramNumber\":{\"locationName\":\"programNumber\",\"type\":\"integer\"},\"PsiControl\":{\"locationName\":\"psiControl\"},\"SupplementalImps\":{\"locationName\":\"supplementalImps\",\"type\":\"list\",\"member\":{}},\"TimecodeSource\":{\"locationName\":\"timecodeSource\"},\"TimecodeStart\":{\"locationName\":\"timecodeStart\"},\"VideoSelector\":{\"shape\":\"S2t\",\"locationName\":\"videoSelector\"}}}},\"MotionImageInserter\":{\"shape\":\"S31\",\"locationName\":\"motionImageInserter\"},\"NielsenConfiguration\":{\"shape\":\"S39\",\"locationName\":\"nielsenConfiguration\"},\"NielsenNonLinearWatermark\":{\"shape\":\"S3b\",\"locationName\":\"nielsenNonLinearWatermark\"},\"OutputGroups\":{\"shape\":\"S3l\",\"locationName\":\"outputGroups\"},\"TimecodeConfig\":{\"shape\":\"Sgm\",\"locationName\":\"timecodeConfig\"},\"TimedMetadataInsertion\":{\"shape\":\"Sgp\",\"locationName\":\"timedMetadataInsertion\"}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"AvailBlankingImage\":{\"locationName\":\"availBlankingImage\"}}},\"Si\":{\"type\":\"structure\",\"members\":{\"ManifestConfirmConditionNotification\":{\"locationName\":\"manifestConfirmConditionNotification\",\"type\":\"structure\",\"members\":{\"MccXml\":{\"locationName\":\"mccXml\"}}},\"ResponseSignalPreroll\":{\"locationName\":\"responseSignalPreroll\",\"type\":\"integer\"},\"SignalProcessingNotification\":{\"locationName\":\"signalProcessingNotification\",\"type\":\"structure\",\"members\":{\"SccXml\":{\"locationName\":\"sccXml\"}}}}},\"Sq\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"AudioSelectorNames\":{\"shape\":\"Ss\",\"locationName\":\"audioSelectorNames\"}}}},\"Ss\":{\"type\":\"list\",\"member\":{}},\"Su\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"CustomLanguageCode\":{\"locationName\":\"customLanguageCode\"},\"DefaultSelection\":{\"locationName\":\"defaultSelection\"},\"ExternalAudioFileInput\":{\"locationName\":\"externalAudioFileInput\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"Offset\":{\"locationName\":\"offset\",\"type\":\"integer\"},\"Pids\":{\"shape\":\"S11\",\"locationName\":\"pids\"},\"ProgramSelection\":{\"locationName\":\"programSelection\",\"type\":\"integer\"},\"RemixSettings\":{\"shape\":\"S14\",\"locationName\":\"remixSettings\"},\"SelectorType\":{\"locationName\":\"selectorType\"},\"Tracks\":{\"shape\":\"S11\",\"locationName\":\"tracks\"}}}},\"S11\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"S14\":{\"type\":\"structure\",\"members\":{\"ChannelMapping\":{\"locationName\":\"channelMapping\",\"type\":\"structure\",\"members\":{\"OutputChannels\":{\"locationName\":\"outputChannels\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InputChannels\":{\"locationName\":\"inputChannels\",\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"InputChannelsFineTune\":{\"locationName\":\"inputChannelsFineTune\",\"type\":\"list\",\"member\":{\"type\":\"double\"}}}}}}},\"ChannelsIn\":{\"locationName\":\"channelsIn\",\"type\":\"integer\"},\"ChannelsOut\":{\"locationName\":\"channelsOut\",\"type\":\"integer\"}}},\"S1e\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"CustomLanguageCode\":{\"locationName\":\"customLanguageCode\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"SourceSettings\":{\"locationName\":\"sourceSettings\",\"type\":\"structure\",\"members\":{\"AncillarySourceSettings\":{\"locationName\":\"ancillarySourceSettings\",\"type\":\"structure\",\"members\":{\"Convert608To708\":{\"locationName\":\"convert608To708\"},\"SourceAncillaryChannelNumber\":{\"locationName\":\"sourceAncillaryChannelNumber\",\"type\":\"integer\"},\"TerminateCaptions\":{\"locationName\":\"terminateCaptions\"}}},\"DvbSubSourceSettings\":{\"locationName\":\"dvbSubSourceSettings\",\"type\":\"structure\",\"members\":{\"Pid\":{\"locationName\":\"pid\",\"type\":\"integer\"}}},\"EmbeddedSourceSettings\":{\"locationName\":\"embeddedSourceSettings\",\"type\":\"structure\",\"members\":{\"Convert608To708\":{\"locationName\":\"convert608To708\"},\"Source608ChannelNumber\":{\"locationName\":\"source608ChannelNumber\",\"type\":\"integer\"},\"Source608TrackNumber\":{\"locationName\":\"source608TrackNumber\",\"type\":\"integer\"},\"TerminateCaptions\":{\"locationName\":\"terminateCaptions\"}}},\"FileSourceSettings\":{\"locationName\":\"fileSourceSettings\",\"type\":\"structure\",\"members\":{\"Convert608To708\":{\"locationName\":\"convert608To708\"},\"Framerate\":{\"locationName\":\"framerate\",\"type\":\"structure\",\"members\":{\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"}}},\"SourceFile\":{\"locationName\":\"sourceFile\"},\"TimeDelta\":{\"locationName\":\"timeDelta\",\"type\":\"integer\"}}},\"SourceType\":{\"locationName\":\"sourceType\"},\"TeletextSourceSettings\":{\"locationName\":\"teletextSourceSettings\",\"type\":\"structure\",\"members\":{\"PageNumber\":{\"locationName\":\"pageNumber\"}}},\"TrackSourceSettings\":{\"locationName\":\"trackSourceSettings\",\"type\":\"structure\",\"members\":{\"TrackNumber\":{\"locationName\":\"trackNumber\",\"type\":\"integer\"}}}}}}}},\"S20\":{\"type\":\"structure\",\"members\":{\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"},\"X\":{\"locationName\":\"x\",\"type\":\"integer\"},\"Y\":{\"locationName\":\"y\",\"type\":\"integer\"}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"InsertableImages\":{\"locationName\":\"insertableImages\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"FadeIn\":{\"locationName\":\"fadeIn\",\"type\":\"integer\"},\"FadeOut\":{\"locationName\":\"fadeOut\",\"type\":\"integer\"},\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"ImageInserterInput\":{\"locationName\":\"imageInserterInput\"},\"ImageX\":{\"locationName\":\"imageX\",\"type\":\"integer\"},\"ImageY\":{\"locationName\":\"imageY\",\"type\":\"integer\"},\"Layer\":{\"locationName\":\"layer\",\"type\":\"integer\"},\"Opacity\":{\"locationName\":\"opacity\",\"type\":\"integer\"},\"StartTime\":{\"locationName\":\"startTime\"},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"}}}}}},\"S2k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndTimecode\":{\"locationName\":\"endTimecode\"},\"StartTimecode\":{\"locationName\":\"startTimecode\"}}}},\"S2t\":{\"type\":\"structure\",\"members\":{\"AlphaBehavior\":{\"locationName\":\"alphaBehavior\"},\"ColorSpace\":{\"locationName\":\"colorSpace\"},\"ColorSpaceUsage\":{\"locationName\":\"colorSpaceUsage\"},\"Hdr10Metadata\":{\"shape\":\"S2x\",\"locationName\":\"hdr10Metadata\"},\"Pid\":{\"locationName\":\"pid\",\"type\":\"integer\"},\"ProgramNumber\":{\"locationName\":\"programNumber\",\"type\":\"integer\"},\"Rotate\":{\"locationName\":\"rotate\"}}},\"S2x\":{\"type\":\"structure\",\"members\":{\"BluePrimaryX\":{\"locationName\":\"bluePrimaryX\",\"type\":\"integer\"},\"BluePrimaryY\":{\"locationName\":\"bluePrimaryY\",\"type\":\"integer\"},\"GreenPrimaryX\":{\"locationName\":\"greenPrimaryX\",\"type\":\"integer\"},\"GreenPrimaryY\":{\"locationName\":\"greenPrimaryY\",\"type\":\"integer\"},\"MaxContentLightLevel\":{\"locationName\":\"maxContentLightLevel\",\"type\":\"integer\"},\"MaxFrameAverageLightLevel\":{\"locationName\":\"maxFrameAverageLightLevel\",\"type\":\"integer\"},\"MaxLuminance\":{\"locationName\":\"maxLuminance\",\"type\":\"integer\"},\"MinLuminance\":{\"locationName\":\"minLuminance\",\"type\":\"integer\"},\"RedPrimaryX\":{\"locationName\":\"redPrimaryX\",\"type\":\"integer\"},\"RedPrimaryY\":{\"locationName\":\"redPrimaryY\",\"type\":\"integer\"},\"WhitePointX\":{\"locationName\":\"whitePointX\",\"type\":\"integer\"},\"WhitePointY\":{\"locationName\":\"whitePointY\",\"type\":\"integer\"}}},\"S31\":{\"type\":\"structure\",\"members\":{\"Framerate\":{\"locationName\":\"framerate\",\"type\":\"structure\",\"members\":{\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"}}},\"Input\":{\"locationName\":\"input\"},\"InsertionMode\":{\"locationName\":\"insertionMode\"},\"Offset\":{\"locationName\":\"offset\",\"type\":\"structure\",\"members\":{\"ImageX\":{\"locationName\":\"imageX\",\"type\":\"integer\"},\"ImageY\":{\"locationName\":\"imageY\",\"type\":\"integer\"}}},\"Playback\":{\"locationName\":\"playback\"},\"StartTime\":{\"locationName\":\"startTime\"}}},\"S39\":{\"type\":\"structure\",\"members\":{\"BreakoutCode\":{\"locationName\":\"breakoutCode\",\"type\":\"integer\"},\"DistributorId\":{\"locationName\":\"distributorId\"}}},\"S3b\":{\"type\":\"structure\",\"members\":{\"ActiveWatermarkProcess\":{\"locationName\":\"activeWatermarkProcess\"},\"AdiFilename\":{\"locationName\":\"adiFilename\"},\"AssetId\":{\"locationName\":\"assetId\"},\"AssetName\":{\"locationName\":\"assetName\"},\"CbetSourceId\":{\"locationName\":\"cbetSourceId\"},\"EpisodeId\":{\"locationName\":\"episodeId\"},\"MetadataDestination\":{\"locationName\":\"metadataDestination\"},\"SourceId\":{\"locationName\":\"sourceId\",\"type\":\"integer\"},\"SourceWatermarkStatus\":{\"locationName\":\"sourceWatermarkStatus\"},\"TicServerUrl\":{\"locationName\":\"ticServerUrl\"},\"UniqueTicPerAudioTrack\":{\"locationName\":\"uniqueTicPerAudioTrack\"}}},\"S3l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutomatedEncodingSettings\":{\"locationName\":\"automatedEncodingSettings\",\"type\":\"structure\",\"members\":{\"AbrSettings\":{\"locationName\":\"abrSettings\",\"type\":\"structure\",\"members\":{\"MaxAbrBitrate\":{\"locationName\":\"maxAbrBitrate\",\"type\":\"integer\"},\"MaxRenditions\":{\"locationName\":\"maxRenditions\",\"type\":\"integer\"},\"MinAbrBitrate\":{\"locationName\":\"minAbrBitrate\",\"type\":\"integer\"}}}}},\"CustomName\":{\"locationName\":\"customName\"},\"Name\":{\"locationName\":\"name\"},\"OutputGroupSettings\":{\"locationName\":\"outputGroupSettings\",\"type\":\"structure\",\"members\":{\"CmafGroupSettings\":{\"locationName\":\"cmafGroupSettings\",\"type\":\"structure\",\"members\":{\"AdditionalManifests\":{\"locationName\":\"additionalManifests\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ManifestNameModifier\":{\"locationName\":\"manifestNameModifier\"},\"SelectedOutputs\":{\"shape\":\"Ss\",\"locationName\":\"selectedOutputs\"}}}},\"BaseUrl\":{\"locationName\":\"baseUrl\"},\"ClientCache\":{\"locationName\":\"clientCache\"},\"CodecSpecification\":{\"locationName\":\"codecSpecification\"},\"Destination\":{\"locationName\":\"destination\"},\"DestinationSettings\":{\"shape\":\"S3x\",\"locationName\":\"destinationSettings\"},\"Encryption\":{\"locationName\":\"encryption\",\"type\":\"structure\",\"members\":{\"ConstantInitializationVector\":{\"locationName\":\"constantInitializationVector\"},\"EncryptionMethod\":{\"locationName\":\"encryptionMethod\"},\"InitializationVectorInManifest\":{\"locationName\":\"initializationVectorInManifest\"},\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"type\":\"structure\",\"members\":{\"CertificateArn\":{\"locationName\":\"certificateArn\"},\"DashSignaledSystemIds\":{\"shape\":\"S4a\",\"locationName\":\"dashSignaledSystemIds\"},\"HlsSignaledSystemIds\":{\"shape\":\"S4a\",\"locationName\":\"hlsSignaledSystemIds\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"Url\":{\"locationName\":\"url\"}}},\"StaticKeyProvider\":{\"shape\":\"S4d\",\"locationName\":\"staticKeyProvider\"},\"Type\":{\"locationName\":\"type\"}}},\"FragmentLength\":{\"locationName\":\"fragmentLength\",\"type\":\"integer\"},\"ManifestCompression\":{\"locationName\":\"manifestCompression\"},\"ManifestDurationFormat\":{\"locationName\":\"manifestDurationFormat\"},\"MinBufferTime\":{\"locationName\":\"minBufferTime\",\"type\":\"integer\"},\"MinFinalSegmentLength\":{\"locationName\":\"minFinalSegmentLength\",\"type\":\"double\"},\"MpdProfile\":{\"locationName\":\"mpdProfile\"},\"PtsOffsetHandlingForBFrames\":{\"locationName\":\"ptsOffsetHandlingForBFrames\"},\"SegmentControl\":{\"locationName\":\"segmentControl\"},\"SegmentLength\":{\"locationName\":\"segmentLength\",\"type\":\"integer\"},\"StreamInfResolution\":{\"locationName\":\"streamInfResolution\"},\"WriteDashManifest\":{\"locationName\":\"writeDashManifest\"},\"WriteHlsManifest\":{\"locationName\":\"writeHlsManifest\"},\"WriteSegmentTimelineInRepresentation\":{\"locationName\":\"writeSegmentTimelineInRepresentation\"}}},\"DashIsoGroupSettings\":{\"locationName\":\"dashIsoGroupSettings\",\"type\":\"structure\",\"members\":{\"AdditionalManifests\":{\"locationName\":\"additionalManifests\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ManifestNameModifier\":{\"locationName\":\"manifestNameModifier\"},\"SelectedOutputs\":{\"shape\":\"Ss\",\"locationName\":\"selectedOutputs\"}}}},\"AudioChannelConfigSchemeIdUri\":{\"locationName\":\"audioChannelConfigSchemeIdUri\"},\"BaseUrl\":{\"locationName\":\"baseUrl\"},\"Destination\":{\"locationName\":\"destination\"},\"DestinationSettings\":{\"shape\":\"S3x\",\"locationName\":\"destinationSettings\"},\"Encryption\":{\"locationName\":\"encryption\",\"type\":\"structure\",\"members\":{\"PlaybackDeviceCompatibility\":{\"locationName\":\"playbackDeviceCompatibility\"},\"SpekeKeyProvider\":{\"shape\":\"S4y\",\"locationName\":\"spekeKeyProvider\"}}},\"FragmentLength\":{\"locationName\":\"fragmentLength\",\"type\":\"integer\"},\"HbbtvCompliance\":{\"locationName\":\"hbbtvCompliance\"},\"MinBufferTime\":{\"locationName\":\"minBufferTime\",\"type\":\"integer\"},\"MinFinalSegmentLength\":{\"locationName\":\"minFinalSegmentLength\",\"type\":\"double\"},\"MpdProfile\":{\"locationName\":\"mpdProfile\"},\"PtsOffsetHandlingForBFrames\":{\"locationName\":\"ptsOffsetHandlingForBFrames\"},\"SegmentControl\":{\"locationName\":\"segmentControl\"},\"SegmentLength\":{\"locationName\":\"segmentLength\",\"type\":\"integer\"},\"WriteSegmentTimelineInRepresentation\":{\"locationName\":\"writeSegmentTimelineInRepresentation\"}}},\"FileGroupSettings\":{\"locationName\":\"fileGroupSettings\",\"type\":\"structure\",\"members\":{\"Destination\":{\"locationName\":\"destination\"},\"DestinationSettings\":{\"shape\":\"S3x\",\"locationName\":\"destinationSettings\"}}},\"HlsGroupSettings\":{\"locationName\":\"hlsGroupSettings\",\"type\":\"structure\",\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\",\"type\":\"list\",\"member\":{}},\"AdditionalManifests\":{\"locationName\":\"additionalManifests\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ManifestNameModifier\":{\"locationName\":\"manifestNameModifier\"},\"SelectedOutputs\":{\"shape\":\"Ss\",\"locationName\":\"selectedOutputs\"}}}},\"AudioOnlyHeader\":{\"locationName\":\"audioOnlyHeader\"},\"BaseUrl\":{\"locationName\":\"baseUrl\"},\"CaptionLanguageMappings\":{\"locationName\":\"captionLanguageMappings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CaptionChannel\":{\"locationName\":\"captionChannel\",\"type\":\"integer\"},\"CustomLanguageCode\":{\"locationName\":\"customLanguageCode\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageDescription\":{\"locationName\":\"languageDescription\"}}}},\"CaptionLanguageSetting\":{\"locationName\":\"captionLanguageSetting\"},\"ClientCache\":{\"locationName\":\"clientCache\"},\"CodecSpecification\":{\"locationName\":\"codecSpecification\"},\"Destination\":{\"locationName\":\"destination\"},\"DestinationSettings\":{\"shape\":\"S3x\",\"locationName\":\"destinationSettings\"},\"DirectoryStructure\":{\"locationName\":\"directoryStructure\"},\"Encryption\":{\"locationName\":\"encryption\",\"type\":\"structure\",\"members\":{\"ConstantInitializationVector\":{\"locationName\":\"constantInitializationVector\"},\"EncryptionMethod\":{\"locationName\":\"encryptionMethod\"},\"InitializationVectorInManifest\":{\"locationName\":\"initializationVectorInManifest\"},\"OfflineEncrypted\":{\"locationName\":\"offlineEncrypted\"},\"SpekeKeyProvider\":{\"shape\":\"S4y\",\"locationName\":\"spekeKeyProvider\"},\"StaticKeyProvider\":{\"shape\":\"S4d\",\"locationName\":\"staticKeyProvider\"},\"Type\":{\"locationName\":\"type\"}}},\"ManifestCompression\":{\"locationName\":\"manifestCompression\"},\"ManifestDurationFormat\":{\"locationName\":\"manifestDurationFormat\"},\"MinFinalSegmentLength\":{\"locationName\":\"minFinalSegmentLength\",\"type\":\"double\"},\"MinSegmentLength\":{\"locationName\":\"minSegmentLength\",\"type\":\"integer\"},\"OutputSelection\":{\"locationName\":\"outputSelection\"},\"ProgramDateTime\":{\"locationName\":\"programDateTime\"},\"ProgramDateTimePeriod\":{\"locationName\":\"programDateTimePeriod\",\"type\":\"integer\"},\"SegmentControl\":{\"locationName\":\"segmentControl\"},\"SegmentLength\":{\"locationName\":\"segmentLength\",\"type\":\"integer\"},\"SegmentsPerSubdirectory\":{\"locationName\":\"segmentsPerSubdirectory\",\"type\":\"integer\"},\"StreamInfResolution\":{\"locationName\":\"streamInfResolution\"},\"TimedMetadataId3Frame\":{\"locationName\":\"timedMetadataId3Frame\"},\"TimedMetadataId3Period\":{\"locationName\":\"timedMetadataId3Period\",\"type\":\"integer\"},\"TimestampDeltaMilliseconds\":{\"locationName\":\"timestampDeltaMilliseconds\",\"type\":\"integer\"}}},\"MsSmoothGroupSettings\":{\"locationName\":\"msSmoothGroupSettings\",\"type\":\"structure\",\"members\":{\"AdditionalManifests\":{\"locationName\":\"additionalManifests\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ManifestNameModifier\":{\"locationName\":\"manifestNameModifier\"},\"SelectedOutputs\":{\"shape\":\"Ss\",\"locationName\":\"selectedOutputs\"}}}},\"AudioDeduplication\":{\"locationName\":\"audioDeduplication\"},\"Destination\":{\"locationName\":\"destination\"},\"DestinationSettings\":{\"shape\":\"S3x\",\"locationName\":\"destinationSettings\"},\"Encryption\":{\"locationName\":\"encryption\",\"type\":\"structure\",\"members\":{\"SpekeKeyProvider\":{\"shape\":\"S4y\",\"locationName\":\"spekeKeyProvider\"}}},\"FragmentLength\":{\"locationName\":\"fragmentLength\",\"type\":\"integer\"},\"ManifestEncoding\":{\"locationName\":\"manifestEncoding\"}}},\"Type\":{\"locationName\":\"type\"}}},\"Outputs\":{\"locationName\":\"outputs\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AudioDescriptions\":{\"shape\":\"S65\",\"locationName\":\"audioDescriptions\"},\"CaptionDescriptions\":{\"locationName\":\"captionDescriptions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CaptionSelectorName\":{\"locationName\":\"captionSelectorName\"},\"CustomLanguageCode\":{\"locationName\":\"customLanguageCode\"},\"DestinationSettings\":{\"shape\":\"S8m\",\"locationName\":\"destinationSettings\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageDescription\":{\"locationName\":\"languageDescription\"}}}},\"ContainerSettings\":{\"shape\":\"S9k\",\"locationName\":\"containerSettings\"},\"Extension\":{\"locationName\":\"extension\"},\"NameModifier\":{\"locationName\":\"nameModifier\"},\"OutputSettings\":{\"locationName\":\"outputSettings\",\"type\":\"structure\",\"members\":{\"HlsSettings\":{\"locationName\":\"hlsSettings\",\"type\":\"structure\",\"members\":{\"AudioGroupId\":{\"locationName\":\"audioGroupId\"},\"AudioOnlyContainer\":{\"locationName\":\"audioOnlyContainer\"},\"AudioRenditionSets\":{\"locationName\":\"audioRenditionSets\"},\"AudioTrackType\":{\"locationName\":\"audioTrackType\"},\"DescriptiveVideoServiceFlag\":{\"locationName\":\"descriptiveVideoServiceFlag\"},\"IFrameOnlyManifest\":{\"locationName\":\"iFrameOnlyManifest\"},\"SegmentModifier\":{\"locationName\":\"segmentModifier\"}}}}},\"Preset\":{\"locationName\":\"preset\"},\"VideoDescription\":{\"shape\":\"Sbl\",\"locationName\":\"videoDescription\"}}}}}}},\"S3x\":{\"type\":\"structure\",\"members\":{\"S3Settings\":{\"locationName\":\"s3Settings\",\"type\":\"structure\",\"members\":{\"AccessControl\":{\"locationName\":\"accessControl\",\"type\":\"structure\",\"members\":{\"CannedAcl\":{\"locationName\":\"cannedAcl\"}}},\"Encryption\":{\"locationName\":\"encryption\",\"type\":\"structure\",\"members\":{\"EncryptionType\":{\"locationName\":\"encryptionType\"},\"KmsKeyArn\":{\"locationName\":\"kmsKeyArn\"}}}}}}},\"S4a\":{\"type\":\"list\",\"member\":{}},\"S4d\":{\"type\":\"structure\",\"members\":{\"KeyFormat\":{\"locationName\":\"keyFormat\"},\"KeyFormatVersions\":{\"locationName\":\"keyFormatVersions\"},\"StaticKeyValue\":{\"locationName\":\"staticKeyValue\"},\"Url\":{\"locationName\":\"url\"}}},\"S4y\":{\"type\":\"structure\",\"members\":{\"CertificateArn\":{\"locationName\":\"certificateArn\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"SystemIds\":{\"locationName\":\"systemIds\",\"type\":\"list\",\"member\":{}},\"Url\":{\"locationName\":\"url\"}}},\"S65\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AudioChannelTaggingSettings\":{\"locationName\":\"audioChannelTaggingSettings\",\"type\":\"structure\",\"members\":{\"ChannelTag\":{\"locationName\":\"channelTag\"}}},\"AudioNormalizationSettings\":{\"locationName\":\"audioNormalizationSettings\",\"type\":\"structure\",\"members\":{\"Algorithm\":{\"locationName\":\"algorithm\"},\"AlgorithmControl\":{\"locationName\":\"algorithmControl\"},\"CorrectionGateLevel\":{\"locationName\":\"correctionGateLevel\",\"type\":\"integer\"},\"LoudnessLogging\":{\"locationName\":\"loudnessLogging\"},\"PeakCalculation\":{\"locationName\":\"peakCalculation\"},\"TargetLkfs\":{\"locationName\":\"targetLkfs\",\"type\":\"double\"}}},\"AudioSourceName\":{\"locationName\":\"audioSourceName\"},\"AudioType\":{\"locationName\":\"audioType\",\"type\":\"integer\"},\"AudioTypeControl\":{\"locationName\":\"audioTypeControl\"},\"CodecSettings\":{\"locationName\":\"codecSettings\",\"type\":\"structure\",\"members\":{\"AacSettings\":{\"locationName\":\"aacSettings\",\"type\":\"structure\",\"members\":{\"AudioDescriptionBroadcasterMix\":{\"locationName\":\"audioDescriptionBroadcasterMix\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"CodecProfile\":{\"locationName\":\"codecProfile\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"RawFormat\":{\"locationName\":\"rawFormat\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"},\"Specification\":{\"locationName\":\"specification\"},\"VbrQuality\":{\"locationName\":\"vbrQuality\"}}},\"Ac3Settings\":{\"locationName\":\"ac3Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BitstreamMode\":{\"locationName\":\"bitstreamMode\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"Dialnorm\":{\"locationName\":\"dialnorm\",\"type\":\"integer\"},\"DynamicRangeCompressionLine\":{\"locationName\":\"dynamicRangeCompressionLine\"},\"DynamicRangeCompressionProfile\":{\"locationName\":\"dynamicRangeCompressionProfile\"},\"DynamicRangeCompressionRf\":{\"locationName\":\"dynamicRangeCompressionRf\"},\"LfeFilter\":{\"locationName\":\"lfeFilter\"},\"MetadataControl\":{\"locationName\":\"metadataControl\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"}}},\"AiffSettings\":{\"locationName\":\"aiffSettings\",\"type\":\"structure\",\"members\":{\"BitDepth\":{\"locationName\":\"bitDepth\",\"type\":\"integer\"},\"Channels\":{\"locationName\":\"channels\",\"type\":\"integer\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"}}},\"Codec\":{\"locationName\":\"codec\"},\"Eac3AtmosSettings\":{\"locationName\":\"eac3AtmosSettings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BitstreamMode\":{\"locationName\":\"bitstreamMode\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"DialogueIntelligence\":{\"locationName\":\"dialogueIntelligence\"},\"DynamicRangeCompressionLine\":{\"locationName\":\"dynamicRangeCompressionLine\"},\"DynamicRangeCompressionRf\":{\"locationName\":\"dynamicRangeCompressionRf\"},\"LoRoCenterMixLevel\":{\"locationName\":\"loRoCenterMixLevel\",\"type\":\"double\"},\"LoRoSurroundMixLevel\":{\"locationName\":\"loRoSurroundMixLevel\",\"type\":\"double\"},\"LtRtCenterMixLevel\":{\"locationName\":\"ltRtCenterMixLevel\",\"type\":\"double\"},\"LtRtSurroundMixLevel\":{\"locationName\":\"ltRtSurroundMixLevel\",\"type\":\"double\"},\"MeteringMode\":{\"locationName\":\"meteringMode\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"},\"SpeechThreshold\":{\"locationName\":\"speechThreshold\",\"type\":\"integer\"},\"StereoDownmix\":{\"locationName\":\"stereoDownmix\"},\"SurroundExMode\":{\"locationName\":\"surroundExMode\"}}},\"Eac3Settings\":{\"locationName\":\"eac3Settings\",\"type\":\"structure\",\"members\":{\"AttenuationControl\":{\"locationName\":\"attenuationControl\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BitstreamMode\":{\"locationName\":\"bitstreamMode\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"DcFilter\":{\"locationName\":\"dcFilter\"},\"Dialnorm\":{\"locationName\":\"dialnorm\",\"type\":\"integer\"},\"DynamicRangeCompressionLine\":{\"locationName\":\"dynamicRangeCompressionLine\"},\"DynamicRangeCompressionRf\":{\"locationName\":\"dynamicRangeCompressionRf\"},\"LfeControl\":{\"locationName\":\"lfeControl\"},\"LfeFilter\":{\"locationName\":\"lfeFilter\"},\"LoRoCenterMixLevel\":{\"locationName\":\"loRoCenterMixLevel\",\"type\":\"double\"},\"LoRoSurroundMixLevel\":{\"locationName\":\"loRoSurroundMixLevel\",\"type\":\"double\"},\"LtRtCenterMixLevel\":{\"locationName\":\"ltRtCenterMixLevel\",\"type\":\"double\"},\"LtRtSurroundMixLevel\":{\"locationName\":\"ltRtSurroundMixLevel\",\"type\":\"double\"},\"MetadataControl\":{\"locationName\":\"metadataControl\"},\"PassthroughControl\":{\"locationName\":\"passthroughControl\"},\"PhaseControl\":{\"locationName\":\"phaseControl\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"},\"StereoDownmix\":{\"locationName\":\"stereoDownmix\"},\"SurroundExMode\":{\"locationName\":\"surroundExMode\"},\"SurroundMode\":{\"locationName\":\"surroundMode\"}}},\"Mp2Settings\":{\"locationName\":\"mp2Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"Channels\":{\"locationName\":\"channels\",\"type\":\"integer\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"}}},\"Mp3Settings\":{\"locationName\":\"mp3Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"Channels\":{\"locationName\":\"channels\",\"type\":\"integer\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"},\"VbrQuality\":{\"locationName\":\"vbrQuality\",\"type\":\"integer\"}}},\"OpusSettings\":{\"locationName\":\"opusSettings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"Channels\":{\"locationName\":\"channels\",\"type\":\"integer\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"}}},\"VorbisSettings\":{\"locationName\":\"vorbisSettings\",\"type\":\"structure\",\"members\":{\"Channels\":{\"locationName\":\"channels\",\"type\":\"integer\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"},\"VbrQuality\":{\"locationName\":\"vbrQuality\",\"type\":\"integer\"}}},\"WavSettings\":{\"locationName\":\"wavSettings\",\"type\":\"structure\",\"members\":{\"BitDepth\":{\"locationName\":\"bitDepth\",\"type\":\"integer\"},\"Channels\":{\"locationName\":\"channels\",\"type\":\"integer\"},\"Format\":{\"locationName\":\"format\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"integer\"}}}}},\"CustomLanguageCode\":{\"locationName\":\"customLanguageCode\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageCodeControl\":{\"locationName\":\"languageCodeControl\"},\"RemixSettings\":{\"shape\":\"S14\",\"locationName\":\"remixSettings\"},\"StreamName\":{\"locationName\":\"streamName\"}}}},\"S8m\":{\"type\":\"structure\",\"members\":{\"BurninDestinationSettings\":{\"locationName\":\"burninDestinationSettings\",\"type\":\"structure\",\"members\":{\"Alignment\":{\"locationName\":\"alignment\"},\"BackgroundColor\":{\"locationName\":\"backgroundColor\"},\"BackgroundOpacity\":{\"locationName\":\"backgroundOpacity\",\"type\":\"integer\"},\"FontColor\":{\"locationName\":\"fontColor\"},\"FontOpacity\":{\"locationName\":\"fontOpacity\",\"type\":\"integer\"},\"FontResolution\":{\"locationName\":\"fontResolution\",\"type\":\"integer\"},\"FontScript\":{\"locationName\":\"fontScript\"},\"FontSize\":{\"locationName\":\"fontSize\",\"type\":\"integer\"},\"OutlineColor\":{\"locationName\":\"outlineColor\"},\"OutlineSize\":{\"locationName\":\"outlineSize\",\"type\":\"integer\"},\"ShadowColor\":{\"locationName\":\"shadowColor\"},\"ShadowOpacity\":{\"locationName\":\"shadowOpacity\",\"type\":\"integer\"},\"ShadowXOffset\":{\"locationName\":\"shadowXOffset\",\"type\":\"integer\"},\"ShadowYOffset\":{\"locationName\":\"shadowYOffset\",\"type\":\"integer\"},\"TeletextSpacing\":{\"locationName\":\"teletextSpacing\"},\"XPosition\":{\"locationName\":\"xPosition\",\"type\":\"integer\"},\"YPosition\":{\"locationName\":\"yPosition\",\"type\":\"integer\"}}},\"DestinationType\":{\"locationName\":\"destinationType\"},\"DvbSubDestinationSettings\":{\"locationName\":\"dvbSubDestinationSettings\",\"type\":\"structure\",\"members\":{\"Alignment\":{\"locationName\":\"alignment\"},\"BackgroundColor\":{\"locationName\":\"backgroundColor\"},\"BackgroundOpacity\":{\"locationName\":\"backgroundOpacity\",\"type\":\"integer\"},\"FontColor\":{\"locationName\":\"fontColor\"},\"FontOpacity\":{\"locationName\":\"fontOpacity\",\"type\":\"integer\"},\"FontResolution\":{\"locationName\":\"fontResolution\",\"type\":\"integer\"},\"FontScript\":{\"locationName\":\"fontScript\"},\"FontSize\":{\"locationName\":\"fontSize\",\"type\":\"integer\"},\"OutlineColor\":{\"locationName\":\"outlineColor\"},\"OutlineSize\":{\"locationName\":\"outlineSize\",\"type\":\"integer\"},\"ShadowColor\":{\"locationName\":\"shadowColor\"},\"ShadowOpacity\":{\"locationName\":\"shadowOpacity\",\"type\":\"integer\"},\"ShadowXOffset\":{\"locationName\":\"shadowXOffset\",\"type\":\"integer\"},\"ShadowYOffset\":{\"locationName\":\"shadowYOffset\",\"type\":\"integer\"},\"SubtitlingType\":{\"locationName\":\"subtitlingType\"},\"TeletextSpacing\":{\"locationName\":\"teletextSpacing\"},\"XPosition\":{\"locationName\":\"xPosition\",\"type\":\"integer\"},\"YPosition\":{\"locationName\":\"yPosition\",\"type\":\"integer\"}}},\"EmbeddedDestinationSettings\":{\"locationName\":\"embeddedDestinationSettings\",\"type\":\"structure\",\"members\":{\"Destination608ChannelNumber\":{\"locationName\":\"destination608ChannelNumber\",\"type\":\"integer\"},\"Destination708ServiceNumber\":{\"locationName\":\"destination708ServiceNumber\",\"type\":\"integer\"}}},\"ImscDestinationSettings\":{\"locationName\":\"imscDestinationSettings\",\"type\":\"structure\",\"members\":{\"StylePassthrough\":{\"locationName\":\"stylePassthrough\"}}},\"SccDestinationSettings\":{\"locationName\":\"sccDestinationSettings\",\"type\":\"structure\",\"members\":{\"Framerate\":{\"locationName\":\"framerate\"}}},\"TeletextDestinationSettings\":{\"locationName\":\"teletextDestinationSettings\",\"type\":\"structure\",\"members\":{\"PageNumber\":{\"locationName\":\"pageNumber\"},\"PageTypes\":{\"locationName\":\"pageTypes\",\"type\":\"list\",\"member\":{}}}},\"TtmlDestinationSettings\":{\"locationName\":\"ttmlDestinationSettings\",\"type\":\"structure\",\"members\":{\"StylePassthrough\":{\"locationName\":\"stylePassthrough\"}}},\"WebvttDestinationSettings\":{\"locationName\":\"webvttDestinationSettings\",\"type\":\"structure\",\"members\":{\"StylePassthrough\":{\"locationName\":\"stylePassthrough\"}}}}},\"S9k\":{\"type\":\"structure\",\"members\":{\"CmfcSettings\":{\"locationName\":\"cmfcSettings\",\"type\":\"structure\",\"members\":{\"AudioDuration\":{\"locationName\":\"audioDuration\"},\"AudioGroupId\":{\"locationName\":\"audioGroupId\"},\"AudioRenditionSets\":{\"locationName\":\"audioRenditionSets\"},\"AudioTrackType\":{\"locationName\":\"audioTrackType\"},\"DescriptiveVideoServiceFlag\":{\"locationName\":\"descriptiveVideoServiceFlag\"},\"IFrameOnlyManifest\":{\"locationName\":\"iFrameOnlyManifest\"},\"Scte35Esam\":{\"locationName\":\"scte35Esam\"},\"Scte35Source\":{\"locationName\":\"scte35Source\"}}},\"Container\":{\"locationName\":\"container\"},\"F4vSettings\":{\"locationName\":\"f4vSettings\",\"type\":\"structure\",\"members\":{\"MoovPlacement\":{\"locationName\":\"moovPlacement\"}}},\"M2tsSettings\":{\"locationName\":\"m2tsSettings\",\"type\":\"structure\",\"members\":{\"AudioBufferModel\":{\"locationName\":\"audioBufferModel\"},\"AudioDuration\":{\"locationName\":\"audioDuration\"},\"AudioFramesPerPes\":{\"locationName\":\"audioFramesPerPes\",\"type\":\"integer\"},\"AudioPids\":{\"shape\":\"S9y\",\"locationName\":\"audioPids\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BufferModel\":{\"locationName\":\"bufferModel\"},\"DvbNitSettings\":{\"locationName\":\"dvbNitSettings\",\"type\":\"structure\",\"members\":{\"NetworkId\":{\"locationName\":\"networkId\",\"type\":\"integer\"},\"NetworkName\":{\"locationName\":\"networkName\"},\"NitInterval\":{\"locationName\":\"nitInterval\",\"type\":\"integer\"}}},\"DvbSdtSettings\":{\"locationName\":\"dvbSdtSettings\",\"type\":\"structure\",\"members\":{\"OutputSdt\":{\"locationName\":\"outputSdt\"},\"SdtInterval\":{\"locationName\":\"sdtInterval\",\"type\":\"integer\"},\"ServiceName\":{\"locationName\":\"serviceName\"},\"ServiceProviderName\":{\"locationName\":\"serviceProviderName\"}}},\"DvbSubPids\":{\"shape\":\"S9y\",\"locationName\":\"dvbSubPids\"},\"DvbTdtSettings\":{\"locationName\":\"dvbTdtSettings\",\"type\":\"structure\",\"members\":{\"TdtInterval\":{\"locationName\":\"tdtInterval\",\"type\":\"integer\"}}},\"DvbTeletextPid\":{\"locationName\":\"dvbTeletextPid\",\"type\":\"integer\"},\"EbpAudioInterval\":{\"locationName\":\"ebpAudioInterval\"},\"EbpPlacement\":{\"locationName\":\"ebpPlacement\"},\"EsRateInPes\":{\"locationName\":\"esRateInPes\"},\"ForceTsVideoEbpOrder\":{\"locationName\":\"forceTsVideoEbpOrder\"},\"FragmentTime\":{\"locationName\":\"fragmentTime\",\"type\":\"double\"},\"MaxPcrInterval\":{\"locationName\":\"maxPcrInterval\",\"type\":\"integer\"},\"MinEbpInterval\":{\"locationName\":\"minEbpInterval\",\"type\":\"integer\"},\"NielsenId3\":{\"locationName\":\"nielsenId3\"},\"NullPacketBitrate\":{\"locationName\":\"nullPacketBitrate\",\"type\":\"double\"},\"PatInterval\":{\"locationName\":\"patInterval\",\"type\":\"integer\"},\"PcrControl\":{\"locationName\":\"pcrControl\"},\"PcrPid\":{\"locationName\":\"pcrPid\",\"type\":\"integer\"},\"PmtInterval\":{\"locationName\":\"pmtInterval\",\"type\":\"integer\"},\"PmtPid\":{\"locationName\":\"pmtPid\",\"type\":\"integer\"},\"PrivateMetadataPid\":{\"locationName\":\"privateMetadataPid\",\"type\":\"integer\"},\"ProgramNumber\":{\"locationName\":\"programNumber\",\"type\":\"integer\"},\"RateMode\":{\"locationName\":\"rateMode\"},\"Scte35Esam\":{\"locationName\":\"scte35Esam\",\"type\":\"structure\",\"members\":{\"Scte35EsamPid\":{\"locationName\":\"scte35EsamPid\",\"type\":\"integer\"}}},\"Scte35Pid\":{\"locationName\":\"scte35Pid\",\"type\":\"integer\"},\"Scte35Source\":{\"locationName\":\"scte35Source\"},\"SegmentationMarkers\":{\"locationName\":\"segmentationMarkers\"},\"SegmentationStyle\":{\"locationName\":\"segmentationStyle\"},\"SegmentationTime\":{\"locationName\":\"segmentationTime\",\"type\":\"double\"},\"TimedMetadataPid\":{\"locationName\":\"timedMetadataPid\",\"type\":\"integer\"},\"TransportStreamId\":{\"locationName\":\"transportStreamId\",\"type\":\"integer\"},\"VideoPid\":{\"locationName\":\"videoPid\",\"type\":\"integer\"}}},\"M3u8Settings\":{\"locationName\":\"m3u8Settings\",\"type\":\"structure\",\"members\":{\"AudioDuration\":{\"locationName\":\"audioDuration\"},\"AudioFramesPerPes\":{\"locationName\":\"audioFramesPerPes\",\"type\":\"integer\"},\"AudioPids\":{\"shape\":\"S9y\",\"locationName\":\"audioPids\"},\"NielsenId3\":{\"locationName\":\"nielsenId3\"},\"PatInterval\":{\"locationName\":\"patInterval\",\"type\":\"integer\"},\"PcrControl\":{\"locationName\":\"pcrControl\"},\"PcrPid\":{\"locationName\":\"pcrPid\",\"type\":\"integer\"},\"PmtInterval\":{\"locationName\":\"pmtInterval\",\"type\":\"integer\"},\"PmtPid\":{\"locationName\":\"pmtPid\",\"type\":\"integer\"},\"PrivateMetadataPid\":{\"locationName\":\"privateMetadataPid\",\"type\":\"integer\"},\"ProgramNumber\":{\"locationName\":\"programNumber\",\"type\":\"integer\"},\"Scte35Pid\":{\"locationName\":\"scte35Pid\",\"type\":\"integer\"},\"Scte35Source\":{\"locationName\":\"scte35Source\"},\"TimedMetadata\":{\"locationName\":\"timedMetadata\"},\"TimedMetadataPid\":{\"locationName\":\"timedMetadataPid\",\"type\":\"integer\"},\"TransportStreamId\":{\"locationName\":\"transportStreamId\",\"type\":\"integer\"},\"VideoPid\":{\"locationName\":\"videoPid\",\"type\":\"integer\"}}},\"MovSettings\":{\"locationName\":\"movSettings\",\"type\":\"structure\",\"members\":{\"ClapAtom\":{\"locationName\":\"clapAtom\"},\"CslgAtom\":{\"locationName\":\"cslgAtom\"},\"Mpeg2FourCCControl\":{\"locationName\":\"mpeg2FourCCControl\"},\"PaddingControl\":{\"locationName\":\"paddingControl\"},\"Reference\":{\"locationName\":\"reference\"}}},\"Mp4Settings\":{\"locationName\":\"mp4Settings\",\"type\":\"structure\",\"members\":{\"AudioDuration\":{\"locationName\":\"audioDuration\"},\"CslgAtom\":{\"locationName\":\"cslgAtom\"},\"CttsVersion\":{\"locationName\":\"cttsVersion\",\"type\":\"integer\"},\"FreeSpaceBox\":{\"locationName\":\"freeSpaceBox\"},\"MoovPlacement\":{\"locationName\":\"moovPlacement\"},\"Mp4MajorBrand\":{\"locationName\":\"mp4MajorBrand\"}}},\"MpdSettings\":{\"locationName\":\"mpdSettings\",\"type\":\"structure\",\"members\":{\"AccessibilityCaptionHints\":{\"locationName\":\"accessibilityCaptionHints\"},\"AudioDuration\":{\"locationName\":\"audioDuration\"},\"CaptionContainerType\":{\"locationName\":\"captionContainerType\"},\"Scte35Esam\":{\"locationName\":\"scte35Esam\"},\"Scte35Source\":{\"locationName\":\"scte35Source\"}}},\"MxfSettings\":{\"locationName\":\"mxfSettings\",\"type\":\"structure\",\"members\":{\"AfdSignaling\":{\"locationName\":\"afdSignaling\"},\"Profile\":{\"locationName\":\"profile\"}}}}},\"S9y\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"Sbl\":{\"type\":\"structure\",\"members\":{\"AfdSignaling\":{\"locationName\":\"afdSignaling\"},\"AntiAlias\":{\"locationName\":\"antiAlias\"},\"CodecSettings\":{\"locationName\":\"codecSettings\",\"type\":\"structure\",\"members\":{\"Av1Settings\":{\"locationName\":\"av1Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"NumberBFramesBetweenReferenceFrames\":{\"locationName\":\"numberBFramesBetweenReferenceFrames\",\"type\":\"integer\"},\"QvbrSettings\":{\"locationName\":\"qvbrSettings\",\"type\":\"structure\",\"members\":{\"QvbrQualityLevel\":{\"locationName\":\"qvbrQualityLevel\",\"type\":\"integer\"},\"QvbrQualityLevelFineTune\":{\"locationName\":\"qvbrQualityLevelFineTune\",\"type\":\"double\"}}},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"Slices\":{\"locationName\":\"slices\",\"type\":\"integer\"},\"SpatialAdaptiveQuantization\":{\"locationName\":\"spatialAdaptiveQuantization\"}}},\"AvcIntraSettings\":{\"locationName\":\"avcIntraSettings\",\"type\":\"structure\",\"members\":{\"AvcIntraClass\":{\"locationName\":\"avcIntraClass\"},\"AvcIntraUhdSettings\":{\"locationName\":\"avcIntraUhdSettings\",\"type\":\"structure\",\"members\":{\"QualityTuningLevel\":{\"locationName\":\"qualityTuningLevel\"}}},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"InterlaceMode\":{\"locationName\":\"interlaceMode\"},\"ScanTypeConversionMode\":{\"locationName\":\"scanTypeConversionMode\"},\"SlowPal\":{\"locationName\":\"slowPal\"},\"Telecine\":{\"locationName\":\"telecine\"}}},\"Codec\":{\"locationName\":\"codec\"},\"FrameCaptureSettings\":{\"locationName\":\"frameCaptureSettings\",\"type\":\"structure\",\"members\":{\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"MaxCaptures\":{\"locationName\":\"maxCaptures\",\"type\":\"integer\"},\"Quality\":{\"locationName\":\"quality\",\"type\":\"integer\"}}},\"H264Settings\":{\"locationName\":\"h264Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"CodecLevel\":{\"locationName\":\"codecLevel\"},\"CodecProfile\":{\"locationName\":\"codecProfile\"},\"DynamicSubGop\":{\"locationName\":\"dynamicSubGop\"},\"EntropyEncoding\":{\"locationName\":\"entropyEncoding\"},\"FieldEncoding\":{\"locationName\":\"fieldEncoding\"},\"FlickerAdaptiveQuantization\":{\"locationName\":\"flickerAdaptiveQuantization\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopBReference\":{\"locationName\":\"gopBReference\"},\"GopClosedCadence\":{\"locationName\":\"gopClosedCadence\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"GopSizeUnits\":{\"locationName\":\"gopSizeUnits\"},\"HrdBufferInitialFillPercentage\":{\"locationName\":\"hrdBufferInitialFillPercentage\",\"type\":\"integer\"},\"HrdBufferSize\":{\"locationName\":\"hrdBufferSize\",\"type\":\"integer\"},\"InterlaceMode\":{\"locationName\":\"interlaceMode\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MinIInterval\":{\"locationName\":\"minIInterval\",\"type\":\"integer\"},\"NumberBFramesBetweenReferenceFrames\":{\"locationName\":\"numberBFramesBetweenReferenceFrames\",\"type\":\"integer\"},\"NumberReferenceFrames\":{\"locationName\":\"numberReferenceFrames\",\"type\":\"integer\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"QualityTuningLevel\":{\"locationName\":\"qualityTuningLevel\"},\"QvbrSettings\":{\"locationName\":\"qvbrSettings\",\"type\":\"structure\",\"members\":{\"MaxAverageBitrate\":{\"locationName\":\"maxAverageBitrate\",\"type\":\"integer\"},\"QvbrQualityLevel\":{\"locationName\":\"qvbrQualityLevel\",\"type\":\"integer\"},\"QvbrQualityLevelFineTune\":{\"locationName\":\"qvbrQualityLevelFineTune\",\"type\":\"double\"}}},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"RepeatPps\":{\"locationName\":\"repeatPps\"},\"ScanTypeConversionMode\":{\"locationName\":\"scanTypeConversionMode\"},\"SceneChangeDetect\":{\"locationName\":\"sceneChangeDetect\"},\"Slices\":{\"locationName\":\"slices\",\"type\":\"integer\"},\"SlowPal\":{\"locationName\":\"slowPal\"},\"Softness\":{\"locationName\":\"softness\",\"type\":\"integer\"},\"SpatialAdaptiveQuantization\":{\"locationName\":\"spatialAdaptiveQuantization\"},\"Syntax\":{\"locationName\":\"syntax\"},\"Telecine\":{\"locationName\":\"telecine\"},\"TemporalAdaptiveQuantization\":{\"locationName\":\"temporalAdaptiveQuantization\"},\"UnregisteredSeiTimecode\":{\"locationName\":\"unregisteredSeiTimecode\"}}},\"H265Settings\":{\"locationName\":\"h265Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"AlternateTransferFunctionSei\":{\"locationName\":\"alternateTransferFunctionSei\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"CodecLevel\":{\"locationName\":\"codecLevel\"},\"CodecProfile\":{\"locationName\":\"codecProfile\"},\"DynamicSubGop\":{\"locationName\":\"dynamicSubGop\"},\"FlickerAdaptiveQuantization\":{\"locationName\":\"flickerAdaptiveQuantization\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopBReference\":{\"locationName\":\"gopBReference\"},\"GopClosedCadence\":{\"locationName\":\"gopClosedCadence\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"GopSizeUnits\":{\"locationName\":\"gopSizeUnits\"},\"HrdBufferInitialFillPercentage\":{\"locationName\":\"hrdBufferInitialFillPercentage\",\"type\":\"integer\"},\"HrdBufferSize\":{\"locationName\":\"hrdBufferSize\",\"type\":\"integer\"},\"InterlaceMode\":{\"locationName\":\"interlaceMode\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MinIInterval\":{\"locationName\":\"minIInterval\",\"type\":\"integer\"},\"NumberBFramesBetweenReferenceFrames\":{\"locationName\":\"numberBFramesBetweenReferenceFrames\",\"type\":\"integer\"},\"NumberReferenceFrames\":{\"locationName\":\"numberReferenceFrames\",\"type\":\"integer\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"QualityTuningLevel\":{\"locationName\":\"qualityTuningLevel\"},\"QvbrSettings\":{\"locationName\":\"qvbrSettings\",\"type\":\"structure\",\"members\":{\"MaxAverageBitrate\":{\"locationName\":\"maxAverageBitrate\",\"type\":\"integer\"},\"QvbrQualityLevel\":{\"locationName\":\"qvbrQualityLevel\",\"type\":\"integer\"},\"QvbrQualityLevelFineTune\":{\"locationName\":\"qvbrQualityLevelFineTune\",\"type\":\"double\"}}},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"SampleAdaptiveOffsetFilterMode\":{\"locationName\":\"sampleAdaptiveOffsetFilterMode\"},\"ScanTypeConversionMode\":{\"locationName\":\"scanTypeConversionMode\"},\"SceneChangeDetect\":{\"locationName\":\"sceneChangeDetect\"},\"Slices\":{\"locationName\":\"slices\",\"type\":\"integer\"},\"SlowPal\":{\"locationName\":\"slowPal\"},\"SpatialAdaptiveQuantization\":{\"locationName\":\"spatialAdaptiveQuantization\"},\"Telecine\":{\"locationName\":\"telecine\"},\"TemporalAdaptiveQuantization\":{\"locationName\":\"temporalAdaptiveQuantization\"},\"TemporalIds\":{\"locationName\":\"temporalIds\"},\"Tiles\":{\"locationName\":\"tiles\"},\"UnregisteredSeiTimecode\":{\"locationName\":\"unregisteredSeiTimecode\"},\"WriteMp4PackagingType\":{\"locationName\":\"writeMp4PackagingType\"}}},\"Mpeg2Settings\":{\"locationName\":\"mpeg2Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"CodecLevel\":{\"locationName\":\"codecLevel\"},\"CodecProfile\":{\"locationName\":\"codecProfile\"},\"DynamicSubGop\":{\"locationName\":\"dynamicSubGop\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopClosedCadence\":{\"locationName\":\"gopClosedCadence\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"GopSizeUnits\":{\"locationName\":\"gopSizeUnits\"},\"HrdBufferInitialFillPercentage\":{\"locationName\":\"hrdBufferInitialFillPercentage\",\"type\":\"integer\"},\"HrdBufferSize\":{\"locationName\":\"hrdBufferSize\",\"type\":\"integer\"},\"InterlaceMode\":{\"locationName\":\"interlaceMode\"},\"IntraDcPrecision\":{\"locationName\":\"intraDcPrecision\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MinIInterval\":{\"locationName\":\"minIInterval\",\"type\":\"integer\"},\"NumberBFramesBetweenReferenceFrames\":{\"locationName\":\"numberBFramesBetweenReferenceFrames\",\"type\":\"integer\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"QualityTuningLevel\":{\"locationName\":\"qualityTuningLevel\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"ScanTypeConversionMode\":{\"locationName\":\"scanTypeConversionMode\"},\"SceneChangeDetect\":{\"locationName\":\"sceneChangeDetect\"},\"SlowPal\":{\"locationName\":\"slowPal\"},\"Softness\":{\"locationName\":\"softness\",\"type\":\"integer\"},\"SpatialAdaptiveQuantization\":{\"locationName\":\"spatialAdaptiveQuantization\"},\"Syntax\":{\"locationName\":\"syntax\"},\"Telecine\":{\"locationName\":\"telecine\"},\"TemporalAdaptiveQuantization\":{\"locationName\":\"temporalAdaptiveQuantization\"}}},\"ProresSettings\":{\"locationName\":\"proresSettings\",\"type\":\"structure\",\"members\":{\"CodecProfile\":{\"locationName\":\"codecProfile\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"InterlaceMode\":{\"locationName\":\"interlaceMode\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"ScanTypeConversionMode\":{\"locationName\":\"scanTypeConversionMode\"},\"SlowPal\":{\"locationName\":\"slowPal\"},\"Telecine\":{\"locationName\":\"telecine\"}}},\"Vc3Settings\":{\"locationName\":\"vc3Settings\",\"type\":\"structure\",\"members\":{\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"InterlaceMode\":{\"locationName\":\"interlaceMode\"},\"ScanTypeConversionMode\":{\"locationName\":\"scanTypeConversionMode\"},\"SlowPal\":{\"locationName\":\"slowPal\"},\"Telecine\":{\"locationName\":\"telecine\"},\"Vc3Class\":{\"locationName\":\"vc3Class\"}}},\"Vp8Settings\":{\"locationName\":\"vp8Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"HrdBufferSize\":{\"locationName\":\"hrdBufferSize\",\"type\":\"integer\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"QualityTuningLevel\":{\"locationName\":\"qualityTuningLevel\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"}}},\"Vp9Settings\":{\"locationName\":\"vp9Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateConversionAlgorithm\":{\"locationName\":\"framerateConversionAlgorithm\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"HrdBufferSize\":{\"locationName\":\"hrdBufferSize\",\"type\":\"integer\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"QualityTuningLevel\":{\"locationName\":\"qualityTuningLevel\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"}}}}},\"ColorMetadata\":{\"locationName\":\"colorMetadata\"},\"Crop\":{\"shape\":\"S20\",\"locationName\":\"crop\"},\"DropFrameTimecode\":{\"locationName\":\"dropFrameTimecode\"},\"FixedAfd\":{\"locationName\":\"fixedAfd\",\"type\":\"integer\"},\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"Position\":{\"shape\":\"S20\",\"locationName\":\"position\"},\"RespondToAfd\":{\"locationName\":\"respondToAfd\"},\"ScalingBehavior\":{\"locationName\":\"scalingBehavior\"},\"Sharpness\":{\"locationName\":\"sharpness\",\"type\":\"integer\"},\"TimecodeInsertion\":{\"locationName\":\"timecodeInsertion\"},\"VideoPreprocessors\":{\"locationName\":\"videoPreprocessors\",\"type\":\"structure\",\"members\":{\"ColorCorrector\":{\"locationName\":\"colorCorrector\",\"type\":\"structure\",\"members\":{\"Brightness\":{\"locationName\":\"brightness\",\"type\":\"integer\"},\"ColorSpaceConversion\":{\"locationName\":\"colorSpaceConversion\"},\"Contrast\":{\"locationName\":\"contrast\",\"type\":\"integer\"},\"Hdr10Metadata\":{\"shape\":\"S2x\",\"locationName\":\"hdr10Metadata\"},\"Hue\":{\"locationName\":\"hue\",\"type\":\"integer\"},\"Saturation\":{\"locationName\":\"saturation\",\"type\":\"integer\"}}},\"Deinterlacer\":{\"locationName\":\"deinterlacer\",\"type\":\"structure\",\"members\":{\"Algorithm\":{\"locationName\":\"algorithm\"},\"Control\":{\"locationName\":\"control\"},\"Mode\":{\"locationName\":\"mode\"}}},\"DolbyVision\":{\"locationName\":\"dolbyVision\",\"type\":\"structure\",\"members\":{\"L6Metadata\":{\"locationName\":\"l6Metadata\",\"type\":\"structure\",\"members\":{\"MaxCll\":{\"locationName\":\"maxCll\",\"type\":\"integer\"},\"MaxFall\":{\"locationName\":\"maxFall\",\"type\":\"integer\"}}},\"L6Mode\":{\"locationName\":\"l6Mode\"},\"Profile\":{\"locationName\":\"profile\"}}},\"ImageInserter\":{\"shape\":\"S2d\",\"locationName\":\"imageInserter\"},\"NoiseReducer\":{\"locationName\":\"noiseReducer\",\"type\":\"structure\",\"members\":{\"Filter\":{\"locationName\":\"filter\"},\"FilterSettings\":{\"locationName\":\"filterSettings\",\"type\":\"structure\",\"members\":{\"Strength\":{\"locationName\":\"strength\",\"type\":\"integer\"}}},\"SpatialFilterSettings\":{\"locationName\":\"spatialFilterSettings\",\"type\":\"structure\",\"members\":{\"PostFilterSharpenStrength\":{\"locationName\":\"postFilterSharpenStrength\",\"type\":\"integer\"},\"Speed\":{\"locationName\":\"speed\",\"type\":\"integer\"},\"Strength\":{\"locationName\":\"strength\",\"type\":\"integer\"}}},\"TemporalFilterSettings\":{\"locationName\":\"temporalFilterSettings\",\"type\":\"structure\",\"members\":{\"AggressiveMode\":{\"locationName\":\"aggressiveMode\",\"type\":\"integer\"},\"PostTemporalSharpening\":{\"locationName\":\"postTemporalSharpening\"},\"Speed\":{\"locationName\":\"speed\",\"type\":\"integer\"},\"Strength\":{\"locationName\":\"strength\",\"type\":\"integer\"}}}}},\"PartnerWatermarking\":{\"locationName\":\"partnerWatermarking\",\"type\":\"structure\",\"members\":{\"NexguardFileMarkerSettings\":{\"locationName\":\"nexguardFileMarkerSettings\",\"type\":\"structure\",\"members\":{\"License\":{\"locationName\":\"license\"},\"Payload\":{\"locationName\":\"payload\",\"type\":\"integer\"},\"Preset\":{\"locationName\":\"preset\"},\"Strength\":{\"locationName\":\"strength\"}}}}},\"TimecodeBurnin\":{\"locationName\":\"timecodeBurnin\",\"type\":\"structure\",\"members\":{\"FontSize\":{\"locationName\":\"fontSize\",\"type\":\"integer\"},\"Position\":{\"locationName\":\"position\"},\"Prefix\":{\"locationName\":\"prefix\"}}}}},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"}}},\"Sgm\":{\"type\":\"structure\",\"members\":{\"Anchor\":{\"locationName\":\"anchor\"},\"Source\":{\"locationName\":\"source\"},\"Start\":{\"locationName\":\"start\"},\"TimestampOffset\":{\"locationName\":\"timestampOffset\"}}},\"Sgp\":{\"type\":\"structure\",\"members\":{\"Id3Insertions\":{\"locationName\":\"id3Insertions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id3\":{\"locationName\":\"id3\"},\"Timecode\":{\"locationName\":\"timecode\"}}}}}},\"Sgv\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sgx\":{\"type\":\"structure\",\"members\":{\"AccelerationSettings\":{\"shape\":\"S7\",\"locationName\":\"accelerationSettings\"},\"AccelerationStatus\":{\"locationName\":\"accelerationStatus\"},\"Arn\":{\"locationName\":\"arn\"},\"BillingTagsSource\":{\"locationName\":\"billingTagsSource\"},\"CreatedAt\":{\"shape\":\"Sgz\",\"locationName\":\"createdAt\"},\"CurrentPhase\":{\"locationName\":\"currentPhase\"},\"ErrorCode\":{\"locationName\":\"errorCode\",\"type\":\"integer\"},\"ErrorMessage\":{\"locationName\":\"errorMessage\"},\"HopDestinations\":{\"shape\":\"Sa\",\"locationName\":\"hopDestinations\"},\"Id\":{\"locationName\":\"id\"},\"JobPercentComplete\":{\"locationName\":\"jobPercentComplete\",\"type\":\"integer\"},\"JobTemplate\":{\"locationName\":\"jobTemplate\"},\"Messages\":{\"locationName\":\"messages\",\"type\":\"structure\",\"members\":{\"Info\":{\"shape\":\"Sh2\",\"locationName\":\"info\"},\"Warning\":{\"shape\":\"Sh2\",\"locationName\":\"warning\"}}},\"OutputGroupDetails\":{\"locationName\":\"outputGroupDetails\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OutputDetails\":{\"locationName\":\"outputDetails\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DurationInMs\":{\"locationName\":\"durationInMs\",\"type\":\"integer\"},\"VideoDetails\":{\"locationName\":\"videoDetails\",\"type\":\"structure\",\"members\":{\"HeightInPx\":{\"locationName\":\"heightInPx\",\"type\":\"integer\"},\"WidthInPx\":{\"locationName\":\"widthInPx\",\"type\":\"integer\"}}}}}}}}},\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"},\"Queue\":{\"locationName\":\"queue\"},\"QueueTransitions\":{\"locationName\":\"queueTransitions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DestinationQueue\":{\"locationName\":\"destinationQueue\"},\"SourceQueue\":{\"locationName\":\"sourceQueue\"},\"Timestamp\":{\"shape\":\"Sgz\",\"locationName\":\"timestamp\"}}}},\"RetryCount\":{\"locationName\":\"retryCount\",\"type\":\"integer\"},\"Role\":{\"locationName\":\"role\"},\"Settings\":{\"shape\":\"Se\",\"locationName\":\"settings\"},\"SimulateReservedQueue\":{\"locationName\":\"simulateReservedQueue\"},\"Status\":{\"locationName\":\"status\"},\"StatusUpdateInterval\":{\"locationName\":\"statusUpdateInterval\"},\"Timing\":{\"locationName\":\"timing\",\"type\":\"structure\",\"members\":{\"FinishTime\":{\"shape\":\"Sgz\",\"locationName\":\"finishTime\"},\"StartTime\":{\"shape\":\"Sgz\",\"locationName\":\"startTime\"},\"SubmitTime\":{\"shape\":\"Sgz\",\"locationName\":\"submitTime\"}}},\"UserMetadata\":{\"shape\":\"Sgv\",\"locationName\":\"userMetadata\"}},\"required\":[\"Role\",\"Settings\"]},\"Sgz\":{\"type\":\"timestamp\",\"timestampFormat\":\"unixTimestamp\"},\"Sh2\":{\"type\":\"list\",\"member\":{}},\"Shd\":{\"type\":\"structure\",\"members\":{\"AdAvailOffset\":{\"locationName\":\"adAvailOffset\",\"type\":\"integer\"},\"AvailBlanking\":{\"shape\":\"Sg\",\"locationName\":\"availBlanking\"},\"Esam\":{\"shape\":\"Si\",\"locationName\":\"esam\"},\"Inputs\":{\"locationName\":\"inputs\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AudioSelectorGroups\":{\"shape\":\"Sq\",\"locationName\":\"audioSelectorGroups\"},\"AudioSelectors\":{\"shape\":\"Su\",\"locationName\":\"audioSelectors\"},\"CaptionSelectors\":{\"shape\":\"S1e\",\"locationName\":\"captionSelectors\"},\"Crop\":{\"shape\":\"S20\",\"locationName\":\"crop\"},\"DeblockFilter\":{\"locationName\":\"deblockFilter\"},\"DenoiseFilter\":{\"locationName\":\"denoiseFilter\"},\"FilterEnable\":{\"locationName\":\"filterEnable\"},\"FilterStrength\":{\"locationName\":\"filterStrength\",\"type\":\"integer\"},\"ImageInserter\":{\"shape\":\"S2d\",\"locationName\":\"imageInserter\"},\"InputClippings\":{\"shape\":\"S2k\",\"locationName\":\"inputClippings\"},\"InputScanType\":{\"locationName\":\"inputScanType\"},\"Position\":{\"shape\":\"S20\",\"locationName\":\"position\"},\"ProgramNumber\":{\"locationName\":\"programNumber\",\"type\":\"integer\"},\"PsiControl\":{\"locationName\":\"psiControl\"},\"TimecodeSource\":{\"locationName\":\"timecodeSource\"},\"TimecodeStart\":{\"locationName\":\"timecodeStart\"},\"VideoSelector\":{\"shape\":\"S2t\",\"locationName\":\"videoSelector\"}}}},\"MotionImageInserter\":{\"shape\":\"S31\",\"locationName\":\"motionImageInserter\"},\"NielsenConfiguration\":{\"shape\":\"S39\",\"locationName\":\"nielsenConfiguration\"},\"NielsenNonLinearWatermark\":{\"shape\":\"S3b\",\"locationName\":\"nielsenNonLinearWatermark\"},\"OutputGroups\":{\"shape\":\"S3l\",\"locationName\":\"outputGroups\"},\"TimecodeConfig\":{\"shape\":\"Sgm\",\"locationName\":\"timecodeConfig\"},\"TimedMetadataInsertion\":{\"shape\":\"Sgp\",\"locationName\":\"timedMetadataInsertion\"}}},\"Shh\":{\"type\":\"structure\",\"members\":{\"AccelerationSettings\":{\"shape\":\"S7\",\"locationName\":\"accelerationSettings\"},\"Arn\":{\"locationName\":\"arn\"},\"Category\":{\"locationName\":\"category\"},\"CreatedAt\":{\"shape\":\"Sgz\",\"locationName\":\"createdAt\"},\"Description\":{\"locationName\":\"description\"},\"HopDestinations\":{\"shape\":\"Sa\",\"locationName\":\"hopDestinations\"},\"LastUpdated\":{\"shape\":\"Sgz\",\"locationName\":\"lastUpdated\"},\"Name\":{\"locationName\":\"name\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"},\"Queue\":{\"locationName\":\"queue\"},\"Settings\":{\"shape\":\"Shd\",\"locationName\":\"settings\"},\"StatusUpdateInterval\":{\"locationName\":\"statusUpdateInterval\"},\"Type\":{\"locationName\":\"type\"}},\"required\":[\"Settings\",\"Name\"]},\"Shk\":{\"type\":\"structure\",\"members\":{\"AudioDescriptions\":{\"shape\":\"S65\",\"locationName\":\"audioDescriptions\"},\"CaptionDescriptions\":{\"locationName\":\"captionDescriptions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CustomLanguageCode\":{\"locationName\":\"customLanguageCode\"},\"DestinationSettings\":{\"shape\":\"S8m\",\"locationName\":\"destinationSettings\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageDescription\":{\"locationName\":\"languageDescription\"}}}},\"ContainerSettings\":{\"shape\":\"S9k\",\"locationName\":\"containerSettings\"},\"VideoDescription\":{\"shape\":\"Sbl\",\"locationName\":\"videoDescription\"}}},\"Sho\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Category\":{\"locationName\":\"category\"},\"CreatedAt\":{\"shape\":\"Sgz\",\"locationName\":\"createdAt\"},\"Description\":{\"locationName\":\"description\"},\"LastUpdated\":{\"shape\":\"Sgz\",\"locationName\":\"lastUpdated\"},\"Name\":{\"locationName\":\"name\"},\"Settings\":{\"shape\":\"Shk\",\"locationName\":\"settings\"},\"Type\":{\"locationName\":\"type\"}},\"required\":[\"Settings\",\"Name\"]},\"Shr\":{\"type\":\"structure\",\"members\":{\"Commitment\":{\"locationName\":\"commitment\"},\"RenewalType\":{\"locationName\":\"renewalType\"},\"ReservedSlots\":{\"locationName\":\"reservedSlots\",\"type\":\"integer\"}},\"required\":[\"Commitment\",\"ReservedSlots\",\"RenewalType\"]},\"Shw\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreatedAt\":{\"shape\":\"Sgz\",\"locationName\":\"createdAt\"},\"Description\":{\"locationName\":\"description\"},\"LastUpdated\":{\"shape\":\"Sgz\",\"locationName\":\"lastUpdated\"},\"Name\":{\"locationName\":\"name\"},\"PricingPlan\":{\"locationName\":\"pricingPlan\"},\"ProgressingJobsCount\":{\"locationName\":\"progressingJobsCount\",\"type\":\"integer\"},\"ReservationPlan\":{\"locationName\":\"reservationPlan\",\"type\":\"structure\",\"members\":{\"Commitment\":{\"locationName\":\"commitment\"},\"ExpiresAt\":{\"shape\":\"Sgz\",\"locationName\":\"expiresAt\"},\"PurchasedAt\":{\"shape\":\"Sgz\",\"locationName\":\"purchasedAt\"},\"RenewalType\":{\"locationName\":\"renewalType\"},\"ReservedSlots\":{\"locationName\":\"reservedSlots\",\"type\":\"integer\"},\"Status\":{\"locationName\":\"status\"}}},\"Status\":{\"locationName\":\"status\"},\"SubmittedJobsCount\":{\"locationName\":\"submittedJobsCount\",\"type\":\"integer\"},\"Type\":{\"locationName\":\"type\"}},\"required\":[\"Name\"]}}}");

/***/ }),

/***/ 12236:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeEndpoints\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Endpoints\"},\"ListJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Jobs\"},\"ListPresets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Presets\"},\"ListJobTemplates\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"JobTemplates\"},\"ListQueues\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Queues\"}}}");

/***/ }),

/***/ 71020:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-10-14\",\"endpointPrefix\":\"medialive\",\"signingName\":\"medialive\",\"serviceFullName\":\"AWS Elemental MediaLive\",\"serviceId\":\"MediaLive\",\"protocol\":\"rest-json\",\"uid\":\"medialive-2017-10-14\",\"signatureVersion\":\"v4\",\"serviceAbbreviation\":\"MediaLive\",\"jsonVersion\":\"1.1\"},\"operations\":{\"AcceptInputDeviceTransfer\":{\"http\":{\"requestUri\":\"/prod/inputDevices/{inputDeviceId}/accept\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"}},\"required\":[\"InputDeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchDelete\":{\"http\":{\"requestUri\":\"/prod/batch/delete\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelIds\":{\"shape\":\"S5\",\"locationName\":\"channelIds\"},\"InputIds\":{\"shape\":\"S5\",\"locationName\":\"inputIds\"},\"InputSecurityGroupIds\":{\"shape\":\"S5\",\"locationName\":\"inputSecurityGroupIds\"},\"MultiplexIds\":{\"shape\":\"S5\",\"locationName\":\"multiplexIds\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Failed\":{\"shape\":\"S7\",\"locationName\":\"failed\"},\"Successful\":{\"shape\":\"S9\",\"locationName\":\"successful\"}}}},\"BatchStart\":{\"http\":{\"requestUri\":\"/prod/batch/start\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelIds\":{\"shape\":\"S5\",\"locationName\":\"channelIds\"},\"MultiplexIds\":{\"shape\":\"S5\",\"locationName\":\"multiplexIds\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Failed\":{\"shape\":\"S7\",\"locationName\":\"failed\"},\"Successful\":{\"shape\":\"S9\",\"locationName\":\"successful\"}}}},\"BatchStop\":{\"http\":{\"requestUri\":\"/prod/batch/stop\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelIds\":{\"shape\":\"S5\",\"locationName\":\"channelIds\"},\"MultiplexIds\":{\"shape\":\"S5\",\"locationName\":\"multiplexIds\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Failed\":{\"shape\":\"S7\",\"locationName\":\"failed\"},\"Successful\":{\"shape\":\"S9\",\"locationName\":\"successful\"}}}},\"BatchUpdateSchedule\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/channels/{channelId}/schedule\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"},\"Creates\":{\"locationName\":\"creates\",\"type\":\"structure\",\"members\":{\"ScheduleActions\":{\"shape\":\"Sh\",\"locationName\":\"scheduleActions\"}},\"required\":[\"ScheduleActions\"]},\"Deletes\":{\"locationName\":\"deletes\",\"type\":\"structure\",\"members\":{\"ActionNames\":{\"shape\":\"S5\",\"locationName\":\"actionNames\"}},\"required\":[\"ActionNames\"]}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Creates\":{\"locationName\":\"creates\",\"type\":\"structure\",\"members\":{\"ScheduleActions\":{\"shape\":\"Sh\",\"locationName\":\"scheduleActions\"}},\"required\":[\"ScheduleActions\"]},\"Deletes\":{\"locationName\":\"deletes\",\"type\":\"structure\",\"members\":{\"ScheduleActions\":{\"shape\":\"Sh\",\"locationName\":\"scheduleActions\"}},\"required\":[\"ScheduleActions\"]}}}},\"CancelInputDeviceTransfer\":{\"http\":{\"requestUri\":\"/prod/inputDevices/{inputDeviceId}/cancel\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"}},\"required\":[\"InputDeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateChannel\":{\"http\":{\"requestUri\":\"/prod/channels\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"RequestId\":{\"locationName\":\"requestId\",\"idempotencyToken\":true},\"Reserved\":{\"locationName\":\"reserved\",\"deprecated\":true},\"RoleArn\":{\"locationName\":\"roleArn\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"locationName\":\"vpc\",\"type\":\"structure\",\"members\":{\"PublicAddressAllocationIds\":{\"shape\":\"S5\",\"locationName\":\"publicAddressAllocationIds\"},\"SecurityGroupIds\":{\"shape\":\"S5\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S5\",\"locationName\":\"subnetIds\"}},\"required\":[\"SubnetIds\"]}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channel\":{\"shape\":\"Sdw\",\"locationName\":\"channel\"}}}},\"CreateInput\":{\"http\":{\"requestUri\":\"/prod/inputs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Destinations\":{\"shape\":\"Se4\",\"locationName\":\"destinations\"},\"InputDevices\":{\"shape\":\"Se6\",\"locationName\":\"inputDevices\"},\"InputSecurityGroups\":{\"shape\":\"S5\",\"locationName\":\"inputSecurityGroups\"},\"MediaConnectFlows\":{\"shape\":\"Se8\",\"locationName\":\"mediaConnectFlows\"},\"Name\":{\"locationName\":\"name\"},\"RequestId\":{\"locationName\":\"requestId\",\"idempotencyToken\":true},\"RoleArn\":{\"locationName\":\"roleArn\"},\"Sources\":{\"shape\":\"Sea\",\"locationName\":\"sources\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Type\":{\"locationName\":\"type\"},\"Vpc\":{\"locationName\":\"vpc\",\"type\":\"structure\",\"members\":{\"SecurityGroupIds\":{\"shape\":\"S5\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S5\",\"locationName\":\"subnetIds\"}},\"required\":[\"SubnetIds\"]}}},\"output\":{\"type\":\"structure\",\"members\":{\"Input\":{\"shape\":\"Sef\",\"locationName\":\"input\"}}}},\"CreateInputSecurityGroup\":{\"http\":{\"requestUri\":\"/prod/inputSecurityGroups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"WhitelistRules\":{\"shape\":\"Ser\",\"locationName\":\"whitelistRules\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityGroup\":{\"shape\":\"Seu\",\"locationName\":\"securityGroup\"}}}},\"CreateMultiplex\":{\"http\":{\"requestUri\":\"/prod/multiplexes\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"},\"RequestId\":{\"locationName\":\"requestId\",\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}},\"required\":[\"RequestId\",\"MultiplexSettings\",\"AvailabilityZones\",\"Name\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Multiplex\":{\"shape\":\"Sf4\",\"locationName\":\"multiplex\"}}}},\"CreateMultiplexProgram\":{\"http\":{\"requestUri\":\"/prod/multiplexes/{multiplexId}/programs\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"},\"MultiplexProgramSettings\":{\"shape\":\"Sfa\",\"locationName\":\"multiplexProgramSettings\"},\"ProgramName\":{\"locationName\":\"programName\"},\"RequestId\":{\"locationName\":\"requestId\",\"idempotencyToken\":true}},\"required\":[\"MultiplexId\",\"RequestId\",\"MultiplexProgramSettings\",\"ProgramName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MultiplexProgram\":{\"shape\":\"Sfj\",\"locationName\":\"multiplexProgram\"}}}},\"CreatePartnerInput\":{\"http\":{\"requestUri\":\"/prod/inputs/{inputId}/partners\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"InputId\":{\"location\":\"uri\",\"locationName\":\"inputId\"},\"RequestId\":{\"locationName\":\"requestId\",\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}},\"required\":[\"InputId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Input\":{\"shape\":\"Sef\",\"locationName\":\"input\"}}}},\"CreateTags\":{\"http\":{\"requestUri\":\"/prod/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\"]}},\"DeleteChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/channels/{channelId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EgressEndpoints\":{\"shape\":\"Sdx\",\"locationName\":\"egressEndpoints\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"Id\":{\"locationName\":\"id\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"PipelineDetails\":{\"shape\":\"Sdz\",\"locationName\":\"pipelineDetails\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"shape\":\"Se2\",\"locationName\":\"vpc\"}}}},\"DeleteInput\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/inputs/{inputId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputId\":{\"location\":\"uri\",\"locationName\":\"inputId\"}},\"required\":[\"InputId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInputSecurityGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/inputSecurityGroups/{inputSecurityGroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputSecurityGroupId\":{\"location\":\"uri\",\"locationName\":\"inputSecurityGroupId\"}},\"required\":[\"InputSecurityGroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteMultiplex\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/multiplexes/{multiplexId}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"}},\"required\":[\"MultiplexId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"Destinations\":{\"shape\":\"Sf5\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"ProgramCount\":{\"locationName\":\"programCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}}},\"DeleteMultiplexProgram\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/multiplexes/{multiplexId}/programs/{programName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"},\"ProgramName\":{\"location\":\"uri\",\"locationName\":\"programName\"}},\"required\":[\"MultiplexId\",\"ProgramName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"locationName\":\"channelId\"},\"MultiplexProgramSettings\":{\"shape\":\"Sfa\",\"locationName\":\"multiplexProgramSettings\"},\"PacketIdentifiersMap\":{\"shape\":\"Sfk\",\"locationName\":\"packetIdentifiersMap\"},\"PipelineDetails\":{\"shape\":\"Sfm\",\"locationName\":\"pipelineDetails\"},\"ProgramName\":{\"locationName\":\"programName\"}}}},\"DeleteReservation\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/reservations/{reservationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ReservationId\":{\"location\":\"uri\",\"locationName\":\"reservationId\"}},\"required\":[\"ReservationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"End\":{\"locationName\":\"end\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"double\"},\"Name\":{\"locationName\":\"name\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"Region\":{\"locationName\":\"region\"},\"ReservationId\":{\"locationName\":\"reservationId\"},\"ResourceSpecification\":{\"shape\":\"Sg5\",\"locationName\":\"resourceSpecification\"},\"Start\":{\"locationName\":\"start\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"double\"}}}},\"DeleteSchedule\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/channels/{channelId}/schedule\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTags\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/prod/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"shape\":\"S5\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"DescribeChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/channels/{channelId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EgressEndpoints\":{\"shape\":\"Sdx\",\"locationName\":\"egressEndpoints\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"Id\":{\"locationName\":\"id\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"PipelineDetails\":{\"shape\":\"Sdz\",\"locationName\":\"pipelineDetails\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"shape\":\"Se2\",\"locationName\":\"vpc\"}}}},\"DescribeInput\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputs/{inputId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputId\":{\"location\":\"uri\",\"locationName\":\"inputId\"}},\"required\":[\"InputId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AttachedChannels\":{\"shape\":\"S5\",\"locationName\":\"attachedChannels\"},\"Destinations\":{\"shape\":\"Seg\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"InputClass\":{\"locationName\":\"inputClass\"},\"InputDevices\":{\"shape\":\"Se6\",\"locationName\":\"inputDevices\"},\"InputPartnerIds\":{\"shape\":\"S5\",\"locationName\":\"inputPartnerIds\"},\"InputSourceType\":{\"locationName\":\"inputSourceType\"},\"MediaConnectFlows\":{\"shape\":\"Sel\",\"locationName\":\"mediaConnectFlows\"},\"Name\":{\"locationName\":\"name\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SecurityGroups\":{\"shape\":\"S5\",\"locationName\":\"securityGroups\"},\"Sources\":{\"shape\":\"Sen\",\"locationName\":\"sources\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Type\":{\"locationName\":\"type\"}}}},\"DescribeInputDevice\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputDevices/{inputDeviceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"}},\"required\":[\"InputDeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"ConnectionState\":{\"locationName\":\"connectionState\"},\"DeviceSettingsSyncState\":{\"locationName\":\"deviceSettingsSyncState\"},\"DeviceUpdateStatus\":{\"locationName\":\"deviceUpdateStatus\"},\"HdDeviceSettings\":{\"shape\":\"Sgq\",\"locationName\":\"hdDeviceSettings\"},\"Id\":{\"locationName\":\"id\"},\"MacAddress\":{\"locationName\":\"macAddress\"},\"Name\":{\"locationName\":\"name\"},\"NetworkSettings\":{\"shape\":\"Sgv\",\"locationName\":\"networkSettings\"},\"SerialNumber\":{\"locationName\":\"serialNumber\"},\"Type\":{\"locationName\":\"type\"},\"UhdDeviceSettings\":{\"shape\":\"Sgy\",\"locationName\":\"uhdDeviceSettings\"}}}},\"DescribeInputDeviceThumbnail\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputDevices/{inputDeviceId}/thumbnailData\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"},\"Accept\":{\"location\":\"header\",\"locationName\":\"accept\"}},\"required\":[\"InputDeviceId\",\"Accept\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Body\":{\"locationName\":\"body\",\"type\":\"blob\",\"streaming\":true},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"LastModified\":{\"location\":\"header\",\"locationName\":\"Last-Modified\",\"type\":\"timestamp\"}},\"payload\":\"Body\"}},\"DescribeInputSecurityGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputSecurityGroups/{inputSecurityGroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputSecurityGroupId\":{\"location\":\"uri\",\"locationName\":\"inputSecurityGroupId\"}},\"required\":[\"InputSecurityGroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Id\":{\"locationName\":\"id\"},\"Inputs\":{\"shape\":\"S5\",\"locationName\":\"inputs\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"WhitelistRules\":{\"shape\":\"Sew\",\"locationName\":\"whitelistRules\"}}}},\"DescribeMultiplex\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/multiplexes/{multiplexId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"}},\"required\":[\"MultiplexId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"Destinations\":{\"shape\":\"Sf5\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"ProgramCount\":{\"locationName\":\"programCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}}},\"DescribeMultiplexProgram\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/multiplexes/{multiplexId}/programs/{programName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"},\"ProgramName\":{\"location\":\"uri\",\"locationName\":\"programName\"}},\"required\":[\"MultiplexId\",\"ProgramName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"locationName\":\"channelId\"},\"MultiplexProgramSettings\":{\"shape\":\"Sfa\",\"locationName\":\"multiplexProgramSettings\"},\"PacketIdentifiersMap\":{\"shape\":\"Sfk\",\"locationName\":\"packetIdentifiersMap\"},\"PipelineDetails\":{\"shape\":\"Sfm\",\"locationName\":\"pipelineDetails\"},\"ProgramName\":{\"locationName\":\"programName\"}}}},\"DescribeOffering\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/offerings/{offeringId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"OfferingId\":{\"location\":\"uri\",\"locationName\":\"offeringId\"}},\"required\":[\"OfferingId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"double\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"Region\":{\"locationName\":\"region\"},\"ResourceSpecification\":{\"shape\":\"Sg5\",\"locationName\":\"resourceSpecification\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"double\"}}}},\"DescribeReservation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/reservations/{reservationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ReservationId\":{\"location\":\"uri\",\"locationName\":\"reservationId\"}},\"required\":[\"ReservationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"End\":{\"locationName\":\"end\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"double\"},\"Name\":{\"locationName\":\"name\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"Region\":{\"locationName\":\"region\"},\"ReservationId\":{\"locationName\":\"reservationId\"},\"ResourceSpecification\":{\"shape\":\"Sg5\",\"locationName\":\"resourceSpecification\"},\"Start\":{\"locationName\":\"start\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"double\"}}}},\"DescribeSchedule\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/channels/{channelId}/schedule\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"ScheduleActions\":{\"shape\":\"Sh\",\"locationName\":\"scheduleActions\"}}}},\"ListChannels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/channels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Channels\":{\"locationName\":\"channels\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EgressEndpoints\":{\"shape\":\"Sdx\",\"locationName\":\"egressEndpoints\"},\"Id\":{\"locationName\":\"id\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"shape\":\"Se2\",\"locationName\":\"vpc\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListInputDeviceTransfers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputDeviceTransfers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"TransferType\":{\"location\":\"querystring\",\"locationName\":\"transferType\"}},\"required\":[\"TransferType\"]},\"output\":{\"type\":\"structure\",\"members\":{\"InputDeviceTransfers\":{\"locationName\":\"inputDeviceTransfers\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"},\"Message\":{\"locationName\":\"message\"},\"TargetCustomerId\":{\"locationName\":\"targetCustomerId\"},\"TransferType\":{\"locationName\":\"transferType\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListInputDevices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputDevices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InputDevices\":{\"locationName\":\"inputDevices\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"ConnectionState\":{\"locationName\":\"connectionState\"},\"DeviceSettingsSyncState\":{\"locationName\":\"deviceSettingsSyncState\"},\"DeviceUpdateStatus\":{\"locationName\":\"deviceUpdateStatus\"},\"HdDeviceSettings\":{\"shape\":\"Sgq\",\"locationName\":\"hdDeviceSettings\"},\"Id\":{\"locationName\":\"id\"},\"MacAddress\":{\"locationName\":\"macAddress\"},\"Name\":{\"locationName\":\"name\"},\"NetworkSettings\":{\"shape\":\"Sgv\",\"locationName\":\"networkSettings\"},\"SerialNumber\":{\"locationName\":\"serialNumber\"},\"Type\":{\"locationName\":\"type\"},\"UhdDeviceSettings\":{\"shape\":\"Sgy\",\"locationName\":\"uhdDeviceSettings\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListInputSecurityGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputSecurityGroups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InputSecurityGroups\":{\"locationName\":\"inputSecurityGroups\",\"type\":\"list\",\"member\":{\"shape\":\"Seu\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListInputs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/inputs\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Inputs\":{\"locationName\":\"inputs\",\"type\":\"list\",\"member\":{\"shape\":\"Sef\"}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListMultiplexPrograms\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/multiplexes/{multiplexId}/programs\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"MultiplexId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MultiplexPrograms\":{\"locationName\":\"multiplexPrograms\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"locationName\":\"channelId\"},\"ProgramName\":{\"locationName\":\"programName\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListMultiplexes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/multiplexes\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Multiplexes\":{\"locationName\":\"multiplexes\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"Id\":{\"locationName\":\"id\"},\"MultiplexSettings\":{\"locationName\":\"multiplexSettings\",\"type\":\"structure\",\"members\":{\"TransportStreamBitrate\":{\"locationName\":\"transportStreamBitrate\",\"type\":\"integer\"}}},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"ProgramCount\":{\"locationName\":\"programCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListOfferings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/offerings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelClass\":{\"location\":\"querystring\",\"locationName\":\"channelClass\"},\"ChannelConfiguration\":{\"location\":\"querystring\",\"locationName\":\"channelConfiguration\"},\"Codec\":{\"location\":\"querystring\",\"locationName\":\"codec\"},\"Duration\":{\"location\":\"querystring\",\"locationName\":\"duration\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"MaximumBitrate\":{\"location\":\"querystring\",\"locationName\":\"maximumBitrate\"},\"MaximumFramerate\":{\"location\":\"querystring\",\"locationName\":\"maximumFramerate\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"Resolution\":{\"location\":\"querystring\",\"locationName\":\"resolution\"},\"ResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"SpecialFeature\":{\"location\":\"querystring\",\"locationName\":\"specialFeature\"},\"VideoQuality\":{\"location\":\"querystring\",\"locationName\":\"videoQuality\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Offerings\":{\"locationName\":\"offerings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"double\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"Region\":{\"locationName\":\"region\"},\"ResourceSpecification\":{\"shape\":\"Sg5\",\"locationName\":\"resourceSpecification\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"double\"}}}}}}},\"ListReservations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/reservations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelClass\":{\"location\":\"querystring\",\"locationName\":\"channelClass\"},\"Codec\":{\"location\":\"querystring\",\"locationName\":\"codec\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"MaximumBitrate\":{\"location\":\"querystring\",\"locationName\":\"maximumBitrate\"},\"MaximumFramerate\":{\"location\":\"querystring\",\"locationName\":\"maximumFramerate\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"Resolution\":{\"location\":\"querystring\",\"locationName\":\"resolution\"},\"ResourceType\":{\"location\":\"querystring\",\"locationName\":\"resourceType\"},\"SpecialFeature\":{\"location\":\"querystring\",\"locationName\":\"specialFeature\"},\"VideoQuality\":{\"location\":\"querystring\",\"locationName\":\"videoQuality\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Reservations\":{\"locationName\":\"reservations\",\"type\":\"list\",\"member\":{\"shape\":\"Sii\"}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/prod/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}}},\"PurchaseOffering\":{\"http\":{\"requestUri\":\"/prod/offerings/{offeringId}/purchase\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"OfferingId\":{\"location\":\"uri\",\"locationName\":\"offeringId\"},\"RequestId\":{\"locationName\":\"requestId\",\"idempotencyToken\":true},\"Start\":{\"locationName\":\"start\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}},\"required\":[\"OfferingId\",\"Count\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Reservation\":{\"shape\":\"Sii\",\"locationName\":\"reservation\"}}}},\"RejectInputDeviceTransfer\":{\"http\":{\"requestUri\":\"/prod/inputDevices/{inputDeviceId}/reject\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"}},\"required\":[\"InputDeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartChannel\":{\"http\":{\"requestUri\":\"/prod/channels/{channelId}/start\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EgressEndpoints\":{\"shape\":\"Sdx\",\"locationName\":\"egressEndpoints\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"Id\":{\"locationName\":\"id\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"PipelineDetails\":{\"shape\":\"Sdz\",\"locationName\":\"pipelineDetails\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"shape\":\"Se2\",\"locationName\":\"vpc\"}}}},\"StartMultiplex\":{\"http\":{\"requestUri\":\"/prod/multiplexes/{multiplexId}/start\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"}},\"required\":[\"MultiplexId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"Destinations\":{\"shape\":\"Sf5\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"ProgramCount\":{\"locationName\":\"programCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}}},\"StopChannel\":{\"http\":{\"requestUri\":\"/prod/channels/{channelId}/stop\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EgressEndpoints\":{\"shape\":\"Sdx\",\"locationName\":\"egressEndpoints\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"Id\":{\"locationName\":\"id\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"PipelineDetails\":{\"shape\":\"Sdz\",\"locationName\":\"pipelineDetails\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"shape\":\"Se2\",\"locationName\":\"vpc\"}}}},\"StopMultiplex\":{\"http\":{\"requestUri\":\"/prod/multiplexes/{multiplexId}/stop\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"}},\"required\":[\"MultiplexId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"Destinations\":{\"shape\":\"Sf5\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"ProgramCount\":{\"locationName\":\"programCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}}},\"TransferInputDevice\":{\"http\":{\"requestUri\":\"/prod/inputDevices/{inputDeviceId}/transfer\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"},\"TargetCustomerId\":{\"locationName\":\"targetCustomerId\"},\"TargetRegion\":{\"locationName\":\"targetRegion\"},\"TransferMessage\":{\"locationName\":\"transferMessage\"}},\"required\":[\"InputDeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/channels/{channelId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"RoleArn\":{\"locationName\":\"roleArn\"}},\"required\":[\"ChannelId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Channel\":{\"shape\":\"Sdw\",\"locationName\":\"channel\"}}}},\"UpdateChannelClass\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/channels/{channelId}/channelClass\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ChannelClass\":{\"locationName\":\"channelClass\"},\"ChannelId\":{\"location\":\"uri\",\"locationName\":\"channelId\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"}},\"required\":[\"ChannelId\",\"ChannelClass\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Channel\":{\"shape\":\"Sdw\",\"locationName\":\"channel\"}}}},\"UpdateInput\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/inputs/{inputId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Destinations\":{\"shape\":\"Se4\",\"locationName\":\"destinations\"},\"InputDevices\":{\"locationName\":\"inputDevices\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"}}}},\"InputId\":{\"location\":\"uri\",\"locationName\":\"inputId\"},\"InputSecurityGroups\":{\"shape\":\"S5\",\"locationName\":\"inputSecurityGroups\"},\"MediaConnectFlows\":{\"shape\":\"Se8\",\"locationName\":\"mediaConnectFlows\"},\"Name\":{\"locationName\":\"name\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"Sources\":{\"shape\":\"Sea\",\"locationName\":\"sources\"}},\"required\":[\"InputId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Input\":{\"shape\":\"Sef\",\"locationName\":\"input\"}}}},\"UpdateInputDevice\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/inputDevices/{inputDeviceId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"HdDeviceSettings\":{\"shape\":\"Sj8\",\"locationName\":\"hdDeviceSettings\"},\"InputDeviceId\":{\"location\":\"uri\",\"locationName\":\"inputDeviceId\"},\"Name\":{\"locationName\":\"name\"},\"UhdDeviceSettings\":{\"shape\":\"Sj8\",\"locationName\":\"uhdDeviceSettings\"}},\"required\":[\"InputDeviceId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"ConnectionState\":{\"locationName\":\"connectionState\"},\"DeviceSettingsSyncState\":{\"locationName\":\"deviceSettingsSyncState\"},\"DeviceUpdateStatus\":{\"locationName\":\"deviceUpdateStatus\"},\"HdDeviceSettings\":{\"shape\":\"Sgq\",\"locationName\":\"hdDeviceSettings\"},\"Id\":{\"locationName\":\"id\"},\"MacAddress\":{\"locationName\":\"macAddress\"},\"Name\":{\"locationName\":\"name\"},\"NetworkSettings\":{\"shape\":\"Sgv\",\"locationName\":\"networkSettings\"},\"SerialNumber\":{\"locationName\":\"serialNumber\"},\"Type\":{\"locationName\":\"type\"},\"UhdDeviceSettings\":{\"shape\":\"Sgy\",\"locationName\":\"uhdDeviceSettings\"}}}},\"UpdateInputSecurityGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/inputSecurityGroups/{inputSecurityGroupId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"InputSecurityGroupId\":{\"location\":\"uri\",\"locationName\":\"inputSecurityGroupId\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"WhitelistRules\":{\"shape\":\"Ser\",\"locationName\":\"whitelistRules\"}},\"required\":[\"InputSecurityGroupId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SecurityGroup\":{\"shape\":\"Seu\",\"locationName\":\"securityGroup\"}}}},\"UpdateMultiplex\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/multiplexes/{multiplexId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"}},\"required\":[\"MultiplexId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Multiplex\":{\"shape\":\"Sf4\",\"locationName\":\"multiplex\"}}}},\"UpdateMultiplexProgram\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/multiplexes/{multiplexId}/programs/{programName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"location\":\"uri\",\"locationName\":\"multiplexId\"},\"MultiplexProgramSettings\":{\"shape\":\"Sfa\",\"locationName\":\"multiplexProgramSettings\"},\"ProgramName\":{\"location\":\"uri\",\"locationName\":\"programName\"}},\"required\":[\"MultiplexId\",\"ProgramName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MultiplexProgram\":{\"shape\":\"Sfj\",\"locationName\":\"multiplexProgram\"}}}},\"UpdateReservation\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/prod/reservations/{reservationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"ReservationId\":{\"location\":\"uri\",\"locationName\":\"reservationId\"}},\"required\":[\"ReservationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Reservation\":{\"shape\":\"Sii\",\"locationName\":\"reservation\"}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Code\":{\"locationName\":\"code\"},\"Id\":{\"locationName\":\"id\"},\"Message\":{\"locationName\":\"message\"}}}},\"S9\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Id\":{\"locationName\":\"id\"},\"State\":{\"locationName\":\"state\"}}}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionName\":{\"locationName\":\"actionName\"},\"ScheduleActionSettings\":{\"locationName\":\"scheduleActionSettings\",\"type\":\"structure\",\"members\":{\"HlsId3SegmentTaggingSettings\":{\"locationName\":\"hlsId3SegmentTaggingSettings\",\"type\":\"structure\",\"members\":{\"Tag\":{\"locationName\":\"tag\"}},\"required\":[\"Tag\"]},\"HlsTimedMetadataSettings\":{\"locationName\":\"hlsTimedMetadataSettings\",\"type\":\"structure\",\"members\":{\"Id3\":{\"locationName\":\"id3\"}},\"required\":[\"Id3\"]},\"InputPrepareSettings\":{\"locationName\":\"inputPrepareSettings\",\"type\":\"structure\",\"members\":{\"InputAttachmentNameReference\":{\"locationName\":\"inputAttachmentNameReference\"},\"InputClippingSettings\":{\"shape\":\"Sn\",\"locationName\":\"inputClippingSettings\"},\"UrlPath\":{\"shape\":\"S5\",\"locationName\":\"urlPath\"}}},\"InputSwitchSettings\":{\"locationName\":\"inputSwitchSettings\",\"type\":\"structure\",\"members\":{\"InputAttachmentNameReference\":{\"locationName\":\"inputAttachmentNameReference\"},\"InputClippingSettings\":{\"shape\":\"Sn\",\"locationName\":\"inputClippingSettings\"},\"UrlPath\":{\"shape\":\"S5\",\"locationName\":\"urlPath\"}},\"required\":[\"InputAttachmentNameReference\"]},\"MotionGraphicsImageActivateSettings\":{\"locationName\":\"motionGraphicsImageActivateSettings\",\"type\":\"structure\",\"members\":{\"Duration\":{\"locationName\":\"duration\",\"type\":\"long\"},\"PasswordParam\":{\"locationName\":\"passwordParam\"},\"Url\":{\"locationName\":\"url\"},\"Username\":{\"locationName\":\"username\"}}},\"MotionGraphicsImageDeactivateSettings\":{\"locationName\":\"motionGraphicsImageDeactivateSettings\",\"type\":\"structure\",\"members\":{}},\"PauseStateSettings\":{\"locationName\":\"pauseStateSettings\",\"type\":\"structure\",\"members\":{\"Pipelines\":{\"locationName\":\"pipelines\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PipelineId\":{\"locationName\":\"pipelineId\"}},\"required\":[\"PipelineId\"]}}}},\"Scte35ReturnToNetworkSettings\":{\"locationName\":\"scte35ReturnToNetworkSettings\",\"type\":\"structure\",\"members\":{\"SpliceEventId\":{\"locationName\":\"spliceEventId\",\"type\":\"long\"}},\"required\":[\"SpliceEventId\"]},\"Scte35SpliceInsertSettings\":{\"locationName\":\"scte35SpliceInsertSettings\",\"type\":\"structure\",\"members\":{\"Duration\":{\"locationName\":\"duration\",\"type\":\"long\"},\"SpliceEventId\":{\"locationName\":\"spliceEventId\",\"type\":\"long\"}},\"required\":[\"SpliceEventId\"]},\"Scte35TimeSignalSettings\":{\"locationName\":\"scte35TimeSignalSettings\",\"type\":\"structure\",\"members\":{\"Scte35Descriptors\":{\"locationName\":\"scte35Descriptors\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Scte35DescriptorSettings\":{\"locationName\":\"scte35DescriptorSettings\",\"type\":\"structure\",\"members\":{\"SegmentationDescriptorScte35DescriptorSettings\":{\"locationName\":\"segmentationDescriptorScte35DescriptorSettings\",\"type\":\"structure\",\"members\":{\"DeliveryRestrictions\":{\"locationName\":\"deliveryRestrictions\",\"type\":\"structure\",\"members\":{\"ArchiveAllowedFlag\":{\"locationName\":\"archiveAllowedFlag\"},\"DeviceRestrictions\":{\"locationName\":\"deviceRestrictions\"},\"NoRegionalBlackoutFlag\":{\"locationName\":\"noRegionalBlackoutFlag\"},\"WebDeliveryAllowedFlag\":{\"locationName\":\"webDeliveryAllowedFlag\"}},\"required\":[\"DeviceRestrictions\",\"ArchiveAllowedFlag\",\"WebDeliveryAllowedFlag\",\"NoRegionalBlackoutFlag\"]},\"SegmentNum\":{\"locationName\":\"segmentNum\",\"type\":\"integer\"},\"SegmentationCancelIndicator\":{\"locationName\":\"segmentationCancelIndicator\"},\"SegmentationDuration\":{\"locationName\":\"segmentationDuration\",\"type\":\"long\"},\"SegmentationEventId\":{\"locationName\":\"segmentationEventId\",\"type\":\"long\"},\"SegmentationTypeId\":{\"locationName\":\"segmentationTypeId\",\"type\":\"integer\"},\"SegmentationUpid\":{\"locationName\":\"segmentationUpid\"},\"SegmentationUpidType\":{\"locationName\":\"segmentationUpidType\",\"type\":\"integer\"},\"SegmentsExpected\":{\"locationName\":\"segmentsExpected\",\"type\":\"integer\"},\"SubSegmentNum\":{\"locationName\":\"subSegmentNum\",\"type\":\"integer\"},\"SubSegmentsExpected\":{\"locationName\":\"subSegmentsExpected\",\"type\":\"integer\"}},\"required\":[\"SegmentationEventId\",\"SegmentationCancelIndicator\"]}},\"required\":[\"SegmentationDescriptorScte35DescriptorSettings\"]}},\"required\":[\"Scte35DescriptorSettings\"]}}},\"required\":[\"Scte35Descriptors\"]},\"StaticImageActivateSettings\":{\"locationName\":\"staticImageActivateSettings\",\"type\":\"structure\",\"members\":{\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"FadeIn\":{\"locationName\":\"fadeIn\",\"type\":\"integer\"},\"FadeOut\":{\"locationName\":\"fadeOut\",\"type\":\"integer\"},\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"Image\":{\"shape\":\"S1k\",\"locationName\":\"image\"},\"ImageX\":{\"locationName\":\"imageX\",\"type\":\"integer\"},\"ImageY\":{\"locationName\":\"imageY\",\"type\":\"integer\"},\"Layer\":{\"locationName\":\"layer\",\"type\":\"integer\"},\"Opacity\":{\"locationName\":\"opacity\",\"type\":\"integer\"},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"}},\"required\":[\"Image\"]},\"StaticImageDeactivateSettings\":{\"locationName\":\"staticImageDeactivateSettings\",\"type\":\"structure\",\"members\":{\"FadeOut\":{\"locationName\":\"fadeOut\",\"type\":\"integer\"},\"Layer\":{\"locationName\":\"layer\",\"type\":\"integer\"}}}}},\"ScheduleActionStartSettings\":{\"locationName\":\"scheduleActionStartSettings\",\"type\":\"structure\",\"members\":{\"FixedModeScheduleActionStartSettings\":{\"locationName\":\"fixedModeScheduleActionStartSettings\",\"type\":\"structure\",\"members\":{\"Time\":{\"locationName\":\"time\"}},\"required\":[\"Time\"]},\"FollowModeScheduleActionStartSettings\":{\"locationName\":\"followModeScheduleActionStartSettings\",\"type\":\"structure\",\"members\":{\"FollowPoint\":{\"locationName\":\"followPoint\"},\"ReferenceActionName\":{\"locationName\":\"referenceActionName\"}},\"required\":[\"ReferenceActionName\",\"FollowPoint\"]},\"ImmediateModeScheduleActionStartSettings\":{\"locationName\":\"immediateModeScheduleActionStartSettings\",\"type\":\"structure\",\"members\":{}}}}},\"required\":[\"ActionName\",\"ScheduleActionStartSettings\",\"ScheduleActionSettings\"]}},\"Sn\":{\"type\":\"structure\",\"members\":{\"InputTimecodeSource\":{\"locationName\":\"inputTimecodeSource\"},\"StartTimecode\":{\"locationName\":\"startTimecode\",\"type\":\"structure\",\"members\":{\"Timecode\":{\"locationName\":\"timecode\"}}},\"StopTimecode\":{\"locationName\":\"stopTimecode\",\"type\":\"structure\",\"members\":{\"LastFrameClippingBehavior\":{\"locationName\":\"lastFrameClippingBehavior\"},\"Timecode\":{\"locationName\":\"timecode\"}}}},\"required\":[\"InputTimecodeSource\"]},\"S1k\":{\"type\":\"structure\",\"members\":{\"PasswordParam\":{\"locationName\":\"passwordParam\"},\"Uri\":{\"locationName\":\"uri\"},\"Username\":{\"locationName\":\"username\"}},\"required\":[\"Uri\"]},\"S20\":{\"type\":\"structure\",\"members\":{\"Resolution\":{\"locationName\":\"resolution\"}}},\"S23\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"},\"MediaPackageSettings\":{\"locationName\":\"mediaPackageSettings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"locationName\":\"channelId\"}}}},\"MultiplexSettings\":{\"locationName\":\"multiplexSettings\",\"type\":\"structure\",\"members\":{\"MultiplexId\":{\"locationName\":\"multiplexId\"},\"ProgramName\":{\"locationName\":\"programName\"}}},\"Settings\":{\"locationName\":\"settings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PasswordParam\":{\"locationName\":\"passwordParam\"},\"StreamName\":{\"locationName\":\"streamName\"},\"Url\":{\"locationName\":\"url\"},\"Username\":{\"locationName\":\"username\"}}}}}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"AudioDescriptions\":{\"locationName\":\"audioDescriptions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AudioNormalizationSettings\":{\"locationName\":\"audioNormalizationSettings\",\"type\":\"structure\",\"members\":{\"Algorithm\":{\"locationName\":\"algorithm\"},\"AlgorithmControl\":{\"locationName\":\"algorithmControl\"},\"TargetLkfs\":{\"locationName\":\"targetLkfs\",\"type\":\"double\"}}},\"AudioSelectorName\":{\"locationName\":\"audioSelectorName\"},\"AudioType\":{\"locationName\":\"audioType\"},\"AudioTypeControl\":{\"locationName\":\"audioTypeControl\"},\"CodecSettings\":{\"locationName\":\"codecSettings\",\"type\":\"structure\",\"members\":{\"AacSettings\":{\"locationName\":\"aacSettings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"double\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"InputType\":{\"locationName\":\"inputType\"},\"Profile\":{\"locationName\":\"profile\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"RawFormat\":{\"locationName\":\"rawFormat\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"double\"},\"Spec\":{\"locationName\":\"spec\"},\"VbrQuality\":{\"locationName\":\"vbrQuality\"}}},\"Ac3Settings\":{\"locationName\":\"ac3Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"double\"},\"BitstreamMode\":{\"locationName\":\"bitstreamMode\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"Dialnorm\":{\"locationName\":\"dialnorm\",\"type\":\"integer\"},\"DrcProfile\":{\"locationName\":\"drcProfile\"},\"LfeFilter\":{\"locationName\":\"lfeFilter\"},\"MetadataControl\":{\"locationName\":\"metadataControl\"}}},\"Eac3Settings\":{\"locationName\":\"eac3Settings\",\"type\":\"structure\",\"members\":{\"AttenuationControl\":{\"locationName\":\"attenuationControl\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"double\"},\"BitstreamMode\":{\"locationName\":\"bitstreamMode\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"DcFilter\":{\"locationName\":\"dcFilter\"},\"Dialnorm\":{\"locationName\":\"dialnorm\",\"type\":\"integer\"},\"DrcLine\":{\"locationName\":\"drcLine\"},\"DrcRf\":{\"locationName\":\"drcRf\"},\"LfeControl\":{\"locationName\":\"lfeControl\"},\"LfeFilter\":{\"locationName\":\"lfeFilter\"},\"LoRoCenterMixLevel\":{\"locationName\":\"loRoCenterMixLevel\",\"type\":\"double\"},\"LoRoSurroundMixLevel\":{\"locationName\":\"loRoSurroundMixLevel\",\"type\":\"double\"},\"LtRtCenterMixLevel\":{\"locationName\":\"ltRtCenterMixLevel\",\"type\":\"double\"},\"LtRtSurroundMixLevel\":{\"locationName\":\"ltRtSurroundMixLevel\",\"type\":\"double\"},\"MetadataControl\":{\"locationName\":\"metadataControl\"},\"PassthroughControl\":{\"locationName\":\"passthroughControl\"},\"PhaseControl\":{\"locationName\":\"phaseControl\"},\"StereoDownmix\":{\"locationName\":\"stereoDownmix\"},\"SurroundExMode\":{\"locationName\":\"surroundExMode\"},\"SurroundMode\":{\"locationName\":\"surroundMode\"}}},\"Mp2Settings\":{\"locationName\":\"mp2Settings\",\"type\":\"structure\",\"members\":{\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"double\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"double\"}}},\"PassThroughSettings\":{\"locationName\":\"passThroughSettings\",\"type\":\"structure\",\"members\":{}},\"WavSettings\":{\"locationName\":\"wavSettings\",\"type\":\"structure\",\"members\":{\"BitDepth\":{\"locationName\":\"bitDepth\",\"type\":\"double\"},\"CodingMode\":{\"locationName\":\"codingMode\"},\"SampleRate\":{\"locationName\":\"sampleRate\",\"type\":\"double\"}}}}},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageCodeControl\":{\"locationName\":\"languageCodeControl\"},\"Name\":{\"locationName\":\"name\"},\"RemixSettings\":{\"locationName\":\"remixSettings\",\"type\":\"structure\",\"members\":{\"ChannelMappings\":{\"locationName\":\"channelMappings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InputChannelLevels\":{\"locationName\":\"inputChannelLevels\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Gain\":{\"locationName\":\"gain\",\"type\":\"integer\"},\"InputChannel\":{\"locationName\":\"inputChannel\",\"type\":\"integer\"}},\"required\":[\"InputChannel\",\"Gain\"]}},\"OutputChannel\":{\"locationName\":\"outputChannel\",\"type\":\"integer\"}},\"required\":[\"OutputChannel\",\"InputChannelLevels\"]}},\"ChannelsIn\":{\"locationName\":\"channelsIn\",\"type\":\"integer\"},\"ChannelsOut\":{\"locationName\":\"channelsOut\",\"type\":\"integer\"}},\"required\":[\"ChannelMappings\"]},\"StreamName\":{\"locationName\":\"streamName\"}},\"required\":[\"AudioSelectorName\",\"Name\"]}},\"AvailBlanking\":{\"locationName\":\"availBlanking\",\"type\":\"structure\",\"members\":{\"AvailBlankingImage\":{\"shape\":\"S1k\",\"locationName\":\"availBlankingImage\"},\"State\":{\"locationName\":\"state\"}}},\"AvailConfiguration\":{\"locationName\":\"availConfiguration\",\"type\":\"structure\",\"members\":{\"AvailSettings\":{\"locationName\":\"availSettings\",\"type\":\"structure\",\"members\":{\"Scte35SpliceInsert\":{\"locationName\":\"scte35SpliceInsert\",\"type\":\"structure\",\"members\":{\"AdAvailOffset\":{\"locationName\":\"adAvailOffset\",\"type\":\"integer\"},\"NoRegionalBlackoutFlag\":{\"locationName\":\"noRegionalBlackoutFlag\"},\"WebDeliveryAllowedFlag\":{\"locationName\":\"webDeliveryAllowedFlag\"}}},\"Scte35TimeSignalApos\":{\"locationName\":\"scte35TimeSignalApos\",\"type\":\"structure\",\"members\":{\"AdAvailOffset\":{\"locationName\":\"adAvailOffset\",\"type\":\"integer\"},\"NoRegionalBlackoutFlag\":{\"locationName\":\"noRegionalBlackoutFlag\"},\"WebDeliveryAllowedFlag\":{\"locationName\":\"webDeliveryAllowedFlag\"}}}}}}},\"BlackoutSlate\":{\"locationName\":\"blackoutSlate\",\"type\":\"structure\",\"members\":{\"BlackoutSlateImage\":{\"shape\":\"S1k\",\"locationName\":\"blackoutSlateImage\"},\"NetworkEndBlackout\":{\"locationName\":\"networkEndBlackout\"},\"NetworkEndBlackoutImage\":{\"shape\":\"S1k\",\"locationName\":\"networkEndBlackoutImage\"},\"NetworkId\":{\"locationName\":\"networkId\"},\"State\":{\"locationName\":\"state\"}}},\"CaptionDescriptions\":{\"locationName\":\"captionDescriptions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CaptionSelectorName\":{\"locationName\":\"captionSelectorName\"},\"DestinationSettings\":{\"locationName\":\"destinationSettings\",\"type\":\"structure\",\"members\":{\"AribDestinationSettings\":{\"locationName\":\"aribDestinationSettings\",\"type\":\"structure\",\"members\":{}},\"BurnInDestinationSettings\":{\"locationName\":\"burnInDestinationSettings\",\"type\":\"structure\",\"members\":{\"Alignment\":{\"locationName\":\"alignment\"},\"BackgroundColor\":{\"locationName\":\"backgroundColor\"},\"BackgroundOpacity\":{\"locationName\":\"backgroundOpacity\",\"type\":\"integer\"},\"Font\":{\"shape\":\"S1k\",\"locationName\":\"font\"},\"FontColor\":{\"locationName\":\"fontColor\"},\"FontOpacity\":{\"locationName\":\"fontOpacity\",\"type\":\"integer\"},\"FontResolution\":{\"locationName\":\"fontResolution\",\"type\":\"integer\"},\"FontSize\":{\"locationName\":\"fontSize\"},\"OutlineColor\":{\"locationName\":\"outlineColor\"},\"OutlineSize\":{\"locationName\":\"outlineSize\",\"type\":\"integer\"},\"ShadowColor\":{\"locationName\":\"shadowColor\"},\"ShadowOpacity\":{\"locationName\":\"shadowOpacity\",\"type\":\"integer\"},\"ShadowXOffset\":{\"locationName\":\"shadowXOffset\",\"type\":\"integer\"},\"ShadowYOffset\":{\"locationName\":\"shadowYOffset\",\"type\":\"integer\"},\"TeletextGridControl\":{\"locationName\":\"teletextGridControl\"},\"XPosition\":{\"locationName\":\"xPosition\",\"type\":\"integer\"},\"YPosition\":{\"locationName\":\"yPosition\",\"type\":\"integer\"}}},\"DvbSubDestinationSettings\":{\"locationName\":\"dvbSubDestinationSettings\",\"type\":\"structure\",\"members\":{\"Alignment\":{\"locationName\":\"alignment\"},\"BackgroundColor\":{\"locationName\":\"backgroundColor\"},\"BackgroundOpacity\":{\"locationName\":\"backgroundOpacity\",\"type\":\"integer\"},\"Font\":{\"shape\":\"S1k\",\"locationName\":\"font\"},\"FontColor\":{\"locationName\":\"fontColor\"},\"FontOpacity\":{\"locationName\":\"fontOpacity\",\"type\":\"integer\"},\"FontResolution\":{\"locationName\":\"fontResolution\",\"type\":\"integer\"},\"FontSize\":{\"locationName\":\"fontSize\"},\"OutlineColor\":{\"locationName\":\"outlineColor\"},\"OutlineSize\":{\"locationName\":\"outlineSize\",\"type\":\"integer\"},\"ShadowColor\":{\"locationName\":\"shadowColor\"},\"ShadowOpacity\":{\"locationName\":\"shadowOpacity\",\"type\":\"integer\"},\"ShadowXOffset\":{\"locationName\":\"shadowXOffset\",\"type\":\"integer\"},\"ShadowYOffset\":{\"locationName\":\"shadowYOffset\",\"type\":\"integer\"},\"TeletextGridControl\":{\"locationName\":\"teletextGridControl\"},\"XPosition\":{\"locationName\":\"xPosition\",\"type\":\"integer\"},\"YPosition\":{\"locationName\":\"yPosition\",\"type\":\"integer\"}}},\"EbuTtDDestinationSettings\":{\"locationName\":\"ebuTtDDestinationSettings\",\"type\":\"structure\",\"members\":{\"CopyrightHolder\":{\"locationName\":\"copyrightHolder\"},\"FillLineGap\":{\"locationName\":\"fillLineGap\"},\"FontFamily\":{\"locationName\":\"fontFamily\"},\"StyleControl\":{\"locationName\":\"styleControl\"}}},\"EmbeddedDestinationSettings\":{\"locationName\":\"embeddedDestinationSettings\",\"type\":\"structure\",\"members\":{}},\"EmbeddedPlusScte20DestinationSettings\":{\"locationName\":\"embeddedPlusScte20DestinationSettings\",\"type\":\"structure\",\"members\":{}},\"RtmpCaptionInfoDestinationSettings\":{\"locationName\":\"rtmpCaptionInfoDestinationSettings\",\"type\":\"structure\",\"members\":{}},\"Scte20PlusEmbeddedDestinationSettings\":{\"locationName\":\"scte20PlusEmbeddedDestinationSettings\",\"type\":\"structure\",\"members\":{}},\"Scte27DestinationSettings\":{\"locationName\":\"scte27DestinationSettings\",\"type\":\"structure\",\"members\":{}},\"SmpteTtDestinationSettings\":{\"locationName\":\"smpteTtDestinationSettings\",\"type\":\"structure\",\"members\":{}},\"TeletextDestinationSettings\":{\"locationName\":\"teletextDestinationSettings\",\"type\":\"structure\",\"members\":{}},\"TtmlDestinationSettings\":{\"locationName\":\"ttmlDestinationSettings\",\"type\":\"structure\",\"members\":{\"StyleControl\":{\"locationName\":\"styleControl\"}}},\"WebvttDestinationSettings\":{\"locationName\":\"webvttDestinationSettings\",\"type\":\"structure\",\"members\":{}}}},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageDescription\":{\"locationName\":\"languageDescription\"},\"Name\":{\"locationName\":\"name\"}},\"required\":[\"CaptionSelectorName\",\"Name\"]}},\"FeatureActivations\":{\"locationName\":\"featureActivations\",\"type\":\"structure\",\"members\":{\"InputPrepareScheduleActions\":{\"locationName\":\"inputPrepareScheduleActions\"}}},\"GlobalConfiguration\":{\"locationName\":\"globalConfiguration\",\"type\":\"structure\",\"members\":{\"InitialAudioGain\":{\"locationName\":\"initialAudioGain\",\"type\":\"integer\"},\"InputEndAction\":{\"locationName\":\"inputEndAction\"},\"InputLossBehavior\":{\"locationName\":\"inputLossBehavior\",\"type\":\"structure\",\"members\":{\"BlackFrameMsec\":{\"locationName\":\"blackFrameMsec\",\"type\":\"integer\"},\"InputLossImageColor\":{\"locationName\":\"inputLossImageColor\"},\"InputLossImageSlate\":{\"shape\":\"S1k\",\"locationName\":\"inputLossImageSlate\"},\"InputLossImageType\":{\"locationName\":\"inputLossImageType\"},\"RepeatFrameMsec\":{\"locationName\":\"repeatFrameMsec\",\"type\":\"integer\"}}},\"OutputLockingMode\":{\"locationName\":\"outputLockingMode\"},\"OutputTimingSource\":{\"locationName\":\"outputTimingSource\"},\"SupportLowFramerateInputs\":{\"locationName\":\"supportLowFramerateInputs\"}}},\"MotionGraphicsConfiguration\":{\"locationName\":\"motionGraphicsConfiguration\",\"type\":\"structure\",\"members\":{\"MotionGraphicsInsertion\":{\"locationName\":\"motionGraphicsInsertion\"},\"MotionGraphicsSettings\":{\"locationName\":\"motionGraphicsSettings\",\"type\":\"structure\",\"members\":{\"HtmlMotionGraphicsSettings\":{\"locationName\":\"htmlMotionGraphicsSettings\",\"type\":\"structure\",\"members\":{}}}}},\"required\":[\"MotionGraphicsSettings\"]},\"NielsenConfiguration\":{\"locationName\":\"nielsenConfiguration\",\"type\":\"structure\",\"members\":{\"DistributorId\":{\"locationName\":\"distributorId\"},\"NielsenPcmToId3Tagging\":{\"locationName\":\"nielsenPcmToId3Tagging\"}}},\"OutputGroups\":{\"locationName\":\"outputGroups\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"OutputGroupSettings\":{\"locationName\":\"outputGroupSettings\",\"type\":\"structure\",\"members\":{\"ArchiveGroupSettings\":{\"locationName\":\"archiveGroupSettings\",\"type\":\"structure\",\"members\":{\"ArchiveCdnSettings\":{\"locationName\":\"archiveCdnSettings\",\"type\":\"structure\",\"members\":{\"ArchiveS3Settings\":{\"locationName\":\"archiveS3Settings\",\"type\":\"structure\",\"members\":{\"CannedAcl\":{\"locationName\":\"cannedAcl\"}}}}},\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"},\"RolloverInterval\":{\"locationName\":\"rolloverInterval\",\"type\":\"integer\"}},\"required\":[\"Destination\"]},\"FrameCaptureGroupSettings\":{\"locationName\":\"frameCaptureGroupSettings\",\"type\":\"structure\",\"members\":{\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"},\"FrameCaptureCdnSettings\":{\"locationName\":\"frameCaptureCdnSettings\",\"type\":\"structure\",\"members\":{\"FrameCaptureS3Settings\":{\"locationName\":\"frameCaptureS3Settings\",\"type\":\"structure\",\"members\":{\"CannedAcl\":{\"locationName\":\"cannedAcl\"}}}}}},\"required\":[\"Destination\"]},\"HlsGroupSettings\":{\"locationName\":\"hlsGroupSettings\",\"type\":\"structure\",\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\",\"type\":\"list\",\"member\":{}},\"BaseUrlContent\":{\"locationName\":\"baseUrlContent\"},\"BaseUrlContent1\":{\"locationName\":\"baseUrlContent1\"},\"BaseUrlManifest\":{\"locationName\":\"baseUrlManifest\"},\"BaseUrlManifest1\":{\"locationName\":\"baseUrlManifest1\"},\"CaptionLanguageMappings\":{\"locationName\":\"captionLanguageMappings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CaptionChannel\":{\"locationName\":\"captionChannel\",\"type\":\"integer\"},\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageDescription\":{\"locationName\":\"languageDescription\"}},\"required\":[\"LanguageCode\",\"LanguageDescription\",\"CaptionChannel\"]}},\"CaptionLanguageSetting\":{\"locationName\":\"captionLanguageSetting\"},\"ClientCache\":{\"locationName\":\"clientCache\"},\"CodecSpecification\":{\"locationName\":\"codecSpecification\"},\"ConstantIv\":{\"locationName\":\"constantIv\"},\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"},\"DirectoryStructure\":{\"locationName\":\"directoryStructure\"},\"DiscontinuityTags\":{\"locationName\":\"discontinuityTags\"},\"EncryptionType\":{\"locationName\":\"encryptionType\"},\"HlsCdnSettings\":{\"locationName\":\"hlsCdnSettings\",\"type\":\"structure\",\"members\":{\"HlsAkamaiSettings\":{\"locationName\":\"hlsAkamaiSettings\",\"type\":\"structure\",\"members\":{\"ConnectionRetryInterval\":{\"locationName\":\"connectionRetryInterval\",\"type\":\"integer\"},\"FilecacheDuration\":{\"locationName\":\"filecacheDuration\",\"type\":\"integer\"},\"HttpTransferMode\":{\"locationName\":\"httpTransferMode\"},\"NumRetries\":{\"locationName\":\"numRetries\",\"type\":\"integer\"},\"RestartDelay\":{\"locationName\":\"restartDelay\",\"type\":\"integer\"},\"Salt\":{\"locationName\":\"salt\"},\"Token\":{\"locationName\":\"token\"}}},\"HlsBasicPutSettings\":{\"locationName\":\"hlsBasicPutSettings\",\"type\":\"structure\",\"members\":{\"ConnectionRetryInterval\":{\"locationName\":\"connectionRetryInterval\",\"type\":\"integer\"},\"FilecacheDuration\":{\"locationName\":\"filecacheDuration\",\"type\":\"integer\"},\"NumRetries\":{\"locationName\":\"numRetries\",\"type\":\"integer\"},\"RestartDelay\":{\"locationName\":\"restartDelay\",\"type\":\"integer\"}}},\"HlsMediaStoreSettings\":{\"locationName\":\"hlsMediaStoreSettings\",\"type\":\"structure\",\"members\":{\"ConnectionRetryInterval\":{\"locationName\":\"connectionRetryInterval\",\"type\":\"integer\"},\"FilecacheDuration\":{\"locationName\":\"filecacheDuration\",\"type\":\"integer\"},\"MediaStoreStorageClass\":{\"locationName\":\"mediaStoreStorageClass\"},\"NumRetries\":{\"locationName\":\"numRetries\",\"type\":\"integer\"},\"RestartDelay\":{\"locationName\":\"restartDelay\",\"type\":\"integer\"}}},\"HlsS3Settings\":{\"locationName\":\"hlsS3Settings\",\"type\":\"structure\",\"members\":{\"CannedAcl\":{\"locationName\":\"cannedAcl\"}}},\"HlsWebdavSettings\":{\"locationName\":\"hlsWebdavSettings\",\"type\":\"structure\",\"members\":{\"ConnectionRetryInterval\":{\"locationName\":\"connectionRetryInterval\",\"type\":\"integer\"},\"FilecacheDuration\":{\"locationName\":\"filecacheDuration\",\"type\":\"integer\"},\"HttpTransferMode\":{\"locationName\":\"httpTransferMode\"},\"NumRetries\":{\"locationName\":\"numRetries\",\"type\":\"integer\"},\"RestartDelay\":{\"locationName\":\"restartDelay\",\"type\":\"integer\"}}}}},\"HlsId3SegmentTagging\":{\"locationName\":\"hlsId3SegmentTagging\"},\"IFrameOnlyPlaylists\":{\"locationName\":\"iFrameOnlyPlaylists\"},\"IncompleteSegmentBehavior\":{\"locationName\":\"incompleteSegmentBehavior\"},\"IndexNSegments\":{\"locationName\":\"indexNSegments\",\"type\":\"integer\"},\"InputLossAction\":{\"locationName\":\"inputLossAction\"},\"IvInManifest\":{\"locationName\":\"ivInManifest\"},\"IvSource\":{\"locationName\":\"ivSource\"},\"KeepSegments\":{\"locationName\":\"keepSegments\",\"type\":\"integer\"},\"KeyFormat\":{\"locationName\":\"keyFormat\"},\"KeyFormatVersions\":{\"locationName\":\"keyFormatVersions\"},\"KeyProviderSettings\":{\"locationName\":\"keyProviderSettings\",\"type\":\"structure\",\"members\":{\"StaticKeySettings\":{\"locationName\":\"staticKeySettings\",\"type\":\"structure\",\"members\":{\"KeyProviderServer\":{\"shape\":\"S1k\",\"locationName\":\"keyProviderServer\"},\"StaticKeyValue\":{\"locationName\":\"staticKeyValue\"}},\"required\":[\"StaticKeyValue\"]}}},\"ManifestCompression\":{\"locationName\":\"manifestCompression\"},\"ManifestDurationFormat\":{\"locationName\":\"manifestDurationFormat\"},\"MinSegmentLength\":{\"locationName\":\"minSegmentLength\",\"type\":\"integer\"},\"Mode\":{\"locationName\":\"mode\"},\"OutputSelection\":{\"locationName\":\"outputSelection\"},\"ProgramDateTime\":{\"locationName\":\"programDateTime\"},\"ProgramDateTimePeriod\":{\"locationName\":\"programDateTimePeriod\",\"type\":\"integer\"},\"RedundantManifest\":{\"locationName\":\"redundantManifest\"},\"SegmentLength\":{\"locationName\":\"segmentLength\",\"type\":\"integer\"},\"SegmentationMode\":{\"locationName\":\"segmentationMode\"},\"SegmentsPerSubdirectory\":{\"locationName\":\"segmentsPerSubdirectory\",\"type\":\"integer\"},\"StreamInfResolution\":{\"locationName\":\"streamInfResolution\"},\"TimedMetadataId3Frame\":{\"locationName\":\"timedMetadataId3Frame\"},\"TimedMetadataId3Period\":{\"locationName\":\"timedMetadataId3Period\",\"type\":\"integer\"},\"TimestampDeltaMilliseconds\":{\"locationName\":\"timestampDeltaMilliseconds\",\"type\":\"integer\"},\"TsFileMode\":{\"locationName\":\"tsFileMode\"}},\"required\":[\"Destination\"]},\"MediaPackageGroupSettings\":{\"locationName\":\"mediaPackageGroupSettings\",\"type\":\"structure\",\"members\":{\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"}},\"required\":[\"Destination\"]},\"MsSmoothGroupSettings\":{\"locationName\":\"msSmoothGroupSettings\",\"type\":\"structure\",\"members\":{\"AcquisitionPointId\":{\"locationName\":\"acquisitionPointId\"},\"AudioOnlyTimecodeControl\":{\"locationName\":\"audioOnlyTimecodeControl\"},\"CertificateMode\":{\"locationName\":\"certificateMode\"},\"ConnectionRetryInterval\":{\"locationName\":\"connectionRetryInterval\",\"type\":\"integer\"},\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"},\"EventId\":{\"locationName\":\"eventId\"},\"EventIdMode\":{\"locationName\":\"eventIdMode\"},\"EventStopBehavior\":{\"locationName\":\"eventStopBehavior\"},\"FilecacheDuration\":{\"locationName\":\"filecacheDuration\",\"type\":\"integer\"},\"FragmentLength\":{\"locationName\":\"fragmentLength\",\"type\":\"integer\"},\"InputLossAction\":{\"locationName\":\"inputLossAction\"},\"NumRetries\":{\"locationName\":\"numRetries\",\"type\":\"integer\"},\"RestartDelay\":{\"locationName\":\"restartDelay\",\"type\":\"integer\"},\"SegmentationMode\":{\"locationName\":\"segmentationMode\"},\"SendDelayMs\":{\"locationName\":\"sendDelayMs\",\"type\":\"integer\"},\"SparseTrackType\":{\"locationName\":\"sparseTrackType\"},\"StreamManifestBehavior\":{\"locationName\":\"streamManifestBehavior\"},\"TimestampOffset\":{\"locationName\":\"timestampOffset\"},\"TimestampOffsetMode\":{\"locationName\":\"timestampOffsetMode\"}},\"required\":[\"Destination\"]},\"MultiplexGroupSettings\":{\"locationName\":\"multiplexGroupSettings\",\"type\":\"structure\",\"members\":{}},\"RtmpGroupSettings\":{\"locationName\":\"rtmpGroupSettings\",\"type\":\"structure\",\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\",\"type\":\"list\",\"member\":{}},\"AuthenticationScheme\":{\"locationName\":\"authenticationScheme\"},\"CacheFullBehavior\":{\"locationName\":\"cacheFullBehavior\"},\"CacheLength\":{\"locationName\":\"cacheLength\",\"type\":\"integer\"},\"CaptionData\":{\"locationName\":\"captionData\"},\"InputLossAction\":{\"locationName\":\"inputLossAction\"},\"RestartDelay\":{\"locationName\":\"restartDelay\",\"type\":\"integer\"}}},\"UdpGroupSettings\":{\"locationName\":\"udpGroupSettings\",\"type\":\"structure\",\"members\":{\"InputLossAction\":{\"locationName\":\"inputLossAction\"},\"TimedMetadataId3Frame\":{\"locationName\":\"timedMetadataId3Frame\"},\"TimedMetadataId3Period\":{\"locationName\":\"timedMetadataId3Period\",\"type\":\"integer\"}}}}},\"Outputs\":{\"locationName\":\"outputs\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AudioDescriptionNames\":{\"shape\":\"S5\",\"locationName\":\"audioDescriptionNames\"},\"CaptionDescriptionNames\":{\"shape\":\"S5\",\"locationName\":\"captionDescriptionNames\"},\"OutputName\":{\"locationName\":\"outputName\"},\"OutputSettings\":{\"locationName\":\"outputSettings\",\"type\":\"structure\",\"members\":{\"ArchiveOutputSettings\":{\"locationName\":\"archiveOutputSettings\",\"type\":\"structure\",\"members\":{\"ContainerSettings\":{\"locationName\":\"containerSettings\",\"type\":\"structure\",\"members\":{\"M2tsSettings\":{\"shape\":\"S86\",\"locationName\":\"m2tsSettings\"},\"RawSettings\":{\"locationName\":\"rawSettings\",\"type\":\"structure\",\"members\":{}}}},\"Extension\":{\"locationName\":\"extension\"},\"NameModifier\":{\"locationName\":\"nameModifier\"}},\"required\":[\"ContainerSettings\"]},\"FrameCaptureOutputSettings\":{\"locationName\":\"frameCaptureOutputSettings\",\"type\":\"structure\",\"members\":{\"NameModifier\":{\"locationName\":\"nameModifier\"}}},\"HlsOutputSettings\":{\"locationName\":\"hlsOutputSettings\",\"type\":\"structure\",\"members\":{\"H265PackagingType\":{\"locationName\":\"h265PackagingType\"},\"HlsSettings\":{\"locationName\":\"hlsSettings\",\"type\":\"structure\",\"members\":{\"AudioOnlyHlsSettings\":{\"locationName\":\"audioOnlyHlsSettings\",\"type\":\"structure\",\"members\":{\"AudioGroupId\":{\"locationName\":\"audioGroupId\"},\"AudioOnlyImage\":{\"shape\":\"S1k\",\"locationName\":\"audioOnlyImage\"},\"AudioTrackType\":{\"locationName\":\"audioTrackType\"},\"SegmentType\":{\"locationName\":\"segmentType\"}}},\"Fmp4HlsSettings\":{\"locationName\":\"fmp4HlsSettings\",\"type\":\"structure\",\"members\":{\"AudioRenditionSets\":{\"locationName\":\"audioRenditionSets\"},\"NielsenId3Behavior\":{\"locationName\":\"nielsenId3Behavior\"},\"TimedMetadataBehavior\":{\"locationName\":\"timedMetadataBehavior\"}}},\"FrameCaptureHlsSettings\":{\"locationName\":\"frameCaptureHlsSettings\",\"type\":\"structure\",\"members\":{}},\"StandardHlsSettings\":{\"locationName\":\"standardHlsSettings\",\"type\":\"structure\",\"members\":{\"AudioRenditionSets\":{\"locationName\":\"audioRenditionSets\"},\"M3u8Settings\":{\"locationName\":\"m3u8Settings\",\"type\":\"structure\",\"members\":{\"AudioFramesPerPes\":{\"locationName\":\"audioFramesPerPes\",\"type\":\"integer\"},\"AudioPids\":{\"locationName\":\"audioPids\"},\"EcmPid\":{\"locationName\":\"ecmPid\"},\"NielsenId3Behavior\":{\"locationName\":\"nielsenId3Behavior\"},\"PatInterval\":{\"locationName\":\"patInterval\",\"type\":\"integer\"},\"PcrControl\":{\"locationName\":\"pcrControl\"},\"PcrPeriod\":{\"locationName\":\"pcrPeriod\",\"type\":\"integer\"},\"PcrPid\":{\"locationName\":\"pcrPid\"},\"PmtInterval\":{\"locationName\":\"pmtInterval\",\"type\":\"integer\"},\"PmtPid\":{\"locationName\":\"pmtPid\"},\"ProgramNum\":{\"locationName\":\"programNum\",\"type\":\"integer\"},\"Scte35Behavior\":{\"locationName\":\"scte35Behavior\"},\"Scte35Pid\":{\"locationName\":\"scte35Pid\"},\"TimedMetadataBehavior\":{\"locationName\":\"timedMetadataBehavior\"},\"TimedMetadataPid\":{\"locationName\":\"timedMetadataPid\"},\"TransportStreamId\":{\"locationName\":\"transportStreamId\",\"type\":\"integer\"},\"VideoPid\":{\"locationName\":\"videoPid\"}}}},\"required\":[\"M3u8Settings\"]}}},\"NameModifier\":{\"locationName\":\"nameModifier\"},\"SegmentModifier\":{\"locationName\":\"segmentModifier\"}},\"required\":[\"HlsSettings\"]},\"MediaPackageOutputSettings\":{\"locationName\":\"mediaPackageOutputSettings\",\"type\":\"structure\",\"members\":{}},\"MsSmoothOutputSettings\":{\"locationName\":\"msSmoothOutputSettings\",\"type\":\"structure\",\"members\":{\"H265PackagingType\":{\"locationName\":\"h265PackagingType\"},\"NameModifier\":{\"locationName\":\"nameModifier\"}}},\"MultiplexOutputSettings\":{\"locationName\":\"multiplexOutputSettings\",\"type\":\"structure\",\"members\":{\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"}},\"required\":[\"Destination\"]},\"RtmpOutputSettings\":{\"locationName\":\"rtmpOutputSettings\",\"type\":\"structure\",\"members\":{\"CertificateMode\":{\"locationName\":\"certificateMode\"},\"ConnectionRetryInterval\":{\"locationName\":\"connectionRetryInterval\",\"type\":\"integer\"},\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"},\"NumRetries\":{\"locationName\":\"numRetries\",\"type\":\"integer\"}},\"required\":[\"Destination\"]},\"UdpOutputSettings\":{\"locationName\":\"udpOutputSettings\",\"type\":\"structure\",\"members\":{\"BufferMsec\":{\"locationName\":\"bufferMsec\",\"type\":\"integer\"},\"ContainerSettings\":{\"locationName\":\"containerSettings\",\"type\":\"structure\",\"members\":{\"M2tsSettings\":{\"shape\":\"S86\",\"locationName\":\"m2tsSettings\"}}},\"Destination\":{\"shape\":\"S60\",\"locationName\":\"destination\"},\"FecOutputSettings\":{\"locationName\":\"fecOutputSettings\",\"type\":\"structure\",\"members\":{\"ColumnDepth\":{\"locationName\":\"columnDepth\",\"type\":\"integer\"},\"IncludeFec\":{\"locationName\":\"includeFec\"},\"RowLength\":{\"locationName\":\"rowLength\",\"type\":\"integer\"}}}},\"required\":[\"Destination\",\"ContainerSettings\"]}}},\"VideoDescriptionName\":{\"locationName\":\"videoDescriptionName\"}},\"required\":[\"OutputSettings\"]}}},\"required\":[\"Outputs\",\"OutputGroupSettings\"]}},\"TimecodeConfig\":{\"locationName\":\"timecodeConfig\",\"type\":\"structure\",\"members\":{\"Source\":{\"locationName\":\"source\"},\"SyncThreshold\":{\"locationName\":\"syncThreshold\",\"type\":\"integer\"}},\"required\":[\"Source\"]},\"VideoDescriptions\":{\"locationName\":\"videoDescriptions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CodecSettings\":{\"locationName\":\"codecSettings\",\"type\":\"structure\",\"members\":{\"FrameCaptureSettings\":{\"locationName\":\"frameCaptureSettings\",\"type\":\"structure\",\"members\":{\"CaptureInterval\":{\"locationName\":\"captureInterval\",\"type\":\"integer\"},\"CaptureIntervalUnits\":{\"locationName\":\"captureIntervalUnits\"}}},\"H264Settings\":{\"locationName\":\"h264Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"AfdSignaling\":{\"locationName\":\"afdSignaling\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BufFillPct\":{\"locationName\":\"bufFillPct\",\"type\":\"integer\"},\"BufSize\":{\"locationName\":\"bufSize\",\"type\":\"integer\"},\"ColorMetadata\":{\"locationName\":\"colorMetadata\"},\"ColorSpaceSettings\":{\"locationName\":\"colorSpaceSettings\",\"type\":\"structure\",\"members\":{\"ColorSpacePassthroughSettings\":{\"shape\":\"Sad\",\"locationName\":\"colorSpacePassthroughSettings\"},\"Rec601Settings\":{\"shape\":\"Sae\",\"locationName\":\"rec601Settings\"},\"Rec709Settings\":{\"shape\":\"Saf\",\"locationName\":\"rec709Settings\"}}},\"EntropyEncoding\":{\"locationName\":\"entropyEncoding\"},\"FilterSettings\":{\"locationName\":\"filterSettings\",\"type\":\"structure\",\"members\":{\"TemporalFilterSettings\":{\"shape\":\"Sai\",\"locationName\":\"temporalFilterSettings\"}}},\"FixedAfd\":{\"locationName\":\"fixedAfd\"},\"FlickerAq\":{\"locationName\":\"flickerAq\"},\"ForceFieldPictures\":{\"locationName\":\"forceFieldPictures\"},\"FramerateControl\":{\"locationName\":\"framerateControl\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopBReference\":{\"locationName\":\"gopBReference\"},\"GopClosedCadence\":{\"locationName\":\"gopClosedCadence\",\"type\":\"integer\"},\"GopNumBFrames\":{\"locationName\":\"gopNumBFrames\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"GopSizeUnits\":{\"locationName\":\"gopSizeUnits\"},\"Level\":{\"locationName\":\"level\"},\"LookAheadRateControl\":{\"locationName\":\"lookAheadRateControl\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MinIInterval\":{\"locationName\":\"minIInterval\",\"type\":\"integer\"},\"NumRefFrames\":{\"locationName\":\"numRefFrames\",\"type\":\"integer\"},\"ParControl\":{\"locationName\":\"parControl\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"Profile\":{\"locationName\":\"profile\"},\"QualityLevel\":{\"locationName\":\"qualityLevel\"},\"QvbrQualityLevel\":{\"locationName\":\"qvbrQualityLevel\",\"type\":\"integer\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"ScanType\":{\"locationName\":\"scanType\"},\"SceneChangeDetect\":{\"locationName\":\"sceneChangeDetect\"},\"Slices\":{\"locationName\":\"slices\",\"type\":\"integer\"},\"Softness\":{\"locationName\":\"softness\",\"type\":\"integer\"},\"SpatialAq\":{\"locationName\":\"spatialAq\"},\"SubgopLength\":{\"locationName\":\"subgopLength\"},\"Syntax\":{\"locationName\":\"syntax\"},\"TemporalAq\":{\"locationName\":\"temporalAq\"},\"TimecodeInsertion\":{\"locationName\":\"timecodeInsertion\"}}},\"H265Settings\":{\"locationName\":\"h265Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"AfdSignaling\":{\"locationName\":\"afdSignaling\"},\"AlternativeTransferFunction\":{\"locationName\":\"alternativeTransferFunction\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BufSize\":{\"locationName\":\"bufSize\",\"type\":\"integer\"},\"ColorMetadata\":{\"locationName\":\"colorMetadata\"},\"ColorSpaceSettings\":{\"locationName\":\"colorSpaceSettings\",\"type\":\"structure\",\"members\":{\"ColorSpacePassthroughSettings\":{\"shape\":\"Sad\",\"locationName\":\"colorSpacePassthroughSettings\"},\"Hdr10Settings\":{\"shape\":\"Sbg\",\"locationName\":\"hdr10Settings\"},\"Rec601Settings\":{\"shape\":\"Sae\",\"locationName\":\"rec601Settings\"},\"Rec709Settings\":{\"shape\":\"Saf\",\"locationName\":\"rec709Settings\"}}},\"FilterSettings\":{\"locationName\":\"filterSettings\",\"type\":\"structure\",\"members\":{\"TemporalFilterSettings\":{\"shape\":\"Sai\",\"locationName\":\"temporalFilterSettings\"}}},\"FixedAfd\":{\"locationName\":\"fixedAfd\"},\"FlickerAq\":{\"locationName\":\"flickerAq\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopClosedCadence\":{\"locationName\":\"gopClosedCadence\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"GopSizeUnits\":{\"locationName\":\"gopSizeUnits\"},\"Level\":{\"locationName\":\"level\"},\"LookAheadRateControl\":{\"locationName\":\"lookAheadRateControl\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"MinIInterval\":{\"locationName\":\"minIInterval\",\"type\":\"integer\"},\"ParDenominator\":{\"locationName\":\"parDenominator\",\"type\":\"integer\"},\"ParNumerator\":{\"locationName\":\"parNumerator\",\"type\":\"integer\"},\"Profile\":{\"locationName\":\"profile\"},\"QvbrQualityLevel\":{\"locationName\":\"qvbrQualityLevel\",\"type\":\"integer\"},\"RateControlMode\":{\"locationName\":\"rateControlMode\"},\"ScanType\":{\"locationName\":\"scanType\"},\"SceneChangeDetect\":{\"locationName\":\"sceneChangeDetect\"},\"Slices\":{\"locationName\":\"slices\",\"type\":\"integer\"},\"Tier\":{\"locationName\":\"tier\"},\"TimecodeInsertion\":{\"locationName\":\"timecodeInsertion\"}},\"required\":[\"FramerateNumerator\",\"FramerateDenominator\"]},\"Mpeg2Settings\":{\"locationName\":\"mpeg2Settings\",\"type\":\"structure\",\"members\":{\"AdaptiveQuantization\":{\"locationName\":\"adaptiveQuantization\"},\"AfdSignaling\":{\"locationName\":\"afdSignaling\"},\"ColorMetadata\":{\"locationName\":\"colorMetadata\"},\"ColorSpace\":{\"locationName\":\"colorSpace\"},\"DisplayAspectRatio\":{\"locationName\":\"displayAspectRatio\"},\"FilterSettings\":{\"locationName\":\"filterSettings\",\"type\":\"structure\",\"members\":{\"TemporalFilterSettings\":{\"shape\":\"Sai\",\"locationName\":\"temporalFilterSettings\"}}},\"FixedAfd\":{\"locationName\":\"fixedAfd\"},\"FramerateDenominator\":{\"locationName\":\"framerateDenominator\",\"type\":\"integer\"},\"FramerateNumerator\":{\"locationName\":\"framerateNumerator\",\"type\":\"integer\"},\"GopClosedCadence\":{\"locationName\":\"gopClosedCadence\",\"type\":\"integer\"},\"GopNumBFrames\":{\"locationName\":\"gopNumBFrames\",\"type\":\"integer\"},\"GopSize\":{\"locationName\":\"gopSize\",\"type\":\"double\"},\"GopSizeUnits\":{\"locationName\":\"gopSizeUnits\"},\"ScanType\":{\"locationName\":\"scanType\"},\"SubgopLength\":{\"locationName\":\"subgopLength\"},\"TimecodeInsertion\":{\"locationName\":\"timecodeInsertion\"}},\"required\":[\"FramerateNumerator\",\"FramerateDenominator\"]}}},\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"RespondToAfd\":{\"locationName\":\"respondToAfd\"},\"ScalingBehavior\":{\"locationName\":\"scalingBehavior\"},\"Sharpness\":{\"locationName\":\"sharpness\",\"type\":\"integer\"},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"}},\"required\":[\"Name\"]}}},\"required\":[\"VideoDescriptions\",\"AudioDescriptions\",\"OutputGroups\",\"TimecodeConfig\"]},\"S60\":{\"type\":\"structure\",\"members\":{\"DestinationRefId\":{\"locationName\":\"destinationRefId\"}}},\"S86\":{\"type\":\"structure\",\"members\":{\"AbsentInputAudioBehavior\":{\"locationName\":\"absentInputAudioBehavior\"},\"Arib\":{\"locationName\":\"arib\"},\"AribCaptionsPid\":{\"locationName\":\"aribCaptionsPid\"},\"AribCaptionsPidControl\":{\"locationName\":\"aribCaptionsPidControl\"},\"AudioBufferModel\":{\"locationName\":\"audioBufferModel\"},\"AudioFramesPerPes\":{\"locationName\":\"audioFramesPerPes\",\"type\":\"integer\"},\"AudioPids\":{\"locationName\":\"audioPids\"},\"AudioStreamType\":{\"locationName\":\"audioStreamType\"},\"Bitrate\":{\"locationName\":\"bitrate\",\"type\":\"integer\"},\"BufferModel\":{\"locationName\":\"bufferModel\"},\"CcDescriptor\":{\"locationName\":\"ccDescriptor\"},\"DvbNitSettings\":{\"locationName\":\"dvbNitSettings\",\"type\":\"structure\",\"members\":{\"NetworkId\":{\"locationName\":\"networkId\",\"type\":\"integer\"},\"NetworkName\":{\"locationName\":\"networkName\"},\"RepInterval\":{\"locationName\":\"repInterval\",\"type\":\"integer\"}},\"required\":[\"NetworkName\",\"NetworkId\"]},\"DvbSdtSettings\":{\"locationName\":\"dvbSdtSettings\",\"type\":\"structure\",\"members\":{\"OutputSdt\":{\"locationName\":\"outputSdt\"},\"RepInterval\":{\"locationName\":\"repInterval\",\"type\":\"integer\"},\"ServiceName\":{\"locationName\":\"serviceName\"},\"ServiceProviderName\":{\"locationName\":\"serviceProviderName\"}}},\"DvbSubPids\":{\"locationName\":\"dvbSubPids\"},\"DvbTdtSettings\":{\"locationName\":\"dvbTdtSettings\",\"type\":\"structure\",\"members\":{\"RepInterval\":{\"locationName\":\"repInterval\",\"type\":\"integer\"}}},\"DvbTeletextPid\":{\"locationName\":\"dvbTeletextPid\"},\"Ebif\":{\"locationName\":\"ebif\"},\"EbpAudioInterval\":{\"locationName\":\"ebpAudioInterval\"},\"EbpLookaheadMs\":{\"locationName\":\"ebpLookaheadMs\",\"type\":\"integer\"},\"EbpPlacement\":{\"locationName\":\"ebpPlacement\"},\"EcmPid\":{\"locationName\":\"ecmPid\"},\"EsRateInPes\":{\"locationName\":\"esRateInPes\"},\"EtvPlatformPid\":{\"locationName\":\"etvPlatformPid\"},\"EtvSignalPid\":{\"locationName\":\"etvSignalPid\"},\"FragmentTime\":{\"locationName\":\"fragmentTime\",\"type\":\"double\"},\"Klv\":{\"locationName\":\"klv\"},\"KlvDataPids\":{\"locationName\":\"klvDataPids\"},\"NielsenId3Behavior\":{\"locationName\":\"nielsenId3Behavior\"},\"NullPacketBitrate\":{\"locationName\":\"nullPacketBitrate\",\"type\":\"double\"},\"PatInterval\":{\"locationName\":\"patInterval\",\"type\":\"integer\"},\"PcrControl\":{\"locationName\":\"pcrControl\"},\"PcrPeriod\":{\"locationName\":\"pcrPeriod\",\"type\":\"integer\"},\"PcrPid\":{\"locationName\":\"pcrPid\"},\"PmtInterval\":{\"locationName\":\"pmtInterval\",\"type\":\"integer\"},\"PmtPid\":{\"locationName\":\"pmtPid\"},\"ProgramNum\":{\"locationName\":\"programNum\",\"type\":\"integer\"},\"RateMode\":{\"locationName\":\"rateMode\"},\"Scte27Pids\":{\"locationName\":\"scte27Pids\"},\"Scte35Control\":{\"locationName\":\"scte35Control\"},\"Scte35Pid\":{\"locationName\":\"scte35Pid\"},\"SegmentationMarkers\":{\"locationName\":\"segmentationMarkers\"},\"SegmentationStyle\":{\"locationName\":\"segmentationStyle\"},\"SegmentationTime\":{\"locationName\":\"segmentationTime\",\"type\":\"double\"},\"TimedMetadataBehavior\":{\"locationName\":\"timedMetadataBehavior\"},\"TimedMetadataPid\":{\"locationName\":\"timedMetadataPid\"},\"TransportStreamId\":{\"locationName\":\"transportStreamId\",\"type\":\"integer\"},\"VideoPid\":{\"locationName\":\"videoPid\"}}},\"Sad\":{\"type\":\"structure\",\"members\":{}},\"Sae\":{\"type\":\"structure\",\"members\":{}},\"Saf\":{\"type\":\"structure\",\"members\":{}},\"Sai\":{\"type\":\"structure\",\"members\":{\"PostFilterSharpening\":{\"locationName\":\"postFilterSharpening\"},\"Strength\":{\"locationName\":\"strength\"}}},\"Sbg\":{\"type\":\"structure\",\"members\":{\"MaxCll\":{\"locationName\":\"maxCll\",\"type\":\"integer\"},\"MaxFall\":{\"locationName\":\"maxFall\",\"type\":\"integer\"}}},\"Sc6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutomaticInputFailoverSettings\":{\"locationName\":\"automaticInputFailoverSettings\",\"type\":\"structure\",\"members\":{\"ErrorClearTimeMsec\":{\"locationName\":\"errorClearTimeMsec\",\"type\":\"integer\"},\"FailoverConditions\":{\"locationName\":\"failoverConditions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailoverConditionSettings\":{\"locationName\":\"failoverConditionSettings\",\"type\":\"structure\",\"members\":{\"AudioSilenceSettings\":{\"locationName\":\"audioSilenceSettings\",\"type\":\"structure\",\"members\":{\"AudioSelectorName\":{\"locationName\":\"audioSelectorName\"},\"AudioSilenceThresholdMsec\":{\"locationName\":\"audioSilenceThresholdMsec\",\"type\":\"integer\"}},\"required\":[\"AudioSelectorName\"]},\"InputLossSettings\":{\"locationName\":\"inputLossSettings\",\"type\":\"structure\",\"members\":{\"InputLossThresholdMsec\":{\"locationName\":\"inputLossThresholdMsec\",\"type\":\"integer\"}}},\"VideoBlackSettings\":{\"locationName\":\"videoBlackSettings\",\"type\":\"structure\",\"members\":{\"BlackDetectThreshold\":{\"locationName\":\"blackDetectThreshold\",\"type\":\"double\"},\"VideoBlackThresholdMsec\":{\"locationName\":\"videoBlackThresholdMsec\",\"type\":\"integer\"}}}}}}}},\"InputPreference\":{\"locationName\":\"inputPreference\"},\"SecondaryInputId\":{\"locationName\":\"secondaryInputId\"}},\"required\":[\"SecondaryInputId\"]},\"InputAttachmentName\":{\"locationName\":\"inputAttachmentName\"},\"InputId\":{\"locationName\":\"inputId\"},\"InputSettings\":{\"locationName\":\"inputSettings\",\"type\":\"structure\",\"members\":{\"AudioSelectors\":{\"locationName\":\"audioSelectors\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"SelectorSettings\":{\"locationName\":\"selectorSettings\",\"type\":\"structure\",\"members\":{\"AudioLanguageSelection\":{\"locationName\":\"audioLanguageSelection\",\"type\":\"structure\",\"members\":{\"LanguageCode\":{\"locationName\":\"languageCode\"},\"LanguageSelectionPolicy\":{\"locationName\":\"languageSelectionPolicy\"}},\"required\":[\"LanguageCode\"]},\"AudioPidSelection\":{\"locationName\":\"audioPidSelection\",\"type\":\"structure\",\"members\":{\"Pid\":{\"locationName\":\"pid\",\"type\":\"integer\"}},\"required\":[\"Pid\"]},\"AudioTrackSelection\":{\"locationName\":\"audioTrackSelection\",\"type\":\"structure\",\"members\":{\"Tracks\":{\"locationName\":\"tracks\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Track\":{\"locationName\":\"track\",\"type\":\"integer\"}},\"required\":[\"Track\"]}}},\"required\":[\"Tracks\"]}}}},\"required\":[\"Name\"]}},\"CaptionSelectors\":{\"locationName\":\"captionSelectors\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LanguageCode\":{\"locationName\":\"languageCode\"},\"Name\":{\"locationName\":\"name\"},\"SelectorSettings\":{\"locationName\":\"selectorSettings\",\"type\":\"structure\",\"members\":{\"AncillarySourceSettings\":{\"locationName\":\"ancillarySourceSettings\",\"type\":\"structure\",\"members\":{\"SourceAncillaryChannelNumber\":{\"locationName\":\"sourceAncillaryChannelNumber\",\"type\":\"integer\"}}},\"AribSourceSettings\":{\"locationName\":\"aribSourceSettings\",\"type\":\"structure\",\"members\":{}},\"DvbSubSourceSettings\":{\"locationName\":\"dvbSubSourceSettings\",\"type\":\"structure\",\"members\":{\"Pid\":{\"locationName\":\"pid\",\"type\":\"integer\"}}},\"EmbeddedSourceSettings\":{\"locationName\":\"embeddedSourceSettings\",\"type\":\"structure\",\"members\":{\"Convert608To708\":{\"locationName\":\"convert608To708\"},\"Scte20Detection\":{\"locationName\":\"scte20Detection\"},\"Source608ChannelNumber\":{\"locationName\":\"source608ChannelNumber\",\"type\":\"integer\"},\"Source608TrackNumber\":{\"locationName\":\"source608TrackNumber\",\"type\":\"integer\"}}},\"Scte20SourceSettings\":{\"locationName\":\"scte20SourceSettings\",\"type\":\"structure\",\"members\":{\"Convert608To708\":{\"locationName\":\"convert608To708\"},\"Source608ChannelNumber\":{\"locationName\":\"source608ChannelNumber\",\"type\":\"integer\"}}},\"Scte27SourceSettings\":{\"locationName\":\"scte27SourceSettings\",\"type\":\"structure\",\"members\":{\"Pid\":{\"locationName\":\"pid\",\"type\":\"integer\"}}},\"TeletextSourceSettings\":{\"locationName\":\"teletextSourceSettings\",\"type\":\"structure\",\"members\":{\"OutputRectangle\":{\"locationName\":\"outputRectangle\",\"type\":\"structure\",\"members\":{\"Height\":{\"locationName\":\"height\",\"type\":\"double\"},\"LeftOffset\":{\"locationName\":\"leftOffset\",\"type\":\"double\"},\"TopOffset\":{\"locationName\":\"topOffset\",\"type\":\"double\"},\"Width\":{\"locationName\":\"width\",\"type\":\"double\"}},\"required\":[\"TopOffset\",\"Height\",\"Width\",\"LeftOffset\"]},\"PageNumber\":{\"locationName\":\"pageNumber\"}}}}}},\"required\":[\"Name\"]}},\"DeblockFilter\":{\"locationName\":\"deblockFilter\"},\"DenoiseFilter\":{\"locationName\":\"denoiseFilter\"},\"FilterStrength\":{\"locationName\":\"filterStrength\",\"type\":\"integer\"},\"InputFilter\":{\"locationName\":\"inputFilter\"},\"NetworkInputSettings\":{\"locationName\":\"networkInputSettings\",\"type\":\"structure\",\"members\":{\"HlsInputSettings\":{\"locationName\":\"hlsInputSettings\",\"type\":\"structure\",\"members\":{\"Bandwidth\":{\"locationName\":\"bandwidth\",\"type\":\"integer\"},\"BufferSegments\":{\"locationName\":\"bufferSegments\",\"type\":\"integer\"},\"Retries\":{\"locationName\":\"retries\",\"type\":\"integer\"},\"RetryInterval\":{\"locationName\":\"retryInterval\",\"type\":\"integer\"}}},\"ServerValidation\":{\"locationName\":\"serverValidation\"}}},\"Smpte2038DataPreference\":{\"locationName\":\"smpte2038DataPreference\"},\"SourceEndBehavior\":{\"locationName\":\"sourceEndBehavior\"},\"VideoSelector\":{\"locationName\":\"videoSelector\",\"type\":\"structure\",\"members\":{\"ColorSpace\":{\"locationName\":\"colorSpace\"},\"ColorSpaceSettings\":{\"locationName\":\"colorSpaceSettings\",\"type\":\"structure\",\"members\":{\"Hdr10Settings\":{\"shape\":\"Sbg\",\"locationName\":\"hdr10Settings\"}}},\"ColorSpaceUsage\":{\"locationName\":\"colorSpaceUsage\"},\"SelectorSettings\":{\"locationName\":\"selectorSettings\",\"type\":\"structure\",\"members\":{\"VideoSelectorPid\":{\"locationName\":\"videoSelectorPid\",\"type\":\"structure\",\"members\":{\"Pid\":{\"locationName\":\"pid\",\"type\":\"integer\"}}},\"VideoSelectorProgramId\":{\"locationName\":\"videoSelectorProgramId\",\"type\":\"structure\",\"members\":{\"ProgramId\":{\"locationName\":\"programId\",\"type\":\"integer\"}}}}}}}}}}}},\"Sdo\":{\"type\":\"structure\",\"members\":{\"Codec\":{\"locationName\":\"codec\"},\"MaximumBitrate\":{\"locationName\":\"maximumBitrate\"},\"Resolution\":{\"locationName\":\"resolution\"}}},\"Sdt\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sdw\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CdiInputSpecification\":{\"shape\":\"S20\",\"locationName\":\"cdiInputSpecification\"},\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Destinations\":{\"shape\":\"S23\",\"locationName\":\"destinations\"},\"EgressEndpoints\":{\"shape\":\"Sdx\",\"locationName\":\"egressEndpoints\"},\"EncoderSettings\":{\"shape\":\"S2b\",\"locationName\":\"encoderSettings\"},\"Id\":{\"locationName\":\"id\"},\"InputAttachments\":{\"shape\":\"Sc6\",\"locationName\":\"inputAttachments\"},\"InputSpecification\":{\"shape\":\"Sdo\",\"locationName\":\"inputSpecification\"},\"LogLevel\":{\"locationName\":\"logLevel\"},\"Name\":{\"locationName\":\"name\"},\"PipelineDetails\":{\"shape\":\"Sdz\",\"locationName\":\"pipelineDetails\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Vpc\":{\"shape\":\"Se2\",\"locationName\":\"vpc\"}}},\"Sdx\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceIp\":{\"locationName\":\"sourceIp\"}}}},\"Sdz\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActiveInputAttachmentName\":{\"locationName\":\"activeInputAttachmentName\"},\"ActiveInputSwitchActionName\":{\"locationName\":\"activeInputSwitchActionName\"},\"ActiveMotionGraphicsActionName\":{\"locationName\":\"activeMotionGraphicsActionName\"},\"ActiveMotionGraphicsUri\":{\"locationName\":\"activeMotionGraphicsUri\"},\"PipelineId\":{\"locationName\":\"pipelineId\"}}}},\"Se2\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"NetworkInterfaceIds\":{\"shape\":\"S5\",\"locationName\":\"networkInterfaceIds\"},\"SecurityGroupIds\":{\"shape\":\"S5\",\"locationName\":\"securityGroupIds\"},\"SubnetIds\":{\"shape\":\"S5\",\"locationName\":\"subnetIds\"}}},\"Se4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StreamName\":{\"locationName\":\"streamName\"}}}},\"Se6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"}}}},\"Se8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"}}}},\"Sea\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PasswordParam\":{\"locationName\":\"passwordParam\"},\"Url\":{\"locationName\":\"url\"},\"Username\":{\"locationName\":\"username\"}}}},\"Sef\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AttachedChannels\":{\"shape\":\"S5\",\"locationName\":\"attachedChannels\"},\"Destinations\":{\"shape\":\"Seg\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"InputClass\":{\"locationName\":\"inputClass\"},\"InputDevices\":{\"shape\":\"Se6\",\"locationName\":\"inputDevices\"},\"InputPartnerIds\":{\"shape\":\"S5\",\"locationName\":\"inputPartnerIds\"},\"InputSourceType\":{\"locationName\":\"inputSourceType\"},\"MediaConnectFlows\":{\"shape\":\"Sel\",\"locationName\":\"mediaConnectFlows\"},\"Name\":{\"locationName\":\"name\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SecurityGroups\":{\"shape\":\"S5\",\"locationName\":\"securityGroups\"},\"Sources\":{\"shape\":\"Sen\",\"locationName\":\"sources\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"Type\":{\"locationName\":\"type\"}}},\"Seg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Ip\":{\"locationName\":\"ip\"},\"Port\":{\"locationName\":\"port\"},\"Url\":{\"locationName\":\"url\"},\"Vpc\":{\"locationName\":\"vpc\",\"type\":\"structure\",\"members\":{\"AvailabilityZone\":{\"locationName\":\"availabilityZone\"},\"NetworkInterfaceId\":{\"locationName\":\"networkInterfaceId\"}}}}}},\"Sel\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FlowArn\":{\"locationName\":\"flowArn\"}}}},\"Sen\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PasswordParam\":{\"locationName\":\"passwordParam\"},\"Url\":{\"locationName\":\"url\"},\"Username\":{\"locationName\":\"username\"}}}},\"Ser\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"cidr\"}}}},\"Seu\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Id\":{\"locationName\":\"id\"},\"Inputs\":{\"shape\":\"S5\",\"locationName\":\"inputs\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"WhitelistRules\":{\"shape\":\"Sew\",\"locationName\":\"whitelistRules\"}}},\"Sew\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Cidr\":{\"locationName\":\"cidr\"}}}},\"Sez\":{\"type\":\"structure\",\"members\":{\"MaximumVideoBufferDelayMilliseconds\":{\"locationName\":\"maximumVideoBufferDelayMilliseconds\",\"type\":\"integer\"},\"TransportStreamBitrate\":{\"locationName\":\"transportStreamBitrate\",\"type\":\"integer\"},\"TransportStreamId\":{\"locationName\":\"transportStreamId\",\"type\":\"integer\"},\"TransportStreamReservedBitrate\":{\"locationName\":\"transportStreamReservedBitrate\",\"type\":\"integer\"}},\"required\":[\"TransportStreamBitrate\",\"TransportStreamId\"]},\"Sf4\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AvailabilityZones\":{\"shape\":\"S5\",\"locationName\":\"availabilityZones\"},\"Destinations\":{\"shape\":\"Sf5\",\"locationName\":\"destinations\"},\"Id\":{\"locationName\":\"id\"},\"MultiplexSettings\":{\"shape\":\"Sez\",\"locationName\":\"multiplexSettings\"},\"Name\":{\"locationName\":\"name\"},\"PipelinesRunningCount\":{\"locationName\":\"pipelinesRunningCount\",\"type\":\"integer\"},\"ProgramCount\":{\"locationName\":\"programCount\",\"type\":\"integer\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"}}},\"Sf5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MediaConnectSettings\":{\"locationName\":\"mediaConnectSettings\",\"type\":\"structure\",\"members\":{\"EntitlementArn\":{\"locationName\":\"entitlementArn\"}}}}}},\"Sfa\":{\"type\":\"structure\",\"members\":{\"PreferredChannelPipeline\":{\"locationName\":\"preferredChannelPipeline\"},\"ProgramNumber\":{\"locationName\":\"programNumber\",\"type\":\"integer\"},\"ServiceDescriptor\":{\"locationName\":\"serviceDescriptor\",\"type\":\"structure\",\"members\":{\"ProviderName\":{\"locationName\":\"providerName\"},\"ServiceName\":{\"locationName\":\"serviceName\"}},\"required\":[\"ProviderName\",\"ServiceName\"]},\"VideoSettings\":{\"locationName\":\"videoSettings\",\"type\":\"structure\",\"members\":{\"ConstantBitrate\":{\"locationName\":\"constantBitrate\",\"type\":\"integer\"},\"StatmuxSettings\":{\"locationName\":\"statmuxSettings\",\"type\":\"structure\",\"members\":{\"MaximumBitrate\":{\"locationName\":\"maximumBitrate\",\"type\":\"integer\"},\"MinimumBitrate\":{\"locationName\":\"minimumBitrate\",\"type\":\"integer\"},\"Priority\":{\"locationName\":\"priority\",\"type\":\"integer\"}}}}}},\"required\":[\"ProgramNumber\"]},\"Sfj\":{\"type\":\"structure\",\"members\":{\"ChannelId\":{\"locationName\":\"channelId\"},\"MultiplexProgramSettings\":{\"shape\":\"Sfa\",\"locationName\":\"multiplexProgramSettings\"},\"PacketIdentifiersMap\":{\"shape\":\"Sfk\",\"locationName\":\"packetIdentifiersMap\"},\"PipelineDetails\":{\"shape\":\"Sfm\",\"locationName\":\"pipelineDetails\"},\"ProgramName\":{\"locationName\":\"programName\"}}},\"Sfk\":{\"type\":\"structure\",\"members\":{\"AudioPids\":{\"shape\":\"Sfl\",\"locationName\":\"audioPids\"},\"DvbSubPids\":{\"shape\":\"Sfl\",\"locationName\":\"dvbSubPids\"},\"DvbTeletextPid\":{\"locationName\":\"dvbTeletextPid\",\"type\":\"integer\"},\"EtvPlatformPid\":{\"locationName\":\"etvPlatformPid\",\"type\":\"integer\"},\"EtvSignalPid\":{\"locationName\":\"etvSignalPid\",\"type\":\"integer\"},\"KlvDataPids\":{\"shape\":\"Sfl\",\"locationName\":\"klvDataPids\"},\"PcrPid\":{\"locationName\":\"pcrPid\",\"type\":\"integer\"},\"PmtPid\":{\"locationName\":\"pmtPid\",\"type\":\"integer\"},\"PrivateMetadataPid\":{\"locationName\":\"privateMetadataPid\",\"type\":\"integer\"},\"Scte27Pids\":{\"shape\":\"Sfl\",\"locationName\":\"scte27Pids\"},\"Scte35Pid\":{\"locationName\":\"scte35Pid\",\"type\":\"integer\"},\"TimedMetadataPid\":{\"locationName\":\"timedMetadataPid\",\"type\":\"integer\"},\"VideoPid\":{\"locationName\":\"videoPid\",\"type\":\"integer\"}}},\"Sfl\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"Sfm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActiveChannelPipeline\":{\"locationName\":\"activeChannelPipeline\"},\"PipelineId\":{\"locationName\":\"pipelineId\"}}}},\"Sg5\":{\"type\":\"structure\",\"members\":{\"ChannelClass\":{\"locationName\":\"channelClass\"},\"Codec\":{\"locationName\":\"codec\"},\"MaximumBitrate\":{\"locationName\":\"maximumBitrate\"},\"MaximumFramerate\":{\"locationName\":\"maximumFramerate\"},\"Resolution\":{\"locationName\":\"resolution\"},\"ResourceType\":{\"locationName\":\"resourceType\"},\"SpecialFeature\":{\"locationName\":\"specialFeature\"},\"VideoQuality\":{\"locationName\":\"videoQuality\"}}},\"Sgq\":{\"type\":\"structure\",\"members\":{\"ActiveInput\":{\"locationName\":\"activeInput\"},\"ConfiguredInput\":{\"locationName\":\"configuredInput\"},\"DeviceState\":{\"locationName\":\"deviceState\"},\"Framerate\":{\"locationName\":\"framerate\",\"type\":\"double\"},\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"ScanType\":{\"locationName\":\"scanType\"},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"}}},\"Sgv\":{\"type\":\"structure\",\"members\":{\"DnsAddresses\":{\"shape\":\"S5\",\"locationName\":\"dnsAddresses\"},\"Gateway\":{\"locationName\":\"gateway\"},\"IpAddress\":{\"locationName\":\"ipAddress\"},\"IpScheme\":{\"locationName\":\"ipScheme\"},\"SubnetMask\":{\"locationName\":\"subnetMask\"}}},\"Sgy\":{\"type\":\"structure\",\"members\":{\"ActiveInput\":{\"locationName\":\"activeInput\"},\"ConfiguredInput\":{\"locationName\":\"configuredInput\"},\"DeviceState\":{\"locationName\":\"deviceState\"},\"Framerate\":{\"locationName\":\"framerate\",\"type\":\"double\"},\"Height\":{\"locationName\":\"height\",\"type\":\"integer\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"},\"ScanType\":{\"locationName\":\"scanType\"},\"Width\":{\"locationName\":\"width\",\"type\":\"integer\"}}},\"Sii\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Count\":{\"locationName\":\"count\",\"type\":\"integer\"},\"CurrencyCode\":{\"locationName\":\"currencyCode\"},\"Duration\":{\"locationName\":\"duration\",\"type\":\"integer\"},\"DurationUnits\":{\"locationName\":\"durationUnits\"},\"End\":{\"locationName\":\"end\"},\"FixedPrice\":{\"locationName\":\"fixedPrice\",\"type\":\"double\"},\"Name\":{\"locationName\":\"name\"},\"OfferingDescription\":{\"locationName\":\"offeringDescription\"},\"OfferingId\":{\"locationName\":\"offeringId\"},\"OfferingType\":{\"locationName\":\"offeringType\"},\"Region\":{\"locationName\":\"region\"},\"ReservationId\":{\"locationName\":\"reservationId\"},\"ResourceSpecification\":{\"shape\":\"Sg5\",\"locationName\":\"resourceSpecification\"},\"Start\":{\"locationName\":\"start\"},\"State\":{\"locationName\":\"state\"},\"Tags\":{\"shape\":\"Sdt\",\"locationName\":\"tags\"},\"UsagePrice\":{\"locationName\":\"usagePrice\",\"type\":\"double\"}}},\"Sj8\":{\"type\":\"structure\",\"members\":{\"ConfiguredInput\":{\"locationName\":\"configuredInput\"},\"MaxBitrate\":{\"locationName\":\"maxBitrate\",\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 45939:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeSchedule\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ScheduleActions\"},\"ListChannels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Channels\"},\"ListInputSecurityGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"InputSecurityGroups\"},\"ListInputs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Inputs\"},\"ListOfferings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Offerings\"},\"ListReservations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Reservations\"},\"ListMultiplexPrograms\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"MultiplexPrograms\"},\"ListMultiplexes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Multiplexes\"},\"ListInputDevices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"InputDevices\"},\"ListInputDeviceTransfers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"InputDeviceTransfers\"}}}");

/***/ }),

/***/ 77702:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ChannelCreated\":{\"description\":\"Wait until a channel has been created\",\"operation\":\"DescribeChannel\",\"delay\":3,\"maxAttempts\":5,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"IDLE\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"CREATING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"CREATE_FAILED\"}]},\"ChannelRunning\":{\"description\":\"Wait until a channel is running\",\"operation\":\"DescribeChannel\",\"delay\":5,\"maxAttempts\":120,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"RUNNING\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"STARTING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"ChannelStopped\":{\"description\":\"Wait until a channel has is stopped\",\"operation\":\"DescribeChannel\",\"delay\":5,\"maxAttempts\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"IDLE\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"STOPPING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"ChannelDeleted\":{\"description\":\"Wait until a channel has been deleted\",\"operation\":\"DescribeChannel\",\"delay\":5,\"maxAttempts\":84,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DELETED\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DELETING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"InputAttached\":{\"description\":\"Wait until an input has been attached\",\"operation\":\"DescribeInput\",\"delay\":5,\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"ATTACHED\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DETACHED\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"InputDetached\":{\"description\":\"Wait until an input has been detached\",\"operation\":\"DescribeInput\",\"delay\":5,\"maxAttempts\":84,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DETACHED\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"CREATING\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"ATTACHED\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"InputDeleted\":{\"description\":\"Wait until an input has been deleted\",\"operation\":\"DescribeInput\",\"delay\":5,\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DELETED\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DELETING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"MultiplexCreated\":{\"description\":\"Wait until a multiplex has been created\",\"operation\":\"DescribeMultiplex\",\"delay\":3,\"maxAttempts\":5,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"IDLE\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"CREATING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500},{\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"CREATE_FAILED\"}]},\"MultiplexRunning\":{\"description\":\"Wait until a multiplex is running\",\"operation\":\"DescribeMultiplex\",\"delay\":5,\"maxAttempts\":120,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"RUNNING\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"STARTING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"MultiplexStopped\":{\"description\":\"Wait until a multiplex has is stopped\",\"operation\":\"DescribeMultiplex\",\"delay\":5,\"maxAttempts\":28,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"IDLE\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"STOPPING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]},\"MultiplexDeleted\":{\"description\":\"Wait until a multiplex has been deleted\",\"operation\":\"DescribeMultiplex\",\"delay\":5,\"maxAttempts\":20,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DELETED\"},{\"state\":\"retry\",\"matcher\":\"path\",\"argument\":\"State\",\"expected\":\"DELETING\"},{\"state\":\"retry\",\"matcher\":\"status\",\"expected\":500}]}}}");

/***/ }),

/***/ 3524:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-10-12\",\"endpointPrefix\":\"mediapackage\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"MediaPackage\",\"serviceFullName\":\"AWS Elemental MediaPackage\",\"serviceId\":\"MediaPackage\",\"signatureVersion\":\"v4\",\"signingName\":\"mediapackage\",\"uid\":\"mediapackage-2017-10-12\"},\"operations\":{\"ConfigureLogs\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{id}/configure_logs\",\"responseCode\":200},\"input\":{\"members\":{\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"CreateChannel\":{\"http\":{\"requestUri\":\"/channels\",\"responseCode\":200},\"input\":{\"members\":{\"Description\":{\"locationName\":\"description\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"CreateHarvestJob\":{\"http\":{\"requestUri\":\"/harvest_jobs\",\"responseCode\":200},\"input\":{\"members\":{\"EndTime\":{\"locationName\":\"endTime\"},\"Id\":{\"locationName\":\"id\"},\"OriginEndpointId\":{\"locationName\":\"originEndpointId\"},\"S3Destination\":{\"locationName\":\"s3Destination\",\"shape\":\"Sd\"},\"StartTime\":{\"locationName\":\"startTime\"}},\"required\":[\"S3Destination\",\"EndTime\",\"OriginEndpointId\",\"StartTime\",\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"EndTime\":{\"locationName\":\"endTime\"},\"Id\":{\"locationName\":\"id\"},\"OriginEndpointId\":{\"locationName\":\"originEndpointId\"},\"S3Destination\":{\"locationName\":\"s3Destination\",\"shape\":\"Sd\"},\"StartTime\":{\"locationName\":\"startTime\"},\"Status\":{\"locationName\":\"status\"}},\"type\":\"structure\"}},\"CreateOriginEndpoint\":{\"http\":{\"requestUri\":\"/origin_endpoints\",\"responseCode\":200},\"input\":{\"members\":{\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"Sh\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"Si\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"S10\"},\"Description\":{\"locationName\":\"description\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"S18\"},\"Id\":{\"locationName\":\"id\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"S1b\"},\"Origination\":{\"locationName\":\"origination\"},\"StartoverWindowSeconds\":{\"locationName\":\"startoverWindowSeconds\",\"type\":\"integer\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TimeDelaySeconds\":{\"locationName\":\"timeDelaySeconds\",\"type\":\"integer\"},\"Whitelist\":{\"locationName\":\"whitelist\",\"shape\":\"Sp\"}},\"required\":[\"ChannelId\",\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"Sh\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"S1f\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"S10\"},\"Description\":{\"locationName\":\"description\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"S18\"},\"Id\":{\"locationName\":\"id\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"S1b\"},\"Origination\":{\"locationName\":\"origination\"},\"StartoverWindowSeconds\":{\"locationName\":\"startoverWindowSeconds\",\"type\":\"integer\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TimeDelaySeconds\":{\"locationName\":\"timeDelaySeconds\",\"type\":\"integer\"},\"Url\":{\"locationName\":\"url\"},\"Whitelist\":{\"locationName\":\"whitelist\",\"shape\":\"Sp\"}},\"type\":\"structure\"}},\"DeleteChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channels/{id}\",\"responseCode\":202},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeleteOriginEndpoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/origin_endpoints/{id}\",\"responseCode\":202},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DescribeChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"DescribeHarvestJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/harvest_jobs/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"EndTime\":{\"locationName\":\"endTime\"},\"Id\":{\"locationName\":\"id\"},\"OriginEndpointId\":{\"locationName\":\"originEndpointId\"},\"S3Destination\":{\"locationName\":\"s3Destination\",\"shape\":\"Sd\"},\"StartTime\":{\"locationName\":\"startTime\"},\"Status\":{\"locationName\":\"status\"}},\"type\":\"structure\"}},\"DescribeOriginEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/origin_endpoints/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"Sh\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"S1f\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"S10\"},\"Description\":{\"locationName\":\"description\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"S18\"},\"Id\":{\"locationName\":\"id\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"S1b\"},\"Origination\":{\"locationName\":\"origination\"},\"StartoverWindowSeconds\":{\"locationName\":\"startoverWindowSeconds\",\"type\":\"integer\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TimeDelaySeconds\":{\"locationName\":\"timeDelaySeconds\",\"type\":\"integer\"},\"Url\":{\"locationName\":\"url\"},\"Whitelist\":{\"locationName\":\"whitelist\",\"shape\":\"Sp\"}},\"type\":\"structure\"}},\"ListChannels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"Channels\":{\"locationName\":\"channels\",\"member\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{\"locationName\":\"nextToken\"}},\"type\":\"structure\"}},\"ListHarvestJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/harvest_jobs\",\"responseCode\":200},\"input\":{\"members\":{\"IncludeChannelId\":{\"location\":\"querystring\",\"locationName\":\"includeChannelId\"},\"IncludeStatus\":{\"location\":\"querystring\",\"locationName\":\"includeStatus\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"HarvestJobs\":{\"locationName\":\"harvestJobs\",\"member\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"EndTime\":{\"locationName\":\"endTime\"},\"Id\":{\"locationName\":\"id\"},\"OriginEndpointId\":{\"locationName\":\"originEndpointId\"},\"S3Destination\":{\"locationName\":\"s3Destination\",\"shape\":\"Sd\"},\"StartTime\":{\"locationName\":\"startTime\"},\"Status\":{\"locationName\":\"status\"}},\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{\"locationName\":\"nextToken\"}},\"type\":\"structure\"}},\"ListOriginEndpoints\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/origin_endpoints\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelId\":{\"location\":\"querystring\",\"locationName\":\"channelId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"OriginEndpoints\":{\"locationName\":\"originEndpoints\",\"member\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"Sh\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"S1f\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"S10\"},\"Description\":{\"locationName\":\"description\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"S18\"},\"Id\":{\"locationName\":\"id\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"S1b\"},\"Origination\":{\"locationName\":\"origination\"},\"StartoverWindowSeconds\":{\"locationName\":\"startoverWindowSeconds\",\"type\":\"integer\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TimeDelaySeconds\":{\"locationName\":\"timeDelaySeconds\",\"type\":\"integer\"},\"Url\":{\"locationName\":\"url\"},\"Whitelist\":{\"locationName\":\"whitelist\",\"shape\":\"Sp\"}},\"type\":\"structure\"},\"type\":\"list\"}},\"type\":\"structure\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S27\"}},\"type\":\"structure\"}},\"RotateChannelCredentials\":{\"deprecated\":true,\"deprecatedMessage\":\"This API is deprecated. Please use RotateIngestEndpointCredentials instead\",\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{id}/credentials\",\"responseCode\":200},\"input\":{\"deprecated\":true,\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"deprecated\":true,\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"RotateIngestEndpointCredentials\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{id}/ingest_endpoints/{ingest_endpoint_id}/credentials\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"IngestEndpointId\":{\"location\":\"uri\",\"locationName\":\"ingest_endpoint_id\"}},\"required\":[\"IngestEndpointId\",\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S27\"}},\"required\":[\"ResourceArn\",\"Tags\"],\"type\":\"structure\"}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"shape\":\"Sp\"}},\"required\":[\"TagKeys\",\"ResourceArn\"],\"type\":\"structure\"}},\"UpdateChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channels/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Description\":{\"locationName\":\"description\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Description\":{\"locationName\":\"description\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"HlsIngest\":{\"locationName\":\"hlsIngest\",\"shape\":\"S6\"},\"Id\":{\"locationName\":\"id\"},\"IngressAccessLogs\":{\"locationName\":\"ingressAccessLogs\",\"shape\":\"S4\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"UpdateOriginEndpoint\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/origin_endpoints/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"Sh\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"Si\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"S10\"},\"Description\":{\"locationName\":\"description\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"S18\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"S1b\"},\"Origination\":{\"locationName\":\"origination\"},\"StartoverWindowSeconds\":{\"locationName\":\"startoverWindowSeconds\",\"type\":\"integer\"},\"TimeDelaySeconds\":{\"locationName\":\"timeDelaySeconds\",\"type\":\"integer\"},\"Whitelist\":{\"locationName\":\"whitelist\",\"shape\":\"Sp\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"Sh\"},\"ChannelId\":{\"locationName\":\"channelId\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"S1f\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"S10\"},\"Description\":{\"locationName\":\"description\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"S18\"},\"Id\":{\"locationName\":\"id\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"S1b\"},\"Origination\":{\"locationName\":\"origination\"},\"StartoverWindowSeconds\":{\"locationName\":\"startoverWindowSeconds\",\"type\":\"integer\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TimeDelaySeconds\":{\"locationName\":\"timeDelaySeconds\",\"type\":\"integer\"},\"Url\":{\"locationName\":\"url\"},\"Whitelist\":{\"locationName\":\"whitelist\",\"shape\":\"Sp\"}},\"type\":\"structure\"}}},\"shapes\":{\"S2\":{\"members\":{\"LogGroupName\":{\"locationName\":\"logGroupName\"}},\"type\":\"structure\"},\"S4\":{\"members\":{\"LogGroupName\":{\"locationName\":\"logGroupName\"}},\"type\":\"structure\"},\"S6\":{\"members\":{\"IngestEndpoints\":{\"locationName\":\"ingestEndpoints\",\"member\":{\"members\":{\"Id\":{\"locationName\":\"id\"},\"Password\":{\"locationName\":\"password\"},\"Url\":{\"locationName\":\"url\"},\"Username\":{\"locationName\":\"username\"}},\"type\":\"structure\"},\"type\":\"list\"}},\"type\":\"structure\"},\"S9\":{\"key\":{},\"type\":\"map\",\"value\":{}},\"Sd\":{\"members\":{\"BucketName\":{\"locationName\":\"bucketName\"},\"ManifestKey\":{\"locationName\":\"manifestKey\"},\"RoleArn\":{\"locationName\":\"roleArn\"}},\"required\":[\"ManifestKey\",\"BucketName\",\"RoleArn\"],\"type\":\"structure\"},\"Sh\":{\"members\":{\"CdnIdentifierSecret\":{\"locationName\":\"cdnIdentifierSecret\"},\"SecretsRoleArn\":{\"locationName\":\"secretsRoleArn\"}},\"required\":[\"SecretsRoleArn\",\"CdnIdentifierSecret\"],\"type\":\"structure\"},\"Si\":{\"members\":{\"Encryption\":{\"locationName\":\"encryption\",\"shape\":\"Sj\"},\"HlsManifests\":{\"locationName\":\"hlsManifests\",\"member\":{\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\"},\"AdTriggers\":{\"locationName\":\"adTriggers\",\"shape\":\"St\"},\"AdsOnDeliveryRestrictions\":{\"locationName\":\"adsOnDeliveryRestrictions\"},\"Id\":{\"locationName\":\"id\"},\"IncludeIframeOnlyStream\":{\"locationName\":\"includeIframeOnlyStream\",\"type\":\"boolean\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"PlaylistType\":{\"locationName\":\"playlistType\"},\"PlaylistWindowSeconds\":{\"locationName\":\"playlistWindowSeconds\",\"type\":\"integer\"},\"ProgramDateTimeIntervalSeconds\":{\"locationName\":\"programDateTimeIntervalSeconds\",\"type\":\"integer\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"type\":\"list\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"SegmentPrefix\":{\"locationName\":\"segmentPrefix\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sy\"}},\"type\":\"structure\"},\"Sj\":{\"members\":{\"KeyRotationIntervalSeconds\":{\"locationName\":\"keyRotationIntervalSeconds\",\"type\":\"integer\"},\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Sl\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"Sl\":{\"members\":{\"CertificateArn\":{\"locationName\":\"certificateArn\"},\"EncryptionContractConfiguration\":{\"locationName\":\"encryptionContractConfiguration\",\"members\":{\"PresetSpeke20Audio\":{\"locationName\":\"presetSpeke20Audio\"},\"PresetSpeke20Video\":{\"locationName\":\"presetSpeke20Video\"}},\"required\":[\"PresetSpeke20Audio\",\"PresetSpeke20Video\"],\"type\":\"structure\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"RoleArn\":{\"locationName\":\"roleArn\"},\"SystemIds\":{\"locationName\":\"systemIds\",\"shape\":\"Sp\"},\"Url\":{\"locationName\":\"url\"}},\"required\":[\"ResourceId\",\"SystemIds\",\"Url\",\"RoleArn\"],\"type\":\"structure\"},\"Sp\":{\"member\":{},\"type\":\"list\"},\"St\":{\"member\":{},\"type\":\"list\"},\"Sy\":{\"members\":{\"MaxVideoBitsPerSecond\":{\"locationName\":\"maxVideoBitsPerSecond\",\"type\":\"integer\"},\"MinVideoBitsPerSecond\":{\"locationName\":\"minVideoBitsPerSecond\",\"type\":\"integer\"},\"StreamOrder\":{\"locationName\":\"streamOrder\"}},\"type\":\"structure\"},\"S10\":{\"members\":{\"AdTriggers\":{\"locationName\":\"adTriggers\",\"shape\":\"St\"},\"AdsOnDeliveryRestrictions\":{\"locationName\":\"adsOnDeliveryRestrictions\"},\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"KeyRotationIntervalSeconds\":{\"locationName\":\"keyRotationIntervalSeconds\",\"type\":\"integer\"},\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Sl\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"ManifestLayout\":{\"locationName\":\"manifestLayout\"},\"ManifestWindowSeconds\":{\"locationName\":\"manifestWindowSeconds\",\"type\":\"integer\"},\"MinBufferTimeSeconds\":{\"locationName\":\"minBufferTimeSeconds\",\"type\":\"integer\"},\"MinUpdatePeriodSeconds\":{\"locationName\":\"minUpdatePeriodSeconds\",\"type\":\"integer\"},\"PeriodTriggers\":{\"locationName\":\"periodTriggers\",\"member\":{},\"type\":\"list\"},\"Profile\":{\"locationName\":\"profile\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"SegmentTemplateFormat\":{\"locationName\":\"segmentTemplateFormat\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sy\"},\"SuggestedPresentationDelaySeconds\":{\"locationName\":\"suggestedPresentationDelaySeconds\",\"type\":\"integer\"},\"UtcTiming\":{\"locationName\":\"utcTiming\"},\"UtcTimingUri\":{\"locationName\":\"utcTimingUri\"}},\"type\":\"structure\"},\"S18\":{\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\"},\"AdTriggers\":{\"locationName\":\"adTriggers\",\"shape\":\"St\"},\"AdsOnDeliveryRestrictions\":{\"locationName\":\"adsOnDeliveryRestrictions\"},\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"ConstantInitializationVector\":{\"locationName\":\"constantInitializationVector\"},\"EncryptionMethod\":{\"locationName\":\"encryptionMethod\"},\"KeyRotationIntervalSeconds\":{\"locationName\":\"keyRotationIntervalSeconds\",\"type\":\"integer\"},\"RepeatExtXKey\":{\"locationName\":\"repeatExtXKey\",\"type\":\"boolean\"},\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Sl\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"IncludeIframeOnlyStream\":{\"locationName\":\"includeIframeOnlyStream\",\"type\":\"boolean\"},\"PlaylistType\":{\"locationName\":\"playlistType\"},\"PlaylistWindowSeconds\":{\"locationName\":\"playlistWindowSeconds\",\"type\":\"integer\"},\"ProgramDateTimeIntervalSeconds\":{\"locationName\":\"programDateTimeIntervalSeconds\",\"type\":\"integer\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sy\"},\"UseAudioRenditionGroup\":{\"locationName\":\"useAudioRenditionGroup\",\"type\":\"boolean\"}},\"type\":\"structure\"},\"S1b\":{\"members\":{\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Sl\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"ManifestWindowSeconds\":{\"locationName\":\"manifestWindowSeconds\",\"type\":\"integer\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sy\"}},\"type\":\"structure\"},\"S1f\":{\"members\":{\"Encryption\":{\"locationName\":\"encryption\",\"shape\":\"Sj\"},\"HlsManifests\":{\"locationName\":\"hlsManifests\",\"member\":{\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\"},\"Id\":{\"locationName\":\"id\"},\"IncludeIframeOnlyStream\":{\"locationName\":\"includeIframeOnlyStream\",\"type\":\"boolean\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"PlaylistType\":{\"locationName\":\"playlistType\"},\"PlaylistWindowSeconds\":{\"locationName\":\"playlistWindowSeconds\",\"type\":\"integer\"},\"ProgramDateTimeIntervalSeconds\":{\"locationName\":\"programDateTimeIntervalSeconds\",\"type\":\"integer\"},\"Url\":{\"locationName\":\"url\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"type\":\"list\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"SegmentPrefix\":{\"locationName\":\"segmentPrefix\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sy\"}},\"type\":\"structure\"},\"S27\":{\"key\":{},\"type\":\"map\",\"value\":{}}}}");

/***/ }),

/***/ 28168:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListChannels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Channels\"},\"ListOriginEndpoints\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"OriginEndpoints\"},\"ListHarvestJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"HarvestJobs\"}}}");

/***/ }),

/***/ 62182:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-11-07\",\"endpointPrefix\":\"mediapackage-vod\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"MediaPackage Vod\",\"serviceFullName\":\"AWS Elemental MediaPackage VOD\",\"serviceId\":\"MediaPackage Vod\",\"signatureVersion\":\"v4\",\"signingName\":\"mediapackage-vod\",\"uid\":\"mediapackage-vod-2018-11-07\"},\"operations\":{\"ConfigureLogs\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/packaging_groups/{id}/configure_logs\",\"responseCode\":200},\"input\":{\"members\":{\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"DomainName\":{\"locationName\":\"domainName\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"CreateAsset\":{\"http\":{\"requestUri\":\"/assets\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"locationName\":\"id\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"SourceArn\":{\"locationName\":\"sourceArn\"},\"SourceRoleArn\":{\"locationName\":\"sourceRoleArn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"required\":[\"SourceArn\",\"Id\",\"PackagingGroupId\",\"SourceRoleArn\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"EgressEndpoints\":{\"locationName\":\"egressEndpoints\",\"shape\":\"S9\"},\"Id\":{\"locationName\":\"id\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"SourceArn\":{\"locationName\":\"sourceArn\"},\"SourceRoleArn\":{\"locationName\":\"sourceRoleArn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"CreatePackagingConfiguration\":{\"http\":{\"requestUri\":\"/packaging_configurations\",\"responseCode\":200},\"input\":{\"members\":{\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"Sc\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"Sn\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"Sw\"},\"Id\":{\"locationName\":\"id\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"Sz\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"required\":[\"Id\",\"PackagingGroupId\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"Sc\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"Sn\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"Sw\"},\"Id\":{\"locationName\":\"id\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"Sz\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"CreatePackagingGroup\":{\"http\":{\"requestUri\":\"/packaging_groups\",\"responseCode\":200},\"input\":{\"members\":{\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"DomainName\":{\"locationName\":\"domainName\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"DeleteAsset\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/assets/{id}\",\"responseCode\":202},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeletePackagingConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/packaging_configurations/{id}\",\"responseCode\":202},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeletePackagingGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/packaging_groups/{id}\",\"responseCode\":202},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DescribeAsset\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"EgressEndpoints\":{\"locationName\":\"egressEndpoints\",\"shape\":\"S9\"},\"Id\":{\"locationName\":\"id\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"SourceArn\":{\"locationName\":\"sourceArn\"},\"SourceRoleArn\":{\"locationName\":\"sourceRoleArn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"DescribePackagingConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/packaging_configurations/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"Sc\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"Sn\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"Sw\"},\"Id\":{\"locationName\":\"id\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"Sz\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"DescribePackagingGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/packaging_groups/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"DomainName\":{\"locationName\":\"domainName\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}},\"ListAssets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assets\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"PackagingGroupId\":{\"location\":\"querystring\",\"locationName\":\"packagingGroupId\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"Assets\":{\"locationName\":\"assets\",\"member\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CreatedAt\":{\"locationName\":\"createdAt\"},\"Id\":{\"locationName\":\"id\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"ResourceId\":{\"locationName\":\"resourceId\"},\"SourceArn\":{\"locationName\":\"sourceArn\"},\"SourceRoleArn\":{\"locationName\":\"sourceRoleArn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{\"locationName\":\"nextToken\"}},\"type\":\"structure\"}},\"ListPackagingConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/packaging_configurations\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"PackagingGroupId\":{\"location\":\"querystring\",\"locationName\":\"packagingGroupId\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"PackagingConfigurations\":{\"locationName\":\"packagingConfigurations\",\"member\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"CmafPackage\":{\"locationName\":\"cmafPackage\",\"shape\":\"Sc\"},\"DashPackage\":{\"locationName\":\"dashPackage\",\"shape\":\"Sn\"},\"HlsPackage\":{\"locationName\":\"hlsPackage\",\"shape\":\"Sw\"},\"Id\":{\"locationName\":\"id\"},\"MssPackage\":{\"locationName\":\"mssPackage\",\"shape\":\"Sz\"},\"PackagingGroupId\":{\"locationName\":\"packagingGroupId\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"},\"type\":\"list\"}},\"type\":\"structure\"}},\"ListPackagingGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/packaging_groups\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"PackagingGroups\":{\"locationName\":\"packagingGroups\",\"member\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"DomainName\":{\"locationName\":\"domainName\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"},\"type\":\"list\"}},\"type\":\"structure\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S1x\"}},\"type\":\"structure\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S1x\"}},\"required\":[\"ResourceArn\",\"Tags\"],\"type\":\"structure\"}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"shape\":\"Sf\"}},\"required\":[\"TagKeys\",\"ResourceArn\"],\"type\":\"structure\"}},\"UpdatePackagingGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/packaging_groups/{id}\",\"responseCode\":200},\"input\":{\"members\":{\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"Id\":{\"location\":\"uri\",\"locationName\":\"id\"}},\"required\":[\"Id\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Authorization\":{\"locationName\":\"authorization\",\"shape\":\"S5\"},\"DomainName\":{\"locationName\":\"domainName\"},\"EgressAccessLogs\":{\"locationName\":\"egressAccessLogs\",\"shape\":\"S2\"},\"Id\":{\"locationName\":\"id\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S6\"}},\"type\":\"structure\"}}},\"shapes\":{\"S2\":{\"members\":{\"LogGroupName\":{\"locationName\":\"logGroupName\"}},\"type\":\"structure\"},\"S5\":{\"members\":{\"CdnIdentifierSecret\":{\"locationName\":\"cdnIdentifierSecret\"},\"SecretsRoleArn\":{\"locationName\":\"secretsRoleArn\"}},\"required\":[\"SecretsRoleArn\",\"CdnIdentifierSecret\"],\"type\":\"structure\"},\"S6\":{\"key\":{},\"type\":\"map\",\"value\":{}},\"S9\":{\"member\":{\"members\":{\"PackagingConfigurationId\":{\"locationName\":\"packagingConfigurationId\"},\"Url\":{\"locationName\":\"url\"}},\"type\":\"structure\"},\"type\":\"list\"},\"Sc\":{\"members\":{\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Se\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"HlsManifests\":{\"locationName\":\"hlsManifests\",\"shape\":\"Sg\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"}},\"required\":[\"HlsManifests\"],\"type\":\"structure\"},\"Se\":{\"members\":{\"RoleArn\":{\"locationName\":\"roleArn\"},\"SystemIds\":{\"locationName\":\"systemIds\",\"shape\":\"Sf\"},\"Url\":{\"locationName\":\"url\"}},\"required\":[\"SystemIds\",\"Url\",\"RoleArn\"],\"type\":\"structure\"},\"Sf\":{\"member\":{},\"type\":\"list\"},\"Sg\":{\"member\":{\"members\":{\"AdMarkers\":{\"locationName\":\"adMarkers\"},\"IncludeIframeOnlyStream\":{\"locationName\":\"includeIframeOnlyStream\",\"type\":\"boolean\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"ProgramDateTimeIntervalSeconds\":{\"locationName\":\"programDateTimeIntervalSeconds\",\"type\":\"integer\"},\"RepeatExtXKey\":{\"locationName\":\"repeatExtXKey\",\"type\":\"boolean\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sl\"}},\"type\":\"structure\"},\"type\":\"list\"},\"Sl\":{\"members\":{\"MaxVideoBitsPerSecond\":{\"locationName\":\"maxVideoBitsPerSecond\",\"type\":\"integer\"},\"MinVideoBitsPerSecond\":{\"locationName\":\"minVideoBitsPerSecond\",\"type\":\"integer\"},\"StreamOrder\":{\"locationName\":\"streamOrder\"}},\"type\":\"structure\"},\"Sn\":{\"members\":{\"DashManifests\":{\"locationName\":\"dashManifests\",\"member\":{\"members\":{\"ManifestLayout\":{\"locationName\":\"manifestLayout\"},\"ManifestName\":{\"locationName\":\"manifestName\"},\"MinBufferTimeSeconds\":{\"locationName\":\"minBufferTimeSeconds\",\"type\":\"integer\"},\"Profile\":{\"locationName\":\"profile\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sl\"}},\"type\":\"structure\"},\"type\":\"list\"},\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Se\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"PeriodTriggers\":{\"locationName\":\"periodTriggers\",\"member\":{},\"type\":\"list\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"SegmentTemplateFormat\":{\"locationName\":\"segmentTemplateFormat\"}},\"required\":[\"DashManifests\"],\"type\":\"structure\"},\"Sw\":{\"members\":{\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"ConstantInitializationVector\":{\"locationName\":\"constantInitializationVector\"},\"EncryptionMethod\":{\"locationName\":\"encryptionMethod\"},\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Se\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"HlsManifests\":{\"locationName\":\"hlsManifests\",\"shape\":\"Sg\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"},\"UseAudioRenditionGroup\":{\"locationName\":\"useAudioRenditionGroup\",\"type\":\"boolean\"}},\"required\":[\"HlsManifests\"],\"type\":\"structure\"},\"Sz\":{\"members\":{\"Encryption\":{\"locationName\":\"encryption\",\"members\":{\"SpekeKeyProvider\":{\"locationName\":\"spekeKeyProvider\",\"shape\":\"Se\"}},\"required\":[\"SpekeKeyProvider\"],\"type\":\"structure\"},\"MssManifests\":{\"locationName\":\"mssManifests\",\"member\":{\"members\":{\"ManifestName\":{\"locationName\":\"manifestName\"},\"StreamSelection\":{\"locationName\":\"streamSelection\",\"shape\":\"Sl\"}},\"type\":\"structure\"},\"type\":\"list\"},\"SegmentDurationSeconds\":{\"locationName\":\"segmentDurationSeconds\",\"type\":\"integer\"}},\"required\":[\"MssManifests\"],\"type\":\"structure\"},\"S1x\":{\"key\":{},\"type\":\"map\",\"value\":{}}}}");

/***/ }),

/***/ 9108:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAssets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Assets\"},\"ListPackagingConfigurations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PackagingConfigurations\"},\"ListPackagingGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PackagingGroups\"}}}");

/***/ }),

/***/ 86331:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-01\",\"endpointPrefix\":\"mediastore\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"MediaStore\",\"serviceFullName\":\"AWS Elemental MediaStore\",\"serviceId\":\"MediaStore\",\"signatureVersion\":\"v4\",\"signingName\":\"mediastore\",\"targetPrefix\":\"MediaStore_20170901\",\"uid\":\"mediastore-2017-09-01\"},\"operations\":{\"CreateContainer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Container\"],\"members\":{\"Container\":{\"shape\":\"S8\"}}}},\"DeleteContainer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteContainerPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCorsPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteLifecyclePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteMetricPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeContainer\":{\"input\":{\"type\":\"structure\",\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Container\":{\"shape\":\"S8\"}}}},\"GetContainerPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Policy\"],\"members\":{\"Policy\":{}}}},\"GetCorsPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CorsPolicy\"],\"members\":{\"CorsPolicy\":{\"shape\":\"Sv\"}}}},\"GetLifecyclePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"LifecyclePolicy\"],\"members\":{\"LifecyclePolicy\":{}}}},\"GetMetricPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"MetricPolicy\"],\"members\":{\"MetricPolicy\":{\"shape\":\"S1a\"}}}},\"ListContainers\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Containers\"],\"members\":{\"Containers\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S3\"}}}},\"PutContainerPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\",\"Policy\"],\"members\":{\"ContainerName\":{},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutCorsPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\",\"CorsPolicy\"],\"members\":{\"ContainerName\":{},\"CorsPolicy\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutLifecyclePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\",\"LifecyclePolicy\"],\"members\":{\"ContainerName\":{},\"LifecyclePolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutMetricPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\",\"MetricPolicy\"],\"members\":{\"ContainerName\":{},\"MetricPolicy\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartAccessLogging\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopAccessLogging\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContainerName\"],\"members\":{\"ContainerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"Tags\"],\"members\":{\"Resource\":{},\"Tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resource\",\"TagKeys\"],\"members\":{\"Resource\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S8\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ARN\":{},\"Name\":{},\"Status\":{},\"AccessLoggingEnabled\":{\"type\":\"boolean\"}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AllowedOrigins\",\"AllowedHeaders\"],\"members\":{\"AllowedOrigins\":{\"type\":\"list\",\"member\":{}},\"AllowedMethods\":{\"type\":\"list\",\"member\":{}},\"AllowedHeaders\":{\"type\":\"list\",\"member\":{}},\"MaxAgeSeconds\":{\"type\":\"integer\"},\"ExposeHeaders\":{\"type\":\"list\",\"member\":{}}}}},\"S1a\":{\"type\":\"structure\",\"required\":[\"ContainerLevelMetrics\"],\"members\":{\"ContainerLevelMetrics\":{},\"MetricPolicyRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ObjectGroup\",\"ObjectGroupName\"],\"members\":{\"ObjectGroup\":{},\"ObjectGroupName\":{}}}}}}}}");

/***/ }),

/***/ 85011:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListContainers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 78855:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-09-01\",\"endpointPrefix\":\"data.mediastore\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"MediaStore Data\",\"serviceFullName\":\"AWS Elemental MediaStore Data Plane\",\"serviceId\":\"MediaStore Data\",\"signatureVersion\":\"v4\",\"signingName\":\"mediastore\",\"uid\":\"mediastore-data-2017-09-01\"},\"operations\":{\"DeleteObject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Path+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Path\"],\"members\":{\"Path\":{\"location\":\"uri\",\"locationName\":\"Path\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeObject\":{\"http\":{\"method\":\"HEAD\",\"requestUri\":\"/{Path+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Path\"],\"members\":{\"Path\":{\"location\":\"uri\",\"locationName\":\"Path\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"LastModified\":{\"location\":\"header\",\"locationName\":\"Last-Modified\",\"type\":\"timestamp\"}}}},\"GetObject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Path+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Path\"],\"members\":{\"Path\":{\"location\":\"uri\",\"locationName\":\"Path\"},\"Range\":{\"location\":\"header\",\"locationName\":\"Range\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"StatusCode\"],\"members\":{\"Body\":{\"shape\":\"Se\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"ContentRange\":{\"location\":\"header\",\"locationName\":\"Content-Range\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"LastModified\":{\"location\":\"header\",\"locationName\":\"Last-Modified\",\"type\":\"timestamp\"},\"StatusCode\":{\"location\":\"statusCode\",\"type\":\"integer\"}},\"payload\":\"Body\"}},\"ListItems\":{\"http\":{\"method\":\"GET\"},\"input\":{\"type\":\"structure\",\"members\":{\"Path\":{\"location\":\"querystring\",\"locationName\":\"Path\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"ETag\":{},\"LastModified\":{\"type\":\"timestamp\"},\"ContentType\":{},\"ContentLength\":{\"type\":\"long\"}}}},\"NextToken\":{}}}},\"PutObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Path+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Body\",\"Path\"],\"members\":{\"Body\":{\"shape\":\"Se\"},\"Path\":{\"location\":\"uri\",\"locationName\":\"Path\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-storage-class\"},\"UploadAvailability\":{\"location\":\"header\",\"locationName\":\"x-amz-upload-availability\"}},\"payload\":\"Body\"},\"output\":{\"type\":\"structure\",\"members\":{\"ContentSHA256\":{},\"ETag\":{},\"StorageClass\":{}}},\"authtype\":\"v4-unsigned-body\"}},\"shapes\":{\"Se\":{\"type\":\"blob\",\"streaming\":true}}}");

/***/ }),

/***/ 12340:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListItems\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 32863:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-04-23\",\"endpointPrefix\":\"api.mediatailor\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"MediaTailor\",\"serviceFullName\":\"AWS MediaTailor\",\"serviceId\":\"MediaTailor\",\"signatureVersion\":\"v4\",\"signingName\":\"mediatailor\",\"uid\":\"mediatailor-2018-04-23\"},\"operations\":{\"CreateChannel\":{\"http\":{\"requestUri\":\"/channel/{channelName}\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"Outputs\":{\"shape\":\"S3\"},\"PlaybackMode\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"required\":[\"ChannelName\",\"Outputs\",\"PlaybackMode\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{},\"ChannelName\":{},\"ChannelState\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"Outputs\":{\"shape\":\"Sd\"},\"PlaybackMode\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"CreateProgram\":{\"http\":{\"requestUri\":\"/channel/{channelName}/program/{programName}\",\"responseCode\":200},\"input\":{\"members\":{\"AdBreaks\":{\"shape\":\"Sg\"},\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"ProgramName\":{\"location\":\"uri\",\"locationName\":\"programName\"},\"ScheduleConfiguration\":{\"members\":{\"Transition\":{\"members\":{\"RelativePosition\":{},\"RelativeProgram\":{},\"Type\":{}},\"required\":[\"Type\",\"RelativePosition\"],\"type\":\"structure\"}},\"required\":[\"Transition\"],\"type\":\"structure\"},\"SourceLocationName\":{},\"VodSourceName\":{}},\"required\":[\"ChannelName\",\"ProgramName\",\"VodSourceName\",\"ScheduleConfiguration\",\"SourceLocationName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"AdBreaks\":{\"shape\":\"Sg\"},\"Arn\":{},\"ChannelName\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"ProgramName\":{},\"SourceLocationName\":{},\"VodSourceName\":{}},\"type\":\"structure\"}},\"CreateSourceLocation\":{\"http\":{\"requestUri\":\"/sourceLocation/{sourceLocationName}\",\"responseCode\":200},\"input\":{\"members\":{\"AccessConfiguration\":{\"shape\":\"Sr\"},\"DefaultSegmentDeliveryConfiguration\":{\"shape\":\"St\"},\"HttpConfiguration\":{\"shape\":\"Su\"},\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"required\":[\"SourceLocationName\",\"HttpConfiguration\"],\"type\":\"structure\"},\"output\":{\"members\":{\"AccessConfiguration\":{\"shape\":\"Sr\"},\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"DefaultSegmentDeliveryConfiguration\":{\"shape\":\"St\"},\"HttpConfiguration\":{\"shape\":\"Su\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"CreateVodSource\":{\"http\":{\"requestUri\":\"/sourceLocation/{sourceLocationName}/vodSource/{vodSourceName}\",\"responseCode\":200},\"input\":{\"members\":{\"HttpPackageConfigurations\":{\"shape\":\"Sx\"},\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"VodSourceName\":{\"location\":\"uri\",\"locationName\":\"vodSourceName\"}},\"required\":[\"SourceLocationName\",\"VodSourceName\",\"HttpPackageConfigurations\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"HttpPackageConfigurations\":{\"shape\":\"Sx\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"VodSourceName\":{}},\"type\":\"structure\"}},\"DeleteChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channel/{channelName}\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeleteChannelPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channel/{channelName}/policy\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeletePlaybackConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/playbackConfiguration/{Name}\",\"responseCode\":204},\"input\":{\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}},\"required\":[\"Name\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeleteProgram\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/channel/{channelName}/program/{programName}\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"ProgramName\":{\"location\":\"uri\",\"locationName\":\"programName\"}},\"required\":[\"ChannelName\",\"ProgramName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeleteSourceLocation\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/sourceLocation/{sourceLocationName}\",\"responseCode\":200},\"input\":{\"members\":{\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"}},\"required\":[\"SourceLocationName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DeleteVodSource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/sourceLocation/{sourceLocationName}/vodSource/{vodSourceName}\",\"responseCode\":200},\"input\":{\"members\":{\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"},\"VodSourceName\":{\"location\":\"uri\",\"locationName\":\"vodSourceName\"}},\"required\":[\"SourceLocationName\",\"VodSourceName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"DescribeChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channel/{channelName}\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{},\"ChannelName\":{},\"ChannelState\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"Outputs\":{\"shape\":\"Sd\"},\"PlaybackMode\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"DescribeProgram\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channel/{channelName}/program/{programName}\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"ProgramName\":{\"location\":\"uri\",\"locationName\":\"programName\"}},\"required\":[\"ChannelName\",\"ProgramName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"AdBreaks\":{\"shape\":\"Sg\"},\"Arn\":{},\"ChannelName\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"ProgramName\":{},\"SourceLocationName\":{},\"VodSourceName\":{}},\"type\":\"structure\"}},\"DescribeSourceLocation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sourceLocation/{sourceLocationName}\",\"responseCode\":200},\"input\":{\"members\":{\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"}},\"required\":[\"SourceLocationName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"AccessConfiguration\":{\"shape\":\"Sr\"},\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"DefaultSegmentDeliveryConfiguration\":{\"shape\":\"St\"},\"HttpConfiguration\":{\"shape\":\"Su\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"DescribeVodSource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sourceLocation/{sourceLocationName}/vodSource/{vodSourceName}\",\"responseCode\":200},\"input\":{\"members\":{\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"},\"VodSourceName\":{\"location\":\"uri\",\"locationName\":\"vodSourceName\"}},\"required\":[\"SourceLocationName\",\"VodSourceName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"HttpPackageConfigurations\":{\"shape\":\"Sx\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"VodSourceName\":{}},\"type\":\"structure\"}},\"GetChannelPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channel/{channelName}/policy\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Policy\":{}},\"type\":\"structure\"}},\"GetChannelSchedule\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channel/{channelName}/schedule\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"DurationMinutes\":{\"location\":\"querystring\",\"locationName\":\"durationMinutes\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Items\":{\"member\":{\"members\":{\"ApproximateDurationSeconds\":{\"type\":\"long\"},\"ApproximateStartTime\":{\"shape\":\"Sc\"},\"Arn\":{},\"ChannelName\":{},\"ProgramName\":{},\"SourceLocationName\":{},\"VodSourceName\":{}},\"required\":[\"VodSourceName\",\"ChannelName\",\"SourceLocationName\",\"Arn\",\"ProgramName\"],\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{}},\"type\":\"structure\"}},\"GetPlaybackConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/playbackConfiguration/{Name}\",\"responseCode\":200},\"input\":{\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}},\"required\":[\"Name\"],\"type\":\"structure\"},\"output\":{\"members\":{\"AdDecisionServerUrl\":{},\"AvailSuppression\":{\"shape\":\"S1u\"},\"Bumper\":{\"shape\":\"S1w\"},\"CdnConfiguration\":{\"shape\":\"S1x\"},\"ConfigurationAliases\":{\"shape\":\"S1y\"},\"DashConfiguration\":{\"shape\":\"S1z\"},\"HlsConfiguration\":{\"shape\":\"S21\"},\"LivePreRollConfiguration\":{\"shape\":\"S22\"},\"ManifestProcessingRules\":{\"shape\":\"S23\"},\"Name\":{},\"PersonalizationThresholdSeconds\":{\"type\":\"integer\"},\"PlaybackConfigurationArn\":{},\"PlaybackEndpointPrefix\":{},\"SessionInitializationEndpointPrefix\":{},\"SlateAdUrl\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TranscodeProfileName\":{},\"VideoContentSourceUrl\":{}},\"type\":\"structure\"}},\"ListChannels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/channels\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"Items\":{\"member\":{\"members\":{\"Arn\":{},\"ChannelName\":{},\"ChannelState\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"Outputs\":{\"shape\":\"Sd\"},\"PlaybackMode\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"required\":[\"ChannelState\",\"ChannelName\",\"Outputs\",\"Arn\",\"PlaybackMode\"],\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{}},\"type\":\"structure\"}},\"ListPlaybackConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/playbackConfigurations\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"Items\":{\"member\":{\"members\":{\"AdDecisionServerUrl\":{},\"AvailSuppression\":{\"shape\":\"S1u\"},\"Bumper\":{\"shape\":\"S1w\"},\"CdnConfiguration\":{\"shape\":\"S1x\"},\"ConfigurationAliases\":{\"shape\":\"S1y\"},\"DashConfiguration\":{\"shape\":\"S1z\"},\"HlsConfiguration\":{\"shape\":\"S21\"},\"LivePreRollConfiguration\":{\"shape\":\"S22\"},\"ManifestProcessingRules\":{\"shape\":\"S23\"},\"Name\":{},\"PersonalizationThresholdSeconds\":{\"type\":\"integer\"},\"PlaybackConfigurationArn\":{},\"PlaybackEndpointPrefix\":{},\"SessionInitializationEndpointPrefix\":{},\"SlateAdUrl\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TranscodeProfileName\":{},\"VideoContentSourceUrl\":{}},\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{}},\"type\":\"structure\"}},\"ListSourceLocations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sourceLocations\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"type\":\"structure\"},\"output\":{\"members\":{\"Items\":{\"member\":{\"members\":{\"AccessConfiguration\":{\"shape\":\"Sr\"},\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"DefaultSegmentDeliveryConfiguration\":{\"shape\":\"St\"},\"HttpConfiguration\":{\"shape\":\"Su\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"required\":[\"SourceLocationName\",\"HttpConfiguration\",\"Arn\"],\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{}},\"type\":\"structure\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":200},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}},\"required\":[\"ResourceArn\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"ListVodSources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sourceLocation/{sourceLocationName}/vodSources\",\"responseCode\":200},\"input\":{\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"}},\"required\":[\"SourceLocationName\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Items\":{\"member\":{\"members\":{\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"HttpPackageConfigurations\":{\"shape\":\"Sx\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"VodSourceName\":{}},\"required\":[\"VodSourceName\",\"SourceLocationName\",\"HttpPackageConfigurations\",\"Arn\"],\"type\":\"structure\"},\"type\":\"list\"},\"NextToken\":{}},\"type\":\"structure\"}},\"PutChannelPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channel/{channelName}/policy\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"Policy\":{}},\"required\":[\"ChannelName\",\"Policy\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"PutPlaybackConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/playbackConfiguration\",\"responseCode\":200},\"input\":{\"members\":{\"AdDecisionServerUrl\":{},\"AvailSuppression\":{\"shape\":\"S1u\"},\"Bumper\":{\"shape\":\"S1w\"},\"CdnConfiguration\":{\"shape\":\"S1x\"},\"ConfigurationAliases\":{\"key\":{},\"type\":\"map\",\"value\":{\"shape\":\"S9\"}},\"DashConfiguration\":{\"members\":{\"MpdLocation\":{},\"OriginManifestType\":{}},\"type\":\"structure\"},\"LivePreRollConfiguration\":{\"shape\":\"S22\"},\"ManifestProcessingRules\":{\"shape\":\"S23\"},\"Name\":{},\"PersonalizationThresholdSeconds\":{\"type\":\"integer\"},\"SlateAdUrl\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TranscodeProfileName\":{},\"VideoContentSourceUrl\":{}},\"type\":\"structure\"},\"output\":{\"members\":{\"AdDecisionServerUrl\":{},\"AvailSuppression\":{\"shape\":\"S1u\"},\"Bumper\":{\"shape\":\"S1w\"},\"CdnConfiguration\":{\"shape\":\"S1x\"},\"ConfigurationAliases\":{\"shape\":\"S1y\"},\"DashConfiguration\":{\"shape\":\"S1z\"},\"HlsConfiguration\":{\"shape\":\"S21\"},\"LivePreRollConfiguration\":{\"shape\":\"S22\"},\"ManifestProcessingRules\":{\"shape\":\"S23\"},\"Name\":{},\"PersonalizationThresholdSeconds\":{\"type\":\"integer\"},\"PlaybackConfigurationArn\":{},\"PlaybackEndpointPrefix\":{},\"SessionInitializationEndpointPrefix\":{},\"SlateAdUrl\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"TranscodeProfileName\":{},\"VideoContentSourceUrl\":{}},\"type\":\"structure\"}},\"StartChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channel/{channelName}/start\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"StopChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channel/{channelName}/stop\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"}},\"required\":[\"ChannelName\"],\"type\":\"structure\"},\"output\":{\"members\":{},\"type\":\"structure\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":204},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"required\":[\"ResourceArn\",\"Tags\"],\"type\":\"structure\"}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":204},\"input\":{\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"member\":{},\"type\":\"list\"}},\"required\":[\"ResourceArn\",\"TagKeys\"],\"type\":\"structure\"}},\"UpdateChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/channel/{channelName}\",\"responseCode\":200},\"input\":{\"members\":{\"ChannelName\":{\"location\":\"uri\",\"locationName\":\"channelName\"},\"Outputs\":{\"shape\":\"S3\"}},\"required\":[\"ChannelName\",\"Outputs\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{},\"ChannelName\":{},\"ChannelState\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"Outputs\":{\"shape\":\"Sd\"},\"PlaybackMode\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"UpdateSourceLocation\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/sourceLocation/{sourceLocationName}\",\"responseCode\":200},\"input\":{\"members\":{\"AccessConfiguration\":{\"shape\":\"Sr\"},\"DefaultSegmentDeliveryConfiguration\":{\"shape\":\"St\"},\"HttpConfiguration\":{\"shape\":\"Su\"},\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"}},\"required\":[\"SourceLocationName\",\"HttpConfiguration\"],\"type\":\"structure\"},\"output\":{\"members\":{\"AccessConfiguration\":{\"shape\":\"Sr\"},\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"DefaultSegmentDeliveryConfiguration\":{\"shape\":\"St\"},\"HttpConfiguration\":{\"shape\":\"Su\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"}},\"type\":\"structure\"}},\"UpdateVodSource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/sourceLocation/{sourceLocationName}/vodSource/{vodSourceName}\",\"responseCode\":200},\"input\":{\"members\":{\"HttpPackageConfigurations\":{\"shape\":\"Sx\"},\"SourceLocationName\":{\"location\":\"uri\",\"locationName\":\"sourceLocationName\"},\"VodSourceName\":{\"location\":\"uri\",\"locationName\":\"vodSourceName\"}},\"required\":[\"SourceLocationName\",\"VodSourceName\",\"HttpPackageConfigurations\"],\"type\":\"structure\"},\"output\":{\"members\":{\"Arn\":{},\"CreationTime\":{\"shape\":\"Sc\"},\"HttpPackageConfigurations\":{\"shape\":\"Sx\"},\"LastModifiedTime\":{\"shape\":\"Sc\"},\"SourceLocationName\":{},\"Tags\":{\"locationName\":\"tags\",\"shape\":\"S9\"},\"VodSourceName\":{}},\"type\":\"structure\"}}},\"shapes\":{\"S3\":{\"member\":{\"members\":{\"DashPlaylistSettings\":{\"shape\":\"S5\"},\"HlsPlaylistSettings\":{\"shape\":\"S7\"},\"ManifestName\":{},\"SourceGroup\":{}},\"required\":[\"ManifestName\",\"SourceGroup\"],\"type\":\"structure\"},\"type\":\"list\"},\"S5\":{\"members\":{\"ManifestWindowSeconds\":{\"type\":\"integer\"},\"MinBufferTimeSeconds\":{\"type\":\"integer\"},\"MinUpdatePeriodSeconds\":{\"type\":\"integer\"},\"SuggestedPresentationDelaySeconds\":{\"type\":\"integer\"}},\"type\":\"structure\"},\"S7\":{\"members\":{\"ManifestWindowSeconds\":{\"type\":\"integer\"}},\"type\":\"structure\"},\"S9\":{\"key\":{},\"type\":\"map\",\"value\":{}},\"Sc\":{\"timestampFormat\":\"unixTimestamp\",\"type\":\"timestamp\"},\"Sd\":{\"member\":{\"members\":{\"DashPlaylistSettings\":{\"shape\":\"S5\"},\"HlsPlaylistSettings\":{\"shape\":\"S7\"},\"ManifestName\":{},\"PlaybackUrl\":{},\"SourceGroup\":{}},\"required\":[\"ManifestName\",\"PlaybackUrl\",\"SourceGroup\"],\"type\":\"structure\"},\"type\":\"list\"},\"Sg\":{\"member\":{\"members\":{\"MessageType\":{},\"OffsetMillis\":{\"type\":\"long\"},\"Slate\":{\"members\":{\"SourceLocationName\":{},\"VodSourceName\":{}},\"type\":\"structure\"},\"SpliceInsertMessage\":{\"members\":{\"AvailNum\":{\"type\":\"integer\"},\"AvailsExpected\":{\"type\":\"integer\"},\"SpliceEventId\":{\"type\":\"integer\"},\"UniqueProgramId\":{\"type\":\"integer\"}},\"type\":\"structure\"}},\"type\":\"structure\"},\"type\":\"list\"},\"Sr\":{\"members\":{\"AccessType\":{}},\"type\":\"structure\"},\"St\":{\"members\":{\"BaseUrl\":{}},\"type\":\"structure\"},\"Su\":{\"members\":{\"BaseUrl\":{}},\"required\":[\"BaseUrl\"],\"type\":\"structure\"},\"Sx\":{\"member\":{\"members\":{\"Path\":{},\"SourceGroup\":{},\"Type\":{}},\"required\":[\"Path\",\"Type\",\"SourceGroup\"],\"type\":\"structure\"},\"type\":\"list\"},\"S1u\":{\"members\":{\"Mode\":{},\"Value\":{}},\"type\":\"structure\"},\"S1w\":{\"members\":{\"EndUrl\":{},\"StartUrl\":{}},\"type\":\"structure\"},\"S1x\":{\"members\":{\"AdSegmentUrlPrefix\":{},\"ContentSegmentUrlPrefix\":{}},\"type\":\"structure\"},\"S1y\":{\"key\":{},\"type\":\"map\",\"value\":{\"shape\":\"S9\"}},\"S1z\":{\"members\":{\"ManifestEndpointPrefix\":{},\"MpdLocation\":{},\"OriginManifestType\":{}},\"type\":\"structure\"},\"S21\":{\"members\":{\"ManifestEndpointPrefix\":{}},\"type\":\"structure\"},\"S22\":{\"members\":{\"AdDecisionServerUrl\":{},\"MaxDurationSeconds\":{\"type\":\"integer\"}},\"type\":\"structure\"},\"S23\":{\"members\":{\"AdMarkerPassthrough\":{\"members\":{\"Enabled\":{\"type\":\"boolean\"}},\"type\":\"structure\"}},\"type\":\"structure\"}}}");

/***/ }),

/***/ 76134:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetChannelSchedule\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Items\"},\"ListChannels\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Items\"},\"ListPlaybackConfigurations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Items\"},\"ListSourceLocations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Items\"},\"ListVodSources\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Items\"}}}");

/***/ }),

/***/ 49497:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"acm\":{\"name\":\"ACM\",\"cors\":true},\"apigateway\":{\"name\":\"APIGateway\",\"cors\":true},\"applicationautoscaling\":{\"prefix\":\"application-autoscaling\",\"name\":\"ApplicationAutoScaling\",\"cors\":true},\"appstream\":{\"name\":\"AppStream\"},\"autoscaling\":{\"name\":\"AutoScaling\",\"cors\":true},\"batch\":{\"name\":\"Batch\"},\"budgets\":{\"name\":\"Budgets\"},\"clouddirectory\":{\"name\":\"CloudDirectory\",\"versions\":[\"2016-05-10*\"]},\"cloudformation\":{\"name\":\"CloudFormation\",\"cors\":true},\"cloudfront\":{\"name\":\"CloudFront\",\"versions\":[\"2013-05-12*\",\"2013-11-11*\",\"2014-05-31*\",\"2014-10-21*\",\"2014-11-06*\",\"2015-04-17*\",\"2015-07-27*\",\"2015-09-17*\",\"2016-01-13*\",\"2016-01-28*\",\"2016-08-01*\",\"2016-08-20*\",\"2016-09-07*\",\"2016-09-29*\",\"2016-11-25*\",\"2017-03-25*\",\"2017-10-30*\",\"2018-06-18*\",\"2018-11-05*\",\"2019-03-26*\"],\"cors\":true},\"cloudhsm\":{\"name\":\"CloudHSM\",\"cors\":true},\"cloudsearch\":{\"name\":\"CloudSearch\"},\"cloudsearchdomain\":{\"name\":\"CloudSearchDomain\"},\"cloudtrail\":{\"name\":\"CloudTrail\",\"cors\":true},\"cloudwatch\":{\"prefix\":\"monitoring\",\"name\":\"CloudWatch\",\"cors\":true},\"cloudwatchevents\":{\"prefix\":\"events\",\"name\":\"CloudWatchEvents\",\"versions\":[\"2014-02-03*\"],\"cors\":true},\"cloudwatchlogs\":{\"prefix\":\"logs\",\"name\":\"CloudWatchLogs\",\"cors\":true},\"codebuild\":{\"name\":\"CodeBuild\",\"cors\":true},\"codecommit\":{\"name\":\"CodeCommit\",\"cors\":true},\"codedeploy\":{\"name\":\"CodeDeploy\",\"cors\":true},\"codepipeline\":{\"name\":\"CodePipeline\",\"cors\":true},\"cognitoidentity\":{\"prefix\":\"cognito-identity\",\"name\":\"CognitoIdentity\",\"cors\":true},\"cognitoidentityserviceprovider\":{\"prefix\":\"cognito-idp\",\"name\":\"CognitoIdentityServiceProvider\",\"cors\":true},\"cognitosync\":{\"prefix\":\"cognito-sync\",\"name\":\"CognitoSync\",\"cors\":true},\"configservice\":{\"prefix\":\"config\",\"name\":\"ConfigService\",\"cors\":true},\"cur\":{\"name\":\"CUR\",\"cors\":true},\"datapipeline\":{\"name\":\"DataPipeline\"},\"devicefarm\":{\"name\":\"DeviceFarm\",\"cors\":true},\"directconnect\":{\"name\":\"DirectConnect\",\"cors\":true},\"directoryservice\":{\"prefix\":\"ds\",\"name\":\"DirectoryService\"},\"discovery\":{\"name\":\"Discovery\"},\"dms\":{\"name\":\"DMS\"},\"dynamodb\":{\"name\":\"DynamoDB\",\"cors\":true},\"dynamodbstreams\":{\"prefix\":\"streams.dynamodb\",\"name\":\"DynamoDBStreams\",\"cors\":true},\"ec2\":{\"name\":\"EC2\",\"versions\":[\"2013-06-15*\",\"2013-10-15*\",\"2014-02-01*\",\"2014-05-01*\",\"2014-06-15*\",\"2014-09-01*\",\"2014-10-01*\",\"2015-03-01*\",\"2015-04-15*\",\"2015-10-01*\",\"2016-04-01*\",\"2016-09-15*\"],\"cors\":true},\"ecr\":{\"name\":\"ECR\",\"cors\":true},\"ecs\":{\"name\":\"ECS\",\"cors\":true},\"efs\":{\"prefix\":\"elasticfilesystem\",\"name\":\"EFS\",\"cors\":true},\"elasticache\":{\"name\":\"ElastiCache\",\"versions\":[\"2012-11-15*\",\"2014-03-24*\",\"2014-07-15*\",\"2014-09-30*\"],\"cors\":true},\"elasticbeanstalk\":{\"name\":\"ElasticBeanstalk\",\"cors\":true},\"elb\":{\"prefix\":\"elasticloadbalancing\",\"name\":\"ELB\",\"cors\":true},\"elbv2\":{\"prefix\":\"elasticloadbalancingv2\",\"name\":\"ELBv2\",\"cors\":true},\"emr\":{\"prefix\":\"elasticmapreduce\",\"name\":\"EMR\",\"cors\":true},\"es\":{\"name\":\"ES\"},\"elastictranscoder\":{\"name\":\"ElasticTranscoder\",\"cors\":true},\"firehose\":{\"name\":\"Firehose\",\"cors\":true},\"gamelift\":{\"name\":\"GameLift\",\"cors\":true},\"glacier\":{\"name\":\"Glacier\"},\"health\":{\"name\":\"Health\"},\"iam\":{\"name\":\"IAM\",\"cors\":true},\"importexport\":{\"name\":\"ImportExport\"},\"inspector\":{\"name\":\"Inspector\",\"versions\":[\"2015-08-18*\"],\"cors\":true},\"iot\":{\"name\":\"Iot\",\"cors\":true},\"iotdata\":{\"prefix\":\"iot-data\",\"name\":\"IotData\",\"cors\":true},\"kinesis\":{\"name\":\"Kinesis\",\"cors\":true},\"kinesisanalytics\":{\"name\":\"KinesisAnalytics\"},\"kms\":{\"name\":\"KMS\",\"cors\":true},\"lambda\":{\"name\":\"Lambda\",\"cors\":true},\"lexruntime\":{\"prefix\":\"runtime.lex\",\"name\":\"LexRuntime\",\"cors\":true},\"lightsail\":{\"name\":\"Lightsail\"},\"machinelearning\":{\"name\":\"MachineLearning\",\"cors\":true},\"marketplacecommerceanalytics\":{\"name\":\"MarketplaceCommerceAnalytics\",\"cors\":true},\"marketplacemetering\":{\"prefix\":\"meteringmarketplace\",\"name\":\"MarketplaceMetering\"},\"mturk\":{\"prefix\":\"mturk-requester\",\"name\":\"MTurk\",\"cors\":true},\"mobileanalytics\":{\"name\":\"MobileAnalytics\",\"cors\":true},\"opsworks\":{\"name\":\"OpsWorks\",\"cors\":true},\"opsworkscm\":{\"name\":\"OpsWorksCM\"},\"organizations\":{\"name\":\"Organizations\"},\"pinpoint\":{\"name\":\"Pinpoint\"},\"polly\":{\"name\":\"Polly\",\"cors\":true},\"rds\":{\"name\":\"RDS\",\"versions\":[\"2014-09-01*\"],\"cors\":true},\"redshift\":{\"name\":\"Redshift\",\"cors\":true},\"rekognition\":{\"name\":\"Rekognition\",\"cors\":true},\"resourcegroupstaggingapi\":{\"name\":\"ResourceGroupsTaggingAPI\"},\"route53\":{\"name\":\"Route53\",\"cors\":true},\"route53domains\":{\"name\":\"Route53Domains\",\"cors\":true},\"s3\":{\"name\":\"S3\",\"dualstackAvailable\":true,\"cors\":true},\"s3control\":{\"name\":\"S3Control\",\"dualstackAvailable\":true,\"xmlNoDefaultLists\":true},\"servicecatalog\":{\"name\":\"ServiceCatalog\",\"cors\":true},\"ses\":{\"prefix\":\"email\",\"name\":\"SES\",\"cors\":true},\"shield\":{\"name\":\"Shield\"},\"simpledb\":{\"prefix\":\"sdb\",\"name\":\"SimpleDB\"},\"sms\":{\"name\":\"SMS\"},\"snowball\":{\"name\":\"Snowball\"},\"sns\":{\"name\":\"SNS\",\"cors\":true},\"sqs\":{\"name\":\"SQS\",\"cors\":true},\"ssm\":{\"name\":\"SSM\",\"cors\":true},\"storagegateway\":{\"name\":\"StorageGateway\",\"cors\":true},\"stepfunctions\":{\"prefix\":\"states\",\"name\":\"StepFunctions\"},\"sts\":{\"name\":\"STS\",\"cors\":true},\"support\":{\"name\":\"Support\"},\"swf\":{\"name\":\"SWF\"},\"xray\":{\"name\":\"XRay\",\"cors\":true},\"waf\":{\"name\":\"WAF\",\"cors\":true},\"wafregional\":{\"prefix\":\"waf-regional\",\"name\":\"WAFRegional\"},\"workdocs\":{\"name\":\"WorkDocs\",\"cors\":true},\"workspaces\":{\"name\":\"WorkSpaces\"},\"codestar\":{\"name\":\"CodeStar\"},\"lexmodelbuildingservice\":{\"prefix\":\"lex-models\",\"name\":\"LexModelBuildingService\",\"cors\":true},\"marketplaceentitlementservice\":{\"prefix\":\"entitlement.marketplace\",\"name\":\"MarketplaceEntitlementService\"},\"athena\":{\"name\":\"Athena\"},\"greengrass\":{\"name\":\"Greengrass\"},\"dax\":{\"name\":\"DAX\"},\"migrationhub\":{\"prefix\":\"AWSMigrationHub\",\"name\":\"MigrationHub\"},\"cloudhsmv2\":{\"name\":\"CloudHSMV2\"},\"glue\":{\"name\":\"Glue\"},\"mobile\":{\"name\":\"Mobile\"},\"pricing\":{\"name\":\"Pricing\",\"cors\":true},\"costexplorer\":{\"prefix\":\"ce\",\"name\":\"CostExplorer\",\"cors\":true},\"mediaconvert\":{\"name\":\"MediaConvert\"},\"medialive\":{\"name\":\"MediaLive\"},\"mediapackage\":{\"name\":\"MediaPackage\"},\"mediastore\":{\"name\":\"MediaStore\"},\"mediastoredata\":{\"prefix\":\"mediastore-data\",\"name\":\"MediaStoreData\",\"cors\":true},\"appsync\":{\"name\":\"AppSync\"},\"guardduty\":{\"name\":\"GuardDuty\"},\"mq\":{\"name\":\"MQ\"},\"comprehend\":{\"name\":\"Comprehend\",\"cors\":true},\"iotjobsdataplane\":{\"prefix\":\"iot-jobs-data\",\"name\":\"IoTJobsDataPlane\"},\"kinesisvideoarchivedmedia\":{\"prefix\":\"kinesis-video-archived-media\",\"name\":\"KinesisVideoArchivedMedia\",\"cors\":true},\"kinesisvideomedia\":{\"prefix\":\"kinesis-video-media\",\"name\":\"KinesisVideoMedia\",\"cors\":true},\"kinesisvideo\":{\"name\":\"KinesisVideo\",\"cors\":true},\"sagemakerruntime\":{\"prefix\":\"runtime.sagemaker\",\"name\":\"SageMakerRuntime\"},\"sagemaker\":{\"name\":\"SageMaker\"},\"translate\":{\"name\":\"Translate\",\"cors\":true},\"resourcegroups\":{\"prefix\":\"resource-groups\",\"name\":\"ResourceGroups\",\"cors\":true},\"alexaforbusiness\":{\"name\":\"AlexaForBusiness\"},\"cloud9\":{\"name\":\"Cloud9\"},\"serverlessapplicationrepository\":{\"prefix\":\"serverlessrepo\",\"name\":\"ServerlessApplicationRepository\"},\"servicediscovery\":{\"name\":\"ServiceDiscovery\"},\"workmail\":{\"name\":\"WorkMail\"},\"autoscalingplans\":{\"prefix\":\"autoscaling-plans\",\"name\":\"AutoScalingPlans\"},\"transcribeservice\":{\"prefix\":\"transcribe\",\"name\":\"TranscribeService\"},\"connect\":{\"name\":\"Connect\",\"cors\":true},\"acmpca\":{\"prefix\":\"acm-pca\",\"name\":\"ACMPCA\"},\"fms\":{\"name\":\"FMS\"},\"secretsmanager\":{\"name\":\"SecretsManager\",\"cors\":true},\"iotanalytics\":{\"name\":\"IoTAnalytics\",\"cors\":true},\"iot1clickdevicesservice\":{\"prefix\":\"iot1click-devices\",\"name\":\"IoT1ClickDevicesService\"},\"iot1clickprojects\":{\"prefix\":\"iot1click-projects\",\"name\":\"IoT1ClickProjects\"},\"pi\":{\"name\":\"PI\"},\"neptune\":{\"name\":\"Neptune\"},\"mediatailor\":{\"name\":\"MediaTailor\"},\"eks\":{\"name\":\"EKS\"},\"macie\":{\"name\":\"Macie\"},\"dlm\":{\"name\":\"DLM\"},\"signer\":{\"name\":\"Signer\"},\"chime\":{\"name\":\"Chime\"},\"pinpointemail\":{\"prefix\":\"pinpoint-email\",\"name\":\"PinpointEmail\"},\"ram\":{\"name\":\"RAM\"},\"route53resolver\":{\"name\":\"Route53Resolver\"},\"pinpointsmsvoice\":{\"prefix\":\"sms-voice\",\"name\":\"PinpointSMSVoice\"},\"quicksight\":{\"name\":\"QuickSight\"},\"rdsdataservice\":{\"prefix\":\"rds-data\",\"name\":\"RDSDataService\"},\"amplify\":{\"name\":\"Amplify\"},\"datasync\":{\"name\":\"DataSync\"},\"robomaker\":{\"name\":\"RoboMaker\"},\"transfer\":{\"name\":\"Transfer\"},\"globalaccelerator\":{\"name\":\"GlobalAccelerator\"},\"comprehendmedical\":{\"name\":\"ComprehendMedical\",\"cors\":true},\"kinesisanalyticsv2\":{\"name\":\"KinesisAnalyticsV2\"},\"mediaconnect\":{\"name\":\"MediaConnect\"},\"fsx\":{\"name\":\"FSx\"},\"securityhub\":{\"name\":\"SecurityHub\"},\"appmesh\":{\"name\":\"AppMesh\",\"versions\":[\"2018-10-01*\"]},\"licensemanager\":{\"prefix\":\"license-manager\",\"name\":\"LicenseManager\"},\"kafka\":{\"name\":\"Kafka\"},\"apigatewaymanagementapi\":{\"name\":\"ApiGatewayManagementApi\"},\"apigatewayv2\":{\"name\":\"ApiGatewayV2\"},\"docdb\":{\"name\":\"DocDB\"},\"backup\":{\"name\":\"Backup\"},\"worklink\":{\"name\":\"WorkLink\"},\"textract\":{\"name\":\"Textract\"},\"managedblockchain\":{\"name\":\"ManagedBlockchain\"},\"mediapackagevod\":{\"prefix\":\"mediapackage-vod\",\"name\":\"MediaPackageVod\"},\"groundstation\":{\"name\":\"GroundStation\"},\"iotthingsgraph\":{\"name\":\"IoTThingsGraph\"},\"iotevents\":{\"name\":\"IoTEvents\"},\"ioteventsdata\":{\"prefix\":\"iotevents-data\",\"name\":\"IoTEventsData\"},\"personalize\":{\"name\":\"Personalize\",\"cors\":true},\"personalizeevents\":{\"prefix\":\"personalize-events\",\"name\":\"PersonalizeEvents\",\"cors\":true},\"personalizeruntime\":{\"prefix\":\"personalize-runtime\",\"name\":\"PersonalizeRuntime\",\"cors\":true},\"applicationinsights\":{\"prefix\":\"application-insights\",\"name\":\"ApplicationInsights\"},\"servicequotas\":{\"prefix\":\"service-quotas\",\"name\":\"ServiceQuotas\"},\"ec2instanceconnect\":{\"prefix\":\"ec2-instance-connect\",\"name\":\"EC2InstanceConnect\"},\"eventbridge\":{\"name\":\"EventBridge\"},\"lakeformation\":{\"name\":\"LakeFormation\"},\"forecastservice\":{\"prefix\":\"forecast\",\"name\":\"ForecastService\",\"cors\":true},\"forecastqueryservice\":{\"prefix\":\"forecastquery\",\"name\":\"ForecastQueryService\",\"cors\":true},\"qldb\":{\"name\":\"QLDB\"},\"qldbsession\":{\"prefix\":\"qldb-session\",\"name\":\"QLDBSession\"},\"workmailmessageflow\":{\"name\":\"WorkMailMessageFlow\"},\"codestarnotifications\":{\"prefix\":\"codestar-notifications\",\"name\":\"CodeStarNotifications\"},\"savingsplans\":{\"name\":\"SavingsPlans\"},\"sso\":{\"name\":\"SSO\"},\"ssooidc\":{\"prefix\":\"sso-oidc\",\"name\":\"SSOOIDC\"},\"marketplacecatalog\":{\"prefix\":\"marketplace-catalog\",\"name\":\"MarketplaceCatalog\"},\"dataexchange\":{\"name\":\"DataExchange\"},\"sesv2\":{\"name\":\"SESV2\"},\"migrationhubconfig\":{\"prefix\":\"migrationhub-config\",\"name\":\"MigrationHubConfig\"},\"connectparticipant\":{\"name\":\"ConnectParticipant\"},\"appconfig\":{\"name\":\"AppConfig\"},\"iotsecuretunneling\":{\"name\":\"IoTSecureTunneling\"},\"wafv2\":{\"name\":\"WAFV2\"},\"elasticinference\":{\"prefix\":\"elastic-inference\",\"name\":\"ElasticInference\"},\"imagebuilder\":{\"name\":\"Imagebuilder\"},\"schemas\":{\"name\":\"Schemas\"},\"accessanalyzer\":{\"name\":\"AccessAnalyzer\"},\"codegurureviewer\":{\"prefix\":\"codeguru-reviewer\",\"name\":\"CodeGuruReviewer\"},\"codeguruprofiler\":{\"name\":\"CodeGuruProfiler\"},\"computeoptimizer\":{\"prefix\":\"compute-optimizer\",\"name\":\"ComputeOptimizer\"},\"frauddetector\":{\"name\":\"FraudDetector\"},\"kendra\":{\"name\":\"Kendra\"},\"networkmanager\":{\"name\":\"NetworkManager\"},\"outposts\":{\"name\":\"Outposts\"},\"augmentedairuntime\":{\"prefix\":\"sagemaker-a2i-runtime\",\"name\":\"AugmentedAIRuntime\"},\"ebs\":{\"name\":\"EBS\"},\"kinesisvideosignalingchannels\":{\"prefix\":\"kinesis-video-signaling\",\"name\":\"KinesisVideoSignalingChannels\",\"cors\":true},\"detective\":{\"name\":\"Detective\"},\"codestarconnections\":{\"prefix\":\"codestar-connections\",\"name\":\"CodeStarconnections\"},\"synthetics\":{\"name\":\"Synthetics\"},\"iotsitewise\":{\"name\":\"IoTSiteWise\"},\"macie2\":{\"name\":\"Macie2\"},\"codeartifact\":{\"name\":\"CodeArtifact\"},\"honeycode\":{\"name\":\"Honeycode\"},\"ivs\":{\"name\":\"IVS\"},\"braket\":{\"name\":\"Braket\"},\"identitystore\":{\"name\":\"IdentityStore\"},\"appflow\":{\"name\":\"Appflow\"},\"redshiftdata\":{\"prefix\":\"redshift-data\",\"name\":\"RedshiftData\"},\"ssoadmin\":{\"prefix\":\"sso-admin\",\"name\":\"SSOAdmin\"},\"timestreamquery\":{\"prefix\":\"timestream-query\",\"name\":\"TimestreamQuery\"},\"timestreamwrite\":{\"prefix\":\"timestream-write\",\"name\":\"TimestreamWrite\"},\"s3outposts\":{\"name\":\"S3Outposts\"},\"databrew\":{\"name\":\"DataBrew\"},\"servicecatalogappregistry\":{\"prefix\":\"servicecatalog-appregistry\",\"name\":\"ServiceCatalogAppRegistry\"},\"networkfirewall\":{\"prefix\":\"network-firewall\",\"name\":\"NetworkFirewall\"},\"mwaa\":{\"name\":\"MWAA\"},\"amplifybackend\":{\"name\":\"AmplifyBackend\"},\"appintegrations\":{\"name\":\"AppIntegrations\"},\"connectcontactlens\":{\"prefix\":\"connect-contact-lens\",\"name\":\"ConnectContactLens\"},\"devopsguru\":{\"prefix\":\"devops-guru\",\"name\":\"DevOpsGuru\"},\"ecrpublic\":{\"prefix\":\"ecr-public\",\"name\":\"ECRPUBLIC\"},\"lookoutvision\":{\"name\":\"LookoutVision\"},\"sagemakerfeaturestoreruntime\":{\"prefix\":\"sagemaker-featurestore-runtime\",\"name\":\"SageMakerFeatureStoreRuntime\"},\"customerprofiles\":{\"prefix\":\"customer-profiles\",\"name\":\"CustomerProfiles\"},\"auditmanager\":{\"name\":\"AuditManager\"},\"emrcontainers\":{\"prefix\":\"emr-containers\",\"name\":\"EMRcontainers\"},\"healthlake\":{\"name\":\"HealthLake\"},\"sagemakeredge\":{\"prefix\":\"sagemaker-edge\",\"name\":\"SagemakerEdge\"},\"amp\":{\"name\":\"Amp\"},\"greengrassv2\":{\"name\":\"GreengrassV2\"},\"iotdeviceadvisor\":{\"name\":\"IotDeviceAdvisor\"},\"iotfleethub\":{\"name\":\"IoTFleetHub\"},\"iotwireless\":{\"name\":\"IoTWireless\"},\"location\":{\"name\":\"Location\"},\"wellarchitected\":{\"name\":\"WellArchitected\"},\"lexmodelsv2\":{\"prefix\":\"models.lex.v2\",\"name\":\"LexModelsV2\"},\"lexruntimev2\":{\"prefix\":\"runtime.lex.v2\",\"name\":\"LexRuntimeV2\",\"cors\":true},\"fis\":{\"name\":\"Fis\"},\"lookoutmetrics\":{\"name\":\"LookoutMetrics\"},\"mgn\":{\"name\":\"Mgn\"},\"lookoutequipment\":{\"name\":\"LookoutEquipment\"}}");

/***/ }),

/***/ 150:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-01-14\",\"endpointPrefix\":\"metering.marketplace\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWSMarketplace Metering\",\"serviceId\":\"Marketplace Metering\",\"signatureVersion\":\"v4\",\"signingName\":\"aws-marketplace\",\"targetPrefix\":\"AWSMPMeteringService\",\"uid\":\"meteringmarketplace-2016-01-14\"},\"operations\":{\"BatchMeterUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"UsageRecords\",\"ProductCode\"],\"members\":{\"UsageRecords\":{\"shape\":\"S2\"},\"ProductCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UsageRecord\":{\"shape\":\"S3\"},\"MeteringRecordId\":{},\"Status\":{}}}},\"UnprocessedRecords\":{\"shape\":\"S2\"}}}},\"MeterUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductCode\",\"Timestamp\",\"UsageDimension\"],\"members\":{\"ProductCode\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"UsageDimension\":{},\"UsageQuantity\":{\"type\":\"integer\"},\"DryRun\":{\"type\":\"boolean\"},\"UsageAllocations\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MeteringRecordId\":{}}}},\"RegisterUsage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductCode\",\"PublicKeyVersion\"],\"members\":{\"ProductCode\":{},\"PublicKeyVersion\":{\"type\":\"integer\"},\"Nonce\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicKeyRotationTimestamp\":{\"type\":\"timestamp\"},\"Signature\":{}}}},\"ResolveCustomer\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegistrationToken\"],\"members\":{\"RegistrationToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomerIdentifier\":{},\"ProductCode\":{}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{\"shape\":\"S3\"}},\"S3\":{\"type\":\"structure\",\"required\":[\"Timestamp\",\"CustomerIdentifier\",\"Dimension\"],\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"CustomerIdentifier\":{},\"Dimension\":{},\"Quantity\":{\"type\":\"integer\"},\"UsageAllocations\":{\"shape\":\"S8\"}}},\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AllocatedUsageQuantity\"],\"members\":{\"AllocatedUsageQuantity\":{\"type\":\"integer\"},\"Tags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}}}}}}}");

/***/ }),

/***/ 34742:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 96297:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-02-26\",\"endpointPrefix\":\"mgn\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"mgn\",\"serviceFullName\":\"Application Migration Service\",\"serviceId\":\"mgn\",\"signatureVersion\":\"v4\",\"signingName\":\"mgn\",\"uid\":\"mgn-2020-02-26\"},\"operations\":{\"ChangeServerLifeCycleState\":{\"http\":{\"requestUri\":\"/ChangeServerLifeCycleState\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"lifeCycle\",\"sourceServerID\"],\"members\":{\"lifeCycle\":{\"type\":\"structure\",\"required\":[\"state\"],\"members\":{\"state\":{}}},\"sourceServerID\":{}}},\"output\":{\"shape\":\"S5\"}},\"CreateReplicationConfigurationTemplate\":{\"http\":{\"requestUri\":\"/CreateReplicationConfigurationTemplate\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"associateDefaultSecurityGroup\",\"bandwidthThrottling\",\"createPublicIP\",\"dataPlaneRouting\",\"defaultLargeStagingDiskType\",\"ebsEncryption\",\"replicationServerInstanceType\",\"replicationServersSecurityGroupsIDs\",\"stagingAreaSubnetId\",\"stagingAreaTags\",\"useDedicatedReplicationServer\"],\"members\":{\"associateDefaultSecurityGroup\":{\"type\":\"boolean\"},\"bandwidthThrottling\":{\"type\":\"long\"},\"createPublicIP\":{\"type\":\"boolean\"},\"dataPlaneRouting\":{},\"defaultLargeStagingDiskType\":{},\"ebsEncryption\":{},\"ebsEncryptionKeyArn\":{},\"replicationServerInstanceType\":{},\"replicationServersSecurityGroupsIDs\":{\"shape\":\"S1j\"},\"stagingAreaSubnetId\":{},\"stagingAreaTags\":{\"shape\":\"S1c\"},\"tags\":{\"shape\":\"S1c\"},\"useDedicatedReplicationServer\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S1m\"}},\"DeleteJob\":{\"http\":{\"requestUri\":\"/DeleteJob\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"jobID\"],\"members\":{\"jobID\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteReplicationConfigurationTemplate\":{\"http\":{\"requestUri\":\"/DeleteReplicationConfigurationTemplate\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"replicationConfigurationTemplateID\"],\"members\":{\"replicationConfigurationTemplateID\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteSourceServer\":{\"http\":{\"requestUri\":\"/DeleteSourceServer\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DescribeJobLogItems\":{\"http\":{\"requestUri\":\"/DescribeJobLogItems\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"jobID\"],\"members\":{\"jobID\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"event\":{},\"eventData\":{\"type\":\"structure\",\"members\":{\"conversionServerID\":{},\"rawError\":{},\"sourceServerID\":{},\"targetInstanceID\":{}}},\"logDateTime\":{}}}},\"nextToken\":{}}}},\"DescribeJobs\":{\"http\":{\"requestUri\":\"/DescribeJobs\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"filters\"],\"members\":{\"filters\":{\"type\":\"structure\",\"members\":{\"fromDate\":{},\"jobIDs\":{\"type\":\"list\",\"member\":{}},\"toDate\":{}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"items\":{\"type\":\"list\",\"member\":{\"shape\":\"S27\"}},\"nextToken\":{}}}},\"DescribeReplicationConfigurationTemplates\":{\"http\":{\"requestUri\":\"/DescribeReplicationConfigurationTemplates\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"replicationConfigurationTemplateIDs\"],\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{},\"replicationConfigurationTemplateIDs\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"items\":{\"type\":\"list\",\"member\":{\"shape\":\"S1m\"}},\"nextToken\":{}}}},\"DescribeSourceServers\":{\"http\":{\"requestUri\":\"/DescribeSourceServers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"filters\"],\"members\":{\"filters\":{\"type\":\"structure\",\"members\":{\"isArchived\":{\"type\":\"boolean\"},\"sourceServerIDs\":{\"type\":\"list\",\"member\":{}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"items\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"nextToken\":{}}}},\"DisconnectFromService\":{\"http\":{\"requestUri\":\"/DisconnectFromService\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"shape\":\"S5\"}},\"FinalizeCutover\":{\"http\":{\"requestUri\":\"/FinalizeCutover\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"shape\":\"S5\"}},\"GetLaunchConfiguration\":{\"http\":{\"requestUri\":\"/GetLaunchConfiguration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"shape\":\"S2q\"}},\"GetReplicationConfiguration\":{\"http\":{\"requestUri\":\"/GetReplicationConfiguration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"shape\":\"S2w\"}},\"InitializeService\":{\"http\":{\"requestUri\":\"/InitializeService\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1c\"}}}},\"MarkAsArchived\":{\"http\":{\"requestUri\":\"/MarkAsArchived\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"shape\":\"S5\"}},\"RetryDataReplication\":{\"http\":{\"requestUri\":\"/RetryDataReplication\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"sourceServerID\":{}}},\"output\":{\"shape\":\"S5\"}},\"StartCutover\":{\"http\":{\"requestUri\":\"/StartCutover\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerIDs\"],\"members\":{\"sourceServerIDs\":{\"type\":\"list\",\"member\":{}},\"tags\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"job\":{\"shape\":\"S27\"}}}},\"StartTest\":{\"http\":{\"requestUri\":\"/StartTest\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerIDs\"],\"members\":{\"sourceServerIDs\":{\"type\":\"list\",\"member\":{}},\"tags\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"job\":{\"shape\":\"S27\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1c\"}}},\"idempotent\":true},\"TerminateTargetInstances\":{\"http\":{\"requestUri\":\"/TerminateTargetInstances\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerIDs\"],\"members\":{\"sourceServerIDs\":{\"type\":\"list\",\"member\":{}},\"tags\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"job\":{\"shape\":\"S27\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{},\"sensitive\":true}}},\"idempotent\":true},\"UpdateLaunchConfiguration\":{\"http\":{\"requestUri\":\"/UpdateLaunchConfiguration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"copyPrivateIp\":{\"type\":\"boolean\"},\"copyTags\":{\"type\":\"boolean\"},\"launchDisposition\":{},\"licensing\":{\"shape\":\"S2s\"},\"name\":{},\"sourceServerID\":{},\"targetInstanceTypeRightSizingMethod\":{}}},\"output\":{\"shape\":\"S2q\"},\"idempotent\":true},\"UpdateReplicationConfiguration\":{\"http\":{\"requestUri\":\"/UpdateReplicationConfiguration\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"sourceServerID\"],\"members\":{\"associateDefaultSecurityGroup\":{\"type\":\"boolean\"},\"bandwidthThrottling\":{\"type\":\"long\"},\"createPublicIP\":{\"type\":\"boolean\"},\"dataPlaneRouting\":{},\"defaultLargeStagingDiskType\":{},\"ebsEncryption\":{},\"ebsEncryptionKeyArn\":{},\"name\":{},\"replicatedDisks\":{\"shape\":\"S2x\"},\"replicationServerInstanceType\":{},\"replicationServersSecurityGroupsIDs\":{\"shape\":\"S1j\"},\"sourceServerID\":{},\"stagingAreaSubnetId\":{},\"stagingAreaTags\":{\"shape\":\"S1c\"},\"useDedicatedReplicationServer\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S2w\"},\"idempotent\":true},\"UpdateReplicationConfigurationTemplate\":{\"http\":{\"requestUri\":\"/UpdateReplicationConfigurationTemplate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"replicationConfigurationTemplateID\"],\"members\":{\"arn\":{},\"associateDefaultSecurityGroup\":{\"type\":\"boolean\"},\"bandwidthThrottling\":{\"type\":\"long\"},\"createPublicIP\":{\"type\":\"boolean\"},\"dataPlaneRouting\":{},\"defaultLargeStagingDiskType\":{},\"ebsEncryption\":{},\"ebsEncryptionKeyArn\":{},\"replicationConfigurationTemplateID\":{},\"replicationServerInstanceType\":{},\"replicationServersSecurityGroupsIDs\":{\"shape\":\"S1j\"},\"stagingAreaSubnetId\":{},\"stagingAreaTags\":{\"shape\":\"S1c\"},\"useDedicatedReplicationServer\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S1m\"}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"dataReplicationInfo\":{\"type\":\"structure\",\"members\":{\"dataReplicationError\":{\"type\":\"structure\",\"members\":{\"error\":{},\"rawError\":{}}},\"dataReplicationInitiation\":{\"type\":\"structure\",\"members\":{\"nextAttemptDateTime\":{},\"startDateTime\":{},\"steps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"status\":{}}}}}},\"dataReplicationState\":{},\"etaDateTime\":{},\"lagDuration\":{},\"replicatedDisks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"backloggedStorageBytes\":{\"type\":\"long\"},\"deviceName\":{},\"replicatedStorageBytes\":{\"type\":\"long\"},\"rescannedStorageBytes\":{\"type\":\"long\"},\"totalStorageBytes\":{\"type\":\"long\"}}}}}},\"isArchived\":{\"type\":\"boolean\"},\"launchedInstance\":{\"type\":\"structure\",\"members\":{\"ec2InstanceID\":{},\"firstBoot\":{},\"jobID\":{}}},\"lifeCycle\":{\"type\":\"structure\",\"members\":{\"addedToServiceDateTime\":{},\"elapsedReplicationDuration\":{},\"firstByteDateTime\":{},\"lastCutover\":{\"type\":\"structure\",\"members\":{\"finalized\":{\"type\":\"structure\",\"members\":{\"apiCallDateTime\":{}}},\"initiated\":{\"type\":\"structure\",\"members\":{\"apiCallDateTime\":{},\"jobID\":{}}},\"reverted\":{\"type\":\"structure\",\"members\":{\"apiCallDateTime\":{}}}}},\"lastSeenByServiceDateTime\":{},\"lastTest\":{\"type\":\"structure\",\"members\":{\"finalized\":{\"type\":\"structure\",\"members\":{\"apiCallDateTime\":{}}},\"initiated\":{\"type\":\"structure\",\"members\":{\"apiCallDateTime\":{},\"jobID\":{}}},\"reverted\":{\"type\":\"structure\",\"members\":{\"apiCallDateTime\":{}}}}},\"state\":{}}},\"sourceProperties\":{\"type\":\"structure\",\"members\":{\"cpus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"cores\":{\"type\":\"long\"},\"modelName\":{}}}},\"disks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"bytes\":{\"type\":\"long\"},\"deviceName\":{}}}},\"identificationHints\":{\"type\":\"structure\",\"members\":{\"awsInstanceID\":{},\"fqdn\":{},\"hostname\":{},\"vmWareUuid\":{}}},\"lastUpdatedDateTime\":{},\"networkInterfaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ips\":{\"type\":\"list\",\"member\":{}},\"isPrimary\":{\"type\":\"boolean\"},\"macAddress\":{}}}},\"os\":{\"type\":\"structure\",\"members\":{\"fullString\":{}}},\"ramBytes\":{\"type\":\"long\"},\"recommendedInstanceType\":{}}},\"sourceServerID\":{},\"tags\":{\"shape\":\"S1c\"}}},\"S1c\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"S1j\":{\"type\":\"list\",\"member\":{}},\"S1m\":{\"type\":\"structure\",\"required\":[\"replicationConfigurationTemplateID\"],\"members\":{\"arn\":{},\"associateDefaultSecurityGroup\":{\"type\":\"boolean\"},\"bandwidthThrottling\":{\"type\":\"long\"},\"createPublicIP\":{\"type\":\"boolean\"},\"dataPlaneRouting\":{},\"defaultLargeStagingDiskType\":{},\"ebsEncryption\":{},\"ebsEncryptionKeyArn\":{},\"replicationConfigurationTemplateID\":{},\"replicationServerInstanceType\":{},\"replicationServersSecurityGroupsIDs\":{\"shape\":\"S1j\"},\"stagingAreaSubnetId\":{},\"stagingAreaTags\":{\"shape\":\"S1c\"},\"tags\":{\"shape\":\"S1c\"},\"useDedicatedReplicationServer\":{\"type\":\"boolean\"}}},\"S27\":{\"type\":\"structure\",\"required\":[\"jobID\"],\"members\":{\"arn\":{},\"creationDateTime\":{},\"endDateTime\":{},\"initiatedBy\":{},\"jobID\":{},\"participatingServers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"launchStatus\":{},\"sourceServerID\":{}}}},\"status\":{},\"tags\":{\"shape\":\"S1c\"},\"type\":{}}},\"S2q\":{\"type\":\"structure\",\"members\":{\"copyPrivateIp\":{\"type\":\"boolean\"},\"copyTags\":{\"type\":\"boolean\"},\"ec2LaunchTemplateID\":{},\"launchDisposition\":{},\"licensing\":{\"shape\":\"S2s\"},\"name\":{},\"sourceServerID\":{},\"targetInstanceTypeRightSizingMethod\":{}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"osByol\":{\"type\":\"boolean\"}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"associateDefaultSecurityGroup\":{\"type\":\"boolean\"},\"bandwidthThrottling\":{\"type\":\"long\"},\"createPublicIP\":{\"type\":\"boolean\"},\"dataPlaneRouting\":{},\"defaultLargeStagingDiskType\":{},\"ebsEncryption\":{},\"ebsEncryptionKeyArn\":{},\"name\":{},\"replicatedDisks\":{\"shape\":\"S2x\"},\"replicationServerInstanceType\":{},\"replicationServersSecurityGroupsIDs\":{\"shape\":\"S1j\"},\"sourceServerID\":{},\"stagingAreaSubnetId\":{},\"stagingAreaTags\":{\"shape\":\"S1c\"},\"useDedicatedReplicationServer\":{\"type\":\"boolean\"}}},\"S2x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"deviceName\":{},\"iops\":{\"type\":\"long\"},\"isBootDisk\":{\"type\":\"boolean\"},\"stagingDiskType\":{}}}}}}");

/***/ }),

/***/ 36566:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeJobLogItems\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"items\"},\"DescribeJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"items\"},\"DescribeReplicationConfigurationTemplates\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"items\"},\"DescribeSourceServers\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"items\"}}}");

/***/ }),

/***/ 89101:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-06-30\",\"endpointPrefix\":\"migrationhub-config\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Migration Hub Config\",\"serviceId\":\"MigrationHub Config\",\"signatureVersion\":\"v4\",\"signingName\":\"mgh\",\"targetPrefix\":\"AWSMigrationHubMultiAccountService\",\"uid\":\"migrationhub-config-2019-06-30\"},\"operations\":{\"CreateHomeRegionControl\":{\"input\":{\"type\":\"structure\",\"required\":[\"HomeRegion\",\"Target\"],\"members\":{\"HomeRegion\":{},\"Target\":{\"shape\":\"S3\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HomeRegionControl\":{\"shape\":\"S8\"}}}},\"DescribeHomeRegionControls\":{\"input\":{\"type\":\"structure\",\"members\":{\"ControlId\":{},\"HomeRegion\":{},\"Target\":{\"shape\":\"S3\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HomeRegionControls\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"NextToken\":{}}}},\"GetHomeRegion\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"HomeRegion\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Id\":{}}},\"S8\":{\"type\":\"structure\",\"members\":{\"ControlId\":{},\"HomeRegion\":{},\"Target\":{\"shape\":\"S3\"},\"RequestedTime\":{\"type\":\"timestamp\"}}}}}");

/***/ }),

/***/ 59977:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeHomeRegionControls\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 44027:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-01\",\"endpointPrefix\":\"mobile\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS Mobile\",\"serviceId\":\"Mobile\",\"signatureVersion\":\"v4\",\"signingName\":\"AWSMobileHubService\",\"uid\":\"mobile-2017-07-01\"},\"operations\":{\"CreateProject\":{\"http\":{\"requestUri\":\"/projects\"},\"input\":{\"type\":\"structure\",\"members\":{\"name\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"region\":{\"location\":\"querystring\",\"locationName\":\"region\"},\"contents\":{\"type\":\"blob\"},\"snapshotId\":{\"location\":\"querystring\",\"locationName\":\"snapshotId\"}},\"payload\":\"contents\"},\"output\":{\"type\":\"structure\",\"members\":{\"details\":{\"shape\":\"S7\"}}}},\"DeleteProject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/projects/{projectId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deletedResources\":{\"shape\":\"Sc\"},\"orphanedResources\":{\"shape\":\"Sc\"}}}},\"DescribeBundle\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bundles/{bundleId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"bundleId\"],\"members\":{\"bundleId\":{\"location\":\"uri\",\"locationName\":\"bundleId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"details\":{\"shape\":\"Sq\"}}}},\"DescribeProject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/project\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"querystring\",\"locationName\":\"projectId\"},\"syncFromResources\":{\"location\":\"querystring\",\"locationName\":\"syncFromResources\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"details\":{\"shape\":\"S7\"}}}},\"ExportBundle\":{\"http\":{\"requestUri\":\"/bundles/{bundleId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"bundleId\"],\"members\":{\"bundleId\":{\"location\":\"uri\",\"locationName\":\"bundleId\"},\"projectId\":{\"location\":\"querystring\",\"locationName\":\"projectId\"},\"platform\":{\"location\":\"querystring\",\"locationName\":\"platform\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"downloadUrl\":{}}}},\"ExportProject\":{\"http\":{\"requestUri\":\"/exports/{projectId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"projectId\":{\"location\":\"uri\",\"locationName\":\"projectId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"downloadUrl\":{},\"shareUrl\":{},\"snapshotId\":{}}}},\"ListBundles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bundles\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"bundleList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}},\"nextToken\":{}}}},\"ListProjects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/projects\"},\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"projects\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"projectId\":{}}}},\"nextToken\":{}}}},\"UpdateProject\":{\"http\":{\"requestUri\":\"/update\"},\"input\":{\"type\":\"structure\",\"required\":[\"projectId\"],\"members\":{\"contents\":{\"type\":\"blob\"},\"projectId\":{\"location\":\"querystring\",\"locationName\":\"projectId\"}},\"payload\":\"contents\"},\"output\":{\"type\":\"structure\",\"members\":{\"details\":{\"shape\":\"S7\"}}}}},\"shapes\":{\"S7\":{\"type\":\"structure\",\"members\":{\"name\":{},\"projectId\":{},\"region\":{},\"state\":{},\"createdDate\":{\"type\":\"timestamp\"},\"lastUpdatedDate\":{\"type\":\"timestamp\"},\"consoleUrl\":{},\"resources\":{\"shape\":\"Sc\"}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"type\":{},\"name\":{},\"arn\":{},\"feature\":{},\"attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"Sq\":{\"type\":\"structure\",\"members\":{\"bundleId\":{},\"title\":{},\"version\":{},\"description\":{},\"iconUrl\":{},\"availablePlatforms\":{\"type\":\"list\",\"member\":{}}}}}}");

/***/ }),

/***/ 81940:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBundles\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListProjects\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 40634:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-06-05\",\"endpointPrefix\":\"mobileanalytics\",\"serviceFullName\":\"Amazon Mobile Analytics\",\"serviceId\":\"Mobile Analytics\",\"signatureVersion\":\"v4\",\"protocol\":\"rest-json\"},\"operations\":{\"PutEvents\":{\"http\":{\"requestUri\":\"/2014-06-05/events\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"events\",\"clientContext\"],\"members\":{\"events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"eventType\",\"timestamp\"],\"members\":{\"eventType\":{},\"timestamp\":{},\"session\":{\"type\":\"structure\",\"members\":{\"id\":{},\"duration\":{\"type\":\"long\"},\"startTimestamp\":{},\"stopTimestamp\":{}}},\"version\":{},\"attributes\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"metrics\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"double\"}}}}},\"clientContext\":{\"location\":\"header\",\"locationName\":\"x-amz-Client-Context\"},\"clientContextEncoding\":{\"location\":\"header\",\"locationName\":\"x-amz-Client-Context-Encoding\"}}}}},\"shapes\":{}}");

/***/ }),

/***/ 28033:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-08-07\",\"endpointPrefix\":\"models-v2-lex\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Lex Models V2\",\"serviceFullName\":\"Amazon Lex Model Building V2\",\"serviceId\":\"Lex Models V2\",\"signatureVersion\":\"v4\",\"signingName\":\"lex\",\"uid\":\"models.lex.v2-2020-08-07\"},\"operations\":{\"BuildBotLocale\":{\"http\":{\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"botLocaleStatus\":{},\"lastBuildSubmittedDateTime\":{\"type\":\"timestamp\"}}}},\"CreateBot\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"roleArn\",\"dataPrivacy\",\"idleSessionTTLInSeconds\"],\"members\":{\"botName\":{},\"description\":{},\"roleArn\":{},\"dataPrivacy\":{\"shape\":\"Sc\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"botTags\":{\"shape\":\"Sf\"},\"testBotAliasTags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botName\":{},\"description\":{},\"roleArn\":{},\"dataPrivacy\":{\"shape\":\"Sc\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"botStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"botTags\":{\"shape\":\"Sf\"},\"testBotAliasTags\":{\"shape\":\"Sf\"}}}},\"CreateBotAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botaliases/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botAliasName\",\"botId\"],\"members\":{\"botAliasName\":{},\"description\":{},\"botVersion\":{},\"botAliasLocaleSettings\":{\"shape\":\"Sm\"},\"conversationLogSettings\":{\"shape\":\"St\"},\"sentimentAnalysisSettings\":{\"shape\":\"S16\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botAliasId\":{},\"botAliasName\":{},\"description\":{},\"botVersion\":{},\"botAliasLocaleSettings\":{\"shape\":\"Sm\"},\"conversationLogSettings\":{\"shape\":\"St\"},\"sentimentAnalysisSettings\":{\"shape\":\"S16\"},\"botAliasStatus\":{},\"botId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"Sf\"}}}},\"CreateBotLocale\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\",\"nluIntentConfidenceThreshold\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{},\"description\":{},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"voiceSettings\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeName\":{},\"localeId\":{},\"description\":{},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"voiceSettings\":{\"shape\":\"S1c\"},\"botLocaleStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"CreateBotVersion\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersionLocaleSpecification\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"description\":{},\"botVersionLocaleSpecification\":{\"shape\":\"S1h\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"description\":{},\"botVersion\":{},\"botVersionLocaleSpecification\":{\"shape\":\"S1h\"},\"botStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"CreateIntent\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"intentName\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"intentName\":{},\"description\":{},\"parentIntentSignature\":{},\"sampleUtterances\":{\"shape\":\"S1n\"},\"dialogCodeHook\":{\"shape\":\"S1q\"},\"fulfillmentCodeHook\":{\"shape\":\"S1r\"},\"intentConfirmationSetting\":{\"shape\":\"S1s\"},\"intentClosingSetting\":{\"shape\":\"S2e\"},\"inputContexts\":{\"shape\":\"S2f\"},\"outputContexts\":{\"shape\":\"S2h\"},\"kendraConfiguration\":{\"shape\":\"S2l\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intentId\":{},\"intentName\":{},\"description\":{},\"parentIntentSignature\":{},\"sampleUtterances\":{\"shape\":\"S1n\"},\"dialogCodeHook\":{\"shape\":\"S1q\"},\"fulfillmentCodeHook\":{\"shape\":\"S1r\"},\"intentConfirmationSetting\":{\"shape\":\"S1s\"},\"intentClosingSetting\":{\"shape\":\"S2e\"},\"inputContexts\":{\"shape\":\"S2f\"},\"outputContexts\":{\"shape\":\"S2h\"},\"kendraConfiguration\":{\"shape\":\"S2l\"},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"CreateSlot\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"slotName\",\"slotTypeId\",\"valueElicitationSetting\",\"botId\",\"botVersion\",\"localeId\",\"intentId\"],\"members\":{\"slotName\":{},\"description\":{},\"slotTypeId\":{},\"valueElicitationSetting\":{\"shape\":\"S2r\"},\"obfuscationSetting\":{\"shape\":\"S31\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotId\":{},\"slotName\":{},\"description\":{},\"slotTypeId\":{},\"valueElicitationSetting\":{\"shape\":\"S2r\"},\"obfuscationSetting\":{\"shape\":\"S31\"},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"intentId\":{},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"CreateSlotType\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"slotTypeName\",\"valueSelectionSetting\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"slotTypeName\":{},\"description\":{},\"slotTypeValues\":{\"shape\":\"S35\"},\"valueSelectionSetting\":{\"shape\":\"S3a\"},\"parentSlotTypeSignature\":{},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotTypeId\":{},\"slotTypeName\":{},\"description\":{},\"slotTypeValues\":{\"shape\":\"S35\"},\"valueSelectionSetting\":{\"shape\":\"S3a\"},\"parentSlotTypeSignature\":{},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"DeleteBot\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"skipResourceInUseCheck\":{\"location\":\"querystring\",\"locationName\":\"skipResourceInUseCheck\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botStatus\":{}}}},\"DeleteBotAlias\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botaliases/{botAliasId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botAliasId\",\"botId\"],\"members\":{\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"skipResourceInUseCheck\":{\"location\":\"querystring\",\"locationName\":\"skipResourceInUseCheck\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botAliasId\":{},\"botId\":{},\"botAliasStatus\":{}}}},\"DeleteBotLocale\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"botLocaleStatus\":{}}}},\"DeleteBotVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"skipResourceInUseCheck\":{\"location\":\"querystring\",\"locationName\":\"skipResourceInUseCheck\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"botStatus\":{}}}},\"DeleteIntent\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"intentId\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}}},\"DeleteSlot\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/{slotId}/\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"slotId\",\"botId\",\"botVersion\",\"localeId\",\"intentId\"],\"members\":{\"slotId\":{\"location\":\"uri\",\"locationName\":\"slotId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"}}}},\"DeleteSlotType\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}/\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"slotTypeId\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"slotTypeId\":{\"location\":\"uri\",\"locationName\":\"slotTypeId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"skipResourceInUseCheck\":{\"location\":\"querystring\",\"locationName\":\"skipResourceInUseCheck\",\"type\":\"boolean\"}}}},\"DescribeBot\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botName\":{},\"description\":{},\"roleArn\":{},\"dataPrivacy\":{\"shape\":\"Sc\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"botStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"DescribeBotAlias\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botaliases/{botAliasId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botAliasId\",\"botId\"],\"members\":{\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botAliasId\":{},\"botAliasName\":{},\"description\":{},\"botVersion\":{},\"botAliasLocaleSettings\":{\"shape\":\"Sm\"},\"conversationLogSettings\":{\"shape\":\"St\"},\"sentimentAnalysisSettings\":{\"shape\":\"S16\"},\"botAliasHistoryEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"botVersion\":{},\"startDate\":{\"type\":\"timestamp\"},\"endDate\":{\"type\":\"timestamp\"}}}},\"botAliasStatus\":{},\"botId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"DescribeBotLocale\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"localeName\":{},\"description\":{},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"voiceSettings\":{\"shape\":\"S1c\"},\"intentsCount\":{\"type\":\"integer\"},\"slotTypesCount\":{\"type\":\"integer\"},\"botLocaleStatus\":{},\"failureReasons\":{\"shape\":\"S41\"},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"lastBuildSubmittedDateTime\":{\"type\":\"timestamp\"},\"botLocaleHistoryEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"event\",\"eventDate\"],\"members\":{\"event\":{},\"eventDate\":{\"type\":\"timestamp\"}}}}}}},\"DescribeBotVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botName\":{},\"botVersion\":{},\"description\":{},\"roleArn\":{},\"dataPrivacy\":{\"shape\":\"Sc\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"botStatus\":{},\"failureReasons\":{\"shape\":\"S41\"},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"DescribeIntent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"intentId\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intentId\":{},\"intentName\":{},\"description\":{},\"parentIntentSignature\":{},\"sampleUtterances\":{\"shape\":\"S1n\"},\"dialogCodeHook\":{\"shape\":\"S1q\"},\"fulfillmentCodeHook\":{\"shape\":\"S1r\"},\"slotPriorities\":{\"shape\":\"S4a\"},\"intentConfirmationSetting\":{\"shape\":\"S1s\"},\"intentClosingSetting\":{\"shape\":\"S2e\"},\"inputContexts\":{\"shape\":\"S2f\"},\"outputContexts\":{\"shape\":\"S2h\"},\"kendraConfiguration\":{\"shape\":\"S2l\"},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"DescribeSlot\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/{slotId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"slotId\",\"botId\",\"botVersion\",\"localeId\",\"intentId\"],\"members\":{\"slotId\":{\"location\":\"uri\",\"locationName\":\"slotId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotId\":{},\"slotName\":{},\"description\":{},\"slotTypeId\":{},\"valueElicitationSetting\":{\"shape\":\"S2r\"},\"obfuscationSetting\":{\"shape\":\"S31\"},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"intentId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"DescribeSlotType\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"slotTypeId\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"slotTypeId\":{\"location\":\"uri\",\"locationName\":\"slotTypeId\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotTypeId\":{},\"slotTypeName\":{},\"description\":{},\"slotTypeValues\":{\"shape\":\"S35\"},\"valueSelectionSetting\":{\"shape\":\"S3a\"},\"parentSlotTypeSignature\":{},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"ListBotAliases\":{\"http\":{\"requestUri\":\"/bots/{botId}/botaliases/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botAliasSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"botAliasId\":{},\"botAliasName\":{},\"description\":{},\"botVersion\":{},\"botAliasStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{},\"botId\":{}}}},\"ListBotLocales\":{\"http\":{\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"operator\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"S4u\"},\"operator\":{}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"nextToken\":{},\"botLocaleSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"localeId\":{},\"localeName\":{},\"description\":{},\"botLocaleStatus\":{},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"lastBuildSubmittedDateTime\":{\"type\":\"timestamp\"}}}}}}},\"ListBotVersions\":{\"http\":{\"requestUri\":\"/bots/{botId}/botversions/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"botName\":{},\"botVersion\":{},\"description\":{},\"botStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListBots\":{\"http\":{\"requestUri\":\"/bots/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"operator\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"S4u\"},\"operator\":{}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botName\":{},\"description\":{},\"botStatus\":{},\"latestBotVersion\":{},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListBuiltInIntents\":{\"http\":{\"requestUri\":\"/builtins/locales/{localeId}/intents/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"localeId\"],\"members\":{\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"builtInIntentSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"intentSignature\":{},\"description\":{}}}},\"nextToken\":{},\"localeId\":{}}}},\"ListBuiltInSlotTypes\":{\"http\":{\"requestUri\":\"/builtins/locales/{localeId}/slottypes/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"localeId\"],\"members\":{\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"builtInSlotTypeSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"slotTypeSignature\":{},\"description\":{}}}},\"nextToken\":{},\"localeId\":{}}}},\"ListIntents\":{\"http\":{\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"operator\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"S4u\"},\"operator\":{}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"intentSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"intentId\":{},\"intentName\":{},\"description\":{},\"parentIntentSignature\":{},\"inputContexts\":{\"shape\":\"S2f\"},\"outputContexts\":{\"shape\":\"S2h\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListSlotTypes\":{\"http\":{\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"operator\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"S4u\"},\"operator\":{}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"slotTypeSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"slotTypeId\":{},\"slotTypeName\":{},\"description\":{},\"parentSlotTypeSignature\":{},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListSlots\":{\"http\":{\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\",\"intentId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"},\"sortBy\":{\"type\":\"structure\",\"required\":[\"attribute\",\"order\"],\"members\":{\"attribute\":{},\"order\":{}}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"values\",\"operator\"],\"members\":{\"name\":{},\"values\":{\"shape\":\"S4u\"},\"operator\":{}}}},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"intentId\":{},\"slotSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"slotId\":{},\"slotName\":{},\"description\":{},\"slotConstraint\":{},\"slotTypeId\":{},\"valueElicitationPromptSpecification\":{\"shape\":\"S1t\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceARN}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceARN\"],\"members\":{\"resourceARN\":{\"location\":\"uri\",\"locationName\":\"resourceARN\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sf\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceARN}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceARN\",\"tags\"],\"members\":{\"resourceARN\":{\"location\":\"uri\",\"locationName\":\"resourceARN\"},\"tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceARN}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceARN\",\"tagKeys\"],\"members\":{\"resourceARN\":{\"location\":\"uri\",\"locationName\":\"resourceARN\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateBot\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botName\",\"roleArn\",\"dataPrivacy\",\"idleSessionTTLInSeconds\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botName\":{},\"description\":{},\"roleArn\":{},\"dataPrivacy\":{\"shape\":\"Sc\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botName\":{},\"description\":{},\"roleArn\":{},\"dataPrivacy\":{\"shape\":\"Sc\"},\"idleSessionTTLInSeconds\":{\"type\":\"integer\"},\"botStatus\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"UpdateBotAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botaliases/{botAliasId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botAliasId\",\"botAliasName\",\"botId\"],\"members\":{\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"botAliasName\":{},\"description\":{},\"botVersion\":{},\"botAliasLocaleSettings\":{\"shape\":\"Sm\"},\"conversationLogSettings\":{\"shape\":\"St\"},\"sentimentAnalysisSettings\":{\"shape\":\"S16\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botAliasId\":{},\"botAliasName\":{},\"description\":{},\"botVersion\":{},\"botAliasLocaleSettings\":{\"shape\":\"Sm\"},\"conversationLogSettings\":{\"shape\":\"St\"},\"sentimentAnalysisSettings\":{\"shape\":\"S16\"},\"botAliasStatus\":{},\"botId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"UpdateBotLocale\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botVersion\",\"localeId\",\"nluIntentConfidenceThreshold\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"description\":{},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"voiceSettings\":{\"shape\":\"S1c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botVersion\":{},\"localeId\":{},\"localeName\":{},\"description\":{},\"nluIntentConfidenceThreshold\":{\"type\":\"double\"},\"voiceSettings\":{\"shape\":\"S1c\"},\"botLocaleStatus\":{},\"failureReasons\":{\"shape\":\"S41\"},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"UpdateIntent\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"intentId\",\"intentName\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"},\"intentName\":{},\"description\":{},\"parentIntentSignature\":{},\"sampleUtterances\":{\"shape\":\"S1n\"},\"dialogCodeHook\":{\"shape\":\"S1q\"},\"fulfillmentCodeHook\":{\"shape\":\"S1r\"},\"slotPriorities\":{\"shape\":\"S4a\"},\"intentConfirmationSetting\":{\"shape\":\"S1s\"},\"intentClosingSetting\":{\"shape\":\"S2e\"},\"inputContexts\":{\"shape\":\"S2f\"},\"outputContexts\":{\"shape\":\"S2h\"},\"kendraConfiguration\":{\"shape\":\"S2l\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intentId\":{},\"intentName\":{},\"description\":{},\"parentIntentSignature\":{},\"sampleUtterances\":{\"shape\":\"S1n\"},\"dialogCodeHook\":{\"shape\":\"S1q\"},\"fulfillmentCodeHook\":{\"shape\":\"S1r\"},\"slotPriorities\":{\"shape\":\"S4a\"},\"intentConfirmationSetting\":{\"shape\":\"S1s\"},\"intentClosingSetting\":{\"shape\":\"S2e\"},\"inputContexts\":{\"shape\":\"S2f\"},\"outputContexts\":{\"shape\":\"S2h\"},\"kendraConfiguration\":{\"shape\":\"S2l\"},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"UpdateSlot\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/{slotId}/\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"slotId\",\"slotName\",\"slotTypeId\",\"valueElicitationSetting\",\"botId\",\"botVersion\",\"localeId\",\"intentId\"],\"members\":{\"slotId\":{\"location\":\"uri\",\"locationName\":\"slotId\"},\"slotName\":{},\"description\":{},\"slotTypeId\":{},\"valueElicitationSetting\":{\"shape\":\"S2r\"},\"obfuscationSetting\":{\"shape\":\"S31\"},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"intentId\":{\"location\":\"uri\",\"locationName\":\"intentId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotId\":{},\"slotName\":{},\"description\":{},\"slotTypeId\":{},\"valueElicitationSetting\":{\"shape\":\"S2r\"},\"obfuscationSetting\":{\"shape\":\"S31\"},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"intentId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"UpdateSlotType\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}/\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"required\":[\"slotTypeId\",\"slotTypeName\",\"valueSelectionSetting\",\"botId\",\"botVersion\",\"localeId\"],\"members\":{\"slotTypeId\":{\"location\":\"uri\",\"locationName\":\"slotTypeId\"},\"slotTypeName\":{},\"description\":{},\"slotTypeValues\":{\"shape\":\"S35\"},\"valueSelectionSetting\":{\"shape\":\"S3a\"},\"parentSlotTypeSignature\":{},\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botVersion\":{\"location\":\"uri\",\"locationName\":\"botVersion\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"slotTypeId\":{},\"slotTypeName\":{},\"description\":{},\"slotTypeValues\":{\"shape\":\"S35\"},\"valueSelectionSetting\":{\"shape\":\"S3a\"},\"parentSlotTypeSignature\":{},\"botId\":{},\"botVersion\":{},\"localeId\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"Sc\":{\"type\":\"structure\",\"required\":[\"childDirected\"],\"members\":{\"childDirected\":{\"type\":\"boolean\"}}},\"Sf\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sm\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"enabled\"],\"members\":{\"enabled\":{\"type\":\"boolean\"},\"codeHookSpecification\":{\"type\":\"structure\",\"required\":[\"lambdaCodeHook\"],\"members\":{\"lambdaCodeHook\":{\"type\":\"structure\",\"required\":[\"lambdaARN\",\"codeHookInterfaceVersion\"],\"members\":{\"lambdaARN\":{},\"codeHookInterfaceVersion\":{}}}}}}}},\"St\":{\"type\":\"structure\",\"members\":{\"textLogSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"enabled\",\"destination\"],\"members\":{\"enabled\":{\"type\":\"boolean\"},\"destination\":{\"type\":\"structure\",\"required\":[\"cloudWatch\"],\"members\":{\"cloudWatch\":{\"type\":\"structure\",\"required\":[\"cloudWatchLogGroupArn\",\"logPrefix\"],\"members\":{\"cloudWatchLogGroupArn\":{},\"logPrefix\":{}}}}}}}},\"audioLogSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"enabled\",\"destination\"],\"members\":{\"enabled\":{\"type\":\"boolean\"},\"destination\":{\"type\":\"structure\",\"required\":[\"s3Bucket\"],\"members\":{\"s3Bucket\":{\"type\":\"structure\",\"required\":[\"s3BucketArn\",\"logPrefix\"],\"members\":{\"kmsKeyArn\":{},\"s3BucketArn\":{},\"logPrefix\":{}}}}}}}}}},\"S16\":{\"type\":\"structure\",\"required\":[\"detectSentiment\"],\"members\":{\"detectSentiment\":{\"type\":\"boolean\"}}},\"S1c\":{\"type\":\"structure\",\"required\":[\"voiceId\"],\"members\":{\"voiceId\":{}}},\"S1h\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"sourceBotVersion\"],\"members\":{\"sourceBotVersion\":{}}}},\"S1n\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"utterance\"],\"members\":{\"utterance\":{}}}},\"S1q\":{\"type\":\"structure\",\"required\":[\"enabled\"],\"members\":{\"enabled\":{\"type\":\"boolean\"}}},\"S1r\":{\"type\":\"structure\",\"required\":[\"enabled\"],\"members\":{\"enabled\":{\"type\":\"boolean\"}}},\"S1s\":{\"type\":\"structure\",\"required\":[\"promptSpecification\",\"declinationResponse\"],\"members\":{\"promptSpecification\":{\"shape\":\"S1t\"},\"declinationResponse\":{\"shape\":\"S2d\"}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"messageGroups\",\"maxRetries\"],\"members\":{\"messageGroups\":{\"shape\":\"S1u\"},\"maxRetries\":{\"type\":\"integer\"},\"allowInterrupt\":{\"type\":\"boolean\"}}},\"S1u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"message\"],\"members\":{\"message\":{\"shape\":\"S1w\"},\"variations\":{\"type\":\"list\",\"member\":{\"shape\":\"S1w\"}}}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"plainTextMessage\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{}}},\"customPayload\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{}}},\"ssmlMessage\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{}}},\"imageResponseCard\":{\"type\":\"structure\",\"required\":[\"title\"],\"members\":{\"title\":{},\"subtitle\":{},\"imageUrl\":{},\"buttons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"text\",\"value\"],\"members\":{\"text\":{},\"value\":{}}}}}}}},\"S2d\":{\"type\":\"structure\",\"required\":[\"messageGroups\"],\"members\":{\"messageGroups\":{\"shape\":\"S1u\"},\"allowInterrupt\":{\"type\":\"boolean\"}}},\"S2e\":{\"type\":\"structure\",\"required\":[\"closingResponse\"],\"members\":{\"closingResponse\":{\"shape\":\"S2d\"}}},\"S2f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"S2h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"timeToLiveInSeconds\",\"turnsToLive\"],\"members\":{\"name\":{},\"timeToLiveInSeconds\":{\"type\":\"integer\"},\"turnsToLive\":{\"type\":\"integer\"}}}},\"S2l\":{\"type\":\"structure\",\"required\":[\"kendraIndex\"],\"members\":{\"kendraIndex\":{},\"queryFilterStringEnabled\":{\"type\":\"boolean\"},\"queryFilterString\":{}}},\"S2r\":{\"type\":\"structure\",\"required\":[\"slotConstraint\"],\"members\":{\"defaultValueSpecification\":{\"type\":\"structure\",\"required\":[\"defaultValueList\"],\"members\":{\"defaultValueList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"defaultValue\"],\"members\":{\"defaultValue\":{}}}}}},\"slotConstraint\":{},\"promptSpecification\":{\"shape\":\"S1t\"},\"sampleUtterances\":{\"shape\":\"S1n\"},\"waitAndContinueSpecification\":{\"type\":\"structure\",\"required\":[\"waitingResponse\",\"continueResponse\"],\"members\":{\"waitingResponse\":{\"shape\":\"S2d\"},\"continueResponse\":{\"shape\":\"S2d\"},\"stillWaitingResponse\":{\"type\":\"structure\",\"required\":[\"messageGroups\",\"frequencyInSeconds\",\"timeoutInSeconds\"],\"members\":{\"messageGroups\":{\"shape\":\"S1u\"},\"frequencyInSeconds\":{\"type\":\"integer\"},\"timeoutInSeconds\":{\"type\":\"integer\"},\"allowInterrupt\":{\"type\":\"boolean\"}}}}}}},\"S31\":{\"type\":\"structure\",\"required\":[\"obfuscationSettingType\"],\"members\":{\"obfuscationSettingType\":{}}},\"S35\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"sampleValue\":{\"shape\":\"S37\"},\"synonyms\":{\"type\":\"list\",\"member\":{\"shape\":\"S37\"}}}}},\"S37\":{\"type\":\"structure\",\"required\":[\"value\"],\"members\":{\"value\":{}}},\"S3a\":{\"type\":\"structure\",\"required\":[\"resolutionStrategy\"],\"members\":{\"resolutionStrategy\":{},\"regexFilter\":{\"type\":\"structure\",\"required\":[\"pattern\"],\"members\":{\"pattern\":{}}}}},\"S41\":{\"type\":\"list\",\"member\":{}},\"S4a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"priority\",\"slotId\"],\"members\":{\"priority\":{\"type\":\"integer\"},\"slotId\":{}}}},\"S4u\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 20751:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBotAliases\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListBotLocales\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListBotVersions\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListBots\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListBuiltInIntents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListBuiltInSlotTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListIntents\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListSlotTypes\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListSlots\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 12505:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2010-08-01\",\"endpointPrefix\":\"monitoring\",\"protocol\":\"query\",\"serviceAbbreviation\":\"CloudWatch\",\"serviceFullName\":\"Amazon CloudWatch\",\"serviceId\":\"CloudWatch\",\"signatureVersion\":\"v4\",\"uid\":\"monitoring-2010-08-01\",\"xmlNamespace\":\"http://monitoring.amazonaws.com/doc/2010-08-01/\"},\"operations\":{\"DeleteAlarms\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlarmNames\"],\"members\":{\"AlarmNames\":{\"shape\":\"S2\"}}}},\"DeleteAnomalyDetector\":{\"input\":{\"type\":\"structure\",\"required\":[\"Namespace\",\"MetricName\",\"Stat\"],\"members\":{\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Stat\":{}}},\"output\":{\"resultWrapper\":\"DeleteAnomalyDetectorResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteDashboards\":{\"input\":{\"type\":\"structure\",\"required\":[\"DashboardNames\"],\"members\":{\"DashboardNames\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"DeleteDashboardsResult\",\"type\":\"structure\",\"members\":{}}},\"DeleteInsightRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleNames\"],\"members\":{\"RuleNames\":{\"shape\":\"Si\"}}},\"output\":{\"resultWrapper\":\"DeleteInsightRulesResult\",\"type\":\"structure\",\"members\":{\"Failures\":{\"shape\":\"Sl\"}}}},\"DeleteMetricStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"resultWrapper\":\"DeleteMetricStreamResult\",\"type\":\"structure\",\"members\":{}}},\"DescribeAlarmHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"AlarmName\":{},\"AlarmTypes\":{\"shape\":\"Sv\"},\"HistoryItemType\":{},\"StartDate\":{\"type\":\"timestamp\"},\"EndDate\":{\"type\":\"timestamp\"},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{},\"ScanBy\":{}}},\"output\":{\"resultWrapper\":\"DescribeAlarmHistoryResult\",\"type\":\"structure\",\"members\":{\"AlarmHistoryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlarmName\":{},\"AlarmType\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"HistoryItemType\":{},\"HistorySummary\":{},\"HistoryData\":{}}}},\"NextToken\":{}}}},\"DescribeAlarms\":{\"input\":{\"type\":\"structure\",\"members\":{\"AlarmNames\":{\"shape\":\"S2\"},\"AlarmNamePrefix\":{},\"AlarmTypes\":{\"shape\":\"Sv\"},\"ChildrenOfAlarmName\":{},\"ParentsOfAlarmName\":{},\"StateValue\":{},\"ActionPrefix\":{},\"MaxRecords\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"DescribeAlarmsResult\",\"type\":\"structure\",\"members\":{\"CompositeAlarms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionsEnabled\":{\"type\":\"boolean\"},\"AlarmActions\":{\"shape\":\"S1f\"},\"AlarmArn\":{},\"AlarmConfigurationUpdatedTimestamp\":{\"type\":\"timestamp\"},\"AlarmDescription\":{},\"AlarmName\":{},\"AlarmRule\":{},\"InsufficientDataActions\":{\"shape\":\"S1f\"},\"OKActions\":{\"shape\":\"S1f\"},\"StateReason\":{},\"StateReasonData\":{},\"StateUpdatedTimestamp\":{\"type\":\"timestamp\"},\"StateValue\":{}},\"xmlOrder\":[\"ActionsEnabled\",\"AlarmActions\",\"AlarmArn\",\"AlarmConfigurationUpdatedTimestamp\",\"AlarmDescription\",\"AlarmName\",\"AlarmRule\",\"InsufficientDataActions\",\"OKActions\",\"StateReason\",\"StateReasonData\",\"StateUpdatedTimestamp\",\"StateValue\"]}},\"MetricAlarms\":{\"shape\":\"S1m\"},\"NextToken\":{}}}},\"DescribeAlarmsForMetric\":{\"input\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Namespace\"],\"members\":{\"MetricName\":{},\"Namespace\":{},\"Statistic\":{},\"ExtendedStatistic\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Period\":{\"type\":\"integer\"},\"Unit\":{}}},\"output\":{\"resultWrapper\":\"DescribeAlarmsForMetricResult\",\"type\":\"structure\",\"members\":{\"MetricAlarms\":{\"shape\":\"S1m\"}}}},\"DescribeAnomalyDetectors\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"}}},\"output\":{\"resultWrapper\":\"DescribeAnomalyDetectorsResult\",\"type\":\"structure\",\"members\":{\"AnomalyDetectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Stat\":{},\"Configuration\":{\"shape\":\"S2e\"},\"StateValue\":{}}}},\"NextToken\":{}}}},\"DescribeInsightRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeInsightRulesResult\",\"type\":\"structure\",\"members\":{\"NextToken\":{},\"InsightRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"State\",\"Schema\",\"Definition\"],\"members\":{\"Name\":{},\"State\":{},\"Schema\":{},\"Definition\":{}}}}}}},\"DisableAlarmActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlarmNames\"],\"members\":{\"AlarmNames\":{\"shape\":\"S2\"}}}},\"DisableInsightRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleNames\"],\"members\":{\"RuleNames\":{\"shape\":\"Si\"}}},\"output\":{\"resultWrapper\":\"DisableInsightRulesResult\",\"type\":\"structure\",\"members\":{\"Failures\":{\"shape\":\"Sl\"}}}},\"EnableAlarmActions\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlarmNames\"],\"members\":{\"AlarmNames\":{\"shape\":\"S2\"}}}},\"EnableInsightRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleNames\"],\"members\":{\"RuleNames\":{\"shape\":\"Si\"}}},\"output\":{\"resultWrapper\":\"EnableInsightRulesResult\",\"type\":\"structure\",\"members\":{\"Failures\":{\"shape\":\"Sl\"}}}},\"GetDashboard\":{\"input\":{\"type\":\"structure\",\"required\":[\"DashboardName\"],\"members\":{\"DashboardName\":{}}},\"output\":{\"resultWrapper\":\"GetDashboardResult\",\"type\":\"structure\",\"members\":{\"DashboardArn\":{},\"DashboardBody\":{},\"DashboardName\":{}}}},\"GetInsightRuleReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleName\",\"StartTime\",\"EndTime\",\"Period\"],\"members\":{\"RuleName\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Period\":{\"type\":\"integer\"},\"MaxContributorCount\":{\"type\":\"integer\"},\"Metrics\":{\"type\":\"list\",\"member\":{}},\"OrderBy\":{}}},\"output\":{\"resultWrapper\":\"GetInsightRuleReportResult\",\"type\":\"structure\",\"members\":{\"KeyLabels\":{\"type\":\"list\",\"member\":{}},\"AggregationStatistic\":{},\"AggregateValue\":{\"type\":\"double\"},\"ApproximateUniqueCount\":{\"type\":\"long\"},\"Contributors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Keys\",\"ApproximateAggregateValue\",\"Datapoints\"],\"members\":{\"Keys\":{\"type\":\"list\",\"member\":{}},\"ApproximateAggregateValue\":{\"type\":\"double\"},\"Datapoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Timestamp\",\"ApproximateValue\"],\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"ApproximateValue\":{\"type\":\"double\"}}}}}}},\"MetricDatapoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Timestamp\"],\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"UniqueContributors\":{\"type\":\"double\"},\"MaxContributorValue\":{\"type\":\"double\"},\"SampleCount\":{\"type\":\"double\"},\"Average\":{\"type\":\"double\"},\"Sum\":{\"type\":\"double\"},\"Minimum\":{\"type\":\"double\"},\"Maximum\":{\"type\":\"double\"}}}}}}},\"GetMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"MetricDataQueries\",\"StartTime\",\"EndTime\"],\"members\":{\"MetricDataQueries\":{\"shape\":\"S1y\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"NextToken\":{},\"ScanBy\":{},\"MaxDatapoints\":{\"type\":\"integer\"},\"LabelOptions\":{\"type\":\"structure\",\"members\":{\"Timezone\":{}}}}},\"output\":{\"resultWrapper\":\"GetMetricDataResult\",\"type\":\"structure\",\"members\":{\"MetricDataResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Label\":{},\"Timestamps\":{\"type\":\"list\",\"member\":{\"type\":\"timestamp\"}},\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}},\"StatusCode\":{},\"Messages\":{\"shape\":\"S3v\"}}}},\"NextToken\":{},\"Messages\":{\"shape\":\"S3v\"}}}},\"GetMetricStatistics\":{\"input\":{\"type\":\"structure\",\"required\":[\"Namespace\",\"MetricName\",\"StartTime\",\"EndTime\",\"Period\"],\"members\":{\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Period\":{\"type\":\"integer\"},\"Statistics\":{\"type\":\"list\",\"member\":{}},\"ExtendedStatistics\":{\"type\":\"list\",\"member\":{}},\"Unit\":{}}},\"output\":{\"resultWrapper\":\"GetMetricStatisticsResult\",\"type\":\"structure\",\"members\":{\"Label\":{},\"Datapoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"SampleCount\":{\"type\":\"double\"},\"Average\":{\"type\":\"double\"},\"Sum\":{\"type\":\"double\"},\"Minimum\":{\"type\":\"double\"},\"Maximum\":{\"type\":\"double\"},\"Unit\":{},\"ExtendedStatistics\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"double\"}}},\"xmlOrder\":[\"Timestamp\",\"SampleCount\",\"Average\",\"Sum\",\"Minimum\",\"Maximum\",\"Unit\",\"ExtendedStatistics\"]}}}}},\"GetMetricStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"resultWrapper\":\"GetMetricStreamResult\",\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"IncludeFilters\":{\"shape\":\"S49\"},\"ExcludeFilters\":{\"shape\":\"S49\"},\"FirehoseArn\":{},\"RoleArn\":{},\"State\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"LastUpdateDate\":{\"type\":\"timestamp\"},\"OutputFormat\":{}}}},\"GetMetricWidgetImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"MetricWidget\"],\"members\":{\"MetricWidget\":{},\"OutputFormat\":{}}},\"output\":{\"resultWrapper\":\"GetMetricWidgetImageResult\",\"type\":\"structure\",\"members\":{\"MetricWidgetImage\":{\"type\":\"blob\"}}}},\"ListDashboards\":{\"input\":{\"type\":\"structure\",\"members\":{\"DashboardNamePrefix\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListDashboardsResult\",\"type\":\"structure\",\"members\":{\"DashboardEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DashboardName\":{},\"DashboardArn\":{},\"LastModified\":{\"type\":\"timestamp\"},\"Size\":{\"type\":\"long\"}}}},\"NextToken\":{}}}},\"ListMetricStreams\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListMetricStreamsResult\",\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Entries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"LastUpdateDate\":{\"type\":\"timestamp\"},\"Name\":{},\"FirehoseArn\":{},\"State\":{},\"OutputFormat\":{}}}}}}},\"ListMetrics\":{\"input\":{\"type\":\"structure\",\"members\":{\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"NextToken\":{},\"RecentlyActive\":{}}},\"output\":{\"resultWrapper\":\"ListMetricsResult\",\"type\":\"structure\",\"members\":{\"Metrics\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"NextToken\":{}},\"xmlOrder\":[\"Metrics\",\"NextToken\"]}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S52\"}}}},\"PutAnomalyDetector\":{\"input\":{\"type\":\"structure\",\"required\":[\"Namespace\",\"MetricName\",\"Stat\"],\"members\":{\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Stat\":{},\"Configuration\":{\"shape\":\"S2e\"}}},\"output\":{\"resultWrapper\":\"PutAnomalyDetectorResult\",\"type\":\"structure\",\"members\":{}}},\"PutCompositeAlarm\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlarmName\",\"AlarmRule\"],\"members\":{\"ActionsEnabled\":{\"type\":\"boolean\"},\"AlarmActions\":{\"shape\":\"S1f\"},\"AlarmDescription\":{},\"AlarmName\":{},\"AlarmRule\":{},\"InsufficientDataActions\":{\"shape\":\"S1f\"},\"OKActions\":{\"shape\":\"S1f\"},\"Tags\":{\"shape\":\"S52\"}}}},\"PutDashboard\":{\"input\":{\"type\":\"structure\",\"required\":[\"DashboardName\",\"DashboardBody\"],\"members\":{\"DashboardName\":{},\"DashboardBody\":{}}},\"output\":{\"resultWrapper\":\"PutDashboardResult\",\"type\":\"structure\",\"members\":{\"DashboardValidationMessages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DataPath\":{},\"Message\":{}}}}}}},\"PutInsightRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleName\",\"RuleDefinition\"],\"members\":{\"RuleName\":{},\"RuleState\":{},\"RuleDefinition\":{},\"Tags\":{\"shape\":\"S52\"}}},\"output\":{\"resultWrapper\":\"PutInsightRuleResult\",\"type\":\"structure\",\"members\":{}}},\"PutMetricAlarm\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlarmName\",\"EvaluationPeriods\",\"ComparisonOperator\"],\"members\":{\"AlarmName\":{},\"AlarmDescription\":{},\"ActionsEnabled\":{\"type\":\"boolean\"},\"OKActions\":{\"shape\":\"S1f\"},\"AlarmActions\":{\"shape\":\"S1f\"},\"InsufficientDataActions\":{\"shape\":\"S1f\"},\"MetricName\":{},\"Namespace\":{},\"Statistic\":{},\"ExtendedStatistic\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Period\":{\"type\":\"integer\"},\"Unit\":{},\"EvaluationPeriods\":{\"type\":\"integer\"},\"DatapointsToAlarm\":{\"type\":\"integer\"},\"Threshold\":{\"type\":\"double\"},\"ComparisonOperator\":{},\"TreatMissingData\":{},\"EvaluateLowSampleCountPercentile\":{},\"Metrics\":{\"shape\":\"S1y\"},\"Tags\":{\"shape\":\"S52\"},\"ThresholdMetricId\":{}}}},\"PutMetricData\":{\"input\":{\"type\":\"structure\",\"required\":[\"Namespace\",\"MetricData\"],\"members\":{\"Namespace\":{},\"MetricData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MetricName\"],\"members\":{\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Timestamp\":{\"type\":\"timestamp\"},\"Value\":{\"type\":\"double\"},\"StatisticValues\":{\"type\":\"structure\",\"required\":[\"SampleCount\",\"Sum\",\"Minimum\",\"Maximum\"],\"members\":{\"SampleCount\":{\"type\":\"double\"},\"Sum\":{\"type\":\"double\"},\"Minimum\":{\"type\":\"double\"},\"Maximum\":{\"type\":\"double\"}}},\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}},\"Counts\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}},\"Unit\":{},\"StorageResolution\":{\"type\":\"integer\"}}}}}}},\"PutMetricStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"FirehoseArn\",\"RoleArn\",\"OutputFormat\"],\"members\":{\"Name\":{},\"IncludeFilters\":{\"shape\":\"S49\"},\"ExcludeFilters\":{\"shape\":\"S49\"},\"FirehoseArn\":{},\"RoleArn\":{},\"OutputFormat\":{},\"Tags\":{\"shape\":\"S52\"}}},\"output\":{\"resultWrapper\":\"PutMetricStreamResult\",\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"SetAlarmState\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlarmName\",\"StateValue\",\"StateReason\"],\"members\":{\"AlarmName\":{},\"StateValue\":{},\"StateReason\":{},\"StateReasonData\":{}}}},\"StartMetricStreams\":{\"input\":{\"type\":\"structure\",\"required\":[\"Names\"],\"members\":{\"Names\":{\"shape\":\"S5t\"}}},\"output\":{\"resultWrapper\":\"StartMetricStreamsResult\",\"type\":\"structure\",\"members\":{}}},\"StopMetricStreams\":{\"input\":{\"type\":\"structure\",\"required\":[\"Names\"],\"members\":{\"Names\":{\"shape\":\"S5t\"}}},\"output\":{\"resultWrapper\":\"StopMetricStreamsResult\",\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S52\"}}},\"output\":{\"resultWrapper\":\"TagResourceResult\",\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"UntagResourceResult\",\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}},\"xmlOrder\":[\"Name\",\"Value\"]}},\"Si\":{\"type\":\"list\",\"member\":{}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailureResource\":{},\"ExceptionType\":{},\"FailureCode\":{},\"FailureDescription\":{}}}},\"Sv\":{\"type\":\"list\",\"member\":{}},\"S1f\":{\"type\":\"list\",\"member\":{}},\"S1m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlarmName\":{},\"AlarmArn\":{},\"AlarmDescription\":{},\"AlarmConfigurationUpdatedTimestamp\":{\"type\":\"timestamp\"},\"ActionsEnabled\":{\"type\":\"boolean\"},\"OKActions\":{\"shape\":\"S1f\"},\"AlarmActions\":{\"shape\":\"S1f\"},\"InsufficientDataActions\":{\"shape\":\"S1f\"},\"StateValue\":{},\"StateReason\":{},\"StateReasonData\":{},\"StateUpdatedTimestamp\":{\"type\":\"timestamp\"},\"MetricName\":{},\"Namespace\":{},\"Statistic\":{},\"ExtendedStatistic\":{},\"Dimensions\":{\"shape\":\"S7\"},\"Period\":{\"type\":\"integer\"},\"Unit\":{},\"EvaluationPeriods\":{\"type\":\"integer\"},\"DatapointsToAlarm\":{\"type\":\"integer\"},\"Threshold\":{\"type\":\"double\"},\"ComparisonOperator\":{},\"TreatMissingData\":{},\"EvaluateLowSampleCountPercentile\":{},\"Metrics\":{\"shape\":\"S1y\"},\"ThresholdMetricId\":{}},\"xmlOrder\":[\"AlarmName\",\"AlarmArn\",\"AlarmDescription\",\"AlarmConfigurationUpdatedTimestamp\",\"ActionsEnabled\",\"OKActions\",\"AlarmActions\",\"InsufficientDataActions\",\"StateValue\",\"StateReason\",\"StateReasonData\",\"StateUpdatedTimestamp\",\"MetricName\",\"Namespace\",\"Statistic\",\"Dimensions\",\"Period\",\"Unit\",\"EvaluationPeriods\",\"Threshold\",\"ComparisonOperator\",\"ExtendedStatistic\",\"TreatMissingData\",\"EvaluateLowSampleCountPercentile\",\"DatapointsToAlarm\",\"Metrics\",\"ThresholdMetricId\"]}},\"S1y\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"MetricStat\":{\"type\":\"structure\",\"required\":[\"Metric\",\"Period\",\"Stat\"],\"members\":{\"Metric\":{\"shape\":\"S22\"},\"Period\":{\"type\":\"integer\"},\"Stat\":{},\"Unit\":{}}},\"Expression\":{},\"Label\":{},\"ReturnData\":{\"type\":\"boolean\"},\"Period\":{\"type\":\"integer\"}}}},\"S22\":{\"type\":\"structure\",\"members\":{\"Namespace\":{},\"MetricName\":{},\"Dimensions\":{\"shape\":\"S7\"}},\"xmlOrder\":[\"Namespace\",\"MetricName\",\"Dimensions\"]},\"S2e\":{\"type\":\"structure\",\"members\":{\"ExcludedTimeRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}},\"xmlOrder\":[\"StartTime\",\"EndTime\"]}},\"MetricTimezone\":{}}},\"S3v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Value\":{}}}},\"S49\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Namespace\":{}}}},\"S52\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S5t\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 16758:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAlarmHistory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":\"AlarmHistoryItems\"},\"DescribeAlarms\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRecords\",\"output_token\":\"NextToken\",\"result_key\":[\"MetricAlarms\",\"CompositeAlarms\"]},\"DescribeAlarmsForMetric\":{\"result_key\":\"MetricAlarms\"},\"DescribeInsightRules\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetMetricData\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxDatapoints\",\"output_token\":\"NextToken\",\"result_key\":[\"MetricDataResults\",\"Messages\"]},\"ListDashboards\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"DashboardEntries\"},\"ListMetricStreams\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListMetrics\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Metrics\"}}}");

/***/ }),

/***/ 4112:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"AlarmExists\":{\"delay\":5,\"maxAttempts\":40,\"operation\":\"DescribeAlarms\",\"acceptors\":[{\"matcher\":\"path\",\"expected\":true,\"argument\":\"length(MetricAlarms[]) > `0`\",\"state\":\"success\"}]},\"CompositeAlarmExists\":{\"delay\":5,\"maxAttempts\":40,\"operation\":\"DescribeAlarms\",\"acceptors\":[{\"matcher\":\"path\",\"expected\":true,\"argument\":\"length(CompositeAlarms[]) > `0`\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 73219:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-11-27\",\"endpointPrefix\":\"mq\",\"signingName\":\"mq\",\"serviceFullName\":\"AmazonMQ\",\"serviceId\":\"mq\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"mq-2017-11-27\",\"signatureVersion\":\"v4\"},\"operations\":{\"CreateBroker\":{\"http\":{\"requestUri\":\"/v1/brokers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"AutoMinorVersionUpgrade\":{\"locationName\":\"autoMinorVersionUpgrade\",\"type\":\"boolean\"},\"BrokerName\":{\"locationName\":\"brokerName\"},\"Configuration\":{\"shape\":\"S5\",\"locationName\":\"configuration\"},\"CreatorRequestId\":{\"locationName\":\"creatorRequestId\",\"idempotencyToken\":true},\"DeploymentMode\":{\"locationName\":\"deploymentMode\"},\"EncryptionOptions\":{\"shape\":\"S8\",\"locationName\":\"encryptionOptions\"},\"EngineType\":{\"locationName\":\"engineType\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"HostInstanceType\":{\"locationName\":\"hostInstanceType\"},\"LdapServerMetadata\":{\"shape\":\"Sa\",\"locationName\":\"ldapServerMetadata\"},\"Logs\":{\"shape\":\"Sc\",\"locationName\":\"logs\"},\"MaintenanceWindowStartTime\":{\"shape\":\"Sd\",\"locationName\":\"maintenanceWindowStartTime\"},\"PubliclyAccessible\":{\"locationName\":\"publiclyAccessible\",\"type\":\"boolean\"},\"SecurityGroups\":{\"shape\":\"Sb\",\"locationName\":\"securityGroups\"},\"StorageType\":{\"locationName\":\"storageType\"},\"SubnetIds\":{\"shape\":\"Sb\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Users\":{\"locationName\":\"users\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConsoleAccess\":{\"locationName\":\"consoleAccess\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Sb\",\"locationName\":\"groups\"},\"Password\":{\"locationName\":\"password\"},\"Username\":{\"locationName\":\"username\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerArn\":{\"locationName\":\"brokerArn\"},\"BrokerId\":{\"locationName\":\"brokerId\"}}}},\"CreateConfiguration\":{\"http\":{\"requestUri\":\"/v1/configurations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"EngineType\":{\"locationName\":\"engineType\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"Name\":{\"locationName\":\"name\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"Id\":{\"locationName\":\"id\"},\"LatestRevision\":{\"shape\":\"Sn\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"}}}},\"CreateTags\":{\"http\":{\"requestUri\":\"/v1/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\"]}},\"CreateUser\":{\"http\":{\"requestUri\":\"/v1/brokers/{broker-id}/users/{username}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"},\"ConsoleAccess\":{\"locationName\":\"consoleAccess\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Sb\",\"locationName\":\"groups\"},\"Password\":{\"locationName\":\"password\"},\"Username\":{\"location\":\"uri\",\"locationName\":\"username\"}},\"required\":[\"Username\",\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteBroker\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/brokers/{broker-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"}},\"required\":[\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"locationName\":\"brokerId\"}}}},\"DeleteTags\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"shape\":\"Sb\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"DeleteUser\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/brokers/{broker-id}/users/{username}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"},\"Username\":{\"location\":\"uri\",\"locationName\":\"username\"}},\"required\":[\"Username\",\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeBroker\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/brokers/{broker-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"}},\"required\":[\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"AutoMinorVersionUpgrade\":{\"locationName\":\"autoMinorVersionUpgrade\",\"type\":\"boolean\"},\"BrokerArn\":{\"locationName\":\"brokerArn\"},\"BrokerId\":{\"locationName\":\"brokerId\"},\"BrokerInstances\":{\"locationName\":\"brokerInstances\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConsoleURL\":{\"locationName\":\"consoleURL\"},\"Endpoints\":{\"shape\":\"Sb\",\"locationName\":\"endpoints\"},\"IpAddress\":{\"locationName\":\"ipAddress\"}}}},\"BrokerName\":{\"locationName\":\"brokerName\"},\"BrokerState\":{\"locationName\":\"brokerState\"},\"Configurations\":{\"locationName\":\"configurations\",\"type\":\"structure\",\"members\":{\"Current\":{\"shape\":\"S5\",\"locationName\":\"current\"},\"History\":{\"locationName\":\"history\",\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"Pending\":{\"shape\":\"S5\",\"locationName\":\"pending\"}}},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"DeploymentMode\":{\"locationName\":\"deploymentMode\"},\"EncryptionOptions\":{\"shape\":\"S8\",\"locationName\":\"encryptionOptions\"},\"EngineType\":{\"locationName\":\"engineType\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"HostInstanceType\":{\"locationName\":\"hostInstanceType\"},\"LdapServerMetadata\":{\"shape\":\"S13\",\"locationName\":\"ldapServerMetadata\"},\"Logs\":{\"locationName\":\"logs\",\"type\":\"structure\",\"members\":{\"Audit\":{\"locationName\":\"audit\",\"type\":\"boolean\"},\"AuditLogGroup\":{\"locationName\":\"auditLogGroup\"},\"General\":{\"locationName\":\"general\",\"type\":\"boolean\"},\"GeneralLogGroup\":{\"locationName\":\"generalLogGroup\"},\"Pending\":{\"locationName\":\"pending\",\"type\":\"structure\",\"members\":{\"Audit\":{\"locationName\":\"audit\",\"type\":\"boolean\"},\"General\":{\"locationName\":\"general\",\"type\":\"boolean\"}}}}},\"MaintenanceWindowStartTime\":{\"shape\":\"Sd\",\"locationName\":\"maintenanceWindowStartTime\"},\"PendingAuthenticationStrategy\":{\"locationName\":\"pendingAuthenticationStrategy\"},\"PendingEngineVersion\":{\"locationName\":\"pendingEngineVersion\"},\"PendingHostInstanceType\":{\"locationName\":\"pendingHostInstanceType\"},\"PendingLdapServerMetadata\":{\"shape\":\"S13\",\"locationName\":\"pendingLdapServerMetadata\"},\"PendingSecurityGroups\":{\"shape\":\"Sb\",\"locationName\":\"pendingSecurityGroups\"},\"PubliclyAccessible\":{\"locationName\":\"publiclyAccessible\",\"type\":\"boolean\"},\"SecurityGroups\":{\"shape\":\"Sb\",\"locationName\":\"securityGroups\"},\"StorageType\":{\"locationName\":\"storageType\"},\"SubnetIds\":{\"shape\":\"Sb\",\"locationName\":\"subnetIds\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"},\"Users\":{\"shape\":\"S16\",\"locationName\":\"users\"}}}},\"DescribeBrokerEngineTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/broker-engine-types\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"EngineType\":{\"location\":\"querystring\",\"locationName\":\"engineType\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerEngineTypes\":{\"locationName\":\"brokerEngineTypes\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EngineType\":{\"locationName\":\"engineType\"},\"EngineVersions\":{\"locationName\":\"engineVersions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"}}}}}}},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeBrokerInstanceOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/broker-instance-options\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"EngineType\":{\"location\":\"querystring\",\"locationName\":\"engineType\"},\"HostInstanceType\":{\"location\":\"querystring\",\"locationName\":\"hostInstanceType\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"StorageType\":{\"location\":\"querystring\",\"locationName\":\"storageType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerInstanceOptions\":{\"locationName\":\"brokerInstanceOptions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"locationName\":\"availabilityZones\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"}}}},\"EngineType\":{\"locationName\":\"engineType\"},\"HostInstanceType\":{\"locationName\":\"hostInstanceType\"},\"StorageType\":{\"locationName\":\"storageType\"},\"SupportedDeploymentModes\":{\"locationName\":\"supportedDeploymentModes\",\"type\":\"list\",\"member\":{}},\"SupportedEngineVersions\":{\"shape\":\"Sb\",\"locationName\":\"supportedEngineVersions\"}}}},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"DescribeConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations/{configuration-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationId\":{\"location\":\"uri\",\"locationName\":\"configuration-id\"}},\"required\":[\"ConfigurationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"Description\":{\"locationName\":\"description\"},\"EngineType\":{\"locationName\":\"engineType\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"Id\":{\"locationName\":\"id\"},\"LatestRevision\":{\"shape\":\"Sn\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"DescribeConfigurationRevision\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations/{configuration-id}/revisions/{configuration-revision}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationId\":{\"location\":\"uri\",\"locationName\":\"configuration-id\"},\"ConfigurationRevision\":{\"location\":\"uri\",\"locationName\":\"configuration-revision\"}},\"required\":[\"ConfigurationRevision\",\"ConfigurationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationId\":{\"locationName\":\"configurationId\"},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"Data\":{\"locationName\":\"data\"},\"Description\":{\"locationName\":\"description\"}}}},\"DescribeUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/brokers/{broker-id}/users/{username}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"},\"Username\":{\"location\":\"uri\",\"locationName\":\"username\"}},\"required\":[\"Username\",\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"locationName\":\"brokerId\"},\"ConsoleAccess\":{\"locationName\":\"consoleAccess\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Sb\",\"locationName\":\"groups\"},\"Pending\":{\"locationName\":\"pending\",\"type\":\"structure\",\"members\":{\"ConsoleAccess\":{\"locationName\":\"consoleAccess\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Sb\",\"locationName\":\"groups\"},\"PendingChange\":{\"locationName\":\"pendingChange\"}}},\"Username\":{\"locationName\":\"username\"}}}},\"ListBrokers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/brokers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerSummaries\":{\"locationName\":\"brokerSummaries\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BrokerArn\":{\"locationName\":\"brokerArn\"},\"BrokerId\":{\"locationName\":\"brokerId\"},\"BrokerName\":{\"locationName\":\"brokerName\"},\"BrokerState\":{\"locationName\":\"brokerState\"},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"DeploymentMode\":{\"locationName\":\"deploymentMode\"},\"EngineType\":{\"locationName\":\"engineType\"},\"HostInstanceType\":{\"locationName\":\"hostInstanceType\"}}}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListConfigurationRevisions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations/{configuration-id}/revisions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationId\":{\"location\":\"uri\",\"locationName\":\"configuration-id\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ConfigurationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationId\":{\"locationName\":\"configurationId\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"Revisions\":{\"locationName\":\"revisions\",\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}}}}},\"ListConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/configurations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configurations\":{\"locationName\":\"configurations\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"Description\":{\"locationName\":\"description\"},\"EngineType\":{\"locationName\":\"engineType\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"Id\":{\"locationName\":\"id\"},\"LatestRevision\":{\"shape\":\"Sn\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"},\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sg\",\"locationName\":\"tags\"}}}},\"ListUsers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/brokers/{broker-id}/users\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"locationName\":\"brokerId\"},\"MaxResults\":{\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"locationName\":\"nextToken\"},\"Users\":{\"shape\":\"S16\",\"locationName\":\"users\"}}}},\"RebootBroker\":{\"http\":{\"requestUri\":\"/v1/brokers/{broker-id}/reboot\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"}},\"required\":[\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateBroker\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/brokers/{broker-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"AutoMinorVersionUpgrade\":{\"locationName\":\"autoMinorVersionUpgrade\",\"type\":\"boolean\"},\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"},\"Configuration\":{\"shape\":\"S5\",\"locationName\":\"configuration\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"HostInstanceType\":{\"locationName\":\"hostInstanceType\"},\"LdapServerMetadata\":{\"shape\":\"Sa\",\"locationName\":\"ldapServerMetadata\"},\"Logs\":{\"shape\":\"Sc\",\"locationName\":\"logs\"},\"SecurityGroups\":{\"shape\":\"Sb\",\"locationName\":\"securityGroups\"}},\"required\":[\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"AuthenticationStrategy\":{\"locationName\":\"authenticationStrategy\"},\"AutoMinorVersionUpgrade\":{\"locationName\":\"autoMinorVersionUpgrade\",\"type\":\"boolean\"},\"BrokerId\":{\"locationName\":\"brokerId\"},\"Configuration\":{\"shape\":\"S5\",\"locationName\":\"configuration\"},\"EngineVersion\":{\"locationName\":\"engineVersion\"},\"HostInstanceType\":{\"locationName\":\"hostInstanceType\"},\"LdapServerMetadata\":{\"shape\":\"S13\",\"locationName\":\"ldapServerMetadata\"},\"Logs\":{\"shape\":\"Sc\",\"locationName\":\"logs\"},\"SecurityGroups\":{\"shape\":\"Sb\",\"locationName\":\"securityGroups\"}}}},\"UpdateConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/configurations/{configuration-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationId\":{\"location\":\"uri\",\"locationName\":\"configuration-id\"},\"Data\":{\"locationName\":\"data\"},\"Description\":{\"locationName\":\"description\"}},\"required\":[\"ConfigurationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"Id\":{\"locationName\":\"id\"},\"LatestRevision\":{\"shape\":\"Sn\",\"locationName\":\"latestRevision\"},\"Name\":{\"locationName\":\"name\"},\"Warnings\":{\"locationName\":\"warnings\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{\"locationName\":\"attributeName\"},\"ElementName\":{\"locationName\":\"elementName\"},\"Reason\":{\"locationName\":\"reason\"}}}}}}},\"UpdateUser\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/brokers/{broker-id}/users/{username}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"BrokerId\":{\"location\":\"uri\",\"locationName\":\"broker-id\"},\"ConsoleAccess\":{\"locationName\":\"consoleAccess\",\"type\":\"boolean\"},\"Groups\":{\"shape\":\"Sb\",\"locationName\":\"groups\"},\"Password\":{\"locationName\":\"password\"},\"Username\":{\"location\":\"uri\",\"locationName\":\"username\"}},\"required\":[\"Username\",\"BrokerId\"]},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"Id\":{\"locationName\":\"id\"},\"Revision\":{\"locationName\":\"revision\",\"type\":\"integer\"}}},\"S8\":{\"type\":\"structure\",\"members\":{\"KmsKeyId\":{\"locationName\":\"kmsKeyId\"},\"UseAwsOwnedKey\":{\"locationName\":\"useAwsOwnedKey\",\"type\":\"boolean\"}},\"required\":[\"UseAwsOwnedKey\"]},\"Sa\":{\"type\":\"structure\",\"members\":{\"Hosts\":{\"shape\":\"Sb\",\"locationName\":\"hosts\"},\"RoleBase\":{\"locationName\":\"roleBase\"},\"RoleName\":{\"locationName\":\"roleName\"},\"RoleSearchMatching\":{\"locationName\":\"roleSearchMatching\"},\"RoleSearchSubtree\":{\"locationName\":\"roleSearchSubtree\",\"type\":\"boolean\"},\"ServiceAccountPassword\":{\"locationName\":\"serviceAccountPassword\"},\"ServiceAccountUsername\":{\"locationName\":\"serviceAccountUsername\"},\"UserBase\":{\"locationName\":\"userBase\"},\"UserRoleName\":{\"locationName\":\"userRoleName\"},\"UserSearchMatching\":{\"locationName\":\"userSearchMatching\"},\"UserSearchSubtree\":{\"locationName\":\"userSearchSubtree\",\"type\":\"boolean\"}}},\"Sb\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"structure\",\"members\":{\"Audit\":{\"locationName\":\"audit\",\"type\":\"boolean\"},\"General\":{\"locationName\":\"general\",\"type\":\"boolean\"}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"DayOfWeek\":{\"locationName\":\"dayOfWeek\"},\"TimeOfDay\":{\"locationName\":\"timeOfDay\"},\"TimeZone\":{\"locationName\":\"timeZone\"}}},\"Sg\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sm\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sn\":{\"type\":\"structure\",\"members\":{\"Created\":{\"shape\":\"Sm\",\"locationName\":\"created\"},\"Description\":{\"locationName\":\"description\"},\"Revision\":{\"locationName\":\"revision\",\"type\":\"integer\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"Hosts\":{\"shape\":\"Sb\",\"locationName\":\"hosts\"},\"RoleBase\":{\"locationName\":\"roleBase\"},\"RoleName\":{\"locationName\":\"roleName\"},\"RoleSearchMatching\":{\"locationName\":\"roleSearchMatching\"},\"RoleSearchSubtree\":{\"locationName\":\"roleSearchSubtree\",\"type\":\"boolean\"},\"ServiceAccountUsername\":{\"locationName\":\"serviceAccountUsername\"},\"UserBase\":{\"locationName\":\"userBase\"},\"UserRoleName\":{\"locationName\":\"userRoleName\"},\"UserSearchMatching\":{\"locationName\":\"userSearchMatching\"},\"UserSearchSubtree\":{\"locationName\":\"userSearchSubtree\",\"type\":\"boolean\"}}},\"S16\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PendingChange\":{\"locationName\":\"pendingChange\"},\"Username\":{\"locationName\":\"username\"}}}}},\"authorizers\":{\"authorization_strategy\":{\"name\":\"authorization_strategy\",\"type\":\"provided\",\"placement\":{\"location\":\"header\",\"name\":\"Authorization\"}}}}");

/***/ }),

/***/ 59835:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBrokers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"BrokerSummaries\"}}}");

/***/ }),

/***/ 55676:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-01-17\",\"endpointPrefix\":\"mturk-requester\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon MTurk\",\"serviceFullName\":\"Amazon Mechanical Turk\",\"serviceId\":\"MTurk\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"MTurkRequesterServiceV20170117\",\"uid\":\"mturk-requester-2017-01-17\"},\"operations\":{\"AcceptQualificationRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationRequestId\"],\"members\":{\"QualificationRequestId\":{},\"IntegerValue\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ApproveAssignment\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssignmentId\"],\"members\":{\"AssignmentId\":{},\"RequesterFeedback\":{},\"OverrideRejection\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"AssociateQualificationWithWorker\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\",\"WorkerId\"],\"members\":{\"QualificationTypeId\":{},\"WorkerId\":{},\"IntegerValue\":{\"type\":\"integer\"},\"SendNotification\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAdditionalAssignmentsForHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\",\"NumberOfAdditionalAssignments\"],\"members\":{\"HITId\":{},\"NumberOfAdditionalAssignments\":{\"type\":\"integer\"},\"UniqueRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"LifetimeInSeconds\",\"AssignmentDurationInSeconds\",\"Reward\",\"Title\",\"Description\"],\"members\":{\"MaxAssignments\":{\"type\":\"integer\"},\"AutoApprovalDelayInSeconds\":{\"type\":\"long\"},\"LifetimeInSeconds\":{\"type\":\"long\"},\"AssignmentDurationInSeconds\":{\"type\":\"long\"},\"Reward\":{},\"Title\":{},\"Keywords\":{},\"Description\":{},\"Question\":{},\"RequesterAnnotation\":{},\"QualificationRequirements\":{\"shape\":\"Si\"},\"UniqueRequestToken\":{},\"AssignmentReviewPolicy\":{\"shape\":\"Sq\"},\"HITReviewPolicy\":{\"shape\":\"Sq\"},\"HITLayoutId\":{},\"HITLayoutParameters\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HIT\":{\"shape\":\"Sz\"}}}},\"CreateHITType\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssignmentDurationInSeconds\",\"Reward\",\"Title\",\"Description\"],\"members\":{\"AutoApprovalDelayInSeconds\":{\"type\":\"long\"},\"AssignmentDurationInSeconds\":{\"type\":\"long\"},\"Reward\":{},\"Title\":{},\"Keywords\":{},\"Description\":{},\"QualificationRequirements\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HITTypeId\":{}}},\"idempotent\":true},\"CreateHITWithHITType\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITTypeId\",\"LifetimeInSeconds\"],\"members\":{\"HITTypeId\":{},\"MaxAssignments\":{\"type\":\"integer\"},\"LifetimeInSeconds\":{\"type\":\"long\"},\"Question\":{},\"RequesterAnnotation\":{},\"UniqueRequestToken\":{},\"AssignmentReviewPolicy\":{\"shape\":\"Sq\"},\"HITReviewPolicy\":{\"shape\":\"Sq\"},\"HITLayoutId\":{},\"HITLayoutParameters\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HIT\":{\"shape\":\"Sz\"}}}},\"CreateQualificationType\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Description\",\"QualificationTypeStatus\"],\"members\":{\"Name\":{},\"Keywords\":{},\"Description\":{},\"QualificationTypeStatus\":{},\"RetryDelayInSeconds\":{\"type\":\"long\"},\"Test\":{},\"AnswerKey\":{},\"TestDurationInSeconds\":{\"type\":\"long\"},\"AutoGranted\":{\"type\":\"boolean\"},\"AutoGrantedValue\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QualificationType\":{\"shape\":\"S1a\"}}}},\"CreateWorkerBlock\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkerId\",\"Reason\"],\"members\":{\"WorkerId\":{},\"Reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\"],\"members\":{\"HITId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteQualificationType\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\"],\"members\":{\"QualificationTypeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteWorkerBlock\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkerId\"],\"members\":{\"WorkerId\":{},\"Reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DisassociateQualificationFromWorker\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkerId\",\"QualificationTypeId\"],\"members\":{\"WorkerId\":{},\"QualificationTypeId\":{},\"Reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAccountBalance\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AvailableBalance\":{},\"OnHoldBalance\":{}}},\"idempotent\":true},\"GetAssignment\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssignmentId\"],\"members\":{\"AssignmentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Assignment\":{\"shape\":\"S1p\"},\"HIT\":{\"shape\":\"Sz\"}}},\"idempotent\":true},\"GetFileUploadURL\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssignmentId\",\"QuestionIdentifier\"],\"members\":{\"AssignmentId\":{},\"QuestionIdentifier\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileUploadURL\":{}}},\"idempotent\":true},\"GetHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\"],\"members\":{\"HITId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"HIT\":{\"shape\":\"Sz\"}}},\"idempotent\":true},\"GetQualificationScore\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\",\"WorkerId\"],\"members\":{\"QualificationTypeId\":{},\"WorkerId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Qualification\":{\"shape\":\"S1x\"}}},\"idempotent\":true},\"GetQualificationType\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\"],\"members\":{\"QualificationTypeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"QualificationType\":{\"shape\":\"S1a\"}}},\"idempotent\":true},\"ListAssignmentsForHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\"],\"members\":{\"HITId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"AssignmentStatuses\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NumResults\":{\"type\":\"integer\"},\"Assignments\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\"}}}},\"idempotent\":true},\"ListBonusPayments\":{\"input\":{\"type\":\"structure\",\"members\":{\"HITId\":{},\"AssignmentId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NumResults\":{\"type\":\"integer\"},\"NextToken\":{},\"BonusPayments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkerId\":{},\"BonusAmount\":{},\"AssignmentId\":{},\"Reason\":{},\"GrantTime\":{\"type\":\"timestamp\"}}}}}},\"idempotent\":true},\"ListHITs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NumResults\":{\"type\":\"integer\"},\"HITs\":{\"shape\":\"S2d\"}}},\"idempotent\":true},\"ListHITsForQualificationType\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\"],\"members\":{\"QualificationTypeId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NumResults\":{\"type\":\"integer\"},\"HITs\":{\"shape\":\"S2d\"}}},\"idempotent\":true},\"ListQualificationRequests\":{\"input\":{\"type\":\"structure\",\"members\":{\"QualificationTypeId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NumResults\":{\"type\":\"integer\"},\"NextToken\":{},\"QualificationRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"QualificationRequestId\":{},\"QualificationTypeId\":{},\"WorkerId\":{},\"Test\":{},\"Answer\":{},\"SubmitTime\":{\"type\":\"timestamp\"}}}}}},\"idempotent\":true},\"ListQualificationTypes\":{\"input\":{\"type\":\"structure\",\"required\":[\"MustBeRequestable\"],\"members\":{\"Query\":{},\"MustBeRequestable\":{\"type\":\"boolean\"},\"MustBeOwnedByCaller\":{\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NumResults\":{\"type\":\"integer\"},\"NextToken\":{},\"QualificationTypes\":{\"type\":\"list\",\"member\":{\"shape\":\"S1a\"}}}},\"idempotent\":true},\"ListReviewPolicyResultsForHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\"],\"members\":{\"HITId\":{},\"PolicyLevels\":{\"type\":\"list\",\"member\":{}},\"RetrieveActions\":{\"type\":\"boolean\"},\"RetrieveResults\":{\"type\":\"boolean\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HITId\":{},\"AssignmentReviewPolicy\":{\"shape\":\"Sq\"},\"HITReviewPolicy\":{\"shape\":\"Sq\"},\"AssignmentReviewReport\":{\"shape\":\"S2r\"},\"HITReviewReport\":{\"shape\":\"S2r\"},\"NextToken\":{}}},\"idempotent\":true},\"ListReviewableHITs\":{\"input\":{\"type\":\"structure\",\"members\":{\"HITTypeId\":{},\"Status\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NumResults\":{\"type\":\"integer\"},\"HITs\":{\"shape\":\"S2d\"}}},\"idempotent\":true},\"ListWorkerBlocks\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NumResults\":{\"type\":\"integer\"},\"WorkerBlocks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkerId\":{},\"Reason\":{}}}}}},\"idempotent\":true},\"ListWorkersWithQualificationType\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\"],\"members\":{\"QualificationTypeId\":{},\"Status\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NumResults\":{\"type\":\"integer\"},\"Qualifications\":{\"type\":\"list\",\"member\":{\"shape\":\"S1x\"}}}},\"idempotent\":true},\"NotifyWorkers\":{\"input\":{\"type\":\"structure\",\"required\":[\"Subject\",\"MessageText\",\"WorkerIds\"],\"members\":{\"Subject\":{},\"MessageText\":{},\"WorkerIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotifyWorkersFailureStatuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NotifyWorkersFailureCode\":{},\"NotifyWorkersFailureMessage\":{},\"WorkerId\":{}}}}}}},\"RejectAssignment\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssignmentId\",\"RequesterFeedback\"],\"members\":{\"AssignmentId\":{},\"RequesterFeedback\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"RejectQualificationRequest\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationRequestId\"],\"members\":{\"QualificationRequestId\":{},\"Reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendBonus\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkerId\",\"BonusAmount\",\"AssignmentId\",\"Reason\"],\"members\":{\"WorkerId\":{},\"BonusAmount\":{},\"AssignmentId\":{},\"Reason\":{},\"UniqueRequestToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendTestEventNotification\":{\"input\":{\"type\":\"structure\",\"required\":[\"Notification\",\"TestEventType\"],\"members\":{\"Notification\":{\"shape\":\"S3k\"},\"TestEventType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateExpirationForHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\",\"ExpireAt\"],\"members\":{\"HITId\":{},\"ExpireAt\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateHITReviewStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\"],\"members\":{\"HITId\":{},\"Revert\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateHITTypeOfHIT\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITId\",\"HITTypeId\"],\"members\":{\"HITId\":{},\"HITTypeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateNotificationSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"HITTypeId\"],\"members\":{\"HITTypeId\":{},\"Notification\":{\"shape\":\"S3k\"},\"Active\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateQualificationType\":{\"input\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\"],\"members\":{\"QualificationTypeId\":{},\"Description\":{},\"QualificationTypeStatus\":{},\"Test\":{},\"AnswerKey\":{},\"TestDurationInSeconds\":{\"type\":\"long\"},\"RetryDelayInSeconds\":{\"type\":\"long\"},\"AutoGranted\":{\"type\":\"boolean\"},\"AutoGrantedValue\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"QualificationType\":{\"shape\":\"S1a\"}}}}},\"shapes\":{\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"QualificationTypeId\",\"Comparator\"],\"members\":{\"QualificationTypeId\":{},\"Comparator\":{},\"IntegerValues\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"LocaleValues\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}},\"RequiredToPreview\":{\"deprecated\":true,\"type\":\"boolean\"},\"ActionsGuarded\":{}}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"Country\"],\"members\":{\"Country\":{},\"Subdivision\":{}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"PolicyName\"],\"members\":{\"PolicyName\":{},\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"shape\":\"St\"},\"MapEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"shape\":\"St\"}}}}}}}}},\"St\":{\"type\":\"list\",\"member\":{}},\"Sw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"HITId\":{},\"HITTypeId\":{},\"HITGroupId\":{},\"HITLayoutId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"Title\":{},\"Description\":{},\"Question\":{},\"Keywords\":{},\"HITStatus\":{},\"MaxAssignments\":{\"type\":\"integer\"},\"Reward\":{},\"AutoApprovalDelayInSeconds\":{\"type\":\"long\"},\"Expiration\":{\"type\":\"timestamp\"},\"AssignmentDurationInSeconds\":{\"type\":\"long\"},\"RequesterAnnotation\":{},\"QualificationRequirements\":{\"shape\":\"Si\"},\"HITReviewStatus\":{},\"NumberOfAssignmentsPending\":{\"type\":\"integer\"},\"NumberOfAssignmentsAvailable\":{\"type\":\"integer\"},\"NumberOfAssignmentsCompleted\":{\"type\":\"integer\"}}},\"S1a\":{\"type\":\"structure\",\"members\":{\"QualificationTypeId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"Name\":{},\"Description\":{},\"Keywords\":{},\"QualificationTypeStatus\":{},\"Test\":{},\"TestDurationInSeconds\":{\"type\":\"long\"},\"AnswerKey\":{},\"RetryDelayInSeconds\":{\"type\":\"long\"},\"IsRequestable\":{\"type\":\"boolean\"},\"AutoGranted\":{\"type\":\"boolean\"},\"AutoGrantedValue\":{\"type\":\"integer\"}}},\"S1p\":{\"type\":\"structure\",\"members\":{\"AssignmentId\":{},\"WorkerId\":{},\"HITId\":{},\"AssignmentStatus\":{},\"AutoApprovalTime\":{\"type\":\"timestamp\"},\"AcceptTime\":{\"type\":\"timestamp\"},\"SubmitTime\":{\"type\":\"timestamp\"},\"ApprovalTime\":{\"type\":\"timestamp\"},\"RejectionTime\":{\"type\":\"timestamp\"},\"Deadline\":{\"type\":\"timestamp\"},\"Answer\":{},\"RequesterFeedback\":{}}},\"S1x\":{\"type\":\"structure\",\"members\":{\"QualificationTypeId\":{},\"WorkerId\":{},\"GrantTime\":{\"type\":\"timestamp\"},\"IntegerValue\":{\"type\":\"integer\"},\"LocaleValue\":{\"shape\":\"Sn\"},\"Status\":{}}},\"S2d\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\"}},\"S2r\":{\"type\":\"structure\",\"members\":{\"ReviewResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionId\":{},\"SubjectId\":{},\"SubjectType\":{},\"QuestionId\":{},\"Key\":{},\"Value\":{}}}},\"ReviewActions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionId\":{},\"ActionName\":{},\"TargetId\":{},\"TargetType\":{},\"Status\":{},\"CompleteTime\":{\"type\":\"timestamp\"},\"Result\":{},\"ErrorCode\":{}}}}}},\"S3k\":{\"type\":\"structure\",\"required\":[\"Destination\",\"Transport\",\"Version\",\"EventTypes\"],\"members\":{\"Destination\":{},\"Transport\":{},\"Version\":{},\"EventTypes\":{\"type\":\"list\",\"member\":{}}}}}}");

/***/ }),

/***/ 51396:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAssignmentsForHIT\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListBonusPayments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListHITs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListHITsForQualificationType\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListQualificationRequests\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListQualificationTypes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListReviewPolicyResultsForHIT\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListReviewableHITs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWorkerBlocks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWorkersWithQualificationType\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 3499:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-07-01\",\"endpointPrefix\":\"airflow\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AmazonMWAA\",\"serviceId\":\"MWAA\",\"signatureVersion\":\"v4\",\"signingName\":\"airflow\",\"uid\":\"mwaa-2020-07-01\"},\"operations\":{\"CreateCliToken\":{\"http\":{\"requestUri\":\"/clitoken/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CliToken\":{\"type\":\"string\",\"sensitive\":true},\"WebServerHostname\":{}}},\"endpoint\":{\"hostPrefix\":\"env.\"}},\"CreateEnvironment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/environments/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DagS3Path\",\"ExecutionRoleArn\",\"Name\",\"NetworkConfiguration\",\"SourceBucketArn\"],\"members\":{\"AirflowConfigurationOptions\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"AirflowVersion\":{},\"DagS3Path\":{},\"EnvironmentClass\":{},\"ExecutionRoleArn\":{},\"KmsKey\":{},\"LoggingConfiguration\":{\"shape\":\"Sf\"},\"MaxWorkers\":{\"type\":\"integer\"},\"MinWorkers\":{\"type\":\"integer\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"},\"NetworkConfiguration\":{\"shape\":\"Sl\"},\"PluginsS3ObjectVersion\":{},\"PluginsS3Path\":{},\"RequirementsS3ObjectVersion\":{},\"RequirementsS3Path\":{},\"SourceBucketArn\":{},\"Tags\":{\"shape\":\"Ss\"},\"WebserverAccessMode\":{},\"WeeklyMaintenanceWindowStart\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"endpoint\":{\"hostPrefix\":\"api.\"},\"idempotent\":true},\"CreateWebLoginToken\":{\"http\":{\"requestUri\":\"/webtoken/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebServerHostname\":{},\"WebToken\":{\"type\":\"string\",\"sensitive\":true}}},\"endpoint\":{\"hostPrefix\":\"env.\"},\"idempotent\":true},\"DeleteEnvironment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/environments/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"api.\"},\"idempotent\":true},\"GetEnvironment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/environments/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Environment\":{\"type\":\"structure\",\"members\":{\"AirflowConfigurationOptions\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"AirflowVersion\":{},\"Arn\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"DagS3Path\":{},\"EnvironmentClass\":{},\"ExecutionRoleArn\":{},\"KmsKey\":{},\"LastUpdate\":{\"type\":\"structure\",\"members\":{\"CreatedAt\":{\"type\":\"timestamp\"},\"Error\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}},\"Status\":{}}},\"LoggingConfiguration\":{\"type\":\"structure\",\"members\":{\"DagProcessingLogs\":{\"shape\":\"S1g\"},\"SchedulerLogs\":{\"shape\":\"S1g\"},\"TaskLogs\":{\"shape\":\"S1g\"},\"WebserverLogs\":{\"shape\":\"S1g\"},\"WorkerLogs\":{\"shape\":\"S1g\"}}},\"MaxWorkers\":{\"type\":\"integer\"},\"MinWorkers\":{\"type\":\"integer\"},\"Name\":{},\"NetworkConfiguration\":{\"shape\":\"Sl\"},\"PluginsS3ObjectVersion\":{},\"PluginsS3Path\":{},\"RequirementsS3ObjectVersion\":{},\"RequirementsS3Path\":{},\"ServiceRoleArn\":{},\"SourceBucketArn\":{},\"Status\":{},\"Tags\":{\"shape\":\"Ss\"},\"WebserverAccessMode\":{},\"WebserverUrl\":{},\"WeeklyMaintenanceWindowStart\":{}}}}},\"endpoint\":{\"hostPrefix\":\"api.\"}},\"ListEnvironments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/environments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Environments\"],\"members\":{\"Environments\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"api.\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Ss\"}}},\"endpoint\":{\"hostPrefix\":\"api.\"}},\"PublishMetrics\":{\"http\":{\"requestUri\":\"/metrics/environments/{EnvironmentName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"EnvironmentName\",\"MetricData\"],\"members\":{\"EnvironmentName\":{\"location\":\"uri\",\"locationName\":\"EnvironmentName\"},\"MetricData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Timestamp\"],\"members\":{\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"MetricName\":{},\"StatisticValues\":{\"type\":\"structure\",\"members\":{\"Maximum\":{\"type\":\"double\"},\"Minimum\":{\"type\":\"double\"},\"SampleCount\":{\"type\":\"integer\"},\"Sum\":{\"type\":\"double\"}}},\"Timestamp\":{\"type\":\"timestamp\"},\"Unit\":{},\"Value\":{\"type\":\"double\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"ops.\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"api.\"}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"tagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"api.\"},\"idempotent\":true},\"UpdateEnvironment\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/environments/{Name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"AirflowConfigurationOptions\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"AirflowVersion\":{},\"DagS3Path\":{},\"EnvironmentClass\":{},\"ExecutionRoleArn\":{},\"LoggingConfiguration\":{\"shape\":\"Sf\"},\"MaxWorkers\":{\"type\":\"integer\"},\"MinWorkers\":{\"type\":\"integer\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"},\"NetworkConfiguration\":{\"type\":\"structure\",\"required\":[\"SecurityGroupIds\"],\"members\":{\"SecurityGroupIds\":{\"shape\":\"Sm\"}}},\"PluginsS3ObjectVersion\":{},\"PluginsS3Path\":{},\"RequirementsS3ObjectVersion\":{},\"RequirementsS3Path\":{},\"SourceBucketArn\":{},\"WebserverAccessMode\":{},\"WeeklyMaintenanceWindowStart\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"endpoint\":{\"hostPrefix\":\"api.\"}}},\"shapes\":{\"Sf\":{\"type\":\"structure\",\"members\":{\"DagProcessingLogs\":{\"shape\":\"Sg\"},\"SchedulerLogs\":{\"shape\":\"Sg\"},\"TaskLogs\":{\"shape\":\"Sg\"},\"WebserverLogs\":{\"shape\":\"Sg\"},\"WorkerLogs\":{\"shape\":\"Sg\"}}},\"Sg\":{\"type\":\"structure\",\"required\":[\"Enabled\",\"LogLevel\"],\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"LogLevel\":{}}},\"Sl\":{\"type\":\"structure\",\"members\":{\"SecurityGroupIds\":{\"shape\":\"Sm\"},\"SubnetIds\":{\"type\":\"list\",\"member\":{}}}},\"Sm\":{\"type\":\"list\",\"member\":{}},\"Ss\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1g\":{\"type\":\"structure\",\"members\":{\"CloudWatchLogGroupArn\":{},\"Enabled\":{\"type\":\"boolean\"},\"LogLevel\":{}}}}}");

/***/ }),

/***/ 30606:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListEnvironments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Environments\"}}}");

/***/ }),

/***/ 44749:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-10-31\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon Neptune\",\"serviceFullName\":\"Amazon Neptune\",\"serviceId\":\"Neptune\",\"signatureVersion\":\"v4\",\"signingName\":\"rds\",\"uid\":\"neptune-2014-10-31\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2014-10-31/\"},\"operations\":{\"AddRoleToDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"RoleArn\"],\"members\":{\"DBClusterIdentifier\":{},\"RoleArn\":{},\"FeatureName\":{}}}},\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S5\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"Sa\"}}}},\"ApplyPendingMaintenanceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceIdentifier\",\"ApplyAction\",\"OptInType\"],\"members\":{\"ResourceIdentifier\":{},\"ApplyAction\":{},\"OptInType\":{}}},\"output\":{\"resultWrapper\":\"ApplyPendingMaintenanceActionResult\",\"type\":\"structure\",\"members\":{\"ResourcePendingMaintenanceActions\":{\"shape\":\"Se\"}}}},\"CopyDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBClusterParameterGroupIdentifier\",\"TargetDBClusterParameterGroupIdentifier\",\"TargetDBClusterParameterGroupDescription\"],\"members\":{\"SourceDBClusterParameterGroupIdentifier\":{},\"TargetDBClusterParameterGroupIdentifier\":{},\"TargetDBClusterParameterGroupDescription\":{},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CopyDBClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBClusterParameterGroup\":{\"shape\":\"Sk\"}}}},\"CopyDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBClusterSnapshotIdentifier\",\"TargetDBClusterSnapshotIdentifier\"],\"members\":{\"SourceDBClusterSnapshotIdentifier\":{},\"TargetDBClusterSnapshotIdentifier\":{},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"CopyTags\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CopyDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"So\"}}}},\"CopyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBParameterGroupIdentifier\",\"TargetDBParameterGroupIdentifier\",\"TargetDBParameterGroupDescription\"],\"members\":{\"SourceDBParameterGroupIdentifier\":{},\"TargetDBParameterGroupIdentifier\":{},\"TargetDBParameterGroupDescription\":{},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CopyDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"St\"}}}},\"CreateDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"Engine\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"Sp\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"CharacterSetName\":{},\"DatabaseName\":{},\"DBClusterIdentifier\":{},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sw\"},\"DBSubnetGroupName\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"MasterUserPassword\":{},\"OptionGroupName\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"ReplicationSourceIdentifier\":{},\"Tags\":{\"shape\":\"Sa\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"Sx\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"CreateDBClusterEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"DBClusterEndpointIdentifier\",\"EndpointType\"],\"members\":{\"DBClusterIdentifier\":{},\"DBClusterEndpointIdentifier\":{},\"EndpointType\":{},\"StaticMembers\":{\"shape\":\"S1a\"},\"ExcludedMembers\":{\"shape\":\"S1a\"},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterEndpointResult\",\"type\":\"structure\",\"members\":{\"DBClusterEndpointIdentifier\":{},\"DBClusterIdentifier\":{},\"DBClusterEndpointResourceIdentifier\":{},\"Endpoint\":{},\"Status\":{},\"EndpointType\":{},\"CustomEndpointType\":{},\"StaticMembers\":{\"shape\":\"S1a\"},\"ExcludedMembers\":{\"shape\":\"S1a\"},\"DBClusterEndpointArn\":{}}}},\"CreateDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBClusterParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBClusterParameterGroup\":{\"shape\":\"Sk\"}}}},\"CreateDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\",\"DBClusterIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{},\"DBClusterIdentifier\":{},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"So\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBInstanceClass\",\"Engine\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"S1h\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sw\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CharacterSetName\":{},\"PubliclyAccessible\":{\"deprecated\":true,\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sa\"},\"DBClusterIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"Domain\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"MonitoringRoleArn\":{},\"DomainIAMRoleName\":{},\"PromotionTier\":{\"type\":\"integer\"},\"Timezone\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnablePerformanceInsights\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"EnableCloudwatchLogsExports\":{\"shape\":\"Sx\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S1j\"}}}},\"CreateDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CreateDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"St\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S26\"},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S1p\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S7\"},\"SourceIds\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sa\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S5\"}}}},\"DeleteDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"DeleteDBClusterEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterEndpointIdentifier\"],\"members\":{\"DBClusterEndpointIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterEndpointResult\",\"type\":\"structure\",\"members\":{\"DBClusterEndpointIdentifier\":{},\"DBClusterIdentifier\":{},\"DBClusterEndpointResourceIdentifier\":{},\"Endpoint\":{},\"Status\":{},\"EndpointType\":{},\"CustomEndpointType\":{},\"StaticMembers\":{\"shape\":\"S1a\"},\"ExcludedMembers\":{\"shape\":\"S1a\"},\"DBClusterEndpointArn\":{}}}},\"DeleteDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{}}}},\"DeleteDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"So\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S1j\"}}}},\"DeleteDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S5\"}}}},\"DescribeDBClusterEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"DBClusterEndpointIdentifier\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterEndpointsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterEndpoints\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterEndpointList\",\"type\":\"structure\",\"members\":{\"DBClusterEndpointIdentifier\":{},\"DBClusterIdentifier\":{},\"DBClusterEndpointResourceIdentifier\":{},\"Endpoint\":{},\"Status\":{},\"EndpointType\":{},\"CustomEndpointType\":{},\"StaticMembers\":{\"shape\":\"S1a\"},\"ExcludedMembers\":{\"shape\":\"S1a\"},\"DBClusterEndpointArn\":{}}}}}}},\"DescribeDBClusterParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\",\"locationName\":\"DBClusterParameterGroup\"}}}}},\"DescribeDBClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S2z\"},\"Marker\":{}}}},\"DescribeDBClusterSnapshotAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterSnapshotAttributesResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshotAttributesResult\":{\"shape\":\"S34\"}}}},\"DescribeDBClusterSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"DBClusterSnapshotIdentifier\":{},\"SnapshotType\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"IncludeShared\":{\"type\":\"boolean\"},\"IncludePublic\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"So\",\"locationName\":\"DBClusterSnapshot\"}}}}},\"DescribeDBClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClustersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusters\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\",\"locationName\":\"DBCluster\"}}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"},\"ListSupportedTimezones\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"DefaultCharacterSet\":{\"shape\":\"S3i\"},\"SupportedCharacterSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S3i\",\"locationName\":\"CharacterSet\"}},\"ValidUpgradeTarget\":{\"type\":\"list\",\"member\":{\"locationName\":\"UpgradeTarget\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"Description\":{},\"AutoUpgrade\":{\"type\":\"boolean\"},\"IsMajorVersionUpgrade\":{\"type\":\"boolean\"}}}},\"SupportedTimezones\":{\"type\":\"list\",\"member\":{\"locationName\":\"Timezone\",\"type\":\"structure\",\"members\":{\"TimezoneName\":{}}}},\"ExportableLogTypes\":{\"shape\":\"Sx\"},\"SupportsLogExportsToCloudwatchLogs\":{\"type\":\"boolean\"},\"SupportsReadReplica\":{\"type\":\"boolean\"}}}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"St\",\"locationName\":\"DBParameterGroup\"}}}}},\"DescribeDBParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S2z\"},\"Marker\":{}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultClusterParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"shape\":\"S41\"}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"shape\":\"S41\"}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Filters\":{\"shape\":\"S2o\"}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S7\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S7\"},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S7\"},\"Date\":{\"type\":\"timestamp\"},\"SourceArn\":{}}}}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"Vpc\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S2o\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S1s\",\"locationName\":\"AvailabilityZone\"}},\"MultiAZCapable\":{\"type\":\"boolean\"},\"ReadReplicaCapable\":{\"type\":\"boolean\"},\"Vpc\":{\"type\":\"boolean\"},\"SupportsStorageEncryption\":{\"type\":\"boolean\"},\"StorageType\":{},\"SupportsIops\":{\"type\":\"boolean\"},\"SupportsEnhancedMonitoring\":{\"type\":\"boolean\"},\"SupportsIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"SupportsPerformanceInsights\":{\"type\":\"boolean\"},\"MinStorageSize\":{\"type\":\"integer\"},\"MaxStorageSize\":{\"type\":\"integer\"},\"MinIopsPerDbInstance\":{\"type\":\"integer\"},\"MaxIopsPerDbInstance\":{\"type\":\"integer\"},\"MinIopsPerGib\":{\"type\":\"double\"},\"MaxIopsPerGib\":{\"type\":\"double\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribePendingMaintenanceActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"Filters\":{\"shape\":\"S2o\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribePendingMaintenanceActionsResult\",\"type\":\"structure\",\"members\":{\"PendingMaintenanceActions\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\",\"locationName\":\"ResourcePendingMaintenanceActions\"}},\"Marker\":{}}}},\"DescribeValidDBInstanceModifications\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DescribeValidDBInstanceModificationsResult\",\"type\":\"structure\",\"members\":{\"ValidDBInstanceModificationsMessage\":{\"type\":\"structure\",\"members\":{\"Storage\":{\"type\":\"list\",\"member\":{\"locationName\":\"ValidStorageOptions\",\"type\":\"structure\",\"members\":{\"StorageType\":{},\"StorageSize\":{\"shape\":\"S4u\"},\"ProvisionedIops\":{\"shape\":\"S4u\"},\"IopsToStorageRatio\":{\"type\":\"list\",\"member\":{\"locationName\":\"DoubleRange\",\"type\":\"structure\",\"members\":{\"From\":{\"type\":\"double\"},\"To\":{\"type\":\"double\"}}}}}}}},\"wrapper\":true}}}},\"FailoverDBCluster\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"TargetDBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"FailoverDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{},\"Filters\":{\"shape\":\"S2o\"}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"Sa\"}}}},\"ModifyDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"NewDBClusterIdentifier\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sw\"},\"Port\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"OptionGroupName\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"CloudwatchLogsExportConfiguration\":{\"shape\":\"S54\"},\"EngineVersion\":{},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"ModifyDBClusterEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterEndpointIdentifier\"],\"members\":{\"DBClusterEndpointIdentifier\":{},\"EndpointType\":{},\"StaticMembers\":{\"shape\":\"S1a\"},\"ExcludedMembers\":{\"shape\":\"S1a\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterEndpointResult\",\"type\":\"structure\",\"members\":{\"DBClusterEndpointIdentifier\":{},\"DBClusterIdentifier\":{},\"DBClusterEndpointResourceIdentifier\":{},\"Endpoint\":{},\"Status\":{},\"EndpointType\":{},\"CustomEndpointType\":{},\"StaticMembers\":{\"shape\":\"S1a\"},\"ExcludedMembers\":{\"shape\":\"S1a\"},\"DBClusterEndpointArn\":{}}}},\"ModifyDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\",\"Parameters\"],\"members\":{\"DBClusterParameterGroupName\":{},\"Parameters\":{\"shape\":\"S2z\"}}},\"output\":{\"shape\":\"S59\",\"resultWrapper\":\"ModifyDBClusterParameterGroupResult\"}},\"ModifyDBClusterSnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\",\"AttributeName\"],\"members\":{\"DBClusterSnapshotIdentifier\":{},\"AttributeName\":{},\"ValuesToAdd\":{\"shape\":\"S37\"},\"ValuesToRemove\":{\"shape\":\"S37\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterSnapshotAttributeResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshotAttributesResult\":{\"shape\":\"S34\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"DBSubnetGroupName\":{},\"DBSecurityGroups\":{\"shape\":\"S1h\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sw\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"MasterUserPassword\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"NewDBInstanceIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{},\"CACertificateIdentifier\":{},\"Domain\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"DBPortNumber\":{\"type\":\"integer\"},\"PubliclyAccessible\":{\"deprecated\":true,\"type\":\"boolean\"},\"MonitoringRoleArn\":{},\"DomainIAMRoleName\":{},\"PromotionTier\":{\"type\":\"integer\"},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnablePerformanceInsights\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"CloudwatchLogsExportConfiguration\":{\"shape\":\"S54\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S1j\"}}}},\"ModifyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"Parameters\"],\"members\":{\"DBParameterGroupName\":{},\"Parameters\":{\"shape\":\"S2z\"}}},\"output\":{\"shape\":\"S5f\",\"resultWrapper\":\"ModifyDBParameterGroupResult\"}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S26\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S1p\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S7\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S5\"}}}},\"PromoteReadReplicaDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S1j\"}}}},\"RemoveRoleFromDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"RoleArn\"],\"members\":{\"DBClusterIdentifier\":{},\"RoleArn\":{},\"FeatureName\":{}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S5\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S2z\"}}},\"output\":{\"shape\":\"S59\",\"resultWrapper\":\"ResetDBClusterParameterGroupResult\"}},\"ResetDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S2z\"}}},\"output\":{\"shape\":\"S5f\",\"resultWrapper\":\"ResetDBParameterGroupResult\"}},\"RestoreDBClusterFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"SnapshotIdentifier\",\"Engine\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"Sp\"},\"DBClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"DBSubnetGroupName\":{},\"DatabaseName\":{},\"OptionGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sw\"},\"Tags\":{\"shape\":\"Sa\"},\"KmsKeyId\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"Sx\"},\"DBClusterParameterGroupName\":{},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterFromSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"RestoreDBClusterToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"SourceDBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"RestoreType\":{},\"SourceDBClusterIdentifier\":{},\"RestoreToTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"DBSubnetGroupName\":{},\"OptionGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sw\"},\"Tags\":{\"shape\":\"Sa\"},\"KmsKeyId\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"Sx\"},\"DBClusterParameterGroupName\":{},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"StartDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StartDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}},\"StopDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StopDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"Sz\"}}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S6\"},\"EventCategoriesList\":{\"shape\":\"S7\"},\"Enabled\":{\"type\":\"boolean\"},\"EventSubscriptionArn\":{}},\"wrapper\":true},\"S6\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S7\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"Sa\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Se\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"PendingMaintenanceActionDetails\":{\"type\":\"list\",\"member\":{\"locationName\":\"PendingMaintenanceAction\",\"type\":\"structure\",\"members\":{\"Action\":{},\"AutoAppliedAfterDate\":{\"type\":\"timestamp\"},\"ForcedApplyDate\":{\"type\":\"timestamp\"},\"OptInStatus\":{},\"CurrentApplyDate\":{\"type\":\"timestamp\"},\"Description\":{}}}}},\"wrapper\":true},\"Sk\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"DBClusterParameterGroupArn\":{}},\"wrapper\":true},\"So\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"Sp\"},\"DBClusterSnapshotIdentifier\":{},\"DBClusterIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"VpcId\":{},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"PercentProgress\":{\"type\":\"integer\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DBClusterSnapshotArn\":{},\"SourceDBClusterSnapshotArn\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"}},\"wrapper\":true},\"Sp\":{\"type\":\"list\",\"member\":{\"locationName\":\"AvailabilityZone\"}},\"St\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"DBParameterGroupArn\":{}},\"wrapper\":true},\"Sw\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"Sx\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"structure\",\"members\":{\"AllocatedStorage\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"Sp\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"CharacterSetName\":{},\"DatabaseName\":{},\"DBClusterIdentifier\":{},\"DBClusterParameterGroup\":{},\"DBSubnetGroup\":{},\"Status\":{},\"PercentProgress\":{},\"EarliestRestorableTime\":{\"type\":\"timestamp\"},\"Endpoint\":{},\"ReaderEndpoint\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Engine\":{},\"EngineVersion\":{},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"DBClusterOptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterOptionGroup\",\"type\":\"structure\",\"members\":{\"DBClusterOptionGroupName\":{},\"Status\":{}}}},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"ReplicationSourceIdentifier\":{},\"ReadReplicaIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaIdentifier\"}},\"DBClusterMembers\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterMember\",\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"IsClusterWriter\":{\"type\":\"boolean\"},\"DBClusterParameterGroupStatus\":{},\"PromotionTier\":{\"type\":\"integer\"}},\"wrapper\":true}},\"VpcSecurityGroups\":{\"shape\":\"S15\"},\"HostedZoneId\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbClusterResourceId\":{},\"DBClusterArn\":{},\"AssociatedRoles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterRole\",\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"Status\":{},\"FeatureName\":{}}}},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"CloneGroupId\":{},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"EnabledCloudwatchLogsExports\":{\"shape\":\"Sx\"},\"DeletionProtection\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S15\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S1a\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroupName\"}},\"S1j\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"},\"HostedZoneId\":{}}},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBSecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroup\",\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Status\":{}}}},\"VpcSecurityGroups\":{\"shape\":\"S15\"},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBParameterGroup\",\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S1p\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{},\"StorageType\":{},\"CACertificateIdentifier\":{},\"DBSubnetGroupName\":{},\"PendingCloudwatchLogsExports\":{\"type\":\"structure\",\"members\":{\"LogTypesToEnable\":{\"shape\":\"Sx\"},\"LogTypesToDisable\":{\"shape\":\"Sx\"}}}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBInstanceIdentifier\"}},\"ReadReplicaDBClusterIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBClusterIdentifier\"}},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupMembership\",\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}}},\"CharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"PubliclyAccessible\":{\"deprecated\":true,\"type\":\"boolean\"},\"StatusInfos\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceStatusInfo\",\"type\":\"structure\",\"members\":{\"StatusType\":{},\"Normal\":{\"type\":\"boolean\"},\"Status\":{},\"Message\":{}}}},\"StorageType\":{},\"TdeCredentialArn\":{},\"DbInstancePort\":{\"type\":\"integer\"},\"DBClusterIdentifier\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbiResourceId\":{},\"CACertificateIdentifier\":{},\"DomainMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"DomainMembership\",\"type\":\"structure\",\"members\":{\"Domain\":{},\"Status\":{},\"FQDN\":{},\"IAMRoleName\":{}}}},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"EnhancedMonitoringResourceArn\":{},\"MonitoringRoleArn\":{},\"PromotionTier\":{\"type\":\"integer\"},\"DBInstanceArn\":{},\"Timezone\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"PerformanceInsightsEnabled\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"EnabledCloudwatchLogsExports\":{\"shape\":\"Sx\"},\"DeletionProtection\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S1p\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S1s\"},\"SubnetStatus\":{}}}},\"DBSubnetGroupArn\":{}},\"wrapper\":true},\"S1s\":{\"type\":\"structure\",\"members\":{\"Name\":{}},\"wrapper\":true},\"S26\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S2o\":{\"type\":\"list\",\"member\":{\"locationName\":\"Filter\",\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"locationName\":\"Value\"}}}}},\"S2z\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{}}}},\"S34\":{\"type\":\"structure\",\"members\":{\"DBClusterSnapshotIdentifier\":{},\"DBClusterSnapshotAttributes\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterSnapshotAttribute\",\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValues\":{\"shape\":\"S37\"}}}}},\"wrapper\":true},\"S37\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeValue\"}},\"S3i\":{\"type\":\"structure\",\"members\":{\"CharacterSetName\":{},\"CharacterSetDescription\":{}}},\"S41\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S2z\"}},\"wrapper\":true},\"S4u\":{\"type\":\"list\",\"member\":{\"locationName\":\"Range\",\"type\":\"structure\",\"members\":{\"From\":{\"type\":\"integer\"},\"To\":{\"type\":\"integer\"},\"Step\":{\"type\":\"integer\"}}}},\"S54\":{\"type\":\"structure\",\"members\":{\"EnableLogTypes\":{\"shape\":\"Sx\"},\"DisableLogTypes\":{\"shape\":\"Sx\"}}},\"S59\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{}}},\"S5f\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{}}}}}");

/***/ }),

/***/ 36058:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDBClusterEndpoints\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterEndpoints\"},\"DescribeDBEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBEngineVersions\"},\"DescribeDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstances\"},\"DescribeDBParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBParameterGroups\"},\"DescribeDBParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSubnetGroups\"},\"DescribeEngineDefaultParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"EngineDefaults.Marker\",\"result_key\":\"EngineDefaults.Parameters\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeOrderableDBInstanceOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableDBInstanceOptions\"},\"ListTagsForResource\":{\"result_key\":\"TagList\"}}}");

/***/ }),

/***/ 83629:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DBInstanceAvailable\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]},\"DBInstanceDeleted\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"DBInstanceNotFound\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"resetting-master-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]}}}");

/***/ }),

/***/ 71930:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-11-12\",\"endpointPrefix\":\"network-firewall\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Network Firewall\",\"serviceFullName\":\"AWS Network Firewall\",\"serviceId\":\"Network Firewall\",\"signatureVersion\":\"v4\",\"signingName\":\"network-firewall\",\"targetPrefix\":\"NetworkFirewall_20201112\",\"uid\":\"network-firewall-2020-11-12\"},\"operations\":{\"AssociateFirewallPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallPolicyArn\"],\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"FirewallPolicyArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"FirewallPolicyArn\":{},\"UpdateToken\":{}}}},\"AssociateSubnets\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetMappings\"],\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"SubnetMappings\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"SubnetMappings\":{\"shape\":\"S7\"},\"UpdateToken\":{}}}},\"CreateFirewall\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallName\",\"FirewallPolicyArn\",\"VpcId\",\"SubnetMappings\"],\"members\":{\"FirewallName\":{},\"FirewallPolicyArn\":{},\"VpcId\":{},\"SubnetMappings\":{\"shape\":\"S7\"},\"DeleteProtection\":{\"type\":\"boolean\"},\"SubnetChangeProtection\":{\"type\":\"boolean\"},\"FirewallPolicyChangeProtection\":{\"type\":\"boolean\"},\"Description\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Firewall\":{\"shape\":\"Sk\"},\"FirewallStatus\":{\"shape\":\"Sm\"}}}},\"CreateFirewallPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallPolicyName\",\"FirewallPolicy\"],\"members\":{\"FirewallPolicyName\":{},\"FirewallPolicy\":{\"shape\":\"S10\"},\"Description\":{},\"Tags\":{\"shape\":\"Sf\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"FirewallPolicyResponse\"],\"members\":{\"UpdateToken\":{},\"FirewallPolicyResponse\":{\"shape\":\"S1g\"}}}},\"CreateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupName\",\"Type\",\"Capacity\"],\"members\":{\"RuleGroupName\":{},\"RuleGroup\":{\"shape\":\"S1j\"},\"Rules\":{},\"Type\":{},\"Description\":{},\"Capacity\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"Sf\"},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"RuleGroupResponse\"],\"members\":{\"UpdateToken\":{},\"RuleGroupResponse\":{\"shape\":\"S2x\"}}}},\"DeleteFirewall\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallName\":{},\"FirewallArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Firewall\":{\"shape\":\"Sk\"},\"FirewallStatus\":{\"shape\":\"Sm\"}}}},\"DeleteFirewallPolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallPolicyName\":{},\"FirewallPolicyArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"FirewallPolicyResponse\"],\"members\":{\"FirewallPolicyResponse\":{\"shape\":\"S1g\"}}}},\"DeleteResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRuleGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"RuleGroupName\":{},\"RuleGroupArn\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"RuleGroupResponse\"],\"members\":{\"RuleGroupResponse\":{\"shape\":\"S2x\"}}}},\"DescribeFirewall\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallName\":{},\"FirewallArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpdateToken\":{},\"Firewall\":{\"shape\":\"Sk\"},\"FirewallStatus\":{\"shape\":\"Sm\"}}}},\"DescribeFirewallPolicy\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallPolicyName\":{},\"FirewallPolicyArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"FirewallPolicyResponse\"],\"members\":{\"UpdateToken\":{},\"FirewallPolicyResponse\":{\"shape\":\"S1g\"},\"FirewallPolicy\":{\"shape\":\"S10\"}}}},\"DescribeLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"LoggingConfiguration\":{\"shape\":\"S3c\"}}}},\"DescribeResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"DescribeRuleGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"RuleGroupName\":{},\"RuleGroupArn\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"RuleGroupResponse\"],\"members\":{\"UpdateToken\":{},\"RuleGroup\":{\"shape\":\"S1j\"},\"RuleGroupResponse\":{\"shape\":\"S2x\"}}}},\"DisassociateSubnets\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetIds\"],\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"SubnetIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"SubnetMappings\":{\"shape\":\"S7\"},\"UpdateToken\":{}}}},\"ListFirewallPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FirewallPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{}}}}}}},\"ListFirewalls\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"VpcIds\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Firewalls\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FirewallName\":{},\"FirewallArn\":{}}}}}}},\"ListRuleGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"RuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Tags\":{\"shape\":\"Sf\"}}}},\"PutResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Policy\"],\"members\":{\"ResourceArn\":{},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFirewallDeleteProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeleteProtection\"],\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"DeleteProtection\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"DeleteProtection\":{\"type\":\"boolean\"},\"UpdateToken\":{}}}},\"UpdateFirewallDescription\":{\"input\":{\"type\":\"structure\",\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"Description\":{},\"UpdateToken\":{}}}},\"UpdateFirewallPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"FirewallPolicy\"],\"members\":{\"UpdateToken\":{},\"FirewallPolicyArn\":{},\"FirewallPolicyName\":{},\"FirewallPolicy\":{\"shape\":\"S10\"},\"Description\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"FirewallPolicyResponse\"],\"members\":{\"UpdateToken\":{},\"FirewallPolicyResponse\":{\"shape\":\"S1g\"}}}},\"UpdateFirewallPolicyChangeProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallPolicyChangeProtection\"],\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"FirewallPolicyChangeProtection\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"FirewallPolicyChangeProtection\":{\"type\":\"boolean\"}}}},\"UpdateLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"LoggingConfiguration\":{\"shape\":\"S3c\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallArn\":{},\"FirewallName\":{},\"LoggingConfiguration\":{\"shape\":\"S3c\"}}}},\"UpdateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"UpdateToken\"],\"members\":{\"UpdateToken\":{},\"RuleGroupArn\":{},\"RuleGroupName\":{},\"RuleGroup\":{\"shape\":\"S1j\"},\"Rules\":{},\"Type\":{},\"Description\":{},\"DryRun\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"UpdateToken\",\"RuleGroupResponse\"],\"members\":{\"UpdateToken\":{},\"RuleGroupResponse\":{\"shape\":\"S2x\"}}}},\"UpdateSubnetChangeProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubnetChangeProtection\"],\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"SubnetChangeProtection\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpdateToken\":{},\"FirewallArn\":{},\"FirewallName\":{},\"SubnetChangeProtection\":{\"type\":\"boolean\"}}}}},\"shapes\":{\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SubnetId\"],\"members\":{\"SubnetId\":{}}}},\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"FirewallPolicyArn\",\"VpcId\",\"SubnetMappings\",\"FirewallId\"],\"members\":{\"FirewallName\":{},\"FirewallArn\":{},\"FirewallPolicyArn\":{},\"VpcId\":{},\"SubnetMappings\":{\"shape\":\"S7\"},\"DeleteProtection\":{\"type\":\"boolean\"},\"SubnetChangeProtection\":{\"type\":\"boolean\"},\"FirewallPolicyChangeProtection\":{\"type\":\"boolean\"},\"Description\":{},\"FirewallId\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"Sm\":{\"type\":\"structure\",\"required\":[\"Status\",\"ConfigurationSyncStateSummary\"],\"members\":{\"Status\":{},\"ConfigurationSyncStateSummary\":{},\"SyncStates\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Attachment\":{\"type\":\"structure\",\"members\":{\"SubnetId\":{},\"EndpointId\":{},\"Status\":{}}},\"Config\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"SyncStatus\":{},\"UpdateToken\":{}}}}}}}}},\"S10\":{\"type\":\"structure\",\"required\":[\"StatelessDefaultActions\",\"StatelessFragmentDefaultActions\"],\"members\":{\"StatelessRuleGroupReferences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Priority\"],\"members\":{\"ResourceArn\":{},\"Priority\":{\"type\":\"integer\"}}}},\"StatelessDefaultActions\":{\"shape\":\"S14\"},\"StatelessFragmentDefaultActions\":{\"shape\":\"S14\"},\"StatelessCustomActions\":{\"shape\":\"S15\"},\"StatefulRuleGroupReferences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}}}}},\"S14\":{\"type\":\"list\",\"member\":{}},\"S15\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ActionName\",\"ActionDefinition\"],\"members\":{\"ActionName\":{},\"ActionDefinition\":{\"type\":\"structure\",\"members\":{\"PublishMetricAction\":{\"type\":\"structure\",\"required\":[\"Dimensions\"],\"members\":{\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Value\"],\"members\":{\"Value\":{}}}}}}}}}}},\"S1g\":{\"type\":\"structure\",\"required\":[\"FirewallPolicyName\",\"FirewallPolicyArn\",\"FirewallPolicyId\"],\"members\":{\"FirewallPolicyName\":{},\"FirewallPolicyArn\":{},\"FirewallPolicyId\":{},\"Description\":{},\"FirewallPolicyStatus\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"S1j\":{\"type\":\"structure\",\"required\":[\"RulesSource\"],\"members\":{\"RuleVariables\":{\"type\":\"structure\",\"members\":{\"IPSets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Definition\"],\"members\":{\"Definition\":{\"shape\":\"S1o\"}}}},\"PortSets\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Definition\":{\"shape\":\"S1o\"}}}}}},\"RulesSource\":{\"type\":\"structure\",\"members\":{\"RulesString\":{},\"RulesSourceList\":{\"type\":\"structure\",\"required\":[\"Targets\",\"TargetTypes\",\"GeneratedRulesType\"],\"members\":{\"Targets\":{\"type\":\"list\",\"member\":{}},\"TargetTypes\":{\"type\":\"list\",\"member\":{}},\"GeneratedRulesType\":{}}},\"StatefulRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"Header\",\"RuleOptions\"],\"members\":{\"Action\":{},\"Header\":{\"type\":\"structure\",\"required\":[\"Protocol\",\"Source\",\"SourcePort\",\"Direction\",\"Destination\",\"DestinationPort\"],\"members\":{\"Protocol\":{},\"Source\":{},\"SourcePort\":{},\"Direction\":{},\"Destination\":{},\"DestinationPort\":{}}},\"RuleOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Keyword\"],\"members\":{\"Keyword\":{},\"Settings\":{\"type\":\"list\",\"member\":{}}}}}}}},\"StatelessRulesAndCustomActions\":{\"type\":\"structure\",\"required\":[\"StatelessRules\"],\"members\":{\"StatelessRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleDefinition\",\"Priority\"],\"members\":{\"RuleDefinition\":{\"type\":\"structure\",\"required\":[\"MatchAttributes\",\"Actions\"],\"members\":{\"MatchAttributes\":{\"type\":\"structure\",\"members\":{\"Sources\":{\"shape\":\"S2i\"},\"Destinations\":{\"shape\":\"S2i\"},\"SourcePorts\":{\"shape\":\"S2l\"},\"DestinationPorts\":{\"shape\":\"S2l\"},\"Protocols\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"TCPFlags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Flags\"],\"members\":{\"Flags\":{\"shape\":\"S2s\"},\"Masks\":{\"shape\":\"S2s\"}}}}}},\"Actions\":{\"shape\":\"S14\"}}},\"Priority\":{\"type\":\"integer\"}}}},\"CustomActions\":{\"shape\":\"S15\"}}}}}}},\"S1o\":{\"type\":\"list\",\"member\":{}},\"S2i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AddressDefinition\"],\"members\":{\"AddressDefinition\":{}}}},\"S2l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FromPort\",\"ToPort\"],\"members\":{\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"}}}},\"S2s\":{\"type\":\"list\",\"member\":{}},\"S2x\":{\"type\":\"structure\",\"required\":[\"RuleGroupArn\",\"RuleGroupName\",\"RuleGroupId\"],\"members\":{\"RuleGroupArn\":{},\"RuleGroupName\":{},\"RuleGroupId\":{},\"Description\":{},\"Type\":{},\"Capacity\":{\"type\":\"integer\"},\"RuleGroupStatus\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"S3c\":{\"type\":\"structure\",\"required\":[\"LogDestinationConfigs\"],\"members\":{\"LogDestinationConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LogType\",\"LogDestinationType\",\"LogDestination\"],\"members\":{\"LogType\":{},\"LogDestinationType\":{},\"LogDestination\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}}}");

/***/ }),

/***/ 50334:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListFirewallPolicies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FirewallPolicies\"},\"ListFirewalls\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Firewalls\"},\"ListRuleGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"RuleGroups\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Tags\"}}}");

/***/ }),

/***/ 11902:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-07-05\",\"endpointPrefix\":\"networkmanager\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"NetworkManager\",\"serviceFullName\":\"AWS Network Manager\",\"serviceId\":\"NetworkManager\",\"signatureVersion\":\"v4\",\"signingName\":\"networkmanager\",\"uid\":\"networkmanager-2019-07-05\"},\"operations\":{\"AssociateCustomerGateway\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/customer-gateway-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"CustomerGatewayArn\",\"GlobalNetworkId\",\"DeviceId\"],\"members\":{\"CustomerGatewayArn\":{},\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{},\"LinkId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomerGatewayAssociation\":{\"shape\":\"S4\"}}}},\"AssociateLink\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/link-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"DeviceId\",\"LinkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{},\"LinkId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LinkAssociation\":{\"shape\":\"S8\"}}}},\"AssociateTransitGatewayConnectPeer\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/transit-gateway-connect-peer-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"TransitGatewayConnectPeerArn\",\"DeviceId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"TransitGatewayConnectPeerArn\":{},\"DeviceId\":{},\"LinkId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeerAssociation\":{\"shape\":\"Sc\"}}}},\"CreateConnection\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/connections\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"DeviceId\",\"ConnectedDeviceId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{},\"ConnectedDeviceId\":{},\"LinkId\":{},\"ConnectedLinkId\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"Sk\"}}}},\"CreateDevice\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/devices\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"AWSLocation\":{\"shape\":\"So\"},\"Description\":{},\"Type\":{},\"Vendor\":{},\"Model\":{},\"SerialNumber\":{},\"Location\":{\"shape\":\"Sp\"},\"SiteId\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Device\":{\"shape\":\"Sr\"}}}},\"CreateGlobalNetwork\":{\"http\":{\"requestUri\":\"/global-networks\"},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalNetwork\":{\"shape\":\"Sv\"}}}},\"CreateLink\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/links\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"Bandwidth\",\"SiteId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"Description\":{},\"Type\":{},\"Bandwidth\":{\"shape\":\"Sy\"},\"Provider\":{},\"SiteId\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Link\":{\"shape\":\"S11\"}}}},\"CreateSite\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/sites\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"Description\":{},\"Location\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Site\":{\"shape\":\"S15\"}}}},\"DeleteConnection\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/connections/{connectionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"ConnectionId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"ConnectionId\":{\"location\":\"uri\",\"locationName\":\"connectionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"Sk\"}}}},\"DeleteDevice\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/devices/{deviceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"DeviceId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Device\":{\"shape\":\"Sr\"}}}},\"DeleteGlobalNetwork\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalNetwork\":{\"shape\":\"Sv\"}}}},\"DeleteLink\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/links/{linkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"LinkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"LinkId\":{\"location\":\"uri\",\"locationName\":\"linkId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Link\":{\"shape\":\"S11\"}}}},\"DeleteSite\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/sites/{siteId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"SiteId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"SiteId\":{\"location\":\"uri\",\"locationName\":\"siteId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Site\":{\"shape\":\"S15\"}}}},\"DeregisterTransitGateway\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/transit-gateway-registrations/{transitGatewayArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"TransitGatewayArn\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"TransitGatewayArn\":{\"location\":\"uri\",\"locationName\":\"transitGatewayArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRegistration\":{\"shape\":\"S1j\"}}}},\"DescribeGlobalNetworks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks\"},\"input\":{\"type\":\"structure\",\"members\":{\"GlobalNetworkIds\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"globalNetworkIds\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalNetworks\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}},\"NextToken\":{}}}},\"DisassociateCustomerGateway\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/customer-gateway-associations/{customerGatewayArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"CustomerGatewayArn\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"CustomerGatewayArn\":{\"location\":\"uri\",\"locationName\":\"customerGatewayArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomerGatewayAssociation\":{\"shape\":\"S4\"}}}},\"DisassociateLink\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/link-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"DeviceId\",\"LinkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{\"location\":\"querystring\",\"locationName\":\"deviceId\"},\"LinkId\":{\"location\":\"querystring\",\"locationName\":\"linkId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LinkAssociation\":{\"shape\":\"S8\"}}}},\"DisassociateTransitGatewayConnectPeer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/global-networks/{globalNetworkId}/transit-gateway-connect-peer-associations/{transitGatewayConnectPeerArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"TransitGatewayConnectPeerArn\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"TransitGatewayConnectPeerArn\":{\"location\":\"uri\",\"locationName\":\"transitGatewayConnectPeerArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeerAssociation\":{\"shape\":\"Sc\"}}}},\"GetConnections\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/connections\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"ConnectionIds\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"connectionIds\"},\"DeviceId\":{\"location\":\"querystring\",\"locationName\":\"deviceId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connections\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\"}},\"NextToken\":{}}}},\"GetCustomerGatewayAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/customer-gateway-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"CustomerGatewayArns\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"customerGatewayArns\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomerGatewayAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"NextToken\":{}}}},\"GetDevices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/devices\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceIds\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"deviceIds\"},\"SiteId\":{\"location\":\"querystring\",\"locationName\":\"siteId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\"}},\"NextToken\":{}}}},\"GetLinkAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/link-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{\"location\":\"querystring\",\"locationName\":\"deviceId\"},\"LinkId\":{\"location\":\"querystring\",\"locationName\":\"linkId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LinkAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"NextToken\":{}}}},\"GetLinks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/links\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"LinkIds\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"linkIds\"},\"SiteId\":{\"location\":\"querystring\",\"locationName\":\"siteId\"},\"Type\":{\"location\":\"querystring\",\"locationName\":\"type\"},\"Provider\":{\"location\":\"querystring\",\"locationName\":\"provider\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Links\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\"}},\"NextToken\":{}}}},\"GetSites\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/sites\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"SiteIds\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"siteIds\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sites\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}},\"NextToken\":{}}}},\"GetTransitGatewayConnectPeerAssociations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/transit-gateway-connect-peer-associations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"TransitGatewayConnectPeerArns\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"transitGatewayConnectPeerArns\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeerAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"NextToken\":{}}}},\"GetTransitGatewayRegistrations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/global-networks/{globalNetworkId}/transit-gateway-registrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"TransitGatewayArns\":{\"shape\":\"S1n\",\"location\":\"querystring\",\"locationName\":\"transitGatewayArns\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRegistrations\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"Sf\"}}}},\"RegisterTransitGateway\":{\"http\":{\"requestUri\":\"/global-networks/{globalNetworkId}/transit-gateway-registrations\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"TransitGatewayArn\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"TransitGatewayArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TransitGatewayRegistration\":{\"shape\":\"S1j\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateConnection\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/global-networks/{globalNetworkId}/connections/{connectionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"ConnectionId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"ConnectionId\":{\"location\":\"uri\",\"locationName\":\"connectionId\"},\"LinkId\":{},\"ConnectedLinkId\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Connection\":{\"shape\":\"Sk\"}}}},\"UpdateDevice\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/global-networks/{globalNetworkId}/devices/{deviceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"DeviceId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"DeviceId\":{\"location\":\"uri\",\"locationName\":\"deviceId\"},\"AWSLocation\":{\"shape\":\"So\"},\"Description\":{},\"Type\":{},\"Vendor\":{},\"Model\":{},\"SerialNumber\":{},\"Location\":{\"shape\":\"Sp\"},\"SiteId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Device\":{\"shape\":\"Sr\"}}}},\"UpdateGlobalNetwork\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/global-networks/{globalNetworkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GlobalNetwork\":{\"shape\":\"Sv\"}}}},\"UpdateLink\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/global-networks/{globalNetworkId}/links/{linkId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"LinkId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"LinkId\":{\"location\":\"uri\",\"locationName\":\"linkId\"},\"Description\":{},\"Type\":{},\"Bandwidth\":{\"shape\":\"Sy\"},\"Provider\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Link\":{\"shape\":\"S11\"}}}},\"UpdateSite\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/global-networks/{globalNetworkId}/sites/{siteId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GlobalNetworkId\",\"SiteId\"],\"members\":{\"GlobalNetworkId\":{\"location\":\"uri\",\"locationName\":\"globalNetworkId\"},\"SiteId\":{\"location\":\"uri\",\"locationName\":\"siteId\"},\"Description\":{},\"Location\":{\"shape\":\"Sp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Site\":{\"shape\":\"S15\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"CustomerGatewayArn\":{},\"GlobalNetworkId\":{},\"DeviceId\":{},\"LinkId\":{},\"State\":{}}},\"S8\":{\"type\":\"structure\",\"members\":{\"GlobalNetworkId\":{},\"DeviceId\":{},\"LinkId\":{},\"LinkAssociationState\":{}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"TransitGatewayConnectPeerArn\":{},\"GlobalNetworkId\":{},\"DeviceId\":{},\"LinkId\":{},\"State\":{}}},\"Sf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sk\":{\"type\":\"structure\",\"members\":{\"ConnectionId\":{},\"ConnectionArn\":{},\"GlobalNetworkId\":{},\"DeviceId\":{},\"ConnectedDeviceId\":{},\"LinkId\":{},\"ConnectedLinkId\":{},\"Description\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"State\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"So\":{\"type\":\"structure\",\"members\":{\"Zone\":{},\"SubnetArn\":{}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Latitude\":{},\"Longitude\":{}},\"sensitive\":true},\"Sr\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{},\"DeviceArn\":{},\"GlobalNetworkId\":{},\"AWSLocation\":{\"shape\":\"So\"},\"Description\":{},\"Type\":{},\"Vendor\":{},\"Model\":{},\"SerialNumber\":{},\"Location\":{\"shape\":\"Sp\"},\"SiteId\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"State\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"GlobalNetworkId\":{},\"GlobalNetworkArn\":{},\"Description\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"State\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"Sy\":{\"type\":\"structure\",\"members\":{\"UploadSpeed\":{\"type\":\"integer\"},\"DownloadSpeed\":{\"type\":\"integer\"}}},\"S11\":{\"type\":\"structure\",\"members\":{\"LinkId\":{},\"LinkArn\":{},\"GlobalNetworkId\":{},\"SiteId\":{},\"Description\":{},\"Type\":{},\"Bandwidth\":{\"shape\":\"Sy\"},\"Provider\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"State\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"S15\":{\"type\":\"structure\",\"members\":{\"SiteId\":{},\"SiteArn\":{},\"GlobalNetworkId\":{},\"Description\":{},\"Location\":{\"shape\":\"Sp\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"State\":{},\"Tags\":{\"shape\":\"Sf\"}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"GlobalNetworkId\":{},\"TransitGatewayArn\":{},\"State\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Message\":{}}}}},\"S1n\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 91477:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeGlobalNetworks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"GlobalNetworks\"},\"GetConnections\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Connections\"},\"GetCustomerGatewayAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"CustomerGatewayAssociations\"},\"GetDevices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Devices\"},\"GetLinkAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"LinkAssociations\"},\"GetLinks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Links\"},\"GetSites\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Sites\"},\"GetTransitGatewayConnectPeerAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TransitGatewayConnectPeerAssociations\"},\"GetTransitGatewayRegistrations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TransitGatewayRegistrations\"}}}");

/***/ }),

/***/ 95315:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-02-18\",\"endpointPrefix\":\"opsworks\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS OpsWorks\",\"serviceId\":\"OpsWorks\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"OpsWorks_20130218\",\"uid\":\"opsworks-2013-02-18\"},\"operations\":{\"AssignInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"LayerIds\"],\"members\":{\"InstanceId\":{},\"LayerIds\":{\"shape\":\"S3\"}}}},\"AssignVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"VolumeId\":{},\"InstanceId\":{}}}},\"AssociateElasticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticIp\"],\"members\":{\"ElasticIp\":{},\"InstanceId\":{}}}},\"AttachElasticLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticLoadBalancerName\",\"LayerId\"],\"members\":{\"ElasticLoadBalancerName\":{},\"LayerId\":{}}}},\"CloneStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceStackId\",\"ServiceRoleArn\"],\"members\":{\"SourceStackId\":{},\"Name\":{},\"Region\":{},\"VpcId\":{},\"Attributes\":{\"shape\":\"S8\"},\"ServiceRoleArn\":{},\"DefaultInstanceProfileArn\":{},\"DefaultOs\":{},\"HostnameTheme\":{},\"DefaultAvailabilityZone\":{},\"DefaultSubnetId\":{},\"CustomJson\":{},\"ConfigurationManager\":{\"shape\":\"Sa\"},\"ChefConfiguration\":{\"shape\":\"Sb\"},\"UseCustomCookbooks\":{\"type\":\"boolean\"},\"UseOpsworksSecurityGroups\":{\"type\":\"boolean\"},\"CustomCookbooksSource\":{\"shape\":\"Sd\"},\"DefaultSshKeyName\":{},\"ClonePermissions\":{\"type\":\"boolean\"},\"CloneAppIds\":{\"shape\":\"S3\"},\"DefaultRootDeviceType\":{},\"AgentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StackId\":{}}}},\"CreateApp\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\",\"Name\",\"Type\"],\"members\":{\"StackId\":{},\"Shortname\":{},\"Name\":{},\"Description\":{},\"DataSources\":{\"shape\":\"Si\"},\"Type\":{},\"AppSource\":{\"shape\":\"Sd\"},\"Domains\":{\"shape\":\"S3\"},\"EnableSsl\":{\"type\":\"boolean\"},\"SslConfiguration\":{\"shape\":\"Sl\"},\"Attributes\":{\"shape\":\"Sm\"},\"Environment\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppId\":{}}}},\"CreateDeployment\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\",\"Command\"],\"members\":{\"StackId\":{},\"AppId\":{},\"InstanceIds\":{\"shape\":\"S3\"},\"LayerIds\":{\"shape\":\"S3\"},\"Command\":{\"shape\":\"Ss\"},\"Comment\":{},\"CustomJson\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeploymentId\":{}}}},\"CreateInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\",\"LayerIds\",\"InstanceType\"],\"members\":{\"StackId\":{},\"LayerIds\":{\"shape\":\"S3\"},\"InstanceType\":{},\"AutoScalingType\":{},\"Hostname\":{},\"Os\":{},\"AmiId\":{},\"SshKeyName\":{},\"AvailabilityZone\":{},\"VirtualizationType\":{},\"SubnetId\":{},\"Architecture\":{},\"RootDeviceType\":{},\"BlockDeviceMappings\":{\"shape\":\"Sz\"},\"InstallUpdatesOnBoot\":{\"type\":\"boolean\"},\"EbsOptimized\":{\"type\":\"boolean\"},\"AgentVersion\":{},\"Tenancy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{}}}},\"CreateLayer\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\",\"Type\",\"Name\",\"Shortname\"],\"members\":{\"StackId\":{},\"Type\":{},\"Name\":{},\"Shortname\":{},\"Attributes\":{\"shape\":\"S17\"},\"CloudWatchLogsConfiguration\":{\"shape\":\"S19\"},\"CustomInstanceProfileArn\":{},\"CustomJson\":{},\"CustomSecurityGroupIds\":{\"shape\":\"S3\"},\"Packages\":{\"shape\":\"S3\"},\"VolumeConfigurations\":{\"shape\":\"S1f\"},\"EnableAutoHealing\":{\"type\":\"boolean\"},\"AutoAssignElasticIps\":{\"type\":\"boolean\"},\"AutoAssignPublicIps\":{\"type\":\"boolean\"},\"CustomRecipes\":{\"shape\":\"S1h\"},\"InstallUpdatesOnBoot\":{\"type\":\"boolean\"},\"UseEbsOptimizedInstances\":{\"type\":\"boolean\"},\"LifecycleEventConfiguration\":{\"shape\":\"S1i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LayerId\":{}}}},\"CreateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Region\",\"ServiceRoleArn\",\"DefaultInstanceProfileArn\"],\"members\":{\"Name\":{},\"Region\":{},\"VpcId\":{},\"Attributes\":{\"shape\":\"S8\"},\"ServiceRoleArn\":{},\"DefaultInstanceProfileArn\":{},\"DefaultOs\":{},\"HostnameTheme\":{},\"DefaultAvailabilityZone\":{},\"DefaultSubnetId\":{},\"CustomJson\":{},\"ConfigurationManager\":{\"shape\":\"Sa\"},\"ChefConfiguration\":{\"shape\":\"Sb\"},\"UseCustomCookbooks\":{\"type\":\"boolean\"},\"UseOpsworksSecurityGroups\":{\"type\":\"boolean\"},\"CustomCookbooksSource\":{\"shape\":\"Sd\"},\"DefaultSshKeyName\":{},\"DefaultRootDeviceType\":{},\"AgentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StackId\":{}}}},\"CreateUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"IamUserArn\"],\"members\":{\"IamUserArn\":{},\"SshUsername\":{},\"SshPublicKey\":{},\"AllowSelfManagement\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IamUserArn\":{}}}},\"DeleteApp\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppId\"],\"members\":{\"AppId\":{}}}},\"DeleteInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"DeleteElasticIp\":{\"type\":\"boolean\"},\"DeleteVolumes\":{\"type\":\"boolean\"}}}},\"DeleteLayer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LayerId\"],\"members\":{\"LayerId\":{}}}},\"DeleteStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{}}}},\"DeleteUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"IamUserArn\"],\"members\":{\"IamUserArn\":{}}}},\"DeregisterEcsCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"EcsClusterArn\"],\"members\":{\"EcsClusterArn\":{}}}},\"DeregisterElasticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticIp\"],\"members\":{\"ElasticIp\":{}}}},\"DeregisterInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{}}}},\"DeregisterRdsDbInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"RdsDbInstanceArn\"],\"members\":{\"RdsDbInstanceArn\":{}}}},\"DeregisterVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"VolumeId\":{}}}},\"DescribeAgentVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"ConfigurationManager\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AgentVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Version\":{},\"ConfigurationManager\":{\"shape\":\"Sa\"}}}}}}},\"DescribeApps\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"AppIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Apps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AppId\":{},\"StackId\":{},\"Shortname\":{},\"Name\":{},\"Description\":{},\"DataSources\":{\"shape\":\"Si\"},\"Type\":{},\"AppSource\":{\"shape\":\"Sd\"},\"Domains\":{\"shape\":\"S3\"},\"EnableSsl\":{\"type\":\"boolean\"},\"SslConfiguration\":{\"shape\":\"Sl\"},\"Attributes\":{\"shape\":\"Sm\"},\"CreatedAt\":{},\"Environment\":{\"shape\":\"So\"}}}}}}},\"DescribeCommands\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeploymentId\":{},\"InstanceId\":{},\"CommandIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Commands\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CommandId\":{},\"InstanceId\":{},\"DeploymentId\":{},\"CreatedAt\":{},\"AcknowledgedAt\":{},\"CompletedAt\":{},\"Status\":{},\"ExitCode\":{\"type\":\"integer\"},\"LogUrl\":{},\"Type\":{}}}}}}},\"DescribeDeployments\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"AppId\":{},\"DeploymentIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Deployments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeploymentId\":{},\"StackId\":{},\"AppId\":{},\"CreatedAt\":{},\"CompletedAt\":{},\"Duration\":{\"type\":\"integer\"},\"IamUserArn\":{},\"Comment\":{},\"Command\":{\"shape\":\"Ss\"},\"Status\":{},\"CustomJson\":{},\"InstanceIds\":{\"shape\":\"S3\"}}}}}}},\"DescribeEcsClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"EcsClusterArns\":{\"shape\":\"S3\"},\"StackId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EcsClusters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EcsClusterArn\":{},\"EcsClusterName\":{},\"StackId\":{},\"RegisteredAt\":{}}}},\"NextToken\":{}}}},\"DescribeElasticIps\":{\"input\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"StackId\":{},\"Ips\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ElasticIps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Ip\":{},\"Name\":{},\"Domain\":{},\"Region\":{},\"InstanceId\":{}}}}}}},\"DescribeElasticLoadBalancers\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"LayerIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ElasticLoadBalancers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ElasticLoadBalancerName\":{},\"Region\":{},\"DnsName\":{},\"StackId\":{},\"LayerId\":{},\"VpcId\":{},\"AvailabilityZones\":{\"shape\":\"S3\"},\"SubnetIds\":{\"shape\":\"S3\"},\"Ec2InstanceIds\":{\"shape\":\"S3\"}}}}}}},\"DescribeInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"LayerId\":{},\"InstanceIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AgentVersion\":{},\"AmiId\":{},\"Architecture\":{},\"Arn\":{},\"AutoScalingType\":{},\"AvailabilityZone\":{},\"BlockDeviceMappings\":{\"shape\":\"Sz\"},\"CreatedAt\":{},\"EbsOptimized\":{\"type\":\"boolean\"},\"Ec2InstanceId\":{},\"EcsClusterArn\":{},\"EcsContainerInstanceArn\":{},\"ElasticIp\":{},\"Hostname\":{},\"InfrastructureClass\":{},\"InstallUpdatesOnBoot\":{\"type\":\"boolean\"},\"InstanceId\":{},\"InstanceProfileArn\":{},\"InstanceType\":{},\"LastServiceErrorId\":{},\"LayerIds\":{\"shape\":\"S3\"},\"Os\":{},\"Platform\":{},\"PrivateDns\":{},\"PrivateIp\":{},\"PublicDns\":{},\"PublicIp\":{},\"RegisteredBy\":{},\"ReportedAgentVersion\":{},\"ReportedOs\":{\"type\":\"structure\",\"members\":{\"Family\":{},\"Name\":{},\"Version\":{}}},\"RootDeviceType\":{},\"RootDeviceVolumeId\":{},\"SecurityGroupIds\":{\"shape\":\"S3\"},\"SshHostDsaKeyFingerprint\":{},\"SshHostRsaKeyFingerprint\":{},\"SshKeyName\":{},\"StackId\":{},\"Status\":{},\"SubnetId\":{},\"Tenancy\":{},\"VirtualizationType\":{}}}}}}},\"DescribeLayers\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"LayerIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Layers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"StackId\":{},\"LayerId\":{},\"Type\":{},\"Name\":{},\"Shortname\":{},\"Attributes\":{\"shape\":\"S17\"},\"CloudWatchLogsConfiguration\":{\"shape\":\"S19\"},\"CustomInstanceProfileArn\":{},\"CustomJson\":{},\"CustomSecurityGroupIds\":{\"shape\":\"S3\"},\"DefaultSecurityGroupNames\":{\"shape\":\"S3\"},\"Packages\":{\"shape\":\"S3\"},\"VolumeConfigurations\":{\"shape\":\"S1f\"},\"EnableAutoHealing\":{\"type\":\"boolean\"},\"AutoAssignElasticIps\":{\"type\":\"boolean\"},\"AutoAssignPublicIps\":{\"type\":\"boolean\"},\"DefaultRecipes\":{\"shape\":\"S1h\"},\"CustomRecipes\":{\"shape\":\"S1h\"},\"CreatedAt\":{},\"InstallUpdatesOnBoot\":{\"type\":\"boolean\"},\"UseEbsOptimizedInstances\":{\"type\":\"boolean\"},\"LifecycleEventConfiguration\":{\"shape\":\"S1i\"}}}}}}},\"DescribeLoadBasedAutoScaling\":{\"input\":{\"type\":\"structure\",\"required\":[\"LayerIds\"],\"members\":{\"LayerIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoadBasedAutoScalingConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LayerId\":{},\"Enable\":{\"type\":\"boolean\"},\"UpScaling\":{\"shape\":\"S36\"},\"DownScaling\":{\"shape\":\"S36\"}}}}}}},\"DescribeMyUserProfile\":{\"output\":{\"type\":\"structure\",\"members\":{\"UserProfile\":{\"type\":\"structure\",\"members\":{\"IamUserArn\":{},\"Name\":{},\"SshUsername\":{},\"SshPublicKey\":{}}}}}},\"DescribeOperatingSystems\":{\"output\":{\"type\":\"structure\",\"members\":{\"OperatingSystems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Type\":{},\"ConfigurationManagers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{}}}},\"ReportedName\":{},\"ReportedVersion\":{},\"Supported\":{\"type\":\"boolean\"}}}}}}},\"DescribePermissions\":{\"input\":{\"type\":\"structure\",\"members\":{\"IamUserArn\":{},\"StackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Permissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"IamUserArn\":{},\"AllowSsh\":{\"type\":\"boolean\"},\"AllowSudo\":{\"type\":\"boolean\"},\"Level\":{}}}}}}},\"DescribeRaidArrays\":{\"input\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"StackId\":{},\"RaidArrayIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RaidArrays\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RaidArrayId\":{},\"InstanceId\":{},\"Name\":{},\"RaidLevel\":{\"type\":\"integer\"},\"NumberOfDisks\":{\"type\":\"integer\"},\"Size\":{\"type\":\"integer\"},\"Device\":{},\"MountPoint\":{},\"AvailabilityZone\":{},\"CreatedAt\":{},\"StackId\":{},\"VolumeType\":{},\"Iops\":{\"type\":\"integer\"}}}}}}},\"DescribeRdsDbInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{},\"RdsDbInstanceArns\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RdsDbInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RdsDbInstanceArn\":{},\"DbInstanceIdentifier\":{},\"DbUser\":{},\"DbPassword\":{},\"Region\":{},\"Address\":{},\"Engine\":{},\"StackId\":{},\"MissingOnRds\":{\"type\":\"boolean\"}}}}}}},\"DescribeServiceErrors\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"InstanceId\":{},\"ServiceErrorIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServiceErrorId\":{},\"StackId\":{},\"InstanceId\":{},\"Type\":{},\"Message\":{},\"CreatedAt\":{}}}}}}},\"DescribeStackProvisioningParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AgentInstallerUrl\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}},\"DescribeStackSummary\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StackSummary\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"Name\":{},\"Arn\":{},\"LayersCount\":{\"type\":\"integer\"},\"AppsCount\":{\"type\":\"integer\"},\"InstancesCount\":{\"type\":\"structure\",\"members\":{\"Assigning\":{\"type\":\"integer\"},\"Booting\":{\"type\":\"integer\"},\"ConnectionLost\":{\"type\":\"integer\"},\"Deregistering\":{\"type\":\"integer\"},\"Online\":{\"type\":\"integer\"},\"Pending\":{\"type\":\"integer\"},\"Rebooting\":{\"type\":\"integer\"},\"Registered\":{\"type\":\"integer\"},\"Registering\":{\"type\":\"integer\"},\"Requested\":{\"type\":\"integer\"},\"RunningSetup\":{\"type\":\"integer\"},\"SetupFailed\":{\"type\":\"integer\"},\"ShuttingDown\":{\"type\":\"integer\"},\"StartFailed\":{\"type\":\"integer\"},\"StopFailed\":{\"type\":\"integer\"},\"Stopped\":{\"type\":\"integer\"},\"Stopping\":{\"type\":\"integer\"},\"Terminated\":{\"type\":\"integer\"},\"Terminating\":{\"type\":\"integer\"},\"Unassigning\":{\"type\":\"integer\"}}}}}}}},\"DescribeStacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"StackIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Stacks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StackId\":{},\"Name\":{},\"Arn\":{},\"Region\":{},\"VpcId\":{},\"Attributes\":{\"shape\":\"S8\"},\"ServiceRoleArn\":{},\"DefaultInstanceProfileArn\":{},\"DefaultOs\":{},\"HostnameTheme\":{},\"DefaultAvailabilityZone\":{},\"DefaultSubnetId\":{},\"CustomJson\":{},\"ConfigurationManager\":{\"shape\":\"Sa\"},\"ChefConfiguration\":{\"shape\":\"Sb\"},\"UseCustomCookbooks\":{\"type\":\"boolean\"},\"UseOpsworksSecurityGroups\":{\"type\":\"boolean\"},\"CustomCookbooksSource\":{\"shape\":\"Sd\"},\"DefaultSshKeyName\":{},\"CreatedAt\":{},\"DefaultRootDeviceType\":{},\"AgentVersion\":{}}}}}}},\"DescribeTimeBasedAutoScaling\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TimeBasedAutoScalingConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"AutoScalingSchedule\":{\"shape\":\"S4b\"}}}}}}},\"DescribeUserProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"IamUserArns\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserProfiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IamUserArn\":{},\"Name\":{},\"SshUsername\":{},\"SshPublicKey\":{},\"AllowSelfManagement\":{\"type\":\"boolean\"}}}}}}},\"DescribeVolumes\":{\"input\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"StackId\":{},\"RaidArrayId\":{},\"VolumeIds\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Volumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VolumeId\":{},\"Ec2VolumeId\":{},\"Name\":{},\"RaidArrayId\":{},\"InstanceId\":{},\"Status\":{},\"Size\":{\"type\":\"integer\"},\"Device\":{},\"MountPoint\":{},\"Region\":{},\"AvailabilityZone\":{},\"VolumeType\":{},\"Iops\":{\"type\":\"integer\"},\"Encrypted\":{\"type\":\"boolean\"}}}}}}},\"DetachElasticLoadBalancer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticLoadBalancerName\",\"LayerId\"],\"members\":{\"ElasticLoadBalancerName\":{},\"LayerId\":{}}}},\"DisassociateElasticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticIp\"],\"members\":{\"ElasticIp\":{}}}},\"GetHostnameSuggestion\":{\"input\":{\"type\":\"structure\",\"required\":[\"LayerId\"],\"members\":{\"LayerId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LayerId\":{},\"Hostname\":{}}}},\"GrantAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"ValidForInMinutes\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemporaryCredential\":{\"type\":\"structure\",\"members\":{\"Username\":{},\"Password\":{},\"ValidForInMinutes\":{\"type\":\"integer\"},\"InstanceId\":{}}}}}},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S50\"},\"NextToken\":{}}}},\"RebootInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{}}}},\"RegisterEcsCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"EcsClusterArn\",\"StackId\"],\"members\":{\"EcsClusterArn\":{},\"StackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EcsClusterArn\":{}}}},\"RegisterElasticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticIp\",\"StackId\"],\"members\":{\"ElasticIp\":{},\"StackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ElasticIp\":{}}}},\"RegisterInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{},\"Hostname\":{},\"PublicIp\":{},\"PrivateIp\":{},\"RsaPublicKey\":{},\"RsaPublicKeyFingerprint\":{},\"InstanceIdentity\":{\"type\":\"structure\",\"members\":{\"Document\":{},\"Signature\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{}}}},\"RegisterRdsDbInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\",\"RdsDbInstanceArn\",\"DbUser\",\"DbPassword\"],\"members\":{\"StackId\":{},\"RdsDbInstanceArn\":{},\"DbUser\":{},\"DbPassword\":{}}}},\"RegisterVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"Ec2VolumeId\":{},\"StackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeId\":{}}}},\"SetLoadBasedAutoScaling\":{\"input\":{\"type\":\"structure\",\"required\":[\"LayerId\"],\"members\":{\"LayerId\":{},\"Enable\":{\"type\":\"boolean\"},\"UpScaling\":{\"shape\":\"S36\"},\"DownScaling\":{\"shape\":\"S36\"}}}},\"SetPermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\",\"IamUserArn\"],\"members\":{\"StackId\":{},\"IamUserArn\":{},\"AllowSsh\":{\"type\":\"boolean\"},\"AllowSudo\":{\"type\":\"boolean\"},\"Level\":{}}}},\"SetTimeBasedAutoScaling\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"AutoScalingSchedule\":{\"shape\":\"S4b\"}}}},\"StartInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{}}}},\"StartStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{}}}},\"StopInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"Force\":{\"type\":\"boolean\"}}}},\"StopStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S50\"}}}},\"UnassignInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{}}}},\"UnassignVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"VolumeId\":{}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"UpdateApp\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppId\"],\"members\":{\"AppId\":{},\"Name\":{},\"Description\":{},\"DataSources\":{\"shape\":\"Si\"},\"Type\":{},\"AppSource\":{\"shape\":\"Sd\"},\"Domains\":{\"shape\":\"S3\"},\"EnableSsl\":{\"type\":\"boolean\"},\"SslConfiguration\":{\"shape\":\"Sl\"},\"Attributes\":{\"shape\":\"Sm\"},\"Environment\":{\"shape\":\"So\"}}}},\"UpdateElasticIp\":{\"input\":{\"type\":\"structure\",\"required\":[\"ElasticIp\"],\"members\":{\"ElasticIp\":{},\"Name\":{}}}},\"UpdateInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"LayerIds\":{\"shape\":\"S3\"},\"InstanceType\":{},\"AutoScalingType\":{},\"Hostname\":{},\"Os\":{},\"AmiId\":{},\"SshKeyName\":{},\"Architecture\":{},\"InstallUpdatesOnBoot\":{\"type\":\"boolean\"},\"EbsOptimized\":{\"type\":\"boolean\"},\"AgentVersion\":{}}}},\"UpdateLayer\":{\"input\":{\"type\":\"structure\",\"required\":[\"LayerId\"],\"members\":{\"LayerId\":{},\"Name\":{},\"Shortname\":{},\"Attributes\":{\"shape\":\"S17\"},\"CloudWatchLogsConfiguration\":{\"shape\":\"S19\"},\"CustomInstanceProfileArn\":{},\"CustomJson\":{},\"CustomSecurityGroupIds\":{\"shape\":\"S3\"},\"Packages\":{\"shape\":\"S3\"},\"VolumeConfigurations\":{\"shape\":\"S1f\"},\"EnableAutoHealing\":{\"type\":\"boolean\"},\"AutoAssignElasticIps\":{\"type\":\"boolean\"},\"AutoAssignPublicIps\":{\"type\":\"boolean\"},\"CustomRecipes\":{\"shape\":\"S1h\"},\"InstallUpdatesOnBoot\":{\"type\":\"boolean\"},\"UseEbsOptimizedInstances\":{\"type\":\"boolean\"},\"LifecycleEventConfiguration\":{\"shape\":\"S1i\"}}}},\"UpdateMyUserProfile\":{\"input\":{\"type\":\"structure\",\"members\":{\"SshPublicKey\":{}}}},\"UpdateRdsDbInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"RdsDbInstanceArn\"],\"members\":{\"RdsDbInstanceArn\":{},\"DbUser\":{},\"DbPassword\":{}}}},\"UpdateStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"StackId\"],\"members\":{\"StackId\":{},\"Name\":{},\"Attributes\":{\"shape\":\"S8\"},\"ServiceRoleArn\":{},\"DefaultInstanceProfileArn\":{},\"DefaultOs\":{},\"HostnameTheme\":{},\"DefaultAvailabilityZone\":{},\"DefaultSubnetId\":{},\"CustomJson\":{},\"ConfigurationManager\":{\"shape\":\"Sa\"},\"ChefConfiguration\":{\"shape\":\"Sb\"},\"UseCustomCookbooks\":{\"type\":\"boolean\"},\"CustomCookbooksSource\":{\"shape\":\"Sd\"},\"DefaultSshKeyName\":{},\"DefaultRootDeviceType\":{},\"UseOpsworksSecurityGroups\":{\"type\":\"boolean\"},\"AgentVersion\":{}}}},\"UpdateUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"IamUserArn\"],\"members\":{\"IamUserArn\":{},\"SshUsername\":{},\"SshPublicKey\":{},\"AllowSelfManagement\":{\"type\":\"boolean\"}}}},\"UpdateVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeId\"],\"members\":{\"VolumeId\":{},\"Name\":{},\"MountPoint\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{}},\"S8\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sa\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"ManageBerkshelf\":{\"type\":\"boolean\"},\"BerkshelfVersion\":{}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Url\":{},\"Username\":{},\"Password\":{},\"SshKey\":{},\"Revision\":{}}},\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Arn\":{},\"DatabaseName\":{}}}},\"Sl\":{\"type\":\"structure\",\"required\":[\"Certificate\",\"PrivateKey\"],\"members\":{\"Certificate\":{},\"PrivateKey\":{},\"Chain\":{}}},\"Sm\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"So\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{},\"Secure\":{\"type\":\"boolean\"}}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Args\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S3\"}}}},\"Sz\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeviceName\":{},\"NoDevice\":{},\"VirtualName\":{},\"Ebs\":{\"type\":\"structure\",\"members\":{\"SnapshotId\":{},\"Iops\":{\"type\":\"integer\"},\"VolumeSize\":{\"type\":\"integer\"},\"VolumeType\":{},\"DeleteOnTermination\":{\"type\":\"boolean\"}}}}}},\"S17\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S19\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"LogStreams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LogGroupName\":{},\"DatetimeFormat\":{},\"TimeZone\":{},\"File\":{},\"FileFingerprintLines\":{},\"MultiLineStartPattern\":{},\"InitialPosition\":{},\"Encoding\":{},\"BufferDuration\":{\"type\":\"integer\"},\"BatchCount\":{\"type\":\"integer\"},\"BatchSize\":{\"type\":\"integer\"}}}}}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MountPoint\",\"NumberOfDisks\",\"Size\"],\"members\":{\"MountPoint\":{},\"RaidLevel\":{\"type\":\"integer\"},\"NumberOfDisks\":{\"type\":\"integer\"},\"Size\":{\"type\":\"integer\"},\"VolumeType\":{},\"Iops\":{\"type\":\"integer\"},\"Encrypted\":{\"type\":\"boolean\"}}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"Setup\":{\"shape\":\"S3\"},\"Configure\":{\"shape\":\"S3\"},\"Deploy\":{\"shape\":\"S3\"},\"Undeploy\":{\"shape\":\"S3\"},\"Shutdown\":{\"shape\":\"S3\"}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"Shutdown\":{\"type\":\"structure\",\"members\":{\"ExecutionTimeout\":{\"type\":\"integer\"},\"DelayUntilElbConnectionsDrained\":{\"type\":\"boolean\"}}}}},\"S36\":{\"type\":\"structure\",\"members\":{\"InstanceCount\":{\"type\":\"integer\"},\"ThresholdsWaitTime\":{\"type\":\"integer\"},\"IgnoreMetricsTime\":{\"type\":\"integer\"},\"CpuThreshold\":{\"type\":\"double\"},\"MemoryThreshold\":{\"type\":\"double\"},\"LoadThreshold\":{\"type\":\"double\"},\"Alarms\":{\"shape\":\"S3\"}}},\"S4b\":{\"type\":\"structure\",\"members\":{\"Monday\":{\"shape\":\"S4c\"},\"Tuesday\":{\"shape\":\"S4c\"},\"Wednesday\":{\"shape\":\"S4c\"},\"Thursday\":{\"shape\":\"S4c\"},\"Friday\":{\"shape\":\"S4c\"},\"Saturday\":{\"shape\":\"S4c\"},\"Sunday\":{\"shape\":\"S4c\"}}},\"S4c\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S50\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 63589:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeApps\":{\"result_key\":\"Apps\"},\"DescribeCommands\":{\"result_key\":\"Commands\"},\"DescribeDeployments\":{\"result_key\":\"Deployments\"},\"DescribeEcsClusters\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"EcsClusters\"},\"DescribeElasticIps\":{\"result_key\":\"ElasticIps\"},\"DescribeElasticLoadBalancers\":{\"result_key\":\"ElasticLoadBalancers\"},\"DescribeInstances\":{\"result_key\":\"Instances\"},\"DescribeLayers\":{\"result_key\":\"Layers\"},\"DescribeLoadBasedAutoScaling\":{\"result_key\":\"LoadBasedAutoScalingConfigurations\"},\"DescribePermissions\":{\"result_key\":\"Permissions\"},\"DescribeRaidArrays\":{\"result_key\":\"RaidArrays\"},\"DescribeServiceErrors\":{\"result_key\":\"ServiceErrors\"},\"DescribeStacks\":{\"result_key\":\"Stacks\"},\"DescribeTimeBasedAutoScaling\":{\"result_key\":\"TimeBasedAutoScalingConfigurations\"},\"DescribeUserProfiles\":{\"result_key\":\"UserProfiles\"},\"DescribeVolumes\":{\"result_key\":\"Volumes\"}}}");

/***/ }),

/***/ 8700:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"AppExists\":{\"delay\":1,\"operation\":\"DescribeApps\",\"maxAttempts\":40,\"acceptors\":[{\"expected\":200,\"matcher\":\"status\",\"state\":\"success\"},{\"matcher\":\"status\",\"expected\":400,\"state\":\"failure\"}]},\"DeploymentSuccessful\":{\"delay\":15,\"operation\":\"DescribeDeployments\",\"maxAttempts\":40,\"description\":\"Wait until a deployment has completed successfully.\",\"acceptors\":[{\"expected\":\"successful\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Deployments[].Status\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Deployments[].Status\"}]},\"InstanceOnline\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"description\":\"Wait until OpsWorks instance is online.\",\"acceptors\":[{\"expected\":\"online\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Instances[].Status\"},{\"expected\":\"setup_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"shutting_down\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"start_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stopped\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stopping\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"terminating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"terminated\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stop_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"}]},\"InstanceRegistered\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"description\":\"Wait until OpsWorks instance is registered.\",\"acceptors\":[{\"expected\":\"registered\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Instances[].Status\"},{\"expected\":\"setup_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"shutting_down\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stopped\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stopping\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"terminating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"terminated\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stop_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"}]},\"InstanceStopped\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"description\":\"Wait until OpsWorks instance is stopped.\",\"acceptors\":[{\"expected\":\"stopped\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Instances[].Status\"},{\"expected\":\"booting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"pending\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"requested\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"running_setup\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"setup_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"start_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"stop_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"}]},\"InstanceTerminated\":{\"delay\":15,\"operation\":\"DescribeInstances\",\"maxAttempts\":40,\"description\":\"Wait until OpsWorks instance is terminated.\",\"acceptors\":[{\"expected\":\"terminated\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Instances[].Status\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"booting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"online\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"pending\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"requested\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"running_setup\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"setup_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"},{\"expected\":\"start_failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Instances[].Status\"}]}}}");

/***/ }),

/***/ 25033:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-01\",\"endpointPrefix\":\"opsworks-cm\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"OpsWorksCM\",\"serviceFullName\":\"AWS OpsWorks CM\",\"serviceId\":\"OpsWorksCM\",\"signatureVersion\":\"v4\",\"signingName\":\"opsworks-cm\",\"targetPrefix\":\"OpsWorksCM_V2016_11_01\",\"uid\":\"opsworkscm-2016-11-01\"},\"operations\":{\"AssociateNode\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\",\"NodeName\",\"EngineAttributes\"],\"members\":{\"ServerName\":{},\"NodeName\":{},\"EngineAttributes\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NodeAssociationStatusToken\":{}}}},\"CreateBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\"],\"members\":{\"ServerName\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backup\":{\"shape\":\"Sh\"}}}},\"CreateServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\",\"ServerName\",\"InstanceProfileArn\",\"InstanceType\",\"ServiceRoleArn\"],\"members\":{\"AssociatePublicIpAddress\":{\"type\":\"boolean\"},\"CustomDomain\":{},\"CustomCertificate\":{},\"CustomPrivateKey\":{\"type\":\"string\",\"sensitive\":true},\"DisableAutomatedBackup\":{\"type\":\"boolean\"},\"Engine\":{},\"EngineModel\":{},\"EngineVersion\":{},\"EngineAttributes\":{\"shape\":\"S4\"},\"BackupRetentionCount\":{\"type\":\"integer\"},\"ServerName\":{},\"InstanceProfileArn\":{},\"InstanceType\":{},\"KeyPair\":{},\"PreferredMaintenanceWindow\":{},\"PreferredBackupWindow\":{},\"SecurityGroupIds\":{\"shape\":\"Sn\"},\"ServiceRoleArn\":{},\"SubnetIds\":{\"shape\":\"Sn\"},\"Tags\":{\"shape\":\"Sc\"},\"BackupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Server\":{\"shape\":\"Sz\"}}}},\"DeleteBackup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\"],\"members\":{\"BackupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\"],\"members\":{\"ServerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAccountAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Maximum\":{\"type\":\"integer\"},\"Used\":{\"type\":\"integer\"}}}}}}},\"DescribeBackups\":{\"input\":{\"type\":\"structure\",\"members\":{\"BackupId\":{},\"ServerName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Backups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}},\"NextToken\":{}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\"],\"members\":{\"ServerName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServerEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreatedAt\":{\"type\":\"timestamp\"},\"ServerName\":{},\"Message\":{},\"LogUrl\":{}}}},\"NextToken\":{}}}},\"DescribeNodeAssociationStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"NodeAssociationStatusToken\",\"ServerName\"],\"members\":{\"NodeAssociationStatusToken\":{},\"ServerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NodeAssociationStatus\":{},\"EngineAttributes\":{\"shape\":\"S4\"}}}},\"DescribeServers\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServerName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Servers\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\"}},\"NextToken\":{}}}},\"DisassociateNode\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\",\"NodeName\"],\"members\":{\"ServerName\":{},\"NodeName\":{},\"EngineAttributes\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NodeAssociationStatusToken\":{}}}},\"ExportServerEngineAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportAttributeName\",\"ServerName\"],\"members\":{\"ExportAttributeName\":{},\"ServerName\":{},\"InputAttributes\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EngineAttribute\":{\"shape\":\"S5\"},\"ServerName\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sc\"},\"NextToken\":{}}}},\"RestoreServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"BackupId\",\"ServerName\"],\"members\":{\"BackupId\":{},\"ServerName\":{},\"InstanceType\":{},\"KeyPair\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartMaintenance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\"],\"members\":{\"ServerName\":{},\"EngineAttributes\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Server\":{\"shape\":\"Sz\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\"],\"members\":{\"DisableAutomatedBackup\":{\"type\":\"boolean\"},\"BackupRetentionCount\":{\"type\":\"integer\"},\"ServerName\":{},\"PreferredMaintenanceWindow\":{},\"PreferredBackupWindow\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Server\":{\"shape\":\"Sz\"}}}},\"UpdateServerEngineAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerName\",\"AttributeName\"],\"members\":{\"ServerName\":{},\"AttributeName\":{},\"AttributeValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Server\":{\"shape\":\"Sz\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"shape\":\"S5\"}},\"S5\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{\"type\":\"string\",\"sensitive\":true}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sh\":{\"type\":\"structure\",\"members\":{\"BackupArn\":{},\"BackupId\":{},\"BackupType\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"Description\":{},\"Engine\":{},\"EngineModel\":{},\"EngineVersion\":{},\"InstanceProfileArn\":{},\"InstanceType\":{},\"KeyPair\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"S3DataSize\":{\"deprecated\":true,\"type\":\"integer\"},\"S3DataUrl\":{\"deprecated\":true},\"S3LogUrl\":{},\"SecurityGroupIds\":{\"shape\":\"Sn\"},\"ServerName\":{},\"ServiceRoleArn\":{},\"Status\":{},\"StatusDescription\":{},\"SubnetIds\":{\"shape\":\"Sn\"},\"ToolsVersion\":{},\"UserArn\":{}}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"structure\",\"members\":{\"AssociatePublicIpAddress\":{\"type\":\"boolean\"},\"BackupRetentionCount\":{\"type\":\"integer\"},\"ServerName\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"CloudFormationStackArn\":{},\"CustomDomain\":{},\"DisableAutomatedBackup\":{\"type\":\"boolean\"},\"Endpoint\":{},\"Engine\":{},\"EngineModel\":{},\"EngineAttributes\":{\"shape\":\"S4\"},\"EngineVersion\":{},\"InstanceProfileArn\":{},\"InstanceType\":{},\"KeyPair\":{},\"MaintenanceStatus\":{},\"PreferredMaintenanceWindow\":{},\"PreferredBackupWindow\":{},\"SecurityGroupIds\":{\"shape\":\"Sn\"},\"ServiceRoleArn\":{},\"Status\":{},\"StatusReason\":{},\"SubnetIds\":{\"shape\":\"Sn\"},\"ServerArn\":{}}}}}");

/***/ }),

/***/ 68422:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeBackups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Backups\"},\"DescribeEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ServerEvents\"},\"DescribeServers\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Servers\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"}}}");

/***/ }),

/***/ 89353:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"NodeAssociated\":{\"delay\":15,\"maxAttempts\":15,\"operation\":\"DescribeNodeAssociationStatus\",\"description\":\"Wait until node is associated or disassociated.\",\"acceptors\":[{\"expected\":\"SUCCESS\",\"state\":\"success\",\"matcher\":\"path\",\"argument\":\"NodeAssociationStatus\"},{\"expected\":\"FAILED\",\"state\":\"failure\",\"matcher\":\"path\",\"argument\":\"NodeAssociationStatus\"}]}}}");

/***/ }),

/***/ 28258:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-28\",\"endpointPrefix\":\"organizations\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Organizations\",\"serviceFullName\":\"AWS Organizations\",\"serviceId\":\"Organizations\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSOrganizationsV20161128\",\"uid\":\"organizations-2016-11-28\"},\"operations\":{\"AcceptHandshake\":{\"input\":{\"type\":\"structure\",\"required\":[\"HandshakeId\"],\"members\":{\"HandshakeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshake\":{\"shape\":\"S4\"}}}},\"AttachPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\",\"TargetId\"],\"members\":{\"PolicyId\":{},\"TargetId\":{}}}},\"CancelHandshake\":{\"input\":{\"type\":\"structure\",\"required\":[\"HandshakeId\"],\"members\":{\"HandshakeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshake\":{\"shape\":\"S4\"}}}},\"CreateAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"Email\",\"AccountName\"],\"members\":{\"Email\":{\"shape\":\"Sn\"},\"AccountName\":{\"shape\":\"So\"},\"RoleName\":{},\"IamUserAccessToBilling\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreateAccountStatus\":{\"shape\":\"Sw\"}}}},\"CreateGovCloudAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"Email\",\"AccountName\"],\"members\":{\"Email\":{\"shape\":\"Sn\"},\"AccountName\":{\"shape\":\"So\"},\"RoleName\":{},\"IamUserAccessToBilling\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreateAccountStatus\":{\"shape\":\"Sw\"}}}},\"CreateOrganization\":{\"input\":{\"type\":\"structure\",\"members\":{\"FeatureSet\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Organization\":{\"shape\":\"S16\"}}}},\"CreateOrganizationalUnit\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParentId\",\"Name\"],\"members\":{\"ParentId\":{},\"Name\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationalUnit\":{\"shape\":\"S1i\"}}}},\"CreatePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Content\",\"Description\",\"Name\",\"Type\"],\"members\":{\"Content\":{},\"Description\":{},\"Name\":{},\"Type\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S1q\"}}}},\"DeclineHandshake\":{\"input\":{\"type\":\"structure\",\"required\":[\"HandshakeId\"],\"members\":{\"HandshakeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshake\":{\"shape\":\"S4\"}}}},\"DeleteOrganization\":{},\"DeleteOrganizationalUnit\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationalUnitId\"],\"members\":{\"OrganizationalUnitId\":{}}}},\"DeletePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{}}}},\"DeregisterDelegatedAdministrator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"ServicePrincipal\"],\"members\":{\"AccountId\":{},\"ServicePrincipal\":{}}}},\"DescribeAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Account\":{\"shape\":\"S22\"}}}},\"DescribeCreateAccountStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreateAccountRequestId\"],\"members\":{\"CreateAccountRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreateAccountStatus\":{\"shape\":\"Sw\"}}}},\"DescribeEffectivePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyType\"],\"members\":{\"PolicyType\":{},\"TargetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EffectivePolicy\":{\"type\":\"structure\",\"members\":{\"PolicyContent\":{},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"TargetId\":{},\"PolicyType\":{}}}}}},\"DescribeHandshake\":{\"input\":{\"type\":\"structure\",\"required\":[\"HandshakeId\"],\"members\":{\"HandshakeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshake\":{\"shape\":\"S4\"}}}},\"DescribeOrganization\":{\"output\":{\"type\":\"structure\",\"members\":{\"Organization\":{\"shape\":\"S16\"}}}},\"DescribeOrganizationalUnit\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationalUnitId\"],\"members\":{\"OrganizationalUnitId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationalUnit\":{\"shape\":\"S1i\"}}}},\"DescribePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S1q\"}}}},\"DetachPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\",\"TargetId\"],\"members\":{\"PolicyId\":{},\"TargetId\":{}}}},\"DisableAWSServiceAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServicePrincipal\"],\"members\":{\"ServicePrincipal\":{}}}},\"DisablePolicyType\":{\"input\":{\"type\":\"structure\",\"required\":[\"RootId\",\"PolicyType\"],\"members\":{\"RootId\":{},\"PolicyType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Root\":{\"shape\":\"S2n\"}}}},\"EnableAWSServiceAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServicePrincipal\"],\"members\":{\"ServicePrincipal\":{}}}},\"EnableAllFeatures\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshake\":{\"shape\":\"S4\"}}}},\"EnablePolicyType\":{\"input\":{\"type\":\"structure\",\"required\":[\"RootId\",\"PolicyType\"],\"members\":{\"RootId\":{},\"PolicyType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Root\":{\"shape\":\"S2n\"}}}},\"InviteAccountToOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"Target\"],\"members\":{\"Target\":{\"shape\":\"S7\"},\"Notes\":{\"type\":\"string\",\"sensitive\":true},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshake\":{\"shape\":\"S4\"}}}},\"LeaveOrganization\":{},\"ListAWSServiceAccessForOrganization\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EnabledServicePrincipals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServicePrincipal\":{},\"DateEnabled\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListAccounts\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accounts\":{\"shape\":\"S36\"},\"NextToken\":{}}}},\"ListAccountsForParent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParentId\"],\"members\":{\"ParentId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Accounts\":{\"shape\":\"S36\"},\"NextToken\":{}}}},\"ListChildren\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParentId\",\"ChildType\"],\"members\":{\"ParentId\":{},\"ChildType\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Children\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Type\":{}}}},\"NextToken\":{}}}},\"ListCreateAccountStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"States\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreateAccountStatuses\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}},\"NextToken\":{}}}},\"ListDelegatedAdministrators\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServicePrincipal\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DelegatedAdministrators\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Email\":{\"shape\":\"Sn\"},\"Name\":{\"shape\":\"So\"},\"Status\":{},\"JoinedMethod\":{},\"JoinedTimestamp\":{\"type\":\"timestamp\"},\"DelegationEnabledDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListDelegatedServicesForAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DelegatedServices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServicePrincipal\":{},\"DelegationEnabledDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListHandshakesForAccount\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"S3s\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshakes\":{\"shape\":\"S3u\"},\"NextToken\":{}}}},\"ListHandshakesForOrganization\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"shape\":\"S3s\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Handshakes\":{\"shape\":\"S3u\"},\"NextToken\":{}}}},\"ListOrganizationalUnitsForParent\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParentId\"],\"members\":{\"ParentId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationalUnits\":{\"type\":\"list\",\"member\":{\"shape\":\"S1i\"}},\"NextToken\":{}}}},\"ListParents\":{\"input\":{\"type\":\"structure\",\"required\":[\"ChildId\"],\"members\":{\"ChildId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Type\":{}}}},\"NextToken\":{}}}},\"ListPolicies\":{\"input\":{\"type\":\"structure\",\"required\":[\"Filter\"],\"members\":{\"Filter\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policies\":{\"shape\":\"S47\"},\"NextToken\":{}}}},\"ListPoliciesForTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetId\",\"Filter\"],\"members\":{\"TargetId\":{},\"Filter\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policies\":{\"shape\":\"S47\"},\"NextToken\":{}}}},\"ListRoots\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Roots\":{\"type\":\"list\",\"member\":{\"shape\":\"S2n\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sr\"},\"NextToken\":{}}}},\"ListTargetsForPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Targets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetId\":{},\"Arn\":{},\"Name\":{},\"Type\":{}}}},\"NextToken\":{}}}},\"MoveAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"SourceParentId\",\"DestinationParentId\"],\"members\":{\"AccountId\":{},\"SourceParentId\":{},\"DestinationParentId\":{}}}},\"RegisterDelegatedAdministrator\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"ServicePrincipal\"],\"members\":{\"AccountId\":{},\"ServicePrincipal\":{}}}},\"RemoveAccountFromOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Tags\"],\"members\":{\"ResourceId\":{},\"Tags\":{\"shape\":\"Sr\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagKeys\"],\"members\":{\"ResourceId\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"UpdateOrganizationalUnit\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationalUnitId\"],\"members\":{\"OrganizationalUnitId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationalUnit\":{\"shape\":\"S1i\"}}}},\"UpdatePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"PolicyId\"],\"members\":{\"PolicyId\":{},\"Name\":{},\"Description\":{},\"Content\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"shape\":\"S1q\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Parties\":{\"type\":\"list\",\"member\":{\"shape\":\"S7\"}},\"State\":{},\"RequestedTimestamp\":{\"type\":\"timestamp\"},\"ExpirationTimestamp\":{\"type\":\"timestamp\"},\"Action\":{},\"Resources\":{\"shape\":\"Sd\"}}},\"S7\":{\"type\":\"structure\",\"required\":[\"Id\",\"Type\"],\"members\":{\"Id\":{\"type\":\"string\",\"sensitive\":true},\"Type\":{}}},\"Sd\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"string\",\"sensitive\":true},\"Type\":{},\"Resources\":{\"shape\":\"Sd\"}}}},\"Sn\":{\"type\":\"string\",\"sensitive\":true},\"So\":{\"type\":\"string\",\"sensitive\":true},\"Sr\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"AccountName\":{\"shape\":\"So\"},\"State\":{},\"RequestedTimestamp\":{\"type\":\"timestamp\"},\"CompletedTimestamp\":{\"type\":\"timestamp\"},\"AccountId\":{},\"GovCloudAccountId\":{},\"FailureReason\":{}}},\"S16\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"FeatureSet\":{},\"MasterAccountArn\":{},\"MasterAccountId\":{},\"MasterAccountEmail\":{\"shape\":\"Sn\"},\"AvailablePolicyTypes\":{\"shape\":\"S1a\"}}},\"S1a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Status\":{}}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{}}},\"S1q\":{\"type\":\"structure\",\"members\":{\"PolicySummary\":{\"shape\":\"S1r\"},\"Content\":{}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"Description\":{},\"Type\":{},\"AwsManaged\":{\"type\":\"boolean\"}}},\"S22\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Email\":{\"shape\":\"Sn\"},\"Name\":{\"shape\":\"So\"},\"Status\":{},\"JoinedMethod\":{},\"JoinedTimestamp\":{\"type\":\"timestamp\"}}},\"S2n\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"PolicyTypes\":{\"shape\":\"S1a\"}}},\"S36\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"S3s\":{\"type\":\"structure\",\"members\":{\"ActionType\":{},\"ParentHandshakeId\":{}}},\"S3u\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"S47\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}}}}");

/***/ }),

/***/ 70916:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAWSServiceAccessForOrganization\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListAccounts\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListAccountsForParent\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListChildren\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListCreateAccountStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListDelegatedAdministrators\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DelegatedAdministrators\"},\"ListDelegatedServicesForAccount\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DelegatedServices\"},\"ListHandshakesForAccount\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListHandshakesForOrganization\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListOrganizationalUnitsForParent\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListParents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListPolicies\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListPoliciesForTarget\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListRoots\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"},\"ListTargetsForPolicy\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 79304:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-12-03\",\"endpointPrefix\":\"outposts\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Outposts\",\"serviceFullName\":\"AWS Outposts\",\"serviceId\":\"Outposts\",\"signatureVersion\":\"v4\",\"signingName\":\"outposts\",\"uid\":\"outposts-2019-12-03\"},\"operations\":{\"CreateOutpost\":{\"http\":{\"requestUri\":\"/outposts\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SiteId\"],\"members\":{\"Name\":{},\"Description\":{},\"SiteId\":{},\"AvailabilityZone\":{},\"AvailabilityZoneId\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Outpost\":{\"shape\":\"Sb\"}}}},\"DeleteOutpost\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/outposts/{OutpostId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"OutpostId\"],\"members\":{\"OutpostId\":{\"location\":\"uri\",\"locationName\":\"OutpostId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSite\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/sites/{SiteId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"SiteId\"],\"members\":{\"SiteId\":{\"location\":\"uri\",\"locationName\":\"SiteId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetOutpost\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/outposts/{OutpostId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"OutpostId\"],\"members\":{\"OutpostId\":{\"location\":\"uri\",\"locationName\":\"OutpostId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Outpost\":{\"shape\":\"Sb\"}}}},\"GetOutpostInstanceTypes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/outposts/{OutpostId}/instanceTypes\"},\"input\":{\"type\":\"structure\",\"required\":[\"OutpostId\"],\"members\":{\"OutpostId\":{\"location\":\"uri\",\"locationName\":\"OutpostId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceType\":{}}}},\"NextToken\":{},\"OutpostId\":{},\"OutpostArn\":{}}}},\"ListOutposts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/outposts\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Outposts\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}},\"NextToken\":{}}}},\"ListSites\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/sites\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sites\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SiteId\":{},\"AccountId\":{},\"Name\":{},\"Description\":{},\"Tags\":{\"shape\":\"S7\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S7\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S7\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sb\":{\"type\":\"structure\",\"members\":{\"OutpostId\":{},\"OwnerId\":{},\"OutpostArn\":{},\"SiteId\":{},\"Name\":{},\"Description\":{},\"LifeCycleStatus\":{},\"AvailabilityZone\":{},\"AvailabilityZoneId\":{},\"Tags\":{\"shape\":\"S7\"}}}}}");

/***/ }),

/***/ 91740:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListOutposts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSites\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 16402:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-05-22\",\"endpointPrefix\":\"personalize\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Personalize\",\"serviceId\":\"Personalize\",\"signatureVersion\":\"v4\",\"signingName\":\"personalize\",\"targetPrefix\":\"AmazonPersonalize\",\"uid\":\"personalize-2018-05-22\"},\"operations\":{\"CreateBatchInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobName\",\"solutionVersionArn\",\"jobInput\",\"jobOutput\",\"roleArn\"],\"members\":{\"jobName\":{},\"solutionVersionArn\":{},\"filterArn\":{},\"numResults\":{\"type\":\"integer\"},\"jobInput\":{\"shape\":\"S5\"},\"jobOutput\":{\"shape\":\"S9\"},\"roleArn\":{},\"batchInferenceJobConfig\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"batchInferenceJobArn\":{}}}},\"CreateCampaign\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"solutionVersionArn\",\"minProvisionedTPS\"],\"members\":{\"name\":{},\"solutionVersionArn\":{},\"minProvisionedTPS\":{\"type\":\"integer\"},\"campaignConfig\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"campaignArn\":{}}},\"idempotent\":true},\"CreateDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"schemaArn\",\"datasetGroupArn\",\"datasetType\"],\"members\":{\"name\":{},\"schemaArn\":{},\"datasetGroupArn\":{},\"datasetType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetArn\":{}}},\"idempotent\":true},\"CreateDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"roleArn\":{},\"kmsKeyArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetGroupArn\":{}}}},\"CreateDatasetImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"jobName\",\"datasetArn\",\"dataSource\",\"roleArn\"],\"members\":{\"jobName\":{},\"datasetArn\":{},\"dataSource\":{\"shape\":\"Sq\"},\"roleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetImportJobArn\":{}}}},\"CreateEventTracker\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"datasetGroupArn\"],\"members\":{\"name\":{},\"datasetGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"eventTrackerArn\":{},\"trackingId\":{}}},\"idempotent\":true},\"CreateFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"datasetGroupArn\",\"filterExpression\"],\"members\":{\"name\":{},\"datasetGroupArn\":{},\"filterExpression\":{\"shape\":\"Sw\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"filterArn\":{}}}},\"CreateSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"schema\"],\"members\":{\"name\":{},\"schema\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"schemaArn\":{}}},\"idempotent\":true},\"CreateSolution\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"datasetGroupArn\"],\"members\":{\"name\":{},\"performHPO\":{\"type\":\"boolean\"},\"performAutoML\":{\"type\":\"boolean\"},\"recipeArn\":{},\"datasetGroupArn\":{},\"eventType\":{},\"solutionConfig\":{\"shape\":\"S15\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"solutionArn\":{}}}},\"CreateSolutionVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"solutionArn\"],\"members\":{\"solutionArn\":{},\"trainingMode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"solutionVersionArn\":{}}}},\"DeleteCampaign\":{\"input\":{\"type\":\"structure\",\"required\":[\"campaignArn\"],\"members\":{\"campaignArn\":{}}},\"idempotent\":true},\"DeleteDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"datasetArn\"],\"members\":{\"datasetArn\":{}}},\"idempotent\":true},\"DeleteDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"datasetGroupArn\"],\"members\":{\"datasetGroupArn\":{}}},\"idempotent\":true},\"DeleteEventTracker\":{\"input\":{\"type\":\"structure\",\"required\":[\"eventTrackerArn\"],\"members\":{\"eventTrackerArn\":{}}},\"idempotent\":true},\"DeleteFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"filterArn\"],\"members\":{\"filterArn\":{}}}},\"DeleteSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"schemaArn\"],\"members\":{\"schemaArn\":{}}},\"idempotent\":true},\"DeleteSolution\":{\"input\":{\"type\":\"structure\",\"required\":[\"solutionArn\"],\"members\":{\"solutionArn\":{}}},\"idempotent\":true},\"DescribeAlgorithm\":{\"input\":{\"type\":\"structure\",\"required\":[\"algorithmArn\"],\"members\":{\"algorithmArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"algorithm\":{\"type\":\"structure\",\"members\":{\"name\":{},\"algorithmArn\":{},\"algorithmImage\":{\"type\":\"structure\",\"required\":[\"dockerURI\"],\"members\":{\"name\":{},\"dockerURI\":{}}},\"defaultHyperParameters\":{\"shape\":\"Sc\"},\"defaultHyperParameterRanges\":{\"type\":\"structure\",\"members\":{\"integerHyperParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"minValue\":{\"type\":\"integer\"},\"maxValue\":{\"type\":\"integer\"},\"isTunable\":{\"type\":\"boolean\"}}}},\"continuousHyperParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"minValue\":{\"type\":\"double\"},\"maxValue\":{\"type\":\"double\"},\"isTunable\":{\"type\":\"boolean\"}}}},\"categoricalHyperParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S1p\"},\"isTunable\":{\"type\":\"boolean\"}}}}}},\"defaultResourceConfig\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"trainingInputMode\":{},\"roleArn\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"DescribeBatchInferenceJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"batchInferenceJobArn\"],\"members\":{\"batchInferenceJobArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"batchInferenceJob\":{\"type\":\"structure\",\"members\":{\"jobName\":{},\"batchInferenceJobArn\":{},\"filterArn\":{},\"failureReason\":{},\"solutionVersionArn\":{},\"numResults\":{\"type\":\"integer\"},\"jobInput\":{\"shape\":\"S5\"},\"jobOutput\":{\"shape\":\"S9\"},\"batchInferenceJobConfig\":{\"shape\":\"Sb\"},\"roleArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"DescribeCampaign\":{\"input\":{\"type\":\"structure\",\"required\":[\"campaignArn\"],\"members\":{\"campaignArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"campaign\":{\"type\":\"structure\",\"members\":{\"name\":{},\"campaignArn\":{},\"solutionVersionArn\":{},\"minProvisionedTPS\":{\"type\":\"integer\"},\"campaignConfig\":{\"shape\":\"Si\"},\"status\":{},\"failureReason\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"latestCampaignUpdate\":{\"type\":\"structure\",\"members\":{\"solutionVersionArn\":{},\"minProvisionedTPS\":{\"type\":\"integer\"},\"campaignConfig\":{\"shape\":\"Si\"},\"status\":{},\"failureReason\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}}}},\"idempotent\":true},\"DescribeDataset\":{\"input\":{\"type\":\"structure\",\"required\":[\"datasetArn\"],\"members\":{\"datasetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"dataset\":{\"type\":\"structure\",\"members\":{\"name\":{},\"datasetArn\":{},\"datasetGroupArn\":{},\"datasetType\":{},\"schemaArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"DescribeDatasetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"datasetGroupArn\"],\"members\":{\"datasetGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetGroup\":{\"type\":\"structure\",\"members\":{\"name\":{},\"datasetGroupArn\":{},\"status\":{},\"roleArn\":{},\"kmsKeyArn\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{}}}}},\"idempotent\":true},\"DescribeDatasetImportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"datasetImportJobArn\"],\"members\":{\"datasetImportJobArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetImportJob\":{\"type\":\"structure\",\"members\":{\"jobName\":{},\"datasetImportJobArn\":{},\"datasetArn\":{},\"dataSource\":{\"shape\":\"Sq\"},\"roleArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{}}}}},\"idempotent\":true},\"DescribeEventTracker\":{\"input\":{\"type\":\"structure\",\"required\":[\"eventTrackerArn\"],\"members\":{\"eventTrackerArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"eventTracker\":{\"type\":\"structure\",\"members\":{\"name\":{},\"eventTrackerArn\":{},\"accountId\":{},\"trackingId\":{},\"datasetGroupArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"DescribeFeatureTransformation\":{\"input\":{\"type\":\"structure\",\"required\":[\"featureTransformationArn\"],\"members\":{\"featureTransformationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"featureTransformation\":{\"type\":\"structure\",\"members\":{\"name\":{},\"featureTransformationArn\":{},\"defaultParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"status\":{}}}}},\"idempotent\":true},\"DescribeFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"filterArn\"],\"members\":{\"filterArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"filter\":{\"type\":\"structure\",\"members\":{\"name\":{},\"filterArn\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"datasetGroupArn\":{},\"failureReason\":{},\"filterExpression\":{\"shape\":\"Sw\"},\"status\":{}}}}},\"idempotent\":true},\"DescribeRecipe\":{\"input\":{\"type\":\"structure\",\"required\":[\"recipeArn\"],\"members\":{\"recipeArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"recipe\":{\"type\":\"structure\",\"members\":{\"name\":{},\"recipeArn\":{},\"algorithmArn\":{},\"featureTransformationArn\":{},\"status\":{},\"description\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"recipeType\":{},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"DescribeSchema\":{\"input\":{\"type\":\"structure\",\"required\":[\"schemaArn\"],\"members\":{\"schemaArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"schema\":{\"type\":\"structure\",\"members\":{\"name\":{},\"schemaArn\":{},\"schema\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"DescribeSolution\":{\"input\":{\"type\":\"structure\",\"required\":[\"solutionArn\"],\"members\":{\"solutionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"solution\":{\"type\":\"structure\",\"members\":{\"name\":{},\"solutionArn\":{},\"performHPO\":{\"type\":\"boolean\"},\"performAutoML\":{\"type\":\"boolean\"},\"recipeArn\":{},\"datasetGroupArn\":{},\"eventType\":{},\"solutionConfig\":{\"shape\":\"S15\"},\"autoMLResult\":{\"type\":\"structure\",\"members\":{\"bestRecipeArn\":{}}},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"latestSolutionVersion\":{\"shape\":\"S3r\"}}}}},\"idempotent\":true},\"DescribeSolutionVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"solutionVersionArn\"],\"members\":{\"solutionVersionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"solutionVersion\":{\"type\":\"structure\",\"members\":{\"solutionVersionArn\":{},\"solutionArn\":{},\"performHPO\":{\"type\":\"boolean\"},\"performAutoML\":{\"type\":\"boolean\"},\"recipeArn\":{},\"eventType\":{},\"datasetGroupArn\":{},\"solutionConfig\":{\"shape\":\"S15\"},\"trainingHours\":{\"type\":\"double\"},\"trainingMode\":{},\"tunedHPOParams\":{\"type\":\"structure\",\"members\":{\"algorithmHyperParameters\":{\"shape\":\"Sc\"}}},\"status\":{},\"failureReason\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}}},\"idempotent\":true},\"GetSolutionMetrics\":{\"input\":{\"type\":\"structure\",\"required\":[\"solutionVersionArn\"],\"members\":{\"solutionVersionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"solutionVersionArn\":{},\"metrics\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"double\"}}}}},\"ListBatchInferenceJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"solutionVersionArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"batchInferenceJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"batchInferenceJobArn\":{},\"jobName\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{},\"solutionVersionArn\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListCampaigns\":{\"input\":{\"type\":\"structure\",\"members\":{\"solutionArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"campaigns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"campaignArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListDatasetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"datasetGroupArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListDatasetImportJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"datasetArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasetImportJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"datasetImportJobArn\":{},\"jobName\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListDatasets\":{\"input\":{\"type\":\"structure\",\"members\":{\"datasetGroupArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"datasets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"datasetArn\":{},\"datasetType\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListEventTrackers\":{\"input\":{\"type\":\"structure\",\"members\":{\"datasetGroupArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"eventTrackers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"eventTrackerArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListFilters\":{\"input\":{\"type\":\"structure\",\"members\":{\"datasetGroupArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"filterArn\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"datasetGroupArn\":{},\"failureReason\":{},\"status\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListRecipes\":{\"input\":{\"type\":\"structure\",\"members\":{\"recipeProvider\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"recipes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"recipeArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListSchemas\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"schemas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"schemaArn\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListSolutionVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"solutionArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"solutionVersions\":{\"type\":\"list\",\"member\":{\"shape\":\"S3r\"}},\"nextToken\":{}}},\"idempotent\":true},\"ListSolutions\":{\"input\":{\"type\":\"structure\",\"members\":{\"datasetGroupArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"solutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"solutionArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}},\"idempotent\":true},\"UpdateCampaign\":{\"input\":{\"type\":\"structure\",\"required\":[\"campaignArn\"],\"members\":{\"campaignArn\":{},\"solutionVersionArn\":{},\"minProvisionedTPS\":{\"type\":\"integer\"},\"campaignConfig\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"campaignArn\":{}}},\"idempotent\":true}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"s3DataSource\"],\"members\":{\"s3DataSource\":{\"shape\":\"S6\"}}},\"S6\":{\"type\":\"structure\",\"required\":[\"path\"],\"members\":{\"path\":{},\"kmsKeyArn\":{}}},\"S9\":{\"type\":\"structure\",\"required\":[\"s3DataDestination\"],\"members\":{\"s3DataDestination\":{\"shape\":\"S6\"}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"itemExplorationConfig\":{\"shape\":\"Sc\"}}},\"Sc\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Si\":{\"type\":\"structure\",\"members\":{\"itemExplorationConfig\":{\"shape\":\"Sc\"}}},\"Sq\":{\"type\":\"structure\",\"members\":{\"dataLocation\":{}}},\"Sw\":{\"type\":\"string\",\"sensitive\":true},\"S15\":{\"type\":\"structure\",\"members\":{\"eventValueThreshold\":{},\"hpoConfig\":{\"type\":\"structure\",\"members\":{\"hpoObjective\":{\"type\":\"structure\",\"members\":{\"type\":{},\"metricName\":{},\"metricRegex\":{}}},\"hpoResourceConfig\":{\"type\":\"structure\",\"members\":{\"maxNumberOfTrainingJobs\":{},\"maxParallelTrainingJobs\":{}}},\"algorithmHyperParameterRanges\":{\"type\":\"structure\",\"members\":{\"integerHyperParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"minValue\":{\"type\":\"integer\"},\"maxValue\":{\"type\":\"integer\"}}}},\"continuousHyperParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"minValue\":{\"type\":\"double\"},\"maxValue\":{\"type\":\"double\"}}}},\"categoricalHyperParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S1p\"}}}}}}}},\"algorithmHyperParameters\":{\"shape\":\"Sc\"},\"featureTransformationParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"autoMLConfig\":{\"type\":\"structure\",\"members\":{\"metricName\":{},\"recipeList\":{\"type\":\"list\",\"member\":{}}}}}},\"S1p\":{\"type\":\"list\",\"member\":{}},\"S3r\":{\"type\":\"structure\",\"members\":{\"solutionVersionArn\":{},\"status\":{},\"creationDateTime\":{\"type\":\"timestamp\"},\"lastUpdatedDateTime\":{\"type\":\"timestamp\"},\"failureReason\":{}}}}}");

/***/ }),

/***/ 76828:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBatchInferenceJobs\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"batchInferenceJobs\"},\"ListCampaigns\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"campaigns\"},\"ListDatasetGroups\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"datasetGroups\"},\"ListDatasetImportJobs\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"datasetImportJobs\"},\"ListDatasets\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"datasets\"},\"ListEventTrackers\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"eventTrackers\"},\"ListRecipes\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"recipes\"},\"ListSchemas\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"schemas\"},\"ListSolutionVersions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"solutionVersions\"},\"ListSolutions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"solutions\"}}}");

/***/ }),

/***/ 8792:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-03-22\",\"endpointPrefix\":\"personalize-events\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Personalize Events\",\"serviceId\":\"Personalize Events\",\"signatureVersion\":\"v4\",\"signingName\":\"personalize\",\"uid\":\"personalize-events-2018-03-22\"},\"operations\":{\"PutEvents\":{\"http\":{\"requestUri\":\"/events\"},\"input\":{\"type\":\"structure\",\"required\":[\"trackingId\",\"sessionId\",\"eventList\"],\"members\":{\"trackingId\":{},\"userId\":{},\"sessionId\":{},\"eventList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"eventType\",\"sentAt\"],\"members\":{\"eventId\":{},\"eventType\":{},\"eventValue\":{\"type\":\"float\"},\"itemId\":{},\"properties\":{\"jsonvalue\":true},\"sentAt\":{\"type\":\"timestamp\"},\"recommendationId\":{},\"impression\":{\"type\":\"list\",\"member\":{}}}}}}}},\"PutItems\":{\"http\":{\"requestUri\":\"/items\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetArn\",\"items\"],\"members\":{\"datasetArn\":{},\"items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"itemId\"],\"members\":{\"itemId\":{},\"properties\":{\"jsonvalue\":true}}}}}}},\"PutUsers\":{\"http\":{\"requestUri\":\"/users\"},\"input\":{\"type\":\"structure\",\"required\":[\"datasetArn\",\"users\"],\"members\":{\"datasetArn\":{},\"users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"userId\"],\"members\":{\"userId\":{},\"properties\":{\"jsonvalue\":true}}}}}}}},\"shapes\":{}}");

/***/ }),

/***/ 52110:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 86682:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-05-22\",\"endpointPrefix\":\"personalize-runtime\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Personalize Runtime\",\"serviceId\":\"Personalize Runtime\",\"signatureVersion\":\"v4\",\"signingName\":\"personalize\",\"uid\":\"personalize-runtime-2018-05-22\"},\"operations\":{\"GetPersonalizedRanking\":{\"http\":{\"requestUri\":\"/personalize-ranking\"},\"input\":{\"type\":\"structure\",\"required\":[\"campaignArn\",\"inputList\",\"userId\"],\"members\":{\"campaignArn\":{},\"inputList\":{\"type\":\"list\",\"member\":{}},\"userId\":{},\"context\":{\"shape\":\"S6\"},\"filterArn\":{},\"filterValues\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"personalizedRanking\":{\"shape\":\"Sd\"},\"recommendationId\":{}}},\"idempotent\":true},\"GetRecommendations\":{\"http\":{\"requestUri\":\"/recommendations\"},\"input\":{\"type\":\"structure\",\"required\":[\"campaignArn\"],\"members\":{\"campaignArn\":{},\"itemId\":{},\"userId\":{},\"numResults\":{\"type\":\"integer\"},\"context\":{\"shape\":\"S6\"},\"filterArn\":{},\"filterValues\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"itemList\":{\"shape\":\"Sd\"},\"recommendationId\":{}}},\"idempotent\":true}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"string\",\"sensitive\":true}},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"string\",\"sensitive\":true}},\"Sd\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"itemId\":{},\"score\":{\"type\":\"double\"}}}}}}");

/***/ }),

/***/ 32049:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 38006:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-02-27\",\"endpointPrefix\":\"pi\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWS PI\",\"serviceFullName\":\"AWS Performance Insights\",\"serviceId\":\"PI\",\"signatureVersion\":\"v4\",\"signingName\":\"pi\",\"targetPrefix\":\"PerformanceInsightsv20180227\",\"uid\":\"pi-2018-02-27\"},\"operations\":{\"DescribeDimensionKeys\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceType\",\"Identifier\",\"StartTime\",\"EndTime\",\"Metric\",\"GroupBy\"],\"members\":{\"ServiceType\":{},\"Identifier\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Metric\":{},\"PeriodInSeconds\":{\"type\":\"integer\"},\"GroupBy\":{\"shape\":\"S6\"},\"PartitionBy\":{\"shape\":\"S6\"},\"Filter\":{\"shape\":\"S9\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AlignedStartTime\":{\"type\":\"timestamp\"},\"AlignedEndTime\":{\"type\":\"timestamp\"},\"PartitionKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Dimensions\"],\"members\":{\"Dimensions\":{\"shape\":\"Se\"}}}},\"Keys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"Se\"},\"Total\":{\"type\":\"double\"},\"Partitions\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}}},\"NextToken\":{}}}},\"GetResourceMetrics\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceType\",\"Identifier\",\"MetricQueries\",\"StartTime\",\"EndTime\"],\"members\":{\"ServiceType\":{},\"Identifier\":{},\"MetricQueries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Metric\"],\"members\":{\"Metric\":{},\"GroupBy\":{\"shape\":\"S6\"},\"Filter\":{\"shape\":\"S9\"}}}},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"PeriodInSeconds\":{\"type\":\"integer\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AlignedStartTime\":{\"type\":\"timestamp\"},\"AlignedEndTime\":{\"type\":\"timestamp\"},\"Identifier\":{},\"MetricList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{\"type\":\"structure\",\"required\":[\"Metric\"],\"members\":{\"Metric\":{},\"Dimensions\":{\"shape\":\"Se\"}}},\"DataPoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Timestamp\",\"Value\"],\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"Value\":{\"type\":\"double\"}}}}}}},\"NextToken\":{}}}}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"required\":[\"Group\"],\"members\":{\"Group\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"}}},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Se\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 75147:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 73536:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2016-12-01\",\"endpointPrefix\":\"pinpoint\",\"signingName\":\"mobiletargeting\",\"serviceFullName\":\"Amazon Pinpoint\",\"serviceId\":\"Pinpoint\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"pinpoint-2016-12-01\",\"signatureVersion\":\"v4\"},\"operations\":{\"CreateApp\":{\"http\":{\"requestUri\":\"/v1/apps\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"CreateApplicationRequest\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}},\"required\":[\"Name\"]}},\"required\":[\"CreateApplicationRequest\"],\"payload\":\"CreateApplicationRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationResponse\":{\"shape\":\"S6\"}},\"required\":[\"ApplicationResponse\"],\"payload\":\"ApplicationResponse\"}},\"CreateCampaign\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/campaigns\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"WriteCampaignRequest\":{\"shape\":\"S8\"}},\"required\":[\"ApplicationId\",\"WriteCampaignRequest\"],\"payload\":\"WriteCampaignRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignResponse\":{\"shape\":\"S18\"}},\"required\":[\"CampaignResponse\"],\"payload\":\"CampaignResponse\"}},\"CreateEmailTemplate\":{\"http\":{\"requestUri\":\"/v1/templates/{template-name}/email\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"EmailTemplateRequest\":{\"shape\":\"S1e\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"}},\"required\":[\"TemplateName\",\"EmailTemplateRequest\"],\"payload\":\"EmailTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"CreateTemplateMessageBody\":{\"shape\":\"S1g\"}},\"required\":[\"CreateTemplateMessageBody\"],\"payload\":\"CreateTemplateMessageBody\"}},\"CreateExportJob\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/jobs/export\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"ExportJobRequest\":{\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"S3UrlPrefix\":{},\"SegmentId\":{},\"SegmentVersion\":{\"type\":\"integer\"}},\"required\":[\"S3UrlPrefix\",\"RoleArn\"]}},\"required\":[\"ApplicationId\",\"ExportJobRequest\"],\"payload\":\"ExportJobRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"ExportJobResponse\":{\"shape\":\"S1k\"}},\"required\":[\"ExportJobResponse\"],\"payload\":\"ExportJobResponse\"}},\"CreateImportJob\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/jobs/import\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"ImportJobRequest\":{\"type\":\"structure\",\"members\":{\"DefineSegment\":{\"type\":\"boolean\"},\"ExternalId\":{},\"Format\":{},\"RegisterEndpoints\":{\"type\":\"boolean\"},\"RoleArn\":{},\"S3Url\":{},\"SegmentId\":{},\"SegmentName\":{}},\"required\":[\"Format\",\"S3Url\",\"RoleArn\"]}},\"required\":[\"ApplicationId\",\"ImportJobRequest\"],\"payload\":\"ImportJobRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"ImportJobResponse\":{\"shape\":\"S1r\"}},\"required\":[\"ImportJobResponse\"],\"payload\":\"ImportJobResponse\"}},\"CreateJourney\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/journeys\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"WriteJourneyRequest\":{\"shape\":\"S1u\"}},\"required\":[\"ApplicationId\",\"WriteJourneyRequest\"],\"payload\":\"WriteJourneyRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyResponse\":{\"shape\":\"S32\"}},\"required\":[\"JourneyResponse\"],\"payload\":\"JourneyResponse\"}},\"CreatePushTemplate\":{\"http\":{\"requestUri\":\"/v1/templates/{template-name}/push\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"PushNotificationTemplateRequest\":{\"shape\":\"S34\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"}},\"required\":[\"TemplateName\",\"PushNotificationTemplateRequest\"],\"payload\":\"PushNotificationTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"CreateTemplateMessageBody\":{\"shape\":\"S1g\"}},\"required\":[\"CreateTemplateMessageBody\"],\"payload\":\"CreateTemplateMessageBody\"}},\"CreateRecommenderConfiguration\":{\"http\":{\"requestUri\":\"/v1/recommenders\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"CreateRecommenderConfiguration\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4\"},\"Description\":{},\"Name\":{},\"RecommendationProviderIdType\":{},\"RecommendationProviderRoleArn\":{},\"RecommendationProviderUri\":{},\"RecommendationTransformerUri\":{},\"RecommendationsDisplayName\":{},\"RecommendationsPerMessage\":{\"type\":\"integer\"}},\"required\":[\"RecommendationProviderUri\",\"RecommendationProviderRoleArn\"]}},\"required\":[\"CreateRecommenderConfiguration\"],\"payload\":\"CreateRecommenderConfiguration\"},\"output\":{\"type\":\"structure\",\"members\":{\"RecommenderConfigurationResponse\":{\"shape\":\"S3c\"}},\"required\":[\"RecommenderConfigurationResponse\"],\"payload\":\"RecommenderConfigurationResponse\"}},\"CreateSegment\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/segments\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"WriteSegmentRequest\":{\"shape\":\"S3e\"}},\"required\":[\"ApplicationId\",\"WriteSegmentRequest\"],\"payload\":\"WriteSegmentRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentResponse\":{\"shape\":\"S3p\"}},\"required\":[\"SegmentResponse\"],\"payload\":\"SegmentResponse\"}},\"CreateSmsTemplate\":{\"http\":{\"requestUri\":\"/v1/templates/{template-name}/sms\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"SMSTemplateRequest\":{\"shape\":\"S3u\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"}},\"required\":[\"TemplateName\",\"SMSTemplateRequest\"],\"payload\":\"SMSTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"CreateTemplateMessageBody\":{\"shape\":\"S1g\"}},\"required\":[\"CreateTemplateMessageBody\"],\"payload\":\"CreateTemplateMessageBody\"}},\"CreateVoiceTemplate\":{\"http\":{\"requestUri\":\"/v1/templates/{template-name}/voice\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"VoiceTemplateRequest\":{\"shape\":\"S3x\"}},\"required\":[\"TemplateName\",\"VoiceTemplateRequest\"],\"payload\":\"VoiceTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"CreateTemplateMessageBody\":{\"shape\":\"S1g\"}},\"required\":[\"CreateTemplateMessageBody\"],\"payload\":\"CreateTemplateMessageBody\"}},\"DeleteAdmChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/adm\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ADMChannelResponse\":{\"shape\":\"S41\"}},\"required\":[\"ADMChannelResponse\"],\"payload\":\"ADMChannelResponse\"}},\"DeleteApnsChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSChannelResponse\":{\"shape\":\"S44\"}},\"required\":[\"APNSChannelResponse\"],\"payload\":\"APNSChannelResponse\"}},\"DeleteApnsSandboxChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_sandbox\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSSandboxChannelResponse\":{\"shape\":\"S47\"}},\"required\":[\"APNSSandboxChannelResponse\"],\"payload\":\"APNSSandboxChannelResponse\"}},\"DeleteApnsVoipChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_voip\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSVoipChannelResponse\":{\"shape\":\"S4a\"}},\"required\":[\"APNSVoipChannelResponse\"],\"payload\":\"APNSVoipChannelResponse\"}},\"DeleteApnsVoipSandboxChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_voip_sandbox\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSVoipSandboxChannelResponse\":{\"shape\":\"S4d\"}},\"required\":[\"APNSVoipSandboxChannelResponse\"],\"payload\":\"APNSVoipSandboxChannelResponse\"}},\"DeleteApp\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationResponse\":{\"shape\":\"S6\"}},\"required\":[\"ApplicationResponse\"],\"payload\":\"ApplicationResponse\"}},\"DeleteBaiduChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/baidu\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BaiduChannelResponse\":{\"shape\":\"S4i\"}},\"required\":[\"BaiduChannelResponse\"],\"payload\":\"BaiduChannelResponse\"}},\"DeleteCampaign\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"}},\"required\":[\"CampaignId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignResponse\":{\"shape\":\"S18\"}},\"required\":[\"CampaignResponse\"],\"payload\":\"CampaignResponse\"}},\"DeleteEmailChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/email\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EmailChannelResponse\":{\"shape\":\"S4n\"}},\"required\":[\"EmailChannelResponse\"],\"payload\":\"EmailChannelResponse\"}},\"DeleteEmailTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/templates/{template-name}/email\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"DeleteEndpoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/endpoints/{endpoint-id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EndpointId\":{\"location\":\"uri\",\"locationName\":\"endpoint-id\"}},\"required\":[\"ApplicationId\",\"EndpointId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointResponse\":{\"shape\":\"S4t\"}},\"required\":[\"EndpointResponse\"],\"payload\":\"EndpointResponse\"}},\"DeleteEventStream\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/eventstream\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EventStream\":{\"shape\":\"S52\"}},\"required\":[\"EventStream\"],\"payload\":\"EventStream\"}},\"DeleteGcmChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/gcm\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"GCMChannelResponse\":{\"shape\":\"S55\"}},\"required\":[\"GCMChannelResponse\"],\"payload\":\"GCMChannelResponse\"}},\"DeleteJourney\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"}},\"required\":[\"JourneyId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyResponse\":{\"shape\":\"S32\"}},\"required\":[\"JourneyResponse\"],\"payload\":\"JourneyResponse\"}},\"DeletePushTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/templates/{template-name}/push\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"DeleteRecommenderConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/recommenders/{recommender-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RecommenderId\":{\"location\":\"uri\",\"locationName\":\"recommender-id\"}},\"required\":[\"RecommenderId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"RecommenderConfigurationResponse\":{\"shape\":\"S3c\"}},\"required\":[\"RecommenderConfigurationResponse\"],\"payload\":\"RecommenderConfigurationResponse\"}},\"DeleteSegment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"}},\"required\":[\"SegmentId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentResponse\":{\"shape\":\"S3p\"}},\"required\":[\"SegmentResponse\"],\"payload\":\"SegmentResponse\"}},\"DeleteSmsChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/sms\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SMSChannelResponse\":{\"shape\":\"S5g\"}},\"required\":[\"SMSChannelResponse\"],\"payload\":\"SMSChannelResponse\"}},\"DeleteSmsTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/templates/{template-name}/sms\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"DeleteUserEndpoints\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/users/{user-id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"user-id\"}},\"required\":[\"ApplicationId\",\"UserId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointsResponse\":{\"shape\":\"S5l\"}},\"required\":[\"EndpointsResponse\"],\"payload\":\"EndpointsResponse\"}},\"DeleteVoiceChannel\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/apps/{application-id}/channels/voice\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceChannelResponse\":{\"shape\":\"S5p\"}},\"required\":[\"VoiceChannelResponse\"],\"payload\":\"VoiceChannelResponse\"}},\"DeleteVoiceTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/templates/{template-name}/voice\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"GetAdmChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/adm\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ADMChannelResponse\":{\"shape\":\"S41\"}},\"required\":[\"ADMChannelResponse\"],\"payload\":\"ADMChannelResponse\"}},\"GetApnsChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSChannelResponse\":{\"shape\":\"S44\"}},\"required\":[\"APNSChannelResponse\"],\"payload\":\"APNSChannelResponse\"}},\"GetApnsSandboxChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_sandbox\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSSandboxChannelResponse\":{\"shape\":\"S47\"}},\"required\":[\"APNSSandboxChannelResponse\"],\"payload\":\"APNSSandboxChannelResponse\"}},\"GetApnsVoipChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_voip\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSVoipChannelResponse\":{\"shape\":\"S4a\"}},\"required\":[\"APNSVoipChannelResponse\"],\"payload\":\"APNSVoipChannelResponse\"}},\"GetApnsVoipSandboxChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_voip_sandbox\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"APNSVoipSandboxChannelResponse\":{\"shape\":\"S4d\"}},\"required\":[\"APNSVoipSandboxChannelResponse\"],\"payload\":\"APNSVoipSandboxChannelResponse\"}},\"GetApp\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationResponse\":{\"shape\":\"S6\"}},\"required\":[\"ApplicationResponse\"],\"payload\":\"ApplicationResponse\"}},\"GetApplicationDateRangeKpi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/kpis/daterange/{kpi-name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EndTime\":{\"shape\":\"S2w\",\"location\":\"querystring\",\"locationName\":\"end-time\"},\"KpiName\":{\"location\":\"uri\",\"locationName\":\"kpi-name\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"StartTime\":{\"shape\":\"S2w\",\"location\":\"querystring\",\"locationName\":\"start-time\"}},\"required\":[\"ApplicationId\",\"KpiName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationDateRangeKpiResponse\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"EndTime\":{\"shape\":\"S2w\"},\"KpiName\":{},\"KpiResult\":{\"shape\":\"S67\"},\"NextToken\":{},\"StartTime\":{\"shape\":\"S2w\"}},\"required\":[\"KpiResult\",\"KpiName\",\"EndTime\",\"StartTime\",\"ApplicationId\"]}},\"required\":[\"ApplicationDateRangeKpiResponse\"],\"payload\":\"ApplicationDateRangeKpiResponse\"}},\"GetApplicationSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/settings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationSettingsResource\":{\"shape\":\"S6e\"}},\"required\":[\"ApplicationSettingsResource\"],\"payload\":\"ApplicationSettingsResource\"}},\"GetApps\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationsResponse\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\"}},\"NextToken\":{}}}},\"required\":[\"ApplicationsResponse\"],\"payload\":\"ApplicationsResponse\"}},\"GetBaiduChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/baidu\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"BaiduChannelResponse\":{\"shape\":\"S4i\"}},\"required\":[\"BaiduChannelResponse\"],\"payload\":\"BaiduChannelResponse\"}},\"GetCampaign\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"}},\"required\":[\"CampaignId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignResponse\":{\"shape\":\"S18\"}},\"required\":[\"CampaignResponse\"],\"payload\":\"CampaignResponse\"}},\"GetCampaignActivities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}/activities\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\",\"CampaignId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ActivitiesResponse\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CampaignId\":{},\"End\":{},\"Id\":{},\"Result\":{},\"ScheduledStart\":{},\"Start\":{},\"State\":{},\"SuccessfulEndpointCount\":{\"type\":\"integer\"},\"TimezonesCompletedCount\":{\"type\":\"integer\"},\"TimezonesTotalCount\":{\"type\":\"integer\"},\"TotalEndpointCount\":{\"type\":\"integer\"},\"TreatmentId\":{}},\"required\":[\"CampaignId\",\"Id\",\"ApplicationId\"]}},\"NextToken\":{}},\"required\":[\"Item\"]}},\"required\":[\"ActivitiesResponse\"],\"payload\":\"ActivitiesResponse\"}},\"GetCampaignDateRangeKpi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}/kpis/daterange/{kpi-name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"},\"EndTime\":{\"shape\":\"S2w\",\"location\":\"querystring\",\"locationName\":\"end-time\"},\"KpiName\":{\"location\":\"uri\",\"locationName\":\"kpi-name\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"StartTime\":{\"shape\":\"S2w\",\"location\":\"querystring\",\"locationName\":\"start-time\"}},\"required\":[\"ApplicationId\",\"KpiName\",\"CampaignId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignDateRangeKpiResponse\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CampaignId\":{},\"EndTime\":{\"shape\":\"S2w\"},\"KpiName\":{},\"KpiResult\":{\"shape\":\"S67\"},\"NextToken\":{},\"StartTime\":{\"shape\":\"S2w\"}},\"required\":[\"KpiResult\",\"KpiName\",\"EndTime\",\"CampaignId\",\"StartTime\",\"ApplicationId\"]}},\"required\":[\"CampaignDateRangeKpiResponse\"],\"payload\":\"CampaignDateRangeKpiResponse\"}},\"GetCampaignVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}/versions/{version}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"},\"Version\":{\"location\":\"uri\",\"locationName\":\"version\"}},\"required\":[\"Version\",\"ApplicationId\",\"CampaignId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignResponse\":{\"shape\":\"S18\"}},\"required\":[\"CampaignResponse\"],\"payload\":\"CampaignResponse\"}},\"GetCampaignVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\",\"CampaignId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignsResponse\":{\"shape\":\"S6z\"}},\"required\":[\"CampaignsResponse\"],\"payload\":\"CampaignsResponse\"}},\"GetCampaigns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/campaigns\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignsResponse\":{\"shape\":\"S6z\"}},\"required\":[\"CampaignsResponse\"],\"payload\":\"CampaignsResponse\"}},\"GetChannels\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ChannelsResponse\":{\"type\":\"structure\",\"members\":{\"Channels\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Version\":{\"type\":\"integer\"}}}}},\"required\":[\"Channels\"]}},\"required\":[\"ChannelsResponse\"],\"payload\":\"ChannelsResponse\"}},\"GetEmailChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/email\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EmailChannelResponse\":{\"shape\":\"S4n\"}},\"required\":[\"EmailChannelResponse\"],\"payload\":\"EmailChannelResponse\"}},\"GetEmailTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/templates/{template-name}/email\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EmailTemplateResponse\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationDate\":{},\"DefaultSubstitutions\":{},\"HtmlPart\":{},\"LastModifiedDate\":{},\"RecommenderId\":{},\"Subject\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"TemplateName\":{},\"TemplateType\":{},\"TextPart\":{},\"Version\":{}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"TemplateName\",\"TemplateType\"]}},\"required\":[\"EmailTemplateResponse\"],\"payload\":\"EmailTemplateResponse\"}},\"GetEndpoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/endpoints/{endpoint-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EndpointId\":{\"location\":\"uri\",\"locationName\":\"endpoint-id\"}},\"required\":[\"ApplicationId\",\"EndpointId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointResponse\":{\"shape\":\"S4t\"}},\"required\":[\"EndpointResponse\"],\"payload\":\"EndpointResponse\"}},\"GetEventStream\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/eventstream\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EventStream\":{\"shape\":\"S52\"}},\"required\":[\"EventStream\"],\"payload\":\"EventStream\"}},\"GetExportJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/jobs/export/{job-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"job-id\"}},\"required\":[\"ApplicationId\",\"JobId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ExportJobResponse\":{\"shape\":\"S1k\"}},\"required\":[\"ExportJobResponse\"],\"payload\":\"ExportJobResponse\"}},\"GetExportJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/jobs/export\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ExportJobsResponse\":{\"shape\":\"S7m\"}},\"required\":[\"ExportJobsResponse\"],\"payload\":\"ExportJobsResponse\"}},\"GetGcmChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/gcm\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"GCMChannelResponse\":{\"shape\":\"S55\"}},\"required\":[\"GCMChannelResponse\"],\"payload\":\"GCMChannelResponse\"}},\"GetImportJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/jobs/import/{job-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"job-id\"}},\"required\":[\"ApplicationId\",\"JobId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ImportJobResponse\":{\"shape\":\"S1r\"}},\"required\":[\"ImportJobResponse\"],\"payload\":\"ImportJobResponse\"}},\"GetImportJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/jobs/import\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ImportJobsResponse\":{\"shape\":\"S7u\"}},\"required\":[\"ImportJobsResponse\"],\"payload\":\"ImportJobsResponse\"}},\"GetJourney\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"}},\"required\":[\"JourneyId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyResponse\":{\"shape\":\"S32\"}},\"required\":[\"JourneyResponse\"],\"payload\":\"JourneyResponse\"}},\"GetJourneyDateRangeKpi\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}/kpis/daterange/{kpi-name}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EndTime\":{\"shape\":\"S2w\",\"location\":\"querystring\",\"locationName\":\"end-time\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"},\"KpiName\":{\"location\":\"uri\",\"locationName\":\"kpi-name\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"StartTime\":{\"shape\":\"S2w\",\"location\":\"querystring\",\"locationName\":\"start-time\"}},\"required\":[\"JourneyId\",\"ApplicationId\",\"KpiName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyDateRangeKpiResponse\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"EndTime\":{\"shape\":\"S2w\"},\"JourneyId\":{},\"KpiName\":{},\"KpiResult\":{\"shape\":\"S67\"},\"NextToken\":{},\"StartTime\":{\"shape\":\"S2w\"}},\"required\":[\"KpiResult\",\"KpiName\",\"JourneyId\",\"EndTime\",\"StartTime\",\"ApplicationId\"]}},\"required\":[\"JourneyDateRangeKpiResponse\"],\"payload\":\"JourneyDateRangeKpiResponse\"}},\"GetJourneyExecutionActivityMetrics\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}/activities/{journey-activity-id}/execution-metrics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JourneyActivityId\":{\"location\":\"uri\",\"locationName\":\"journey-activity-id\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"}},\"required\":[\"JourneyActivityId\",\"ApplicationId\",\"JourneyId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyExecutionActivityMetricsResponse\":{\"type\":\"structure\",\"members\":{\"ActivityType\":{},\"ApplicationId\":{},\"JourneyActivityId\":{},\"JourneyId\":{},\"LastEvaluatedTime\":{},\"Metrics\":{\"shape\":\"S4\"}},\"required\":[\"Metrics\",\"JourneyId\",\"LastEvaluatedTime\",\"JourneyActivityId\",\"ActivityType\",\"ApplicationId\"]}},\"required\":[\"JourneyExecutionActivityMetricsResponse\"],\"payload\":\"JourneyExecutionActivityMetricsResponse\"}},\"GetJourneyExecutionMetrics\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}/execution-metrics\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"}},\"required\":[\"ApplicationId\",\"JourneyId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyExecutionMetricsResponse\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"JourneyId\":{},\"LastEvaluatedTime\":{},\"Metrics\":{\"shape\":\"S4\"}},\"required\":[\"Metrics\",\"JourneyId\",\"LastEvaluatedTime\",\"ApplicationId\"]}},\"required\":[\"JourneyExecutionMetricsResponse\"],\"payload\":\"JourneyExecutionMetricsResponse\"}},\"GetPushTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/templates/{template-name}/push\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"PushNotificationTemplateResponse\":{\"type\":\"structure\",\"members\":{\"ADM\":{\"shape\":\"S35\"},\"APNS\":{\"shape\":\"S36\"},\"Arn\":{},\"Baidu\":{\"shape\":\"S35\"},\"CreationDate\":{},\"Default\":{\"shape\":\"S37\"},\"DefaultSubstitutions\":{},\"GCM\":{\"shape\":\"S35\"},\"LastModifiedDate\":{},\"RecommenderId\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"TemplateName\":{},\"TemplateType\":{},\"Version\":{}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"TemplateType\",\"TemplateName\"]}},\"required\":[\"PushNotificationTemplateResponse\"],\"payload\":\"PushNotificationTemplateResponse\"}},\"GetRecommenderConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/recommenders/{recommender-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RecommenderId\":{\"location\":\"uri\",\"locationName\":\"recommender-id\"}},\"required\":[\"RecommenderId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"RecommenderConfigurationResponse\":{\"shape\":\"S3c\"}},\"required\":[\"RecommenderConfigurationResponse\"],\"payload\":\"RecommenderConfigurationResponse\"}},\"GetRecommenderConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/recommenders\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ListRecommenderConfigurationsResponse\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S3c\"}},\"NextToken\":{}},\"required\":[\"Item\"]}},\"required\":[\"ListRecommenderConfigurationsResponse\"],\"payload\":\"ListRecommenderConfigurationsResponse\"}},\"GetSegment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"}},\"required\":[\"SegmentId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentResponse\":{\"shape\":\"S3p\"}},\"required\":[\"SegmentResponse\"],\"payload\":\"SegmentResponse\"}},\"GetSegmentExportJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}/jobs/export\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"SegmentId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ExportJobsResponse\":{\"shape\":\"S7m\"}},\"required\":[\"ExportJobsResponse\"],\"payload\":\"ExportJobsResponse\"}},\"GetSegmentImportJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}/jobs/import\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"SegmentId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ImportJobsResponse\":{\"shape\":\"S7u\"}},\"required\":[\"ImportJobsResponse\"],\"payload\":\"ImportJobsResponse\"}},\"GetSegmentVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}/versions/{version}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"},\"Version\":{\"location\":\"uri\",\"locationName\":\"version\"}},\"required\":[\"SegmentId\",\"Version\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentResponse\":{\"shape\":\"S3p\"}},\"required\":[\"SegmentResponse\"],\"payload\":\"SegmentResponse\"}},\"GetSegmentVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"SegmentId\",\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentsResponse\":{\"shape\":\"S8q\"}},\"required\":[\"SegmentsResponse\"],\"payload\":\"SegmentsResponse\"}},\"GetSegments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/segments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentsResponse\":{\"shape\":\"S8q\"}},\"required\":[\"SegmentsResponse\"],\"payload\":\"SegmentsResponse\"}},\"GetSmsChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/sms\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SMSChannelResponse\":{\"shape\":\"S5g\"}},\"required\":[\"SMSChannelResponse\"],\"payload\":\"SMSChannelResponse\"}},\"GetSmsTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/templates/{template-name}/sms\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"SMSTemplateResponse\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Body\":{},\"CreationDate\":{},\"DefaultSubstitutions\":{},\"LastModifiedDate\":{},\"RecommenderId\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"TemplateName\":{},\"TemplateType\":{},\"Version\":{}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"TemplateName\",\"TemplateType\"]}},\"required\":[\"SMSTemplateResponse\"],\"payload\":\"SMSTemplateResponse\"}},\"GetUserEndpoints\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/users/{user-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"user-id\"}},\"required\":[\"ApplicationId\",\"UserId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointsResponse\":{\"shape\":\"S5l\"}},\"required\":[\"EndpointsResponse\"],\"payload\":\"EndpointsResponse\"}},\"GetVoiceChannel\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/channels/voice\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceChannelResponse\":{\"shape\":\"S5p\"}},\"required\":[\"VoiceChannelResponse\"],\"payload\":\"VoiceChannelResponse\"}},\"GetVoiceTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/templates/{template-name}/voice\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceTemplateResponse\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Body\":{},\"CreationDate\":{},\"DefaultSubstitutions\":{},\"LanguageCode\":{},\"LastModifiedDate\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"TemplateName\":{},\"TemplateType\":{},\"Version\":{},\"VoiceId\":{}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"TemplateName\",\"TemplateType\"]}},\"required\":[\"VoiceTemplateResponse\"],\"payload\":\"VoiceTemplateResponse\"}},\"ListJourneys\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/apps/{application-id}/journeys\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Token\":{\"location\":\"querystring\",\"locationName\":\"token\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"JourneysResponse\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S32\"}},\"NextToken\":{}},\"required\":[\"Item\"]}},\"required\":[\"JourneysResponse\"],\"payload\":\"JourneysResponse\"}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"TagsModel\":{\"shape\":\"S9c\"}},\"required\":[\"TagsModel\"],\"payload\":\"TagsModel\"}},\"ListTemplateVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/templates/{template-name}/{template-type}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"TemplateType\":{\"location\":\"uri\",\"locationName\":\"template-type\"}},\"required\":[\"TemplateName\",\"TemplateType\"]},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateVersionsResponse\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreationDate\":{},\"DefaultSubstitutions\":{},\"LastModifiedDate\":{},\"TemplateDescription\":{},\"TemplateName\":{},\"TemplateType\":{},\"Version\":{}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"TemplateName\",\"TemplateType\"]}},\"Message\":{},\"NextToken\":{},\"RequestID\":{}},\"required\":[\"Item\"]}},\"required\":[\"TemplateVersionsResponse\"],\"payload\":\"TemplateVersionsResponse\"}},\"ListTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/templates\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"page-size\"},\"Prefix\":{\"location\":\"querystring\",\"locationName\":\"prefix\"},\"TemplateType\":{\"location\":\"querystring\",\"locationName\":\"template-type\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplatesResponse\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreationDate\":{},\"DefaultSubstitutions\":{},\"LastModifiedDate\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"TemplateName\":{},\"TemplateType\":{},\"Version\":{}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"TemplateName\",\"TemplateType\"]}},\"NextToken\":{}},\"required\":[\"Item\"]}},\"required\":[\"TemplatesResponse\"],\"payload\":\"TemplatesResponse\"}},\"PhoneNumberValidate\":{\"http\":{\"requestUri\":\"/v1/phone/number/validate\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NumberValidateRequest\":{\"type\":\"structure\",\"members\":{\"IsoCountryCode\":{},\"PhoneNumber\":{}}}},\"required\":[\"NumberValidateRequest\"],\"payload\":\"NumberValidateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"NumberValidateResponse\":{\"type\":\"structure\",\"members\":{\"Carrier\":{},\"City\":{},\"CleansedPhoneNumberE164\":{},\"CleansedPhoneNumberNational\":{},\"Country\":{},\"CountryCodeIso2\":{},\"CountryCodeNumeric\":{},\"County\":{},\"OriginalCountryCodeIso2\":{},\"OriginalPhoneNumber\":{},\"PhoneType\":{},\"PhoneTypeCode\":{\"type\":\"integer\"},\"Timezone\":{},\"ZipCode\":{}}}},\"required\":[\"NumberValidateResponse\"],\"payload\":\"NumberValidateResponse\"}},\"PutEventStream\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/eventstream\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"WriteEventStream\":{\"type\":\"structure\",\"members\":{\"DestinationStreamArn\":{},\"RoleArn\":{}},\"required\":[\"RoleArn\",\"DestinationStreamArn\"]}},\"required\":[\"ApplicationId\",\"WriteEventStream\"],\"payload\":\"WriteEventStream\"},\"output\":{\"type\":\"structure\",\"members\":{\"EventStream\":{\"shape\":\"S52\"}},\"required\":[\"EventStream\"],\"payload\":\"EventStream\"}},\"PutEvents\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/events\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EventsRequest\":{\"type\":\"structure\",\"members\":{\"BatchItem\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Attributes\":{\"shape\":\"S4u\"},\"ChannelType\":{},\"Demographic\":{\"shape\":\"S4w\"},\"EffectiveDate\":{},\"EndpointStatus\":{},\"Location\":{\"shape\":\"S4x\"},\"Metrics\":{\"shape\":\"S4y\"},\"OptOut\":{},\"RequestId\":{},\"User\":{\"shape\":\"S4z\"}}},\"Events\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"AppPackageName\":{},\"AppTitle\":{},\"AppVersionCode\":{},\"Attributes\":{\"shape\":\"S4\"},\"ClientSdkVersion\":{},\"EventType\":{},\"Metrics\":{\"shape\":\"S4y\"},\"SdkName\":{},\"Session\":{\"type\":\"structure\",\"members\":{\"Duration\":{\"type\":\"integer\"},\"Id\":{},\"StartTimestamp\":{},\"StopTimestamp\":{}},\"required\":[\"StartTimestamp\",\"Id\"]},\"Timestamp\":{}},\"required\":[\"EventType\",\"Timestamp\"]}}},\"required\":[\"Endpoint\",\"Events\"]}}},\"required\":[\"BatchItem\"]}},\"required\":[\"ApplicationId\",\"EventsRequest\"],\"payload\":\"EventsRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"EventsResponse\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"EndpointItemResponse\":{\"type\":\"structure\",\"members\":{\"Message\":{},\"StatusCode\":{\"type\":\"integer\"}}},\"EventsItemResponse\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Message\":{},\"StatusCode\":{\"type\":\"integer\"}}}}}}}}}},\"required\":[\"EventsResponse\"],\"payload\":\"EventsResponse\"}},\"RemoveAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/attributes/{attribute-type}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"AttributeType\":{\"location\":\"uri\",\"locationName\":\"attribute-type\"},\"UpdateAttributesRequest\":{\"type\":\"structure\",\"members\":{\"Blacklist\":{\"shape\":\"St\"}}}},\"required\":[\"AttributeType\",\"ApplicationId\",\"UpdateAttributesRequest\"],\"payload\":\"UpdateAttributesRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"AttributesResource\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"AttributeType\":{},\"Attributes\":{\"shape\":\"St\"}},\"required\":[\"AttributeType\",\"ApplicationId\"]}},\"required\":[\"AttributesResource\"],\"payload\":\"AttributesResource\"}},\"SendMessages\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/messages\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"MessageRequest\":{\"type\":\"structure\",\"members\":{\"Addresses\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"BodyOverride\":{},\"ChannelType\":{},\"Context\":{\"shape\":\"S4\"},\"RawContent\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"TitleOverride\":{}}}},\"Context\":{\"shape\":\"S4\"},\"Endpoints\":{\"shape\":\"Sah\"},\"MessageConfiguration\":{\"shape\":\"Saj\"},\"TemplateConfiguration\":{\"shape\":\"S12\"},\"TraceId\":{}},\"required\":[\"MessageConfiguration\"]}},\"required\":[\"ApplicationId\",\"MessageRequest\"],\"payload\":\"MessageRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageResponse\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"EndpointResult\":{\"shape\":\"Saz\"},\"RequestId\":{},\"Result\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"DeliveryStatus\":{},\"MessageId\":{},\"StatusCode\":{\"type\":\"integer\"},\"StatusMessage\":{},\"UpdatedToken\":{}},\"required\":[\"DeliveryStatus\",\"StatusCode\"]}}},\"required\":[\"ApplicationId\"]}},\"required\":[\"MessageResponse\"],\"payload\":\"MessageResponse\"}},\"SendUsersMessages\":{\"http\":{\"requestUri\":\"/v1/apps/{application-id}/users-messages\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"SendUsersMessageRequest\":{\"type\":\"structure\",\"members\":{\"Context\":{\"shape\":\"S4\"},\"MessageConfiguration\":{\"shape\":\"Saj\"},\"TemplateConfiguration\":{\"shape\":\"S12\"},\"TraceId\":{},\"Users\":{\"shape\":\"Sah\"}},\"required\":[\"MessageConfiguration\",\"Users\"]}},\"required\":[\"ApplicationId\",\"SendUsersMessageRequest\"],\"payload\":\"SendUsersMessageRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"SendUsersMessageResponse\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"RequestId\":{},\"Result\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Saz\"}}},\"required\":[\"ApplicationId\"]}},\"required\":[\"SendUsersMessageResponse\"],\"payload\":\"SendUsersMessageResponse\"}},\"TagResource\":{\"http\":{\"requestUri\":\"/v1/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagsModel\":{\"shape\":\"S9c\"}},\"required\":[\"ResourceArn\",\"TagsModel\"],\"payload\":\"TagsModel\"}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"shape\":\"St\",\"location\":\"querystring\",\"locationName\":\"tagKeys\"}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateAdmChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/adm\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ADMChannelRequest\":{\"type\":\"structure\",\"members\":{\"ClientId\":{},\"ClientSecret\":{},\"Enabled\":{\"type\":\"boolean\"}},\"required\":[\"ClientSecret\",\"ClientId\"]},\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\",\"ADMChannelRequest\"],\"payload\":\"ADMChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"ADMChannelResponse\":{\"shape\":\"S41\"}},\"required\":[\"ADMChannelResponse\"],\"payload\":\"ADMChannelResponse\"}},\"UpdateApnsChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"APNSChannelRequest\":{\"type\":\"structure\",\"members\":{\"BundleId\":{},\"Certificate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"PrivateKey\":{},\"TeamId\":{},\"TokenKey\":{},\"TokenKeyId\":{}}},\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\",\"APNSChannelRequest\"],\"payload\":\"APNSChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"APNSChannelResponse\":{\"shape\":\"S44\"}},\"required\":[\"APNSChannelResponse\"],\"payload\":\"APNSChannelResponse\"}},\"UpdateApnsSandboxChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_sandbox\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"APNSSandboxChannelRequest\":{\"type\":\"structure\",\"members\":{\"BundleId\":{},\"Certificate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"PrivateKey\":{},\"TeamId\":{},\"TokenKey\":{},\"TokenKeyId\":{}}},\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\",\"APNSSandboxChannelRequest\"],\"payload\":\"APNSSandboxChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"APNSSandboxChannelResponse\":{\"shape\":\"S47\"}},\"required\":[\"APNSSandboxChannelResponse\"],\"payload\":\"APNSSandboxChannelResponse\"}},\"UpdateApnsVoipChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_voip\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"APNSVoipChannelRequest\":{\"type\":\"structure\",\"members\":{\"BundleId\":{},\"Certificate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"PrivateKey\":{},\"TeamId\":{},\"TokenKey\":{},\"TokenKeyId\":{}}},\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\",\"APNSVoipChannelRequest\"],\"payload\":\"APNSVoipChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"APNSVoipChannelResponse\":{\"shape\":\"S4a\"}},\"required\":[\"APNSVoipChannelResponse\"],\"payload\":\"APNSVoipChannelResponse\"}},\"UpdateApnsVoipSandboxChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/apns_voip_sandbox\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"APNSVoipSandboxChannelRequest\":{\"type\":\"structure\",\"members\":{\"BundleId\":{},\"Certificate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"PrivateKey\":{},\"TeamId\":{},\"TokenKey\":{},\"TokenKeyId\":{}}},\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"}},\"required\":[\"ApplicationId\",\"APNSVoipSandboxChannelRequest\"],\"payload\":\"APNSVoipSandboxChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"APNSVoipSandboxChannelResponse\":{\"shape\":\"S4d\"}},\"required\":[\"APNSVoipSandboxChannelResponse\"],\"payload\":\"APNSVoipSandboxChannelResponse\"}},\"UpdateApplicationSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/settings\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"WriteApplicationSettingsRequest\":{\"type\":\"structure\",\"members\":{\"CampaignHook\":{\"shape\":\"S14\"},\"CloudWatchMetricsEnabled\":{\"type\":\"boolean\"},\"EventTaggingEnabled\":{\"type\":\"boolean\"},\"Limits\":{\"shape\":\"S16\"},\"QuietTime\":{\"shape\":\"S11\"}}}},\"required\":[\"ApplicationId\",\"WriteApplicationSettingsRequest\"],\"payload\":\"WriteApplicationSettingsRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationSettingsResource\":{\"shape\":\"S6e\"}},\"required\":[\"ApplicationSettingsResource\"],\"payload\":\"ApplicationSettingsResource\"}},\"UpdateBaiduChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/baidu\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"BaiduChannelRequest\":{\"type\":\"structure\",\"members\":{\"ApiKey\":{},\"Enabled\":{\"type\":\"boolean\"},\"SecretKey\":{}},\"required\":[\"SecretKey\",\"ApiKey\"]}},\"required\":[\"ApplicationId\",\"BaiduChannelRequest\"],\"payload\":\"BaiduChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"BaiduChannelResponse\":{\"shape\":\"S4i\"}},\"required\":[\"BaiduChannelResponse\"],\"payload\":\"BaiduChannelResponse\"}},\"UpdateCampaign\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/campaigns/{campaign-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"campaign-id\"},\"WriteCampaignRequest\":{\"shape\":\"S8\"}},\"required\":[\"CampaignId\",\"ApplicationId\",\"WriteCampaignRequest\"],\"payload\":\"WriteCampaignRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"CampaignResponse\":{\"shape\":\"S18\"}},\"required\":[\"CampaignResponse\"],\"payload\":\"CampaignResponse\"}},\"UpdateEmailChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/email\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EmailChannelRequest\":{\"type\":\"structure\",\"members\":{\"ConfigurationSet\":{},\"Enabled\":{\"type\":\"boolean\"},\"FromAddress\":{},\"Identity\":{},\"RoleArn\":{}},\"required\":[\"FromAddress\",\"Identity\"]}},\"required\":[\"ApplicationId\",\"EmailChannelRequest\"],\"payload\":\"EmailChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"EmailChannelResponse\":{\"shape\":\"S4n\"}},\"required\":[\"EmailChannelResponse\"],\"payload\":\"EmailChannelResponse\"}},\"UpdateEmailTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/templates/{template-name}/email\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"CreateNewVersion\":{\"location\":\"querystring\",\"locationName\":\"create-new-version\",\"type\":\"boolean\"},\"EmailTemplateRequest\":{\"shape\":\"S1e\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\",\"EmailTemplateRequest\"],\"payload\":\"EmailTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"UpdateEndpoint\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/endpoints/{endpoint-id}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EndpointId\":{\"location\":\"uri\",\"locationName\":\"endpoint-id\"},\"EndpointRequest\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Attributes\":{\"shape\":\"S4u\"},\"ChannelType\":{},\"Demographic\":{\"shape\":\"S4w\"},\"EffectiveDate\":{},\"EndpointStatus\":{},\"Location\":{\"shape\":\"S4x\"},\"Metrics\":{\"shape\":\"S4y\"},\"OptOut\":{},\"RequestId\":{},\"User\":{\"shape\":\"S4z\"}}}},\"required\":[\"ApplicationId\",\"EndpointId\",\"EndpointRequest\"],\"payload\":\"EndpointRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"UpdateEndpointsBatch\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/endpoints\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"EndpointBatchRequest\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Attributes\":{\"shape\":\"S4u\"},\"ChannelType\":{},\"Demographic\":{\"shape\":\"S4w\"},\"EffectiveDate\":{},\"EndpointStatus\":{},\"Id\":{},\"Location\":{\"shape\":\"S4x\"},\"Metrics\":{\"shape\":\"S4y\"},\"OptOut\":{},\"RequestId\":{},\"User\":{\"shape\":\"S4z\"}}}}},\"required\":[\"Item\"]}},\"required\":[\"ApplicationId\",\"EndpointBatchRequest\"],\"payload\":\"EndpointBatchRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"UpdateGcmChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/gcm\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"GCMChannelRequest\":{\"type\":\"structure\",\"members\":{\"ApiKey\":{},\"Enabled\":{\"type\":\"boolean\"}},\"required\":[\"ApiKey\"]}},\"required\":[\"ApplicationId\",\"GCMChannelRequest\"],\"payload\":\"GCMChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"GCMChannelResponse\":{\"shape\":\"S55\"}},\"required\":[\"GCMChannelResponse\"],\"payload\":\"GCMChannelResponse\"}},\"UpdateJourney\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"},\"WriteJourneyRequest\":{\"shape\":\"S1u\"}},\"required\":[\"JourneyId\",\"ApplicationId\",\"WriteJourneyRequest\"],\"payload\":\"WriteJourneyRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyResponse\":{\"shape\":\"S32\"}},\"required\":[\"JourneyResponse\"],\"payload\":\"JourneyResponse\"}},\"UpdateJourneyState\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/journeys/{journey-id}/state\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"JourneyId\":{\"location\":\"uri\",\"locationName\":\"journey-id\"},\"JourneyStateRequest\":{\"type\":\"structure\",\"members\":{\"State\":{}}}},\"required\":[\"JourneyId\",\"ApplicationId\",\"JourneyStateRequest\"],\"payload\":\"JourneyStateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"JourneyResponse\":{\"shape\":\"S32\"}},\"required\":[\"JourneyResponse\"],\"payload\":\"JourneyResponse\"}},\"UpdatePushTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/templates/{template-name}/push\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"CreateNewVersion\":{\"location\":\"querystring\",\"locationName\":\"create-new-version\",\"type\":\"boolean\"},\"PushNotificationTemplateRequest\":{\"shape\":\"S34\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\",\"PushNotificationTemplateRequest\"],\"payload\":\"PushNotificationTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"UpdateRecommenderConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/recommenders/{recommender-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RecommenderId\":{\"location\":\"uri\",\"locationName\":\"recommender-id\"},\"UpdateRecommenderConfiguration\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4\"},\"Description\":{},\"Name\":{},\"RecommendationProviderIdType\":{},\"RecommendationProviderRoleArn\":{},\"RecommendationProviderUri\":{},\"RecommendationTransformerUri\":{},\"RecommendationsDisplayName\":{},\"RecommendationsPerMessage\":{\"type\":\"integer\"}},\"required\":[\"RecommendationProviderUri\",\"RecommendationProviderRoleArn\"]}},\"required\":[\"RecommenderId\",\"UpdateRecommenderConfiguration\"],\"payload\":\"UpdateRecommenderConfiguration\"},\"output\":{\"type\":\"structure\",\"members\":{\"RecommenderConfigurationResponse\":{\"shape\":\"S3c\"}},\"required\":[\"RecommenderConfigurationResponse\"],\"payload\":\"RecommenderConfigurationResponse\"}},\"UpdateSegment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/segments/{segment-id}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"SegmentId\":{\"location\":\"uri\",\"locationName\":\"segment-id\"},\"WriteSegmentRequest\":{\"shape\":\"S3e\"}},\"required\":[\"SegmentId\",\"ApplicationId\",\"WriteSegmentRequest\"],\"payload\":\"WriteSegmentRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"SegmentResponse\":{\"shape\":\"S3p\"}},\"required\":[\"SegmentResponse\"],\"payload\":\"SegmentResponse\"}},\"UpdateSmsChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/sms\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"SMSChannelRequest\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"SenderId\":{},\"ShortCode\":{}}}},\"required\":[\"ApplicationId\",\"SMSChannelRequest\"],\"payload\":\"SMSChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"SMSChannelResponse\":{\"shape\":\"S5g\"}},\"required\":[\"SMSChannelResponse\"],\"payload\":\"SMSChannelResponse\"}},\"UpdateSmsTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/templates/{template-name}/sms\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"CreateNewVersion\":{\"location\":\"querystring\",\"locationName\":\"create-new-version\",\"type\":\"boolean\"},\"SMSTemplateRequest\":{\"shape\":\"S3u\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"}},\"required\":[\"TemplateName\",\"SMSTemplateRequest\"],\"payload\":\"SMSTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"UpdateTemplateActiveVersion\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/templates/{template-name}/{template-type}/active-version\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"TemplateActiveVersionRequest\":{\"type\":\"structure\",\"members\":{\"Version\":{}}},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"TemplateType\":{\"location\":\"uri\",\"locationName\":\"template-type\"}},\"required\":[\"TemplateName\",\"TemplateType\",\"TemplateActiveVersionRequest\"],\"payload\":\"TemplateActiveVersionRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}},\"UpdateVoiceChannel\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/apps/{application-id}/channels/voice\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"application-id\"},\"VoiceChannelRequest\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}},\"required\":[\"ApplicationId\",\"VoiceChannelRequest\"],\"payload\":\"VoiceChannelRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"VoiceChannelResponse\":{\"shape\":\"S5p\"}},\"required\":[\"VoiceChannelResponse\"],\"payload\":\"VoiceChannelResponse\"}},\"UpdateVoiceTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/templates/{template-name}/voice\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"CreateNewVersion\":{\"location\":\"querystring\",\"locationName\":\"create-new-version\",\"type\":\"boolean\"},\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"template-name\"},\"Version\":{\"location\":\"querystring\",\"locationName\":\"version\"},\"VoiceTemplateRequest\":{\"shape\":\"S3x\"}},\"required\":[\"TemplateName\",\"VoiceTemplateRequest\"],\"payload\":\"VoiceTemplateRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"MessageBody\":{\"shape\":\"S4q\"}},\"required\":[\"MessageBody\"],\"payload\":\"MessageBody\"}}},\"shapes\":{\"S4\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S6\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Id\":{},\"Name\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}},\"required\":[\"Id\",\"Arn\",\"Name\"]},\"S8\":{\"type\":\"structure\",\"members\":{\"AdditionalTreatments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CustomDeliveryConfiguration\":{\"shape\":\"Sb\"},\"MessageConfiguration\":{\"shape\":\"Se\"},\"Schedule\":{\"shape\":\"Sn\"},\"SizePercent\":{\"type\":\"integer\"},\"TemplateConfiguration\":{\"shape\":\"S12\"},\"TreatmentDescription\":{},\"TreatmentName\":{}},\"required\":[\"SizePercent\"]}},\"CustomDeliveryConfiguration\":{\"shape\":\"Sb\"},\"Description\":{},\"HoldoutPercent\":{\"type\":\"integer\"},\"Hook\":{\"shape\":\"S14\"},\"IsPaused\":{\"type\":\"boolean\"},\"Limits\":{\"shape\":\"S16\"},\"MessageConfiguration\":{\"shape\":\"Se\"},\"Name\":{},\"Schedule\":{\"shape\":\"Sn\"},\"SegmentId\":{},\"SegmentVersion\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateConfiguration\":{\"shape\":\"S12\"},\"TreatmentDescription\":{},\"TreatmentName\":{}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"DeliveryUri\":{},\"EndpointTypes\":{\"shape\":\"Sc\"}},\"required\":[\"DeliveryUri\"]},\"Sc\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"structure\",\"members\":{\"ADMMessage\":{\"shape\":\"Sf\"},\"APNSMessage\":{\"shape\":\"Sf\"},\"BaiduMessage\":{\"shape\":\"Sf\"},\"CustomMessage\":{\"type\":\"structure\",\"members\":{\"Data\":{}}},\"DefaultMessage\":{\"shape\":\"Sf\"},\"EmailMessage\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"FromAddress\":{},\"HtmlBody\":{},\"Title\":{}}},\"GCMMessage\":{\"shape\":\"Sf\"},\"SMSMessage\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"MessageType\":{},\"OriginationNumber\":{},\"SenderId\":{},\"EntityId\":{},\"TemplateId\":{}}}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"ImageIconUrl\":{},\"ImageSmallIconUrl\":{},\"ImageUrl\":{},\"JsonBody\":{},\"MediaUrl\":{},\"RawContent\":{},\"SilentPush\":{\"type\":\"boolean\"},\"TimeToLive\":{\"type\":\"integer\"},\"Title\":{},\"Url\":{}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"EndTime\":{},\"EventFilter\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"Sp\"},\"FilterType\":{}},\"required\":[\"FilterType\",\"Dimensions\"]},\"Frequency\":{},\"IsLocalTime\":{\"type\":\"boolean\"},\"QuietTime\":{\"shape\":\"S11\"},\"StartTime\":{},\"Timezone\":{}},\"required\":[\"StartTime\"]},\"Sp\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sq\"},\"EventType\":{\"shape\":\"Su\"},\"Metrics\":{\"shape\":\"Sw\"}}},\"Sq\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"AttributeType\":{},\"Values\":{\"shape\":\"St\"}},\"required\":[\"Values\"]}},\"St\":{\"type\":\"list\",\"member\":{}},\"Su\":{\"type\":\"structure\",\"members\":{\"DimensionType\":{},\"Values\":{\"shape\":\"St\"}},\"required\":[\"Values\"]},\"Sw\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"ComparisonOperator\":{},\"Value\":{\"type\":\"double\"}},\"required\":[\"ComparisonOperator\",\"Value\"]}},\"S11\":{\"type\":\"structure\",\"members\":{\"End\":{},\"Start\":{}}},\"S12\":{\"type\":\"structure\",\"members\":{\"EmailTemplate\":{\"shape\":\"S13\"},\"PushTemplate\":{\"shape\":\"S13\"},\"SMSTemplate\":{\"shape\":\"S13\"},\"VoiceTemplate\":{\"shape\":\"S13\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{}}},\"S14\":{\"type\":\"structure\",\"members\":{\"LambdaFunctionName\":{},\"Mode\":{},\"WebUrl\":{}}},\"S16\":{\"type\":\"structure\",\"members\":{\"Daily\":{\"type\":\"integer\"},\"MaximumDuration\":{\"type\":\"integer\"},\"MessagesPerSecond\":{\"type\":\"integer\"},\"Total\":{\"type\":\"integer\"}}},\"S18\":{\"type\":\"structure\",\"members\":{\"AdditionalTreatments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CustomDeliveryConfiguration\":{\"shape\":\"Sb\"},\"Id\":{},\"MessageConfiguration\":{\"shape\":\"Se\"},\"Schedule\":{\"shape\":\"Sn\"},\"SizePercent\":{\"type\":\"integer\"},\"State\":{\"shape\":\"S1b\"},\"TemplateConfiguration\":{\"shape\":\"S12\"},\"TreatmentDescription\":{},\"TreatmentName\":{}},\"required\":[\"Id\",\"SizePercent\"]}},\"ApplicationId\":{},\"Arn\":{},\"CreationDate\":{},\"CustomDeliveryConfiguration\":{\"shape\":\"Sb\"},\"DefaultState\":{\"shape\":\"S1b\"},\"Description\":{},\"HoldoutPercent\":{\"type\":\"integer\"},\"Hook\":{\"shape\":\"S14\"},\"Id\":{},\"IsPaused\":{\"type\":\"boolean\"},\"LastModifiedDate\":{},\"Limits\":{\"shape\":\"S16\"},\"MessageConfiguration\":{\"shape\":\"Se\"},\"Name\":{},\"Schedule\":{\"shape\":\"Sn\"},\"SegmentId\":{},\"SegmentVersion\":{\"type\":\"integer\"},\"State\":{\"shape\":\"S1b\"},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateConfiguration\":{\"shape\":\"S12\"},\"TreatmentDescription\":{},\"TreatmentName\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"LastModifiedDate\",\"CreationDate\",\"SegmentId\",\"SegmentVersion\",\"Id\",\"Arn\",\"ApplicationId\"]},\"S1b\":{\"type\":\"structure\",\"members\":{\"CampaignStatus\":{}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"DefaultSubstitutions\":{},\"HtmlPart\":{},\"RecommenderId\":{},\"Subject\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"TextPart\":{}}},\"S1g\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Message\":{},\"RequestID\":{}}},\"S1k\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CompletedPieces\":{\"type\":\"integer\"},\"CompletionDate\":{},\"CreationDate\":{},\"Definition\":{\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"S3UrlPrefix\":{},\"SegmentId\":{},\"SegmentVersion\":{\"type\":\"integer\"}},\"required\":[\"S3UrlPrefix\",\"RoleArn\"]},\"FailedPieces\":{\"type\":\"integer\"},\"Failures\":{\"shape\":\"St\"},\"Id\":{},\"JobStatus\":{},\"TotalFailures\":{\"type\":\"integer\"},\"TotalPieces\":{\"type\":\"integer\"},\"TotalProcessed\":{\"type\":\"integer\"},\"Type\":{}},\"required\":[\"JobStatus\",\"CreationDate\",\"Type\",\"Definition\",\"Id\",\"ApplicationId\"]},\"S1r\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CompletedPieces\":{\"type\":\"integer\"},\"CompletionDate\":{},\"CreationDate\":{},\"Definition\":{\"type\":\"structure\",\"members\":{\"DefineSegment\":{\"type\":\"boolean\"},\"ExternalId\":{},\"Format\":{},\"RegisterEndpoints\":{\"type\":\"boolean\"},\"RoleArn\":{},\"S3Url\":{},\"SegmentId\":{},\"SegmentName\":{}},\"required\":[\"Format\",\"S3Url\",\"RoleArn\"]},\"FailedPieces\":{\"type\":\"integer\"},\"Failures\":{\"shape\":\"St\"},\"Id\":{},\"JobStatus\":{},\"TotalFailures\":{\"type\":\"integer\"},\"TotalPieces\":{\"type\":\"integer\"},\"TotalProcessed\":{\"type\":\"integer\"},\"Type\":{}},\"required\":[\"JobStatus\",\"CreationDate\",\"Type\",\"Definition\",\"Id\",\"ApplicationId\"]},\"S1u\":{\"type\":\"structure\",\"members\":{\"Activities\":{\"shape\":\"S1v\"},\"CreationDate\":{},\"LastModifiedDate\":{},\"Limits\":{\"shape\":\"S2u\"},\"LocalTime\":{\"type\":\"boolean\"},\"Name\":{},\"QuietTime\":{\"shape\":\"S11\"},\"RefreshFrequency\":{},\"Schedule\":{\"shape\":\"S2v\"},\"StartActivity\":{},\"StartCondition\":{\"shape\":\"S2x\"},\"State\":{},\"WaitForQuietTime\":{\"type\":\"boolean\"},\"RefreshOnSegmentUpdate\":{\"type\":\"boolean\"}},\"required\":[\"Name\"]},\"S1v\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"CUSTOM\":{\"type\":\"structure\",\"members\":{\"DeliveryUri\":{},\"EndpointTypes\":{\"shape\":\"Sc\"},\"MessageConfig\":{\"type\":\"structure\",\"members\":{\"Data\":{}}},\"NextActivity\":{},\"TemplateName\":{},\"TemplateVersion\":{}}},\"ConditionalSplit\":{\"type\":\"structure\",\"members\":{\"Condition\":{\"type\":\"structure\",\"members\":{\"Conditions\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\"}},\"Operator\":{}}},\"EvaluationWaitTime\":{\"shape\":\"S2f\"},\"FalseActivity\":{},\"TrueActivity\":{}}},\"Description\":{},\"EMAIL\":{\"type\":\"structure\",\"members\":{\"MessageConfig\":{\"type\":\"structure\",\"members\":{\"FromAddress\":{}}},\"NextActivity\":{},\"TemplateName\":{},\"TemplateVersion\":{}}},\"Holdout\":{\"type\":\"structure\",\"members\":{\"NextActivity\":{},\"Percentage\":{\"type\":\"integer\"}},\"required\":[\"Percentage\"]},\"MultiCondition\":{\"type\":\"structure\",\"members\":{\"Branches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Condition\":{\"shape\":\"S22\"},\"NextActivity\":{}}}},\"DefaultActivity\":{},\"EvaluationWaitTime\":{\"shape\":\"S2f\"}}},\"PUSH\":{\"type\":\"structure\",\"members\":{\"MessageConfig\":{\"type\":\"structure\",\"members\":{\"TimeToLive\":{}}},\"NextActivity\":{},\"TemplateName\":{},\"TemplateVersion\":{}}},\"RandomSplit\":{\"type\":\"structure\",\"members\":{\"Branches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NextActivity\":{},\"Percentage\":{\"type\":\"integer\"}}}}}},\"SMS\":{\"type\":\"structure\",\"members\":{\"MessageConfig\":{\"type\":\"structure\",\"members\":{\"MessageType\":{},\"OriginationNumber\":{},\"SenderId\":{},\"EntityId\":{},\"TemplateId\":{}}},\"NextActivity\":{},\"TemplateName\":{},\"TemplateVersion\":{}}},\"Wait\":{\"type\":\"structure\",\"members\":{\"NextActivity\":{},\"WaitTime\":{\"shape\":\"S2f\"}}}}}},\"S22\":{\"type\":\"structure\",\"members\":{\"EventCondition\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"Sp\"},\"MessageActivity\":{}}},\"SegmentCondition\":{\"shape\":\"S24\"},\"SegmentDimensions\":{\"shape\":\"S25\",\"locationName\":\"segmentDimensions\"}}},\"S24\":{\"type\":\"structure\",\"members\":{\"SegmentId\":{}},\"required\":[\"SegmentId\"]},\"S25\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sq\"},\"Behavior\":{\"type\":\"structure\",\"members\":{\"Recency\":{\"type\":\"structure\",\"members\":{\"Duration\":{},\"RecencyType\":{}},\"required\":[\"Duration\",\"RecencyType\"]}}},\"Demographic\":{\"type\":\"structure\",\"members\":{\"AppVersion\":{\"shape\":\"Su\"},\"Channel\":{\"shape\":\"Su\"},\"DeviceType\":{\"shape\":\"Su\"},\"Make\":{\"shape\":\"Su\"},\"Model\":{\"shape\":\"Su\"},\"Platform\":{\"shape\":\"Su\"}}},\"Location\":{\"type\":\"structure\",\"members\":{\"Country\":{\"shape\":\"Su\"},\"GPSPoint\":{\"type\":\"structure\",\"members\":{\"Coordinates\":{\"type\":\"structure\",\"members\":{\"Latitude\":{\"type\":\"double\"},\"Longitude\":{\"type\":\"double\"}},\"required\":[\"Latitude\",\"Longitude\"]},\"RangeInKilometers\":{\"type\":\"double\"}},\"required\":[\"Coordinates\"]}}},\"Metrics\":{\"shape\":\"Sw\"},\"UserAttributes\":{\"shape\":\"Sq\"}}},\"S2f\":{\"type\":\"structure\",\"members\":{\"WaitFor\":{},\"WaitUntil\":{}}},\"S2u\":{\"type\":\"structure\",\"members\":{\"DailyCap\":{\"type\":\"integer\"},\"EndpointReentryCap\":{\"type\":\"integer\"},\"MessagesPerSecond\":{\"type\":\"integer\"},\"EndpointReentryInterval\":{}}},\"S2v\":{\"type\":\"structure\",\"members\":{\"EndTime\":{\"shape\":\"S2w\"},\"StartTime\":{\"shape\":\"S2w\"},\"Timezone\":{}}},\"S2w\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S2x\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"EventStartCondition\":{\"type\":\"structure\",\"members\":{\"EventFilter\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"Sp\"},\"FilterType\":{}},\"required\":[\"FilterType\",\"Dimensions\"]},\"SegmentId\":{}}},\"SegmentStartCondition\":{\"shape\":\"S24\"}}},\"S32\":{\"type\":\"structure\",\"members\":{\"Activities\":{\"shape\":\"S1v\"},\"ApplicationId\":{},\"CreationDate\":{},\"Id\":{},\"LastModifiedDate\":{},\"Limits\":{\"shape\":\"S2u\"},\"LocalTime\":{\"type\":\"boolean\"},\"Name\":{},\"QuietTime\":{\"shape\":\"S11\"},\"RefreshFrequency\":{},\"Schedule\":{\"shape\":\"S2v\"},\"StartActivity\":{},\"StartCondition\":{\"shape\":\"S2x\"},\"State\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"WaitForQuietTime\":{\"type\":\"boolean\"},\"RefreshOnSegmentUpdate\":{\"type\":\"boolean\"}},\"required\":[\"Name\",\"Id\",\"ApplicationId\"]},\"S34\":{\"type\":\"structure\",\"members\":{\"ADM\":{\"shape\":\"S35\"},\"APNS\":{\"shape\":\"S36\"},\"Baidu\":{\"shape\":\"S35\"},\"Default\":{\"shape\":\"S37\"},\"DefaultSubstitutions\":{},\"GCM\":{\"shape\":\"S35\"},\"RecommenderId\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{}}},\"S35\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"ImageIconUrl\":{},\"ImageUrl\":{},\"RawContent\":{},\"SmallImageIconUrl\":{},\"Sound\":{},\"Title\":{},\"Url\":{}}},\"S36\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"MediaUrl\":{},\"RawContent\":{},\"Sound\":{},\"Title\":{},\"Url\":{}}},\"S37\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"Sound\":{},\"Title\":{},\"Url\":{}}},\"S3c\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S4\"},\"CreationDate\":{},\"Description\":{},\"Id\":{},\"LastModifiedDate\":{},\"Name\":{},\"RecommendationProviderIdType\":{},\"RecommendationProviderRoleArn\":{},\"RecommendationProviderUri\":{},\"RecommendationTransformerUri\":{},\"RecommendationsDisplayName\":{},\"RecommendationsPerMessage\":{\"type\":\"integer\"}},\"required\":[\"RecommendationProviderUri\",\"LastModifiedDate\",\"CreationDate\",\"RecommendationProviderRoleArn\",\"Id\"]},\"S3e\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"shape\":\"S25\"},\"Name\":{},\"SegmentGroups\":{\"shape\":\"S3f\"},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}},\"S3f\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"type\":\"list\",\"member\":{\"shape\":\"S25\"}},\"SourceSegments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Id\"]}},\"SourceType\":{},\"Type\":{}}}},\"Include\":{}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"Arn\":{},\"CreationDate\":{},\"Dimensions\":{\"shape\":\"S25\"},\"Id\":{},\"ImportDefinition\":{\"type\":\"structure\",\"members\":{\"ChannelCounts\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"ExternalId\":{},\"Format\":{},\"RoleArn\":{},\"S3Url\":{},\"Size\":{\"type\":\"integer\"}},\"required\":[\"Format\",\"S3Url\",\"Size\",\"ExternalId\",\"RoleArn\"]},\"LastModifiedDate\":{},\"Name\":{},\"SegmentGroups\":{\"shape\":\"S3f\"},\"SegmentType\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"Version\":{\"type\":\"integer\"}},\"required\":[\"SegmentType\",\"CreationDate\",\"Id\",\"Arn\",\"ApplicationId\"]},\"S3u\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"DefaultSubstitutions\":{},\"RecommenderId\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{}}},\"S3x\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"DefaultSubstitutions\":{},\"LanguageCode\":{},\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"TemplateDescription\":{},\"VoiceId\":{}}},\"S41\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S44\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"HasTokenKey\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S47\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"HasTokenKey\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S4a\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"HasTokenKey\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S4d\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"DefaultAuthenticationMethod\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"HasTokenKey\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S4i\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"Credential\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Credential\",\"Platform\"]},\"S4n\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"ConfigurationSet\":{},\"CreationDate\":{},\"Enabled\":{\"type\":\"boolean\"},\"FromAddress\":{},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"Identity\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"MessagesPerSecond\":{\"type\":\"integer\"},\"Platform\":{},\"RoleArn\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S4q\":{\"type\":\"structure\",\"members\":{\"Message\":{},\"RequestID\":{}}},\"S4t\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"ApplicationId\":{},\"Attributes\":{\"shape\":\"S4u\"},\"ChannelType\":{},\"CohortId\":{},\"CreationDate\":{},\"Demographic\":{\"shape\":\"S4w\"},\"EffectiveDate\":{},\"EndpointStatus\":{},\"Id\":{},\"Location\":{\"shape\":\"S4x\"},\"Metrics\":{\"shape\":\"S4y\"},\"OptOut\":{},\"RequestId\":{},\"User\":{\"shape\":\"S4z\"}}},\"S4u\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"St\"}},\"S4w\":{\"type\":\"structure\",\"members\":{\"AppVersion\":{},\"Locale\":{},\"Make\":{},\"Model\":{},\"ModelVersion\":{},\"Platform\":{},\"PlatformVersion\":{},\"Timezone\":{}}},\"S4x\":{\"type\":\"structure\",\"members\":{\"City\":{},\"Country\":{},\"Latitude\":{\"type\":\"double\"},\"Longitude\":{\"type\":\"double\"},\"PostalCode\":{},\"Region\":{}}},\"S4y\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"double\"}},\"S4z\":{\"type\":\"structure\",\"members\":{\"UserAttributes\":{\"shape\":\"S4u\"},\"UserId\":{}}},\"S52\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"DestinationStreamArn\":{},\"ExternalId\":{},\"LastModifiedDate\":{},\"LastUpdatedBy\":{},\"RoleArn\":{}},\"required\":[\"ApplicationId\",\"RoleArn\",\"DestinationStreamArn\"]},\"S55\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"Credential\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Credential\",\"Platform\"]},\"S5g\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"PromotionalMessagesPerSecond\":{\"type\":\"integer\"},\"SenderId\":{},\"ShortCode\":{},\"TransactionalMessagesPerSecond\":{\"type\":\"integer\"},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S5l\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S4t\"}}},\"required\":[\"Item\"]},\"S5p\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CreationDate\":{},\"Enabled\":{\"type\":\"boolean\"},\"HasCredential\":{\"type\":\"boolean\"},\"Id\":{},\"IsArchived\":{\"type\":\"boolean\"},\"LastModifiedBy\":{},\"LastModifiedDate\":{},\"Platform\":{},\"Version\":{\"type\":\"integer\"}},\"required\":[\"Platform\"]},\"S67\":{\"type\":\"structure\",\"members\":{\"Rows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupedBys\":{\"shape\":\"S6a\"},\"Values\":{\"shape\":\"S6a\"}},\"required\":[\"GroupedBys\",\"Values\"]}}},\"required\":[\"Rows\"]},\"S6a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Type\":{},\"Value\":{}},\"required\":[\"Type\",\"Value\",\"Key\"]}},\"S6e\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{},\"CampaignHook\":{\"shape\":\"S14\"},\"LastModifiedDate\":{},\"Limits\":{\"shape\":\"S16\"},\"QuietTime\":{\"shape\":\"S11\"}},\"required\":[\"ApplicationId\"]},\"S6z\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\"}},\"NextToken\":{}},\"required\":[\"Item\"]},\"S7m\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S1k\"}},\"NextToken\":{}},\"required\":[\"Item\"]},\"S7u\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}},\"NextToken\":{}},\"required\":[\"Item\"]},\"S8q\":{\"type\":\"structure\",\"members\":{\"Item\":{\"type\":\"list\",\"member\":{\"shape\":\"S3p\"}},\"NextToken\":{}},\"required\":[\"Item\"]},\"S9c\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}},\"required\":[\"tags\"]},\"Sah\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"BodyOverride\":{},\"Context\":{\"shape\":\"S4\"},\"RawContent\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"TitleOverride\":{}}}},\"Saj\":{\"type\":\"structure\",\"members\":{\"ADMMessage\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"ConsolidationKey\":{},\"Data\":{\"shape\":\"S4\"},\"ExpiresAfter\":{},\"IconReference\":{},\"ImageIconUrl\":{},\"ImageUrl\":{},\"MD5\":{},\"RawContent\":{},\"SilentPush\":{\"type\":\"boolean\"},\"SmallImageIconUrl\":{},\"Sound\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"Title\":{},\"Url\":{}}},\"APNSMessage\":{\"type\":\"structure\",\"members\":{\"APNSPushType\":{},\"Action\":{},\"Badge\":{\"type\":\"integer\"},\"Body\":{},\"Category\":{},\"CollapseId\":{},\"Data\":{\"shape\":\"S4\"},\"MediaUrl\":{},\"PreferredAuthenticationMethod\":{},\"Priority\":{},\"RawContent\":{},\"SilentPush\":{\"type\":\"boolean\"},\"Sound\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"ThreadId\":{},\"TimeToLive\":{\"type\":\"integer\"},\"Title\":{},\"Url\":{}}},\"BaiduMessage\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"Data\":{\"shape\":\"S4\"},\"IconReference\":{},\"ImageIconUrl\":{},\"ImageUrl\":{},\"RawContent\":{},\"SilentPush\":{\"type\":\"boolean\"},\"SmallImageIconUrl\":{},\"Sound\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"TimeToLive\":{\"type\":\"integer\"},\"Title\":{},\"Url\":{}}},\"DefaultMessage\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"Substitutions\":{\"shape\":\"S4u\"}}},\"DefaultPushNotificationMessage\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"Data\":{\"shape\":\"S4\"},\"SilentPush\":{\"type\":\"boolean\"},\"Substitutions\":{\"shape\":\"S4u\"},\"Title\":{},\"Url\":{}}},\"EmailMessage\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"FeedbackForwardingAddress\":{},\"FromAddress\":{},\"RawEmail\":{\"type\":\"structure\",\"members\":{\"Data\":{\"type\":\"blob\"}}},\"ReplyToAddresses\":{\"shape\":\"St\"},\"SimpleEmail\":{\"type\":\"structure\",\"members\":{\"HtmlPart\":{\"shape\":\"Sat\"},\"Subject\":{\"shape\":\"Sat\"},\"TextPart\":{\"shape\":\"Sat\"}}},\"Substitutions\":{\"shape\":\"S4u\"}}},\"GCMMessage\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"Body\":{},\"CollapseKey\":{},\"Data\":{\"shape\":\"S4\"},\"IconReference\":{},\"ImageIconUrl\":{},\"ImageUrl\":{},\"Priority\":{},\"RawContent\":{},\"RestrictedPackageName\":{},\"SilentPush\":{\"type\":\"boolean\"},\"SmallImageIconUrl\":{},\"Sound\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"TimeToLive\":{\"type\":\"integer\"},\"Title\":{},\"Url\":{}}},\"SMSMessage\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"Keyword\":{},\"MediaUrl\":{},\"MessageType\":{},\"OriginationNumber\":{},\"SenderId\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"EntityId\":{},\"TemplateId\":{}}},\"VoiceMessage\":{\"type\":\"structure\",\"members\":{\"Body\":{},\"LanguageCode\":{},\"OriginationNumber\":{},\"Substitutions\":{\"shape\":\"S4u\"},\"VoiceId\":{}}}}},\"Sat\":{\"type\":\"structure\",\"members\":{\"Charset\":{},\"Data\":{}}},\"Saz\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"DeliveryStatus\":{},\"MessageId\":{},\"StatusCode\":{\"type\":\"integer\"},\"StatusMessage\":{},\"UpdatedToken\":{}},\"required\":[\"DeliveryStatus\",\"StatusCode\"]}}}}");

/***/ }),

/***/ 42680:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-07-26\",\"endpointPrefix\":\"email\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Pinpoint Email\",\"serviceFullName\":\"Amazon Pinpoint Email Service\",\"serviceId\":\"Pinpoint Email\",\"signatureVersion\":\"v4\",\"signingName\":\"ses\",\"uid\":\"pinpoint-email-2018-07-26\"},\"operations\":{\"CreateConfigurationSet\":{\"http\":{\"requestUri\":\"/v1/email/configuration-sets\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{},\"TrackingOptions\":{\"shape\":\"S3\"},\"DeliveryOptions\":{\"shape\":\"S5\"},\"ReputationOptions\":{\"shape\":\"S8\"},\"SendingOptions\":{\"shape\":\"Sb\"},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateConfigurationSetEventDestination\":{\"http\":{\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/event-destinations\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\",\"EventDestination\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{},\"EventDestination\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDedicatedIpPool\":{\"http\":{\"requestUri\":\"/v1/email/dedicated-ip-pools\"},\"input\":{\"type\":\"structure\",\"required\":[\"PoolName\"],\"members\":{\"PoolName\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDeliverabilityTestReport\":{\"http\":{\"requestUri\":\"/v1/email/deliverability-dashboard/test\"},\"input\":{\"type\":\"structure\",\"required\":[\"FromEmailAddress\",\"Content\"],\"members\":{\"ReportName\":{},\"FromEmailAddress\":{},\"Content\":{\"shape\":\"S12\"},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ReportId\",\"DeliverabilityTestStatus\"],\"members\":{\"ReportId\":{},\"DeliverabilityTestStatus\":{}}}},\"CreateEmailIdentity\":{\"http\":{\"requestUri\":\"/v1/email/identities\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"VerifiedForSendingStatus\":{\"type\":\"boolean\"},\"DkimAttributes\":{\"shape\":\"S1k\"}}}},\"DeleteConfigurationSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSetEventDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/event-destinations/{EventDestinationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{\"location\":\"uri\",\"locationName\":\"EventDestinationName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDedicatedIpPool\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/email/dedicated-ip-pools/{PoolName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PoolName\"],\"members\":{\"PoolName\":{\"location\":\"uri\",\"locationName\":\"PoolName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEmailIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/email/identities/{EmailIdentity}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/account\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"SendQuota\":{\"type\":\"structure\",\"members\":{\"Max24HourSend\":{\"type\":\"double\"},\"MaxSendRate\":{\"type\":\"double\"},\"SentLast24Hours\":{\"type\":\"double\"}}},\"SendingEnabled\":{\"type\":\"boolean\"},\"DedicatedIpAutoWarmupEnabled\":{\"type\":\"boolean\"},\"EnforcementStatus\":{},\"ProductionAccessEnabled\":{\"type\":\"boolean\"}}}},\"GetBlacklistReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard/blacklist-report\"},\"input\":{\"type\":\"structure\",\"required\":[\"BlacklistItemNames\"],\"members\":{\"BlacklistItemNames\":{\"location\":\"querystring\",\"locationName\":\"BlacklistItemNames\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"BlacklistReport\"],\"members\":{\"BlacklistReport\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RblName\":{},\"ListingTime\":{\"type\":\"timestamp\"},\"Description\":{}}}}}}}},\"GetConfigurationSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{},\"TrackingOptions\":{\"shape\":\"S3\"},\"DeliveryOptions\":{\"shape\":\"S5\"},\"ReputationOptions\":{\"shape\":\"S8\"},\"SendingOptions\":{\"shape\":\"Sb\"},\"Tags\":{\"shape\":\"Sc\"}}}},\"GetConfigurationSetEventDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/event-destinations\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventDestinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"MatchingEventTypes\"],\"members\":{\"Name\":{},\"Enabled\":{\"type\":\"boolean\"},\"MatchingEventTypes\":{\"shape\":\"Sk\"},\"KinesisFirehoseDestination\":{\"shape\":\"Sm\"},\"CloudWatchDestination\":{\"shape\":\"So\"},\"SnsDestination\":{\"shape\":\"Su\"},\"PinpointDestination\":{\"shape\":\"Sv\"}}}}}}},\"GetDedicatedIp\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/dedicated-ips/{IP}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Ip\"],\"members\":{\"Ip\":{\"location\":\"uri\",\"locationName\":\"IP\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIp\":{\"shape\":\"S2m\"}}}},\"GetDedicatedIps\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/dedicated-ips\"},\"input\":{\"type\":\"structure\",\"members\":{\"PoolName\":{\"location\":\"querystring\",\"locationName\":\"PoolName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIps\":{\"type\":\"list\",\"member\":{\"shape\":\"S2m\"}},\"NextToken\":{}}}},\"GetDeliverabilityDashboardOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"DashboardEnabled\"],\"members\":{\"DashboardEnabled\":{\"type\":\"boolean\"},\"SubscriptionExpiryDate\":{\"type\":\"timestamp\"},\"AccountStatus\":{},\"ActiveSubscribedDomains\":{\"shape\":\"S2x\"},\"PendingExpirationSubscribedDomains\":{\"shape\":\"S2x\"}}}},\"GetDeliverabilityTestReport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard/test-reports/{ReportId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ReportId\"],\"members\":{\"ReportId\":{\"location\":\"uri\",\"locationName\":\"ReportId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeliverabilityTestReport\",\"OverallPlacement\",\"IspPlacements\"],\"members\":{\"DeliverabilityTestReport\":{\"shape\":\"S35\"},\"OverallPlacement\":{\"shape\":\"S37\"},\"IspPlacements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IspName\":{},\"PlacementStatistics\":{\"shape\":\"S37\"}}}},\"Message\":{},\"Tags\":{\"shape\":\"Sc\"}}}},\"GetDomainDeliverabilityCampaign\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard/campaigns/{CampaignId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CampaignId\"],\"members\":{\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"CampaignId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainDeliverabilityCampaign\"],\"members\":{\"DomainDeliverabilityCampaign\":{\"shape\":\"S3f\"}}}},\"GetDomainStatisticsReport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard/statistics-report/{Domain}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Domain\",\"StartDate\",\"EndDate\"],\"members\":{\"Domain\":{\"location\":\"uri\",\"locationName\":\"Domain\"},\"StartDate\":{\"location\":\"querystring\",\"locationName\":\"StartDate\",\"type\":\"timestamp\"},\"EndDate\":{\"location\":\"querystring\",\"locationName\":\"EndDate\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OverallVolume\",\"DailyVolumes\"],\"members\":{\"OverallVolume\":{\"type\":\"structure\",\"members\":{\"VolumeStatistics\":{\"shape\":\"S3p\"},\"ReadRatePercent\":{\"type\":\"double\"},\"DomainIspPlacements\":{\"shape\":\"S3q\"}}},\"DailyVolumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StartDate\":{\"type\":\"timestamp\"},\"VolumeStatistics\":{\"shape\":\"S3p\"},\"DomainIspPlacements\":{\"shape\":\"S3q\"}}}}}}},\"GetEmailIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/identities/{EmailIdentity}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"FeedbackForwardingStatus\":{\"type\":\"boolean\"},\"VerifiedForSendingStatus\":{\"type\":\"boolean\"},\"DkimAttributes\":{\"shape\":\"S1k\"},\"MailFromAttributes\":{\"type\":\"structure\",\"required\":[\"MailFromDomain\",\"MailFromDomainStatus\",\"BehaviorOnMxFailure\"],\"members\":{\"MailFromDomain\":{},\"MailFromDomainStatus\":{},\"BehaviorOnMxFailure\":{}}},\"Tags\":{\"shape\":\"Sc\"}}}},\"ListConfigurationSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/configuration-sets\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationSets\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListDedicatedIpPools\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/dedicated-ip-pools\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIpPools\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListDeliverabilityTestReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard/test-reports\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeliverabilityTestReports\"],\"members\":{\"DeliverabilityTestReports\":{\"type\":\"list\",\"member\":{\"shape\":\"S35\"}},\"NextToken\":{}}}},\"ListDomainDeliverabilityCampaigns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/deliverability-dashboard/domains/{SubscribedDomain}/campaigns\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartDate\",\"EndDate\",\"SubscribedDomain\"],\"members\":{\"StartDate\":{\"location\":\"querystring\",\"locationName\":\"StartDate\",\"type\":\"timestamp\"},\"EndDate\":{\"location\":\"querystring\",\"locationName\":\"EndDate\",\"type\":\"timestamp\"},\"SubscribedDomain\":{\"location\":\"uri\",\"locationName\":\"SubscribedDomain\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainDeliverabilityCampaigns\"],\"members\":{\"DomainDeliverabilityCampaigns\":{\"type\":\"list\",\"member\":{\"shape\":\"S3f\"}},\"NextToken\":{}}}},\"ListEmailIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/identities\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EmailIdentities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"IdentityName\":{},\"SendingEnabled\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/email/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sc\"}}}},\"PutAccountDedicatedIpWarmupAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/account/dedicated-ips/warmup\"},\"input\":{\"type\":\"structure\",\"members\":{\"AutoWarmupEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAccountSendingAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/account/sending\"},\"input\":{\"type\":\"structure\",\"members\":{\"SendingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetDeliveryOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/delivery-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"TlsPolicy\":{},\"SendingPoolName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetReputationOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/reputation-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"ReputationMetricsEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetSendingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/sending\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"SendingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetTrackingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/tracking-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"CustomRedirectDomain\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutDedicatedIpInPool\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/dedicated-ips/{IP}/pool\"},\"input\":{\"type\":\"structure\",\"required\":[\"Ip\",\"DestinationPoolName\"],\"members\":{\"Ip\":{\"location\":\"uri\",\"locationName\":\"IP\"},\"DestinationPoolName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutDedicatedIpWarmupAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/dedicated-ips/{IP}/warmup\"},\"input\":{\"type\":\"structure\",\"required\":[\"Ip\",\"WarmupPercentage\"],\"members\":{\"Ip\":{\"location\":\"uri\",\"locationName\":\"IP\"},\"WarmupPercentage\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutDeliverabilityDashboardOption\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/deliverability-dashboard\"},\"input\":{\"type\":\"structure\",\"required\":[\"DashboardEnabled\"],\"members\":{\"DashboardEnabled\":{\"type\":\"boolean\"},\"SubscribedDomains\":{\"shape\":\"S2x\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityDkimAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/identities/{EmailIdentity}/dkim\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"SigningEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityFeedbackAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/identities/{EmailIdentity}/feedback\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"EmailForwardingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityMailFromAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/identities/{EmailIdentity}/mail-from\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"MailFromDomain\":{},\"BehaviorOnMxFailure\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendEmail\":{\"http\":{\"requestUri\":\"/v1/email/outbound-emails\"},\"input\":{\"type\":\"structure\",\"required\":[\"Destination\",\"Content\"],\"members\":{\"FromEmailAddress\":{},\"Destination\":{\"type\":\"structure\",\"members\":{\"ToAddresses\":{\"shape\":\"S59\"},\"CcAddresses\":{\"shape\":\"S59\"},\"BccAddresses\":{\"shape\":\"S59\"}}},\"ReplyToAddresses\":{\"shape\":\"S59\"},\"FeedbackForwardingEmailAddress\":{},\"Content\":{\"shape\":\"S12\"},\"EmailTags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"ConfigurationSetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v1/email/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/email/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"TagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateConfigurationSetEventDestination\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/configuration-sets/{ConfigurationSetName}/event-destinations/{EventDestinationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\",\"EventDestination\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{\"location\":\"uri\",\"locationName\":\"EventDestinationName\"},\"EventDestination\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"CustomRedirectDomain\"],\"members\":{\"CustomRedirectDomain\":{}}},\"S5\":{\"type\":\"structure\",\"members\":{\"TlsPolicy\":{},\"SendingPoolName\":{}}},\"S8\":{\"type\":\"structure\",\"members\":{\"ReputationMetricsEnabled\":{\"type\":\"boolean\"},\"LastFreshStart\":{\"type\":\"timestamp\"}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"SendingEnabled\":{\"type\":\"boolean\"}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"MatchingEventTypes\":{\"shape\":\"Sk\"},\"KinesisFirehoseDestination\":{\"shape\":\"Sm\"},\"CloudWatchDestination\":{\"shape\":\"So\"},\"SnsDestination\":{\"shape\":\"Su\"},\"PinpointDestination\":{\"shape\":\"Sv\"}}},\"Sk\":{\"type\":\"list\",\"member\":{}},\"Sm\":{\"type\":\"structure\",\"required\":[\"IamRoleArn\",\"DeliveryStreamArn\"],\"members\":{\"IamRoleArn\":{},\"DeliveryStreamArn\":{}}},\"So\":{\"type\":\"structure\",\"required\":[\"DimensionConfigurations\"],\"members\":{\"DimensionConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DimensionName\",\"DimensionValueSource\",\"DefaultDimensionValue\"],\"members\":{\"DimensionName\":{},\"DimensionValueSource\":{},\"DefaultDimensionValue\":{}}}}}},\"Su\":{\"type\":\"structure\",\"required\":[\"TopicArn\"],\"members\":{\"TopicArn\":{}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"ApplicationArn\":{}}},\"S12\":{\"type\":\"structure\",\"members\":{\"Simple\":{\"type\":\"structure\",\"required\":[\"Subject\",\"Body\"],\"members\":{\"Subject\":{\"shape\":\"S14\"},\"Body\":{\"type\":\"structure\",\"members\":{\"Text\":{\"shape\":\"S14\"},\"Html\":{\"shape\":\"S14\"}}}}},\"Raw\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{\"type\":\"blob\"}}},\"Template\":{\"type\":\"structure\",\"members\":{\"TemplateArn\":{},\"TemplateData\":{}}}}},\"S14\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{},\"Charset\":{}}},\"S1k\":{\"type\":\"structure\",\"members\":{\"SigningEnabled\":{\"type\":\"boolean\"},\"Status\":{},\"Tokens\":{\"type\":\"list\",\"member\":{}}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"Ip\",\"WarmupStatus\",\"WarmupPercentage\"],\"members\":{\"Ip\":{},\"WarmupStatus\":{},\"WarmupPercentage\":{\"type\":\"integer\"},\"PoolName\":{}}},\"S2x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Domain\":{},\"SubscriptionStartDate\":{\"type\":\"timestamp\"},\"InboxPlacementTrackingOption\":{\"type\":\"structure\",\"members\":{\"Global\":{\"type\":\"boolean\"},\"TrackedIsps\":{\"type\":\"list\",\"member\":{}}}}}}},\"S35\":{\"type\":\"structure\",\"members\":{\"ReportId\":{},\"ReportName\":{},\"Subject\":{},\"FromEmailAddress\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"DeliverabilityTestStatus\":{}}},\"S37\":{\"type\":\"structure\",\"members\":{\"InboxPercentage\":{\"type\":\"double\"},\"SpamPercentage\":{\"type\":\"double\"},\"MissingPercentage\":{\"type\":\"double\"},\"SpfPercentage\":{\"type\":\"double\"},\"DkimPercentage\":{\"type\":\"double\"}}},\"S3f\":{\"type\":\"structure\",\"members\":{\"CampaignId\":{},\"ImageUrl\":{},\"Subject\":{},\"FromAddress\":{},\"SendingIps\":{\"type\":\"list\",\"member\":{}},\"FirstSeenDateTime\":{\"type\":\"timestamp\"},\"LastSeenDateTime\":{\"type\":\"timestamp\"},\"InboxCount\":{\"type\":\"long\"},\"SpamCount\":{\"type\":\"long\"},\"ReadRate\":{\"type\":\"double\"},\"DeleteRate\":{\"type\":\"double\"},\"ReadDeleteRate\":{\"type\":\"double\"},\"ProjectedVolume\":{\"type\":\"long\"},\"Esps\":{\"type\":\"list\",\"member\":{}}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"InboxRawCount\":{\"type\":\"long\"},\"SpamRawCount\":{\"type\":\"long\"},\"ProjectedInbox\":{\"type\":\"long\"},\"ProjectedSpam\":{\"type\":\"long\"}}},\"S3q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IspName\":{},\"InboxRawCount\":{\"type\":\"long\"},\"SpamRawCount\":{\"type\":\"long\"},\"InboxPercentage\":{\"type\":\"double\"},\"SpamPercentage\":{\"type\":\"double\"}}}},\"S59\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 58107:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetDedicatedIps\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListConfigurationSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListDedicatedIpPools\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListDeliverabilityTestReports\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListDomainDeliverabilityCampaigns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListEmailIdentities\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"}}}");

/***/ }),

/***/ 58020:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-06-10\",\"endpointPrefix\":\"polly\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Polly\",\"serviceId\":\"Polly\",\"signatureVersion\":\"v4\",\"uid\":\"polly-2016-06-10\"},\"operations\":{\"DeleteLexicon\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/lexicons/{LexiconName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"LexiconName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeVoices\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/voices\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{\"location\":\"querystring\",\"locationName\":\"Engine\"},\"LanguageCode\":{\"location\":\"querystring\",\"locationName\":\"LanguageCode\"},\"IncludeAdditionalLanguageCodes\":{\"location\":\"querystring\",\"locationName\":\"IncludeAdditionalLanguageCodes\",\"type\":\"boolean\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Voices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Gender\":{},\"Id\":{},\"LanguageCode\":{},\"LanguageName\":{},\"Name\":{},\"AdditionalLanguageCodes\":{\"type\":\"list\",\"member\":{}},\"SupportedEngines\":{\"type\":\"list\",\"member\":{}}}}},\"NextToken\":{}}}},\"GetLexicon\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/lexicons/{LexiconName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"LexiconName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Lexicon\":{\"type\":\"structure\",\"members\":{\"Content\":{\"shape\":\"Sl\"},\"Name\":{}}},\"LexiconAttributes\":{\"shape\":\"Sm\"}}}},\"GetSpeechSynthesisTask\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/synthesisTasks/{TaskId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"TaskId\"],\"members\":{\"TaskId\":{\"location\":\"uri\",\"locationName\":\"TaskId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SynthesisTask\":{\"shape\":\"Sv\"}}}},\"ListLexicons\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/lexicons\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Lexicons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Attributes\":{\"shape\":\"Sm\"}}}},\"NextToken\":{}}}},\"ListSpeechSynthesisTasks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/synthesisTasks\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"Status\":{\"location\":\"querystring\",\"locationName\":\"Status\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"SynthesisTasks\":{\"type\":\"list\",\"member\":{\"shape\":\"Sv\"}}}}},\"PutLexicon\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/lexicons/{LexiconName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Content\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"LexiconName\"},\"Content\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartSpeechSynthesisTask\":{\"http\":{\"requestUri\":\"/v1/synthesisTasks\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"OutputFormat\",\"OutputS3BucketName\",\"Text\",\"VoiceId\"],\"members\":{\"Engine\":{},\"LanguageCode\":{},\"LexiconNames\":{\"shape\":\"S12\"},\"OutputFormat\":{},\"OutputS3BucketName\":{},\"OutputS3KeyPrefix\":{},\"SampleRate\":{},\"SnsTopicArn\":{},\"SpeechMarkTypes\":{\"shape\":\"S15\"},\"Text\":{},\"TextType\":{},\"VoiceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SynthesisTask\":{\"shape\":\"Sv\"}}}},\"SynthesizeSpeech\":{\"http\":{\"requestUri\":\"/v1/speech\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"OutputFormat\",\"Text\",\"VoiceId\"],\"members\":{\"Engine\":{},\"LanguageCode\":{},\"LexiconNames\":{\"shape\":\"S12\"},\"OutputFormat\":{},\"SampleRate\":{},\"SpeechMarkTypes\":{\"shape\":\"S15\"},\"Text\":{},\"TextType\":{},\"VoiceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AudioStream\":{\"type\":\"blob\",\"streaming\":true},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"RequestCharacters\":{\"location\":\"header\",\"locationName\":\"x-amzn-RequestCharacters\",\"type\":\"integer\"}},\"payload\":\"AudioStream\"}}},\"shapes\":{\"Sl\":{\"type\":\"string\",\"sensitive\":true},\"Sm\":{\"type\":\"structure\",\"members\":{\"Alphabet\":{},\"LanguageCode\":{},\"LastModified\":{\"type\":\"timestamp\"},\"LexiconArn\":{},\"LexemesCount\":{\"type\":\"integer\"},\"Size\":{\"type\":\"integer\"}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"TaskId\":{},\"TaskStatus\":{},\"TaskStatusReason\":{},\"OutputUri\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"RequestCharacters\":{\"type\":\"integer\"},\"SnsTopicArn\":{},\"LexiconNames\":{\"shape\":\"S12\"},\"OutputFormat\":{},\"SampleRate\":{},\"SpeechMarkTypes\":{\"shape\":\"S15\"},\"TextType\":{},\"VoiceId\":{},\"LanguageCode\":{}}},\"S12\":{\"type\":\"list\",\"member\":{}},\"S15\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 28573:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListSpeechSynthesisTasks\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 19792:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-15\",\"endpointPrefix\":\"api.pricing\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWS Pricing\",\"serviceFullName\":\"AWS Price List Service\",\"serviceId\":\"Pricing\",\"signatureVersion\":\"v4\",\"signingName\":\"pricing\",\"targetPrefix\":\"AWSPriceListService\",\"uid\":\"pricing-2017-10-15\"},\"operations\":{\"DescribeServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"FormatVersion\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"AttributeNames\":{\"type\":\"list\",\"member\":{}}}}},\"FormatVersion\":{},\"NextToken\":{}}}},\"GetAttributeValues\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"AttributeName\"],\"members\":{\"ServiceCode\":{},\"AttributeName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttributeValues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"NextToken\":{}}}},\"GetProducts\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\",\"Field\",\"Value\"],\"members\":{\"Type\":{},\"Field\":{},\"Value\":{}}}},\"FormatVersion\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FormatVersion\":{},\"PriceList\":{\"type\":\"list\",\"member\":{\"jsonvalue\":true}},\"NextToken\":{}}}}},\"shapes\":{}}");

/***/ }),

/***/ 45992:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeServices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetAttributeValues\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetProducts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 52675:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-01-02\",\"endpointPrefix\":\"qldb\",\"jsonVersion\":\"1.0\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"QLDB\",\"serviceFullName\":\"Amazon QLDB\",\"serviceId\":\"QLDB\",\"signatureVersion\":\"v4\",\"signingName\":\"qldb\",\"uid\":\"qldb-2019-01-02\"},\"operations\":{\"CancelJournalKinesisStream\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/ledgers/{name}/journal-kinesis-streams/{streamId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"LedgerName\",\"StreamId\"],\"members\":{\"LedgerName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"StreamId\":{\"location\":\"uri\",\"locationName\":\"streamId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamId\":{}}}},\"CreateLedger\":{\"http\":{\"requestUri\":\"/ledgers\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"PermissionsMode\"],\"members\":{\"Name\":{},\"Tags\":{\"shape\":\"S6\"},\"PermissionsMode\":{},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"DeletionProtection\":{\"type\":\"boolean\"}}}},\"DeleteLedger\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/ledgers/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}}},\"DescribeJournalKinesisStream\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/ledgers/{name}/journal-kinesis-streams/{streamId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"LedgerName\",\"StreamId\"],\"members\":{\"LedgerName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"StreamId\":{\"location\":\"uri\",\"locationName\":\"streamId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Stream\":{\"shape\":\"Si\"}}}},\"DescribeJournalS3Export\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/ledgers/{name}/journal-s3-exports/{exportId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ExportId\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"ExportId\":{\"location\":\"uri\",\"locationName\":\"exportId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ExportDescription\"],\"members\":{\"ExportDescription\":{\"shape\":\"Sq\"}}}},\"DescribeLedger\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/ledgers/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"DeletionProtection\":{\"type\":\"boolean\"}}}},\"ExportJournalToS3\":{\"http\":{\"requestUri\":\"/ledgers/{name}/journal-s3-exports\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InclusiveStartTime\",\"ExclusiveEndTime\",\"S3ExportConfiguration\",\"RoleArn\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"InclusiveStartTime\":{\"type\":\"timestamp\"},\"ExclusiveEndTime\":{\"type\":\"timestamp\"},\"S3ExportConfiguration\":{\"shape\":\"Ss\"},\"RoleArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ExportId\"],\"members\":{\"ExportId\":{}}}},\"GetBlock\":{\"http\":{\"requestUri\":\"/ledgers/{name}/block\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"BlockAddress\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"BlockAddress\":{\"shape\":\"S12\"},\"DigestTipAddress\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Block\"],\"members\":{\"Block\":{\"shape\":\"S12\"},\"Proof\":{\"shape\":\"S12\"}}}},\"GetDigest\":{\"http\":{\"requestUri\":\"/ledgers/{name}/digest\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Digest\",\"DigestTipAddress\"],\"members\":{\"Digest\":{\"type\":\"blob\"},\"DigestTipAddress\":{\"shape\":\"S12\"}}}},\"GetRevision\":{\"http\":{\"requestUri\":\"/ledgers/{name}/revision\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"BlockAddress\",\"DocumentId\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"BlockAddress\":{\"shape\":\"S12\"},\"DocumentId\":{},\"DigestTipAddress\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Revision\"],\"members\":{\"Proof\":{\"shape\":\"S12\"},\"Revision\":{\"shape\":\"S12\"}}}},\"ListJournalKinesisStreamsForLedger\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/ledgers/{name}/journal-kinesis-streams\"},\"input\":{\"type\":\"structure\",\"required\":[\"LedgerName\"],\"members\":{\"LedgerName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Streams\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"NextToken\":{}}}},\"ListJournalS3Exports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/journal-s3-exports\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JournalS3Exports\":{\"shape\":\"S1h\"},\"NextToken\":{}}}},\"ListJournalS3ExportsForLedger\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/ledgers/{name}/journal-s3-exports\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JournalS3Exports\":{\"shape\":\"S1h\"},\"NextToken\":{}}}},\"ListLedgers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/ledgers\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max_results\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ledgers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S6\"}}}},\"StreamJournalToKinesis\":{\"http\":{\"requestUri\":\"/ledgers/{name}/journal-kinesis-streams\"},\"input\":{\"type\":\"structure\",\"required\":[\"LedgerName\",\"RoleArn\",\"InclusiveStartTime\",\"KinesisConfiguration\",\"StreamName\"],\"members\":{\"LedgerName\":{\"location\":\"uri\",\"locationName\":\"name\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S6\"},\"InclusiveStartTime\":{\"type\":\"timestamp\"},\"ExclusiveEndTime\":{\"type\":\"timestamp\"},\"KinesisConfiguration\":{\"shape\":\"Sk\"},\"StreamName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateLedger\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/ledgers/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"DeletionProtection\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"State\":{},\"CreationDateTime\":{\"type\":\"timestamp\"},\"DeletionProtection\":{\"type\":\"boolean\"}}}}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Si\":{\"type\":\"structure\",\"required\":[\"LedgerName\",\"RoleArn\",\"StreamId\",\"Status\",\"KinesisConfiguration\",\"StreamName\"],\"members\":{\"LedgerName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"InclusiveStartTime\":{\"type\":\"timestamp\"},\"ExclusiveEndTime\":{\"type\":\"timestamp\"},\"RoleArn\":{},\"StreamId\":{},\"Arn\":{},\"Status\":{},\"KinesisConfiguration\":{\"shape\":\"Sk\"},\"ErrorCause\":{},\"StreamName\":{}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"StreamArn\"],\"members\":{\"StreamArn\":{},\"AggregationEnabled\":{\"type\":\"boolean\"}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"LedgerName\",\"ExportId\",\"ExportCreationTime\",\"Status\",\"InclusiveStartTime\",\"ExclusiveEndTime\",\"S3ExportConfiguration\",\"RoleArn\"],\"members\":{\"LedgerName\":{},\"ExportId\":{},\"ExportCreationTime\":{\"type\":\"timestamp\"},\"Status\":{},\"InclusiveStartTime\":{\"type\":\"timestamp\"},\"ExclusiveEndTime\":{\"type\":\"timestamp\"},\"S3ExportConfiguration\":{\"shape\":\"Ss\"},\"RoleArn\":{}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Prefix\",\"EncryptionConfiguration\"],\"members\":{\"Bucket\":{},\"Prefix\":{},\"EncryptionConfiguration\":{\"type\":\"structure\",\"required\":[\"ObjectEncryptionType\"],\"members\":{\"ObjectEncryptionType\":{},\"KmsKeyArn\":{}}}}},\"S12\":{\"type\":\"structure\",\"members\":{\"IonText\":{\"type\":\"string\",\"sensitive\":true}},\"sensitive\":true},\"S1h\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}");

/***/ }),

/***/ 4367:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListJournalKinesisStreamsForLedger\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListJournalS3Exports\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListJournalS3ExportsForLedger\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLedgers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 67426:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-07-11\",\"endpointPrefix\":\"session.qldb\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"QLDB Session\",\"serviceFullName\":\"Amazon QLDB Session\",\"serviceId\":\"QLDB Session\",\"signatureVersion\":\"v4\",\"signingName\":\"qldb\",\"targetPrefix\":\"QLDBSession\",\"uid\":\"qldb-session-2019-07-11\"},\"operations\":{\"SendCommand\":{\"input\":{\"type\":\"structure\",\"members\":{\"SessionToken\":{},\"StartSession\":{\"type\":\"structure\",\"required\":[\"LedgerName\"],\"members\":{\"LedgerName\":{}}},\"StartTransaction\":{\"type\":\"structure\",\"members\":{}},\"EndSession\":{\"type\":\"structure\",\"members\":{}},\"CommitTransaction\":{\"type\":\"structure\",\"required\":[\"TransactionId\",\"CommitDigest\"],\"members\":{\"TransactionId\":{},\"CommitDigest\":{\"type\":\"blob\"}}},\"AbortTransaction\":{\"type\":\"structure\",\"members\":{}},\"ExecuteStatement\":{\"type\":\"structure\",\"required\":[\"TransactionId\",\"Statement\"],\"members\":{\"TransactionId\":{},\"Statement\":{},\"Parameters\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}}}},\"FetchPage\":{\"type\":\"structure\",\"required\":[\"TransactionId\",\"NextPageToken\"],\"members\":{\"TransactionId\":{},\"NextPageToken\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"StartSession\":{\"type\":\"structure\",\"members\":{\"SessionToken\":{},\"TimingInformation\":{\"shape\":\"Sl\"}}},\"StartTransaction\":{\"type\":\"structure\",\"members\":{\"TransactionId\":{},\"TimingInformation\":{\"shape\":\"Sl\"}}},\"EndSession\":{\"type\":\"structure\",\"members\":{\"TimingInformation\":{\"shape\":\"Sl\"}}},\"CommitTransaction\":{\"type\":\"structure\",\"members\":{\"TransactionId\":{},\"CommitDigest\":{\"type\":\"blob\"},\"TimingInformation\":{\"shape\":\"Sl\"},\"ConsumedIOs\":{\"shape\":\"Sq\"}}},\"AbortTransaction\":{\"type\":\"structure\",\"members\":{\"TimingInformation\":{\"shape\":\"Sl\"}}},\"ExecuteStatement\":{\"type\":\"structure\",\"members\":{\"FirstPage\":{\"shape\":\"Sv\"},\"TimingInformation\":{\"shape\":\"Sl\"},\"ConsumedIOs\":{\"shape\":\"Sq\"}}},\"FetchPage\":{\"type\":\"structure\",\"members\":{\"Page\":{\"shape\":\"Sv\"},\"TimingInformation\":{\"shape\":\"Sl\"},\"ConsumedIOs\":{\"shape\":\"Sq\"}}}}}}},\"shapes\":{\"Se\":{\"type\":\"structure\",\"members\":{\"IonBinary\":{\"type\":\"blob\"},\"IonText\":{}}},\"Sl\":{\"type\":\"structure\",\"members\":{\"ProcessingTimeMilliseconds\":{\"type\":\"long\"}}},\"Sq\":{\"type\":\"structure\",\"members\":{\"ReadIOs\":{\"type\":\"long\"},\"WriteIOs\":{\"type\":\"long\"}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"Values\":{\"type\":\"list\",\"member\":{\"shape\":\"Se\"}},\"NextPageToken\":{}}}}}");

/***/ }),

/***/ 96527:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 6807:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-04-01\",\"endpointPrefix\":\"quicksight\",\"jsonVersion\":\"1.0\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon QuickSight\",\"serviceId\":\"QuickSight\",\"signatureVersion\":\"v4\",\"uid\":\"quicksight-2018-04-01\"},\"operations\":{\"CancelIngestion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}/ingestions/{IngestionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\",\"IngestionId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"IngestionId\":{\"location\":\"uri\",\"locationName\":\"IngestionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"IngestionId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateAccountCustomization\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/customizations\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AccountCustomization\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"AccountCustomization\":{\"shape\":\"Sa\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AwsAccountId\":{},\"Namespace\":{},\"AccountCustomization\":{\"shape\":\"Sa\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateAnalysis\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/analyses/{AnalysisId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\",\"Name\",\"SourceEntity\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"},\"Name\":{},\"Parameters\":{\"shape\":\"Sk\"},\"Permissions\":{\"shape\":\"S11\"},\"SourceEntity\":{\"shape\":\"S15\"},\"ThemeArn\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AnalysisId\":{},\"CreationStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"CreateDashboard\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\",\"Name\",\"SourceEntity\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"Name\":{},\"Parameters\":{\"shape\":\"Sk\"},\"Permissions\":{\"shape\":\"S11\"},\"SourceEntity\":{\"shape\":\"S1d\"},\"Tags\":{\"shape\":\"Sb\"},\"VersionDescription\":{},\"DashboardPublishOptions\":{\"shape\":\"S1g\"},\"ThemeArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"VersionArn\":{},\"DashboardId\":{},\"CreationStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"CreateDataSet\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/data-sets\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\",\"Name\",\"PhysicalTableMap\",\"ImportMode\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{},\"Name\":{},\"PhysicalTableMap\":{\"shape\":\"S1q\"},\"LogicalTableMap\":{\"shape\":\"S2b\"},\"ImportMode\":{},\"ColumnGroups\":{\"shape\":\"S35\"},\"FieldFolders\":{\"shape\":\"S3b\"},\"Permissions\":{\"shape\":\"S11\"},\"RowLevelPermissionDataSet\":{\"shape\":\"S3g\"},\"ColumnLevelPermissionRules\":{\"shape\":\"S3i\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSetId\":{},\"IngestionArn\":{},\"IngestionId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateDataSource\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/data-sources\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSourceId\",\"Name\",\"Type\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSourceId\":{},\"Name\":{},\"Type\":{},\"DataSourceParameters\":{\"shape\":\"S3p\"},\"Credentials\":{\"shape\":\"S4q\"},\"Permissions\":{\"shape\":\"S11\"},\"VpcConnectionProperties\":{\"shape\":\"S4w\"},\"SslProperties\":{\"shape\":\"S4x\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSourceId\":{},\"CreationStatus\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateGroup\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"GroupName\":{},\"Description\":{},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"S53\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateGroupMembership\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members/{MemberName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"MemberName\",\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"MemberName\":{\"location\":\"uri\",\"locationName\":\"MemberName\"},\"GroupName\":{\"location\":\"uri\",\"locationName\":\"GroupName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupMember\":{\"shape\":\"S57\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateIAMPolicyAssignment\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments/\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AssignmentName\",\"AssignmentStatus\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AssignmentName\":{},\"AssignmentStatus\":{},\"PolicyArn\":{},\"Identities\":{\"shape\":\"S5b\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssignmentName\":{},\"AssignmentId\":{},\"AssignmentStatus\":{},\"PolicyArn\":{},\"Identities\":{\"shape\":\"S5b\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateIngestion\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}/ingestions/{IngestionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"DataSetId\",\"IngestionId\",\"AwsAccountId\"],\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"IngestionId\":{\"location\":\"uri\",\"locationName\":\"IngestionId\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"IngestionId\":{},\"IngestionStatus\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateNamespace\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Namespace\",\"IdentityStore\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{},\"IdentityStore\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"CapacityRegion\":{},\"CreationStatus\":{},\"IdentityStore\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"CreateTemplate\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\",\"SourceEntity\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"Name\":{},\"Permissions\":{\"shape\":\"S11\"},\"SourceEntity\":{\"shape\":\"S5o\"},\"Tags\":{\"shape\":\"Sb\"},\"VersionDescription\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"VersionArn\":{},\"TemplateId\":{},\"CreationStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"CreateTemplateAlias\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\",\"AliasName\",\"TemplateVersionNumber\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"},\"TemplateVersionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateAlias\":{\"shape\":\"S5w\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"CreateTheme\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\",\"Name\",\"BaseThemeId\",\"Configuration\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"Name\":{},\"BaseThemeId\":{},\"VersionDescription\":{},\"Configuration\":{\"shape\":\"S5z\"},\"Permissions\":{\"shape\":\"S11\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"VersionArn\":{},\"ThemeId\":{},\"CreationStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"CreateThemeAlias\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\",\"AliasName\",\"ThemeVersionNumber\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"},\"ThemeVersionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeAlias\":{\"shape\":\"S6e\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DeleteAccountCustomization\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/customizations\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteAnalysis\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/analyses/{AnalysisId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"},\"RecoveryWindowInDays\":{\"location\":\"querystring\",\"locationName\":\"recovery-window-in-days\",\"type\":\"long\"},\"ForceDeleteWithoutRecovery\":{\"location\":\"querystring\",\"locationName\":\"force-delete-without-recovery\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"Arn\":{},\"AnalysisId\":{},\"DeletionTime\":{\"type\":\"timestamp\"},\"RequestId\":{}}}},\"DeleteDashboard\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"VersionNumber\":{\"location\":\"querystring\",\"locationName\":\"version-number\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"Arn\":{},\"DashboardId\":{},\"RequestId\":{}}}},\"DeleteDataSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSetId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteDataSource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sources/{DataSourceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSourceId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSourceId\":{\"location\":\"uri\",\"locationName\":\"DataSourceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSourceId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"GroupName\":{\"location\":\"uri\",\"locationName\":\"GroupName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteGroupMembership\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members/{MemberName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"MemberName\",\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"MemberName\":{\"location\":\"uri\",\"locationName\":\"MemberName\"},\"GroupName\":{\"location\":\"uri\",\"locationName\":\"GroupName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteIAMPolicyAssignment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/namespace/{Namespace}/iam-policy-assignments/{AssignmentName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AssignmentName\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AssignmentName\":{\"location\":\"uri\",\"locationName\":\"AssignmentName\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssignmentName\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteNamespace\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"VersionNumber\":{\"location\":\"querystring\",\"locationName\":\"version-number\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Arn\":{},\"TemplateId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteTemplateAlias\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\",\"AliasName\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"TemplateId\":{},\"AliasName\":{},\"Arn\":{},\"RequestId\":{}}}},\"DeleteTheme\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"VersionNumber\":{\"location\":\"querystring\",\"locationName\":\"version-number\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"ThemeId\":{}}}},\"DeleteThemeAlias\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\",\"AliasName\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AliasName\":{},\"Arn\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"ThemeId\":{}}}},\"DeleteUser\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"UserName\":{\"location\":\"uri\",\"locationName\":\"UserName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DeleteUserByPrincipalId\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/user-principals/{PrincipalId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PrincipalId\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"PrincipalId\":{\"location\":\"uri\",\"locationName\":\"PrincipalId\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeAccountCustomization\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/customizations\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"Resolved\":{\"location\":\"querystring\",\"locationName\":\"resolved\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AwsAccountId\":{},\"Namespace\":{},\"AccountCustomization\":{\"shape\":\"Sa\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeAccountSettings\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/settings\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountSettings\":{\"type\":\"structure\",\"members\":{\"AccountName\":{},\"Edition\":{},\"DefaultNamespace\":{},\"NotificationEmail\":{}}},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeAnalysis\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/analyses/{AnalysisId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Analysis\":{\"type\":\"structure\",\"members\":{\"AnalysisId\":{},\"Arn\":{},\"Name\":{},\"Status\":{},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}},\"DataSetArns\":{\"shape\":\"S7n\"},\"ThemeArn\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"Sheets\":{\"shape\":\"S7o\"}}},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeAnalysisPermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/analyses/{AnalysisId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnalysisId\":{},\"AnalysisArn\":{},\"Permissions\":{\"shape\":\"S11\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeDashboard\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"VersionNumber\":{\"location\":\"querystring\",\"locationName\":\"version-number\",\"type\":\"long\"},\"AliasName\":{\"location\":\"querystring\",\"locationName\":\"alias-name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Dashboard\":{\"type\":\"structure\",\"members\":{\"DashboardId\":{},\"Arn\":{},\"Name\":{},\"Version\":{\"type\":\"structure\",\"members\":{\"CreatedTime\":{\"type\":\"timestamp\"},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}},\"VersionNumber\":{\"type\":\"long\"},\"Status\":{},\"Arn\":{},\"SourceEntityArn\":{},\"DataSetArns\":{\"shape\":\"S7n\"},\"Description\":{},\"ThemeArn\":{},\"Sheets\":{\"shape\":\"S7o\"}}},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastPublishedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeDashboardPermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DashboardId\":{},\"DashboardArn\":{},\"Permissions\":{\"shape\":\"S11\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeDataSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSet\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSetId\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"PhysicalTableMap\":{\"shape\":\"S1q\"},\"LogicalTableMap\":{\"shape\":\"S2b\"},\"OutputColumns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"Type\":{}}}},\"ImportMode\":{},\"ConsumedSpiceCapacityInBytes\":{\"type\":\"long\"},\"ColumnGroups\":{\"shape\":\"S35\"},\"FieldFolders\":{\"shape\":\"S3b\"},\"RowLevelPermissionDataSet\":{\"shape\":\"S3g\"},\"ColumnLevelPermissionRules\":{\"shape\":\"S3i\"}}},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeDataSetPermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSetArn\":{},\"DataSetId\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeDataSource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sources/{DataSourceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSourceId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSourceId\":{\"location\":\"uri\",\"locationName\":\"DataSourceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSource\":{\"shape\":\"S8a\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeDataSourcePermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sources/{DataSourceId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSourceId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSourceId\":{\"location\":\"uri\",\"locationName\":\"DataSourceId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceArn\":{},\"DataSourceId\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"GroupName\":{\"location\":\"uri\",\"locationName\":\"GroupName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"S53\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeIAMPolicyAssignment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments/{AssignmentName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AssignmentName\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AssignmentName\":{\"location\":\"uri\",\"locationName\":\"AssignmentName\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IAMPolicyAssignment\":{\"type\":\"structure\",\"members\":{\"AwsAccountId\":{},\"AssignmentId\":{},\"AssignmentName\":{},\"PolicyArn\":{},\"Identities\":{\"shape\":\"S5b\"},\"AssignmentStatus\":{}}},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeIngestion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}/ingestions/{IngestionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\",\"IngestionId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"IngestionId\":{\"location\":\"uri\",\"locationName\":\"IngestionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ingestion\":{\"shape\":\"S8m\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeNamespace\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Namespace\":{\"shape\":\"S8x\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"VersionNumber\":{\"location\":\"querystring\",\"locationName\":\"version-number\",\"type\":\"long\"},\"AliasName\":{\"location\":\"querystring\",\"locationName\":\"alias-name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Template\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"Version\":{\"type\":\"structure\",\"members\":{\"CreatedTime\":{\"type\":\"timestamp\"},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}},\"VersionNumber\":{\"type\":\"long\"},\"Status\":{},\"DataSetConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Placeholder\":{},\"DataSetSchema\":{\"type\":\"structure\",\"members\":{\"ColumnSchemaList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DataType\":{},\"GeographicRole\":{}}}}}},\"ColumnGroupSchemaList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ColumnGroupColumnSchemaList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}}}}}}}},\"Description\":{},\"SourceEntityArn\":{},\"ThemeArn\":{},\"Sheets\":{\"shape\":\"S7o\"}}},\"TemplateId\":{},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"CreatedTime\":{\"type\":\"timestamp\"}}},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeTemplateAlias\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\",\"AliasName\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateAlias\":{\"shape\":\"S5w\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeTemplatePermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateId\":{},\"TemplateArn\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeTheme\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"VersionNumber\":{\"location\":\"querystring\",\"locationName\":\"version-number\",\"type\":\"long\"},\"AliasName\":{\"location\":\"querystring\",\"locationName\":\"alias-name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Theme\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"ThemeId\":{},\"Version\":{\"type\":\"structure\",\"members\":{\"VersionNumber\":{\"type\":\"long\"},\"Arn\":{},\"Description\":{},\"BaseThemeId\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"Configuration\":{\"shape\":\"S5z\"},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}},\"Status\":{}}},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"Type\":{}}},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeThemeAlias\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\",\"AliasName\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeAlias\":{\"shape\":\"S6e\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"DescribeThemePermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeId\":{},\"ThemeArn\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"DescribeUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"UserName\":{\"location\":\"uri\",\"locationName\":\"UserName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S9z\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"GetDashboardEmbedUrl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}/embed-url\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\",\"IdentityType\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"IdentityType\":{\"location\":\"querystring\",\"locationName\":\"creds-type\"},\"SessionLifetimeInMinutes\":{\"location\":\"querystring\",\"locationName\":\"session-lifetime\",\"type\":\"long\"},\"UndoRedoDisabled\":{\"location\":\"querystring\",\"locationName\":\"undo-redo-disabled\",\"type\":\"boolean\"},\"ResetDisabled\":{\"location\":\"querystring\",\"locationName\":\"reset-disabled\",\"type\":\"boolean\"},\"StatePersistenceEnabled\":{\"location\":\"querystring\",\"locationName\":\"state-persistence-enabled\",\"type\":\"boolean\"},\"UserArn\":{\"location\":\"querystring\",\"locationName\":\"user-arn\"},\"Namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"AdditionalDashboardIds\":{\"location\":\"querystring\",\"locationName\":\"additional-dashboard-ids\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"EmbedUrl\":{\"shape\":\"Sa8\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"GetSessionEmbedUrl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/session-embed-url\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"EntryPoint\":{\"location\":\"querystring\",\"locationName\":\"entry-point\"},\"SessionLifetimeInMinutes\":{\"location\":\"querystring\",\"locationName\":\"session-lifetime\",\"type\":\"long\"},\"UserArn\":{\"location\":\"querystring\",\"locationName\":\"user-arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EmbedUrl\":{\"shape\":\"Sa8\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListAnalyses\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/analyses\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnalysisSummaryList\":{\"shape\":\"Saf\"},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListDashboardVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DashboardVersionSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"VersionNumber\":{\"type\":\"long\"},\"Status\":{},\"SourceEntityArn\":{},\"Description\":{}}}},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListDashboards\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DashboardSummaryList\":{\"shape\":\"San\"},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListDataSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSetSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSetId\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"ImportMode\":{},\"RowLevelPermissionDataSet\":{\"shape\":\"S3g\"},\"ColumnLevelPermissionRulesApplied\":{\"type\":\"boolean\"}}}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListDataSources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sources\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSources\":{\"type\":\"list\",\"member\":{\"shape\":\"S8a\"}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListGroupMemberships\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members\"},\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"GroupName\":{\"location\":\"uri\",\"locationName\":\"GroupName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupMemberList\":{\"type\":\"list\",\"member\":{\"shape\":\"S57\"}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupList\":{\"shape\":\"Sb1\"},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListIAMPolicyAssignments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AssignmentStatus\":{},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IAMPolicyAssignments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssignmentName\":{},\"AssignmentStatus\":{}}}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListIAMPolicyAssignmentsForUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/iam-policy-assignments\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"UserName\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"UserName\":{\"location\":\"uri\",\"locationName\":\"UserName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActiveAssignments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssignmentName\":{},\"PolicyArn\":{}}}},\"RequestId\":{},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListIngestions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}/ingestions\"},\"input\":{\"type\":\"structure\",\"required\":[\"DataSetId\",\"AwsAccountId\"],\"members\":{\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Ingestions\":{\"type\":\"list\",\"member\":{\"shape\":\"S8m\"}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListNamespaces\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Namespaces\":{\"type\":\"list\",\"member\":{\"shape\":\"S8x\"}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/resources/{ResourceArn}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sb\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListTemplateAliases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/aliases\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-result\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateAliasList\":{\"type\":\"list\",\"member\":{\"shape\":\"S5w\"}},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{},\"NextToken\":{}}}},\"ListTemplateVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateVersionSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"VersionNumber\":{\"type\":\"long\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"Status\":{},\"Description\":{}}}},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/templates\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-result\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"TemplateId\":{},\"Name\":{},\"LatestVersionNumber\":{\"type\":\"long\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListThemeAliases\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/aliases\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-result\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeAliasList\":{\"type\":\"list\",\"member\":{\"shape\":\"S6e\"}},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{},\"NextToken\":{}}}},\"ListThemeVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeVersionSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VersionNumber\":{\"type\":\"long\"},\"Arn\":{},\"Description\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"Status\":{}}}},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListThemes\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/themes\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"Type\":{\"location\":\"querystring\",\"locationName\":\"type\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Name\":{},\"ThemeId\":{},\"LatestVersionNumber\":{\"type\":\"long\"},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"ListUserGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"UserName\":{\"location\":\"uri\",\"locationName\":\"UserName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupList\":{\"shape\":\"Sb1\"},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"ListUsers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"next-token\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"max-results\",\"type\":\"integer\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserList\":{\"type\":\"list\",\"member\":{\"shape\":\"S9z\"}},\"NextToken\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"RegisterUser\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users\"},\"input\":{\"type\":\"structure\",\"required\":[\"IdentityType\",\"Email\",\"UserRole\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"IdentityType\":{},\"Email\":{},\"UserRole\":{},\"IamArn\":{},\"SessionName\":{},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"},\"UserName\":{},\"CustomPermissionsName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S9z\"},\"UserInvitationUrl\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"RestoreAnalysis\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/restore/analyses/{AnalysisId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"Arn\":{},\"AnalysisId\":{},\"RequestId\":{}}}},\"SearchAnalyses\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/search/analyses\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Filters\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Operator\":{},\"Name\":{},\"Value\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnalysisSummaryList\":{\"shape\":\"Saf\"},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"SearchDashboards\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/search/dashboards\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"Filters\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Operator\"],\"members\":{\"Operator\":{},\"Name\":{},\"Value\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DashboardSummaryList\":{\"shape\":\"San\"},\"NextToken\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/resources/{ResourceArn}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/resources/{ResourceArn}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"keys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateAccountCustomization\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/customizations\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AccountCustomization\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"querystring\",\"locationName\":\"namespace\"},\"AccountCustomization\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AwsAccountId\":{},\"Namespace\":{},\"AccountCustomization\":{\"shape\":\"Sa\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateAccountSettings\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/settings\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DefaultNamespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DefaultNamespace\":{},\"NotificationEmail\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateAnalysis\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/analyses/{AnalysisId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\",\"Name\",\"SourceEntity\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"},\"Name\":{},\"Parameters\":{\"shape\":\"Sk\"},\"SourceEntity\":{\"shape\":\"S15\"},\"ThemeArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AnalysisId\":{},\"UpdateStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateAnalysisPermissions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/analyses/{AnalysisId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AnalysisId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AnalysisId\":{\"location\":\"uri\",\"locationName\":\"AnalysisId\"},\"GrantPermissions\":{\"shape\":\"Sd2\"},\"RevokePermissions\":{\"shape\":\"Sd2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnalysisArn\":{},\"AnalysisId\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateDashboard\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\",\"Name\",\"SourceEntity\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"Name\":{},\"SourceEntity\":{\"shape\":\"S1d\"},\"Parameters\":{\"shape\":\"Sk\"},\"VersionDescription\":{},\"DashboardPublishOptions\":{\"shape\":\"S1g\"},\"ThemeArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"VersionArn\":{},\"DashboardId\":{},\"CreationStatus\":{},\"Status\":{\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateDashboardPermissions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"GrantPermissions\":{\"shape\":\"Sd2\"},\"RevokePermissions\":{\"shape\":\"Sd2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DashboardArn\":{},\"DashboardId\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateDashboardPublishedVersion\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/dashboards/{DashboardId}/versions/{VersionNumber}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DashboardId\",\"VersionNumber\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DashboardId\":{\"location\":\"uri\",\"locationName\":\"DashboardId\"},\"VersionNumber\":{\"location\":\"uri\",\"locationName\":\"VersionNumber\",\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DashboardId\":{},\"DashboardArn\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateDataSet\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\",\"Name\",\"PhysicalTableMap\",\"ImportMode\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"Name\":{},\"PhysicalTableMap\":{\"shape\":\"S1q\"},\"LogicalTableMap\":{\"shape\":\"S2b\"},\"ImportMode\":{},\"ColumnGroups\":{\"shape\":\"S35\"},\"FieldFolders\":{\"shape\":\"S3b\"},\"RowLevelPermissionDataSet\":{\"shape\":\"S3g\"},\"ColumnLevelPermissionRules\":{\"shape\":\"S3i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSetId\":{},\"IngestionArn\":{},\"IngestionId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateDataSetPermissions\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/data-sets/{DataSetId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSetId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSetId\":{\"location\":\"uri\",\"locationName\":\"DataSetId\"},\"GrantPermissions\":{\"shape\":\"S11\"},\"RevokePermissions\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSetArn\":{},\"DataSetId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateDataSource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/data-sources/{DataSourceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSourceId\",\"Name\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSourceId\":{\"location\":\"uri\",\"locationName\":\"DataSourceId\"},\"Name\":{},\"DataSourceParameters\":{\"shape\":\"S3p\"},\"Credentials\":{\"shape\":\"S4q\"},\"VpcConnectionProperties\":{\"shape\":\"S4w\"},\"SslProperties\":{\"shape\":\"S4x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSourceId\":{},\"UpdateStatus\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateDataSourcePermissions\":{\"http\":{\"requestUri\":\"/accounts/{AwsAccountId}/data-sources/{DataSourceId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"DataSourceId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"DataSourceId\":{\"location\":\"uri\",\"locationName\":\"DataSourceId\"},\"GrantPermissions\":{\"shape\":\"S11\"},\"RevokePermissions\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DataSourceArn\":{},\"DataSourceId\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"AwsAccountId\",\"Namespace\"],\"members\":{\"GroupName\":{\"location\":\"uri\",\"locationName\":\"GroupName\"},\"Description\":{},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"S53\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateIAMPolicyAssignment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/iam-policy-assignments/{AssignmentName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"AssignmentName\",\"Namespace\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"AssignmentName\":{\"location\":\"uri\",\"locationName\":\"AssignmentName\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"},\"AssignmentStatus\":{},\"PolicyArn\":{},\"Identities\":{\"shape\":\"S5b\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssignmentName\":{},\"AssignmentId\":{},\"PolicyArn\":{},\"Identities\":{\"shape\":\"S5b\"},\"AssignmentStatus\":{},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\",\"SourceEntity\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"SourceEntity\":{\"shape\":\"S5o\"},\"VersionDescription\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateId\":{},\"Arn\":{},\"VersionArn\":{},\"CreationStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateTemplateAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\",\"AliasName\",\"TemplateVersionNumber\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"},\"TemplateVersionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateAlias\":{\"shape\":\"S5w\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateTemplatePermissions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/templates/{TemplateId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"TemplateId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"TemplateId\"},\"GrantPermissions\":{\"shape\":\"Sd2\"},\"RevokePermissions\":{\"shape\":\"Sd2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateId\":{},\"TemplateArn\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateTheme\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\",\"BaseThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"Name\":{},\"BaseThemeId\":{},\"VersionDescription\":{},\"Configuration\":{\"shape\":\"S5z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeId\":{},\"Arn\":{},\"VersionArn\":{},\"CreationStatus\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateThemeAlias\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/aliases/{AliasName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\",\"AliasName\",\"ThemeVersionNumber\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"AliasName\":{\"location\":\"uri\",\"locationName\":\"AliasName\"},\"ThemeVersionNumber\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeAlias\":{\"shape\":\"S6e\"},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"},\"RequestId\":{}}}},\"UpdateThemePermissions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/themes/{ThemeId}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"AwsAccountId\",\"ThemeId\"],\"members\":{\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"ThemeId\":{\"location\":\"uri\",\"locationName\":\"ThemeId\"},\"GrantPermissions\":{\"shape\":\"Sd2\"},\"RevokePermissions\":{\"shape\":\"Sd2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ThemeId\":{},\"ThemeArn\":{},\"Permissions\":{\"shape\":\"S11\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}},\"UpdateUser\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"AwsAccountId\",\"Namespace\",\"Email\",\"Role\"],\"members\":{\"UserName\":{\"location\":\"uri\",\"locationName\":\"UserName\"},\"AwsAccountId\":{\"location\":\"uri\",\"locationName\":\"AwsAccountId\"},\"Namespace\":{\"location\":\"uri\",\"locationName\":\"Namespace\"},\"Email\":{},\"Role\":{},\"CustomPermissionsName\":{},\"UnapplyCustomPermissions\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S9z\"},\"RequestId\":{},\"Status\":{\"location\":\"statusCode\",\"type\":\"integer\"}}}}},\"shapes\":{\"Sa\":{\"type\":\"structure\",\"members\":{\"DefaultTheme\":{}}},\"Sb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sk\":{\"type\":\"structure\",\"members\":{\"StringParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"IntegerParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"long\"}}}}},\"DecimalParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}}}}},\"DateTimeParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"timestamp\"}}}}}}},\"S11\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"S12\":{\"type\":\"structure\",\"required\":[\"Principal\",\"Actions\"],\"members\":{\"Principal\":{},\"Actions\":{\"type\":\"list\",\"member\":{}}}},\"S15\":{\"type\":\"structure\",\"members\":{\"SourceTemplate\":{\"type\":\"structure\",\"required\":[\"DataSetReferences\",\"Arn\"],\"members\":{\"DataSetReferences\":{\"shape\":\"S17\"},\"Arn\":{}}}}},\"S17\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DataSetPlaceholder\",\"DataSetArn\"],\"members\":{\"DataSetPlaceholder\":{},\"DataSetArn\":{}}}},\"S1d\":{\"type\":\"structure\",\"members\":{\"SourceTemplate\":{\"type\":\"structure\",\"required\":[\"DataSetReferences\",\"Arn\"],\"members\":{\"DataSetReferences\":{\"shape\":\"S17\"},\"Arn\":{}}}}},\"S1g\":{\"type\":\"structure\",\"members\":{\"AdHocFilteringOption\":{\"type\":\"structure\",\"members\":{\"AvailabilityStatus\":{}}},\"ExportToCSVOption\":{\"type\":\"structure\",\"members\":{\"AvailabilityStatus\":{}}},\"SheetControlsOption\":{\"type\":\"structure\",\"members\":{\"VisibilityState\":{}}}}},\"S1q\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"RelationalTable\":{\"type\":\"structure\",\"required\":[\"DataSourceArn\",\"Name\",\"InputColumns\"],\"members\":{\"DataSourceArn\":{},\"Catalog\":{},\"Schema\":{},\"Name\":{},\"InputColumns\":{\"shape\":\"S1x\"}}},\"CustomSql\":{\"type\":\"structure\",\"required\":[\"DataSourceArn\",\"Name\",\"SqlQuery\"],\"members\":{\"DataSourceArn\":{},\"Name\":{},\"SqlQuery\":{},\"Columns\":{\"shape\":\"S1x\"}}},\"S3Source\":{\"type\":\"structure\",\"required\":[\"DataSourceArn\",\"InputColumns\"],\"members\":{\"DataSourceArn\":{},\"UploadSettings\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"StartFromRow\":{\"type\":\"integer\"},\"ContainsHeader\":{\"type\":\"boolean\"},\"TextQualifier\":{},\"Delimiter\":{}}},\"InputColumns\":{\"shape\":\"S1x\"}}}}}},\"S1x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{}}}},\"S2b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Alias\",\"Source\"],\"members\":{\"Alias\":{},\"DataTransforms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProjectOperation\":{\"type\":\"structure\",\"required\":[\"ProjectedColumns\"],\"members\":{\"ProjectedColumns\":{\"type\":\"list\",\"member\":{}}}},\"FilterOperation\":{\"type\":\"structure\",\"required\":[\"ConditionExpression\"],\"members\":{\"ConditionExpression\":{}}},\"CreateColumnsOperation\":{\"type\":\"structure\",\"required\":[\"Columns\"],\"members\":{\"Columns\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ColumnName\",\"ColumnId\",\"Expression\"],\"members\":{\"ColumnName\":{},\"ColumnId\":{},\"Expression\":{}}}}}},\"RenameColumnOperation\":{\"type\":\"structure\",\"required\":[\"ColumnName\",\"NewColumnName\"],\"members\":{\"ColumnName\":{},\"NewColumnName\":{}}},\"CastColumnTypeOperation\":{\"type\":\"structure\",\"required\":[\"ColumnName\",\"NewColumnType\"],\"members\":{\"ColumnName\":{},\"NewColumnType\":{},\"Format\":{}}},\"TagColumnOperation\":{\"type\":\"structure\",\"required\":[\"ColumnName\",\"Tags\"],\"members\":{\"ColumnName\":{},\"Tags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ColumnGeographicRole\":{},\"ColumnDescription\":{\"type\":\"structure\",\"members\":{\"Text\":{}}}}}}}}}}},\"Source\":{\"type\":\"structure\",\"members\":{\"JoinInstruction\":{\"type\":\"structure\",\"required\":[\"LeftOperand\",\"RightOperand\",\"Type\",\"OnClause\"],\"members\":{\"LeftOperand\":{},\"RightOperand\":{},\"LeftJoinKeyProperties\":{\"shape\":\"S31\"},\"RightJoinKeyProperties\":{\"shape\":\"S31\"},\"Type\":{},\"OnClause\":{}}},\"PhysicalTableId\":{}}}}}},\"S31\":{\"type\":\"structure\",\"members\":{\"UniqueKey\":{\"type\":\"boolean\"}}},\"S35\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GeoSpatialColumnGroup\":{\"type\":\"structure\",\"required\":[\"Name\",\"CountryCode\",\"Columns\"],\"members\":{\"Name\":{},\"CountryCode\":{},\"Columns\":{\"type\":\"list\",\"member\":{}}}}}}},\"S3b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"description\":{},\"columns\":{\"type\":\"list\",\"member\":{}}}}},\"S3g\":{\"type\":\"structure\",\"required\":[\"Arn\",\"PermissionPolicy\"],\"members\":{\"Namespace\":{},\"Arn\":{},\"PermissionPolicy\":{}}},\"S3i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Principals\":{\"type\":\"list\",\"member\":{}},\"ColumnNames\":{\"type\":\"list\",\"member\":{}}}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"AmazonElasticsearchParameters\":{\"type\":\"structure\",\"required\":[\"Domain\"],\"members\":{\"Domain\":{}}},\"AthenaParameters\":{\"type\":\"structure\",\"members\":{\"WorkGroup\":{}}},\"AuroraParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"AuroraPostgreSqlParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"AwsIotAnalyticsParameters\":{\"type\":\"structure\",\"required\":[\"DataSetName\"],\"members\":{\"DataSetName\":{}}},\"JiraParameters\":{\"type\":\"structure\",\"required\":[\"SiteBaseUrl\"],\"members\":{\"SiteBaseUrl\":{}}},\"MariaDbParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"MySqlParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"OracleParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"PostgreSqlParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"PrestoParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Catalog\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Catalog\":{}}},\"RdsParameters\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Database\"],\"members\":{\"InstanceId\":{},\"Database\":{}}},\"RedshiftParameters\":{\"type\":\"structure\",\"required\":[\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{},\"ClusterId\":{}}},\"S3Parameters\":{\"type\":\"structure\",\"required\":[\"ManifestFileLocation\"],\"members\":{\"ManifestFileLocation\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{},\"Key\":{}}}}},\"ServiceNowParameters\":{\"type\":\"structure\",\"required\":[\"SiteBaseUrl\"],\"members\":{\"SiteBaseUrl\":{}}},\"SnowflakeParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Database\",\"Warehouse\"],\"members\":{\"Host\":{},\"Database\":{},\"Warehouse\":{}}},\"SparkParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"}}},\"SqlServerParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"TeradataParameters\":{\"type\":\"structure\",\"required\":[\"Host\",\"Port\",\"Database\"],\"members\":{\"Host\":{},\"Port\":{\"type\":\"integer\"},\"Database\":{}}},\"TwitterParameters\":{\"type\":\"structure\",\"required\":[\"Query\",\"MaxRows\"],\"members\":{\"Query\":{},\"MaxRows\":{\"type\":\"integer\"}}}}},\"S4q\":{\"type\":\"structure\",\"members\":{\"CredentialPair\":{\"type\":\"structure\",\"required\":[\"Username\",\"Password\"],\"members\":{\"Username\":{},\"Password\":{},\"AlternateDataSourceParameters\":{\"shape\":\"S4u\"}}},\"CopySourceArn\":{}},\"sensitive\":true},\"S4u\":{\"type\":\"list\",\"member\":{\"shape\":\"S3p\"}},\"S4w\":{\"type\":\"structure\",\"required\":[\"VpcConnectionArn\"],\"members\":{\"VpcConnectionArn\":{}}},\"S4x\":{\"type\":\"structure\",\"members\":{\"DisableSsl\":{\"type\":\"boolean\"}}},\"S53\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"GroupName\":{},\"Description\":{},\"PrincipalId\":{}}},\"S57\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"MemberName\":{}}},\"S5b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"S5o\":{\"type\":\"structure\",\"members\":{\"SourceAnalysis\":{\"type\":\"structure\",\"required\":[\"Arn\",\"DataSetReferences\"],\"members\":{\"Arn\":{},\"DataSetReferences\":{\"shape\":\"S17\"}}},\"SourceTemplate\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}}}},\"S5w\":{\"type\":\"structure\",\"members\":{\"AliasName\":{},\"Arn\":{},\"TemplateVersionNumber\":{\"type\":\"long\"}}},\"S5z\":{\"type\":\"structure\",\"members\":{\"DataColorPalette\":{\"type\":\"structure\",\"members\":{\"Colors\":{\"shape\":\"S61\"},\"MinMaxGradient\":{\"shape\":\"S61\"},\"EmptyFillColor\":{}}},\"UIColorPalette\":{\"type\":\"structure\",\"members\":{\"PrimaryForeground\":{},\"PrimaryBackground\":{},\"SecondaryForeground\":{},\"SecondaryBackground\":{},\"Accent\":{},\"AccentForeground\":{},\"Danger\":{},\"DangerForeground\":{},\"Warning\":{},\"WarningForeground\":{},\"Success\":{},\"SuccessForeground\":{},\"Dimension\":{},\"DimensionForeground\":{},\"Measure\":{},\"MeasureForeground\":{}}},\"Sheet\":{\"type\":\"structure\",\"members\":{\"Tile\":{\"type\":\"structure\",\"members\":{\"Border\":{\"type\":\"structure\",\"members\":{\"Show\":{\"type\":\"boolean\"}}}}},\"TileLayout\":{\"type\":\"structure\",\"members\":{\"Gutter\":{\"type\":\"structure\",\"members\":{\"Show\":{\"type\":\"boolean\"}}},\"Margin\":{\"type\":\"structure\",\"members\":{\"Show\":{\"type\":\"boolean\"}}}}}}}}},\"S61\":{\"type\":\"list\",\"member\":{}},\"S6e\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AliasName\":{},\"ThemeVersionNumber\":{\"type\":\"long\"}}},\"S7n\":{\"type\":\"list\",\"member\":{}},\"S7o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SheetId\":{},\"Name\":{}}}},\"S8a\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DataSourceId\":{},\"Name\":{},\"Type\":{},\"Status\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"DataSourceParameters\":{\"shape\":\"S3p\"},\"AlternateDataSourceParameters\":{\"shape\":\"S4u\"},\"VpcConnectionProperties\":{\"shape\":\"S4w\"},\"SslProperties\":{\"shape\":\"S4x\"},\"ErrorInfo\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}}},\"S8m\":{\"type\":\"structure\",\"required\":[\"Arn\",\"IngestionStatus\",\"CreatedTime\"],\"members\":{\"Arn\":{},\"IngestionId\":{},\"IngestionStatus\":{},\"ErrorInfo\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}},\"RowInfo\":{\"type\":\"structure\",\"members\":{\"RowsIngested\":{\"type\":\"long\"},\"RowsDropped\":{\"type\":\"long\"}}},\"QueueInfo\":{\"type\":\"structure\",\"required\":[\"WaitingOnIngestion\",\"QueuedIngestion\"],\"members\":{\"WaitingOnIngestion\":{},\"QueuedIngestion\":{}}},\"CreatedTime\":{\"type\":\"timestamp\"},\"IngestionTimeInSeconds\":{\"type\":\"long\"},\"IngestionSizeInBytes\":{\"type\":\"long\"},\"RequestSource\":{},\"RequestType\":{}}},\"S8x\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"CapacityRegion\":{},\"CreationStatus\":{},\"IdentityStore\":{},\"NamespaceError\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Message\":{}}}}},\"S9z\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"UserName\":{},\"Email\":{},\"Role\":{},\"IdentityType\":{},\"Active\":{\"type\":\"boolean\"},\"PrincipalId\":{},\"CustomPermissionsName\":{}}},\"Sa8\":{\"type\":\"string\",\"sensitive\":true},\"Saf\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AnalysisId\":{},\"Name\":{},\"Status\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"San\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DashboardId\":{},\"Name\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"PublishedVersionNumber\":{\"type\":\"long\"},\"LastPublishedTime\":{\"type\":\"timestamp\"}}}},\"Sb1\":{\"type\":\"list\",\"member\":{\"shape\":\"S53\"}},\"Sd2\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}}}}");

/***/ }),

/***/ 81489:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAnalyses\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AnalysisSummaryList\"},\"ListDashboardVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DashboardVersionSummaryList\"},\"ListDashboards\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DashboardSummaryList\"},\"ListDataSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DataSetSummaries\"},\"ListDataSources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DataSources\"},\"ListIngestions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Ingestions\"},\"ListNamespaces\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Namespaces\"},\"ListTemplateAliases\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TemplateAliasList\"},\"ListTemplateVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TemplateVersionSummaryList\"},\"ListTemplates\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TemplateSummaryList\"},\"ListThemeVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ThemeVersionSummaryList\"},\"ListThemes\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ThemeSummaryList\"},\"SearchAnalyses\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AnalysisSummaryList\"},\"SearchDashboards\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DashboardSummaryList\"}}}");

/***/ }),

/***/ 83728:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-01-04\",\"endpointPrefix\":\"ram\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"RAM\",\"serviceFullName\":\"AWS Resource Access Manager\",\"serviceId\":\"RAM\",\"signatureVersion\":\"v4\",\"uid\":\"ram-2018-01-04\"},\"operations\":{\"AcceptResourceShareInvitation\":{\"http\":{\"requestUri\":\"/acceptresourceshareinvitation\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareInvitationArn\"],\"members\":{\"resourceShareInvitationArn\":{},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShareInvitation\":{\"shape\":\"S4\"},\"clientToken\":{}}}},\"AssociateResourceShare\":{\"http\":{\"requestUri\":\"/associateresourceshare\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\"],\"members\":{\"resourceShareArn\":{},\"resourceArns\":{\"shape\":\"Sd\"},\"principals\":{\"shape\":\"Se\"},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShareAssociations\":{\"shape\":\"S7\"},\"clientToken\":{}}}},\"AssociateResourceSharePermission\":{\"http\":{\"requestUri\":\"/associateresourcesharepermission\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\",\"permissionArn\"],\"members\":{\"resourceShareArn\":{},\"permissionArn\":{},\"replace\":{\"type\":\"boolean\"},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"returnValue\":{\"type\":\"boolean\"},\"clientToken\":{}}}},\"CreateResourceShare\":{\"http\":{\"requestUri\":\"/createresourceshare\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"resourceArns\":{\"shape\":\"Sd\"},\"principals\":{\"shape\":\"Se\"},\"tags\":{\"shape\":\"Sj\"},\"allowExternalPrincipals\":{\"type\":\"boolean\"},\"clientToken\":{},\"permissionArns\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShare\":{\"shape\":\"Sp\"},\"clientToken\":{}}}},\"DeleteResourceShare\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/deleteresourceshare\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\"],\"members\":{\"resourceShareArn\":{\"location\":\"querystring\",\"locationName\":\"resourceShareArn\"},\"clientToken\":{\"location\":\"querystring\",\"locationName\":\"clientToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"returnValue\":{\"type\":\"boolean\"},\"clientToken\":{}}}},\"DisassociateResourceShare\":{\"http\":{\"requestUri\":\"/disassociateresourceshare\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\"],\"members\":{\"resourceShareArn\":{},\"resourceArns\":{\"shape\":\"Sd\"},\"principals\":{\"shape\":\"Se\"},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShareAssociations\":{\"shape\":\"S7\"},\"clientToken\":{}}}},\"DisassociateResourceSharePermission\":{\"http\":{\"requestUri\":\"/disassociateresourcesharepermission\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\",\"permissionArn\"],\"members\":{\"resourceShareArn\":{},\"permissionArn\":{},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"returnValue\":{\"type\":\"boolean\"},\"clientToken\":{}}}},\"EnableSharingWithAwsOrganization\":{\"http\":{\"requestUri\":\"/enablesharingwithawsorganization\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"returnValue\":{\"type\":\"boolean\"}}}},\"GetPermission\":{\"http\":{\"requestUri\":\"/getpermission\"},\"input\":{\"type\":\"structure\",\"required\":[\"permissionArn\"],\"members\":{\"permissionArn\":{},\"permissionVersion\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"permission\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"version\":{},\"defaultVersion\":{\"type\":\"boolean\"},\"name\":{},\"resourceType\":{},\"permission\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"}}}}}},\"GetResourcePolicies\":{\"http\":{\"requestUri\":\"/getresourcepolicies\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArns\"],\"members\":{\"resourceArns\":{\"shape\":\"Sd\"},\"principal\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"policies\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"GetResourceShareAssociations\":{\"http\":{\"requestUri\":\"/getresourceshareassociations\"},\"input\":{\"type\":\"structure\",\"required\":[\"associationType\"],\"members\":{\"associationType\":{},\"resourceShareArns\":{\"shape\":\"S1a\"},\"resourceArn\":{},\"principal\":{},\"associationStatus\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShareAssociations\":{\"shape\":\"S7\"},\"nextToken\":{}}}},\"GetResourceShareInvitations\":{\"http\":{\"requestUri\":\"/getresourceshareinvitations\"},\"input\":{\"type\":\"structure\",\"members\":{\"resourceShareInvitationArns\":{\"type\":\"list\",\"member\":{}},\"resourceShareArns\":{\"shape\":\"S1a\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShareInvitations\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"nextToken\":{}}}},\"GetResourceShares\":{\"http\":{\"requestUri\":\"/getresourceshares\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceOwner\"],\"members\":{\"resourceShareArns\":{\"shape\":\"S1a\"},\"resourceShareStatus\":{},\"resourceOwner\":{},\"name\":{},\"tagFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"tagKey\":{},\"tagValues\":{\"type\":\"list\",\"member\":{}}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShares\":{\"type\":\"list\",\"member\":{\"shape\":\"Sp\"}},\"nextToken\":{}}}},\"ListPendingInvitationResources\":{\"http\":{\"requestUri\":\"/listpendinginvitationresources\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareInvitationArn\"],\"members\":{\"resourceShareInvitationArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resources\":{\"shape\":\"S1p\"},\"nextToken\":{}}}},\"ListPermissions\":{\"http\":{\"requestUri\":\"/listpermissions\"},\"input\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"permissions\":{\"shape\":\"S1u\"},\"nextToken\":{}}}},\"ListPrincipals\":{\"http\":{\"requestUri\":\"/listprincipals\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceOwner\"],\"members\":{\"resourceOwner\":{},\"resourceArn\":{},\"principals\":{\"shape\":\"Se\"},\"resourceType\":{},\"resourceShareArns\":{\"shape\":\"S1a\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"principals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"id\":{},\"resourceShareArn\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"},\"external\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListResourceSharePermissions\":{\"http\":{\"requestUri\":\"/listresourcesharepermissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\"],\"members\":{\"resourceShareArn\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"permissions\":{\"shape\":\"S1u\"},\"nextToken\":{}}}},\"ListResourceTypes\":{\"http\":{\"requestUri\":\"/listresourcetypes\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceType\":{},\"serviceName\":{}}}},\"nextToken\":{}}}},\"ListResources\":{\"http\":{\"requestUri\":\"/listresources\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceOwner\"],\"members\":{\"resourceOwner\":{},\"principal\":{},\"resourceType\":{},\"resourceArns\":{\"shape\":\"Sd\"},\"resourceShareArns\":{\"shape\":\"S1a\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resources\":{\"shape\":\"S1p\"},\"nextToken\":{}}}},\"PromoteResourceShareCreatedFromPolicy\":{\"http\":{\"requestUri\":\"/promoteresourcesharecreatedfrompolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\"],\"members\":{\"resourceShareArn\":{\"location\":\"querystring\",\"locationName\":\"resourceShareArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"returnValue\":{\"type\":\"boolean\"}}}},\"RejectResourceShareInvitation\":{\"http\":{\"requestUri\":\"/rejectresourceshareinvitation\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareInvitationArn\"],\"members\":{\"resourceShareInvitationArn\":{},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShareInvitation\":{\"shape\":\"S4\"},\"clientToken\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tagresource\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\",\"tags\"],\"members\":{\"resourceShareArn\":{},\"tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/untagresource\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\",\"tagKeys\"],\"members\":{\"resourceShareArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateResourceShare\":{\"http\":{\"requestUri\":\"/updateresourceshare\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceShareArn\"],\"members\":{\"resourceShareArn\":{},\"name\":{},\"allowExternalPrincipals\":{\"type\":\"boolean\"},\"clientToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"resourceShare\":{\"shape\":\"Sp\"},\"clientToken\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"resourceShareInvitationArn\":{},\"resourceShareName\":{},\"resourceShareArn\":{},\"senderAccountId\":{},\"receiverAccountId\":{},\"invitationTimestamp\":{\"type\":\"timestamp\"},\"status\":{},\"resourceShareAssociations\":{\"shape\":\"S7\",\"deprecated\":true,\"deprecatedMessage\":\"This member has been deprecated. Use ListPendingInvitationResources.\"}}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"resourceShareArn\":{},\"resourceShareName\":{},\"associatedEntity\":{},\"associationType\":{},\"status\":{},\"statusMessage\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"},\"external\":{\"type\":\"boolean\"}}}},\"Sd\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"list\",\"member\":{}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"Sp\":{\"type\":\"structure\",\"members\":{\"resourceShareArn\":{},\"name\":{},\"owningAccountId\":{},\"allowExternalPrincipals\":{\"type\":\"boolean\"},\"status\":{},\"statusMessage\":{},\"tags\":{\"shape\":\"Sj\"},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"},\"featureSet\":{}}},\"S1a\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"type\":{},\"resourceShareArn\":{},\"resourceGroupArn\":{},\"status\":{},\"statusMessage\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"}}}},\"S1u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"version\":{},\"defaultVersion\":{\"type\":\"boolean\"},\"name\":{},\"resourceType\":{},\"status\":{},\"creationTime\":{\"type\":\"timestamp\"},\"lastUpdatedTime\":{\"type\":\"timestamp\"}}}}}}");

/***/ }),

/***/ 83147:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetResourcePolicies\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetResourceShareAssociations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetResourceShareInvitations\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"GetResourceShares\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListPendingInvitationResources\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListPrincipals\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListResources\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 56144:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-01-10\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon RDS\",\"serviceFullName\":\"Amazon Relational Database Service\",\"serviceId\":\"RDS\",\"signatureVersion\":\"v4\",\"uid\":\"rds-2013-01-10\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2013-01-10/\"},\"operations\":{\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"AuthorizeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CopyDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBSnapshotIdentifier\",\"TargetDBSnapshotIdentifier\"],\"members\":{\"SourceDBSnapshotIdentifier\":{},\"TargetDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"CopyDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"AllocatedStorage\",\"DBInstanceClass\",\"Engine\",\"MasterUsername\",\"MasterUserPassword\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"Sp\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sq\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CharacterSetName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"CreateDBInstanceReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"SourceDBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SourceDBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"AvailabilityZone\":{},\"Port\":{\"type\":\"integer\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"CreateDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{}}},\"output\":{\"resultWrapper\":\"CreateDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"S1c\"}}}},\"CreateDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\",\"DBSecurityGroupDescription\"],\"members\":{\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{}}},\"output\":{\"resultWrapper\":\"CreateDBSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CreateDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\",\"DBInstanceIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"CreateDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1i\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S11\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"SourceIds\":{\"shape\":\"S5\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"CreateOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\",\"EngineName\",\"MajorEngineVersion\",\"OptionGroupDescription\"],\"members\":{\"OptionGroupName\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"OptionGroupDescription\":{}}},\"output\":{\"resultWrapper\":\"CreateOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1o\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"DeleteDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{}}}},\"DeleteDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{}}}},\"DeleteDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"DeleteOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"DefaultCharacterSet\":{\"shape\":\"S25\"},\"SupportedCharacterSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S25\",\"locationName\":\"CharacterSet\"}}}}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"St\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1c\",\"locationName\":\"DBParameterGroup\"}}}}},\"DescribeDBParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"Source\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S2f\"},\"Marker\":{}}}},\"DescribeDBSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\",\"locationName\":\"DBSecurityGroup\"}}}}},\"DescribeDBSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"SnapshotType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\",\"locationName\":\"DBSnapshot\"}}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S2f\"}},\"wrapper\":true}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S6\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeOptionGroupOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"EngineName\"],\"members\":{\"EngineName\":{},\"MajorEngineVersion\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupOptionsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOption\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"MinimumRequiredMinorEngineVersion\":{},\"PortRequired\":{\"type\":\"boolean\"},\"DefaultPort\":{\"type\":\"integer\"},\"OptionsDependedOn\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionName\"}}}}},\"Marker\":{}}}},\"DescribeOptionGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"},\"EngineName\":{},\"MajorEngineVersion\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1o\",\"locationName\":\"OptionGroup\"}},\"Marker\":{}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"Vpc\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S14\",\"locationName\":\"AvailabilityZone\"}},\"MultiAZCapable\":{\"type\":\"boolean\"},\"ReadReplicaCapable\":{\"type\":\"boolean\"},\"Vpc\":{\"type\":\"boolean\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribeReservedDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S3m\",\"locationName\":\"ReservedDBInstance\"}}}}},\"DescribeReservedDBInstancesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstancesOfferings\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedDBInstancesOffering\",\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"RecurringCharges\":{\"shape\":\"S3o\"}},\"wrapper\":true}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S9\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"DBSecurityGroups\":{\"shape\":\"Sp\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sq\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"MasterUserPassword\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"NewDBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"ModifyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"Parameters\"],\"members\":{\"DBParameterGroupName\":{},\"Parameters\":{\"shape\":\"S2f\"}}},\"output\":{\"shape\":\"S3z\",\"resultWrapper\":\"ModifyDBParameterGroupResult\"}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1i\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S11\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"ModifyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{},\"OptionsToInclude\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionConfiguration\",\"type\":\"structure\",\"required\":[\"OptionName\"],\"members\":{\"OptionName\":{},\"Port\":{\"type\":\"integer\"},\"DBSecurityGroupMemberships\":{\"shape\":\"Sp\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"Sq\"}}}},\"OptionsToRemove\":{\"type\":\"list\",\"member\":{}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1o\"}}}},\"PromoteReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"PurchaseReservedDBInstancesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedDBInstancesOfferingId\"],\"members\":{\"ReservedDBInstancesOfferingId\":{},\"ReservedDBInstanceId\":{},\"DBInstanceCount\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedDBInstancesOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedDBInstance\":{\"shape\":\"S3m\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S2f\"}}},\"output\":{\"shape\":\"S3z\",\"resultWrapper\":\"ResetDBParameterGroupResult\"}},\"RestoreDBInstanceFromDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBSnapshotIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceFromDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RestoreDBInstanceToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBInstanceIdentifier\",\"TargetDBInstanceIdentifier\"],\"members\":{\"SourceDBInstanceIdentifier\":{},\"TargetDBInstanceIdentifier\":{},\"RestoreTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RevokeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S5\"},\"EventCategoriesList\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S6\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"S9\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"VpcId\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}}},\"IPRanges\":{\"type\":\"list\",\"member\":{\"locationName\":\"IPRange\",\"type\":\"structure\",\"members\":{\"Status\":{},\"CIDRIP\":{}}}}},\"wrapper\":true},\"Sk\":{\"type\":\"structure\",\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"Iops\":{\"type\":\"integer\"}},\"wrapper\":true},\"Sp\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroupName\"}},\"Sq\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"St\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBSecurityGroups\":{\"shape\":\"Sv\"},\"VpcSecurityGroups\":{\"shape\":\"Sx\"},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBParameterGroup\",\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S11\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBInstanceIdentifier\"}},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMembership\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}},\"CharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"}},\"wrapper\":true},\"Sv\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroup\",\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Status\":{}}}},\"Sx\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S14\"},\"SubnetStatus\":{}}}}},\"wrapper\":true},\"S14\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ProvisionedIopsCapable\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S1c\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{}},\"wrapper\":true},\"S1i\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S1o\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"OptionGroupDescription\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"Options\":{\"type\":\"list\",\"member\":{\"locationName\":\"Option\",\"type\":\"structure\",\"members\":{\"OptionName\":{},\"OptionDescription\":{},\"Port\":{\"type\":\"integer\"},\"DBSecurityGroupMemberships\":{\"shape\":\"Sv\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"Sx\"}}}},\"AllowsVpcAndNonVpcInstanceMemberships\":{\"type\":\"boolean\"},\"VpcId\":{}},\"wrapper\":true},\"S25\":{\"type\":\"structure\",\"members\":{\"CharacterSetName\":{},\"CharacterSetDescription\":{}}},\"S2f\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{}}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"State\":{},\"RecurringCharges\":{\"shape\":\"S3o\"}},\"wrapper\":true},\"S3o\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"S3z\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{}}}}}");

/***/ }),

/***/ 76660:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDBEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBEngineVersions\"},\"DescribeDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstances\"},\"DescribeDBParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBParameterGroups\"},\"DescribeDBParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBSecurityGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSecurityGroups\"},\"DescribeDBSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSnapshots\"},\"DescribeDBSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSubnetGroups\"},\"DescribeEngineDefaultParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"EngineDefaults.Marker\",\"result_key\":\"EngineDefaults.Parameters\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeOptionGroupOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupOptions\"},\"DescribeOptionGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupsList\"},\"DescribeOrderableDBInstanceOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableDBInstanceOptions\"},\"DescribeReservedDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstances\"},\"DescribeReservedDBInstancesOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstancesOfferings\"},\"ListTagsForResource\":{\"result_key\":\"TagList\"}}}");

/***/ }),

/***/ 15633:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-02-12\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon RDS\",\"serviceFullName\":\"Amazon Relational Database Service\",\"serviceId\":\"RDS\",\"signatureVersion\":\"v4\",\"uid\":\"rds-2013-02-12\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2013-02-12/\"},\"operations\":{\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"AuthorizeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CopyDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBSnapshotIdentifier\",\"TargetDBSnapshotIdentifier\"],\"members\":{\"SourceDBSnapshotIdentifier\":{},\"TargetDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"CopyDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"AllocatedStorage\",\"DBInstanceClass\",\"Engine\",\"MasterUsername\",\"MasterUserPassword\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"Sp\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sq\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CharacterSetName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"CreateDBInstanceReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"SourceDBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SourceDBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"AvailabilityZone\":{},\"Port\":{\"type\":\"integer\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"CreateDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{}}},\"output\":{\"resultWrapper\":\"CreateDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"S1d\"}}}},\"CreateDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\",\"DBSecurityGroupDescription\"],\"members\":{\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{}}},\"output\":{\"resultWrapper\":\"CreateDBSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CreateDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\",\"DBInstanceIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"CreateDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1j\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S11\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"SourceIds\":{\"shape\":\"S5\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"CreateOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\",\"EngineName\",\"MajorEngineVersion\",\"OptionGroupDescription\"],\"members\":{\"OptionGroupName\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"OptionGroupDescription\":{}}},\"output\":{\"resultWrapper\":\"CreateOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1p\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"DeleteDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{}}}},\"DeleteDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{}}}},\"DeleteDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"DeleteOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"DefaultCharacterSet\":{\"shape\":\"S28\"},\"SupportedCharacterSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S28\",\"locationName\":\"CharacterSet\"}}}}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"St\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBLogFiles\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"FilenameContains\":{},\"FileLastWritten\":{\"type\":\"long\"},\"FileSize\":{\"type\":\"long\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBLogFilesResult\",\"type\":\"structure\",\"members\":{\"DescribeDBLogFiles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DescribeDBLogFilesDetails\",\"type\":\"structure\",\"members\":{\"LogFileName\":{},\"LastWritten\":{\"type\":\"long\"},\"Size\":{\"type\":\"long\"}}}},\"Marker\":{}}}},\"DescribeDBParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1d\",\"locationName\":\"DBParameterGroup\"}}}}},\"DescribeDBParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"Source\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S2n\"},\"Marker\":{}}}},\"DescribeDBSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\",\"locationName\":\"DBSecurityGroup\"}}}}},\"DescribeDBSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"SnapshotType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\",\"locationName\":\"DBSnapshot\"}}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S2n\"}},\"wrapper\":true}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S6\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeOptionGroupOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"EngineName\"],\"members\":{\"EngineName\":{},\"MajorEngineVersion\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupOptionsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOption\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"MinimumRequiredMinorEngineVersion\":{},\"PortRequired\":{\"type\":\"boolean\"},\"DefaultPort\":{\"type\":\"integer\"},\"OptionsDependedOn\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionName\"}},\"Persistent\":{\"type\":\"boolean\"},\"OptionGroupOptionSettings\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOptionSetting\",\"type\":\"structure\",\"members\":{\"SettingName\":{},\"SettingDescription\":{},\"DefaultValue\":{},\"ApplyType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"}}}}}}},\"Marker\":{}}}},\"DescribeOptionGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"},\"EngineName\":{},\"MajorEngineVersion\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\",\"locationName\":\"OptionGroup\"}},\"Marker\":{}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"Vpc\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S14\",\"locationName\":\"AvailabilityZone\"}},\"MultiAZCapable\":{\"type\":\"boolean\"},\"ReadReplicaCapable\":{\"type\":\"boolean\"},\"Vpc\":{\"type\":\"boolean\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribeReservedDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S3w\",\"locationName\":\"ReservedDBInstance\"}}}}},\"DescribeReservedDBInstancesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstancesOfferings\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedDBInstancesOffering\",\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"RecurringCharges\":{\"shape\":\"S3y\"}},\"wrapper\":true}}}}},\"DownloadDBLogFilePortion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"LogFileName\"],\"members\":{\"DBInstanceIdentifier\":{},\"LogFileName\":{},\"Marker\":{},\"NumberOfLines\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DownloadDBLogFilePortionResult\",\"type\":\"structure\",\"members\":{\"LogFileData\":{},\"Marker\":{},\"AdditionalDataPending\":{\"type\":\"boolean\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S9\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"DBSecurityGroups\":{\"shape\":\"Sp\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sq\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"MasterUserPassword\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"NewDBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"ModifyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"Parameters\"],\"members\":{\"DBParameterGroupName\":{},\"Parameters\":{\"shape\":\"S2n\"}}},\"output\":{\"shape\":\"S4b\",\"resultWrapper\":\"ModifyDBParameterGroupResult\"}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1j\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S11\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"ModifyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{},\"OptionsToInclude\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionConfiguration\",\"type\":\"structure\",\"required\":[\"OptionName\"],\"members\":{\"OptionName\":{},\"Port\":{\"type\":\"integer\"},\"DBSecurityGroupMemberships\":{\"shape\":\"Sp\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"Sq\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\",\"locationName\":\"OptionSetting\"}}}}},\"OptionsToRemove\":{\"type\":\"list\",\"member\":{}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1p\"}}}},\"PromoteReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"PurchaseReservedDBInstancesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedDBInstancesOfferingId\"],\"members\":{\"ReservedDBInstancesOfferingId\":{},\"ReservedDBInstanceId\":{},\"DBInstanceCount\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedDBInstancesOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedDBInstance\":{\"shape\":\"S3w\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S2n\"}}},\"output\":{\"shape\":\"S4b\",\"resultWrapper\":\"ResetDBParameterGroupResult\"}},\"RestoreDBInstanceFromDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBSnapshotIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceFromDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RestoreDBInstanceToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBInstanceIdentifier\",\"TargetDBInstanceIdentifier\"],\"members\":{\"SourceDBInstanceIdentifier\":{},\"TargetDBInstanceIdentifier\":{},\"RestoreTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RevokeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S5\"},\"EventCategoriesList\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S6\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"S9\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"VpcId\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}}},\"IPRanges\":{\"type\":\"list\",\"member\":{\"locationName\":\"IPRange\",\"type\":\"structure\",\"members\":{\"Status\":{},\"CIDRIP\":{}}}}},\"wrapper\":true},\"Sk\":{\"type\":\"structure\",\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{}},\"wrapper\":true},\"Sp\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroupName\"}},\"Sq\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"St\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBSecurityGroups\":{\"shape\":\"Sv\"},\"VpcSecurityGroups\":{\"shape\":\"Sx\"},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBParameterGroup\",\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S11\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBInstanceIdentifier\"}},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupMembership\",\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}}},\"CharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"}},\"wrapper\":true},\"Sv\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroup\",\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Status\":{}}}},\"Sx\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S14\"},\"SubnetStatus\":{}}}}},\"wrapper\":true},\"S14\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ProvisionedIopsCapable\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S1d\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{}},\"wrapper\":true},\"S1j\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S1p\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"OptionGroupDescription\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"Options\":{\"type\":\"list\",\"member\":{\"locationName\":\"Option\",\"type\":\"structure\",\"members\":{\"OptionName\":{},\"OptionDescription\":{},\"Persistent\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\",\"locationName\":\"OptionSetting\"}},\"DBSecurityGroupMemberships\":{\"shape\":\"Sv\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"Sx\"}}}},\"AllowsVpcAndNonVpcInstanceMemberships\":{\"type\":\"boolean\"},\"VpcId\":{}},\"wrapper\":true},\"S1t\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{},\"DefaultValue\":{},\"Description\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"IsCollection\":{\"type\":\"boolean\"}}},\"S28\":{\"type\":\"structure\",\"members\":{\"CharacterSetName\":{},\"CharacterSetDescription\":{}}},\"S2n\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{}}}},\"S3w\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"State\":{},\"RecurringCharges\":{\"shape\":\"S3y\"}},\"wrapper\":true},\"S3y\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"S4b\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{}}}}}");

/***/ }),

/***/ 37654:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDBEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBEngineVersions\"},\"DescribeDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstances\"},\"DescribeDBLogFiles\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DescribeDBLogFiles\"},\"DescribeDBParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBParameterGroups\"},\"DescribeDBParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBSecurityGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSecurityGroups\"},\"DescribeDBSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSnapshots\"},\"DescribeDBSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSubnetGroups\"},\"DescribeEngineDefaultParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"EngineDefaults.Marker\",\"result_key\":\"EngineDefaults.Parameters\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeOptionGroupOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupOptions\"},\"DescribeOptionGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupsList\"},\"DescribeOrderableDBInstanceOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableDBInstanceOptions\"},\"DescribeReservedDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstances\"},\"DescribeReservedDBInstancesOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstancesOfferings\"},\"DownloadDBLogFilePortion\":{\"input_token\":\"Marker\",\"limit_key\":\"NumberOfLines\",\"more_results\":\"AdditionalDataPending\",\"output_token\":\"Marker\",\"result_key\":\"LogFileData\"},\"ListTagsForResource\":{\"result_key\":\"TagList\"}}}");

/***/ }),

/***/ 53439:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-09-09\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon RDS\",\"serviceFullName\":\"Amazon Relational Database Service\",\"serviceId\":\"RDS\",\"signatureVersion\":\"v4\",\"uid\":\"rds-2013-09-09\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2013-09-09/\"},\"operations\":{\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"AuthorizeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CopyDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBSnapshotIdentifier\",\"TargetDBSnapshotIdentifier\"],\"members\":{\"SourceDBSnapshotIdentifier\":{},\"TargetDBSnapshotIdentifier\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CopyDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"AllocatedStorage\",\"DBInstanceClass\",\"Engine\",\"MasterUsername\",\"MasterUserPassword\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"Sp\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sq\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CharacterSetName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"CreateDBInstanceReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"SourceDBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SourceDBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"AvailabilityZone\":{},\"Port\":{\"type\":\"integer\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"},\"DBSubnetGroupName\":{}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"CreateDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"S1f\"}}}},\"CreateDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\",\"DBSecurityGroupDescription\"],\"members\":{\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CreateDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\",\"DBInstanceIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1l\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S11\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"SourceIds\":{\"shape\":\"S5\"},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"CreateOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\",\"EngineName\",\"MajorEngineVersion\",\"OptionGroupDescription\"],\"members\":{\"OptionGroupName\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"OptionGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1r\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"DeleteDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{}}}},\"DeleteDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{}}}},\"DeleteDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sk\"}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"DeleteOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"DefaultCharacterSet\":{\"shape\":\"S2d\"},\"SupportedCharacterSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\",\"locationName\":\"CharacterSet\"}}}}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"St\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBLogFiles\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"FilenameContains\":{},\"FileLastWritten\":{\"type\":\"long\"},\"FileSize\":{\"type\":\"long\"},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBLogFilesResult\",\"type\":\"structure\",\"members\":{\"DescribeDBLogFiles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DescribeDBLogFilesDetails\",\"type\":\"structure\",\"members\":{\"LogFileName\":{},\"LastWritten\":{\"type\":\"long\"},\"Size\":{\"type\":\"long\"}}}},\"Marker\":{}}}},\"DescribeDBParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1f\",\"locationName\":\"DBParameterGroup\"}}}}},\"DescribeDBParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S2s\"},\"Marker\":{}}}},\"DescribeDBSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\",\"locationName\":\"DBSecurityGroup\"}}}}},\"DescribeDBSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"SnapshotType\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\",\"locationName\":\"DBSnapshot\"}}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S11\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S2s\"}},\"wrapper\":true}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Filters\":{\"shape\":\"S27\"}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S6\"},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeOptionGroupOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"EngineName\"],\"members\":{\"EngineName\":{},\"MajorEngineVersion\":{},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupOptionsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOption\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"MinimumRequiredMinorEngineVersion\":{},\"PortRequired\":{\"type\":\"boolean\"},\"DefaultPort\":{\"type\":\"integer\"},\"OptionsDependedOn\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionName\"}},\"Persistent\":{\"type\":\"boolean\"},\"Permanent\":{\"type\":\"boolean\"},\"OptionGroupOptionSettings\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOptionSetting\",\"type\":\"structure\",\"members\":{\"SettingName\":{},\"SettingDescription\":{},\"DefaultValue\":{},\"ApplyType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"}}}}}}},\"Marker\":{}}}},\"DescribeOptionGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Filters\":{\"shape\":\"S27\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"},\"EngineName\":{},\"MajorEngineVersion\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\",\"locationName\":\"OptionGroup\"}},\"Marker\":{}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"Vpc\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S14\",\"locationName\":\"AvailabilityZone\"}},\"MultiAZCapable\":{\"type\":\"boolean\"},\"ReadReplicaCapable\":{\"type\":\"boolean\"},\"Vpc\":{\"type\":\"boolean\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribeReservedDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S41\",\"locationName\":\"ReservedDBInstance\"}}}}},\"DescribeReservedDBInstancesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S27\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstancesOfferings\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedDBInstancesOffering\",\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"RecurringCharges\":{\"shape\":\"S43\"}},\"wrapper\":true}}}}},\"DownloadDBLogFilePortion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"LogFileName\"],\"members\":{\"DBInstanceIdentifier\":{},\"LogFileName\":{},\"Marker\":{},\"NumberOfLines\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DownloadDBLogFilePortionResult\",\"type\":\"structure\",\"members\":{\"LogFileData\":{},\"Marker\":{},\"AdditionalDataPending\":{\"type\":\"boolean\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{},\"Filters\":{\"shape\":\"S27\"}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S9\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"DBSecurityGroups\":{\"shape\":\"Sp\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sq\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"MasterUserPassword\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"NewDBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"ModifyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"Parameters\"],\"members\":{\"DBParameterGroupName\":{},\"Parameters\":{\"shape\":\"S2s\"}}},\"output\":{\"shape\":\"S4g\",\"resultWrapper\":\"ModifyDBParameterGroupResult\"}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1l\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S11\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"ModifyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{},\"OptionsToInclude\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionConfiguration\",\"type\":\"structure\",\"required\":[\"OptionName\"],\"members\":{\"OptionName\":{},\"Port\":{\"type\":\"integer\"},\"DBSecurityGroupMemberships\":{\"shape\":\"Sp\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"Sq\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1v\",\"locationName\":\"OptionSetting\"}}}}},\"OptionsToRemove\":{\"type\":\"list\",\"member\":{}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1r\"}}}},\"PromoteReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"PurchaseReservedDBInstancesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedDBInstancesOfferingId\"],\"members\":{\"ReservedDBInstancesOfferingId\":{},\"ReservedDBInstanceId\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedDBInstancesOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedDBInstance\":{\"shape\":\"S41\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S2s\"}}},\"output\":{\"shape\":\"S4g\",\"resultWrapper\":\"ResetDBParameterGroupResult\"}},\"RestoreDBInstanceFromDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBSnapshotIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceFromDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RestoreDBInstanceToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBInstanceIdentifier\",\"TargetDBInstanceIdentifier\"],\"members\":{\"SourceDBInstanceIdentifier\":{},\"TargetDBInstanceIdentifier\":{},\"RestoreTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"St\"}}}},\"RevokeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S5\"},\"EventCategoriesList\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S6\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"S9\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"VpcId\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}}},\"IPRanges\":{\"type\":\"list\",\"member\":{\"locationName\":\"IPRange\",\"type\":\"structure\",\"members\":{\"Status\":{},\"CIDRIP\":{}}}}},\"wrapper\":true},\"Sk\":{\"type\":\"structure\",\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PercentProgress\":{\"type\":\"integer\"},\"SourceRegion\":{}},\"wrapper\":true},\"Sp\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroupName\"}},\"Sq\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"St\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBSecurityGroups\":{\"shape\":\"Sv\"},\"VpcSecurityGroups\":{\"shape\":\"Sx\"},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBParameterGroup\",\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S11\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBInstanceIdentifier\"}},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupMembership\",\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}}},\"CharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"StatusInfos\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceStatusInfo\",\"type\":\"structure\",\"members\":{\"StatusType\":{},\"Normal\":{\"type\":\"boolean\"},\"Status\":{},\"Message\":{}}}}},\"wrapper\":true},\"Sv\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroup\",\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Status\":{}}}},\"Sx\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S11\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S14\"},\"SubnetStatus\":{}}}}},\"wrapper\":true},\"S14\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ProvisionedIopsCapable\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S1f\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{}},\"wrapper\":true},\"S1l\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S1r\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"OptionGroupDescription\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"Options\":{\"type\":\"list\",\"member\":{\"locationName\":\"Option\",\"type\":\"structure\",\"members\":{\"OptionName\":{},\"OptionDescription\":{},\"Persistent\":{\"type\":\"boolean\"},\"Permanent\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1v\",\"locationName\":\"OptionSetting\"}},\"DBSecurityGroupMemberships\":{\"shape\":\"Sv\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"Sx\"}}}},\"AllowsVpcAndNonVpcInstanceMemberships\":{\"type\":\"boolean\"},\"VpcId\":{}},\"wrapper\":true},\"S1v\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{},\"DefaultValue\":{},\"Description\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"IsCollection\":{\"type\":\"boolean\"}}},\"S27\":{\"type\":\"list\",\"member\":{\"locationName\":\"Filter\",\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"locationName\":\"Value\"}}}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"CharacterSetName\":{},\"CharacterSetDescription\":{}}},\"S2s\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{}}}},\"S41\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"State\":{},\"RecurringCharges\":{\"shape\":\"S43\"}},\"wrapper\":true},\"S43\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"S4g\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{}}}}}");

/***/ }),

/***/ 17223:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDBEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBEngineVersions\"},\"DescribeDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstances\"},\"DescribeDBLogFiles\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DescribeDBLogFiles\"},\"DescribeDBParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBParameterGroups\"},\"DescribeDBParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBSecurityGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSecurityGroups\"},\"DescribeDBSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSnapshots\"},\"DescribeDBSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSubnetGroups\"},\"DescribeEngineDefaultParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"EngineDefaults.Marker\",\"result_key\":\"EngineDefaults.Parameters\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeOptionGroupOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupOptions\"},\"DescribeOptionGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupsList\"},\"DescribeOrderableDBInstanceOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableDBInstanceOptions\"},\"DescribeReservedDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstances\"},\"DescribeReservedDBInstancesOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstancesOfferings\"},\"DownloadDBLogFilePortion\":{\"input_token\":\"Marker\",\"limit_key\":\"NumberOfLines\",\"more_results\":\"AdditionalDataPending\",\"output_token\":\"Marker\",\"result_key\":\"LogFileData\"},\"ListTagsForResource\":{\"result_key\":\"TagList\"}}}");

/***/ }),

/***/ 60967:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DBInstanceAvailable\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]},\"DBInstanceDeleted\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"deleted\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"resetting-master-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]}}}");

/***/ }),

/***/ 72333:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-09-01\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon RDS\",\"serviceFullName\":\"Amazon Relational Database Service\",\"serviceId\":\"RDS\",\"signatureVersion\":\"v4\",\"uid\":\"rds-2014-09-01\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2014-09-01/\"},\"operations\":{\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"AuthorizeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CopyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBParameterGroupIdentifier\",\"TargetDBParameterGroupIdentifier\",\"TargetDBParameterGroupDescription\"],\"members\":{\"SourceDBParameterGroupIdentifier\":{},\"TargetDBParameterGroupIdentifier\":{},\"TargetDBParameterGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CopyDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"Sk\"}}}},\"CopyDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBSnapshotIdentifier\",\"TargetDBSnapshotIdentifier\"],\"members\":{\"SourceDBSnapshotIdentifier\":{},\"TargetDBSnapshotIdentifier\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CopyDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sn\"}}}},\"CopyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceOptionGroupIdentifier\",\"TargetOptionGroupIdentifier\",\"TargetOptionGroupDescription\"],\"members\":{\"SourceOptionGroupIdentifier\":{},\"TargetOptionGroupIdentifier\":{},\"TargetOptionGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CopyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"St\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"AllocatedStorage\",\"DBInstanceClass\",\"Engine\",\"MasterUsername\",\"MasterUserPassword\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"S13\"},\"VpcSecurityGroupIds\":{\"shape\":\"S14\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CharacterSetName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"CreateDBInstanceReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"SourceDBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SourceDBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"AvailabilityZone\":{},\"Port\":{\"type\":\"integer\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"},\"DBSubnetGroupName\":{},\"StorageType\":{}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"CreateDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"Sk\"}}}},\"CreateDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\",\"DBSecurityGroupDescription\"],\"members\":{\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CreateDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\",\"DBInstanceIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sn\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1u\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S1b\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"SourceIds\":{\"shape\":\"S5\"},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"CreateOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\",\"EngineName\",\"MajorEngineVersion\",\"OptionGroupDescription\"],\"members\":{\"OptionGroupName\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"OptionGroupDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"CreateOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"St\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"DeleteDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{}}}},\"DeleteDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{}}}},\"DeleteDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"Sn\"}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"DeleteOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"DefaultCharacterSet\":{\"shape\":\"S2h\"},\"SupportedCharacterSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S2h\",\"locationName\":\"CharacterSet\"}}}}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S17\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBLogFiles\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"FilenameContains\":{},\"FileLastWritten\":{\"type\":\"long\"},\"FileSize\":{\"type\":\"long\"},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBLogFilesResult\",\"type\":\"structure\",\"members\":{\"DescribeDBLogFiles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DescribeDBLogFilesDetails\",\"type\":\"structure\",\"members\":{\"LogFileName\":{},\"LastWritten\":{\"type\":\"long\"},\"Size\":{\"type\":\"long\"}}}},\"Marker\":{}}}},\"DescribeDBParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\",\"locationName\":\"DBParameterGroup\"}}}}},\"DescribeDBParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S2w\"},\"Marker\":{}}}},\"DescribeDBSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\",\"locationName\":\"DBSecurityGroup\"}}}}},\"DescribeDBSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"SnapshotType\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\",\"locationName\":\"DBSnapshot\"}}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S2w\"}},\"wrapper\":true}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Filters\":{\"shape\":\"S2b\"}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S6\"},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Date\":{\"type\":\"timestamp\"}}}}}}},\"DescribeOptionGroupOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"EngineName\"],\"members\":{\"EngineName\":{},\"MajorEngineVersion\":{},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupOptionsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOption\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"MinimumRequiredMinorEngineVersion\":{},\"PortRequired\":{\"type\":\"boolean\"},\"DefaultPort\":{\"type\":\"integer\"},\"OptionsDependedOn\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionName\"}},\"Persistent\":{\"type\":\"boolean\"},\"Permanent\":{\"type\":\"boolean\"},\"OptionGroupOptionSettings\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOptionSetting\",\"type\":\"structure\",\"members\":{\"SettingName\":{},\"SettingDescription\":{},\"DefaultValue\":{},\"ApplyType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"}}}}}}},\"Marker\":{}}}},\"DescribeOptionGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Filters\":{\"shape\":\"S2b\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"},\"EngineName\":{},\"MajorEngineVersion\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupsList\":{\"type\":\"list\",\"member\":{\"shape\":\"St\",\"locationName\":\"OptionGroup\"}},\"Marker\":{}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"Vpc\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\",\"locationName\":\"AvailabilityZone\"}},\"MultiAZCapable\":{\"type\":\"boolean\"},\"ReadReplicaCapable\":{\"type\":\"boolean\"},\"Vpc\":{\"type\":\"boolean\"},\"StorageType\":{},\"SupportsIops\":{\"type\":\"boolean\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribeReservedDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S45\",\"locationName\":\"ReservedDBInstance\"}}}}},\"DescribeReservedDBInstancesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S2b\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstancesOfferings\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedDBInstancesOffering\",\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"RecurringCharges\":{\"shape\":\"S47\"}},\"wrapper\":true}}}}},\"DownloadDBLogFilePortion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"LogFileName\"],\"members\":{\"DBInstanceIdentifier\":{},\"LogFileName\":{},\"Marker\":{},\"NumberOfLines\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DownloadDBLogFilePortionResult\",\"type\":\"structure\",\"members\":{\"LogFileData\":{},\"Marker\":{},\"AdditionalDataPending\":{\"type\":\"boolean\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{},\"Filters\":{\"shape\":\"S2b\"}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S9\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"DBSecurityGroups\":{\"shape\":\"S13\"},\"VpcSecurityGroupIds\":{\"shape\":\"S14\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"MasterUserPassword\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"NewDBInstanceIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"ModifyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"Parameters\"],\"members\":{\"DBParameterGroupName\":{},\"Parameters\":{\"shape\":\"S2w\"}}},\"output\":{\"shape\":\"S4k\",\"resultWrapper\":\"ModifyDBParameterGroupResult\"}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S1u\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S1b\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"ModifyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{},\"OptionsToInclude\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionConfiguration\",\"type\":\"structure\",\"required\":[\"OptionName\"],\"members\":{\"OptionName\":{},\"Port\":{\"type\":\"integer\"},\"DBSecurityGroupMemberships\":{\"shape\":\"S13\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"S14\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\",\"locationName\":\"OptionSetting\"}}}}},\"OptionsToRemove\":{\"type\":\"list\",\"member\":{}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"St\"}}}},\"PromoteReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"PurchaseReservedDBInstancesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedDBInstancesOfferingId\"],\"members\":{\"ReservedDBInstancesOfferingId\":{},\"ReservedDBInstanceId\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedDBInstancesOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedDBInstance\":{\"shape\":\"S45\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S4\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S2w\"}}},\"output\":{\"shape\":\"S4k\",\"resultWrapper\":\"ResetDBParameterGroupResult\"}},\"RestoreDBInstanceFromDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBSnapshotIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"Tags\":{\"shape\":\"S9\"},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceFromDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"RestoreDBInstanceToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBInstanceIdentifier\",\"TargetDBInstanceIdentifier\"],\"members\":{\"SourceDBInstanceIdentifier\":{},\"TargetDBInstanceIdentifier\":{},\"RestoreTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"Tags\":{\"shape\":\"S9\"},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S17\"}}}},\"RevokeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sd\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S5\"},\"EventCategoriesList\":{\"shape\":\"S6\"},\"Enabled\":{\"type\":\"boolean\"}},\"wrapper\":true},\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S6\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"S9\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"VpcId\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}}},\"IPRanges\":{\"type\":\"list\",\"member\":{\"locationName\":\"IPRange\",\"type\":\"structure\",\"members\":{\"Status\":{},\"CIDRIP\":{}}}}},\"wrapper\":true},\"Sk\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{}},\"wrapper\":true},\"Sn\":{\"type\":\"structure\",\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PercentProgress\":{\"type\":\"integer\"},\"SourceRegion\":{},\"StorageType\":{},\"TdeCredentialArn\":{}},\"wrapper\":true},\"St\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"OptionGroupDescription\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"Options\":{\"type\":\"list\",\"member\":{\"locationName\":\"Option\",\"type\":\"structure\",\"members\":{\"OptionName\":{},\"OptionDescription\":{},\"Persistent\":{\"type\":\"boolean\"},\"Permanent\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\",\"locationName\":\"OptionSetting\"}},\"DBSecurityGroupMemberships\":{\"shape\":\"Sy\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"S10\"}}}},\"AllowsVpcAndNonVpcInstanceMemberships\":{\"type\":\"boolean\"},\"VpcId\":{}},\"wrapper\":true},\"Sx\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{},\"DefaultValue\":{},\"Description\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"IsCollection\":{\"type\":\"boolean\"}}},\"Sy\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroup\",\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Status\":{}}}},\"S10\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroupName\"}},\"S14\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"S17\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBSecurityGroups\":{\"shape\":\"Sy\"},\"VpcSecurityGroups\":{\"shape\":\"S10\"},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBParameterGroup\",\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S1b\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{},\"StorageType\":{}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBInstanceIdentifier\"}},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupMembership\",\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}}},\"CharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"StatusInfos\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceStatusInfo\",\"type\":\"structure\",\"members\":{\"StatusType\":{},\"Normal\":{\"type\":\"boolean\"},\"Status\":{},\"Message\":{}}}},\"StorageType\":{},\"TdeCredentialArn\":{}},\"wrapper\":true},\"S1b\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S1e\"},\"SubnetStatus\":{}}}}},\"wrapper\":true},\"S1e\":{\"type\":\"structure\",\"members\":{\"Name\":{}},\"wrapper\":true},\"S1u\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S2b\":{\"type\":\"list\",\"member\":{\"locationName\":\"Filter\",\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"locationName\":\"Value\"}}}}},\"S2h\":{\"type\":\"structure\",\"members\":{\"CharacterSetName\":{},\"CharacterSetDescription\":{}}},\"S2w\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{}}}},\"S45\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"State\":{},\"RecurringCharges\":{\"shape\":\"S47\"}},\"wrapper\":true},\"S47\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"S4k\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{}}}}}");

/***/ }),

/***/ 86022:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 6210:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-10-31\",\"endpointPrefix\":\"rds\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon RDS\",\"serviceFullName\":\"Amazon Relational Database Service\",\"serviceId\":\"RDS\",\"signatureVersion\":\"v4\",\"uid\":\"rds-2014-10-31\",\"xmlNamespace\":\"http://rds.amazonaws.com/doc/2014-10-31/\"},\"operations\":{\"AddRoleToDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"RoleArn\"],\"members\":{\"DBClusterIdentifier\":{},\"RoleArn\":{},\"FeatureName\":{}}}},\"AddRoleToDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"RoleArn\",\"FeatureName\"],\"members\":{\"DBInstanceIdentifier\":{},\"RoleArn\":{},\"FeatureName\":{}}}},\"AddSourceIdentifierToSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"AddSourceIdentifierToSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S6\"}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"Sb\"}}}},\"ApplyPendingMaintenanceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceIdentifier\",\"ApplyAction\",\"OptInType\"],\"members\":{\"ResourceIdentifier\":{},\"ApplyAction\":{},\"OptInType\":{}}},\"output\":{\"resultWrapper\":\"ApplyPendingMaintenanceActionResult\",\"type\":\"structure\",\"members\":{\"ResourcePendingMaintenanceActions\":{\"shape\":\"Sf\"}}}},\"AuthorizeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sl\"}}}},\"BacktrackDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"BacktrackTo\"],\"members\":{\"DBClusterIdentifier\":{},\"BacktrackTo\":{\"type\":\"timestamp\"},\"Force\":{\"type\":\"boolean\"},\"UseEarliestTimeOnPointInTimeUnavailable\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"Ss\",\"resultWrapper\":\"BacktrackDBClusterResult\"}},\"CancelExportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportTaskIdentifier\"],\"members\":{\"ExportTaskIdentifier\":{}}},\"output\":{\"shape\":\"Su\",\"resultWrapper\":\"CancelExportTaskResult\"}},\"CopyDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBClusterParameterGroupIdentifier\",\"TargetDBClusterParameterGroupIdentifier\",\"TargetDBClusterParameterGroupDescription\"],\"members\":{\"SourceDBClusterParameterGroupIdentifier\":{},\"TargetDBClusterParameterGroupIdentifier\":{},\"TargetDBClusterParameterGroupDescription\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CopyDBClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBClusterParameterGroup\":{\"shape\":\"Sz\"}}}},\"CopyDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBClusterSnapshotIdentifier\",\"TargetDBClusterSnapshotIdentifier\"],\"members\":{\"SourceDBClusterSnapshotIdentifier\":{},\"TargetDBClusterSnapshotIdentifier\":{},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"CopyTags\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"},\"SourceRegion\":{}}},\"output\":{\"resultWrapper\":\"CopyDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"S12\"}}}},\"CopyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBParameterGroupIdentifier\",\"TargetDBParameterGroupIdentifier\",\"TargetDBParameterGroupDescription\"],\"members\":{\"SourceDBParameterGroupIdentifier\":{},\"TargetDBParameterGroupIdentifier\":{},\"TargetDBParameterGroupDescription\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CopyDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"S16\"}}}},\"CopyDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBSnapshotIdentifier\",\"TargetDBSnapshotIdentifier\"],\"members\":{\"SourceDBSnapshotIdentifier\":{},\"TargetDBSnapshotIdentifier\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"Sb\"},\"CopyTags\":{\"type\":\"boolean\"},\"PreSignedUrl\":{},\"OptionGroupName\":{},\"TargetCustomAvailabilityZone\":{},\"SourceRegion\":{}}},\"output\":{\"resultWrapper\":\"CopyDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"S19\"}}}},\"CopyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceOptionGroupIdentifier\",\"TargetOptionGroupIdentifier\",\"TargetOptionGroupDescription\"],\"members\":{\"SourceOptionGroupIdentifier\":{},\"TargetOptionGroupIdentifier\":{},\"TargetOptionGroupDescription\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CopyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1f\"}}}},\"CreateCustomAvailabilityZone\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomAvailabilityZoneName\"],\"members\":{\"CustomAvailabilityZoneName\":{},\"ExistingVpnId\":{},\"NewVpnTunnelName\":{},\"VpnTunnelOriginatorIP\":{}}},\"output\":{\"resultWrapper\":\"CreateCustomAvailabilityZoneResult\",\"type\":\"structure\",\"members\":{\"CustomAvailabilityZone\":{\"shape\":\"S1q\"}}}},\"CreateDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"Engine\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"S13\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"CharacterSetName\":{},\"DatabaseName\":{},\"DBClusterIdentifier\":{},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"DBSubnetGroupName\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"MasterUserPassword\":{},\"OptionGroupName\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"ReplicationSourceIdentifier\":{},\"Tags\":{\"shape\":\"Sb\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"BacktrackWindow\":{\"type\":\"long\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"EngineMode\":{},\"ScalingConfiguration\":{\"shape\":\"S1x\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"GlobalClusterIdentifier\":{},\"EnableHttpEndpoint\":{\"type\":\"boolean\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"Domain\":{},\"DomainIAMRoleName\":{},\"EnableGlobalWriteForwarding\":{\"type\":\"boolean\"},\"SourceRegion\":{}}},\"output\":{\"resultWrapper\":\"CreateDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"CreateDBClusterEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"DBClusterEndpointIdentifier\",\"EndpointType\"],\"members\":{\"DBClusterIdentifier\":{},\"DBClusterEndpointIdentifier\":{},\"EndpointType\":{},\"StaticMembers\":{\"shape\":\"Sv\"},\"ExcludedMembers\":{\"shape\":\"Sv\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"shape\":\"S2g\",\"resultWrapper\":\"CreateDBClusterEndpointResult\"}},\"CreateDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBClusterParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBClusterParameterGroup\":{\"shape\":\"Sz\"}}}},\"CreateDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\",\"DBClusterIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{},\"DBClusterIdentifier\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"S12\"}}}},\"CreateDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBInstanceClass\",\"Engine\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"S2m\"},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CharacterSetName\":{},\"NcharCharacterSetName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"},\"DBClusterIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"Domain\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"MonitoringRoleArn\":{},\"DomainIAMRoleName\":{},\"PromotionTier\":{\"type\":\"integer\"},\"Timezone\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnablePerformanceInsights\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"PerformanceInsightsRetentionPeriod\":{\"type\":\"integer\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"MaxAllocatedStorage\":{\"type\":\"integer\"},\"EnableCustomerOwnedIp\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"CreateDBInstanceReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"SourceDBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SourceDBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"AvailabilityZone\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"DBParameterGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"},\"DBSubnetGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"StorageType\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"MonitoringRoleArn\":{},\"KmsKeyId\":{},\"PreSignedUrl\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnablePerformanceInsights\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"PerformanceInsightsRetentionPeriod\":{\"type\":\"integer\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"UseDefaultProcessorFeatures\":{\"type\":\"boolean\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"Domain\":{},\"DomainIAMRoleName\":{},\"ReplicaMode\":{},\"MaxAllocatedStorage\":{\"type\":\"integer\"},\"SourceRegion\":{}}},\"output\":{\"resultWrapper\":\"CreateDBInstanceReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"CreateDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"DBParameterGroupFamily\",\"Description\"],\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBParameterGroupResult\",\"type\":\"structure\",\"members\":{\"DBParameterGroup\":{\"shape\":\"S16\"}}}},\"CreateDBProxy\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\",\"EngineFamily\",\"Auth\",\"RoleArn\",\"VpcSubnetIds\"],\"members\":{\"DBProxyName\":{},\"EngineFamily\":{},\"Auth\":{\"shape\":\"S3f\"},\"RoleArn\":{},\"VpcSubnetIds\":{\"shape\":\"Sv\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sv\"},\"RequireTLS\":{\"type\":\"boolean\"},\"IdleClientTimeout\":{\"type\":\"integer\"},\"DebugLogging\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBProxyResult\",\"type\":\"structure\",\"members\":{\"DBProxy\":{\"shape\":\"S3k\"}}}},\"CreateDBProxyEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\",\"DBProxyEndpointName\",\"VpcSubnetIds\"],\"members\":{\"DBProxyName\":{},\"DBProxyEndpointName\":{},\"VpcSubnetIds\":{\"shape\":\"Sv\"},\"VpcSecurityGroupIds\":{\"shape\":\"Sv\"},\"TargetRole\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBProxyEndpointResult\",\"type\":\"structure\",\"members\":{\"DBProxyEndpoint\":{\"shape\":\"S3t\"}}}},\"CreateDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\",\"DBSecurityGroupDescription\"],\"members\":{\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sl\"}}}},\"CreateDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\",\"DBInstanceIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"S19\"}}}},\"CreateDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"DBSubnetGroupDescription\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S40\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S2s\"}}}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S8\"},\"SourceIds\":{\"shape\":\"S7\"},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S6\"}}}},\"CreateGlobalCluster\":{\"input\":{\"type\":\"structure\",\"members\":{\"GlobalClusterIdentifier\":{},\"SourceDBClusterIdentifier\":{},\"Engine\":{},\"EngineVersion\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"DatabaseName\":{},\"StorageEncrypted\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"CreateGlobalClusterResult\",\"type\":\"structure\",\"members\":{\"GlobalCluster\":{\"shape\":\"S46\"}}}},\"CreateOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\",\"EngineName\",\"MajorEngineVersion\",\"OptionGroupDescription\"],\"members\":{\"OptionGroupName\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"OptionGroupDescription\":{},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"CreateOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1f\"}}}},\"DeleteCustomAvailabilityZone\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomAvailabilityZoneId\"],\"members\":{\"CustomAvailabilityZoneId\":{}}},\"output\":{\"resultWrapper\":\"DeleteCustomAvailabilityZoneResult\",\"type\":\"structure\",\"members\":{\"CustomAvailabilityZone\":{\"shape\":\"S1q\"}}}},\"DeleteDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"DeleteDBClusterEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterEndpointIdentifier\"],\"members\":{\"DBClusterEndpointIdentifier\":{}}},\"output\":{\"shape\":\"S2g\",\"resultWrapper\":\"DeleteDBClusterEndpointResult\"}},\"DeleteDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{}}}},\"DeleteDBClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshot\":{\"shape\":\"S12\"}}}},\"DeleteDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"SkipFinalSnapshot\":{\"type\":\"boolean\"},\"FinalDBSnapshotIdentifier\":{},\"DeleteAutomatedBackups\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"DeleteDBInstanceAutomatedBackup\":{\"input\":{\"type\":\"structure\",\"members\":{\"DbiResourceId\":{},\"DBInstanceAutomatedBackupsArn\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBInstanceAutomatedBackupResult\",\"type\":\"structure\",\"members\":{\"DBInstanceAutomatedBackup\":{\"shape\":\"S4q\"}}}},\"DeleteDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{}}}},\"DeleteDBProxy\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\"],\"members\":{\"DBProxyName\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBProxyResult\",\"type\":\"structure\",\"members\":{\"DBProxy\":{\"shape\":\"S3k\"}}}},\"DeleteDBProxyEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyEndpointName\"],\"members\":{\"DBProxyEndpointName\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBProxyEndpointResult\",\"type\":\"structure\",\"members\":{\"DBProxyEndpoint\":{\"shape\":\"S3t\"}}}},\"DeleteDBSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{}}}},\"DeleteDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"S19\"}}}},\"DeleteDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\"],\"members\":{\"DBSubnetGroupName\":{}}}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}},\"output\":{\"resultWrapper\":\"DeleteEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S6\"}}}},\"DeleteGlobalCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalClusterIdentifier\"],\"members\":{\"GlobalClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DeleteGlobalClusterResult\",\"type\":\"structure\",\"members\":{\"GlobalCluster\":{\"shape\":\"S46\"}}}},\"DeleteInstallationMedia\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstallationMediaId\"],\"members\":{\"InstallationMediaId\":{}}},\"output\":{\"shape\":\"S56\",\"resultWrapper\":\"DeleteInstallationMediaResult\"}},\"DeleteOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{}}}},\"DeregisterDBProxyTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\"],\"members\":{\"DBProxyName\":{},\"TargetGroupName\":{},\"DBInstanceIdentifiers\":{\"shape\":\"Sv\"},\"DBClusterIdentifiers\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"DeregisterDBProxyTargetsResult\",\"type\":\"structure\",\"members\":{}}},\"DescribeAccountAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"resultWrapper\":\"DescribeAccountAttributesResult\",\"type\":\"structure\",\"members\":{\"AccountQuotas\":{\"type\":\"list\",\"member\":{\"locationName\":\"AccountQuota\",\"type\":\"structure\",\"members\":{\"AccountQuotaName\":{},\"Used\":{\"type\":\"long\"},\"Max\":{\"type\":\"long\"}},\"wrapper\":true}}}}},\"DescribeCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCertificatesResult\",\"type\":\"structure\",\"members\":{\"Certificates\":{\"type\":\"list\",\"member\":{\"shape\":\"S5m\",\"locationName\":\"Certificate\"}},\"Marker\":{}}}},\"DescribeCustomAvailabilityZones\":{\"input\":{\"type\":\"structure\",\"members\":{\"CustomAvailabilityZoneId\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeCustomAvailabilityZonesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"CustomAvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S1q\",\"locationName\":\"CustomAvailabilityZone\"}}}}},\"DescribeDBClusterBacktracks\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"BacktrackIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterBacktracksResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterBacktracks\":{\"type\":\"list\",\"member\":{\"shape\":\"Ss\",\"locationName\":\"DBClusterBacktrack\"}}}}},\"DescribeDBClusterEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"DBClusterEndpointIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterEndpointsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterEndpoints\":{\"type\":\"list\",\"member\":{\"shape\":\"S2g\",\"locationName\":\"DBClusterEndpointList\"}}}}},\"DescribeDBClusterParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\",\"locationName\":\"DBClusterParameterGroup\"}}}}},\"DescribeDBClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S61\"},\"Marker\":{}}}},\"DescribeDBClusterSnapshotAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\"],\"members\":{\"DBClusterSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterSnapshotAttributesResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshotAttributesResult\":{\"shape\":\"S67\"}}}},\"DescribeDBClusterSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"DBClusterSnapshotIdentifier\":{},\"SnapshotType\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"IncludeShared\":{\"type\":\"boolean\"},\"IncludePublic\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBClusterSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusterSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\",\"locationName\":\"DBClusterSnapshot\"}}}}},\"DescribeDBClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"IncludeShared\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBClustersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBClusters\":{\"type\":\"list\",\"member\":{\"shape\":\"S1z\",\"locationName\":\"DBCluster\"}}}}},\"DescribeDBEngineVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DefaultOnly\":{\"type\":\"boolean\"},\"ListSupportedCharacterSets\":{\"type\":\"boolean\"},\"ListSupportedTimezones\":{\"type\":\"boolean\"},\"IncludeAll\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"DescribeDBEngineVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBEngineVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBEngineVersion\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBParameterGroupFamily\":{},\"DBEngineDescription\":{},\"DBEngineVersionDescription\":{},\"DefaultCharacterSet\":{\"shape\":\"S6l\"},\"SupportedCharacterSets\":{\"shape\":\"S6m\"},\"SupportedNcharCharacterSets\":{\"shape\":\"S6m\"},\"ValidUpgradeTarget\":{\"type\":\"list\",\"member\":{\"locationName\":\"UpgradeTarget\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"Description\":{},\"AutoUpgrade\":{\"type\":\"boolean\"},\"IsMajorVersionUpgrade\":{\"type\":\"boolean\"},\"SupportedEngineModes\":{\"shape\":\"S64\"},\"SupportsParallelQuery\":{\"type\":\"boolean\"},\"SupportsGlobalDatabases\":{\"type\":\"boolean\"}}}},\"SupportedTimezones\":{\"type\":\"list\",\"member\":{\"locationName\":\"Timezone\",\"type\":\"structure\",\"members\":{\"TimezoneName\":{}}}},\"ExportableLogTypes\":{\"shape\":\"S1w\"},\"SupportsLogExportsToCloudwatchLogs\":{\"type\":\"boolean\"},\"SupportsReadReplica\":{\"type\":\"boolean\"},\"SupportedEngineModes\":{\"shape\":\"S64\"},\"SupportedFeatureNames\":{\"type\":\"list\",\"member\":{}},\"Status\":{},\"SupportsParallelQuery\":{\"type\":\"boolean\"},\"SupportsGlobalDatabases\":{\"type\":\"boolean\"}}}}}}},\"DescribeDBInstanceAutomatedBackups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DbiResourceId\":{},\"DBInstanceIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"DBInstanceAutomatedBackupsArn\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstanceAutomatedBackupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstanceAutomatedBackups\":{\"type\":\"list\",\"member\":{\"shape\":\"S4q\",\"locationName\":\"DBInstanceAutomatedBackup\"}}}}},\"DescribeDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S2o\",\"locationName\":\"DBInstance\"}}}}},\"DescribeDBLogFiles\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"FilenameContains\":{},\"FileLastWritten\":{\"type\":\"long\"},\"FileSize\":{\"type\":\"long\"},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBLogFilesResult\",\"type\":\"structure\",\"members\":{\"DescribeDBLogFiles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DescribeDBLogFilesDetails\",\"type\":\"structure\",\"members\":{\"LogFileName\":{},\"LastWritten\":{\"type\":\"long\"},\"Size\":{\"type\":\"long\"}}}},\"Marker\":{}}}},\"DescribeDBParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S16\",\"locationName\":\"DBParameterGroup\"}}}}},\"DescribeDBParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"Source\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S61\"},\"Marker\":{}}}},\"DescribeDBProxies\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBProxyName\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeDBProxiesResult\",\"type\":\"structure\",\"members\":{\"DBProxies\":{\"type\":\"list\",\"member\":{\"shape\":\"S3k\"}},\"Marker\":{}}}},\"DescribeDBProxyEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBProxyName\":{},\"DBProxyEndpointName\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeDBProxyEndpointsResult\",\"type\":\"structure\",\"members\":{\"DBProxyEndpoints\":{\"type\":\"list\",\"member\":{\"shape\":\"S3t\"}},\"Marker\":{}}}},\"DescribeDBProxyTargetGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\"],\"members\":{\"DBProxyName\":{},\"TargetGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeDBProxyTargetGroupsResult\",\"type\":\"structure\",\"members\":{\"TargetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S7h\"}},\"Marker\":{}}}},\"DescribeDBProxyTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\"],\"members\":{\"DBProxyName\":{},\"TargetGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeDBProxyTargetsResult\",\"type\":\"structure\",\"members\":{\"Targets\":{\"shape\":\"S7l\"},\"Marker\":{}}}},\"DescribeDBSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sl\",\"locationName\":\"DBSecurityGroup\"}}}}},\"DescribeDBSnapshotAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSnapshotAttributesResult\",\"type\":\"structure\",\"members\":{\"DBSnapshotAttributesResult\":{\"shape\":\"S7x\"}}}},\"DescribeDBSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"SnapshotType\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"IncludeShared\":{\"type\":\"boolean\"},\"IncludePublic\":{\"type\":\"boolean\"},\"DbiResourceId\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSnapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"S19\",\"locationName\":\"DBSnapshot\"}}}}},\"DescribeDBSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDBSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"DBSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2s\",\"locationName\":\"DBSubnetGroup\"}}}}},\"DescribeEngineDefaultClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultClusterParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"shape\":\"S88\"}}}},\"DescribeEngineDefaultParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupFamily\"],\"members\":{\"DBParameterGroupFamily\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEngineDefaultParametersResult\",\"type\":\"structure\",\"members\":{\"EngineDefaults\":{\"shape\":\"S88\"}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Filters\":{\"shape\":\"S5h\"}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"EventCategories\":{\"shape\":\"S8\"}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S6\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"EventCategories\":{\"shape\":\"S8\"},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S8\"},\"Date\":{\"type\":\"timestamp\"},\"SourceArn\":{}}}}}}},\"DescribeExportTasks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExportTaskIdentifier\":{},\"SourceArn\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeExportTasksResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ExportTasks\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\",\"locationName\":\"ExportTask\"}}}}},\"DescribeGlobalClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"GlobalClusterIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeGlobalClustersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"GlobalClusters\":{\"type\":\"list\",\"member\":{\"shape\":\"S46\",\"locationName\":\"GlobalClusterMember\"}}}}},\"DescribeInstallationMedia\":{\"input\":{\"type\":\"structure\",\"members\":{\"InstallationMediaId\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeInstallationMediaResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"InstallationMedia\":{\"type\":\"list\",\"member\":{\"shape\":\"S56\",\"locationName\":\"InstallationMedia\"}}}}},\"DescribeOptionGroupOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"EngineName\"],\"members\":{\"EngineName\":{},\"MajorEngineVersion\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupOptionsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOption\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"MinimumRequiredMinorEngineVersion\":{},\"PortRequired\":{\"type\":\"boolean\"},\"DefaultPort\":{\"type\":\"integer\"},\"OptionsDependedOn\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionName\"}},\"OptionsConflictsWith\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionConflictName\"}},\"Persistent\":{\"type\":\"boolean\"},\"Permanent\":{\"type\":\"boolean\"},\"RequiresAutoMinorEngineVersionUpgrade\":{\"type\":\"boolean\"},\"VpcOnly\":{\"type\":\"boolean\"},\"SupportsOptionVersionDowngrade\":{\"type\":\"boolean\"},\"OptionGroupOptionSettings\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupOptionSetting\",\"type\":\"structure\",\"members\":{\"SettingName\":{},\"SettingDescription\":{},\"DefaultValue\":{},\"ApplyType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"IsRequired\":{\"type\":\"boolean\"},\"MinimumEngineVersionPerAllowedValue\":{\"type\":\"list\",\"member\":{\"locationName\":\"MinimumEngineVersionPerAllowedValue\",\"type\":\"structure\",\"members\":{\"AllowedValue\":{},\"MinimumEngineVersion\":{}}}}}}},\"OptionGroupOptionVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionVersion\",\"type\":\"structure\",\"members\":{\"Version\":{},\"IsDefault\":{\"type\":\"boolean\"}}}}}}},\"Marker\":{}}}},\"DescribeOptionGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"},\"EngineName\":{},\"MajorEngineVersion\":{}}},\"output\":{\"resultWrapper\":\"DescribeOptionGroupsResult\",\"type\":\"structure\",\"members\":{\"OptionGroupsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1f\",\"locationName\":\"OptionGroup\"}},\"Marker\":{}}}},\"DescribeOrderableDBInstanceOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Engine\"],\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZoneGroup\":{},\"Vpc\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableDBInstanceOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableDBInstanceOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableDBInstanceOption\",\"type\":\"structure\",\"members\":{\"Engine\":{},\"EngineVersion\":{},\"DBInstanceClass\":{},\"LicenseModel\":{},\"AvailabilityZoneGroup\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S2v\",\"locationName\":\"AvailabilityZone\"}},\"MultiAZCapable\":{\"type\":\"boolean\"},\"ReadReplicaCapable\":{\"type\":\"boolean\"},\"Vpc\":{\"type\":\"boolean\"},\"SupportsStorageEncryption\":{\"type\":\"boolean\"},\"StorageType\":{},\"SupportsIops\":{\"type\":\"boolean\"},\"SupportsEnhancedMonitoring\":{\"type\":\"boolean\"},\"SupportsIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"SupportsPerformanceInsights\":{\"type\":\"boolean\"},\"MinStorageSize\":{\"type\":\"integer\"},\"MaxStorageSize\":{\"type\":\"integer\"},\"MinIopsPerDbInstance\":{\"type\":\"integer\"},\"MaxIopsPerDbInstance\":{\"type\":\"integer\"},\"MinIopsPerGib\":{\"type\":\"double\"},\"MaxIopsPerGib\":{\"type\":\"double\"},\"AvailableProcessorFeatures\":{\"shape\":\"S9h\"},\"SupportedEngineModes\":{\"shape\":\"S64\"},\"SupportsStorageAutoscaling\":{\"type\":\"boolean\"},\"SupportsKerberosAuthentication\":{\"type\":\"boolean\"},\"OutpostCapable\":{\"type\":\"boolean\"},\"SupportsGlobalDatabases\":{\"type\":\"boolean\"}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribePendingMaintenanceActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"Filters\":{\"shape\":\"S5h\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribePendingMaintenanceActionsResult\",\"type\":\"structure\",\"members\":{\"PendingMaintenanceActions\":{\"type\":\"list\",\"member\":{\"shape\":\"Sf\",\"locationName\":\"ResourcePendingMaintenanceActions\"}},\"Marker\":{}}}},\"DescribeReservedDBInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"LeaseId\":{},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstances\":{\"type\":\"list\",\"member\":{\"shape\":\"S9p\",\"locationName\":\"ReservedDBInstance\"}}}}},\"DescribeReservedDBInstancesOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"Filters\":{\"shape\":\"S5h\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedDBInstancesOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedDBInstancesOfferings\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedDBInstancesOffering\",\"type\":\"structure\",\"members\":{\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"RecurringCharges\":{\"shape\":\"S9r\"}},\"wrapper\":true}}}}},\"DescribeSourceRegions\":{\"input\":{\"type\":\"structure\",\"members\":{\"RegionName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"Filters\":{\"shape\":\"S5h\"}}},\"output\":{\"resultWrapper\":\"DescribeSourceRegionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"SourceRegions\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceRegion\",\"type\":\"structure\",\"members\":{\"RegionName\":{},\"Endpoint\":{},\"Status\":{},\"SupportsDBInstanceAutomatedBackupsReplication\":{\"type\":\"boolean\"}}}}}}},\"DescribeValidDBInstanceModifications\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DescribeValidDBInstanceModificationsResult\",\"type\":\"structure\",\"members\":{\"ValidDBInstanceModificationsMessage\":{\"type\":\"structure\",\"members\":{\"Storage\":{\"type\":\"list\",\"member\":{\"locationName\":\"ValidStorageOptions\",\"type\":\"structure\",\"members\":{\"StorageType\":{},\"StorageSize\":{\"shape\":\"Sa6\"},\"ProvisionedIops\":{\"shape\":\"Sa6\"},\"IopsToStorageRatio\":{\"type\":\"list\",\"member\":{\"locationName\":\"DoubleRange\",\"type\":\"structure\",\"members\":{\"From\":{\"type\":\"double\"},\"To\":{\"type\":\"double\"}}}},\"SupportsStorageAutoscaling\":{\"type\":\"boolean\"}}}},\"ValidProcessorFeatures\":{\"shape\":\"S9h\"}},\"wrapper\":true}}}},\"DownloadDBLogFilePortion\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"LogFileName\"],\"members\":{\"DBInstanceIdentifier\":{},\"LogFileName\":{},\"Marker\":{},\"NumberOfLines\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DownloadDBLogFilePortionResult\",\"type\":\"structure\",\"members\":{\"LogFileData\":{},\"Marker\":{},\"AdditionalDataPending\":{\"type\":\"boolean\"}}}},\"FailoverDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"TargetDBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"FailoverDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"FailoverGlobalCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"GlobalClusterIdentifier\",\"TargetDbClusterIdentifier\"],\"members\":{\"GlobalClusterIdentifier\":{},\"TargetDbClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"FailoverGlobalClusterResult\",\"type\":\"structure\",\"members\":{\"GlobalCluster\":{\"shape\":\"S46\"}}}},\"ImportInstallationMedia\":{\"input\":{\"type\":\"structure\",\"required\":[\"CustomAvailabilityZoneId\",\"Engine\",\"EngineVersion\",\"EngineInstallationMediaPath\",\"OSInstallationMediaPath\"],\"members\":{\"CustomAvailabilityZoneId\":{},\"Engine\":{},\"EngineVersion\":{},\"EngineInstallationMediaPath\":{},\"OSInstallationMediaPath\":{}}},\"output\":{\"shape\":\"S56\",\"resultWrapper\":\"ImportInstallationMediaResult\"}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\"],\"members\":{\"ResourceName\":{},\"Filters\":{\"shape\":\"S5h\"}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"Sb\"}}}},\"ModifyCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"CertificateIdentifier\":{},\"RemoveCustomerOverride\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyCertificatesResult\",\"type\":\"structure\",\"members\":{\"Certificate\":{\"shape\":\"S5m\"}}}},\"ModifyCurrentDBClusterCapacity\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"Capacity\":{\"type\":\"integer\"},\"SecondsBeforeTimeout\":{\"type\":\"integer\"},\"TimeoutAction\":{}}},\"output\":{\"resultWrapper\":\"ModifyCurrentDBClusterCapacityResult\",\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"PendingCapacity\":{\"type\":\"integer\"},\"CurrentCapacity\":{\"type\":\"integer\"},\"SecondsBeforeTimeout\":{\"type\":\"integer\"},\"TimeoutAction\":{}}}},\"ModifyDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"NewDBClusterIdentifier\":{},\"ApplyImmediately\":{\"type\":\"boolean\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"Port\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"OptionGroupName\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"BacktrackWindow\":{\"type\":\"long\"},\"CloudwatchLogsExportConfiguration\":{\"shape\":\"Saq\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"DBInstanceParameterGroupName\":{},\"Domain\":{},\"DomainIAMRoleName\":{},\"ScalingConfiguration\":{\"shape\":\"S1x\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"EnableHttpEndpoint\":{\"type\":\"boolean\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"EnableGlobalWriteForwarding\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"ModifyDBClusterEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterEndpointIdentifier\"],\"members\":{\"DBClusterEndpointIdentifier\":{},\"EndpointType\":{},\"StaticMembers\":{\"shape\":\"Sv\"},\"ExcludedMembers\":{\"shape\":\"Sv\"}}},\"output\":{\"shape\":\"S2g\",\"resultWrapper\":\"ModifyDBClusterEndpointResult\"}},\"ModifyDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\",\"Parameters\"],\"members\":{\"DBClusterParameterGroupName\":{},\"Parameters\":{\"shape\":\"S61\"}}},\"output\":{\"shape\":\"Sau\",\"resultWrapper\":\"ModifyDBClusterParameterGroupResult\"}},\"ModifyDBClusterSnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterSnapshotIdentifier\",\"AttributeName\"],\"members\":{\"DBClusterSnapshotIdentifier\":{},\"AttributeName\":{},\"ValuesToAdd\":{\"shape\":\"S6a\"},\"ValuesToRemove\":{\"shape\":\"S6a\"}}},\"output\":{\"resultWrapper\":\"ModifyDBClusterSnapshotAttributeResult\",\"type\":\"structure\",\"members\":{\"DBClusterSnapshotAttributesResult\":{\"shape\":\"S67\"}}}},\"ModifyDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"DBSubnetGroupName\":{},\"DBSecurityGroups\":{\"shape\":\"S2m\"},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"ApplyImmediately\":{\"type\":\"boolean\"},\"MasterUserPassword\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"NewDBInstanceIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{},\"CACertificateIdentifier\":{},\"Domain\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"DBPortNumber\":{\"type\":\"integer\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"MonitoringRoleArn\":{},\"DomainIAMRoleName\":{},\"PromotionTier\":{\"type\":\"integer\"},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnablePerformanceInsights\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"PerformanceInsightsRetentionPeriod\":{\"type\":\"integer\"},\"CloudwatchLogsExportConfiguration\":{\"shape\":\"Saq\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"UseDefaultProcessorFeatures\":{\"type\":\"boolean\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"MaxAllocatedStorage\":{\"type\":\"integer\"},\"CertificateRotationRestart\":{\"type\":\"boolean\"},\"ReplicaMode\":{},\"EnableCustomerOwnedIp\":{\"type\":\"boolean\"},\"AwsBackupRecoveryPointArn\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"ModifyDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\",\"Parameters\"],\"members\":{\"DBParameterGroupName\":{},\"Parameters\":{\"shape\":\"S61\"}}},\"output\":{\"shape\":\"Sb1\",\"resultWrapper\":\"ModifyDBParameterGroupResult\"}},\"ModifyDBProxy\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\"],\"members\":{\"DBProxyName\":{},\"NewDBProxyName\":{},\"Auth\":{\"shape\":\"S3f\"},\"RequireTLS\":{\"type\":\"boolean\"},\"IdleClientTimeout\":{\"type\":\"integer\"},\"DebugLogging\":{\"type\":\"boolean\"},\"RoleArn\":{},\"SecurityGroups\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"ModifyDBProxyResult\",\"type\":\"structure\",\"members\":{\"DBProxy\":{\"shape\":\"S3k\"}}}},\"ModifyDBProxyEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyEndpointName\"],\"members\":{\"DBProxyEndpointName\":{},\"NewDBProxyEndpointName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"ModifyDBProxyEndpointResult\",\"type\":\"structure\",\"members\":{\"DBProxyEndpoint\":{\"shape\":\"S3t\"}}}},\"ModifyDBProxyTargetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetGroupName\",\"DBProxyName\"],\"members\":{\"TargetGroupName\":{},\"DBProxyName\":{},\"ConnectionPoolConfig\":{\"type\":\"structure\",\"members\":{\"MaxConnectionsPercent\":{\"type\":\"integer\"},\"MaxIdleConnectionsPercent\":{\"type\":\"integer\"},\"ConnectionBorrowTimeout\":{\"type\":\"integer\"},\"SessionPinningFilters\":{\"shape\":\"Sv\"},\"InitQuery\":{}}},\"NewName\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBProxyTargetGroupResult\",\"type\":\"structure\",\"members\":{\"DBProxyTargetGroup\":{\"shape\":\"S7h\"}}}},\"ModifyDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\"],\"members\":{\"DBSnapshotIdentifier\":{},\"EngineVersion\":{},\"OptionGroupName\":{}}},\"output\":{\"resultWrapper\":\"ModifyDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBSnapshot\":{\"shape\":\"S19\"}}}},\"ModifyDBSnapshotAttribute\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSnapshotIdentifier\",\"AttributeName\"],\"members\":{\"DBSnapshotIdentifier\":{},\"AttributeName\":{},\"ValuesToAdd\":{\"shape\":\"S6a\"},\"ValuesToRemove\":{\"shape\":\"S6a\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSnapshotAttributeResult\",\"type\":\"structure\",\"members\":{\"DBSnapshotAttributesResult\":{\"shape\":\"S7x\"}}}},\"ModifyDBSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSubnetGroupName\",\"SubnetIds\"],\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"SubnetIds\":{\"shape\":\"S40\"}}},\"output\":{\"resultWrapper\":\"ModifyDBSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"DBSubnetGroup\":{\"shape\":\"S2s\"}}}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"EventCategories\":{\"shape\":\"S8\"},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S6\"}}}},\"ModifyGlobalCluster\":{\"input\":{\"type\":\"structure\",\"members\":{\"GlobalClusterIdentifier\":{},\"NewGlobalClusterIdentifier\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AllowMajorVersionUpgrade\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyGlobalClusterResult\",\"type\":\"structure\",\"members\":{\"GlobalCluster\":{\"shape\":\"S46\"}}}},\"ModifyOptionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OptionGroupName\"],\"members\":{\"OptionGroupName\":{},\"OptionsToInclude\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionConfiguration\",\"type\":\"structure\",\"required\":[\"OptionName\"],\"members\":{\"OptionName\":{},\"Port\":{\"type\":\"integer\"},\"OptionVersion\":{},\"DBSecurityGroupMemberships\":{\"shape\":\"S2m\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"S1u\"},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\",\"locationName\":\"OptionSetting\"}}}}},\"OptionsToRemove\":{\"type\":\"list\",\"member\":{}},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyOptionGroupResult\",\"type\":\"structure\",\"members\":{\"OptionGroup\":{\"shape\":\"S1f\"}}}},\"PromoteReadReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"PromoteReadReplicaDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"PromoteReadReplicaDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"PurchaseReservedDBInstancesOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedDBInstancesOfferingId\"],\"members\":{\"ReservedDBInstancesOfferingId\":{},\"ReservedDBInstanceId\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"Sb\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedDBInstancesOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedDBInstance\":{\"shape\":\"S9p\"}}}},\"RebootDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"ForceFailover\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RebootDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"RegisterDBProxyTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBProxyName\"],\"members\":{\"DBProxyName\":{},\"TargetGroupName\":{},\"DBInstanceIdentifiers\":{\"shape\":\"Sv\"},\"DBClusterIdentifiers\":{\"shape\":\"Sv\"}}},\"output\":{\"resultWrapper\":\"RegisterDBProxyTargetsResult\",\"type\":\"structure\",\"members\":{\"DBProxyTargets\":{\"shape\":\"S7l\"}}}},\"RemoveFromGlobalCluster\":{\"input\":{\"type\":\"structure\",\"members\":{\"GlobalClusterIdentifier\":{},\"DbClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveFromGlobalClusterResult\",\"type\":\"structure\",\"members\":{\"GlobalCluster\":{\"shape\":\"S46\"}}}},\"RemoveRoleFromDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"RoleArn\"],\"members\":{\"DBClusterIdentifier\":{},\"RoleArn\":{},\"FeatureName\":{}}}},\"RemoveRoleFromDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"RoleArn\",\"FeatureName\"],\"members\":{\"DBInstanceIdentifier\":{},\"RoleArn\":{},\"FeatureName\":{}}}},\"RemoveSourceIdentifierFromSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SourceIdentifier\"],\"members\":{\"SubscriptionName\":{},\"SourceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RemoveSourceIdentifierFromSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S6\"}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"ResetDBClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterParameterGroupName\"],\"members\":{\"DBClusterParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S61\"}}},\"output\":{\"shape\":\"Sau\",\"resultWrapper\":\"ResetDBClusterParameterGroupResult\"}},\"ResetDBParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBParameterGroupName\"],\"members\":{\"DBParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S61\"}}},\"output\":{\"shape\":\"Sb1\",\"resultWrapper\":\"ResetDBParameterGroupResult\"}},\"RestoreDBClusterFromS3\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"Engine\",\"MasterUsername\",\"MasterUserPassword\",\"SourceEngine\",\"SourceEngineVersion\",\"S3BucketName\",\"S3IngestionRoleArn\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"S13\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"CharacterSetName\":{},\"DatabaseName\":{},\"DBClusterIdentifier\":{},\"DBClusterParameterGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"DBSubnetGroupName\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"MasterUserPassword\":{},\"OptionGroupName\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"Tags\":{\"shape\":\"Sb\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"SourceEngine\":{},\"SourceEngineVersion\":{},\"S3BucketName\":{},\"S3Prefix\":{},\"S3IngestionRoleArn\":{},\"BacktrackWindow\":{\"type\":\"long\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"Domain\":{},\"DomainIAMRoleName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterFromS3Result\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"RestoreDBClusterFromSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"SnapshotIdentifier\",\"Engine\"],\"members\":{\"AvailabilityZones\":{\"shape\":\"S13\"},\"DBClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"DBSubnetGroupName\":{},\"DatabaseName\":{},\"OptionGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"Tags\":{\"shape\":\"Sb\"},\"KmsKeyId\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"BacktrackWindow\":{\"type\":\"long\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"EngineMode\":{},\"ScalingConfiguration\":{\"shape\":\"S1x\"},\"DBClusterParameterGroupName\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"Domain\":{},\"DomainIAMRoleName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterFromSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"RestoreDBClusterToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\",\"SourceDBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{},\"RestoreType\":{},\"SourceDBClusterIdentifier\":{},\"RestoreToTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"DBSubnetGroupName\":{},\"OptionGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"Tags\":{\"shape\":\"Sb\"},\"KmsKeyId\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"BacktrackWindow\":{\"type\":\"long\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"DBClusterParameterGroupName\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"Domain\":{},\"DomainIAMRoleName\":{}}},\"output\":{\"resultWrapper\":\"RestoreDBClusterToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"RestoreDBInstanceFromDBSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBSnapshotIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"Tags\":{\"shape\":\"Sb\"},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"Domain\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"DomainIAMRoleName\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"UseDefaultProcessorFeatures\":{\"type\":\"boolean\"},\"DBParameterGroupName\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"EnableCustomerOwnedIp\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceFromDBSnapshotResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"RestoreDBInstanceFromS3\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\",\"DBInstanceClass\",\"Engine\",\"SourceEngine\",\"SourceEngineVersion\",\"S3BucketName\",\"S3IngestionRoleArn\"],\"members\":{\"DBName\":{},\"DBInstanceIdentifier\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"DBInstanceClass\":{},\"Engine\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"DBSecurityGroups\":{\"shape\":\"S2m\"},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"PreferredMaintenanceWindow\":{},\"DBParameterGroupName\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"Port\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"},\"StorageType\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"MonitoringRoleArn\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"SourceEngine\":{},\"SourceEngineVersion\":{},\"S3BucketName\":{},\"S3Prefix\":{},\"S3IngestionRoleArn\":{},\"EnablePerformanceInsights\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"PerformanceInsightsRetentionPeriod\":{\"type\":\"integer\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"UseDefaultProcessorFeatures\":{\"type\":\"boolean\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"MaxAllocatedStorage\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceFromS3Result\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"RestoreDBInstanceToPointInTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetDBInstanceIdentifier\"],\"members\":{\"SourceDBInstanceIdentifier\":{},\"TargetDBInstanceIdentifier\":{},\"RestoreTime\":{\"type\":\"timestamp\"},\"UseLatestRestorableTime\":{\"type\":\"boolean\"},\"DBInstanceClass\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"DBSubnetGroupName\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"LicenseModel\":{},\"DBName\":{},\"Engine\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sb\"},\"StorageType\":{},\"TdeCredentialArn\":{},\"TdeCredentialPassword\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1u\"},\"Domain\":{},\"DomainIAMRoleName\":{},\"EnableIAMDatabaseAuthentication\":{\"type\":\"boolean\"},\"EnableCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"UseDefaultProcessorFeatures\":{\"type\":\"boolean\"},\"DBParameterGroupName\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"SourceDbiResourceId\":{},\"MaxAllocatedStorage\":{\"type\":\"integer\"},\"SourceDBInstanceAutomatedBackupsArn\":{},\"EnableCustomerOwnedIp\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreDBInstanceToPointInTimeResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"RevokeDBSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBSecurityGroupName\"],\"members\":{\"DBSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeDBSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"DBSecurityGroup\":{\"shape\":\"Sl\"}}}},\"StartActivityStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Mode\",\"KmsKeyId\"],\"members\":{\"ResourceArn\":{},\"Mode\":{},\"KmsKeyId\":{},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"StartActivityStreamResult\",\"type\":\"structure\",\"members\":{\"KmsKeyId\":{},\"KinesisStreamName\":{},\"Status\":{},\"Mode\":{},\"ApplyImmediately\":{\"type\":\"boolean\"}}}},\"StartDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StartDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"StartDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StartDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"StartDBInstanceAutomatedBackupsReplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBInstanceArn\"],\"members\":{\"SourceDBInstanceArn\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"KmsKeyId\":{},\"PreSignedUrl\":{}}},\"output\":{\"resultWrapper\":\"StartDBInstanceAutomatedBackupsReplicationResult\",\"type\":\"structure\",\"members\":{\"DBInstanceAutomatedBackup\":{\"shape\":\"S4q\"}}}},\"StartExportTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExportTaskIdentifier\",\"SourceArn\",\"S3BucketName\",\"IamRoleArn\",\"KmsKeyId\"],\"members\":{\"ExportTaskIdentifier\":{},\"SourceArn\":{},\"S3BucketName\":{},\"IamRoleArn\":{},\"KmsKeyId\":{},\"S3Prefix\":{},\"ExportOnly\":{\"shape\":\"Sv\"}}},\"output\":{\"shape\":\"Su\",\"resultWrapper\":\"StartExportTaskResult\"}},\"StopActivityStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"ApplyImmediately\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"StopActivityStreamResult\",\"type\":\"structure\",\"members\":{\"KmsKeyId\":{},\"KinesisStreamName\":{},\"Status\":{}}}},\"StopDBCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBClusterIdentifier\"],\"members\":{\"DBClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StopDBClusterResult\",\"type\":\"structure\",\"members\":{\"DBCluster\":{\"shape\":\"S1z\"}}}},\"StopDBInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"DBInstanceIdentifier\"],\"members\":{\"DBInstanceIdentifier\":{},\"DBSnapshotIdentifier\":{}}},\"output\":{\"resultWrapper\":\"StopDBInstanceResult\",\"type\":\"structure\",\"members\":{\"DBInstance\":{\"shape\":\"S2o\"}}}},\"StopDBInstanceAutomatedBackupsReplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceDBInstanceArn\"],\"members\":{\"SourceDBInstanceArn\":{}}},\"output\":{\"resultWrapper\":\"StopDBInstanceAutomatedBackupsReplicationResult\",\"type\":\"structure\",\"members\":{\"DBInstanceAutomatedBackup\":{\"shape\":\"S4q\"}}}}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S7\"},\"EventCategoriesList\":{\"shape\":\"S8\"},\"Enabled\":{\"type\":\"boolean\"},\"EventSubscriptionArn\":{}},\"wrapper\":true},\"S7\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S8\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"Sb\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifier\":{},\"PendingMaintenanceActionDetails\":{\"type\":\"list\",\"member\":{\"locationName\":\"PendingMaintenanceAction\",\"type\":\"structure\",\"members\":{\"Action\":{},\"AutoAppliedAfterDate\":{\"type\":\"timestamp\"},\"ForcedApplyDate\":{\"type\":\"timestamp\"},\"OptInStatus\":{},\"CurrentApplyDate\":{\"type\":\"timestamp\"},\"Description\":{}}}}},\"wrapper\":true},\"Sl\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"DBSecurityGroupName\":{},\"DBSecurityGroupDescription\":{},\"VpcId\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupId\":{},\"EC2SecurityGroupOwnerId\":{}}}},\"IPRanges\":{\"type\":\"list\",\"member\":{\"locationName\":\"IPRange\",\"type\":\"structure\",\"members\":{\"Status\":{},\"CIDRIP\":{}}}},\"DBSecurityGroupArn\":{}},\"wrapper\":true},\"Ss\":{\"type\":\"structure\",\"members\":{\"DBClusterIdentifier\":{},\"BacktrackIdentifier\":{},\"BacktrackTo\":{\"type\":\"timestamp\"},\"BacktrackedFrom\":{\"type\":\"timestamp\"},\"BacktrackRequestCreationTime\":{\"type\":\"timestamp\"},\"Status\":{}}},\"Su\":{\"type\":\"structure\",\"members\":{\"ExportTaskIdentifier\":{},\"SourceArn\":{},\"ExportOnly\":{\"shape\":\"Sv\"},\"SnapshotTime\":{\"type\":\"timestamp\"},\"TaskStartTime\":{\"type\":\"timestamp\"},\"TaskEndTime\":{\"type\":\"timestamp\"},\"S3Bucket\":{},\"S3Prefix\":{},\"IamRoleArn\":{},\"KmsKeyId\":{},\"Status\":{},\"PercentProgress\":{\"type\":\"integer\"},\"TotalExtractedDataInGB\":{\"type\":\"integer\"},\"FailureCause\":{},\"WarningMessage\":{}}},\"Sv\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"DBClusterParameterGroupArn\":{}},\"wrapper\":true},\"S12\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S13\"},\"DBClusterSnapshotIdentifier\":{},\"DBClusterIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"EngineMode\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"VpcId\":{},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"PercentProgress\":{\"type\":\"integer\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DBClusterSnapshotArn\":{},\"SourceDBClusterSnapshotArn\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"TagList\":{\"shape\":\"Sb\"}},\"wrapper\":true},\"S13\":{\"type\":\"list\",\"member\":{\"locationName\":\"AvailabilityZone\"}},\"S16\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"DBParameterGroupFamily\":{},\"Description\":{},\"DBParameterGroupArn\":{}},\"wrapper\":true},\"S19\":{\"type\":\"structure\",\"members\":{\"DBSnapshotIdentifier\":{},\"DBInstanceIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PercentProgress\":{\"type\":\"integer\"},\"SourceRegion\":{},\"SourceDBSnapshotIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DBSnapshotArn\":{},\"Timezone\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"DbiResourceId\":{},\"TagList\":{\"shape\":\"Sb\"}},\"wrapper\":true},\"S1b\":{\"type\":\"list\",\"member\":{\"locationName\":\"ProcessorFeature\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"S1f\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"OptionGroupDescription\":{},\"EngineName\":{},\"MajorEngineVersion\":{},\"Options\":{\"type\":\"list\",\"member\":{\"locationName\":\"Option\",\"type\":\"structure\",\"members\":{\"OptionName\":{},\"OptionDescription\":{},\"Persistent\":{\"type\":\"boolean\"},\"Permanent\":{\"type\":\"boolean\"},\"Port\":{\"type\":\"integer\"},\"OptionVersion\":{},\"OptionSettings\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\",\"locationName\":\"OptionSetting\"}},\"DBSecurityGroupMemberships\":{\"shape\":\"S1k\"},\"VpcSecurityGroupMemberships\":{\"shape\":\"S1m\"}}}},\"AllowsVpcAndNonVpcInstanceMemberships\":{\"type\":\"boolean\"},\"VpcId\":{},\"OptionGroupArn\":{}},\"wrapper\":true},\"S1j\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{},\"DefaultValue\":{},\"Description\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"IsCollection\":{\"type\":\"boolean\"}}},\"S1k\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroup\",\"type\":\"structure\",\"members\":{\"DBSecurityGroupName\":{},\"Status\":{}}}},\"S1m\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupMembership\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S1q\":{\"type\":\"structure\",\"members\":{\"CustomAvailabilityZoneId\":{},\"CustomAvailabilityZoneName\":{},\"CustomAvailabilityZoneStatus\":{},\"VpnDetails\":{\"type\":\"structure\",\"members\":{\"VpnId\":{},\"VpnTunnelOriginatorIP\":{},\"VpnGatewayIp\":{},\"VpnPSK\":{\"type\":\"string\",\"sensitive\":true},\"VpnName\":{},\"VpnState\":{}}}},\"wrapper\":true},\"S1u\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"S1w\":{\"type\":\"list\",\"member\":{}},\"S1x\":{\"type\":\"structure\",\"members\":{\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"},\"AutoPause\":{\"type\":\"boolean\"},\"SecondsUntilAutoPause\":{\"type\":\"integer\"},\"TimeoutAction\":{}}},\"S1z\":{\"type\":\"structure\",\"members\":{\"AllocatedStorage\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S13\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"CharacterSetName\":{},\"DatabaseName\":{},\"DBClusterIdentifier\":{},\"DBClusterParameterGroup\":{},\"DBSubnetGroup\":{},\"Status\":{},\"PercentProgress\":{},\"EarliestRestorableTime\":{\"type\":\"timestamp\"},\"Endpoint\":{},\"ReaderEndpoint\":{},\"CustomEndpoints\":{\"shape\":\"Sv\"},\"MultiAZ\":{\"type\":\"boolean\"},\"Engine\":{},\"EngineVersion\":{},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"DBClusterOptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterOptionGroup\",\"type\":\"structure\",\"members\":{\"DBClusterOptionGroupName\":{},\"Status\":{}}}},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"ReplicationSourceIdentifier\":{},\"ReadReplicaIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaIdentifier\"}},\"DBClusterMembers\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterMember\",\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"IsClusterWriter\":{\"type\":\"boolean\"},\"DBClusterParameterGroupStatus\":{},\"PromotionTier\":{\"type\":\"integer\"}},\"wrapper\":true}},\"VpcSecurityGroups\":{\"shape\":\"S1m\"},\"HostedZoneId\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbClusterResourceId\":{},\"DBClusterArn\":{},\"AssociatedRoles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterRole\",\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"Status\":{},\"FeatureName\":{}}}},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"CloneGroupId\":{},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"EarliestBacktrackTime\":{\"type\":\"timestamp\"},\"BacktrackWindow\":{\"type\":\"long\"},\"BacktrackConsumedChangeRecords\":{\"type\":\"long\"},\"EnabledCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"Capacity\":{\"type\":\"integer\"},\"EngineMode\":{},\"ScalingConfigurationInfo\":{\"type\":\"structure\",\"members\":{\"MinCapacity\":{\"type\":\"integer\"},\"MaxCapacity\":{\"type\":\"integer\"},\"AutoPause\":{\"type\":\"boolean\"},\"SecondsUntilAutoPause\":{\"type\":\"integer\"},\"TimeoutAction\":{}}},\"DeletionProtection\":{\"type\":\"boolean\"},\"HttpEndpointEnabled\":{\"type\":\"boolean\"},\"ActivityStreamMode\":{},\"ActivityStreamStatus\":{},\"ActivityStreamKmsKeyId\":{},\"ActivityStreamKinesisStreamName\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"CrossAccountClone\":{\"type\":\"boolean\"},\"DomainMemberships\":{\"shape\":\"S2a\"},\"TagList\":{\"shape\":\"Sb\"},\"GlobalWriteForwardingStatus\":{},\"GlobalWriteForwardingRequested\":{\"type\":\"boolean\"},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"PendingCloudwatchLogsExports\":{\"shape\":\"S2e\"},\"DBClusterIdentifier\":{},\"MasterUserPassword\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"EngineVersion\":{}}}},\"wrapper\":true},\"S2a\":{\"type\":\"list\",\"member\":{\"locationName\":\"DomainMembership\",\"type\":\"structure\",\"members\":{\"Domain\":{},\"Status\":{},\"FQDN\":{},\"IAMRoleName\":{}}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"LogTypesToEnable\":{\"shape\":\"S1w\"},\"LogTypesToDisable\":{\"shape\":\"S1w\"}}},\"S2g\":{\"type\":\"structure\",\"members\":{\"DBClusterEndpointIdentifier\":{},\"DBClusterIdentifier\":{},\"DBClusterEndpointResourceIdentifier\":{},\"Endpoint\":{},\"Status\":{},\"EndpointType\":{},\"CustomEndpointType\":{},\"StaticMembers\":{\"shape\":\"Sv\"},\"ExcludedMembers\":{\"shape\":\"Sv\"},\"DBClusterEndpointArn\":{}}},\"S2m\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSecurityGroupName\"}},\"S2o\":{\"type\":\"structure\",\"members\":{\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"Engine\":{},\"DBInstanceStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"shape\":\"S2p\"},\"AllocatedStorage\":{\"type\":\"integer\"},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBSecurityGroups\":{\"shape\":\"S1k\"},\"VpcSecurityGroups\":{\"shape\":\"S1m\"},\"DBParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBParameterGroup\",\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DBSubnetGroup\":{\"shape\":\"S2s\"},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DBInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"DBInstanceIdentifier\":{},\"StorageType\":{},\"CACertificateIdentifier\":{},\"DBSubnetGroupName\":{},\"PendingCloudwatchLogsExports\":{\"shape\":\"S2e\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"}}},\"LatestRestorableTime\":{\"type\":\"timestamp\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBInstanceIdentifier\"}},\"ReadReplicaDBClusterIdentifiers\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReadReplicaDBClusterIdentifier\"}},\"ReplicaMode\":{},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"locationName\":\"OptionGroupMembership\",\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}}},\"CharacterSetName\":{},\"NcharCharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"StatusInfos\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceStatusInfo\",\"type\":\"structure\",\"members\":{\"StatusType\":{},\"Normal\":{\"type\":\"boolean\"},\"Status\":{},\"Message\":{}}}},\"StorageType\":{},\"TdeCredentialArn\":{},\"DbInstancePort\":{\"type\":\"integer\"},\"DBClusterIdentifier\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbiResourceId\":{},\"CACertificateIdentifier\":{},\"DomainMemberships\":{\"shape\":\"S2a\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"EnhancedMonitoringResourceArn\":{},\"MonitoringRoleArn\":{},\"PromotionTier\":{\"type\":\"integer\"},\"DBInstanceArn\":{},\"Timezone\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"PerformanceInsightsEnabled\":{\"type\":\"boolean\"},\"PerformanceInsightsKMSKeyId\":{},\"PerformanceInsightsRetentionPeriod\":{\"type\":\"integer\"},\"EnabledCloudwatchLogsExports\":{\"shape\":\"S1w\"},\"ProcessorFeatures\":{\"shape\":\"S1b\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"AssociatedRoles\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceRole\",\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"FeatureName\":{},\"Status\":{}}}},\"ListenerEndpoint\":{\"shape\":\"S2p\"},\"MaxAllocatedStorage\":{\"type\":\"integer\"},\"TagList\":{\"shape\":\"Sb\"},\"DBInstanceAutomatedBackupsReplications\":{\"shape\":\"S37\"},\"CustomerOwnedIpEnabled\":{\"type\":\"boolean\"},\"AwsBackupRecoveryPointArn\":{}},\"wrapper\":true},\"S2p\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"},\"HostedZoneId\":{}}},\"S2s\":{\"type\":\"structure\",\"members\":{\"DBSubnetGroupName\":{},\"DBSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S2v\"},\"SubnetOutpost\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"SubnetStatus\":{}}}},\"DBSubnetGroupArn\":{}},\"wrapper\":true},\"S2v\":{\"type\":\"structure\",\"members\":{\"Name\":{}},\"wrapper\":true},\"S37\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBInstanceAutomatedBackupsReplication\",\"type\":\"structure\",\"members\":{\"DBInstanceAutomatedBackupsArn\":{}}}},\"S3f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"UserName\":{},\"AuthScheme\":{},\"SecretArn\":{},\"IAMAuth\":{}}}},\"S3k\":{\"type\":\"structure\",\"members\":{\"DBProxyName\":{},\"DBProxyArn\":{},\"Status\":{},\"EngineFamily\":{},\"VpcId\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sv\"},\"VpcSubnetIds\":{\"shape\":\"Sv\"},\"Auth\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"UserName\":{},\"AuthScheme\":{},\"SecretArn\":{},\"IAMAuth\":{}}}},\"RoleArn\":{},\"Endpoint\":{},\"RequireTLS\":{\"type\":\"boolean\"},\"IdleClientTimeout\":{\"type\":\"integer\"},\"DebugLogging\":{\"type\":\"boolean\"},\"CreatedDate\":{\"type\":\"timestamp\"},\"UpdatedDate\":{\"type\":\"timestamp\"}}},\"S3t\":{\"type\":\"structure\",\"members\":{\"DBProxyEndpointName\":{},\"DBProxyEndpointArn\":{},\"DBProxyName\":{},\"Status\":{},\"VpcId\":{},\"VpcSecurityGroupIds\":{\"shape\":\"Sv\"},\"VpcSubnetIds\":{\"shape\":\"Sv\"},\"Endpoint\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"TargetRole\":{},\"IsDefault\":{\"type\":\"boolean\"}}},\"S40\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S46\":{\"type\":\"structure\",\"members\":{\"GlobalClusterIdentifier\":{},\"GlobalClusterResourceId\":{},\"GlobalClusterArn\":{},\"Status\":{},\"Engine\":{},\"EngineVersion\":{},\"DatabaseName\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"DeletionProtection\":{\"type\":\"boolean\"},\"GlobalClusterMembers\":{\"type\":\"list\",\"member\":{\"locationName\":\"GlobalClusterMember\",\"type\":\"structure\",\"members\":{\"DBClusterArn\":{},\"Readers\":{\"type\":\"list\",\"member\":{}},\"IsWriter\":{\"type\":\"boolean\"},\"GlobalWriteForwardingStatus\":{}},\"wrapper\":true}},\"FailoverState\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"FromDbClusterArn\":{},\"ToDbClusterArn\":{}},\"wrapper\":true}},\"wrapper\":true},\"S4q\":{\"type\":\"structure\",\"members\":{\"DBInstanceArn\":{},\"DbiResourceId\":{},\"Region\":{},\"DBInstanceIdentifier\":{},\"RestoreWindow\":{\"type\":\"structure\",\"members\":{\"EarliestTime\":{\"type\":\"timestamp\"},\"LatestTime\":{\"type\":\"timestamp\"}}},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"Engine\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"TdeCredentialArn\":{},\"Encrypted\":{\"type\":\"boolean\"},\"StorageType\":{},\"KmsKeyId\":{},\"Timezone\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DBInstanceAutomatedBackupsArn\":{},\"DBInstanceAutomatedBackupsReplications\":{\"shape\":\"S37\"}},\"wrapper\":true},\"S56\":{\"type\":\"structure\",\"members\":{\"InstallationMediaId\":{},\"CustomAvailabilityZoneId\":{},\"Engine\":{},\"EngineVersion\":{},\"EngineInstallationMediaPath\":{},\"OSInstallationMediaPath\":{},\"Status\":{},\"FailureCause\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}}},\"S5h\":{\"type\":\"list\",\"member\":{\"locationName\":\"Filter\",\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{\"locationName\":\"Value\"}}}}},\"S5m\":{\"type\":\"structure\",\"members\":{\"CertificateIdentifier\":{},\"CertificateType\":{},\"Thumbprint\":{},\"ValidFrom\":{\"type\":\"timestamp\"},\"ValidTill\":{\"type\":\"timestamp\"},\"CertificateArn\":{},\"CustomerOverride\":{\"type\":\"boolean\"},\"CustomerOverrideValidTill\":{\"type\":\"timestamp\"}},\"wrapper\":true},\"S61\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"ApplyType\":{},\"DataType\":{},\"AllowedValues\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{},\"ApplyMethod\":{},\"SupportedEngineModes\":{\"shape\":\"S64\"}}}},\"S64\":{\"type\":\"list\",\"member\":{}},\"S67\":{\"type\":\"structure\",\"members\":{\"DBClusterSnapshotIdentifier\":{},\"DBClusterSnapshotAttributes\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBClusterSnapshotAttribute\",\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValues\":{\"shape\":\"S6a\"}}}}},\"wrapper\":true},\"S6a\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeValue\"}},\"S6l\":{\"type\":\"structure\",\"members\":{\"CharacterSetName\":{},\"CharacterSetDescription\":{}}},\"S6m\":{\"type\":\"list\",\"member\":{\"shape\":\"S6l\",\"locationName\":\"CharacterSet\"}},\"S7h\":{\"type\":\"structure\",\"members\":{\"DBProxyName\":{},\"TargetGroupName\":{},\"TargetGroupArn\":{},\"IsDefault\":{\"type\":\"boolean\"},\"Status\":{},\"ConnectionPoolConfig\":{\"type\":\"structure\",\"members\":{\"MaxConnectionsPercent\":{\"type\":\"integer\"},\"MaxIdleConnectionsPercent\":{\"type\":\"integer\"},\"ConnectionBorrowTimeout\":{\"type\":\"integer\"},\"SessionPinningFilters\":{\"shape\":\"Sv\"},\"InitQuery\":{}}},\"CreatedDate\":{\"type\":\"timestamp\"},\"UpdatedDate\":{\"type\":\"timestamp\"}}},\"S7l\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetArn\":{},\"Endpoint\":{},\"TrackedClusterId\":{},\"RdsResourceId\":{},\"Port\":{\"type\":\"integer\"},\"Type\":{},\"Role\":{},\"TargetHealth\":{\"type\":\"structure\",\"members\":{\"State\":{},\"Reason\":{},\"Description\":{}}}}}},\"S7x\":{\"type\":\"structure\",\"members\":{\"DBSnapshotIdentifier\":{},\"DBSnapshotAttributes\":{\"type\":\"list\",\"member\":{\"locationName\":\"DBSnapshotAttribute\",\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValues\":{\"shape\":\"S6a\"}},\"wrapper\":true}}},\"wrapper\":true},\"S88\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S61\"}},\"wrapper\":true},\"S9h\":{\"type\":\"list\",\"member\":{\"locationName\":\"AvailableProcessorFeature\",\"type\":\"structure\",\"members\":{\"Name\":{},\"DefaultValue\":{},\"AllowedValues\":{}}}},\"S9p\":{\"type\":\"structure\",\"members\":{\"ReservedDBInstanceId\":{},\"ReservedDBInstancesOfferingId\":{},\"DBInstanceClass\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"DBInstanceCount\":{\"type\":\"integer\"},\"ProductDescription\":{},\"OfferingType\":{},\"MultiAZ\":{\"type\":\"boolean\"},\"State\":{},\"RecurringCharges\":{\"shape\":\"S9r\"},\"ReservedDBInstanceArn\":{},\"LeaseId\":{}},\"wrapper\":true},\"S9r\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"Sa6\":{\"type\":\"list\",\"member\":{\"locationName\":\"Range\",\"type\":\"structure\",\"members\":{\"From\":{\"type\":\"integer\"},\"To\":{\"type\":\"integer\"},\"Step\":{\"type\":\"integer\"}}}},\"Saq\":{\"type\":\"structure\",\"members\":{\"EnableLogTypes\":{\"shape\":\"S1w\"},\"DisableLogTypes\":{\"shape\":\"S1w\"}}},\"Sau\":{\"type\":\"structure\",\"members\":{\"DBClusterParameterGroupName\":{}}},\"Sb1\":{\"type\":\"structure\",\"members\":{\"DBParameterGroupName\":{}}}}}");

/***/ }),

/***/ 60972:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCertificates\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Certificates\"},\"DescribeCustomAvailabilityZones\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"CustomAvailabilityZones\"},\"DescribeDBClusterBacktracks\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterBacktracks\"},\"DescribeDBClusterEndpoints\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterEndpoints\"},\"DescribeDBClusterParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterParameterGroups\"},\"DescribeDBClusterParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBClusterSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusterSnapshots\"},\"DescribeDBClusters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBClusters\"},\"DescribeDBEngineVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBEngineVersions\"},\"DescribeDBInstanceAutomatedBackups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstanceAutomatedBackups\"},\"DescribeDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBInstances\"},\"DescribeDBLogFiles\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DescribeDBLogFiles\"},\"DescribeDBParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBParameterGroups\"},\"DescribeDBParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeDBProxies\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBProxies\"},\"DescribeDBProxyEndpoints\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBProxyEndpoints\"},\"DescribeDBProxyTargetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"TargetGroups\"},\"DescribeDBProxyTargets\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Targets\"},\"DescribeDBSecurityGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSecurityGroups\"},\"DescribeDBSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSnapshots\"},\"DescribeDBSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"DBSubnetGroups\"},\"DescribeEngineDefaultParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"EngineDefaults.Marker\",\"result_key\":\"EngineDefaults.Parameters\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeExportTasks\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ExportTasks\"},\"DescribeGlobalClusters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"GlobalClusters\"},\"DescribeInstallationMedia\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"InstallationMedia\"},\"DescribeOptionGroupOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupOptions\"},\"DescribeOptionGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OptionGroupsList\"},\"DescribeOrderableDBInstanceOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableDBInstanceOptions\"},\"DescribePendingMaintenanceActions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"PendingMaintenanceActions\"},\"DescribeReservedDBInstances\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstances\"},\"DescribeReservedDBInstancesOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedDBInstancesOfferings\"},\"DescribeSourceRegions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"SourceRegions\"},\"DownloadDBLogFilePortion\":{\"input_token\":\"Marker\",\"limit_key\":\"NumberOfLines\",\"more_results\":\"AdditionalDataPending\",\"output_token\":\"Marker\",\"result_key\":\"LogFileData\"},\"ListTagsForResource\":{\"result_key\":\"TagList\"}}}");

/***/ }),

/***/ 6606:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"DBInstanceAvailable\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]},\"DBInstanceDeleted\":{\"delay\":30,\"operation\":\"DescribeDBInstances\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":true,\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"length(DBInstances) == `0`\"},{\"expected\":\"DBInstanceNotFound\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"},{\"expected\":\"resetting-master-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBInstances[].DBInstanceStatus\"}]},\"DBSnapshotAvailable\":{\"delay\":30,\"operation\":\"DescribeDBSnapshots\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"}]},\"DBSnapshotDeleted\":{\"delay\":30,\"operation\":\"DescribeDBSnapshots\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":true,\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"length(DBSnapshots) == `0`\"},{\"expected\":\"DBSnapshotNotFound\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"},{\"expected\":\"resetting-master-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBSnapshots[].Status\"}]},\"DBClusterSnapshotAvailable\":{\"delay\":30,\"operation\":\"DescribeDBClusterSnapshots\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"incompatible-restore\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"incompatible-parameters\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"}]},\"DBClusterSnapshotDeleted\":{\"delay\":30,\"operation\":\"DescribeDBClusterSnapshots\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":true,\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"length(DBClusterSnapshots) == `0`\"},{\"expected\":\"DBClusterSnapshotNotFoundFault\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"rebooting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"},{\"expected\":\"resetting-master-credentials\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"DBClusterSnapshots[].Status\"}]}}}");

/***/ }),

/***/ 4983:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-08-01\",\"endpointPrefix\":\"rds-data\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS RDS DataService\",\"serviceId\":\"RDS Data\",\"signatureVersion\":\"v4\",\"signingName\":\"rds-data\",\"uid\":\"rds-data-2018-08-01\"},\"operations\":{\"BatchExecuteStatement\":{\"http\":{\"requestUri\":\"/BatchExecute\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"secretArn\",\"sql\"],\"members\":{\"database\":{},\"parameterSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}},\"resourceArn\":{},\"schema\":{},\"secretArn\":{},\"sql\":{},\"transactionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"updateResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"generatedFields\":{\"shape\":\"Sq\"}}}}}}},\"BeginTransaction\":{\"http\":{\"requestUri\":\"/BeginTransaction\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"secretArn\"],\"members\":{\"database\":{},\"resourceArn\":{},\"schema\":{},\"secretArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"transactionId\":{}}}},\"CommitTransaction\":{\"http\":{\"requestUri\":\"/CommitTransaction\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"secretArn\",\"transactionId\"],\"members\":{\"resourceArn\":{},\"secretArn\":{},\"transactionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"transactionStatus\":{}}}},\"ExecuteSql\":{\"http\":{\"requestUri\":\"/ExecuteSql\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"awsSecretStoreArn\",\"dbClusterOrInstanceArn\",\"sqlStatements\"],\"members\":{\"awsSecretStoreArn\":{},\"database\":{},\"dbClusterOrInstanceArn\":{},\"schema\":{},\"sqlStatements\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"sqlStatementResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"numberOfRecordsUpdated\":{\"type\":\"long\"},\"resultFrame\":{\"type\":\"structure\",\"members\":{\"records\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"values\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}}}}},\"resultSetMetadata\":{\"type\":\"structure\",\"members\":{\"columnCount\":{\"type\":\"long\"},\"columnMetadata\":{\"shape\":\"S1c\"}}}}}}}}}},\"deprecated\":true,\"deprecatedMessage\":\"The ExecuteSql API is deprecated, please use the ExecuteStatement API.\"},\"ExecuteStatement\":{\"http\":{\"requestUri\":\"/Execute\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"secretArn\",\"sql\"],\"members\":{\"continueAfterTimeout\":{\"type\":\"boolean\"},\"database\":{},\"includeResultMetadata\":{\"type\":\"boolean\"},\"parameters\":{\"shape\":\"S4\"},\"resourceArn\":{},\"resultSetOptions\":{\"type\":\"structure\",\"members\":{\"decimalReturnType\":{}}},\"schema\":{},\"secretArn\":{},\"sql\":{},\"transactionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"columnMetadata\":{\"shape\":\"S1c\"},\"generatedFields\":{\"shape\":\"Sq\"},\"numberOfRecordsUpdated\":{\"type\":\"long\"},\"records\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}}},\"RollbackTransaction\":{\"http\":{\"requestUri\":\"/RollbackTransaction\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"secretArn\",\"transactionId\"],\"members\":{\"resourceArn\":{},\"secretArn\":{},\"transactionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"transactionStatus\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"typeHint\":{},\"value\":{\"shape\":\"S8\"}}}},\"S8\":{\"type\":\"structure\",\"members\":{\"arrayValue\":{\"shape\":\"S9\"},\"blobValue\":{\"type\":\"blob\"},\"booleanValue\":{\"type\":\"boolean\"},\"doubleValue\":{\"type\":\"double\"},\"isNull\":{\"type\":\"boolean\"},\"longValue\":{\"type\":\"long\"},\"stringValue\":{}},\"union\":true},\"S9\":{\"type\":\"structure\",\"members\":{\"arrayValues\":{\"type\":\"list\",\"member\":{\"shape\":\"S9\"}},\"booleanValues\":{\"type\":\"list\",\"member\":{\"type\":\"boolean\"}},\"doubleValues\":{\"type\":\"list\",\"member\":{\"type\":\"double\"}},\"longValues\":{\"type\":\"list\",\"member\":{\"type\":\"long\"}},\"stringValues\":{\"type\":\"list\",\"member\":{}}},\"union\":true},\"Sq\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"S15\":{\"type\":\"structure\",\"members\":{\"arrayValues\":{\"shape\":\"S16\"},\"bigIntValue\":{\"type\":\"long\"},\"bitValue\":{\"type\":\"boolean\"},\"blobValue\":{\"type\":\"blob\"},\"doubleValue\":{\"type\":\"double\"},\"intValue\":{\"type\":\"integer\"},\"isNull\":{\"type\":\"boolean\"},\"realValue\":{\"type\":\"float\"},\"stringValue\":{},\"structValue\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"shape\":\"S16\"}}}},\"union\":true},\"S16\":{\"type\":\"list\",\"member\":{\"shape\":\"S15\"}},\"S1c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arrayBaseColumnType\":{\"type\":\"integer\"},\"isAutoIncrement\":{\"type\":\"boolean\"},\"isCaseSensitive\":{\"type\":\"boolean\"},\"isCurrency\":{\"type\":\"boolean\"},\"isSigned\":{\"type\":\"boolean\"},\"label\":{},\"name\":{},\"nullable\":{\"type\":\"integer\"},\"precision\":{\"type\":\"integer\"},\"scale\":{\"type\":\"integer\"},\"schemaName\":{},\"tableName\":{},\"type\":{\"type\":\"integer\"},\"typeName\":{}}}}}}");

/***/ }),

/***/ 99015:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 17066:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-12-01\",\"endpointPrefix\":\"redshift\",\"protocol\":\"query\",\"serviceFullName\":\"Amazon Redshift\",\"serviceId\":\"Redshift\",\"signatureVersion\":\"v4\",\"uid\":\"redshift-2012-12-01\",\"xmlNamespace\":\"http://redshift.amazonaws.com/doc/2012-12-01/\"},\"operations\":{\"AcceptReservedNodeExchange\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedNodeId\",\"TargetReservedNodeOfferingId\"],\"members\":{\"ReservedNodeId\":{},\"TargetReservedNodeOfferingId\":{}}},\"output\":{\"resultWrapper\":\"AcceptReservedNodeExchangeResult\",\"type\":\"structure\",\"members\":{\"ExchangedReservedNode\":{\"shape\":\"S4\"}}}},\"AuthorizeClusterSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSecurityGroupName\"],\"members\":{\"ClusterSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeClusterSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"ClusterSecurityGroup\":{\"shape\":\"Sd\"}}}},\"AuthorizeEndpointAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"Account\"],\"members\":{\"ClusterIdentifier\":{},\"Account\":{},\"VpcIds\":{\"shape\":\"Sl\"}}},\"output\":{\"shape\":\"Sm\",\"resultWrapper\":\"AuthorizeEndpointAccessResult\"}},\"AuthorizeSnapshotAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotIdentifier\",\"AccountWithRestoreAccess\"],\"members\":{\"SnapshotIdentifier\":{},\"SnapshotClusterIdentifier\":{},\"AccountWithRestoreAccess\":{}}},\"output\":{\"resultWrapper\":\"AuthorizeSnapshotAccessResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"Sr\"}}}},\"BatchDeleteClusterSnapshots\":{\"input\":{\"type\":\"structure\",\"required\":[\"Identifiers\"],\"members\":{\"Identifiers\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\",\"locationName\":\"DeleteClusterSnapshotMessage\"}}}},\"output\":{\"resultWrapper\":\"BatchDeleteClusterSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Resources\":{\"shape\":\"S11\"},\"Errors\":{\"type\":\"list\",\"member\":{\"shape\":\"S13\",\"locationName\":\"SnapshotErrorMessage\"}}}}},\"BatchModifyClusterSnapshots\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotIdentifierList\"],\"members\":{\"SnapshotIdentifierList\":{\"shape\":\"S11\"},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"BatchModifyClusterSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Resources\":{\"shape\":\"S11\"},\"Errors\":{\"type\":\"list\",\"member\":{\"shape\":\"S13\",\"locationName\":\"SnapshotErrorMessage\"}}}}},\"CancelResize\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"shape\":\"S18\",\"resultWrapper\":\"CancelResizeResult\"}},\"CopyClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceSnapshotIdentifier\",\"TargetSnapshotIdentifier\"],\"members\":{\"SourceSnapshotIdentifier\":{},\"SourceSnapshotClusterIdentifier\":{},\"TargetSnapshotIdentifier\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"CopyClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"Sr\"}}}},\"CreateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"NodeType\",\"MasterUsername\",\"MasterUserPassword\"],\"members\":{\"DBName\":{},\"ClusterIdentifier\":{},\"ClusterType\":{},\"NodeType\":{},\"MasterUsername\":{},\"MasterUserPassword\":{},\"ClusterSecurityGroups\":{\"shape\":\"S1h\"},\"VpcSecurityGroupIds\":{\"shape\":\"S1i\"},\"ClusterSubnetGroupName\":{},\"AvailabilityZone\":{},\"PreferredMaintenanceWindow\":{},\"ClusterParameterGroupName\":{},\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"Port\":{\"type\":\"integer\"},\"ClusterVersion\":{},\"AllowVersionUpgrade\":{\"type\":\"boolean\"},\"NumberOfNodes\":{\"type\":\"integer\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Encrypted\":{\"type\":\"boolean\"},\"HsmClientCertificateIdentifier\":{},\"HsmConfigurationIdentifier\":{},\"ElasticIp\":{},\"Tags\":{\"shape\":\"Sg\"},\"KmsKeyId\":{},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"AdditionalInfo\":{},\"IamRoles\":{\"shape\":\"S1k\"},\"MaintenanceTrackName\":{},\"SnapshotScheduleIdentifier\":{},\"AvailabilityZoneRelocation\":{\"type\":\"boolean\"},\"AquaConfigurationStatus\":{}}},\"output\":{\"resultWrapper\":\"CreateClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"CreateClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\",\"ParameterGroupFamily\",\"Description\"],\"members\":{\"ParameterGroupName\":{},\"ParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateClusterParameterGroupResult\",\"type\":\"structure\",\"members\":{\"ClusterParameterGroup\":{\"shape\":\"S2k\"}}}},\"CreateClusterSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSecurityGroupName\",\"Description\"],\"members\":{\"ClusterSecurityGroupName\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateClusterSecurityGroupResult\",\"type\":\"structure\",\"members\":{\"ClusterSecurityGroup\":{\"shape\":\"Sd\"}}}},\"CreateClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotIdentifier\",\"ClusterIdentifier\"],\"members\":{\"SnapshotIdentifier\":{},\"ClusterIdentifier\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"Sr\"}}}},\"CreateClusterSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSubnetGroupName\",\"Description\",\"SubnetIds\"],\"members\":{\"ClusterSubnetGroupName\":{},\"Description\":{},\"SubnetIds\":{\"shape\":\"S2q\"},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateClusterSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"ClusterSubnetGroup\":{\"shape\":\"S2s\"}}}},\"CreateEndpointAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"SubnetGroupName\"],\"members\":{\"ClusterIdentifier\":{},\"ResourceOwner\":{},\"EndpointName\":{},\"SubnetGroupName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1i\"}}},\"output\":{\"shape\":\"S2z\",\"resultWrapper\":\"CreateEndpointAccessResult\"}},\"CreateEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\",\"SnsTopicArn\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"SourceIds\":{\"shape\":\"S31\"},\"EventCategories\":{\"shape\":\"S32\"},\"Severity\":{},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S34\"}}}},\"CreateHsmClientCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmClientCertificateIdentifier\"],\"members\":{\"HsmClientCertificateIdentifier\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateHsmClientCertificateResult\",\"type\":\"structure\",\"members\":{\"HsmClientCertificate\":{\"shape\":\"S37\"}}}},\"CreateHsmConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmConfigurationIdentifier\",\"Description\",\"HsmIpAddress\",\"HsmPartitionName\",\"HsmPartitionPassword\",\"HsmServerPublicCertificate\"],\"members\":{\"HsmConfigurationIdentifier\":{},\"Description\":{},\"HsmIpAddress\":{},\"HsmPartitionName\":{},\"HsmPartitionPassword\":{},\"HsmServerPublicCertificate\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateHsmConfigurationResult\",\"type\":\"structure\",\"members\":{\"HsmConfiguration\":{\"shape\":\"S3a\"}}}},\"CreateScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduledActionName\",\"TargetAction\",\"Schedule\",\"IamRole\"],\"members\":{\"ScheduledActionName\":{},\"TargetAction\":{\"shape\":\"S3c\"},\"Schedule\":{},\"IamRole\":{},\"ScheduledActionDescription\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Enable\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S3g\",\"resultWrapper\":\"CreateScheduledActionResult\"}},\"CreateSnapshotCopyGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotCopyGrantName\"],\"members\":{\"SnapshotCopyGrantName\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"resultWrapper\":\"CreateSnapshotCopyGrantResult\",\"type\":\"structure\",\"members\":{\"SnapshotCopyGrant\":{\"shape\":\"S3l\"}}}},\"CreateSnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"members\":{\"ScheduleDefinitions\":{\"shape\":\"S3n\"},\"ScheduleIdentifier\":{},\"ScheduleDescription\":{},\"Tags\":{\"shape\":\"Sg\"},\"DryRun\":{\"type\":\"boolean\"},\"NextInvocations\":{\"type\":\"integer\"}}},\"output\":{\"shape\":\"S3o\",\"resultWrapper\":\"CreateSnapshotScheduleResult\"}},\"CreateTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"Tags\"],\"members\":{\"ResourceName\":{},\"Tags\":{\"shape\":\"Sg\"}}}},\"CreateUsageLimit\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"FeatureType\",\"LimitType\",\"Amount\"],\"members\":{\"ClusterIdentifier\":{},\"FeatureType\":{},\"LimitType\":{},\"Amount\":{\"type\":\"long\"},\"Period\":{},\"BreachAction\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"output\":{\"shape\":\"S3y\",\"resultWrapper\":\"CreateUsageLimitResult\"}},\"DeleteCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"SkipFinalClusterSnapshot\":{\"type\":\"boolean\"},\"FinalClusterSnapshotIdentifier\":{},\"FinalClusterSnapshotRetentionPeriod\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DeleteClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"DeleteClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\"],\"members\":{\"ParameterGroupName\":{}}}},\"DeleteClusterSecurityGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSecurityGroupName\"],\"members\":{\"ClusterSecurityGroupName\":{}}}},\"DeleteClusterSnapshot\":{\"input\":{\"shape\":\"Sz\"},\"output\":{\"resultWrapper\":\"DeleteClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"Sr\"}}}},\"DeleteClusterSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSubnetGroupName\"],\"members\":{\"ClusterSubnetGroupName\":{}}}},\"DeleteEndpointAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{}}},\"output\":{\"shape\":\"S2z\",\"resultWrapper\":\"DeleteEndpointAccessResult\"}},\"DeleteEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{}}}},\"DeleteHsmClientCertificate\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmClientCertificateIdentifier\"],\"members\":{\"HsmClientCertificateIdentifier\":{}}}},\"DeleteHsmConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"HsmConfigurationIdentifier\"],\"members\":{\"HsmConfigurationIdentifier\":{}}}},\"DeleteScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduledActionName\"],\"members\":{\"ScheduledActionName\":{}}}},\"DeleteSnapshotCopyGrant\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotCopyGrantName\"],\"members\":{\"SnapshotCopyGrantName\":{}}}},\"DeleteSnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduleIdentifier\"],\"members\":{\"ScheduleIdentifier\":{}}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceName\",\"TagKeys\"],\"members\":{\"ResourceName\":{},\"TagKeys\":{\"shape\":\"S4d\"}}}},\"DeleteUsageLimit\":{\"input\":{\"type\":\"structure\",\"required\":[\"UsageLimitId\"],\"members\":{\"UsageLimitId\":{}}}},\"DescribeAccountAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"AttributeNames\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeName\"}}}},\"output\":{\"resultWrapper\":\"DescribeAccountAttributesResult\",\"type\":\"structure\",\"members\":{\"AccountAttributes\":{\"type\":\"list\",\"member\":{\"locationName\":\"AccountAttribute\",\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeValues\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeValueTarget\",\"type\":\"structure\",\"members\":{\"AttributeValue\":{}}}}}}}}}},\"DescribeClusterDbRevisions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeClusterDbRevisionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ClusterDbRevisions\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterDbRevision\",\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"CurrentDatabaseRevision\":{},\"DatabaseRevisionReleaseDate\":{\"type\":\"timestamp\"},\"RevisionTargets\":{\"type\":\"list\",\"member\":{\"locationName\":\"RevisionTarget\",\"type\":\"structure\",\"members\":{\"DatabaseRevision\":{},\"Description\":{},\"DatabaseRevisionReleaseDate\":{\"type\":\"timestamp\"}}}}}}}}}},\"DescribeClusterParameterGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"ParameterGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeClusterParameterGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ParameterGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2k\",\"locationName\":\"ClusterParameterGroup\"}}}}},\"DescribeClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\"],\"members\":{\"ParameterGroupName\":{},\"Source\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeClusterParametersResult\",\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"S4y\"},\"Marker\":{}}}},\"DescribeClusterSecurityGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterSecurityGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeClusterSecurityGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ClusterSecurityGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\",\"locationName\":\"ClusterSecurityGroup\"}}}}},\"DescribeClusterSnapshots\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"SnapshotType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"OwnerAccount\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"},\"ClusterExists\":{\"type\":\"boolean\"},\"SortingEntities\":{\"type\":\"list\",\"member\":{\"locationName\":\"SnapshotSortingEntity\",\"type\":\"structure\",\"required\":[\"Attribute\"],\"members\":{\"Attribute\":{},\"SortOrder\":{}}}}}},\"output\":{\"resultWrapper\":\"DescribeClusterSnapshotsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Snapshots\":{\"type\":\"list\",\"member\":{\"shape\":\"Sr\",\"locationName\":\"Snapshot\"}}}}},\"DescribeClusterSubnetGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterSubnetGroupName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeClusterSubnetGroupsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ClusterSubnetGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2s\",\"locationName\":\"ClusterSubnetGroup\"}}}}},\"DescribeClusterTracks\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaintenanceTrackName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeClusterTracksResult\",\"type\":\"structure\",\"members\":{\"MaintenanceTracks\":{\"type\":\"list\",\"member\":{\"locationName\":\"MaintenanceTrack\",\"type\":\"structure\",\"members\":{\"MaintenanceTrackName\":{},\"DatabaseVersion\":{},\"UpdateTargets\":{\"type\":\"list\",\"member\":{\"locationName\":\"UpdateTarget\",\"type\":\"structure\",\"members\":{\"MaintenanceTrackName\":{},\"DatabaseVersion\":{},\"SupportedOperations\":{\"type\":\"list\",\"member\":{\"locationName\":\"SupportedOperation\",\"type\":\"structure\",\"members\":{\"OperationName\":{}}}}}}}}}},\"Marker\":{}}}},\"DescribeClusterVersions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterVersion\":{},\"ClusterParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeClusterVersionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ClusterVersions\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterVersion\",\"type\":\"structure\",\"members\":{\"ClusterVersion\":{},\"ClusterParameterGroupFamily\":{},\"Description\":{}}}}}}},\"DescribeClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeClustersResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Clusters\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\",\"locationName\":\"Cluster\"}}}}},\"DescribeDefaultClusterParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupFamily\"],\"members\":{\"ParameterGroupFamily\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeDefaultClusterParametersResult\",\"type\":\"structure\",\"members\":{\"DefaultClusterParameters\":{\"type\":\"structure\",\"members\":{\"ParameterGroupFamily\":{},\"Marker\":{},\"Parameters\":{\"shape\":\"S4y\"}},\"wrapper\":true}}}},\"DescribeEndpointAccess\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"ResourceOwner\":{},\"EndpointName\":{},\"VpcId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEndpointAccessResult\",\"type\":\"structure\",\"members\":{\"EndpointAccessList\":{\"type\":\"list\",\"member\":{\"shape\":\"S2z\"}},\"Marker\":{}}}},\"DescribeEndpointAuthorization\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"Account\":{},\"Grantee\":{\"type\":\"boolean\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEndpointAuthorizationResult\",\"type\":\"structure\",\"members\":{\"EndpointAuthorizationList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}},\"Marker\":{}}}},\"DescribeEventCategories\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceType\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventCategoriesResult\",\"type\":\"structure\",\"members\":{\"EventCategoriesMapList\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategoriesMap\",\"type\":\"structure\",\"members\":{\"SourceType\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventInfoMap\",\"type\":\"structure\",\"members\":{\"EventId\":{},\"EventCategories\":{\"shape\":\"S32\"},\"EventDescription\":{},\"Severity\":{}},\"wrapper\":true}}},\"wrapper\":true}}}}},\"DescribeEventSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubscriptionName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeEventSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"EventSubscriptionsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S34\",\"locationName\":\"EventSubscription\"}}}}},\"DescribeEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeEventsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"Events\":{\"type\":\"list\",\"member\":{\"locationName\":\"Event\",\"type\":\"structure\",\"members\":{\"SourceIdentifier\":{},\"SourceType\":{},\"Message\":{},\"EventCategories\":{\"shape\":\"S32\"},\"Severity\":{},\"Date\":{\"type\":\"timestamp\"},\"EventId\":{}}}}}}},\"DescribeHsmClientCertificates\":{\"input\":{\"type\":\"structure\",\"members\":{\"HsmClientCertificateIdentifier\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeHsmClientCertificatesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"HsmClientCertificates\":{\"type\":\"list\",\"member\":{\"shape\":\"S37\",\"locationName\":\"HsmClientCertificate\"}}}}},\"DescribeHsmConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"HsmConfigurationIdentifier\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeHsmConfigurationsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"HsmConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S3a\",\"locationName\":\"HsmConfiguration\"}}}}},\"DescribeLoggingStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"shape\":\"S6n\",\"resultWrapper\":\"DescribeLoggingStatusResult\"}},\"DescribeNodeConfigurationOptions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActionType\"],\"members\":{\"ActionType\":{},\"ClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"OwnerAccount\":{},\"Filters\":{\"locationName\":\"Filter\",\"type\":\"list\",\"member\":{\"locationName\":\"NodeConfigurationOptionsFilter\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Operator\":{},\"Values\":{\"shape\":\"S6u\",\"locationName\":\"Value\"}}}},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeNodeConfigurationOptionsResult\",\"type\":\"structure\",\"members\":{\"NodeConfigurationOptionList\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeConfigurationOption\",\"type\":\"structure\",\"members\":{\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"EstimatedDiskUtilizationPercent\":{\"type\":\"double\"},\"Mode\":{}}}},\"Marker\":{}}}},\"DescribeOrderableClusterOptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterVersion\":{},\"NodeType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeOrderableClusterOptionsResult\",\"type\":\"structure\",\"members\":{\"OrderableClusterOptions\":{\"type\":\"list\",\"member\":{\"locationName\":\"OrderableClusterOption\",\"type\":\"structure\",\"members\":{\"ClusterVersion\":{},\"ClusterType\":{},\"NodeType\":{},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"shape\":\"S2v\",\"locationName\":\"AvailabilityZone\"}}},\"wrapper\":true}},\"Marker\":{}}}},\"DescribeReservedNodeOfferings\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedNodeOfferingId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedNodeOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedNodeOfferings\":{\"shape\":\"S76\"}}}},\"DescribeReservedNodes\":{\"input\":{\"type\":\"structure\",\"members\":{\"ReservedNodeId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeReservedNodesResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedNodes\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\",\"locationName\":\"ReservedNode\"}}}}},\"DescribeResize\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"shape\":\"S18\",\"resultWrapper\":\"DescribeResizeResult\"}},\"DescribeScheduledActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"ScheduledActionName\":{},\"TargetActionType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Active\":{\"type\":\"boolean\"},\"Filters\":{\"type\":\"list\",\"member\":{\"locationName\":\"ScheduledActionFilter\",\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S6u\"}}}},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeScheduledActionsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ScheduledActions\":{\"type\":\"list\",\"member\":{\"shape\":\"S3g\",\"locationName\":\"ScheduledAction\"}}}}},\"DescribeSnapshotCopyGrants\":{\"input\":{\"type\":\"structure\",\"members\":{\"SnapshotCopyGrantName\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeSnapshotCopyGrantsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"SnapshotCopyGrants\":{\"type\":\"list\",\"member\":{\"shape\":\"S3l\",\"locationName\":\"SnapshotCopyGrant\"}}}}},\"DescribeSnapshotSchedules\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"ScheduleIdentifier\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"},\"Marker\":{},\"MaxRecords\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"DescribeSnapshotSchedulesResult\",\"type\":\"structure\",\"members\":{\"SnapshotSchedules\":{\"type\":\"list\",\"member\":{\"shape\":\"S3o\",\"locationName\":\"SnapshotSchedule\"}},\"Marker\":{}}}},\"DescribeStorage\":{\"output\":{\"resultWrapper\":\"DescribeStorageResult\",\"type\":\"structure\",\"members\":{\"TotalBackupSizeInMegaBytes\":{\"type\":\"double\"},\"TotalProvisionedStorageInMegaBytes\":{\"type\":\"double\"}}}},\"DescribeTableRestoreStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"TableRestoreRequestId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"DescribeTableRestoreStatusResult\",\"type\":\"structure\",\"members\":{\"TableRestoreStatusDetails\":{\"type\":\"list\",\"member\":{\"shape\":\"S7t\",\"locationName\":\"TableRestoreStatus\"}},\"Marker\":{}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceName\":{},\"ResourceType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeTagsResult\",\"type\":\"structure\",\"members\":{\"TaggedResources\":{\"type\":\"list\",\"member\":{\"locationName\":\"TaggedResource\",\"type\":\"structure\",\"members\":{\"Tag\":{\"shape\":\"Sh\"},\"ResourceName\":{},\"ResourceType\":{}}}},\"Marker\":{}}}},\"DescribeUsageLimits\":{\"input\":{\"type\":\"structure\",\"members\":{\"UsageLimitId\":{},\"ClusterIdentifier\":{},\"FeatureType\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{},\"TagKeys\":{\"shape\":\"S4d\"},\"TagValues\":{\"shape\":\"S4t\"}}},\"output\":{\"resultWrapper\":\"DescribeUsageLimitsResult\",\"type\":\"structure\",\"members\":{\"UsageLimits\":{\"type\":\"list\",\"member\":{\"shape\":\"S3y\"}},\"Marker\":{}}}},\"DisableLogging\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"shape\":\"S6n\",\"resultWrapper\":\"DisableLoggingResult\"}},\"DisableSnapshotCopy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"DisableSnapshotCopyResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"EnableLogging\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"BucketName\"],\"members\":{\"ClusterIdentifier\":{},\"BucketName\":{},\"S3KeyPrefix\":{}}},\"output\":{\"shape\":\"S6n\",\"resultWrapper\":\"EnableLoggingResult\"}},\"EnableSnapshotCopy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"DestinationRegion\"],\"members\":{\"ClusterIdentifier\":{},\"DestinationRegion\":{},\"RetentionPeriod\":{\"type\":\"integer\"},\"SnapshotCopyGrantName\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"EnableSnapshotCopyResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"GetClusterCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"DbUser\",\"ClusterIdentifier\"],\"members\":{\"DbUser\":{},\"DbName\":{},\"ClusterIdentifier\":{},\"DurationSeconds\":{\"type\":\"integer\"},\"AutoCreate\":{\"type\":\"boolean\"},\"DbGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"DbGroup\"}}}},\"output\":{\"resultWrapper\":\"GetClusterCredentialsResult\",\"type\":\"structure\",\"members\":{\"DbUser\":{},\"DbPassword\":{\"type\":\"string\",\"sensitive\":true},\"Expiration\":{\"type\":\"timestamp\"}}}},\"GetReservedNodeExchangeOfferings\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedNodeId\"],\"members\":{\"ReservedNodeId\":{},\"MaxRecords\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"resultWrapper\":\"GetReservedNodeExchangeOfferingsResult\",\"type\":\"structure\",\"members\":{\"Marker\":{},\"ReservedNodeOfferings\":{\"shape\":\"S76\"}}}},\"ModifyAquaConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"AquaConfigurationStatus\":{}}},\"output\":{\"resultWrapper\":\"ModifyAquaConfigurationResult\",\"type\":\"structure\",\"members\":{\"AquaConfiguration\":{\"shape\":\"S2g\"}}}},\"ModifyCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"ClusterType\":{},\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"ClusterSecurityGroups\":{\"shape\":\"S1h\"},\"VpcSecurityGroupIds\":{\"shape\":\"S1i\"},\"MasterUserPassword\":{},\"ClusterParameterGroupName\":{},\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"PreferredMaintenanceWindow\":{},\"ClusterVersion\":{},\"AllowVersionUpgrade\":{\"type\":\"boolean\"},\"HsmClientCertificateIdentifier\":{},\"HsmConfigurationIdentifier\":{},\"NewClusterIdentifier\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"ElasticIp\":{},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"MaintenanceTrackName\":{},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"AvailabilityZoneRelocation\":{\"type\":\"boolean\"},\"AvailabilityZone\":{},\"Port\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ModifyClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"ModifyClusterDbRevision\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"RevisionTarget\"],\"members\":{\"ClusterIdentifier\":{},\"RevisionTarget\":{}}},\"output\":{\"resultWrapper\":\"ModifyClusterDbRevisionResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"ModifyClusterIamRoles\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"AddIamRoles\":{\"shape\":\"S1k\"},\"RemoveIamRoles\":{\"shape\":\"S1k\"}}},\"output\":{\"resultWrapper\":\"ModifyClusterIamRolesResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"ModifyClusterMaintenance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"DeferMaintenance\":{\"type\":\"boolean\"},\"DeferMaintenanceIdentifier\":{},\"DeferMaintenanceStartTime\":{\"type\":\"timestamp\"},\"DeferMaintenanceEndTime\":{\"type\":\"timestamp\"},\"DeferMaintenanceDuration\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ModifyClusterMaintenanceResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"ModifyClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\",\"Parameters\"],\"members\":{\"ParameterGroupName\":{},\"Parameters\":{\"shape\":\"S4y\"}}},\"output\":{\"shape\":\"S8p\",\"resultWrapper\":\"ModifyClusterParameterGroupResult\"}},\"ModifyClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotIdentifier\"],\"members\":{\"SnapshotIdentifier\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"Sr\"}}}},\"ModifyClusterSnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"ScheduleIdentifier\":{},\"DisassociateSchedule\":{\"type\":\"boolean\"}}}},\"ModifyClusterSubnetGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSubnetGroupName\",\"SubnetIds\"],\"members\":{\"ClusterSubnetGroupName\":{},\"Description\":{},\"SubnetIds\":{\"shape\":\"S2q\"}}},\"output\":{\"resultWrapper\":\"ModifyClusterSubnetGroupResult\",\"type\":\"structure\",\"members\":{\"ClusterSubnetGroup\":{\"shape\":\"S2s\"}}}},\"ModifyEndpointAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{},\"VpcSecurityGroupIds\":{\"shape\":\"S1i\"}}},\"output\":{\"shape\":\"S2z\",\"resultWrapper\":\"ModifyEndpointAccessResult\"}},\"ModifyEventSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionName\"],\"members\":{\"SubscriptionName\":{},\"SnsTopicArn\":{},\"SourceType\":{},\"SourceIds\":{\"shape\":\"S31\"},\"EventCategories\":{\"shape\":\"S32\"},\"Severity\":{},\"Enabled\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifyEventSubscriptionResult\",\"type\":\"structure\",\"members\":{\"EventSubscription\":{\"shape\":\"S34\"}}}},\"ModifyScheduledAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduledActionName\"],\"members\":{\"ScheduledActionName\":{},\"TargetAction\":{\"shape\":\"S3c\"},\"Schedule\":{},\"IamRole\":{},\"ScheduledActionDescription\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Enable\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S3g\",\"resultWrapper\":\"ModifyScheduledActionResult\"}},\"ModifySnapshotCopyRetentionPeriod\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"RetentionPeriod\"],\"members\":{\"ClusterIdentifier\":{},\"RetentionPeriod\":{\"type\":\"integer\"},\"Manual\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"ModifySnapshotCopyRetentionPeriodResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"ModifySnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ScheduleIdentifier\",\"ScheduleDefinitions\"],\"members\":{\"ScheduleIdentifier\":{},\"ScheduleDefinitions\":{\"shape\":\"S3n\"}}},\"output\":{\"shape\":\"S3o\",\"resultWrapper\":\"ModifySnapshotScheduleResult\"}},\"ModifyUsageLimit\":{\"input\":{\"type\":\"structure\",\"required\":[\"UsageLimitId\"],\"members\":{\"UsageLimitId\":{},\"Amount\":{\"type\":\"long\"},\"BreachAction\":{}}},\"output\":{\"shape\":\"S3y\",\"resultWrapper\":\"ModifyUsageLimitResult\"}},\"PauseCluster\":{\"input\":{\"shape\":\"S3e\"},\"output\":{\"resultWrapper\":\"PauseClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"PurchaseReservedNodeOffering\":{\"input\":{\"type\":\"structure\",\"required\":[\"ReservedNodeOfferingId\"],\"members\":{\"ReservedNodeOfferingId\":{},\"NodeCount\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"PurchaseReservedNodeOfferingResult\",\"type\":\"structure\",\"members\":{\"ReservedNode\":{\"shape\":\"S4\"}}}},\"RebootCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RebootClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"ResetClusterParameterGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ParameterGroupName\"],\"members\":{\"ParameterGroupName\":{},\"ResetAllParameters\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S4y\"}}},\"output\":{\"shape\":\"S8p\",\"resultWrapper\":\"ResetClusterParameterGroupResult\"}},\"ResizeCluster\":{\"input\":{\"shape\":\"S3d\"},\"output\":{\"resultWrapper\":\"ResizeClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"RestoreFromClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"SnapshotIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"SnapshotClusterIdentifier\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"AllowVersionUpgrade\":{\"type\":\"boolean\"},\"ClusterSubnetGroupName\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"OwnerAccount\":{},\"HsmClientCertificateIdentifier\":{},\"HsmConfigurationIdentifier\":{},\"ElasticIp\":{},\"ClusterParameterGroupName\":{},\"ClusterSecurityGroups\":{\"shape\":\"S1h\"},\"VpcSecurityGroupIds\":{\"shape\":\"S1i\"},\"PreferredMaintenanceWindow\":{},\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"KmsKeyId\":{},\"NodeType\":{},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"AdditionalInfo\":{},\"IamRoles\":{\"shape\":\"S1k\"},\"MaintenanceTrackName\":{},\"SnapshotScheduleIdentifier\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"AvailabilityZoneRelocation\":{\"type\":\"boolean\"},\"AquaConfigurationStatus\":{}}},\"output\":{\"resultWrapper\":\"RestoreFromClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"RestoreTableFromClusterSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"SnapshotIdentifier\",\"SourceDatabaseName\",\"SourceTableName\",\"NewTableName\"],\"members\":{\"ClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"SourceDatabaseName\":{},\"SourceSchemaName\":{},\"SourceTableName\":{},\"TargetDatabaseName\":{},\"TargetSchemaName\":{},\"NewTableName\":{},\"EnableCaseSensitiveIdentifier\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"RestoreTableFromClusterSnapshotResult\",\"type\":\"structure\",\"members\":{\"TableRestoreStatus\":{\"shape\":\"S7t\"}}}},\"ResumeCluster\":{\"input\":{\"shape\":\"S3f\"},\"output\":{\"resultWrapper\":\"ResumeClusterResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}},\"RevokeClusterSecurityGroupIngress\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterSecurityGroupName\"],\"members\":{\"ClusterSecurityGroupName\":{},\"CIDRIP\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupOwnerId\":{}}},\"output\":{\"resultWrapper\":\"RevokeClusterSecurityGroupIngressResult\",\"type\":\"structure\",\"members\":{\"ClusterSecurityGroup\":{\"shape\":\"Sd\"}}}},\"RevokeEndpointAccess\":{\"input\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"Account\":{},\"VpcIds\":{\"shape\":\"Sl\"},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"Sm\",\"resultWrapper\":\"RevokeEndpointAccessResult\"}},\"RevokeSnapshotAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"SnapshotIdentifier\",\"AccountWithRestoreAccess\"],\"members\":{\"SnapshotIdentifier\":{},\"SnapshotClusterIdentifier\":{},\"AccountWithRestoreAccess\":{}}},\"output\":{\"resultWrapper\":\"RevokeSnapshotAccessResult\",\"type\":\"structure\",\"members\":{\"Snapshot\":{\"shape\":\"Sr\"}}}},\"RotateEncryptionKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"output\":{\"resultWrapper\":\"RotateEncryptionKeyResult\",\"type\":\"structure\",\"members\":{\"Cluster\":{\"shape\":\"S1n\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"ReservedNodeId\":{},\"ReservedNodeOfferingId\":{},\"NodeType\":{},\"StartTime\":{\"type\":\"timestamp\"},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"NodeCount\":{\"type\":\"integer\"},\"State\":{},\"OfferingType\":{},\"RecurringCharges\":{\"shape\":\"S8\"},\"ReservedNodeOfferingType\":{}},\"wrapper\":true},\"S8\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecurringCharge\",\"type\":\"structure\",\"members\":{\"RecurringChargeAmount\":{\"type\":\"double\"},\"RecurringChargeFrequency\":{}},\"wrapper\":true}},\"Sd\":{\"type\":\"structure\",\"members\":{\"ClusterSecurityGroupName\":{},\"Description\":{},\"EC2SecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"EC2SecurityGroup\",\"type\":\"structure\",\"members\":{\"Status\":{},\"EC2SecurityGroupName\":{},\"EC2SecurityGroupOwnerId\":{},\"Tags\":{\"shape\":\"Sg\"}}}},\"IPRanges\":{\"type\":\"list\",\"member\":{\"locationName\":\"IPRange\",\"type\":\"structure\",\"members\":{\"Status\":{},\"CIDRIP\":{},\"Tags\":{\"shape\":\"Sg\"}}}},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"Sg\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\",\"locationName\":\"Tag\"}},\"Sh\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}},\"Sl\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcIdentifier\"}},\"Sm\":{\"type\":\"structure\",\"members\":{\"Grantor\":{},\"Grantee\":{},\"ClusterIdentifier\":{},\"AuthorizeTime\":{\"type\":\"timestamp\"},\"ClusterStatus\":{},\"Status\":{},\"AllowedAllVPCs\":{\"type\":\"boolean\"},\"AllowedVPCs\":{\"shape\":\"Sl\"},\"EndpointCount\":{\"type\":\"integer\"}}},\"Sr\":{\"type\":\"structure\",\"members\":{\"SnapshotIdentifier\":{},\"ClusterIdentifier\":{},\"SnapshotCreateTime\":{\"type\":\"timestamp\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"MasterUsername\":{},\"ClusterVersion\":{},\"EngineFullVersion\":{},\"SnapshotType\":{},\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"DBName\":{},\"VpcId\":{},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"EncryptedWithHSM\":{\"type\":\"boolean\"},\"AccountsWithRestoreAccess\":{\"type\":\"list\",\"member\":{\"locationName\":\"AccountWithRestoreAccess\",\"type\":\"structure\",\"members\":{\"AccountId\":{},\"AccountAlias\":{}}}},\"OwnerAccount\":{},\"TotalBackupSizeInMegaBytes\":{\"type\":\"double\"},\"ActualIncrementalBackupSizeInMegaBytes\":{\"type\":\"double\"},\"BackupProgressInMegaBytes\":{\"type\":\"double\"},\"CurrentBackupRateInMegaBytesPerSecond\":{\"type\":\"double\"},\"EstimatedSecondsToCompletion\":{\"type\":\"long\"},\"ElapsedTimeInSeconds\":{\"type\":\"long\"},\"SourceRegion\":{},\"Tags\":{\"shape\":\"Sg\"},\"RestorableNodeTypes\":{\"type\":\"list\",\"member\":{\"locationName\":\"NodeType\"}},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"MaintenanceTrackName\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ManualSnapshotRemainingDays\":{\"type\":\"integer\"},\"SnapshotRetentionStartTime\":{\"type\":\"timestamp\"}},\"wrapper\":true},\"Sz\":{\"type\":\"structure\",\"required\":[\"SnapshotIdentifier\"],\"members\":{\"SnapshotIdentifier\":{},\"SnapshotClusterIdentifier\":{}}},\"S11\":{\"type\":\"list\",\"member\":{\"locationName\":\"String\"}},\"S13\":{\"type\":\"structure\",\"members\":{\"SnapshotIdentifier\":{},\"SnapshotClusterIdentifier\":{},\"FailureCode\":{},\"FailureReason\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"TargetNodeType\":{},\"TargetNumberOfNodes\":{\"type\":\"integer\"},\"TargetClusterType\":{},\"Status\":{},\"ImportTablesCompleted\":{\"type\":\"list\",\"member\":{}},\"ImportTablesInProgress\":{\"type\":\"list\",\"member\":{}},\"ImportTablesNotStarted\":{\"type\":\"list\",\"member\":{}},\"AvgResizeRateInMegaBytesPerSecond\":{\"type\":\"double\"},\"TotalResizeDataInMegaBytes\":{\"type\":\"long\"},\"ProgressInMegaBytes\":{\"type\":\"long\"},\"ElapsedTimeInSeconds\":{\"type\":\"long\"},\"EstimatedTimeToCompletionInSeconds\":{\"type\":\"long\"},\"ResizeType\":{},\"Message\":{},\"TargetEncryptionType\":{},\"DataTransferProgressPercent\":{\"type\":\"double\"}}},\"S1h\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterSecurityGroupName\"}},\"S1i\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroupId\"}},\"S1k\":{\"type\":\"list\",\"member\":{\"locationName\":\"IamRoleArn\"}},\"S1n\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"NodeType\":{},\"ClusterStatus\":{},\"ClusterAvailabilityStatus\":{},\"ModifyStatus\":{},\"MasterUsername\":{},\"DBName\":{},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"},\"VpcEndpoints\":{\"type\":\"list\",\"member\":{\"shape\":\"S1q\",\"locationName\":\"VpcEndpoint\"}}}},\"ClusterCreateTime\":{\"type\":\"timestamp\"},\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ClusterSecurityGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterSecurityGroup\",\"type\":\"structure\",\"members\":{\"ClusterSecurityGroupName\":{},\"Status\":{}}}},\"VpcSecurityGroups\":{\"shape\":\"S1v\"},\"ClusterParameterGroups\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterParameterGroup\",\"type\":\"structure\",\"members\":{\"ParameterGroupName\":{},\"ParameterApplyStatus\":{},\"ClusterParameterStatusList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterApplyStatus\":{},\"ParameterApplyErrorDescription\":{}}}}}}},\"ClusterSubnetGroupName\":{},\"VpcId\":{},\"AvailabilityZone\":{},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"MasterUserPassword\":{},\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"ClusterType\":{},\"ClusterVersion\":{},\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ClusterIdentifier\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"MaintenanceTrackName\":{},\"EncryptionType\":{}}},\"ClusterVersion\":{},\"AllowVersionUpgrade\":{\"type\":\"boolean\"},\"NumberOfNodes\":{\"type\":\"integer\"},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"Encrypted\":{\"type\":\"boolean\"},\"RestoreStatus\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"CurrentRestoreRateInMegaBytesPerSecond\":{\"type\":\"double\"},\"SnapshotSizeInMegaBytes\":{\"type\":\"long\"},\"ProgressInMegaBytes\":{\"type\":\"long\"},\"ElapsedTimeInSeconds\":{\"type\":\"long\"},\"EstimatedTimeToCompletionInSeconds\":{\"type\":\"long\"}}},\"DataTransferProgress\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"CurrentRateInMegaBytesPerSecond\":{\"type\":\"double\"},\"TotalDataInMegaBytes\":{\"type\":\"long\"},\"DataTransferredInMegaBytes\":{\"type\":\"long\"},\"EstimatedTimeToCompletionInSeconds\":{\"type\":\"long\"},\"ElapsedTimeInSeconds\":{\"type\":\"long\"}}},\"HsmStatus\":{\"type\":\"structure\",\"members\":{\"HsmClientCertificateIdentifier\":{},\"HsmConfigurationIdentifier\":{},\"Status\":{}}},\"ClusterSnapshotCopyStatus\":{\"type\":\"structure\",\"members\":{\"DestinationRegion\":{},\"RetentionPeriod\":{\"type\":\"long\"},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"SnapshotCopyGrantName\":{}}},\"ClusterPublicKey\":{},\"ClusterNodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NodeRole\":{},\"PrivateIPAddress\":{},\"PublicIPAddress\":{}}}},\"ElasticIpStatus\":{\"type\":\"structure\",\"members\":{\"ElasticIp\":{},\"Status\":{}}},\"ClusterRevisionNumber\":{},\"Tags\":{\"shape\":\"Sg\"},\"KmsKeyId\":{},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"IamRoles\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterIamRole\",\"type\":\"structure\",\"members\":{\"IamRoleArn\":{},\"ApplyStatus\":{}}}},\"PendingActions\":{\"type\":\"list\",\"member\":{}},\"MaintenanceTrackName\":{},\"ElasticResizeNumberOfNodeOptions\":{},\"DeferredMaintenanceWindows\":{\"type\":\"list\",\"member\":{\"locationName\":\"DeferredMaintenanceWindow\",\"type\":\"structure\",\"members\":{\"DeferMaintenanceIdentifier\":{},\"DeferMaintenanceStartTime\":{\"type\":\"timestamp\"},\"DeferMaintenanceEndTime\":{\"type\":\"timestamp\"}}}},\"SnapshotScheduleIdentifier\":{},\"SnapshotScheduleState\":{},\"ExpectedNextSnapshotScheduleTime\":{\"type\":\"timestamp\"},\"ExpectedNextSnapshotScheduleTimeStatus\":{},\"NextMaintenanceWindowStartTime\":{\"type\":\"timestamp\"},\"ResizeInfo\":{\"type\":\"structure\",\"members\":{\"ResizeType\":{},\"AllowCancelResize\":{\"type\":\"boolean\"}}},\"AvailabilityZoneRelocationStatus\":{},\"ClusterNamespaceArn\":{},\"TotalStorageCapacityInMegaBytes\":{\"type\":\"long\"},\"AquaConfiguration\":{\"shape\":\"S2g\"}},\"wrapper\":true},\"S1q\":{\"type\":\"structure\",\"members\":{\"VpcEndpointId\":{},\"VpcId\":{},\"NetworkInterfaces\":{\"type\":\"list\",\"member\":{\"locationName\":\"NetworkInterface\",\"type\":\"structure\",\"members\":{\"NetworkInterfaceId\":{},\"SubnetId\":{},\"PrivateIpAddress\":{},\"AvailabilityZone\":{}}}}}},\"S1v\":{\"type\":\"list\",\"member\":{\"locationName\":\"VpcSecurityGroup\",\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S2g\":{\"type\":\"structure\",\"members\":{\"AquaStatus\":{},\"AquaConfigurationStatus\":{}}},\"S2k\":{\"type\":\"structure\",\"members\":{\"ParameterGroupName\":{},\"ParameterGroupFamily\":{},\"Description\":{},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"S2q\":{\"type\":\"list\",\"member\":{\"locationName\":\"SubnetIdentifier\"}},\"S2s\":{\"type\":\"structure\",\"members\":{\"ClusterSubnetGroupName\":{},\"Description\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Subnet\",\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"shape\":\"S2v\"},\"SubnetStatus\":{}}}},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"S2v\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"SupportedPlatforms\":{\"type\":\"list\",\"member\":{\"locationName\":\"SupportedPlatform\",\"type\":\"structure\",\"members\":{\"Name\":{}},\"wrapper\":true}}},\"wrapper\":true},\"S2z\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"ResourceOwner\":{},\"SubnetGroupName\":{},\"EndpointStatus\":{},\"EndpointName\":{},\"EndpointCreateTime\":{\"type\":\"timestamp\"},\"Port\":{\"type\":\"integer\"},\"Address\":{},\"VpcSecurityGroups\":{\"shape\":\"S1v\"},\"VpcEndpoint\":{\"shape\":\"S1q\"}}},\"S31\":{\"type\":\"list\",\"member\":{\"locationName\":\"SourceId\"}},\"S32\":{\"type\":\"list\",\"member\":{\"locationName\":\"EventCategory\"}},\"S34\":{\"type\":\"structure\",\"members\":{\"CustomerAwsId\":{},\"CustSubscriptionId\":{},\"SnsTopicArn\":{},\"Status\":{},\"SubscriptionCreationTime\":{\"type\":\"timestamp\"},\"SourceType\":{},\"SourceIdsList\":{\"shape\":\"S31\"},\"EventCategoriesList\":{\"shape\":\"S32\"},\"Severity\":{},\"Enabled\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"S37\":{\"type\":\"structure\",\"members\":{\"HsmClientCertificateIdentifier\":{},\"HsmClientCertificatePublicKey\":{},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"S3a\":{\"type\":\"structure\",\"members\":{\"HsmConfigurationIdentifier\":{},\"Description\":{},\"HsmIpAddress\":{},\"HsmPartitionName\":{},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"S3c\":{\"type\":\"structure\",\"members\":{\"ResizeCluster\":{\"shape\":\"S3d\"},\"PauseCluster\":{\"shape\":\"S3e\"},\"ResumeCluster\":{\"shape\":\"S3f\"}}},\"S3d\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"ClusterType\":{},\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"Classic\":{\"type\":\"boolean\"}}},\"S3e\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"S3f\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{}}},\"S3g\":{\"type\":\"structure\",\"members\":{\"ScheduledActionName\":{},\"TargetAction\":{\"shape\":\"S3c\"},\"Schedule\":{},\"IamRole\":{},\"ScheduledActionDescription\":{},\"State\":{},\"NextInvocations\":{\"type\":\"list\",\"member\":{\"locationName\":\"ScheduledActionTime\",\"type\":\"timestamp\"}},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"S3l\":{\"type\":\"structure\",\"members\":{\"SnapshotCopyGrantName\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"Sg\"}},\"wrapper\":true},\"S3n\":{\"type\":\"list\",\"member\":{\"locationName\":\"ScheduleDefinition\"}},\"S3o\":{\"type\":\"structure\",\"members\":{\"ScheduleDefinitions\":{\"shape\":\"S3n\"},\"ScheduleIdentifier\":{},\"ScheduleDescription\":{},\"Tags\":{\"shape\":\"Sg\"},\"NextInvocations\":{\"type\":\"list\",\"member\":{\"locationName\":\"SnapshotTime\",\"type\":\"timestamp\"}},\"AssociatedClusterCount\":{\"type\":\"integer\"},\"AssociatedClusters\":{\"type\":\"list\",\"member\":{\"locationName\":\"ClusterAssociatedToSchedule\",\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"ScheduleAssociationState\":{}}}}}},\"S3y\":{\"type\":\"structure\",\"members\":{\"UsageLimitId\":{},\"ClusterIdentifier\":{},\"FeatureType\":{},\"LimitType\":{},\"Amount\":{\"type\":\"long\"},\"Period\":{},\"BreachAction\":{},\"Tags\":{\"shape\":\"Sg\"}}},\"S4d\":{\"type\":\"list\",\"member\":{\"locationName\":\"TagKey\"}},\"S4t\":{\"type\":\"list\",\"member\":{\"locationName\":\"TagValue\"}},\"S4y\":{\"type\":\"list\",\"member\":{\"locationName\":\"Parameter\",\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterValue\":{},\"Description\":{},\"Source\":{},\"DataType\":{},\"AllowedValues\":{},\"ApplyType\":{},\"IsModifiable\":{\"type\":\"boolean\"},\"MinimumEngineVersion\":{}}}},\"S6n\":{\"type\":\"structure\",\"members\":{\"LoggingEnabled\":{\"type\":\"boolean\"},\"BucketName\":{},\"S3KeyPrefix\":{},\"LastSuccessfulDeliveryTime\":{\"type\":\"timestamp\"},\"LastFailureTime\":{\"type\":\"timestamp\"},\"LastFailureMessage\":{}}},\"S6u\":{\"type\":\"list\",\"member\":{\"locationName\":\"item\"}},\"S76\":{\"type\":\"list\",\"member\":{\"locationName\":\"ReservedNodeOffering\",\"type\":\"structure\",\"members\":{\"ReservedNodeOfferingId\":{},\"NodeType\":{},\"Duration\":{\"type\":\"integer\"},\"FixedPrice\":{\"type\":\"double\"},\"UsagePrice\":{\"type\":\"double\"},\"CurrencyCode\":{},\"OfferingType\":{},\"RecurringCharges\":{\"shape\":\"S8\"},\"ReservedNodeOfferingType\":{}},\"wrapper\":true}},\"S7t\":{\"type\":\"structure\",\"members\":{\"TableRestoreRequestId\":{},\"Status\":{},\"Message\":{},\"RequestTime\":{\"type\":\"timestamp\"},\"ProgressInMegaBytes\":{\"type\":\"long\"},\"TotalDataInMegaBytes\":{\"type\":\"long\"},\"ClusterIdentifier\":{},\"SnapshotIdentifier\":{},\"SourceDatabaseName\":{},\"SourceSchemaName\":{},\"SourceTableName\":{},\"TargetDatabaseName\":{},\"TargetSchemaName\":{},\"NewTableName\":{}},\"wrapper\":true},\"S8p\":{\"type\":\"structure\",\"members\":{\"ParameterGroupName\":{},\"ParameterGroupStatus\":{}}}}}");

/***/ }),

/***/ 7755:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeClusterDbRevisions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ClusterDbRevisions\"},\"DescribeClusterParameterGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ParameterGroups\"},\"DescribeClusterParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Parameters\"},\"DescribeClusterSecurityGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ClusterSecurityGroups\"},\"DescribeClusterSnapshots\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Snapshots\"},\"DescribeClusterSubnetGroups\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ClusterSubnetGroups\"},\"DescribeClusterTracks\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"MaintenanceTracks\"},\"DescribeClusterVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ClusterVersions\"},\"DescribeClusters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Clusters\"},\"DescribeDefaultClusterParameters\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"DefaultClusterParameters.Marker\",\"result_key\":\"DefaultClusterParameters.Parameters\"},\"DescribeEventSubscriptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"EventSubscriptionsList\"},\"DescribeEvents\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"Events\"},\"DescribeHsmClientCertificates\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"HsmClientCertificates\"},\"DescribeHsmConfigurations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"HsmConfigurations\"},\"DescribeNodeConfigurationOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"NodeConfigurationOptionList\"},\"DescribeOrderableClusterOptions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"OrderableClusterOptions\"},\"DescribeReservedNodeOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedNodeOfferings\"},\"DescribeReservedNodes\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedNodes\"},\"DescribeScheduledActions\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ScheduledActions\"},\"DescribeSnapshotCopyGrants\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"SnapshotCopyGrants\"},\"DescribeSnapshotSchedules\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"SnapshotSchedules\"},\"DescribeTableRestoreStatus\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"TableRestoreStatusDetails\"},\"DescribeTags\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"TaggedResources\"},\"DescribeUsageLimits\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"UsageLimits\"},\"GetReservedNodeExchangeOfferings\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxRecords\",\"output_token\":\"Marker\",\"result_key\":\"ReservedNodeOfferings\"}}}");

/***/ }),

/***/ 91400:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ClusterAvailable\":{\"delay\":60,\"operation\":\"DescribeClusters\",\"maxAttempts\":30,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Clusters[].ClusterStatus\"},{\"expected\":\"deleting\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Clusters[].ClusterStatus\"},{\"expected\":\"ClusterNotFound\",\"matcher\":\"error\",\"state\":\"retry\"}]},\"ClusterDeleted\":{\"delay\":60,\"operation\":\"DescribeClusters\",\"maxAttempts\":30,\"acceptors\":[{\"expected\":\"ClusterNotFound\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"creating\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Clusters[].ClusterStatus\"},{\"expected\":\"modifying\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Clusters[].ClusterStatus\"}]},\"ClusterRestored\":{\"operation\":\"DescribeClusters\",\"maxAttempts\":30,\"delay\":60,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"Clusters[].RestoreStatus.Status\",\"expected\":\"completed\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"Clusters[].ClusterStatus\",\"expected\":\"deleting\"}]},\"SnapshotAvailable\":{\"delay\":15,\"operation\":\"DescribeClusterSnapshots\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":\"available\",\"matcher\":\"pathAll\",\"state\":\"success\",\"argument\":\"Snapshots[].Status\"},{\"expected\":\"failed\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Snapshots[].Status\"},{\"expected\":\"deleted\",\"matcher\":\"pathAny\",\"state\":\"failure\",\"argument\":\"Snapshots[].Status\"}]}}}");

/***/ }),

/***/ 34805:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-12-20\",\"endpointPrefix\":\"redshift-data\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Redshift Data API Service\",\"serviceId\":\"Redshift Data\",\"signatureVersion\":\"v4\",\"signingName\":\"redshift-data\",\"targetPrefix\":\"RedshiftData\",\"uid\":\"redshift-data-2019-12-20\"},\"operations\":{\"CancelStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"type\":\"boolean\"}}}},\"DescribeStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"ClusterIdentifier\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"Database\":{},\"DbUser\":{},\"Duration\":{\"type\":\"long\"},\"Error\":{},\"HasResultSet\":{\"type\":\"boolean\"},\"Id\":{},\"QueryString\":{},\"RedshiftPid\":{\"type\":\"long\"},\"RedshiftQueryId\":{\"type\":\"long\"},\"ResultRows\":{\"type\":\"long\"},\"ResultSize\":{\"type\":\"long\"},\"SecretArn\":{},\"Status\":{},\"UpdatedAt\":{\"type\":\"timestamp\"}}}},\"DescribeTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"Database\"],\"members\":{\"ClusterIdentifier\":{},\"ConnectedDatabase\":{},\"Database\":{},\"DbUser\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Schema\":{},\"SecretArn\":{},\"Table\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ColumnList\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"NextToken\":{},\"TableName\":{}}}},\"ExecuteStatement\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"Sql\"],\"members\":{\"ClusterIdentifier\":{},\"Database\":{},\"DbUser\":{},\"SecretArn\":{},\"Sql\":{},\"StatementName\":{},\"WithEvent\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterIdentifier\":{},\"CreatedAt\":{\"type\":\"timestamp\"},\"Database\":{},\"DbUser\":{},\"Id\":{},\"SecretArn\":{}}}},\"GetStatementResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Records\"],\"members\":{\"ColumnMetadata\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"NextToken\":{},\"Records\":{\"type\":\"list\",\"member\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"blobValue\":{\"type\":\"blob\"},\"booleanValue\":{\"type\":\"boolean\"},\"doubleValue\":{\"type\":\"double\"},\"isNull\":{\"type\":\"boolean\"},\"longValue\":{\"type\":\"long\"},\"stringValue\":{}},\"union\":true}}},\"TotalNumRows\":{\"type\":\"long\"}}}},\"ListDatabases\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\"],\"members\":{\"ClusterIdentifier\":{},\"Database\":{},\"DbUser\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SecretArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Databases\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListSchemas\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"Database\"],\"members\":{\"ClusterIdentifier\":{},\"ConnectedDatabase\":{},\"Database\":{},\"DbUser\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SchemaPattern\":{},\"SecretArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Schemas\":{\"type\":\"list\",\"member\":{}}}}},\"ListStatements\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"RoleLevel\":{\"type\":\"boolean\"},\"StatementName\":{},\"Status\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Statements\"],\"members\":{\"NextToken\":{},\"Statements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"CreatedAt\":{\"type\":\"timestamp\"},\"Id\":{},\"QueryString\":{},\"SecretArn\":{},\"StatementName\":{},\"Status\":{},\"UpdatedAt\":{\"type\":\"timestamp\"}}}}}}},\"ListTables\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterIdentifier\",\"Database\"],\"members\":{\"ClusterIdentifier\":{},\"ConnectedDatabase\":{},\"Database\":{},\"DbUser\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SchemaPattern\":{},\"SecretArn\":{},\"TablePattern\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Tables\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"schema\":{},\"type\":{}}}}}}}},\"shapes\":{\"Si\":{\"type\":\"structure\",\"members\":{\"columnDefault\":{},\"isCaseSensitive\":{\"type\":\"boolean\"},\"isCurrency\":{\"type\":\"boolean\"},\"isSigned\":{\"type\":\"boolean\"},\"label\":{},\"length\":{\"type\":\"integer\"},\"name\":{},\"nullable\":{\"type\":\"integer\"},\"precision\":{\"type\":\"integer\"},\"scale\":{\"type\":\"integer\"},\"schemaName\":{},\"tableName\":{},\"typeName\":{}}}}}");

/***/ }),

/***/ 28484:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeTable\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ColumnList\"},\"GetStatementResult\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Records\"},\"ListDatabases\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Databases\"},\"ListSchemas\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Schemas\"},\"ListStatements\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Statements\"},\"ListTables\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Tables\"}}}");

/***/ }),

/***/ 65852:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-06-27\",\"endpointPrefix\":\"rekognition\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Rekognition\",\"serviceId\":\"Rekognition\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"RekognitionService\",\"uid\":\"rekognition-2016-06-27\"},\"operations\":{\"CompareFaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceImage\",\"TargetImage\"],\"members\":{\"SourceImage\":{\"shape\":\"S2\"},\"TargetImage\":{\"shape\":\"S2\"},\"SimilarityThreshold\":{\"type\":\"float\"},\"QualityFilter\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SourceImageFace\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"},\"Confidence\":{\"type\":\"float\"}}},\"FaceMatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Similarity\":{\"type\":\"float\"},\"Face\":{\"shape\":\"Sg\"}}}},\"UnmatchedFaces\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}},\"SourceImageOrientationCorrection\":{},\"TargetImageOrientationCorrection\":{}}}},\"CreateCollection\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\"],\"members\":{\"CollectionId\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StatusCode\":{\"type\":\"integer\"},\"CollectionArn\":{},\"FaceModelVersion\":{}}}},\"CreateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectArn\":{}}}},\"CreateProjectVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectArn\",\"VersionName\",\"OutputConfig\",\"TrainingData\",\"TestingData\"],\"members\":{\"ProjectArn\":{},\"VersionName\":{},\"OutputConfig\":{\"shape\":\"S13\"},\"TrainingData\":{\"shape\":\"S15\"},\"TestingData\":{\"shape\":\"S19\"},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectVersionArn\":{}}}},\"CreateStreamProcessor\":{\"input\":{\"type\":\"structure\",\"required\":[\"Input\",\"Output\",\"Name\",\"Settings\",\"RoleArn\"],\"members\":{\"Input\":{\"shape\":\"S1e\"},\"Output\":{\"shape\":\"S1h\"},\"Name\":{},\"Settings\":{\"shape\":\"S1l\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamProcessorArn\":{}}}},\"DeleteCollection\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\"],\"members\":{\"CollectionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StatusCode\":{\"type\":\"integer\"}}}},\"DeleteFaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\",\"FaceIds\"],\"members\":{\"CollectionId\":{},\"FaceIds\":{\"shape\":\"S1t\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeletedFaces\":{\"shape\":\"S1t\"}}}},\"DeleteProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectArn\"],\"members\":{\"ProjectArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"DeleteProjectVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectVersionArn\"],\"members\":{\"ProjectVersionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"DeleteStreamProcessor\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeCollection\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\"],\"members\":{\"CollectionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FaceCount\":{\"type\":\"long\"},\"FaceModelVersion\":{},\"CollectionARN\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"}}}},\"DescribeProjectVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectArn\"],\"members\":{\"ProjectArn\":{},\"VersionNames\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectVersionDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProjectVersionArn\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"MinInferenceUnits\":{\"type\":\"integer\"},\"Status\":{},\"StatusMessage\":{},\"BillableTrainingTimeInSeconds\":{\"type\":\"long\"},\"TrainingEndTimestamp\":{\"type\":\"timestamp\"},\"OutputConfig\":{\"shape\":\"S13\"},\"TrainingDataResult\":{\"type\":\"structure\",\"members\":{\"Input\":{\"shape\":\"S15\"},\"Output\":{\"shape\":\"S15\"},\"Validation\":{\"shape\":\"S2i\"}}},\"TestingDataResult\":{\"type\":\"structure\",\"members\":{\"Input\":{\"shape\":\"S19\"},\"Output\":{\"shape\":\"S19\"},\"Validation\":{\"shape\":\"S2i\"}}},\"EvaluationResult\":{\"type\":\"structure\",\"members\":{\"F1Score\":{\"type\":\"float\"},\"Summary\":{\"type\":\"structure\",\"members\":{\"S3Object\":{\"shape\":\"S4\"}}}}},\"ManifestSummary\":{\"shape\":\"S18\"}}}},\"NextToken\":{}}}},\"DescribeProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProjectDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProjectArn\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"Status\":{}}}},\"NextToken\":{}}}},\"DescribeStreamProcessor\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"StreamProcessorArn\":{},\"Status\":{},\"StatusMessage\":{},\"CreationTimestamp\":{\"type\":\"timestamp\"},\"LastUpdateTimestamp\":{\"type\":\"timestamp\"},\"Input\":{\"shape\":\"S1e\"},\"Output\":{\"shape\":\"S1h\"},\"RoleArn\":{},\"Settings\":{\"shape\":\"S1l\"}}}},\"DetectCustomLabels\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectVersionArn\",\"Image\"],\"members\":{\"ProjectVersionArn\":{},\"Image\":{\"shape\":\"S2\"},\"MaxResults\":{\"type\":\"integer\"},\"MinConfidence\":{\"type\":\"float\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomLabels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Confidence\":{\"type\":\"float\"},\"Geometry\":{\"shape\":\"S2y\"}}}}}}},\"DetectFaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"Image\":{\"shape\":\"S2\"},\"Attributes\":{\"shape\":\"S32\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FaceDetails\":{\"type\":\"list\",\"member\":{\"shape\":\"S36\"}},\"OrientationCorrection\":{}}}},\"DetectLabels\":{\"input\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"Image\":{\"shape\":\"S2\"},\"MaxLabels\":{\"type\":\"integer\"},\"MinConfidence\":{\"type\":\"float\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Labels\":{\"type\":\"list\",\"member\":{\"shape\":\"S3n\"}},\"OrientationCorrection\":{},\"LabelModelVersion\":{}}}},\"DetectModerationLabels\":{\"input\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"Image\":{\"shape\":\"S2\"},\"MinConfidence\":{\"type\":\"float\"},\"HumanLoopConfig\":{\"type\":\"structure\",\"required\":[\"HumanLoopName\",\"FlowDefinitionArn\"],\"members\":{\"HumanLoopName\":{},\"FlowDefinitionArn\":{},\"DataAttributes\":{\"type\":\"structure\",\"members\":{\"ContentClassifiers\":{\"type\":\"list\",\"member\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ModerationLabels\":{\"type\":\"list\",\"member\":{\"shape\":\"S41\"}},\"ModerationModelVersion\":{},\"HumanLoopActivationOutput\":{\"type\":\"structure\",\"members\":{\"HumanLoopArn\":{},\"HumanLoopActivationReasons\":{\"type\":\"list\",\"member\":{}},\"HumanLoopActivationConditionsEvaluationResults\":{\"jsonvalue\":true}}}}}},\"DetectProtectiveEquipment\":{\"input\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"Image\":{\"shape\":\"S2\"},\"SummarizationAttributes\":{\"type\":\"structure\",\"required\":[\"MinConfidence\",\"RequiredEquipmentTypes\"],\"members\":{\"MinConfidence\":{\"type\":\"float\"},\"RequiredEquipmentTypes\":{\"type\":\"list\",\"member\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProtectiveEquipmentModelVersion\":{},\"Persons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BodyParts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Confidence\":{\"type\":\"float\"},\"EquipmentDetections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"},\"Confidence\":{\"type\":\"float\"},\"Type\":{},\"CoversBodyPart\":{\"type\":\"structure\",\"members\":{\"Confidence\":{\"type\":\"float\"},\"Value\":{\"type\":\"boolean\"}}}}}}}}},\"BoundingBox\":{\"shape\":\"Sc\"},\"Confidence\":{\"type\":\"float\"},\"Id\":{\"type\":\"integer\"}}}},\"Summary\":{\"type\":\"structure\",\"members\":{\"PersonsWithRequiredEquipment\":{\"shape\":\"S4l\"},\"PersonsWithoutRequiredEquipment\":{\"shape\":\"S4l\"},\"PersonsIndeterminate\":{\"shape\":\"S4l\"}}}}}},\"DetectText\":{\"input\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"Image\":{\"shape\":\"S2\"},\"Filters\":{\"type\":\"structure\",\"members\":{\"WordFilter\":{\"shape\":\"S4o\"},\"RegionsOfInterest\":{\"shape\":\"S4r\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"TextDetections\":{\"type\":\"list\",\"member\":{\"shape\":\"S4v\"}},\"TextModelVersion\":{}}}},\"GetCelebrityInfo\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Urls\":{\"shape\":\"S50\"},\"Name\":{}}}},\"GetCelebrityRecognition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SortBy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"NextToken\":{},\"Celebrities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"Celebrity\":{\"type\":\"structure\",\"members\":{\"Urls\":{\"shape\":\"S50\"},\"Name\":{},\"Id\":{},\"Confidence\":{\"type\":\"float\"},\"BoundingBox\":{\"shape\":\"Sc\"},\"Face\":{\"shape\":\"S36\"}}}}}}}}},\"GetContentModeration\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SortBy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"ModerationLabels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"ModerationLabel\":{\"shape\":\"S41\"}}}},\"NextToken\":{},\"ModerationModelVersion\":{}}}},\"GetFaceDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"NextToken\":{},\"Faces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"Face\":{\"shape\":\"S36\"}}}}}}},\"GetFaceSearch\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SortBy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"NextToken\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"Persons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"Person\":{\"shape\":\"S5s\"},\"FaceMatches\":{\"shape\":\"S5u\"}}}}}}},\"GetLabelDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SortBy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"NextToken\":{},\"Labels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"Label\":{\"shape\":\"S3n\"}}}},\"LabelModelVersion\":{}}}},\"GetPersonTracking\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SortBy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"NextToken\":{},\"Persons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"Person\":{\"shape\":\"S5s\"}}}}}}},\"GetSegmentDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"type\":\"list\",\"member\":{\"shape\":\"S59\"}},\"AudioMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Codec\":{},\"DurationMillis\":{\"type\":\"long\"},\"SampleRate\":{\"type\":\"long\"},\"NumberOfChannels\":{\"type\":\"long\"}}}},\"NextToken\":{},\"Segments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"StartTimestampMillis\":{\"type\":\"long\"},\"EndTimestampMillis\":{\"type\":\"long\"},\"DurationMillis\":{\"type\":\"long\"},\"StartTimecodeSMPTE\":{},\"EndTimecodeSMPTE\":{},\"DurationSMPTE\":{},\"TechnicalCueSegment\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Confidence\":{\"type\":\"float\"}}},\"ShotSegment\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"long\"},\"Confidence\":{\"type\":\"float\"}}}}}},\"SelectedSegmentTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"ModelVersion\":{}}}}}}},\"GetTextDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobStatus\":{},\"StatusMessage\":{},\"VideoMetadata\":{\"shape\":\"S59\"},\"TextDetections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"long\"},\"TextDetection\":{\"shape\":\"S4v\"}}}},\"NextToken\":{},\"TextModelVersion\":{}}}},\"IndexFaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\",\"Image\"],\"members\":{\"CollectionId\":{},\"Image\":{\"shape\":\"S2\"},\"ExternalImageId\":{},\"DetectionAttributes\":{\"shape\":\"S32\"},\"MaxFaces\":{\"type\":\"integer\"},\"QualityFilter\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FaceRecords\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Face\":{\"shape\":\"S5w\"},\"FaceDetail\":{\"shape\":\"S36\"}}}},\"OrientationCorrection\":{},\"FaceModelVersion\":{},\"UnindexedFaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Reasons\":{\"type\":\"list\",\"member\":{}},\"FaceDetail\":{\"shape\":\"S36\"}}}}}}},\"ListCollections\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CollectionIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"FaceModelVersions\":{\"type\":\"list\",\"member\":{}}}}},\"ListFaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\"],\"members\":{\"CollectionId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Faces\":{\"type\":\"list\",\"member\":{\"shape\":\"S5w\"}},\"NextToken\":{},\"FaceModelVersion\":{}}}},\"ListStreamProcessors\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"StreamProcessors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Status\":{}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sr\"}}}},\"RecognizeCelebrities\":{\"input\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"Image\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CelebrityFaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Urls\":{\"shape\":\"S50\"},\"Name\":{},\"Id\":{},\"Face\":{\"shape\":\"Sg\"},\"MatchConfidence\":{\"type\":\"float\"}}}},\"UnrecognizedFaces\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}},\"OrientationCorrection\":{}}}},\"SearchFaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\",\"FaceId\"],\"members\":{\"CollectionId\":{},\"FaceId\":{},\"MaxFaces\":{\"type\":\"integer\"},\"FaceMatchThreshold\":{\"type\":\"float\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SearchedFaceId\":{},\"FaceMatches\":{\"shape\":\"S5u\"},\"FaceModelVersion\":{}}}},\"SearchFacesByImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"CollectionId\",\"Image\"],\"members\":{\"CollectionId\":{},\"Image\":{\"shape\":\"S2\"},\"MaxFaces\":{\"type\":\"integer\"},\"FaceMatchThreshold\":{\"type\":\"float\"},\"QualityFilter\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SearchedFaceBoundingBox\":{\"shape\":\"Sc\"},\"SearchedFaceConfidence\":{\"type\":\"float\"},\"FaceMatches\":{\"shape\":\"S5u\"},\"FaceModelVersion\":{}}}},\"StartCelebrityRecognition\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartContentModeration\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"MinConfidence\":{\"type\":\"float\"},\"ClientRequestToken\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartFaceDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"FaceAttributes\":{},\"JobTag\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartFaceSearch\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\",\"CollectionId\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"FaceMatchThreshold\":{\"type\":\"float\"},\"CollectionId\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartLabelDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"MinConfidence\":{\"type\":\"float\"},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartPersonTracking\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartProjectVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectVersionArn\",\"MinInferenceUnits\"],\"members\":{\"ProjectVersionArn\":{},\"MinInferenceUnits\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"StartSegmentDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\",\"SegmentTypes\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"TechnicalCueFilter\":{\"type\":\"structure\",\"members\":{\"MinSegmentConfidence\":{\"type\":\"float\"}}},\"ShotFilter\":{\"type\":\"structure\",\"members\":{\"MinSegmentConfidence\":{\"type\":\"float\"}}}}},\"SegmentTypes\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StartStreamProcessor\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartTextDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Video\"],\"members\":{\"Video\":{\"shape\":\"S7r\"},\"ClientRequestToken\":{},\"NotificationChannel\":{\"shape\":\"S7t\"},\"JobTag\":{},\"Filters\":{\"type\":\"structure\",\"members\":{\"WordFilter\":{\"shape\":\"S4o\"},\"RegionsOfInterest\":{\"shape\":\"S4r\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"StopProjectVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectVersionArn\"],\"members\":{\"ProjectVersionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"StopStreamProcessor\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"members\":{\"Bytes\":{\"type\":\"blob\"},\"S3Object\":{\"shape\":\"S4\"}}},\"S4\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"Name\":{},\"Version\":{}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"Width\":{\"type\":\"float\"},\"Height\":{\"type\":\"float\"},\"Left\":{\"type\":\"float\"},\"Top\":{\"type\":\"float\"}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"},\"Confidence\":{\"type\":\"float\"},\"Landmarks\":{\"shape\":\"Sh\"},\"Pose\":{\"shape\":\"Sk\"},\"Quality\":{\"shape\":\"Sm\"}}},\"Sh\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"X\":{\"type\":\"float\"},\"Y\":{\"type\":\"float\"}}}},\"Sk\":{\"type\":\"structure\",\"members\":{\"Roll\":{\"type\":\"float\"},\"Yaw\":{\"type\":\"float\"},\"Pitch\":{\"type\":\"float\"}}},\"Sm\":{\"type\":\"structure\",\"members\":{\"Brightness\":{\"type\":\"float\"},\"Sharpness\":{\"type\":\"float\"}}},\"Sr\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S13\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{},\"S3KeyPrefix\":{}}},\"S15\":{\"type\":\"structure\",\"members\":{\"Assets\":{\"shape\":\"S16\"}}},\"S16\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroundTruthManifest\":{\"shape\":\"S18\"}}}},\"S18\":{\"type\":\"structure\",\"members\":{\"S3Object\":{\"shape\":\"S4\"}}},\"S19\":{\"type\":\"structure\",\"members\":{\"Assets\":{\"shape\":\"S16\"},\"AutoCreate\":{\"type\":\"boolean\"}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"KinesisVideoStream\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"KinesisDataStream\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"FaceSearch\":{\"type\":\"structure\",\"members\":{\"CollectionId\":{},\"FaceMatchThreshold\":{\"type\":\"float\"}}}}},\"S1t\":{\"type\":\"list\",\"member\":{}},\"S2i\":{\"type\":\"structure\",\"members\":{\"Assets\":{\"shape\":\"S16\"}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"},\"Polygon\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"X\":{\"type\":\"float\"},\"Y\":{\"type\":\"float\"}}}}}},\"S32\":{\"type\":\"list\",\"member\":{}},\"S36\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"},\"AgeRange\":{\"type\":\"structure\",\"members\":{\"Low\":{\"type\":\"integer\"},\"High\":{\"type\":\"integer\"}}},\"Smile\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"Eyeglasses\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"Sunglasses\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"Gender\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"Confidence\":{\"type\":\"float\"}}},\"Beard\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"Mustache\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"EyesOpen\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"MouthOpen\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"boolean\"},\"Confidence\":{\"type\":\"float\"}}},\"Emotions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Confidence\":{\"type\":\"float\"}}}},\"Landmarks\":{\"shape\":\"Sh\"},\"Pose\":{\"shape\":\"Sk\"},\"Quality\":{\"shape\":\"Sm\"},\"Confidence\":{\"type\":\"float\"}}},\"S3n\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Confidence\":{\"type\":\"float\"},\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"},\"Confidence\":{\"type\":\"float\"}}}},\"Parents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}}}},\"S41\":{\"type\":\"structure\",\"members\":{\"Confidence\":{\"type\":\"float\"},\"Name\":{},\"ParentName\":{}}},\"S4l\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"S4o\":{\"type\":\"structure\",\"members\":{\"MinConfidence\":{\"type\":\"float\"},\"MinBoundingBoxHeight\":{\"type\":\"float\"},\"MinBoundingBoxWidth\":{\"type\":\"float\"}}},\"S4r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"shape\":\"Sc\"}}}},\"S4v\":{\"type\":\"structure\",\"members\":{\"DetectedText\":{},\"Type\":{},\"Id\":{\"type\":\"integer\"},\"ParentId\":{\"type\":\"integer\"},\"Confidence\":{\"type\":\"float\"},\"Geometry\":{\"shape\":\"S2y\"}}},\"S50\":{\"type\":\"list\",\"member\":{}},\"S59\":{\"type\":\"structure\",\"members\":{\"Codec\":{},\"DurationMillis\":{\"type\":\"long\"},\"Format\":{},\"FrameRate\":{\"type\":\"float\"},\"FrameHeight\":{\"type\":\"long\"},\"FrameWidth\":{\"type\":\"long\"}}},\"S5s\":{\"type\":\"structure\",\"members\":{\"Index\":{\"type\":\"long\"},\"BoundingBox\":{\"shape\":\"Sc\"},\"Face\":{\"shape\":\"S36\"}}},\"S5u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Similarity\":{\"type\":\"float\"},\"Face\":{\"shape\":\"S5w\"}}}},\"S5w\":{\"type\":\"structure\",\"members\":{\"FaceId\":{},\"BoundingBox\":{\"shape\":\"Sc\"},\"ImageId\":{},\"ExternalImageId\":{},\"Confidence\":{\"type\":\"float\"}}},\"S7r\":{\"type\":\"structure\",\"members\":{\"S3Object\":{\"shape\":\"S4\"}}},\"S7t\":{\"type\":\"structure\",\"required\":[\"SNSTopicArn\",\"RoleArn\"],\"members\":{\"SNSTopicArn\":{},\"RoleArn\":{}}}}}");

/***/ }),

/***/ 49860:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeProjectVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ProjectVersionDescriptions\"},\"DescribeProjects\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ProjectDescriptions\"},\"GetCelebrityRecognition\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetContentModeration\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetFaceDetection\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetFaceSearch\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetLabelDetection\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetPersonTracking\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetSegmentDetection\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetTextDetection\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListCollections\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CollectionIds\"},\"ListFaces\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Faces\"},\"ListStreamProcessors\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 19491:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ProjectVersionTrainingCompleted\":{\"description\":\"Wait until the ProjectVersion training completes.\",\"operation\":\"DescribeProjectVersions\",\"delay\":120,\"maxAttempts\":360,\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"ProjectVersionDescriptions[].Status\",\"expected\":\"TRAINING_COMPLETED\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"ProjectVersionDescriptions[].Status\",\"expected\":\"TRAINING_FAILED\"}]},\"ProjectVersionRunning\":{\"description\":\"Wait until the ProjectVersion is running.\",\"delay\":30,\"maxAttempts\":40,\"operation\":\"DescribeProjectVersions\",\"acceptors\":[{\"state\":\"success\",\"matcher\":\"pathAll\",\"argument\":\"ProjectVersionDescriptions[].Status\",\"expected\":\"RUNNING\"},{\"state\":\"failure\",\"matcher\":\"pathAny\",\"argument\":\"ProjectVersionDescriptions[].Status\",\"expected\":\"FAILED\"}]}}}");

/***/ }),

/***/ 28629:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-11-27\",\"endpointPrefix\":\"resource-groups\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Resource Groups\",\"serviceFullName\":\"AWS Resource Groups\",\"serviceId\":\"Resource Groups\",\"signatureVersion\":\"v4\",\"signingName\":\"resource-groups\",\"uid\":\"resource-groups-2017-11-27\"},\"operations\":{\"CreateGroup\":{\"http\":{\"requestUri\":\"/groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Description\":{},\"ResourceQuery\":{\"shape\":\"S4\"},\"Tags\":{\"shape\":\"S7\"},\"Configuration\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"Sj\"},\"ResourceQuery\":{\"shape\":\"S4\"},\"Tags\":{\"shape\":\"S7\"},\"GroupConfiguration\":{\"shape\":\"Sl\"}}}},\"DeleteGroup\":{\"http\":{\"requestUri\":\"/delete-group\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Group instead.\"},\"Group\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"Sj\"}}}},\"GetGroup\":{\"http\":{\"requestUri\":\"/get-group\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Group instead.\"},\"Group\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"Sj\"}}}},\"GetGroupConfiguration\":{\"http\":{\"requestUri\":\"/get-group-configuration\"},\"input\":{\"type\":\"structure\",\"members\":{\"Group\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupConfiguration\":{\"shape\":\"Sl\"}}}},\"GetGroupQuery\":{\"http\":{\"requestUri\":\"/get-group-query\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Group instead.\"},\"Group\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupQuery\":{\"shape\":\"Sx\"}}}},\"GetTags\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/resources/{Arn}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"Arn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Tags\":{\"shape\":\"S7\"}}}},\"GroupResources\":{\"http\":{\"requestUri\":\"/group-resources\"},\"input\":{\"type\":\"structure\",\"required\":[\"Group\",\"ResourceArns\"],\"members\":{\"Group\":{},\"ResourceArns\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Succeeded\":{\"shape\":\"S11\"},\"Failed\":{\"shape\":\"S14\"},\"Pending\":{\"shape\":\"S18\"}}}},\"ListGroupResources\":{\"http\":{\"requestUri\":\"/list-group-resources\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Group instead.\"},\"Group\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Identifier\":{\"shape\":\"S1l\"},\"Status\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}}}},\"ResourceIdentifiers\":{\"shape\":\"S1p\",\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Resources instead.\"},\"NextToken\":{},\"QueryErrors\":{\"shape\":\"S1q\"}}}},\"ListGroups\":{\"http\":{\"requestUri\":\"/groups-list\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupIdentifiers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupArn\":{}}}},\"Groups\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use GroupIdentifiers instead.\",\"type\":\"list\",\"member\":{\"shape\":\"Sj\"}},\"NextToken\":{}}}},\"PutGroupConfiguration\":{\"http\":{\"requestUri\":\"/put-group-configuration\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Group\":{},\"Configuration\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SearchResources\":{\"http\":{\"requestUri\":\"/resources/search\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceQuery\"],\"members\":{\"ResourceQuery\":{\"shape\":\"S4\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceIdentifiers\":{\"shape\":\"S1p\"},\"NextToken\":{},\"QueryErrors\":{\"shape\":\"S1q\"}}}},\"Tag\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/resources/{Arn}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Tags\"],\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"Arn\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Tags\":{\"shape\":\"S7\"}}}},\"UngroupResources\":{\"http\":{\"requestUri\":\"/ungroup-resources\"},\"input\":{\"type\":\"structure\",\"required\":[\"Group\",\"ResourceArns\"],\"members\":{\"Group\":{},\"ResourceArns\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Succeeded\":{\"shape\":\"S11\"},\"Failed\":{\"shape\":\"S14\"},\"Pending\":{\"shape\":\"S18\"}}}},\"Untag\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/resources/{Arn}/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Keys\"],\"members\":{\"Arn\":{\"location\":\"uri\",\"locationName\":\"Arn\"},\"Keys\":{\"shape\":\"S2d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"Keys\":{\"shape\":\"S2d\"}}}},\"UpdateGroup\":{\"http\":{\"requestUri\":\"/update-group\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Group instead.\"},\"Group\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"Sj\"}}}},\"UpdateGroupQuery\":{\"http\":{\"requestUri\":\"/update-group-query\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceQuery\"],\"members\":{\"GroupName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Group instead.\"},\"Group\":{},\"ResourceQuery\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupQuery\":{\"shape\":\"Sx\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"Type\",\"Query\"],\"members\":{\"Type\":{},\"Query\":{}}},\"S7\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}}}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"GroupArn\",\"Name\"],\"members\":{\"GroupArn\":{},\"Name\":{},\"Description\":{}}},\"Sl\":{\"type\":\"structure\",\"members\":{\"Configuration\":{\"shape\":\"Sa\"},\"ProposedConfiguration\":{\"shape\":\"Sa\"},\"Status\":{},\"FailureReason\":{}}},\"Sx\":{\"type\":\"structure\",\"required\":[\"GroupName\",\"ResourceQuery\"],\"members\":{\"GroupName\":{},\"ResourceQuery\":{\"shape\":\"S4\"}}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S14\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ErrorMessage\":{},\"ErrorCode\":{}}}},\"S18\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{}}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{},\"ResourceType\":{}}},\"S1p\":{\"type\":\"list\",\"member\":{\"shape\":\"S1l\"}},\"S1q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"Message\":{}}}},\"S2d\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 71378:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListGroupResources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":[\"ResourceIdentifiers\",\"Resources\"]},\"ListGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"GroupIdentifiers\"},\"SearchResources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResourceIdentifiers\"}}}");

/***/ }),

/***/ 83914:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-01-26\",\"endpointPrefix\":\"tagging\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Resource Groups Tagging API\",\"serviceId\":\"Resource Groups Tagging API\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"ResourceGroupsTaggingAPI_20170126\",\"uid\":\"resourcegroupstaggingapi-2017-01-26\"},\"operations\":{\"DescribeReportCreation\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"S3Location\":{},\"ErrorMessage\":{}}}},\"GetComplianceSummary\":{\"input\":{\"type\":\"structure\",\"members\":{\"TargetIdFilters\":{\"type\":\"list\",\"member\":{}},\"RegionFilters\":{\"type\":\"list\",\"member\":{}},\"ResourceTypeFilters\":{\"shape\":\"Sb\"},\"TagKeyFilters\":{\"type\":\"list\",\"member\":{}},\"GroupBy\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"PaginationToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LastUpdated\":{},\"TargetId\":{},\"TargetIdType\":{},\"Region\":{},\"ResourceType\":{},\"NonCompliantResources\":{\"type\":\"long\"}}}},\"PaginationToken\":{}}}},\"GetResources\":{\"input\":{\"type\":\"structure\",\"members\":{\"PaginationToken\":{},\"TagFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"ResourcesPerPage\":{\"type\":\"integer\"},\"TagsPerPage\":{\"type\":\"integer\"},\"ResourceTypeFilters\":{\"shape\":\"Sb\"},\"IncludeComplianceDetails\":{\"type\":\"boolean\"},\"ExcludeCompliantResources\":{\"type\":\"boolean\"},\"ResourceARNList\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PaginationToken\":{},\"ResourceTagMappingList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"Tags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"ComplianceDetails\":{\"type\":\"structure\",\"members\":{\"NoncompliantKeys\":{\"shape\":\"S16\"},\"KeysWithNoncompliantValues\":{\"shape\":\"S16\"},\"ComplianceStatus\":{\"type\":\"boolean\"}}}}}}}}},\"GetTagKeys\":{\"input\":{\"type\":\"structure\",\"members\":{\"PaginationToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PaginationToken\":{},\"TagKeys\":{\"shape\":\"S16\"}}}},\"GetTagValues\":{\"input\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"PaginationToken\":{},\"Key\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PaginationToken\":{},\"TagValues\":{\"type\":\"list\",\"member\":{}}}}},\"StartReportCreation\":{\"input\":{\"type\":\"structure\",\"required\":[\"S3Bucket\"],\"members\":{\"S3Bucket\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARNList\",\"Tags\"],\"members\":{\"ResourceARNList\":{\"shape\":\"S1h\"},\"Tags\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedResourcesMap\":{\"shape\":\"S1k\"}}}},\"UntagResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARNList\",\"TagKeys\"],\"members\":{\"ResourceARNList\":{\"shape\":\"S1h\"},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedResourcesMap\":{\"shape\":\"S1k\"}}}}},\"shapes\":{\"Sb\":{\"type\":\"list\",\"member\":{}},\"S16\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"list\",\"member\":{}},\"S1k\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"StatusCode\":{\"type\":\"integer\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}");

/***/ }),

/***/ 64865:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetComplianceSummary\":{\"input_token\":\"PaginationToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"PaginationToken\",\"result_key\":\"SummaryList\"},\"GetResources\":{\"input_token\":\"PaginationToken\",\"limit_key\":\"ResourcesPerPage\",\"output_token\":\"PaginationToken\",\"result_key\":\"ResourceTagMappingList\"},\"GetTagKeys\":{\"input_token\":\"PaginationToken\",\"output_token\":\"PaginationToken\",\"result_key\":\"TagKeys\"},\"GetTagValues\":{\"input_token\":\"PaginationToken\",\"output_token\":\"PaginationToken\",\"result_key\":\"TagValues\"}}}");

/***/ }),

/***/ 36854:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-06-29\",\"endpointPrefix\":\"robomaker\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"RoboMaker\",\"serviceFullName\":\"AWS RoboMaker\",\"serviceId\":\"RoboMaker\",\"signatureVersion\":\"v4\",\"signingName\":\"robomaker\",\"uid\":\"robomaker-2018-06-29\"},\"operations\":{\"BatchDeleteWorlds\":{\"http\":{\"requestUri\":\"/batchDeleteWorlds\"},\"input\":{\"type\":\"structure\",\"required\":[\"worlds\"],\"members\":{\"worlds\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"unprocessedWorlds\":{\"shape\":\"S2\"}}}},\"BatchDescribeSimulationJob\":{\"http\":{\"requestUri\":\"/batchDescribeSimulationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobs\"],\"members\":{\"jobs\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"status\":{},\"lastStartedAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"failureBehavior\":{},\"failureCode\":{},\"failureReason\":{},\"clientRequestToken\":{},\"outputLocation\":{\"shape\":\"Sh\"},\"loggingConfig\":{\"shape\":\"Sk\"},\"maxJobDurationInSeconds\":{\"type\":\"long\"},\"simulationTimeMillis\":{\"type\":\"long\"},\"iamRole\":{},\"robotApplications\":{\"shape\":\"Sp\"},\"simulationApplications\":{\"shape\":\"S1b\"},\"dataSources\":{\"shape\":\"S1f\"},\"tags\":{\"shape\":\"S1k\"},\"vpcConfig\":{\"shape\":\"S1n\"},\"networkInterface\":{\"shape\":\"S1r\"},\"compute\":{\"shape\":\"S1s\"}}}},\"unprocessedJobs\":{\"shape\":\"S2\"}}}},\"CancelDeploymentJob\":{\"http\":{\"requestUri\":\"/cancelDeploymentJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelSimulationJob\":{\"http\":{\"requestUri\":\"/cancelSimulationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelSimulationJobBatch\":{\"http\":{\"requestUri\":\"/cancelSimulationJobBatch\"},\"input\":{\"type\":\"structure\",\"required\":[\"batch\"],\"members\":{\"batch\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelWorldExportJob\":{\"http\":{\"requestUri\":\"/cancelWorldExportJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelWorldGenerationJob\":{\"http\":{\"requestUri\":\"/cancelWorldGenerationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDeploymentJob\":{\"http\":{\"requestUri\":\"/createDeploymentJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientRequestToken\",\"fleet\",\"deploymentApplicationConfigs\"],\"members\":{\"deploymentConfig\":{\"shape\":\"S25\"},\"clientRequestToken\":{\"idempotencyToken\":true},\"fleet\":{},\"deploymentApplicationConfigs\":{\"shape\":\"S29\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"fleet\":{},\"status\":{},\"deploymentApplicationConfigs\":{\"shape\":\"S29\"},\"failureReason\":{},\"failureCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"deploymentConfig\":{\"shape\":\"S25\"},\"tags\":{\"shape\":\"S1k\"}}}},\"CreateFleet\":{\"http\":{\"requestUri\":\"/createFleet\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"createdAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"CreateRobot\":{\"http\":{\"requestUri\":\"/createRobot\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"architecture\",\"greengrassGroupId\"],\"members\":{\"name\":{},\"architecture\":{},\"greengrassGroupId\":{},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"createdAt\":{\"type\":\"timestamp\"},\"greengrassGroupId\":{},\"architecture\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"CreateRobotApplication\":{\"http\":{\"requestUri\":\"/createRobotApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"sources\",\"robotSoftwareSuite\"],\"members\":{\"name\":{},\"sources\":{\"shape\":\"S2o\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"revisionId\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"CreateRobotApplicationVersion\":{\"http\":{\"requestUri\":\"/createRobotApplicationVersion\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{},\"currentRevisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"revisionId\":{}}}},\"CreateSimulationApplication\":{\"http\":{\"requestUri\":\"/createSimulationApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"sources\",\"simulationSoftwareSuite\",\"robotSoftwareSuite\"],\"members\":{\"name\":{},\"sources\":{\"shape\":\"S2o\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"renderingEngine\":{\"shape\":\"S33\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"renderingEngine\":{\"shape\":\"S33\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"revisionId\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"CreateSimulationApplicationVersion\":{\"http\":{\"requestUri\":\"/createSimulationApplicationVersion\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{},\"currentRevisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"renderingEngine\":{\"shape\":\"S33\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"revisionId\":{}}}},\"CreateSimulationJob\":{\"http\":{\"requestUri\":\"/createSimulationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"maxJobDurationInSeconds\",\"iamRole\"],\"members\":{\"clientRequestToken\":{\"idempotencyToken\":true},\"outputLocation\":{\"shape\":\"Sh\"},\"loggingConfig\":{\"shape\":\"Sk\"},\"maxJobDurationInSeconds\":{\"type\":\"long\"},\"iamRole\":{},\"failureBehavior\":{},\"robotApplications\":{\"shape\":\"Sp\"},\"simulationApplications\":{\"shape\":\"S1b\"},\"dataSources\":{\"shape\":\"S3a\"},\"tags\":{\"shape\":\"S1k\"},\"vpcConfig\":{\"shape\":\"S3d\"},\"compute\":{\"shape\":\"S3e\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"lastStartedAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"failureBehavior\":{},\"failureCode\":{},\"clientRequestToken\":{},\"outputLocation\":{\"shape\":\"Sh\"},\"loggingConfig\":{\"shape\":\"Sk\"},\"maxJobDurationInSeconds\":{\"type\":\"long\"},\"simulationTimeMillis\":{\"type\":\"long\"},\"iamRole\":{},\"robotApplications\":{\"shape\":\"Sp\"},\"simulationApplications\":{\"shape\":\"S1b\"},\"dataSources\":{\"shape\":\"S1f\"},\"tags\":{\"shape\":\"S1k\"},\"vpcConfig\":{\"shape\":\"S1n\"},\"compute\":{\"shape\":\"S1s\"}}}},\"CreateWorldExportJob\":{\"http\":{\"requestUri\":\"/createWorldExportJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"worlds\",\"outputLocation\",\"iamRole\"],\"members\":{\"clientRequestToken\":{\"idempotencyToken\":true},\"worlds\":{\"shape\":\"S2\"},\"outputLocation\":{\"shape\":\"Sh\"},\"iamRole\":{},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"failureCode\":{},\"clientRequestToken\":{},\"outputLocation\":{\"shape\":\"Sh\"},\"iamRole\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"CreateWorldGenerationJob\":{\"http\":{\"requestUri\":\"/createWorldGenerationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"template\",\"worldCount\"],\"members\":{\"clientRequestToken\":{\"idempotencyToken\":true},\"template\":{},\"worldCount\":{\"shape\":\"S3l\"},\"tags\":{\"shape\":\"S1k\"},\"worldTags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"failureCode\":{},\"clientRequestToken\":{},\"template\":{},\"worldCount\":{\"shape\":\"S3l\"},\"tags\":{\"shape\":\"S1k\"},\"worldTags\":{\"shape\":\"S1k\"}}}},\"CreateWorldTemplate\":{\"http\":{\"requestUri\":\"/createWorldTemplate\"},\"input\":{\"type\":\"structure\",\"members\":{\"clientRequestToken\":{},\"name\":{},\"templateBody\":{},\"templateLocation\":{\"shape\":\"S3u\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"clientRequestToken\":{},\"createdAt\":{\"type\":\"timestamp\"},\"name\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"DeleteFleet\":{\"http\":{\"requestUri\":\"/deleteFleet\"},\"input\":{\"type\":\"structure\",\"required\":[\"fleet\"],\"members\":{\"fleet\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRobot\":{\"http\":{\"requestUri\":\"/deleteRobot\"},\"input\":{\"type\":\"structure\",\"required\":[\"robot\"],\"members\":{\"robot\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRobotApplication\":{\"http\":{\"requestUri\":\"/deleteRobotApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{},\"applicationVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSimulationApplication\":{\"http\":{\"requestUri\":\"/deleteSimulationApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{},\"applicationVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWorldTemplate\":{\"http\":{\"requestUri\":\"/deleteWorldTemplate\"},\"input\":{\"type\":\"structure\",\"required\":[\"template\"],\"members\":{\"template\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterRobot\":{\"http\":{\"requestUri\":\"/deregisterRobot\"},\"input\":{\"type\":\"structure\",\"required\":[\"fleet\",\"robot\"],\"members\":{\"fleet\":{},\"robot\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"fleet\":{},\"robot\":{}}}},\"DescribeDeploymentJob\":{\"http\":{\"requestUri\":\"/describeDeploymentJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"fleet\":{},\"status\":{},\"deploymentConfig\":{\"shape\":\"S25\"},\"deploymentApplicationConfigs\":{\"shape\":\"S29\"},\"failureReason\":{},\"failureCode\":{},\"createdAt\":{\"type\":\"timestamp\"},\"robotDeploymentSummary\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"deploymentStartTime\":{\"type\":\"timestamp\"},\"deploymentFinishTime\":{\"type\":\"timestamp\"},\"status\":{},\"progressDetail\":{\"type\":\"structure\",\"members\":{\"currentProgress\":{},\"percentDone\":{\"type\":\"float\"},\"estimatedTimeRemainingSeconds\":{\"type\":\"integer\"},\"targetResource\":{}}},\"failureReason\":{},\"failureCode\":{}}}},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeFleet\":{\"http\":{\"requestUri\":\"/describeFleet\"},\"input\":{\"type\":\"structure\",\"required\":[\"fleet\"],\"members\":{\"fleet\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"robots\":{\"shape\":\"S4j\"},\"createdAt\":{\"type\":\"timestamp\"},\"lastDeploymentStatus\":{},\"lastDeploymentJob\":{},\"lastDeploymentTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeRobot\":{\"http\":{\"requestUri\":\"/describeRobot\"},\"input\":{\"type\":\"structure\",\"required\":[\"robot\"],\"members\":{\"robot\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"fleetArn\":{},\"status\":{},\"greengrassGroupId\":{},\"createdAt\":{\"type\":\"timestamp\"},\"architecture\":{},\"lastDeploymentJob\":{},\"lastDeploymentTime\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeRobotApplication\":{\"http\":{\"requestUri\":\"/describeRobotApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{},\"applicationVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"revisionId\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeSimulationApplication\":{\"http\":{\"requestUri\":\"/describeSimulationApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{},\"applicationVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"renderingEngine\":{\"shape\":\"S33\"},\"revisionId\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeSimulationJob\":{\"http\":{\"requestUri\":\"/describeSimulationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"status\":{},\"lastStartedAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"failureBehavior\":{},\"failureCode\":{},\"failureReason\":{},\"clientRequestToken\":{},\"outputLocation\":{\"shape\":\"Sh\"},\"loggingConfig\":{\"shape\":\"Sk\"},\"maxJobDurationInSeconds\":{\"type\":\"long\"},\"simulationTimeMillis\":{\"type\":\"long\"},\"iamRole\":{},\"robotApplications\":{\"shape\":\"Sp\"},\"simulationApplications\":{\"shape\":\"S1b\"},\"dataSources\":{\"shape\":\"S1f\"},\"tags\":{\"shape\":\"S1k\"},\"vpcConfig\":{\"shape\":\"S1n\"},\"networkInterface\":{\"shape\":\"S1r\"},\"compute\":{\"shape\":\"S1s\"}}}},\"DescribeSimulationJobBatch\":{\"http\":{\"requestUri\":\"/describeSimulationJobBatch\"},\"input\":{\"type\":\"structure\",\"required\":[\"batch\"],\"members\":{\"batch\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"createdAt\":{\"type\":\"timestamp\"},\"clientRequestToken\":{},\"batchPolicy\":{\"shape\":\"S4w\"},\"failureCode\":{},\"failureReason\":{},\"failedRequests\":{\"shape\":\"S50\"},\"pendingRequests\":{\"shape\":\"S54\"},\"createdRequests\":{\"shape\":\"S55\"},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeWorld\":{\"http\":{\"requestUri\":\"/describeWorld\"},\"input\":{\"type\":\"structure\",\"required\":[\"world\"],\"members\":{\"world\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"generationJob\":{},\"template\":{},\"createdAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeWorldExportJob\":{\"http\":{\"requestUri\":\"/describeWorldExportJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"failureCode\":{},\"failureReason\":{},\"clientRequestToken\":{},\"worlds\":{\"shape\":\"S2\"},\"outputLocation\":{\"shape\":\"Sh\"},\"iamRole\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"DescribeWorldGenerationJob\":{\"http\":{\"requestUri\":\"/describeWorldGenerationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"failureCode\":{},\"failureReason\":{},\"clientRequestToken\":{},\"template\":{},\"worldCount\":{\"shape\":\"S3l\"},\"finishedWorldsSummary\":{\"type\":\"structure\",\"members\":{\"finishedCount\":{\"type\":\"integer\"},\"succeededWorlds\":{\"shape\":\"S2\"},\"failureSummary\":{\"type\":\"structure\",\"members\":{\"totalFailureCount\":{\"type\":\"integer\"},\"failures\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"failureCode\":{},\"sampleFailureReason\":{},\"failureCount\":{\"type\":\"integer\"}}}}}}}},\"tags\":{\"shape\":\"S1k\"},\"worldTags\":{\"shape\":\"S1k\"}}}},\"DescribeWorldTemplate\":{\"http\":{\"requestUri\":\"/describeWorldTemplate\"},\"input\":{\"type\":\"structure\",\"required\":[\"template\"],\"members\":{\"template\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"clientRequestToken\":{},\"name\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"tags\":{\"shape\":\"S1k\"}}}},\"GetWorldTemplateBody\":{\"http\":{\"requestUri\":\"/getWorldTemplateBody\"},\"input\":{\"type\":\"structure\",\"members\":{\"template\":{},\"generationJob\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"templateBody\":{}}}},\"ListDeploymentJobs\":{\"http\":{\"requestUri\":\"/listDeploymentJobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"filters\":{\"shape\":\"S5q\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"deploymentJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"fleet\":{},\"status\":{},\"deploymentApplicationConfigs\":{\"shape\":\"S29\"},\"deploymentConfig\":{\"shape\":\"S25\"},\"failureReason\":{},\"failureCode\":{},\"createdAt\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListFleets\":{\"http\":{\"requestUri\":\"/listFleets\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"fleetDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastDeploymentStatus\":{},\"lastDeploymentJob\":{},\"lastDeploymentTime\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListRobotApplications\":{\"http\":{\"requestUri\":\"/listRobotApplications\"},\"input\":{\"type\":\"structure\",\"members\":{\"versionQualifier\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"robotApplicationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"version\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"}}}},\"nextToken\":{}}}},\"ListRobots\":{\"http\":{\"requestUri\":\"/listRobots\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"robots\":{\"shape\":\"S4j\"},\"nextToken\":{}}}},\"ListSimulationApplications\":{\"http\":{\"requestUri\":\"/listSimulationApplications\"},\"input\":{\"type\":\"structure\",\"members\":{\"versionQualifier\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"simulationApplicationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{},\"version\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"}}}},\"nextToken\":{}}}},\"ListSimulationJobBatches\":{\"http\":{\"requestUri\":\"/listSimulationJobBatches\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"simulationJobBatchSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"createdAt\":{\"type\":\"timestamp\"},\"status\":{},\"failedRequestCount\":{\"type\":\"integer\"},\"pendingRequestCount\":{\"type\":\"integer\"},\"createdRequestCount\":{\"type\":\"integer\"}}}},\"nextToken\":{}}}},\"ListSimulationJobs\":{\"http\":{\"requestUri\":\"/listSimulationJobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"simulationJobSummaries\"],\"members\":{\"simulationJobSummaries\":{\"shape\":\"S55\"},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1k\"}}}},\"ListWorldExportJobs\":{\"http\":{\"requestUri\":\"/listWorldExportJobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"worldExportJobSummaries\"],\"members\":{\"worldExportJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"worlds\":{\"shape\":\"S2\"}}}},\"nextToken\":{}}}},\"ListWorldGenerationJobs\":{\"http\":{\"requestUri\":\"/listWorldGenerationJobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"worldGenerationJobSummaries\"],\"members\":{\"worldGenerationJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"template\":{},\"createdAt\":{\"type\":\"timestamp\"},\"status\":{},\"worldCount\":{\"shape\":\"S3l\"},\"succeededWorldCount\":{\"type\":\"integer\"},\"failedWorldCount\":{\"type\":\"integer\"}}}},\"nextToken\":{}}}},\"ListWorldTemplates\":{\"http\":{\"requestUri\":\"/listWorldTemplates\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"templateSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"name\":{}}}},\"nextToken\":{}}}},\"ListWorlds\":{\"http\":{\"requestUri\":\"/listWorlds\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"filters\":{\"shape\":\"S5q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"worldSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"createdAt\":{\"type\":\"timestamp\"},\"generationJob\":{},\"template\":{}}}},\"nextToken\":{}}}},\"RegisterRobot\":{\"http\":{\"requestUri\":\"/registerRobot\"},\"input\":{\"type\":\"structure\",\"required\":[\"fleet\",\"robot\"],\"members\":{\"fleet\":{},\"robot\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"fleet\":{},\"robot\":{}}}},\"RestartSimulationJob\":{\"http\":{\"requestUri\":\"/restartSimulationJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"job\"],\"members\":{\"job\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartSimulationJobBatch\":{\"http\":{\"requestUri\":\"/startSimulationJobBatch\"},\"input\":{\"type\":\"structure\",\"required\":[\"createSimulationJobRequests\"],\"members\":{\"clientRequestToken\":{\"idempotencyToken\":true},\"batchPolicy\":{\"shape\":\"S4w\"},\"createSimulationJobRequests\":{\"shape\":\"S54\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"status\":{},\"createdAt\":{\"type\":\"timestamp\"},\"clientRequestToken\":{},\"batchPolicy\":{\"shape\":\"S4w\"},\"failureCode\":{},\"failureReason\":{},\"failedRequests\":{\"shape\":\"S50\"},\"pendingRequests\":{\"shape\":\"S54\"},\"createdRequests\":{\"shape\":\"S55\"},\"tags\":{\"shape\":\"S1k\"}}}},\"SyncDeploymentJob\":{\"http\":{\"requestUri\":\"/syncDeploymentJob\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientRequestToken\",\"fleet\"],\"members\":{\"clientRequestToken\":{\"idempotencyToken\":true},\"fleet\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"fleet\":{},\"status\":{},\"deploymentConfig\":{\"shape\":\"S25\"},\"deploymentApplicationConfigs\":{\"shape\":\"S29\"},\"failureReason\":{},\"failureCode\":{},\"createdAt\":{\"type\":\"timestamp\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRobotApplication\":{\"http\":{\"requestUri\":\"/updateRobotApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\",\"sources\",\"robotSoftwareSuite\"],\"members\":{\"application\":{},\"sources\":{\"shape\":\"S2o\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"currentRevisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"revisionId\":{}}}},\"UpdateSimulationApplication\":{\"http\":{\"requestUri\":\"/updateSimulationApplication\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\",\"sources\",\"simulationSoftwareSuite\",\"robotSoftwareSuite\"],\"members\":{\"application\":{},\"sources\":{\"shape\":\"S2o\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"renderingEngine\":{\"shape\":\"S33\"},\"currentRevisionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"version\":{},\"sources\":{\"shape\":\"S2u\"},\"simulationSoftwareSuite\":{\"shape\":\"S30\"},\"robotSoftwareSuite\":{\"shape\":\"S2q\"},\"renderingEngine\":{\"shape\":\"S33\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"revisionId\":{}}}},\"UpdateWorldTemplate\":{\"http\":{\"requestUri\":\"/updateWorldTemplate\"},\"input\":{\"type\":\"structure\",\"required\":[\"template\"],\"members\":{\"template\":{},\"name\":{},\"templateBody\":{},\"templateLocation\":{\"shape\":\"S3u\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"createdAt\":{\"type\":\"timestamp\"},\"lastUpdatedAt\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"Sh\":{\"type\":\"structure\",\"members\":{\"s3Bucket\":{},\"s3Prefix\":{}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"recordAllRosTopics\"],\"members\":{\"recordAllRosTopics\":{\"type\":\"boolean\"}}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"application\",\"launchConfig\"],\"members\":{\"application\":{},\"applicationVersion\":{},\"launchConfig\":{\"shape\":\"Ss\"},\"uploadConfigurations\":{\"shape\":\"S13\"},\"useDefaultUploadConfigurations\":{\"type\":\"boolean\"},\"tools\":{\"shape\":\"S17\"},\"useDefaultTools\":{\"type\":\"boolean\"}}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"packageName\",\"launchFile\"],\"members\":{\"packageName\":{},\"launchFile\":{},\"environmentVariables\":{\"shape\":\"Su\"},\"portForwardingConfig\":{\"type\":\"structure\",\"members\":{\"portMappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"jobPort\",\"applicationPort\"],\"members\":{\"jobPort\":{\"type\":\"integer\"},\"applicationPort\":{\"type\":\"integer\"},\"enableOnPublicIp\":{\"type\":\"boolean\"}}}}}},\"streamUI\":{\"type\":\"boolean\"}}},\"Su\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"path\",\"uploadBehavior\"],\"members\":{\"name\":{},\"path\":{},\"uploadBehavior\":{}}}},\"S17\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"command\"],\"members\":{\"streamUI\":{\"type\":\"boolean\"},\"name\":{},\"command\":{},\"streamOutputToCloudWatch\":{\"type\":\"boolean\"},\"exitBehavior\":{}}}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"application\",\"launchConfig\"],\"members\":{\"application\":{},\"applicationVersion\":{},\"launchConfig\":{\"shape\":\"Ss\"},\"uploadConfigurations\":{\"shape\":\"S13\"},\"worldConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"world\":{}}}},\"useDefaultUploadConfigurations\":{\"type\":\"boolean\"},\"tools\":{\"shape\":\"S17\"},\"useDefaultTools\":{\"type\":\"boolean\"}}}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"s3Bucket\":{},\"s3Keys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"s3Key\":{},\"etag\":{}}}}}}},\"S1k\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1n\":{\"type\":\"structure\",\"members\":{\"subnets\":{\"shape\":\"S1o\"},\"securityGroups\":{\"shape\":\"S1q\"},\"vpcId\":{},\"assignPublicIp\":{\"type\":\"boolean\"}}},\"S1o\":{\"type\":\"list\",\"member\":{}},\"S1q\":{\"type\":\"list\",\"member\":{}},\"S1r\":{\"type\":\"structure\",\"members\":{\"networkInterfaceId\":{},\"privateIpAddress\":{},\"publicIpAddress\":{}}},\"S1s\":{\"type\":\"structure\",\"members\":{\"simulationUnitLimit\":{\"type\":\"integer\"}}},\"S25\":{\"type\":\"structure\",\"members\":{\"concurrentDeploymentPercentage\":{\"type\":\"integer\"},\"failureThresholdPercentage\":{\"type\":\"integer\"},\"robotDeploymentTimeoutInSeconds\":{\"type\":\"long\"},\"downloadConditionFile\":{\"type\":\"structure\",\"required\":[\"bucket\",\"key\"],\"members\":{\"bucket\":{},\"key\":{},\"etag\":{}}}}},\"S29\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"application\",\"applicationVersion\",\"launchConfig\"],\"members\":{\"application\":{},\"applicationVersion\":{},\"launchConfig\":{\"type\":\"structure\",\"required\":[\"packageName\",\"launchFile\"],\"members\":{\"packageName\":{},\"preLaunchFile\":{},\"launchFile\":{},\"postLaunchFile\":{},\"environmentVariables\":{\"shape\":\"Su\"}}}}}},\"S2o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"s3Bucket\":{},\"s3Key\":{},\"architecture\":{}}}},\"S2q\":{\"type\":\"structure\",\"members\":{\"name\":{},\"version\":{}}},\"S2u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"s3Bucket\":{},\"s3Key\":{},\"etag\":{},\"architecture\":{}}}},\"S30\":{\"type\":\"structure\",\"members\":{\"name\":{},\"version\":{}}},\"S33\":{\"type\":\"structure\",\"members\":{\"name\":{},\"version\":{}}},\"S3a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"s3Bucket\",\"s3Keys\"],\"members\":{\"name\":{},\"s3Bucket\":{},\"s3Keys\":{\"type\":\"list\",\"member\":{}}}}},\"S3d\":{\"type\":\"structure\",\"required\":[\"subnets\"],\"members\":{\"subnets\":{\"shape\":\"S1o\"},\"securityGroups\":{\"shape\":\"S1q\"},\"assignPublicIp\":{\"type\":\"boolean\"}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"simulationUnitLimit\":{\"type\":\"integer\"}}},\"S3l\":{\"type\":\"structure\",\"members\":{\"floorplanCount\":{\"type\":\"integer\"},\"interiorCountPerFloorplan\":{\"type\":\"integer\"}}},\"S3u\":{\"type\":\"structure\",\"required\":[\"s3Bucket\",\"s3Key\"],\"members\":{\"s3Bucket\":{},\"s3Key\":{}}},\"S4j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"name\":{},\"fleetArn\":{},\"status\":{},\"greenGrassGroupId\":{},\"createdAt\":{\"type\":\"timestamp\"},\"architecture\":{},\"lastDeploymentJob\":{},\"lastDeploymentTime\":{\"type\":\"timestamp\"}}}},\"S4w\":{\"type\":\"structure\",\"members\":{\"timeoutInSeconds\":{\"type\":\"long\"},\"maxConcurrency\":{\"type\":\"integer\"}}},\"S50\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"request\":{\"shape\":\"S52\"},\"failureReason\":{},\"failureCode\":{},\"failedAt\":{\"type\":\"timestamp\"}}}},\"S52\":{\"type\":\"structure\",\"required\":[\"maxJobDurationInSeconds\"],\"members\":{\"outputLocation\":{\"shape\":\"Sh\"},\"loggingConfig\":{\"shape\":\"Sk\"},\"maxJobDurationInSeconds\":{\"type\":\"long\"},\"iamRole\":{},\"failureBehavior\":{},\"useDefaultApplications\":{\"type\":\"boolean\"},\"robotApplications\":{\"shape\":\"Sp\"},\"simulationApplications\":{\"shape\":\"S1b\"},\"dataSources\":{\"shape\":\"S3a\"},\"vpcConfig\":{\"shape\":\"S3d\"},\"compute\":{\"shape\":\"S3e\"},\"tags\":{\"shape\":\"S1k\"}}},\"S54\":{\"type\":\"list\",\"member\":{\"shape\":\"S52\"}},\"S55\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"lastUpdatedAt\":{\"type\":\"timestamp\"},\"name\":{},\"status\":{},\"simulationApplicationNames\":{\"type\":\"list\",\"member\":{}},\"robotApplicationNames\":{\"type\":\"list\",\"member\":{}},\"dataSourceNames\":{\"type\":\"list\",\"member\":{}}}}},\"S5q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"type\":\"list\",\"member\":{}}}}}}}");

/***/ }),

/***/ 52592:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDeploymentJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"deploymentJobs\"},\"ListFleets\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"fleetDetails\"},\"ListRobotApplications\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"robotApplicationSummaries\"},\"ListRobots\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"robots\"},\"ListSimulationApplications\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"simulationApplicationSummaries\"},\"ListSimulationJobBatches\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"simulationJobBatchSummaries\"},\"ListSimulationJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"simulationJobSummaries\"},\"ListWorldExportJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"worldExportJobSummaries\"},\"ListWorldGenerationJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"worldGenerationJobSummaries\"},\"ListWorldTemplates\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"templateSummaries\"},\"ListWorlds\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"worldSummaries\"}}}");

/***/ }),

/***/ 91499:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-04-01\",\"endpointPrefix\":\"route53\",\"globalEndpoint\":\"route53.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"Route 53\",\"serviceFullName\":\"Amazon Route 53\",\"serviceId\":\"Route 53\",\"signatureVersion\":\"v4\",\"uid\":\"route53-2013-04-01\"},\"operations\":{\"ActivateKeySigningKey\":{\"http\":{\"requestUri\":\"/2013-04-01/keysigningkey/{HostedZoneId}/{Name}/activate\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"Name\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"HostedZoneId\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"AssociateVPCWithHostedZone\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/associatevpc\"},\"input\":{\"locationName\":\"AssociateVPCWithHostedZoneRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"VPC\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"VPC\":{\"shape\":\"Sa\"},\"Comment\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"ChangeResourceRecordSets\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/rrset/\"},\"input\":{\"locationName\":\"ChangeResourceRecordSetsRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"ChangeBatch\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"ChangeBatch\":{\"type\":\"structure\",\"required\":[\"Changes\"],\"members\":{\"Comment\":{},\"Changes\":{\"type\":\"list\",\"member\":{\"locationName\":\"Change\",\"type\":\"structure\",\"required\":[\"Action\",\"ResourceRecordSet\"],\"members\":{\"Action\":{},\"ResourceRecordSet\":{\"shape\":\"Sk\"}}}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"ChangeTagsForResource\":{\"http\":{\"requestUri\":\"/2013-04-01/tags/{ResourceType}/{ResourceId}\"},\"input\":{\"locationName\":\"ChangeTagsForResourceRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\"],\"members\":{\"ResourceType\":{\"location\":\"uri\",\"locationName\":\"ResourceType\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"AddTags\":{\"shape\":\"S18\"},\"RemoveTagKeys\":{\"type\":\"list\",\"member\":{\"locationName\":\"Key\"}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateHealthCheck\":{\"http\":{\"requestUri\":\"/2013-04-01/healthcheck\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateHealthCheckRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"CallerReference\",\"HealthCheckConfig\"],\"members\":{\"CallerReference\":{},\"HealthCheckConfig\":{\"shape\":\"S1g\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthCheck\",\"Location\"],\"members\":{\"HealthCheck\":{\"shape\":\"S22\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateHostedZone\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateHostedZoneRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"Name\",\"CallerReference\"],\"members\":{\"Name\":{},\"VPC\":{\"shape\":\"Sa\"},\"CallerReference\":{},\"HostedZoneConfig\":{\"shape\":\"S2k\"},\"DelegationSetId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZone\",\"ChangeInfo\",\"DelegationSet\",\"Location\"],\"members\":{\"HostedZone\":{\"shape\":\"S2n\"},\"ChangeInfo\":{\"shape\":\"S5\"},\"DelegationSet\":{\"shape\":\"S2p\"},\"VPC\":{\"shape\":\"Sa\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateKeySigningKey\":{\"http\":{\"requestUri\":\"/2013-04-01/keysigningkey\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateKeySigningKeyRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"CallerReference\",\"HostedZoneId\",\"KeyManagementServiceArn\",\"Name\",\"Status\"],\"members\":{\"CallerReference\":{},\"HostedZoneId\":{},\"KeyManagementServiceArn\":{},\"Name\":{},\"Status\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\",\"KeySigningKey\",\"Location\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"},\"KeySigningKey\":{\"shape\":\"S2v\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateQueryLoggingConfig\":{\"http\":{\"requestUri\":\"/2013-04-01/queryloggingconfig\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateQueryLoggingConfigRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"CloudWatchLogsLogGroupArn\"],\"members\":{\"HostedZoneId\":{},\"CloudWatchLogsLogGroupArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"QueryLoggingConfig\",\"Location\"],\"members\":{\"QueryLoggingConfig\":{\"shape\":\"S32\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateReusableDelegationSet\":{\"http\":{\"requestUri\":\"/2013-04-01/delegationset\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateReusableDelegationSetRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"CallerReference\"],\"members\":{\"CallerReference\":{},\"HostedZoneId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DelegationSet\",\"Location\"],\"members\":{\"DelegationSet\":{\"shape\":\"S2p\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateTrafficPolicy\":{\"http\":{\"requestUri\":\"/2013-04-01/trafficpolicy\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateTrafficPolicyRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"Name\",\"Document\"],\"members\":{\"Name\":{},\"Document\":{},\"Comment\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicy\",\"Location\"],\"members\":{\"TrafficPolicy\":{\"shape\":\"S3b\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateTrafficPolicyInstance\":{\"http\":{\"requestUri\":\"/2013-04-01/trafficpolicyinstance\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateTrafficPolicyInstanceRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"Name\",\"TTL\",\"TrafficPolicyId\",\"TrafficPolicyVersion\"],\"members\":{\"HostedZoneId\":{},\"Name\":{},\"TTL\":{\"type\":\"long\"},\"TrafficPolicyId\":{},\"TrafficPolicyVersion\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstance\",\"Location\"],\"members\":{\"TrafficPolicyInstance\":{\"shape\":\"S3g\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateTrafficPolicyVersion\":{\"http\":{\"requestUri\":\"/2013-04-01/trafficpolicy/{Id}\",\"responseCode\":201},\"input\":{\"locationName\":\"CreateTrafficPolicyVersionRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"Id\",\"Document\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Document\":{},\"Comment\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicy\",\"Location\"],\"members\":{\"TrafficPolicy\":{\"shape\":\"S3b\"},\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}}},\"CreateVPCAssociationAuthorization\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/authorizevpcassociation\"},\"input\":{\"locationName\":\"CreateVPCAssociationAuthorizationRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"VPC\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"VPC\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"VPC\"],\"members\":{\"HostedZoneId\":{},\"VPC\":{\"shape\":\"Sa\"}}}},\"DeactivateKeySigningKey\":{\"http\":{\"requestUri\":\"/2013-04-01/keysigningkey/{HostedZoneId}/{Name}/deactivate\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"Name\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"HostedZoneId\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"DeleteHealthCheck\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/healthcheck/{HealthCheckId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HealthCheckId\"],\"members\":{\"HealthCheckId\":{\"location\":\"uri\",\"locationName\":\"HealthCheckId\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteHostedZone\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/hostedzone/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"DeleteKeySigningKey\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/keysigningkey/{HostedZoneId}/{Name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"Name\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"HostedZoneId\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"Name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"DeleteQueryLoggingConfig\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/queryloggingconfig/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteReusableDelegationSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/delegationset/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTrafficPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/trafficpolicy/{Id}/{Version}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"Version\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Version\":{\"location\":\"uri\",\"locationName\":\"Version\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTrafficPolicyInstance\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/2013-04-01/trafficpolicyinstance/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteVPCAssociationAuthorization\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/deauthorizevpcassociation\"},\"input\":{\"locationName\":\"DeleteVPCAssociationAuthorizationRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"VPC\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"VPC\":{\"shape\":\"Sa\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableHostedZoneDNSSEC\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/disable-dnssec\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"DisassociateVPCFromHostedZone\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/disassociatevpc\"},\"input\":{\"locationName\":\"DisassociateVPCFromHostedZoneRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"VPC\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"VPC\":{\"shape\":\"Sa\"},\"Comment\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"EnableHostedZoneDNSSEC\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}/enable-dnssec\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"GetAccountLimit\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/accountlimit/{Type}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{\"location\":\"uri\",\"locationName\":\"Type\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Limit\",\"Count\"],\"members\":{\"Limit\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{\"type\":\"long\"}}},\"Count\":{\"type\":\"long\"}}}},\"GetChange\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/change/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ChangeInfo\"],\"members\":{\"ChangeInfo\":{\"shape\":\"S5\"}}}},\"GetCheckerIpRanges\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/checkeripranges\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"CheckerIpRanges\"],\"members\":{\"CheckerIpRanges\":{\"type\":\"list\",\"member\":{}}}}},\"GetDNSSEC\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzone/{Id}/dnssec\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Status\",\"KeySigningKeys\"],\"members\":{\"Status\":{\"type\":\"structure\",\"members\":{\"ServeSignature\":{},\"StatusMessage\":{}}},\"KeySigningKeys\":{\"type\":\"list\",\"member\":{\"shape\":\"S2v\"}}}}},\"GetGeoLocation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/geolocation\"},\"input\":{\"type\":\"structure\",\"members\":{\"ContinentCode\":{\"location\":\"querystring\",\"locationName\":\"continentcode\"},\"CountryCode\":{\"location\":\"querystring\",\"locationName\":\"countrycode\"},\"SubdivisionCode\":{\"location\":\"querystring\",\"locationName\":\"subdivisioncode\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"GeoLocationDetails\"],\"members\":{\"GeoLocationDetails\":{\"shape\":\"S4v\"}}}},\"GetHealthCheck\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/healthcheck/{HealthCheckId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HealthCheckId\"],\"members\":{\"HealthCheckId\":{\"location\":\"uri\",\"locationName\":\"HealthCheckId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthCheck\"],\"members\":{\"HealthCheck\":{\"shape\":\"S22\"}}}},\"GetHealthCheckCount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/healthcheckcount\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthCheckCount\"],\"members\":{\"HealthCheckCount\":{\"type\":\"long\"}}}},\"GetHealthCheckLastFailureReason\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/healthcheck/{HealthCheckId}/lastfailurereason\"},\"input\":{\"type\":\"structure\",\"required\":[\"HealthCheckId\"],\"members\":{\"HealthCheckId\":{\"location\":\"uri\",\"locationName\":\"HealthCheckId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthCheckObservations\"],\"members\":{\"HealthCheckObservations\":{\"shape\":\"S56\"}}}},\"GetHealthCheckStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/healthcheck/{HealthCheckId}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"HealthCheckId\"],\"members\":{\"HealthCheckId\":{\"location\":\"uri\",\"locationName\":\"HealthCheckId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthCheckObservations\"],\"members\":{\"HealthCheckObservations\":{\"shape\":\"S56\"}}}},\"GetHostedZone\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzone/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZone\"],\"members\":{\"HostedZone\":{\"shape\":\"S2n\"},\"DelegationSet\":{\"shape\":\"S2p\"},\"VPCs\":{\"shape\":\"S5e\"}}}},\"GetHostedZoneCount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzonecount\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZoneCount\"],\"members\":{\"HostedZoneCount\":{\"type\":\"long\"}}}},\"GetHostedZoneLimit\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzonelimit/{Id}/{Type}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Type\",\"HostedZoneId\"],\"members\":{\"Type\":{\"location\":\"uri\",\"locationName\":\"Type\"},\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Limit\",\"Count\"],\"members\":{\"Limit\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{\"type\":\"long\"}}},\"Count\":{\"type\":\"long\"}}}},\"GetQueryLoggingConfig\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/queryloggingconfig/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"QueryLoggingConfig\"],\"members\":{\"QueryLoggingConfig\":{\"shape\":\"S32\"}}}},\"GetReusableDelegationSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/delegationset/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DelegationSet\"],\"members\":{\"DelegationSet\":{\"shape\":\"S2p\"}}}},\"GetReusableDelegationSetLimit\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/reusabledelegationsetlimit/{Id}/{Type}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Type\",\"DelegationSetId\"],\"members\":{\"Type\":{\"location\":\"uri\",\"locationName\":\"Type\"},\"DelegationSetId\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Limit\",\"Count\"],\"members\":{\"Limit\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{\"type\":\"long\"}}},\"Count\":{\"type\":\"long\"}}}},\"GetTrafficPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicy/{Id}/{Version}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"Version\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Version\":{\"location\":\"uri\",\"locationName\":\"Version\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicy\"],\"members\":{\"TrafficPolicy\":{\"shape\":\"S3b\"}}}},\"GetTrafficPolicyInstance\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicyinstance/{Id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstance\"],\"members\":{\"TrafficPolicyInstance\":{\"shape\":\"S3g\"}}}},\"GetTrafficPolicyInstanceCount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicyinstancecount\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstanceCount\"],\"members\":{\"TrafficPolicyInstanceCount\":{\"type\":\"integer\"}}}},\"ListGeoLocations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/geolocations\"},\"input\":{\"type\":\"structure\",\"members\":{\"StartContinentCode\":{\"location\":\"querystring\",\"locationName\":\"startcontinentcode\"},\"StartCountryCode\":{\"location\":\"querystring\",\"locationName\":\"startcountrycode\"},\"StartSubdivisionCode\":{\"location\":\"querystring\",\"locationName\":\"startsubdivisioncode\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"GeoLocationDetailsList\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"GeoLocationDetailsList\":{\"type\":\"list\",\"member\":{\"shape\":\"S4v\",\"locationName\":\"GeoLocationDetails\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"NextContinentCode\":{},\"NextCountryCode\":{},\"NextSubdivisionCode\":{},\"MaxItems\":{}}}},\"ListHealthChecks\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/healthcheck\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthChecks\",\"Marker\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"HealthChecks\":{\"type\":\"list\",\"member\":{\"shape\":\"S22\",\"locationName\":\"HealthCheck\"}},\"Marker\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"NextMarker\":{},\"MaxItems\":{}}}},\"ListHostedZones\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzone\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"},\"DelegationSetId\":{\"location\":\"querystring\",\"locationName\":\"delegationsetid\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZones\",\"Marker\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"HostedZones\":{\"shape\":\"S6c\"},\"Marker\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"NextMarker\":{},\"MaxItems\":{}}}},\"ListHostedZonesByName\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzonesbyname\"},\"input\":{\"type\":\"structure\",\"members\":{\"DNSName\":{\"location\":\"querystring\",\"locationName\":\"dnsname\"},\"HostedZoneId\":{\"location\":\"querystring\",\"locationName\":\"hostedzoneid\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZones\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"HostedZones\":{\"shape\":\"S6c\"},\"DNSName\":{},\"HostedZoneId\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"NextDNSName\":{},\"NextHostedZoneId\":{},\"MaxItems\":{}}}},\"ListHostedZonesByVPC\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzonesbyvpc\"},\"input\":{\"type\":\"structure\",\"required\":[\"VPCId\",\"VPCRegion\"],\"members\":{\"VPCId\":{\"location\":\"querystring\",\"locationName\":\"vpcid\"},\"VPCRegion\":{\"location\":\"querystring\",\"locationName\":\"vpcregion\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nexttoken\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZoneSummaries\",\"MaxItems\"],\"members\":{\"HostedZoneSummaries\":{\"type\":\"list\",\"member\":{\"locationName\":\"HostedZoneSummary\",\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"Name\",\"Owner\"],\"members\":{\"HostedZoneId\":{},\"Name\":{},\"Owner\":{\"type\":\"structure\",\"members\":{\"OwningAccount\":{},\"OwningService\":{}}}}}},\"MaxItems\":{},\"NextToken\":{}}}},\"ListQueryLoggingConfigs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/queryloggingconfig\"},\"input\":{\"type\":\"structure\",\"members\":{\"HostedZoneId\":{\"location\":\"querystring\",\"locationName\":\"hostedzoneid\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nexttoken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxresults\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"QueryLoggingConfigs\"],\"members\":{\"QueryLoggingConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S32\",\"locationName\":\"QueryLoggingConfig\"}},\"NextToken\":{}}}},\"ListResourceRecordSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzone/{Id}/rrset\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"StartRecordName\":{\"location\":\"querystring\",\"locationName\":\"name\"},\"StartRecordType\":{\"location\":\"querystring\",\"locationName\":\"type\"},\"StartRecordIdentifier\":{\"location\":\"querystring\",\"locationName\":\"identifier\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceRecordSets\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"ResourceRecordSets\":{\"type\":\"list\",\"member\":{\"shape\":\"Sk\",\"locationName\":\"ResourceRecordSet\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"NextRecordName\":{},\"NextRecordType\":{},\"NextRecordIdentifier\":{},\"MaxItems\":{}}}},\"ListReusableDelegationSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/delegationset\"},\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DelegationSets\",\"Marker\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"DelegationSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S2p\",\"locationName\":\"DelegationSet\"}},\"Marker\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"NextMarker\":{},\"MaxItems\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/tags/{ResourceType}/{ResourceId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\"],\"members\":{\"ResourceType\":{\"location\":\"uri\",\"locationName\":\"ResourceType\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceTagSet\"],\"members\":{\"ResourceTagSet\":{\"shape\":\"S6z\"}}}},\"ListTagsForResources\":{\"http\":{\"requestUri\":\"/2013-04-01/tags/{ResourceType}\"},\"input\":{\"locationName\":\"ListTagsForResourcesRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceIds\"],\"members\":{\"ResourceType\":{\"location\":\"uri\",\"locationName\":\"ResourceType\"},\"ResourceIds\":{\"type\":\"list\",\"member\":{\"locationName\":\"ResourceId\"}}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceTagSets\"],\"members\":{\"ResourceTagSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S6z\",\"locationName\":\"ResourceTagSet\"}}}}},\"ListTrafficPolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicies\"},\"input\":{\"type\":\"structure\",\"members\":{\"TrafficPolicyIdMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyid\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicySummaries\",\"IsTruncated\",\"TrafficPolicyIdMarker\",\"MaxItems\"],\"members\":{\"TrafficPolicySummaries\":{\"type\":\"list\",\"member\":{\"locationName\":\"TrafficPolicySummary\",\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"Type\",\"LatestVersion\",\"TrafficPolicyCount\"],\"members\":{\"Id\":{},\"Name\":{},\"Type\":{},\"LatestVersion\":{\"type\":\"integer\"},\"TrafficPolicyCount\":{\"type\":\"integer\"}}}},\"IsTruncated\":{\"type\":\"boolean\"},\"TrafficPolicyIdMarker\":{},\"MaxItems\":{}}}},\"ListTrafficPolicyInstances\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicyinstances\"},\"input\":{\"type\":\"structure\",\"members\":{\"HostedZoneIdMarker\":{\"location\":\"querystring\",\"locationName\":\"hostedzoneid\"},\"TrafficPolicyInstanceNameMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyinstancename\"},\"TrafficPolicyInstanceTypeMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyinstancetype\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstances\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"TrafficPolicyInstances\":{\"shape\":\"S7a\"},\"HostedZoneIdMarker\":{},\"TrafficPolicyInstanceNameMarker\":{},\"TrafficPolicyInstanceTypeMarker\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"MaxItems\":{}}}},\"ListTrafficPolicyInstancesByHostedZone\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicyinstances/hostedzone\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\"],\"members\":{\"HostedZoneId\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"TrafficPolicyInstanceNameMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyinstancename\"},\"TrafficPolicyInstanceTypeMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyinstancetype\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstances\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"TrafficPolicyInstances\":{\"shape\":\"S7a\"},\"TrafficPolicyInstanceNameMarker\":{},\"TrafficPolicyInstanceTypeMarker\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"MaxItems\":{}}}},\"ListTrafficPolicyInstancesByPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicyinstances/trafficpolicy\"},\"input\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyId\",\"TrafficPolicyVersion\"],\"members\":{\"TrafficPolicyId\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"TrafficPolicyVersion\":{\"location\":\"querystring\",\"locationName\":\"version\",\"type\":\"integer\"},\"HostedZoneIdMarker\":{\"location\":\"querystring\",\"locationName\":\"hostedzoneid\"},\"TrafficPolicyInstanceNameMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyinstancename\"},\"TrafficPolicyInstanceTypeMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyinstancetype\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstances\",\"IsTruncated\",\"MaxItems\"],\"members\":{\"TrafficPolicyInstances\":{\"shape\":\"S7a\"},\"HostedZoneIdMarker\":{},\"TrafficPolicyInstanceNameMarker\":{},\"TrafficPolicyInstanceTypeMarker\":{},\"IsTruncated\":{\"type\":\"boolean\"},\"MaxItems\":{}}}},\"ListTrafficPolicyVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/trafficpolicies/{Id}/versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"TrafficPolicyVersionMarker\":{\"location\":\"querystring\",\"locationName\":\"trafficpolicyversion\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxitems\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicies\",\"IsTruncated\",\"TrafficPolicyVersionMarker\",\"MaxItems\"],\"members\":{\"TrafficPolicies\":{\"type\":\"list\",\"member\":{\"shape\":\"S3b\",\"locationName\":\"TrafficPolicy\"}},\"IsTruncated\":{\"type\":\"boolean\"},\"TrafficPolicyVersionMarker\":{},\"MaxItems\":{}}}},\"ListVPCAssociationAuthorizations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/hostedzone/{Id}/authorizevpcassociation\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\"],\"members\":{\"HostedZoneId\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nexttoken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxresults\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"VPCs\"],\"members\":{\"HostedZoneId\":{},\"NextToken\":{},\"VPCs\":{\"shape\":\"S5e\"}}}},\"TestDNSAnswer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/2013-04-01/testdnsanswer\"},\"input\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"RecordName\",\"RecordType\"],\"members\":{\"HostedZoneId\":{\"location\":\"querystring\",\"locationName\":\"hostedzoneid\"},\"RecordName\":{\"location\":\"querystring\",\"locationName\":\"recordname\"},\"RecordType\":{\"location\":\"querystring\",\"locationName\":\"recordtype\"},\"ResolverIP\":{\"location\":\"querystring\",\"locationName\":\"resolverip\"},\"EDNS0ClientSubnetIP\":{\"location\":\"querystring\",\"locationName\":\"edns0clientsubnetip\"},\"EDNS0ClientSubnetMask\":{\"location\":\"querystring\",\"locationName\":\"edns0clientsubnetmask\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Nameserver\",\"RecordName\",\"RecordType\",\"RecordData\",\"ResponseCode\",\"Protocol\"],\"members\":{\"Nameserver\":{},\"RecordName\":{},\"RecordType\":{},\"RecordData\":{\"type\":\"list\",\"member\":{\"locationName\":\"RecordDataEntry\"}},\"ResponseCode\":{},\"Protocol\":{}}}},\"UpdateHealthCheck\":{\"http\":{\"requestUri\":\"/2013-04-01/healthcheck/{HealthCheckId}\"},\"input\":{\"locationName\":\"UpdateHealthCheckRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"HealthCheckId\"],\"members\":{\"HealthCheckId\":{\"location\":\"uri\",\"locationName\":\"HealthCheckId\"},\"HealthCheckVersion\":{\"type\":\"long\"},\"IPAddress\":{},\"Port\":{\"type\":\"integer\"},\"ResourcePath\":{},\"FullyQualifiedDomainName\":{},\"SearchString\":{},\"FailureThreshold\":{\"type\":\"integer\"},\"Inverted\":{\"type\":\"boolean\"},\"Disabled\":{\"type\":\"boolean\"},\"HealthThreshold\":{\"type\":\"integer\"},\"ChildHealthChecks\":{\"shape\":\"S1t\"},\"EnableSNI\":{\"type\":\"boolean\"},\"Regions\":{\"shape\":\"S1v\"},\"AlarmIdentifier\":{\"shape\":\"S1x\"},\"InsufficientDataHealthStatus\":{},\"ResetElements\":{\"type\":\"list\",\"member\":{\"locationName\":\"ResettableElementName\"}}}},\"output\":{\"type\":\"structure\",\"required\":[\"HealthCheck\"],\"members\":{\"HealthCheck\":{\"shape\":\"S22\"}}}},\"UpdateHostedZoneComment\":{\"http\":{\"requestUri\":\"/2013-04-01/hostedzone/{Id}\"},\"input\":{\"locationName\":\"UpdateHostedZoneCommentRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Comment\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"HostedZone\"],\"members\":{\"HostedZone\":{\"shape\":\"S2n\"}}}},\"UpdateTrafficPolicyComment\":{\"http\":{\"requestUri\":\"/2013-04-01/trafficpolicy/{Id}/{Version}\"},\"input\":{\"locationName\":\"UpdateTrafficPolicyCommentRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"Id\",\"Version\",\"Comment\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"Version\":{\"location\":\"uri\",\"locationName\":\"Version\",\"type\":\"integer\"},\"Comment\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicy\"],\"members\":{\"TrafficPolicy\":{\"shape\":\"S3b\"}}}},\"UpdateTrafficPolicyInstance\":{\"http\":{\"requestUri\":\"/2013-04-01/trafficpolicyinstance/{Id}\"},\"input\":{\"locationName\":\"UpdateTrafficPolicyInstanceRequest\",\"xmlNamespace\":{\"uri\":\"https://route53.amazonaws.com/doc/2013-04-01/\"},\"type\":\"structure\",\"required\":[\"Id\",\"TTL\",\"TrafficPolicyId\",\"TrafficPolicyVersion\"],\"members\":{\"Id\":{\"location\":\"uri\",\"locationName\":\"Id\"},\"TTL\":{\"type\":\"long\"},\"TrafficPolicyId\":{},\"TrafficPolicyVersion\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrafficPolicyInstance\"],\"members\":{\"TrafficPolicyInstance\":{\"shape\":\"S3g\"}}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"SubmittedAt\"],\"members\":{\"Id\":{},\"Status\":{},\"SubmittedAt\":{\"type\":\"timestamp\"},\"Comment\":{}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"VPCRegion\":{},\"VPCId\":{}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Type\":{},\"SetIdentifier\":{},\"Weight\":{\"type\":\"long\"},\"Region\":{},\"GeoLocation\":{\"type\":\"structure\",\"members\":{\"ContinentCode\":{},\"CountryCode\":{},\"SubdivisionCode\":{}}},\"Failover\":{},\"MultiValueAnswer\":{\"type\":\"boolean\"},\"TTL\":{\"type\":\"long\"},\"ResourceRecords\":{\"type\":\"list\",\"member\":{\"locationName\":\"ResourceRecord\",\"type\":\"structure\",\"required\":[\"Value\"],\"members\":{\"Value\":{}}}},\"AliasTarget\":{\"type\":\"structure\",\"required\":[\"HostedZoneId\",\"DNSName\",\"EvaluateTargetHealth\"],\"members\":{\"HostedZoneId\":{},\"DNSName\":{},\"EvaluateTargetHealth\":{\"type\":\"boolean\"}}},\"HealthCheckId\":{},\"TrafficPolicyInstanceId\":{}}},\"S18\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S1g\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"IPAddress\":{},\"Port\":{\"type\":\"integer\"},\"Type\":{},\"ResourcePath\":{},\"FullyQualifiedDomainName\":{},\"SearchString\":{},\"RequestInterval\":{\"type\":\"integer\"},\"FailureThreshold\":{\"type\":\"integer\"},\"MeasureLatency\":{\"type\":\"boolean\"},\"Inverted\":{\"type\":\"boolean\"},\"Disabled\":{\"type\":\"boolean\"},\"HealthThreshold\":{\"type\":\"integer\"},\"ChildHealthChecks\":{\"shape\":\"S1t\"},\"EnableSNI\":{\"type\":\"boolean\"},\"Regions\":{\"shape\":\"S1v\"},\"AlarmIdentifier\":{\"shape\":\"S1x\"},\"InsufficientDataHealthStatus\":{}}},\"S1t\":{\"type\":\"list\",\"member\":{\"locationName\":\"ChildHealthCheck\"}},\"S1v\":{\"type\":\"list\",\"member\":{\"locationName\":\"Region\"}},\"S1x\":{\"type\":\"structure\",\"required\":[\"Region\",\"Name\"],\"members\":{\"Region\":{},\"Name\":{}}},\"S22\":{\"type\":\"structure\",\"required\":[\"Id\",\"CallerReference\",\"HealthCheckConfig\",\"HealthCheckVersion\"],\"members\":{\"Id\":{},\"CallerReference\":{},\"LinkedService\":{\"shape\":\"S23\"},\"HealthCheckConfig\":{\"shape\":\"S1g\"},\"HealthCheckVersion\":{\"type\":\"long\"},\"CloudWatchAlarmConfiguration\":{\"type\":\"structure\",\"required\":[\"EvaluationPeriods\",\"Threshold\",\"ComparisonOperator\",\"Period\",\"MetricName\",\"Namespace\",\"Statistic\"],\"members\":{\"EvaluationPeriods\":{\"type\":\"integer\"},\"Threshold\":{\"type\":\"double\"},\"ComparisonOperator\":{},\"Period\":{\"type\":\"integer\"},\"MetricName\":{},\"Namespace\":{},\"Statistic\":{},\"Dimensions\":{\"type\":\"list\",\"member\":{\"locationName\":\"Dimension\",\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}}}}}},\"S23\":{\"type\":\"structure\",\"members\":{\"ServicePrincipal\":{},\"Description\":{}}},\"S2k\":{\"type\":\"structure\",\"members\":{\"Comment\":{},\"PrivateZone\":{\"type\":\"boolean\"}}},\"S2n\":{\"type\":\"structure\",\"required\":[\"Id\",\"Name\",\"CallerReference\"],\"members\":{\"Id\":{},\"Name\":{},\"CallerReference\":{},\"Config\":{\"shape\":\"S2k\"},\"ResourceRecordSetCount\":{\"type\":\"long\"},\"LinkedService\":{\"shape\":\"S23\"}}},\"S2p\":{\"type\":\"structure\",\"required\":[\"NameServers\"],\"members\":{\"Id\":{},\"CallerReference\":{},\"NameServers\":{\"type\":\"list\",\"member\":{\"locationName\":\"NameServer\"}}}},\"S2v\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"KmsArn\":{},\"Flag\":{\"type\":\"integer\"},\"SigningAlgorithmMnemonic\":{},\"SigningAlgorithmType\":{\"type\":\"integer\"},\"DigestAlgorithmMnemonic\":{},\"DigestAlgorithmType\":{\"type\":\"integer\"},\"KeyTag\":{\"type\":\"integer\"},\"DigestValue\":{},\"PublicKey\":{},\"DSRecord\":{},\"DNSKEYRecord\":{},\"Status\":{},\"StatusMessage\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"LastModifiedDate\":{\"type\":\"timestamp\"}}},\"S32\":{\"type\":\"structure\",\"required\":[\"Id\",\"HostedZoneId\",\"CloudWatchLogsLogGroupArn\"],\"members\":{\"Id\":{},\"HostedZoneId\":{},\"CloudWatchLogsLogGroupArn\":{}}},\"S3b\":{\"type\":\"structure\",\"required\":[\"Id\",\"Version\",\"Name\",\"Type\",\"Document\"],\"members\":{\"Id\":{},\"Version\":{\"type\":\"integer\"},\"Name\":{},\"Type\":{},\"Document\":{},\"Comment\":{}}},\"S3g\":{\"type\":\"structure\",\"required\":[\"Id\",\"HostedZoneId\",\"Name\",\"TTL\",\"State\",\"Message\",\"TrafficPolicyId\",\"TrafficPolicyVersion\",\"TrafficPolicyType\"],\"members\":{\"Id\":{},\"HostedZoneId\":{},\"Name\":{},\"TTL\":{\"type\":\"long\"},\"State\":{},\"Message\":{},\"TrafficPolicyId\":{},\"TrafficPolicyVersion\":{\"type\":\"integer\"},\"TrafficPolicyType\":{}}},\"S4v\":{\"type\":\"structure\",\"members\":{\"ContinentCode\":{},\"ContinentName\":{},\"CountryCode\":{},\"CountryName\":{},\"SubdivisionCode\":{},\"SubdivisionName\":{}}},\"S56\":{\"type\":\"list\",\"member\":{\"locationName\":\"HealthCheckObservation\",\"type\":\"structure\",\"members\":{\"Region\":{},\"IPAddress\":{},\"StatusReport\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"CheckedTime\":{\"type\":\"timestamp\"}}}}}},\"S5e\":{\"type\":\"list\",\"member\":{\"shape\":\"Sa\",\"locationName\":\"VPC\"}},\"S6c\":{\"type\":\"list\",\"member\":{\"shape\":\"S2n\",\"locationName\":\"HostedZone\"}},\"S6z\":{\"type\":\"structure\",\"members\":{\"ResourceType\":{},\"ResourceId\":{},\"Tags\":{\"shape\":\"S18\"}}},\"S7a\":{\"type\":\"list\",\"member\":{\"shape\":\"S3g\",\"locationName\":\"TrafficPolicyInstance\"}}}}");

/***/ }),

/***/ 54519:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListHealthChecks\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"NextMarker\",\"result_key\":\"HealthChecks\"},\"ListHostedZones\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":\"NextMarker\",\"result_key\":\"HostedZones\"},\"ListQueryLoggingConfigs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"QueryLoggingConfigs\"},\"ListResourceRecordSets\":{\"input_token\":[\"StartRecordName\",\"StartRecordType\",\"StartRecordIdentifier\"],\"limit_key\":\"MaxItems\",\"more_results\":\"IsTruncated\",\"output_token\":[\"NextRecordName\",\"NextRecordType\",\"NextRecordIdentifier\"],\"result_key\":\"ResourceRecordSets\"}}}");

/***/ }),

/***/ 4628:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"ResourceRecordSetsChanged\":{\"delay\":30,\"maxAttempts\":60,\"operation\":\"GetChange\",\"acceptors\":[{\"matcher\":\"path\",\"expected\":\"INSYNC\",\"argument\":\"ChangeInfo.Status\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 6535:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-05-15\",\"endpointPrefix\":\"route53domains\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Route 53 Domains\",\"serviceId\":\"Route 53 Domains\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Route53Domains_v20140515\",\"uid\":\"route53domains-2014-05-15\"},\"operations\":{\"AcceptDomainTransferFromAnotherAwsAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Password\"],\"members\":{\"DomainName\":{},\"Password\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"CancelDomainTransferToAnotherAwsAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"CheckDomainAvailability\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"IdnLangCode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Availability\"],\"members\":{\"Availability\":{}}}},\"CheckDomainTransferability\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"AuthCode\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Transferability\"],\"members\":{\"Transferability\":{\"type\":\"structure\",\"members\":{\"Transferable\":{}}}}}},\"DeleteTagsForDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"TagsToDelete\"],\"members\":{\"DomainName\":{},\"TagsToDelete\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableDomainAutoRenew\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableDomainTransferLock\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"EnableDomainAutoRenew\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableDomainTransferLock\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"GetContactReachabilityStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"domainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"domainName\":{},\"status\":{}}}},\"GetDomainDetail\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Nameservers\",\"AdminContact\",\"RegistrantContact\",\"TechContact\"],\"members\":{\"DomainName\":{},\"Nameservers\":{\"shape\":\"Sy\"},\"AutoRenew\":{\"type\":\"boolean\"},\"AdminContact\":{\"shape\":\"S14\"},\"RegistrantContact\":{\"shape\":\"S14\"},\"TechContact\":{\"shape\":\"S14\"},\"AdminPrivacy\":{\"type\":\"boolean\"},\"RegistrantPrivacy\":{\"type\":\"boolean\"},\"TechPrivacy\":{\"type\":\"boolean\"},\"RegistrarName\":{},\"WhoIsServer\":{},\"RegistrarUrl\":{},\"AbuseContactEmail\":{},\"AbuseContactPhone\":{},\"RegistryDomainId\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"UpdatedDate\":{\"type\":\"timestamp\"},\"ExpirationDate\":{\"type\":\"timestamp\"},\"Reseller\":{},\"DnsSec\":{},\"StatusList\":{\"type\":\"list\",\"member\":{}}}}},\"GetDomainSuggestions\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"SuggestionCount\",\"OnlyAvailable\"],\"members\":{\"DomainName\":{},\"SuggestionCount\":{\"type\":\"integer\"},\"OnlyAvailable\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuggestionsList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"Availability\":{}}}}}}},\"GetOperationDetail\":{\"input\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{},\"Status\":{},\"Message\":{},\"DomainName\":{},\"Type\":{},\"SubmittedDate\":{\"type\":\"timestamp\"}}}},\"ListDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Domains\"],\"members\":{\"Domains\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"AutoRenew\":{\"type\":\"boolean\"},\"TransferLock\":{\"type\":\"boolean\"},\"Expiry\":{\"type\":\"timestamp\"}}}},\"NextPageMarker\":{}}}},\"ListOperations\":{\"input\":{\"type\":\"structure\",\"members\":{\"SubmittedSince\":{\"type\":\"timestamp\"},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Operations\"],\"members\":{\"Operations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OperationId\",\"Status\",\"Type\",\"SubmittedDate\"],\"members\":{\"OperationId\":{},\"Status\":{},\"Type\":{},\"SubmittedDate\":{\"type\":\"timestamp\"}}}},\"NextPageMarker\":{}}}},\"ListTagsForDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TagList\"],\"members\":{\"TagList\":{\"shape\":\"S2d\"}}}},\"RegisterDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"DurationInYears\",\"AdminContact\",\"RegistrantContact\",\"TechContact\"],\"members\":{\"DomainName\":{},\"IdnLangCode\":{},\"DurationInYears\":{\"type\":\"integer\"},\"AutoRenew\":{\"type\":\"boolean\"},\"AdminContact\":{\"shape\":\"S14\"},\"RegistrantContact\":{\"shape\":\"S14\"},\"TechContact\":{\"shape\":\"S14\"},\"PrivacyProtectAdminContact\":{\"type\":\"boolean\"},\"PrivacyProtectRegistrantContact\":{\"type\":\"boolean\"},\"PrivacyProtectTechContact\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"RejectDomainTransferFromAnotherAwsAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"RenewDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"CurrentExpiryYear\"],\"members\":{\"DomainName\":{},\"DurationInYears\":{\"type\":\"integer\"},\"CurrentExpiryYear\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"ResendContactReachabilityEmail\":{\"input\":{\"type\":\"structure\",\"members\":{\"domainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"domainName\":{},\"emailAddress\":{},\"isAlreadyVerified\":{\"type\":\"boolean\"}}}},\"RetrieveDomainAuthCode\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AuthCode\"],\"members\":{\"AuthCode\":{\"shape\":\"Sd\"}}}},\"TransferDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"DurationInYears\",\"AdminContact\",\"RegistrantContact\",\"TechContact\"],\"members\":{\"DomainName\":{},\"IdnLangCode\":{},\"DurationInYears\":{\"type\":\"integer\"},\"Nameservers\":{\"shape\":\"Sy\"},\"AuthCode\":{\"shape\":\"Sd\"},\"AutoRenew\":{\"type\":\"boolean\"},\"AdminContact\":{\"shape\":\"S14\"},\"RegistrantContact\":{\"shape\":\"S14\"},\"TechContact\":{\"shape\":\"S14\"},\"PrivacyProtectAdminContact\":{\"type\":\"boolean\"},\"PrivacyProtectRegistrantContact\":{\"type\":\"boolean\"},\"PrivacyProtectTechContact\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"TransferDomainToAnotherAwsAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"AccountId\"],\"members\":{\"DomainName\":{},\"AccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{},\"Password\":{}}}},\"UpdateDomainContact\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"AdminContact\":{\"shape\":\"S14\"},\"RegistrantContact\":{\"shape\":\"S14\"},\"TechContact\":{\"shape\":\"S14\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"UpdateDomainContactPrivacy\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"AdminPrivacy\":{\"type\":\"boolean\"},\"RegistrantPrivacy\":{\"type\":\"boolean\"},\"TechPrivacy\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"UpdateDomainNameservers\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Nameservers\"],\"members\":{\"DomainName\":{},\"FIAuthKey\":{\"deprecated\":true},\"Nameservers\":{\"shape\":\"Sy\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}}},\"UpdateTagsForDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{},\"TagsToUpdate\":{\"shape\":\"S2d\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ViewBilling\":{\"input\":{\"type\":\"structure\",\"members\":{\"Start\":{\"type\":\"timestamp\"},\"End\":{\"type\":\"timestamp\"},\"Marker\":{},\"MaxItems\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextPageMarker\":{},\"BillingRecords\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"Operation\":{},\"InvoiceId\":{},\"BillDate\":{\"type\":\"timestamp\"},\"Price\":{\"type\":\"double\"}}}}}}}},\"shapes\":{\"Sd\":{\"type\":\"string\",\"sensitive\":true},\"Sy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"GlueIps\":{\"type\":\"list\",\"member\":{}}}}},\"S14\":{\"type\":\"structure\",\"members\":{\"FirstName\":{},\"LastName\":{},\"ContactType\":{},\"OrganizationName\":{},\"AddressLine1\":{},\"AddressLine2\":{},\"City\":{},\"State\":{},\"CountryCode\":{},\"ZipCode\":{},\"PhoneNumber\":{},\"Email\":{},\"Fax\":{},\"ExtraParams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}}},\"sensitive\":true},\"S2d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 26777:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDomains\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextPageMarker\",\"result_key\":\"Domains\"},\"ListOperations\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxItems\",\"output_token\":\"NextPageMarker\",\"result_key\":\"Operations\"}}}");

/***/ }),

/***/ 99309:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-04-01\",\"endpointPrefix\":\"route53resolver\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Route53Resolver\",\"serviceFullName\":\"Amazon Route 53 Resolver\",\"serviceId\":\"Route53Resolver\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Route53Resolver\",\"uid\":\"route53resolver-2018-04-01\"},\"operations\":{\"AssociateFirewallRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreatorRequestId\",\"FirewallRuleGroupId\",\"VpcId\",\"Priority\",\"Name\"],\"members\":{\"CreatorRequestId\":{\"idempotencyToken\":true},\"FirewallRuleGroupId\":{},\"VpcId\":{},\"Priority\":{\"type\":\"integer\"},\"Name\":{},\"MutationProtection\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupAssociation\":{\"shape\":\"Sc\"}}}},\"AssociateResolverEndpointIpAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverEndpointId\",\"IpAddress\"],\"members\":{\"ResolverEndpointId\":{},\"IpAddress\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverEndpoint\":{\"shape\":\"Sn\"}}}},\"AssociateResolverQueryLogConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverQueryLogConfigId\",\"ResourceId\"],\"members\":{\"ResolverQueryLogConfigId\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfigAssociation\":{\"shape\":\"Su\"}}}},\"AssociateResolverRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverRuleId\",\"VPCId\"],\"members\":{\"ResolverRuleId\":{},\"Name\":{},\"VPCId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRuleAssociation\":{\"shape\":\"S10\"}}}},\"CreateFirewallDomainList\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreatorRequestId\",\"Name\"],\"members\":{\"CreatorRequestId\":{\"idempotencyToken\":true},\"Name\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallDomainList\":{\"shape\":\"S14\"}}}},\"CreateFirewallRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreatorRequestId\",\"FirewallRuleGroupId\",\"FirewallDomainListId\",\"Priority\",\"Action\",\"Name\"],\"members\":{\"CreatorRequestId\":{\"idempotencyToken\":true},\"FirewallRuleGroupId\":{},\"FirewallDomainListId\":{},\"Priority\":{\"type\":\"integer\"},\"Action\":{},\"BlockResponse\":{},\"BlockOverrideDomain\":{},\"BlockOverrideDnsType\":{},\"BlockOverrideTtl\":{\"type\":\"integer\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRule\":{\"shape\":\"S1e\"}}}},\"CreateFirewallRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreatorRequestId\",\"Name\"],\"members\":{\"CreatorRequestId\":{\"idempotencyToken\":true},\"Name\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroup\":{\"shape\":\"S1h\"}}}},\"CreateResolverEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreatorRequestId\",\"SecurityGroupIds\",\"Direction\",\"IpAddresses\"],\"members\":{\"CreatorRequestId\":{},\"Name\":{},\"SecurityGroupIds\":{\"shape\":\"So\"},\"Direction\":{},\"IpAddresses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SubnetId\"],\"members\":{\"SubnetId\":{},\"Ip\":{}}}},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverEndpoint\":{\"shape\":\"Sn\"}}}},\"CreateResolverQueryLogConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"DestinationArn\",\"CreatorRequestId\"],\"members\":{\"Name\":{},\"DestinationArn\":{},\"CreatorRequestId\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfig\":{\"shape\":\"S1t\"}}}},\"CreateResolverRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"CreatorRequestId\",\"RuleType\",\"DomainName\"],\"members\":{\"CreatorRequestId\":{},\"Name\":{},\"RuleType\":{},\"DomainName\":{},\"TargetIps\":{\"shape\":\"S1z\"},\"ResolverEndpointId\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRule\":{\"shape\":\"S23\"}}}},\"DeleteFirewallDomainList\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallDomainListId\"],\"members\":{\"FirewallDomainListId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallDomainList\":{\"shape\":\"S14\"}}}},\"DeleteFirewallRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupId\",\"FirewallDomainListId\"],\"members\":{\"FirewallRuleGroupId\":{},\"FirewallDomainListId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRule\":{\"shape\":\"S1e\"}}}},\"DeleteFirewallRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupId\"],\"members\":{\"FirewallRuleGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroup\":{\"shape\":\"S1h\"}}}},\"DeleteResolverEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverEndpointId\"],\"members\":{\"ResolverEndpointId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverEndpoint\":{\"shape\":\"Sn\"}}}},\"DeleteResolverQueryLogConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverQueryLogConfigId\"],\"members\":{\"ResolverQueryLogConfigId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfig\":{\"shape\":\"S1t\"}}}},\"DeleteResolverRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverRuleId\"],\"members\":{\"ResolverRuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRule\":{\"shape\":\"S23\"}}}},\"DisassociateFirewallRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupAssociationId\"],\"members\":{\"FirewallRuleGroupAssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupAssociation\":{\"shape\":\"Sc\"}}}},\"DisassociateResolverEndpointIpAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverEndpointId\",\"IpAddress\"],\"members\":{\"ResolverEndpointId\":{},\"IpAddress\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverEndpoint\":{\"shape\":\"Sn\"}}}},\"DisassociateResolverQueryLogConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverQueryLogConfigId\",\"ResourceId\"],\"members\":{\"ResolverQueryLogConfigId\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfigAssociation\":{\"shape\":\"Su\"}}}},\"DisassociateResolverRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"VPCId\",\"ResolverRuleId\"],\"members\":{\"VPCId\":{},\"ResolverRuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRuleAssociation\":{\"shape\":\"S10\"}}}},\"GetFirewallConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallConfig\":{\"shape\":\"S2r\"}}}},\"GetFirewallDomainList\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallDomainListId\"],\"members\":{\"FirewallDomainListId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallDomainList\":{\"shape\":\"S14\"}}}},\"GetFirewallRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupId\"],\"members\":{\"FirewallRuleGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroup\":{\"shape\":\"S1h\"}}}},\"GetFirewallRuleGroupAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupAssociationId\"],\"members\":{\"FirewallRuleGroupAssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupAssociation\":{\"shape\":\"Sc\"}}}},\"GetFirewallRuleGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupPolicy\":{}}}},\"GetResolverDnssecConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverDNSSECConfig\":{\"shape\":\"S34\"}}}},\"GetResolverEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverEndpointId\"],\"members\":{\"ResolverEndpointId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverEndpoint\":{\"shape\":\"Sn\"}}}},\"GetResolverQueryLogConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverQueryLogConfigId\"],\"members\":{\"ResolverQueryLogConfigId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfig\":{\"shape\":\"S1t\"}}}},\"GetResolverQueryLogConfigAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverQueryLogConfigAssociationId\"],\"members\":{\"ResolverQueryLogConfigAssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfigAssociation\":{\"shape\":\"Su\"}}}},\"GetResolverQueryLogConfigPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverQueryLogConfigPolicy\":{}}}},\"GetResolverRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverRuleId\"],\"members\":{\"ResolverRuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRule\":{\"shape\":\"S23\"}}}},\"GetResolverRuleAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverRuleAssociationId\"],\"members\":{\"ResolverRuleAssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRuleAssociation\":{\"shape\":\"S10\"}}}},\"GetResolverRulePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRulePolicy\":{}}}},\"ImportFirewallDomains\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallDomainListId\",\"Operation\",\"DomainFileUrl\"],\"members\":{\"FirewallDomainListId\":{},\"Operation\":{},\"DomainFileUrl\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{},\"StatusMessage\":{}}}},\"ListFirewallConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FirewallConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S2r\"}}}}},\"ListFirewallDomainLists\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FirewallDomainLists\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"CreatorRequestId\":{},\"ManagedOwnerName\":{}}}}}}},\"ListFirewallDomains\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallDomainListId\"],\"members\":{\"FirewallDomainListId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Domains\":{\"shape\":\"S43\"}}}},\"ListFirewallRuleGroupAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupId\":{},\"VpcId\":{},\"Priority\":{\"type\":\"integer\"},\"Status\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FirewallRuleGroupAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}}}}},\"ListFirewallRuleGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FirewallRuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"OwnerId\":{},\"CreatorRequestId\":{},\"ShareStatus\":{}}}}}}},\"ListFirewallRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupId\"],\"members\":{\"FirewallRuleGroupId\":{},\"Priority\":{\"type\":\"integer\"},\"Action\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"FirewallRules\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}}}}},\"ListResolverDnssecConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S4g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"ResolverDnssecConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S34\"}}}}},\"ListResolverEndpointIpAddresses\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverEndpointId\"],\"members\":{\"ResolverEndpointId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"IpAddresses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IpId\":{},\"SubnetId\":{},\"Ip\":{},\"Status\":{},\"StatusMessage\":{},\"CreationTime\":{},\"ModificationTime\":{}}}}}}},\"ListResolverEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S4g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResolverEndpoints\":{\"type\":\"list\",\"member\":{\"shape\":\"Sn\"}}}}},\"ListResolverQueryLogConfigAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S4g\"},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"},\"TotalFilteredCount\":{\"type\":\"integer\"},\"ResolverQueryLogConfigAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}}}}},\"ListResolverQueryLogConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S4g\"},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"TotalCount\":{\"type\":\"integer\"},\"TotalFilteredCount\":{\"type\":\"integer\"},\"ResolverQueryLogConfigs\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}}}}},\"ListResolverRuleAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S4g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResolverRuleAssociations\":{\"type\":\"list\",\"member\":{\"shape\":\"S10\"}}}}},\"ListResolverRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"S4g\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ResolverRules\":{\"type\":\"list\",\"member\":{\"shape\":\"S23\"}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S7\"},\"NextToken\":{}}}},\"PutFirewallRuleGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"FirewallRuleGroupPolicy\"],\"members\":{\"Arn\":{},\"FirewallRuleGroupPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"type\":\"boolean\"}}}},\"PutResolverQueryLogConfigPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"ResolverQueryLogConfigPolicy\"],\"members\":{\"Arn\":{},\"ResolverQueryLogConfigPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"type\":\"boolean\"}}}},\"PutResolverRulePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"ResolverRulePolicy\"],\"members\":{\"Arn\":{},\"ResolverRulePolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReturnValue\":{\"type\":\"boolean\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFirewallConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"FirewallFailOpen\"],\"members\":{\"ResourceId\":{},\"FirewallFailOpen\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallConfig\":{\"shape\":\"S2r\"}}}},\"UpdateFirewallDomains\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallDomainListId\",\"Operation\",\"Domains\"],\"members\":{\"FirewallDomainListId\":{},\"Operation\":{},\"Domains\":{\"shape\":\"S43\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{},\"StatusMessage\":{}}}},\"UpdateFirewallRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupId\",\"FirewallDomainListId\"],\"members\":{\"FirewallRuleGroupId\":{},\"FirewallDomainListId\":{},\"Priority\":{\"type\":\"integer\"},\"Action\":{},\"BlockResponse\":{},\"BlockOverrideDomain\":{},\"BlockOverrideDnsType\":{},\"BlockOverrideTtl\":{\"type\":\"integer\"},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRule\":{\"shape\":\"S1e\"}}}},\"UpdateFirewallRuleGroupAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"FirewallRuleGroupAssociationId\"],\"members\":{\"FirewallRuleGroupAssociationId\":{},\"Priority\":{\"type\":\"integer\"},\"MutationProtection\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupAssociation\":{\"shape\":\"Sc\"}}}},\"UpdateResolverDnssecConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Validation\"],\"members\":{\"ResourceId\":{},\"Validation\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverDNSSECConfig\":{\"shape\":\"S34\"}}}},\"UpdateResolverEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverEndpointId\"],\"members\":{\"ResolverEndpointId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverEndpoint\":{\"shape\":\"Sn\"}}}},\"UpdateResolverRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResolverRuleId\",\"Config\"],\"members\":{\"ResolverRuleId\":{},\"Config\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"TargetIps\":{\"shape\":\"S1z\"},\"ResolverEndpointId\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResolverRule\":{\"shape\":\"S23\"}}}}},\"shapes\":{\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sc\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"FirewallRuleGroupId\":{},\"VpcId\":{},\"Name\":{},\"Priority\":{\"type\":\"integer\"},\"MutationProtection\":{},\"ManagedOwnerName\":{},\"Status\":{},\"StatusMessage\":{},\"CreatorRequestId\":{},\"CreationTime\":{},\"ModificationTime\":{}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"IpId\":{},\"SubnetId\":{},\"Ip\":{}}},\"Sn\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"CreatorRequestId\":{},\"Arn\":{},\"Name\":{},\"SecurityGroupIds\":{\"shape\":\"So\"},\"Direction\":{},\"IpAddressCount\":{\"type\":\"integer\"},\"HostVPCId\":{},\"Status\":{},\"StatusMessage\":{},\"CreationTime\":{},\"ModificationTime\":{}}},\"So\":{\"type\":\"list\",\"member\":{}},\"Su\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ResolverQueryLogConfigId\":{},\"ResourceId\":{},\"Status\":{},\"Error\":{},\"ErrorMessage\":{},\"CreationTime\":{}}},\"S10\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ResolverRuleId\":{},\"Name\":{},\"VPCId\":{},\"Status\":{},\"StatusMessage\":{}}},\"S14\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"DomainCount\":{\"type\":\"integer\"},\"Status\":{},\"StatusMessage\":{},\"ManagedOwnerName\":{},\"CreatorRequestId\":{},\"CreationTime\":{},\"ModificationTime\":{}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"FirewallRuleGroupId\":{},\"FirewallDomainListId\":{},\"Name\":{},\"Priority\":{\"type\":\"integer\"},\"Action\":{},\"BlockResponse\":{},\"BlockOverrideDomain\":{},\"BlockOverrideDnsType\":{},\"BlockOverrideTtl\":{\"type\":\"integer\"},\"CreatorRequestId\":{},\"CreationTime\":{},\"ModificationTime\":{}}},\"S1h\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"RuleCount\":{\"type\":\"integer\"},\"Status\":{},\"StatusMessage\":{},\"OwnerId\":{},\"CreatorRequestId\":{},\"ShareStatus\":{},\"CreationTime\":{},\"ModificationTime\":{}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"OwnerId\":{},\"Status\":{},\"ShareStatus\":{},\"AssociationCount\":{\"type\":\"integer\"},\"Arn\":{},\"Name\":{},\"DestinationArn\":{},\"CreatorRequestId\":{},\"CreationTime\":{}}},\"S1z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Ip\"],\"members\":{\"Ip\":{},\"Port\":{\"type\":\"integer\"}}}},\"S23\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"CreatorRequestId\":{},\"Arn\":{},\"DomainName\":{},\"Status\":{},\"StatusMessage\":{},\"RuleType\":{},\"Name\":{},\"TargetIps\":{\"shape\":\"S1z\"},\"ResolverEndpointId\":{},\"OwnerId\":{},\"ShareStatus\":{},\"CreationTime\":{},\"ModificationTime\":{}}},\"S2r\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ResourceId\":{},\"OwnerId\":{},\"FirewallFailOpen\":{}}},\"S34\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"OwnerId\":{},\"ResourceId\":{},\"ValidationStatus\":{}}},\"S43\":{\"type\":\"list\",\"member\":{}},\"S4g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}}}}");

/***/ }),

/***/ 21261:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListFirewallConfigs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FirewallConfigs\"},\"ListFirewallDomainLists\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FirewallDomainLists\"},\"ListFirewallDomains\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Domains\"},\"ListFirewallRuleGroupAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FirewallRuleGroupAssociations\"},\"ListFirewallRuleGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FirewallRuleGroups\"},\"ListFirewallRules\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FirewallRules\"},\"ListResolverDnssecConfigs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResolverDnssecConfigs\"},\"ListResolverEndpointIpAddresses\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"IpAddresses\"},\"ListResolverEndpoints\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResolverEndpoints\"},\"ListResolverQueryLogConfigAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResolverQueryLogConfigAssociations\"},\"ListResolverQueryLogConfigs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResolverQueryLogConfigs\"},\"ListResolverRuleAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResolverRuleAssociations\"},\"ListResolverRules\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ResolverRules\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Tags\"}}}");

/***/ }),

/***/ 28098:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-28\",\"endpointPrefix\":\"runtime.lex\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Lex Runtime Service\",\"serviceId\":\"Lex Runtime Service\",\"signatureVersion\":\"v4\",\"signingName\":\"lex\",\"uid\":\"runtime.lex-2016-11-28\"},\"operations\":{\"DeleteSession\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bot/{botName}/alias/{botAlias}/user/{userId}/session\"},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botAlias\",\"userId\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"botAlias\"},\"userId\":{\"location\":\"uri\",\"locationName\":\"userId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botName\":{},\"botAlias\":{},\"userId\":{},\"sessionId\":{}}}},\"GetSession\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bot/{botName}/alias/{botAlias}/user/{userId}/session/\"},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botAlias\",\"userId\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"botAlias\"},\"userId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"checkpointLabelFilter\":{\"location\":\"querystring\",\"locationName\":\"checkpointLabelFilter\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"recentIntentSummaryView\":{\"shape\":\"Sa\"},\"sessionAttributes\":{\"shape\":\"Sd\"},\"sessionId\":{},\"dialogAction\":{\"shape\":\"Sh\"},\"activeContexts\":{\"shape\":\"Sk\"}}}},\"PostContent\":{\"http\":{\"requestUri\":\"/bot/{botName}/alias/{botAlias}/user/{userId}/content\"},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botAlias\",\"userId\",\"contentType\",\"inputStream\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"botAlias\"},\"userId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"sessionAttributes\":{\"shape\":\"St\",\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-session-attributes\"},\"requestAttributes\":{\"shape\":\"St\",\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-request-attributes\"},\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"accept\":{\"location\":\"header\",\"locationName\":\"Accept\"},\"inputStream\":{\"shape\":\"Sw\"},\"activeContexts\":{\"shape\":\"Sx\",\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-active-contexts\"}},\"payload\":\"inputStream\"},\"output\":{\"type\":\"structure\",\"members\":{\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"intentName\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-intent-name\"},\"nluIntentConfidence\":{\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-nlu-intent-confidence\"},\"alternativeIntents\":{\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-alternative-intents\"},\"slots\":{\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-slots\"},\"sessionAttributes\":{\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-session-attributes\"},\"sentimentResponse\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-sentiment\"},\"message\":{\"shape\":\"Si\",\"deprecated\":true,\"deprecatedMessage\":\"The message field is deprecated, use the encodedMessage field instead. The message field is available only in the de-DE, en-AU, en-GB, en-US, es-419, es-ES, es-US, fr-CA, fr-FR and it-IT locales.\",\"location\":\"header\",\"locationName\":\"x-amz-lex-message\"},\"encodedMessage\":{\"shape\":\"Sz\",\"location\":\"header\",\"locationName\":\"x-amz-lex-encoded-message\"},\"messageFormat\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-message-format\"},\"dialogState\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-dialog-state\"},\"slotToElicit\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-slot-to-elicit\"},\"inputTranscript\":{\"deprecated\":true,\"deprecatedMessage\":\"The inputTranscript field is deprecated, use the encodedInputTranscript field instead. The inputTranscript field is available only in the de-DE, en-AU, en-GB, en-US, es-419, es-ES, es-US, fr-CA, fr-FR and it-IT locales.\",\"location\":\"header\",\"locationName\":\"x-amz-lex-input-transcript\"},\"encodedInputTranscript\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-encoded-input-transcript\",\"type\":\"string\",\"sensitive\":true},\"audioStream\":{\"shape\":\"Sw\"},\"botVersion\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-bot-version\"},\"sessionId\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-session-id\"},\"activeContexts\":{\"shape\":\"Sx\",\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-active-contexts\"}},\"payload\":\"audioStream\"},\"authtype\":\"v4-unsigned-body\"},\"PostText\":{\"http\":{\"requestUri\":\"/bot/{botName}/alias/{botAlias}/user/{userId}/text\"},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botAlias\",\"userId\",\"inputText\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"botAlias\"},\"userId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"sessionAttributes\":{\"shape\":\"Sd\"},\"requestAttributes\":{\"shape\":\"Sd\"},\"inputText\":{\"shape\":\"Si\"},\"activeContexts\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"intentName\":{},\"nluIntentConfidence\":{\"shape\":\"S15\"},\"alternativeIntents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"intentName\":{},\"nluIntentConfidence\":{\"shape\":\"S15\"},\"slots\":{\"shape\":\"Sd\"}}}},\"slots\":{\"shape\":\"Sd\"},\"sessionAttributes\":{\"shape\":\"Sd\"},\"message\":{\"shape\":\"Si\"},\"sentimentResponse\":{\"type\":\"structure\",\"members\":{\"sentimentLabel\":{},\"sentimentScore\":{}}},\"messageFormat\":{},\"dialogState\":{},\"slotToElicit\":{},\"responseCard\":{\"type\":\"structure\",\"members\":{\"version\":{},\"contentType\":{},\"genericAttachments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"title\":{},\"subTitle\":{},\"attachmentLinkUrl\":{},\"imageUrl\":{},\"buttons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"text\",\"value\"],\"members\":{\"text\":{},\"value\":{}}}}}}}}},\"sessionId\":{},\"botVersion\":{},\"activeContexts\":{\"shape\":\"Sk\"}}}},\"PutSession\":{\"http\":{\"requestUri\":\"/bot/{botName}/alias/{botAlias}/user/{userId}/session\"},\"input\":{\"type\":\"structure\",\"required\":[\"botName\",\"botAlias\",\"userId\"],\"members\":{\"botName\":{\"location\":\"uri\",\"locationName\":\"botName\"},\"botAlias\":{\"location\":\"uri\",\"locationName\":\"botAlias\"},\"userId\":{\"location\":\"uri\",\"locationName\":\"userId\"},\"sessionAttributes\":{\"shape\":\"Sd\"},\"dialogAction\":{\"shape\":\"Sh\"},\"recentIntentSummaryView\":{\"shape\":\"Sa\"},\"accept\":{\"location\":\"header\",\"locationName\":\"Accept\"},\"activeContexts\":{\"shape\":\"Sk\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"intentName\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-intent-name\"},\"slots\":{\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-slots\"},\"sessionAttributes\":{\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-session-attributes\"},\"message\":{\"shape\":\"Si\",\"deprecated\":true,\"deprecatedMessage\":\"The message field is deprecated, use the encodedMessage field instead. The message field is available only in the de-DE, en-AU, en-GB, en-US, es-419, es-ES, es-US, fr-CA, fr-FR and it-IT locales.\",\"location\":\"header\",\"locationName\":\"x-amz-lex-message\"},\"encodedMessage\":{\"shape\":\"Sz\",\"location\":\"header\",\"locationName\":\"x-amz-lex-encoded-message\"},\"messageFormat\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-message-format\"},\"dialogState\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-dialog-state\"},\"slotToElicit\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-slot-to-elicit\"},\"audioStream\":{\"shape\":\"Sw\"},\"sessionId\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-session-id\"},\"activeContexts\":{\"shape\":\"Sx\",\"jsonvalue\":true,\"location\":\"header\",\"locationName\":\"x-amz-lex-active-contexts\"}},\"payload\":\"audioStream\"}}},\"shapes\":{\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"dialogActionType\"],\"members\":{\"intentName\":{},\"checkpointLabel\":{},\"slots\":{\"shape\":\"Sd\"},\"confirmationStatus\":{},\"dialogActionType\":{},\"fulfillmentState\":{},\"slotToElicit\":{}}}},\"Sd\":{\"type\":\"map\",\"key\":{},\"value\":{},\"sensitive\":true},\"Sh\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"intentName\":{},\"slots\":{\"shape\":\"Sd\"},\"slotToElicit\":{},\"fulfillmentState\":{},\"message\":{\"shape\":\"Si\"},\"messageFormat\":{}}},\"Si\":{\"type\":\"string\",\"sensitive\":true},\"Sk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"timeToLive\",\"parameters\"],\"members\":{\"name\":{},\"timeToLive\":{\"type\":\"structure\",\"members\":{\"timeToLiveInSeconds\":{\"type\":\"integer\"},\"turnsToLive\":{\"type\":\"integer\"}}},\"parameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Si\"}}}},\"sensitive\":true},\"St\":{\"type\":\"string\",\"sensitive\":true},\"Sw\":{\"type\":\"blob\",\"streaming\":true},\"Sx\":{\"type\":\"string\",\"sensitive\":true},\"Sz\":{\"type\":\"string\",\"sensitive\":true},\"S15\":{\"type\":\"structure\",\"members\":{\"score\":{\"type\":\"double\"}}}}}");

/***/ }),

/***/ 17108:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 72007:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-08-07\",\"endpointPrefix\":\"runtime-v2-lex\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"protocolSettings\":{\"h2\":\"eventstream\"},\"serviceAbbreviation\":\"Lex Runtime V2\",\"serviceFullName\":\"Amazon Lex Runtime V2\",\"serviceId\":\"Lex Runtime V2\",\"signatureVersion\":\"v4\",\"signingName\":\"lex\",\"uid\":\"runtime.lex.v2-2020-08-07\"},\"operations\":{\"DeleteSession\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botAliasId\",\"sessionId\",\"localeId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"botId\":{},\"botAliasId\":{},\"localeId\":{},\"sessionId\":{}}}},\"GetSession\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botAliasId\",\"localeId\",\"sessionId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"sessionId\":{},\"messages\":{\"shape\":\"Sa\"},\"interpretations\":{\"shape\":\"Sl\"},\"sessionState\":{\"shape\":\"Sz\"}}}},\"PutSession\":{\"http\":{\"requestUri\":\"/bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botAliasId\",\"localeId\",\"sessionState\",\"sessionId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"},\"messages\":{\"shape\":\"Sa\"},\"sessionState\":{\"shape\":\"Sz\"},\"requestAttributes\":{\"shape\":\"S1a\"},\"responseContentType\":{\"location\":\"header\",\"locationName\":\"ResponseContentType\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"messages\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-messages\"},\"sessionState\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-session-state\"},\"requestAttributes\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-request-attributes\"},\"sessionId\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-session-id\"},\"audioStream\":{\"shape\":\"S1e\"}},\"payload\":\"audioStream\"}},\"RecognizeText\":{\"http\":{\"requestUri\":\"/bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}/text\"},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botAliasId\",\"localeId\",\"text\",\"sessionId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"},\"text\":{\"shape\":\"Sc\"},\"sessionState\":{\"shape\":\"Sz\"},\"requestAttributes\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"messages\":{\"shape\":\"Sa\"},\"sessionState\":{\"shape\":\"Sz\"},\"interpretations\":{\"shape\":\"Sl\"},\"requestAttributes\":{\"shape\":\"S1a\"},\"sessionId\":{}}}},\"RecognizeUtterance\":{\"http\":{\"requestUri\":\"/bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}/utterance\"},\"input\":{\"type\":\"structure\",\"required\":[\"botId\",\"botAliasId\",\"localeId\",\"requestContentType\",\"sessionId\"],\"members\":{\"botId\":{\"location\":\"uri\",\"locationName\":\"botId\"},\"botAliasId\":{\"location\":\"uri\",\"locationName\":\"botAliasId\"},\"localeId\":{\"location\":\"uri\",\"locationName\":\"localeId\"},\"sessionId\":{\"location\":\"uri\",\"locationName\":\"sessionId\"},\"sessionState\":{\"shape\":\"S1i\",\"location\":\"header\",\"locationName\":\"x-amz-lex-session-state\"},\"requestAttributes\":{\"shape\":\"S1i\",\"location\":\"header\",\"locationName\":\"x-amz-lex-request-attributes\"},\"requestContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"responseContentType\":{\"location\":\"header\",\"locationName\":\"Response-Content-Type\"},\"inputStream\":{\"shape\":\"S1e\"}},\"payload\":\"inputStream\"},\"output\":{\"type\":\"structure\",\"members\":{\"inputMode\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-input-mode\"},\"contentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"messages\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-messages\"},\"interpretations\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-interpretations\"},\"sessionState\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-session-state\"},\"requestAttributes\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-request-attributes\"},\"sessionId\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-session-id\"},\"inputTranscript\":{\"location\":\"header\",\"locationName\":\"x-amz-lex-input-transcript\"},\"audioStream\":{\"shape\":\"S1e\"}},\"payload\":\"audioStream\"},\"authtype\":\"v4-unsigned-body\"}},\"shapes\":{\"Sa\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"content\":{\"shape\":\"Sc\"},\"contentType\":{},\"imageResponseCard\":{\"type\":\"structure\",\"required\":[\"title\"],\"members\":{\"title\":{},\"subtitle\":{},\"imageUrl\":{},\"buttons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"text\",\"value\"],\"members\":{\"text\":{},\"value\":{}}}}}}}}},\"Sc\":{\"type\":\"string\",\"sensitive\":true},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"nluConfidence\":{\"type\":\"structure\",\"members\":{\"score\":{\"type\":\"double\"}}},\"sentimentResponse\":{\"type\":\"structure\",\"members\":{\"sentiment\":{},\"sentimentScore\":{\"type\":\"structure\",\"members\":{\"positive\":{\"type\":\"double\"},\"negative\":{\"type\":\"double\"},\"neutral\":{\"type\":\"double\"},\"mixed\":{\"type\":\"double\"}}}}},\"intent\":{\"shape\":\"Ss\"}}}},\"Ss\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"slots\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"value\":{\"type\":\"structure\",\"required\":[\"interpretedValue\"],\"members\":{\"originalValue\":{},\"interpretedValue\":{},\"resolvedValues\":{\"type\":\"list\",\"member\":{}}}}}}},\"state\":{},\"confirmationState\":{}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"dialogAction\":{\"type\":\"structure\",\"required\":[\"type\"],\"members\":{\"type\":{},\"slotToElicit\":{}}},\"intent\":{\"shape\":\"Ss\"},\"activeContexts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"name\",\"timeToLive\"],\"members\":{\"name\":{},\"timeToLive\":{\"type\":\"structure\",\"required\":[\"timeToLiveInSeconds\",\"turnsToLive\"],\"members\":{\"timeToLiveInSeconds\":{\"type\":\"integer\"},\"turnsToLive\":{\"type\":\"integer\"}}},\"contextAttributes\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"Sc\"}}}}},\"sessionAttributes\":{\"shape\":\"S1a\"},\"originatingRequestId\":{}}},\"S1a\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1e\":{\"type\":\"blob\",\"streaming\":true},\"S1i\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 88199:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 82783:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-05-13\",\"endpointPrefix\":\"runtime.sagemaker\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon SageMaker Runtime\",\"serviceId\":\"SageMaker Runtime\",\"signatureVersion\":\"v4\",\"signingName\":\"sagemaker\",\"uid\":\"runtime.sagemaker-2017-05-13\"},\"operations\":{\"InvokeEndpoint\":{\"http\":{\"requestUri\":\"/endpoints/{EndpointName}/invocations\"},\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"Body\"],\"members\":{\"EndpointName\":{\"location\":\"uri\",\"locationName\":\"EndpointName\"},\"Body\":{\"shape\":\"S3\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Accept\":{\"location\":\"header\",\"locationName\":\"Accept\"},\"CustomAttributes\":{\"shape\":\"S5\",\"location\":\"header\",\"locationName\":\"X-Amzn-SageMaker-Custom-Attributes\"},\"TargetModel\":{\"location\":\"header\",\"locationName\":\"X-Amzn-SageMaker-Target-Model\"},\"TargetVariant\":{\"location\":\"header\",\"locationName\":\"X-Amzn-SageMaker-Target-Variant\"},\"TargetContainerHostname\":{\"location\":\"header\",\"locationName\":\"X-Amzn-SageMaker-Target-Container-Hostname\"},\"InferenceId\":{\"location\":\"header\",\"locationName\":\"X-Amzn-SageMaker-Inference-Id\"}},\"payload\":\"Body\"},\"output\":{\"type\":\"structure\",\"required\":[\"Body\"],\"members\":{\"Body\":{\"shape\":\"S3\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"InvokedProductionVariant\":{\"location\":\"header\",\"locationName\":\"x-Amzn-Invoked-Production-Variant\"},\"CustomAttributes\":{\"shape\":\"S5\",\"location\":\"header\",\"locationName\":\"X-Amzn-SageMaker-Custom-Attributes\"}},\"payload\":\"Body\"}}},\"shapes\":{\"S3\":{\"type\":\"blob\",\"sensitive\":true},\"S5\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 17272:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 32581:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2006-03-01\",\"checksumFormat\":\"md5\",\"endpointPrefix\":\"s3\",\"globalEndpoint\":\"s3.amazonaws.com\",\"protocol\":\"rest-xml\",\"serviceAbbreviation\":\"Amazon S3\",\"serviceFullName\":\"Amazon Simple Storage Service\",\"serviceId\":\"S3\",\"signatureVersion\":\"s3\",\"uid\":\"s3-2006-03-01\"},\"operations\":{\"AbortMultipartUpload\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}/{Key+}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\",\"UploadId\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"UploadId\":{\"location\":\"querystring\",\"locationName\":\"uploadId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"CompleteMultipartUpload\":{\"http\":{\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\",\"UploadId\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"MultipartUpload\":{\"locationName\":\"CompleteMultipartUpload\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"Parts\":{\"locationName\":\"Part\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ETag\":{},\"PartNumber\":{\"type\":\"integer\"}}},\"flattened\":true}}},\"UploadId\":{\"location\":\"querystring\",\"locationName\":\"uploadId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"MultipartUpload\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{},\"Bucket\":{},\"Key\":{},\"Expiration\":{\"location\":\"header\",\"locationName\":\"x-amz-expiration\"},\"ETag\":{},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"CopyObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"CopySource\",\"Key\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"ContentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"ContentEncoding\":{\"location\":\"header\",\"locationName\":\"Content-Encoding\"},\"ContentLanguage\":{\"location\":\"header\",\"locationName\":\"Content-Language\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"CopySource\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source\"},\"CopySourceIfMatch\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-match\"},\"CopySourceIfModifiedSince\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-modified-since\",\"type\":\"timestamp\"},\"CopySourceIfNoneMatch\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-none-match\"},\"CopySourceIfUnmodifiedSince\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-unmodified-since\",\"type\":\"timestamp\"},\"Expires\":{\"location\":\"header\",\"locationName\":\"Expires\",\"type\":\"timestamp\"},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"Metadata\":{\"shape\":\"S13\",\"location\":\"headers\",\"locationName\":\"x-amz-meta-\"},\"MetadataDirective\":{\"location\":\"header\",\"locationName\":\"x-amz-metadata-directive\"},\"TaggingDirective\":{\"location\":\"header\",\"locationName\":\"x-amz-tagging-directive\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-storage-class\"},\"WebsiteRedirectLocation\":{\"location\":\"header\",\"locationName\":\"x-amz-website-redirect-location\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"SSEKMSEncryptionContext\":{\"shape\":\"S1d\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-context\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"CopySourceSSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-server-side-encryption-customer-algorithm\"},\"CopySourceSSECustomerKey\":{\"shape\":\"S1f\",\"location\":\"header\",\"locationName\":\"x-amz-copy-source-server-side-encryption-customer-key\"},\"CopySourceSSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-server-side-encryption-customer-key-MD5\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"Tagging\":{\"location\":\"header\",\"locationName\":\"x-amz-tagging\"},\"ObjectLockMode\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-mode\"},\"ObjectLockRetainUntilDate\":{\"shape\":\"S1j\",\"location\":\"header\",\"locationName\":\"x-amz-object-lock-retain-until-date\"},\"ObjectLockLegalHoldStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-legal-hold\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"},\"ExpectedSourceBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-source-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopyObjectResult\":{\"type\":\"structure\",\"members\":{\"ETag\":{},\"LastModified\":{\"type\":\"timestamp\"}}},\"Expiration\":{\"location\":\"header\",\"locationName\":\"x-amz-expiration\"},\"CopySourceVersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-version-id\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"SSEKMSEncryptionContext\":{\"shape\":\"S1d\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-context\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}},\"payload\":\"CopyObjectResult\"},\"alias\":\"PutObjectCopy\"},\"CreateBucket\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"CreateBucketConfiguration\":{\"locationName\":\"CreateBucketConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"LocationConstraint\":{}}},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWrite\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"ObjectLockEnabledForBucket\":{\"location\":\"header\",\"locationName\":\"x-amz-bucket-object-lock-enabled\",\"type\":\"boolean\"}},\"payload\":\"CreateBucketConfiguration\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"}}},\"alias\":\"PutBucket\"},\"CreateMultipartUpload\":{\"http\":{\"requestUri\":\"/{Bucket}/{Key+}?uploads\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"ContentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"ContentEncoding\":{\"location\":\"header\",\"locationName\":\"Content-Encoding\"},\"ContentLanguage\":{\"location\":\"header\",\"locationName\":\"Content-Language\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Expires\":{\"location\":\"header\",\"locationName\":\"Expires\",\"type\":\"timestamp\"},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"Metadata\":{\"shape\":\"S13\",\"location\":\"headers\",\"locationName\":\"x-amz-meta-\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-storage-class\"},\"WebsiteRedirectLocation\":{\"location\":\"header\",\"locationName\":\"x-amz-website-redirect-location\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"SSEKMSEncryptionContext\":{\"shape\":\"S1d\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-context\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"Tagging\":{\"location\":\"header\",\"locationName\":\"x-amz-tagging\"},\"ObjectLockMode\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-mode\"},\"ObjectLockRetainUntilDate\":{\"shape\":\"S1j\",\"location\":\"header\",\"locationName\":\"x-amz-object-lock-retain-until-date\"},\"ObjectLockLegalHoldStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-legal-hold\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AbortDate\":{\"location\":\"header\",\"locationName\":\"x-amz-abort-date\",\"type\":\"timestamp\"},\"AbortRuleId\":{\"location\":\"header\",\"locationName\":\"x-amz-abort-rule-id\"},\"Bucket\":{\"locationName\":\"Bucket\"},\"Key\":{},\"UploadId\":{},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"SSEKMSEncryptionContext\":{\"shape\":\"S1d\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-context\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}},\"alias\":\"InitiateMultipartUpload\"},\"DeleteBucket\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketAnalyticsConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?analytics\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketCors\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?cors\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketEncryption\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?encryption\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketIntelligentTieringConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?intelligent-tiering\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"}}}},\"DeleteBucketInventoryConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?inventory\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketLifecycle\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?lifecycle\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketMetricsConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?metrics\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketOwnershipControls\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?ownershipControls\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?policy\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketReplication\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?replication\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketTagging\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?tagging\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteBucketWebsite\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?website\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"DeleteObject\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}/{Key+}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"MFA\":{\"location\":\"header\",\"locationName\":\"x-amz-mfa\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"BypassGovernanceRetention\":{\"location\":\"header\",\"locationName\":\"x-amz-bypass-governance-retention\",\"type\":\"boolean\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeleteMarker\":{\"location\":\"header\",\"locationName\":\"x-amz-delete-marker\",\"type\":\"boolean\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"DeleteObjectTagging\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}/{Key+}?tagging\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"}}}},\"DeleteObjects\":{\"http\":{\"requestUri\":\"/{Bucket}?delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Delete\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Delete\":{\"locationName\":\"Delete\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"required\":[\"Objects\"],\"members\":{\"Objects\":{\"locationName\":\"Object\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"VersionId\":{}}},\"flattened\":true},\"Quiet\":{\"type\":\"boolean\"}}},\"MFA\":{\"location\":\"header\",\"locationName\":\"x-amz-mfa\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"BypassGovernanceRetention\":{\"location\":\"header\",\"locationName\":\"x-amz-bypass-governance-retention\",\"type\":\"boolean\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"Delete\"},\"output\":{\"type\":\"structure\",\"members\":{\"Deleted\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"VersionId\":{},\"DeleteMarker\":{\"type\":\"boolean\"},\"DeleteMarkerVersionId\":{}}},\"flattened\":true},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"},\"Errors\":{\"locationName\":\"Error\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"VersionId\":{},\"Code\":{},\"Message\":{}}},\"flattened\":true}}},\"alias\":\"DeleteMultipleObjects\",\"httpChecksumRequired\":true},\"DeletePublicAccessBlock\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/{Bucket}?publicAccessBlock\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"GetBucketAccelerateConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?accelerate\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"GetBucketAcl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?acl\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Owner\":{\"shape\":\"S37\"},\"Grants\":{\"shape\":\"S3a\",\"locationName\":\"AccessControlList\"}}}},\"GetBucketAnalyticsConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?analytics\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AnalyticsConfiguration\":{\"shape\":\"S3j\"}},\"payload\":\"AnalyticsConfiguration\"}},\"GetBucketCors\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?cors\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CORSRules\":{\"shape\":\"S3y\",\"locationName\":\"CORSRule\"}}}},\"GetBucketEncryption\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?encryption\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServerSideEncryptionConfiguration\":{\"shape\":\"S4b\"}},\"payload\":\"ServerSideEncryptionConfiguration\"}},\"GetBucketIntelligentTieringConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?intelligent-tiering\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IntelligentTieringConfiguration\":{\"shape\":\"S4h\"}},\"payload\":\"IntelligentTieringConfiguration\"}},\"GetBucketInventoryConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?inventory\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InventoryConfiguration\":{\"shape\":\"S4r\"}},\"payload\":\"InventoryConfiguration\"}},\"GetBucketLifecycle\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?lifecycle\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S57\",\"locationName\":\"Rule\"}}},\"deprecated\":true},\"GetBucketLifecycleConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?lifecycle\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S5m\",\"locationName\":\"Rule\"}}}},\"GetBucketLocation\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?location\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LocationConstraint\":{}}}},\"GetBucketLogging\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?logging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingEnabled\":{\"shape\":\"S5w\"}}}},\"GetBucketMetricsConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?metrics\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MetricsConfiguration\":{\"shape\":\"S64\"}},\"payload\":\"MetricsConfiguration\"}},\"GetBucketNotification\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?notification\"},\"input\":{\"shape\":\"S67\"},\"output\":{\"shape\":\"S68\"},\"deprecated\":true},\"GetBucketNotificationConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?notification\"},\"input\":{\"shape\":\"S67\"},\"output\":{\"shape\":\"S6j\"}},\"GetBucketOwnershipControls\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?ownershipControls\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OwnershipControls\":{\"shape\":\"S6z\"}},\"payload\":\"OwnershipControls\"}},\"GetBucketPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}},\"payload\":\"Policy\"}},\"GetBucketPolicyStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?policyStatus\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyStatus\":{\"type\":\"structure\",\"members\":{\"IsPublic\":{\"locationName\":\"IsPublic\",\"type\":\"boolean\"}}}},\"payload\":\"PolicyStatus\"}},\"GetBucketReplication\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?replication\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ReplicationConfiguration\":{\"shape\":\"S7c\"}},\"payload\":\"ReplicationConfiguration\"}},\"GetBucketRequestPayment\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?requestPayment\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Payer\":{}}}},\"GetBucketTagging\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TagSet\"],\"members\":{\"TagSet\":{\"shape\":\"S3p\"}}}},\"GetBucketVersioning\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?versioning\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"MFADelete\":{\"locationName\":\"MfaDelete\"}}}},\"GetBucketWebsite\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?website\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RedirectAllRequestsTo\":{\"shape\":\"S8f\"},\"IndexDocument\":{\"shape\":\"S8i\"},\"ErrorDocument\":{\"shape\":\"S8k\"},\"RoutingRules\":{\"shape\":\"S8l\"}}}},\"GetObject\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"},\"IfModifiedSince\":{\"location\":\"header\",\"locationName\":\"If-Modified-Since\",\"type\":\"timestamp\"},\"IfNoneMatch\":{\"location\":\"header\",\"locationName\":\"If-None-Match\"},\"IfUnmodifiedSince\":{\"location\":\"header\",\"locationName\":\"If-Unmodified-Since\",\"type\":\"timestamp\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"Range\":{\"location\":\"header\",\"locationName\":\"Range\"},\"ResponseCacheControl\":{\"location\":\"querystring\",\"locationName\":\"response-cache-control\"},\"ResponseContentDisposition\":{\"location\":\"querystring\",\"locationName\":\"response-content-disposition\"},\"ResponseContentEncoding\":{\"location\":\"querystring\",\"locationName\":\"response-content-encoding\"},\"ResponseContentLanguage\":{\"location\":\"querystring\",\"locationName\":\"response-content-language\"},\"ResponseContentType\":{\"location\":\"querystring\",\"locationName\":\"response-content-type\"},\"ResponseExpires\":{\"location\":\"querystring\",\"locationName\":\"response-expires\",\"type\":\"timestamp\",\"timestampFormat\":\"rfc822\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"PartNumber\":{\"location\":\"querystring\",\"locationName\":\"partNumber\",\"type\":\"integer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Body\":{\"streaming\":true,\"type\":\"blob\"},\"DeleteMarker\":{\"location\":\"header\",\"locationName\":\"x-amz-delete-marker\",\"type\":\"boolean\"},\"AcceptRanges\":{\"location\":\"header\",\"locationName\":\"accept-ranges\"},\"Expiration\":{\"location\":\"header\",\"locationName\":\"x-amz-expiration\"},\"Restore\":{\"location\":\"header\",\"locationName\":\"x-amz-restore\"},\"LastModified\":{\"location\":\"header\",\"locationName\":\"Last-Modified\",\"type\":\"timestamp\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"MissingMeta\":{\"location\":\"header\",\"locationName\":\"x-amz-missing-meta\",\"type\":\"integer\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"ContentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"ContentEncoding\":{\"location\":\"header\",\"locationName\":\"Content-Encoding\"},\"ContentLanguage\":{\"location\":\"header\",\"locationName\":\"Content-Language\"},\"ContentRange\":{\"location\":\"header\",\"locationName\":\"Content-Range\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Expires\":{\"location\":\"header\",\"locationName\":\"Expires\",\"type\":\"timestamp\"},\"WebsiteRedirectLocation\":{\"location\":\"header\",\"locationName\":\"x-amz-website-redirect-location\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"Metadata\":{\"shape\":\"S13\",\"location\":\"headers\",\"locationName\":\"x-amz-meta-\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-storage-class\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"},\"ReplicationStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-replication-status\"},\"PartsCount\":{\"location\":\"header\",\"locationName\":\"x-amz-mp-parts-count\",\"type\":\"integer\"},\"TagCount\":{\"location\":\"header\",\"locationName\":\"x-amz-tagging-count\",\"type\":\"integer\"},\"ObjectLockMode\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-mode\"},\"ObjectLockRetainUntilDate\":{\"shape\":\"S1j\",\"location\":\"header\",\"locationName\":\"x-amz-object-lock-retain-until-date\"},\"ObjectLockLegalHoldStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-legal-hold\"}},\"payload\":\"Body\"}},\"GetObjectAcl\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}?acl\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Owner\":{\"shape\":\"S37\"},\"Grants\":{\"shape\":\"S3a\",\"locationName\":\"AccessControlList\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"GetObjectLegalHold\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}?legal-hold\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LegalHold\":{\"shape\":\"S9k\"}},\"payload\":\"LegalHold\"}},\"GetObjectLockConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?object-lock\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectLockConfiguration\":{\"shape\":\"S9n\"}},\"payload\":\"ObjectLockConfiguration\"}},\"GetObjectRetention\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}?retention\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Retention\":{\"shape\":\"S9v\"}},\"payload\":\"Retention\"}},\"GetObjectTagging\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}?tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TagSet\"],\"members\":{\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"TagSet\":{\"shape\":\"S3p\"}}}},\"GetObjectTorrent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}?torrent\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Body\":{\"streaming\":true,\"type\":\"blob\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}},\"payload\":\"Body\"}},\"GetPublicAccessBlock\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?publicAccessBlock\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicAccessBlockConfiguration\":{\"shape\":\"Sa2\"}},\"payload\":\"PublicAccessBlockConfiguration\"}},\"HeadBucket\":{\"http\":{\"method\":\"HEAD\",\"requestUri\":\"/{Bucket}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}}},\"HeadObject\":{\"http\":{\"method\":\"HEAD\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"IfMatch\":{\"location\":\"header\",\"locationName\":\"If-Match\"},\"IfModifiedSince\":{\"location\":\"header\",\"locationName\":\"If-Modified-Since\",\"type\":\"timestamp\"},\"IfNoneMatch\":{\"location\":\"header\",\"locationName\":\"If-None-Match\"},\"IfUnmodifiedSince\":{\"location\":\"header\",\"locationName\":\"If-Unmodified-Since\",\"type\":\"timestamp\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"Range\":{\"location\":\"header\",\"locationName\":\"Range\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"PartNumber\":{\"location\":\"querystring\",\"locationName\":\"partNumber\",\"type\":\"integer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeleteMarker\":{\"location\":\"header\",\"locationName\":\"x-amz-delete-marker\",\"type\":\"boolean\"},\"AcceptRanges\":{\"location\":\"header\",\"locationName\":\"accept-ranges\"},\"Expiration\":{\"location\":\"header\",\"locationName\":\"x-amz-expiration\"},\"Restore\":{\"location\":\"header\",\"locationName\":\"x-amz-restore\"},\"ArchiveStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-archive-status\"},\"LastModified\":{\"location\":\"header\",\"locationName\":\"Last-Modified\",\"type\":\"timestamp\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"MissingMeta\":{\"location\":\"header\",\"locationName\":\"x-amz-missing-meta\",\"type\":\"integer\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"ContentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"ContentEncoding\":{\"location\":\"header\",\"locationName\":\"Content-Encoding\"},\"ContentLanguage\":{\"location\":\"header\",\"locationName\":\"Content-Language\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Expires\":{\"location\":\"header\",\"locationName\":\"Expires\",\"type\":\"timestamp\"},\"WebsiteRedirectLocation\":{\"location\":\"header\",\"locationName\":\"x-amz-website-redirect-location\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"Metadata\":{\"shape\":\"S13\",\"location\":\"headers\",\"locationName\":\"x-amz-meta-\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-storage-class\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"},\"ReplicationStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-replication-status\"},\"PartsCount\":{\"location\":\"header\",\"locationName\":\"x-amz-mp-parts-count\",\"type\":\"integer\"},\"ObjectLockMode\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-mode\"},\"ObjectLockRetainUntilDate\":{\"shape\":\"S1j\",\"location\":\"header\",\"locationName\":\"x-amz-object-lock-retain-until-date\"},\"ObjectLockLegalHoldStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-legal-hold\"}}}},\"ListBucketAnalyticsConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?analytics\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContinuationToken\":{\"location\":\"querystring\",\"locationName\":\"continuation-token\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsTruncated\":{\"type\":\"boolean\"},\"ContinuationToken\":{},\"NextContinuationToken\":{},\"AnalyticsConfigurationList\":{\"locationName\":\"AnalyticsConfiguration\",\"type\":\"list\",\"member\":{\"shape\":\"S3j\"},\"flattened\":true}}}},\"ListBucketIntelligentTieringConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?intelligent-tiering\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContinuationToken\":{\"location\":\"querystring\",\"locationName\":\"continuation-token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsTruncated\":{\"type\":\"boolean\"},\"ContinuationToken\":{},\"NextContinuationToken\":{},\"IntelligentTieringConfigurationList\":{\"locationName\":\"IntelligentTieringConfiguration\",\"type\":\"list\",\"member\":{\"shape\":\"S4h\"},\"flattened\":true}}}},\"ListBucketInventoryConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?inventory\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContinuationToken\":{\"location\":\"querystring\",\"locationName\":\"continuation-token\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContinuationToken\":{},\"InventoryConfigurationList\":{\"locationName\":\"InventoryConfiguration\",\"type\":\"list\",\"member\":{\"shape\":\"S4r\"},\"flattened\":true},\"IsTruncated\":{\"type\":\"boolean\"},\"NextContinuationToken\":{}}}},\"ListBucketMetricsConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?metrics\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContinuationToken\":{\"location\":\"querystring\",\"locationName\":\"continuation-token\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsTruncated\":{\"type\":\"boolean\"},\"ContinuationToken\":{},\"NextContinuationToken\":{},\"MetricsConfigurationList\":{\"locationName\":\"MetricsConfiguration\",\"type\":\"list\",\"member\":{\"shape\":\"S64\"},\"flattened\":true}}}},\"ListBuckets\":{\"http\":{\"method\":\"GET\"},\"output\":{\"type\":\"structure\",\"members\":{\"Buckets\":{\"type\":\"list\",\"member\":{\"locationName\":\"Bucket\",\"type\":\"structure\",\"members\":{\"Name\":{},\"CreationDate\":{\"type\":\"timestamp\"}}}},\"Owner\":{\"shape\":\"S37\"}}},\"alias\":\"GetService\"},\"ListMultipartUploads\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?uploads\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Delimiter\":{\"location\":\"querystring\",\"locationName\":\"delimiter\"},\"EncodingType\":{\"location\":\"querystring\",\"locationName\":\"encoding-type\"},\"KeyMarker\":{\"location\":\"querystring\",\"locationName\":\"key-marker\"},\"MaxUploads\":{\"location\":\"querystring\",\"locationName\":\"max-uploads\",\"type\":\"integer\"},\"Prefix\":{\"location\":\"querystring\",\"locationName\":\"prefix\"},\"UploadIdMarker\":{\"location\":\"querystring\",\"locationName\":\"upload-id-marker\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"KeyMarker\":{},\"UploadIdMarker\":{},\"NextKeyMarker\":{},\"Prefix\":{},\"Delimiter\":{},\"NextUploadIdMarker\":{},\"MaxUploads\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Uploads\":{\"locationName\":\"Upload\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UploadId\":{},\"Key\":{},\"Initiated\":{\"type\":\"timestamp\"},\"StorageClass\":{},\"Owner\":{\"shape\":\"S37\"},\"Initiator\":{\"shape\":\"Sb3\"}}},\"flattened\":true},\"CommonPrefixes\":{\"shape\":\"Sb4\"},\"EncodingType\":{}}}},\"ListObjectVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?versions\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Delimiter\":{\"location\":\"querystring\",\"locationName\":\"delimiter\"},\"EncodingType\":{\"location\":\"querystring\",\"locationName\":\"encoding-type\"},\"KeyMarker\":{\"location\":\"querystring\",\"locationName\":\"key-marker\"},\"MaxKeys\":{\"location\":\"querystring\",\"locationName\":\"max-keys\",\"type\":\"integer\"},\"Prefix\":{\"location\":\"querystring\",\"locationName\":\"prefix\"},\"VersionIdMarker\":{\"location\":\"querystring\",\"locationName\":\"version-id-marker\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsTruncated\":{\"type\":\"boolean\"},\"KeyMarker\":{},\"VersionIdMarker\":{},\"NextKeyMarker\":{},\"NextVersionIdMarker\":{},\"Versions\":{\"locationName\":\"Version\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ETag\":{},\"Size\":{\"type\":\"integer\"},\"StorageClass\":{},\"Key\":{},\"VersionId\":{},\"IsLatest\":{\"type\":\"boolean\"},\"LastModified\":{\"type\":\"timestamp\"},\"Owner\":{\"shape\":\"S37\"}}},\"flattened\":true},\"DeleteMarkers\":{\"locationName\":\"DeleteMarker\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Owner\":{\"shape\":\"S37\"},\"Key\":{},\"VersionId\":{},\"IsLatest\":{\"type\":\"boolean\"},\"LastModified\":{\"type\":\"timestamp\"}}},\"flattened\":true},\"Name\":{},\"Prefix\":{},\"Delimiter\":{},\"MaxKeys\":{\"type\":\"integer\"},\"CommonPrefixes\":{\"shape\":\"Sb4\"},\"EncodingType\":{}}},\"alias\":\"GetBucketObjectVersions\"},\"ListObjects\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Delimiter\":{\"location\":\"querystring\",\"locationName\":\"delimiter\"},\"EncodingType\":{\"location\":\"querystring\",\"locationName\":\"encoding-type\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"MaxKeys\":{\"location\":\"querystring\",\"locationName\":\"max-keys\",\"type\":\"integer\"},\"Prefix\":{\"location\":\"querystring\",\"locationName\":\"prefix\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsTruncated\":{\"type\":\"boolean\"},\"Marker\":{},\"NextMarker\":{},\"Contents\":{\"shape\":\"Sbm\"},\"Name\":{},\"Prefix\":{},\"Delimiter\":{},\"MaxKeys\":{\"type\":\"integer\"},\"CommonPrefixes\":{\"shape\":\"Sb4\"},\"EncodingType\":{}}},\"alias\":\"GetBucket\"},\"ListObjectsV2\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}?list-type=2\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Delimiter\":{\"location\":\"querystring\",\"locationName\":\"delimiter\"},\"EncodingType\":{\"location\":\"querystring\",\"locationName\":\"encoding-type\"},\"MaxKeys\":{\"location\":\"querystring\",\"locationName\":\"max-keys\",\"type\":\"integer\"},\"Prefix\":{\"location\":\"querystring\",\"locationName\":\"prefix\"},\"ContinuationToken\":{\"location\":\"querystring\",\"locationName\":\"continuation-token\"},\"FetchOwner\":{\"location\":\"querystring\",\"locationName\":\"fetch-owner\",\"type\":\"boolean\"},\"StartAfter\":{\"location\":\"querystring\",\"locationName\":\"start-after\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IsTruncated\":{\"type\":\"boolean\"},\"Contents\":{\"shape\":\"Sbm\"},\"Name\":{},\"Prefix\":{},\"Delimiter\":{},\"MaxKeys\":{\"type\":\"integer\"},\"CommonPrefixes\":{\"shape\":\"Sb4\"},\"EncodingType\":{},\"KeyCount\":{\"type\":\"integer\"},\"ContinuationToken\":{},\"NextContinuationToken\":{},\"StartAfter\":{}}}},\"ListParts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\",\"UploadId\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"MaxParts\":{\"location\":\"querystring\",\"locationName\":\"max-parts\",\"type\":\"integer\"},\"PartNumberMarker\":{\"location\":\"querystring\",\"locationName\":\"part-number-marker\",\"type\":\"integer\"},\"UploadId\":{\"location\":\"querystring\",\"locationName\":\"uploadId\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AbortDate\":{\"location\":\"header\",\"locationName\":\"x-amz-abort-date\",\"type\":\"timestamp\"},\"AbortRuleId\":{\"location\":\"header\",\"locationName\":\"x-amz-abort-rule-id\"},\"Bucket\":{},\"Key\":{},\"UploadId\":{},\"PartNumberMarker\":{\"type\":\"integer\"},\"NextPartNumberMarker\":{\"type\":\"integer\"},\"MaxParts\":{\"type\":\"integer\"},\"IsTruncated\":{\"type\":\"boolean\"},\"Parts\":{\"locationName\":\"Part\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PartNumber\":{\"type\":\"integer\"},\"LastModified\":{\"type\":\"timestamp\"},\"ETag\":{},\"Size\":{\"type\":\"integer\"}}},\"flattened\":true},\"Initiator\":{\"shape\":\"Sb3\"},\"Owner\":{\"shape\":\"S37\"},\"StorageClass\":{},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"PutBucketAccelerateConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?accelerate\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"AccelerateConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"AccelerateConfiguration\":{\"locationName\":\"AccelerateConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"Status\":{}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"AccelerateConfiguration\"}},\"PutBucketAcl\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?acl\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"AccessControlPolicy\":{\"shape\":\"Sc4\",\"locationName\":\"AccessControlPolicy\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWrite\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"AccessControlPolicy\"},\"httpChecksumRequired\":true},\"PutBucketAnalyticsConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?analytics\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\",\"AnalyticsConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"AnalyticsConfiguration\":{\"shape\":\"S3j\",\"locationName\":\"AnalyticsConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"AnalyticsConfiguration\"}},\"PutBucketCors\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?cors\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"CORSConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"CORSConfiguration\":{\"locationName\":\"CORSConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"required\":[\"CORSRules\"],\"members\":{\"CORSRules\":{\"shape\":\"S3y\",\"locationName\":\"CORSRule\"}}},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"CORSConfiguration\"},\"httpChecksumRequired\":true},\"PutBucketEncryption\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?encryption\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"ServerSideEncryptionConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ServerSideEncryptionConfiguration\":{\"shape\":\"S4b\",\"locationName\":\"ServerSideEncryptionConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"ServerSideEncryptionConfiguration\"},\"httpChecksumRequired\":true},\"PutBucketIntelligentTieringConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?intelligent-tiering\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\",\"IntelligentTieringConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"IntelligentTieringConfiguration\":{\"shape\":\"S4h\",\"locationName\":\"IntelligentTieringConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}}},\"payload\":\"IntelligentTieringConfiguration\"}},\"PutBucketInventoryConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?inventory\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\",\"InventoryConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"InventoryConfiguration\":{\"shape\":\"S4r\",\"locationName\":\"InventoryConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"InventoryConfiguration\"}},\"PutBucketLifecycle\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?lifecycle\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"LifecycleConfiguration\":{\"locationName\":\"LifecycleConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"required\":[\"Rules\"],\"members\":{\"Rules\":{\"shape\":\"S57\",\"locationName\":\"Rule\"}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"LifecycleConfiguration\"},\"deprecated\":true,\"httpChecksumRequired\":true},\"PutBucketLifecycleConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?lifecycle\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"LifecycleConfiguration\":{\"locationName\":\"LifecycleConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"required\":[\"Rules\"],\"members\":{\"Rules\":{\"shape\":\"S5m\",\"locationName\":\"Rule\"}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"LifecycleConfiguration\"},\"httpChecksumRequired\":true},\"PutBucketLogging\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?logging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"BucketLoggingStatus\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"BucketLoggingStatus\":{\"locationName\":\"BucketLoggingStatus\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"LoggingEnabled\":{\"shape\":\"S5w\"}}},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"BucketLoggingStatus\"},\"httpChecksumRequired\":true},\"PutBucketMetricsConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?metrics\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Id\",\"MetricsConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Id\":{\"location\":\"querystring\",\"locationName\":\"id\"},\"MetricsConfiguration\":{\"shape\":\"S64\",\"locationName\":\"MetricsConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"MetricsConfiguration\"}},\"PutBucketNotification\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?notification\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"NotificationConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"NotificationConfiguration\":{\"shape\":\"S68\",\"locationName\":\"NotificationConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"NotificationConfiguration\"},\"deprecated\":true,\"httpChecksumRequired\":true},\"PutBucketNotificationConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?notification\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"NotificationConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"NotificationConfiguration\":{\"shape\":\"S6j\",\"locationName\":\"NotificationConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"NotificationConfiguration\"}},\"PutBucketOwnershipControls\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?ownershipControls\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"OwnershipControls\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"},\"OwnershipControls\":{\"shape\":\"S6z\",\"locationName\":\"OwnershipControls\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}}},\"payload\":\"OwnershipControls\"},\"httpChecksumRequired\":true},\"PutBucketPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Policy\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ConfirmRemoveSelfBucketAccess\":{\"location\":\"header\",\"locationName\":\"x-amz-confirm-remove-self-bucket-access\",\"type\":\"boolean\"},\"Policy\":{},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"Policy\"},\"httpChecksumRequired\":true},\"PutBucketReplication\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?replication\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"ReplicationConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ReplicationConfiguration\":{\"shape\":\"S7c\",\"locationName\":\"ReplicationConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"Token\":{\"location\":\"header\",\"locationName\":\"x-amz-bucket-object-lock-token\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"ReplicationConfiguration\"},\"httpChecksumRequired\":true},\"PutBucketRequestPayment\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?requestPayment\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"RequestPaymentConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"RequestPaymentConfiguration\":{\"locationName\":\"RequestPaymentConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"required\":[\"Payer\"],\"members\":{\"Payer\":{}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"RequestPaymentConfiguration\"},\"httpChecksumRequired\":true},\"PutBucketTagging\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Tagging\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"Tagging\":{\"shape\":\"Sct\",\"locationName\":\"Tagging\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"Tagging\"},\"httpChecksumRequired\":true},\"PutBucketVersioning\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?versioning\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"VersioningConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"MFA\":{\"location\":\"header\",\"locationName\":\"x-amz-mfa\"},\"VersioningConfiguration\":{\"locationName\":\"VersioningConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"MFADelete\":{\"locationName\":\"MfaDelete\"},\"Status\":{}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"VersioningConfiguration\"},\"httpChecksumRequired\":true},\"PutBucketWebsite\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?website\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"WebsiteConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"WebsiteConfiguration\":{\"locationName\":\"WebsiteConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"ErrorDocument\":{\"shape\":\"S8k\"},\"IndexDocument\":{\"shape\":\"S8i\"},\"RedirectAllRequestsTo\":{\"shape\":\"S8f\"},\"RoutingRules\":{\"shape\":\"S8l\"}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"WebsiteConfiguration\"},\"httpChecksumRequired\":true},\"PutObject\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"Body\":{\"streaming\":true,\"type\":\"blob\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"Cache-Control\"},\"ContentDisposition\":{\"location\":\"header\",\"locationName\":\"Content-Disposition\"},\"ContentEncoding\":{\"location\":\"header\",\"locationName\":\"Content-Encoding\"},\"ContentLanguage\":{\"location\":\"header\",\"locationName\":\"Content-Language\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"Content-Type\"},\"Expires\":{\"location\":\"header\",\"locationName\":\"Expires\",\"type\":\"timestamp\"},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"Metadata\":{\"shape\":\"S13\",\"location\":\"headers\",\"locationName\":\"x-amz-meta-\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-storage-class\"},\"WebsiteRedirectLocation\":{\"location\":\"header\",\"locationName\":\"x-amz-website-redirect-location\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"SSEKMSEncryptionContext\":{\"shape\":\"S1d\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-context\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"Tagging\":{\"location\":\"header\",\"locationName\":\"x-amz-tagging\"},\"ObjectLockMode\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-mode\"},\"ObjectLockRetainUntilDate\":{\"shape\":\"S1j\",\"location\":\"header\",\"locationName\":\"x-amz-object-lock-retain-until-date\"},\"ObjectLockLegalHoldStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-object-lock-legal-hold\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"Body\"},\"output\":{\"type\":\"structure\",\"members\":{\"Expiration\":{\"location\":\"header\",\"locationName\":\"x-amz-expiration\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"SSEKMSEncryptionContext\":{\"shape\":\"S1d\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-context\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"PutObjectAcl\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}?acl\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"AccessControlPolicy\":{\"shape\":\"Sc4\",\"locationName\":\"AccessControlPolicy\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWrite\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"AccessControlPolicy\"},\"output\":{\"type\":\"structure\",\"members\":{\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}},\"httpChecksumRequired\":true},\"PutObjectLegalHold\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}?legal-hold\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"LegalHold\":{\"shape\":\"S9k\",\"locationName\":\"LegalHold\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"LegalHold\"},\"output\":{\"type\":\"structure\",\"members\":{\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}},\"httpChecksumRequired\":true},\"PutObjectLockConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?object-lock\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ObjectLockConfiguration\":{\"shape\":\"S9n\",\"locationName\":\"ObjectLockConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"Token\":{\"location\":\"header\",\"locationName\":\"x-amz-bucket-object-lock-token\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"ObjectLockConfiguration\"},\"output\":{\"type\":\"structure\",\"members\":{\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}},\"httpChecksumRequired\":true},\"PutObjectRetention\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}?retention\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"Retention\":{\"shape\":\"S9v\",\"locationName\":\"Retention\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"BypassGovernanceRetention\":{\"location\":\"header\",\"locationName\":\"x-amz-bypass-governance-retention\",\"type\":\"boolean\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"Retention\"},\"output\":{\"type\":\"structure\",\"members\":{\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}},\"httpChecksumRequired\":true},\"PutObjectTagging\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}?tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\",\"Tagging\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"Tagging\":{\"shape\":\"Sct\",\"locationName\":\"Tagging\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"}},\"payload\":\"Tagging\"},\"output\":{\"type\":\"structure\",\"members\":{\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-version-id\"}}},\"httpChecksumRequired\":true},\"PutPublicAccessBlock\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}?publicAccessBlock\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"PublicAccessBlockConfiguration\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"PublicAccessBlockConfiguration\":{\"shape\":\"Sa2\",\"locationName\":\"PublicAccessBlockConfiguration\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"PublicAccessBlockConfiguration\"},\"httpChecksumRequired\":true},\"RestoreObject\":{\"http\":{\"requestUri\":\"/{Bucket}/{Key+}?restore\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"RestoreRequest\":{\"locationName\":\"RestoreRequest\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"members\":{\"Days\":{\"type\":\"integer\"},\"GlacierJobParameters\":{\"type\":\"structure\",\"required\":[\"Tier\"],\"members\":{\"Tier\":{}}},\"Type\":{},\"Tier\":{},\"Description\":{},\"SelectParameters\":{\"type\":\"structure\",\"required\":[\"InputSerialization\",\"ExpressionType\",\"Expression\",\"OutputSerialization\"],\"members\":{\"InputSerialization\":{\"shape\":\"Sdj\"},\"ExpressionType\":{},\"Expression\":{},\"OutputSerialization\":{\"shape\":\"Sdy\"}}},\"OutputLocation\":{\"type\":\"structure\",\"members\":{\"S3\":{\"type\":\"structure\",\"required\":[\"BucketName\",\"Prefix\"],\"members\":{\"BucketName\":{},\"Prefix\":{},\"Encryption\":{\"type\":\"structure\",\"required\":[\"EncryptionType\"],\"members\":{\"EncryptionType\":{},\"KMSKeyId\":{\"shape\":\"Sk\"},\"KMSContext\":{}}},\"CannedACL\":{},\"AccessControlList\":{\"shape\":\"S3a\"},\"Tagging\":{\"shape\":\"Sct\"},\"UserMetadata\":{\"type\":\"list\",\"member\":{\"locationName\":\"MetadataEntry\",\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"StorageClass\":{}}}}}}},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"RestoreRequest\"},\"output\":{\"type\":\"structure\",\"members\":{\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"},\"RestoreOutputPath\":{\"location\":\"header\",\"locationName\":\"x-amz-restore-output-path\"}}},\"alias\":\"PostObjectRestore\"},\"SelectObjectContent\":{\"http\":{\"requestUri\":\"/{Bucket}/{Key+}?select&select-type=2\"},\"input\":{\"locationName\":\"SelectObjectContentRequest\",\"xmlNamespace\":{\"uri\":\"http://s3.amazonaws.com/doc/2006-03-01/\"},\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\",\"Expression\",\"ExpressionType\",\"InputSerialization\",\"OutputSerialization\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"Expression\":{},\"ExpressionType\":{},\"RequestProgress\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"InputSerialization\":{\"shape\":\"Sdj\"},\"OutputSerialization\":{\"shape\":\"Sdy\"},\"ScanRange\":{\"type\":\"structure\",\"members\":{\"Start\":{\"type\":\"long\"},\"End\":{\"type\":\"long\"}}},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Payload\":{\"type\":\"structure\",\"members\":{\"Records\":{\"type\":\"structure\",\"members\":{\"Payload\":{\"eventpayload\":true,\"type\":\"blob\"}},\"event\":true},\"Stats\":{\"type\":\"structure\",\"members\":{\"Details\":{\"eventpayload\":true,\"type\":\"structure\",\"members\":{\"BytesScanned\":{\"type\":\"long\"},\"BytesProcessed\":{\"type\":\"long\"},\"BytesReturned\":{\"type\":\"long\"}}}},\"event\":true},\"Progress\":{\"type\":\"structure\",\"members\":{\"Details\":{\"eventpayload\":true,\"type\":\"structure\",\"members\":{\"BytesScanned\":{\"type\":\"long\"},\"BytesProcessed\":{\"type\":\"long\"},\"BytesReturned\":{\"type\":\"long\"}}}},\"event\":true},\"Cont\":{\"type\":\"structure\",\"members\":{},\"event\":true},\"End\":{\"type\":\"structure\",\"members\":{},\"event\":true}},\"eventstream\":true}},\"payload\":\"Payload\"}},\"UploadPart\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Key\",\"PartNumber\",\"UploadId\"],\"members\":{\"Body\":{\"streaming\":true,\"type\":\"blob\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ContentMD5\":{\"location\":\"header\",\"locationName\":\"Content-MD5\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"PartNumber\":{\"location\":\"querystring\",\"locationName\":\"partNumber\",\"type\":\"integer\"},\"UploadId\":{\"location\":\"querystring\",\"locationName\":\"uploadId\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}},\"payload\":\"Body\"},\"output\":{\"type\":\"structure\",\"members\":{\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"ETag\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}}}},\"UploadPartCopy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/{Bucket}/{Key+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"CopySource\",\"Key\",\"PartNumber\",\"UploadId\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"CopySource\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source\"},\"CopySourceIfMatch\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-match\"},\"CopySourceIfModifiedSince\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-modified-since\",\"type\":\"timestamp\"},\"CopySourceIfNoneMatch\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-none-match\"},\"CopySourceIfUnmodifiedSince\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-if-unmodified-since\",\"type\":\"timestamp\"},\"CopySourceRange\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-range\"},\"Key\":{\"location\":\"uri\",\"locationName\":\"Key\"},\"PartNumber\":{\"location\":\"querystring\",\"locationName\":\"partNumber\",\"type\":\"integer\"},\"UploadId\":{\"location\":\"querystring\",\"locationName\":\"uploadId\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKey\":{\"shape\":\"S1b\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"CopySourceSSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-server-side-encryption-customer-algorithm\"},\"CopySourceSSECustomerKey\":{\"shape\":\"S1f\",\"location\":\"header\",\"locationName\":\"x-amz-copy-source-server-side-encryption-customer-key\"},\"CopySourceSSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-server-side-encryption-customer-key-MD5\"},\"RequestPayer\":{\"location\":\"header\",\"locationName\":\"x-amz-request-payer\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"},\"ExpectedSourceBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-source-expected-bucket-owner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopySourceVersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-copy-source-version-id\"},\"CopyPartResult\":{\"type\":\"structure\",\"members\":{\"ETag\":{},\"LastModified\":{\"type\":\"timestamp\"}}},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-algorithm\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-customer-key-MD5\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-aws-kms-key-id\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-request-charged\"}},\"payload\":\"CopyPartResult\"}},\"WriteGetObjectResponse\":{\"http\":{\"requestUri\":\"/WriteGetObjectResponse\"},\"input\":{\"type\":\"structure\",\"required\":[\"RequestRoute\",\"RequestToken\"],\"members\":{\"RequestRoute\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-request-route\"},\"RequestToken\":{\"location\":\"header\",\"locationName\":\"x-amz-request-token\"},\"Body\":{\"streaming\":true,\"type\":\"blob\"},\"StatusCode\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-status\",\"type\":\"integer\"},\"ErrorCode\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-error-code\"},\"ErrorMessage\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-error-message\"},\"AcceptRanges\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-accept-ranges\"},\"CacheControl\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Cache-Control\"},\"ContentDisposition\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Content-Disposition\"},\"ContentEncoding\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Content-Encoding\"},\"ContentLanguage\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Content-Language\"},\"ContentLength\":{\"location\":\"header\",\"locationName\":\"Content-Length\",\"type\":\"long\"},\"ContentRange\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Content-Range\"},\"ContentType\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Content-Type\"},\"DeleteMarker\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-delete-marker\",\"type\":\"boolean\"},\"ETag\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-ETag\"},\"Expires\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Expires\",\"type\":\"timestamp\"},\"Expiration\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-expiration\"},\"LastModified\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-Last-Modified\",\"type\":\"timestamp\"},\"MissingMeta\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-missing-meta\",\"type\":\"integer\"},\"Metadata\":{\"shape\":\"S13\",\"location\":\"headers\",\"locationName\":\"x-amz-meta-\"},\"ObjectLockMode\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-object-lock-mode\"},\"ObjectLockLegalHoldStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-object-lock-legal-hold\"},\"ObjectLockRetainUntilDate\":{\"shape\":\"S1j\",\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-object-lock-retain-until-date\"},\"PartsCount\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-mp-parts-count\",\"type\":\"integer\"},\"ReplicationStatus\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-replication-status\"},\"RequestCharged\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-request-charged\"},\"Restore\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-restore\"},\"ServerSideEncryption\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-server-side-encryption\"},\"SSECustomerAlgorithm\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm\"},\"SSEKMSKeyId\":{\"shape\":\"Sk\",\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id\"},\"SSECustomerKeyMD5\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-server-side-encryption-customer-key-MD5\"},\"StorageClass\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-storage-class\"},\"TagCount\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-tagging-count\",\"type\":\"integer\"},\"VersionId\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-version-id\"},\"BucketKeyEnabled\":{\"location\":\"header\",\"locationName\":\"x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled\",\"type\":\"boolean\"}},\"payload\":\"Body\"},\"authtype\":\"v4-unsigned-body\",\"endpoint\":{\"hostPrefix\":\"{RequestRoute}.\"}}},\"shapes\":{\"Sk\":{\"type\":\"string\",\"sensitive\":true},\"S13\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1b\":{\"type\":\"blob\",\"sensitive\":true},\"S1d\":{\"type\":\"string\",\"sensitive\":true},\"S1f\":{\"type\":\"blob\",\"sensitive\":true},\"S1j\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S37\":{\"type\":\"structure\",\"members\":{\"DisplayName\":{},\"ID\":{}}},\"S3a\":{\"type\":\"list\",\"member\":{\"locationName\":\"Grant\",\"type\":\"structure\",\"members\":{\"Grantee\":{\"shape\":\"S3c\"},\"Permission\":{}}}},\"S3c\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"DisplayName\":{},\"EmailAddress\":{},\"ID\":{},\"Type\":{\"locationName\":\"xsi:type\",\"xmlAttribute\":true},\"URI\":{}},\"xmlNamespace\":{\"prefix\":\"xsi\",\"uri\":\"http://www.w3.org/2001/XMLSchema-instance\"}},\"S3j\":{\"type\":\"structure\",\"required\":[\"Id\",\"StorageClassAnalysis\"],\"members\":{\"Id\":{},\"Filter\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tag\":{\"shape\":\"S3m\"},\"And\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tags\":{\"shape\":\"S3p\",\"flattened\":true,\"locationName\":\"Tag\"}}}}},\"StorageClassAnalysis\":{\"type\":\"structure\",\"members\":{\"DataExport\":{\"type\":\"structure\",\"required\":[\"OutputSchemaVersion\",\"Destination\"],\"members\":{\"OutputSchemaVersion\":{},\"Destination\":{\"type\":\"structure\",\"required\":[\"S3BucketDestination\"],\"members\":{\"S3BucketDestination\":{\"type\":\"structure\",\"required\":[\"Format\",\"Bucket\"],\"members\":{\"Format\":{},\"BucketAccountId\":{},\"Bucket\":{},\"Prefix\":{}}}}}}}}}}},\"S3m\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}},\"S3p\":{\"type\":\"list\",\"member\":{\"shape\":\"S3m\",\"locationName\":\"Tag\"}},\"S3y\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AllowedMethods\",\"AllowedOrigins\"],\"members\":{\"ID\":{},\"AllowedHeaders\":{\"locationName\":\"AllowedHeader\",\"type\":\"list\",\"member\":{},\"flattened\":true},\"AllowedMethods\":{\"locationName\":\"AllowedMethod\",\"type\":\"list\",\"member\":{},\"flattened\":true},\"AllowedOrigins\":{\"locationName\":\"AllowedOrigin\",\"type\":\"list\",\"member\":{},\"flattened\":true},\"ExposeHeaders\":{\"locationName\":\"ExposeHeader\",\"type\":\"list\",\"member\":{},\"flattened\":true},\"MaxAgeSeconds\":{\"type\":\"integer\"}}},\"flattened\":true},\"S4b\":{\"type\":\"structure\",\"required\":[\"Rules\"],\"members\":{\"Rules\":{\"locationName\":\"Rule\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplyServerSideEncryptionByDefault\":{\"type\":\"structure\",\"required\":[\"SSEAlgorithm\"],\"members\":{\"SSEAlgorithm\":{},\"KMSMasterKeyID\":{\"shape\":\"Sk\"}}},\"BucketKeyEnabled\":{\"type\":\"boolean\"}}},\"flattened\":true}}},\"S4h\":{\"type\":\"structure\",\"required\":[\"Id\",\"Status\",\"Tierings\"],\"members\":{\"Id\":{},\"Filter\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tag\":{\"shape\":\"S3m\"},\"And\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tags\":{\"shape\":\"S3p\",\"flattened\":true,\"locationName\":\"Tag\"}}}}},\"Status\":{},\"Tierings\":{\"locationName\":\"Tiering\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Days\",\"AccessTier\"],\"members\":{\"Days\":{\"type\":\"integer\"},\"AccessTier\":{}}},\"flattened\":true}}},\"S4r\":{\"type\":\"structure\",\"required\":[\"Destination\",\"IsEnabled\",\"Id\",\"IncludedObjectVersions\",\"Schedule\"],\"members\":{\"Destination\":{\"type\":\"structure\",\"required\":[\"S3BucketDestination\"],\"members\":{\"S3BucketDestination\":{\"type\":\"structure\",\"required\":[\"Bucket\",\"Format\"],\"members\":{\"AccountId\":{},\"Bucket\":{},\"Format\":{},\"Prefix\":{},\"Encryption\":{\"type\":\"structure\",\"members\":{\"SSES3\":{\"locationName\":\"SSE-S3\",\"type\":\"structure\",\"members\":{}},\"SSEKMS\":{\"locationName\":\"SSE-KMS\",\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{\"shape\":\"Sk\"}}}}}}}}},\"IsEnabled\":{\"type\":\"boolean\"},\"Filter\":{\"type\":\"structure\",\"required\":[\"Prefix\"],\"members\":{\"Prefix\":{}}},\"Id\":{},\"IncludedObjectVersions\":{},\"OptionalFields\":{\"type\":\"list\",\"member\":{\"locationName\":\"Field\"}},\"Schedule\":{\"type\":\"structure\",\"required\":[\"Frequency\"],\"members\":{\"Frequency\":{}}}}},\"S57\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Prefix\",\"Status\"],\"members\":{\"Expiration\":{\"shape\":\"S59\"},\"ID\":{},\"Prefix\":{},\"Status\":{},\"Transition\":{\"shape\":\"S5e\"},\"NoncurrentVersionTransition\":{\"shape\":\"S5g\"},\"NoncurrentVersionExpiration\":{\"shape\":\"S5h\"},\"AbortIncompleteMultipartUpload\":{\"shape\":\"S5i\"}}},\"flattened\":true},\"S59\":{\"type\":\"structure\",\"members\":{\"Date\":{\"shape\":\"S5a\"},\"Days\":{\"type\":\"integer\"},\"ExpiredObjectDeleteMarker\":{\"type\":\"boolean\"}}},\"S5a\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"S5e\":{\"type\":\"structure\",\"members\":{\"Date\":{\"shape\":\"S5a\"},\"Days\":{\"type\":\"integer\"},\"StorageClass\":{}}},\"S5g\":{\"type\":\"structure\",\"members\":{\"NoncurrentDays\":{\"type\":\"integer\"},\"StorageClass\":{}}},\"S5h\":{\"type\":\"structure\",\"members\":{\"NoncurrentDays\":{\"type\":\"integer\"}}},\"S5i\":{\"type\":\"structure\",\"members\":{\"DaysAfterInitiation\":{\"type\":\"integer\"}}},\"S5m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Expiration\":{\"shape\":\"S59\"},\"ID\":{},\"Prefix\":{\"deprecated\":true},\"Filter\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tag\":{\"shape\":\"S3m\"},\"And\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tags\":{\"shape\":\"S3p\",\"flattened\":true,\"locationName\":\"Tag\"}}}}},\"Status\":{},\"Transitions\":{\"locationName\":\"Transition\",\"type\":\"list\",\"member\":{\"shape\":\"S5e\"},\"flattened\":true},\"NoncurrentVersionTransitions\":{\"locationName\":\"NoncurrentVersionTransition\",\"type\":\"list\",\"member\":{\"shape\":\"S5g\"},\"flattened\":true},\"NoncurrentVersionExpiration\":{\"shape\":\"S5h\"},\"AbortIncompleteMultipartUpload\":{\"shape\":\"S5i\"}}},\"flattened\":true},\"S5w\":{\"type\":\"structure\",\"required\":[\"TargetBucket\",\"TargetPrefix\"],\"members\":{\"TargetBucket\":{},\"TargetGrants\":{\"type\":\"list\",\"member\":{\"locationName\":\"Grant\",\"type\":\"structure\",\"members\":{\"Grantee\":{\"shape\":\"S3c\"},\"Permission\":{}}}},\"TargetPrefix\":{}}},\"S64\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Filter\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tag\":{\"shape\":\"S3m\"},\"And\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tags\":{\"shape\":\"S3p\",\"flattened\":true,\"locationName\":\"Tag\"}}}}}}},\"S67\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{\"location\":\"uri\",\"locationName\":\"Bucket\"},\"ExpectedBucketOwner\":{\"location\":\"header\",\"locationName\":\"x-amz-expected-bucket-owner\"}}},\"S68\":{\"type\":\"structure\",\"members\":{\"TopicConfiguration\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Events\":{\"shape\":\"S6b\",\"locationName\":\"Event\"},\"Event\":{\"deprecated\":true},\"Topic\":{}}},\"QueueConfiguration\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Event\":{\"deprecated\":true},\"Events\":{\"shape\":\"S6b\",\"locationName\":\"Event\"},\"Queue\":{}}},\"CloudFunctionConfiguration\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Event\":{\"deprecated\":true},\"Events\":{\"shape\":\"S6b\",\"locationName\":\"Event\"},\"CloudFunction\":{},\"InvocationRole\":{}}}}},\"S6b\":{\"type\":\"list\",\"member\":{},\"flattened\":true},\"S6j\":{\"type\":\"structure\",\"members\":{\"TopicConfigurations\":{\"locationName\":\"TopicConfiguration\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TopicArn\",\"Events\"],\"members\":{\"Id\":{},\"TopicArn\":{\"locationName\":\"Topic\"},\"Events\":{\"shape\":\"S6b\",\"locationName\":\"Event\"},\"Filter\":{\"shape\":\"S6m\"}}},\"flattened\":true},\"QueueConfigurations\":{\"locationName\":\"QueueConfiguration\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"QueueArn\",\"Events\"],\"members\":{\"Id\":{},\"QueueArn\":{\"locationName\":\"Queue\"},\"Events\":{\"shape\":\"S6b\",\"locationName\":\"Event\"},\"Filter\":{\"shape\":\"S6m\"}}},\"flattened\":true},\"LambdaFunctionConfigurations\":{\"locationName\":\"CloudFunctionConfiguration\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LambdaFunctionArn\",\"Events\"],\"members\":{\"Id\":{},\"LambdaFunctionArn\":{\"locationName\":\"CloudFunction\"},\"Events\":{\"shape\":\"S6b\",\"locationName\":\"Event\"},\"Filter\":{\"shape\":\"S6m\"}}},\"flattened\":true}}},\"S6m\":{\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"S3Key\",\"type\":\"structure\",\"members\":{\"FilterRules\":{\"locationName\":\"FilterRule\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}},\"flattened\":true}}}}},\"S6z\":{\"type\":\"structure\",\"required\":[\"Rules\"],\"members\":{\"Rules\":{\"locationName\":\"Rule\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ObjectOwnership\"],\"members\":{\"ObjectOwnership\":{}}},\"flattened\":true}}},\"S7c\":{\"type\":\"structure\",\"required\":[\"Role\",\"Rules\"],\"members\":{\"Role\":{},\"Rules\":{\"locationName\":\"Rule\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Status\",\"Destination\"],\"members\":{\"ID\":{},\"Priority\":{\"type\":\"integer\"},\"Prefix\":{\"deprecated\":true},\"Filter\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tag\":{\"shape\":\"S3m\"},\"And\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tags\":{\"shape\":\"S3p\",\"flattened\":true,\"locationName\":\"Tag\"}}}}},\"Status\":{},\"SourceSelectionCriteria\":{\"type\":\"structure\",\"members\":{\"SseKmsEncryptedObjects\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}},\"ReplicaModifications\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}}},\"ExistingObjectReplication\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}},\"Destination\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"Bucket\":{},\"Account\":{},\"StorageClass\":{},\"AccessControlTranslation\":{\"type\":\"structure\",\"required\":[\"Owner\"],\"members\":{\"Owner\":{}}},\"EncryptionConfiguration\":{\"type\":\"structure\",\"members\":{\"ReplicaKmsKeyID\":{}}},\"ReplicationTime\":{\"type\":\"structure\",\"required\":[\"Status\",\"Time\"],\"members\":{\"Status\":{},\"Time\":{\"shape\":\"S7y\"}}},\"Metrics\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{},\"EventThreshold\":{\"shape\":\"S7y\"}}}}},\"DeleteMarkerReplication\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}}},\"flattened\":true}}},\"S7y\":{\"type\":\"structure\",\"members\":{\"Minutes\":{\"type\":\"integer\"}}},\"S8f\":{\"type\":\"structure\",\"required\":[\"HostName\"],\"members\":{\"HostName\":{},\"Protocol\":{}}},\"S8i\":{\"type\":\"structure\",\"required\":[\"Suffix\"],\"members\":{\"Suffix\":{}}},\"S8k\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{}}},\"S8l\":{\"type\":\"list\",\"member\":{\"locationName\":\"RoutingRule\",\"type\":\"structure\",\"required\":[\"Redirect\"],\"members\":{\"Condition\":{\"type\":\"structure\",\"members\":{\"HttpErrorCodeReturnedEquals\":{},\"KeyPrefixEquals\":{}}},\"Redirect\":{\"type\":\"structure\",\"members\":{\"HostName\":{},\"HttpRedirectCode\":{},\"Protocol\":{},\"ReplaceKeyPrefixWith\":{},\"ReplaceKeyWith\":{}}}}}},\"S9k\":{\"type\":\"structure\",\"members\":{\"Status\":{}}},\"S9n\":{\"type\":\"structure\",\"members\":{\"ObjectLockEnabled\":{},\"Rule\":{\"type\":\"structure\",\"members\":{\"DefaultRetention\":{\"type\":\"structure\",\"members\":{\"Mode\":{},\"Days\":{\"type\":\"integer\"},\"Years\":{\"type\":\"integer\"}}}}}}},\"S9v\":{\"type\":\"structure\",\"members\":{\"Mode\":{},\"RetainUntilDate\":{\"shape\":\"S5a\"}}},\"Sa2\":{\"type\":\"structure\",\"members\":{\"BlockPublicAcls\":{\"locationName\":\"BlockPublicAcls\",\"type\":\"boolean\"},\"IgnorePublicAcls\":{\"locationName\":\"IgnorePublicAcls\",\"type\":\"boolean\"},\"BlockPublicPolicy\":{\"locationName\":\"BlockPublicPolicy\",\"type\":\"boolean\"},\"RestrictPublicBuckets\":{\"locationName\":\"RestrictPublicBuckets\",\"type\":\"boolean\"}}},\"Sb3\":{\"type\":\"structure\",\"members\":{\"ID\":{},\"DisplayName\":{}}},\"Sb4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Prefix\":{}}},\"flattened\":true},\"Sbm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"LastModified\":{\"type\":\"timestamp\"},\"ETag\":{},\"Size\":{\"type\":\"integer\"},\"StorageClass\":{},\"Owner\":{\"shape\":\"S37\"}}},\"flattened\":true},\"Sc4\":{\"type\":\"structure\",\"members\":{\"Grants\":{\"shape\":\"S3a\",\"locationName\":\"AccessControlList\"},\"Owner\":{\"shape\":\"S37\"}}},\"Sct\":{\"type\":\"structure\",\"required\":[\"TagSet\"],\"members\":{\"TagSet\":{\"shape\":\"S3p\"}}},\"Sdj\":{\"type\":\"structure\",\"members\":{\"CSV\":{\"type\":\"structure\",\"members\":{\"FileHeaderInfo\":{},\"Comments\":{},\"QuoteEscapeCharacter\":{},\"RecordDelimiter\":{},\"FieldDelimiter\":{},\"QuoteCharacter\":{},\"AllowQuotedRecordDelimiter\":{\"type\":\"boolean\"}}},\"CompressionType\":{},\"JSON\":{\"type\":\"structure\",\"members\":{\"Type\":{}}},\"Parquet\":{\"type\":\"structure\",\"members\":{}}}},\"Sdy\":{\"type\":\"structure\",\"members\":{\"CSV\":{\"type\":\"structure\",\"members\":{\"QuoteFields\":{},\"QuoteEscapeCharacter\":{},\"RecordDelimiter\":{},\"FieldDelimiter\":{},\"QuoteCharacter\":{}}},\"JSON\":{\"type\":\"structure\",\"members\":{\"RecordDelimiter\":{}}}}}}}");

/***/ }),

/***/ 53175:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListBuckets\":{\"result_key\":\"Buckets\"},\"ListMultipartUploads\":{\"input_token\":[\"KeyMarker\",\"UploadIdMarker\"],\"limit_key\":\"MaxUploads\",\"more_results\":\"IsTruncated\",\"output_token\":[\"NextKeyMarker\",\"NextUploadIdMarker\"],\"result_key\":[\"Uploads\",\"CommonPrefixes\"]},\"ListObjectVersions\":{\"input_token\":[\"KeyMarker\",\"VersionIdMarker\"],\"limit_key\":\"MaxKeys\",\"more_results\":\"IsTruncated\",\"output_token\":[\"NextKeyMarker\",\"NextVersionIdMarker\"],\"result_key\":[\"Versions\",\"DeleteMarkers\",\"CommonPrefixes\"]},\"ListObjects\":{\"input_token\":\"Marker\",\"limit_key\":\"MaxKeys\",\"more_results\":\"IsTruncated\",\"output_token\":\"NextMarker || Contents[-1].Key\",\"result_key\":[\"Contents\",\"CommonPrefixes\"]},\"ListObjectsV2\":{\"input_token\":\"ContinuationToken\",\"limit_key\":\"MaxKeys\",\"output_token\":\"NextContinuationToken\",\"result_key\":[\"Contents\",\"CommonPrefixes\"]},\"ListParts\":{\"input_token\":\"PartNumberMarker\",\"limit_key\":\"MaxParts\",\"more_results\":\"IsTruncated\",\"output_token\":\"NextPartNumberMarker\",\"result_key\":\"Parts\"}}}");

/***/ }),

/***/ 44494:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"BucketExists\":{\"delay\":5,\"operation\":\"HeadBucket\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":200,\"matcher\":\"status\",\"state\":\"success\"},{\"expected\":301,\"matcher\":\"status\",\"state\":\"success\"},{\"expected\":403,\"matcher\":\"status\",\"state\":\"success\"},{\"expected\":404,\"matcher\":\"status\",\"state\":\"retry\"}]},\"BucketNotExists\":{\"delay\":5,\"operation\":\"HeadBucket\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":404,\"matcher\":\"status\",\"state\":\"success\"}]},\"ObjectExists\":{\"delay\":5,\"operation\":\"HeadObject\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":200,\"matcher\":\"status\",\"state\":\"success\"},{\"expected\":404,\"matcher\":\"status\",\"state\":\"retry\"}]},\"ObjectNotExists\":{\"delay\":5,\"operation\":\"HeadObject\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":404,\"matcher\":\"status\",\"state\":\"success\"}]}}}");

/***/ }),

/***/ 52092:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-08-20\",\"endpointPrefix\":\"s3-control\",\"protocol\":\"rest-xml\",\"serviceFullName\":\"AWS S3 Control\",\"serviceId\":\"S3 Control\",\"signatureVersion\":\"s3v4\",\"signingName\":\"s3\",\"uid\":\"s3control-2018-08-20\"},\"operations\":{\"CreateAccessPoint\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/accesspoint/{name}\"},\"input\":{\"locationName\":\"CreateAccessPointRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Bucket\":{},\"VpcConfiguration\":{\"shape\":\"S5\"},\"PublicAccessBlockConfiguration\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccessPointArn\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"CreateAccessPointForObjectLambda\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}\"},\"input\":{\"locationName\":\"CreateAccessPointForObjectLambdaRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\",\"Configuration\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Configuration\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectLambdaAccessPointArn\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"CreateBucket\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/bucket/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Bucket\"],\"members\":{\"ACL\":{\"location\":\"header\",\"locationName\":\"x-amz-acl\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"},\"CreateBucketConfiguration\":{\"locationName\":\"CreateBucketConfiguration\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"members\":{\"LocationConstraint\":{}}},\"GrantFullControl\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-full-control\"},\"GrantRead\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read\"},\"GrantReadACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-read-acp\"},\"GrantWrite\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write\"},\"GrantWriteACP\":{\"location\":\"header\",\"locationName\":\"x-amz-grant-write-acp\"},\"ObjectLockEnabledForBucket\":{\"location\":\"header\",\"locationName\":\"x-amz-bucket-object-lock-enabled\",\"type\":\"boolean\"},\"OutpostId\":{\"location\":\"header\",\"locationName\":\"x-amz-outpost-id\"}},\"payload\":\"CreateBucketConfiguration\"},\"output\":{\"type\":\"structure\",\"members\":{\"Location\":{\"location\":\"header\",\"locationName\":\"Location\"},\"BucketArn\":{}}},\"httpChecksumRequired\":true},\"CreateJob\":{\"http\":{\"requestUri\":\"/v20180820/jobs\"},\"input\":{\"locationName\":\"CreateJobRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Operation\",\"Report\",\"ClientRequestToken\",\"Manifest\",\"Priority\",\"RoleArn\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"ConfirmationRequired\":{\"type\":\"boolean\"},\"Operation\":{\"shape\":\"S18\"},\"Report\":{\"shape\":\"S2d\"},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Manifest\":{\"shape\":\"S2h\"},\"Description\":{},\"Priority\":{\"type\":\"integer\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S1q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteAccessPoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/accesspoint/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteAccessPointForObjectLambda\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteAccessPointPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/accesspoint/{name}/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteAccessPointPolicyForObjectLambda\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteBucket\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/bucket/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteBucketLifecycleConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/bucket/{name}/lifecycleconfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteBucketPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/bucket/{name}/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteBucketTagging\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/bucket/{name}/tagging\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteJobTagging\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/jobs/{id}/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"JobId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeletePublicAccessBlock\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/configuration/publicAccessBlock\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteStorageLensConfiguration\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/storagelens/{storagelensid}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigId\",\"AccountId\"],\"members\":{\"ConfigId\":{\"location\":\"uri\",\"locationName\":\"storagelensid\"},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DeleteStorageLensConfigurationTagging\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v20180820/storagelens/{storagelensid}/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigId\",\"AccountId\"],\"members\":{\"ConfigId\":{\"location\":\"uri\",\"locationName\":\"storagelensid\"},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"DescribeJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/jobs/{id}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"JobId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Job\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"ConfirmationRequired\":{\"type\":\"boolean\"},\"Description\":{},\"JobArn\":{},\"Status\":{},\"Manifest\":{\"shape\":\"S2h\"},\"Operation\":{\"shape\":\"S18\"},\"Priority\":{\"type\":\"integer\"},\"ProgressSummary\":{\"shape\":\"S3e\"},\"StatusUpdateReason\":{},\"FailureReasons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailureCode\":{},\"FailureReason\":{}}}},\"Report\":{\"shape\":\"S2d\"},\"CreationTime\":{\"type\":\"timestamp\"},\"TerminationDate\":{\"type\":\"timestamp\"},\"RoleArn\":{},\"SuspendedDate\":{\"type\":\"timestamp\"},\"SuspendedCause\":{}}}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPoint\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspoint/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Bucket\":{},\"NetworkOrigin\":{},\"VpcConfiguration\":{\"shape\":\"S5\"},\"PublicAccessBlockConfiguration\":{\"shape\":\"S7\"},\"CreationDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPointConfigurationForObjectLambda\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}/configuration\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Configuration\":{\"shape\":\"Sd\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPointForObjectLambda\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"PublicAccessBlockConfiguration\":{\"shape\":\"S7\"},\"CreationDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPointPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspoint/{name}/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPointPolicyForObjectLambda\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPointPolicyStatus\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspoint/{name}/policyStatus\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyStatus\":{\"shape\":\"S47\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetAccessPointPolicyStatusForObjectLambda\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}/policyStatus\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyStatus\":{\"shape\":\"S47\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetBucket\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/bucket/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"PublicAccessBlockEnabled\":{\"type\":\"boolean\"},\"CreationDate\":{\"type\":\"timestamp\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetBucketLifecycleConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/bucket/{name}/lifecycleconfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S4g\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetBucketPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/bucket/{name}/policy\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetBucketTagging\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/bucket/{name}/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TagSet\"],\"members\":{\"TagSet\":{\"shape\":\"S1q\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetJobTagging\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/jobs/{id}/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"JobId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S1q\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetPublicAccessBlock\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/configuration/publicAccessBlock\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PublicAccessBlockConfiguration\":{\"shape\":\"S7\"}},\"payload\":\"PublicAccessBlockConfiguration\"},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetStorageLensConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/storagelens/{storagelensid}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigId\",\"AccountId\"],\"members\":{\"ConfigId\":{\"location\":\"uri\",\"locationName\":\"storagelensid\"},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StorageLensConfiguration\":{\"shape\":\"S59\"}},\"payload\":\"StorageLensConfiguration\"},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"GetStorageLensConfigurationTagging\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/storagelens/{storagelensid}/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigId\",\"AccountId\"],\"members\":{\"ConfigId\":{\"location\":\"uri\",\"locationName\":\"storagelensid\"},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S62\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"ListAccessPoints\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspoint\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"querystring\",\"locationName\":\"bucket\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccessPointList\":{\"type\":\"list\",\"member\":{\"locationName\":\"AccessPoint\",\"type\":\"structure\",\"required\":[\"Name\",\"NetworkOrigin\",\"Bucket\"],\"members\":{\"Name\":{},\"NetworkOrigin\":{},\"VpcConfiguration\":{\"shape\":\"S5\"},\"Bucket\":{},\"AccessPointArn\":{}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"ListAccessPointsForObjectLambda\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/accesspointforobjectlambda\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ObjectLambdaAccessPointList\":{\"type\":\"list\",\"member\":{\"locationName\":\"ObjectLambdaAccessPoint\",\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"ObjectLambdaAccessPointArn\":{}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"ListJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobStatuses\":{\"location\":\"querystring\",\"locationName\":\"jobStatuses\",\"type\":\"list\",\"member\":{}},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"Description\":{},\"Operation\":{},\"Priority\":{\"type\":\"integer\"},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TerminationDate\":{\"type\":\"timestamp\"},\"ProgressSummary\":{\"shape\":\"S3e\"}}}}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"ListRegionalBuckets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/bucket\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"OutpostId\":{\"location\":\"header\",\"locationName\":\"x-amz-outpost-id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegionalBucketList\":{\"type\":\"list\",\"member\":{\"locationName\":\"RegionalBucket\",\"type\":\"structure\",\"required\":[\"Bucket\",\"PublicAccessBlockEnabled\",\"CreationDate\"],\"members\":{\"Bucket\":{},\"BucketArn\":{},\"PublicAccessBlockEnabled\":{\"type\":\"boolean\"},\"CreationDate\":{\"type\":\"timestamp\"},\"OutpostId\":{}}}},\"NextToken\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"ListStorageLensConfigurations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v20180820/storagelens\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"StorageLensConfigurationList\":{\"type\":\"list\",\"member\":{\"locationName\":\"StorageLensConfiguration\",\"type\":\"structure\",\"required\":[\"Id\",\"StorageLensArn\",\"HomeRegion\"],\"members\":{\"Id\":{},\"StorageLensArn\":{},\"HomeRegion\":{},\"IsEnabled\":{\"type\":\"boolean\"}}},\"flattened\":true}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutAccessPointConfigurationForObjectLambda\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}/configuration\"},\"input\":{\"locationName\":\"PutAccessPointConfigurationForObjectLambdaRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\",\"Configuration\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Configuration\":{\"shape\":\"Sd\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutAccessPointPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/accesspoint/{name}/policy\"},\"input\":{\"locationName\":\"PutAccessPointPolicyRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\",\"Policy\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Policy\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutAccessPointPolicyForObjectLambda\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/accesspointforobjectlambda/{name}/policy\"},\"input\":{\"locationName\":\"PutAccessPointPolicyForObjectLambdaRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Name\",\"Policy\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Policy\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutBucketLifecycleConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/bucket/{name}/lifecycleconfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"},\"LifecycleConfiguration\":{\"locationName\":\"LifecycleConfiguration\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"members\":{\"Rules\":{\"shape\":\"S4g\"}}}},\"payload\":\"LifecycleConfiguration\"},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"},\"httpChecksumRequired\":true},\"PutBucketPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/bucket/{name}/policy\"},\"input\":{\"locationName\":\"PutBucketPolicyRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\",\"Policy\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"},\"ConfirmRemoveSelfBucketAccess\":{\"location\":\"header\",\"locationName\":\"x-amz-confirm-remove-self-bucket-access\",\"type\":\"boolean\"},\"Policy\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"},\"httpChecksumRequired\":true},\"PutBucketTagging\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/bucket/{name}/tagging\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"Bucket\",\"Tagging\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Bucket\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Tagging\":{\"locationName\":\"Tagging\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"TagSet\"],\"members\":{\"TagSet\":{\"shape\":\"S1q\"}}}},\"payload\":\"Tagging\"},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"},\"httpChecksumRequired\":true},\"PutJobTagging\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/jobs/{id}/tagging\"},\"input\":{\"locationName\":\"PutJobTaggingRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"AccountId\",\"JobId\",\"Tags\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"id\"},\"Tags\":{\"shape\":\"S1q\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutPublicAccessBlock\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/configuration/publicAccessBlock\"},\"input\":{\"type\":\"structure\",\"required\":[\"PublicAccessBlockConfiguration\",\"AccountId\"],\"members\":{\"PublicAccessBlockConfiguration\":{\"shape\":\"S7\",\"locationName\":\"PublicAccessBlockConfiguration\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"}},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"}},\"payload\":\"PublicAccessBlockConfiguration\"},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutStorageLensConfiguration\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/storagelens/{storagelensid}\"},\"input\":{\"locationName\":\"PutStorageLensConfigurationRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"ConfigId\",\"AccountId\",\"StorageLensConfiguration\"],\"members\":{\"ConfigId\":{\"location\":\"uri\",\"locationName\":\"storagelensid\"},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"StorageLensConfiguration\":{\"shape\":\"S59\"},\"Tags\":{\"shape\":\"S62\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"PutStorageLensConfigurationTagging\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v20180820/storagelens/{storagelensid}/tagging\"},\"input\":{\"locationName\":\"PutStorageLensConfigurationTaggingRequest\",\"xmlNamespace\":{\"uri\":\"http://awss3control.amazonaws.com/doc/2018-08-20/\"},\"type\":\"structure\",\"required\":[\"ConfigId\",\"AccountId\",\"Tags\"],\"members\":{\"ConfigId\":{\"location\":\"uri\",\"locationName\":\"storagelensid\"},\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"Tags\":{\"shape\":\"S62\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"UpdateJobPriority\":{\"http\":{\"requestUri\":\"/v20180820/jobs/{id}/priority\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"JobId\",\"Priority\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"id\"},\"Priority\":{\"location\":\"querystring\",\"locationName\":\"priority\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobId\",\"Priority\"],\"members\":{\"JobId\":{},\"Priority\":{\"type\":\"integer\"}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}},\"UpdateJobStatus\":{\"http\":{\"requestUri\":\"/v20180820/jobs/{id}/status\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountId\",\"JobId\",\"RequestedJobStatus\"],\"members\":{\"AccountId\":{\"hostLabel\":true,\"location\":\"header\",\"locationName\":\"x-amz-account-id\"},\"JobId\":{\"location\":\"uri\",\"locationName\":\"id\"},\"RequestedJobStatus\":{\"location\":\"querystring\",\"locationName\":\"requestedJobStatus\"},\"StatusUpdateReason\":{\"location\":\"querystring\",\"locationName\":\"statusUpdateReason\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"Status\":{},\"StatusUpdateReason\":{}}},\"endpoint\":{\"hostPrefix\":\"{AccountId}.\"}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"VpcId\"],\"members\":{\"VpcId\":{}}},\"S7\":{\"type\":\"structure\",\"members\":{\"BlockPublicAcls\":{\"locationName\":\"BlockPublicAcls\",\"type\":\"boolean\"},\"IgnorePublicAcls\":{\"locationName\":\"IgnorePublicAcls\",\"type\":\"boolean\"},\"BlockPublicPolicy\":{\"locationName\":\"BlockPublicPolicy\",\"type\":\"boolean\"},\"RestrictPublicBuckets\":{\"locationName\":\"RestrictPublicBuckets\",\"type\":\"boolean\"}}},\"Sd\":{\"type\":\"structure\",\"required\":[\"SupportingAccessPoint\",\"TransformationConfigurations\"],\"members\":{\"SupportingAccessPoint\":{},\"CloudWatchMetricsEnabled\":{\"type\":\"boolean\"},\"AllowedFeatures\":{\"type\":\"list\",\"member\":{\"locationName\":\"AllowedFeature\"}},\"TransformationConfigurations\":{\"type\":\"list\",\"member\":{\"locationName\":\"TransformationConfiguration\",\"type\":\"structure\",\"required\":[\"Actions\",\"ContentTransformation\"],\"members\":{\"Actions\":{\"type\":\"list\",\"member\":{\"locationName\":\"Action\"}},\"ContentTransformation\":{\"type\":\"structure\",\"members\":{\"AwsLambda\":{\"type\":\"structure\",\"required\":[\"FunctionArn\"],\"members\":{\"FunctionArn\":{},\"FunctionPayload\":{}}}},\"union\":true}}}}}},\"S18\":{\"type\":\"structure\",\"members\":{\"LambdaInvoke\":{\"type\":\"structure\",\"members\":{\"FunctionArn\":{}}},\"S3PutObjectCopy\":{\"type\":\"structure\",\"members\":{\"TargetResource\":{},\"CannedAccessControlList\":{},\"AccessControlGrants\":{\"shape\":\"S1d\"},\"MetadataDirective\":{},\"ModifiedSinceConstraint\":{\"type\":\"timestamp\"},\"NewObjectMetadata\":{\"type\":\"structure\",\"members\":{\"CacheControl\":{},\"ContentDisposition\":{},\"ContentEncoding\":{},\"ContentLanguage\":{},\"UserMetadata\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"ContentLength\":{\"type\":\"long\"},\"ContentMD5\":{},\"ContentType\":{},\"HttpExpiresDate\":{\"type\":\"timestamp\"},\"RequesterCharged\":{\"type\":\"boolean\"},\"SSEAlgorithm\":{}}},\"NewObjectTagging\":{\"shape\":\"S1q\"},\"RedirectLocation\":{},\"RequesterPays\":{\"type\":\"boolean\"},\"StorageClass\":{},\"UnModifiedSinceConstraint\":{\"type\":\"timestamp\"},\"SSEAwsKmsKeyId\":{},\"TargetKeyPrefix\":{},\"ObjectLockLegalHoldStatus\":{},\"ObjectLockMode\":{},\"ObjectLockRetainUntilDate\":{\"type\":\"timestamp\"}}},\"S3PutObjectAcl\":{\"type\":\"structure\",\"members\":{\"AccessControlPolicy\":{\"type\":\"structure\",\"members\":{\"AccessControlList\":{\"type\":\"structure\",\"required\":[\"Owner\"],\"members\":{\"Owner\":{\"type\":\"structure\",\"members\":{\"ID\":{},\"DisplayName\":{}}},\"Grants\":{\"shape\":\"S1d\"}}},\"CannedAccessControlList\":{}}}}},\"S3PutObjectTagging\":{\"type\":\"structure\",\"members\":{\"TagSet\":{\"shape\":\"S1q\"}}},\"S3DeleteObjectTagging\":{\"type\":\"structure\",\"members\":{}},\"S3InitiateRestoreObject\":{\"type\":\"structure\",\"members\":{\"ExpirationInDays\":{\"type\":\"integer\"},\"GlacierJobTier\":{}}},\"S3PutObjectLegalHold\":{\"type\":\"structure\",\"required\":[\"LegalHold\"],\"members\":{\"LegalHold\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{}}}}},\"S3PutObjectRetention\":{\"type\":\"structure\",\"required\":[\"Retention\"],\"members\":{\"BypassGovernanceRetention\":{\"type\":\"boolean\"},\"Retention\":{\"type\":\"structure\",\"members\":{\"RetainUntilDate\":{\"type\":\"timestamp\"},\"Mode\":{}}}}}}},\"S1d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Grantee\":{\"type\":\"structure\",\"members\":{\"TypeIdentifier\":{},\"Identifier\":{},\"DisplayName\":{}}},\"Permission\":{}}}},\"S1q\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}},\"S1r\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}},\"S2d\":{\"type\":\"structure\",\"required\":[\"Enabled\"],\"members\":{\"Bucket\":{},\"Format\":{},\"Enabled\":{\"type\":\"boolean\"},\"Prefix\":{},\"ReportScope\":{}}},\"S2h\":{\"type\":\"structure\",\"required\":[\"Spec\",\"Location\"],\"members\":{\"Spec\":{\"type\":\"structure\",\"required\":[\"Format\"],\"members\":{\"Format\":{},\"Fields\":{\"type\":\"list\",\"member\":{}}}},\"Location\":{\"type\":\"structure\",\"required\":[\"ObjectArn\",\"ETag\"],\"members\":{\"ObjectArn\":{},\"ObjectVersionId\":{},\"ETag\":{}}}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"TotalNumberOfTasks\":{\"type\":\"long\"},\"NumberOfTasksSucceeded\":{\"type\":\"long\"},\"NumberOfTasksFailed\":{\"type\":\"long\"}}},\"S47\":{\"type\":\"structure\",\"members\":{\"IsPublic\":{\"locationName\":\"IsPublic\",\"type\":\"boolean\"}}},\"S4g\":{\"type\":\"list\",\"member\":{\"locationName\":\"Rule\",\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Expiration\":{\"type\":\"structure\",\"members\":{\"Date\":{\"type\":\"timestamp\"},\"Days\":{\"type\":\"integer\"},\"ExpiredObjectDeleteMarker\":{\"type\":\"boolean\"}}},\"ID\":{},\"Filter\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tag\":{\"shape\":\"S1r\"},\"And\":{\"type\":\"structure\",\"members\":{\"Prefix\":{},\"Tags\":{\"shape\":\"S1q\"}}}}},\"Status\":{},\"Transitions\":{\"type\":\"list\",\"member\":{\"locationName\":\"Transition\",\"type\":\"structure\",\"members\":{\"Date\":{\"type\":\"timestamp\"},\"Days\":{\"type\":\"integer\"},\"StorageClass\":{}}}},\"NoncurrentVersionTransitions\":{\"type\":\"list\",\"member\":{\"locationName\":\"NoncurrentVersionTransition\",\"type\":\"structure\",\"members\":{\"NoncurrentDays\":{\"type\":\"integer\"},\"StorageClass\":{}}}},\"NoncurrentVersionExpiration\":{\"type\":\"structure\",\"members\":{\"NoncurrentDays\":{\"type\":\"integer\"}}},\"AbortIncompleteMultipartUpload\":{\"type\":\"structure\",\"members\":{\"DaysAfterInitiation\":{\"type\":\"integer\"}}}}}},\"S59\":{\"type\":\"structure\",\"required\":[\"Id\",\"AccountLevel\",\"IsEnabled\"],\"members\":{\"Id\":{},\"AccountLevel\":{\"type\":\"structure\",\"required\":[\"BucketLevel\"],\"members\":{\"ActivityMetrics\":{\"shape\":\"S5b\"},\"BucketLevel\":{\"type\":\"structure\",\"members\":{\"ActivityMetrics\":{\"shape\":\"S5b\"},\"PrefixLevel\":{\"type\":\"structure\",\"required\":[\"StorageMetrics\"],\"members\":{\"StorageMetrics\":{\"type\":\"structure\",\"members\":{\"IsEnabled\":{\"type\":\"boolean\"},\"SelectionCriteria\":{\"type\":\"structure\",\"members\":{\"Delimiter\":{},\"MaxDepth\":{\"type\":\"integer\"},\"MinStorageBytesPercentage\":{\"type\":\"double\"}}}}}}}}}}},\"Include\":{\"type\":\"structure\",\"members\":{\"Buckets\":{\"shape\":\"S5l\"},\"Regions\":{\"shape\":\"S5m\"}}},\"Exclude\":{\"type\":\"structure\",\"members\":{\"Buckets\":{\"shape\":\"S5l\"},\"Regions\":{\"shape\":\"S5m\"}}},\"DataExport\":{\"type\":\"structure\",\"required\":[\"S3BucketDestination\"],\"members\":{\"S3BucketDestination\":{\"type\":\"structure\",\"required\":[\"Format\",\"OutputSchemaVersion\",\"AccountId\",\"Arn\"],\"members\":{\"Format\":{},\"OutputSchemaVersion\":{},\"AccountId\":{},\"Arn\":{},\"Prefix\":{},\"Encryption\":{\"type\":\"structure\",\"members\":{\"SSES3\":{\"locationName\":\"SSE-S3\",\"type\":\"structure\",\"members\":{}},\"SSEKMS\":{\"locationName\":\"SSE-KMS\",\"type\":\"structure\",\"required\":[\"KeyId\"],\"members\":{\"KeyId\":{}}}}}}}}},\"IsEnabled\":{\"type\":\"boolean\"},\"AwsOrg\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{}}},\"StorageLensArn\":{}}},\"S5b\":{\"type\":\"structure\",\"members\":{\"IsEnabled\":{\"type\":\"boolean\"}}},\"S5l\":{\"type\":\"list\",\"member\":{\"locationName\":\"Arn\"}},\"S5m\":{\"type\":\"list\",\"member\":{\"locationName\":\"Region\"}},\"S62\":{\"type\":\"list\",\"member\":{\"locationName\":\"Tag\",\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 62498:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccessPoints\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListAccessPointsForObjectLambda\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ObjectLambdaAccessPointList\"},\"ListJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListRegionalBuckets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListStorageLensConfigurations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 90331:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-25\",\"endpointPrefix\":\"s3-outposts\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon S3 Outposts\",\"serviceFullName\":\"Amazon S3 on Outposts\",\"serviceId\":\"S3Outposts\",\"signatureVersion\":\"v4\",\"signingName\":\"s3-outposts\",\"uid\":\"s3outposts-2017-07-25\"},\"operations\":{\"CreateEndpoint\":{\"http\":{\"requestUri\":\"/S3Outposts/CreateEndpoint\"},\"input\":{\"type\":\"structure\",\"required\":[\"OutpostId\",\"SubnetId\",\"SecurityGroupId\"],\"members\":{\"OutpostId\":{},\"SubnetId\":{},\"SecurityGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EndpointArn\":{}}}},\"DeleteEndpoint\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/S3Outposts/DeleteEndpoint\"},\"input\":{\"type\":\"structure\",\"required\":[\"EndpointId\",\"OutpostId\"],\"members\":{\"EndpointId\":{\"location\":\"querystring\",\"locationName\":\"endpointId\"},\"OutpostId\":{\"location\":\"querystring\",\"locationName\":\"outpostId\"}}}},\"ListEndpoints\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/S3Outposts/ListEndpoints\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Endpoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndpointArn\":{},\"OutpostsId\":{},\"CidrBlock\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"NetworkInterfaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NetworkInterfaceId\":{}}}}}}},\"NextToken\":{}}}}},\"shapes\":{}}");

/***/ }),

/***/ 8746:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListEndpoints\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Endpoints\"}}}");

/***/ }),

/***/ 20227:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-24\",\"endpointPrefix\":\"api.sagemaker\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"SageMaker\",\"serviceFullName\":\"Amazon SageMaker Service\",\"serviceId\":\"SageMaker\",\"signatureVersion\":\"v4\",\"signingName\":\"sagemaker\",\"targetPrefix\":\"SageMaker\",\"uid\":\"sagemaker-2017-07-24\"},\"operations\":{\"AddAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceArn\",\"DestinationArn\"],\"members\":{\"SourceArn\":{},\"DestinationArn\":{},\"AssociationType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SourceArn\":{},\"DestinationArn\":{}}}},\"AddTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S7\"}}}},\"AssociateTrialComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialComponentName\",\"TrialName\"],\"members\":{\"TrialComponentName\":{},\"TrialName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentArn\":{},\"TrialArn\":{}}}},\"CreateAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActionName\",\"Source\",\"ActionType\"],\"members\":{\"ActionName\":{},\"Source\":{\"shape\":\"Si\"},\"ActionType\":{},\"Description\":{},\"Status\":{},\"Properties\":{\"shape\":\"Sn\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActionArn\":{}}}},\"CreateAlgorithm\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlgorithmName\",\"TrainingSpecification\"],\"members\":{\"AlgorithmName\":{},\"AlgorithmDescription\":{},\"TrainingSpecification\":{\"shape\":\"Sw\"},\"InferenceSpecification\":{\"shape\":\"S1t\"},\"ValidationSpecification\":{\"shape\":\"S25\"},\"CertifyForMarketplace\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AlgorithmArn\"],\"members\":{\"AlgorithmArn\":{}}}},\"CreateApp\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\",\"AppType\",\"AppName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"AppType\":{},\"AppName\":{},\"Tags\":{\"shape\":\"S7\"},\"ResourceSpec\":{\"shape\":\"S3p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppArn\":{}}}},\"CreateAppImageConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppImageConfigName\"],\"members\":{\"AppImageConfigName\":{},\"Tags\":{\"shape\":\"S7\"},\"KernelGatewayImageConfig\":{\"shape\":\"S3x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppImageConfigArn\":{}}}},\"CreateArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"Source\",\"ArtifactType\"],\"members\":{\"ArtifactName\":{},\"Source\":{\"shape\":\"S49\"},\"ArtifactType\":{},\"Properties\":{\"shape\":\"Sn\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArtifactArn\":{}}}},\"CreateAutoMLJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoMLJobName\",\"InputDataConfig\",\"OutputDataConfig\",\"RoleArn\"],\"members\":{\"AutoMLJobName\":{},\"InputDataConfig\":{\"shape\":\"S4h\"},\"OutputDataConfig\":{\"shape\":\"S4n\"},\"ProblemType\":{},\"AutoMLJobObjective\":{\"shape\":\"S4p\"},\"AutoMLJobConfig\":{\"shape\":\"S4r\"},\"RoleArn\":{},\"GenerateCandidateDefinitionsOnly\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"AutoMLJobArn\"],\"members\":{\"AutoMLJobArn\":{}}}},\"CreateCodeRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryName\",\"GitConfig\"],\"members\":{\"CodeRepositoryName\":{},\"GitConfig\":{\"shape\":\"S56\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryArn\"],\"members\":{\"CodeRepositoryArn\":{}}}},\"CreateCompilationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"CompilationJobName\",\"RoleArn\",\"InputConfig\",\"OutputConfig\",\"StoppingCondition\"],\"members\":{\"CompilationJobName\":{},\"RoleArn\":{},\"InputConfig\":{\"shape\":\"S5d\"},\"OutputConfig\":{\"shape\":\"S5h\"},\"StoppingCondition\":{\"shape\":\"S2y\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CompilationJobArn\"],\"members\":{\"CompilationJobArn\":{}}}},\"CreateContext\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContextName\",\"Source\",\"ContextType\"],\"members\":{\"ContextName\":{},\"Source\":{\"shape\":\"S5r\"},\"ContextType\":{},\"Description\":{},\"Properties\":{\"shape\":\"Sn\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContextArn\":{}}}},\"CreateDataQualityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\",\"DataQualityAppSpecification\",\"DataQualityJobInput\",\"DataQualityJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionName\":{},\"DataQualityBaselineConfig\":{\"shape\":\"S5w\"},\"DataQualityAppSpecification\":{\"shape\":\"S60\"},\"DataQualityJobInput\":{\"shape\":\"S69\"},\"DataQualityJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\"],\"members\":{\"JobDefinitionArn\":{}}}},\"CreateDeviceFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\",\"OutputConfig\"],\"members\":{\"DeviceFleetName\":{},\"RoleArn\":{},\"Description\":{},\"OutputConfig\":{\"shape\":\"S70\"},\"Tags\":{\"shape\":\"S7\"}}}},\"CreateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"AuthMode\",\"DefaultUserSettings\",\"SubnetIds\",\"VpcId\"],\"members\":{\"DomainName\":{},\"AuthMode\":{},\"DefaultUserSettings\":{\"shape\":\"S74\"},\"SubnetIds\":{\"shape\":\"S50\"},\"VpcId\":{},\"Tags\":{\"shape\":\"S7\"},\"AppNetworkAccessType\":{},\"HomeEfsFileSystemKmsKeyId\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use KmsKeyId instead.\"},\"KmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainArn\":{},\"Url\":{}}}},\"CreateEdgePackagingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"EdgePackagingJobName\",\"CompilationJobName\",\"ModelName\",\"ModelVersion\",\"RoleArn\",\"OutputConfig\"],\"members\":{\"EdgePackagingJobName\":{},\"CompilationJobName\":{},\"ModelName\":{},\"ModelVersion\":{},\"RoleArn\":{},\"OutputConfig\":{\"shape\":\"S70\"},\"ResourceKey\":{},\"Tags\":{\"shape\":\"S7\"}}}},\"CreateEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"EndpointConfigName\"],\"members\":{\"EndpointName\":{},\"EndpointConfigName\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}}},\"CreateEndpointConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointConfigName\",\"ProductionVariants\"],\"members\":{\"EndpointConfigName\":{},\"ProductionVariants\":{\"shape\":\"S7r\"},\"DataCaptureConfig\":{\"shape\":\"S80\"},\"Tags\":{\"shape\":\"S7\"},\"KmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointConfigArn\"],\"members\":{\"EndpointConfigArn\":{}}}},\"CreateExperiment\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExperimentName\"],\"members\":{\"ExperimentName\":{},\"DisplayName\":{},\"Description\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExperimentArn\":{}}}},\"CreateFeatureGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\",\"RecordIdentifierFeatureName\",\"EventTimeFeatureName\",\"FeatureDefinitions\"],\"members\":{\"FeatureGroupName\":{},\"RecordIdentifierFeatureName\":{},\"EventTimeFeatureName\":{},\"FeatureDefinitions\":{\"shape\":\"S8j\"},\"OnlineStoreConfig\":{\"shape\":\"S8m\"},\"OfflineStoreConfig\":{\"shape\":\"S8o\"},\"RoleArn\":{},\"Description\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"FeatureGroupArn\"],\"members\":{\"FeatureGroupArn\":{}}}},\"CreateFlowDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionName\",\"HumanLoopConfig\",\"OutputConfig\",\"RoleArn\"],\"members\":{\"FlowDefinitionName\":{},\"HumanLoopRequestSource\":{\"shape\":\"S8z\"},\"HumanLoopActivationConfig\":{\"shape\":\"S91\"},\"HumanLoopConfig\":{\"shape\":\"S94\"},\"OutputConfig\":{\"shape\":\"S9j\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionArn\"],\"members\":{\"FlowDefinitionArn\":{}}}},\"CreateHumanTaskUi\":{\"input\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiName\",\"UiTemplate\"],\"members\":{\"HumanTaskUiName\":{},\"UiTemplate\":{\"shape\":\"S9o\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiArn\"],\"members\":{\"HumanTaskUiArn\":{}}}},\"CreateHyperParameterTuningJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobName\",\"HyperParameterTuningJobConfig\"],\"members\":{\"HyperParameterTuningJobName\":{},\"HyperParameterTuningJobConfig\":{\"shape\":\"S9t\"},\"TrainingJobDefinition\":{\"shape\":\"Saa\"},\"TrainingJobDefinitions\":{\"shape\":\"Sag\"},\"WarmStartConfig\":{\"shape\":\"Sah\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobArn\"],\"members\":{\"HyperParameterTuningJobArn\":{}}}},\"CreateImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\",\"RoleArn\"],\"members\":{\"Description\":{},\"DisplayName\":{},\"ImageName\":{},\"RoleArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageArn\":{}}}},\"CreateImageVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaseImage\",\"ClientToken\",\"ImageName\"],\"members\":{\"BaseImage\":{},\"ClientToken\":{\"idempotencyToken\":true},\"ImageName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageVersionArn\":{}}}},\"CreateLabelingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"LabelingJobName\",\"LabelAttributeName\",\"InputConfig\",\"OutputConfig\",\"RoleArn\",\"HumanTaskConfig\"],\"members\":{\"LabelingJobName\":{},\"LabelAttributeName\":{},\"InputConfig\":{\"shape\":\"Say\"},\"OutputConfig\":{\"shape\":\"Sb6\"},\"RoleArn\":{},\"LabelCategoryConfigS3Uri\":{},\"StoppingConditions\":{\"shape\":\"Sb7\"},\"LabelingJobAlgorithmsConfig\":{\"shape\":\"Sba\"},\"HumanTaskConfig\":{\"shape\":\"Sbe\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"LabelingJobArn\"],\"members\":{\"LabelingJobArn\":{}}}},\"CreateModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"ExecutionRoleArn\"],\"members\":{\"ModelName\":{},\"PrimaryContainer\":{\"shape\":\"Sbt\"},\"Containers\":{\"shape\":\"Sc5\"},\"InferenceExecutionConfig\":{\"shape\":\"Sc6\"},\"ExecutionRoleArn\":{},\"Tags\":{\"shape\":\"S7\"},\"VpcConfig\":{\"shape\":\"S4x\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelArn\"],\"members\":{\"ModelArn\":{}}}},\"CreateModelBiasJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\",\"ModelBiasAppSpecification\",\"ModelBiasJobInput\",\"ModelBiasJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionName\":{},\"ModelBiasBaselineConfig\":{\"shape\":\"Sca\"},\"ModelBiasAppSpecification\":{\"shape\":\"Scb\"},\"ModelBiasJobInput\":{\"shape\":\"Scc\"},\"ModelBiasJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\"],\"members\":{\"JobDefinitionArn\":{}}}},\"CreateModelExplainabilityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\",\"ModelExplainabilityAppSpecification\",\"ModelExplainabilityJobInput\",\"ModelExplainabilityJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionName\":{},\"ModelExplainabilityBaselineConfig\":{\"shape\":\"Scg\"},\"ModelExplainabilityAppSpecification\":{\"shape\":\"Sch\"},\"ModelExplainabilityJobInput\":{\"shape\":\"Sci\"},\"ModelExplainabilityJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\"],\"members\":{\"JobDefinitionArn\":{}}}},\"CreateModelPackage\":{\"input\":{\"type\":\"structure\",\"members\":{\"ModelPackageName\":{},\"ModelPackageGroupName\":{},\"ModelPackageDescription\":{},\"InferenceSpecification\":{\"shape\":\"S1t\"},\"ValidationSpecification\":{\"shape\":\"Scl\"},\"SourceAlgorithmSpecification\":{\"shape\":\"Sco\"},\"CertifyForMarketplace\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S7\"},\"ModelApprovalStatus\":{},\"MetadataProperties\":{\"shape\":\"Sp\"},\"ModelMetrics\":{\"shape\":\"Scs\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageArn\"],\"members\":{\"ModelPackageArn\":{}}}},\"CreateModelPackageGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\"],\"members\":{\"ModelPackageGroupName\":{},\"ModelPackageGroupDescription\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupArn\"],\"members\":{\"ModelPackageGroupArn\":{}}}},\"CreateModelQualityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\",\"ModelQualityAppSpecification\",\"ModelQualityJobInput\",\"ModelQualityJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionName\":{},\"ModelQualityBaselineConfig\":{\"shape\":\"Sd5\"},\"ModelQualityAppSpecification\":{\"shape\":\"Sd6\"},\"ModelQualityJobInput\":{\"shape\":\"Sd8\"},\"ModelQualityJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\"],\"members\":{\"JobDefinitionArn\":{}}}},\"CreateMonitoringSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\",\"MonitoringScheduleConfig\"],\"members\":{\"MonitoringScheduleName\":{},\"MonitoringScheduleConfig\":{\"shape\":\"Sdc\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleArn\"],\"members\":{\"MonitoringScheduleArn\":{}}}},\"CreateNotebookInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\",\"InstanceType\",\"RoleArn\"],\"members\":{\"NotebookInstanceName\":{},\"InstanceType\":{},\"SubnetId\":{},\"SecurityGroupIds\":{\"shape\":\"S75\"},\"RoleArn\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"S7\"},\"LifecycleConfigName\":{},\"DirectInternetAccess\":{},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"AcceleratorTypes\":{\"shape\":\"Sdu\"},\"DefaultCodeRepository\":{},\"AdditionalCodeRepositories\":{\"shape\":\"Sdx\"},\"RootAccess\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookInstanceArn\":{}}}},\"CreateNotebookInstanceLifecycleConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceLifecycleConfigName\"],\"members\":{\"NotebookInstanceLifecycleConfigName\":{},\"OnCreate\":{\"shape\":\"Se2\"},\"OnStart\":{\"shape\":\"Se2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookInstanceLifecycleConfigArn\":{}}}},\"CreatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineName\",\"PipelineDefinition\",\"ClientRequestToken\",\"RoleArn\"],\"members\":{\"PipelineName\":{},\"PipelineDisplayName\":{},\"PipelineDefinition\":{},\"PipelineDescription\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"RoleArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{}}}},\"CreatePresignedDomainUrl\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"SessionExpirationDurationInSeconds\":{\"type\":\"integer\"},\"ExpiresInSeconds\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizedUrl\":{}}}},\"CreatePresignedNotebookInstanceUrl\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\"],\"members\":{\"NotebookInstanceName\":{},\"SessionExpirationDurationInSeconds\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizedUrl\":{}}}},\"CreateProcessingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProcessingJobName\",\"ProcessingResources\",\"AppSpecification\",\"RoleArn\"],\"members\":{\"ProcessingInputs\":{\"shape\":\"Sen\"},\"ProcessingOutputConfig\":{\"shape\":\"Sfa\"},\"ProcessingJobName\":{},\"ProcessingResources\":{\"shape\":\"Sff\"},\"StoppingCondition\":{\"shape\":\"Sfh\"},\"AppSpecification\":{\"shape\":\"Sfj\"},\"Environment\":{\"shape\":\"Sfl\"},\"NetworkConfig\":{\"shape\":\"Sdk\"},\"RoleArn\":{},\"Tags\":{\"shape\":\"S7\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProcessingJobArn\"],\"members\":{\"ProcessingJobArn\":{}}}},\"CreateProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ServiceCatalogProvisioningDetails\"],\"members\":{\"ProjectName\":{},\"ProjectDescription\":{},\"ServiceCatalogProvisioningDetails\":{\"shape\":\"Sfr\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProjectArn\",\"ProjectId\"],\"members\":{\"ProjectArn\":{},\"ProjectId\":{}}}},\"CreateTrainingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\",\"AlgorithmSpecification\",\"RoleArn\",\"OutputDataConfig\",\"ResourceConfig\",\"StoppingCondition\"],\"members\":{\"TrainingJobName\":{},\"HyperParameters\":{\"shape\":\"S2a\"},\"AlgorithmSpecification\":{\"shape\":\"Sg2\"},\"RoleArn\":{},\"InputDataConfig\":{\"shape\":\"S2c\"},\"OutputDataConfig\":{\"shape\":\"S2t\"},\"ResourceConfig\":{\"shape\":\"S2v\"},\"VpcConfig\":{\"shape\":\"S4x\"},\"StoppingCondition\":{\"shape\":\"S2y\"},\"Tags\":{\"shape\":\"S7\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"},\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"EnableManagedSpotTraining\":{\"type\":\"boolean\"},\"CheckpointConfig\":{\"shape\":\"Saf\"},\"DebugHookConfig\":{\"shape\":\"Sg3\"},\"DebugRuleConfigurations\":{\"shape\":\"Sgb\"},\"TensorBoardOutputConfig\":{\"shape\":\"Sgg\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"},\"ProfilerConfig\":{\"shape\":\"Sgh\"},\"ProfilerRuleConfigurations\":{\"shape\":\"Sgk\"},\"Environment\":{\"shape\":\"Sgm\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrainingJobArn\"],\"members\":{\"TrainingJobArn\":{}}}},\"CreateTransformJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformJobName\",\"ModelName\",\"TransformInput\",\"TransformOutput\",\"TransformResources\"],\"members\":{\"TransformJobName\":{},\"ModelName\":{},\"MaxConcurrentTransforms\":{\"type\":\"integer\"},\"ModelClientConfig\":{\"shape\":\"Sgt\"},\"MaxPayloadInMB\":{\"type\":\"integer\"},\"BatchStrategy\":{},\"Environment\":{\"shape\":\"S35\"},\"TransformInput\":{\"shape\":\"S38\"},\"TransformOutput\":{\"shape\":\"S3c\"},\"TransformResources\":{\"shape\":\"S3f\"},\"DataProcessing\":{\"shape\":\"Sgw\"},\"Tags\":{\"shape\":\"S7\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TransformJobArn\"],\"members\":{\"TransformJobArn\":{}}}},\"CreateTrial\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialName\",\"ExperimentName\"],\"members\":{\"TrialName\":{},\"DisplayName\":{},\"ExperimentName\":{},\"MetadataProperties\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialArn\":{}}}},\"CreateTrialComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialComponentName\"],\"members\":{\"TrialComponentName\":{},\"DisplayName\":{},\"Status\":{\"shape\":\"Sh4\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Parameters\":{\"shape\":\"Sh8\"},\"InputArtifacts\":{\"shape\":\"Shc\"},\"OutputArtifacts\":{\"shape\":\"Shc\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentArn\":{}}}},\"CreateUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"SingleSignOnUserIdentifier\":{},\"SingleSignOnUserValue\":{},\"Tags\":{\"shape\":\"S7\"},\"UserSettings\":{\"shape\":\"S74\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserProfileArn\":{}}}},\"CreateWorkforce\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkforceName\"],\"members\":{\"CognitoConfig\":{\"shape\":\"Shn\"},\"OidcConfig\":{\"shape\":\"Shq\"},\"SourceIpConfig\":{\"shape\":\"Sht\"},\"WorkforceName\":{},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"WorkforceArn\"],\"members\":{\"WorkforceArn\":{}}}},\"CreateWorkteam\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkteamName\",\"MemberDefinitions\",\"Description\"],\"members\":{\"WorkteamName\":{},\"WorkforceName\":{},\"MemberDefinitions\":{\"shape\":\"Si1\"},\"Description\":{},\"NotificationConfiguration\":{\"shape\":\"Si9\"},\"Tags\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkteamArn\":{}}}},\"DeleteAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActionName\"],\"members\":{\"ActionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActionArn\":{}}}},\"DeleteAlgorithm\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlgorithmName\"],\"members\":{\"AlgorithmName\":{}}}},\"DeleteApp\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\",\"AppType\",\"AppName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"AppType\":{},\"AppName\":{}}}},\"DeleteAppImageConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppImageConfigName\"],\"members\":{\"AppImageConfigName\":{}}}},\"DeleteArtifact\":{\"input\":{\"type\":\"structure\",\"members\":{\"ArtifactArn\":{},\"Source\":{\"shape\":\"S49\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArtifactArn\":{}}}},\"DeleteAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceArn\",\"DestinationArn\"],\"members\":{\"SourceArn\":{},\"DestinationArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SourceArn\":{},\"DestinationArn\":{}}}},\"DeleteCodeRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryName\"],\"members\":{\"CodeRepositoryName\":{}}}},\"DeleteContext\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContextName\"],\"members\":{\"ContextName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContextArn\":{}}}},\"DeleteDataQualityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}}},\"DeleteDeviceFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\"],\"members\":{\"DeviceFleetName\":{}}}},\"DeleteDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\"],\"members\":{\"DomainId\":{},\"RetentionPolicy\":{\"type\":\"structure\",\"members\":{\"HomeEfsFileSystem\":{}}}}}},\"DeleteEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{}}}},\"DeleteEndpointConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointConfigName\"],\"members\":{\"EndpointConfigName\":{}}}},\"DeleteExperiment\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExperimentName\"],\"members\":{\"ExperimentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExperimentArn\":{}}}},\"DeleteFeatureGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\"],\"members\":{\"FeatureGroupName\":{}}}},\"DeleteFlowDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionName\"],\"members\":{\"FlowDefinitionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteHumanTaskUi\":{\"input\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiName\"],\"members\":{\"HumanTaskUiName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\"],\"members\":{\"ImageName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteImageVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\",\"Version\"],\"members\":{\"ImageName\":{},\"Version\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\"],\"members\":{\"ModelName\":{}}}},\"DeleteModelBiasJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}}},\"DeleteModelExplainabilityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}}},\"DeleteModelPackage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageName\"],\"members\":{\"ModelPackageName\":{}}}},\"DeleteModelPackageGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\"],\"members\":{\"ModelPackageGroupName\":{}}}},\"DeleteModelPackageGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\"],\"members\":{\"ModelPackageGroupName\":{}}}},\"DeleteModelQualityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}}},\"DeleteMonitoringSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\"],\"members\":{\"MonitoringScheduleName\":{}}}},\"DeleteNotebookInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\"],\"members\":{\"NotebookInstanceName\":{}}}},\"DeleteNotebookInstanceLifecycleConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceLifecycleConfigName\"],\"members\":{\"NotebookInstanceLifecycleConfigName\":{}}}},\"DeletePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineName\",\"ClientRequestToken\"],\"members\":{\"PipelineName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{}}}},\"DeleteProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{}}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTrial\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialName\"],\"members\":{\"TrialName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialArn\":{}}}},\"DeleteTrialComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialComponentName\"],\"members\":{\"TrialComponentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentArn\":{}}}},\"DeleteUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{}}}},\"DeleteWorkforce\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkforceName\"],\"members\":{\"WorkforceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWorkteam\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkteamName\"],\"members\":{\"WorkteamName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Success\"],\"members\":{\"Success\":{\"type\":\"boolean\"}}}},\"DeregisterDevices\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\",\"DeviceNames\"],\"members\":{\"DeviceFleetName\":{},\"DeviceNames\":{\"type\":\"list\",\"member\":{}}}}},\"DescribeAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActionName\"],\"members\":{\"ActionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActionName\":{},\"ActionArn\":{},\"Source\":{\"shape\":\"Si\"},\"ActionType\":{},\"Description\":{},\"Status\":{},\"Properties\":{\"shape\":\"Sn\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"MetadataProperties\":{\"shape\":\"Sp\"}}}},\"DescribeAlgorithm\":{\"input\":{\"type\":\"structure\",\"required\":[\"AlgorithmName\"],\"members\":{\"AlgorithmName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AlgorithmName\",\"AlgorithmArn\",\"CreationTime\",\"TrainingSpecification\",\"AlgorithmStatus\",\"AlgorithmStatusDetails\"],\"members\":{\"AlgorithmName\":{},\"AlgorithmArn\":{},\"AlgorithmDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TrainingSpecification\":{\"shape\":\"Sw\"},\"InferenceSpecification\":{\"shape\":\"S1t\"},\"ValidationSpecification\":{\"shape\":\"S25\"},\"AlgorithmStatus\":{},\"AlgorithmStatusDetails\":{\"type\":\"structure\",\"members\":{\"ValidationStatuses\":{\"shape\":\"Sk7\"},\"ImageScanStatuses\":{\"shape\":\"Sk7\"}}},\"ProductId\":{},\"CertifyForMarketplace\":{\"type\":\"boolean\"}}}},\"DescribeApp\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\",\"AppType\",\"AppName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"AppType\":{},\"AppName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppArn\":{},\"AppType\":{},\"AppName\":{},\"DomainId\":{},\"UserProfileName\":{},\"Status\":{},\"LastHealthCheckTimestamp\":{\"type\":\"timestamp\"},\"LastUserActivityTimestamp\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"ResourceSpec\":{\"shape\":\"S3p\"}}}},\"DescribeAppImageConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppImageConfigName\"],\"members\":{\"AppImageConfigName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppImageConfigArn\":{},\"AppImageConfigName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"KernelGatewayImageConfig\":{\"shape\":\"S3x\"}}}},\"DescribeArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArtifactArn\"],\"members\":{\"ArtifactArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArtifactName\":{},\"ArtifactArn\":{},\"Source\":{\"shape\":\"S49\"},\"ArtifactType\":{},\"Properties\":{\"shape\":\"Sn\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"MetadataProperties\":{\"shape\":\"Sp\"}}}},\"DescribeAutoMLJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoMLJobName\"],\"members\":{\"AutoMLJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AutoMLJobName\",\"AutoMLJobArn\",\"InputDataConfig\",\"OutputDataConfig\",\"RoleArn\",\"CreationTime\",\"LastModifiedTime\",\"AutoMLJobStatus\",\"AutoMLJobSecondaryStatus\"],\"members\":{\"AutoMLJobName\":{},\"AutoMLJobArn\":{},\"InputDataConfig\":{\"shape\":\"S4h\"},\"OutputDataConfig\":{\"shape\":\"S4n\"},\"RoleArn\":{},\"AutoMLJobObjective\":{\"shape\":\"S4p\"},\"ProblemType\":{},\"AutoMLJobConfig\":{\"shape\":\"S4r\"},\"CreationTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"PartialFailureReasons\":{\"shape\":\"Skl\"},\"BestCandidate\":{\"shape\":\"Skn\"},\"AutoMLJobStatus\":{},\"AutoMLJobSecondaryStatus\":{},\"GenerateCandidateDefinitionsOnly\":{\"type\":\"boolean\"},\"AutoMLJobArtifacts\":{\"type\":\"structure\",\"members\":{\"CandidateDefinitionNotebookLocation\":{},\"DataExplorationNotebookLocation\":{}}},\"ResolvedAttributes\":{\"type\":\"structure\",\"members\":{\"AutoMLJobObjective\":{\"shape\":\"S4p\"},\"ProblemType\":{},\"CompletionCriteria\":{\"shape\":\"S4s\"}}}}}},\"DescribeCodeRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryName\"],\"members\":{\"CodeRepositoryName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryName\",\"CodeRepositoryArn\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"CodeRepositoryName\":{},\"CodeRepositoryArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"GitConfig\":{\"shape\":\"S56\"}}}},\"DescribeCompilationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"CompilationJobName\"],\"members\":{\"CompilationJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CompilationJobName\",\"CompilationJobArn\",\"CompilationJobStatus\",\"StoppingCondition\",\"CreationTime\",\"LastModifiedTime\",\"FailureReason\",\"ModelArtifacts\",\"RoleArn\",\"InputConfig\",\"OutputConfig\"],\"members\":{\"CompilationJobName\":{},\"CompilationJobArn\":{},\"CompilationJobStatus\":{},\"CompilationStartTime\":{\"type\":\"timestamp\"},\"CompilationEndTime\":{\"type\":\"timestamp\"},\"StoppingCondition\":{\"shape\":\"S2y\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"ModelArtifacts\":{\"shape\":\"Slg\"},\"ModelDigests\":{\"type\":\"structure\",\"members\":{\"ArtifactDigest\":{}}},\"RoleArn\":{},\"InputConfig\":{\"shape\":\"S5d\"},\"OutputConfig\":{\"shape\":\"S5h\"}}}},\"DescribeContext\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContextName\"],\"members\":{\"ContextName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContextName\":{},\"ContextArn\":{},\"Source\":{\"shape\":\"S5r\"},\"ContextType\":{},\"Description\":{},\"Properties\":{\"shape\":\"Sn\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"}}}},\"DescribeDataQualityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\",\"JobDefinitionName\",\"CreationTime\",\"DataQualityAppSpecification\",\"DataQualityJobInput\",\"DataQualityJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionArn\":{},\"JobDefinitionName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"DataQualityBaselineConfig\":{\"shape\":\"S5w\"},\"DataQualityAppSpecification\":{\"shape\":\"S60\"},\"DataQualityJobInput\":{\"shape\":\"S69\"},\"DataQualityJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"}}}},\"DescribeDevice\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceName\",\"DeviceFleetName\"],\"members\":{\"NextToken\":{},\"DeviceName\":{},\"DeviceFleetName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeviceName\",\"DeviceFleetName\",\"RegistrationTime\"],\"members\":{\"DeviceArn\":{},\"DeviceName\":{},\"Description\":{},\"DeviceFleetName\":{},\"IotThingName\":{},\"RegistrationTime\":{\"type\":\"timestamp\"},\"LatestHeartbeat\":{\"type\":\"timestamp\"},\"Models\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"ModelVersion\"],\"members\":{\"ModelName\":{},\"ModelVersion\":{},\"LatestSampleTime\":{\"type\":\"timestamp\"},\"LatestInference\":{\"type\":\"timestamp\"}}}},\"MaxModels\":{\"type\":\"integer\"},\"NextToken\":{}}}},\"DescribeDeviceFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\"],\"members\":{\"DeviceFleetName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\",\"DeviceFleetArn\",\"OutputConfig\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"DeviceFleetName\":{},\"DeviceFleetArn\":{},\"OutputConfig\":{\"shape\":\"S70\"},\"Description\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"RoleArn\":{},\"IotRoleAlias\":{}}}},\"DescribeDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\"],\"members\":{\"DomainId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainArn\":{},\"DomainId\":{},\"DomainName\":{},\"HomeEfsFileSystemId\":{},\"SingleSignOnManagedApplicationInstanceId\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"AuthMode\":{},\"DefaultUserSettings\":{\"shape\":\"S74\"},\"AppNetworkAccessType\":{},\"HomeEfsFileSystemKmsKeyId\":{\"deprecated\":true,\"deprecatedMessage\":\"This property is deprecated, use KmsKeyId instead.\"},\"SubnetIds\":{\"shape\":\"S50\"},\"Url\":{},\"VpcId\":{},\"KmsKeyId\":{}}}},\"DescribeEdgePackagingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"EdgePackagingJobName\"],\"members\":{\"EdgePackagingJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"EdgePackagingJobArn\",\"EdgePackagingJobName\",\"EdgePackagingJobStatus\"],\"members\":{\"EdgePackagingJobArn\":{},\"EdgePackagingJobName\":{},\"CompilationJobName\":{},\"ModelName\":{},\"ModelVersion\":{},\"RoleArn\":{},\"OutputConfig\":{\"shape\":\"S70\"},\"ResourceKey\":{},\"EdgePackagingJobStatus\":{},\"EdgePackagingJobStatusMessage\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"ModelArtifact\":{},\"ModelSignature\":{}}}},\"DescribeEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\"],\"members\":{\"EndpointName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"EndpointArn\",\"EndpointConfigName\",\"EndpointStatus\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"EndpointName\":{},\"EndpointArn\":{},\"EndpointConfigName\":{},\"ProductionVariants\":{\"shape\":\"Sma\"},\"DataCaptureConfig\":{\"shape\":\"Sme\"},\"EndpointStatus\":{},\"FailureReason\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastDeploymentConfig\":{\"shape\":\"Smh\"}}}},\"DescribeEndpointConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointConfigName\"],\"members\":{\"EndpointConfigName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointConfigName\",\"EndpointConfigArn\",\"ProductionVariants\",\"CreationTime\"],\"members\":{\"EndpointConfigName\":{},\"EndpointConfigArn\":{},\"ProductionVariants\":{\"shape\":\"S7r\"},\"DataCaptureConfig\":{\"shape\":\"S80\"},\"KmsKeyId\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeExperiment\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExperimentName\"],\"members\":{\"ExperimentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExperimentName\":{},\"ExperimentArn\":{},\"DisplayName\":{},\"Source\":{\"shape\":\"Smz\"},\"Description\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"}}}},\"DescribeFeatureGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\"],\"members\":{\"FeatureGroupName\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"FeatureGroupArn\",\"FeatureGroupName\",\"RecordIdentifierFeatureName\",\"EventTimeFeatureName\",\"FeatureDefinitions\",\"CreationTime\",\"NextToken\"],\"members\":{\"FeatureGroupArn\":{},\"FeatureGroupName\":{},\"RecordIdentifierFeatureName\":{},\"EventTimeFeatureName\":{},\"FeatureDefinitions\":{\"shape\":\"S8j\"},\"CreationTime\":{\"type\":\"timestamp\"},\"OnlineStoreConfig\":{\"shape\":\"S8m\"},\"OfflineStoreConfig\":{\"shape\":\"S8o\"},\"RoleArn\":{},\"FeatureGroupStatus\":{},\"OfflineStoreStatus\":{\"shape\":\"Sn5\"},\"FailureReason\":{},\"Description\":{},\"NextToken\":{}}}},\"DescribeFlowDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionName\"],\"members\":{\"FlowDefinitionName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionArn\",\"FlowDefinitionName\",\"FlowDefinitionStatus\",\"CreationTime\",\"HumanLoopConfig\",\"OutputConfig\",\"RoleArn\"],\"members\":{\"FlowDefinitionArn\":{},\"FlowDefinitionName\":{},\"FlowDefinitionStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"HumanLoopRequestSource\":{\"shape\":\"S8z\"},\"HumanLoopActivationConfig\":{\"shape\":\"S91\"},\"HumanLoopConfig\":{\"shape\":\"S94\"},\"OutputConfig\":{\"shape\":\"S9j\"},\"RoleArn\":{},\"FailureReason\":{}}}},\"DescribeHumanTaskUi\":{\"input\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiName\"],\"members\":{\"HumanTaskUiName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiArn\",\"HumanTaskUiName\",\"CreationTime\",\"UiTemplate\"],\"members\":{\"HumanTaskUiArn\":{},\"HumanTaskUiName\":{},\"HumanTaskUiStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"UiTemplate\":{\"type\":\"structure\",\"members\":{\"Url\":{},\"ContentSha256\":{}}}}}},\"DescribeHyperParameterTuningJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobName\"],\"members\":{\"HyperParameterTuningJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobName\",\"HyperParameterTuningJobArn\",\"HyperParameterTuningJobConfig\",\"HyperParameterTuningJobStatus\",\"CreationTime\",\"TrainingJobStatusCounters\",\"ObjectiveStatusCounters\"],\"members\":{\"HyperParameterTuningJobName\":{},\"HyperParameterTuningJobArn\":{},\"HyperParameterTuningJobConfig\":{\"shape\":\"S9t\"},\"TrainingJobDefinition\":{\"shape\":\"Saa\"},\"TrainingJobDefinitions\":{\"shape\":\"Sag\"},\"HyperParameterTuningJobStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"HyperParameterTuningEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"TrainingJobStatusCounters\":{\"shape\":\"Snk\"},\"ObjectiveStatusCounters\":{\"shape\":\"Snm\"},\"BestTrainingJob\":{\"shape\":\"Sno\"},\"OverallBestTrainingJob\":{\"shape\":\"Sno\"},\"WarmStartConfig\":{\"shape\":\"Sah\"},\"FailureReason\":{}}}},\"DescribeImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\"],\"members\":{\"ImageName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreationTime\":{\"type\":\"timestamp\"},\"Description\":{},\"DisplayName\":{},\"FailureReason\":{},\"ImageArn\":{},\"ImageName\":{},\"ImageStatus\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"RoleArn\":{}}}},\"DescribeImageVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\"],\"members\":{\"ImageName\":{},\"Version\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaseImage\":{},\"ContainerImage\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"ImageArn\":{},\"ImageVersionArn\":{},\"ImageVersionStatus\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Version\":{\"type\":\"integer\"}}}},\"DescribeLabelingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"LabelingJobName\"],\"members\":{\"LabelingJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"LabelingJobStatus\",\"LabelCounters\",\"CreationTime\",\"LastModifiedTime\",\"JobReferenceCode\",\"LabelingJobName\",\"LabelingJobArn\",\"InputConfig\",\"OutputConfig\",\"RoleArn\",\"HumanTaskConfig\"],\"members\":{\"LabelingJobStatus\":{},\"LabelCounters\":{\"shape\":\"So1\"},\"FailureReason\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"JobReferenceCode\":{},\"LabelingJobName\":{},\"LabelingJobArn\":{},\"LabelAttributeName\":{},\"InputConfig\":{\"shape\":\"Say\"},\"OutputConfig\":{\"shape\":\"Sb6\"},\"RoleArn\":{},\"LabelCategoryConfigS3Uri\":{},\"StoppingConditions\":{\"shape\":\"Sb7\"},\"LabelingJobAlgorithmsConfig\":{\"shape\":\"Sba\"},\"HumanTaskConfig\":{\"shape\":\"Sbe\"},\"Tags\":{\"shape\":\"S7\"},\"LabelingJobOutput\":{\"shape\":\"So4\"}}}},\"DescribeModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\"],\"members\":{\"ModelName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"ExecutionRoleArn\",\"CreationTime\",\"ModelArn\"],\"members\":{\"ModelName\":{},\"PrimaryContainer\":{\"shape\":\"Sbt\"},\"Containers\":{\"shape\":\"Sc5\"},\"InferenceExecutionConfig\":{\"shape\":\"Sc6\"},\"ExecutionRoleArn\":{},\"VpcConfig\":{\"shape\":\"S4x\"},\"CreationTime\":{\"type\":\"timestamp\"},\"ModelArn\":{},\"EnableNetworkIsolation\":{\"type\":\"boolean\"}}}},\"DescribeModelBiasJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\",\"JobDefinitionName\",\"CreationTime\",\"ModelBiasAppSpecification\",\"ModelBiasJobInput\",\"ModelBiasJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionArn\":{},\"JobDefinitionName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ModelBiasBaselineConfig\":{\"shape\":\"Sca\"},\"ModelBiasAppSpecification\":{\"shape\":\"Scb\"},\"ModelBiasJobInput\":{\"shape\":\"Scc\"},\"ModelBiasJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"}}}},\"DescribeModelExplainabilityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\",\"JobDefinitionName\",\"CreationTime\",\"ModelExplainabilityAppSpecification\",\"ModelExplainabilityJobInput\",\"ModelExplainabilityJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionArn\":{},\"JobDefinitionName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ModelExplainabilityBaselineConfig\":{\"shape\":\"Scg\"},\"ModelExplainabilityAppSpecification\":{\"shape\":\"Sch\"},\"ModelExplainabilityJobInput\":{\"shape\":\"Sci\"},\"ModelExplainabilityJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"}}}},\"DescribeModelPackage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageName\"],\"members\":{\"ModelPackageName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageName\",\"ModelPackageArn\",\"CreationTime\",\"ModelPackageStatus\",\"ModelPackageStatusDetails\"],\"members\":{\"ModelPackageName\":{},\"ModelPackageGroupName\":{},\"ModelPackageVersion\":{\"type\":\"integer\"},\"ModelPackageArn\":{},\"ModelPackageDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"InferenceSpecification\":{\"shape\":\"S1t\"},\"SourceAlgorithmSpecification\":{\"shape\":\"Sco\"},\"ValidationSpecification\":{\"shape\":\"Scl\"},\"ModelPackageStatus\":{},\"ModelPackageStatusDetails\":{\"shape\":\"Sof\"},\"CertifyForMarketplace\":{\"type\":\"boolean\"},\"ModelApprovalStatus\":{},\"CreatedBy\":{\"shape\":\"Sk1\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"ModelMetrics\":{\"shape\":\"Scs\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"ApprovalDescription\":{}}}},\"DescribeModelPackageGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\"],\"members\":{\"ModelPackageGroupName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\",\"ModelPackageGroupArn\",\"CreationTime\",\"CreatedBy\",\"ModelPackageGroupStatus\"],\"members\":{\"ModelPackageGroupName\":{},\"ModelPackageGroupArn\":{},\"ModelPackageGroupDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"ModelPackageGroupStatus\":{}}}},\"DescribeModelQualityJobDefinition\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobDefinitionName\"],\"members\":{\"JobDefinitionName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionArn\",\"JobDefinitionName\",\"CreationTime\",\"ModelQualityAppSpecification\",\"ModelQualityJobInput\",\"ModelQualityJobOutputConfig\",\"JobResources\",\"RoleArn\"],\"members\":{\"JobDefinitionArn\":{},\"JobDefinitionName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ModelQualityBaselineConfig\":{\"shape\":\"Sd5\"},\"ModelQualityAppSpecification\":{\"shape\":\"Sd6\"},\"ModelQualityJobInput\":{\"shape\":\"Sd8\"},\"ModelQualityJobOutputConfig\":{\"shape\":\"S6i\"},\"JobResources\":{\"shape\":\"S6o\"},\"NetworkConfig\":{\"shape\":\"S6t\"},\"RoleArn\":{},\"StoppingCondition\":{\"shape\":\"S6u\"}}}},\"DescribeMonitoringSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\"],\"members\":{\"MonitoringScheduleName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleArn\",\"MonitoringScheduleName\",\"MonitoringScheduleStatus\",\"CreationTime\",\"LastModifiedTime\",\"MonitoringScheduleConfig\"],\"members\":{\"MonitoringScheduleArn\":{},\"MonitoringScheduleName\":{},\"MonitoringScheduleStatus\":{},\"MonitoringType\":{},\"FailureReason\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"MonitoringScheduleConfig\":{\"shape\":\"Sdc\"},\"EndpointName\":{},\"LastMonitoringExecutionSummary\":{\"shape\":\"Sos\"}}}},\"DescribeNotebookInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\"],\"members\":{\"NotebookInstanceName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookInstanceArn\":{},\"NotebookInstanceName\":{},\"NotebookInstanceStatus\":{},\"FailureReason\":{},\"Url\":{},\"InstanceType\":{},\"SubnetId\":{},\"SecurityGroups\":{\"shape\":\"S75\"},\"RoleArn\":{},\"KmsKeyId\":{},\"NetworkInterfaceId\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"NotebookInstanceLifecycleConfigName\":{},\"DirectInternetAccess\":{},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"AcceleratorTypes\":{\"shape\":\"Sdu\"},\"DefaultCodeRepository\":{},\"AdditionalCodeRepositories\":{\"shape\":\"Sdx\"},\"RootAccess\":{}}}},\"DescribeNotebookInstanceLifecycleConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceLifecycleConfigName\"],\"members\":{\"NotebookInstanceLifecycleConfigName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotebookInstanceLifecycleConfigArn\":{},\"NotebookInstanceLifecycleConfigName\":{},\"OnCreate\":{\"shape\":\"Se2\"},\"OnStart\":{\"shape\":\"Se2\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineName\"],\"members\":{\"PipelineName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{},\"PipelineName\":{},\"PipelineDisplayName\":{},\"PipelineDefinition\":{},\"PipelineDescription\":{},\"RoleArn\":{},\"PipelineStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastRunTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"}}}},\"DescribePipelineDefinitionForExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineExecutionArn\"],\"members\":{\"PipelineExecutionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineDefinition\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribePipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineExecutionArn\"],\"members\":{\"PipelineExecutionArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{},\"PipelineExecutionArn\":{},\"PipelineExecutionDisplayName\":{},\"PipelineExecutionStatus\":{},\"PipelineExecutionDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"}}}},\"DescribeProcessingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProcessingJobName\"],\"members\":{\"ProcessingJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProcessingJobName\",\"ProcessingResources\",\"AppSpecification\",\"ProcessingJobArn\",\"ProcessingJobStatus\",\"CreationTime\"],\"members\":{\"ProcessingInputs\":{\"shape\":\"Sen\"},\"ProcessingOutputConfig\":{\"shape\":\"Sfa\"},\"ProcessingJobName\":{},\"ProcessingResources\":{\"shape\":\"Sff\"},\"StoppingCondition\":{\"shape\":\"Sfh\"},\"AppSpecification\":{\"shape\":\"Sfj\"},\"Environment\":{\"shape\":\"Sfl\"},\"NetworkConfig\":{\"shape\":\"Sdk\"},\"RoleArn\":{},\"ExperimentConfig\":{\"shape\":\"Sfm\"},\"ProcessingJobArn\":{},\"ProcessingJobStatus\":{},\"ExitMessage\":{},\"FailureReason\":{},\"ProcessingEndTime\":{\"type\":\"timestamp\"},\"ProcessingStartTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"MonitoringScheduleArn\":{},\"AutoMLJobArn\":{},\"TrainingJobArn\":{}}}},\"DescribeProject\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProjectName\"],\"members\":{\"ProjectName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProjectArn\",\"ProjectName\",\"ProjectId\",\"ServiceCatalogProvisioningDetails\",\"ProjectStatus\",\"CreationTime\"],\"members\":{\"ProjectArn\":{},\"ProjectName\":{},\"ProjectId\":{},\"ProjectDescription\":{},\"ServiceCatalogProvisioningDetails\":{\"shape\":\"Sfr\"},\"ServiceCatalogProvisionedProductDetails\":{\"type\":\"structure\",\"members\":{\"ProvisionedProductId\":{},\"ProvisionedProductStatusMessage\":{}}},\"ProjectStatus\":{},\"CreatedBy\":{\"shape\":\"Sk1\"},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"DescribeSubscribedWorkteam\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkteamArn\"],\"members\":{\"WorkteamArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"SubscribedWorkteam\"],\"members\":{\"SubscribedWorkteam\":{\"shape\":\"Spm\"}}}},\"DescribeTrainingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\"],\"members\":{\"TrainingJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\",\"TrainingJobArn\",\"ModelArtifacts\",\"TrainingJobStatus\",\"SecondaryStatus\",\"AlgorithmSpecification\",\"ResourceConfig\",\"StoppingCondition\",\"CreationTime\"],\"members\":{\"TrainingJobName\":{},\"TrainingJobArn\":{},\"TuningJobArn\":{},\"LabelingJobArn\":{},\"AutoMLJobArn\":{},\"ModelArtifacts\":{\"shape\":\"Slg\"},\"TrainingJobStatus\":{},\"SecondaryStatus\":{},\"FailureReason\":{},\"HyperParameters\":{\"shape\":\"S2a\"},\"AlgorithmSpecification\":{\"shape\":\"Sg2\"},\"RoleArn\":{},\"InputDataConfig\":{\"shape\":\"S2c\"},\"OutputDataConfig\":{\"shape\":\"S2t\"},\"ResourceConfig\":{\"shape\":\"S2v\"},\"VpcConfig\":{\"shape\":\"S4x\"},\"StoppingCondition\":{\"shape\":\"S2y\"},\"CreationTime\":{\"type\":\"timestamp\"},\"TrainingStartTime\":{\"type\":\"timestamp\"},\"TrainingEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"SecondaryStatusTransitions\":{\"shape\":\"Spq\"},\"FinalMetricDataList\":{\"shape\":\"Spt\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"},\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"EnableManagedSpotTraining\":{\"type\":\"boolean\"},\"CheckpointConfig\":{\"shape\":\"Saf\"},\"TrainingTimeInSeconds\":{\"type\":\"integer\"},\"BillableTimeInSeconds\":{\"type\":\"integer\"},\"DebugHookConfig\":{\"shape\":\"Sg3\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"},\"DebugRuleConfigurations\":{\"shape\":\"Sgb\"},\"TensorBoardOutputConfig\":{\"shape\":\"Sgg\"},\"DebugRuleEvaluationStatuses\":{\"shape\":\"Spy\"},\"ProfilerConfig\":{\"shape\":\"Sgh\"},\"ProfilerRuleConfigurations\":{\"shape\":\"Sgk\"},\"ProfilerRuleEvaluationStatuses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleConfigurationName\":{},\"RuleEvaluationJobArn\":{},\"RuleEvaluationStatus\":{},\"StatusDetails\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"ProfilingStatus\":{},\"Environment\":{\"shape\":\"Sgm\"}}}},\"DescribeTransformJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformJobName\"],\"members\":{\"TransformJobName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TransformJobName\",\"TransformJobArn\",\"TransformJobStatus\",\"ModelName\",\"TransformInput\",\"TransformResources\",\"CreationTime\"],\"members\":{\"TransformJobName\":{},\"TransformJobArn\":{},\"TransformJobStatus\":{},\"FailureReason\":{},\"ModelName\":{},\"MaxConcurrentTransforms\":{\"type\":\"integer\"},\"ModelClientConfig\":{\"shape\":\"Sgt\"},\"MaxPayloadInMB\":{\"type\":\"integer\"},\"BatchStrategy\":{},\"Environment\":{\"shape\":\"S35\"},\"TransformInput\":{\"shape\":\"S38\"},\"TransformOutput\":{\"shape\":\"S3c\"},\"TransformResources\":{\"shape\":\"S3f\"},\"CreationTime\":{\"type\":\"timestamp\"},\"TransformStartTime\":{\"type\":\"timestamp\"},\"TransformEndTime\":{\"type\":\"timestamp\"},\"LabelingJobArn\":{},\"AutoMLJobArn\":{},\"DataProcessing\":{\"shape\":\"Sgw\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"}}}},\"DescribeTrial\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialName\"],\"members\":{\"TrialName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialName\":{},\"TrialArn\":{},\"DisplayName\":{},\"ExperimentName\":{},\"Source\":{\"shape\":\"Sqa\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"MetadataProperties\":{\"shape\":\"Sp\"}}}},\"DescribeTrialComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialComponentName\"],\"members\":{\"TrialComponentName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentName\":{},\"TrialComponentArn\":{},\"DisplayName\":{},\"Source\":{\"shape\":\"Sqe\"},\"Status\":{\"shape\":\"Sh4\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"Parameters\":{\"shape\":\"Sh8\"},\"InputArtifacts\":{\"shape\":\"Shc\"},\"OutputArtifacts\":{\"shape\":\"Shc\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"Metrics\":{\"shape\":\"Sqg\"}}}},\"DescribeUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainId\":{},\"UserProfileArn\":{},\"UserProfileName\":{},\"HomeEfsFileSystemUid\":{},\"Status\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"SingleSignOnUserIdentifier\":{},\"SingleSignOnUserValue\":{},\"UserSettings\":{\"shape\":\"S74\"}}}},\"DescribeWorkforce\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkforceName\"],\"members\":{\"WorkforceName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Workforce\"],\"members\":{\"Workforce\":{\"shape\":\"Sqq\"}}}},\"DescribeWorkteam\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkteamName\"],\"members\":{\"WorkteamName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Workteam\"],\"members\":{\"Workteam\":{\"shape\":\"Squ\"}}}},\"DisableSagemakerServicecatalogPortfolio\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateTrialComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialComponentName\",\"TrialName\"],\"members\":{\"TrialComponentName\":{},\"TrialName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentArn\":{},\"TrialArn\":{}}}},\"EnableSagemakerServicecatalogPortfolio\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetDeviceFleetReport\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\"],\"members\":{\"DeviceFleetName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeviceFleetArn\",\"DeviceFleetName\"],\"members\":{\"DeviceFleetArn\":{},\"DeviceFleetName\":{},\"OutputConfig\":{\"shape\":\"S70\"},\"Description\":{},\"ReportGenerated\":{\"type\":\"timestamp\"},\"DeviceStats\":{\"type\":\"structure\",\"required\":[\"ConnectedDeviceCount\",\"RegisteredDeviceCount\"],\"members\":{\"ConnectedDeviceCount\":{\"type\":\"long\"},\"RegisteredDeviceCount\":{\"type\":\"long\"}}},\"AgentVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Version\",\"AgentCount\"],\"members\":{\"Version\":{},\"AgentCount\":{\"type\":\"long\"}}}},\"ModelStats\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"ModelVersion\",\"OfflineDeviceCount\",\"ConnectedDeviceCount\",\"ActiveDeviceCount\",\"SamplingDeviceCount\"],\"members\":{\"ModelName\":{},\"ModelVersion\":{},\"OfflineDeviceCount\":{\"type\":\"long\"},\"ConnectedDeviceCount\":{\"type\":\"long\"},\"ActiveDeviceCount\":{\"type\":\"long\"},\"SamplingDeviceCount\":{\"type\":\"long\"}}}}}}},\"GetModelPackageGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\"],\"members\":{\"ModelPackageGroupName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourcePolicy\"],\"members\":{\"ResourcePolicy\":{}}}},\"GetSagemakerServicecatalogPortfolioStatus\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"GetSearchSuggestions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{},\"SuggestionQuery\":{\"type\":\"structure\",\"members\":{\"PropertyNameQuery\":{\"type\":\"structure\",\"required\":[\"PropertyNameHint\"],\"members\":{\"PropertyNameHint\":{}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"PropertyNameSuggestions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PropertyName\":{}}}}}}},\"ListActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceUri\":{},\"ActionType\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionArn\":{},\"ActionName\":{},\"Source\":{\"shape\":\"Si\"},\"ActionType\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListAlgorithms\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AlgorithmSummaryList\"],\"members\":{\"AlgorithmSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AlgorithmName\",\"AlgorithmArn\",\"CreationTime\",\"AlgorithmStatus\"],\"members\":{\"AlgorithmName\":{},\"AlgorithmArn\":{},\"AlgorithmDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"AlgorithmStatus\":{}}}},\"NextToken\":{}}}},\"ListAppImageConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"ModifiedTimeBefore\":{\"type\":\"timestamp\"},\"ModifiedTimeAfter\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"AppImageConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AppImageConfigArn\":{},\"AppImageConfigName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"KernelGatewayImageConfig\":{\"shape\":\"S3x\"}}}}}}},\"ListApps\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortOrder\":{},\"SortBy\":{},\"DomainIdEquals\":{},\"UserProfileNameEquals\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Apps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"AppType\":{},\"AppName\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListArtifacts\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceUri\":{},\"ArtifactType\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArtifactSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ArtifactArn\":{},\"ArtifactName\":{},\"Source\":{\"shape\":\"S49\"},\"ArtifactType\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceArn\":{},\"DestinationArn\":{},\"SourceType\":{},\"DestinationType\":{},\"AssociationType\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceArn\":{},\"DestinationArn\":{},\"SourceType\":{},\"DestinationType\":{},\"AssociationType\":{},\"SourceName\":{},\"DestinationName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"}}}},\"NextToken\":{}}}},\"ListAutoMLJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"StatusEquals\":{},\"SortOrder\":{},\"SortBy\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"AutoMLJobSummaries\"],\"members\":{\"AutoMLJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AutoMLJobName\",\"AutoMLJobArn\",\"AutoMLJobStatus\",\"AutoMLJobSecondaryStatus\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"AutoMLJobName\":{},\"AutoMLJobArn\":{},\"AutoMLJobStatus\":{},\"AutoMLJobSecondaryStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"PartialFailureReasons\":{\"shape\":\"Skl\"}}}},\"NextToken\":{}}}},\"ListCandidatesForAutoMLJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoMLJobName\"],\"members\":{\"AutoMLJobName\":{},\"StatusEquals\":{},\"CandidateNameEquals\":{},\"SortOrder\":{},\"SortBy\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Candidates\"],\"members\":{\"Candidates\":{\"type\":\"list\",\"member\":{\"shape\":\"Skn\"}},\"NextToken\":{}}}},\"ListCodeRepositories\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeRepositorySummaryList\"],\"members\":{\"CodeRepositorySummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryName\",\"CodeRepositoryArn\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"CodeRepositoryName\":{},\"CodeRepositoryArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"GitConfig\":{\"shape\":\"S56\"}}}},\"NextToken\":{}}}},\"ListCompilationJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"StatusEquals\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"CompilationJobSummaries\"],\"members\":{\"CompilationJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CompilationJobName\",\"CompilationJobArn\",\"CreationTime\",\"CompilationJobStatus\"],\"members\":{\"CompilationJobName\":{},\"CompilationJobArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"CompilationStartTime\":{\"type\":\"timestamp\"},\"CompilationEndTime\":{\"type\":\"timestamp\"},\"CompilationTargetDevice\":{},\"CompilationTargetPlatformOs\":{},\"CompilationTargetPlatformArch\":{},\"CompilationTargetPlatformAccelerator\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CompilationJobStatus\":{}}}},\"NextToken\":{}}}},\"ListContexts\":{\"input\":{\"type\":\"structure\",\"members\":{\"SourceUri\":{},\"ContextType\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContextSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContextArn\":{},\"ContextName\":{},\"Source\":{\"shape\":\"S5r\"},\"ContextType\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListDataQualityJobDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionSummaries\"],\"members\":{\"JobDefinitionSummaries\":{\"shape\":\"Stk\"},\"NextToken\":{}}}},\"ListDeviceFleets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeviceFleetSummaries\"],\"members\":{\"DeviceFleetSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceFleetArn\",\"DeviceFleetName\"],\"members\":{\"DeviceFleetArn\":{},\"DeviceFleetName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListDevices\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"LatestHeartbeatAfter\":{\"type\":\"timestamp\"},\"ModelName\":{},\"DeviceFleetName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeviceSummaries\"],\"members\":{\"DeviceSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceName\",\"DeviceArn\"],\"members\":{\"DeviceName\":{},\"DeviceArn\":{},\"Description\":{},\"DeviceFleetName\":{},\"IotThingName\":{},\"RegistrationTime\":{\"type\":\"timestamp\"},\"LatestHeartbeat\":{\"type\":\"timestamp\"},\"Models\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"ModelVersion\"],\"members\":{\"ModelName\":{},\"ModelVersion\":{}}}}}}},\"NextToken\":{}}}},\"ListDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Domains\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainArn\":{},\"DomainId\":{},\"DomainName\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Url\":{}}}},\"NextToken\":{}}}},\"ListEdgePackagingJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"ModelNameContains\":{},\"StatusEquals\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"EdgePackagingJobSummaries\"],\"members\":{\"EdgePackagingJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EdgePackagingJobArn\",\"EdgePackagingJobName\",\"EdgePackagingJobStatus\"],\"members\":{\"EdgePackagingJobArn\":{},\"EdgePackagingJobName\":{},\"EdgePackagingJobStatus\":{},\"CompilationJobName\":{},\"ModelName\":{},\"ModelVersion\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListEndpointConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointConfigs\"],\"members\":{\"EndpointConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EndpointConfigName\",\"EndpointConfigArn\",\"CreationTime\"],\"members\":{\"EndpointConfigName\":{},\"EndpointConfigArn\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"StatusEquals\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Endpoints\"],\"members\":{\"Endpoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"EndpointArn\",\"CreationTime\",\"LastModifiedTime\",\"EndpointStatus\"],\"members\":{\"EndpointName\":{},\"EndpointArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"EndpointStatus\":{}}}},\"NextToken\":{}}}},\"ListExperiments\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExperimentSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ExperimentArn\":{},\"ExperimentName\":{},\"DisplayName\":{},\"ExperimentSource\":{\"shape\":\"Smz\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListFeatureGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NameContains\":{},\"FeatureGroupStatusEquals\":{},\"OfflineStoreStatusEquals\":{},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"SortOrder\":{},\"SortBy\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"FeatureGroupSummaries\",\"NextToken\"],\"members\":{\"FeatureGroupSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\",\"FeatureGroupArn\",\"CreationTime\"],\"members\":{\"FeatureGroupName\":{},\"FeatureGroupArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"FeatureGroupStatus\":{},\"OfflineStoreStatus\":{\"shape\":\"Sn5\"}}}},\"NextToken\":{}}}},\"ListFlowDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionSummaries\"],\"members\":{\"FlowDefinitionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionName\",\"FlowDefinitionArn\",\"FlowDefinitionStatus\",\"CreationTime\"],\"members\":{\"FlowDefinitionName\":{},\"FlowDefinitionArn\":{},\"FlowDefinitionStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{}}}},\"NextToken\":{}}}},\"ListHumanTaskUis\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiSummaries\"],\"members\":{\"HumanTaskUiSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"HumanTaskUiName\",\"HumanTaskUiArn\",\"CreationTime\"],\"members\":{\"HumanTaskUiName\":{},\"HumanTaskUiArn\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListHyperParameterTuningJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortBy\":{},\"SortOrder\":{},\"NameContains\":{},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"StatusEquals\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobSummaries\"],\"members\":{\"HyperParameterTuningJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobName\",\"HyperParameterTuningJobArn\",\"HyperParameterTuningJobStatus\",\"Strategy\",\"CreationTime\",\"TrainingJobStatusCounters\",\"ObjectiveStatusCounters\"],\"members\":{\"HyperParameterTuningJobName\":{},\"HyperParameterTuningJobArn\":{},\"HyperParameterTuningJobStatus\":{},\"Strategy\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"HyperParameterTuningEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"TrainingJobStatusCounters\":{\"shape\":\"Snk\"},\"ObjectiveStatusCounters\":{\"shape\":\"Snm\"},\"ResourceLimits\":{\"shape\":\"S9v\"}}}},\"NextToken\":{}}}},\"ListImageVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\"],\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"ImageName\":{},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreationTime\",\"ImageArn\",\"ImageVersionArn\",\"ImageVersionStatus\",\"LastModifiedTime\",\"Version\"],\"members\":{\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"ImageArn\":{},\"ImageVersionArn\":{},\"ImageVersionStatus\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Version\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"ListImages\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Images\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CreationTime\",\"ImageArn\",\"ImageName\",\"ImageStatus\",\"LastModifiedTime\"],\"members\":{\"CreationTime\":{\"type\":\"timestamp\"},\"Description\":{},\"DisplayName\":{},\"FailureReason\":{},\"ImageArn\":{},\"ImageName\":{},\"ImageStatus\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListLabelingJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"NameContains\":{},\"SortBy\":{},\"SortOrder\":{},\"StatusEquals\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LabelingJobSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"LabelingJobName\",\"LabelingJobArn\",\"CreationTime\",\"LastModifiedTime\",\"LabelingJobStatus\",\"LabelCounters\",\"WorkteamArn\",\"PreHumanTaskLambdaArn\"],\"members\":{\"LabelingJobName\":{},\"LabelingJobArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LabelingJobStatus\":{},\"LabelCounters\":{\"shape\":\"So1\"},\"WorkteamArn\":{},\"PreHumanTaskLambdaArn\":{},\"AnnotationConsolidationLambdaArn\":{},\"FailureReason\":{},\"LabelingJobOutput\":{\"shape\":\"So4\"},\"InputConfig\":{\"shape\":\"Say\"}}}},\"NextToken\":{}}}},\"ListLabelingJobsForWorkteam\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkteamArn\"],\"members\":{\"WorkteamArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"JobReferenceCodeContains\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"LabelingJobSummaryList\"],\"members\":{\"LabelingJobSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"JobReferenceCode\",\"WorkRequesterAccountId\",\"CreationTime\"],\"members\":{\"LabelingJobName\":{},\"JobReferenceCode\":{},\"WorkRequesterAccountId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LabelCounters\":{\"type\":\"structure\",\"members\":{\"HumanLabeled\":{\"type\":\"integer\"},\"PendingHuman\":{\"type\":\"integer\"},\"Total\":{\"type\":\"integer\"}}},\"NumberOfHumanWorkersPerDataObject\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"ListModelBiasJobDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionSummaries\"],\"members\":{\"JobDefinitionSummaries\":{\"shape\":\"Stk\"},\"NextToken\":{}}}},\"ListModelExplainabilityJobDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionSummaries\"],\"members\":{\"JobDefinitionSummaries\":{\"shape\":\"Stk\"},\"NextToken\":{}}}},\"ListModelPackageGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupSummaryList\"],\"members\":{\"ModelPackageGroupSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\",\"ModelPackageGroupArn\",\"CreationTime\",\"ModelPackageGroupStatus\"],\"members\":{\"ModelPackageGroupName\":{},\"ModelPackageGroupArn\":{},\"ModelPackageGroupDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ModelPackageGroupStatus\":{}}}},\"NextToken\":{}}}},\"ListModelPackages\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"ModelApprovalStatus\":{},\"ModelPackageGroupName\":{},\"ModelPackageType\":{},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageSummaryList\"],\"members\":{\"ModelPackageSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ModelPackageName\",\"ModelPackageArn\",\"CreationTime\",\"ModelPackageStatus\"],\"members\":{\"ModelPackageName\":{},\"ModelPackageGroupName\":{},\"ModelPackageVersion\":{\"type\":\"integer\"},\"ModelPackageArn\":{},\"ModelPackageDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ModelPackageStatus\":{},\"ModelApprovalStatus\":{}}}},\"NextToken\":{}}}},\"ListModelQualityJobDefinitions\":{\"input\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"JobDefinitionSummaries\"],\"members\":{\"JobDefinitionSummaries\":{\"shape\":\"Stk\"},\"NextToken\":{}}}},\"ListModels\":{\"input\":{\"type\":\"structure\",\"members\":{\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Models\"],\"members\":{\"Models\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ModelName\",\"ModelArn\",\"CreationTime\"],\"members\":{\"ModelName\":{},\"ModelArn\":{},\"CreationTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListMonitoringExecutions\":{\"input\":{\"type\":\"structure\",\"members\":{\"MonitoringScheduleName\":{},\"EndpointName\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ScheduledTimeBefore\":{\"type\":\"timestamp\"},\"ScheduledTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"StatusEquals\":{},\"MonitoringJobDefinitionName\":{},\"MonitoringTypeEquals\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitoringExecutionSummaries\"],\"members\":{\"MonitoringExecutionSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"Sos\"}},\"NextToken\":{}}}},\"ListMonitoringSchedules\":{\"input\":{\"type\":\"structure\",\"members\":{\"EndpointName\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"StatusEquals\":{},\"MonitoringJobDefinitionName\":{},\"MonitoringTypeEquals\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleSummaries\"],\"members\":{\"MonitoringScheduleSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\",\"MonitoringScheduleArn\",\"CreationTime\",\"LastModifiedTime\",\"MonitoringScheduleStatus\"],\"members\":{\"MonitoringScheduleName\":{},\"MonitoringScheduleArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"MonitoringScheduleStatus\":{},\"EndpointName\":{},\"MonitoringJobDefinitionName\":{},\"MonitoringType\":{}}}},\"NextToken\":{}}}},\"ListNotebookInstanceLifecycleConfigs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortBy\":{},\"SortOrder\":{},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NotebookInstanceLifecycleConfigs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceLifecycleConfigName\",\"NotebookInstanceLifecycleConfigArn\"],\"members\":{\"NotebookInstanceLifecycleConfigName\":{},\"NotebookInstanceLifecycleConfigArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}}}}},\"ListNotebookInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortBy\":{},\"SortOrder\":{},\"NameContains\":{},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"StatusEquals\":{},\"NotebookInstanceLifecycleConfigNameContains\":{},\"DefaultCodeRepositoryContains\":{},\"AdditionalCodeRepositoryEquals\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"NotebookInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\",\"NotebookInstanceArn\"],\"members\":{\"NotebookInstanceName\":{},\"NotebookInstanceArn\":{},\"NotebookInstanceStatus\":{},\"Url\":{},\"InstanceType\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"NotebookInstanceLifecycleConfigName\":{},\"DefaultCodeRepository\":{},\"AdditionalCodeRepositories\":{\"shape\":\"Sdx\"}}}}}}},\"ListPipelineExecutionSteps\":{\"input\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionSteps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StepName\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"StepStatus\":{},\"CacheHitResult\":{\"type\":\"structure\",\"members\":{\"SourcePipelineExecutionArn\":{}}},\"FailureReason\":{},\"Metadata\":{\"type\":\"structure\",\"members\":{\"TrainingJob\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"ProcessingJob\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"TransformJob\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"Model\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"RegisterModel\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"Condition\":{\"type\":\"structure\",\"members\":{\"Outcome\":{}}}}}}}},\"NextToken\":{}}}},\"ListPipelineExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineName\"],\"members\":{\"PipelineName\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionArn\":{},\"StartTime\":{\"type\":\"timestamp\"},\"PipelineExecutionStatus\":{},\"PipelineExecutionDescription\":{},\"PipelineExecutionDisplayName\":{}}}},\"NextToken\":{}}}},\"ListPipelineParametersForExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineExecutionArn\"],\"members\":{\"PipelineExecutionArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineParameters\":{\"shape\":\"Sxy\"},\"NextToken\":{}}}},\"ListPipelines\":{\"input\":{\"type\":\"structure\",\"members\":{\"PipelineNamePrefix\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{},\"PipelineName\":{},\"PipelineDisplayName\":{},\"PipelineDescription\":{},\"RoleArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastExecutionTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListProcessingJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"StatusEquals\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProcessingJobSummaries\"],\"members\":{\"ProcessingJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProcessingJobName\",\"ProcessingJobArn\",\"CreationTime\",\"ProcessingJobStatus\"],\"members\":{\"ProcessingJobName\":{},\"ProcessingJobArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ProcessingEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"ProcessingJobStatus\":{},\"FailureReason\":{},\"ExitMessage\":{}}}},\"NextToken\":{}}}},\"ListProjects\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{},\"NextToken\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProjectSummaryList\"],\"members\":{\"ProjectSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProjectName\",\"ProjectArn\",\"ProjectId\",\"CreationTime\",\"ProjectStatus\"],\"members\":{\"ProjectName\":{},\"ProjectDescription\":{},\"ProjectArn\":{},\"ProjectId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"ProjectStatus\":{}}}},\"NextToken\":{}}}},\"ListSubscribedWorkteams\":{\"input\":{\"type\":\"structure\",\"members\":{\"NameContains\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"SubscribedWorkteams\"],\"members\":{\"SubscribedWorkteams\":{\"type\":\"list\",\"member\":{\"shape\":\"Spm\"}},\"NextToken\":{}}}},\"ListTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S7\"},\"NextToken\":{}}}},\"ListTrainingJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"StatusEquals\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrainingJobSummaries\"],\"members\":{\"TrainingJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\",\"TrainingJobArn\",\"CreationTime\",\"TrainingJobStatus\"],\"members\":{\"TrainingJobName\":{},\"TrainingJobArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TrainingEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"TrainingJobStatus\":{}}}},\"NextToken\":{}}}},\"ListTrainingJobsForHyperParameterTuningJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobName\"],\"members\":{\"HyperParameterTuningJobName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"StatusEquals\":{},\"SortBy\":{},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrainingJobSummaries\"],\"members\":{\"TrainingJobSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"Sno\"}},\"NextToken\":{}}}},\"ListTransformJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"CreationTimeAfter\":{\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"type\":\"timestamp\"},\"LastModifiedTimeAfter\":{\"type\":\"timestamp\"},\"LastModifiedTimeBefore\":{\"type\":\"timestamp\"},\"NameContains\":{},\"StatusEquals\":{},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TransformJobSummaries\"],\"members\":{\"TransformJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TransformJobName\",\"TransformJobArn\",\"CreationTime\",\"TransformJobStatus\"],\"members\":{\"TransformJobName\":{},\"TransformJobArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TransformEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"TransformJobStatus\":{},\"FailureReason\":{}}}},\"NextToken\":{}}}},\"ListTrialComponents\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExperimentName\":{},\"TrialName\":{},\"SourceArn\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TrialComponentName\":{},\"TrialComponentArn\":{},\"DisplayName\":{},\"TrialComponentSource\":{\"shape\":\"Sqe\"},\"Status\":{\"shape\":\"Sh4\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"}}}},\"NextToken\":{}}}},\"ListTrials\":{\"input\":{\"type\":\"structure\",\"members\":{\"ExperimentName\":{},\"TrialComponentName\":{},\"CreatedAfter\":{\"type\":\"timestamp\"},\"CreatedBefore\":{\"type\":\"timestamp\"},\"SortBy\":{},\"SortOrder\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TrialArn\":{},\"TrialName\":{},\"DisplayName\":{},\"TrialSource\":{\"shape\":\"Sqa\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListUserProfiles\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"SortOrder\":{},\"SortBy\":{},\"DomainIdEquals\":{},\"UserProfileNameContains\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserProfiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"Status\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListWorkforces\":{\"input\":{\"type\":\"structure\",\"members\":{\"SortBy\":{},\"SortOrder\":{},\"NameContains\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Workforces\"],\"members\":{\"Workforces\":{\"type\":\"list\",\"member\":{\"shape\":\"Sqq\"}},\"NextToken\":{}}}},\"ListWorkteams\":{\"input\":{\"type\":\"structure\",\"members\":{\"SortBy\":{},\"SortOrder\":{},\"NameContains\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Workteams\"],\"members\":{\"Workteams\":{\"type\":\"list\",\"member\":{\"shape\":\"Squ\"}},\"NextToken\":{}}}},\"PutModelPackageGroupPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupName\",\"ResourcePolicy\"],\"members\":{\"ModelPackageGroupName\":{},\"ResourcePolicy\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageGroupArn\"],\"members\":{\"ModelPackageGroupArn\":{}}}},\"RegisterDevices\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\",\"Devices\"],\"members\":{\"DeviceFleetName\":{},\"Devices\":{\"shape\":\"Szo\"},\"Tags\":{\"shape\":\"S7\"}}}},\"RenderUiTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"Task\",\"RoleArn\"],\"members\":{\"UiTemplate\":{\"shape\":\"S9o\"},\"Task\":{\"type\":\"structure\",\"required\":[\"Input\"],\"members\":{\"Input\":{}}},\"RoleArn\":{},\"HumanTaskUiArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"RenderedContent\",\"Errors\"],\"members\":{\"RenderedContent\":{},\"Errors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Code\",\"Message\"],\"members\":{\"Code\":{},\"Message\":{}}}}}}},\"Search\":{\"input\":{\"type\":\"structure\",\"required\":[\"Resource\"],\"members\":{\"Resource\":{},\"SearchExpression\":{\"shape\":\"Szx\"},\"SortBy\":{},\"SortOrder\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Results\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TrainingJob\":{\"shape\":\"S10a\"},\"Experiment\":{\"type\":\"structure\",\"members\":{\"ExperimentName\":{},\"ExperimentArn\":{},\"DisplayName\":{},\"Source\":{\"shape\":\"Smz\"},\"Description\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"Tags\":{\"shape\":\"S7\"}}},\"Trial\":{\"type\":\"structure\",\"members\":{\"TrialName\":{},\"TrialArn\":{},\"DisplayName\":{},\"ExperimentName\":{},\"Source\":{\"shape\":\"Sqa\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"S7\"},\"TrialComponentSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TrialComponentName\":{},\"TrialComponentArn\":{},\"TrialComponentSource\":{\"shape\":\"Sqe\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"}}}}}},\"TrialComponent\":{\"type\":\"structure\",\"members\":{\"TrialComponentName\":{},\"DisplayName\":{},\"TrialComponentArn\":{},\"Source\":{\"shape\":\"Sqe\"},\"Status\":{\"shape\":\"Sh4\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"Parameters\":{\"shape\":\"Sh8\"},\"InputArtifacts\":{\"shape\":\"Shc\"},\"OutputArtifacts\":{\"shape\":\"Shc\"},\"Metrics\":{\"shape\":\"Sqg\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"SourceDetail\":{\"type\":\"structure\",\"members\":{\"SourceArn\":{},\"TrainingJob\":{\"shape\":\"S10a\"},\"ProcessingJob\":{\"type\":\"structure\",\"members\":{\"ProcessingInputs\":{\"shape\":\"Sen\"},\"ProcessingOutputConfig\":{\"shape\":\"Sfa\"},\"ProcessingJobName\":{},\"ProcessingResources\":{\"shape\":\"Sff\"},\"StoppingCondition\":{\"shape\":\"Sfh\"},\"AppSpecification\":{\"shape\":\"Sfj\"},\"Environment\":{\"shape\":\"Sfl\"},\"NetworkConfig\":{\"shape\":\"Sdk\"},\"RoleArn\":{},\"ExperimentConfig\":{\"shape\":\"Sfm\"},\"ProcessingJobArn\":{},\"ProcessingJobStatus\":{},\"ExitMessage\":{},\"FailureReason\":{},\"ProcessingEndTime\":{\"type\":\"timestamp\"},\"ProcessingStartTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"MonitoringScheduleArn\":{},\"AutoMLJobArn\":{},\"TrainingJobArn\":{},\"Tags\":{\"shape\":\"S7\"}}},\"TransformJob\":{\"type\":\"structure\",\"members\":{\"TransformJobName\":{},\"TransformJobArn\":{},\"TransformJobStatus\":{},\"FailureReason\":{},\"ModelName\":{},\"MaxConcurrentTransforms\":{\"type\":\"integer\"},\"ModelClientConfig\":{\"shape\":\"Sgt\"},\"MaxPayloadInMB\":{\"type\":\"integer\"},\"BatchStrategy\":{},\"Environment\":{\"shape\":\"S35\"},\"TransformInput\":{\"shape\":\"S38\"},\"TransformOutput\":{\"shape\":\"S3c\"},\"TransformResources\":{\"shape\":\"S3f\"},\"CreationTime\":{\"type\":\"timestamp\"},\"TransformStartTime\":{\"type\":\"timestamp\"},\"TransformEndTime\":{\"type\":\"timestamp\"},\"LabelingJobArn\":{},\"AutoMLJobArn\":{},\"DataProcessing\":{\"shape\":\"Sgw\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"},\"Tags\":{\"shape\":\"S7\"}}}}},\"Tags\":{\"shape\":\"S7\"},\"Parents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TrialName\":{},\"ExperimentName\":{}}}}}},\"Endpoint\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"EndpointArn\",\"EndpointConfigName\",\"EndpointStatus\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"EndpointName\":{},\"EndpointArn\":{},\"EndpointConfigName\":{},\"ProductionVariants\":{\"shape\":\"Sma\"},\"DataCaptureConfig\":{\"shape\":\"Sme\"},\"EndpointStatus\":{},\"FailureReason\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"MonitoringSchedules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MonitoringScheduleArn\":{},\"MonitoringScheduleName\":{},\"MonitoringScheduleStatus\":{},\"MonitoringType\":{},\"FailureReason\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"MonitoringScheduleConfig\":{\"shape\":\"Sdc\"},\"EndpointName\":{},\"LastMonitoringExecutionSummary\":{\"shape\":\"Sos\"},\"Tags\":{\"shape\":\"S7\"}}}},\"Tags\":{\"shape\":\"S7\"}}},\"ModelPackage\":{\"type\":\"structure\",\"members\":{\"ModelPackageName\":{},\"ModelPackageGroupName\":{},\"ModelPackageVersion\":{\"type\":\"integer\"},\"ModelPackageArn\":{},\"ModelPackageDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"InferenceSpecification\":{\"shape\":\"S1t\"},\"SourceAlgorithmSpecification\":{\"shape\":\"Sco\"},\"ValidationSpecification\":{\"shape\":\"Scl\"},\"ModelPackageStatus\":{},\"ModelPackageStatusDetails\":{\"shape\":\"Sof\"},\"CertifyForMarketplace\":{\"type\":\"boolean\"},\"ModelApprovalStatus\":{},\"CreatedBy\":{\"shape\":\"Sk1\"},\"MetadataProperties\":{\"shape\":\"Sp\"},\"ModelMetrics\":{\"shape\":\"Scs\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"ApprovalDescription\":{},\"Tags\":{\"shape\":\"S7\"}}},\"ModelPackageGroup\":{\"type\":\"structure\",\"members\":{\"ModelPackageGroupName\":{},\"ModelPackageGroupArn\":{},\"ModelPackageGroupDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"ModelPackageGroupStatus\":{},\"Tags\":{\"shape\":\"S7\"}}},\"Pipeline\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{},\"PipelineName\":{},\"PipelineDisplayName\":{},\"PipelineDescription\":{},\"RoleArn\":{},\"PipelineStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LastRunTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"Tags\":{\"shape\":\"S7\"}}},\"PipelineExecution\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{},\"PipelineExecutionArn\":{},\"PipelineExecutionDisplayName\":{},\"PipelineExecutionStatus\":{},\"PipelineExecutionDescription\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"CreatedBy\":{\"shape\":\"Sk1\"},\"LastModifiedBy\":{\"shape\":\"Sk1\"},\"PipelineParameters\":{\"shape\":\"Sxy\"}}},\"FeatureGroup\":{\"type\":\"structure\",\"members\":{\"FeatureGroupArn\":{},\"FeatureGroupName\":{},\"RecordIdentifierFeatureName\":{},\"EventTimeFeatureName\":{},\"FeatureDefinitions\":{\"shape\":\"S8j\"},\"CreationTime\":{\"type\":\"timestamp\"},\"OnlineStoreConfig\":{\"shape\":\"S8m\"},\"OfflineStoreConfig\":{\"shape\":\"S8o\"},\"RoleArn\":{},\"FeatureGroupStatus\":{},\"OfflineStoreStatus\":{\"shape\":\"Sn5\"},\"FailureReason\":{},\"Description\":{},\"Tags\":{\"shape\":\"S7\"}}}}}},\"NextToken\":{}}}},\"StartMonitoringSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\"],\"members\":{\"MonitoringScheduleName\":{}}}},\"StartNotebookInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\"],\"members\":{\"NotebookInstanceName\":{}}}},\"StartPipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineName\",\"ClientRequestToken\"],\"members\":{\"PipelineName\":{},\"PipelineExecutionDisplayName\":{},\"PipelineParameters\":{\"shape\":\"Sxy\"},\"PipelineExecutionDescription\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionArn\":{}}}},\"StopAutoMLJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutoMLJobName\"],\"members\":{\"AutoMLJobName\":{}}}},\"StopCompilationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"CompilationJobName\"],\"members\":{\"CompilationJobName\":{}}}},\"StopEdgePackagingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"EdgePackagingJobName\"],\"members\":{\"EdgePackagingJobName\":{}}}},\"StopHyperParameterTuningJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"HyperParameterTuningJobName\"],\"members\":{\"HyperParameterTuningJobName\":{}}}},\"StopLabelingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"LabelingJobName\"],\"members\":{\"LabelingJobName\":{}}}},\"StopMonitoringSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\"],\"members\":{\"MonitoringScheduleName\":{}}}},\"StopNotebookInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\"],\"members\":{\"NotebookInstanceName\":{}}}},\"StopPipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineExecutionArn\",\"ClientRequestToken\"],\"members\":{\"PipelineExecutionArn\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionArn\":{}}}},\"StopProcessingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProcessingJobName\"],\"members\":{\"ProcessingJobName\":{}}}},\"StopTrainingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\"],\"members\":{\"TrainingJobName\":{}}}},\"StopTransformJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TransformJobName\"],\"members\":{\"TransformJobName\":{}}}},\"UpdateAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActionName\"],\"members\":{\"ActionName\":{},\"Description\":{},\"Status\":{},\"Properties\":{\"shape\":\"Sn\"},\"PropertiesToRemove\":{\"shape\":\"S11a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActionArn\":{}}}},\"UpdateAppImageConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"AppImageConfigName\"],\"members\":{\"AppImageConfigName\":{},\"KernelGatewayImageConfig\":{\"shape\":\"S3x\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AppImageConfigArn\":{}}}},\"UpdateArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ArtifactArn\"],\"members\":{\"ArtifactArn\":{},\"ArtifactName\":{},\"Properties\":{\"shape\":\"Sn\"},\"PropertiesToRemove\":{\"shape\":\"S11a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ArtifactArn\":{}}}},\"UpdateCodeRepository\":{\"input\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryName\"],\"members\":{\"CodeRepositoryName\":{},\"GitConfig\":{\"type\":\"structure\",\"members\":{\"SecretArn\":{}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"CodeRepositoryArn\"],\"members\":{\"CodeRepositoryArn\":{}}}},\"UpdateContext\":{\"input\":{\"type\":\"structure\",\"required\":[\"ContextName\"],\"members\":{\"ContextName\":{},\"Description\":{},\"Properties\":{\"shape\":\"Sn\"},\"PropertiesToRemove\":{\"shape\":\"S11a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContextArn\":{}}}},\"UpdateDeviceFleet\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\",\"OutputConfig\"],\"members\":{\"DeviceFleetName\":{},\"RoleArn\":{},\"Description\":{},\"OutputConfig\":{\"shape\":\"S70\"}}}},\"UpdateDevices\":{\"input\":{\"type\":\"structure\",\"required\":[\"DeviceFleetName\",\"Devices\"],\"members\":{\"DeviceFleetName\":{},\"Devices\":{\"shape\":\"Szo\"}}}},\"UpdateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\"],\"members\":{\"DomainId\":{},\"DefaultUserSettings\":{\"shape\":\"S74\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainArn\":{}}}},\"UpdateEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"EndpointConfigName\"],\"members\":{\"EndpointName\":{},\"EndpointConfigName\":{},\"RetainAllVariantProperties\":{\"type\":\"boolean\"},\"ExcludeRetainedVariantProperties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VariantPropertyType\"],\"members\":{\"VariantPropertyType\":{}}}},\"DeploymentConfig\":{\"shape\":\"Smh\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}}},\"UpdateEndpointWeightsAndCapacities\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"DesiredWeightsAndCapacities\"],\"members\":{\"EndpointName\":{},\"DesiredWeightsAndCapacities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VariantName\"],\"members\":{\"VariantName\":{},\"DesiredWeight\":{\"type\":\"float\"},\"DesiredInstanceCount\":{\"type\":\"integer\"}}}}}},\"output\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}}},\"UpdateExperiment\":{\"input\":{\"type\":\"structure\",\"required\":[\"ExperimentName\"],\"members\":{\"ExperimentName\":{},\"DisplayName\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ExperimentArn\":{}}}},\"UpdateImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageName\"],\"members\":{\"DeleteProperties\":{\"type\":\"list\",\"member\":{}},\"Description\":{},\"DisplayName\":{},\"ImageName\":{},\"RoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageArn\":{}}}},\"UpdateModelPackage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelPackageArn\",\"ModelApprovalStatus\"],\"members\":{\"ModelPackageArn\":{},\"ModelApprovalStatus\":{},\"ApprovalDescription\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ModelPackageArn\"],\"members\":{\"ModelPackageArn\":{}}}},\"UpdateMonitoringSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\",\"MonitoringScheduleConfig\"],\"members\":{\"MonitoringScheduleName\":{},\"MonitoringScheduleConfig\":{\"shape\":\"Sdc\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleArn\"],\"members\":{\"MonitoringScheduleArn\":{}}}},\"UpdateNotebookInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceName\"],\"members\":{\"NotebookInstanceName\":{},\"InstanceType\":{},\"RoleArn\":{},\"LifecycleConfigName\":{},\"DisassociateLifecycleConfig\":{\"type\":\"boolean\"},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"DefaultCodeRepository\":{},\"AdditionalCodeRepositories\":{\"shape\":\"Sdx\"},\"AcceleratorTypes\":{\"shape\":\"Sdu\"},\"DisassociateAcceleratorTypes\":{\"type\":\"boolean\"},\"DisassociateDefaultCodeRepository\":{\"type\":\"boolean\"},\"DisassociateAdditionalCodeRepositories\":{\"type\":\"boolean\"},\"RootAccess\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateNotebookInstanceLifecycleConfig\":{\"input\":{\"type\":\"structure\",\"required\":[\"NotebookInstanceLifecycleConfigName\"],\"members\":{\"NotebookInstanceLifecycleConfigName\":{},\"OnCreate\":{\"shape\":\"Se2\"},\"OnStart\":{\"shape\":\"Se2\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePipeline\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineName\"],\"members\":{\"PipelineName\":{},\"PipelineDisplayName\":{},\"PipelineDefinition\":{},\"PipelineDescription\":{},\"RoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineArn\":{}}}},\"UpdatePipelineExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"PipelineExecutionArn\"],\"members\":{\"PipelineExecutionArn\":{},\"PipelineExecutionDescription\":{},\"PipelineExecutionDisplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PipelineExecutionArn\":{}}}},\"UpdateTrainingJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\"],\"members\":{\"TrainingJobName\":{},\"ProfilerConfig\":{\"type\":\"structure\",\"members\":{\"S3OutputPath\":{},\"ProfilingIntervalInMilliseconds\":{\"type\":\"long\"},\"ProfilingParameters\":{\"shape\":\"Sgj\"},\"DisableProfiler\":{\"type\":\"boolean\"}}},\"ProfilerRuleConfigurations\":{\"shape\":\"Sgk\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TrainingJobArn\"],\"members\":{\"TrainingJobArn\":{}}}},\"UpdateTrial\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialName\"],\"members\":{\"TrialName\":{},\"DisplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialArn\":{}}}},\"UpdateTrialComponent\":{\"input\":{\"type\":\"structure\",\"required\":[\"TrialComponentName\"],\"members\":{\"TrialComponentName\":{},\"DisplayName\":{},\"Status\":{\"shape\":\"Sh4\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Parameters\":{\"shape\":\"Sh8\"},\"ParametersToRemove\":{\"shape\":\"S12r\"},\"InputArtifacts\":{\"shape\":\"Shc\"},\"InputArtifactsToRemove\":{\"shape\":\"S12r\"},\"OutputArtifacts\":{\"shape\":\"Shc\"},\"OutputArtifactsToRemove\":{\"shape\":\"S12r\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TrialComponentArn\":{}}}},\"UpdateUserProfile\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainId\",\"UserProfileName\"],\"members\":{\"DomainId\":{},\"UserProfileName\":{},\"UserSettings\":{\"shape\":\"S74\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserProfileArn\":{}}}},\"UpdateWorkforce\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkforceName\"],\"members\":{\"WorkforceName\":{},\"SourceIpConfig\":{\"shape\":\"Sht\"},\"OidcConfig\":{\"shape\":\"Shq\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Workforce\"],\"members\":{\"Workforce\":{\"shape\":\"Sqq\"}}}},\"UpdateWorkteam\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkteamName\"],\"members\":{\"WorkteamName\":{},\"MemberDefinitions\":{\"shape\":\"Si1\"},\"Description\":{},\"NotificationConfiguration\":{\"shape\":\"Si9\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Workteam\"],\"members\":{\"Workteam\":{\"shape\":\"Squ\"}}}}},\"shapes\":{\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Si\":{\"type\":\"structure\",\"required\":[\"SourceUri\"],\"members\":{\"SourceUri\":{},\"SourceType\":{},\"SourceId\":{}}},\"Sn\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sp\":{\"type\":\"structure\",\"members\":{\"CommitId\":{},\"Repository\":{},\"GeneratedBy\":{},\"ProjectId\":{}}},\"Sw\":{\"type\":\"structure\",\"required\":[\"TrainingImage\",\"SupportedTrainingInstanceTypes\",\"TrainingChannels\"],\"members\":{\"TrainingImage\":{},\"TrainingImageDigest\":{},\"SupportedHyperParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Type\"],\"members\":{\"Name\":{},\"Description\":{},\"Type\":{},\"Range\":{\"type\":\"structure\",\"members\":{\"IntegerParameterRangeSpecification\":{\"type\":\"structure\",\"required\":[\"MinValue\",\"MaxValue\"],\"members\":{\"MinValue\":{},\"MaxValue\":{}}},\"ContinuousParameterRangeSpecification\":{\"type\":\"structure\",\"required\":[\"MinValue\",\"MaxValue\"],\"members\":{\"MinValue\":{},\"MaxValue\":{}}},\"CategoricalParameterRangeSpecification\":{\"type\":\"structure\",\"required\":[\"Values\"],\"members\":{\"Values\":{\"shape\":\"S18\"}}}}},\"IsTunable\":{\"type\":\"boolean\"},\"IsRequired\":{\"type\":\"boolean\"},\"DefaultValue\":{}}}},\"SupportedTrainingInstanceTypes\":{\"type\":\"list\",\"member\":{}},\"SupportsDistributedTraining\":{\"type\":\"boolean\"},\"MetricDefinitions\":{\"shape\":\"S1d\"},\"TrainingChannels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"SupportedContentTypes\",\"SupportedInputModes\"],\"members\":{\"Name\":{},\"Description\":{},\"IsRequired\":{\"type\":\"boolean\"},\"SupportedContentTypes\":{\"shape\":\"S1k\"},\"SupportedCompressionTypes\":{\"type\":\"list\",\"member\":{}},\"SupportedInputModes\":{\"type\":\"list\",\"member\":{}}}}},\"SupportedTuningJobObjectiveMetrics\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}}}},\"S18\":{\"type\":\"list\",\"member\":{}},\"S1d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Regex\"],\"members\":{\"Name\":{},\"Regex\":{}}}},\"S1k\":{\"type\":\"list\",\"member\":{}},\"S1r\":{\"type\":\"structure\",\"required\":[\"Type\",\"MetricName\"],\"members\":{\"Type\":{},\"MetricName\":{}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"Containers\",\"SupportedContentTypes\",\"SupportedResponseMIMETypes\"],\"members\":{\"Containers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Image\"],\"members\":{\"ContainerHostname\":{},\"Image\":{},\"ImageDigest\":{},\"ModelDataUrl\":{},\"ProductId\":{}}}},\"SupportedTransformInstanceTypes\":{\"type\":\"list\",\"member\":{}},\"SupportedRealtimeInferenceInstanceTypes\":{\"type\":\"list\",\"member\":{}},\"SupportedContentTypes\":{\"shape\":\"S1k\"},\"SupportedResponseMIMETypes\":{\"type\":\"list\",\"member\":{}}}},\"S25\":{\"type\":\"structure\",\"required\":[\"ValidationRole\",\"ValidationProfiles\"],\"members\":{\"ValidationRole\":{},\"ValidationProfiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProfileName\",\"TrainingJobDefinition\"],\"members\":{\"ProfileName\":{},\"TrainingJobDefinition\":{\"type\":\"structure\",\"required\":[\"TrainingInputMode\",\"InputDataConfig\",\"OutputDataConfig\",\"ResourceConfig\",\"StoppingCondition\"],\"members\":{\"TrainingInputMode\":{},\"HyperParameters\":{\"shape\":\"S2a\"},\"InputDataConfig\":{\"shape\":\"S2c\"},\"OutputDataConfig\":{\"shape\":\"S2t\"},\"ResourceConfig\":{\"shape\":\"S2v\"},\"StoppingCondition\":{\"shape\":\"S2y\"}}},\"TransformJobDefinition\":{\"shape\":\"S31\"}}}}}},\"S2a\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ChannelName\",\"DataSource\"],\"members\":{\"ChannelName\":{},\"DataSource\":{\"type\":\"structure\",\"members\":{\"S3DataSource\":{\"type\":\"structure\",\"required\":[\"S3DataType\",\"S3Uri\"],\"members\":{\"S3DataType\":{},\"S3Uri\":{},\"S3DataDistributionType\":{},\"AttributeNames\":{\"type\":\"list\",\"member\":{}}}},\"FileSystemDataSource\":{\"type\":\"structure\",\"required\":[\"FileSystemId\",\"FileSystemAccessMode\",\"FileSystemType\",\"DirectoryPath\"],\"members\":{\"FileSystemId\":{},\"FileSystemAccessMode\":{},\"FileSystemType\":{},\"DirectoryPath\":{}}}}},\"ContentType\":{},\"CompressionType\":{},\"RecordWrapperType\":{},\"InputMode\":{},\"ShuffleConfig\":{\"type\":\"structure\",\"required\":[\"Seed\"],\"members\":{\"Seed\":{\"type\":\"long\"}}}}}},\"S2t\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"KmsKeyId\":{},\"S3OutputPath\":{}}},\"S2v\":{\"type\":\"structure\",\"required\":[\"InstanceType\",\"InstanceCount\",\"VolumeSizeInGB\"],\"members\":{\"InstanceType\":{},\"InstanceCount\":{\"type\":\"integer\"},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"VolumeKmsKeyId\":{}}},\"S2y\":{\"type\":\"structure\",\"members\":{\"MaxRuntimeInSeconds\":{\"type\":\"integer\"},\"MaxWaitTimeInSeconds\":{\"type\":\"integer\"}}},\"S31\":{\"type\":\"structure\",\"required\":[\"TransformInput\",\"TransformOutput\",\"TransformResources\"],\"members\":{\"MaxConcurrentTransforms\":{\"type\":\"integer\"},\"MaxPayloadInMB\":{\"type\":\"integer\"},\"BatchStrategy\":{},\"Environment\":{\"shape\":\"S35\"},\"TransformInput\":{\"shape\":\"S38\"},\"TransformOutput\":{\"shape\":\"S3c\"},\"TransformResources\":{\"shape\":\"S3f\"}}},\"S35\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S38\":{\"type\":\"structure\",\"required\":[\"DataSource\"],\"members\":{\"DataSource\":{\"type\":\"structure\",\"required\":[\"S3DataSource\"],\"members\":{\"S3DataSource\":{\"type\":\"structure\",\"required\":[\"S3DataType\",\"S3Uri\"],\"members\":{\"S3DataType\":{},\"S3Uri\":{}}}}},\"ContentType\":{},\"CompressionType\":{},\"SplitType\":{}}},\"S3c\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"S3OutputPath\":{},\"Accept\":{},\"AssembleWith\":{},\"KmsKeyId\":{}}},\"S3f\":{\"type\":\"structure\",\"required\":[\"InstanceType\",\"InstanceCount\"],\"members\":{\"InstanceType\":{},\"InstanceCount\":{\"type\":\"integer\"},\"VolumeKmsKeyId\":{}}},\"S3p\":{\"type\":\"structure\",\"members\":{\"SageMakerImageArn\":{},\"SageMakerImageVersionArn\":{},\"InstanceType\":{}}},\"S3x\":{\"type\":\"structure\",\"required\":[\"KernelSpecs\"],\"members\":{\"KernelSpecs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"DisplayName\":{}}}},\"FileSystemConfig\":{\"type\":\"structure\",\"members\":{\"MountPath\":{},\"DefaultUid\":{\"type\":\"integer\"},\"DefaultGid\":{\"type\":\"integer\"}}}}},\"S49\":{\"type\":\"structure\",\"required\":[\"SourceUri\"],\"members\":{\"SourceUri\":{},\"SourceTypes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SourceIdType\",\"Value\"],\"members\":{\"SourceIdType\":{},\"Value\":{}}}}}},\"S4h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DataSource\",\"TargetAttributeName\"],\"members\":{\"DataSource\":{\"type\":\"structure\",\"required\":[\"S3DataSource\"],\"members\":{\"S3DataSource\":{\"type\":\"structure\",\"required\":[\"S3DataType\",\"S3Uri\"],\"members\":{\"S3DataType\":{},\"S3Uri\":{}}}}},\"CompressionType\":{},\"TargetAttributeName\":{}}}},\"S4n\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"KmsKeyId\":{},\"S3OutputPath\":{}}},\"S4p\":{\"type\":\"structure\",\"required\":[\"MetricName\"],\"members\":{\"MetricName\":{}}},\"S4r\":{\"type\":\"structure\",\"members\":{\"CompletionCriteria\":{\"shape\":\"S4s\"},\"SecurityConfig\":{\"type\":\"structure\",\"members\":{\"VolumeKmsKeyId\":{},\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"VpcConfig\":{\"shape\":\"S4x\"}}}}},\"S4s\":{\"type\":\"structure\",\"members\":{\"MaxCandidates\":{\"type\":\"integer\"},\"MaxRuntimePerTrainingJobInSeconds\":{\"type\":\"integer\"},\"MaxAutoMLJobRuntimeInSeconds\":{\"type\":\"integer\"}}},\"S4x\":{\"type\":\"structure\",\"required\":[\"SecurityGroupIds\",\"Subnets\"],\"members\":{\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}},\"Subnets\":{\"shape\":\"S50\"}}},\"S50\":{\"type\":\"list\",\"member\":{}},\"S56\":{\"type\":\"structure\",\"required\":[\"RepositoryUrl\"],\"members\":{\"RepositoryUrl\":{},\"Branch\":{},\"SecretArn\":{}}},\"S5d\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"DataInputConfig\",\"Framework\"],\"members\":{\"S3Uri\":{},\"DataInputConfig\":{},\"Framework\":{},\"FrameworkVersion\":{}}},\"S5h\":{\"type\":\"structure\",\"required\":[\"S3OutputLocation\"],\"members\":{\"S3OutputLocation\":{},\"TargetDevice\":{},\"TargetPlatform\":{\"type\":\"structure\",\"required\":[\"Os\",\"Arch\"],\"members\":{\"Os\":{},\"Arch\":{},\"Accelerator\":{}}},\"CompilerOptions\":{},\"KmsKeyId\":{}}},\"S5r\":{\"type\":\"structure\",\"required\":[\"SourceUri\"],\"members\":{\"SourceUri\":{},\"SourceType\":{},\"SourceId\":{}}},\"S5w\":{\"type\":\"structure\",\"members\":{\"BaseliningJobName\":{},\"ConstraintsResource\":{\"shape\":\"S5y\"},\"StatisticsResource\":{\"shape\":\"S5z\"}}},\"S5y\":{\"type\":\"structure\",\"members\":{\"S3Uri\":{}}},\"S5z\":{\"type\":\"structure\",\"members\":{\"S3Uri\":{}}},\"S60\":{\"type\":\"structure\",\"required\":[\"ImageUri\"],\"members\":{\"ImageUri\":{},\"ContainerEntrypoint\":{\"shape\":\"S62\"},\"ContainerArguments\":{\"shape\":\"S64\"},\"RecordPreprocessorSourceUri\":{},\"PostAnalyticsProcessorSourceUri\":{},\"Environment\":{\"shape\":\"S66\"}}},\"S62\":{\"type\":\"list\",\"member\":{}},\"S64\":{\"type\":\"list\",\"member\":{}},\"S66\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S69\":{\"type\":\"structure\",\"required\":[\"EndpointInput\"],\"members\":{\"EndpointInput\":{\"shape\":\"S6a\"}}},\"S6a\":{\"type\":\"structure\",\"required\":[\"EndpointName\",\"LocalPath\"],\"members\":{\"EndpointName\":{},\"LocalPath\":{},\"S3InputMode\":{},\"S3DataDistributionType\":{},\"FeaturesAttribute\":{},\"InferenceAttribute\":{},\"ProbabilityAttribute\":{},\"ProbabilityThresholdAttribute\":{\"type\":\"double\"},\"StartTimeOffset\":{},\"EndTimeOffset\":{}}},\"S6i\":{\"type\":\"structure\",\"required\":[\"MonitoringOutputs\"],\"members\":{\"MonitoringOutputs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"S3Output\"],\"members\":{\"S3Output\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"LocalPath\"],\"members\":{\"S3Uri\":{},\"LocalPath\":{},\"S3UploadMode\":{}}}}}},\"KmsKeyId\":{}}},\"S6o\":{\"type\":\"structure\",\"required\":[\"ClusterConfig\"],\"members\":{\"ClusterConfig\":{\"type\":\"structure\",\"required\":[\"InstanceCount\",\"InstanceType\",\"VolumeSizeInGB\"],\"members\":{\"InstanceCount\":{\"type\":\"integer\"},\"InstanceType\":{},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"VolumeKmsKeyId\":{}}}}},\"S6t\":{\"type\":\"structure\",\"members\":{\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"},\"VpcConfig\":{\"shape\":\"S4x\"}}},\"S6u\":{\"type\":\"structure\",\"required\":[\"MaxRuntimeInSeconds\"],\"members\":{\"MaxRuntimeInSeconds\":{\"type\":\"integer\"}}},\"S70\":{\"type\":\"structure\",\"required\":[\"S3OutputLocation\"],\"members\":{\"S3OutputLocation\":{},\"KmsKeyId\":{}}},\"S74\":{\"type\":\"structure\",\"members\":{\"ExecutionRole\":{},\"SecurityGroups\":{\"shape\":\"S75\"},\"SharingSettings\":{\"type\":\"structure\",\"members\":{\"NotebookOutputOption\":{},\"S3OutputPath\":{},\"S3KmsKeyId\":{}}},\"JupyterServerAppSettings\":{\"type\":\"structure\",\"members\":{\"DefaultResourceSpec\":{\"shape\":\"S3p\"}}},\"KernelGatewayAppSettings\":{\"type\":\"structure\",\"members\":{\"DefaultResourceSpec\":{\"shape\":\"S3p\"},\"CustomImages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ImageName\",\"AppImageConfigName\"],\"members\":{\"ImageName\":{},\"ImageVersionNumber\":{\"type\":\"integer\"},\"AppImageConfigName\":{}}}}}},\"TensorBoardAppSettings\":{\"type\":\"structure\",\"members\":{\"DefaultResourceSpec\":{\"shape\":\"S3p\"}}}}},\"S75\":{\"type\":\"list\",\"member\":{}},\"S7r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VariantName\",\"ModelName\",\"InitialInstanceCount\",\"InstanceType\"],\"members\":{\"VariantName\":{},\"ModelName\":{},\"InitialInstanceCount\":{\"type\":\"integer\"},\"InstanceType\":{},\"InitialVariantWeight\":{\"type\":\"float\"},\"AcceleratorType\":{},\"CoreDumpConfig\":{\"type\":\"structure\",\"required\":[\"DestinationS3Uri\"],\"members\":{\"DestinationS3Uri\":{},\"KmsKeyId\":{}}}}}},\"S80\":{\"type\":\"structure\",\"required\":[\"InitialSamplingPercentage\",\"DestinationS3Uri\",\"CaptureOptions\"],\"members\":{\"EnableCapture\":{\"type\":\"boolean\"},\"InitialSamplingPercentage\":{\"type\":\"integer\"},\"DestinationS3Uri\":{},\"KmsKeyId\":{},\"CaptureOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CaptureMode\"],\"members\":{\"CaptureMode\":{}}}},\"CaptureContentTypeHeader\":{\"type\":\"structure\",\"members\":{\"CsvContentTypes\":{\"type\":\"list\",\"member\":{}},\"JsonContentTypes\":{\"type\":\"list\",\"member\":{}}}}}},\"S8j\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FeatureName\":{},\"FeatureType\":{}}}},\"S8m\":{\"type\":\"structure\",\"members\":{\"SecurityConfig\":{\"type\":\"structure\",\"members\":{\"KmsKeyId\":{}}},\"EnableOnlineStore\":{\"type\":\"boolean\"}}},\"S8o\":{\"type\":\"structure\",\"required\":[\"S3StorageConfig\"],\"members\":{\"S3StorageConfig\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{},\"KmsKeyId\":{},\"ResolvedOutputS3Uri\":{}}},\"DisableGlueTableCreation\":{\"type\":\"boolean\"},\"DataCatalogConfig\":{\"type\":\"structure\",\"required\":[\"TableName\",\"Catalog\",\"Database\"],\"members\":{\"TableName\":{},\"Catalog\":{},\"Database\":{}}}}},\"S8z\":{\"type\":\"structure\",\"required\":[\"AwsManagedHumanLoopRequestSource\"],\"members\":{\"AwsManagedHumanLoopRequestSource\":{}}},\"S91\":{\"type\":\"structure\",\"required\":[\"HumanLoopActivationConditionsConfig\"],\"members\":{\"HumanLoopActivationConditionsConfig\":{\"type\":\"structure\",\"required\":[\"HumanLoopActivationConditions\"],\"members\":{\"HumanLoopActivationConditions\":{\"jsonvalue\":true}}}}},\"S94\":{\"type\":\"structure\",\"required\":[\"WorkteamArn\",\"HumanTaskUiArn\",\"TaskTitle\",\"TaskDescription\",\"TaskCount\"],\"members\":{\"WorkteamArn\":{},\"HumanTaskUiArn\":{},\"TaskTitle\":{},\"TaskDescription\":{},\"TaskCount\":{\"type\":\"integer\"},\"TaskAvailabilityLifetimeInSeconds\":{\"type\":\"integer\"},\"TaskTimeLimitInSeconds\":{\"type\":\"integer\"},\"TaskKeywords\":{\"type\":\"list\",\"member\":{}},\"PublicWorkforceTaskPrice\":{\"shape\":\"S9e\"}}},\"S9e\":{\"type\":\"structure\",\"members\":{\"AmountInUsd\":{\"type\":\"structure\",\"members\":{\"Dollars\":{\"type\":\"integer\"},\"Cents\":{\"type\":\"integer\"},\"TenthFractionsOfACent\":{\"type\":\"integer\"}}}}},\"S9j\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"S3OutputPath\":{},\"KmsKeyId\":{}}},\"S9o\":{\"type\":\"structure\",\"required\":[\"Content\"],\"members\":{\"Content\":{}}},\"S9t\":{\"type\":\"structure\",\"required\":[\"Strategy\",\"ResourceLimits\"],\"members\":{\"Strategy\":{},\"HyperParameterTuningJobObjective\":{\"shape\":\"S1r\"},\"ResourceLimits\":{\"shape\":\"S9v\"},\"ParameterRanges\":{\"shape\":\"S9y\"},\"TrainingJobEarlyStoppingType\":{},\"TuningJobCompletionCriteria\":{\"type\":\"structure\",\"required\":[\"TargetObjectiveMetricValue\"],\"members\":{\"TargetObjectiveMetricValue\":{\"type\":\"float\"}}}}},\"S9v\":{\"type\":\"structure\",\"required\":[\"MaxNumberOfTrainingJobs\",\"MaxParallelTrainingJobs\"],\"members\":{\"MaxNumberOfTrainingJobs\":{\"type\":\"integer\"},\"MaxParallelTrainingJobs\":{\"type\":\"integer\"}}},\"S9y\":{\"type\":\"structure\",\"members\":{\"IntegerParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"MinValue\",\"MaxValue\"],\"members\":{\"Name\":{},\"MinValue\":{},\"MaxValue\":{},\"ScalingType\":{}}}},\"ContinuousParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"MinValue\",\"MaxValue\"],\"members\":{\"Name\":{},\"MinValue\":{},\"MaxValue\":{},\"ScalingType\":{}}}},\"CategoricalParameterRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S18\"}}}}}},\"Saa\":{\"type\":\"structure\",\"required\":[\"AlgorithmSpecification\",\"RoleArn\",\"OutputDataConfig\",\"ResourceConfig\",\"StoppingCondition\"],\"members\":{\"DefinitionName\":{},\"TuningObjective\":{\"shape\":\"S1r\"},\"HyperParameterRanges\":{\"shape\":\"S9y\"},\"StaticHyperParameters\":{\"shape\":\"S2a\"},\"AlgorithmSpecification\":{\"type\":\"structure\",\"required\":[\"TrainingInputMode\"],\"members\":{\"TrainingImage\":{},\"TrainingInputMode\":{},\"AlgorithmName\":{},\"MetricDefinitions\":{\"shape\":\"S1d\"}}},\"RoleArn\":{},\"InputDataConfig\":{\"shape\":\"S2c\"},\"VpcConfig\":{\"shape\":\"S4x\"},\"OutputDataConfig\":{\"shape\":\"S2t\"},\"ResourceConfig\":{\"shape\":\"S2v\"},\"StoppingCondition\":{\"shape\":\"S2y\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"},\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"EnableManagedSpotTraining\":{\"type\":\"boolean\"},\"CheckpointConfig\":{\"shape\":\"Saf\"}}},\"Saf\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{},\"LocalPath\":{}}},\"Sag\":{\"type\":\"list\",\"member\":{\"shape\":\"Saa\"}},\"Sah\":{\"type\":\"structure\",\"required\":[\"ParentHyperParameterTuningJobs\",\"WarmStartType\"],\"members\":{\"ParentHyperParameterTuningJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"HyperParameterTuningJobName\":{}}}},\"WarmStartType\":{}}},\"Say\":{\"type\":\"structure\",\"required\":[\"DataSource\"],\"members\":{\"DataSource\":{\"type\":\"structure\",\"members\":{\"S3DataSource\":{\"type\":\"structure\",\"required\":[\"ManifestS3Uri\"],\"members\":{\"ManifestS3Uri\":{}}},\"SnsDataSource\":{\"type\":\"structure\",\"required\":[\"SnsTopicArn\"],\"members\":{\"SnsTopicArn\":{}}}}},\"DataAttributes\":{\"type\":\"structure\",\"members\":{\"ContentClassifiers\":{\"type\":\"list\",\"member\":{}}}}}},\"Sb6\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"S3OutputPath\":{},\"KmsKeyId\":{},\"SnsTopicArn\":{}}},\"Sb7\":{\"type\":\"structure\",\"members\":{\"MaxHumanLabeledObjectCount\":{\"type\":\"integer\"},\"MaxPercentageOfInputDatasetLabeled\":{\"type\":\"integer\"}}},\"Sba\":{\"type\":\"structure\",\"required\":[\"LabelingJobAlgorithmSpecificationArn\"],\"members\":{\"LabelingJobAlgorithmSpecificationArn\":{},\"InitialActiveLearningModelArn\":{},\"LabelingJobResourceConfig\":{\"type\":\"structure\",\"members\":{\"VolumeKmsKeyId\":{}}}}},\"Sbe\":{\"type\":\"structure\",\"required\":[\"WorkteamArn\",\"UiConfig\",\"PreHumanTaskLambdaArn\",\"TaskTitle\",\"TaskDescription\",\"NumberOfHumanWorkersPerDataObject\",\"TaskTimeLimitInSeconds\",\"AnnotationConsolidationConfig\"],\"members\":{\"WorkteamArn\":{},\"UiConfig\":{\"type\":\"structure\",\"members\":{\"UiTemplateS3Uri\":{},\"HumanTaskUiArn\":{}}},\"PreHumanTaskLambdaArn\":{},\"TaskKeywords\":{\"type\":\"list\",\"member\":{}},\"TaskTitle\":{},\"TaskDescription\":{},\"NumberOfHumanWorkersPerDataObject\":{\"type\":\"integer\"},\"TaskTimeLimitInSeconds\":{\"type\":\"integer\"},\"TaskAvailabilityLifetimeInSeconds\":{\"type\":\"integer\"},\"MaxConcurrentTaskCount\":{\"type\":\"integer\"},\"AnnotationConsolidationConfig\":{\"type\":\"structure\",\"required\":[\"AnnotationConsolidationLambdaArn\"],\"members\":{\"AnnotationConsolidationLambdaArn\":{}}},\"PublicWorkforceTaskPrice\":{\"shape\":\"S9e\"}}},\"Sbt\":{\"type\":\"structure\",\"members\":{\"ContainerHostname\":{},\"Image\":{},\"ImageConfig\":{\"type\":\"structure\",\"required\":[\"RepositoryAccessMode\"],\"members\":{\"RepositoryAccessMode\":{},\"RepositoryAuthConfig\":{\"type\":\"structure\",\"required\":[\"RepositoryCredentialsProviderArn\"],\"members\":{\"RepositoryCredentialsProviderArn\":{}}}}},\"Mode\":{},\"ModelDataUrl\":{},\"Environment\":{\"shape\":\"Sbz\"},\"ModelPackageName\":{},\"MultiModelConfig\":{\"type\":\"structure\",\"members\":{\"ModelCacheSetting\":{}}}}},\"Sbz\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sc5\":{\"type\":\"list\",\"member\":{\"shape\":\"Sbt\"}},\"Sc6\":{\"type\":\"structure\",\"required\":[\"Mode\"],\"members\":{\"Mode\":{}}},\"Sca\":{\"type\":\"structure\",\"members\":{\"BaseliningJobName\":{},\"ConstraintsResource\":{\"shape\":\"S5y\"}}},\"Scb\":{\"type\":\"structure\",\"required\":[\"ImageUri\",\"ConfigUri\"],\"members\":{\"ImageUri\":{},\"ConfigUri\":{},\"Environment\":{\"shape\":\"S66\"}}},\"Scc\":{\"type\":\"structure\",\"required\":[\"EndpointInput\",\"GroundTruthS3Input\"],\"members\":{\"EndpointInput\":{\"shape\":\"S6a\"},\"GroundTruthS3Input\":{\"shape\":\"Scd\"}}},\"Scd\":{\"type\":\"structure\",\"members\":{\"S3Uri\":{}}},\"Scg\":{\"type\":\"structure\",\"members\":{\"BaseliningJobName\":{},\"ConstraintsResource\":{\"shape\":\"S5y\"}}},\"Sch\":{\"type\":\"structure\",\"required\":[\"ImageUri\",\"ConfigUri\"],\"members\":{\"ImageUri\":{},\"ConfigUri\":{},\"Environment\":{\"shape\":\"S66\"}}},\"Sci\":{\"type\":\"structure\",\"required\":[\"EndpointInput\"],\"members\":{\"EndpointInput\":{\"shape\":\"S6a\"}}},\"Scl\":{\"type\":\"structure\",\"required\":[\"ValidationRole\",\"ValidationProfiles\"],\"members\":{\"ValidationRole\":{},\"ValidationProfiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProfileName\",\"TransformJobDefinition\"],\"members\":{\"ProfileName\":{},\"TransformJobDefinition\":{\"shape\":\"S31\"}}}}}},\"Sco\":{\"type\":\"structure\",\"required\":[\"SourceAlgorithms\"],\"members\":{\"SourceAlgorithms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AlgorithmName\"],\"members\":{\"ModelDataUrl\":{},\"AlgorithmName\":{}}}}}},\"Scs\":{\"type\":\"structure\",\"members\":{\"ModelQuality\":{\"type\":\"structure\",\"members\":{\"Statistics\":{\"shape\":\"Scu\"},\"Constraints\":{\"shape\":\"Scu\"}}},\"ModelDataQuality\":{\"type\":\"structure\",\"members\":{\"Statistics\":{\"shape\":\"Scu\"},\"Constraints\":{\"shape\":\"Scu\"}}},\"Bias\":{\"type\":\"structure\",\"members\":{\"Report\":{\"shape\":\"Scu\"}}},\"Explainability\":{\"type\":\"structure\",\"members\":{\"Report\":{\"shape\":\"Scu\"}}}}},\"Scu\":{\"type\":\"structure\",\"required\":[\"ContentType\",\"S3Uri\"],\"members\":{\"ContentType\":{},\"ContentDigest\":{},\"S3Uri\":{}}},\"Sd5\":{\"type\":\"structure\",\"members\":{\"BaseliningJobName\":{},\"ConstraintsResource\":{\"shape\":\"S5y\"}}},\"Sd6\":{\"type\":\"structure\",\"required\":[\"ImageUri\"],\"members\":{\"ImageUri\":{},\"ContainerEntrypoint\":{\"shape\":\"S62\"},\"ContainerArguments\":{\"shape\":\"S64\"},\"RecordPreprocessorSourceUri\":{},\"PostAnalyticsProcessorSourceUri\":{},\"ProblemType\":{},\"Environment\":{\"shape\":\"S66\"}}},\"Sd8\":{\"type\":\"structure\",\"required\":[\"EndpointInput\",\"GroundTruthS3Input\"],\"members\":{\"EndpointInput\":{\"shape\":\"S6a\"},\"GroundTruthS3Input\":{\"shape\":\"Scd\"}}},\"Sdc\":{\"type\":\"structure\",\"members\":{\"ScheduleConfig\":{\"type\":\"structure\",\"required\":[\"ScheduleExpression\"],\"members\":{\"ScheduleExpression\":{}}},\"MonitoringJobDefinition\":{\"type\":\"structure\",\"required\":[\"MonitoringInputs\",\"MonitoringOutputConfig\",\"MonitoringResources\",\"MonitoringAppSpecification\",\"RoleArn\"],\"members\":{\"BaselineConfig\":{\"type\":\"structure\",\"members\":{\"BaseliningJobName\":{},\"ConstraintsResource\":{\"shape\":\"S5y\"},\"StatisticsResource\":{\"shape\":\"S5z\"}}},\"MonitoringInputs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EndpointInput\"],\"members\":{\"EndpointInput\":{\"shape\":\"S6a\"}}}},\"MonitoringOutputConfig\":{\"shape\":\"S6i\"},\"MonitoringResources\":{\"shape\":\"S6o\"},\"MonitoringAppSpecification\":{\"type\":\"structure\",\"required\":[\"ImageUri\"],\"members\":{\"ImageUri\":{},\"ContainerEntrypoint\":{\"shape\":\"S62\"},\"ContainerArguments\":{\"shape\":\"S64\"},\"RecordPreprocessorSourceUri\":{},\"PostAnalyticsProcessorSourceUri\":{}}},\"StoppingCondition\":{\"shape\":\"S6u\"},\"Environment\":{\"shape\":\"S66\"},\"NetworkConfig\":{\"shape\":\"Sdk\"},\"RoleArn\":{}}},\"MonitoringJobDefinitionName\":{},\"MonitoringType\":{}}},\"Sdk\":{\"type\":\"structure\",\"members\":{\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"},\"VpcConfig\":{\"shape\":\"S4x\"}}},\"Sdu\":{\"type\":\"list\",\"member\":{}},\"Sdx\":{\"type\":\"list\",\"member\":{}},\"Se2\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Content\":{}}}},\"Sen\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InputName\"],\"members\":{\"InputName\":{},\"AppManaged\":{\"type\":\"boolean\"},\"S3Input\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"S3DataType\"],\"members\":{\"S3Uri\":{},\"LocalPath\":{},\"S3DataType\":{},\"S3InputMode\":{},\"S3DataDistributionType\":{},\"S3CompressionType\":{}}},\"DatasetDefinition\":{\"type\":\"structure\",\"members\":{\"AthenaDatasetDefinition\":{\"type\":\"structure\",\"required\":[\"Catalog\",\"Database\",\"QueryString\",\"OutputS3Uri\",\"OutputFormat\"],\"members\":{\"Catalog\":{},\"Database\":{},\"QueryString\":{},\"WorkGroup\":{},\"OutputS3Uri\":{},\"KmsKeyId\":{},\"OutputFormat\":{},\"OutputCompression\":{}}},\"RedshiftDatasetDefinition\":{\"type\":\"structure\",\"required\":[\"ClusterId\",\"Database\",\"DbUser\",\"QueryString\",\"ClusterRoleArn\",\"OutputS3Uri\",\"OutputFormat\"],\"members\":{\"ClusterId\":{},\"Database\":{},\"DbUser\":{},\"QueryString\":{},\"ClusterRoleArn\":{},\"OutputS3Uri\":{},\"KmsKeyId\":{},\"OutputFormat\":{},\"OutputCompression\":{}}},\"LocalPath\":{},\"DataDistributionType\":{},\"InputMode\":{}}}}}},\"Sfa\":{\"type\":\"structure\",\"required\":[\"Outputs\"],\"members\":{\"Outputs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OutputName\"],\"members\":{\"OutputName\":{},\"S3Output\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"LocalPath\",\"S3UploadMode\"],\"members\":{\"S3Uri\":{},\"LocalPath\":{},\"S3UploadMode\":{}}},\"FeatureStoreOutput\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\"],\"members\":{\"FeatureGroupName\":{}}},\"AppManaged\":{\"type\":\"boolean\"}}}},\"KmsKeyId\":{}}},\"Sff\":{\"type\":\"structure\",\"required\":[\"ClusterConfig\"],\"members\":{\"ClusterConfig\":{\"type\":\"structure\",\"required\":[\"InstanceCount\",\"InstanceType\",\"VolumeSizeInGB\"],\"members\":{\"InstanceCount\":{\"type\":\"integer\"},\"InstanceType\":{},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"VolumeKmsKeyId\":{}}}}},\"Sfh\":{\"type\":\"structure\",\"required\":[\"MaxRuntimeInSeconds\"],\"members\":{\"MaxRuntimeInSeconds\":{\"type\":\"integer\"}}},\"Sfj\":{\"type\":\"structure\",\"required\":[\"ImageUri\"],\"members\":{\"ImageUri\":{},\"ContainerEntrypoint\":{\"shape\":\"S62\"},\"ContainerArguments\":{\"type\":\"list\",\"member\":{}}}},\"Sfl\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sfm\":{\"type\":\"structure\",\"members\":{\"ExperimentName\":{},\"TrialName\":{},\"TrialComponentDisplayName\":{}}},\"Sfr\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\"],\"members\":{\"ProductId\":{},\"ProvisioningArtifactId\":{},\"PathId\":{},\"ProvisioningParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}}}},\"Sg2\":{\"type\":\"structure\",\"required\":[\"TrainingInputMode\"],\"members\":{\"TrainingImage\":{},\"AlgorithmName\":{},\"TrainingInputMode\":{},\"MetricDefinitions\":{\"shape\":\"S1d\"},\"EnableSageMakerMetricsTimeSeries\":{\"type\":\"boolean\"}}},\"Sg3\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"LocalPath\":{},\"S3OutputPath\":{},\"HookParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"CollectionConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CollectionName\":{},\"CollectionParameters\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"Sgb\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleConfigurationName\",\"RuleEvaluatorImage\"],\"members\":{\"RuleConfigurationName\":{},\"LocalPath\":{},\"S3OutputPath\":{},\"RuleEvaluatorImage\":{},\"InstanceType\":{},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"RuleParameters\":{\"shape\":\"Sgf\"}}}},\"Sgf\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sgg\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"LocalPath\":{},\"S3OutputPath\":{}}},\"Sgh\":{\"type\":\"structure\",\"required\":[\"S3OutputPath\"],\"members\":{\"S3OutputPath\":{},\"ProfilingIntervalInMilliseconds\":{\"type\":\"long\"},\"ProfilingParameters\":{\"shape\":\"Sgj\"}}},\"Sgj\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sgk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleConfigurationName\",\"RuleEvaluatorImage\"],\"members\":{\"RuleConfigurationName\":{},\"LocalPath\":{},\"S3OutputPath\":{},\"RuleEvaluatorImage\":{},\"InstanceType\":{},\"VolumeSizeInGB\":{\"type\":\"integer\"},\"RuleParameters\":{\"shape\":\"Sgf\"}}}},\"Sgm\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sgt\":{\"type\":\"structure\",\"members\":{\"InvocationsTimeoutInSeconds\":{\"type\":\"integer\"},\"InvocationsMaxRetries\":{\"type\":\"integer\"}}},\"Sgw\":{\"type\":\"structure\",\"members\":{\"InputFilter\":{},\"OutputFilter\":{},\"JoinSource\":{}}},\"Sh4\":{\"type\":\"structure\",\"members\":{\"PrimaryStatus\":{},\"Message\":{}}},\"Sh8\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"StringValue\":{},\"NumberValue\":{\"type\":\"double\"}}}},\"Shc\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"Value\"],\"members\":{\"MediaType\":{},\"Value\":{}}}},\"Shn\":{\"type\":\"structure\",\"required\":[\"UserPool\",\"ClientId\"],\"members\":{\"UserPool\":{},\"ClientId\":{}}},\"Shq\":{\"type\":\"structure\",\"required\":[\"ClientId\",\"ClientSecret\",\"Issuer\",\"AuthorizationEndpoint\",\"TokenEndpoint\",\"UserInfoEndpoint\",\"LogoutEndpoint\",\"JwksUri\"],\"members\":{\"ClientId\":{},\"ClientSecret\":{\"type\":\"string\",\"sensitive\":true},\"Issuer\":{},\"AuthorizationEndpoint\":{},\"TokenEndpoint\":{},\"UserInfoEndpoint\":{},\"LogoutEndpoint\":{},\"JwksUri\":{}}},\"Sht\":{\"type\":\"structure\",\"required\":[\"Cidrs\"],\"members\":{\"Cidrs\":{\"type\":\"list\",\"member\":{}}}},\"Si1\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CognitoMemberDefinition\":{\"type\":\"structure\",\"required\":[\"UserPool\",\"UserGroup\",\"ClientId\"],\"members\":{\"UserPool\":{},\"UserGroup\":{},\"ClientId\":{}}},\"OidcMemberDefinition\":{\"type\":\"structure\",\"required\":[\"Groups\"],\"members\":{\"Groups\":{\"type\":\"list\",\"member\":{}}}}}}},\"Si9\":{\"type\":\"structure\",\"members\":{\"NotificationTopicArn\":{}}},\"Sk1\":{\"type\":\"structure\",\"members\":{\"UserProfileArn\":{},\"UserProfileName\":{},\"DomainId\":{}}},\"Sk7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Status\"],\"members\":{\"Name\":{},\"Status\":{},\"FailureReason\":{}}}},\"Skl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PartialFailureMessage\":{}}}},\"Skn\":{\"type\":\"structure\",\"required\":[\"CandidateName\",\"ObjectiveStatus\",\"CandidateSteps\",\"CandidateStatus\",\"CreationTime\",\"LastModifiedTime\"],\"members\":{\"CandidateName\":{},\"FinalAutoMLJobObjectiveMetric\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Value\"],\"members\":{\"Type\":{},\"MetricName\":{},\"Value\":{\"type\":\"float\"}}},\"ObjectiveStatus\":{},\"CandidateSteps\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"CandidateStepType\",\"CandidateStepArn\",\"CandidateStepName\"],\"members\":{\"CandidateStepType\":{},\"CandidateStepArn\":{},\"CandidateStepName\":{}}}},\"CandidateStatus\":{},\"InferenceContainers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Image\",\"ModelDataUrl\"],\"members\":{\"Image\":{},\"ModelDataUrl\":{},\"Environment\":{\"shape\":\"Sbz\"}}}},\"CreationTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"CandidateProperties\":{\"type\":\"structure\",\"members\":{\"CandidateArtifactLocations\":{\"type\":\"structure\",\"required\":[\"Explainability\"],\"members\":{\"Explainability\":{}}}}}}},\"Slg\":{\"type\":\"structure\",\"required\":[\"S3ModelArtifacts\"],\"members\":{\"S3ModelArtifacts\":{}}},\"Sma\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VariantName\"],\"members\":{\"VariantName\":{},\"DeployedImages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SpecifiedImage\":{},\"ResolvedImage\":{},\"ResolutionTime\":{\"type\":\"timestamp\"}}}},\"CurrentWeight\":{\"type\":\"float\"},\"DesiredWeight\":{\"type\":\"float\"},\"CurrentInstanceCount\":{\"type\":\"integer\"},\"DesiredInstanceCount\":{\"type\":\"integer\"}}}},\"Sme\":{\"type\":\"structure\",\"required\":[\"EnableCapture\",\"CaptureStatus\",\"CurrentSamplingPercentage\",\"DestinationS3Uri\",\"KmsKeyId\"],\"members\":{\"EnableCapture\":{\"type\":\"boolean\"},\"CaptureStatus\":{},\"CurrentSamplingPercentage\":{\"type\":\"integer\"},\"DestinationS3Uri\":{},\"KmsKeyId\":{}}},\"Smh\":{\"type\":\"structure\",\"required\":[\"BlueGreenUpdatePolicy\"],\"members\":{\"BlueGreenUpdatePolicy\":{\"type\":\"structure\",\"required\":[\"TrafficRoutingConfiguration\"],\"members\":{\"TrafficRoutingConfiguration\":{\"type\":\"structure\",\"required\":[\"Type\",\"WaitIntervalInSeconds\"],\"members\":{\"Type\":{},\"WaitIntervalInSeconds\":{\"type\":\"integer\"},\"CanarySize\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{\"type\":\"integer\"}}}}},\"TerminationWaitInSeconds\":{\"type\":\"integer\"},\"MaximumExecutionTimeoutInSeconds\":{\"type\":\"integer\"}}},\"AutoRollbackConfiguration\":{\"type\":\"structure\",\"members\":{\"Alarms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AlarmName\":{}}}}}}}},\"Smz\":{\"type\":\"structure\",\"required\":[\"SourceArn\"],\"members\":{\"SourceArn\":{},\"SourceType\":{}}},\"Sn5\":{\"type\":\"structure\",\"required\":[\"Status\"],\"members\":{\"Status\":{},\"BlockedReason\":{}}},\"Snk\":{\"type\":\"structure\",\"members\":{\"Completed\":{\"type\":\"integer\"},\"InProgress\":{\"type\":\"integer\"},\"RetryableError\":{\"type\":\"integer\"},\"NonRetryableError\":{\"type\":\"integer\"},\"Stopped\":{\"type\":\"integer\"}}},\"Snm\":{\"type\":\"structure\",\"members\":{\"Succeeded\":{\"type\":\"integer\"},\"Pending\":{\"type\":\"integer\"},\"Failed\":{\"type\":\"integer\"}}},\"Sno\":{\"type\":\"structure\",\"required\":[\"TrainingJobName\",\"TrainingJobArn\",\"CreationTime\",\"TrainingJobStatus\",\"TunedHyperParameters\"],\"members\":{\"TrainingJobDefinitionName\":{},\"TrainingJobName\":{},\"TrainingJobArn\":{},\"TuningJobName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"TrainingStartTime\":{\"type\":\"timestamp\"},\"TrainingEndTime\":{\"type\":\"timestamp\"},\"TrainingJobStatus\":{},\"TunedHyperParameters\":{\"shape\":\"S2a\"},\"FailureReason\":{},\"FinalHyperParameterTuningJobObjectiveMetric\":{\"type\":\"structure\",\"required\":[\"MetricName\",\"Value\"],\"members\":{\"Type\":{},\"MetricName\":{},\"Value\":{\"type\":\"float\"}}},\"ObjectiveStatus\":{}}},\"So1\":{\"type\":\"structure\",\"members\":{\"TotalLabeled\":{\"type\":\"integer\"},\"HumanLabeled\":{\"type\":\"integer\"},\"MachineLabeled\":{\"type\":\"integer\"},\"FailedNonRetryableError\":{\"type\":\"integer\"},\"Unlabeled\":{\"type\":\"integer\"}}},\"So4\":{\"type\":\"structure\",\"required\":[\"OutputDatasetS3Uri\"],\"members\":{\"OutputDatasetS3Uri\":{},\"FinalActiveLearningModelArn\":{}}},\"Sof\":{\"type\":\"structure\",\"required\":[\"ValidationStatuses\"],\"members\":{\"ValidationStatuses\":{\"shape\":\"Sog\"},\"ImageScanStatuses\":{\"shape\":\"Sog\"}}},\"Sog\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Status\"],\"members\":{\"Name\":{},\"Status\":{},\"FailureReason\":{}}}},\"Sos\":{\"type\":\"structure\",\"required\":[\"MonitoringScheduleName\",\"ScheduledTime\",\"CreationTime\",\"LastModifiedTime\",\"MonitoringExecutionStatus\"],\"members\":{\"MonitoringScheduleName\":{},\"ScheduledTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"MonitoringExecutionStatus\":{},\"ProcessingJobArn\":{},\"EndpointName\":{},\"FailureReason\":{},\"MonitoringJobDefinitionName\":{},\"MonitoringType\":{}}},\"Spm\":{\"type\":\"structure\",\"required\":[\"WorkteamArn\"],\"members\":{\"WorkteamArn\":{},\"MarketplaceTitle\":{},\"SellerName\":{},\"MarketplaceDescription\":{},\"ListingId\":{}}},\"Spq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Status\",\"StartTime\"],\"members\":{\"Status\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"StatusMessage\":{}}}},\"Spt\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricName\":{},\"Value\":{\"type\":\"float\"},\"Timestamp\":{\"type\":\"timestamp\"}}}},\"Spy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleConfigurationName\":{},\"RuleEvaluationJobArn\":{},\"RuleEvaluationStatus\":{},\"StatusDetails\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"Sqa\":{\"type\":\"structure\",\"required\":[\"SourceArn\"],\"members\":{\"SourceArn\":{},\"SourceType\":{}}},\"Sqe\":{\"type\":\"structure\",\"required\":[\"SourceArn\"],\"members\":{\"SourceArn\":{},\"SourceType\":{}}},\"Sqg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricName\":{},\"SourceArn\":{},\"TimeStamp\":{\"type\":\"timestamp\"},\"Max\":{\"type\":\"double\"},\"Min\":{\"type\":\"double\"},\"Last\":{\"type\":\"double\"},\"Count\":{\"type\":\"integer\"},\"Avg\":{\"type\":\"double\"},\"StdDev\":{\"type\":\"double\"}}}},\"Sqq\":{\"type\":\"structure\",\"required\":[\"WorkforceName\",\"WorkforceArn\"],\"members\":{\"WorkforceName\":{},\"WorkforceArn\":{},\"LastUpdatedDate\":{\"type\":\"timestamp\"},\"SourceIpConfig\":{\"shape\":\"Sht\"},\"SubDomain\":{},\"CognitoConfig\":{\"shape\":\"Shn\"},\"OidcConfig\":{\"type\":\"structure\",\"members\":{\"ClientId\":{},\"Issuer\":{},\"AuthorizationEndpoint\":{},\"TokenEndpoint\":{},\"UserInfoEndpoint\":{},\"LogoutEndpoint\":{},\"JwksUri\":{}}},\"CreateDate\":{\"type\":\"timestamp\"}}},\"Squ\":{\"type\":\"structure\",\"required\":[\"WorkteamName\",\"MemberDefinitions\",\"WorkteamArn\",\"Description\"],\"members\":{\"WorkteamName\":{},\"MemberDefinitions\":{\"shape\":\"Si1\"},\"WorkteamArn\":{},\"WorkforceArn\":{},\"ProductListingIds\":{\"type\":\"list\",\"member\":{}},\"Description\":{},\"SubDomain\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"LastUpdatedDate\":{\"type\":\"timestamp\"},\"NotificationConfiguration\":{\"shape\":\"Si9\"}}},\"Stk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"MonitoringJobDefinitionName\",\"MonitoringJobDefinitionArn\",\"CreationTime\",\"EndpointName\"],\"members\":{\"MonitoringJobDefinitionName\":{},\"MonitoringJobDefinitionArn\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"EndpointName\":{}}}},\"Sxy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"Szo\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DeviceName\"],\"members\":{\"DeviceName\":{},\"Description\":{},\"IotThingName\":{}}}},\"Szx\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Szy\"},\"NestedFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"NestedPropertyName\",\"Filters\"],\"members\":{\"NestedPropertyName\":{},\"Filters\":{\"shape\":\"Szy\"}}}},\"SubExpressions\":{\"type\":\"list\",\"member\":{\"shape\":\"Szx\"}},\"Operator\":{}}},\"Szy\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Operator\":{},\"Value\":{}}}},\"S10a\":{\"type\":\"structure\",\"members\":{\"TrainingJobName\":{},\"TrainingJobArn\":{},\"TuningJobArn\":{},\"LabelingJobArn\":{},\"AutoMLJobArn\":{},\"ModelArtifacts\":{\"shape\":\"Slg\"},\"TrainingJobStatus\":{},\"SecondaryStatus\":{},\"FailureReason\":{},\"HyperParameters\":{\"shape\":\"S2a\"},\"AlgorithmSpecification\":{\"shape\":\"Sg2\"},\"RoleArn\":{},\"InputDataConfig\":{\"shape\":\"S2c\"},\"OutputDataConfig\":{\"shape\":\"S2t\"},\"ResourceConfig\":{\"shape\":\"S2v\"},\"VpcConfig\":{\"shape\":\"S4x\"},\"StoppingCondition\":{\"shape\":\"S2y\"},\"CreationTime\":{\"type\":\"timestamp\"},\"TrainingStartTime\":{\"type\":\"timestamp\"},\"TrainingEndTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"SecondaryStatusTransitions\":{\"shape\":\"Spq\"},\"FinalMetricDataList\":{\"shape\":\"Spt\"},\"EnableNetworkIsolation\":{\"type\":\"boolean\"},\"EnableInterContainerTrafficEncryption\":{\"type\":\"boolean\"},\"EnableManagedSpotTraining\":{\"type\":\"boolean\"},\"CheckpointConfig\":{\"shape\":\"Saf\"},\"TrainingTimeInSeconds\":{\"type\":\"integer\"},\"BillableTimeInSeconds\":{\"type\":\"integer\"},\"DebugHookConfig\":{\"shape\":\"Sg3\"},\"ExperimentConfig\":{\"shape\":\"Sfm\"},\"DebugRuleConfigurations\":{\"shape\":\"Sgb\"},\"TensorBoardOutputConfig\":{\"shape\":\"Sgg\"},\"DebugRuleEvaluationStatuses\":{\"shape\":\"Spy\"},\"Environment\":{\"shape\":\"Sgm\"},\"Tags\":{\"shape\":\"S7\"}}},\"S11a\":{\"type\":\"list\",\"member\":{}},\"S12r\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 44955:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListActions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ActionSummaries\"},\"ListAlgorithms\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AlgorithmSummaryList\"},\"ListAppImageConfigs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AppImageConfigs\"},\"ListApps\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Apps\"},\"ListArtifacts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ArtifactSummaries\"},\"ListAssociations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AssociationSummaries\"},\"ListAutoMLJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"AutoMLJobSummaries\"},\"ListCandidatesForAutoMLJob\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Candidates\"},\"ListCodeRepositories\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"CodeRepositorySummaryList\"},\"ListCompilationJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"CompilationJobSummaries\"},\"ListContexts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ContextSummaries\"},\"ListDataQualityJobDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"JobDefinitionSummaries\"},\"ListDeviceFleets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DeviceFleetSummaries\"},\"ListDevices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"DeviceSummaries\"},\"ListDomains\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Domains\"},\"ListEdgePackagingJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"EdgePackagingJobSummaries\"},\"ListEndpointConfigs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"EndpointConfigs\"},\"ListEndpoints\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Endpoints\"},\"ListExperiments\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ExperimentSummaries\"},\"ListFeatureGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FeatureGroupSummaries\"},\"ListFlowDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"FlowDefinitionSummaries\"},\"ListHumanTaskUis\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"HumanTaskUiSummaries\"},\"ListHyperParameterTuningJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"HyperParameterTuningJobSummaries\"},\"ListImageVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ImageVersions\"},\"ListImages\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Images\"},\"ListLabelingJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"LabelingJobSummaryList\"},\"ListLabelingJobsForWorkteam\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"LabelingJobSummaryList\"},\"ListModelBiasJobDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"JobDefinitionSummaries\"},\"ListModelExplainabilityJobDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"JobDefinitionSummaries\"},\"ListModelPackageGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ModelPackageGroupSummaryList\"},\"ListModelPackages\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ModelPackageSummaryList\"},\"ListModelQualityJobDefinitions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"JobDefinitionSummaries\"},\"ListModels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Models\"},\"ListMonitoringExecutions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"MonitoringExecutionSummaries\"},\"ListMonitoringSchedules\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"MonitoringScheduleSummaries\"},\"ListNotebookInstanceLifecycleConfigs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"NotebookInstanceLifecycleConfigs\"},\"ListNotebookInstances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"NotebookInstances\"},\"ListPipelineExecutionSteps\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"PipelineExecutionSteps\"},\"ListPipelineExecutions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"PipelineExecutionSummaries\"},\"ListPipelineParametersForExecution\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"PipelineParameters\"},\"ListPipelines\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"PipelineSummaries\"},\"ListProcessingJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"ProcessingJobSummaries\"},\"ListProjects\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSubscribedWorkteams\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"SubscribedWorkteams\"},\"ListTags\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Tags\"},\"ListTrainingJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TrainingJobSummaries\"},\"ListTrainingJobsForHyperParameterTuningJob\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TrainingJobSummaries\"},\"ListTransformJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TransformJobSummaries\"},\"ListTrialComponents\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TrialComponentSummaries\"},\"ListTrials\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"TrialSummaries\"},\"ListUserProfiles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"UserProfiles\"},\"ListWorkforces\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Workforces\"},\"ListWorkteams\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Workteams\"},\"Search\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"Results\"}}}");

/***/ }),

/***/ 50026:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"NotebookInstanceInService\":{\"delay\":30,\"maxAttempts\":60,\"operation\":\"DescribeNotebookInstance\",\"acceptors\":[{\"expected\":\"InService\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"NotebookInstanceStatus\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"NotebookInstanceStatus\"}]},\"NotebookInstanceStopped\":{\"delay\":30,\"operation\":\"DescribeNotebookInstance\",\"maxAttempts\":60,\"acceptors\":[{\"expected\":\"Stopped\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"NotebookInstanceStatus\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"NotebookInstanceStatus\"}]},\"NotebookInstanceDeleted\":{\"delay\":30,\"maxAttempts\":60,\"operation\":\"DescribeNotebookInstance\",\"acceptors\":[{\"expected\":\"ValidationException\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"NotebookInstanceStatus\"}]},\"TrainingJobCompletedOrStopped\":{\"delay\":120,\"maxAttempts\":180,\"operation\":\"DescribeTrainingJob\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"TrainingJobStatus\"},{\"expected\":\"Stopped\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"TrainingJobStatus\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"TrainingJobStatus\"},{\"expected\":\"ValidationException\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"EndpointInService\":{\"delay\":30,\"maxAttempts\":120,\"operation\":\"DescribeEndpoint\",\"acceptors\":[{\"expected\":\"InService\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"EndpointStatus\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"EndpointStatus\"},{\"expected\":\"ValidationException\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"EndpointDeleted\":{\"delay\":30,\"maxAttempts\":60,\"operation\":\"DescribeEndpoint\",\"acceptors\":[{\"expected\":\"ValidationException\",\"matcher\":\"error\",\"state\":\"success\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"EndpointStatus\"}]},\"TransformJobCompletedOrStopped\":{\"delay\":60,\"maxAttempts\":60,\"operation\":\"DescribeTransformJob\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"TransformJobStatus\"},{\"expected\":\"Stopped\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"TransformJobStatus\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"TransformJobStatus\"},{\"expected\":\"ValidationException\",\"matcher\":\"error\",\"state\":\"failure\"}]},\"ProcessingJobCompletedOrStopped\":{\"delay\":60,\"maxAttempts\":60,\"operation\":\"DescribeProcessingJob\",\"acceptors\":[{\"expected\":\"Completed\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"ProcessingJobStatus\"},{\"expected\":\"Stopped\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"ProcessingJobStatus\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"ProcessingJobStatus\"},{\"expected\":\"ValidationException\",\"matcher\":\"error\",\"state\":\"failure\"}]}}}");

/***/ }),

/***/ 60302:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-11-07\",\"endpointPrefix\":\"a2i-runtime.sagemaker\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Augmented AI Runtime\",\"serviceId\":\"SageMaker A2I Runtime\",\"signatureVersion\":\"v4\",\"signingName\":\"sagemaker\",\"uid\":\"sagemaker-a2i-runtime-2019-11-07\"},\"operations\":{\"DeleteHumanLoop\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/human-loops/{HumanLoopName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HumanLoopName\"],\"members\":{\"HumanLoopName\":{\"location\":\"uri\",\"locationName\":\"HumanLoopName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeHumanLoop\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/human-loops/{HumanLoopName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"HumanLoopName\"],\"members\":{\"HumanLoopName\":{\"location\":\"uri\",\"locationName\":\"HumanLoopName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"CreationTime\",\"HumanLoopStatus\",\"HumanLoopName\",\"HumanLoopArn\",\"FlowDefinitionArn\"],\"members\":{\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"FailureCode\":{},\"HumanLoopStatus\":{},\"HumanLoopName\":{},\"HumanLoopArn\":{},\"FlowDefinitionArn\":{},\"HumanLoopOutput\":{\"type\":\"structure\",\"required\":[\"OutputS3Uri\"],\"members\":{\"OutputS3Uri\":{}}}}}},\"ListHumanLoops\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/human-loops\"},\"input\":{\"type\":\"structure\",\"required\":[\"FlowDefinitionArn\"],\"members\":{\"CreationTimeAfter\":{\"location\":\"querystring\",\"locationName\":\"CreationTimeAfter\",\"type\":\"timestamp\"},\"CreationTimeBefore\":{\"location\":\"querystring\",\"locationName\":\"CreationTimeBefore\",\"type\":\"timestamp\"},\"FlowDefinitionArn\":{\"location\":\"querystring\",\"locationName\":\"FlowDefinitionArn\"},\"SortOrder\":{\"location\":\"querystring\",\"locationName\":\"SortOrder\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"HumanLoopSummaries\"],\"members\":{\"HumanLoopSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"HumanLoopName\":{},\"HumanLoopStatus\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"FlowDefinitionArn\":{}}}},\"NextToken\":{}}}},\"StartHumanLoop\":{\"http\":{\"requestUri\":\"/human-loops\"},\"input\":{\"type\":\"structure\",\"required\":[\"HumanLoopName\",\"FlowDefinitionArn\",\"HumanLoopInput\"],\"members\":{\"HumanLoopName\":{},\"FlowDefinitionArn\":{},\"HumanLoopInput\":{\"type\":\"structure\",\"required\":[\"InputContent\"],\"members\":{\"InputContent\":{}}},\"DataAttributes\":{\"type\":\"structure\",\"required\":[\"ContentClassifiers\"],\"members\":{\"ContentClassifiers\":{\"type\":\"list\",\"member\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"HumanLoopArn\":{}}}},\"StopHumanLoop\":{\"http\":{\"requestUri\":\"/human-loops/stop\"},\"input\":{\"type\":\"structure\",\"required\":[\"HumanLoopName\"],\"members\":{\"HumanLoopName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{}}");

/***/ }),

/***/ 58181:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListHumanLoops\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"result_key\":\"HumanLoopSummaries\"}}}");

/***/ }),

/***/ 48750:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-09-23\",\"endpointPrefix\":\"edge.sagemaker\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon Sagemaker Edge Manager\",\"serviceId\":\"Sagemaker Edge\",\"signatureVersion\":\"v4\",\"signingName\":\"sagemaker\",\"uid\":\"sagemaker-edge-2020-09-23\"},\"operations\":{\"GetDeviceRegistration\":{\"http\":{\"requestUri\":\"/GetDeviceRegistration\"},\"input\":{\"type\":\"structure\",\"required\":[\"DeviceName\",\"DeviceFleetName\"],\"members\":{\"DeviceName\":{},\"DeviceFleetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceRegistration\":{},\"CacheTTL\":{}}}},\"SendHeartbeat\":{\"http\":{\"requestUri\":\"/SendHeartbeat\"},\"input\":{\"type\":\"structure\",\"required\":[\"AgentVersion\",\"DeviceName\",\"DeviceFleetName\"],\"members\":{\"AgentMetrics\":{\"shape\":\"S8\"},\"Models\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ModelName\":{},\"ModelVersion\":{},\"LatestSampleTime\":{\"type\":\"timestamp\"},\"LatestInference\":{\"type\":\"timestamp\"},\"ModelMetrics\":{\"shape\":\"S8\"}}}},\"AgentVersion\":{},\"DeviceName\":{},\"DeviceFleetName\":{}}}}},\"shapes\":{\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Dimension\":{},\"MetricName\":{},\"Value\":{\"type\":\"double\"},\"Timestamp\":{\"type\":\"timestamp\"}}}}}}");

/***/ }),

/***/ 2769:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 98420:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-07-01\",\"endpointPrefix\":\"featurestore-runtime.sagemaker\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon SageMaker Feature Store Runtime\",\"serviceId\":\"SageMaker FeatureStore Runtime\",\"signatureVersion\":\"v4\",\"signingName\":\"sagemaker\",\"uid\":\"sagemaker-featurestore-runtime-2020-07-01\"},\"operations\":{\"DeleteRecord\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/FeatureGroup/{FeatureGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\",\"RecordIdentifierValueAsString\",\"EventTime\"],\"members\":{\"FeatureGroupName\":{\"location\":\"uri\",\"locationName\":\"FeatureGroupName\"},\"RecordIdentifierValueAsString\":{\"location\":\"querystring\",\"locationName\":\"RecordIdentifierValueAsString\"},\"EventTime\":{\"location\":\"querystring\",\"locationName\":\"EventTime\"}}}},\"GetRecord\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/FeatureGroup/{FeatureGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\",\"RecordIdentifierValueAsString\"],\"members\":{\"FeatureGroupName\":{\"location\":\"uri\",\"locationName\":\"FeatureGroupName\"},\"RecordIdentifierValueAsString\":{\"location\":\"querystring\",\"locationName\":\"RecordIdentifierValueAsString\"},\"FeatureNames\":{\"location\":\"querystring\",\"locationName\":\"FeatureName\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Record\":{\"shape\":\"S8\"}}}},\"PutRecord\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/FeatureGroup/{FeatureGroupName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"FeatureGroupName\",\"Record\"],\"members\":{\"FeatureGroupName\":{\"location\":\"uri\",\"locationName\":\"FeatureGroupName\"},\"Record\":{\"shape\":\"S8\"}}}}},\"shapes\":{\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FeatureName\",\"ValueAsString\"],\"members\":{\"FeatureName\":{},\"ValueAsString\":{}}}}}}");

/***/ }),

/***/ 45590:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 2810:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-06-28\",\"endpointPrefix\":\"savingsplans\",\"globalEndpoint\":\"savingsplans.amazonaws.com\",\"jsonVersion\":\"1.0\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AWSSavingsPlans\",\"serviceFullName\":\"AWS Savings Plans\",\"serviceId\":\"savingsplans\",\"signatureVersion\":\"v4\",\"uid\":\"savingsplans-2019-06-28\"},\"operations\":{\"CreateSavingsPlan\":{\"http\":{\"requestUri\":\"/CreateSavingsPlan\"},\"input\":{\"type\":\"structure\",\"required\":[\"savingsPlanOfferingId\",\"commitment\"],\"members\":{\"savingsPlanOfferingId\":{},\"commitment\":{},\"upfrontPaymentAmount\":{},\"purchaseTime\":{\"type\":\"timestamp\"},\"clientToken\":{\"idempotencyToken\":true},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"savingsPlanId\":{}}}},\"DeleteQueuedSavingsPlan\":{\"http\":{\"requestUri\":\"/DeleteQueuedSavingsPlan\"},\"input\":{\"type\":\"structure\",\"required\":[\"savingsPlanId\"],\"members\":{\"savingsPlanId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeSavingsPlanRates\":{\"http\":{\"requestUri\":\"/DescribeSavingsPlanRates\"},\"input\":{\"type\":\"structure\",\"required\":[\"savingsPlanId\"],\"members\":{\"savingsPlanId\":{},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"Sh\"}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"savingsPlanId\":{},\"searchResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"rate\":{},\"currency\":{},\"unit\":{},\"productType\":{},\"serviceCode\":{},\"usageType\":{},\"operation\":{},\"properties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}}}}}},\"nextToken\":{}}}},\"DescribeSavingsPlans\":{\"http\":{\"requestUri\":\"/DescribeSavingsPlans\"},\"input\":{\"type\":\"structure\",\"members\":{\"savingsPlanArns\":{\"type\":\"list\",\"member\":{}},\"savingsPlanIds\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"states\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"Sh\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"savingsPlans\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"offeringId\":{},\"savingsPlanId\":{},\"savingsPlanArn\":{},\"description\":{},\"start\":{},\"end\":{},\"state\":{},\"region\":{},\"ec2InstanceFamily\":{},\"savingsPlanType\":{},\"paymentOption\":{},\"productTypes\":{\"shape\":\"S1e\"},\"currency\":{},\"commitment\":{},\"upfrontPaymentAmount\":{},\"recurringPaymentAmount\":{},\"termDurationInSeconds\":{\"type\":\"long\"},\"tags\":{\"shape\":\"S6\"}}}},\"nextToken\":{}}}},\"DescribeSavingsPlansOfferingRates\":{\"http\":{\"requestUri\":\"/DescribeSavingsPlansOfferingRates\"},\"input\":{\"type\":\"structure\",\"members\":{\"savingsPlanOfferingIds\":{\"shape\":\"S1h\"},\"savingsPlanPaymentOptions\":{\"shape\":\"S1j\"},\"savingsPlanTypes\":{\"shape\":\"S1k\"},\"products\":{\"shape\":\"S1e\"},\"serviceCodes\":{\"type\":\"list\",\"member\":{}},\"usageTypes\":{\"type\":\"list\",\"member\":{}},\"operations\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S1r\"}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"searchResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"savingsPlanOffering\":{\"type\":\"structure\",\"members\":{\"offeringId\":{},\"paymentOption\":{},\"planType\":{},\"durationSeconds\":{\"type\":\"long\"},\"currency\":{},\"planDescription\":{}}},\"rate\":{},\"unit\":{},\"productType\":{},\"serviceCode\":{},\"usageType\":{},\"operation\":{},\"properties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}}}}}},\"nextToken\":{}}}},\"DescribeSavingsPlansOfferings\":{\"http\":{\"requestUri\":\"/DescribeSavingsPlansOfferings\"},\"input\":{\"type\":\"structure\",\"members\":{\"offeringIds\":{\"shape\":\"S1h\"},\"paymentOptions\":{\"shape\":\"S1j\"},\"productType\":{},\"planTypes\":{\"shape\":\"S1k\"},\"durations\":{\"type\":\"list\",\"member\":{\"type\":\"long\"}},\"currencies\":{\"type\":\"list\",\"member\":{}},\"descriptions\":{\"type\":\"list\",\"member\":{}},\"serviceCodes\":{\"type\":\"list\",\"member\":{}},\"usageTypes\":{\"type\":\"list\",\"member\":{}},\"operations\":{\"type\":\"list\",\"member\":{}},\"filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"values\":{\"shape\":\"S1r\"}}}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"searchResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"offeringId\":{},\"productTypes\":{\"shape\":\"S1e\"},\"planType\":{},\"description\":{},\"paymentOption\":{},\"durationSeconds\":{\"type\":\"long\"},\"currency\":{},\"serviceCode\":{},\"usageType\":{},\"operation\":{},\"properties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"value\":{}}}}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/ListTagsForResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S6\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/TagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/UntagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S6\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sh\":{\"type\":\"list\",\"member\":{}},\"S1e\":{\"type\":\"list\",\"member\":{}},\"S1h\":{\"type\":\"list\",\"member\":{}},\"S1j\":{\"type\":\"list\",\"member\":{}},\"S1k\":{\"type\":\"list\",\"member\":{}},\"S1r\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 56794:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 85225:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2019-12-02\",\"endpointPrefix\":\"schemas\",\"signingName\":\"schemas\",\"serviceFullName\":\"Schemas\",\"serviceId\":\"schemas\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"schemas-2019-12-02\",\"signatureVersion\":\"v4\"},\"operations\":{\"CreateDiscoverer\":{\"http\":{\"requestUri\":\"/v1/discoverers\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"SourceArn\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}},\"required\":[\"SourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"DiscovererArn\":{},\"DiscovererId\":{},\"SourceArn\":{},\"State\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"CreateRegistry\":{\"http\":{\"requestUri\":\"/v1/registries/name/{registryName}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}},\"required\":[\"RegistryName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"RegistryArn\":{},\"RegistryName\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"CreateSchema\":{\"http\":{\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Content\":{},\"Description\":{},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"Type\":{}},\"required\":[\"RegistryName\",\"SchemaName\",\"Type\",\"Content\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"LastModified\":{\"shape\":\"Se\"},\"SchemaArn\":{},\"SchemaName\":{},\"SchemaVersion\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"Type\":{},\"VersionCreatedDate\":{\"shape\":\"Se\"}}}},\"DeleteDiscoverer\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/discoverers/id/{discovererId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"DiscovererId\":{\"location\":\"uri\",\"locationName\":\"discovererId\"}},\"required\":[\"DiscovererId\"]}},\"DeleteRegistry\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/registries/name/{registryName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"}},\"required\":[\"RegistryName\"]}},\"DeleteResourcePolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/policy\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"querystring\",\"locationName\":\"registryName\"}}}},\"DeleteSchema\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"}},\"required\":[\"RegistryName\",\"SchemaName\"]}},\"DeleteSchemaVersion\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}/version/{schemaVersion}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"SchemaVersion\":{\"location\":\"uri\",\"locationName\":\"schemaVersion\"}},\"required\":[\"SchemaVersion\",\"RegistryName\",\"SchemaName\"]}},\"DescribeCodeBinding\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}/language/{language}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Language\":{\"location\":\"uri\",\"locationName\":\"language\"},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"SchemaVersion\":{\"location\":\"querystring\",\"locationName\":\"schemaVersion\"}},\"required\":[\"RegistryName\",\"SchemaName\",\"Language\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CreationDate\":{\"shape\":\"Se\"},\"LastModified\":{\"shape\":\"Se\"},\"SchemaVersion\":{},\"Status\":{}}}},\"DescribeDiscoverer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/discoverers/id/{discovererId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DiscovererId\":{\"location\":\"uri\",\"locationName\":\"discovererId\"}},\"required\":[\"DiscovererId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"DiscovererArn\":{},\"DiscovererId\":{},\"SourceArn\":{},\"State\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"DescribeRegistry\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"}},\"required\":[\"RegistryName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"RegistryArn\":{},\"RegistryName\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"DescribeSchema\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"SchemaVersion\":{\"location\":\"querystring\",\"locationName\":\"schemaVersion\"}},\"required\":[\"RegistryName\",\"SchemaName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Content\":{},\"Description\":{},\"LastModified\":{\"shape\":\"Se\"},\"SchemaArn\":{},\"SchemaName\":{},\"SchemaVersion\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"Type\":{},\"VersionCreatedDate\":{\"shape\":\"Se\"}}}},\"ExportSchema\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}/export\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"SchemaVersion\":{\"location\":\"querystring\",\"locationName\":\"schemaVersion\"},\"Type\":{\"location\":\"querystring\",\"locationName\":\"type\"}},\"required\":[\"RegistryName\",\"SchemaName\",\"Type\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Content\":{},\"SchemaArn\":{},\"SchemaName\":{},\"SchemaVersion\":{},\"Type\":{}}}},\"GetCodeBindingSource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}/language/{language}/source\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Language\":{\"location\":\"uri\",\"locationName\":\"language\"},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"SchemaVersion\":{\"location\":\"querystring\",\"locationName\":\"schemaVersion\"}},\"required\":[\"RegistryName\",\"SchemaName\",\"Language\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Body\":{\"type\":\"blob\"}},\"payload\":\"Body\"}},\"GetDiscoveredSchema\":{\"http\":{\"requestUri\":\"/v1/discover\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Events\":{\"type\":\"list\",\"member\":{}},\"Type\":{}},\"required\":[\"Type\",\"Events\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Content\":{}}}},\"GetResourcePolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{\"location\":\"querystring\",\"locationName\":\"registryName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"jsonvalue\":true},\"RevisionId\":{}}}},\"ListDiscoverers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/discoverers\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DiscovererIdPrefix\":{\"location\":\"querystring\",\"locationName\":\"discovererIdPrefix\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"SourceArnPrefix\":{\"location\":\"querystring\",\"locationName\":\"sourceArnPrefix\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Discoverers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DiscovererArn\":{},\"DiscovererId\":{},\"SourceArn\":{},\"State\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"NextToken\":{}}}},\"ListRegistries\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RegistryNamePrefix\":{\"location\":\"querystring\",\"locationName\":\"registryNamePrefix\"},\"Scope\":{\"location\":\"querystring\",\"locationName\":\"scope\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Registries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegistryArn\":{},\"RegistryName\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}}}}},\"ListSchemaVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"}},\"required\":[\"RegistryName\",\"SchemaName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"SchemaVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SchemaArn\":{},\"SchemaName\":{},\"SchemaVersion\":{},\"Type\":{}}}}}}},\"ListSchemas\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaNamePrefix\":{\"location\":\"querystring\",\"locationName\":\"schemaNamePrefix\"}},\"required\":[\"RegistryName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Schemas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LastModified\":{\"shape\":\"Se\"},\"SchemaArn\":{},\"SchemaName\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"VersionCount\":{\"type\":\"long\"}}}}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"}},\"required\":[\"ResourceArn\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"PutCodeBinding\":{\"http\":{\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}/language/{language}\",\"responseCode\":202},\"input\":{\"type\":\"structure\",\"members\":{\"Language\":{\"location\":\"uri\",\"locationName\":\"language\"},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"SchemaVersion\":{\"location\":\"querystring\",\"locationName\":\"schemaVersion\"}},\"required\":[\"RegistryName\",\"SchemaName\",\"Language\"]},\"output\":{\"type\":\"structure\",\"members\":{\"CreationDate\":{\"shape\":\"Se\"},\"LastModified\":{\"shape\":\"Se\"},\"SchemaVersion\":{},\"Status\":{}}}},\"PutResourcePolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"jsonvalue\":true},\"RegistryName\":{\"location\":\"querystring\",\"locationName\":\"registryName\"},\"RevisionId\":{}},\"required\":[\"Policy\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{\"jsonvalue\":true},\"RevisionId\":{}}}},\"SearchSchemas\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/search\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Keywords\":{\"location\":\"querystring\",\"locationName\":\"keywords\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"}},\"required\":[\"RegistryName\",\"Keywords\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Schemas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegistryName\":{},\"SchemaArn\":{},\"SchemaName\":{},\"SchemaVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreatedDate\":{\"shape\":\"Se\"},\"SchemaVersion\":{},\"Type\":{}}}}}}}}}},\"StartDiscoverer\":{\"http\":{\"requestUri\":\"/v1/discoverers/id/{discovererId}/start\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DiscovererId\":{\"location\":\"uri\",\"locationName\":\"discovererId\"}},\"required\":[\"DiscovererId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DiscovererId\":{},\"State\":{}}}},\"StopDiscoverer\":{\"http\":{\"requestUri\":\"/v1/discoverers/id/{discovererId}/stop\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"DiscovererId\":{\"location\":\"uri\",\"locationName\":\"discovererId\"}},\"required\":[\"DiscovererId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"DiscovererId\":{},\"State\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}},\"required\":[\"ResourceArn\",\"Tags\"]}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resource-arn}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resource-arn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}},\"required\":[\"TagKeys\",\"ResourceArn\"]}},\"UpdateDiscoverer\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/discoverers/id/{discovererId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"DiscovererId\":{\"location\":\"uri\",\"locationName\":\"discovererId\"}},\"required\":[\"DiscovererId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"DiscovererArn\":{},\"DiscovererId\":{},\"SourceArn\":{},\"State\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"UpdateRegistry\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/registries/name/{registryName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"}},\"required\":[\"RegistryName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"RegistryArn\":{},\"RegistryName\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"}}}},\"UpdateSchema\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/registries/name/{registryName}/schemas/name/{schemaName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ClientTokenId\":{\"idempotencyToken\":true},\"Content\":{},\"Description\":{},\"RegistryName\":{\"location\":\"uri\",\"locationName\":\"registryName\"},\"SchemaName\":{\"location\":\"uri\",\"locationName\":\"schemaName\"},\"Type\":{}},\"required\":[\"RegistryName\",\"SchemaName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"LastModified\":{\"shape\":\"Se\"},\"SchemaArn\":{},\"SchemaName\":{},\"SchemaVersion\":{},\"Tags\":{\"shape\":\"S4\",\"locationName\":\"tags\"},\"Type\":{},\"VersionCreatedDate\":{\"shape\":\"Se\"}}}}},\"shapes\":{\"S4\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Se\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"}}}");

/***/ }),

/***/ 50738:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDiscoverers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Discoverers\"},\"ListRegistries\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Registries\"},\"ListSchemaVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"SchemaVersions\"},\"ListSchemas\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Schemas\"},\"SearchSchemas\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"Limit\",\"result_key\":\"Schemas\"}}}");

/***/ }),

/***/ 34671:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"CodeBindingExists\":{\"description\":\"Wait until code binding is generated\",\"delay\":2,\"operation\":\"DescribeCodeBinding\",\"maxAttempts\":30,\"acceptors\":[{\"expected\":\"CREATE_COMPLETE\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Status\"},{\"expected\":\"CREATE_IN_PROGRESS\",\"matcher\":\"path\",\"state\":\"retry\",\"argument\":\"Status\"},{\"expected\":\"CREATE_FAILED\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Status\"},{\"matcher\":\"error\",\"expected\":\"NotFoundException\",\"state\":\"failure\"}]}}}");

/***/ }),

/***/ 96016:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2009-04-15\",\"endpointPrefix\":\"sdb\",\"serviceFullName\":\"Amazon SimpleDB\",\"serviceId\":\"SimpleDB\",\"signatureVersion\":\"v2\",\"xmlNamespace\":\"http://sdb.amazonaws.com/doc/2009-04-15/\",\"protocol\":\"query\"},\"operations\":{\"BatchDeleteAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Items\"],\"members\":{\"DomainName\":{},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Item\",\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"locationName\":\"ItemName\"},\"Attributes\":{\"shape\":\"S5\"}}},\"flattened\":true}}}},\"BatchPutAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"Items\"],\"members\":{\"DomainName\":{},\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Item\",\"type\":\"structure\",\"required\":[\"Name\",\"Attributes\"],\"members\":{\"Name\":{\"locationName\":\"ItemName\"},\"Attributes\":{\"shape\":\"Sa\"}}},\"flattened\":true}}}},\"CreateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}}},\"DeleteAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ItemName\"],\"members\":{\"DomainName\":{},\"ItemName\":{},\"Attributes\":{\"shape\":\"S5\"},\"Expected\":{\"shape\":\"Sf\"}}}},\"DeleteDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}}},\"DomainMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\"],\"members\":{\"DomainName\":{}}},\"output\":{\"resultWrapper\":\"DomainMetadataResult\",\"type\":\"structure\",\"members\":{\"ItemCount\":{\"type\":\"integer\"},\"ItemNamesSizeBytes\":{\"type\":\"long\"},\"AttributeNameCount\":{\"type\":\"integer\"},\"AttributeNamesSizeBytes\":{\"type\":\"long\"},\"AttributeValueCount\":{\"type\":\"integer\"},\"AttributeValuesSizeBytes\":{\"type\":\"long\"},\"Timestamp\":{\"type\":\"integer\"}}}},\"GetAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ItemName\"],\"members\":{\"DomainName\":{},\"ItemName\":{},\"AttributeNames\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeName\"},\"flattened\":true},\"ConsistentRead\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"GetAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"So\"}}}},\"ListDomains\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxNumberOfDomains\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListDomainsResult\",\"type\":\"structure\",\"members\":{\"DomainNames\":{\"type\":\"list\",\"member\":{\"locationName\":\"DomainName\"},\"flattened\":true},\"NextToken\":{}}}},\"PutAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"ItemName\",\"Attributes\"],\"members\":{\"DomainName\":{},\"ItemName\":{},\"Attributes\":{\"shape\":\"Sa\"},\"Expected\":{\"shape\":\"Sf\"}}}},\"Select\":{\"input\":{\"type\":\"structure\",\"required\":[\"SelectExpression\"],\"members\":{\"SelectExpression\":{},\"NextToken\":{},\"ConsistentRead\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"SelectResult\",\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"locationName\":\"Item\",\"type\":\"structure\",\"required\":[\"Name\",\"Attributes\"],\"members\":{\"Name\":{},\"AlternateNameEncoding\":{},\"Attributes\":{\"shape\":\"So\"}}},\"flattened\":true},\"NextToken\":{}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"locationName\":\"Attribute\",\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Value\":{}}},\"flattened\":true},\"Sa\":{\"type\":\"list\",\"member\":{\"locationName\":\"Attribute\",\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{},\"Replace\":{\"type\":\"boolean\"}}},\"flattened\":true},\"Sf\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{},\"Exists\":{\"type\":\"boolean\"}}},\"So\":{\"type\":\"list\",\"member\":{\"locationName\":\"Attribute\",\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"AlternateNameEncoding\":{},\"Value\":{},\"AlternateValueEncoding\":{}}},\"flattened\":true}}}");

/***/ }),

/***/ 73820:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDomains\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxNumberOfDomains\",\"result_key\":\"DomainNames\"},\"Select\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Items\"}}}");

/***/ }),

/***/ 97209:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-17\",\"endpointPrefix\":\"secretsmanager\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Secrets Manager\",\"serviceId\":\"Secrets Manager\",\"signatureVersion\":\"v4\",\"signingName\":\"secretsmanager\",\"targetPrefix\":\"secretsmanager\",\"uid\":\"secretsmanager-2017-10-17\"},\"operations\":{\"CancelRotateSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"VersionId\":{}}}},\"CreateSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Description\":{},\"KmsKeyId\":{},\"SecretBinary\":{\"shape\":\"Sc\"},\"SecretString\":{\"shape\":\"Sd\"},\"Tags\":{\"shape\":\"Se\"},\"AddReplicaRegions\":{\"shape\":\"Si\"},\"ForceOverwriteReplicaSecret\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"VersionId\":{},\"ReplicationStatus\":{\"shape\":\"Sn\"}}}},\"DeleteResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{}}}},\"DeleteSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{},\"RecoveryWindowInDays\":{\"type\":\"long\"},\"ForceDeleteWithoutRecovery\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"DeletionDate\":{\"type\":\"timestamp\"}}}},\"DescribeSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"Description\":{},\"KmsKeyId\":{},\"RotationEnabled\":{\"type\":\"boolean\"},\"RotationLambdaARN\":{},\"RotationRules\":{\"shape\":\"S12\"},\"LastRotatedDate\":{\"type\":\"timestamp\"},\"LastChangedDate\":{\"type\":\"timestamp\"},\"LastAccessedDate\":{\"type\":\"timestamp\"},\"DeletedDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Se\"},\"VersionIdsToStages\":{\"shape\":\"S17\"},\"OwningService\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"PrimaryRegion\":{},\"ReplicationStatus\":{\"shape\":\"Sn\"}}}},\"GetRandomPassword\":{\"input\":{\"type\":\"structure\",\"members\":{\"PasswordLength\":{\"type\":\"long\"},\"ExcludeCharacters\":{},\"ExcludeNumbers\":{\"type\":\"boolean\"},\"ExcludePunctuation\":{\"type\":\"boolean\"},\"ExcludeUppercase\":{\"type\":\"boolean\"},\"ExcludeLowercase\":{\"type\":\"boolean\"},\"IncludeSpace\":{\"type\":\"boolean\"},\"RequireEachIncludedType\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RandomPassword\":{\"type\":\"string\",\"sensitive\":true}}}},\"GetResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"ResourcePolicy\":{}}}},\"GetSecretValue\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{},\"VersionId\":{},\"VersionStage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"VersionId\":{},\"SecretBinary\":{\"shape\":\"Sc\"},\"SecretString\":{\"shape\":\"Sd\"},\"VersionStages\":{\"shape\":\"S18\"},\"CreatedDate\":{\"type\":\"timestamp\"}}}},\"ListSecretVersionIds\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"IncludeDeprecated\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Versions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VersionId\":{},\"VersionStages\":{\"shape\":\"S18\"},\"LastAccessedDate\":{\"type\":\"timestamp\"},\"CreatedDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{},\"ARN\":{},\"Name\":{}}}},\"ListSecrets\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"SortOrder\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SecretList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"Description\":{},\"KmsKeyId\":{},\"RotationEnabled\":{\"type\":\"boolean\"},\"RotationLambdaARN\":{},\"RotationRules\":{\"shape\":\"S12\"},\"LastRotatedDate\":{\"type\":\"timestamp\"},\"LastChangedDate\":{\"type\":\"timestamp\"},\"LastAccessedDate\":{\"type\":\"timestamp\"},\"DeletedDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Se\"},\"SecretVersionsToStages\":{\"shape\":\"S17\"},\"OwningService\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"PrimaryRegion\":{}}}},\"NextToken\":{}}}},\"PutResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\",\"ResourcePolicy\"],\"members\":{\"SecretId\":{},\"ResourcePolicy\":{},\"BlockPublicPolicy\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{}}}},\"PutSecretValue\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"SecretBinary\":{\"shape\":\"Sc\"},\"SecretString\":{\"shape\":\"Sd\"},\"VersionStages\":{\"shape\":\"S18\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"VersionId\":{},\"VersionStages\":{\"shape\":\"S18\"}}}},\"RemoveRegionsFromReplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\",\"RemoveReplicaRegions\"],\"members\":{\"SecretId\":{},\"RemoveReplicaRegions\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"ReplicationStatus\":{\"shape\":\"Sn\"}}}},\"ReplicateSecretToRegions\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\",\"AddReplicaRegions\"],\"members\":{\"SecretId\":{},\"AddReplicaRegions\":{\"shape\":\"Si\"},\"ForceOverwriteReplicaSecret\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"ReplicationStatus\":{\"shape\":\"Sn\"}}}},\"RestoreSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{}}}},\"RotateSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"RotationLambdaARN\":{},\"RotationRules\":{\"shape\":\"S12\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"VersionId\":{}}}},\"StopReplicationToReplica\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\",\"Tags\"],\"members\":{\"SecretId\":{},\"Tags\":{\"shape\":\"Se\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\",\"TagKeys\"],\"members\":{\"SecretId\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"UpdateSecret\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\"],\"members\":{\"SecretId\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Description\":{},\"KmsKeyId\":{},\"SecretBinary\":{\"shape\":\"Sc\"},\"SecretString\":{\"shape\":\"Sd\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{},\"VersionId\":{}}}},\"UpdateSecretVersionStage\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecretId\",\"VersionStage\"],\"members\":{\"SecretId\":{},\"VersionStage\":{},\"RemoveFromVersionId\":{},\"MoveToVersionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ARN\":{},\"Name\":{}}}},\"ValidateResourcePolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourcePolicy\"],\"members\":{\"SecretId\":{},\"ResourcePolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PolicyValidationPassed\":{\"type\":\"boolean\"},\"ValidationErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CheckName\":{},\"ErrorMessage\":{}}}}}}}},\"shapes\":{\"Sc\":{\"type\":\"blob\",\"sensitive\":true},\"Sd\":{\"type\":\"string\",\"sensitive\":true},\"Se\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Si\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Region\":{},\"KmsKeyId\":{}}}},\"Sn\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Region\":{},\"KmsKeyId\":{},\"Status\":{},\"StatusMessage\":{},\"LastAccessedDate\":{\"type\":\"timestamp\"}}}},\"S12\":{\"type\":\"structure\",\"members\":{\"AutomaticallyAfterDays\":{\"type\":\"long\"}}},\"S17\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S18\"}},\"S18\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 38503:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListSecretVersionIds\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListSecrets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 40359:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-10-26\",\"endpointPrefix\":\"securityhub\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS SecurityHub\",\"serviceId\":\"SecurityHub\",\"signatureVersion\":\"v4\",\"signingName\":\"securityhub\",\"uid\":\"securityhub-2018-10-26\"},\"operations\":{\"AcceptInvitation\":{\"http\":{\"requestUri\":\"/master\"},\"input\":{\"type\":\"structure\",\"required\":[\"MasterId\",\"InvitationId\"],\"members\":{\"MasterId\":{},\"InvitationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchDisableStandards\":{\"http\":{\"requestUri\":\"/standards/deregister\"},\"input\":{\"type\":\"structure\",\"required\":[\"StandardsSubscriptionArns\"],\"members\":{\"StandardsSubscriptionArns\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StandardsSubscriptions\":{\"shape\":\"S7\"}}}},\"BatchEnableStandards\":{\"http\":{\"requestUri\":\"/standards/register\"},\"input\":{\"type\":\"structure\",\"required\":[\"StandardsSubscriptionRequests\"],\"members\":{\"StandardsSubscriptionRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StandardsArn\"],\"members\":{\"StandardsArn\":{},\"StandardsInput\":{\"shape\":\"S9\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"StandardsSubscriptions\":{\"shape\":\"S7\"}}}},\"BatchImportFindings\":{\"http\":{\"requestUri\":\"/findings/import\"},\"input\":{\"type\":\"structure\",\"required\":[\"Findings\"],\"members\":{\"Findings\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}}}},\"output\":{\"type\":\"structure\",\"required\":[\"FailedCount\",\"SuccessCount\"],\"members\":{\"FailedCount\":{\"type\":\"integer\"},\"SuccessCount\":{\"type\":\"integer\"},\"FailedFindings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"ErrorCode\",\"ErrorMessage\"],\"members\":{\"Id\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"BatchUpdateFindings\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/findings/batchupdate\"},\"input\":{\"type\":\"structure\",\"required\":[\"FindingIdentifiers\"],\"members\":{\"FindingIdentifiers\":{\"shape\":\"S9s\"},\"Note\":{\"shape\":\"S9u\"},\"Severity\":{\"type\":\"structure\",\"members\":{\"Normalized\":{\"type\":\"integer\"},\"Product\":{\"type\":\"double\"},\"Label\":{}}},\"VerificationState\":{},\"Confidence\":{\"type\":\"integer\"},\"Criticality\":{\"type\":\"integer\"},\"Types\":{\"shape\":\"Si\"},\"UserDefinedFields\":{\"shape\":\"Sp\"},\"Workflow\":{\"type\":\"structure\",\"members\":{\"Status\":{}}},\"RelatedFindings\":{\"shape\":\"S8u\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProcessedFindings\",\"UnprocessedFindings\"],\"members\":{\"ProcessedFindings\":{\"shape\":\"S9s\"},\"UnprocessedFindings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"FindingIdentifier\",\"ErrorCode\",\"ErrorMessage\"],\"members\":{\"FindingIdentifier\":{\"shape\":\"S9t\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}}},\"CreateActionTarget\":{\"http\":{\"requestUri\":\"/actionTargets\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Description\",\"Id\"],\"members\":{\"Name\":{},\"Description\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ActionTargetArn\"],\"members\":{\"ActionTargetArn\":{}}}},\"CreateInsight\":{\"http\":{\"requestUri\":\"/insights\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Filters\",\"GroupByAttribute\"],\"members\":{\"Name\":{},\"Filters\":{\"shape\":\"Sa3\"},\"GroupByAttribute\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"InsightArn\"],\"members\":{\"InsightArn\":{}}}},\"CreateMembers\":{\"http\":{\"requestUri\":\"/members\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountDetails\"],\"members\":{\"AccountDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AccountId\"],\"members\":{\"AccountId\":{},\"Email\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedAccounts\":{\"shape\":\"Saq\"}}}},\"DeclineInvitations\":{\"http\":{\"requestUri\":\"/invitations/decline\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"Sat\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedAccounts\":{\"shape\":\"Saq\"}}}},\"DeleteActionTarget\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/actionTargets/{ActionTargetArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ActionTargetArn\"],\"members\":{\"ActionTargetArn\":{\"location\":\"uri\",\"locationName\":\"ActionTargetArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ActionTargetArn\"],\"members\":{\"ActionTargetArn\":{}}}},\"DeleteInsight\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/insights/{InsightArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InsightArn\"],\"members\":{\"InsightArn\":{\"location\":\"uri\",\"locationName\":\"InsightArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"InsightArn\"],\"members\":{\"InsightArn\":{}}}},\"DeleteInvitations\":{\"http\":{\"requestUri\":\"/invitations/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"Sat\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedAccounts\":{\"shape\":\"Saq\"}}}},\"DeleteMembers\":{\"http\":{\"requestUri\":\"/members/delete\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"Sat\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedAccounts\":{\"shape\":\"Saq\"}}}},\"DescribeActionTargets\":{\"http\":{\"requestUri\":\"/actionTargets/get\"},\"input\":{\"type\":\"structure\",\"members\":{\"ActionTargetArns\":{\"shape\":\"Sb4\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ActionTargets\"],\"members\":{\"ActionTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ActionTargetArn\",\"Name\",\"Description\"],\"members\":{\"ActionTargetArn\":{},\"Name\":{},\"Description\":{}}}},\"NextToken\":{}}}},\"DescribeHub\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/accounts\"},\"input\":{\"type\":\"structure\",\"members\":{\"HubArn\":{\"location\":\"querystring\",\"locationName\":\"HubArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"HubArn\":{},\"SubscribedAt\":{},\"AutoEnableControls\":{\"type\":\"boolean\"}}}},\"DescribeOrganizationConfiguration\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/organization/configuration\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AutoEnable\":{\"type\":\"boolean\"},\"MemberAccountLimitReached\":{\"type\":\"boolean\"}}}},\"DescribeProducts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/products\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"ProductArn\":{\"location\":\"querystring\",\"locationName\":\"ProductArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Products\"],\"members\":{\"Products\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProductArn\"],\"members\":{\"ProductArn\":{},\"ProductName\":{},\"CompanyName\":{},\"Description\":{},\"Categories\":{\"type\":\"list\",\"member\":{}},\"IntegrationTypes\":{\"type\":\"list\",\"member\":{}},\"MarketplaceUrl\":{},\"ActivationUrl\":{},\"ProductSubscriptionResourcePolicy\":{}}}},\"NextToken\":{}}}},\"DescribeStandards\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/standards\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Standards\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StandardsArn\":{},\"Name\":{},\"Description\":{},\"EnabledByDefault\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"DescribeStandardsControls\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/standards/controls/{StandardsSubscriptionArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"StandardsSubscriptionArn\"],\"members\":{\"StandardsSubscriptionArn\":{\"location\":\"uri\",\"locationName\":\"StandardsSubscriptionArn\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Controls\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StandardsControlArn\":{},\"ControlStatus\":{},\"DisabledReason\":{},\"ControlStatusUpdatedAt\":{\"shape\":\"Sbu\"},\"ControlId\":{},\"Title\":{},\"Description\":{},\"RemediationUrl\":{},\"SeverityRating\":{},\"RelatedRequirements\":{\"shape\":\"S8m\"}}}},\"NextToken\":{}}}},\"DisableImportFindingsForProduct\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/productSubscriptions/{ProductSubscriptionArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProductSubscriptionArn\"],\"members\":{\"ProductSubscriptionArn\":{\"location\":\"uri\",\"locationName\":\"ProductSubscriptionArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/organization/admin/disable\"},\"input\":{\"type\":\"structure\",\"required\":[\"AdminAccountId\"],\"members\":{\"AdminAccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisableSecurityHub\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/accounts\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateFromMasterAccount\":{\"http\":{\"requestUri\":\"/master/disassociate\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateMembers\":{\"http\":{\"requestUri\":\"/members/disassociate\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"Sat\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableImportFindingsForProduct\":{\"http\":{\"requestUri\":\"/productSubscriptions\"},\"input\":{\"type\":\"structure\",\"required\":[\"ProductArn\"],\"members\":{\"ProductArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductSubscriptionArn\":{}}}},\"EnableOrganizationAdminAccount\":{\"http\":{\"requestUri\":\"/organization/admin/enable\"},\"input\":{\"type\":\"structure\",\"required\":[\"AdminAccountId\"],\"members\":{\"AdminAccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableSecurityHub\":{\"http\":{\"requestUri\":\"/accounts\"},\"input\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Scb\"},\"EnableDefaultStandards\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetEnabledStandards\":{\"http\":{\"requestUri\":\"/standards/get\"},\"input\":{\"type\":\"structure\",\"members\":{\"StandardsSubscriptionArns\":{\"shape\":\"S5\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StandardsSubscriptions\":{\"shape\":\"S7\"},\"NextToken\":{}}}},\"GetFindings\":{\"http\":{\"requestUri\":\"/findings\"},\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Sa3\"},\"SortCriteria\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Field\":{},\"SortOrder\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Findings\"],\"members\":{\"Findings\":{\"type\":\"list\",\"member\":{\"shape\":\"Sh\"}},\"NextToken\":{}}}},\"GetInsightResults\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/insights/results/{InsightArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InsightArn\"],\"members\":{\"InsightArn\":{\"location\":\"uri\",\"locationName\":\"InsightArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"InsightResults\"],\"members\":{\"InsightResults\":{\"type\":\"structure\",\"required\":[\"InsightArn\",\"GroupByAttribute\",\"ResultValues\"],\"members\":{\"InsightArn\":{},\"GroupByAttribute\":{},\"ResultValues\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GroupByAttributeValue\",\"Count\"],\"members\":{\"GroupByAttributeValue\":{},\"Count\":{\"type\":\"integer\"}}}}}}}}},\"GetInsights\":{\"http\":{\"requestUri\":\"/insights/get\"},\"input\":{\"type\":\"structure\",\"members\":{\"InsightArns\":{\"shape\":\"Sb4\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Insights\"],\"members\":{\"Insights\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"InsightArn\",\"Name\",\"Filters\",\"GroupByAttribute\"],\"members\":{\"InsightArn\":{},\"Name\":{},\"Filters\":{\"shape\":\"Sa3\"},\"GroupByAttribute\":{}}}},\"NextToken\":{}}}},\"GetInvitationsCount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitations/count\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"InvitationsCount\":{\"type\":\"integer\"}}}},\"GetMasterAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/master\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Master\":{\"shape\":\"Sd0\"}}}},\"GetMembers\":{\"http\":{\"requestUri\":\"/members/get\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"Sat\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Members\":{\"shape\":\"Sd3\"},\"UnprocessedAccounts\":{\"shape\":\"Saq\"}}}},\"InviteMembers\":{\"http\":{\"requestUri\":\"/members/invite\"},\"input\":{\"type\":\"structure\",\"required\":[\"AccountIds\"],\"members\":{\"AccountIds\":{\"shape\":\"Sat\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedAccounts\":{\"shape\":\"Saq\"}}}},\"ListEnabledProductsForImport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/productSubscriptions\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductSubscriptions\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListInvitations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/invitations\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Invitations\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd0\"}},\"NextToken\":{}}}},\"ListMembers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/members\"},\"input\":{\"type\":\"structure\",\"members\":{\"OnlyAssociated\":{\"location\":\"querystring\",\"locationName\":\"OnlyAssociated\",\"type\":\"boolean\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Members\":{\"shape\":\"Sd3\"},\"NextToken\":{}}}},\"ListOrganizationAdminAccounts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/organization/admin\"},\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AdminAccounts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"Status\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Scb\"}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"Scb\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateActionTarget\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/actionTargets/{ActionTargetArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ActionTargetArn\"],\"members\":{\"ActionTargetArn\":{\"location\":\"uri\",\"locationName\":\"ActionTargetArn\"},\"Name\":{},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFindings\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/findings\"},\"input\":{\"type\":\"structure\",\"required\":[\"Filters\"],\"members\":{\"Filters\":{\"shape\":\"Sa3\"},\"Note\":{\"shape\":\"S9u\"},\"RecordState\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateInsight\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/insights/{InsightArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"InsightArn\"],\"members\":{\"InsightArn\":{\"location\":\"uri\",\"locationName\":\"InsightArn\"},\"Name\":{},\"Filters\":{\"shape\":\"Sa3\"},\"GroupByAttribute\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateOrganizationConfiguration\":{\"http\":{\"requestUri\":\"/organization/configuration\"},\"input\":{\"type\":\"structure\",\"required\":[\"AutoEnable\"],\"members\":{\"AutoEnable\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSecurityHubConfiguration\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/accounts\"},\"input\":{\"type\":\"structure\",\"members\":{\"AutoEnableControls\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateStandardsControl\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/standards/control/{StandardsControlArn+}\"},\"input\":{\"type\":\"structure\",\"required\":[\"StandardsControlArn\"],\"members\":{\"StandardsControlArn\":{\"location\":\"uri\",\"locationName\":\"StandardsControlArn\"},\"ControlStatus\":{},\"DisabledReason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{}},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StandardsSubscriptionArn\",\"StandardsArn\",\"StandardsInput\",\"StandardsStatus\"],\"members\":{\"StandardsSubscriptionArn\":{},\"StandardsArn\":{},\"StandardsInput\":{\"shape\":\"S9\"},\"StandardsStatus\":{}}}},\"S9\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sh\":{\"type\":\"structure\",\"required\":[\"SchemaVersion\",\"Id\",\"ProductArn\",\"GeneratorId\",\"AwsAccountId\",\"CreatedAt\",\"UpdatedAt\",\"Title\",\"Description\",\"Resources\"],\"members\":{\"SchemaVersion\":{},\"Id\":{},\"ProductArn\":{},\"GeneratorId\":{},\"AwsAccountId\":{},\"Types\":{\"shape\":\"Si\"},\"FirstObservedAt\":{},\"LastObservedAt\":{},\"CreatedAt\":{},\"UpdatedAt\":{},\"Severity\":{\"type\":\"structure\",\"members\":{\"Product\":{\"type\":\"double\"},\"Label\":{},\"Normalized\":{\"type\":\"integer\"},\"Original\":{}}},\"Confidence\":{\"type\":\"integer\"},\"Criticality\":{\"type\":\"integer\"},\"Title\":{},\"Description\":{},\"Remediation\":{\"type\":\"structure\",\"members\":{\"Recommendation\":{\"type\":\"structure\",\"members\":{\"Text\":{},\"Url\":{}}}}},\"SourceUrl\":{},\"ProductFields\":{\"shape\":\"Sp\"},\"UserDefinedFields\":{\"shape\":\"Sp\"},\"Malware\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Type\":{},\"Path\":{},\"State\":{}}}},\"Network\":{\"type\":\"structure\",\"members\":{\"Direction\":{},\"Protocol\":{},\"OpenPortRange\":{\"shape\":\"Sw\"},\"SourceIpV4\":{},\"SourceIpV6\":{},\"SourcePort\":{\"type\":\"integer\"},\"SourceDomain\":{},\"SourceMac\":{},\"DestinationIpV4\":{},\"DestinationIpV6\":{},\"DestinationPort\":{\"type\":\"integer\"},\"DestinationDomain\":{}}},\"NetworkPath\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ComponentId\":{},\"ComponentType\":{},\"Egress\":{\"shape\":\"Sz\"},\"Ingress\":{\"shape\":\"Sz\"}}}},\"Process\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Path\":{},\"Pid\":{\"type\":\"integer\"},\"ParentPid\":{\"type\":\"integer\"},\"LaunchedAt\":{},\"TerminatedAt\":{}}},\"ThreatIntelIndicators\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Value\":{},\"Category\":{},\"LastObservedAt\":{},\"Source\":{},\"SourceUrl\":{}}}},\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\",\"Id\"],\"members\":{\"Type\":{},\"Id\":{},\"Partition\":{},\"Region\":{},\"ResourceRole\":{},\"Tags\":{\"shape\":\"Sp\"},\"DataClassification\":{\"type\":\"structure\",\"members\":{\"DetailedResultsLocation\":{},\"Result\":{\"type\":\"structure\",\"members\":{\"MimeType\":{},\"SizeClassified\":{\"type\":\"long\"},\"AdditionalOccurrences\":{\"type\":\"boolean\"},\"Status\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Reason\":{}}},\"SensitiveData\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Category\":{},\"Detections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Count\":{\"type\":\"long\"},\"Type\":{},\"Occurrences\":{\"shape\":\"S1k\"}}}},\"TotalCount\":{\"type\":\"long\"}}}},\"CustomDataIdentifiers\":{\"type\":\"structure\",\"members\":{\"Detections\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Count\":{\"type\":\"long\"},\"Arn\":{},\"Name\":{},\"Occurrences\":{\"shape\":\"S1k\"}}}},\"TotalCount\":{\"type\":\"long\"}}}}}}},\"Details\":{\"type\":\"structure\",\"members\":{\"AwsAutoScalingAutoScalingGroup\":{\"type\":\"structure\",\"members\":{\"LaunchConfigurationName\":{},\"LoadBalancerNames\":{\"shape\":\"S11\"},\"HealthCheckType\":{},\"HealthCheckGracePeriod\":{\"type\":\"integer\"},\"CreatedTime\":{}}},\"AwsCodeBuildProject\":{\"type\":\"structure\",\"members\":{\"EncryptionKey\":{},\"Environment\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"ImagePullCredentialsType\":{},\"RegistryCredential\":{\"type\":\"structure\",\"members\":{\"Credential\":{},\"CredentialProvider\":{}}},\"Type\":{}}},\"Name\":{},\"Source\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Location\":{},\"GitCloneDepth\":{\"type\":\"integer\"},\"InsecureSsl\":{\"type\":\"boolean\"}}},\"ServiceRole\":{},\"VpcConfig\":{\"type\":\"structure\",\"members\":{\"VpcId\":{},\"Subnets\":{\"shape\":\"S23\"},\"SecurityGroupIds\":{\"shape\":\"S23\"}}}}},\"AwsCloudFrontDistribution\":{\"type\":\"structure\",\"members\":{\"CacheBehaviors\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ViewerProtocolPolicy\":{}}}}}},\"DefaultCacheBehavior\":{\"type\":\"structure\",\"members\":{\"ViewerProtocolPolicy\":{}}},\"DefaultRootObject\":{},\"DomainName\":{},\"ETag\":{},\"LastModifiedTime\":{},\"Logging\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"Enabled\":{\"type\":\"boolean\"},\"IncludeCookies\":{\"type\":\"boolean\"},\"Prefix\":{}}},\"Origins\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"Id\":{},\"OriginPath\":{},\"S3OriginConfig\":{\"type\":\"structure\",\"members\":{\"OriginAccessIdentity\":{}}}}}}}},\"OriginGroups\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FailoverCriteria\":{\"type\":\"structure\",\"members\":{\"StatusCodes\":{\"type\":\"structure\",\"members\":{\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"Quantity\":{\"type\":\"integer\"}}}}}}}}}},\"Status\":{},\"WebAclId\":{}}},\"AwsEc2Instance\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"ImageId\":{},\"IpV4Addresses\":{\"shape\":\"S11\"},\"IpV6Addresses\":{\"shape\":\"S11\"},\"KeyName\":{},\"IamInstanceProfileArn\":{},\"VpcId\":{},\"SubnetId\":{},\"LaunchedAt\":{}}},\"AwsEc2NetworkInterface\":{\"type\":\"structure\",\"members\":{\"Attachment\":{\"type\":\"structure\",\"members\":{\"AttachTime\":{},\"AttachmentId\":{},\"DeleteOnTermination\":{\"type\":\"boolean\"},\"DeviceIndex\":{\"type\":\"integer\"},\"InstanceId\":{},\"InstanceOwnerId\":{},\"Status\":{}}},\"NetworkInterfaceId\":{},\"SecurityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupId\":{}}}},\"SourceDestCheck\":{\"type\":\"boolean\"},\"IpV6Addresses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IpV6Address\":{}}}},\"PrivateIpAddresses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PrivateIpAddress\":{},\"PrivateDnsName\":{}}}},\"PublicDnsName\":{},\"PublicIp\":{}}},\"AwsEc2SecurityGroup\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupId\":{},\"OwnerId\":{},\"VpcId\":{},\"IpPermissions\":{\"shape\":\"S2u\"},\"IpPermissionsEgress\":{\"shape\":\"S2u\"}}},\"AwsEc2Volume\":{\"type\":\"structure\",\"members\":{\"CreateTime\":{},\"Encrypted\":{\"type\":\"boolean\"},\"Size\":{\"type\":\"integer\"},\"SnapshotId\":{},\"Status\":{},\"KmsKeyId\":{},\"Attachments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttachTime\":{},\"DeleteOnTermination\":{\"type\":\"boolean\"},\"InstanceId\":{},\"Status\":{}}}}}},\"AwsEc2Vpc\":{\"type\":\"structure\",\"members\":{\"CidrBlockAssociationSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"CidrBlock\":{},\"CidrBlockState\":{}}}},\"Ipv6CidrBlockAssociationSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"Ipv6CidrBlock\":{},\"CidrBlockState\":{}}}},\"DhcpOptionsId\":{},\"State\":{}}},\"AwsEc2Eip\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"PublicIp\":{},\"AllocationId\":{},\"AssociationId\":{},\"Domain\":{},\"PublicIpv4Pool\":{},\"NetworkBorderGroup\":{},\"NetworkInterfaceId\":{},\"NetworkInterfaceOwnerId\":{},\"PrivateIpAddress\":{}}},\"AwsElbv2LoadBalancer\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ZoneName\":{},\"SubnetId\":{}}}},\"CanonicalHostedZoneId\":{},\"CreatedTime\":{},\"DNSName\":{},\"IpAddressType\":{},\"Scheme\":{},\"SecurityGroups\":{\"type\":\"list\",\"member\":{}},\"State\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Reason\":{}}},\"Type\":{},\"VpcId\":{}}},\"AwsElasticsearchDomain\":{\"type\":\"structure\",\"members\":{\"AccessPolicies\":{},\"DomainEndpointOptions\":{\"type\":\"structure\",\"members\":{\"EnforceHTTPS\":{\"type\":\"boolean\"},\"TLSSecurityPolicy\":{}}},\"DomainId\":{},\"DomainName\":{},\"Endpoint\":{},\"Endpoints\":{\"shape\":\"Sp\"},\"ElasticsearchVersion\":{},\"EncryptionAtRestOptions\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"KmsKeyId\":{}}},\"NodeToNodeEncryptionOptions\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}},\"VPCOptions\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S23\"},\"SecurityGroupIds\":{\"shape\":\"S23\"},\"SubnetIds\":{\"shape\":\"S23\"},\"VPCId\":{}}}}},\"AwsS3Bucket\":{\"type\":\"structure\",\"members\":{\"OwnerId\":{},\"OwnerName\":{},\"CreatedAt\":{},\"ServerSideEncryptionConfiguration\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplyServerSideEncryptionByDefault\":{\"type\":\"structure\",\"members\":{\"SSEAlgorithm\":{},\"KMSMasterKeyID\":{}}}}}}}},\"PublicAccessBlockConfiguration\":{\"shape\":\"S3s\"}}},\"AwsS3AccountPublicAccessBlock\":{\"shape\":\"S3s\"},\"AwsS3Object\":{\"type\":\"structure\",\"members\":{\"LastModified\":{},\"ETag\":{},\"VersionId\":{},\"ContentType\":{},\"ServerSideEncryption\":{},\"SSEKMSKeyId\":{}}},\"AwsSecretsManagerSecret\":{\"type\":\"structure\",\"members\":{\"RotationRules\":{\"type\":\"structure\",\"members\":{\"AutomaticallyAfterDays\":{\"type\":\"integer\"}}},\"RotationOccurredWithinFrequency\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"RotationEnabled\":{\"type\":\"boolean\"},\"RotationLambdaArn\":{},\"Deleted\":{\"type\":\"boolean\"},\"Name\":{},\"Description\":{}}},\"AwsIamAccessKey\":{\"type\":\"structure\",\"members\":{\"UserName\":{\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use PrincipalName instead.\"},\"Status\":{},\"CreatedAt\":{},\"PrincipalId\":{},\"PrincipalType\":{},\"PrincipalName\":{},\"AccountId\":{},\"AccessKeyId\":{},\"SessionContext\":{\"type\":\"structure\",\"members\":{\"Attributes\":{\"type\":\"structure\",\"members\":{\"MfaAuthenticated\":{\"type\":\"boolean\"},\"CreationDate\":{}}},\"SessionIssuer\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"PrincipalId\":{},\"Arn\":{},\"AccountId\":{},\"UserName\":{}}}}}}},\"AwsIamUser\":{\"type\":\"structure\",\"members\":{\"AttachedManagedPolicies\":{\"shape\":\"S42\"},\"CreateDate\":{},\"GroupList\":{\"shape\":\"S11\"},\"Path\":{},\"PermissionsBoundary\":{\"shape\":\"S44\"},\"UserId\":{},\"UserName\":{},\"UserPolicyList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{}}}}}},\"AwsIamPolicy\":{\"type\":\"structure\",\"members\":{\"AttachmentCount\":{\"type\":\"integer\"},\"CreateDate\":{},\"DefaultVersionId\":{},\"Description\":{},\"IsAttachable\":{\"type\":\"boolean\"},\"Path\":{},\"PermissionsBoundaryUsageCount\":{\"type\":\"integer\"},\"PolicyId\":{},\"PolicyName\":{},\"PolicyVersionList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VersionId\":{},\"IsDefaultVersion\":{\"type\":\"boolean\"},\"CreateDate\":{}}}},\"UpdateDate\":{}}},\"AwsApiGatewayV2Stage\":{\"type\":\"structure\",\"members\":{\"CreatedDate\":{},\"Description\":{},\"DefaultRouteSettings\":{\"shape\":\"S4b\"},\"DeploymentId\":{},\"LastUpdatedDate\":{},\"RouteSettings\":{\"shape\":\"S4b\"},\"StageName\":{},\"StageVariables\":{\"shape\":\"Sp\"},\"AccessLogSettings\":{\"shape\":\"S4c\"},\"AutoDeploy\":{\"type\":\"boolean\"},\"LastDeploymentStatusMessage\":{},\"ApiGatewayManaged\":{\"type\":\"boolean\"}}},\"AwsApiGatewayV2Api\":{\"type\":\"structure\",\"members\":{\"ApiEndpoint\":{},\"ApiId\":{},\"ApiKeySelectionExpression\":{},\"CreatedDate\":{},\"Description\":{},\"Version\":{},\"Name\":{},\"ProtocolType\":{},\"RouteSelectionExpression\":{},\"CorsConfiguration\":{\"type\":\"structure\",\"members\":{\"AllowOrigins\":{\"shape\":\"S23\"},\"AllowCredentials\":{\"type\":\"boolean\"},\"ExposeHeaders\":{\"shape\":\"S23\"},\"MaxAge\":{\"type\":\"integer\"},\"AllowMethods\":{\"shape\":\"S23\"},\"AllowHeaders\":{\"shape\":\"S23\"}}}}},\"AwsDynamoDbTable\":{\"type\":\"structure\",\"members\":{\"AttributeDefinitions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"AttributeType\":{}}}},\"BillingModeSummary\":{\"type\":\"structure\",\"members\":{\"BillingMode\":{},\"LastUpdateToPayPerRequestDateTime\":{}}},\"CreationDateTime\":{},\"GlobalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Backfilling\":{\"type\":\"boolean\"},\"IndexArn\":{},\"IndexName\":{},\"IndexSizeBytes\":{\"type\":\"long\"},\"IndexStatus\":{},\"ItemCount\":{\"type\":\"integer\"},\"KeySchema\":{\"shape\":\"S4m\"},\"Projection\":{\"shape\":\"S4o\"},\"ProvisionedThroughput\":{\"shape\":\"S4p\"}}}},\"GlobalTableVersion\":{},\"ItemCount\":{\"type\":\"integer\"},\"KeySchema\":{\"shape\":\"S4m\"},\"LatestStreamArn\":{},\"LatestStreamLabel\":{},\"LocalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexArn\":{},\"IndexName\":{},\"KeySchema\":{\"shape\":\"S4m\"},\"Projection\":{\"shape\":\"S4o\"}}}},\"ProvisionedThroughput\":{\"shape\":\"S4p\"},\"Replicas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GlobalSecondaryIndexes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IndexName\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S4w\"}}}},\"KmsMasterKeyId\":{},\"ProvisionedThroughputOverride\":{\"shape\":\"S4w\"},\"RegionName\":{},\"ReplicaStatus\":{},\"ReplicaStatusDescription\":{}}}},\"RestoreSummary\":{\"type\":\"structure\",\"members\":{\"SourceBackupArn\":{},\"SourceTableArn\":{},\"RestoreDateTime\":{},\"RestoreInProgress\":{\"type\":\"boolean\"}}},\"SseDescription\":{\"type\":\"structure\",\"members\":{\"InaccessibleEncryptionDateTime\":{},\"Status\":{},\"SseType\":{},\"KmsMasterKeyArn\":{}}},\"StreamSpecification\":{\"type\":\"structure\",\"members\":{\"StreamEnabled\":{\"type\":\"boolean\"},\"StreamViewType\":{}}},\"TableId\":{},\"TableName\":{},\"TableSizeBytes\":{\"type\":\"long\"},\"TableStatus\":{}}},\"AwsApiGatewayStage\":{\"type\":\"structure\",\"members\":{\"DeploymentId\":{},\"ClientCertificateId\":{},\"StageName\":{},\"Description\":{},\"CacheClusterEnabled\":{\"type\":\"boolean\"},\"CacheClusterSize\":{},\"CacheClusterStatus\":{},\"MethodSettings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MetricsEnabled\":{\"type\":\"boolean\"},\"LoggingLevel\":{},\"DataTraceEnabled\":{\"type\":\"boolean\"},\"ThrottlingBurstLimit\":{\"type\":\"integer\"},\"ThrottlingRateLimit\":{\"type\":\"double\"},\"CachingEnabled\":{\"type\":\"boolean\"},\"CacheTtlInSeconds\":{\"type\":\"integer\"},\"CacheDataEncrypted\":{\"type\":\"boolean\"},\"RequireAuthorizationForCacheControl\":{\"type\":\"boolean\"},\"UnauthorizedCacheControlHeaderStrategy\":{},\"HttpMethod\":{},\"ResourcePath\":{}}}},\"Variables\":{\"shape\":\"Sp\"},\"DocumentationVersion\":{},\"AccessLogSettings\":{\"shape\":\"S4c\"},\"CanarySettings\":{\"type\":\"structure\",\"members\":{\"PercentTraffic\":{\"type\":\"double\"},\"DeploymentId\":{},\"StageVariableOverrides\":{\"shape\":\"Sp\"},\"UseStageCache\":{\"type\":\"boolean\"}}},\"TracingEnabled\":{\"type\":\"boolean\"},\"CreatedDate\":{},\"LastUpdatedDate\":{},\"WebAclArn\":{}}},\"AwsApiGatewayRestApi\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"CreatedDate\":{},\"Version\":{},\"BinaryMediaTypes\":{\"shape\":\"S23\"},\"MinimumCompressionSize\":{\"type\":\"integer\"},\"ApiKeySource\":{},\"EndpointConfiguration\":{\"type\":\"structure\",\"members\":{\"Types\":{\"shape\":\"S23\"}}}}},\"AwsCloudTrailTrail\":{\"type\":\"structure\",\"members\":{\"CloudWatchLogsLogGroupArn\":{},\"CloudWatchLogsRoleArn\":{},\"HasCustomEventSelectors\":{\"type\":\"boolean\"},\"HomeRegion\":{},\"IncludeGlobalServiceEvents\":{\"type\":\"boolean\"},\"IsMultiRegionTrail\":{\"type\":\"boolean\"},\"IsOrganizationTrail\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"LogFileValidationEnabled\":{\"type\":\"boolean\"},\"Name\":{},\"S3BucketName\":{},\"S3KeyPrefix\":{},\"SnsTopicArn\":{},\"SnsTopicName\":{},\"TrailArn\":{}}},\"AwsSsmPatchCompliance\":{\"type\":\"structure\",\"members\":{\"Patch\":{\"type\":\"structure\",\"members\":{\"ComplianceSummary\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"CompliantCriticalCount\":{\"type\":\"integer\"},\"CompliantHighCount\":{\"type\":\"integer\"},\"CompliantMediumCount\":{\"type\":\"integer\"},\"ExecutionType\":{},\"NonCompliantCriticalCount\":{\"type\":\"integer\"},\"CompliantInformationalCount\":{\"type\":\"integer\"},\"NonCompliantInformationalCount\":{\"type\":\"integer\"},\"CompliantUnspecifiedCount\":{\"type\":\"integer\"},\"NonCompliantLowCount\":{\"type\":\"integer\"},\"NonCompliantHighCount\":{\"type\":\"integer\"},\"CompliantLowCount\":{\"type\":\"integer\"},\"ComplianceType\":{},\"PatchBaselineId\":{},\"OverallSeverity\":{},\"NonCompliantMediumCount\":{\"type\":\"integer\"},\"NonCompliantUnspecifiedCount\":{\"type\":\"integer\"},\"PatchGroup\":{}}}}}}},\"AwsCertificateManagerCertificate\":{\"type\":\"structure\",\"members\":{\"CertificateAuthorityArn\":{},\"CreatedAt\":{},\"DomainName\":{},\"DomainValidationOptions\":{\"shape\":\"S5b\"},\"ExtendedKeyUsages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"OId\":{}}}},\"FailureReason\":{},\"ImportedAt\":{},\"InUseBy\":{\"shape\":\"S11\"},\"IssuedAt\":{},\"Issuer\":{},\"KeyAlgorithm\":{},\"KeyUsages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"NotAfter\":{},\"NotBefore\":{},\"Options\":{\"type\":\"structure\",\"members\":{\"CertificateTransparencyLoggingPreference\":{}}},\"RenewalEligibility\":{},\"RenewalSummary\":{\"type\":\"structure\",\"members\":{\"DomainValidationOptions\":{\"shape\":\"S5b\"},\"RenewalStatus\":{},\"RenewalStatusReason\":{},\"UpdatedAt\":{}}},\"Serial\":{},\"SignatureAlgorithm\":{},\"Status\":{},\"Subject\":{},\"SubjectAlternativeNames\":{\"shape\":\"S11\"},\"Type\":{}}},\"AwsRedshiftCluster\":{\"type\":\"structure\",\"members\":{\"AllowVersionUpgrade\":{\"type\":\"boolean\"},\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"ClusterAvailabilityStatus\":{},\"ClusterCreateTime\":{},\"ClusterIdentifier\":{},\"ClusterNodes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NodeRole\":{},\"PrivateIpAddress\":{},\"PublicIpAddress\":{}}}},\"ClusterParameterGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ClusterParameterStatusList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterName\":{},\"ParameterApplyStatus\":{},\"ParameterApplyErrorDescription\":{}}}},\"ParameterApplyStatus\":{},\"ParameterGroupName\":{}}}},\"ClusterPublicKey\":{},\"ClusterRevisionNumber\":{},\"ClusterSecurityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ClusterSecurityGroupName\":{},\"Status\":{}}}},\"ClusterSnapshotCopyStatus\":{\"type\":\"structure\",\"members\":{\"DestinationRegion\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"RetentionPeriod\":{\"type\":\"integer\"},\"SnapshotCopyGrantName\":{}}},\"ClusterStatus\":{},\"ClusterSubnetGroupName\":{},\"ClusterVersion\":{},\"DBName\":{},\"DeferredMaintenanceWindows\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeferMaintenanceEndTime\":{},\"DeferMaintenanceIdentifier\":{},\"DeferMaintenanceStartTime\":{}}}},\"ElasticIpStatus\":{\"type\":\"structure\",\"members\":{\"ElasticIp\":{},\"Status\":{}}},\"ElasticResizeNumberOfNodeOptions\":{},\"Encrypted\":{\"type\":\"boolean\"},\"Endpoint\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"}}},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"ExpectedNextSnapshotScheduleTime\":{},\"ExpectedNextSnapshotScheduleTimeStatus\":{},\"HsmStatus\":{\"type\":\"structure\",\"members\":{\"HsmClientCertificateIdentifier\":{},\"HsmConfigurationIdentifier\":{},\"Status\":{}}},\"IamRoles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplyStatus\":{},\"IamRoleArn\":{}}}},\"KmsKeyId\":{},\"MaintenanceTrackName\":{},\"ManualSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"MasterUsername\":{},\"NextMaintenanceWindowStartTime\":{},\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"PendingActions\":{\"shape\":\"S11\"},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"AutomatedSnapshotRetentionPeriod\":{\"type\":\"integer\"},\"ClusterIdentifier\":{},\"ClusterType\":{},\"ClusterVersion\":{},\"EncryptionType\":{},\"EnhancedVpcRouting\":{\"type\":\"boolean\"},\"MaintenanceTrackName\":{},\"MasterUserPassword\":{},\"NodeType\":{},\"NumberOfNodes\":{\"type\":\"integer\"},\"PubliclyAccessible\":{\"type\":\"boolean\"}}},\"PreferredMaintenanceWindow\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"ResizeInfo\":{\"type\":\"structure\",\"members\":{\"AllowCancelResize\":{\"type\":\"boolean\"},\"ResizeType\":{}}},\"RestoreStatus\":{\"type\":\"structure\",\"members\":{\"CurrentRestoreRateInMegaBytesPerSecond\":{\"type\":\"double\"},\"ElapsedTimeInSeconds\":{\"type\":\"long\"},\"EstimatedTimeToCompletionInSeconds\":{\"type\":\"long\"},\"ProgressInMegaBytes\":{\"type\":\"long\"},\"SnapshotSizeInMegaBytes\":{\"type\":\"long\"},\"Status\":{}}},\"SnapshotScheduleIdentifier\":{},\"SnapshotScheduleState\":{},\"VpcId\":{},\"VpcSecurityGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"VpcSecurityGroupId\":{}}}}}},\"AwsElbLoadBalancer\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S11\"},\"BackendServerDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstancePort\":{\"type\":\"integer\"},\"PolicyNames\":{\"shape\":\"S11\"}}}},\"CanonicalHostedZoneName\":{},\"CanonicalHostedZoneNameID\":{},\"CreatedTime\":{},\"DnsName\":{},\"HealthCheck\":{\"type\":\"structure\",\"members\":{\"HealthyThreshold\":{\"type\":\"integer\"},\"Interval\":{\"type\":\"integer\"},\"Target\":{},\"Timeout\":{\"type\":\"integer\"},\"UnhealthyThreshold\":{\"type\":\"integer\"}}},\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{}}}},\"ListenerDescriptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Listener\":{\"type\":\"structure\",\"members\":{\"InstancePort\":{\"type\":\"integer\"},\"InstanceProtocol\":{},\"LoadBalancerPort\":{\"type\":\"integer\"},\"Protocol\":{},\"SslCertificateId\":{}}},\"PolicyNames\":{\"shape\":\"S11\"}}}},\"LoadBalancerAttributes\":{\"type\":\"structure\",\"members\":{\"AccessLog\":{\"type\":\"structure\",\"members\":{\"EmitInterval\":{\"type\":\"integer\"},\"Enabled\":{\"type\":\"boolean\"},\"S3BucketName\":{},\"S3BucketPrefix\":{}}},\"ConnectionDraining\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"Timeout\":{\"type\":\"integer\"}}},\"ConnectionSettings\":{\"type\":\"structure\",\"members\":{\"IdleTimeout\":{\"type\":\"integer\"}}},\"CrossZoneLoadBalancing\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"}}}}},\"LoadBalancerName\":{},\"Policies\":{\"type\":\"structure\",\"members\":{\"AppCookieStickinessPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CookieName\":{},\"PolicyName\":{}}}},\"LbCookieStickinessPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CookieExpirationPeriod\":{\"type\":\"long\"},\"PolicyName\":{}}}},\"OtherPolicies\":{\"shape\":\"S11\"}}},\"Scheme\":{},\"SecurityGroups\":{\"shape\":\"S11\"},\"SourceSecurityGroup\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"OwnerAlias\":{}}},\"Subnets\":{\"shape\":\"S11\"},\"VpcId\":{}}},\"AwsIamGroup\":{\"type\":\"structure\",\"members\":{\"AttachedManagedPolicies\":{\"shape\":\"S42\"},\"CreateDate\":{},\"GroupId\":{},\"GroupName\":{},\"GroupPolicyList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{}}}},\"Path\":{}}},\"AwsIamRole\":{\"type\":\"structure\",\"members\":{\"AssumeRolePolicyDocument\":{},\"AttachedManagedPolicies\":{\"shape\":\"S42\"},\"CreateDate\":{},\"InstanceProfileList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CreateDate\":{},\"InstanceProfileId\":{},\"InstanceProfileName\":{},\"Path\":{},\"Roles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"AssumeRolePolicyDocument\":{},\"CreateDate\":{},\"Path\":{},\"RoleId\":{},\"RoleName\":{}}}}}}},\"PermissionsBoundary\":{\"shape\":\"S44\"},\"RoleId\":{},\"RoleName\":{},\"RolePolicyList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{}}}},\"MaxSessionDuration\":{\"type\":\"integer\"},\"Path\":{}}},\"AwsKmsKey\":{\"type\":\"structure\",\"members\":{\"AWSAccountId\":{},\"CreationDate\":{\"type\":\"double\"},\"KeyId\":{},\"KeyManager\":{},\"KeyState\":{},\"Origin\":{},\"Description\":{}}},\"AwsLambdaFunction\":{\"type\":\"structure\",\"members\":{\"Code\":{\"type\":\"structure\",\"members\":{\"S3Bucket\":{},\"S3Key\":{},\"S3ObjectVersion\":{},\"ZipFile\":{}}},\"CodeSha256\":{},\"DeadLetterConfig\":{\"type\":\"structure\",\"members\":{\"TargetArn\":{}}},\"Environment\":{\"type\":\"structure\",\"members\":{\"Variables\":{\"shape\":\"Sp\"},\"Error\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"Message\":{}}}}},\"FunctionName\":{},\"Handler\":{},\"KmsKeyArn\":{},\"LastModified\":{},\"Layers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"CodeSize\":{\"type\":\"integer\"}}}},\"MasterArn\":{},\"MemorySize\":{\"type\":\"integer\"},\"RevisionId\":{},\"Role\":{},\"Runtime\":{},\"Timeout\":{\"type\":\"integer\"},\"TracingConfig\":{\"type\":\"structure\",\"members\":{\"Mode\":{}}},\"VpcConfig\":{\"type\":\"structure\",\"members\":{\"SecurityGroupIds\":{\"shape\":\"S23\"},\"SubnetIds\":{\"shape\":\"S23\"},\"VpcId\":{}}},\"Version\":{}}},\"AwsLambdaLayerVersion\":{\"type\":\"structure\",\"members\":{\"Version\":{\"type\":\"long\"},\"CompatibleRuntimes\":{\"shape\":\"S23\"},\"CreatedDate\":{}}},\"AwsRdsDbInstance\":{\"type\":\"structure\",\"members\":{\"AssociatedRoles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"FeatureName\":{},\"Status\":{}}}},\"CACertificateIdentifier\":{},\"DBClusterIdentifier\":{},\"DBInstanceIdentifier\":{},\"DBInstanceClass\":{},\"DbInstancePort\":{\"type\":\"integer\"},\"DbiResourceId\":{},\"DBName\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"Endpoint\":{\"shape\":\"S7g\"},\"Engine\":{},\"EngineVersion\":{},\"IAMDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"InstanceCreateTime\":{},\"KmsKeyId\":{},\"PubliclyAccessible\":{\"type\":\"boolean\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"TdeCredentialArn\":{},\"VpcSecurityGroups\":{\"shape\":\"S7h\"},\"MultiAz\":{\"type\":\"boolean\"},\"EnhancedMonitoringResourceArn\":{},\"DbInstanceStatus\":{},\"MasterUsername\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"PreferredBackupWindow\":{},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DbSecurityGroups\":{\"shape\":\"S11\"},\"DbParameterGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DbParameterGroupName\":{},\"ParameterApplyStatus\":{}}}},\"AvailabilityZone\":{},\"DbSubnetGroup\":{\"type\":\"structure\",\"members\":{\"DbSubnetGroupName\":{},\"DbSubnetGroupDescription\":{},\"VpcId\":{},\"SubnetGroupStatus\":{},\"Subnets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SubnetIdentifier\":{},\"SubnetAvailabilityZone\":{\"type\":\"structure\",\"members\":{\"Name\":{}}},\"SubnetStatus\":{}}}},\"DbSubnetGroupArn\":{}}},\"PreferredMaintenanceWindow\":{},\"PendingModifiedValues\":{\"type\":\"structure\",\"members\":{\"DbInstanceClass\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"MasterUserPassword\":{},\"Port\":{\"type\":\"integer\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"MultiAZ\":{\"type\":\"boolean\"},\"EngineVersion\":{},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"DbInstanceIdentifier\":{},\"StorageType\":{},\"CaCertificateIdentifier\":{},\"DbSubnetGroupName\":{},\"PendingCloudWatchLogsExports\":{\"type\":\"structure\",\"members\":{\"LogTypesToEnable\":{\"shape\":\"S11\"},\"LogTypesToDisable\":{\"shape\":\"S11\"}}},\"ProcessorFeatures\":{\"shape\":\"S7r\"}}},\"LatestRestorableTime\":{},\"AutoMinorVersionUpgrade\":{\"type\":\"boolean\"},\"ReadReplicaSourceDBInstanceIdentifier\":{},\"ReadReplicaDBInstanceIdentifiers\":{\"shape\":\"S11\"},\"ReadReplicaDBClusterIdentifiers\":{\"shape\":\"S11\"},\"LicenseModel\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OptionGroupName\":{},\"Status\":{}}}},\"CharacterSetName\":{},\"SecondaryAvailabilityZone\":{},\"StatusInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StatusType\":{},\"Normal\":{\"type\":\"boolean\"},\"Status\":{},\"Message\":{}}}},\"StorageType\":{},\"DomainMemberships\":{\"shape\":\"S7x\"},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"MonitoringInterval\":{\"type\":\"integer\"},\"MonitoringRoleArn\":{},\"PromotionTier\":{\"type\":\"integer\"},\"Timezone\":{},\"PerformanceInsightsEnabled\":{\"type\":\"boolean\"},\"PerformanceInsightsKmsKeyId\":{},\"PerformanceInsightsRetentionPeriod\":{\"type\":\"integer\"},\"EnabledCloudWatchLogsExports\":{\"shape\":\"S11\"},\"ProcessorFeatures\":{\"shape\":\"S7r\"},\"ListenerEndpoint\":{\"shape\":\"S7g\"},\"MaxAllocatedStorage\":{\"type\":\"integer\"}}},\"AwsSnsTopic\":{\"type\":\"structure\",\"members\":{\"KmsMasterKeyId\":{},\"Subscription\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Endpoint\":{},\"Protocol\":{}}}},\"TopicName\":{},\"Owner\":{}}},\"AwsSqsQueue\":{\"type\":\"structure\",\"members\":{\"KmsDataKeyReusePeriodSeconds\":{\"type\":\"integer\"},\"KmsMasterKeyId\":{},\"QueueName\":{},\"DeadLetterTargetArn\":{}}},\"AwsWafWebAcl\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DefaultAction\":{},\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Action\":{\"type\":\"structure\",\"members\":{\"Type\":{}}},\"ExcludedRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleId\":{}}}},\"OverrideAction\":{\"type\":\"structure\",\"members\":{\"Type\":{}}},\"Priority\":{\"type\":\"integer\"},\"RuleId\":{},\"Type\":{}}}},\"WebAclId\":{}}},\"AwsRdsDbSnapshot\":{\"type\":\"structure\",\"members\":{\"DbSnapshotIdentifier\":{},\"DbInstanceIdentifier\":{},\"SnapshotCreateTime\":{},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"AvailabilityZone\":{},\"VpcId\":{},\"InstanceCreateTime\":{},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"Iops\":{\"type\":\"integer\"},\"OptionGroupName\":{},\"PercentProgress\":{\"type\":\"integer\"},\"SourceRegion\":{},\"SourceDbSnapshotIdentifier\":{},\"StorageType\":{},\"TdeCredentialArn\":{},\"Encrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"Timezone\":{},\"IamDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"},\"ProcessorFeatures\":{\"shape\":\"S7r\"},\"DbiResourceId\":{}}},\"AwsRdsDbClusterSnapshot\":{\"type\":\"structure\",\"members\":{\"AvailabilityZones\":{\"shape\":\"S11\"},\"SnapshotCreateTime\":{},\"Engine\":{},\"AllocatedStorage\":{\"type\":\"integer\"},\"Status\":{},\"Port\":{\"type\":\"integer\"},\"VpcId\":{},\"ClusterCreateTime\":{},\"MasterUsername\":{},\"EngineVersion\":{},\"LicenseModel\":{},\"SnapshotType\":{},\"PercentProgress\":{\"type\":\"integer\"},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbClusterIdentifier\":{},\"DbClusterSnapshotIdentifier\":{},\"IamDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"}}},\"AwsRdsDbCluster\":{\"type\":\"structure\",\"members\":{\"AllocatedStorage\":{\"type\":\"integer\"},\"AvailabilityZones\":{\"shape\":\"S11\"},\"BackupRetentionPeriod\":{\"type\":\"integer\"},\"DatabaseName\":{},\"Status\":{},\"Endpoint\":{},\"ReaderEndpoint\":{},\"CustomEndpoints\":{\"shape\":\"S11\"},\"MultiAz\":{\"type\":\"boolean\"},\"Engine\":{},\"EngineVersion\":{},\"Port\":{\"type\":\"integer\"},\"MasterUsername\":{},\"PreferredBackupWindow\":{},\"PreferredMaintenanceWindow\":{},\"ReadReplicaIdentifiers\":{\"shape\":\"S11\"},\"VpcSecurityGroups\":{\"shape\":\"S7h\"},\"HostedZoneId\":{},\"StorageEncrypted\":{\"type\":\"boolean\"},\"KmsKeyId\":{},\"DbClusterResourceId\":{},\"AssociatedRoles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"Status\":{}}}},\"ClusterCreateTime\":{},\"EnabledCloudWatchLogsExports\":{\"shape\":\"S11\"},\"EngineMode\":{},\"DeletionProtection\":{\"type\":\"boolean\"},\"HttpEndpointEnabled\":{\"type\":\"boolean\"},\"ActivityStreamStatus\":{},\"CopyTagsToSnapshot\":{\"type\":\"boolean\"},\"CrossAccountClone\":{\"type\":\"boolean\"},\"DomainMemberships\":{\"shape\":\"S7x\"},\"DbClusterParameterGroup\":{},\"DbSubnetGroup\":{},\"DbClusterOptionGroupMemberships\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DbClusterOptionGroupName\":{},\"Status\":{}}}},\"DbClusterIdentifier\":{},\"DbClusterMembers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IsClusterWriter\":{\"type\":\"boolean\"},\"PromotionTier\":{\"type\":\"integer\"},\"DbInstanceIdentifier\":{},\"DbClusterParameterGroupStatus\":{}}}},\"IamDatabaseAuthenticationEnabled\":{\"type\":\"boolean\"}}},\"Container\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"ImageId\":{},\"ImageName\":{},\"LaunchedAt\":{}}},\"Other\":{\"shape\":\"Sp\"}}}}}},\"Compliance\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"RelatedRequirements\":{\"shape\":\"S8m\"},\"StatusReasons\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ReasonCode\"],\"members\":{\"ReasonCode\":{},\"Description\":{}}}}}},\"VerificationState\":{},\"WorkflowState\":{\"type\":\"string\",\"deprecated\":true,\"deprecatedMessage\":\"This field is deprecated, use Workflow.Status instead.\"},\"Workflow\":{\"type\":\"structure\",\"members\":{\"Status\":{}}},\"RecordState\":{},\"RelatedFindings\":{\"shape\":\"S8u\"},\"Note\":{\"type\":\"structure\",\"required\":[\"Text\",\"UpdatedBy\",\"UpdatedAt\"],\"members\":{\"Text\":{},\"UpdatedBy\":{},\"UpdatedAt\":{}}},\"Vulnerabilities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"VulnerablePackages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Version\":{},\"Epoch\":{},\"Release\":{},\"Architecture\":{}}}},\"Cvss\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Version\":{},\"BaseScore\":{\"type\":\"double\"},\"BaseVector\":{}}}},\"RelatedVulnerabilities\":{\"shape\":\"S11\"},\"Vendor\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Url\":{},\"VendorSeverity\":{},\"VendorCreatedAt\":{},\"VendorUpdatedAt\":{}}},\"ReferenceUrls\":{\"shape\":\"S11\"}}}},\"PatchSummary\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"InstalledCount\":{\"type\":\"integer\"},\"MissingCount\":{\"type\":\"integer\"},\"FailedCount\":{\"type\":\"integer\"},\"InstalledOtherCount\":{\"type\":\"integer\"},\"InstalledRejectedCount\":{\"type\":\"integer\"},\"InstalledPendingReboot\":{\"type\":\"integer\"},\"OperationStartTime\":{},\"OperationEndTime\":{},\"RebootOption\":{},\"Operation\":{}}},\"Action\":{\"type\":\"structure\",\"members\":{\"ActionType\":{},\"NetworkConnectionAction\":{\"type\":\"structure\",\"members\":{\"ConnectionDirection\":{},\"RemoteIpDetails\":{\"shape\":\"S97\"},\"RemotePortDetails\":{\"type\":\"structure\",\"members\":{\"Port\":{\"type\":\"integer\"},\"PortName\":{}}},\"LocalPortDetails\":{\"shape\":\"S9d\"},\"Protocol\":{},\"Blocked\":{\"type\":\"boolean\"}}},\"AwsApiCallAction\":{\"type\":\"structure\",\"members\":{\"Api\":{},\"ServiceName\":{},\"CallerType\":{},\"RemoteIpDetails\":{\"shape\":\"S97\"},\"DomainDetails\":{\"type\":\"structure\",\"members\":{\"Domain\":{}}},\"AffectedResources\":{\"shape\":\"Sp\"},\"FirstSeen\":{},\"LastSeen\":{}}},\"DnsRequestAction\":{\"type\":\"structure\",\"members\":{\"Domain\":{},\"Protocol\":{},\"Blocked\":{\"type\":\"boolean\"}}},\"PortProbeAction\":{\"type\":\"structure\",\"members\":{\"PortProbeDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LocalPortDetails\":{\"shape\":\"S9d\"},\"LocalIpDetails\":{\"type\":\"structure\",\"members\":{\"IpAddressV4\":{}}},\"RemoteIpDetails\":{\"shape\":\"S97\"}}}},\"Blocked\":{\"type\":\"boolean\"}}}}},\"FindingProviderFields\":{\"type\":\"structure\",\"members\":{\"Confidence\":{\"type\":\"integer\"},\"Criticality\":{\"type\":\"integer\"},\"RelatedFindings\":{\"shape\":\"S8u\"},\"Severity\":{\"type\":\"structure\",\"members\":{\"Label\":{},\"Original\":{}}},\"Types\":{\"shape\":\"Si\"}}}}},\"Si\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sw\":{\"type\":\"structure\",\"members\":{\"Begin\":{\"type\":\"integer\"},\"End\":{\"type\":\"integer\"}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"Protocol\":{},\"Destination\":{\"shape\":\"S10\"},\"Source\":{\"shape\":\"S10\"}}},\"S10\":{\"type\":\"structure\",\"members\":{\"Address\":{\"shape\":\"S11\"},\"PortRanges\":{\"type\":\"list\",\"member\":{\"shape\":\"Sw\"}}}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S1k\":{\"type\":\"structure\",\"members\":{\"LineRanges\":{\"shape\":\"S1l\"},\"OffsetRanges\":{\"shape\":\"S1l\"},\"Pages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PageNumber\":{\"type\":\"long\"},\"LineRange\":{\"shape\":\"S1m\"},\"OffsetRange\":{\"shape\":\"S1m\"}}}},\"Records\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JsonPath\":{},\"RecordIndex\":{\"type\":\"long\"}}}},\"Cells\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Column\":{\"type\":\"long\"},\"Row\":{\"type\":\"long\"},\"ColumnName\":{},\"CellReference\":{}}}}}},\"S1l\":{\"type\":\"list\",\"member\":{\"shape\":\"S1m\"}},\"S1m\":{\"type\":\"structure\",\"members\":{\"Start\":{\"type\":\"long\"},\"End\":{\"type\":\"long\"},\"StartColumn\":{\"type\":\"long\"}}},\"S23\":{\"type\":\"list\",\"member\":{}},\"S2u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IpProtocol\":{},\"FromPort\":{\"type\":\"integer\"},\"ToPort\":{\"type\":\"integer\"},\"UserIdGroupPairs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupId\":{},\"GroupName\":{},\"PeeringStatus\":{},\"UserId\":{},\"VpcId\":{},\"VpcPeeringConnectionId\":{}}}},\"IpRanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CidrIp\":{}}}},\"Ipv6Ranges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CidrIpv6\":{}}}},\"PrefixListIds\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PrefixListId\":{}}}}}}},\"S3s\":{\"type\":\"structure\",\"members\":{\"BlockPublicAcls\":{\"type\":\"boolean\"},\"BlockPublicPolicy\":{\"type\":\"boolean\"},\"IgnorePublicAcls\":{\"type\":\"boolean\"},\"RestrictPublicBuckets\":{\"type\":\"boolean\"}}},\"S42\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyName\":{},\"PolicyArn\":{}}}},\"S44\":{\"type\":\"structure\",\"members\":{\"PermissionsBoundaryArn\":{},\"PermissionsBoundaryType\":{}}},\"S4b\":{\"type\":\"structure\",\"members\":{\"DetailedMetricsEnabled\":{\"type\":\"boolean\"},\"LoggingLevel\":{},\"DataTraceEnabled\":{\"type\":\"boolean\"},\"ThrottlingBurstLimit\":{\"type\":\"integer\"},\"ThrottlingRateLimit\":{\"type\":\"double\"}}},\"S4c\":{\"type\":\"structure\",\"members\":{\"Format\":{},\"DestinationArn\":{}}},\"S4m\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttributeName\":{},\"KeyType\":{}}}},\"S4o\":{\"type\":\"structure\",\"members\":{\"NonKeyAttributes\":{\"shape\":\"S11\"},\"ProjectionType\":{}}},\"S4p\":{\"type\":\"structure\",\"members\":{\"LastDecreaseDateTime\":{},\"LastIncreaseDateTime\":{},\"NumberOfDecreasesToday\":{\"type\":\"integer\"},\"ReadCapacityUnits\":{\"type\":\"integer\"},\"WriteCapacityUnits\":{\"type\":\"integer\"}}},\"S4w\":{\"type\":\"structure\",\"members\":{\"ReadCapacityUnits\":{\"type\":\"integer\"}}},\"S5b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"ResourceRecord\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"Value\":{}}},\"ValidationDomain\":{},\"ValidationEmails\":{\"shape\":\"S11\"},\"ValidationMethod\":{},\"ValidationStatus\":{}}}},\"S7g\":{\"type\":\"structure\",\"members\":{\"Address\":{},\"Port\":{\"type\":\"integer\"},\"HostedZoneId\":{}}},\"S7h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VpcSecurityGroupId\":{},\"Status\":{}}}},\"S7r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"S7x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Domain\":{},\"Status\":{},\"Fqdn\":{},\"IamRoleName\":{}}}},\"S8m\":{\"type\":\"list\",\"member\":{}},\"S8u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ProductArn\",\"Id\"],\"members\":{\"ProductArn\":{},\"Id\":{}}}},\"S97\":{\"type\":\"structure\",\"members\":{\"IpAddressV4\":{},\"Organization\":{\"type\":\"structure\",\"members\":{\"Asn\":{\"type\":\"integer\"},\"AsnOrg\":{},\"Isp\":{},\"Org\":{}}},\"Country\":{\"type\":\"structure\",\"members\":{\"CountryCode\":{},\"CountryName\":{}}},\"City\":{\"type\":\"structure\",\"members\":{\"CityName\":{}}},\"GeoLocation\":{\"type\":\"structure\",\"members\":{\"Lon\":{\"type\":\"double\"},\"Lat\":{\"type\":\"double\"}}}}},\"S9d\":{\"type\":\"structure\",\"members\":{\"Port\":{\"type\":\"integer\"},\"PortName\":{}}},\"S9s\":{\"type\":\"list\",\"member\":{\"shape\":\"S9t\"}},\"S9t\":{\"type\":\"structure\",\"required\":[\"Id\",\"ProductArn\"],\"members\":{\"Id\":{},\"ProductArn\":{}}},\"S9u\":{\"type\":\"structure\",\"required\":[\"Text\",\"UpdatedBy\"],\"members\":{\"Text\":{},\"UpdatedBy\":{}}},\"Sa3\":{\"type\":\"structure\",\"members\":{\"ProductArn\":{\"shape\":\"Sa4\"},\"AwsAccountId\":{\"shape\":\"Sa4\"},\"Id\":{\"shape\":\"Sa4\"},\"GeneratorId\":{\"shape\":\"Sa4\"},\"Type\":{\"shape\":\"Sa4\"},\"FirstObservedAt\":{\"shape\":\"Sa7\"},\"LastObservedAt\":{\"shape\":\"Sa7\"},\"CreatedAt\":{\"shape\":\"Sa7\"},\"UpdatedAt\":{\"shape\":\"Sa7\"},\"SeverityProduct\":{\"shape\":\"Sab\",\"deprecated\":true,\"deprecatedMessage\":\"This filter is deprecated, use FindingProviiltersSeverityOriginal instead.\"},\"SeverityNormalized\":{\"shape\":\"Sab\",\"deprecated\":true,\"deprecatedMessage\":\"This filter is deprecated, use SeverityLabel or FindingProviderFieldsSeverityLabel instead.\"},\"SeverityLabel\":{\"shape\":\"Sa4\"},\"Confidence\":{\"shape\":\"Sab\"},\"Criticality\":{\"shape\":\"Sab\"},\"Title\":{\"shape\":\"Sa4\"},\"Description\":{\"shape\":\"Sa4\"},\"RecommendationText\":{\"shape\":\"Sa4\"},\"SourceUrl\":{\"shape\":\"Sa4\"},\"ProductFields\":{\"shape\":\"Sad\"},\"ProductName\":{\"shape\":\"Sa4\"},\"CompanyName\":{\"shape\":\"Sa4\"},\"UserDefinedFields\":{\"shape\":\"Sad\"},\"MalwareName\":{\"shape\":\"Sa4\"},\"MalwareType\":{\"shape\":\"Sa4\"},\"MalwarePath\":{\"shape\":\"Sa4\"},\"MalwareState\":{\"shape\":\"Sa4\"},\"NetworkDirection\":{\"shape\":\"Sa4\"},\"NetworkProtocol\":{\"shape\":\"Sa4\"},\"NetworkSourceIpV4\":{\"shape\":\"Sag\"},\"NetworkSourceIpV6\":{\"shape\":\"Sag\"},\"NetworkSourcePort\":{\"shape\":\"Sab\"},\"NetworkSourceDomain\":{\"shape\":\"Sa4\"},\"NetworkSourceMac\":{\"shape\":\"Sa4\"},\"NetworkDestinationIpV4\":{\"shape\":\"Sag\"},\"NetworkDestinationIpV6\":{\"shape\":\"Sag\"},\"NetworkDestinationPort\":{\"shape\":\"Sab\"},\"NetworkDestinationDomain\":{\"shape\":\"Sa4\"},\"ProcessName\":{\"shape\":\"Sa4\"},\"ProcessPath\":{\"shape\":\"Sa4\"},\"ProcessPid\":{\"shape\":\"Sab\"},\"ProcessParentPid\":{\"shape\":\"Sab\"},\"ProcessLaunchedAt\":{\"shape\":\"Sa7\"},\"ProcessTerminatedAt\":{\"shape\":\"Sa7\"},\"ThreatIntelIndicatorType\":{\"shape\":\"Sa4\"},\"ThreatIntelIndicatorValue\":{\"shape\":\"Sa4\"},\"ThreatIntelIndicatorCategory\":{\"shape\":\"Sa4\"},\"ThreatIntelIndicatorLastObservedAt\":{\"shape\":\"Sa7\"},\"ThreatIntelIndicatorSource\":{\"shape\":\"Sa4\"},\"ThreatIntelIndicatorSourceUrl\":{\"shape\":\"Sa4\"},\"ResourceType\":{\"shape\":\"Sa4\"},\"ResourceId\":{\"shape\":\"Sa4\"},\"ResourcePartition\":{\"shape\":\"Sa4\"},\"ResourceRegion\":{\"shape\":\"Sa4\"},\"ResourceTags\":{\"shape\":\"Sad\"},\"ResourceAwsEc2InstanceType\":{\"shape\":\"Sa4\"},\"ResourceAwsEc2InstanceImageId\":{\"shape\":\"Sa4\"},\"ResourceAwsEc2InstanceIpV4Addresses\":{\"shape\":\"Sag\"},\"ResourceAwsEc2InstanceIpV6Addresses\":{\"shape\":\"Sag\"},\"ResourceAwsEc2InstanceKeyName\":{\"shape\":\"Sa4\"},\"ResourceAwsEc2InstanceIamInstanceProfileArn\":{\"shape\":\"Sa4\"},\"ResourceAwsEc2InstanceVpcId\":{\"shape\":\"Sa4\"},\"ResourceAwsEc2InstanceSubnetId\":{\"shape\":\"Sa4\"},\"ResourceAwsEc2InstanceLaunchedAt\":{\"shape\":\"Sa7\"},\"ResourceAwsS3BucketOwnerId\":{\"shape\":\"Sa4\"},\"ResourceAwsS3BucketOwnerName\":{\"shape\":\"Sa4\"},\"ResourceAwsIamAccessKeyUserName\":{\"shape\":\"Sa4\"},\"ResourceAwsIamAccessKeyStatus\":{\"shape\":\"Sa4\"},\"ResourceAwsIamAccessKeyCreatedAt\":{\"shape\":\"Sa7\"},\"ResourceContainerName\":{\"shape\":\"Sa4\"},\"ResourceContainerImageId\":{\"shape\":\"Sa4\"},\"ResourceContainerImageName\":{\"shape\":\"Sa4\"},\"ResourceContainerLaunchedAt\":{\"shape\":\"Sa7\"},\"ResourceDetailsOther\":{\"shape\":\"Sad\"},\"ComplianceStatus\":{\"shape\":\"Sa4\"},\"VerificationState\":{\"shape\":\"Sa4\"},\"WorkflowState\":{\"shape\":\"Sa4\"},\"WorkflowStatus\":{\"shape\":\"Sa4\"},\"RecordState\":{\"shape\":\"Sa4\"},\"RelatedFindingsProductArn\":{\"shape\":\"Sa4\"},\"RelatedFindingsId\":{\"shape\":\"Sa4\"},\"NoteText\":{\"shape\":\"Sa4\"},\"NoteUpdatedAt\":{\"shape\":\"Sa7\"},\"NoteUpdatedBy\":{\"shape\":\"Sa4\"},\"Keyword\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"FindingProviderFieldsConfidence\":{\"shape\":\"Sab\"},\"FindingProviderFieldsCriticality\":{\"shape\":\"Sab\"},\"FindingProviderFieldsRelatedFindingsId\":{\"shape\":\"Sa4\"},\"FindingProviderFieldsRelatedFindingsProductArn\":{\"shape\":\"Sa4\"},\"FindingProviderFieldsSeverityLabel\":{\"shape\":\"Sa4\"},\"FindingProviderFieldsSeverityOriginal\":{\"shape\":\"Sa4\"},\"FindingProviderFieldsTypes\":{\"shape\":\"Sa4\"}}},\"Sa4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"Comparison\":{}}}},\"Sa7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Start\":{},\"End\":{},\"DateRange\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"integer\"},\"Unit\":{}}}}}},\"Sab\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Gte\":{\"type\":\"double\"},\"Lte\":{\"type\":\"double\"},\"Eq\":{\"type\":\"double\"}}}},\"Sad\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Comparison\":{}}}},\"Sag\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Cidr\":{}}}},\"Saq\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"ProcessingResult\":{}}}},\"Sat\":{\"type\":\"list\",\"member\":{}},\"Sb4\":{\"type\":\"list\",\"member\":{}},\"Sbu\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Scb\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sd0\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"InvitationId\":{},\"InvitedAt\":{\"shape\":\"Sbu\"},\"MemberStatus\":{}}},\"Sd3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"Email\":{},\"MasterId\":{},\"MemberStatus\":{},\"InvitedAt\":{\"shape\":\"Sbu\"},\"UpdatedAt\":{\"shape\":\"Sbu\"}}}}}}");

/***/ }),

/***/ 27612:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeActionTargets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeProducts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeStandards\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"DescribeStandardsControls\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetEnabledStandards\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetFindings\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"GetInsights\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListEnabledProductsForImport\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListInvitations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMembers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListOrganizationAdminAccounts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 8591:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2017-09-08\",\"endpointPrefix\":\"serverlessrepo\",\"signingName\":\"serverlessrepo\",\"serviceFullName\":\"AWSServerlessApplicationRepository\",\"serviceId\":\"ServerlessApplicationRepository\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"serverlessrepo-2017-09-08\",\"signatureVersion\":\"v4\"},\"operations\":{\"CreateApplication\":{\"http\":{\"requestUri\":\"/applications\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"Author\":{\"locationName\":\"author\"},\"Description\":{\"locationName\":\"description\"},\"HomePageUrl\":{\"locationName\":\"homePageUrl\"},\"Labels\":{\"shape\":\"S3\",\"locationName\":\"labels\"},\"LicenseBody\":{\"locationName\":\"licenseBody\"},\"LicenseUrl\":{\"locationName\":\"licenseUrl\"},\"Name\":{\"locationName\":\"name\"},\"ReadmeBody\":{\"locationName\":\"readmeBody\"},\"ReadmeUrl\":{\"locationName\":\"readmeUrl\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"SourceCodeArchiveUrl\":{\"locationName\":\"sourceCodeArchiveUrl\"},\"SourceCodeUrl\":{\"locationName\":\"sourceCodeUrl\"},\"SpdxLicenseId\":{\"locationName\":\"spdxLicenseId\"},\"TemplateBody\":{\"locationName\":\"templateBody\"},\"TemplateUrl\":{\"locationName\":\"templateUrl\"}},\"required\":[\"Description\",\"Name\",\"Author\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"Author\":{\"locationName\":\"author\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"HomePageUrl\":{\"locationName\":\"homePageUrl\"},\"IsVerifiedAuthor\":{\"locationName\":\"isVerifiedAuthor\",\"type\":\"boolean\"},\"Labels\":{\"shape\":\"S3\",\"locationName\":\"labels\"},\"LicenseUrl\":{\"locationName\":\"licenseUrl\"},\"Name\":{\"locationName\":\"name\"},\"ReadmeUrl\":{\"locationName\":\"readmeUrl\"},\"SpdxLicenseId\":{\"locationName\":\"spdxLicenseId\"},\"VerifiedAuthorUrl\":{\"locationName\":\"verifiedAuthorUrl\"},\"Version\":{\"shape\":\"S6\",\"locationName\":\"version\"}}}},\"CreateApplicationVersion\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/applications/{applicationId}/versions/{semanticVersion}\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"SemanticVersion\":{\"location\":\"uri\",\"locationName\":\"semanticVersion\"},\"SourceCodeArchiveUrl\":{\"locationName\":\"sourceCodeArchiveUrl\"},\"SourceCodeUrl\":{\"locationName\":\"sourceCodeUrl\"},\"TemplateBody\":{\"locationName\":\"templateBody\"},\"TemplateUrl\":{\"locationName\":\"templateUrl\"}},\"required\":[\"ApplicationId\",\"SemanticVersion\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"ParameterDefinitions\":{\"shape\":\"S7\",\"locationName\":\"parameterDefinitions\"},\"RequiredCapabilities\":{\"shape\":\"Sa\",\"locationName\":\"requiredCapabilities\"},\"ResourcesSupported\":{\"locationName\":\"resourcesSupported\",\"type\":\"boolean\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"SourceCodeArchiveUrl\":{\"locationName\":\"sourceCodeArchiveUrl\"},\"SourceCodeUrl\":{\"locationName\":\"sourceCodeUrl\"},\"TemplateUrl\":{\"locationName\":\"templateUrl\"}}}},\"CreateCloudFormationChangeSet\":{\"http\":{\"requestUri\":\"/applications/{applicationId}/changesets\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"Capabilities\":{\"shape\":\"S3\",\"locationName\":\"capabilities\"},\"ChangeSetName\":{\"locationName\":\"changeSetName\"},\"ClientToken\":{\"locationName\":\"clientToken\"},\"Description\":{\"locationName\":\"description\"},\"NotificationArns\":{\"shape\":\"S3\",\"locationName\":\"notificationArns\"},\"ParameterOverrides\":{\"locationName\":\"parameterOverrides\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{\"locationName\":\"name\"},\"Value\":{\"locationName\":\"value\"}},\"required\":[\"Value\",\"Name\"]}},\"ResourceTypes\":{\"shape\":\"S3\",\"locationName\":\"resourceTypes\"},\"RollbackConfiguration\":{\"locationName\":\"rollbackConfiguration\",\"type\":\"structure\",\"members\":{\"MonitoringTimeInMinutes\":{\"locationName\":\"monitoringTimeInMinutes\",\"type\":\"integer\"},\"RollbackTriggers\":{\"locationName\":\"rollbackTriggers\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{\"locationName\":\"arn\"},\"Type\":{\"locationName\":\"type\"}},\"required\":[\"Type\",\"Arn\"]}}}},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"StackName\":{\"locationName\":\"stackName\"},\"Tags\":{\"locationName\":\"tags\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{\"locationName\":\"key\"},\"Value\":{\"locationName\":\"value\"}},\"required\":[\"Value\",\"Key\"]}},\"TemplateId\":{\"locationName\":\"templateId\"}},\"required\":[\"ApplicationId\",\"StackName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"ChangeSetId\":{\"locationName\":\"changeSetId\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"StackId\":{\"locationName\":\"stackId\"}}}},\"CreateCloudFormationTemplate\":{\"http\":{\"requestUri\":\"/applications/{applicationId}/templates\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"ExpirationTime\":{\"locationName\":\"expirationTime\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"Status\":{\"locationName\":\"status\"},\"TemplateId\":{\"locationName\":\"templateId\"},\"TemplateUrl\":{\"locationName\":\"templateUrl\"}}}},\"DeleteApplication\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{applicationId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"}},\"required\":[\"ApplicationId\"]}},\"GetApplication\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{applicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"SemanticVersion\":{\"location\":\"querystring\",\"locationName\":\"semanticVersion\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"Author\":{\"locationName\":\"author\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"HomePageUrl\":{\"locationName\":\"homePageUrl\"},\"IsVerifiedAuthor\":{\"locationName\":\"isVerifiedAuthor\",\"type\":\"boolean\"},\"Labels\":{\"shape\":\"S3\",\"locationName\":\"labels\"},\"LicenseUrl\":{\"locationName\":\"licenseUrl\"},\"Name\":{\"locationName\":\"name\"},\"ReadmeUrl\":{\"locationName\":\"readmeUrl\"},\"SpdxLicenseId\":{\"locationName\":\"spdxLicenseId\"},\"VerifiedAuthorUrl\":{\"locationName\":\"verifiedAuthorUrl\"},\"Version\":{\"shape\":\"S6\",\"locationName\":\"version\"}}}},\"GetApplicationPolicy\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{applicationId}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Statements\":{\"shape\":\"Sv\",\"locationName\":\"statements\"}}}},\"GetCloudFormationTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{applicationId}/templates/{templateId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"TemplateId\":{\"location\":\"uri\",\"locationName\":\"templateId\"}},\"required\":[\"ApplicationId\",\"TemplateId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"ExpirationTime\":{\"locationName\":\"expirationTime\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"Status\":{\"locationName\":\"status\"},\"TemplateId\":{\"locationName\":\"templateId\"},\"TemplateUrl\":{\"locationName\":\"templateUrl\"}}}},\"ListApplicationDependencies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{applicationId}/dependencies\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxItems\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"SemanticVersion\":{\"location\":\"querystring\",\"locationName\":\"semanticVersion\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Dependencies\":{\"locationName\":\"dependencies\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"}},\"required\":[\"ApplicationId\",\"SemanticVersion\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"ListApplicationVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{applicationId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxItems\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"locationName\":\"nextToken\"},\"Versions\":{\"locationName\":\"versions\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"SourceCodeUrl\":{\"locationName\":\"sourceCodeUrl\"}},\"required\":[\"CreationTime\",\"ApplicationId\",\"SemanticVersion\"]}}}}},\"ListApplications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"MaxItems\":{\"location\":\"querystring\",\"locationName\":\"maxItems\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Applications\":{\"locationName\":\"applications\",\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"Author\":{\"locationName\":\"author\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"HomePageUrl\":{\"locationName\":\"homePageUrl\"},\"Labels\":{\"shape\":\"S3\",\"locationName\":\"labels\"},\"Name\":{\"locationName\":\"name\"},\"SpdxLicenseId\":{\"locationName\":\"spdxLicenseId\"}},\"required\":[\"Description\",\"Author\",\"ApplicationId\",\"Name\"]}},\"NextToken\":{\"locationName\":\"nextToken\"}}}},\"PutApplicationPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/applications/{applicationId}/policy\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"Statements\":{\"shape\":\"Sv\",\"locationName\":\"statements\"}},\"required\":[\"ApplicationId\",\"Statements\"]},\"output\":{\"type\":\"structure\",\"members\":{\"Statements\":{\"shape\":\"Sv\",\"locationName\":\"statements\"}}}},\"UnshareApplication\":{\"http\":{\"requestUri\":\"/applications/{applicationId}/unshare\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"OrganizationId\":{\"locationName\":\"organizationId\"}},\"required\":[\"ApplicationId\",\"OrganizationId\"]}},\"UpdateApplication\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/applications/{applicationId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"location\":\"uri\",\"locationName\":\"applicationId\"},\"Author\":{\"locationName\":\"author\"},\"Description\":{\"locationName\":\"description\"},\"HomePageUrl\":{\"locationName\":\"homePageUrl\"},\"Labels\":{\"shape\":\"S3\",\"locationName\":\"labels\"},\"ReadmeBody\":{\"locationName\":\"readmeBody\"},\"ReadmeUrl\":{\"locationName\":\"readmeUrl\"}},\"required\":[\"ApplicationId\"]},\"output\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"Author\":{\"locationName\":\"author\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"Description\":{\"locationName\":\"description\"},\"HomePageUrl\":{\"locationName\":\"homePageUrl\"},\"IsVerifiedAuthor\":{\"locationName\":\"isVerifiedAuthor\",\"type\":\"boolean\"},\"Labels\":{\"shape\":\"S3\",\"locationName\":\"labels\"},\"LicenseUrl\":{\"locationName\":\"licenseUrl\"},\"Name\":{\"locationName\":\"name\"},\"ReadmeUrl\":{\"locationName\":\"readmeUrl\"},\"SpdxLicenseId\":{\"locationName\":\"spdxLicenseId\"},\"VerifiedAuthorUrl\":{\"locationName\":\"verifiedAuthorUrl\"},\"Version\":{\"shape\":\"S6\",\"locationName\":\"version\"}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{}},\"S6\":{\"type\":\"structure\",\"members\":{\"ApplicationId\":{\"locationName\":\"applicationId\"},\"CreationTime\":{\"locationName\":\"creationTime\"},\"ParameterDefinitions\":{\"shape\":\"S7\",\"locationName\":\"parameterDefinitions\"},\"RequiredCapabilities\":{\"shape\":\"Sa\",\"locationName\":\"requiredCapabilities\"},\"ResourcesSupported\":{\"locationName\":\"resourcesSupported\",\"type\":\"boolean\"},\"SemanticVersion\":{\"locationName\":\"semanticVersion\"},\"SourceCodeArchiveUrl\":{\"locationName\":\"sourceCodeArchiveUrl\"},\"SourceCodeUrl\":{\"locationName\":\"sourceCodeUrl\"},\"TemplateUrl\":{\"locationName\":\"templateUrl\"}},\"required\":[\"TemplateUrl\",\"ParameterDefinitions\",\"ResourcesSupported\",\"CreationTime\",\"RequiredCapabilities\",\"ApplicationId\",\"SemanticVersion\"]},\"S7\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AllowedPattern\":{\"locationName\":\"allowedPattern\"},\"AllowedValues\":{\"shape\":\"S3\",\"locationName\":\"allowedValues\"},\"ConstraintDescription\":{\"locationName\":\"constraintDescription\"},\"DefaultValue\":{\"locationName\":\"defaultValue\"},\"Description\":{\"locationName\":\"description\"},\"MaxLength\":{\"locationName\":\"maxLength\",\"type\":\"integer\"},\"MaxValue\":{\"locationName\":\"maxValue\",\"type\":\"integer\"},\"MinLength\":{\"locationName\":\"minLength\",\"type\":\"integer\"},\"MinValue\":{\"locationName\":\"minValue\",\"type\":\"integer\"},\"Name\":{\"locationName\":\"name\"},\"NoEcho\":{\"locationName\":\"noEcho\",\"type\":\"boolean\"},\"ReferencedByResources\":{\"shape\":\"S3\",\"locationName\":\"referencedByResources\"},\"Type\":{\"locationName\":\"type\"}},\"required\":[\"ReferencedByResources\",\"Name\"]}},\"Sa\":{\"type\":\"list\",\"member\":{}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Actions\":{\"shape\":\"S3\",\"locationName\":\"actions\"},\"PrincipalOrgIDs\":{\"shape\":\"S3\",\"locationName\":\"principalOrgIDs\"},\"Principals\":{\"shape\":\"S3\",\"locationName\":\"principals\"},\"StatementId\":{\"locationName\":\"statementId\"}},\"required\":[\"Principals\",\"Actions\"]}}}}");

/***/ }),

/***/ 96164:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplicationVersions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxItems\"},\"ListApplications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxItems\"},\"ListApplicationDependencies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxItems\"}}}");

/***/ }),

/***/ 14304:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-06-24\",\"endpointPrefix\":\"servicequotas\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Service Quotas\",\"serviceId\":\"Service Quotas\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"ServiceQuotasV20190624\",\"uid\":\"service-quotas-2019-06-24\"},\"operations\":{\"AssociateServiceQuotaTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteServiceQuotaIncreaseRequestFromTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"QuotaCode\",\"AwsRegion\"],\"members\":{\"ServiceCode\":{},\"QuotaCode\":{},\"AwsRegion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateServiceQuotaTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAWSDefaultServiceQuota\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"QuotaCode\"],\"members\":{\"ServiceCode\":{},\"QuotaCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Quota\":{\"shape\":\"Sc\"}}}},\"GetAssociationForServiceQuotaTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceQuotaTemplateAssociationStatus\":{}}}},\"GetRequestedServiceQuotaChange\":{\"input\":{\"type\":\"structure\",\"required\":[\"RequestId\"],\"members\":{\"RequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestedQuota\":{\"shape\":\"S13\"}}}},\"GetServiceQuota\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"QuotaCode\"],\"members\":{\"ServiceCode\":{},\"QuotaCode\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Quota\":{\"shape\":\"Sc\"}}}},\"GetServiceQuotaIncreaseRequestFromTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"QuotaCode\",\"AwsRegion\"],\"members\":{\"ServiceCode\":{},\"QuotaCode\":{},\"AwsRegion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceQuotaIncreaseRequestInTemplate\":{\"shape\":\"S1c\"}}}},\"ListAWSDefaultServiceQuotas\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\"],\"members\":{\"ServiceCode\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Quotas\":{\"shape\":\"S1h\"}}}},\"ListRequestedServiceQuotaChangeHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"Status\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"RequestedQuotas\":{\"shape\":\"S1k\"}}}},\"ListRequestedServiceQuotaChangeHistoryByQuota\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"QuotaCode\"],\"members\":{\"ServiceCode\":{},\"QuotaCode\":{},\"Status\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"RequestedQuotas\":{\"shape\":\"S1k\"}}}},\"ListServiceQuotaIncreaseRequestsInTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"AwsRegion\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceQuotaIncreaseRequestInTemplateList\":{\"type\":\"list\",\"member\":{\"shape\":\"S1c\"}},\"NextToken\":{}}}},\"ListServiceQuotas\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\"],\"members\":{\"ServiceCode\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Quotas\":{\"shape\":\"S1h\"}}}},\"ListServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"ServiceName\":{}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S20\"}}}}},\"PutServiceQuotaIncreaseRequestIntoTemplate\":{\"input\":{\"type\":\"structure\",\"required\":[\"QuotaCode\",\"ServiceCode\",\"AwsRegion\",\"DesiredValue\"],\"members\":{\"QuotaCode\":{},\"ServiceCode\":{},\"AwsRegion\":{},\"DesiredValue\":{\"type\":\"double\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceQuotaIncreaseRequestInTemplate\":{\"shape\":\"S1c\"}}}},\"RequestServiceQuotaIncrease\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceCode\",\"QuotaCode\",\"DesiredValue\"],\"members\":{\"ServiceCode\":{},\"QuotaCode\":{},\"DesiredValue\":{\"type\":\"double\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RequestedQuota\":{\"shape\":\"S13\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"type\":\"list\",\"member\":{\"shape\":\"S20\"}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sc\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"ServiceName\":{},\"QuotaArn\":{},\"QuotaCode\":{},\"QuotaName\":{},\"Value\":{\"type\":\"double\"},\"Unit\":{},\"Adjustable\":{\"type\":\"boolean\"},\"GlobalQuota\":{\"type\":\"boolean\"},\"UsageMetric\":{\"type\":\"structure\",\"members\":{\"MetricNamespace\":{},\"MetricName\":{},\"MetricDimensions\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"MetricStatisticRecommendation\":{}}},\"Period\":{\"type\":\"structure\",\"members\":{\"PeriodValue\":{\"type\":\"integer\"},\"PeriodUnit\":{}}},\"ErrorReason\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"ErrorMessage\":{}}}}},\"S13\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"CaseId\":{},\"ServiceCode\":{},\"ServiceName\":{},\"QuotaCode\":{},\"QuotaName\":{},\"DesiredValue\":{\"type\":\"double\"},\"Status\":{},\"Created\":{\"type\":\"timestamp\"},\"LastUpdated\":{\"type\":\"timestamp\"},\"Requester\":{},\"QuotaArn\":{},\"GlobalQuota\":{\"type\":\"boolean\"},\"Unit\":{}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"ServiceCode\":{},\"ServiceName\":{},\"QuotaCode\":{},\"QuotaName\":{},\"DesiredValue\":{\"type\":\"double\"},\"AwsRegion\":{},\"Unit\":{},\"GlobalQuota\":{\"type\":\"boolean\"}}},\"S1h\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}},\"S1k\":{\"type\":\"list\",\"member\":{\"shape\":\"S13\"}},\"S20\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}}}");

/***/ }),

/***/ 90635:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAWSDefaultServiceQuotas\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Quotas\"},\"ListRequestedServiceQuotaChangeHistory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"RequestedQuotas\"},\"ListRequestedServiceQuotaChangeHistoryByQuota\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"RequestedQuotas\"},\"ListServiceQuotaIncreaseRequestsInTemplate\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ServiceQuotaIncreaseRequestInTemplateList\"},\"ListServiceQuotas\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Quotas\"},\"ListServices\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Services\"}}}");

/***/ }),

/***/ 80503:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-12-10\",\"endpointPrefix\":\"servicecatalog\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Service Catalog\",\"serviceId\":\"Service Catalog\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWS242ServiceCatalogService\",\"uid\":\"servicecatalog-2015-12-10\"},\"operations\":{\"AcceptPortfolioShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"PortfolioShareType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateBudgetWithResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"BudgetName\",\"ResourceId\"],\"members\":{\"BudgetName\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociatePrincipalWithPortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\",\"PrincipalARN\",\"PrincipalType\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"PrincipalARN\":{},\"PrincipalType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateProductWithPortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"PortfolioId\":{},\"SourcePortfolioId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateServiceActionWithProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\",\"ServiceActionId\"],\"members\":{\"ProductId\":{},\"ProvisioningArtifactId\":{},\"ServiceActionId\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateTagOptionWithResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagOptionId\"],\"members\":{\"ResourceId\":{},\"TagOptionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"BatchAssociateServiceActionWithProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceActionAssociations\"],\"members\":{\"ServiceActionAssociations\":{\"shape\":\"Sm\"},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedServiceActionAssociations\":{\"shape\":\"Sp\"}}}},\"BatchDisassociateServiceActionFromProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceActionAssociations\"],\"members\":{\"ServiceActionAssociations\":{\"shape\":\"Sm\"},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedServiceActionAssociations\":{\"shape\":\"Sp\"}}}},\"CopyProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceProductArn\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"SourceProductArn\":{},\"TargetProductId\":{},\"TargetProductName\":{},\"SourceProvisioningArtifactIdentifiers\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}},\"CopyOptions\":{\"type\":\"list\",\"member\":{}},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopyProductToken\":{}}}},\"CreateConstraint\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\",\"ProductId\",\"Parameters\",\"Type\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"ProductId\":{},\"Parameters\":{},\"Type\":{},\"Description\":{},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConstraintDetail\":{\"shape\":\"S1b\"},\"ConstraintParameters\":{},\"Status\":{}}}},\"CreatePortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"DisplayName\",\"ProviderName\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"DisplayName\":{},\"Description\":{},\"ProviderName\":{},\"Tags\":{\"shape\":\"S1i\"},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioDetail\":{\"shape\":\"S1n\"},\"Tags\":{\"shape\":\"S1q\"}}}},\"CreatePortfolioShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"AccountId\":{},\"OrganizationNode\":{\"shape\":\"S1s\"},\"ShareTagOptions\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioShareToken\":{}}}},\"CreateProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Owner\",\"ProductType\",\"ProvisioningArtifactParameters\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"Name\":{},\"Owner\":{},\"Description\":{},\"Distributor\":{},\"SupportDescription\":{},\"SupportEmail\":{},\"SupportUrl\":{},\"ProductType\":{},\"Tags\":{\"shape\":\"S1i\"},\"ProvisioningArtifactParameters\":{\"shape\":\"S24\"},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewDetail\":{\"shape\":\"S2d\"},\"ProvisioningArtifactDetail\":{\"shape\":\"S2i\"},\"Tags\":{\"shape\":\"S1q\"}}}},\"CreateProvisionedProductPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlanName\",\"PlanType\",\"ProductId\",\"ProvisionedProductName\",\"ProvisioningArtifactId\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"PlanName\":{},\"PlanType\":{},\"NotificationArns\":{\"shape\":\"S2o\"},\"PathId\":{},\"ProductId\":{},\"ProvisionedProductName\":{},\"ProvisioningArtifactId\":{},\"ProvisioningParameters\":{\"shape\":\"S2r\"},\"IdempotencyToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S1q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PlanName\":{},\"PlanId\":{},\"ProvisionProductId\":{},\"ProvisionedProductName\":{},\"ProvisioningArtifactId\":{}}}},\"CreateProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"Parameters\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"Parameters\":{\"shape\":\"S24\"},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisioningArtifactDetail\":{\"shape\":\"S2i\"},\"Info\":{\"shape\":\"S27\"},\"Status\":{}}}},\"CreateServiceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"DefinitionType\",\"Definition\",\"IdempotencyToken\"],\"members\":{\"Name\":{},\"DefinitionType\":{},\"Definition\":{\"shape\":\"S32\"},\"Description\":{},\"AcceptLanguage\":{},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceActionDetail\":{\"shape\":\"S37\"}}}},\"CreateTagOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagOptionDetail\":{\"shape\":\"S3d\"}}}},\"DeleteConstraint\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePortfolioShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"AccountId\":{},\"OrganizationNode\":{\"shape\":\"S1s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioShareToken\":{}}}},\"DeleteProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProvisionedProductPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlanId\"],\"members\":{\"AcceptLanguage\":{},\"PlanId\":{},\"IgnoreErrors\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteServiceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTagOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeConstraint\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConstraintDetail\":{\"shape\":\"S1b\"},\"ConstraintParameters\":{},\"Status\":{}}}},\"DescribeCopyProductStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"CopyProductToken\"],\"members\":{\"AcceptLanguage\":{},\"CopyProductToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CopyProductStatus\":{},\"TargetProductId\":{},\"StatusDetail\":{}}}},\"DescribePortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioDetail\":{\"shape\":\"S1n\"},\"Tags\":{\"shape\":\"S1q\"},\"TagOptions\":{\"shape\":\"S45\"},\"Budgets\":{\"shape\":\"S46\"}}}},\"DescribePortfolioShareStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioShareToken\"],\"members\":{\"PortfolioShareToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioShareToken\":{},\"PortfolioId\":{},\"OrganizationNodeValue\":{},\"Status\":{},\"ShareDetails\":{\"type\":\"structure\",\"members\":{\"SuccessfulShares\":{\"type\":\"list\",\"member\":{}},\"ShareErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Accounts\":{\"type\":\"list\",\"member\":{}},\"Message\":{},\"Error\":{}}}}}}}}},\"DescribePortfolioShares\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\",\"Type\"],\"members\":{\"PortfolioId\":{},\"Type\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextPageToken\":{},\"PortfolioShareDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PrincipalId\":{},\"Type\":{},\"Accepted\":{\"type\":\"boolean\"},\"ShareTagOptions\":{\"type\":\"boolean\"}}}}}}},\"DescribeProduct\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewSummary\":{\"shape\":\"S2e\"},\"ProvisioningArtifacts\":{\"shape\":\"S4r\"},\"Budgets\":{\"shape\":\"S46\"},\"LaunchPaths\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{}}}}}}},\"DescribeProductAsAdmin\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"Name\":{},\"SourcePortfolioId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewDetail\":{\"shape\":\"S2d\"},\"ProvisioningArtifactSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"ProvisioningArtifactMetadata\":{\"shape\":\"S27\"}}}},\"Tags\":{\"shape\":\"S1q\"},\"TagOptions\":{\"shape\":\"S45\"},\"Budgets\":{\"shape\":\"S46\"}}}},\"DescribeProductView\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewSummary\":{\"shape\":\"S2e\"},\"ProvisioningArtifacts\":{\"shape\":\"S4r\"}}}},\"DescribeProvisionedProduct\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedProductDetail\":{\"shape\":\"S55\"},\"CloudWatchDashboards\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}}}}},\"DescribeProvisionedProductPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlanId\"],\"members\":{\"AcceptLanguage\":{},\"PlanId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedProductPlanDetails\":{\"type\":\"structure\",\"members\":{\"CreatedTime\":{\"type\":\"timestamp\"},\"PathId\":{},\"ProductId\":{},\"PlanName\":{},\"PlanId\":{},\"ProvisionProductId\":{},\"ProvisionProductName\":{},\"PlanType\":{},\"ProvisioningArtifactId\":{},\"Status\":{},\"UpdatedTime\":{\"type\":\"timestamp\"},\"NotificationArns\":{\"shape\":\"S2o\"},\"ProvisioningParameters\":{\"shape\":\"S2r\"},\"Tags\":{\"shape\":\"S1q\"},\"StatusMessage\":{}}},\"ResourceChanges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Action\":{},\"LogicalResourceId\":{},\"PhysicalResourceId\":{},\"ResourceType\":{},\"Replacement\":{},\"Scope\":{\"type\":\"list\",\"member\":{}},\"Details\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Target\":{\"type\":\"structure\",\"members\":{\"Attribute\":{},\"Name\":{},\"RequiresRecreation\":{}}},\"Evaluation\":{},\"CausingEntity\":{}}}}}}},\"NextPageToken\":{}}}},\"DescribeProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"ProvisioningArtifactId\":{},\"ProductId\":{},\"ProvisioningArtifactName\":{},\"ProductName\":{},\"Verbose\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisioningArtifactDetail\":{\"shape\":\"S2i\"},\"Info\":{\"shape\":\"S27\"},\"Status\":{}}}},\"DescribeProvisioningParameters\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"ProductName\":{},\"ProvisioningArtifactId\":{},\"ProvisioningArtifactName\":{},\"PathId\":{},\"PathName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisioningArtifactParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ParameterKey\":{},\"DefaultValue\":{},\"ParameterType\":{},\"IsNoEcho\":{\"type\":\"boolean\"},\"Description\":{},\"ParameterConstraints\":{\"type\":\"structure\",\"members\":{\"AllowedValues\":{\"type\":\"list\",\"member\":{}},\"AllowedPattern\":{},\"ConstraintDescription\":{},\"MaxLength\":{},\"MinLength\":{},\"MaxValue\":{},\"MinValue\":{}}}}}},\"ConstraintSummaries\":{\"shape\":\"S6h\"},\"UsageInstructions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Value\":{}}}},\"TagOptions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"ProvisioningArtifactPreferences\":{\"type\":\"structure\",\"members\":{\"StackSetAccounts\":{\"shape\":\"S6r\"},\"StackSetRegions\":{\"shape\":\"S6s\"}}},\"ProvisioningArtifactOutputs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Description\":{}}}}}}},\"DescribeRecord\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"},\"RecordOutputs\":{\"shape\":\"S7b\"},\"NextPageToken\":{}}}},\"DescribeServiceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceActionDetail\":{\"shape\":\"S37\"}}}},\"DescribeServiceActionExecutionParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProvisionedProductId\",\"ServiceActionId\"],\"members\":{\"ProvisionedProductId\":{},\"ServiceActionId\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceActionParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"DefaultValues\":{\"shape\":\"S7n\"}}}}}}},\"DescribeTagOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagOptionDetail\":{\"shape\":\"S3d\"}}}},\"DisableAWSOrganizationsAccess\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateBudgetFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"BudgetName\",\"ResourceId\"],\"members\":{\"BudgetName\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociatePrincipalFromPortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\",\"PrincipalARN\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"PrincipalARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateProductFromPortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"PortfolioId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateServiceActionFromProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\",\"ServiceActionId\"],\"members\":{\"ProductId\":{},\"ProvisioningArtifactId\":{},\"ServiceActionId\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateTagOptionFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagOptionId\"],\"members\":{\"ResourceId\":{},\"TagOptionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableAWSOrganizationsAccess\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ExecuteProvisionedProductPlan\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlanId\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"PlanId\":{},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"}}}},\"ExecuteProvisionedProductServiceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProvisionedProductId\",\"ServiceActionId\",\"ExecuteToken\"],\"members\":{\"ProvisionedProductId\":{},\"ServiceActionId\":{},\"ExecuteToken\":{\"idempotencyToken\":true},\"AcceptLanguage\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S7n\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"}}}},\"GetAWSOrganizationsAccessStatus\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"AccessStatus\":{}}}},\"GetProvisionedProductOutputs\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"ProvisionedProductId\":{},\"ProvisionedProductName\":{},\"OutputKeys\":{\"type\":\"list\",\"member\":{}},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Outputs\":{\"shape\":\"S7b\"},\"NextPageToken\":{}}}},\"ImportAsProvisionedProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\",\"ProvisionedProductName\",\"PhysicalId\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{},\"ProvisionedProductName\":{},\"PhysicalId\":{},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"}}}},\"ListAcceptedPortfolioShares\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"},\"PortfolioShareType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioDetails\":{\"shape\":\"S8l\"},\"NextPageToken\":{}}}},\"ListBudgetsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"AcceptLanguage\":{},\"ResourceId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Budgets\":{\"shape\":\"S46\"},\"NextPageToken\":{}}}},\"ListConstraintsForPortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"ProductId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConstraintDetails\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}},\"NextPageToken\":{}}}},\"ListLaunchPaths\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LaunchPathSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ConstraintSummaries\":{\"shape\":\"S6h\"},\"Tags\":{\"shape\":\"S1q\"},\"Name\":{}}}},\"NextPageToken\":{}}}},\"ListOrganizationPortfolioAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\",\"OrganizationNodeType\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"OrganizationNodeType\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationNodes\":{\"type\":\"list\",\"member\":{\"shape\":\"S1s\"}},\"NextPageToken\":{}}}},\"ListPortfolioAccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"OrganizationParentId\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountIds\":{\"type\":\"list\",\"member\":{}},\"NextPageToken\":{}}}},\"ListPortfolios\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioDetails\":{\"shape\":\"S8l\"},\"NextPageToken\":{}}}},\"ListPortfoliosForProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioDetails\":{\"shape\":\"S8l\"},\"NextPageToken\":{}}}},\"ListPrincipalsForPortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Principals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PrincipalARN\":{},\"PrincipalType\":{}}}},\"NextPageToken\":{}}}},\"ListProvisionedProductPlans\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"ProvisionProductId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{},\"AccessLevelFilter\":{\"shape\":\"S9a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedProductPlans\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlanName\":{},\"PlanId\":{},\"ProvisionProductId\":{},\"ProvisionProductName\":{},\"PlanType\":{},\"ProvisioningArtifactId\":{}}}},\"NextPageToken\":{}}}},\"ListProvisioningArtifacts\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisioningArtifactDetails\":{\"type\":\"list\",\"member\":{\"shape\":\"S2i\"}},\"NextPageToken\":{}}}},\"ListProvisioningArtifactsForServiceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceActionId\"],\"members\":{\"ServiceActionId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisioningArtifactViews\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ProductViewSummary\":{\"shape\":\"S2e\"},\"ProvisioningArtifact\":{\"shape\":\"S4s\"}}}},\"NextPageToken\":{}}}},\"ListRecordHistory\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"AccessLevelFilter\":{\"shape\":\"S9a\"},\"SearchFilter\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetails\":{\"type\":\"list\",\"member\":{\"shape\":\"S70\"}},\"NextPageToken\":{}}}},\"ListResourcesForTagOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"TagOptionId\"],\"members\":{\"TagOptionId\":{},\"ResourceType\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceDetails\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ARN\":{},\"Name\":{},\"Description\":{},\"CreatedTime\":{\"type\":\"timestamp\"}}}},\"PageToken\":{}}}},\"ListServiceActions\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceActionSummaries\":{\"shape\":\"Sa5\"},\"NextPageToken\":{}}}},\"ListServiceActionsForProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\"],\"members\":{\"ProductId\":{},\"ProvisioningArtifactId\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceActionSummaries\":{\"shape\":\"Sa5\"},\"NextPageToken\":{}}}},\"ListStackInstancesForProvisionedProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProvisionedProductId\"],\"members\":{\"AcceptLanguage\":{},\"ProvisionedProductId\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StackInstances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Account\":{},\"Region\":{},\"StackInstanceStatus\":{}}}},\"NextPageToken\":{}}}},\"ListTagOptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Active\":{\"type\":\"boolean\"}}},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagOptionDetails\":{\"shape\":\"S45\"},\"PageToken\":{}}}},\"ProvisionProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProvisionedProductName\",\"ProvisionToken\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"ProductName\":{},\"ProvisioningArtifactId\":{},\"ProvisioningArtifactName\":{},\"PathId\":{},\"PathName\":{},\"ProvisionedProductName\":{},\"ProvisioningParameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"ProvisioningPreferences\":{\"type\":\"structure\",\"members\":{\"StackSetAccounts\":{\"shape\":\"S6r\"},\"StackSetRegions\":{\"shape\":\"S6s\"},\"StackSetFailureToleranceCount\":{\"type\":\"integer\"},\"StackSetFailureTolerancePercentage\":{\"type\":\"integer\"},\"StackSetMaxConcurrencyCount\":{\"type\":\"integer\"},\"StackSetMaxConcurrencyPercentage\":{\"type\":\"integer\"}}},\"Tags\":{\"shape\":\"S1q\"},\"NotificationArns\":{\"shape\":\"S2o\"},\"ProvisionToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"}}}},\"RejectPortfolioShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"PortfolioShareType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ScanProvisionedProducts\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"AccessLevelFilter\":{\"shape\":\"S9a\"},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedProducts\":{\"type\":\"list\",\"member\":{\"shape\":\"S55\"}},\"NextPageToken\":{}}}},\"SearchProducts\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"Filters\":{\"shape\":\"Sav\"},\"PageSize\":{\"type\":\"integer\"},\"SortBy\":{},\"SortOrder\":{},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"S2e\"}},\"ProductViewAggregations\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"ApproximateCount\":{\"type\":\"integer\"}}}}},\"NextPageToken\":{}}}},\"SearchProductsAsAdmin\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"Filters\":{\"shape\":\"Sav\"},\"SortBy\":{},\"SortOrder\":{},\"PageToken\":{},\"PageSize\":{\"type\":\"integer\"},\"ProductSource\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewDetails\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}},\"NextPageToken\":{}}}},\"SearchProvisionedProducts\":{\"input\":{\"type\":\"structure\",\"members\":{\"AcceptLanguage\":{},\"AccessLevelFilter\":{\"shape\":\"S9a\"},\"Filters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"SortBy\":{},\"SortOrder\":{},\"PageSize\":{\"type\":\"integer\"},\"PageToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedProducts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Type\":{},\"Id\":{},\"Status\":{},\"StatusMessage\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"IdempotencyToken\":{},\"LastRecordId\":{},\"LastProvisioningRecordId\":{},\"LastSuccessfulProvisioningRecordId\":{},\"Tags\":{\"shape\":\"S1q\"},\"PhysicalId\":{},\"ProductId\":{},\"ProductName\":{},\"ProvisioningArtifactId\":{},\"ProvisioningArtifactName\":{},\"UserArn\":{},\"UserArnSession\":{}}}},\"TotalResultsCount\":{\"type\":\"integer\"},\"NextPageToken\":{}}}},\"TerminateProvisionedProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"TerminateToken\"],\"members\":{\"ProvisionedProductName\":{},\"ProvisionedProductId\":{},\"TerminateToken\":{\"idempotencyToken\":true},\"IgnoreErrors\":{\"type\":\"boolean\"},\"AcceptLanguage\":{},\"RetainPhysicalResources\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"}}}},\"UpdateConstraint\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"Description\":{},\"Parameters\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConstraintDetail\":{\"shape\":\"S1b\"},\"ConstraintParameters\":{},\"Status\":{}}}},\"UpdatePortfolio\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"DisplayName\":{},\"Description\":{},\"ProviderName\":{},\"AddTags\":{\"shape\":\"S1i\"},\"RemoveTags\":{\"shape\":\"Sbw\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioDetail\":{\"shape\":\"S1n\"},\"Tags\":{\"shape\":\"S1q\"}}}},\"UpdatePortfolioShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"PortfolioId\"],\"members\":{\"AcceptLanguage\":{},\"PortfolioId\":{},\"AccountId\":{},\"OrganizationNode\":{\"shape\":\"S1s\"},\"ShareTagOptions\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PortfolioShareToken\":{},\"Status\":{}}}},\"UpdateProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"AcceptLanguage\":{},\"Id\":{},\"Name\":{},\"Owner\":{},\"Description\":{},\"Distributor\":{},\"SupportDescription\":{},\"SupportEmail\":{},\"SupportUrl\":{},\"AddTags\":{\"shape\":\"S1i\"},\"RemoveTags\":{\"shape\":\"Sbw\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProductViewDetail\":{\"shape\":\"S2d\"},\"Tags\":{\"shape\":\"S1q\"}}}},\"UpdateProvisionedProduct\":{\"input\":{\"type\":\"structure\",\"required\":[\"UpdateToken\"],\"members\":{\"AcceptLanguage\":{},\"ProvisionedProductName\":{},\"ProvisionedProductId\":{},\"ProductId\":{},\"ProductName\":{},\"ProvisioningArtifactId\":{},\"ProvisioningArtifactName\":{},\"PathId\":{},\"PathName\":{},\"ProvisioningParameters\":{\"shape\":\"S2r\"},\"ProvisioningPreferences\":{\"type\":\"structure\",\"members\":{\"StackSetAccounts\":{\"shape\":\"S6r\"},\"StackSetRegions\":{\"shape\":\"S6s\"},\"StackSetFailureToleranceCount\":{\"type\":\"integer\"},\"StackSetFailureTolerancePercentage\":{\"type\":\"integer\"},\"StackSetMaxConcurrencyCount\":{\"type\":\"integer\"},\"StackSetMaxConcurrencyPercentage\":{\"type\":\"integer\"},\"StackSetOperationType\":{}}},\"Tags\":{\"shape\":\"S1q\"},\"UpdateToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"RecordDetail\":{\"shape\":\"S70\"}}}},\"UpdateProvisionedProductProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProvisionedProductId\",\"ProvisionedProductProperties\",\"IdempotencyToken\"],\"members\":{\"AcceptLanguage\":{},\"ProvisionedProductId\":{},\"ProvisionedProductProperties\":{\"shape\":\"Sc8\"},\"IdempotencyToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisionedProductId\":{},\"ProvisionedProductProperties\":{\"shape\":\"Sc8\"},\"RecordId\":{},\"Status\":{}}}},\"UpdateProvisioningArtifact\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProductId\",\"ProvisioningArtifactId\"],\"members\":{\"AcceptLanguage\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{},\"Name\":{},\"Description\":{},\"Active\":{\"type\":\"boolean\"},\"Guidance\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProvisioningArtifactDetail\":{\"shape\":\"S2i\"},\"Info\":{\"shape\":\"S27\"},\"Status\":{}}}},\"UpdateServiceAction\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Name\":{},\"Definition\":{\"shape\":\"S32\"},\"Description\":{},\"AcceptLanguage\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceActionDetail\":{\"shape\":\"S37\"}}}},\"UpdateTagOption\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"Value\":{},\"Active\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagOptionDetail\":{\"shape\":\"S3d\"}}}}},\"shapes\":{\"Sm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ServiceActionId\",\"ProductId\",\"ProvisioningArtifactId\"],\"members\":{\"ServiceActionId\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{}}}},\"Sp\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServiceActionId\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"S1b\":{\"type\":\"structure\",\"members\":{\"ConstraintId\":{},\"Type\":{},\"Description\":{},\"Owner\":{},\"ProductId\":{},\"PortfolioId\":{}}},\"S1i\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}},\"S1j\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ARN\":{},\"DisplayName\":{},\"Description\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"ProviderName\":{}}},\"S1q\":{\"type\":\"list\",\"member\":{\"shape\":\"S1j\"}},\"S1s\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Value\":{}}},\"S24\":{\"type\":\"structure\",\"required\":[\"Info\"],\"members\":{\"Name\":{},\"Description\":{},\"Info\":{\"shape\":\"S27\"},\"Type\":{},\"DisableTemplateValidation\":{\"type\":\"boolean\"}}},\"S27\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S2d\":{\"type\":\"structure\",\"members\":{\"ProductViewSummary\":{\"shape\":\"S2e\"},\"Status\":{},\"ProductARN\":{},\"CreatedTime\":{\"type\":\"timestamp\"}}},\"S2e\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ProductId\":{},\"Name\":{},\"Owner\":{},\"ShortDescription\":{},\"Type\":{},\"Distributor\":{},\"HasDefaultPath\":{\"type\":\"boolean\"},\"SupportEmail\":{},\"SupportDescription\":{},\"SupportUrl\":{}}},\"S2i\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"Type\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"Active\":{\"type\":\"boolean\"},\"Guidance\":{}}},\"S2o\":{\"type\":\"list\",\"member\":{}},\"S2r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"UsePreviousValue\":{\"type\":\"boolean\"}}}},\"S32\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S37\":{\"type\":\"structure\",\"members\":{\"ServiceActionSummary\":{\"shape\":\"S38\"},\"Definition\":{\"shape\":\"S32\"}}},\"S38\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"DefinitionType\":{}}},\"S3d\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{},\"Active\":{\"type\":\"boolean\"},\"Id\":{},\"Owner\":{}}},\"S45\":{\"type\":\"list\",\"member\":{\"shape\":\"S3d\"}},\"S46\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BudgetName\":{}}}},\"S4r\":{\"type\":\"list\",\"member\":{\"shape\":\"S4s\"}},\"S4s\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"Guidance\":{}}},\"S55\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Type\":{},\"Id\":{},\"Status\":{},\"StatusMessage\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"IdempotencyToken\":{},\"LastRecordId\":{},\"LastProvisioningRecordId\":{},\"LastSuccessfulProvisioningRecordId\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{},\"LaunchRoleArn\":{}}},\"S6h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Description\":{}}}},\"S6r\":{\"type\":\"list\",\"member\":{}},\"S6s\":{\"type\":\"list\",\"member\":{}},\"S70\":{\"type\":\"structure\",\"members\":{\"RecordId\":{},\"ProvisionedProductName\":{},\"Status\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"UpdatedTime\":{\"type\":\"timestamp\"},\"ProvisionedProductType\":{},\"RecordType\":{},\"ProvisionedProductId\":{},\"ProductId\":{},\"ProvisioningArtifactId\":{},\"PathId\":{},\"RecordErrors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Code\":{},\"Description\":{}}}},\"RecordTags\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"LaunchRoleArn\":{}}},\"S7b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OutputKey\":{},\"OutputValue\":{},\"Description\":{}}}},\"S7n\":{\"type\":\"list\",\"member\":{}},\"S8l\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\"}},\"S9a\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}},\"Sa5\":{\"type\":\"list\",\"member\":{\"shape\":\"S38\"}},\"Sav\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"Sbw\":{\"type\":\"list\",\"member\":{}},\"Sc8\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 71855:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribePortfolioShares\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"GetProvisionedProductOutputs\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListAcceptedPortfolioShares\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListBudgetsForResource\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListConstraintsForPortfolio\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListLaunchPaths\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListOrganizationPortfolioAccess\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListPortfolioAccess\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListPortfolios\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListPortfoliosForProduct\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListPrincipalsForPortfolio\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListProvisioningArtifactsForServiceAction\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListResourcesForTagOption\":{\"input_token\":\"PageToken\",\"output_token\":\"PageToken\",\"limit_key\":\"PageSize\"},\"ListServiceActions\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListServiceActionsForProvisioningArtifact\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"ListTagOptions\":{\"input_token\":\"PageToken\",\"output_token\":\"PageToken\",\"limit_key\":\"PageSize\"},\"SearchProducts\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"SearchProductsAsAdmin\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"},\"SearchProvisionedProducts\":{\"input_token\":\"PageToken\",\"output_token\":\"NextPageToken\",\"limit_key\":\"PageSize\"}}}");

/***/ }),

/***/ 47635:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-06-24\",\"endpointPrefix\":\"servicecatalog-appregistry\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"AppRegistry\",\"serviceFullName\":\"AWS Service Catalog App Registry\",\"serviceId\":\"Service Catalog AppRegistry\",\"signatureVersion\":\"v4\",\"signingName\":\"servicecatalog\",\"uid\":\"AWS242AppRegistry-2020-06-24\"},\"operations\":{\"AssociateAttributeGroup\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/applications/{application}/attribute-groups/{attributeGroup}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\",\"attributeGroup\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"attributeGroup\":{\"location\":\"uri\",\"locationName\":\"attributeGroup\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationArn\":{},\"attributeGroupArn\":{}}}},\"AssociateResource\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/applications/{application}/resources/{resourceType}/{resource}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\",\"resourceType\",\"resource\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"resourceType\":{\"location\":\"uri\",\"locationName\":\"resourceType\"},\"resource\":{\"location\":\"uri\",\"locationName\":\"resource\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationArn\":{},\"resourceArn\":{}}}},\"CreateApplication\":{\"http\":{\"requestUri\":\"/applications\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"clientToken\"],\"members\":{\"name\":{},\"description\":{},\"tags\":{\"shape\":\"Sf\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"application\":{\"shape\":\"Sk\"}}}},\"CreateAttributeGroup\":{\"http\":{\"requestUri\":\"/attribute-groups\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"attributes\",\"clientToken\"],\"members\":{\"name\":{},\"description\":{},\"attributes\":{},\"tags\":{\"shape\":\"Sf\"},\"clientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributeGroup\":{\"shape\":\"Sq\"}}}},\"DeleteApplication\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{application}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"application\":{\"shape\":\"Su\"}}}},\"DeleteAttributeGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/attribute-groups/{attributeGroup}\"},\"input\":{\"type\":\"structure\",\"required\":[\"attributeGroup\"],\"members\":{\"attributeGroup\":{\"location\":\"uri\",\"locationName\":\"attributeGroup\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributeGroup\":{\"shape\":\"Sx\"}}}},\"DisassociateAttributeGroup\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{application}/attribute-groups/{attributeGroup}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\",\"attributeGroup\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"attributeGroup\":{\"location\":\"uri\",\"locationName\":\"attributeGroup\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationArn\":{},\"attributeGroupArn\":{}}}},\"DisassociateResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/applications/{application}/resources/{resourceType}/{resource}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\",\"resourceType\",\"resource\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"resourceType\":{\"location\":\"uri\",\"locationName\":\"resourceType\"},\"resource\":{\"location\":\"uri\",\"locationName\":\"resource\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationArn\":{},\"resourceArn\":{}}}},\"GetApplication\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{application}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"creationTime\":{\"shape\":\"Sm\"},\"lastUpdateTime\":{\"shape\":\"Sm\"},\"associatedResourceCount\":{\"type\":\"integer\"},\"tags\":{\"shape\":\"Sf\"}}}},\"GetAttributeGroup\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/attribute-groups/{attributeGroup}\"},\"input\":{\"type\":\"structure\",\"required\":[\"attributeGroup\"],\"members\":{\"attributeGroup\":{\"location\":\"uri\",\"locationName\":\"attributeGroup\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"attributes\":{},\"creationTime\":{\"shape\":\"Sm\"},\"lastUpdateTime\":{\"shape\":\"Sm\"},\"tags\":{\"shape\":\"Sf\"}}}},\"ListApplications\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applications\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}},\"nextToken\":{}}},\"idempotent\":true},\"ListAssociatedAttributeGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{application}/attribute-groups\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributeGroups\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}},\"idempotent\":true},\"ListAssociatedResources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/applications/{application}/resources\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"name\":{},\"arn\":{}}}},\"nextToken\":{}}},\"idempotent\":true},\"ListAttributeGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/attribute-groups\"},\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributeGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"Sx\"}},\"nextToken\":{}}},\"idempotent\":true},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"Sf\"}}}},\"SyncResource\":{\"http\":{\"requestUri\":\"/sync/{resourceType}/{resource}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{\"location\":\"uri\",\"locationName\":\"resourceType\"},\"resource\":{\"location\":\"uri\",\"locationName\":\"resource\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"applicationArn\":{},\"resourceArn\":{},\"actionTaken\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"Sf\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApplication\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/applications/{application}\"},\"input\":{\"type\":\"structure\",\"required\":[\"application\"],\"members\":{\"application\":{\"location\":\"uri\",\"locationName\":\"application\"},\"name\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"application\":{\"shape\":\"Sk\"}}}},\"UpdateAttributeGroup\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/attribute-groups/{attributeGroup}\"},\"input\":{\"type\":\"structure\",\"required\":[\"attributeGroup\"],\"members\":{\"attributeGroup\":{\"location\":\"uri\",\"locationName\":\"attributeGroup\"},\"name\":{},\"description\":{},\"attributes\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"attributeGroup\":{\"shape\":\"Sq\"}}}}},\"shapes\":{\"Sf\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sk\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"creationTime\":{\"shape\":\"Sm\"},\"lastUpdateTime\":{\"shape\":\"Sm\"},\"tags\":{\"shape\":\"Sf\"}}},\"Sm\":{\"type\":\"timestamp\",\"timestampFormat\":\"iso8601\"},\"Sq\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"creationTime\":{\"shape\":\"Sm\"},\"lastUpdateTime\":{\"shape\":\"Sm\"},\"tags\":{\"shape\":\"Sf\"}}},\"Su\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"creationTime\":{\"shape\":\"Sm\"},\"lastUpdateTime\":{\"shape\":\"Sm\"}}},\"Sx\":{\"type\":\"structure\",\"members\":{\"id\":{},\"arn\":{},\"name\":{},\"description\":{},\"creationTime\":{\"shape\":\"Sm\"},\"lastUpdateTime\":{\"shape\":\"Sm\"}}}}}");

/***/ }),

/***/ 67278:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListApplications\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"applications\"},\"ListAssociatedAttributeGroups\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"attributeGroups\"},\"ListAssociatedResources\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"resources\"},\"ListAttributeGroups\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"attributeGroups\"}}}");

/***/ }),

/***/ 20459:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-03-14\",\"endpointPrefix\":\"servicediscovery\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"ServiceDiscovery\",\"serviceFullName\":\"AWS Cloud Map\",\"serviceId\":\"ServiceDiscovery\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Route53AutoNaming_v20170314\",\"uid\":\"servicediscovery-2017-03-14\"},\"operations\":{\"CreateHttpNamespace\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"CreatorRequestId\":{\"idempotencyToken\":true},\"Description\":{},\"Tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"CreatePrivateDnsNamespace\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Vpc\"],\"members\":{\"Name\":{},\"CreatorRequestId\":{\"idempotencyToken\":true},\"Description\":{},\"Vpc\":{},\"Tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"CreatePublicDnsNamespace\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"CreatorRequestId\":{\"idempotencyToken\":true},\"Description\":{},\"Tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"CreateService\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"NamespaceId\":{},\"CreatorRequestId\":{\"idempotencyToken\":true},\"Description\":{},\"DnsConfig\":{\"shape\":\"Sj\"},\"HealthCheckConfig\":{\"shape\":\"Sp\"},\"HealthCheckCustomConfig\":{\"shape\":\"St\"},\"Tags\":{\"shape\":\"S5\"},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Service\":{\"shape\":\"Sw\"}}}},\"DeleteNamespace\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"DeleteService\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\",\"InstanceId\"],\"members\":{\"ServiceId\":{},\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"DiscoverInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"NamespaceName\",\"ServiceName\"],\"members\":{\"NamespaceName\":{},\"ServiceName\":{},\"MaxResults\":{\"type\":\"integer\"},\"QueryParameters\":{\"shape\":\"S1a\"},\"OptionalParameters\":{\"shape\":\"S1a\"},\"HealthStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"NamespaceName\":{},\"ServiceName\":{},\"HealthStatus\":{},\"Attributes\":{\"shape\":\"S1a\"}}}}}},\"endpoint\":{\"hostPrefix\":\"data-\"}},\"GetInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\",\"InstanceId\"],\"members\":{\"ServiceId\":{},\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instance\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{},\"CreatorRequestId\":{},\"Attributes\":{\"shape\":\"S1a\"}}}}}},\"GetInstancesHealthStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\"],\"members\":{\"ServiceId\":{},\"Instances\":{\"type\":\"list\",\"member\":{}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"NextToken\":{}}}},\"GetNamespace\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Namespace\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"Type\":{},\"Description\":{},\"ServiceCount\":{\"type\":\"integer\"},\"Properties\":{\"shape\":\"S1v\"},\"CreateDate\":{\"type\":\"timestamp\"},\"CreatorRequestId\":{}}}}}},\"GetOperation\":{\"input\":{\"type\":\"structure\",\"required\":[\"OperationId\"],\"members\":{\"OperationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Operation\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Type\":{},\"Status\":{},\"ErrorMessage\":{},\"ErrorCode\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"UpdateDate\":{\"type\":\"timestamp\"},\"Targets\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"GetService\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Service\":{\"shape\":\"Sw\"}}}},\"ListInstances\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\"],\"members\":{\"ServiceId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Attributes\":{\"shape\":\"S1a\"}}}},\"NextToken\":{}}}},\"ListNamespaces\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S2h\"},\"Condition\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Namespaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"Type\":{},\"Description\":{},\"ServiceCount\":{\"type\":\"integer\"},\"Properties\":{\"shape\":\"S1v\"},\"CreateDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListOperations\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S2h\"},\"Condition\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Operations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Status\":{}}}},\"NextToken\":{}}}},\"ListServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Values\"],\"members\":{\"Name\":{},\"Values\":{\"shape\":\"S2h\"},\"Condition\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"Type\":{},\"Description\":{},\"InstanceCount\":{\"type\":\"integer\"},\"DnsConfig\":{\"shape\":\"Sj\"},\"HealthCheckConfig\":{\"shape\":\"Sp\"},\"HealthCheckCustomConfig\":{\"shape\":\"St\"},\"CreateDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S5\"}}}},\"RegisterInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\",\"InstanceId\",\"Attributes\"],\"members\":{\"ServiceId\":{},\"InstanceId\":{},\"CreatorRequestId\":{\"idempotencyToken\":true},\"Attributes\":{\"shape\":\"S1a\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateInstanceCustomHealthStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServiceId\",\"InstanceId\",\"Status\"],\"members\":{\"ServiceId\":{},\"InstanceId\":{},\"Status\":{}}}},\"UpdateService\":{\"input\":{\"type\":\"structure\",\"required\":[\"Id\",\"Service\"],\"members\":{\"Id\":{},\"Service\":{\"type\":\"structure\",\"members\":{\"Description\":{},\"DnsConfig\":{\"type\":\"structure\",\"required\":[\"DnsRecords\"],\"members\":{\"DnsRecords\":{\"shape\":\"Sl\"}}},\"HealthCheckConfig\":{\"shape\":\"Sp\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"OperationId\":{}}}}},\"shapes\":{\"S5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"DnsRecords\"],\"members\":{\"NamespaceId\":{\"deprecated\":true,\"deprecatedMessage\":\"Top level attribute in request should be used to reference namespace-id\"},\"RoutingPolicy\":{},\"DnsRecords\":{\"shape\":\"Sl\"}}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Type\",\"TTL\"],\"members\":{\"Type\":{},\"TTL\":{\"type\":\"long\"}}}},\"Sp\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"ResourcePath\":{},\"FailureThreshold\":{\"type\":\"integer\"}}},\"St\":{\"type\":\"structure\",\"members\":{\"FailureThreshold\":{\"deprecated\":true,\"deprecatedMessage\":\"Configurable FailureThreshold of HealthCheckCustomConfig is deprecated.  It will always have value 1.\",\"type\":\"integer\"}}},\"Sw\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Arn\":{},\"Name\":{},\"NamespaceId\":{},\"Description\":{},\"InstanceCount\":{\"type\":\"integer\"},\"DnsConfig\":{\"shape\":\"Sj\"},\"Type\":{},\"HealthCheckConfig\":{\"shape\":\"Sp\"},\"HealthCheckCustomConfig\":{\"shape\":\"St\"},\"CreateDate\":{\"type\":\"timestamp\"},\"CreatorRequestId\":{}}},\"S1a\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1v\":{\"type\":\"structure\",\"members\":{\"DnsProperties\":{\"type\":\"structure\",\"members\":{\"HostedZoneId\":{}}},\"HttpProperties\":{\"type\":\"structure\",\"members\":{\"HttpName\":{}}}}},\"S2h\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 19834:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetInstancesHealthStatus\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListInstances\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListNamespaces\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListOperations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListServices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 32530:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-09-27\",\"endpointPrefix\":\"email\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Amazon SES V2\",\"serviceFullName\":\"Amazon Simple Email Service\",\"serviceId\":\"SESv2\",\"signatureVersion\":\"v4\",\"signingName\":\"ses\",\"uid\":\"sesv2-2019-09-27\"},\"operations\":{\"CreateConfigurationSet\":{\"http\":{\"requestUri\":\"/v2/email/configuration-sets\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{},\"TrackingOptions\":{\"shape\":\"S3\"},\"DeliveryOptions\":{\"shape\":\"S5\"},\"ReputationOptions\":{\"shape\":\"S8\"},\"SendingOptions\":{\"shape\":\"Sb\"},\"Tags\":{\"shape\":\"Sc\"},\"SuppressionOptions\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateConfigurationSetEventDestination\":{\"http\":{\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/event-destinations\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\",\"EventDestination\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{},\"EventDestination\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateContact\":{\"http\":{\"requestUri\":\"/v2/email/contact-lists/{ContactListName}/contacts\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\",\"EmailAddress\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"},\"EmailAddress\":{},\"TopicPreferences\":{\"shape\":\"S13\"},\"UnsubscribeAll\":{\"type\":\"boolean\"},\"AttributesData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateContactList\":{\"http\":{\"requestUri\":\"/v2/email/contact-lists\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\"],\"members\":{\"ContactListName\":{},\"Topics\":{\"shape\":\"S1b\"},\"Description\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateCustomVerificationEmailTemplate\":{\"http\":{\"requestUri\":\"/v2/email/custom-verification-email-templates\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"FromEmailAddress\",\"TemplateSubject\",\"TemplateContent\",\"SuccessRedirectionURL\",\"FailureRedirectionURL\"],\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"TemplateContent\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDedicatedIpPool\":{\"http\":{\"requestUri\":\"/v2/email/dedicated-ip-pools\"},\"input\":{\"type\":\"structure\",\"required\":[\"PoolName\"],\"members\":{\"PoolName\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateDeliverabilityTestReport\":{\"http\":{\"requestUri\":\"/v2/email/deliverability-dashboard/test\"},\"input\":{\"type\":\"structure\",\"required\":[\"FromEmailAddress\",\"Content\"],\"members\":{\"ReportName\":{},\"FromEmailAddress\":{},\"Content\":{\"shape\":\"S1r\"},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ReportId\",\"DeliverabilityTestStatus\"],\"members\":{\"ReportId\":{},\"DeliverabilityTestStatus\":{}}}},\"CreateEmailIdentity\":{\"http\":{\"requestUri\":\"/v2/email/identities\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{},\"Tags\":{\"shape\":\"Sc\"},\"DkimSigningAttributes\":{\"shape\":\"S26\"},\"ConfigurationSetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"VerifiedForSendingStatus\":{\"type\":\"boolean\"},\"DkimAttributes\":{\"shape\":\"S2b\"}}}},\"CreateEmailIdentityPolicy\":{\"http\":{\"requestUri\":\"/v2/email/identities/{EmailIdentity}/policies/{PolicyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\",\"PolicyName\",\"Policy\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"PolicyName\":{\"location\":\"uri\",\"locationName\":\"PolicyName\"},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateEmailTemplate\":{\"http\":{\"requestUri\":\"/v2/email/templates\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"TemplateContent\"],\"members\":{\"TemplateName\":{},\"TemplateContent\":{\"shape\":\"S2l\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateImportJob\":{\"http\":{\"requestUri\":\"/v2/email/import-jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"ImportDestination\",\"ImportDataSource\"],\"members\":{\"ImportDestination\":{\"shape\":\"S2q\"},\"ImportDataSource\":{\"shape\":\"S2v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"DeleteConfigurationSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSetEventDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/event-destinations/{EventDestinationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{\"location\":\"uri\",\"locationName\":\"EventDestinationName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteContact\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}/contacts/{EmailAddress}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\",\"EmailAddress\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"},\"EmailAddress\":{\"location\":\"uri\",\"locationName\":\"EmailAddress\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteContactList\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteCustomVerificationEmailTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/custom-verification-email-templates/{TemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDedicatedIpPool\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/dedicated-ip-pools/{PoolName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"PoolName\"],\"members\":{\"PoolName\":{\"location\":\"uri\",\"locationName\":\"PoolName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEmailIdentity\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEmailIdentityPolicy\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/policies/{PolicyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\",\"PolicyName\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"PolicyName\":{\"location\":\"uri\",\"locationName\":\"PolicyName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteEmailTemplate\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/templates/{TemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSuppressedDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/suppression/addresses/{EmailAddress}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\"],\"members\":{\"EmailAddress\":{\"location\":\"uri\",\"locationName\":\"EmailAddress\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetAccount\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/account\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIpAutoWarmupEnabled\":{\"type\":\"boolean\"},\"EnforcementStatus\":{},\"ProductionAccessEnabled\":{\"type\":\"boolean\"},\"SendQuota\":{\"type\":\"structure\",\"members\":{\"Max24HourSend\":{\"type\":\"double\"},\"MaxSendRate\":{\"type\":\"double\"},\"SentLast24Hours\":{\"type\":\"double\"}}},\"SendingEnabled\":{\"type\":\"boolean\"},\"SuppressionAttributes\":{\"type\":\"structure\",\"members\":{\"SuppressedReasons\":{\"shape\":\"Sh\"}}},\"Details\":{\"type\":\"structure\",\"members\":{\"MailType\":{},\"WebsiteURL\":{\"shape\":\"S3u\"},\"ContactLanguage\":{},\"UseCaseDescription\":{\"shape\":\"S3w\"},\"AdditionalContactEmailAddresses\":{\"shape\":\"S3x\"},\"ReviewDetails\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"CaseId\":{}}}}}}}},\"GetBlacklistReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard/blacklist-report\"},\"input\":{\"type\":\"structure\",\"required\":[\"BlacklistItemNames\"],\"members\":{\"BlacklistItemNames\":{\"location\":\"querystring\",\"locationName\":\"BlacklistItemNames\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"required\":[\"BlacklistReport\"],\"members\":{\"BlacklistReport\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RblName\":{},\"ListingTime\":{\"type\":\"timestamp\"},\"Description\":{}}}}}}}},\"GetConfigurationSet\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{},\"TrackingOptions\":{\"shape\":\"S3\"},\"DeliveryOptions\":{\"shape\":\"S5\"},\"ReputationOptions\":{\"shape\":\"S8\"},\"SendingOptions\":{\"shape\":\"Sb\"},\"Tags\":{\"shape\":\"Sc\"},\"SuppressionOptions\":{\"shape\":\"Sg\"}}}},\"GetConfigurationSetEventDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/event-destinations\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EventDestinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"MatchingEventTypes\"],\"members\":{\"Name\":{},\"Enabled\":{\"type\":\"boolean\"},\"MatchingEventTypes\":{\"shape\":\"Sn\"},\"KinesisFirehoseDestination\":{\"shape\":\"Sp\"},\"CloudWatchDestination\":{\"shape\":\"Sr\"},\"SnsDestination\":{\"shape\":\"Sx\"},\"PinpointDestination\":{\"shape\":\"Sy\"}}}}}}},\"GetContact\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}/contacts/{EmailAddress}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\",\"EmailAddress\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"},\"EmailAddress\":{\"location\":\"uri\",\"locationName\":\"EmailAddress\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactListName\":{},\"EmailAddress\":{},\"TopicPreferences\":{\"shape\":\"S13\"},\"TopicDefaultPreferences\":{\"shape\":\"S13\"},\"UnsubscribeAll\":{\"type\":\"boolean\"},\"AttributesData\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}},\"GetContactList\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactListName\":{},\"Topics\":{\"shape\":\"S1b\"},\"Description\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"Sc\"}}}},\"GetCustomVerificationEmailTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/custom-verification-email-templates/{TemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"TemplateContent\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}}},\"GetDedicatedIp\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/dedicated-ips/{IP}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Ip\"],\"members\":{\"Ip\":{\"location\":\"uri\",\"locationName\":\"IP\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIp\":{\"shape\":\"S4r\"}}}},\"GetDedicatedIps\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/dedicated-ips\"},\"input\":{\"type\":\"structure\",\"members\":{\"PoolName\":{\"location\":\"querystring\",\"locationName\":\"PoolName\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIps\":{\"type\":\"list\",\"member\":{\"shape\":\"S4r\"}},\"NextToken\":{}}}},\"GetDeliverabilityDashboardOptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"DashboardEnabled\"],\"members\":{\"DashboardEnabled\":{\"type\":\"boolean\"},\"SubscriptionExpiryDate\":{\"type\":\"timestamp\"},\"AccountStatus\":{},\"ActiveSubscribedDomains\":{\"shape\":\"S52\"},\"PendingExpirationSubscribedDomains\":{\"shape\":\"S52\"}}}},\"GetDeliverabilityTestReport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard/test-reports/{ReportId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ReportId\"],\"members\":{\"ReportId\":{\"location\":\"uri\",\"locationName\":\"ReportId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeliverabilityTestReport\",\"OverallPlacement\",\"IspPlacements\"],\"members\":{\"DeliverabilityTestReport\":{\"shape\":\"S5a\"},\"OverallPlacement\":{\"shape\":\"S5c\"},\"IspPlacements\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IspName\":{},\"PlacementStatistics\":{\"shape\":\"S5c\"}}}},\"Message\":{},\"Tags\":{\"shape\":\"Sc\"}}}},\"GetDomainDeliverabilityCampaign\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard/campaigns/{CampaignId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"CampaignId\"],\"members\":{\"CampaignId\":{\"location\":\"uri\",\"locationName\":\"CampaignId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainDeliverabilityCampaign\"],\"members\":{\"DomainDeliverabilityCampaign\":{\"shape\":\"S5k\"}}}},\"GetDomainStatisticsReport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard/statistics-report/{Domain}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Domain\",\"StartDate\",\"EndDate\"],\"members\":{\"Domain\":{\"location\":\"uri\",\"locationName\":\"Domain\"},\"StartDate\":{\"location\":\"querystring\",\"locationName\":\"StartDate\",\"type\":\"timestamp\"},\"EndDate\":{\"location\":\"querystring\",\"locationName\":\"EndDate\",\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"OverallVolume\",\"DailyVolumes\"],\"members\":{\"OverallVolume\":{\"type\":\"structure\",\"members\":{\"VolumeStatistics\":{\"shape\":\"S5u\"},\"ReadRatePercent\":{\"type\":\"double\"},\"DomainIspPlacements\":{\"shape\":\"S5v\"}}},\"DailyVolumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StartDate\":{\"type\":\"timestamp\"},\"VolumeStatistics\":{\"shape\":\"S5u\"},\"DomainIspPlacements\":{\"shape\":\"S5v\"}}}}}}},\"GetEmailIdentity\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"FeedbackForwardingStatus\":{\"type\":\"boolean\"},\"VerifiedForSendingStatus\":{\"type\":\"boolean\"},\"DkimAttributes\":{\"shape\":\"S2b\"},\"MailFromAttributes\":{\"type\":\"structure\",\"required\":[\"MailFromDomain\",\"MailFromDomainStatus\",\"BehaviorOnMxFailure\"],\"members\":{\"MailFromDomain\":{},\"MailFromDomainStatus\":{},\"BehaviorOnMxFailure\":{}}},\"Policies\":{\"shape\":\"S65\"},\"Tags\":{\"shape\":\"Sc\"},\"ConfigurationSetName\":{}}}},\"GetEmailIdentityPolicies\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/policies\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policies\":{\"shape\":\"S65\"}}}},\"GetEmailTemplate\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/templates/{TemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"TemplateContent\"],\"members\":{\"TemplateName\":{},\"TemplateContent\":{\"shape\":\"S2l\"}}}},\"GetImportJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/import-jobs/{JobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{\"location\":\"uri\",\"locationName\":\"JobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"ImportDestination\":{\"shape\":\"S2q\"},\"ImportDataSource\":{\"shape\":\"S2v\"},\"FailureInfo\":{\"type\":\"structure\",\"members\":{\"FailedRecordsS3Url\":{},\"ErrorMessage\":{}}},\"JobStatus\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"CompletedTimestamp\":{\"type\":\"timestamp\"},\"ProcessedRecordsCount\":{\"type\":\"integer\"},\"FailedRecordsCount\":{\"type\":\"integer\"}}}},\"GetSuppressedDestination\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/suppression/addresses/{EmailAddress}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\"],\"members\":{\"EmailAddress\":{\"location\":\"uri\",\"locationName\":\"EmailAddress\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"SuppressedDestination\"],\"members\":{\"SuppressedDestination\":{\"type\":\"structure\",\"required\":[\"EmailAddress\",\"Reason\",\"LastUpdateTime\"],\"members\":{\"EmailAddress\":{},\"Reason\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"},\"Attributes\":{\"type\":\"structure\",\"members\":{\"MessageId\":{},\"FeedbackId\":{}}}}}}}},\"ListConfigurationSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/configuration-sets\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationSets\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListContactLists\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/contact-lists\"},\"input\":{\"type\":\"structure\",\"members\":{\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ContactLists\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ContactListName\":{},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListContacts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}/contacts\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"},\"Filter\":{\"type\":\"structure\",\"members\":{\"FilteredStatus\":{},\"TopicFilter\":{\"type\":\"structure\",\"members\":{\"TopicName\":{},\"UseDefaultIfPreferenceUnavailable\":{\"type\":\"boolean\"}}}}},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Contacts\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EmailAddress\":{},\"TopicPreferences\":{\"shape\":\"S13\"},\"TopicDefaultPreferences\":{\"shape\":\"S13\"},\"UnsubscribeAll\":{\"type\":\"boolean\"},\"LastUpdatedTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListCustomVerificationEmailTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/custom-verification-email-templates\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CustomVerificationEmailTemplates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}}},\"NextToken\":{}}}},\"ListDedicatedIpPools\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/dedicated-ip-pools\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedIpPools\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListDeliverabilityTestReports\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard/test-reports\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DeliverabilityTestReports\"],\"members\":{\"DeliverabilityTestReports\":{\"type\":\"list\",\"member\":{\"shape\":\"S5a\"}},\"NextToken\":{}}}},\"ListDomainDeliverabilityCampaigns\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/deliverability-dashboard/domains/{SubscribedDomain}/campaigns\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartDate\",\"EndDate\",\"SubscribedDomain\"],\"members\":{\"StartDate\":{\"location\":\"querystring\",\"locationName\":\"StartDate\",\"type\":\"timestamp\"},\"EndDate\":{\"location\":\"querystring\",\"locationName\":\"EndDate\",\"type\":\"timestamp\"},\"SubscribedDomain\":{\"location\":\"uri\",\"locationName\":\"SubscribedDomain\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"DomainDeliverabilityCampaigns\"],\"members\":{\"DomainDeliverabilityCampaigns\":{\"type\":\"list\",\"member\":{\"shape\":\"S5k\"}},\"NextToken\":{}}}},\"ListEmailIdentities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/identities\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"EmailIdentities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IdentityType\":{},\"IdentityName\":{},\"SendingEnabled\":{\"type\":\"boolean\"}}}},\"NextToken\":{}}}},\"ListEmailTemplates\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/templates\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TemplatesMetadata\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListImportJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/import-jobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"ImportDestinationType\":{},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImportJobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"ImportDestination\":{\"shape\":\"S2q\"},\"JobStatus\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListSuppressedDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/suppression/addresses\"},\"input\":{\"type\":\"structure\",\"members\":{\"Reasons\":{\"shape\":\"Sh\",\"location\":\"querystring\",\"locationName\":\"Reason\"},\"StartDate\":{\"location\":\"querystring\",\"locationName\":\"StartDate\",\"type\":\"timestamp\"},\"EndDate\":{\"location\":\"querystring\",\"locationName\":\"EndDate\",\"type\":\"timestamp\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SuppressedDestinationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EmailAddress\",\"Reason\",\"LastUpdateTime\"],\"members\":{\"EmailAddress\":{},\"Reason\":{},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v2/email/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"Tags\"],\"members\":{\"Tags\":{\"shape\":\"Sc\"}}}},\"PutAccountDedicatedIpWarmupAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/account/dedicated-ips/warmup\"},\"input\":{\"type\":\"structure\",\"members\":{\"AutoWarmupEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAccountDetails\":{\"http\":{\"requestUri\":\"/v2/email/account/details\"},\"input\":{\"type\":\"structure\",\"required\":[\"MailType\",\"WebsiteURL\",\"UseCaseDescription\"],\"members\":{\"MailType\":{},\"WebsiteURL\":{\"shape\":\"S3u\"},\"ContactLanguage\":{},\"UseCaseDescription\":{\"shape\":\"S3w\"},\"AdditionalContactEmailAddresses\":{\"shape\":\"S3x\"},\"ProductionAccessEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAccountSendingAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/account/sending\"},\"input\":{\"type\":\"structure\",\"members\":{\"SendingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAccountSuppressionAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/account/suppression\"},\"input\":{\"type\":\"structure\",\"members\":{\"SuppressedReasons\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetDeliveryOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/delivery-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"TlsPolicy\":{},\"SendingPoolName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetReputationOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/reputation-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"ReputationMetricsEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetSendingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/sending\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"SendingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetSuppressionOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/suppression-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"SuppressedReasons\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutConfigurationSetTrackingOptions\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/tracking-options\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"CustomRedirectDomain\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutDedicatedIpInPool\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/dedicated-ips/{IP}/pool\"},\"input\":{\"type\":\"structure\",\"required\":[\"Ip\",\"DestinationPoolName\"],\"members\":{\"Ip\":{\"location\":\"uri\",\"locationName\":\"IP\"},\"DestinationPoolName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutDedicatedIpWarmupAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/dedicated-ips/{IP}/warmup\"},\"input\":{\"type\":\"structure\",\"required\":[\"Ip\",\"WarmupPercentage\"],\"members\":{\"Ip\":{\"location\":\"uri\",\"locationName\":\"IP\"},\"WarmupPercentage\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutDeliverabilityDashboardOption\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/deliverability-dashboard\"},\"input\":{\"type\":\"structure\",\"required\":[\"DashboardEnabled\"],\"members\":{\"DashboardEnabled\":{\"type\":\"boolean\"},\"SubscribedDomains\":{\"shape\":\"S52\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityConfigurationSetAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/configuration-set\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"ConfigurationSetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityDkimAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/dkim\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"SigningEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityDkimSigningAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/email/identities/{EmailIdentity}/dkim/signing\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\",\"SigningAttributesOrigin\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"SigningAttributesOrigin\":{},\"SigningAttributes\":{\"shape\":\"S26\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DkimStatus\":{},\"DkimTokens\":{\"shape\":\"S2d\"}}}},\"PutEmailIdentityFeedbackAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/feedback\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"EmailForwardingEnabled\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutEmailIdentityMailFromAttributes\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/mail-from\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"MailFromDomain\":{},\"BehaviorOnMxFailure\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutSuppressedDestination\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/suppression/addresses\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\",\"Reason\"],\"members\":{\"EmailAddress\":{},\"Reason\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendBulkEmail\":{\"http\":{\"requestUri\":\"/v2/email/outbound-bulk-emails\"},\"input\":{\"type\":\"structure\",\"required\":[\"DefaultContent\",\"BulkEmailEntries\"],\"members\":{\"FromEmailAddress\":{},\"FromEmailAddressIdentityArn\":{},\"ReplyToAddresses\":{\"shape\":\"S91\"},\"FeedbackForwardingEmailAddress\":{},\"FeedbackForwardingEmailAddressIdentityArn\":{},\"DefaultEmailTags\":{\"shape\":\"S92\"},\"DefaultContent\":{\"type\":\"structure\",\"members\":{\"Template\":{\"shape\":\"S1z\"}}},\"BulkEmailEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Destination\"],\"members\":{\"Destination\":{\"shape\":\"S99\"},\"ReplacementTags\":{\"shape\":\"S92\"},\"ReplacementEmailContent\":{\"type\":\"structure\",\"members\":{\"ReplacementTemplate\":{\"type\":\"structure\",\"members\":{\"ReplacementTemplateData\":{}}}}}}}},\"ConfigurationSetName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"BulkEmailEntryResults\"],\"members\":{\"BulkEmailEntryResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"Error\":{},\"MessageId\":{}}}}}}},\"SendCustomVerificationEmail\":{\"http\":{\"requestUri\":\"/v2/email/outbound-custom-verification-emails\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailAddress\",\"TemplateName\"],\"members\":{\"EmailAddress\":{},\"TemplateName\":{},\"ConfigurationSetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"SendEmail\":{\"http\":{\"requestUri\":\"/v2/email/outbound-emails\"},\"input\":{\"type\":\"structure\",\"required\":[\"Content\"],\"members\":{\"FromEmailAddress\":{},\"FromEmailAddressIdentityArn\":{},\"Destination\":{\"shape\":\"S99\"},\"ReplyToAddresses\":{\"shape\":\"S91\"},\"FeedbackForwardingEmailAddress\":{},\"FeedbackForwardingEmailAddressIdentityArn\":{},\"Content\":{\"shape\":\"S1r\"},\"EmailTags\":{\"shape\":\"S92\"},\"ConfigurationSetName\":{},\"ListManagementOptions\":{\"type\":\"structure\",\"required\":[\"ContactListName\"],\"members\":{\"ContactListName\":{},\"TopicName\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/v2/email/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TestRenderEmailTemplate\":{\"http\":{\"requestUri\":\"/v2/email/templates/{TemplateName}/render\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"TemplateData\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"},\"TemplateData\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"RenderedTemplate\"],\"members\":{\"RenderedTemplate\":{}}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v2/email/tags\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"querystring\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"TagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateConfigurationSetEventDestination\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/configuration-sets/{ConfigurationSetName}/event-destinations/{EventDestinationName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ConfigurationSetName\",\"EventDestinationName\",\"EventDestination\"],\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{\"location\":\"uri\",\"locationName\":\"EventDestinationName\"},\"EventDestination\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateContact\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}/contacts/{EmailAddress}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\",\"EmailAddress\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"},\"EmailAddress\":{\"location\":\"uri\",\"locationName\":\"EmailAddress\"},\"TopicPreferences\":{\"shape\":\"S13\"},\"UnsubscribeAll\":{\"type\":\"boolean\"},\"AttributesData\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateContactList\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/contact-lists/{ContactListName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ContactListName\"],\"members\":{\"ContactListName\":{\"location\":\"uri\",\"locationName\":\"ContactListName\"},\"Topics\":{\"shape\":\"S1b\"},\"Description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCustomVerificationEmailTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/custom-verification-email-templates/{TemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"FromEmailAddress\",\"TemplateSubject\",\"TemplateContent\",\"SuccessRedirectionURL\",\"FailureRedirectionURL\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"},\"FromEmailAddress\":{},\"TemplateSubject\":{},\"TemplateContent\":{},\"SuccessRedirectionURL\":{},\"FailureRedirectionURL\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateEmailIdentityPolicy\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/identities/{EmailIdentity}/policies/{PolicyName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"EmailIdentity\",\"PolicyName\",\"Policy\"],\"members\":{\"EmailIdentity\":{\"location\":\"uri\",\"locationName\":\"EmailIdentity\"},\"PolicyName\":{\"location\":\"uri\",\"locationName\":\"PolicyName\"},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateEmailTemplate\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v2/email/templates/{TemplateName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"TemplateName\",\"TemplateContent\"],\"members\":{\"TemplateName\":{\"location\":\"uri\",\"locationName\":\"TemplateName\"},\"TemplateContent\":{\"shape\":\"S2l\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"CustomRedirectDomain\"],\"members\":{\"CustomRedirectDomain\":{}}},\"S5\":{\"type\":\"structure\",\"members\":{\"TlsPolicy\":{},\"SendingPoolName\":{}}},\"S8\":{\"type\":\"structure\",\"members\":{\"ReputationMetricsEnabled\":{\"type\":\"boolean\"},\"LastFreshStart\":{\"type\":\"timestamp\"}}},\"Sb\":{\"type\":\"structure\",\"members\":{\"SendingEnabled\":{\"type\":\"boolean\"}}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sg\":{\"type\":\"structure\",\"members\":{\"SuppressedReasons\":{\"shape\":\"Sh\"}}},\"Sh\":{\"type\":\"list\",\"member\":{}},\"Sm\":{\"type\":\"structure\",\"members\":{\"Enabled\":{\"type\":\"boolean\"},\"MatchingEventTypes\":{\"shape\":\"Sn\"},\"KinesisFirehoseDestination\":{\"shape\":\"Sp\"},\"CloudWatchDestination\":{\"shape\":\"Sr\"},\"SnsDestination\":{\"shape\":\"Sx\"},\"PinpointDestination\":{\"shape\":\"Sy\"}}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sp\":{\"type\":\"structure\",\"required\":[\"IamRoleArn\",\"DeliveryStreamArn\"],\"members\":{\"IamRoleArn\":{},\"DeliveryStreamArn\":{}}},\"Sr\":{\"type\":\"structure\",\"required\":[\"DimensionConfigurations\"],\"members\":{\"DimensionConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DimensionName\",\"DimensionValueSource\",\"DefaultDimensionValue\"],\"members\":{\"DimensionName\":{},\"DimensionValueSource\":{},\"DefaultDimensionValue\":{}}}}}},\"Sx\":{\"type\":\"structure\",\"required\":[\"TopicArn\"],\"members\":{\"TopicArn\":{}}},\"Sy\":{\"type\":\"structure\",\"members\":{\"ApplicationArn\":{}}},\"S13\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TopicName\",\"SubscriptionStatus\"],\"members\":{\"TopicName\":{},\"SubscriptionStatus\":{}}}},\"S1b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TopicName\",\"DisplayName\",\"DefaultSubscriptionStatus\"],\"members\":{\"TopicName\":{},\"DisplayName\":{},\"Description\":{},\"DefaultSubscriptionStatus\":{}}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"Simple\":{\"type\":\"structure\",\"required\":[\"Subject\",\"Body\"],\"members\":{\"Subject\":{\"shape\":\"S1t\"},\"Body\":{\"type\":\"structure\",\"members\":{\"Text\":{\"shape\":\"S1t\"},\"Html\":{\"shape\":\"S1t\"}}}}},\"Raw\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{\"type\":\"blob\"}}},\"Template\":{\"shape\":\"S1z\"}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{},\"Charset\":{}}},\"S1z\":{\"type\":\"structure\",\"members\":{\"TemplateName\":{},\"TemplateArn\":{},\"TemplateData\":{}}},\"S26\":{\"type\":\"structure\",\"required\":[\"DomainSigningSelector\",\"DomainSigningPrivateKey\"],\"members\":{\"DomainSigningSelector\":{},\"DomainSigningPrivateKey\":{\"type\":\"string\",\"sensitive\":true}}},\"S2b\":{\"type\":\"structure\",\"members\":{\"SigningEnabled\":{\"type\":\"boolean\"},\"Status\":{},\"Tokens\":{\"shape\":\"S2d\"},\"SigningAttributesOrigin\":{}}},\"S2d\":{\"type\":\"list\",\"member\":{}},\"S2l\":{\"type\":\"structure\",\"members\":{\"Subject\":{},\"Text\":{},\"Html\":{}}},\"S2q\":{\"type\":\"structure\",\"members\":{\"SuppressionListDestination\":{\"type\":\"structure\",\"required\":[\"SuppressionListImportAction\"],\"members\":{\"SuppressionListImportAction\":{}}},\"ContactListDestination\":{\"type\":\"structure\",\"required\":[\"ContactListName\",\"ContactListImportAction\"],\"members\":{\"ContactListName\":{},\"ContactListImportAction\":{}}}}},\"S2v\":{\"type\":\"structure\",\"required\":[\"S3Url\",\"DataFormat\"],\"members\":{\"S3Url\":{},\"DataFormat\":{}}},\"S3u\":{\"type\":\"string\",\"sensitive\":true},\"S3w\":{\"type\":\"string\",\"sensitive\":true},\"S3x\":{\"type\":\"list\",\"member\":{\"type\":\"string\",\"sensitive\":true},\"sensitive\":true},\"S4r\":{\"type\":\"structure\",\"required\":[\"Ip\",\"WarmupStatus\",\"WarmupPercentage\"],\"members\":{\"Ip\":{},\"WarmupStatus\":{},\"WarmupPercentage\":{\"type\":\"integer\"},\"PoolName\":{}}},\"S52\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Domain\":{},\"SubscriptionStartDate\":{\"type\":\"timestamp\"},\"InboxPlacementTrackingOption\":{\"type\":\"structure\",\"members\":{\"Global\":{\"type\":\"boolean\"},\"TrackedIsps\":{\"type\":\"list\",\"member\":{}}}}}}},\"S5a\":{\"type\":\"structure\",\"members\":{\"ReportId\":{},\"ReportName\":{},\"Subject\":{},\"FromEmailAddress\":{},\"CreateDate\":{\"type\":\"timestamp\"},\"DeliverabilityTestStatus\":{}}},\"S5c\":{\"type\":\"structure\",\"members\":{\"InboxPercentage\":{\"type\":\"double\"},\"SpamPercentage\":{\"type\":\"double\"},\"MissingPercentage\":{\"type\":\"double\"},\"SpfPercentage\":{\"type\":\"double\"},\"DkimPercentage\":{\"type\":\"double\"}}},\"S5k\":{\"type\":\"structure\",\"members\":{\"CampaignId\":{},\"ImageUrl\":{},\"Subject\":{},\"FromAddress\":{},\"SendingIps\":{\"type\":\"list\",\"member\":{}},\"FirstSeenDateTime\":{\"type\":\"timestamp\"},\"LastSeenDateTime\":{\"type\":\"timestamp\"},\"InboxCount\":{\"type\":\"long\"},\"SpamCount\":{\"type\":\"long\"},\"ReadRate\":{\"type\":\"double\"},\"DeleteRate\":{\"type\":\"double\"},\"ReadDeleteRate\":{\"type\":\"double\"},\"ProjectedVolume\":{\"type\":\"long\"},\"Esps\":{\"type\":\"list\",\"member\":{}}}},\"S5u\":{\"type\":\"structure\",\"members\":{\"InboxRawCount\":{\"type\":\"long\"},\"SpamRawCount\":{\"type\":\"long\"},\"ProjectedInbox\":{\"type\":\"long\"},\"ProjectedSpam\":{\"type\":\"long\"}}},\"S5v\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"IspName\":{},\"InboxRawCount\":{\"type\":\"long\"},\"SpamRawCount\":{\"type\":\"long\"},\"InboxPercentage\":{\"type\":\"double\"},\"SpamPercentage\":{\"type\":\"double\"}}}},\"S65\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S91\":{\"type\":\"list\",\"member\":{}},\"S92\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"S99\":{\"type\":\"structure\",\"members\":{\"ToAddresses\":{\"shape\":\"S91\"},\"CcAddresses\":{\"shape\":\"S91\"},\"BccAddresses\":{\"shape\":\"S91\"}}}}}");

/***/ }),

/***/ 39567:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetDedicatedIps\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListConfigurationSets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListContactLists\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListContacts\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListCustomVerificationEmailTemplates\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListDedicatedIpPools\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListDeliverabilityTestReports\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListDomainDeliverabilityCampaigns\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListEmailIdentities\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListEmailTemplates\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListImportJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"},\"ListSuppressedDestinations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"PageSize\"}}}");

/***/ }),

/***/ 78621:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-06-02\",\"endpointPrefix\":\"shield\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWS Shield\",\"serviceFullName\":\"AWS Shield\",\"serviceId\":\"Shield\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSShield_20160616\",\"uid\":\"shield-2016-06-02\"},\"operations\":{\"AssociateDRTLogBucket\":{\"input\":{\"type\":\"structure\",\"required\":[\"LogBucket\"],\"members\":{\"LogBucket\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateDRTRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleArn\"],\"members\":{\"RoleArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateHealthCheck\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionId\",\"HealthCheckArn\"],\"members\":{\"ProtectionId\":{},\"HealthCheckArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateProactiveEngagementDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"EmergencyContactList\"],\"members\":{\"EmergencyContactList\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ResourceArn\"],\"members\":{\"Name\":{},\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ProtectionId\":{}}}},\"CreateProtectionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionGroupId\",\"Aggregation\",\"Pattern\"],\"members\":{\"ProtectionGroupId\":{},\"Aggregation\":{},\"Pattern\":{},\"ResourceType\":{},\"Members\":{\"shape\":\"Sv\"},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProtection\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionId\"],\"members\":{\"ProtectionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteProtectionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionGroupId\"],\"members\":{\"ProtectionGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{},\"deprecated\":true},\"output\":{\"type\":\"structure\",\"members\":{},\"deprecated\":true},\"deprecated\":true},\"DescribeAttack\":{\"input\":{\"type\":\"structure\",\"required\":[\"AttackId\"],\"members\":{\"AttackId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Attack\":{\"type\":\"structure\",\"members\":{\"AttackId\":{},\"ResourceArn\":{},\"SubResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Id\":{},\"AttackVectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VectorType\"],\"members\":{\"VectorType\":{},\"VectorCounters\":{\"shape\":\"S1f\"}}}},\"Counters\":{\"shape\":\"S1f\"}}}},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"AttackCounters\":{\"shape\":\"S1f\"},\"AttackProperties\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttackLayer\":{},\"AttackPropertyIdentifier\":{},\"TopContributors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{\"type\":\"long\"}}}},\"Unit\":{},\"Total\":{\"type\":\"long\"}}}},\"Mitigations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MitigationName\":{}}}}}}}}},\"DescribeAttackStatistics\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"TimeRange\",\"DataItems\"],\"members\":{\"TimeRange\":{\"shape\":\"S1w\"},\"DataItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttackCount\"],\"members\":{\"AttackVolume\":{\"type\":\"structure\",\"members\":{\"BitsPerSecond\":{\"shape\":\"S20\"},\"PacketsPerSecond\":{\"shape\":\"S20\"},\"RequestsPerSecond\":{\"shape\":\"S20\"}}},\"AttackCount\":{\"type\":\"long\"}}}}}}},\"DescribeDRTAccess\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"RoleArn\":{},\"LogBucketList\":{\"type\":\"list\",\"member\":{}}}}},\"DescribeEmergencyContactSettings\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"EmergencyContactList\":{\"shape\":\"Sc\"}}}},\"DescribeProtection\":{\"input\":{\"type\":\"structure\",\"members\":{\"ProtectionId\":{},\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Protection\":{\"shape\":\"S28\"}}}},\"DescribeProtectionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionGroupId\"],\"members\":{\"ProtectionGroupId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProtectionGroup\"],\"members\":{\"ProtectionGroup\":{\"shape\":\"S2d\"}}}},\"DescribeSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"Subscription\":{\"type\":\"structure\",\"required\":[\"SubscriptionLimits\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"TimeCommitmentInSeconds\":{\"type\":\"long\"},\"AutoRenew\":{},\"Limits\":{\"shape\":\"S2k\"},\"ProactiveEngagementStatus\":{},\"SubscriptionLimits\":{\"type\":\"structure\",\"required\":[\"ProtectionLimits\",\"ProtectionGroupLimits\"],\"members\":{\"ProtectionLimits\":{\"type\":\"structure\",\"required\":[\"ProtectedResourceTypeLimits\"],\"members\":{\"ProtectedResourceTypeLimits\":{\"shape\":\"S2k\"}}},\"ProtectionGroupLimits\":{\"type\":\"structure\",\"required\":[\"MaxProtectionGroups\",\"PatternTypeLimits\"],\"members\":{\"MaxProtectionGroups\":{\"type\":\"long\"},\"PatternTypeLimits\":{\"type\":\"structure\",\"required\":[\"ArbitraryPatternLimits\"],\"members\":{\"ArbitraryPatternLimits\":{\"type\":\"structure\",\"required\":[\"MaxMembers\"],\"members\":{\"MaxMembers\":{\"type\":\"long\"}}}}}}}}},\"SubscriptionArn\":{}}}}}},\"DisableProactiveEngagement\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateDRTLogBucket\":{\"input\":{\"type\":\"structure\",\"required\":[\"LogBucket\"],\"members\":{\"LogBucket\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateDRTRole\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateHealthCheck\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionId\",\"HealthCheckArn\"],\"members\":{\"ProtectionId\":{},\"HealthCheckArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"EnableProactiveEngagement\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetSubscriptionState\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"SubscriptionState\"],\"members\":{\"SubscriptionState\":{}}}},\"ListAttacks\":{\"input\":{\"type\":\"structure\",\"members\":{\"ResourceArns\":{\"type\":\"list\",\"member\":{}},\"StartTime\":{\"shape\":\"S1w\"},\"EndTime\":{\"shape\":\"S1w\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttackSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AttackId\":{},\"ResourceArn\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"AttackVectors\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"VectorType\"],\"members\":{\"VectorType\":{}}}}}}},\"NextToken\":{}}}},\"ListProtectionGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ProtectionGroups\"],\"members\":{\"ProtectionGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}},\"NextToken\":{}}}},\"ListProtections\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Protections\":{\"type\":\"list\",\"member\":{\"shape\":\"S28\"}},\"NextToken\":{}}}},\"ListResourcesInProtectionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionGroupId\"],\"members\":{\"ProtectionGroupId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ResourceArns\"],\"members\":{\"ResourceArns\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sl\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sl\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateEmergencyContactSettings\":{\"input\":{\"type\":\"structure\",\"members\":{\"EmergencyContactList\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateProtectionGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"ProtectionGroupId\",\"Aggregation\",\"Pattern\"],\"members\":{\"ProtectionGroupId\":{},\"Aggregation\":{},\"Pattern\":{},\"ResourceType\":{},\"Members\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateSubscription\":{\"input\":{\"type\":\"structure\",\"members\":{\"AutoRenew\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"EmailAddress\"],\"members\":{\"EmailAddress\":{},\"PhoneNumber\":{},\"ContactNotes\":{}}}},\"Sl\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"Sv\":{\"type\":\"list\",\"member\":{}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Max\":{\"type\":\"double\"},\"Average\":{\"type\":\"double\"},\"Sum\":{\"type\":\"double\"},\"N\":{\"type\":\"integer\"},\"Unit\":{}}}},\"S1w\":{\"type\":\"structure\",\"members\":{\"FromInclusive\":{\"type\":\"timestamp\"},\"ToExclusive\":{\"type\":\"timestamp\"}}},\"S20\":{\"type\":\"structure\",\"required\":[\"Max\"],\"members\":{\"Max\":{\"type\":\"double\"}}},\"S28\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"ResourceArn\":{},\"HealthCheckIds\":{\"type\":\"list\",\"member\":{}},\"ProtectionArn\":{}}},\"S2d\":{\"type\":\"structure\",\"required\":[\"ProtectionGroupId\",\"Aggregation\",\"Pattern\",\"Members\"],\"members\":{\"ProtectionGroupId\":{},\"Aggregation\":{},\"Pattern\":{},\"ResourceType\":{},\"Members\":{\"shape\":\"Sv\"},\"ProtectionGroupArn\":{}}},\"S2k\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Max\":{\"type\":\"long\"}}}}}}");

/***/ }),

/***/ 75743:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAttacks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AttackSummaries\"},\"ListProtectionGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListProtections\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Protections\"},\"ListResourcesInProtectionGroup\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 21884:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-08-25\",\"endpointPrefix\":\"signer\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"signer\",\"serviceFullName\":\"AWS Signer\",\"serviceId\":\"signer\",\"signatureVersion\":\"v4\",\"signingName\":\"signer\",\"uid\":\"signer-2017-08-25\"},\"operations\":{\"AddProfilePermission\":{\"http\":{\"requestUri\":\"/signing-profiles/{profileName}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"action\",\"principal\",\"statementId\",\"profileName\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"},\"profileVersion\":{},\"action\":{},\"principal\":{},\"revisionId\":{},\"statementId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"revisionId\":{}}}},\"CancelSigningProfile\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/signing-profiles/{profileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"profileName\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"}}}},\"DescribeSigningJob\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-jobs/{jobId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"source\":{\"shape\":\"Sa\"},\"signingMaterial\":{\"shape\":\"Sf\"},\"platformId\":{},\"platformDisplayName\":{},\"profileName\":{},\"profileVersion\":{},\"overrides\":{\"shape\":\"Sj\"},\"signingParameters\":{\"shape\":\"So\"},\"createdAt\":{\"type\":\"timestamp\"},\"completedAt\":{\"type\":\"timestamp\"},\"signatureExpiresAt\":{\"type\":\"timestamp\"},\"requestedBy\":{},\"status\":{},\"statusReason\":{},\"revocationRecord\":{\"type\":\"structure\",\"members\":{\"reason\":{},\"revokedAt\":{\"type\":\"timestamp\"},\"revokedBy\":{}}},\"signedObject\":{\"shape\":\"Sw\"},\"jobOwner\":{},\"jobInvoker\":{}}}},\"GetSigningPlatform\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-platforms/{platformId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"platformId\"],\"members\":{\"platformId\":{\"location\":\"uri\",\"locationName\":\"platformId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"platformId\":{},\"displayName\":{},\"partner\":{},\"target\":{},\"category\":{},\"signingConfiguration\":{\"shape\":\"S12\"},\"signingImageFormat\":{\"shape\":\"S17\"},\"maxSizeInMB\":{\"type\":\"integer\"},\"revocationSupported\":{\"type\":\"boolean\"}}}},\"GetSigningProfile\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-profiles/{profileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"profileName\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"},\"profileOwner\":{\"location\":\"querystring\",\"locationName\":\"profileOwner\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"profileName\":{},\"profileVersion\":{},\"profileVersionArn\":{},\"revocationRecord\":{\"type\":\"structure\",\"members\":{\"revocationEffectiveFrom\":{\"type\":\"timestamp\"},\"revokedAt\":{\"type\":\"timestamp\"},\"revokedBy\":{}}},\"signingMaterial\":{\"shape\":\"Sf\"},\"platformId\":{},\"platformDisplayName\":{},\"signatureValidityPeriod\":{\"shape\":\"S1f\"},\"overrides\":{\"shape\":\"Sj\"},\"signingParameters\":{\"shape\":\"So\"},\"status\":{},\"statusReason\":{},\"arn\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"ListProfilePermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-profiles/{profileName}/permissions\"},\"input\":{\"type\":\"structure\",\"required\":[\"profileName\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"revisionId\":{},\"policySizeBytes\":{\"type\":\"integer\"},\"permissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"action\":{},\"principal\":{},\"statementId\":{},\"profileVersion\":{}}}},\"nextToken\":{}}}},\"ListSigningJobs\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-jobs\"},\"input\":{\"type\":\"structure\",\"members\":{\"status\":{\"location\":\"querystring\",\"locationName\":\"status\"},\"platformId\":{\"location\":\"querystring\",\"locationName\":\"platformId\"},\"requestedBy\":{\"location\":\"querystring\",\"locationName\":\"requestedBy\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"isRevoked\":{\"location\":\"querystring\",\"locationName\":\"isRevoked\",\"type\":\"boolean\"},\"signatureExpiresBefore\":{\"location\":\"querystring\",\"locationName\":\"signatureExpiresBefore\",\"type\":\"timestamp\"},\"signatureExpiresAfter\":{\"location\":\"querystring\",\"locationName\":\"signatureExpiresAfter\",\"type\":\"timestamp\"},\"jobInvoker\":{\"location\":\"querystring\",\"locationName\":\"jobInvoker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"source\":{\"shape\":\"Sa\"},\"signedObject\":{\"shape\":\"Sw\"},\"signingMaterial\":{\"shape\":\"Sf\"},\"createdAt\":{\"type\":\"timestamp\"},\"status\":{},\"isRevoked\":{\"type\":\"boolean\"},\"profileName\":{},\"profileVersion\":{},\"platformId\":{},\"platformDisplayName\":{},\"signatureExpiresAt\":{\"type\":\"timestamp\"},\"jobOwner\":{},\"jobInvoker\":{}}}},\"nextToken\":{}}}},\"ListSigningPlatforms\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-platforms\"},\"input\":{\"type\":\"structure\",\"members\":{\"category\":{\"location\":\"querystring\",\"locationName\":\"category\"},\"partner\":{\"location\":\"querystring\",\"locationName\":\"partner\"},\"target\":{\"location\":\"querystring\",\"locationName\":\"target\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"platforms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"platformId\":{},\"displayName\":{},\"partner\":{},\"target\":{},\"category\":{},\"signingConfiguration\":{\"shape\":\"S12\"},\"signingImageFormat\":{\"shape\":\"S17\"},\"maxSizeInMB\":{\"type\":\"integer\"},\"revocationSupported\":{\"type\":\"boolean\"}}}},\"nextToken\":{}}}},\"ListSigningProfiles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/signing-profiles\"},\"input\":{\"type\":\"structure\",\"members\":{\"includeCanceled\":{\"location\":\"querystring\",\"locationName\":\"includeCanceled\",\"type\":\"boolean\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"maxResults\",\"type\":\"integer\"},\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"nextToken\"},\"platformId\":{\"location\":\"querystring\",\"locationName\":\"platformId\"},\"statuses\":{\"location\":\"querystring\",\"locationName\":\"statuses\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"profiles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"profileName\":{},\"profileVersion\":{},\"profileVersionArn\":{},\"signingMaterial\":{\"shape\":\"Sf\"},\"signatureValidityPeriod\":{\"shape\":\"S1f\"},\"platformId\":{},\"platformDisplayName\":{},\"signingParameters\":{\"shape\":\"So\"},\"status\":{},\"arn\":{},\"tags\":{\"shape\":\"S1k\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S1k\"}}}},\"PutSigningProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/signing-profiles/{profileName}\"},\"input\":{\"type\":\"structure\",\"required\":[\"profileName\",\"platformId\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"},\"signingMaterial\":{\"shape\":\"Sf\"},\"signatureValidityPeriod\":{\"shape\":\"S1f\"},\"platformId\":{},\"overrides\":{\"shape\":\"Sj\"},\"signingParameters\":{\"shape\":\"So\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"arn\":{},\"profileVersion\":{},\"profileVersionArn\":{}}}},\"RemoveProfilePermission\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/signing-profiles/{profileName}/permissions/{statementId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"revisionId\",\"profileName\",\"statementId\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"},\"revisionId\":{\"location\":\"querystring\",\"locationName\":\"revisionId\"},\"statementId\":{\"location\":\"uri\",\"locationName\":\"statementId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"revisionId\":{}}}},\"RevokeSignature\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/signing-jobs/{jobId}/revoke\"},\"input\":{\"type\":\"structure\",\"required\":[\"reason\",\"jobId\"],\"members\":{\"jobId\":{\"location\":\"uri\",\"locationName\":\"jobId\"},\"jobOwner\":{},\"reason\":{}}}},\"RevokeSigningProfile\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/signing-profiles/{profileName}/revoke\"},\"input\":{\"type\":\"structure\",\"required\":[\"profileVersion\",\"reason\",\"effectiveTime\",\"profileName\"],\"members\":{\"profileName\":{\"location\":\"uri\",\"locationName\":\"profileName\"},\"profileVersion\":{},\"reason\":{},\"effectiveTime\":{\"type\":\"timestamp\"}}}},\"StartSigningJob\":{\"http\":{\"requestUri\":\"/signing-jobs\"},\"input\":{\"type\":\"structure\",\"required\":[\"source\",\"destination\",\"profileName\",\"clientRequestToken\"],\"members\":{\"source\":{\"shape\":\"Sa\"},\"destination\":{\"type\":\"structure\",\"members\":{\"s3\":{\"type\":\"structure\",\"members\":{\"bucketName\":{},\"prefix\":{}}}}},\"profileName\":{},\"clientRequestToken\":{\"idempotencyToken\":true},\"profileOwner\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"jobId\":{},\"jobOwner\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tags\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"tagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sa\":{\"type\":\"structure\",\"members\":{\"s3\":{\"type\":\"structure\",\"required\":[\"bucketName\",\"key\",\"version\"],\"members\":{\"bucketName\":{},\"key\":{},\"version\":{}}}}},\"Sf\":{\"type\":\"structure\",\"required\":[\"certificateArn\"],\"members\":{\"certificateArn\":{}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"signingConfiguration\":{\"type\":\"structure\",\"members\":{\"encryptionAlgorithm\":{},\"hashAlgorithm\":{}}},\"signingImageFormat\":{}}},\"So\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sw\":{\"type\":\"structure\",\"members\":{\"s3\":{\"type\":\"structure\",\"members\":{\"bucketName\":{},\"key\":{}}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"encryptionAlgorithmOptions\",\"hashAlgorithmOptions\"],\"members\":{\"encryptionAlgorithmOptions\":{\"type\":\"structure\",\"required\":[\"allowedValues\",\"defaultValue\"],\"members\":{\"allowedValues\":{\"type\":\"list\",\"member\":{}},\"defaultValue\":{}}},\"hashAlgorithmOptions\":{\"type\":\"structure\",\"required\":[\"allowedValues\",\"defaultValue\"],\"members\":{\"allowedValues\":{\"type\":\"list\",\"member\":{}},\"defaultValue\":{}}}}},\"S17\":{\"type\":\"structure\",\"required\":[\"supportedFormats\",\"defaultFormat\"],\"members\":{\"supportedFormats\":{\"type\":\"list\",\"member\":{}},\"defaultFormat\":{}}},\"S1f\":{\"type\":\"structure\",\"members\":{\"value\":{\"type\":\"integer\"},\"type\":{}}},\"S1k\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}");

/***/ }),

/***/ 69839:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListSigningJobs\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListSigningPlatforms\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"},\"ListSigningProfiles\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\"}}}");

/***/ }),

/***/ 61331:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"SuccessfulSigningJob\":{\"delay\":20,\"operation\":\"DescribeSigningJob\",\"maxAttempts\":25,\"acceptors\":[{\"expected\":\"Succeeded\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"status\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"status\"},{\"expected\":\"ResourceNotFoundException\",\"matcher\":\"error\",\"state\":\"failure\"}]}}}");

/***/ }),

/***/ 51530:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-10-24\",\"endpointPrefix\":\"sms\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"SMS\",\"serviceFullName\":\"AWS Server Migration Service\",\"serviceId\":\"SMS\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSServerMigrationService_V2016_10_24\",\"uid\":\"sms-2016-10-24\"},\"operations\":{\"CreateApp\":{\"input\":{\"type\":\"structure\",\"members\":{\"name\":{},\"description\":{},\"roleName\":{},\"clientToken\":{},\"serverGroups\":{\"shape\":\"S6\"},\"tags\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"appSummary\":{\"shape\":\"St\"},\"serverGroups\":{\"shape\":\"S6\"},\"tags\":{\"shape\":\"So\"}}}},\"CreateReplicationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"serverId\",\"seedReplicationTime\"],\"members\":{\"serverId\":{},\"seedReplicationTime\":{\"type\":\"timestamp\"},\"frequency\":{\"type\":\"integer\"},\"runOnce\":{\"type\":\"boolean\"},\"licenseType\":{},\"roleName\":{},\"description\":{},\"numberOfRecentAmisToKeep\":{\"type\":\"integer\"},\"encrypted\":{\"type\":\"boolean\"},\"kmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"replicationJobId\":{}}}},\"DeleteApp\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"forceStopAppReplication\":{\"type\":\"boolean\"},\"forceTerminateApp\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAppLaunchConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAppReplicationConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAppValidationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteReplicationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"replicationJobId\"],\"members\":{\"replicationJobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteServerCatalog\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateConnector\":{\"input\":{\"type\":\"structure\",\"required\":[\"connectorId\"],\"members\":{\"connectorId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GenerateChangeSet\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"changesetFormat\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"s3Location\":{\"shape\":\"S24\"}}}},\"GenerateTemplate\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"templateFormat\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"s3Location\":{\"shape\":\"S24\"}}}},\"GetApp\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"appSummary\":{\"shape\":\"St\"},\"serverGroups\":{\"shape\":\"S6\"},\"tags\":{\"shape\":\"So\"}}}},\"GetAppLaunchConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"roleName\":{},\"autoLaunch\":{\"type\":\"boolean\"},\"serverGroupLaunchConfigurations\":{\"shape\":\"S2e\"}}}},\"GetAppReplicationConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"serverGroupReplicationConfigurations\":{\"shape\":\"S2u\"}}}},\"GetAppValidationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"appValidationConfigurations\":{\"shape\":\"S31\"},\"serverGroupValidationConfigurations\":{\"shape\":\"S3c\"}}}},\"GetAppValidationOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"validationOutputList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"validationId\":{},\"name\":{},\"status\":{},\"statusMessage\":{},\"latestValidationTime\":{\"type\":\"timestamp\"},\"appValidationOutput\":{\"type\":\"structure\",\"members\":{\"ssmOutput\":{\"type\":\"structure\",\"members\":{\"s3Location\":{\"shape\":\"S24\"}}}}},\"serverValidationOutput\":{\"type\":\"structure\",\"members\":{\"server\":{\"shape\":\"Sb\"}}}}}}}}},\"GetConnectors\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"connectorList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"connectorId\":{},\"version\":{},\"status\":{},\"capabilityList\":{\"type\":\"list\",\"member\":{}},\"vmManagerName\":{},\"vmManagerType\":{},\"vmManagerId\":{},\"ipAddress\":{},\"macAddress\":{},\"associatedOn\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"GetReplicationJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"replicationJobId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"replicationJobList\":{\"type\":\"list\",\"member\":{\"shape\":\"S46\"}},\"nextToken\":{}}}},\"GetReplicationRuns\":{\"input\":{\"type\":\"structure\",\"required\":[\"replicationJobId\"],\"members\":{\"replicationJobId\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"replicationJob\":{\"shape\":\"S46\"},\"replicationRunList\":{\"shape\":\"S4a\"},\"nextToken\":{}}}},\"GetServers\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"vmServerAddressList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sf\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"lastModifiedOn\":{\"type\":\"timestamp\"},\"serverCatalogStatus\":{},\"serverList\":{\"shape\":\"Sa\"},\"nextToken\":{}}}},\"ImportAppCatalog\":{\"input\":{\"type\":\"structure\",\"members\":{\"roleName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ImportServerCatalog\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"LaunchApp\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListApps\":{\"input\":{\"type\":\"structure\",\"members\":{\"appIds\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"apps\":{\"type\":\"list\",\"member\":{\"shape\":\"St\"}},\"nextToken\":{}}}},\"NotifyAppValidationOutput\":{\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{},\"notificationContext\":{\"type\":\"structure\",\"members\":{\"validationId\":{},\"status\":{},\"statusMessage\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAppLaunchConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"roleName\":{},\"autoLaunch\":{\"type\":\"boolean\"},\"serverGroupLaunchConfigurations\":{\"shape\":\"S2e\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAppReplicationConfiguration\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"serverGroupReplicationConfigurations\":{\"shape\":\"S2u\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutAppValidationConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{},\"appValidationConfigurations\":{\"shape\":\"S31\"},\"serverGroupValidationConfigurations\":{\"shape\":\"S3c\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartAppReplication\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartOnDemandAppReplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"appId\"],\"members\":{\"appId\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartOnDemandReplicationRun\":{\"input\":{\"type\":\"structure\",\"required\":[\"replicationJobId\"],\"members\":{\"replicationJobId\":{},\"description\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"replicationRunId\":{}}}},\"StopAppReplication\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TerminateApp\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateApp\":{\"input\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"name\":{},\"description\":{},\"roleName\":{},\"serverGroups\":{\"shape\":\"S6\"},\"tags\":{\"shape\":\"So\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"appSummary\":{\"shape\":\"St\"},\"serverGroups\":{\"shape\":\"S6\"},\"tags\":{\"shape\":\"So\"}}}},\"UpdateReplicationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"replicationJobId\"],\"members\":{\"replicationJobId\":{},\"frequency\":{\"type\":\"integer\"},\"nextReplicationRunStartTime\":{\"type\":\"timestamp\"},\"licenseType\":{},\"roleName\":{},\"description\":{},\"numberOfRecentAmisToKeep\":{\"type\":\"integer\"},\"encrypted\":{\"type\":\"boolean\"},\"kmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serverGroupId\":{},\"name\":{},\"serverList\":{\"shape\":\"Sa\"}}}},\"Sa\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}},\"Sb\":{\"type\":\"structure\",\"members\":{\"serverId\":{},\"serverType\":{},\"vmServer\":{\"shape\":\"Se\"},\"replicationJobId\":{},\"replicationJobTerminated\":{\"type\":\"boolean\"}}},\"Se\":{\"type\":\"structure\",\"members\":{\"vmServerAddress\":{\"shape\":\"Sf\"},\"vmName\":{},\"vmManagerName\":{},\"vmManagerType\":{},\"vmPath\":{}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"vmManagerId\":{},\"vmId\":{}}},\"So\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"St\":{\"type\":\"structure\",\"members\":{\"appId\":{},\"importedAppId\":{},\"name\":{},\"description\":{},\"status\":{},\"statusMessage\":{},\"replicationConfigurationStatus\":{},\"replicationStatus\":{},\"replicationStatusMessage\":{},\"latestReplicationTime\":{\"type\":\"timestamp\"},\"launchConfigurationStatus\":{},\"launchStatus\":{},\"launchStatusMessage\":{},\"launchDetails\":{\"type\":\"structure\",\"members\":{\"latestLaunchTime\":{\"type\":\"timestamp\"},\"stackName\":{},\"stackId\":{}}},\"creationTime\":{\"type\":\"timestamp\"},\"lastModified\":{\"type\":\"timestamp\"},\"roleName\":{},\"totalServerGroups\":{\"type\":\"integer\"},\"totalServers\":{\"type\":\"integer\"}}},\"S24\":{\"type\":\"structure\",\"members\":{\"bucket\":{},\"key\":{}}},\"S2e\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serverGroupId\":{},\"launchOrder\":{\"type\":\"integer\"},\"serverLaunchConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"server\":{\"shape\":\"Sb\"},\"logicalId\":{},\"vpc\":{},\"subnet\":{},\"securityGroup\":{},\"ec2KeyName\":{},\"userData\":{\"type\":\"structure\",\"members\":{\"s3Location\":{\"shape\":\"S24\"}}},\"instanceType\":{},\"associatePublicIpAddress\":{\"type\":\"boolean\"},\"iamInstanceProfileName\":{},\"configureScript\":{\"shape\":\"S24\"},\"configureScriptType\":{}}}}}}},\"S2u\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serverGroupId\":{},\"serverReplicationConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"server\":{\"shape\":\"Sb\"},\"serverReplicationParameters\":{\"type\":\"structure\",\"members\":{\"seedTime\":{\"type\":\"timestamp\"},\"frequency\":{\"type\":\"integer\"},\"runOnce\":{\"type\":\"boolean\"},\"licenseType\":{},\"numberOfRecentAmisToKeep\":{\"type\":\"integer\"},\"encrypted\":{\"type\":\"boolean\"},\"kmsKeyId\":{}}}}}}}}},\"S31\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"validationId\":{},\"name\":{},\"appValidationStrategy\":{},\"ssmValidationParameters\":{\"type\":\"structure\",\"members\":{\"source\":{\"shape\":\"S37\"},\"instanceId\":{},\"scriptType\":{},\"command\":{},\"executionTimeoutSeconds\":{\"type\":\"integer\"},\"outputS3BucketName\":{}}}}}},\"S37\":{\"type\":\"structure\",\"members\":{\"s3Location\":{\"shape\":\"S24\"}}},\"S3c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"serverGroupId\":{},\"serverValidationConfigurations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"server\":{\"shape\":\"Sb\"},\"validationId\":{},\"name\":{},\"serverValidationStrategy\":{},\"userDataValidationParameters\":{\"type\":\"structure\",\"members\":{\"source\":{\"shape\":\"S37\"},\"scriptType\":{}}}}}}}}},\"S46\":{\"type\":\"structure\",\"members\":{\"replicationJobId\":{},\"serverId\":{},\"serverType\":{},\"vmServer\":{\"shape\":\"Se\"},\"seedReplicationTime\":{\"type\":\"timestamp\"},\"frequency\":{\"type\":\"integer\"},\"runOnce\":{\"type\":\"boolean\"},\"nextReplicationRunStartTime\":{\"type\":\"timestamp\"},\"licenseType\":{},\"roleName\":{},\"latestAmiId\":{},\"state\":{},\"statusMessage\":{},\"description\":{},\"numberOfRecentAmisToKeep\":{\"type\":\"integer\"},\"encrypted\":{\"type\":\"boolean\"},\"kmsKeyId\":{},\"replicationRunList\":{\"shape\":\"S4a\"}}},\"S4a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"replicationRunId\":{},\"state\":{},\"type\":{},\"stageDetails\":{\"type\":\"structure\",\"members\":{\"stage\":{},\"stageProgress\":{}}},\"statusMessage\":{},\"amiId\":{},\"scheduledStartTime\":{\"type\":\"timestamp\"},\"completedTime\":{\"type\":\"timestamp\"},\"description\":{},\"encrypted\":{\"type\":\"boolean\"},\"kmsKeyId\":{}}}}}}");

/***/ }),

/***/ 72874:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetConnectors\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"connectorList\"},\"GetReplicationJobs\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"replicationJobList\"},\"GetReplicationRuns\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"replicationRunList\"},\"GetServers\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"serverList\"}}}");

/***/ }),

/***/ 6641:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"metadata\":{\"apiVersion\":\"2018-09-05\",\"endpointPrefix\":\"sms-voice.pinpoint\",\"signingName\":\"sms-voice\",\"serviceAbbreviation\":\"Pinpoint SMS Voice\",\"serviceFullName\":\"Amazon Pinpoint SMS and Voice Service\",\"serviceId\":\"Pinpoint SMS Voice\",\"protocol\":\"rest-json\",\"jsonVersion\":\"1.1\",\"uid\":\"pinpoint-sms-voice-2018-09-05\",\"signatureVersion\":\"v4\"},\"operations\":{\"CreateConfigurationSet\":{\"http\":{\"requestUri\":\"/v1/sms-voice/configuration-sets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateConfigurationSetEventDestination\":{\"http\":{\"requestUri\":\"/v1/sms-voice/configuration-sets/{ConfigurationSetName}/event-destinations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestination\":{\"shape\":\"S6\"},\"EventDestinationName\":{}},\"required\":[\"ConfigurationSetName\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSet\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/sms-voice/configuration-sets/{ConfigurationSetName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}},\"required\":[\"ConfigurationSetName\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteConfigurationSetEventDestination\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/v1/sms-voice/configuration-sets/{ConfigurationSetName}/event-destinations/{EventDestinationName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestinationName\":{\"location\":\"uri\",\"locationName\":\"EventDestinationName\"}},\"required\":[\"EventDestinationName\",\"ConfigurationSetName\"]},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetConfigurationSetEventDestinations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/sms-voice/configuration-sets/{ConfigurationSetName}/event-destinations\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"}},\"required\":[\"ConfigurationSetName\"]},\"output\":{\"type\":\"structure\",\"members\":{\"EventDestinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CloudWatchLogsDestination\":{\"shape\":\"S7\"},\"Enabled\":{\"type\":\"boolean\"},\"KinesisFirehoseDestination\":{\"shape\":\"Sa\"},\"MatchingEventTypes\":{\"shape\":\"Sb\"},\"Name\":{},\"SnsDestination\":{\"shape\":\"Sd\"}}}}}}},\"ListConfigurationSets\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/v1/sms-voice/configuration-sets\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"PageSize\":{\"location\":\"querystring\",\"locationName\":\"PageSize\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConfigurationSets\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"SendVoiceMessage\":{\"http\":{\"requestUri\":\"/v1/sms-voice/voice/message\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"CallerId\":{},\"ConfigurationSetName\":{},\"Content\":{\"type\":\"structure\",\"members\":{\"CallInstructionsMessage\":{\"type\":\"structure\",\"members\":{\"Text\":{}},\"required\":[]},\"PlainTextMessage\":{\"type\":\"structure\",\"members\":{\"LanguageCode\":{},\"Text\":{},\"VoiceId\":{}},\"required\":[]},\"SSMLMessage\":{\"type\":\"structure\",\"members\":{\"LanguageCode\":{},\"Text\":{},\"VoiceId\":{}},\"required\":[]}}},\"DestinationPhoneNumber\":{},\"OriginationPhoneNumber\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MessageId\":{}}}},\"UpdateConfigurationSetEventDestination\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/v1/sms-voice/configuration-sets/{ConfigurationSetName}/event-destinations/{EventDestinationName}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"ConfigurationSetName\":{\"location\":\"uri\",\"locationName\":\"ConfigurationSetName\"},\"EventDestination\":{\"shape\":\"S6\"},\"EventDestinationName\":{\"location\":\"uri\",\"locationName\":\"EventDestinationName\"}},\"required\":[\"EventDestinationName\",\"ConfigurationSetName\"]},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S6\":{\"type\":\"structure\",\"members\":{\"CloudWatchLogsDestination\":{\"shape\":\"S7\"},\"Enabled\":{\"type\":\"boolean\"},\"KinesisFirehoseDestination\":{\"shape\":\"Sa\"},\"MatchingEventTypes\":{\"shape\":\"Sb\"},\"SnsDestination\":{\"shape\":\"Sd\"}},\"required\":[]},\"S7\":{\"type\":\"structure\",\"members\":{\"IamRoleArn\":{},\"LogGroupArn\":{}},\"required\":[]},\"Sa\":{\"type\":\"structure\",\"members\":{\"DeliveryStreamArn\":{},\"IamRoleArn\":{}},\"required\":[]},\"Sb\":{\"type\":\"list\",\"member\":{}},\"Sd\":{\"type\":\"structure\",\"members\":{\"TopicArn\":{}},\"required\":[]}}}");

/***/ }),

/***/ 41624:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-06-30\",\"endpointPrefix\":\"snowball\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon Snowball\",\"serviceFullName\":\"Amazon Import/Export Snowball\",\"serviceId\":\"Snowball\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSIESnowballJobManagementService\",\"uid\":\"snowball-2016-06-30\"},\"operations\":{\"CancelCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"Address\"],\"members\":{\"Address\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AddressId\":{}}}},\"CreateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobType\",\"Resources\",\"AddressId\",\"RoleARN\",\"ShippingOption\"],\"members\":{\"JobType\":{},\"Resources\":{\"shape\":\"Sf\"},\"Description\":{},\"AddressId\":{},\"KmsKeyARN\":{},\"RoleARN\":{},\"SnowballType\":{},\"ShippingOption\":{},\"Notification\":{\"shape\":\"Sv\"},\"ForwardingAddressId\":{},\"TaxDocuments\":{\"shape\":\"Sz\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterId\":{}}}},\"CreateJob\":{\"input\":{\"type\":\"structure\",\"members\":{\"JobType\":{},\"Resources\":{\"shape\":\"Sf\"},\"Description\":{},\"AddressId\":{},\"KmsKeyARN\":{},\"RoleARN\":{},\"SnowballCapacityPreference\":{},\"ShippingOption\":{},\"Notification\":{\"shape\":\"Sv\"},\"ClusterId\":{},\"SnowballType\":{},\"ForwardingAddressId\":{},\"TaxDocuments\":{\"shape\":\"Sz\"},\"DeviceConfiguration\":{\"shape\":\"S15\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"CreateReturnShippingLabel\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"ShippingOption\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{}}}},\"DescribeAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"AddressId\"],\"members\":{\"AddressId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Address\":{\"shape\":\"S8\"}}}},\"DescribeAddresses\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Addresses\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"NextToken\":{}}}},\"DescribeCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterMetadata\":{\"type\":\"structure\",\"members\":{\"ClusterId\":{},\"Description\":{},\"KmsKeyARN\":{},\"RoleARN\":{},\"ClusterState\":{},\"JobType\":{},\"SnowballType\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"Resources\":{\"shape\":\"Sf\"},\"AddressId\":{},\"ShippingOption\":{},\"Notification\":{\"shape\":\"Sv\"},\"ForwardingAddressId\":{},\"TaxDocuments\":{\"shape\":\"Sz\"}}}}}},\"DescribeJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobMetadata\":{\"shape\":\"S1p\"},\"SubJobMetadata\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\"}}}}},\"DescribeReturnShippingLabel\":{\"input\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"ExpirationDate\":{\"type\":\"timestamp\"}}}},\"GetJobManifest\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ManifestURI\":{}}}},\"GetJobUnlockCode\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnlockCode\":{}}}},\"GetSnowballUsage\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"SnowballLimit\":{\"type\":\"integer\"},\"SnowballsInUse\":{\"type\":\"integer\"}}}},\"GetSoftwareUpdates\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UpdatesURI\":{}}}},\"ListClusterJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobListEntries\":{\"shape\":\"S29\"},\"NextToken\":{}}}},\"ListClusters\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClusterListEntries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ClusterId\":{},\"ClusterState\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"Description\":{}}}},\"NextToken\":{}}}},\"ListCompatibleImages\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CompatibleImages\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AmiId\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"ListJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobListEntries\":{\"shape\":\"S29\"},\"NextToken\":{}}}},\"UpdateCluster\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClusterId\"],\"members\":{\"ClusterId\":{},\"RoleARN\":{},\"Description\":{},\"Resources\":{\"shape\":\"Sf\"},\"AddressId\":{},\"ShippingOption\":{},\"Notification\":{\"shape\":\"Sv\"},\"ForwardingAddressId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"RoleARN\":{},\"Notification\":{\"shape\":\"Sv\"},\"Resources\":{\"shape\":\"Sf\"},\"AddressId\":{},\"ShippingOption\":{},\"Description\":{},\"SnowballCapacityPreference\":{},\"ForwardingAddressId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateJobShipmentState\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\",\"ShipmentState\"],\"members\":{\"JobId\":{},\"ShipmentState\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S8\":{\"type\":\"structure\",\"members\":{\"AddressId\":{},\"Name\":{},\"Company\":{},\"Street1\":{},\"Street2\":{},\"Street3\":{},\"City\":{},\"StateOrProvince\":{},\"PrefectureOrDistrict\":{},\"Landmark\":{},\"Country\":{},\"PostalCode\":{},\"PhoneNumber\":{},\"IsRestricted\":{\"type\":\"boolean\"}}},\"Sf\":{\"type\":\"structure\",\"members\":{\"S3Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BucketArn\":{},\"KeyRange\":{\"type\":\"structure\",\"members\":{\"BeginMarker\":{},\"EndMarker\":{}}}}}},\"LambdaResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LambdaArn\":{},\"EventTriggers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EventResourceARN\":{}}}}}}},\"Ec2AmiResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AmiId\"],\"members\":{\"AmiId\":{},\"SnowballAmiId\":{}}}}}},\"Sv\":{\"type\":\"structure\",\"members\":{\"SnsTopicARN\":{},\"JobStatesToNotify\":{\"type\":\"list\",\"member\":{}},\"NotifyAll\":{\"type\":\"boolean\"}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"IND\":{\"type\":\"structure\",\"members\":{\"GSTIN\":{}}}}},\"S15\":{\"type\":\"structure\",\"members\":{\"SnowconeDeviceConfiguration\":{\"type\":\"structure\",\"members\":{\"WirelessConnection\":{\"type\":\"structure\",\"members\":{\"IsWifiEnabled\":{\"type\":\"boolean\"}}}}}}},\"S1p\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobState\":{},\"JobType\":{},\"SnowballType\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"Resources\":{\"shape\":\"Sf\"},\"Description\":{},\"KmsKeyARN\":{},\"RoleARN\":{},\"AddressId\":{},\"ShippingDetails\":{\"type\":\"structure\",\"members\":{\"ShippingOption\":{},\"InboundShipment\":{\"shape\":\"S1r\"},\"OutboundShipment\":{\"shape\":\"S1r\"}}},\"SnowballCapacityPreference\":{},\"Notification\":{\"shape\":\"Sv\"},\"DataTransferProgress\":{\"type\":\"structure\",\"members\":{\"BytesTransferred\":{\"type\":\"long\"},\"ObjectsTransferred\":{\"type\":\"long\"},\"TotalBytes\":{\"type\":\"long\"},\"TotalObjects\":{\"type\":\"long\"}}},\"JobLogInfo\":{\"type\":\"structure\",\"members\":{\"JobCompletionReportURI\":{},\"JobSuccessLogURI\":{},\"JobFailureLogURI\":{}}},\"ClusterId\":{},\"ForwardingAddressId\":{},\"TaxDocuments\":{\"shape\":\"Sz\"},\"DeviceConfiguration\":{\"shape\":\"S15\"}}},\"S1r\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"TrackingNumber\":{}}},\"S29\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobState\":{},\"IsMaster\":{\"type\":\"boolean\"},\"JobType\":{},\"SnowballType\":{},\"CreationDate\":{\"type\":\"timestamp\"},\"Description\":{}}}}}}");

/***/ }),

/***/ 14147:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeAddresses\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Addresses\"},\"ListJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"JobListEntries\"}}}");

/***/ }),

/***/ 86384:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2010-03-31\",\"endpointPrefix\":\"sns\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon SNS\",\"serviceFullName\":\"Amazon Simple Notification Service\",\"serviceId\":\"SNS\",\"signatureVersion\":\"v4\",\"uid\":\"sns-2010-03-31\",\"xmlNamespace\":\"http://sns.amazonaws.com/doc/2010-03-31/\"},\"operations\":{\"AddPermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\",\"Label\",\"AWSAccountId\",\"ActionName\"],\"members\":{\"TopicArn\":{},\"Label\":{},\"AWSAccountId\":{\"type\":\"list\",\"member\":{}},\"ActionName\":{\"type\":\"list\",\"member\":{}}}}},\"CheckIfPhoneNumberIsOptedOut\":{\"input\":{\"type\":\"structure\",\"required\":[\"phoneNumber\"],\"members\":{\"phoneNumber\":{}}},\"output\":{\"resultWrapper\":\"CheckIfPhoneNumberIsOptedOutResult\",\"type\":\"structure\",\"members\":{\"isOptedOut\":{\"type\":\"boolean\"}}}},\"ConfirmSubscription\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\",\"Token\"],\"members\":{\"TopicArn\":{},\"Token\":{},\"AuthenticateOnUnsubscribe\":{}}},\"output\":{\"resultWrapper\":\"ConfirmSubscriptionResult\",\"type\":\"structure\",\"members\":{\"SubscriptionArn\":{}}}},\"CreatePlatformApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Platform\",\"Attributes\"],\"members\":{\"Name\":{},\"Platform\":{},\"Attributes\":{\"shape\":\"Sj\"}}},\"output\":{\"resultWrapper\":\"CreatePlatformApplicationResult\",\"type\":\"structure\",\"members\":{\"PlatformApplicationArn\":{}}}},\"CreatePlatformEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlatformApplicationArn\",\"Token\"],\"members\":{\"PlatformApplicationArn\":{},\"Token\":{},\"CustomUserData\":{},\"Attributes\":{\"shape\":\"Sj\"}}},\"output\":{\"resultWrapper\":\"CreatePlatformEndpointResult\",\"type\":\"structure\",\"members\":{\"EndpointArn\":{}}}},\"CreateTopic\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Attributes\":{\"shape\":\"Sp\"},\"Tags\":{\"shape\":\"Ss\"}}},\"output\":{\"resultWrapper\":\"CreateTopicResult\",\"type\":\"structure\",\"members\":{\"TopicArn\":{}}}},\"DeleteEndpoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}}},\"DeletePlatformApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlatformApplicationArn\"],\"members\":{\"PlatformApplicationArn\":{}}}},\"DeleteTopic\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\"],\"members\":{\"TopicArn\":{}}}},\"GetEndpointAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\"],\"members\":{\"EndpointArn\":{}}},\"output\":{\"resultWrapper\":\"GetEndpointAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sj\"}}}},\"GetPlatformApplicationAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlatformApplicationArn\"],\"members\":{\"PlatformApplicationArn\":{}}},\"output\":{\"resultWrapper\":\"GetPlatformApplicationAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sj\"}}}},\"GetSMSAttributes\":{\"input\":{\"type\":\"structure\",\"members\":{\"attributes\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"GetSMSAttributesResult\",\"type\":\"structure\",\"members\":{\"attributes\":{\"shape\":\"Sj\"}}}},\"GetSubscriptionAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\"],\"members\":{\"SubscriptionArn\":{}}},\"output\":{\"resultWrapper\":\"GetSubscriptionAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"S19\"}}}},\"GetTopicAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\"],\"members\":{\"TopicArn\":{}}},\"output\":{\"resultWrapper\":\"GetTopicAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sp\"}}}},\"ListEndpointsByPlatformApplication\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlatformApplicationArn\"],\"members\":{\"PlatformApplicationArn\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListEndpointsByPlatformApplicationResult\",\"type\":\"structure\",\"members\":{\"Endpoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"EndpointArn\":{},\"Attributes\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}}},\"ListPhoneNumbersOptedOut\":{\"input\":{\"type\":\"structure\",\"members\":{\"nextToken\":{}}},\"output\":{\"resultWrapper\":\"ListPhoneNumbersOptedOutResult\",\"type\":\"structure\",\"members\":{\"phoneNumbers\":{\"type\":\"list\",\"member\":{}},\"nextToken\":{}}}},\"ListPlatformApplications\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListPlatformApplicationsResult\",\"type\":\"structure\",\"members\":{\"PlatformApplications\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PlatformApplicationArn\":{},\"Attributes\":{\"shape\":\"Sj\"}}}},\"NextToken\":{}}}},\"ListSubscriptions\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListSubscriptionsResult\",\"type\":\"structure\",\"members\":{\"Subscriptions\":{\"shape\":\"S1r\"},\"NextToken\":{}}}},\"ListSubscriptionsByTopic\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\"],\"members\":{\"TopicArn\":{},\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListSubscriptionsByTopicResult\",\"type\":\"structure\",\"members\":{\"Subscriptions\":{\"shape\":\"S1r\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"resultWrapper\":\"ListTagsForResourceResult\",\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Ss\"}}}},\"ListTopics\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"resultWrapper\":\"ListTopicsResult\",\"type\":\"structure\",\"members\":{\"Topics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TopicArn\":{}}}},\"NextToken\":{}}}},\"OptInPhoneNumber\":{\"input\":{\"type\":\"structure\",\"required\":[\"phoneNumber\"],\"members\":{\"phoneNumber\":{}}},\"output\":{\"resultWrapper\":\"OptInPhoneNumberResult\",\"type\":\"structure\",\"members\":{}}},\"Publish\":{\"input\":{\"type\":\"structure\",\"required\":[\"Message\"],\"members\":{\"TopicArn\":{},\"TargetArn\":{},\"PhoneNumber\":{},\"Message\":{},\"Subject\":{},\"MessageStructure\":{},\"MessageAttributes\":{\"type\":\"map\",\"key\":{\"locationName\":\"Name\"},\"value\":{\"locationName\":\"Value\",\"type\":\"structure\",\"required\":[\"DataType\"],\"members\":{\"DataType\":{},\"StringValue\":{},\"BinaryValue\":{\"type\":\"blob\"}}}},\"MessageDeduplicationId\":{},\"MessageGroupId\":{}}},\"output\":{\"resultWrapper\":\"PublishResult\",\"type\":\"structure\",\"members\":{\"MessageId\":{},\"SequenceNumber\":{}}}},\"RemovePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\",\"Label\"],\"members\":{\"TopicArn\":{},\"Label\":{}}}},\"SetEndpointAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"EndpointArn\",\"Attributes\"],\"members\":{\"EndpointArn\":{},\"Attributes\":{\"shape\":\"Sj\"}}}},\"SetPlatformApplicationAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"PlatformApplicationArn\",\"Attributes\"],\"members\":{\"PlatformApplicationArn\":{},\"Attributes\":{\"shape\":\"Sj\"}}}},\"SetSMSAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"attributes\"],\"members\":{\"attributes\":{\"shape\":\"Sj\"}}},\"output\":{\"resultWrapper\":\"SetSMSAttributesResult\",\"type\":\"structure\",\"members\":{}}},\"SetSubscriptionAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\",\"AttributeName\"],\"members\":{\"SubscriptionArn\":{},\"AttributeName\":{},\"AttributeValue\":{}}}},\"SetTopicAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\",\"AttributeName\"],\"members\":{\"TopicArn\":{},\"AttributeName\":{},\"AttributeValue\":{}}}},\"Subscribe\":{\"input\":{\"type\":\"structure\",\"required\":[\"TopicArn\",\"Protocol\"],\"members\":{\"TopicArn\":{},\"Protocol\":{},\"Endpoint\":{},\"Attributes\":{\"shape\":\"S19\"},\"ReturnSubscriptionArn\":{\"type\":\"boolean\"}}},\"output\":{\"resultWrapper\":\"SubscribeResult\",\"type\":\"structure\",\"members\":{\"SubscriptionArn\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{},\"Tags\":{\"shape\":\"Ss\"}}},\"output\":{\"resultWrapper\":\"TagResourceResult\",\"type\":\"structure\",\"members\":{}}},\"Unsubscribe\":{\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionArn\"],\"members\":{\"SubscriptionArn\":{}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"resultWrapper\":\"UntagResourceResult\",\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sj\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sp\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Ss\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S19\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SubscriptionArn\":{},\"Owner\":{},\"Protocol\":{},\"Endpoint\":{},\"TopicArn\":{}}}}}}");

/***/ }),

/***/ 92788:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListEndpointsByPlatformApplication\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Endpoints\"},\"ListPlatformApplications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"PlatformApplications\"},\"ListSubscriptions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Subscriptions\"},\"ListSubscriptionsByTopic\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Subscriptions\"},\"ListTopics\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Topics\"}}}");

/***/ }),

/***/ 31635:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-11-05\",\"endpointPrefix\":\"sqs\",\"protocol\":\"query\",\"serviceAbbreviation\":\"Amazon SQS\",\"serviceFullName\":\"Amazon Simple Queue Service\",\"serviceId\":\"SQS\",\"signatureVersion\":\"v4\",\"uid\":\"sqs-2012-11-05\",\"xmlNamespace\":\"http://queue.amazonaws.com/doc/2012-11-05/\"},\"operations\":{\"AddPermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Label\",\"AWSAccountIds\",\"Actions\"],\"members\":{\"QueueUrl\":{},\"Label\":{},\"AWSAccountIds\":{\"type\":\"list\",\"member\":{\"locationName\":\"AWSAccountId\"},\"flattened\":true},\"Actions\":{\"type\":\"list\",\"member\":{\"locationName\":\"ActionName\"},\"flattened\":true}}}},\"ChangeMessageVisibility\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"ReceiptHandle\",\"VisibilityTimeout\"],\"members\":{\"QueueUrl\":{},\"ReceiptHandle\":{},\"VisibilityTimeout\":{\"type\":\"integer\"}}}},\"ChangeMessageVisibilityBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Entries\"],\"members\":{\"QueueUrl\":{},\"Entries\":{\"type\":\"list\",\"member\":{\"locationName\":\"ChangeMessageVisibilityBatchRequestEntry\",\"type\":\"structure\",\"required\":[\"Id\",\"ReceiptHandle\"],\"members\":{\"Id\":{},\"ReceiptHandle\":{},\"VisibilityTimeout\":{\"type\":\"integer\"}}},\"flattened\":true}}},\"output\":{\"resultWrapper\":\"ChangeMessageVisibilityBatchResult\",\"type\":\"structure\",\"required\":[\"Successful\",\"Failed\"],\"members\":{\"Successful\":{\"type\":\"list\",\"member\":{\"locationName\":\"ChangeMessageVisibilityBatchResultEntry\",\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"flattened\":true},\"Failed\":{\"shape\":\"Sd\"}}}},\"CreateQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueName\"],\"members\":{\"QueueName\":{},\"Attributes\":{\"shape\":\"Sh\",\"locationName\":\"Attribute\"},\"tags\":{\"shape\":\"Sj\",\"locationName\":\"Tag\"}}},\"output\":{\"resultWrapper\":\"CreateQueueResult\",\"type\":\"structure\",\"members\":{\"QueueUrl\":{}}}},\"DeleteMessage\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"ReceiptHandle\"],\"members\":{\"QueueUrl\":{},\"ReceiptHandle\":{}}}},\"DeleteMessageBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Entries\"],\"members\":{\"QueueUrl\":{},\"Entries\":{\"type\":\"list\",\"member\":{\"locationName\":\"DeleteMessageBatchRequestEntry\",\"type\":\"structure\",\"required\":[\"Id\",\"ReceiptHandle\"],\"members\":{\"Id\":{},\"ReceiptHandle\":{}}},\"flattened\":true}}},\"output\":{\"resultWrapper\":\"DeleteMessageBatchResult\",\"type\":\"structure\",\"required\":[\"Successful\",\"Failed\"],\"members\":{\"Successful\":{\"type\":\"list\",\"member\":{\"locationName\":\"DeleteMessageBatchResultEntry\",\"type\":\"structure\",\"required\":[\"Id\"],\"members\":{\"Id\":{}}},\"flattened\":true},\"Failed\":{\"shape\":\"Sd\"}}}},\"DeleteQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\"],\"members\":{\"QueueUrl\":{}}}},\"GetQueueAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\"],\"members\":{\"QueueUrl\":{},\"AttributeNames\":{\"shape\":\"Sw\"}}},\"output\":{\"resultWrapper\":\"GetQueueAttributesResult\",\"type\":\"structure\",\"members\":{\"Attributes\":{\"shape\":\"Sh\",\"locationName\":\"Attribute\"}}}},\"GetQueueUrl\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueName\"],\"members\":{\"QueueName\":{},\"QueueOwnerAWSAccountId\":{}}},\"output\":{\"resultWrapper\":\"GetQueueUrlResult\",\"type\":\"structure\",\"members\":{\"QueueUrl\":{}}}},\"ListDeadLetterSourceQueues\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\"],\"members\":{\"QueueUrl\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListDeadLetterSourceQueuesResult\",\"type\":\"structure\",\"required\":[\"queueUrls\"],\"members\":{\"queueUrls\":{\"shape\":\"S14\"},\"NextToken\":{}}}},\"ListQueueTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\"],\"members\":{\"QueueUrl\":{}}},\"output\":{\"resultWrapper\":\"ListQueueTagsResult\",\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sj\",\"locationName\":\"Tag\"}}}},\"ListQueues\":{\"input\":{\"type\":\"structure\",\"members\":{\"QueueNamePrefix\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"ListQueuesResult\",\"type\":\"structure\",\"members\":{\"QueueUrls\":{\"shape\":\"S14\"},\"NextToken\":{}}}},\"PurgeQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\"],\"members\":{\"QueueUrl\":{}}}},\"ReceiveMessage\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\"],\"members\":{\"QueueUrl\":{},\"AttributeNames\":{\"shape\":\"Sw\"},\"MessageAttributeNames\":{\"type\":\"list\",\"member\":{\"locationName\":\"MessageAttributeName\"},\"flattened\":true},\"MaxNumberOfMessages\":{\"type\":\"integer\"},\"VisibilityTimeout\":{\"type\":\"integer\"},\"WaitTimeSeconds\":{\"type\":\"integer\"},\"ReceiveRequestAttemptId\":{}}},\"output\":{\"resultWrapper\":\"ReceiveMessageResult\",\"type\":\"structure\",\"members\":{\"Messages\":{\"type\":\"list\",\"member\":{\"locationName\":\"Message\",\"type\":\"structure\",\"members\":{\"MessageId\":{},\"ReceiptHandle\":{},\"MD5OfBody\":{},\"Body\":{},\"Attributes\":{\"locationName\":\"Attribute\",\"type\":\"map\",\"key\":{\"locationName\":\"Name\"},\"value\":{\"locationName\":\"Value\"},\"flattened\":true},\"MD5OfMessageAttributes\":{},\"MessageAttributes\":{\"shape\":\"S1i\",\"locationName\":\"MessageAttribute\"}}},\"flattened\":true}}}},\"RemovePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Label\"],\"members\":{\"QueueUrl\":{},\"Label\":{}}}},\"SendMessage\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"MessageBody\"],\"members\":{\"QueueUrl\":{},\"MessageBody\":{},\"DelaySeconds\":{\"type\":\"integer\"},\"MessageAttributes\":{\"shape\":\"S1i\",\"locationName\":\"MessageAttribute\"},\"MessageSystemAttributes\":{\"shape\":\"S1p\",\"locationName\":\"MessageSystemAttribute\"},\"MessageDeduplicationId\":{},\"MessageGroupId\":{}}},\"output\":{\"resultWrapper\":\"SendMessageResult\",\"type\":\"structure\",\"members\":{\"MD5OfMessageBody\":{},\"MD5OfMessageAttributes\":{},\"MD5OfMessageSystemAttributes\":{},\"MessageId\":{},\"SequenceNumber\":{}}}},\"SendMessageBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Entries\"],\"members\":{\"QueueUrl\":{},\"Entries\":{\"type\":\"list\",\"member\":{\"locationName\":\"SendMessageBatchRequestEntry\",\"type\":\"structure\",\"required\":[\"Id\",\"MessageBody\"],\"members\":{\"Id\":{},\"MessageBody\":{},\"DelaySeconds\":{\"type\":\"integer\"},\"MessageAttributes\":{\"shape\":\"S1i\",\"locationName\":\"MessageAttribute\"},\"MessageSystemAttributes\":{\"shape\":\"S1p\",\"locationName\":\"MessageSystemAttribute\"},\"MessageDeduplicationId\":{},\"MessageGroupId\":{}}},\"flattened\":true}}},\"output\":{\"resultWrapper\":\"SendMessageBatchResult\",\"type\":\"structure\",\"required\":[\"Successful\",\"Failed\"],\"members\":{\"Successful\":{\"type\":\"list\",\"member\":{\"locationName\":\"SendMessageBatchResultEntry\",\"type\":\"structure\",\"required\":[\"Id\",\"MessageId\",\"MD5OfMessageBody\"],\"members\":{\"Id\":{},\"MessageId\":{},\"MD5OfMessageBody\":{},\"MD5OfMessageAttributes\":{},\"MD5OfMessageSystemAttributes\":{},\"SequenceNumber\":{}}},\"flattened\":true},\"Failed\":{\"shape\":\"Sd\"}}}},\"SetQueueAttributes\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Attributes\"],\"members\":{\"QueueUrl\":{},\"Attributes\":{\"shape\":\"Sh\",\"locationName\":\"Attribute\"}}}},\"TagQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"Tags\"],\"members\":{\"QueueUrl\":{},\"Tags\":{\"shape\":\"Sj\"}}}},\"UntagQueue\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueueUrl\",\"TagKeys\"],\"members\":{\"QueueUrl\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{\"locationName\":\"TagKey\"},\"flattened\":true}}}}},\"shapes\":{\"Sd\":{\"type\":\"list\",\"member\":{\"locationName\":\"BatchResultErrorEntry\",\"type\":\"structure\",\"required\":[\"Id\",\"SenderFault\",\"Code\"],\"members\":{\"Id\":{},\"SenderFault\":{\"type\":\"boolean\"},\"Code\":{},\"Message\":{}}},\"flattened\":true},\"Sh\":{\"type\":\"map\",\"key\":{\"locationName\":\"Name\"},\"value\":{\"locationName\":\"Value\"},\"flattened\":true,\"locationName\":\"Attribute\"},\"Sj\":{\"type\":\"map\",\"key\":{\"locationName\":\"Key\"},\"value\":{\"locationName\":\"Value\"},\"flattened\":true,\"locationName\":\"Tag\"},\"Sw\":{\"type\":\"list\",\"member\":{\"locationName\":\"AttributeName\"},\"flattened\":true},\"S14\":{\"type\":\"list\",\"member\":{\"locationName\":\"QueueUrl\"},\"flattened\":true},\"S1i\":{\"type\":\"map\",\"key\":{\"locationName\":\"Name\"},\"value\":{\"locationName\":\"Value\",\"type\":\"structure\",\"required\":[\"DataType\"],\"members\":{\"StringValue\":{},\"BinaryValue\":{\"type\":\"blob\"},\"StringListValues\":{\"shape\":\"S1l\",\"flattened\":true,\"locationName\":\"StringListValue\"},\"BinaryListValues\":{\"shape\":\"S1m\",\"flattened\":true,\"locationName\":\"BinaryListValue\"},\"DataType\":{}}},\"flattened\":true},\"S1l\":{\"type\":\"list\",\"member\":{\"locationName\":\"StringListValue\"}},\"S1m\":{\"type\":\"list\",\"member\":{\"locationName\":\"BinaryListValue\",\"type\":\"blob\"}},\"S1p\":{\"type\":\"map\",\"key\":{\"locationName\":\"Name\"},\"value\":{\"locationName\":\"Value\",\"type\":\"structure\",\"required\":[\"DataType\"],\"members\":{\"StringValue\":{},\"BinaryValue\":{\"type\":\"blob\"},\"StringListValues\":{\"shape\":\"S1l\",\"flattened\":true,\"locationName\":\"StringListValue\"},\"BinaryListValues\":{\"shape\":\"S1m\",\"flattened\":true,\"locationName\":\"BinaryListValue\"},\"DataType\":{}}},\"flattened\":true}}}");

/***/ }),

/***/ 48324:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDeadLetterSourceQueues\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"queueUrls\"},\"ListQueues\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"QueueUrls\"}}}");

/***/ }),

/***/ 7667:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2014-11-06\",\"endpointPrefix\":\"ssm\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon SSM\",\"serviceFullName\":\"Amazon Simple Systems Manager (SSM)\",\"serviceId\":\"SSM\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AmazonSSM\",\"uid\":\"ssm-2014-11-06\"},\"operations\":{\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\",\"Tags\"],\"members\":{\"ResourceType\":{},\"ResourceId\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelCommand\":{\"input\":{\"type\":\"structure\",\"required\":[\"CommandId\"],\"members\":{\"CommandId\":{},\"InstanceIds\":{\"shape\":\"Sb\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CancelMaintenanceWindowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowExecutionId\"],\"members\":{\"WindowExecutionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutionId\":{}}}},\"CreateActivation\":{\"input\":{\"type\":\"structure\",\"required\":[\"IamRole\"],\"members\":{\"Description\":{},\"DefaultInstanceName\":{},\"IamRole\":{},\"RegistrationLimit\":{\"type\":\"integer\"},\"ExpirationDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActivationId\":{},\"ActivationCode\":{}}}},\"CreateAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"DocumentVersion\":{},\"InstanceId\":{},\"Parameters\":{\"shape\":\"St\"},\"Targets\":{\"shape\":\"Sx\"},\"ScheduleExpression\":{},\"OutputLocation\":{\"shape\":\"S13\"},\"AssociationName\":{},\"AutomationTargetParameterName\":{},\"MaxErrors\":{},\"MaxConcurrency\":{},\"ComplianceSeverity\":{},\"SyncCompliance\":{},\"ApplyOnlyAtCronInterval\":{\"type\":\"boolean\"},\"TargetLocations\":{\"shape\":\"S1f\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationDescription\":{\"shape\":\"S1n\"}}}},\"CreateAssociationBatch\":{\"input\":{\"type\":\"structure\",\"required\":[\"Entries\"],\"members\":{\"Entries\":{\"type\":\"list\",\"member\":{\"shape\":\"S21\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Successful\":{\"type\":\"list\",\"member\":{\"shape\":\"S1n\"}},\"Failed\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Entry\":{\"shape\":\"S21\"},\"Message\":{},\"Fault\":{}}}}}}},\"CreateDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Content\",\"Name\"],\"members\":{\"Content\":{},\"Requires\":{\"shape\":\"S2a\"},\"Attachments\":{\"shape\":\"S2c\"},\"Name\":{},\"VersionName\":{},\"DocumentType\":{},\"DocumentFormat\":{},\"TargetType\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentDescription\":{\"shape\":\"S2o\"}}}},\"CreateMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Schedule\",\"Duration\",\"Cutoff\",\"AllowUnassociatedTargets\"],\"members\":{\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"StartDate\":{},\"EndDate\":{},\"Schedule\":{},\"ScheduleTimezone\":{},\"ScheduleOffset\":{\"type\":\"integer\"},\"Duration\":{\"type\":\"integer\"},\"Cutoff\":{\"type\":\"integer\"},\"AllowUnassociatedTargets\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{}}}},\"CreateOpsItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"Description\",\"Source\",\"Title\"],\"members\":{\"Description\":{},\"OpsItemType\":{},\"OperationalData\":{\"shape\":\"S3t\"},\"Notifications\":{\"shape\":\"S3y\"},\"Priority\":{\"type\":\"integer\"},\"RelatedOpsItems\":{\"shape\":\"S42\"},\"Source\":{},\"Title\":{},\"Tags\":{\"shape\":\"S4\"},\"Category\":{},\"Severity\":{},\"ActualStartTime\":{\"type\":\"timestamp\"},\"ActualEndTime\":{\"type\":\"timestamp\"},\"PlannedStartTime\":{\"type\":\"timestamp\"},\"PlannedEndTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OpsItemId\":{}}}},\"CreateOpsMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{},\"Metadata\":{\"shape\":\"S4b\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OpsMetadataArn\":{}}}},\"CreatePatchBaseline\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"OperatingSystem\":{},\"Name\":{},\"GlobalFilters\":{\"shape\":\"S4k\"},\"ApprovalRules\":{\"shape\":\"S4q\"},\"ApprovedPatches\":{\"shape\":\"S4x\"},\"ApprovedPatchesComplianceLevel\":{},\"ApprovedPatchesEnableNonSecurity\":{\"type\":\"boolean\"},\"RejectedPatches\":{\"shape\":\"S4x\"},\"RejectedPatchesAction\":{},\"Description\":{},\"Sources\":{\"shape\":\"S51\"},\"ClientToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{}}}},\"CreateResourceDataSync\":{\"input\":{\"type\":\"structure\",\"required\":[\"SyncName\"],\"members\":{\"SyncName\":{},\"S3Destination\":{\"shape\":\"S5b\"},\"SyncType\":{},\"SyncSource\":{\"shape\":\"S5k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteActivation\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActivationId\"],\"members\":{\"ActivationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAssociation\":{\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"InstanceId\":{},\"AssociationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"DocumentVersion\":{},\"VersionName\":{},\"Force\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInventory\":{\"input\":{\"type\":\"structure\",\"required\":[\"TypeName\"],\"members\":{\"TypeName\":{},\"SchemaDeleteOption\":{},\"DryRun\":{\"type\":\"boolean\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeletionId\":{},\"TypeName\":{},\"DeletionSummary\":{\"shape\":\"S68\"}}}},\"DeleteMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\"],\"members\":{\"WindowId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{}}}},\"DeleteOpsMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpsMetadataArn\"],\"members\":{\"OpsMetadataArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteParameter\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"Names\"],\"members\":{\"Names\":{\"shape\":\"S6n\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeletedParameters\":{\"shape\":\"S6n\"},\"InvalidParameters\":{\"shape\":\"S6n\"}}}},\"DeletePatchBaseline\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\"],\"members\":{\"BaselineId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{}}}},\"DeleteResourceDataSync\":{\"input\":{\"type\":\"structure\",\"required\":[\"SyncName\"],\"members\":{\"SyncName\":{},\"SyncType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterManagedInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterPatchBaselineForPatchGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\",\"PatchGroup\"],\"members\":{\"BaselineId\":{},\"PatchGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"PatchGroup\":{}}}},\"DeregisterTargetFromMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"WindowTargetId\"],\"members\":{\"WindowId\":{},\"WindowTargetId\":{},\"Safe\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTargetId\":{}}}},\"DeregisterTaskFromMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"WindowTaskId\"],\"members\":{\"WindowId\":{},\"WindowTaskId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTaskId\":{}}}},\"DescribeActivations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FilterKey\":{},\"FilterValues\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ActivationList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActivationId\":{},\"Description\":{},\"DefaultInstanceName\":{},\"IamRole\":{},\"RegistrationLimit\":{\"type\":\"integer\"},\"RegistrationsCount\":{\"type\":\"integer\"},\"ExpirationDate\":{\"type\":\"timestamp\"},\"Expired\":{\"type\":\"boolean\"},\"CreatedDate\":{\"type\":\"timestamp\"},\"Tags\":{\"shape\":\"S4\"}}}},\"NextToken\":{}}}},\"DescribeAssociation\":{\"input\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"InstanceId\":{},\"AssociationId\":{},\"AssociationVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationDescription\":{\"shape\":\"S1n\"}}}},\"DescribeAssociationExecutionTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\",\"ExecutionId\"],\"members\":{\"AssociationId\":{},\"ExecutionId\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationExecutionTargets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"AssociationVersion\":{},\"ExecutionId\":{},\"ResourceId\":{},\"ResourceType\":{},\"Status\":{},\"DetailedStatus\":{},\"LastExecutionDate\":{\"type\":\"timestamp\"},\"OutputSource\":{\"type\":\"structure\",\"members\":{\"OutputSourceId\":{},\"OutputSourceType\":{}}}}}},\"NextToken\":{}}}},\"DescribeAssociationExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\",\"Type\"],\"members\":{\"Key\":{},\"Value\":{},\"Type\":{}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"AssociationVersion\":{},\"ExecutionId\":{},\"Status\":{},\"DetailedStatus\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastExecutionDate\":{\"type\":\"timestamp\"},\"ResourceCountByStatus\":{}}}},\"NextToken\":{}}}},\"DescribeAutomationExecutions\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutomationExecutionMetadataList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutomationExecutionId\":{},\"DocumentName\":{},\"DocumentVersion\":{},\"AutomationExecutionStatus\":{},\"ExecutionStartTime\":{\"type\":\"timestamp\"},\"ExecutionEndTime\":{\"type\":\"timestamp\"},\"ExecutedBy\":{},\"LogFile\":{},\"Outputs\":{\"shape\":\"S8i\"},\"Mode\":{},\"ParentAutomationExecutionId\":{},\"CurrentStepName\":{},\"CurrentAction\":{},\"FailureMessage\":{},\"TargetParameterName\":{},\"Targets\":{\"shape\":\"Sx\"},\"TargetMaps\":{\"shape\":\"S8n\"},\"ResolvedTargets\":{\"shape\":\"S8s\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"Target\":{},\"AutomationType\":{},\"AutomationSubtype\":{},\"ScheduledTime\":{\"type\":\"timestamp\"},\"Runbooks\":{\"shape\":\"S8w\"},\"OpsItemId\":{},\"AssociationId\":{},\"ChangeRequestName\":{}}}},\"NextToken\":{}}}},\"DescribeAutomationStepExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutomationExecutionId\"],\"members\":{\"AutomationExecutionId\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"ReverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StepExecutions\":{\"shape\":\"S96\"},\"NextToken\":{}}}},\"DescribeAvailablePatches\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S9g\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Patches\":{\"type\":\"list\",\"member\":{\"shape\":\"S9o\"}},\"NextToken\":{}}}},\"DescribeDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"DocumentVersion\":{},\"VersionName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Document\":{\"shape\":\"S2o\"}}}},\"DescribeDocumentPermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"PermissionType\"],\"members\":{\"Name\":{},\"PermissionType\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountIds\":{\"shape\":\"Saj\"},\"AccountSharingInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"SharedDocumentVersion\":{}}}},\"NextToken\":{}}}},\"DescribeEffectiveInstanceAssociations\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"InstanceId\":{},\"Content\":{},\"AssociationVersion\":{}}}},\"NextToken\":{}}}},\"DescribeEffectivePatchesForPatchBaseline\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\"],\"members\":{\"BaselineId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EffectivePatches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Patch\":{\"shape\":\"S9o\"},\"PatchStatus\":{\"type\":\"structure\",\"members\":{\"DeploymentStatus\":{},\"ComplianceLevel\":{},\"ApprovalDate\":{\"type\":\"timestamp\"}}}}}},\"NextToken\":{}}}},\"DescribeInstanceAssociationsStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceAssociationStatusInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"Name\":{},\"DocumentVersion\":{},\"AssociationVersion\":{},\"InstanceId\":{},\"ExecutionDate\":{\"type\":\"timestamp\"},\"Status\":{},\"DetailedStatus\":{},\"ExecutionSummary\":{},\"ErrorCode\":{},\"OutputUrl\":{\"type\":\"structure\",\"members\":{\"S3OutputUrl\":{\"type\":\"structure\",\"members\":{\"OutputUrl\":{}}}}},\"AssociationName\":{}}}},\"NextToken\":{}}}},\"DescribeInstanceInformation\":{\"input\":{\"type\":\"structure\",\"members\":{\"InstanceInformationFilterList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"valueSet\"],\"members\":{\"key\":{},\"valueSet\":{\"shape\":\"Sbc\"}}}},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"shape\":\"Sbc\"}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceInformationList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"PingStatus\":{},\"LastPingDateTime\":{\"type\":\"timestamp\"},\"AgentVersion\":{},\"IsLatestVersion\":{\"type\":\"boolean\"},\"PlatformType\":{},\"PlatformName\":{},\"PlatformVersion\":{},\"ActivationId\":{},\"IamRole\":{},\"RegistrationDate\":{\"type\":\"timestamp\"},\"ResourceType\":{},\"Name\":{},\"IPAddress\":{},\"ComputerName\":{},\"AssociationStatus\":{},\"LastAssociationExecutionDate\":{\"type\":\"timestamp\"},\"LastSuccessfulAssociationExecutionDate\":{\"type\":\"timestamp\"},\"AssociationOverview\":{\"type\":\"structure\",\"members\":{\"DetailedStatus\":{},\"InstanceAssociationStatusAggregatedCount\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}}}}},\"NextToken\":{}}}},\"DescribeInstancePatchStates\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceIds\"],\"members\":{\"InstanceIds\":{\"shape\":\"Sb\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstancePatchStates\":{\"type\":\"list\",\"member\":{\"shape\":\"Sbw\"}},\"NextToken\":{}}}},\"DescribeInstancePatchStatesForPatchGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"PatchGroup\"],\"members\":{\"PatchGroup\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\",\"Type\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Type\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstancePatchStates\":{\"type\":\"list\",\"member\":{\"shape\":\"Sbw\"}},\"NextToken\":{}}}},\"DescribeInstancePatches\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\"],\"members\":{\"InstanceId\":{},\"Filters\":{\"shape\":\"S9g\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Patches\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Title\",\"KBId\",\"Classification\",\"Severity\",\"State\",\"InstalledTime\"],\"members\":{\"Title\":{},\"KBId\":{},\"Classification\":{},\"Severity\":{},\"State\":{},\"InstalledTime\":{\"type\":\"timestamp\"},\"CVEIds\":{}}}},\"NextToken\":{}}}},\"DescribeInventoryDeletions\":{\"input\":{\"type\":\"structure\",\"members\":{\"DeletionId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InventoryDeletions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeletionId\":{},\"TypeName\":{},\"DeletionStartTime\":{\"type\":\"timestamp\"},\"LastStatus\":{},\"LastStatusMessage\":{},\"DeletionSummary\":{\"shape\":\"S68\"},\"LastStatusUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowExecutionTaskInvocations\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowExecutionId\",\"TaskId\"],\"members\":{\"WindowExecutionId\":{},\"TaskId\":{},\"Filters\":{\"shape\":\"Sd2\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutionTaskInvocationIdentities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowExecutionId\":{},\"TaskExecutionId\":{},\"InvocationId\":{},\"ExecutionId\":{},\"TaskType\":{},\"Parameters\":{\"shape\":\"Sde\"},\"Status\":{},\"StatusDetails\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"WindowTargetId\":{}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowExecutionTasks\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowExecutionId\"],\"members\":{\"WindowExecutionId\":{},\"Filters\":{\"shape\":\"Sd2\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutionTaskIdentities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowExecutionId\":{},\"TaskExecutionId\":{},\"Status\":{},\"StatusDetails\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"TaskArn\":{},\"TaskType\":{}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\"],\"members\":{\"WindowId\":{},\"Filters\":{\"shape\":\"Sd2\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowExecutionId\":{},\"Status\":{},\"StatusDetails\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowSchedule\":{\"input\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"Targets\":{\"shape\":\"Sx\"},\"ResourceType\":{},\"Filters\":{\"shape\":\"S9g\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ScheduledWindowExecutions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"Name\":{},\"ExecutionTime\":{}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowTargets\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\"],\"members\":{\"WindowId\":{},\"Filters\":{\"shape\":\"Sd2\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Targets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTargetId\":{},\"ResourceType\":{},\"Targets\":{\"shape\":\"Sx\"},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowTasks\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\"],\"members\":{\"WindowId\":{},\"Filters\":{\"shape\":\"Sd2\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tasks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTaskId\":{},\"TaskArn\":{},\"Type\":{},\"Targets\":{\"shape\":\"Sx\"},\"TaskParameters\":{\"shape\":\"Se5\"},\"Priority\":{\"type\":\"integer\"},\"LoggingInfo\":{\"shape\":\"Seb\"},\"ServiceRoleArn\":{},\"MaxConcurrency\":{},\"MaxErrors\":{},\"Name\":{},\"Description\":{\"shape\":\"S3f\"}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindows\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Sd2\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowIdentities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"Enabled\":{\"type\":\"boolean\"},\"Duration\":{\"type\":\"integer\"},\"Cutoff\":{\"type\":\"integer\"},\"Schedule\":{},\"ScheduleTimezone\":{},\"ScheduleOffset\":{\"type\":\"integer\"},\"EndDate\":{},\"StartDate\":{},\"NextExecutionTime\":{}}}},\"NextToken\":{}}}},\"DescribeMaintenanceWindowsForTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"Targets\",\"ResourceType\"],\"members\":{\"Targets\":{\"shape\":\"Sx\"},\"ResourceType\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowIdentities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"Name\":{}}}},\"NextToken\":{}}}},\"DescribeOpsItems\":{\"input\":{\"type\":\"structure\",\"members\":{\"OpsItemFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\",\"Operator\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Operator\":{}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"OpsItemSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreatedBy\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastModifiedBy\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Priority\":{\"type\":\"integer\"},\"Source\":{},\"Status\":{},\"OpsItemId\":{},\"Title\":{},\"OperationalData\":{\"shape\":\"S3t\"},\"Category\":{},\"Severity\":{},\"OpsItemType\":{},\"ActualStartTime\":{\"type\":\"timestamp\"},\"ActualEndTime\":{\"type\":\"timestamp\"},\"PlannedStartTime\":{\"type\":\"timestamp\"},\"PlannedEndTime\":{\"type\":\"timestamp\"}}}}}}},\"DescribeParameters\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"ParameterFilters\":{\"shape\":\"Sf5\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"KeyId\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedUser\":{},\"Description\":{},\"AllowedPattern\":{},\"Version\":{\"type\":\"long\"},\"Tier\":{},\"Policies\":{\"shape\":\"Sfk\"},\"DataType\":{}}}},\"NextToken\":{}}}},\"DescribePatchBaselines\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"S9g\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineIdentities\":{\"type\":\"list\",\"member\":{\"shape\":\"Sfq\"}},\"NextToken\":{}}}},\"DescribePatchGroupState\":{\"input\":{\"type\":\"structure\",\"required\":[\"PatchGroup\"],\"members\":{\"PatchGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"integer\"},\"InstancesWithInstalledPatches\":{\"type\":\"integer\"},\"InstancesWithInstalledOtherPatches\":{\"type\":\"integer\"},\"InstancesWithInstalledPendingRebootPatches\":{\"type\":\"integer\"},\"InstancesWithInstalledRejectedPatches\":{\"type\":\"integer\"},\"InstancesWithMissingPatches\":{\"type\":\"integer\"},\"InstancesWithFailedPatches\":{\"type\":\"integer\"},\"InstancesWithNotApplicablePatches\":{\"type\":\"integer\"},\"InstancesWithUnreportedNotApplicablePatches\":{\"type\":\"integer\"},\"InstancesWithCriticalNonCompliantPatches\":{\"type\":\"integer\"},\"InstancesWithSecurityNonCompliantPatches\":{\"type\":\"integer\"},\"InstancesWithOtherNonCompliantPatches\":{\"type\":\"integer\"}}}},\"DescribePatchGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"Filters\":{\"shape\":\"S9g\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Mappings\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PatchGroup\":{},\"BaselineIdentity\":{\"shape\":\"Sfq\"}}}},\"NextToken\":{}}}},\"DescribePatchProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"OperatingSystem\",\"Property\"],\"members\":{\"OperatingSystem\":{},\"Property\":{},\"PatchSet\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Properties\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}},\"NextToken\":{}}}},\"DescribeSessions\":{\"input\":{\"type\":\"structure\",\"required\":[\"State\"],\"members\":{\"State\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Sessions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SessionId\":{},\"Target\":{},\"Status\":{},\"StartDate\":{\"type\":\"timestamp\"},\"EndDate\":{\"type\":\"timestamp\"},\"DocumentName\":{},\"Owner\":{},\"Details\":{},\"OutputUrl\":{\"type\":\"structure\",\"members\":{\"S3OutputUrl\":{},\"CloudWatchOutputUrl\":{}}}}}},\"NextToken\":{}}}},\"GetAutomationExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutomationExecutionId\"],\"members\":{\"AutomationExecutionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutomationExecution\":{\"type\":\"structure\",\"members\":{\"AutomationExecutionId\":{},\"DocumentName\":{},\"DocumentVersion\":{},\"ExecutionStartTime\":{\"type\":\"timestamp\"},\"ExecutionEndTime\":{\"type\":\"timestamp\"},\"AutomationExecutionStatus\":{},\"StepExecutions\":{\"shape\":\"S96\"},\"StepExecutionsTruncated\":{\"type\":\"boolean\"},\"Parameters\":{\"shape\":\"S8i\"},\"Outputs\":{\"shape\":\"S8i\"},\"FailureMessage\":{},\"Mode\":{},\"ParentAutomationExecutionId\":{},\"ExecutedBy\":{},\"CurrentStepName\":{},\"CurrentAction\":{},\"TargetParameterName\":{},\"Targets\":{\"shape\":\"Sx\"},\"TargetMaps\":{\"shape\":\"S8n\"},\"ResolvedTargets\":{\"shape\":\"S8s\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"Target\":{},\"TargetLocations\":{\"shape\":\"S1f\"},\"ProgressCounters\":{\"type\":\"structure\",\"members\":{\"TotalSteps\":{\"type\":\"integer\"},\"SuccessSteps\":{\"type\":\"integer\"},\"FailedSteps\":{\"type\":\"integer\"},\"CancelledSteps\":{\"type\":\"integer\"},\"TimedOutSteps\":{\"type\":\"integer\"}}},\"AutomationSubtype\":{},\"ScheduledTime\":{\"type\":\"timestamp\"},\"Runbooks\":{\"shape\":\"S8w\"},\"OpsItemId\":{},\"AssociationId\":{},\"ChangeRequestName\":{}}}}}},\"GetCalendarState\":{\"input\":{\"type\":\"structure\",\"required\":[\"CalendarNames\"],\"members\":{\"CalendarNames\":{\"type\":\"list\",\"member\":{}},\"AtTime\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"State\":{},\"AtTime\":{},\"NextTransitionTime\":{}}}},\"GetCommandInvocation\":{\"input\":{\"type\":\"structure\",\"required\":[\"CommandId\",\"InstanceId\"],\"members\":{\"CommandId\":{},\"InstanceId\":{},\"PluginName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CommandId\":{},\"InstanceId\":{},\"Comment\":{},\"DocumentName\":{},\"DocumentVersion\":{},\"PluginName\":{},\"ResponseCode\":{\"type\":\"integer\"},\"ExecutionStartDateTime\":{},\"ExecutionElapsedTime\":{},\"ExecutionEndDateTime\":{},\"Status\":{},\"StatusDetails\":{},\"StandardOutputContent\":{},\"StandardOutputUrl\":{},\"StandardErrorContent\":{},\"StandardErrorUrl\":{},\"CloudWatchOutputConfig\":{\"shape\":\"Sh9\"}}}},\"GetConnectionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Target\"],\"members\":{\"Target\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Target\":{},\"Status\":{}}}},\"GetDefaultPatchBaseline\":{\"input\":{\"type\":\"structure\",\"members\":{\"OperatingSystem\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"OperatingSystem\":{}}}},\"GetDeployablePatchSnapshotForInstance\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"SnapshotId\"],\"members\":{\"InstanceId\":{},\"SnapshotId\":{},\"BaselineOverride\":{\"type\":\"structure\",\"members\":{\"OperatingSystem\":{},\"GlobalFilters\":{\"shape\":\"S4k\"},\"ApprovalRules\":{\"shape\":\"S4q\"},\"ApprovedPatches\":{\"shape\":\"S4x\"},\"ApprovedPatchesComplianceLevel\":{},\"RejectedPatches\":{\"shape\":\"S4x\"},\"RejectedPatchesAction\":{},\"ApprovedPatchesEnableNonSecurity\":{\"type\":\"boolean\"},\"Sources\":{\"shape\":\"S51\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"InstanceId\":{},\"SnapshotId\":{},\"SnapshotDownloadUrl\":{},\"Product\":{}}}},\"GetDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"VersionName\":{},\"DocumentVersion\":{},\"DocumentFormat\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"VersionName\":{},\"DocumentVersion\":{},\"Status\":{},\"StatusInformation\":{},\"Content\":{},\"DocumentType\":{},\"DocumentFormat\":{},\"Requires\":{\"shape\":\"S2a\"},\"AttachmentsContent\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Size\":{\"type\":\"long\"},\"Hash\":{},\"HashType\":{},\"Url\":{}}}},\"ReviewStatus\":{}}}},\"GetInventory\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Shv\"},\"Aggregators\":{\"shape\":\"Si1\"},\"ResultAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TypeName\"],\"members\":{\"TypeName\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Data\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"TypeName\",\"SchemaVersion\",\"Content\"],\"members\":{\"TypeName\":{},\"SchemaVersion\":{},\"CaptureTime\":{},\"ContentHash\":{},\"Content\":{\"shape\":\"Sii\"}}}}}}},\"NextToken\":{}}}},\"GetInventorySchema\":{\"input\":{\"type\":\"structure\",\"members\":{\"TypeName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"Aggregator\":{\"type\":\"boolean\"},\"SubType\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Schemas\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TypeName\",\"Attributes\"],\"members\":{\"TypeName\":{},\"Version\":{},\"Attributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"DataType\"],\"members\":{\"Name\":{},\"DataType\":{}}}},\"DisplayName\":{}}}},\"NextToken\":{}}}},\"GetMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\"],\"members\":{\"WindowId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"StartDate\":{},\"EndDate\":{},\"Schedule\":{},\"ScheduleTimezone\":{},\"ScheduleOffset\":{\"type\":\"integer\"},\"NextExecutionTime\":{},\"Duration\":{\"type\":\"integer\"},\"Cutoff\":{\"type\":\"integer\"},\"AllowUnassociatedTargets\":{\"type\":\"boolean\"},\"Enabled\":{\"type\":\"boolean\"},\"CreatedDate\":{\"type\":\"timestamp\"},\"ModifiedDate\":{\"type\":\"timestamp\"}}}},\"GetMaintenanceWindowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowExecutionId\"],\"members\":{\"WindowExecutionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutionId\":{},\"TaskIds\":{\"type\":\"list\",\"member\":{}},\"Status\":{},\"StatusDetails\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}}},\"GetMaintenanceWindowExecutionTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowExecutionId\",\"TaskId\"],\"members\":{\"WindowExecutionId\":{},\"TaskId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutionId\":{},\"TaskExecutionId\":{},\"TaskArn\":{},\"ServiceRole\":{},\"Type\":{},\"TaskParameters\":{\"type\":\"list\",\"member\":{\"shape\":\"Se5\"},\"sensitive\":true},\"Priority\":{\"type\":\"integer\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"Status\":{},\"StatusDetails\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}}},\"GetMaintenanceWindowExecutionTaskInvocation\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowExecutionId\",\"TaskId\",\"InvocationId\"],\"members\":{\"WindowExecutionId\":{},\"TaskId\":{},\"InvocationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowExecutionId\":{},\"TaskExecutionId\":{},\"InvocationId\":{},\"ExecutionId\":{},\"TaskType\":{},\"Parameters\":{\"shape\":\"Sde\"},\"Status\":{},\"StatusDetails\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"WindowTargetId\":{}}}},\"GetMaintenanceWindowTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"WindowTaskId\"],\"members\":{\"WindowId\":{},\"WindowTaskId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTaskId\":{},\"Targets\":{\"shape\":\"Sx\"},\"TaskArn\":{},\"ServiceRoleArn\":{},\"TaskType\":{},\"TaskParameters\":{\"shape\":\"Se5\"},\"TaskInvocationParameters\":{\"shape\":\"Sj9\"},\"Priority\":{\"type\":\"integer\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"LoggingInfo\":{\"shape\":\"Seb\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"}}}},\"GetOpsItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpsItemId\"],\"members\":{\"OpsItemId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OpsItem\":{\"type\":\"structure\",\"members\":{\"CreatedBy\":{},\"OpsItemType\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"Description\":{},\"LastModifiedBy\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"Notifications\":{\"shape\":\"S3y\"},\"Priority\":{\"type\":\"integer\"},\"RelatedOpsItems\":{\"shape\":\"S42\"},\"Status\":{},\"OpsItemId\":{},\"Version\":{},\"Title\":{},\"Source\":{},\"OperationalData\":{\"shape\":\"S3t\"},\"Category\":{},\"Severity\":{},\"ActualStartTime\":{\"type\":\"timestamp\"},\"ActualEndTime\":{\"type\":\"timestamp\"},\"PlannedStartTime\":{\"type\":\"timestamp\"},\"PlannedEndTime\":{\"type\":\"timestamp\"}}}}}},\"GetOpsMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpsMetadataArn\"],\"members\":{\"OpsMetadataArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"Metadata\":{\"shape\":\"S4b\"},\"NextToken\":{}}}},\"GetOpsSummary\":{\"input\":{\"type\":\"structure\",\"members\":{\"SyncName\":{},\"Filters\":{\"shape\":\"Sjw\"},\"Aggregators\":{\"shape\":\"Sk2\"},\"ResultAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TypeName\"],\"members\":{\"TypeName\":{}}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Entities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Data\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"CaptureTime\":{},\"Content\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}}}},\"NextToken\":{}}}},\"GetParameter\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"WithDecryption\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parameter\":{\"shape\":\"Sko\"}}}},\"GetParameterHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"WithDecryption\":{\"type\":\"boolean\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"KeyId\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedUser\":{},\"Description\":{},\"Value\":{},\"AllowedPattern\":{},\"Version\":{\"type\":\"long\"},\"Labels\":{\"shape\":\"Skv\"},\"Tier\":{},\"Policies\":{\"shape\":\"Sfk\"},\"DataType\":{}}}},\"NextToken\":{}}}},\"GetParameters\":{\"input\":{\"type\":\"structure\",\"required\":[\"Names\"],\"members\":{\"Names\":{\"shape\":\"S6n\"},\"WithDecryption\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"Skz\"},\"InvalidParameters\":{\"shape\":\"S6n\"}}}},\"GetParametersByPath\":{\"input\":{\"type\":\"structure\",\"required\":[\"Path\"],\"members\":{\"Path\":{},\"Recursive\":{\"type\":\"boolean\"},\"ParameterFilters\":{\"shape\":\"Sf5\"},\"WithDecryption\":{\"type\":\"boolean\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Parameters\":{\"shape\":\"Skz\"},\"NextToken\":{}}}},\"GetPatchBaseline\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\"],\"members\":{\"BaselineId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"Name\":{},\"OperatingSystem\":{},\"GlobalFilters\":{\"shape\":\"S4k\"},\"ApprovalRules\":{\"shape\":\"S4q\"},\"ApprovedPatches\":{\"shape\":\"S4x\"},\"ApprovedPatchesComplianceLevel\":{},\"ApprovedPatchesEnableNonSecurity\":{\"type\":\"boolean\"},\"RejectedPatches\":{\"shape\":\"S4x\"},\"RejectedPatchesAction\":{},\"PatchGroups\":{\"type\":\"list\",\"member\":{}},\"CreatedDate\":{\"type\":\"timestamp\"},\"ModifiedDate\":{\"type\":\"timestamp\"},\"Description\":{},\"Sources\":{\"shape\":\"S51\"}}}},\"GetPatchBaselineForPatchGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"PatchGroup\"],\"members\":{\"PatchGroup\":{},\"OperatingSystem\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"PatchGroup\":{},\"OperatingSystem\":{}}}},\"GetServiceSetting\":{\"input\":{\"type\":\"structure\",\"required\":[\"SettingId\"],\"members\":{\"SettingId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceSetting\":{\"shape\":\"Slb\"}}}},\"LabelParameterVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Labels\"],\"members\":{\"Name\":{},\"ParameterVersion\":{\"type\":\"long\"},\"Labels\":{\"shape\":\"Skv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"InvalidLabels\":{\"shape\":\"Skv\"},\"ParameterVersion\":{\"type\":\"long\"}}}},\"ListAssociationVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationId\":{},\"AssociationVersion\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"Name\":{},\"DocumentVersion\":{},\"Parameters\":{\"shape\":\"St\"},\"Targets\":{\"shape\":\"Sx\"},\"ScheduleExpression\":{},\"OutputLocation\":{\"shape\":\"S13\"},\"AssociationName\":{},\"MaxErrors\":{},\"MaxConcurrency\":{},\"ComplianceSeverity\":{},\"SyncCompliance\":{},\"ApplyOnlyAtCronInterval\":{\"type\":\"boolean\"},\"TargetLocations\":{\"shape\":\"S1f\"}}}},\"NextToken\":{}}}},\"ListAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"AssociationFilterList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Associations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"InstanceId\":{},\"AssociationId\":{},\"AssociationVersion\":{},\"DocumentVersion\":{},\"Targets\":{\"shape\":\"Sx\"},\"LastExecutionDate\":{\"type\":\"timestamp\"},\"Overview\":{\"shape\":\"S1u\"},\"ScheduleExpression\":{},\"AssociationName\":{}}}},\"NextToken\":{}}}},\"ListCommandInvocations\":{\"input\":{\"type\":\"structure\",\"members\":{\"CommandId\":{},\"InstanceId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Slt\"},\"Details\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CommandInvocations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CommandId\":{},\"InstanceId\":{},\"InstanceName\":{},\"Comment\":{},\"DocumentName\":{},\"DocumentVersion\":{},\"RequestedDateTime\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusDetails\":{},\"TraceOutput\":{},\"StandardOutputUrl\":{},\"StandardErrorUrl\":{},\"CommandPlugins\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Status\":{},\"StatusDetails\":{},\"ResponseCode\":{\"type\":\"integer\"},\"ResponseStartDateTime\":{\"type\":\"timestamp\"},\"ResponseFinishDateTime\":{\"type\":\"timestamp\"},\"Output\":{},\"StandardOutputUrl\":{},\"StandardErrorUrl\":{},\"OutputS3Region\":{},\"OutputS3BucketName\":{},\"OutputS3KeyPrefix\":{}}}},\"ServiceRole\":{},\"NotificationConfig\":{\"shape\":\"Sjb\"},\"CloudWatchOutputConfig\":{\"shape\":\"Sh9\"}}}},\"NextToken\":{}}}},\"ListCommands\":{\"input\":{\"type\":\"structure\",\"members\":{\"CommandId\":{},\"InstanceId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filters\":{\"shape\":\"Slt\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Commands\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm9\"}},\"NextToken\":{}}}},\"ListComplianceItems\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Smg\"},\"ResourceIds\":{\"type\":\"list\",\"member\":{}},\"ResourceTypes\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComplianceItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ComplianceType\":{},\"ResourceType\":{},\"ResourceId\":{},\"Id\":{},\"Title\":{},\"Status\":{},\"Severity\":{},\"ExecutionSummary\":{\"shape\":\"Smy\"},\"Details\":{\"shape\":\"Sn1\"}}}},\"NextToken\":{}}}},\"ListComplianceSummaries\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Smg\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ComplianceSummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ComplianceType\":{},\"CompliantSummary\":{\"shape\":\"Sn6\"},\"NonCompliantSummary\":{\"shape\":\"Sn9\"}}}},\"NextToken\":{}}}},\"ListDocumentMetadataHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Metadata\"],\"members\":{\"Name\":{},\"DocumentVersion\":{},\"Metadata\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DocumentVersion\":{},\"Author\":{},\"Metadata\":{\"type\":\"structure\",\"members\":{\"ReviewerResponse\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CreateTime\":{\"type\":\"timestamp\"},\"UpdatedTime\":{\"type\":\"timestamp\"},\"ReviewStatus\":{},\"Comment\":{\"shape\":\"Sng\"},\"Reviewer\":{}}}}}},\"NextToken\":{}}}},\"ListDocumentVersions\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DocumentVersion\":{},\"VersionName\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"IsDefaultVersion\":{\"type\":\"boolean\"},\"DocumentFormat\":{},\"Status\":{},\"StatusInformation\":{},\"ReviewStatus\":{}}}},\"NextToken\":{}}}},\"ListDocuments\":{\"input\":{\"type\":\"structure\",\"members\":{\"DocumentFilterList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentIdentifiers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Owner\":{},\"VersionName\":{},\"PlatformTypes\":{\"shape\":\"S32\"},\"DocumentVersion\":{},\"DocumentType\":{},\"SchemaVersion\":{},\"DocumentFormat\":{},\"TargetType\":{},\"Tags\":{\"shape\":\"S4\"},\"Requires\":{\"shape\":\"S2a\"},\"ReviewStatus\":{},\"Author\":{}}}},\"NextToken\":{}}}},\"ListInventoryEntries\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"TypeName\"],\"members\":{\"InstanceId\":{},\"TypeName\":{},\"Filters\":{\"shape\":\"Shv\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TypeName\":{},\"InstanceId\":{},\"SchemaVersion\":{},\"CaptureTime\":{},\"Entries\":{\"shape\":\"Sii\"},\"NextToken\":{}}}},\"ListOpsItemEvents\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\",\"Operator\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Operator\":{}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OpsItemId\":{},\"EventId\":{},\"Source\":{},\"DetailType\":{},\"Detail\":{},\"CreatedBy\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}},\"CreatedTime\":{\"type\":\"timestamp\"}}}}}}},\"ListOpsMetadata\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OpsMetadataList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"OpsMetadataArn\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedUser\":{},\"CreationDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListResourceComplianceSummaries\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filters\":{\"shape\":\"Smg\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceComplianceSummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ComplianceType\":{},\"ResourceType\":{},\"ResourceId\":{},\"Status\":{},\"OverallSeverity\":{},\"ExecutionSummary\":{\"shape\":\"Smy\"},\"CompliantSummary\":{\"shape\":\"Sn6\"},\"NonCompliantSummary\":{\"shape\":\"Sn9\"}}}},\"NextToken\":{}}}},\"ListResourceDataSync\":{\"input\":{\"type\":\"structure\",\"members\":{\"SyncType\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceDataSyncItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SyncName\":{},\"SyncType\":{},\"SyncSource\":{\"type\":\"structure\",\"members\":{\"SourceType\":{},\"AwsOrganizationsSource\":{\"shape\":\"S5m\"},\"SourceRegions\":{\"shape\":\"S5r\"},\"IncludeFutureRegions\":{\"type\":\"boolean\"},\"State\":{},\"EnableAllOpsDataSources\":{\"type\":\"boolean\"}}},\"S3Destination\":{\"shape\":\"S5b\"},\"LastSyncTime\":{\"type\":\"timestamp\"},\"LastSuccessfulSyncTime\":{\"type\":\"timestamp\"},\"SyncLastModifiedTime\":{\"type\":\"timestamp\"},\"LastStatus\":{},\"SyncCreatedTime\":{\"type\":\"timestamp\"},\"LastSyncStatusMessage\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\"],\"members\":{\"ResourceType\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"S4\"}}}},\"ModifyDocumentPermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"PermissionType\"],\"members\":{\"Name\":{},\"PermissionType\":{},\"AccountIdsToAdd\":{\"shape\":\"Saj\"},\"AccountIdsToRemove\":{\"shape\":\"Saj\"},\"SharedDocumentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutComplianceItems\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"ResourceType\",\"ComplianceType\",\"ExecutionSummary\",\"Items\"],\"members\":{\"ResourceId\":{},\"ResourceType\":{},\"ComplianceType\":{},\"ExecutionSummary\":{\"shape\":\"Smy\"},\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Severity\",\"Status\"],\"members\":{\"Id\":{},\"Title\":{},\"Severity\":{},\"Status\":{},\"Details\":{\"shape\":\"Sn1\"}}}},\"ItemContentHash\":{},\"UploadType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutInventory\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"Items\"],\"members\":{\"InstanceId\":{},\"Items\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TypeName\",\"SchemaVersion\",\"CaptureTime\"],\"members\":{\"TypeName\":{},\"SchemaVersion\":{},\"CaptureTime\":{},\"ContentHash\":{},\"Content\":{\"shape\":\"Sii\"},\"Context\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"Message\":{}}}},\"PutParameter\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Description\":{},\"Value\":{},\"Type\":{},\"KeyId\":{},\"Overwrite\":{\"type\":\"boolean\"},\"AllowedPattern\":{},\"Tags\":{\"shape\":\"S4\"},\"Tier\":{},\"Policies\":{},\"DataType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Version\":{\"type\":\"long\"},\"Tier\":{}}}},\"RegisterDefaultPatchBaseline\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\"],\"members\":{\"BaselineId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{}}}},\"RegisterPatchBaselineForPatchGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\",\"PatchGroup\"],\"members\":{\"BaselineId\":{},\"PatchGroup\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"PatchGroup\":{}}}},\"RegisterTargetWithMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"ResourceType\",\"Targets\"],\"members\":{\"WindowId\":{},\"ResourceType\":{},\"Targets\":{\"shape\":\"Sx\"},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowTargetId\":{}}}},\"RegisterTaskWithMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"TaskArn\",\"TaskType\"],\"members\":{\"WindowId\":{},\"Targets\":{\"shape\":\"Sx\"},\"TaskArn\":{},\"ServiceRoleArn\":{},\"TaskType\":{},\"TaskParameters\":{\"shape\":\"Se5\"},\"TaskInvocationParameters\":{\"shape\":\"Sj9\"},\"Priority\":{\"type\":\"integer\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"LoggingInfo\":{\"shape\":\"Seb\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowTaskId\":{}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceType\",\"ResourceId\",\"TagKeys\"],\"members\":{\"ResourceType\":{},\"ResourceId\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ResetServiceSetting\":{\"input\":{\"type\":\"structure\",\"required\":[\"SettingId\"],\"members\":{\"SettingId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ServiceSetting\":{\"shape\":\"Slb\"}}}},\"ResumeSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"SessionId\"],\"members\":{\"SessionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SessionId\":{},\"TokenValue\":{},\"StreamUrl\":{}}}},\"SendAutomationSignal\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutomationExecutionId\",\"SignalType\"],\"members\":{\"AutomationExecutionId\":{},\"SignalType\":{},\"Payload\":{\"shape\":\"S8i\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendCommand\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentName\"],\"members\":{\"InstanceIds\":{\"shape\":\"Sb\"},\"Targets\":{\"shape\":\"Sx\"},\"DocumentName\":{},\"DocumentVersion\":{},\"DocumentHash\":{},\"DocumentHashType\":{},\"TimeoutSeconds\":{\"type\":\"integer\"},\"Comment\":{},\"Parameters\":{\"shape\":\"St\"},\"OutputS3Region\":{},\"OutputS3BucketName\":{},\"OutputS3KeyPrefix\":{},\"MaxConcurrency\":{},\"MaxErrors\":{},\"ServiceRoleArn\":{},\"NotificationConfig\":{\"shape\":\"Sjb\"},\"CloudWatchOutputConfig\":{\"shape\":\"Sh9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Command\":{\"shape\":\"Sm9\"}}}},\"StartAssociationsOnce\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationIds\"],\"members\":{\"AssociationIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartAutomationExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentName\"],\"members\":{\"DocumentName\":{},\"DocumentVersion\":{},\"Parameters\":{\"shape\":\"S8i\"},\"ClientToken\":{},\"Mode\":{},\"TargetParameterName\":{},\"Targets\":{\"shape\":\"Sx\"},\"TargetMaps\":{\"shape\":\"S8n\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"TargetLocations\":{\"shape\":\"S1f\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutomationExecutionId\":{}}}},\"StartChangeRequestExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentName\",\"Runbooks\"],\"members\":{\"ScheduledTime\":{\"type\":\"timestamp\"},\"DocumentName\":{},\"DocumentVersion\":{},\"Parameters\":{\"shape\":\"S8i\"},\"ChangeRequestName\":{},\"ClientToken\":{},\"Runbooks\":{\"shape\":\"S8w\"},\"Tags\":{\"shape\":\"S4\"},\"ScheduledEndTime\":{\"type\":\"timestamp\"},\"ChangeDetails\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutomationExecutionId\":{}}}},\"StartSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"Target\"],\"members\":{\"Target\":{},\"DocumentName\":{},\"Parameters\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SessionId\":{},\"TokenValue\":{},\"StreamUrl\":{}}}},\"StopAutomationExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutomationExecutionId\"],\"members\":{\"AutomationExecutionId\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TerminateSession\":{\"input\":{\"type\":\"structure\",\"required\":[\"SessionId\"],\"members\":{\"SessionId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SessionId\":{}}}},\"UnlabelParameterVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ParameterVersion\",\"Labels\"],\"members\":{\"Name\":{},\"ParameterVersion\":{\"type\":\"long\"},\"Labels\":{\"shape\":\"Skv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RemovedLabels\":{\"shape\":\"Skv\"},\"InvalidLabels\":{\"shape\":\"Skv\"}}}},\"UpdateAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"AssociationId\"],\"members\":{\"AssociationId\":{},\"Parameters\":{\"shape\":\"St\"},\"DocumentVersion\":{},\"ScheduleExpression\":{},\"OutputLocation\":{\"shape\":\"S13\"},\"Name\":{},\"Targets\":{\"shape\":\"Sx\"},\"AssociationName\":{},\"AssociationVersion\":{},\"AutomationTargetParameterName\":{},\"MaxErrors\":{},\"MaxConcurrency\":{},\"ComplianceSeverity\":{},\"SyncCompliance\":{},\"ApplyOnlyAtCronInterval\":{\"type\":\"boolean\"},\"TargetLocations\":{\"shape\":\"S1f\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationDescription\":{\"shape\":\"S1n\"}}}},\"UpdateAssociationStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InstanceId\",\"AssociationStatus\"],\"members\":{\"Name\":{},\"InstanceId\":{},\"AssociationStatus\":{\"shape\":\"S1q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AssociationDescription\":{\"shape\":\"S1n\"}}}},\"UpdateDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Content\",\"Name\"],\"members\":{\"Content\":{},\"Attachments\":{\"shape\":\"S2c\"},\"Name\":{},\"VersionName\":{},\"DocumentVersion\":{},\"DocumentFormat\":{},\"TargetType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentDescription\":{\"shape\":\"S2o\"}}}},\"UpdateDocumentDefaultVersion\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"DocumentVersion\"],\"members\":{\"Name\":{},\"DocumentVersion\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Description\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"DefaultVersion\":{},\"DefaultVersionName\":{}}}}}},\"UpdateDocumentMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"DocumentReviews\"],\"members\":{\"Name\":{},\"DocumentVersion\":{},\"DocumentReviews\":{\"type\":\"structure\",\"required\":[\"Action\"],\"members\":{\"Action\":{},\"Comment\":{\"shape\":\"Sng\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateMaintenanceWindow\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\"],\"members\":{\"WindowId\":{},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"StartDate\":{},\"EndDate\":{},\"Schedule\":{},\"ScheduleTimezone\":{},\"ScheduleOffset\":{\"type\":\"integer\"},\"Duration\":{\"type\":\"integer\"},\"Cutoff\":{\"type\":\"integer\"},\"AllowUnassociatedTargets\":{\"type\":\"boolean\"},\"Enabled\":{\"type\":\"boolean\"},\"Replace\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"StartDate\":{},\"EndDate\":{},\"Schedule\":{},\"ScheduleTimezone\":{},\"ScheduleOffset\":{\"type\":\"integer\"},\"Duration\":{\"type\":\"integer\"},\"Cutoff\":{\"type\":\"integer\"},\"AllowUnassociatedTargets\":{\"type\":\"boolean\"},\"Enabled\":{\"type\":\"boolean\"}}}},\"UpdateMaintenanceWindowTarget\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"WindowTargetId\"],\"members\":{\"WindowId\":{},\"WindowTargetId\":{},\"Targets\":{\"shape\":\"Sx\"},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"Replace\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTargetId\":{},\"Targets\":{\"shape\":\"Sx\"},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"}}}},\"UpdateMaintenanceWindowTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"WindowId\",\"WindowTaskId\"],\"members\":{\"WindowId\":{},\"WindowTaskId\":{},\"Targets\":{\"shape\":\"Sx\"},\"TaskArn\":{},\"ServiceRoleArn\":{},\"TaskParameters\":{\"shape\":\"Se5\"},\"TaskInvocationParameters\":{\"shape\":\"Sj9\"},\"Priority\":{\"type\":\"integer\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"LoggingInfo\":{\"shape\":\"Seb\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"},\"Replace\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WindowId\":{},\"WindowTaskId\":{},\"Targets\":{\"shape\":\"Sx\"},\"TaskArn\":{},\"ServiceRoleArn\":{},\"TaskParameters\":{\"shape\":\"Se5\"},\"TaskInvocationParameters\":{\"shape\":\"Sj9\"},\"Priority\":{\"type\":\"integer\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"LoggingInfo\":{\"shape\":\"Seb\"},\"Name\":{},\"Description\":{\"shape\":\"S3f\"}}}},\"UpdateManagedInstanceRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"IamRole\"],\"members\":{\"InstanceId\":{},\"IamRole\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateOpsItem\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpsItemId\"],\"members\":{\"Description\":{},\"OperationalData\":{\"shape\":\"S3t\"},\"OperationalDataToDelete\":{\"type\":\"list\",\"member\":{}},\"Notifications\":{\"shape\":\"S3y\"},\"Priority\":{\"type\":\"integer\"},\"RelatedOpsItems\":{\"shape\":\"S42\"},\"Status\":{},\"OpsItemId\":{},\"Title\":{},\"Category\":{},\"Severity\":{},\"ActualStartTime\":{\"type\":\"timestamp\"},\"ActualEndTime\":{\"type\":\"timestamp\"},\"PlannedStartTime\":{\"type\":\"timestamp\"},\"PlannedEndTime\":{\"type\":\"timestamp\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateOpsMetadata\":{\"input\":{\"type\":\"structure\",\"required\":[\"OpsMetadataArn\"],\"members\":{\"OpsMetadataArn\":{},\"MetadataToUpdate\":{\"shape\":\"S4b\"},\"KeysToDelete\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"OpsMetadataArn\":{}}}},\"UpdatePatchBaseline\":{\"input\":{\"type\":\"structure\",\"required\":[\"BaselineId\"],\"members\":{\"BaselineId\":{},\"Name\":{},\"GlobalFilters\":{\"shape\":\"S4k\"},\"ApprovalRules\":{\"shape\":\"S4q\"},\"ApprovedPatches\":{\"shape\":\"S4x\"},\"ApprovedPatchesComplianceLevel\":{},\"ApprovedPatchesEnableNonSecurity\":{\"type\":\"boolean\"},\"RejectedPatches\":{\"shape\":\"S4x\"},\"RejectedPatchesAction\":{},\"Description\":{},\"Sources\":{\"shape\":\"S51\"},\"Replace\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"Name\":{},\"OperatingSystem\":{},\"GlobalFilters\":{\"shape\":\"S4k\"},\"ApprovalRules\":{\"shape\":\"S4q\"},\"ApprovedPatches\":{\"shape\":\"S4x\"},\"ApprovedPatchesComplianceLevel\":{},\"ApprovedPatchesEnableNonSecurity\":{\"type\":\"boolean\"},\"RejectedPatches\":{\"shape\":\"S4x\"},\"RejectedPatchesAction\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"ModifiedDate\":{\"type\":\"timestamp\"},\"Description\":{},\"Sources\":{\"shape\":\"S51\"}}}},\"UpdateResourceDataSync\":{\"input\":{\"type\":\"structure\",\"required\":[\"SyncName\",\"SyncType\",\"SyncSource\"],\"members\":{\"SyncName\":{},\"SyncType\":{},\"SyncSource\":{\"shape\":\"S5k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateServiceSetting\":{\"input\":{\"type\":\"structure\",\"required\":[\"SettingId\",\"SettingValue\"],\"members\":{\"SettingId\":{},\"SettingValue\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sb\":{\"type\":\"list\",\"member\":{}},\"St\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"Sx\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"S13\":{\"type\":\"structure\",\"members\":{\"S3Location\":{\"type\":\"structure\",\"members\":{\"OutputS3Region\":{},\"OutputS3BucketName\":{},\"OutputS3KeyPrefix\":{}}}}},\"S1f\":{\"type\":\"list\",\"member\":{\"shape\":\"S1g\"}},\"S1g\":{\"type\":\"structure\",\"members\":{\"Accounts\":{\"type\":\"list\",\"member\":{}},\"Regions\":{\"type\":\"list\",\"member\":{}},\"TargetLocationMaxConcurrency\":{},\"TargetLocationMaxErrors\":{},\"ExecutionRoleName\":{}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"InstanceId\":{},\"AssociationVersion\":{},\"Date\":{\"type\":\"timestamp\"},\"LastUpdateAssociationDate\":{\"type\":\"timestamp\"},\"Status\":{\"shape\":\"S1q\"},\"Overview\":{\"shape\":\"S1u\"},\"DocumentVersion\":{},\"AutomationTargetParameterName\":{},\"Parameters\":{\"shape\":\"St\"},\"AssociationId\":{},\"Targets\":{\"shape\":\"Sx\"},\"ScheduleExpression\":{},\"OutputLocation\":{\"shape\":\"S13\"},\"LastExecutionDate\":{\"type\":\"timestamp\"},\"LastSuccessfulExecutionDate\":{\"type\":\"timestamp\"},\"AssociationName\":{},\"MaxErrors\":{},\"MaxConcurrency\":{},\"ComplianceSeverity\":{},\"SyncCompliance\":{},\"ApplyOnlyAtCronInterval\":{\"type\":\"boolean\"},\"TargetLocations\":{\"shape\":\"S1f\"}}},\"S1q\":{\"type\":\"structure\",\"required\":[\"Date\",\"Name\",\"Message\"],\"members\":{\"Date\":{\"type\":\"timestamp\"},\"Name\":{},\"Message\":{},\"AdditionalInfo\":{}}},\"S1u\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"DetailedStatus\":{},\"AssociationStatusAggregatedCount\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}}}},\"S21\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"InstanceId\":{},\"Parameters\":{\"shape\":\"St\"},\"AutomationTargetParameterName\":{},\"DocumentVersion\":{},\"Targets\":{\"shape\":\"Sx\"},\"ScheduleExpression\":{},\"OutputLocation\":{\"shape\":\"S13\"},\"AssociationName\":{},\"MaxErrors\":{},\"MaxConcurrency\":{},\"ComplianceSeverity\":{},\"SyncCompliance\":{},\"ApplyOnlyAtCronInterval\":{\"type\":\"boolean\"},\"TargetLocations\":{\"shape\":\"S1f\"}}},\"S2a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Version\":{}}}},\"S2c\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Name\":{}}}},\"S2o\":{\"type\":\"structure\",\"members\":{\"Sha1\":{},\"Hash\":{},\"HashType\":{},\"Name\":{},\"VersionName\":{},\"Owner\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusInformation\":{},\"DocumentVersion\":{},\"Description\":{},\"Parameters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"Description\":{},\"DefaultValue\":{}}}},\"PlatformTypes\":{\"shape\":\"S32\"},\"DocumentType\":{},\"SchemaVersion\":{},\"LatestVersion\":{},\"DefaultVersion\":{},\"DocumentFormat\":{},\"TargetType\":{},\"Tags\":{\"shape\":\"S4\"},\"AttachmentsInformation\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"Requires\":{\"shape\":\"S2a\"},\"Author\":{},\"ReviewInformation\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReviewedTime\":{\"type\":\"timestamp\"},\"Status\":{},\"Reviewer\":{}}}},\"ApprovedVersion\":{},\"PendingReviewVersion\":{},\"ReviewStatus\":{}}},\"S32\":{\"type\":\"list\",\"member\":{}},\"S3f\":{\"type\":\"string\",\"sensitive\":true},\"S3t\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Value\":{},\"Type\":{}}}},\"S3y\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Arn\":{}}}},\"S42\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"OpsItemId\"],\"members\":{\"OpsItemId\":{}}}},\"S4b\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Value\":{}}}},\"S4k\":{\"type\":\"structure\",\"required\":[\"PatchFilters\"],\"members\":{\"PatchFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}}}},\"S4q\":{\"type\":\"structure\",\"required\":[\"PatchRules\"],\"members\":{\"PatchRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"PatchFilterGroup\"],\"members\":{\"PatchFilterGroup\":{\"shape\":\"S4k\"},\"ComplianceLevel\":{},\"ApproveAfterDays\":{\"type\":\"integer\"},\"ApproveUntilDate\":{},\"EnableNonSecurity\":{\"type\":\"boolean\"}}}}}},\"S4x\":{\"type\":\"list\",\"member\":{}},\"S51\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Products\",\"Configuration\"],\"members\":{\"Name\":{},\"Products\":{\"type\":\"list\",\"member\":{}},\"Configuration\":{\"type\":\"string\",\"sensitive\":true}}}},\"S5b\":{\"type\":\"structure\",\"required\":[\"BucketName\",\"SyncFormat\",\"Region\"],\"members\":{\"BucketName\":{},\"Prefix\":{},\"SyncFormat\":{},\"Region\":{},\"AWSKMSKeyARN\":{},\"DestinationDataSharing\":{\"type\":\"structure\",\"members\":{\"DestinationDataSharingType\":{}}}}},\"S5k\":{\"type\":\"structure\",\"required\":[\"SourceType\",\"SourceRegions\"],\"members\":{\"SourceType\":{},\"AwsOrganizationsSource\":{\"shape\":\"S5m\"},\"SourceRegions\":{\"shape\":\"S5r\"},\"IncludeFutureRegions\":{\"type\":\"boolean\"},\"EnableAllOpsDataSources\":{\"type\":\"boolean\"}}},\"S5m\":{\"type\":\"structure\",\"required\":[\"OrganizationSourceType\"],\"members\":{\"OrganizationSourceType\":{},\"OrganizationalUnits\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OrganizationalUnitId\":{}}}}}},\"S5r\":{\"type\":\"list\",\"member\":{}},\"S68\":{\"type\":\"structure\",\"members\":{\"TotalCount\":{\"type\":\"integer\"},\"RemainingCount\":{\"type\":\"integer\"},\"SummaryItems\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Version\":{},\"Count\":{\"type\":\"integer\"},\"RemainingCount\":{\"type\":\"integer\"}}}}}},\"S6n\":{\"type\":\"list\",\"member\":{}},\"S8i\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}},\"S8n\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{}}}},\"S8s\":{\"type\":\"structure\",\"members\":{\"ParameterValues\":{\"type\":\"list\",\"member\":{}},\"Truncated\":{\"type\":\"boolean\"}}},\"S8w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DocumentName\"],\"members\":{\"DocumentName\":{},\"DocumentVersion\":{},\"Parameters\":{\"shape\":\"S8i\"},\"TargetParameterName\":{},\"Targets\":{\"shape\":\"Sx\"},\"MaxConcurrency\":{},\"MaxErrors\":{},\"TargetLocations\":{\"shape\":\"S1f\"}}}},\"S96\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StepName\":{},\"Action\":{},\"TimeoutSeconds\":{\"type\":\"long\"},\"OnFailure\":{},\"MaxAttempts\":{\"type\":\"integer\"},\"ExecutionStartTime\":{\"type\":\"timestamp\"},\"ExecutionEndTime\":{\"type\":\"timestamp\"},\"StepStatus\":{},\"ResponseCode\":{},\"Inputs\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Outputs\":{\"shape\":\"S8i\"},\"Response\":{},\"FailureMessage\":{},\"FailureDetails\":{\"type\":\"structure\",\"members\":{\"FailureStage\":{},\"FailureType\":{},\"Details\":{\"shape\":\"S8i\"}}},\"StepExecutionId\":{},\"OverriddenParameters\":{\"shape\":\"S8i\"},\"IsEnd\":{\"type\":\"boolean\"},\"NextStep\":{},\"IsCritical\":{\"type\":\"boolean\"},\"ValidNextSteps\":{\"type\":\"list\",\"member\":{}},\"Targets\":{\"shape\":\"Sx\"},\"TargetLocation\":{\"shape\":\"S1g\"}}}},\"S9g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"S9o\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ReleaseDate\":{\"type\":\"timestamp\"},\"Title\":{},\"Description\":{},\"ContentUrl\":{},\"Vendor\":{},\"ProductFamily\":{},\"Product\":{},\"Classification\":{},\"MsrcSeverity\":{},\"KbNumber\":{},\"MsrcNumber\":{},\"Language\":{},\"AdvisoryIds\":{\"type\":\"list\",\"member\":{}},\"BugzillaIds\":{\"type\":\"list\",\"member\":{}},\"CVEIds\":{\"type\":\"list\",\"member\":{}},\"Name\":{},\"Epoch\":{\"type\":\"integer\"},\"Version\":{},\"Release\":{},\"Arch\":{},\"Severity\":{},\"Repository\":{}}},\"Saj\":{\"type\":\"list\",\"member\":{}},\"Sbc\":{\"type\":\"list\",\"member\":{}},\"Sbw\":{\"type\":\"structure\",\"required\":[\"InstanceId\",\"PatchGroup\",\"BaselineId\",\"OperationStartTime\",\"OperationEndTime\",\"Operation\"],\"members\":{\"InstanceId\":{},\"PatchGroup\":{},\"BaselineId\":{},\"SnapshotId\":{},\"InstallOverrideList\":{},\"OwnerInformation\":{\"shape\":\"Sbz\"},\"InstalledCount\":{\"type\":\"integer\"},\"InstalledOtherCount\":{\"type\":\"integer\"},\"InstalledPendingRebootCount\":{\"type\":\"integer\"},\"InstalledRejectedCount\":{\"type\":\"integer\"},\"MissingCount\":{\"type\":\"integer\"},\"FailedCount\":{\"type\":\"integer\"},\"UnreportedNotApplicableCount\":{\"type\":\"integer\"},\"NotApplicableCount\":{\"type\":\"integer\"},\"OperationStartTime\":{\"type\":\"timestamp\"},\"OperationEndTime\":{\"type\":\"timestamp\"},\"Operation\":{},\"LastNoRebootInstallOperationTime\":{\"type\":\"timestamp\"},\"RebootOption\":{},\"CriticalNonCompliantCount\":{\"type\":\"integer\"},\"SecurityNonCompliantCount\":{\"type\":\"integer\"},\"OtherNonCompliantCount\":{\"type\":\"integer\"}}},\"Sbz\":{\"type\":\"string\",\"sensitive\":true},\"Sd2\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"Sde\":{\"type\":\"string\",\"sensitive\":true},\"Se5\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"members\":{\"Values\":{\"type\":\"list\",\"member\":{\"type\":\"string\",\"sensitive\":true},\"sensitive\":true}},\"sensitive\":true},\"sensitive\":true},\"Seb\":{\"type\":\"structure\",\"required\":[\"S3BucketName\",\"S3Region\"],\"members\":{\"S3BucketName\":{},\"S3KeyPrefix\":{},\"S3Region\":{}}},\"Sf5\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Option\":{},\"Values\":{\"type\":\"list\",\"member\":{}}}}},\"Sfk\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PolicyText\":{},\"PolicyType\":{},\"PolicyStatus\":{}}}},\"Sfq\":{\"type\":\"structure\",\"members\":{\"BaselineId\":{},\"BaselineName\":{},\"OperatingSystem\":{},\"BaselineDescription\":{},\"DefaultBaseline\":{\"type\":\"boolean\"}}},\"Sh9\":{\"type\":\"structure\",\"members\":{\"CloudWatchLogGroupName\":{},\"CloudWatchOutputEnabled\":{\"type\":\"boolean\"}}},\"Shv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Type\":{}}}},\"Si1\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Expression\":{},\"Aggregators\":{\"shape\":\"Si1\"},\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Filters\"],\"members\":{\"Name\":{},\"Filters\":{\"shape\":\"Shv\"}}}}}}},\"Sii\":{\"type\":\"list\",\"member\":{\"type\":\"map\",\"key\":{},\"value\":{}}},\"Sj9\":{\"type\":\"structure\",\"members\":{\"RunCommand\":{\"type\":\"structure\",\"members\":{\"Comment\":{},\"CloudWatchOutputConfig\":{\"shape\":\"Sh9\"},\"DocumentHash\":{},\"DocumentHashType\":{},\"DocumentVersion\":{},\"NotificationConfig\":{\"shape\":\"Sjb\"},\"OutputS3BucketName\":{},\"OutputS3KeyPrefix\":{},\"Parameters\":{\"shape\":\"St\"},\"ServiceRoleArn\":{},\"TimeoutSeconds\":{\"type\":\"integer\"}}},\"Automation\":{\"type\":\"structure\",\"members\":{\"DocumentVersion\":{},\"Parameters\":{\"shape\":\"S8i\"}}},\"StepFunctions\":{\"type\":\"structure\",\"members\":{\"Input\":{\"type\":\"string\",\"sensitive\":true},\"Name\":{}}},\"Lambda\":{\"type\":\"structure\",\"members\":{\"ClientContext\":{},\"Qualifier\":{},\"Payload\":{\"type\":\"blob\",\"sensitive\":true}}}}},\"Sjb\":{\"type\":\"structure\",\"members\":{\"NotificationArn\":{},\"NotificationEvents\":{\"type\":\"list\",\"member\":{}},\"NotificationType\":{}}},\"Sjw\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Values\"],\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Type\":{}}}},\"Sk2\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AggregatorType\":{},\"TypeName\":{},\"AttributeName\":{},\"Values\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Filters\":{\"shape\":\"Sjw\"},\"Aggregators\":{\"shape\":\"Sk2\"}}}},\"Sko\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Type\":{},\"Value\":{},\"Version\":{\"type\":\"long\"},\"Selector\":{},\"SourceResult\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"ARN\":{},\"DataType\":{}}},\"Skv\":{\"type\":\"list\",\"member\":{}},\"Skz\":{\"type\":\"list\",\"member\":{\"shape\":\"Sko\"}},\"Slb\":{\"type\":\"structure\",\"members\":{\"SettingId\":{},\"SettingValue\":{},\"LastModifiedDate\":{\"type\":\"timestamp\"},\"LastModifiedUser\":{},\"ARN\":{},\"Status\":{}}},\"Slt\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\",\"value\"],\"members\":{\"key\":{},\"value\":{}}}},\"Sm9\":{\"type\":\"structure\",\"members\":{\"CommandId\":{},\"DocumentName\":{},\"DocumentVersion\":{},\"Comment\":{},\"ExpiresAfter\":{\"type\":\"timestamp\"},\"Parameters\":{\"shape\":\"St\"},\"InstanceIds\":{\"shape\":\"Sb\"},\"Targets\":{\"shape\":\"Sx\"},\"RequestedDateTime\":{\"type\":\"timestamp\"},\"Status\":{},\"StatusDetails\":{},\"OutputS3Region\":{},\"OutputS3BucketName\":{},\"OutputS3KeyPrefix\":{},\"MaxConcurrency\":{},\"MaxErrors\":{},\"TargetCount\":{\"type\":\"integer\"},\"CompletedCount\":{\"type\":\"integer\"},\"ErrorCount\":{\"type\":\"integer\"},\"DeliveryTimedOutCount\":{\"type\":\"integer\"},\"ServiceRole\":{},\"NotificationConfig\":{\"shape\":\"Sjb\"},\"CloudWatchOutputConfig\":{\"shape\":\"Sh9\"},\"TimeoutSeconds\":{\"type\":\"integer\"}}},\"Smg\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Values\":{\"type\":\"list\",\"member\":{}},\"Type\":{}}}},\"Smy\":{\"type\":\"structure\",\"required\":[\"ExecutionTime\"],\"members\":{\"ExecutionTime\":{\"type\":\"timestamp\"},\"ExecutionId\":{},\"ExecutionType\":{}}},\"Sn1\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sn6\":{\"type\":\"structure\",\"members\":{\"CompliantCount\":{\"type\":\"integer\"},\"SeveritySummary\":{\"shape\":\"Sn8\"}}},\"Sn8\":{\"type\":\"structure\",\"members\":{\"CriticalCount\":{\"type\":\"integer\"},\"HighCount\":{\"type\":\"integer\"},\"MediumCount\":{\"type\":\"integer\"},\"LowCount\":{\"type\":\"integer\"},\"InformationalCount\":{\"type\":\"integer\"},\"UnspecifiedCount\":{\"type\":\"integer\"}}},\"Sn9\":{\"type\":\"structure\",\"members\":{\"NonCompliantCount\":{\"type\":\"integer\"},\"SeveritySummary\":{\"shape\":\"Sn8\"}}},\"Sng\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Content\":{}}}}}}");

/***/ }),

/***/ 84951:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeActivations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ActivationList\"},\"DescribeAssociationExecutionTargets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AssociationExecutionTargets\"},\"DescribeAssociationExecutions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AssociationExecutions\"},\"DescribeAutomationExecutions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AutomationExecutionMetadataList\"},\"DescribeAutomationStepExecutions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"StepExecutions\"},\"DescribeAvailablePatches\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Patches\"},\"DescribeEffectiveInstanceAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Associations\"},\"DescribeEffectivePatchesForPatchBaseline\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"EffectivePatches\"},\"DescribeInstanceAssociationsStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceAssociationStatusInfos\"},\"DescribeInstanceInformation\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstanceInformationList\"},\"DescribeInstancePatchStates\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstancePatchStates\"},\"DescribeInstancePatchStatesForPatchGroup\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InstancePatchStates\"},\"DescribeInstancePatches\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Patches\"},\"DescribeInventoryDeletions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"InventoryDeletions\"},\"DescribeMaintenanceWindowExecutionTaskInvocations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"WindowExecutionTaskInvocationIdentities\"},\"DescribeMaintenanceWindowExecutionTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"WindowExecutionTaskIdentities\"},\"DescribeMaintenanceWindowExecutions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"WindowExecutions\"},\"DescribeMaintenanceWindowSchedule\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ScheduledWindowExecutions\"},\"DescribeMaintenanceWindowTargets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Targets\"},\"DescribeMaintenanceWindowTasks\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Tasks\"},\"DescribeMaintenanceWindows\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"WindowIdentities\"},\"DescribeMaintenanceWindowsForTarget\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"WindowIdentities\"},\"DescribeOpsItems\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"OpsItemSummaries\"},\"DescribeParameters\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"DescribePatchBaselines\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"BaselineIdentities\"},\"DescribePatchGroups\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Mappings\"},\"DescribePatchProperties\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Properties\"},\"DescribeSessions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Sessions\"},\"GetInventory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Entities\"},\"GetInventorySchema\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Schemas\"},\"GetOpsSummary\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Entities\"},\"GetParameterHistory\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetParametersByPath\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListAssociationVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AssociationVersions\"},\"ListAssociations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Associations\"},\"ListCommandInvocations\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"CommandInvocations\"},\"ListCommands\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Commands\"},\"ListComplianceItems\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ComplianceItems\"},\"ListComplianceSummaries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ComplianceSummaryItems\"},\"ListDocumentVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DocumentVersions\"},\"ListDocuments\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"DocumentIdentifiers\"},\"ListOpsItemEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Summaries\"},\"ListOpsMetadata\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"OpsMetadataList\"},\"ListResourceComplianceSummaries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ResourceComplianceSummaryItems\"},\"ListResourceDataSync\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"ResourceDataSyncItems\"}}}");

/***/ }),

/***/ 80315:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"V\":{\"CommandExecuted\":{\"delay\":5,\"operation\":\"GetCommandInvocation\",\"maxAttempts\":20,\"acceptors\":[{\"expected\":\"Pending\",\"matcher\":\"path\",\"state\":\"retry\",\"argument\":\"Status\"},{\"expected\":\"InProgress\",\"matcher\":\"path\",\"state\":\"retry\",\"argument\":\"Status\"},{\"expected\":\"Delayed\",\"matcher\":\"path\",\"state\":\"retry\",\"argument\":\"Status\"},{\"expected\":\"Success\",\"matcher\":\"path\",\"state\":\"success\",\"argument\":\"Status\"},{\"expected\":\"Cancelled\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Status\"},{\"expected\":\"TimedOut\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Status\"},{\"expected\":\"Failed\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Status\"},{\"expected\":\"Cancelling\",\"matcher\":\"path\",\"state\":\"failure\",\"argument\":\"Status\"}]}}}");

/***/ }),

/***/ 77888:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-06-10\",\"endpointPrefix\":\"portal.sso\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"SSO\",\"serviceFullName\":\"AWS Single Sign-On\",\"serviceId\":\"SSO\",\"signatureVersion\":\"v4\",\"signingName\":\"awsssoportal\",\"uid\":\"sso-2019-06-10\"},\"operations\":{\"GetRoleCredentials\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/federation/credentials\"},\"input\":{\"type\":\"structure\",\"required\":[\"roleName\",\"accountId\",\"accessToken\"],\"members\":{\"roleName\":{\"location\":\"querystring\",\"locationName\":\"role_name\"},\"accountId\":{\"location\":\"querystring\",\"locationName\":\"account_id\"},\"accessToken\":{\"shape\":\"S4\",\"location\":\"header\",\"locationName\":\"x-amz-sso_bearer_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"roleCredentials\":{\"type\":\"structure\",\"members\":{\"accessKeyId\":{},\"secretAccessKey\":{\"type\":\"string\",\"sensitive\":true},\"sessionToken\":{\"type\":\"string\",\"sensitive\":true},\"expiration\":{\"type\":\"long\"}}}}},\"authtype\":\"none\"},\"ListAccountRoles\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assignment/roles\"},\"input\":{\"type\":\"structure\",\"required\":[\"accessToken\",\"accountId\"],\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max_result\",\"type\":\"integer\"},\"accessToken\":{\"shape\":\"S4\",\"location\":\"header\",\"locationName\":\"x-amz-sso_bearer_token\"},\"accountId\":{\"location\":\"querystring\",\"locationName\":\"account_id\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"roleList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"roleName\":{},\"accountId\":{}}}}}},\"authtype\":\"none\"},\"ListAccounts\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/assignment/accounts\"},\"input\":{\"type\":\"structure\",\"required\":[\"accessToken\"],\"members\":{\"nextToken\":{\"location\":\"querystring\",\"locationName\":\"next_token\"},\"maxResults\":{\"location\":\"querystring\",\"locationName\":\"max_result\",\"type\":\"integer\"},\"accessToken\":{\"shape\":\"S4\",\"location\":\"header\",\"locationName\":\"x-amz-sso_bearer_token\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"nextToken\":{},\"accountList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"accountId\":{},\"accountName\":{},\"emailAddress\":{}}}}}},\"authtype\":\"none\"},\"Logout\":{\"http\":{\"requestUri\":\"/logout\"},\"input\":{\"type\":\"structure\",\"required\":[\"accessToken\"],\"members\":{\"accessToken\":{\"shape\":\"S4\",\"location\":\"header\",\"locationName\":\"x-amz-sso_bearer_token\"}}},\"authtype\":\"none\"}},\"shapes\":{\"S4\":{\"type\":\"string\",\"sensitive\":true}}}");

/***/ }),

/***/ 18046:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccountRoles\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"roleList\"},\"ListAccounts\":{\"input_token\":\"nextToken\",\"output_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"result_key\":\"accountList\"}}}");

/***/ }),

/***/ 93165:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-07-20\",\"endpointPrefix\":\"sso\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"SSO Admin\",\"serviceFullName\":\"AWS Single Sign-On Admin\",\"serviceId\":\"SSO Admin\",\"signatureVersion\":\"v4\",\"signingName\":\"sso\",\"targetPrefix\":\"SWBExternalService\",\"uid\":\"sso-admin-2020-07-20\"},\"operations\":{\"AttachManagedPolicyToPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\",\"ManagedPolicyArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"ManagedPolicyArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateAccountAssignment\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"TargetId\",\"TargetType\",\"PermissionSetArn\",\"PrincipalType\",\"PrincipalId\"],\"members\":{\"InstanceArn\":{},\"TargetId\":{},\"TargetType\":{},\"PermissionSetArn\":{},\"PrincipalType\":{},\"PrincipalId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignmentCreationStatus\":{\"shape\":\"Sc\"}}}},\"CreateInstanceAccessControlAttributeConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"InstanceAccessControlAttributeConfiguration\"],\"members\":{\"InstanceArn\":{},\"InstanceAccessControlAttributeConfiguration\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreatePermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"InstanceArn\"],\"members\":{\"Name\":{},\"Description\":{},\"InstanceArn\":{},\"SessionDuration\":{},\"RelayState\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PermissionSet\":{\"shape\":\"S10\"}}}},\"DeleteAccountAssignment\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"TargetId\",\"TargetType\",\"PermissionSetArn\",\"PrincipalType\",\"PrincipalId\"],\"members\":{\"InstanceArn\":{},\"TargetId\":{},\"TargetType\":{},\"PermissionSetArn\":{},\"PrincipalType\":{},\"PrincipalId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignmentDeletionStatus\":{\"shape\":\"Sc\"}}}},\"DeleteInlinePolicyFromPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteInstanceAccessControlAttributeConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\"],\"members\":{\"InstanceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAccountAssignmentCreationStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"AccountAssignmentCreationRequestId\"],\"members\":{\"InstanceArn\":{},\"AccountAssignmentCreationRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignmentCreationStatus\":{\"shape\":\"Sc\"}}}},\"DescribeAccountAssignmentDeletionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"AccountAssignmentDeletionRequestId\"],\"members\":{\"InstanceArn\":{},\"AccountAssignmentDeletionRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignmentDeletionStatus\":{\"shape\":\"Sc\"}}}},\"DescribeInstanceAccessControlAttributeConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\"],\"members\":{\"InstanceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"StatusReason\":{},\"InstanceAccessControlAttributeConfiguration\":{\"shape\":\"Si\"}}}},\"DescribePermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PermissionSet\":{\"shape\":\"S10\"}}}},\"DescribePermissionSetProvisioningStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"ProvisionPermissionSetRequestId\"],\"members\":{\"InstanceArn\":{},\"ProvisionPermissionSetRequestId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PermissionSetProvisioningStatus\":{\"shape\":\"S1l\"}}}},\"DetachManagedPolicyFromPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\",\"ManagedPolicyArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"ManagedPolicyArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetInlinePolicyForPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InlinePolicy\":{\"shape\":\"S1r\"}}}},\"ListAccountAssignmentCreationStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\"],\"members\":{\"InstanceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filter\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignmentsCreationStatus\":{\"shape\":\"S1x\"},\"NextToken\":{}}}},\"ListAccountAssignmentDeletionStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\"],\"members\":{\"InstanceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filter\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignmentsDeletionStatus\":{\"shape\":\"S1x\"},\"NextToken\":{}}}},\"ListAccountAssignments\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"AccountId\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"AccountId\":{},\"PermissionSetArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountAssignments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AccountId\":{},\"PermissionSetArn\":{},\"PrincipalType\":{},\"PrincipalId\":{}}}},\"NextToken\":{}}}},\"ListAccountsForProvisionedPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"ProvisioningStatus\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"ListInstances\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Instances\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InstanceArn\":{},\"IdentityStoreId\":{}}}},\"NextToken\":{}}}},\"ListManagedPoliciesInPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AttachedManagedPolicies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{}}}},\"NextToken\":{}}}},\"ListPermissionSetProvisioningStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\"],\"members\":{\"InstanceArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"Filter\":{\"shape\":\"S1v\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PermissionSetsProvisioningStatus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"RequestId\":{},\"CreatedDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListPermissionSets\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\"],\"members\":{\"InstanceArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PermissionSets\":{\"shape\":\"S2p\"},\"NextToken\":{}}}},\"ListPermissionSetsProvisionedToAccount\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"AccountId\"],\"members\":{\"InstanceArn\":{},\"AccountId\":{},\"ProvisioningStatus\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"PermissionSets\":{\"shape\":\"S2p\"}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"ResourceArn\"],\"members\":{\"InstanceArn\":{},\"ResourceArn\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sv\"},\"NextToken\":{}}}},\"ProvisionPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\",\"TargetType\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"TargetId\":{},\"TargetType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PermissionSetProvisioningStatus\":{\"shape\":\"S1l\"}}}},\"PutInlinePolicyToPermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\",\"InlinePolicy\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"InlinePolicy\":{\"shape\":\"S1r\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"ResourceArn\",\"Tags\"],\"members\":{\"InstanceArn\":{},\"ResourceArn\":{},\"Tags\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"ResourceArn\",\"TagKeys\"],\"members\":{\"InstanceArn\":{},\"ResourceArn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateInstanceAccessControlAttributeConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"InstanceAccessControlAttributeConfiguration\"],\"members\":{\"InstanceArn\":{},\"InstanceAccessControlAttributeConfiguration\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePermissionSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"InstanceArn\",\"PermissionSetArn\"],\"members\":{\"InstanceArn\":{},\"PermissionSetArn\":{},\"Description\":{},\"SessionDuration\":{},\"RelayState\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sc\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"RequestId\":{},\"FailureReason\":{},\"TargetId\":{},\"TargetType\":{},\"PermissionSetArn\":{},\"PrincipalType\":{},\"PrincipalId\":{},\"CreatedDate\":{\"type\":\"timestamp\"}}},\"Si\":{\"type\":\"structure\",\"required\":[\"AccessControlAttributes\"],\"members\":{\"AccessControlAttributes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{\"type\":\"structure\",\"required\":[\"Source\"],\"members\":{\"Source\":{\"type\":\"list\",\"member\":{}}}}}}}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Key\":{},\"Value\":{}}}},\"S10\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"PermissionSetArn\":{},\"Description\":{},\"CreatedDate\":{\"type\":\"timestamp\"},\"SessionDuration\":{},\"RelayState\":{}}},\"S1l\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"RequestId\":{},\"AccountId\":{},\"PermissionSetArn\":{},\"FailureReason\":{},\"CreatedDate\":{\"type\":\"timestamp\"}}},\"S1r\":{\"type\":\"string\",\"sensitive\":true},\"S1v\":{\"type\":\"structure\",\"members\":{\"Status\":{}}},\"S1x\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"RequestId\":{},\"CreatedDate\":{\"type\":\"timestamp\"}}}},\"S2p\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 61022:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAccountAssignmentCreationStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AccountAssignmentsCreationStatus\"},\"ListAccountAssignmentDeletionStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AccountAssignmentsDeletionStatus\"},\"ListAccountAssignments\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AccountAssignments\"},\"ListAccountsForProvisionedPermissionSet\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AccountIds\"},\"ListInstances\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"Instances\"},\"ListManagedPoliciesInPermissionSet\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"AttachedManagedPolicies\"},\"ListPermissionSetProvisioningStatus\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PermissionSetsProvisioningStatus\"},\"ListPermissionSets\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PermissionSets\"},\"ListPermissionSetsProvisionedToAccount\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\",\"result_key\":\"PermissionSets\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Tags\"}}}");

/***/ }),

/***/ 43979:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-06-10\",\"endpointPrefix\":\"oidc\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"SSO OIDC\",\"serviceFullName\":\"AWS SSO OIDC\",\"serviceId\":\"SSO OIDC\",\"signatureVersion\":\"v4\",\"signingName\":\"awsssooidc\",\"uid\":\"sso-oidc-2019-06-10\"},\"operations\":{\"CreateToken\":{\"http\":{\"requestUri\":\"/token\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientId\",\"clientSecret\",\"grantType\",\"deviceCode\"],\"members\":{\"clientId\":{},\"clientSecret\":{},\"grantType\":{},\"deviceCode\":{},\"code\":{},\"refreshToken\":{},\"scope\":{\"shape\":\"S8\"},\"redirectUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"accessToken\":{},\"tokenType\":{},\"expiresIn\":{\"type\":\"integer\"},\"refreshToken\":{},\"idToken\":{}}},\"authtype\":\"none\"},\"RegisterClient\":{\"http\":{\"requestUri\":\"/client/register\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientName\",\"clientType\"],\"members\":{\"clientName\":{},\"clientType\":{},\"scopes\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"clientId\":{},\"clientSecret\":{},\"clientIdIssuedAt\":{\"type\":\"long\"},\"clientSecretExpiresAt\":{\"type\":\"long\"},\"authorizationEndpoint\":{},\"tokenEndpoint\":{}}},\"authtype\":\"none\"},\"StartDeviceAuthorization\":{\"http\":{\"requestUri\":\"/device_authorization\"},\"input\":{\"type\":\"structure\",\"required\":[\"clientId\",\"clientSecret\",\"startUrl\"],\"members\":{\"clientId\":{},\"clientSecret\":{},\"startUrl\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"deviceCode\":{},\"userCode\":{},\"verificationUri\":{},\"verificationUriComplete\":{},\"expiresIn\":{\"type\":\"integer\"},\"interval\":{\"type\":\"integer\"}}},\"authtype\":\"none\"}},\"shapes\":{\"S8\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 16125:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 58492:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-23\",\"endpointPrefix\":\"states\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWS SFN\",\"serviceFullName\":\"AWS Step Functions\",\"serviceId\":\"SFN\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSStepFunctions\",\"uid\":\"states-2016-11-23\"},\"operations\":{\"CreateActivity\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"activityArn\",\"creationDate\"],\"members\":{\"activityArn\":{},\"creationDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"CreateStateMachine\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"definition\",\"roleArn\"],\"members\":{\"name\":{},\"definition\":{\"shape\":\"Sb\"},\"roleArn\":{},\"type\":{},\"loggingConfiguration\":{\"shape\":\"Sd\"},\"tags\":{\"shape\":\"S3\"},\"tracingConfiguration\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\",\"creationDate\"],\"members\":{\"stateMachineArn\":{},\"creationDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DeleteActivity\":{\"input\":{\"type\":\"structure\",\"required\":[\"activityArn\"],\"members\":{\"activityArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteStateMachine\":{\"input\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\"],\"members\":{\"stateMachineArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeActivity\":{\"input\":{\"type\":\"structure\",\"required\":[\"activityArn\"],\"members\":{\"activityArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"activityArn\",\"name\",\"creationDate\"],\"members\":{\"activityArn\":{},\"name\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"DescribeExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"executionArn\"],\"members\":{\"executionArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"executionArn\",\"stateMachineArn\",\"status\",\"startDate\"],\"members\":{\"executionArn\":{},\"stateMachineArn\":{},\"name\":{},\"status\":{},\"startDate\":{\"type\":\"timestamp\"},\"stopDate\":{\"type\":\"timestamp\"},\"input\":{\"shape\":\"Sv\"},\"inputDetails\":{\"shape\":\"Sw\"},\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"Sw\"},\"traceHeader\":{}}}},\"DescribeStateMachine\":{\"input\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\"],\"members\":{\"stateMachineArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\",\"name\",\"definition\",\"roleArn\",\"type\",\"creationDate\"],\"members\":{\"stateMachineArn\":{},\"name\":{},\"status\":{},\"definition\":{\"shape\":\"Sb\"},\"roleArn\":{},\"type\":{},\"creationDate\":{\"type\":\"timestamp\"},\"loggingConfiguration\":{\"shape\":\"Sd\"},\"tracingConfiguration\":{\"shape\":\"Sj\"}}}},\"DescribeStateMachineForExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"executionArn\"],\"members\":{\"executionArn\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\",\"name\",\"definition\",\"roleArn\",\"updateDate\"],\"members\":{\"stateMachineArn\":{},\"name\":{},\"definition\":{\"shape\":\"Sb\"},\"roleArn\":{},\"updateDate\":{\"type\":\"timestamp\"},\"loggingConfiguration\":{\"shape\":\"Sd\"},\"tracingConfiguration\":{\"shape\":\"Sj\"}}}},\"GetActivityTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"activityArn\"],\"members\":{\"activityArn\":{},\"workerName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"taskToken\":{},\"input\":{\"type\":\"string\",\"sensitive\":true}}}},\"GetExecutionHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"executionArn\"],\"members\":{\"executionArn\":{},\"maxResults\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"},\"nextToken\":{},\"includeExecutionData\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"events\"],\"members\":{\"events\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"timestamp\",\"type\",\"id\"],\"members\":{\"timestamp\":{\"type\":\"timestamp\"},\"type\":{},\"id\":{\"type\":\"long\"},\"previousEventId\":{\"type\":\"long\"},\"activityFailedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"activityScheduleFailedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"activityScheduledEventDetails\":{\"type\":\"structure\",\"required\":[\"resource\"],\"members\":{\"resource\":{},\"input\":{\"shape\":\"Sv\"},\"inputDetails\":{\"shape\":\"S1n\"},\"timeoutInSeconds\":{\"type\":\"long\"},\"heartbeatInSeconds\":{\"type\":\"long\"}}},\"activityStartedEventDetails\":{\"type\":\"structure\",\"members\":{\"workerName\":{}}},\"activitySucceededEventDetails\":{\"type\":\"structure\",\"members\":{\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"S1n\"}}},\"activityTimedOutEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"taskFailedEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"taskScheduledEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\",\"region\",\"parameters\"],\"members\":{\"resourceType\":{},\"resource\":{},\"region\":{},\"parameters\":{\"type\":\"string\",\"sensitive\":true},\"timeoutInSeconds\":{\"type\":\"long\"},\"heartbeatInSeconds\":{\"type\":\"long\"}}},\"taskStartFailedEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"taskStartedEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{}}},\"taskSubmitFailedEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"taskSubmittedEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{},\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"S1n\"}}},\"taskSucceededEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{},\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"S1n\"}}},\"taskTimedOutEventDetails\":{\"type\":\"structure\",\"required\":[\"resourceType\",\"resource\"],\"members\":{\"resourceType\":{},\"resource\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"executionFailedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"executionStartedEventDetails\":{\"type\":\"structure\",\"members\":{\"input\":{\"shape\":\"Sv\"},\"inputDetails\":{\"shape\":\"S1n\"},\"roleArn\":{}}},\"executionSucceededEventDetails\":{\"type\":\"structure\",\"members\":{\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"S1n\"}}},\"executionAbortedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"executionTimedOutEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"mapStateStartedEventDetails\":{\"type\":\"structure\",\"members\":{\"length\":{\"type\":\"integer\"}}},\"mapIterationStartedEventDetails\":{\"shape\":\"S2a\"},\"mapIterationSucceededEventDetails\":{\"shape\":\"S2a\"},\"mapIterationFailedEventDetails\":{\"shape\":\"S2a\"},\"mapIterationAbortedEventDetails\":{\"shape\":\"S2a\"},\"lambdaFunctionFailedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"lambdaFunctionScheduleFailedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"lambdaFunctionScheduledEventDetails\":{\"type\":\"structure\",\"required\":[\"resource\"],\"members\":{\"resource\":{},\"input\":{\"shape\":\"Sv\"},\"inputDetails\":{\"shape\":\"S1n\"},\"timeoutInSeconds\":{\"type\":\"long\"}}},\"lambdaFunctionStartFailedEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"lambdaFunctionSucceededEventDetails\":{\"type\":\"structure\",\"members\":{\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"S1n\"}}},\"lambdaFunctionTimedOutEventDetails\":{\"type\":\"structure\",\"members\":{\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"stateEnteredEventDetails\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"input\":{\"shape\":\"Sv\"},\"inputDetails\":{\"shape\":\"S1n\"}}},\"stateExitedEventDetails\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"S1n\"}}}}}},\"nextToken\":{}}}},\"ListActivities\":{\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"activities\"],\"members\":{\"activities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"activityArn\",\"name\",\"creationDate\"],\"members\":{\"activityArn\":{},\"name\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\"],\"members\":{\"stateMachineArn\":{},\"statusFilter\":{},\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"executions\"],\"members\":{\"executions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"executionArn\",\"stateMachineArn\",\"name\",\"status\",\"startDate\"],\"members\":{\"executionArn\":{},\"stateMachineArn\":{},\"name\":{},\"status\":{},\"startDate\":{\"type\":\"timestamp\"},\"stopDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListStateMachines\":{\"input\":{\"type\":\"structure\",\"members\":{\"maxResults\":{\"type\":\"integer\"},\"nextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"stateMachines\"],\"members\":{\"stateMachines\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\",\"name\",\"type\",\"creationDate\"],\"members\":{\"stateMachineArn\":{},\"name\":{},\"type\":{},\"creationDate\":{\"type\":\"timestamp\"}}}},\"nextToken\":{}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S3\"}}}},\"SendTaskFailure\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendTaskHeartbeat\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SendTaskSuccess\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\",\"output\"],\"members\":{\"taskToken\":{},\"output\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\"],\"members\":{\"stateMachineArn\":{},\"name\":{},\"input\":{\"shape\":\"Sv\"},\"traceHeader\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"executionArn\",\"startDate\"],\"members\":{\"executionArn\":{},\"startDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"StartSyncExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\"],\"members\":{\"stateMachineArn\":{},\"name\":{},\"input\":{\"shape\":\"Sv\"},\"traceHeader\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"executionArn\",\"startDate\",\"stopDate\",\"status\"],\"members\":{\"executionArn\":{},\"stateMachineArn\":{},\"name\":{},\"startDate\":{\"type\":\"timestamp\"},\"stopDate\":{\"type\":\"timestamp\"},\"status\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"},\"input\":{\"shape\":\"Sv\"},\"inputDetails\":{\"shape\":\"Sw\"},\"output\":{\"shape\":\"Sv\"},\"outputDetails\":{\"shape\":\"Sw\"},\"traceHeader\":{},\"billingDetails\":{\"type\":\"structure\",\"members\":{\"billedMemoryUsedInMB\":{\"type\":\"long\"},\"billedDurationInMilliseconds\":{\"type\":\"long\"}}}}},\"endpoint\":{\"hostPrefix\":\"sync-\"}},\"StopExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"executionArn\"],\"members\":{\"executionArn\":{},\"error\":{\"shape\":\"S1j\"},\"cause\":{\"shape\":\"S1k\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"stopDate\"],\"members\":{\"stopDate\":{\"type\":\"timestamp\"}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S3\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateStateMachine\":{\"input\":{\"type\":\"structure\",\"required\":[\"stateMachineArn\"],\"members\":{\"stateMachineArn\":{},\"definition\":{\"shape\":\"Sb\"},\"roleArn\":{},\"loggingConfiguration\":{\"shape\":\"Sd\"},\"tracingConfiguration\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"updateDate\"],\"members\":{\"updateDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"key\":{},\"value\":{}}}},\"Sb\":{\"type\":\"string\",\"sensitive\":true},\"Sd\":{\"type\":\"structure\",\"members\":{\"level\":{},\"includeExecutionData\":{\"type\":\"boolean\"},\"destinations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"cloudWatchLogsLogGroup\":{\"type\":\"structure\",\"members\":{\"logGroupArn\":{}}}}}}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"enabled\":{\"type\":\"boolean\"}}},\"Sv\":{\"type\":\"string\",\"sensitive\":true},\"Sw\":{\"type\":\"structure\",\"members\":{\"included\":{\"type\":\"boolean\"}}},\"S1j\":{\"type\":\"string\",\"sensitive\":true},\"S1k\":{\"type\":\"string\",\"sensitive\":true},\"S1n\":{\"type\":\"structure\",\"members\":{\"truncated\":{\"type\":\"boolean\"}}},\"S2a\":{\"type\":\"structure\",\"members\":{\"name\":{},\"index\":{\"type\":\"integer\"}}}}}");

/***/ }),

/***/ 95424:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetExecutionHistory\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"events\"},\"ListActivities\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"activities\"},\"ListExecutions\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"executions\"},\"ListStateMachines\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"stateMachines\"}}}");

/***/ }),

/***/ 33480:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-06-30\",\"endpointPrefix\":\"storagegateway\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Storage Gateway\",\"serviceId\":\"Storage Gateway\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"StorageGateway_20130630\",\"uid\":\"storagegateway-2013-06-30\"},\"operations\":{\"ActivateGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"ActivationKey\",\"GatewayName\",\"GatewayTimezone\",\"GatewayRegion\"],\"members\":{\"ActivationKey\":{},\"GatewayName\":{},\"GatewayTimezone\":{},\"GatewayRegion\":{},\"GatewayType\":{},\"TapeDriveType\":{},\"MediumChangerType\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"AddCache\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"DiskIds\"],\"members\":{\"GatewayARN\":{},\"DiskIds\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"AddTagsToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{}}}},\"AddUploadBuffer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"DiskIds\"],\"members\":{\"GatewayARN\":{},\"DiskIds\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"AddWorkingStorage\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"DiskIds\"],\"members\":{\"GatewayARN\":{},\"DiskIds\":{\"shape\":\"Sg\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"AssignTapePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"TapeARN\",\"PoolId\"],\"members\":{\"TapeARN\":{},\"PoolId\":{},\"BypassGovernanceRetention\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"AssociateFileSystem\":{\"input\":{\"type\":\"structure\",\"required\":[\"UserName\",\"Password\",\"ClientToken\",\"GatewayARN\",\"LocationARN\"],\"members\":{\"UserName\":{},\"Password\":{\"shape\":\"Sx\"},\"ClientToken\":{},\"GatewayARN\":{},\"LocationARN\":{},\"Tags\":{\"shape\":\"S9\"},\"AuditDestinationARN\":{},\"CacheAttributes\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystemAssociationARN\":{}}}},\"AttachVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"VolumeARN\",\"NetworkInterfaceId\"],\"members\":{\"GatewayARN\":{},\"TargetName\":{},\"VolumeARN\":{},\"NetworkInterfaceId\":{},\"DiskId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"TargetARN\":{}}}},\"CancelArchival\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"TapeARN\"],\"members\":{\"GatewayARN\":{},\"TapeARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"CancelRetrieval\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"TapeARN\"],\"members\":{\"GatewayARN\":{},\"TapeARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"CreateCachediSCSIVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"VolumeSizeInBytes\",\"TargetName\",\"NetworkInterfaceId\",\"ClientToken\"],\"members\":{\"GatewayARN\":{},\"VolumeSizeInBytes\":{\"type\":\"long\"},\"SnapshotId\":{},\"TargetName\":{},\"SourceVolumeARN\":{},\"NetworkInterfaceId\":{},\"ClientToken\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"TargetARN\":{}}}},\"CreateNFSFileShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"GatewayARN\",\"Role\",\"LocationARN\"],\"members\":{\"ClientToken\":{},\"NFSFileShareDefaults\":{\"shape\":\"S1m\"},\"GatewayARN\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"Role\":{},\"LocationARN\":{},\"DefaultStorageClass\":{},\"ObjectACL\":{},\"ClientList\":{\"shape\":\"S1t\"},\"Squash\":{},\"ReadOnly\":{\"type\":\"boolean\"},\"GuessMIMETypeEnabled\":{\"type\":\"boolean\"},\"RequesterPays\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"},\"FileShareName\":{},\"CacheAttributes\":{\"shape\":\"S11\"},\"NotificationPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{}}}},\"CreateSMBFileShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"GatewayARN\",\"Role\",\"LocationARN\"],\"members\":{\"ClientToken\":{},\"GatewayARN\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"Role\":{},\"LocationARN\":{},\"DefaultStorageClass\":{},\"ObjectACL\":{},\"ReadOnly\":{\"type\":\"boolean\"},\"GuessMIMETypeEnabled\":{\"type\":\"boolean\"},\"RequesterPays\":{\"type\":\"boolean\"},\"SMBACLEnabled\":{\"type\":\"boolean\"},\"AccessBasedEnumeration\":{\"type\":\"boolean\"},\"AdminUserList\":{\"shape\":\"S21\"},\"ValidUserList\":{\"shape\":\"S21\"},\"InvalidUserList\":{\"shape\":\"S21\"},\"AuditDestinationARN\":{},\"Authentication\":{},\"CaseSensitivity\":{},\"Tags\":{\"shape\":\"S9\"},\"FileShareName\":{},\"CacheAttributes\":{\"shape\":\"S11\"},\"NotificationPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{}}}},\"CreateSnapshot\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\",\"SnapshotDescription\"],\"members\":{\"VolumeARN\":{},\"SnapshotDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"SnapshotId\":{}}}},\"CreateSnapshotFromVolumeRecoveryPoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\",\"SnapshotDescription\"],\"members\":{\"VolumeARN\":{},\"SnapshotDescription\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SnapshotId\":{},\"VolumeARN\":{},\"VolumeRecoveryPointTime\":{}}}},\"CreateStorediSCSIVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"DiskId\",\"PreserveExistingData\",\"TargetName\",\"NetworkInterfaceId\"],\"members\":{\"GatewayARN\":{},\"DiskId\":{},\"SnapshotId\":{},\"PreserveExistingData\":{\"type\":\"boolean\"},\"TargetName\":{},\"NetworkInterfaceId\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"VolumeSizeInBytes\":{\"type\":\"long\"},\"TargetARN\":{}}}},\"CreateTapePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"PoolName\",\"StorageClass\"],\"members\":{\"PoolName\":{},\"StorageClass\":{},\"RetentionLockType\":{},\"RetentionLockTimeInDays\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PoolARN\":{}}}},\"CreateTapeWithBarcode\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"TapeSizeInBytes\",\"TapeBarcode\"],\"members\":{\"GatewayARN\":{},\"TapeSizeInBytes\":{\"type\":\"long\"},\"TapeBarcode\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"PoolId\":{},\"Worm\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"CreateTapes\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"TapeSizeInBytes\",\"ClientToken\",\"NumTapesToCreate\",\"TapeBarcodePrefix\"],\"members\":{\"GatewayARN\":{},\"TapeSizeInBytes\":{\"type\":\"long\"},\"ClientToken\":{},\"NumTapesToCreate\":{\"type\":\"integer\"},\"TapeBarcodePrefix\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"PoolId\":{},\"Worm\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARNs\":{\"shape\":\"S2t\"}}}},\"DeleteAutomaticTapeCreationPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"DeleteBandwidthRateLimit\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"BandwidthType\"],\"members\":{\"GatewayARN\":{},\"BandwidthType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"DeleteChapCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetARN\",\"InitiatorName\"],\"members\":{\"TargetARN\":{},\"InitiatorName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TargetARN\":{},\"InitiatorName\":{}}}},\"DeleteFileShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARN\"],\"members\":{\"FileShareARN\":{},\"ForceDelete\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{}}}},\"DeleteGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"DeleteSnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\"],\"members\":{\"VolumeARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{}}}},\"DeleteTape\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"TapeARN\"],\"members\":{\"GatewayARN\":{},\"TapeARN\":{},\"BypassGovernanceRetention\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"DeleteTapeArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"TapeARN\"],\"members\":{\"TapeARN\":{},\"BypassGovernanceRetention\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"DeleteTapePool\":{\"input\":{\"type\":\"structure\",\"required\":[\"PoolARN\"],\"members\":{\"PoolARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"PoolARN\":{}}}},\"DeleteVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\"],\"members\":{\"VolumeARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{}}}},\"DescribeAvailabilityMonitorTest\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"Status\":{},\"StartTime\":{\"type\":\"timestamp\"}}}},\"DescribeBandwidthRateLimit\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"AverageUploadRateLimitInBitsPerSec\":{\"type\":\"long\"},\"AverageDownloadRateLimitInBitsPerSec\":{\"type\":\"long\"}}}},\"DescribeBandwidthRateLimitSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"BandwidthRateLimitIntervals\":{\"shape\":\"S3q\"}}}},\"DescribeCache\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"DiskIds\":{\"shape\":\"Sg\"},\"CacheAllocatedInBytes\":{\"type\":\"long\"},\"CacheUsedPercentage\":{\"type\":\"double\"},\"CacheDirtyPercentage\":{\"type\":\"double\"},\"CacheHitPercentage\":{\"type\":\"double\"},\"CacheMissPercentage\":{\"type\":\"double\"}}}},\"DescribeCachediSCSIVolumes\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARNs\"],\"members\":{\"VolumeARNs\":{\"shape\":\"S40\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CachediSCSIVolumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"VolumeId\":{},\"VolumeType\":{},\"VolumeStatus\":{},\"VolumeAttachmentStatus\":{},\"VolumeSizeInBytes\":{\"type\":\"long\"},\"VolumeProgress\":{\"type\":\"double\"},\"SourceSnapshotId\":{},\"VolumeiSCSIAttributes\":{\"shape\":\"S49\"},\"CreatedDate\":{\"type\":\"timestamp\"},\"VolumeUsedInBytes\":{\"type\":\"long\"},\"KMSKey\":{},\"TargetName\":{}}}}}}},\"DescribeChapCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetARN\"],\"members\":{\"TargetARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChapCredentials\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TargetARN\":{},\"SecretToAuthenticateInitiator\":{\"shape\":\"S4i\"},\"InitiatorName\":{},\"SecretToAuthenticateTarget\":{\"shape\":\"S4i\"}}}}}}},\"DescribeFileSystemAssociations\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemAssociationARNList\"],\"members\":{\"FileSystemAssociationARNList\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystemAssociationInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FileSystemAssociationARN\":{},\"LocationARN\":{},\"FileSystemAssociationStatus\":{},\"AuditDestinationARN\":{},\"GatewayARN\":{},\"Tags\":{\"shape\":\"S9\"},\"CacheAttributes\":{\"shape\":\"S11\"}}}}}}},\"DescribeGatewayInformation\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"GatewayId\":{},\"GatewayName\":{},\"GatewayTimezone\":{},\"GatewayState\":{},\"GatewayNetworkInterfaces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Ipv4Address\":{},\"MacAddress\":{},\"Ipv6Address\":{}}}},\"GatewayType\":{},\"NextUpdateAvailabilityDate\":{},\"LastSoftwareUpdate\":{},\"Ec2InstanceId\":{},\"Ec2InstanceRegion\":{},\"Tags\":{\"shape\":\"S9\"},\"VPCEndpoint\":{},\"CloudWatchLogGroupARN\":{},\"HostEnvironment\":{},\"EndpointType\":{},\"SoftwareUpdatesEndDate\":{},\"DeprecationDate\":{}}}},\"DescribeMaintenanceStartTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"HourOfDay\":{\"type\":\"integer\"},\"MinuteOfHour\":{\"type\":\"integer\"},\"DayOfWeek\":{\"type\":\"integer\"},\"DayOfMonth\":{\"type\":\"integer\"},\"Timezone\":{}}}},\"DescribeNFSFileShares\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARNList\"],\"members\":{\"FileShareARNList\":{\"shape\":\"S58\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NFSFileShareInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"NFSFileShareDefaults\":{\"shape\":\"S1m\"},\"FileShareARN\":{},\"FileShareId\":{},\"FileShareStatus\":{},\"GatewayARN\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"Path\":{},\"Role\":{},\"LocationARN\":{},\"DefaultStorageClass\":{},\"ObjectACL\":{},\"ClientList\":{\"shape\":\"S1t\"},\"Squash\":{},\"ReadOnly\":{\"type\":\"boolean\"},\"GuessMIMETypeEnabled\":{\"type\":\"boolean\"},\"RequesterPays\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"S9\"},\"FileShareName\":{},\"CacheAttributes\":{\"shape\":\"S11\"},\"NotificationPolicy\":{}}}}}}},\"DescribeSMBFileShares\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARNList\"],\"members\":{\"FileShareARNList\":{\"shape\":\"S58\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SMBFileShareInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{},\"FileShareId\":{},\"FileShareStatus\":{},\"GatewayARN\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"Path\":{},\"Role\":{},\"LocationARN\":{},\"DefaultStorageClass\":{},\"ObjectACL\":{},\"ReadOnly\":{\"type\":\"boolean\"},\"GuessMIMETypeEnabled\":{\"type\":\"boolean\"},\"RequesterPays\":{\"type\":\"boolean\"},\"SMBACLEnabled\":{\"type\":\"boolean\"},\"AccessBasedEnumeration\":{\"type\":\"boolean\"},\"AdminUserList\":{\"shape\":\"S21\"},\"ValidUserList\":{\"shape\":\"S21\"},\"InvalidUserList\":{\"shape\":\"S21\"},\"AuditDestinationARN\":{},\"Authentication\":{},\"CaseSensitivity\":{},\"Tags\":{\"shape\":\"S9\"},\"FileShareName\":{},\"CacheAttributes\":{\"shape\":\"S11\"},\"NotificationPolicy\":{}}}}}}},\"DescribeSMBSettings\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"DomainName\":{},\"ActiveDirectoryStatus\":{},\"SMBGuestPasswordSet\":{\"type\":\"boolean\"},\"SMBSecurityStrategy\":{},\"FileSharesVisible\":{\"type\":\"boolean\"}}}},\"DescribeSnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\"],\"members\":{\"VolumeARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"StartAt\":{\"type\":\"integer\"},\"RecurrenceInHours\":{\"type\":\"integer\"},\"Description\":{},\"Timezone\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"DescribeStorediSCSIVolumes\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARNs\"],\"members\":{\"VolumeARNs\":{\"shape\":\"S40\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"StorediSCSIVolumes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"VolumeId\":{},\"VolumeType\":{},\"VolumeStatus\":{},\"VolumeAttachmentStatus\":{},\"VolumeSizeInBytes\":{\"type\":\"long\"},\"VolumeProgress\":{\"type\":\"double\"},\"VolumeDiskId\":{},\"SourceSnapshotId\":{},\"PreservedExistingData\":{\"type\":\"boolean\"},\"VolumeiSCSIAttributes\":{\"shape\":\"S49\"},\"CreatedDate\":{\"type\":\"timestamp\"},\"VolumeUsedInBytes\":{\"type\":\"long\"},\"KMSKey\":{},\"TargetName\":{}}}}}}},\"DescribeTapeArchives\":{\"input\":{\"type\":\"structure\",\"members\":{\"TapeARNs\":{\"shape\":\"S2t\"},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeArchives\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{},\"TapeBarcode\":{},\"TapeCreatedDate\":{\"type\":\"timestamp\"},\"TapeSizeInBytes\":{\"type\":\"long\"},\"CompletionTime\":{\"type\":\"timestamp\"},\"RetrievedTo\":{},\"TapeStatus\":{},\"TapeUsedInBytes\":{\"type\":\"long\"},\"KMSKey\":{},\"PoolId\":{},\"Worm\":{\"type\":\"boolean\"},\"RetentionStartDate\":{\"type\":\"timestamp\"},\"PoolEntryDate\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"DescribeTapeRecoveryPoints\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"TapeRecoveryPointInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{},\"TapeRecoveryPointTime\":{\"type\":\"timestamp\"},\"TapeSizeInBytes\":{\"type\":\"long\"},\"TapeStatus\":{}}}},\"Marker\":{}}}},\"DescribeTapes\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{},\"TapeARNs\":{\"shape\":\"S2t\"},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tapes\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{},\"TapeBarcode\":{},\"TapeCreatedDate\":{\"type\":\"timestamp\"},\"TapeSizeInBytes\":{\"type\":\"long\"},\"TapeStatus\":{},\"VTLDevice\":{},\"Progress\":{\"type\":\"double\"},\"TapeUsedInBytes\":{\"type\":\"long\"},\"KMSKey\":{},\"PoolId\":{},\"Worm\":{\"type\":\"boolean\"},\"RetentionStartDate\":{\"type\":\"timestamp\"},\"PoolEntryDate\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"DescribeUploadBuffer\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"DiskIds\":{\"shape\":\"Sg\"},\"UploadBufferUsedInBytes\":{\"type\":\"long\"},\"UploadBufferAllocatedInBytes\":{\"type\":\"long\"}}}},\"DescribeVTLDevices\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{},\"VTLDeviceARNs\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"VTLDevices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VTLDeviceARN\":{},\"VTLDeviceType\":{},\"VTLDeviceVendor\":{},\"VTLDeviceProductIdentifier\":{},\"DeviceiSCSIAttributes\":{\"type\":\"structure\",\"members\":{\"TargetARN\":{},\"NetworkInterfaceId\":{},\"NetworkInterfacePort\":{\"type\":\"integer\"},\"ChapEnabled\":{\"type\":\"boolean\"}}}}}},\"Marker\":{}}}},\"DescribeWorkingStorage\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"DiskIds\":{\"shape\":\"Sg\"},\"WorkingStorageUsedInBytes\":{\"type\":\"long\"},\"WorkingStorageAllocatedInBytes\":{\"type\":\"long\"}}}},\"DetachVolume\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\"],\"members\":{\"VolumeARN\":{},\"ForceDetach\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{}}}},\"DisableGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"DisassociateFileSystem\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemAssociationARN\"],\"members\":{\"FileSystemAssociationARN\":{},\"ForceDelete\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystemAssociationARN\":{}}}},\"JoinDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"DomainName\",\"UserName\",\"Password\"],\"members\":{\"GatewayARN\":{},\"DomainName\":{},\"OrganizationalUnit\":{},\"DomainControllers\":{\"type\":\"list\",\"member\":{}},\"TimeoutInSeconds\":{\"type\":\"integer\"},\"UserName\":{},\"Password\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"ActiveDirectoryStatus\":{}}}},\"ListAutomaticTapeCreationPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AutomaticTapeCreationPolicyInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AutomaticTapeCreationRules\":{\"shape\":\"S77\"},\"GatewayARN\":{}}}}}}},\"ListFileShares\":{\"input\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"NextMarker\":{},\"FileShareInfoList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FileShareType\":{},\"FileShareARN\":{},\"FileShareId\":{},\"FileShareStatus\":{},\"GatewayARN\":{}}}}}}},\"ListFileSystemAssociations\":{\"input\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"Limit\":{\"type\":\"integer\"},\"Marker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"NextMarker\":{},\"FileSystemAssociationSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FileSystemAssociationId\":{},\"FileSystemAssociationARN\":{},\"FileSystemAssociationStatus\":{},\"GatewayARN\":{}}}}}}},\"ListGateways\":{\"input\":{\"type\":\"structure\",\"members\":{\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Gateways\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GatewayId\":{},\"GatewayARN\":{},\"GatewayType\":{},\"GatewayOperationalState\":{},\"GatewayName\":{},\"Ec2InstanceId\":{},\"Ec2InstanceRegion\":{}}}},\"Marker\":{}}}},\"ListLocalDisks\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"Disks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DiskId\":{},\"DiskPath\":{},\"DiskNode\":{},\"DiskStatus\":{},\"DiskSizeInBytes\":{\"type\":\"long\"},\"DiskAllocationType\":{},\"DiskAllocationResource\":{},\"DiskAttributeList\":{\"type\":\"list\",\"member\":{}}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"Marker\":{},\"Tags\":{\"shape\":\"S9\"}}}},\"ListTapePools\":{\"input\":{\"type\":\"structure\",\"members\":{\"PoolARNs\":{\"type\":\"list\",\"member\":{}},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"PoolInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PoolARN\":{},\"PoolName\":{},\"StorageClass\":{},\"RetentionLockType\":{},\"RetentionLockTimeInDays\":{\"type\":\"integer\"},\"PoolStatus\":{}}}},\"Marker\":{}}}},\"ListTapes\":{\"input\":{\"type\":\"structure\",\"members\":{\"TapeARNs\":{\"shape\":\"S2t\"},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{},\"TapeBarcode\":{},\"TapeSizeInBytes\":{\"type\":\"long\"},\"TapeStatus\":{},\"GatewayARN\":{},\"PoolId\":{},\"RetentionStartDate\":{\"type\":\"timestamp\"},\"PoolEntryDate\":{\"type\":\"timestamp\"}}}},\"Marker\":{}}}},\"ListVolumeInitiators\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\"],\"members\":{\"VolumeARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Initiators\":{\"type\":\"list\",\"member\":{}}}}},\"ListVolumeRecoveryPoints\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"VolumeRecoveryPointInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"VolumeSizeInBytes\":{\"type\":\"long\"},\"VolumeUsageInBytes\":{\"type\":\"long\"},\"VolumeRecoveryPointTime\":{}}}}}}},\"ListVolumes\":{\"input\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"Marker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"Marker\":{},\"VolumeInfos\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{},\"VolumeId\":{},\"GatewayARN\":{},\"GatewayId\":{},\"VolumeType\":{},\"VolumeSizeInBytes\":{\"type\":\"long\"},\"VolumeAttachmentStatus\":{}}}}}}},\"NotifyWhenUploaded\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARN\"],\"members\":{\"FileShareARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{},\"NotificationId\":{}}}},\"RefreshCache\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARN\"],\"members\":{\"FileShareARN\":{},\"FolderList\":{\"type\":\"list\",\"member\":{}},\"Recursive\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{},\"NotificationId\":{}}}},\"RemoveTagsFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{}}}},\"ResetCache\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"RetrieveTapeArchive\":{\"input\":{\"type\":\"structure\",\"required\":[\"TapeARN\",\"GatewayARN\"],\"members\":{\"TapeARN\":{},\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"RetrieveTapeRecoveryPoint\":{\"input\":{\"type\":\"structure\",\"required\":[\"TapeARN\",\"GatewayARN\"],\"members\":{\"TapeARN\":{},\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TapeARN\":{}}}},\"SetLocalConsolePassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"LocalConsolePassword\"],\"members\":{\"GatewayARN\":{},\"LocalConsolePassword\":{\"type\":\"string\",\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"SetSMBGuestPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"Password\"],\"members\":{\"GatewayARN\":{},\"Password\":{\"type\":\"string\",\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"ShutdownGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"StartAvailabilityMonitorTest\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"StartGateway\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateAutomaticTapeCreationPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"AutomaticTapeCreationRules\",\"GatewayARN\"],\"members\":{\"AutomaticTapeCreationRules\":{\"shape\":\"S77\"},\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateBandwidthRateLimit\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{},\"AverageUploadRateLimitInBitsPerSec\":{\"type\":\"long\"},\"AverageDownloadRateLimitInBitsPerSec\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateBandwidthRateLimitSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"BandwidthRateLimitIntervals\"],\"members\":{\"GatewayARN\":{},\"BandwidthRateLimitIntervals\":{\"shape\":\"S3q\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateChapCredentials\":{\"input\":{\"type\":\"structure\",\"required\":[\"TargetARN\",\"SecretToAuthenticateInitiator\",\"InitiatorName\"],\"members\":{\"TargetARN\":{},\"SecretToAuthenticateInitiator\":{\"shape\":\"S4i\"},\"InitiatorName\":{},\"SecretToAuthenticateTarget\":{\"shape\":\"S4i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TargetARN\":{},\"InitiatorName\":{}}}},\"UpdateFileSystemAssociation\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileSystemAssociationARN\"],\"members\":{\"FileSystemAssociationARN\":{},\"UserName\":{},\"Password\":{\"shape\":\"Sx\"},\"AuditDestinationARN\":{},\"CacheAttributes\":{\"shape\":\"S11\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileSystemAssociationARN\":{}}}},\"UpdateGatewayInformation\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{},\"GatewayName\":{},\"GatewayTimezone\":{},\"CloudWatchLogGroupARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{},\"GatewayName\":{}}}},\"UpdateGatewaySoftwareNow\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\"],\"members\":{\"GatewayARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateMaintenanceStartTime\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"HourOfDay\",\"MinuteOfHour\"],\"members\":{\"GatewayARN\":{},\"HourOfDay\":{\"type\":\"integer\"},\"MinuteOfHour\":{\"type\":\"integer\"},\"DayOfWeek\":{\"type\":\"integer\"},\"DayOfMonth\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateNFSFileShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARN\"],\"members\":{\"FileShareARN\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"NFSFileShareDefaults\":{\"shape\":\"S1m\"},\"DefaultStorageClass\":{},\"ObjectACL\":{},\"ClientList\":{\"shape\":\"S1t\"},\"Squash\":{},\"ReadOnly\":{\"type\":\"boolean\"},\"GuessMIMETypeEnabled\":{\"type\":\"boolean\"},\"RequesterPays\":{\"type\":\"boolean\"},\"FileShareName\":{},\"CacheAttributes\":{\"shape\":\"S11\"},\"NotificationPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{}}}},\"UpdateSMBFileShare\":{\"input\":{\"type\":\"structure\",\"required\":[\"FileShareARN\"],\"members\":{\"FileShareARN\":{},\"KMSEncrypted\":{\"type\":\"boolean\"},\"KMSKey\":{},\"DefaultStorageClass\":{},\"ObjectACL\":{},\"ReadOnly\":{\"type\":\"boolean\"},\"GuessMIMETypeEnabled\":{\"type\":\"boolean\"},\"RequesterPays\":{\"type\":\"boolean\"},\"SMBACLEnabled\":{\"type\":\"boolean\"},\"AccessBasedEnumeration\":{\"type\":\"boolean\"},\"AdminUserList\":{\"shape\":\"S21\"},\"ValidUserList\":{\"shape\":\"S21\"},\"InvalidUserList\":{\"shape\":\"S21\"},\"AuditDestinationARN\":{},\"CaseSensitivity\":{},\"FileShareName\":{},\"CacheAttributes\":{\"shape\":\"S11\"},\"NotificationPolicy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"FileShareARN\":{}}}},\"UpdateSMBFileShareVisibility\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"FileSharesVisible\"],\"members\":{\"GatewayARN\":{},\"FileSharesVisible\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateSMBSecurityStrategy\":{\"input\":{\"type\":\"structure\",\"required\":[\"GatewayARN\",\"SMBSecurityStrategy\"],\"members\":{\"GatewayARN\":{},\"SMBSecurityStrategy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GatewayARN\":{}}}},\"UpdateSnapshotSchedule\":{\"input\":{\"type\":\"structure\",\"required\":[\"VolumeARN\",\"StartAt\",\"RecurrenceInHours\"],\"members\":{\"VolumeARN\":{},\"StartAt\":{\"type\":\"integer\"},\"RecurrenceInHours\":{\"type\":\"integer\"},\"Description\":{},\"Tags\":{\"shape\":\"S9\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"VolumeARN\":{}}}},\"UpdateVTLDeviceType\":{\"input\":{\"type\":\"structure\",\"required\":[\"VTLDeviceARN\",\"DeviceType\"],\"members\":{\"VTLDeviceARN\":{},\"DeviceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VTLDeviceARN\":{}}}}},\"shapes\":{\"S9\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sg\":{\"type\":\"list\",\"member\":{}},\"Sx\":{\"type\":\"string\",\"sensitive\":true},\"S11\":{\"type\":\"structure\",\"members\":{\"CacheStaleTimeoutInSeconds\":{\"type\":\"integer\"}}},\"S1m\":{\"type\":\"structure\",\"members\":{\"FileMode\":{},\"DirectoryMode\":{},\"GroupId\":{\"type\":\"long\"},\"OwnerId\":{\"type\":\"long\"}}},\"S1t\":{\"type\":\"list\",\"member\":{}},\"S21\":{\"type\":\"list\",\"member\":{}},\"S2t\":{\"type\":\"list\",\"member\":{}},\"S3q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"StartHourOfDay\",\"StartMinuteOfHour\",\"EndHourOfDay\",\"EndMinuteOfHour\",\"DaysOfWeek\"],\"members\":{\"StartHourOfDay\":{\"type\":\"integer\"},\"StartMinuteOfHour\":{\"type\":\"integer\"},\"EndHourOfDay\":{\"type\":\"integer\"},\"EndMinuteOfHour\":{\"type\":\"integer\"},\"DaysOfWeek\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}},\"AverageUploadRateLimitInBitsPerSec\":{\"type\":\"long\"},\"AverageDownloadRateLimitInBitsPerSec\":{\"type\":\"long\"}}}},\"S40\":{\"type\":\"list\",\"member\":{}},\"S49\":{\"type\":\"structure\",\"members\":{\"TargetARN\":{},\"NetworkInterfaceId\":{},\"NetworkInterfacePort\":{\"type\":\"integer\"},\"LunNumber\":{\"type\":\"integer\"},\"ChapEnabled\":{\"type\":\"boolean\"}}},\"S4i\":{\"type\":\"string\",\"sensitive\":true},\"S58\":{\"type\":\"list\",\"member\":{}},\"S77\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"TapeBarcodePrefix\",\"PoolId\",\"TapeSizeInBytes\",\"MinimumNumTapes\"],\"members\":{\"TapeBarcodePrefix\":{},\"PoolId\":{},\"TapeSizeInBytes\":{\"type\":\"long\"},\"MinimumNumTapes\":{\"type\":\"integer\"},\"Worm\":{\"type\":\"boolean\"}}}}}}");

/***/ }),

/***/ 6062:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCachediSCSIVolumes\":{\"result_key\":\"CachediSCSIVolumes\"},\"DescribeStorediSCSIVolumes\":{\"result_key\":\"StorediSCSIVolumes\"},\"DescribeTapeArchives\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"TapeArchives\"},\"DescribeTapeRecoveryPoints\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"TapeRecoveryPointInfos\"},\"DescribeTapes\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"Tapes\"},\"DescribeVTLDevices\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"VTLDevices\"},\"ListFileShares\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"non_aggregate_keys\":[\"Marker\"],\"output_token\":\"NextMarker\",\"result_key\":\"FileShareInfoList\"},\"ListFileSystemAssociations\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"non_aggregate_keys\":[\"Marker\"],\"output_token\":\"NextMarker\",\"result_key\":\"FileSystemAssociationSummaryList\"},\"ListGateways\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"Gateways\"},\"ListLocalDisks\":{\"result_key\":\"Disks\"},\"ListTagsForResource\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"non_aggregate_keys\":[\"ResourceARN\"],\"output_token\":\"Marker\",\"result_key\":\"Tags\"},\"ListTapePools\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"PoolInfos\"},\"ListTapes\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"TapeInfos\"},\"ListVolumeRecoveryPoints\":{\"result_key\":\"VolumeRecoveryPointInfos\"},\"ListVolumes\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"VolumeInfos\"}}}");

/***/ }),

/***/ 69705:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-08-10\",\"endpointPrefix\":\"streams.dynamodb\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon DynamoDB Streams\",\"serviceId\":\"DynamoDB Streams\",\"signatureVersion\":\"v4\",\"signingName\":\"dynamodb\",\"targetPrefix\":\"DynamoDBStreams_20120810\",\"uid\":\"streams-dynamodb-2012-08-10\"},\"operations\":{\"DescribeStream\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamArn\"],\"members\":{\"StreamArn\":{},\"Limit\":{\"type\":\"integer\"},\"ExclusiveStartShardId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StreamDescription\":{\"type\":\"structure\",\"members\":{\"StreamArn\":{},\"StreamLabel\":{},\"StreamStatus\":{},\"StreamViewType\":{},\"CreationRequestDateTime\":{\"type\":\"timestamp\"},\"TableName\":{},\"KeySchema\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AttributeName\",\"KeyType\"],\"members\":{\"AttributeName\":{},\"KeyType\":{}}}},\"Shards\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ShardId\":{},\"SequenceNumberRange\":{\"type\":\"structure\",\"members\":{\"StartingSequenceNumber\":{},\"EndingSequenceNumber\":{}}},\"ParentShardId\":{}}}},\"LastEvaluatedShardId\":{}}}}}},\"GetRecords\":{\"input\":{\"type\":\"structure\",\"required\":[\"ShardIterator\"],\"members\":{\"ShardIterator\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Records\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"eventID\":{},\"eventName\":{},\"eventVersion\":{},\"eventSource\":{},\"awsRegion\":{},\"dynamodb\":{\"type\":\"structure\",\"members\":{\"ApproximateCreationDateTime\":{\"type\":\"timestamp\"},\"Keys\":{\"shape\":\"Sr\"},\"NewImage\":{\"shape\":\"Sr\"},\"OldImage\":{\"shape\":\"Sr\"},\"SequenceNumber\":{},\"SizeBytes\":{\"type\":\"long\"},\"StreamViewType\":{}}},\"userIdentity\":{\"type\":\"structure\",\"members\":{\"PrincipalId\":{},\"Type\":{}}}}}},\"NextShardIterator\":{}}}},\"GetShardIterator\":{\"input\":{\"type\":\"structure\",\"required\":[\"StreamArn\",\"ShardId\",\"ShardIteratorType\"],\"members\":{\"StreamArn\":{},\"ShardId\":{},\"ShardIteratorType\":{},\"SequenceNumber\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ShardIterator\":{}}}},\"ListStreams\":{\"input\":{\"type\":\"structure\",\"members\":{\"TableName\":{},\"Limit\":{\"type\":\"integer\"},\"ExclusiveStartStreamArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Streams\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"StreamArn\":{},\"TableName\":{},\"StreamLabel\":{}}}},\"LastEvaluatedStreamArn\":{}}}}},\"shapes\":{\"Sr\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"St\"}},\"St\":{\"type\":\"structure\",\"members\":{\"S\":{},\"N\":{},\"B\":{\"type\":\"blob\"},\"SS\":{\"type\":\"list\",\"member\":{}},\"NS\":{\"type\":\"list\",\"member\":{}},\"BS\":{\"type\":\"list\",\"member\":{\"type\":\"blob\"}},\"M\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"St\"}},\"L\":{\"type\":\"list\",\"member\":{\"shape\":\"St\"}},\"NULL\":{\"type\":\"boolean\"},\"BOOL\":{\"type\":\"boolean\"}}}}}");

/***/ }),

/***/ 18467:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 18976:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2011-06-15\",\"endpointPrefix\":\"sts\",\"globalEndpoint\":\"sts.amazonaws.com\",\"protocol\":\"query\",\"serviceAbbreviation\":\"AWS STS\",\"serviceFullName\":\"AWS Security Token Service\",\"serviceId\":\"STS\",\"signatureVersion\":\"v4\",\"uid\":\"sts-2011-06-15\",\"xmlNamespace\":\"https://sts.amazonaws.com/doc/2011-06-15/\"},\"operations\":{\"AssumeRole\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"RoleSessionName\"],\"members\":{\"RoleArn\":{},\"RoleSessionName\":{},\"PolicyArns\":{\"shape\":\"S4\"},\"Policy\":{},\"DurationSeconds\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S8\"},\"TransitiveTagKeys\":{\"type\":\"list\",\"member\":{}},\"ExternalId\":{},\"SerialNumber\":{},\"TokenCode\":{},\"SourceIdentity\":{}}},\"output\":{\"resultWrapper\":\"AssumeRoleResult\",\"type\":\"structure\",\"members\":{\"Credentials\":{\"shape\":\"Si\"},\"AssumedRoleUser\":{\"shape\":\"Sn\"},\"PackedPolicySize\":{\"type\":\"integer\"},\"SourceIdentity\":{}}}},\"AssumeRoleWithSAML\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"PrincipalArn\",\"SAMLAssertion\"],\"members\":{\"RoleArn\":{},\"PrincipalArn\":{},\"SAMLAssertion\":{},\"PolicyArns\":{\"shape\":\"S4\"},\"Policy\":{},\"DurationSeconds\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"AssumeRoleWithSAMLResult\",\"type\":\"structure\",\"members\":{\"Credentials\":{\"shape\":\"Si\"},\"AssumedRoleUser\":{\"shape\":\"Sn\"},\"PackedPolicySize\":{\"type\":\"integer\"},\"Subject\":{},\"SubjectType\":{},\"Issuer\":{},\"Audience\":{},\"NameQualifier\":{},\"SourceIdentity\":{}}}},\"AssumeRoleWithWebIdentity\":{\"input\":{\"type\":\"structure\",\"required\":[\"RoleArn\",\"RoleSessionName\",\"WebIdentityToken\"],\"members\":{\"RoleArn\":{},\"RoleSessionName\":{},\"WebIdentityToken\":{},\"ProviderId\":{},\"PolicyArns\":{\"shape\":\"S4\"},\"Policy\":{},\"DurationSeconds\":{\"type\":\"integer\"}}},\"output\":{\"resultWrapper\":\"AssumeRoleWithWebIdentityResult\",\"type\":\"structure\",\"members\":{\"Credentials\":{\"shape\":\"Si\"},\"SubjectFromWebIdentityToken\":{},\"AssumedRoleUser\":{\"shape\":\"Sn\"},\"PackedPolicySize\":{\"type\":\"integer\"},\"Provider\":{},\"Audience\":{},\"SourceIdentity\":{}}}},\"DecodeAuthorizationMessage\":{\"input\":{\"type\":\"structure\",\"required\":[\"EncodedMessage\"],\"members\":{\"EncodedMessage\":{}}},\"output\":{\"resultWrapper\":\"DecodeAuthorizationMessageResult\",\"type\":\"structure\",\"members\":{\"DecodedMessage\":{}}}},\"GetAccessKeyInfo\":{\"input\":{\"type\":\"structure\",\"required\":[\"AccessKeyId\"],\"members\":{\"AccessKeyId\":{}}},\"output\":{\"resultWrapper\":\"GetAccessKeyInfoResult\",\"type\":\"structure\",\"members\":{\"Account\":{}}}},\"GetCallerIdentity\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"resultWrapper\":\"GetCallerIdentityResult\",\"type\":\"structure\",\"members\":{\"UserId\":{},\"Account\":{},\"Arn\":{}}}},\"GetFederationToken\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{},\"Policy\":{},\"PolicyArns\":{\"shape\":\"S4\"},\"DurationSeconds\":{\"type\":\"integer\"},\"Tags\":{\"shape\":\"S8\"}}},\"output\":{\"resultWrapper\":\"GetFederationTokenResult\",\"type\":\"structure\",\"members\":{\"Credentials\":{\"shape\":\"Si\"},\"FederatedUser\":{\"type\":\"structure\",\"required\":[\"FederatedUserId\",\"Arn\"],\"members\":{\"FederatedUserId\":{},\"Arn\":{}}},\"PackedPolicySize\":{\"type\":\"integer\"}}}},\"GetSessionToken\":{\"input\":{\"type\":\"structure\",\"members\":{\"DurationSeconds\":{\"type\":\"integer\"},\"SerialNumber\":{},\"TokenCode\":{}}},\"output\":{\"resultWrapper\":\"GetSessionTokenResult\",\"type\":\"structure\",\"members\":{\"Credentials\":{\"shape\":\"Si\"}}}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"arn\":{}}}},\"S8\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Si\":{\"type\":\"structure\",\"required\":[\"AccessKeyId\",\"SecretAccessKey\",\"SessionToken\",\"Expiration\"],\"members\":{\"AccessKeyId\":{},\"SecretAccessKey\":{},\"SessionToken\":{},\"Expiration\":{\"type\":\"timestamp\"}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"AssumedRoleId\",\"Arn\"],\"members\":{\"AssumedRoleId\":{},\"Arn\":{}}}}}");

/***/ }),

/***/ 82952:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 77180:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2013-04-15\",\"endpointPrefix\":\"support\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"AWS Support\",\"serviceId\":\"Support\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSSupport_20130415\",\"uid\":\"support-2013-04-15\"},\"operations\":{\"AddAttachmentsToSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"attachments\"],\"members\":{\"attachmentSetId\":{},\"attachments\":{\"type\":\"list\",\"member\":{\"shape\":\"S4\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"attachmentSetId\":{},\"expiryTime\":{}}}},\"AddCommunicationToCase\":{\"input\":{\"type\":\"structure\",\"required\":[\"communicationBody\"],\"members\":{\"caseId\":{},\"communicationBody\":{},\"ccEmailAddresses\":{\"shape\":\"Sc\"},\"attachmentSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"result\":{\"type\":\"boolean\"}}}},\"CreateCase\":{\"input\":{\"type\":\"structure\",\"required\":[\"subject\",\"communicationBody\"],\"members\":{\"subject\":{},\"serviceCode\":{},\"severityCode\":{},\"categoryCode\":{},\"communicationBody\":{},\"ccEmailAddresses\":{\"shape\":\"Sc\"},\"language\":{},\"issueType\":{},\"attachmentSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"caseId\":{}}}},\"DescribeAttachment\":{\"input\":{\"type\":\"structure\",\"required\":[\"attachmentId\"],\"members\":{\"attachmentId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"attachment\":{\"shape\":\"S4\"}}}},\"DescribeCases\":{\"input\":{\"type\":\"structure\",\"members\":{\"caseIdList\":{\"type\":\"list\",\"member\":{}},\"displayId\":{},\"afterTime\":{},\"beforeTime\":{},\"includeResolvedCases\":{\"type\":\"boolean\"},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"},\"language\":{},\"includeCommunications\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"cases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"caseId\":{},\"displayId\":{},\"subject\":{},\"status\":{},\"serviceCode\":{},\"categoryCode\":{},\"severityCode\":{},\"submittedBy\":{},\"timeCreated\":{},\"recentCommunications\":{\"type\":\"structure\",\"members\":{\"communications\":{\"shape\":\"S17\"},\"nextToken\":{}}},\"ccEmailAddresses\":{\"shape\":\"Sc\"},\"language\":{}}}},\"nextToken\":{}}}},\"DescribeCommunications\":{\"input\":{\"type\":\"structure\",\"required\":[\"caseId\"],\"members\":{\"caseId\":{},\"beforeTime\":{},\"afterTime\":{},\"nextToken\":{},\"maxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"communications\":{\"shape\":\"S17\"},\"nextToken\":{}}}},\"DescribeServices\":{\"input\":{\"type\":\"structure\",\"members\":{\"serviceCodeList\":{\"type\":\"list\",\"member\":{}},\"language\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"code\":{},\"name\":{},\"categories\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"code\":{},\"name\":{}}}}}}}}}},\"DescribeSeverityLevels\":{\"input\":{\"type\":\"structure\",\"members\":{\"language\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"severityLevels\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"code\":{},\"name\":{}}}}}}},\"DescribeTrustedAdvisorCheckRefreshStatuses\":{\"input\":{\"type\":\"structure\",\"required\":[\"checkIds\"],\"members\":{\"checkIds\":{\"shape\":\"S1t\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"statuses\"],\"members\":{\"statuses\":{\"type\":\"list\",\"member\":{\"shape\":\"S1x\"}}}}},\"DescribeTrustedAdvisorCheckResult\":{\"input\":{\"type\":\"structure\",\"required\":[\"checkId\"],\"members\":{\"checkId\":{},\"language\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"result\":{\"type\":\"structure\",\"required\":[\"checkId\",\"timestamp\",\"status\",\"resourcesSummary\",\"categorySpecificSummary\",\"flaggedResources\"],\"members\":{\"checkId\":{},\"timestamp\":{},\"status\":{},\"resourcesSummary\":{\"shape\":\"S22\"},\"categorySpecificSummary\":{\"shape\":\"S23\"},\"flaggedResources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"status\",\"resourceId\",\"metadata\"],\"members\":{\"status\":{},\"region\":{},\"resourceId\":{},\"isSuppressed\":{\"type\":\"boolean\"},\"metadata\":{\"shape\":\"S1t\"}}}}}}}}},\"DescribeTrustedAdvisorCheckSummaries\":{\"input\":{\"type\":\"structure\",\"required\":[\"checkIds\"],\"members\":{\"checkIds\":{\"shape\":\"S1t\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"summaries\"],\"members\":{\"summaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"checkId\",\"timestamp\",\"status\",\"resourcesSummary\",\"categorySpecificSummary\"],\"members\":{\"checkId\":{},\"timestamp\":{},\"status\":{},\"hasFlaggedResources\":{\"type\":\"boolean\"},\"resourcesSummary\":{\"shape\":\"S22\"},\"categorySpecificSummary\":{\"shape\":\"S23\"}}}}}}},\"DescribeTrustedAdvisorChecks\":{\"input\":{\"type\":\"structure\",\"required\":[\"language\"],\"members\":{\"language\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"checks\"],\"members\":{\"checks\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"description\",\"category\",\"metadata\"],\"members\":{\"id\":{},\"name\":{},\"description\":{},\"category\":{},\"metadata\":{\"shape\":\"S1t\"}}}}}}},\"RefreshTrustedAdvisorCheck\":{\"input\":{\"type\":\"structure\",\"required\":[\"checkId\"],\"members\":{\"checkId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{\"shape\":\"S1x\"}}}},\"ResolveCase\":{\"input\":{\"type\":\"structure\",\"members\":{\"caseId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"initialCaseStatus\":{},\"finalCaseStatus\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"fileName\":{},\"data\":{\"type\":\"blob\"}}},\"Sc\":{\"type\":\"list\",\"member\":{}},\"S17\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"caseId\":{},\"body\":{},\"submittedBy\":{},\"timeCreated\":{},\"attachmentSet\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"attachmentId\":{},\"fileName\":{}}}}}}},\"S1t\":{\"type\":\"list\",\"member\":{}},\"S1x\":{\"type\":\"structure\",\"required\":[\"checkId\",\"status\",\"millisUntilNextRefreshable\"],\"members\":{\"checkId\":{},\"status\":{},\"millisUntilNextRefreshable\":{\"type\":\"long\"}}},\"S22\":{\"type\":\"structure\",\"required\":[\"resourcesProcessed\",\"resourcesFlagged\",\"resourcesIgnored\",\"resourcesSuppressed\"],\"members\":{\"resourcesProcessed\":{\"type\":\"long\"},\"resourcesFlagged\":{\"type\":\"long\"},\"resourcesIgnored\":{\"type\":\"long\"},\"resourcesSuppressed\":{\"type\":\"long\"}}},\"S23\":{\"type\":\"structure\",\"members\":{\"costOptimizing\":{\"type\":\"structure\",\"required\":[\"estimatedMonthlySavings\",\"estimatedPercentMonthlySavings\"],\"members\":{\"estimatedMonthlySavings\":{\"type\":\"double\"},\"estimatedPercentMonthlySavings\":{\"type\":\"double\"}}}}}}}");

/***/ }),

/***/ 83878:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCases\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"cases\"},\"DescribeCommunications\":{\"input_token\":\"nextToken\",\"limit_key\":\"maxResults\",\"output_token\":\"nextToken\",\"result_key\":\"communications\"},\"DescribeServices\":{\"result_key\":\"services\"},\"DescribeTrustedAdvisorCheckRefreshStatuses\":{\"result_key\":\"statuses\"},\"DescribeTrustedAdvisorCheckSummaries\":{\"result_key\":\"summaries\"}}}");

/***/ }),

/***/ 4974:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2012-01-25\",\"endpointPrefix\":\"swf\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Amazon SWF\",\"serviceFullName\":\"Amazon Simple Workflow Service\",\"serviceId\":\"SWF\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"SimpleWorkflowService\",\"uid\":\"swf-2012-01-25\"},\"operations\":{\"CountClosedWorkflowExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{},\"startTimeFilter\":{\"shape\":\"S3\"},\"closeTimeFilter\":{\"shape\":\"S3\"},\"executionFilter\":{\"shape\":\"S5\"},\"typeFilter\":{\"shape\":\"S7\"},\"tagFilter\":{\"shape\":\"Sa\"},\"closeStatusFilter\":{\"shape\":\"Sc\"}}},\"output\":{\"shape\":\"Se\"}},\"CountOpenWorkflowExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"startTimeFilter\"],\"members\":{\"domain\":{},\"startTimeFilter\":{\"shape\":\"S3\"},\"typeFilter\":{\"shape\":\"S7\"},\"tagFilter\":{\"shape\":\"Sa\"},\"executionFilter\":{\"shape\":\"S5\"}}},\"output\":{\"shape\":\"Se\"}},\"CountPendingActivityTasks\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"taskList\"],\"members\":{\"domain\":{},\"taskList\":{\"shape\":\"Sj\"}}},\"output\":{\"shape\":\"Sk\"}},\"CountPendingDecisionTasks\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"taskList\"],\"members\":{\"domain\":{},\"taskList\":{\"shape\":\"Sj\"}}},\"output\":{\"shape\":\"Sk\"}},\"DeprecateActivityType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"activityType\"],\"members\":{\"domain\":{},\"activityType\":{\"shape\":\"Sn\"}}}},\"DeprecateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"DeprecateWorkflowType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowType\"],\"members\":{\"domain\":{},\"workflowType\":{\"shape\":\"Sr\"}}}},\"DescribeActivityType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"activityType\"],\"members\":{\"domain\":{},\"activityType\":{\"shape\":\"Sn\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"typeInfo\",\"configuration\"],\"members\":{\"typeInfo\":{\"shape\":\"Su\"},\"configuration\":{\"type\":\"structure\",\"members\":{\"defaultTaskStartToCloseTimeout\":{},\"defaultTaskHeartbeatTimeout\":{},\"defaultTaskList\":{\"shape\":\"Sj\"},\"defaultTaskPriority\":{},\"defaultTaskScheduleToStartTimeout\":{},\"defaultTaskScheduleToCloseTimeout\":{}}}}}},\"DescribeDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainInfo\",\"configuration\"],\"members\":{\"domainInfo\":{\"shape\":\"S12\"},\"configuration\":{\"type\":\"structure\",\"required\":[\"workflowExecutionRetentionPeriodInDays\"],\"members\":{\"workflowExecutionRetentionPeriodInDays\":{}}}}}},\"DescribeWorkflowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"execution\"],\"members\":{\"domain\":{},\"execution\":{\"shape\":\"S17\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"executionInfo\",\"executionConfiguration\",\"openCounts\"],\"members\":{\"executionInfo\":{\"shape\":\"S1a\"},\"executionConfiguration\":{\"type\":\"structure\",\"required\":[\"taskStartToCloseTimeout\",\"executionStartToCloseTimeout\",\"taskList\",\"childPolicy\"],\"members\":{\"taskStartToCloseTimeout\":{},\"executionStartToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"childPolicy\":{},\"lambdaRole\":{}}},\"openCounts\":{\"type\":\"structure\",\"required\":[\"openActivityTasks\",\"openDecisionTasks\",\"openTimers\",\"openChildWorkflowExecutions\"],\"members\":{\"openActivityTasks\":{\"type\":\"integer\"},\"openDecisionTasks\":{\"type\":\"integer\"},\"openTimers\":{\"type\":\"integer\"},\"openChildWorkflowExecutions\":{\"type\":\"integer\"},\"openLambdaFunctions\":{\"type\":\"integer\"}}},\"latestActivityTaskTimestamp\":{\"type\":\"timestamp\"},\"latestExecutionContext\":{}}}},\"DescribeWorkflowType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowType\"],\"members\":{\"domain\":{},\"workflowType\":{\"shape\":\"Sr\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"typeInfo\",\"configuration\"],\"members\":{\"typeInfo\":{\"shape\":\"S1m\"},\"configuration\":{\"type\":\"structure\",\"members\":{\"defaultTaskStartToCloseTimeout\":{},\"defaultExecutionStartToCloseTimeout\":{},\"defaultTaskList\":{\"shape\":\"Sj\"},\"defaultTaskPriority\":{},\"defaultChildPolicy\":{},\"defaultLambdaRole\":{}}}}}},\"GetWorkflowExecutionHistory\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"execution\"],\"members\":{\"domain\":{},\"execution\":{\"shape\":\"S17\"},\"nextPageToken\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"events\"],\"members\":{\"events\":{\"shape\":\"S1t\"},\"nextPageToken\":{}}}},\"ListActivityTypes\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"registrationStatus\"],\"members\":{\"domain\":{},\"name\":{},\"registrationStatus\":{},\"nextPageToken\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"typeInfos\"],\"members\":{\"typeInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"Su\"}},\"nextPageToken\":{}}}},\"ListClosedWorkflowExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\"],\"members\":{\"domain\":{},\"startTimeFilter\":{\"shape\":\"S3\"},\"closeTimeFilter\":{\"shape\":\"S3\"},\"executionFilter\":{\"shape\":\"S5\"},\"closeStatusFilter\":{\"shape\":\"Sc\"},\"typeFilter\":{\"shape\":\"S7\"},\"tagFilter\":{\"shape\":\"Sa\"},\"nextPageToken\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"shape\":\"S4g\"}},\"ListDomains\":{\"input\":{\"type\":\"structure\",\"required\":[\"registrationStatus\"],\"members\":{\"nextPageToken\":{},\"registrationStatus\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"domainInfos\"],\"members\":{\"domainInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"S12\"}},\"nextPageToken\":{}}}},\"ListOpenWorkflowExecutions\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"startTimeFilter\"],\"members\":{\"domain\":{},\"startTimeFilter\":{\"shape\":\"S3\"},\"typeFilter\":{\"shape\":\"S7\"},\"tagFilter\":{\"shape\":\"Sa\"},\"nextPageToken\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"},\"executionFilter\":{\"shape\":\"S5\"}}},\"output\":{\"shape\":\"S4g\"}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\"],\"members\":{\"resourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"tags\":{\"shape\":\"S4o\"}}}},\"ListWorkflowTypes\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"registrationStatus\"],\"members\":{\"domain\":{},\"name\":{},\"registrationStatus\":{},\"nextPageToken\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"typeInfos\"],\"members\":{\"typeInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"S1m\"}},\"nextPageToken\":{}}}},\"PollForActivityTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"taskList\"],\"members\":{\"domain\":{},\"taskList\":{\"shape\":\"Sj\"},\"identity\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"taskToken\",\"activityId\",\"startedEventId\",\"workflowExecution\",\"activityType\"],\"members\":{\"taskToken\":{},\"activityId\":{},\"startedEventId\":{\"type\":\"long\"},\"workflowExecution\":{\"shape\":\"S17\"},\"activityType\":{\"shape\":\"Sn\"},\"input\":{}}}},\"PollForDecisionTask\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"taskList\"],\"members\":{\"domain\":{},\"taskList\":{\"shape\":\"Sj\"},\"identity\":{},\"nextPageToken\":{},\"maximumPageSize\":{\"type\":\"integer\"},\"reverseOrder\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"taskToken\",\"startedEventId\",\"workflowExecution\",\"workflowType\",\"events\"],\"members\":{\"taskToken\":{},\"startedEventId\":{\"type\":\"long\"},\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"events\":{\"shape\":\"S1t\"},\"nextPageToken\":{},\"previousStartedEventId\":{\"type\":\"long\"}}}},\"RecordActivityTaskHeartbeat\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{},\"details\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"cancelRequested\"],\"members\":{\"cancelRequested\":{\"type\":\"boolean\"}}}},\"RegisterActivityType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"name\",\"version\"],\"members\":{\"domain\":{},\"name\":{},\"version\":{},\"description\":{},\"defaultTaskStartToCloseTimeout\":{},\"defaultTaskHeartbeatTimeout\":{},\"defaultTaskList\":{\"shape\":\"Sj\"},\"defaultTaskPriority\":{},\"defaultTaskScheduleToStartTimeout\":{},\"defaultTaskScheduleToCloseTimeout\":{}}}},\"RegisterDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\",\"workflowExecutionRetentionPeriodInDays\"],\"members\":{\"name\":{},\"description\":{},\"workflowExecutionRetentionPeriodInDays\":{},\"tags\":{\"shape\":\"S4o\"}}}},\"RegisterWorkflowType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"name\",\"version\"],\"members\":{\"domain\":{},\"name\":{},\"version\":{},\"description\":{},\"defaultTaskStartToCloseTimeout\":{},\"defaultExecutionStartToCloseTimeout\":{},\"defaultTaskList\":{\"shape\":\"Sj\"},\"defaultTaskPriority\":{},\"defaultChildPolicy\":{},\"defaultLambdaRole\":{}}}},\"RequestCancelWorkflowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowId\"],\"members\":{\"domain\":{},\"workflowId\":{},\"runId\":{}}}},\"RespondActivityTaskCanceled\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{},\"details\":{}}}},\"RespondActivityTaskCompleted\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{},\"result\":{}}}},\"RespondActivityTaskFailed\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{},\"reason\":{},\"details\":{}}}},\"RespondDecisionTaskCompleted\":{\"input\":{\"type\":\"structure\",\"required\":[\"taskToken\"],\"members\":{\"taskToken\":{},\"decisions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"decisionType\"],\"members\":{\"decisionType\":{},\"scheduleActivityTaskDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"activityType\",\"activityId\"],\"members\":{\"activityType\":{\"shape\":\"Sn\"},\"activityId\":{},\"control\":{},\"input\":{},\"scheduleToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"scheduleToStartTimeout\":{},\"startToCloseTimeout\":{},\"heartbeatTimeout\":{}}},\"requestCancelActivityTaskDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"activityId\"],\"members\":{\"activityId\":{}}},\"completeWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"members\":{\"result\":{}}},\"failWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"members\":{\"reason\":{},\"details\":{}}},\"cancelWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"members\":{\"details\":{}}},\"continueAsNewWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"members\":{\"input\":{},\"executionStartToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"taskStartToCloseTimeout\":{},\"childPolicy\":{},\"tagList\":{\"shape\":\"S1c\"},\"workflowTypeVersion\":{},\"lambdaRole\":{}}},\"recordMarkerDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"markerName\"],\"members\":{\"markerName\":{},\"details\":{}}},\"startTimerDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\",\"startToFireTimeout\"],\"members\":{\"timerId\":{},\"control\":{},\"startToFireTimeout\":{}}},\"cancelTimerDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\"],\"members\":{\"timerId\":{}}},\"signalExternalWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"signalName\"],\"members\":{\"workflowId\":{},\"runId\":{},\"signalName\":{},\"input\":{},\"control\":{}}},\"requestCancelExternalWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\"],\"members\":{\"workflowId\":{},\"runId\":{},\"control\":{}}},\"startChildWorkflowExecutionDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"workflowType\",\"workflowId\"],\"members\":{\"workflowType\":{\"shape\":\"Sr\"},\"workflowId\":{},\"control\":{},\"input\":{},\"executionStartToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"taskStartToCloseTimeout\":{},\"childPolicy\":{},\"tagList\":{\"shape\":\"S1c\"},\"lambdaRole\":{}}},\"scheduleLambdaFunctionDecisionAttributes\":{\"type\":\"structure\",\"required\":[\"id\",\"name\"],\"members\":{\"id\":{},\"name\":{},\"control\":{},\"input\":{},\"startToCloseTimeout\":{}}}}}},\"executionContext\":{}}}},\"SignalWorkflowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowId\",\"signalName\"],\"members\":{\"domain\":{},\"workflowId\":{},\"runId\":{},\"signalName\":{},\"input\":{}}}},\"StartWorkflowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowId\",\"workflowType\"],\"members\":{\"domain\":{},\"workflowId\":{},\"workflowType\":{\"shape\":\"Sr\"},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"input\":{},\"executionStartToCloseTimeout\":{},\"tagList\":{\"shape\":\"S1c\"},\"taskStartToCloseTimeout\":{},\"childPolicy\":{},\"lambdaRole\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"runId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tags\"],\"members\":{\"resourceArn\":{},\"tags\":{\"shape\":\"S4o\"}}}},\"TerminateWorkflowExecution\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowId\"],\"members\":{\"domain\":{},\"workflowId\":{},\"runId\":{},\"reason\":{},\"details\":{},\"childPolicy\":{}}}},\"UndeprecateActivityType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"activityType\"],\"members\":{\"domain\":{},\"activityType\":{\"shape\":\"Sn\"}}}},\"UndeprecateDomain\":{\"input\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}}},\"UndeprecateWorkflowType\":{\"input\":{\"type\":\"structure\",\"required\":[\"domain\",\"workflowType\"],\"members\":{\"domain\":{},\"workflowType\":{\"shape\":\"Sr\"}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"resourceArn\",\"tagKeys\"],\"members\":{\"resourceArn\":{},\"tagKeys\":{\"type\":\"list\",\"member\":{}}}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"oldestDate\"],\"members\":{\"oldestDate\":{\"type\":\"timestamp\"},\"latestDate\":{\"type\":\"timestamp\"}}},\"S5\":{\"type\":\"structure\",\"required\":[\"workflowId\"],\"members\":{\"workflowId\":{}}},\"S7\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{},\"version\":{}}},\"Sa\":{\"type\":\"structure\",\"required\":[\"tag\"],\"members\":{\"tag\":{}}},\"Sc\":{\"type\":\"structure\",\"required\":[\"status\"],\"members\":{\"status\":{}}},\"Se\":{\"type\":\"structure\",\"required\":[\"count\"],\"members\":{\"count\":{\"type\":\"integer\"},\"truncated\":{\"type\":\"boolean\"}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"name\"],\"members\":{\"name\":{}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"count\"],\"members\":{\"count\":{\"type\":\"integer\"},\"truncated\":{\"type\":\"boolean\"}}},\"Sn\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{},\"version\":{}}},\"Sr\":{\"type\":\"structure\",\"required\":[\"name\",\"version\"],\"members\":{\"name\":{},\"version\":{}}},\"Su\":{\"type\":\"structure\",\"required\":[\"activityType\",\"status\",\"creationDate\"],\"members\":{\"activityType\":{\"shape\":\"Sn\"},\"status\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"deprecationDate\":{\"type\":\"timestamp\"}}},\"S12\":{\"type\":\"structure\",\"required\":[\"name\",\"status\"],\"members\":{\"name\":{},\"status\":{},\"description\":{},\"arn\":{}}},\"S17\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"runId\"],\"members\":{\"workflowId\":{},\"runId\":{}}},\"S1a\":{\"type\":\"structure\",\"required\":[\"execution\",\"workflowType\",\"startTimestamp\",\"executionStatus\"],\"members\":{\"execution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"startTimestamp\":{\"type\":\"timestamp\"},\"closeTimestamp\":{\"type\":\"timestamp\"},\"executionStatus\":{},\"closeStatus\":{},\"parent\":{\"shape\":\"S17\"},\"tagList\":{\"shape\":\"S1c\"},\"cancelRequested\":{\"type\":\"boolean\"}}},\"S1c\":{\"type\":\"list\",\"member\":{}},\"S1m\":{\"type\":\"structure\",\"required\":[\"workflowType\",\"status\",\"creationDate\"],\"members\":{\"workflowType\":{\"shape\":\"Sr\"},\"status\":{},\"description\":{},\"creationDate\":{\"type\":\"timestamp\"},\"deprecationDate\":{\"type\":\"timestamp\"}}},\"S1t\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"eventTimestamp\",\"eventType\",\"eventId\"],\"members\":{\"eventTimestamp\":{\"type\":\"timestamp\"},\"eventType\":{},\"eventId\":{\"type\":\"long\"},\"workflowExecutionStartedEventAttributes\":{\"type\":\"structure\",\"required\":[\"childPolicy\",\"taskList\",\"workflowType\"],\"members\":{\"input\":{},\"executionStartToCloseTimeout\":{},\"taskStartToCloseTimeout\":{},\"childPolicy\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"workflowType\":{\"shape\":\"Sr\"},\"tagList\":{\"shape\":\"S1c\"},\"continuedExecutionRunId\":{},\"parentWorkflowExecution\":{\"shape\":\"S17\"},\"parentInitiatedEventId\":{\"type\":\"long\"},\"lambdaRole\":{}}},\"workflowExecutionCompletedEventAttributes\":{\"type\":\"structure\",\"required\":[\"decisionTaskCompletedEventId\"],\"members\":{\"result\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"completeWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"workflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"decisionTaskCompletedEventId\"],\"members\":{\"reason\":{},\"details\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"failWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"workflowExecutionTimedOutEventAttributes\":{\"type\":\"structure\",\"required\":[\"timeoutType\",\"childPolicy\"],\"members\":{\"timeoutType\":{},\"childPolicy\":{}}},\"workflowExecutionCanceledEventAttributes\":{\"type\":\"structure\",\"required\":[\"decisionTaskCompletedEventId\"],\"members\":{\"details\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"cancelWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"workflowExecutionContinuedAsNewEventAttributes\":{\"type\":\"structure\",\"required\":[\"decisionTaskCompletedEventId\",\"newExecutionRunId\",\"taskList\",\"childPolicy\",\"workflowType\"],\"members\":{\"input\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"newExecutionRunId\":{},\"executionStartToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"taskStartToCloseTimeout\":{},\"childPolicy\":{},\"tagList\":{\"shape\":\"S1c\"},\"workflowType\":{\"shape\":\"Sr\"},\"lambdaRole\":{}}},\"continueAsNewWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"workflowExecutionTerminatedEventAttributes\":{\"type\":\"structure\",\"required\":[\"childPolicy\"],\"members\":{\"reason\":{},\"details\":{},\"childPolicy\":{},\"cause\":{}}},\"workflowExecutionCancelRequestedEventAttributes\":{\"type\":\"structure\",\"members\":{\"externalWorkflowExecution\":{\"shape\":\"S17\"},\"externalInitiatedEventId\":{\"type\":\"long\"},\"cause\":{}}},\"decisionTaskScheduledEventAttributes\":{\"type\":\"structure\",\"required\":[\"taskList\"],\"members\":{\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"startToCloseTimeout\":{}}},\"decisionTaskStartedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\"],\"members\":{\"identity\":{},\"scheduledEventId\":{\"type\":\"long\"}}},\"decisionTaskCompletedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"executionContext\":{},\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"decisionTaskTimedOutEventAttributes\":{\"type\":\"structure\",\"required\":[\"timeoutType\",\"scheduledEventId\",\"startedEventId\"],\"members\":{\"timeoutType\":{},\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"activityTaskScheduledEventAttributes\":{\"type\":\"structure\",\"required\":[\"activityType\",\"activityId\",\"taskList\",\"decisionTaskCompletedEventId\"],\"members\":{\"activityType\":{\"shape\":\"Sn\"},\"activityId\":{},\"input\":{},\"control\":{},\"scheduleToStartTimeout\":{},\"scheduleToCloseTimeout\":{},\"startToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"heartbeatTimeout\":{}}},\"activityTaskStartedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\"],\"members\":{\"identity\":{},\"scheduledEventId\":{\"type\":\"long\"}}},\"activityTaskCompletedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"result\":{},\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"activityTaskFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"reason\":{},\"details\":{},\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"activityTaskTimedOutEventAttributes\":{\"type\":\"structure\",\"required\":[\"timeoutType\",\"scheduledEventId\",\"startedEventId\"],\"members\":{\"timeoutType\":{},\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"},\"details\":{}}},\"activityTaskCanceledEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"details\":{},\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"},\"latestCancelRequestedEventId\":{\"type\":\"long\"}}},\"activityTaskCancelRequestedEventAttributes\":{\"type\":\"structure\",\"required\":[\"decisionTaskCompletedEventId\",\"activityId\"],\"members\":{\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"activityId\":{}}},\"workflowExecutionSignaledEventAttributes\":{\"type\":\"structure\",\"required\":[\"signalName\"],\"members\":{\"signalName\":{},\"input\":{},\"externalWorkflowExecution\":{\"shape\":\"S17\"},\"externalInitiatedEventId\":{\"type\":\"long\"}}},\"markerRecordedEventAttributes\":{\"type\":\"structure\",\"required\":[\"markerName\",\"decisionTaskCompletedEventId\"],\"members\":{\"markerName\":{},\"details\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"recordMarkerFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"markerName\",\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"markerName\":{},\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"timerStartedEventAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\",\"startToFireTimeout\",\"decisionTaskCompletedEventId\"],\"members\":{\"timerId\":{},\"control\":{},\"startToFireTimeout\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"timerFiredEventAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\",\"startedEventId\"],\"members\":{\"timerId\":{},\"startedEventId\":{\"type\":\"long\"}}},\"timerCanceledEventAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\",\"startedEventId\",\"decisionTaskCompletedEventId\"],\"members\":{\"timerId\":{},\"startedEventId\":{\"type\":\"long\"},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"startChildWorkflowExecutionInitiatedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"workflowType\",\"taskList\",\"decisionTaskCompletedEventId\",\"childPolicy\"],\"members\":{\"workflowId\":{},\"workflowType\":{\"shape\":\"Sr\"},\"control\":{},\"input\":{},\"executionStartToCloseTimeout\":{},\"taskList\":{\"shape\":\"Sj\"},\"taskPriority\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"childPolicy\":{},\"taskStartToCloseTimeout\":{},\"tagList\":{\"shape\":\"S1c\"},\"lambdaRole\":{}}},\"childWorkflowExecutionStartedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"workflowType\",\"initiatedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"initiatedEventId\":{\"type\":\"long\"}}},\"childWorkflowExecutionCompletedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"workflowType\",\"initiatedEventId\",\"startedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"result\":{},\"initiatedEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"childWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"workflowType\",\"initiatedEventId\",\"startedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"reason\":{},\"details\":{},\"initiatedEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"childWorkflowExecutionTimedOutEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"workflowType\",\"timeoutType\",\"initiatedEventId\",\"startedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"timeoutType\":{},\"initiatedEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"childWorkflowExecutionCanceledEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"workflowType\",\"initiatedEventId\",\"startedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"details\":{},\"initiatedEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"childWorkflowExecutionTerminatedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"workflowType\",\"initiatedEventId\",\"startedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"workflowType\":{\"shape\":\"Sr\"},\"initiatedEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"}}},\"signalExternalWorkflowExecutionInitiatedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"signalName\",\"decisionTaskCompletedEventId\"],\"members\":{\"workflowId\":{},\"runId\":{},\"signalName\":{},\"input\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"control\":{}}},\"externalWorkflowExecutionSignaledEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"initiatedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"initiatedEventId\":{\"type\":\"long\"}}},\"signalExternalWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"cause\",\"initiatedEventId\",\"decisionTaskCompletedEventId\"],\"members\":{\"workflowId\":{},\"runId\":{},\"cause\":{},\"initiatedEventId\":{\"type\":\"long\"},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"control\":{}}},\"externalWorkflowExecutionCancelRequestedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowExecution\",\"initiatedEventId\"],\"members\":{\"workflowExecution\":{\"shape\":\"S17\"},\"initiatedEventId\":{\"type\":\"long\"}}},\"requestCancelExternalWorkflowExecutionInitiatedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"decisionTaskCompletedEventId\"],\"members\":{\"workflowId\":{},\"runId\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"control\":{}}},\"requestCancelExternalWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowId\",\"cause\",\"initiatedEventId\",\"decisionTaskCompletedEventId\"],\"members\":{\"workflowId\":{},\"runId\":{},\"cause\":{},\"initiatedEventId\":{\"type\":\"long\"},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"control\":{}}},\"scheduleActivityTaskFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"activityType\",\"activityId\",\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"activityType\":{\"shape\":\"Sn\"},\"activityId\":{},\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"requestCancelActivityTaskFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"activityId\",\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"activityId\":{},\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"startTimerFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\",\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"timerId\":{},\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"cancelTimerFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"timerId\",\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"timerId\":{},\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"startChildWorkflowExecutionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"workflowType\",\"cause\",\"workflowId\",\"initiatedEventId\",\"decisionTaskCompletedEventId\"],\"members\":{\"workflowType\":{\"shape\":\"Sr\"},\"cause\":{},\"workflowId\":{},\"initiatedEventId\":{\"type\":\"long\"},\"decisionTaskCompletedEventId\":{\"type\":\"long\"},\"control\":{}}},\"lambdaFunctionScheduledEventAttributes\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"decisionTaskCompletedEventId\"],\"members\":{\"id\":{},\"name\":{},\"control\":{},\"input\":{},\"startToCloseTimeout\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"lambdaFunctionStartedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\"],\"members\":{\"scheduledEventId\":{\"type\":\"long\"}}},\"lambdaFunctionCompletedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"},\"result\":{}}},\"lambdaFunctionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"},\"reason\":{},\"details\":{}}},\"lambdaFunctionTimedOutEventAttributes\":{\"type\":\"structure\",\"required\":[\"scheduledEventId\",\"startedEventId\"],\"members\":{\"scheduledEventId\":{\"type\":\"long\"},\"startedEventId\":{\"type\":\"long\"},\"timeoutType\":{}}},\"scheduleLambdaFunctionFailedEventAttributes\":{\"type\":\"structure\",\"required\":[\"id\",\"name\",\"cause\",\"decisionTaskCompletedEventId\"],\"members\":{\"id\":{},\"name\":{},\"cause\":{},\"decisionTaskCompletedEventId\":{\"type\":\"long\"}}},\"startLambdaFunctionFailedEventAttributes\":{\"type\":\"structure\",\"members\":{\"scheduledEventId\":{\"type\":\"long\"},\"cause\":{},\"message\":{}}}}}},\"S4g\":{\"type\":\"structure\",\"required\":[\"executionInfos\"],\"members\":{\"executionInfos\":{\"type\":\"list\",\"member\":{\"shape\":\"S1a\"}},\"nextPageToken\":{}}},\"S4o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"key\"],\"members\":{\"key\":{},\"value\":{}}}}}}");

/***/ }),

/***/ 65798:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"GetWorkflowExecutionHistory\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"events\"},\"ListActivityTypes\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"typeInfos\"},\"ListClosedWorkflowExecutions\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"executionInfos\"},\"ListDomains\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"domainInfos\"},\"ListOpenWorkflowExecutions\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"executionInfos\"},\"ListWorkflowTypes\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"typeInfos\"},\"PollForDecisionTask\":{\"input_token\":\"nextPageToken\",\"limit_key\":\"maximumPageSize\",\"output_token\":\"nextPageToken\",\"result_key\":\"events\"}}}");

/***/ }),

/***/ 82853:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-11\",\"endpointPrefix\":\"synthetics\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Synthetics\",\"serviceFullName\":\"Synthetics\",\"serviceId\":\"synthetics\",\"signatureVersion\":\"v4\",\"signingName\":\"synthetics\",\"uid\":\"synthetics-2017-10-11\"},\"operations\":{\"CreateCanary\":{\"http\":{\"requestUri\":\"/canary\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Code\",\"ArtifactS3Location\",\"ExecutionRoleArn\",\"Schedule\",\"RuntimeVersion\"],\"members\":{\"Name\":{},\"Code\":{\"shape\":\"S3\"},\"ArtifactS3Location\":{},\"ExecutionRoleArn\":{},\"Schedule\":{\"shape\":\"S7\"},\"RunConfig\":{\"shape\":\"S9\"},\"SuccessRetentionPeriodInDays\":{\"type\":\"integer\"},\"FailureRetentionPeriodInDays\":{\"type\":\"integer\"},\"RuntimeVersion\":{},\"VpcConfig\":{\"shape\":\"Sh\"},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Canary\":{\"shape\":\"Sq\"}}}},\"DeleteCanary\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/canary/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeCanaries\":{\"http\":{\"requestUri\":\"/canaries\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Canaries\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}},\"NextToken\":{}}}},\"DescribeCanariesLastRun\":{\"http\":{\"requestUri\":\"/canaries/last-run\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CanariesLastRun\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"CanaryName\":{},\"LastRun\":{\"shape\":\"S1f\"}}}},\"NextToken\":{}}}},\"DescribeRuntimeVersions\":{\"http\":{\"requestUri\":\"/runtime-versions\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuntimeVersions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VersionName\":{},\"Description\":{},\"ReleaseDate\":{\"type\":\"timestamp\"},\"DeprecationDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetCanary\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/canary/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Canary\":{\"shape\":\"Sq\"}}}},\"GetCanaryRuns\":{\"http\":{\"requestUri\":\"/canary/{name}/runs\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"CanaryRuns\":{\"type\":\"list\",\"member\":{\"shape\":\"S1f\"}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sm\"}}}},\"StartCanary\":{\"http\":{\"requestUri\":\"/canary/{name}/start\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StopCanary\":{\"http\":{\"requestUri\":\"/canary/{name}/stop\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{resourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"resourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCanary\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/canary/{name}\"},\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{\"location\":\"uri\",\"locationName\":\"name\"},\"Code\":{\"shape\":\"S3\"},\"ExecutionRoleArn\":{},\"RuntimeVersion\":{},\"Schedule\":{\"shape\":\"S7\"},\"RunConfig\":{\"shape\":\"S9\"},\"SuccessRetentionPeriodInDays\":{\"type\":\"integer\"},\"FailureRetentionPeriodInDays\":{\"type\":\"integer\"},\"VpcConfig\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S3\":{\"type\":\"structure\",\"required\":[\"Handler\"],\"members\":{\"S3Bucket\":{},\"S3Key\":{},\"S3Version\":{},\"ZipFile\":{\"type\":\"blob\"},\"Handler\":{}}},\"S7\":{\"type\":\"structure\",\"required\":[\"Expression\"],\"members\":{\"Expression\":{},\"DurationInSeconds\":{\"type\":\"long\"}}},\"S9\":{\"type\":\"structure\",\"members\":{\"TimeoutInSeconds\":{\"type\":\"integer\"},\"MemoryInMB\":{\"type\":\"integer\"},\"ActiveTracing\":{\"type\":\"boolean\"},\"EnvironmentVariables\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"Sh\":{\"type\":\"structure\",\"members\":{\"SubnetIds\":{\"shape\":\"Si\"},\"SecurityGroupIds\":{\"shape\":\"Sk\"}}},\"Si\":{\"type\":\"list\",\"member\":{}},\"Sk\":{\"type\":\"list\",\"member\":{}},\"Sm\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"Sq\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Code\":{\"type\":\"structure\",\"members\":{\"SourceLocationArn\":{},\"Handler\":{}}},\"ExecutionRoleArn\":{},\"Schedule\":{\"type\":\"structure\",\"members\":{\"Expression\":{},\"DurationInSeconds\":{\"type\":\"long\"}}},\"RunConfig\":{\"type\":\"structure\",\"members\":{\"TimeoutInSeconds\":{\"type\":\"integer\"},\"MemoryInMB\":{\"type\":\"integer\"},\"ActiveTracing\":{\"type\":\"boolean\"}}},\"SuccessRetentionPeriodInDays\":{\"type\":\"integer\"},\"FailureRetentionPeriodInDays\":{\"type\":\"integer\"},\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateReason\":{},\"StateReasonCode\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"Created\":{\"type\":\"timestamp\"},\"LastModified\":{\"type\":\"timestamp\"},\"LastStarted\":{\"type\":\"timestamp\"},\"LastStopped\":{\"type\":\"timestamp\"}}},\"ArtifactS3Location\":{},\"EngineArn\":{},\"RuntimeVersion\":{},\"VpcConfig\":{\"type\":\"structure\",\"members\":{\"VpcId\":{},\"SubnetIds\":{\"shape\":\"Si\"},\"SecurityGroupIds\":{\"shape\":\"Sk\"}}},\"Tags\":{\"shape\":\"Sm\"}}},\"S1f\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Status\":{\"type\":\"structure\",\"members\":{\"State\":{},\"StateReason\":{},\"StateReasonCode\":{}}},\"Timeline\":{\"type\":\"structure\",\"members\":{\"Started\":{\"type\":\"timestamp\"},\"Completed\":{\"type\":\"timestamp\"}}},\"ArtifactS3Location\":{}}}}}");

/***/ }),

/***/ 27742:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeCanaries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"DescribeCanariesLastRun\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"DescribeRuntimeVersions\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetCanaryRuns\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 66368:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-06-27\",\"endpointPrefix\":\"textract\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Textract\",\"serviceId\":\"Textract\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"Textract\",\"uid\":\"textract-2018-06-27\"},\"operations\":{\"AnalyzeDocument\":{\"input\":{\"type\":\"structure\",\"required\":[\"Document\",\"FeatureTypes\"],\"members\":{\"Document\":{\"shape\":\"S2\"},\"FeatureTypes\":{\"shape\":\"S8\"},\"HumanLoopConfig\":{\"type\":\"structure\",\"required\":[\"HumanLoopName\",\"FlowDefinitionArn\"],\"members\":{\"HumanLoopName\":{},\"FlowDefinitionArn\":{},\"DataAttributes\":{\"type\":\"structure\",\"members\":{\"ContentClassifiers\":{\"type\":\"list\",\"member\":{}}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentMetadata\":{\"shape\":\"Sh\"},\"Blocks\":{\"shape\":\"Sj\"},\"HumanLoopActivationOutput\":{\"type\":\"structure\",\"members\":{\"HumanLoopArn\":{},\"HumanLoopActivationReasons\":{\"type\":\"list\",\"member\":{}},\"HumanLoopActivationConditionsEvaluationResults\":{\"jsonvalue\":true}}},\"AnalyzeDocumentModelVersion\":{}}}},\"DetectDocumentText\":{\"input\":{\"type\":\"structure\",\"required\":[\"Document\"],\"members\":{\"Document\":{\"shape\":\"S2\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentMetadata\":{\"shape\":\"Sh\"},\"Blocks\":{\"shape\":\"Sj\"},\"DetectDocumentTextModelVersion\":{}}}},\"GetDocumentAnalysis\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentMetadata\":{\"shape\":\"Sh\"},\"JobStatus\":{},\"NextToken\":{},\"Blocks\":{\"shape\":\"Sj\"},\"Warnings\":{\"shape\":\"S1f\"},\"StatusMessage\":{},\"AnalyzeDocumentModelVersion\":{}}}},\"GetDocumentTextDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentMetadata\":{\"shape\":\"Sh\"},\"JobStatus\":{},\"NextToken\":{},\"Blocks\":{\"shape\":\"Sj\"},\"Warnings\":{\"shape\":\"S1f\"},\"StatusMessage\":{},\"DetectDocumentTextModelVersion\":{}}}},\"StartDocumentAnalysis\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentLocation\",\"FeatureTypes\"],\"members\":{\"DocumentLocation\":{\"shape\":\"S1n\"},\"FeatureTypes\":{\"shape\":\"S8\"},\"ClientRequestToken\":{},\"JobTag\":{},\"NotificationChannel\":{\"shape\":\"S1q\"},\"OutputConfig\":{\"shape\":\"S1t\"},\"KMSKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}},\"StartDocumentTextDetection\":{\"input\":{\"type\":\"structure\",\"required\":[\"DocumentLocation\"],\"members\":{\"DocumentLocation\":{\"shape\":\"S1n\"},\"ClientRequestToken\":{},\"JobTag\":{},\"NotificationChannel\":{\"shape\":\"S1q\"},\"OutputConfig\":{\"shape\":\"S1t\"},\"KMSKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}}}},\"shapes\":{\"S2\":{\"type\":\"structure\",\"members\":{\"Bytes\":{\"type\":\"blob\"},\"S3Object\":{\"shape\":\"S4\"}}},\"S4\":{\"type\":\"structure\",\"members\":{\"Bucket\":{},\"Name\":{},\"Version\":{}}},\"S8\":{\"type\":\"list\",\"member\":{}},\"Sh\":{\"type\":\"structure\",\"members\":{\"Pages\":{\"type\":\"integer\"}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"BlockType\":{},\"Confidence\":{\"type\":\"float\"},\"Text\":{},\"TextType\":{},\"RowIndex\":{\"type\":\"integer\"},\"ColumnIndex\":{\"type\":\"integer\"},\"RowSpan\":{\"type\":\"integer\"},\"ColumnSpan\":{\"type\":\"integer\"},\"Geometry\":{\"type\":\"structure\",\"members\":{\"BoundingBox\":{\"type\":\"structure\",\"members\":{\"Width\":{\"type\":\"float\"},\"Height\":{\"type\":\"float\"},\"Left\":{\"type\":\"float\"},\"Top\":{\"type\":\"float\"}}},\"Polygon\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"X\":{\"type\":\"float\"},\"Y\":{\"type\":\"float\"}}}}}},\"Id\":{},\"Relationships\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Ids\":{\"type\":\"list\",\"member\":{}}}}},\"EntityTypes\":{\"type\":\"list\",\"member\":{}},\"SelectionStatus\":{},\"Page\":{\"type\":\"integer\"}}}},\"S1f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ErrorCode\":{},\"Pages\":{\"type\":\"list\",\"member\":{\"type\":\"integer\"}}}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"S3Object\":{\"shape\":\"S4\"}}},\"S1q\":{\"type\":\"structure\",\"required\":[\"SNSTopicArn\",\"RoleArn\"],\"members\":{\"SNSTopicArn\":{},\"RoleArn\":{}}},\"S1t\":{\"type\":\"structure\",\"required\":[\"S3Bucket\"],\"members\":{\"S3Bucket\":{},\"S3Prefix\":{}}}}}");

/***/ }),

/***/ 75909:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 27578:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-01\",\"endpointPrefix\":\"query.timestream\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Timestream Query\",\"serviceFullName\":\"Amazon Timestream Query\",\"serviceId\":\"Timestream Query\",\"signatureVersion\":\"v4\",\"signingName\":\"timestream\",\"targetPrefix\":\"Timestream_20181101\",\"uid\":\"timestream-query-2018-11-01\"},\"operations\":{\"CancelQuery\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryId\"],\"members\":{\"QueryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CancellationMessage\":{}}},\"endpointdiscovery\":{\"required\":true},\"idempotent\":true},\"DescribeEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"Endpoints\"],\"members\":{\"Endpoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Address\",\"CachePeriodInMinutes\"],\"members\":{\"Address\":{},\"CachePeriodInMinutes\":{\"type\":\"long\"}}}}}},\"endpointoperation\":true},\"Query\":{\"input\":{\"type\":\"structure\",\"required\":[\"QueryString\"],\"members\":{\"QueryString\":{\"type\":\"string\",\"sensitive\":true},\"ClientToken\":{\"idempotencyToken\":true,\"type\":\"string\",\"sensitive\":true},\"NextToken\":{},\"MaxRows\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"QueryId\",\"Rows\",\"ColumnInfo\"],\"members\":{\"QueryId\":{},\"NextToken\":{},\"Rows\":{\"type\":\"list\",\"member\":{\"shape\":\"Sg\"}},\"ColumnInfo\":{\"shape\":\"So\"},\"QueryStatus\":{\"type\":\"structure\",\"members\":{\"ProgressPercentage\":{\"type\":\"double\"},\"CumulativeBytesScanned\":{\"type\":\"long\"},\"CumulativeBytesMetered\":{\"type\":\"long\"}}}}},\"endpointdiscovery\":{\"required\":true},\"idempotent\":true}},\"shapes\":{\"Sg\":{\"type\":\"structure\",\"required\":[\"Data\"],\"members\":{\"Data\":{\"shape\":\"Sh\"}}},\"Sh\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"Si\":{\"type\":\"structure\",\"members\":{\"ScalarValue\":{},\"TimeSeriesValue\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Time\",\"Value\"],\"members\":{\"Time\":{},\"Value\":{\"shape\":\"Si\"}}}},\"ArrayValue\":{\"shape\":\"Sh\"},\"RowValue\":{\"shape\":\"Sg\"},\"NullValue\":{\"type\":\"boolean\"}}},\"So\":{\"type\":\"list\",\"member\":{\"shape\":\"Sp\"}},\"Sp\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Name\":{},\"Type\":{\"type\":\"structure\",\"members\":{\"ScalarType\":{},\"ArrayColumnInfo\":{\"shape\":\"Sp\"},\"TimeSeriesMeasureValueColumnInfo\":{\"shape\":\"Sp\"},\"RowColumnInfo\":{\"shape\":\"So\"}}}}}}}");

/***/ }),

/***/ 99094:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"Query\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxRows\",\"non_aggregate_keys\":[\"ColumnInfo\",\"QueryId\",\"QueryStatus\"],\"output_token\":\"NextToken\",\"result_key\":\"Rows\"}}}");

/***/ }),

/***/ 79095:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-01\",\"endpointPrefix\":\"ingest.timestream\",\"jsonVersion\":\"1.0\",\"protocol\":\"json\",\"serviceAbbreviation\":\"Timestream Write\",\"serviceFullName\":\"Amazon Timestream Write\",\"serviceId\":\"Timestream Write\",\"signatureVersion\":\"v4\",\"signingName\":\"timestream\",\"targetPrefix\":\"Timestream_20181101\",\"uid\":\"timestream-write-2018-11-01\"},\"operations\":{\"CreateDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\"],\"members\":{\"DatabaseName\":{},\"KmsKeyId\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Database\":{\"shape\":\"S9\"}}},\"endpointdiscovery\":{\"required\":true}},\"CreateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"DatabaseName\":{},\"TableName\":{},\"RetentionProperties\":{\"shape\":\"Se\"},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"Si\"}}},\"endpointdiscovery\":{\"required\":true}},\"DeleteDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\"],\"members\":{\"DatabaseName\":{}}},\"endpointdiscovery\":{\"required\":true}},\"DeleteTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"DatabaseName\":{},\"TableName\":{}}},\"endpointdiscovery\":{\"required\":true}},\"DescribeDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\"],\"members\":{\"DatabaseName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Database\":{\"shape\":\"S9\"}}},\"endpointdiscovery\":{\"required\":true}},\"DescribeEndpoints\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"required\":[\"Endpoints\"],\"members\":{\"Endpoints\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Address\",\"CachePeriodInMinutes\"],\"members\":{\"Address\":{},\"CachePeriodInMinutes\":{\"type\":\"long\"}}}}}},\"endpointoperation\":true},\"DescribeTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\"],\"members\":{\"DatabaseName\":{},\"TableName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"Si\"}}},\"endpointdiscovery\":{\"required\":true}},\"ListDatabases\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Databases\":{\"type\":\"list\",\"member\":{\"shape\":\"S9\"}},\"NextToken\":{}}},\"endpointdiscovery\":{\"required\":true}},\"ListTables\":{\"input\":{\"type\":\"structure\",\"members\":{\"DatabaseName\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tables\":{\"type\":\"list\",\"member\":{\"shape\":\"Si\"}},\"NextToken\":{}}},\"endpointdiscovery\":{\"required\":true}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4\"}}},\"endpointdiscovery\":{\"required\":true}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S4\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpointdiscovery\":{\"required\":true}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"endpointdiscovery\":{\"required\":true}},\"UpdateDatabase\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"KmsKeyId\"],\"members\":{\"DatabaseName\":{},\"KmsKeyId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Database\":{\"shape\":\"S9\"}}},\"endpointdiscovery\":{\"required\":true}},\"UpdateTable\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"RetentionProperties\"],\"members\":{\"DatabaseName\":{},\"TableName\":{},\"RetentionProperties\":{\"shape\":\"Se\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Table\":{\"shape\":\"Si\"}}},\"endpointdiscovery\":{\"required\":true}},\"WriteRecords\":{\"input\":{\"type\":\"structure\",\"required\":[\"DatabaseName\",\"TableName\",\"Records\"],\"members\":{\"DatabaseName\":{},\"TableName\":{},\"CommonAttributes\":{\"shape\":\"S1e\"},\"Records\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}}}},\"endpointdiscovery\":{\"required\":true}}},\"shapes\":{\"S4\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S9\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"DatabaseName\":{},\"TableCount\":{\"type\":\"long\"},\"KmsKeyId\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"Se\":{\"type\":\"structure\",\"required\":[\"MemoryStoreRetentionPeriodInHours\",\"MagneticStoreRetentionPeriodInDays\"],\"members\":{\"MemoryStoreRetentionPeriodInHours\":{\"type\":\"long\"},\"MagneticStoreRetentionPeriodInDays\":{\"type\":\"long\"}}},\"Si\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"TableName\":{},\"DatabaseName\":{},\"TableStatus\":{},\"RetentionProperties\":{\"shape\":\"Se\"},\"CreationTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"}}},\"S1e\":{\"type\":\"structure\",\"members\":{\"Dimensions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{},\"DimensionValueType\":{}}}},\"MeasureName\":{},\"MeasureValue\":{},\"MeasureValueType\":{},\"Time\":{},\"TimeUnit\":{},\"Version\":{\"type\":\"long\"}}}}}");

/***/ }),

/***/ 50262:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDatabases\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTables\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 10903:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-26\",\"endpointPrefix\":\"transcribe\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Transcribe Service\",\"serviceId\":\"Transcribe\",\"signatureVersion\":\"v4\",\"signingName\":\"transcribe\",\"targetPrefix\":\"Transcribe\",\"uid\":\"transcribe-2017-10-26\"},\"operations\":{\"CreateLanguageModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"LanguageCode\",\"BaseModelName\",\"ModelName\",\"InputDataConfig\"],\"members\":{\"LanguageCode\":{},\"BaseModelName\":{},\"ModelName\":{},\"InputDataConfig\":{\"shape\":\"S5\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LanguageCode\":{},\"BaseModelName\":{},\"ModelName\":{},\"InputDataConfig\":{\"shape\":\"S5\"},\"ModelStatus\":{}}}},\"CreateMedicalVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\",\"LanguageCode\",\"VocabularyFileUri\"],\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"VocabularyFileUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"VocabularyState\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{}}}},\"CreateVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\",\"LanguageCode\"],\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"Phrases\":{\"shape\":\"Si\"},\"VocabularyFileUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"VocabularyState\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{}}}},\"CreateVocabularyFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyFilterName\",\"LanguageCode\"],\"members\":{\"VocabularyFilterName\":{},\"LanguageCode\":{},\"Words\":{\"shape\":\"Sn\"},\"VocabularyFilterFileUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyFilterName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}},\"DeleteLanguageModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\"],\"members\":{\"ModelName\":{}}}},\"DeleteMedicalTranscriptionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"MedicalTranscriptionJobName\"],\"members\":{\"MedicalTranscriptionJobName\":{}}}},\"DeleteMedicalVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\"],\"members\":{\"VocabularyName\":{}}}},\"DeleteTranscriptionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TranscriptionJobName\"],\"members\":{\"TranscriptionJobName\":{}}}},\"DeleteVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\"],\"members\":{\"VocabularyName\":{}}}},\"DeleteVocabularyFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyFilterName\"],\"members\":{\"VocabularyFilterName\":{}}}},\"DescribeLanguageModel\":{\"input\":{\"type\":\"structure\",\"required\":[\"ModelName\"],\"members\":{\"ModelName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LanguageModel\":{\"shape\":\"Sz\"}}}},\"GetMedicalTranscriptionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"MedicalTranscriptionJobName\"],\"members\":{\"MedicalTranscriptionJobName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MedicalTranscriptionJob\":{\"shape\":\"S13\"}}}},\"GetMedicalVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\"],\"members\":{\"VocabularyName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"VocabularyState\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"DownloadUri\":{}}}},\"GetTranscriptionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TranscriptionJobName\"],\"members\":{\"TranscriptionJobName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TranscriptionJob\":{\"shape\":\"S1i\"}}}},\"GetVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\"],\"members\":{\"VocabularyName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"VocabularyState\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"DownloadUri\":{}}}},\"GetVocabularyFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyFilterName\"],\"members\":{\"VocabularyFilterName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyFilterName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"DownloadUri\":{}}}},\"ListLanguageModels\":{\"input\":{\"type\":\"structure\",\"members\":{\"StatusEquals\":{},\"NameContains\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"Models\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\"}}}}},\"ListMedicalTranscriptionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"JobNameContains\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"NextToken\":{},\"MedicalTranscriptionJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MedicalTranscriptionJobName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"StartTime\":{\"type\":\"timestamp\"},\"CompletionTime\":{\"type\":\"timestamp\"},\"LanguageCode\":{},\"TranscriptionJobStatus\":{},\"FailureReason\":{},\"OutputLocationType\":{},\"Specialty\":{},\"Type\":{}}}}}}},\"ListMedicalVocabularies\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"StateEquals\":{},\"NameContains\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"NextToken\":{},\"Vocabularies\":{\"shape\":\"S29\"}}}},\"ListTranscriptionJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"JobNameContains\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"NextToken\":{},\"TranscriptionJobSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"TranscriptionJobName\":{},\"CreationTime\":{\"type\":\"timestamp\"},\"StartTime\":{\"type\":\"timestamp\"},\"CompletionTime\":{\"type\":\"timestamp\"},\"LanguageCode\":{},\"TranscriptionJobStatus\":{},\"FailureReason\":{},\"OutputLocationType\":{},\"ContentRedaction\":{\"shape\":\"S1o\"},\"ModelSettings\":{\"shape\":\"S1m\"},\"IdentifyLanguage\":{\"type\":\"boolean\"},\"IdentifiedLanguageScore\":{\"type\":\"float\"}}}}}}},\"ListVocabularies\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"StateEquals\":{},\"NameContains\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"NextToken\":{},\"Vocabularies\":{\"shape\":\"S29\"}}}},\"ListVocabularyFilters\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"},\"NameContains\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"VocabularyFilters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VocabularyFilterName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}}}}},\"StartMedicalTranscriptionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"MedicalTranscriptionJobName\",\"LanguageCode\",\"Media\",\"OutputBucketName\",\"Specialty\",\"Type\"],\"members\":{\"MedicalTranscriptionJobName\":{},\"LanguageCode\":{},\"MediaSampleRateHertz\":{\"type\":\"integer\"},\"MediaFormat\":{},\"Media\":{\"shape\":\"S17\"},\"OutputBucketName\":{},\"OutputKey\":{},\"OutputEncryptionKMSKeyId\":{},\"Settings\":{\"shape\":\"S19\"},\"Specialty\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MedicalTranscriptionJob\":{\"shape\":\"S13\"}}}},\"StartTranscriptionJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"TranscriptionJobName\",\"Media\"],\"members\":{\"TranscriptionJobName\":{},\"LanguageCode\":{},\"MediaSampleRateHertz\":{\"type\":\"integer\"},\"MediaFormat\":{},\"Media\":{\"shape\":\"S17\"},\"OutputBucketName\":{},\"OutputKey\":{},\"OutputEncryptionKMSKeyId\":{},\"Settings\":{\"shape\":\"S1k\"},\"ModelSettings\":{\"shape\":\"S1m\"},\"JobExecutionSettings\":{\"shape\":\"S1n\"},\"ContentRedaction\":{\"shape\":\"S1o\"},\"IdentifyLanguage\":{\"type\":\"boolean\"},\"LanguageOptions\":{\"shape\":\"S1r\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TranscriptionJob\":{\"shape\":\"S1i\"}}}},\"UpdateMedicalVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\",\"LanguageCode\"],\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"VocabularyFileUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"VocabularyState\":{}}}},\"UpdateVocabulary\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyName\",\"LanguageCode\"],\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"Phrases\":{\"shape\":\"Si\"},\"VocabularyFileUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"VocabularyState\":{}}}},\"UpdateVocabularyFilter\":{\"input\":{\"type\":\"structure\",\"required\":[\"VocabularyFilterName\"],\"members\":{\"VocabularyFilterName\":{},\"Words\":{\"shape\":\"Sn\"},\"VocabularyFilterFileUri\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VocabularyFilterName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"DataAccessRoleArn\"],\"members\":{\"S3Uri\":{},\"TuningDataS3Uri\":{},\"DataAccessRoleArn\":{}}},\"Si\":{\"type\":\"list\",\"member\":{}},\"Sn\":{\"type\":\"list\",\"member\":{}},\"Sz\":{\"type\":\"structure\",\"members\":{\"ModelName\":{},\"CreateTime\":{\"type\":\"timestamp\"},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"LanguageCode\":{},\"BaseModelName\":{},\"ModelStatus\":{},\"UpgradeAvailability\":{\"type\":\"boolean\"},\"FailureReason\":{},\"InputDataConfig\":{\"shape\":\"S5\"}}},\"S13\":{\"type\":\"structure\",\"members\":{\"MedicalTranscriptionJobName\":{},\"TranscriptionJobStatus\":{},\"LanguageCode\":{},\"MediaSampleRateHertz\":{\"type\":\"integer\"},\"MediaFormat\":{},\"Media\":{\"shape\":\"S17\"},\"Transcript\":{\"type\":\"structure\",\"members\":{\"TranscriptFileUri\":{}}},\"StartTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CompletionTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"Settings\":{\"shape\":\"S19\"},\"Specialty\":{},\"Type\":{}}},\"S17\":{\"type\":\"structure\",\"members\":{\"MediaFileUri\":{}}},\"S19\":{\"type\":\"structure\",\"members\":{\"ShowSpeakerLabels\":{\"type\":\"boolean\"},\"MaxSpeakerLabels\":{\"type\":\"integer\"},\"ChannelIdentification\":{\"type\":\"boolean\"},\"ShowAlternatives\":{\"type\":\"boolean\"},\"MaxAlternatives\":{\"type\":\"integer\"},\"VocabularyName\":{}}},\"S1i\":{\"type\":\"structure\",\"members\":{\"TranscriptionJobName\":{},\"TranscriptionJobStatus\":{},\"LanguageCode\":{},\"MediaSampleRateHertz\":{\"type\":\"integer\"},\"MediaFormat\":{},\"Media\":{\"shape\":\"S17\"},\"Transcript\":{\"type\":\"structure\",\"members\":{\"TranscriptFileUri\":{},\"RedactedTranscriptFileUri\":{}}},\"StartTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"},\"CompletionTime\":{\"type\":\"timestamp\"},\"FailureReason\":{},\"Settings\":{\"shape\":\"S1k\"},\"ModelSettings\":{\"shape\":\"S1m\"},\"JobExecutionSettings\":{\"shape\":\"S1n\"},\"ContentRedaction\":{\"shape\":\"S1o\"},\"IdentifyLanguage\":{\"type\":\"boolean\"},\"LanguageOptions\":{\"shape\":\"S1r\"},\"IdentifiedLanguageScore\":{\"type\":\"float\"}}},\"S1k\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"ShowSpeakerLabels\":{\"type\":\"boolean\"},\"MaxSpeakerLabels\":{\"type\":\"integer\"},\"ChannelIdentification\":{\"type\":\"boolean\"},\"ShowAlternatives\":{\"type\":\"boolean\"},\"MaxAlternatives\":{\"type\":\"integer\"},\"VocabularyFilterName\":{},\"VocabularyFilterMethod\":{}}},\"S1m\":{\"type\":\"structure\",\"members\":{\"LanguageModelName\":{}}},\"S1n\":{\"type\":\"structure\",\"members\":{\"AllowDeferredExecution\":{\"type\":\"boolean\"},\"DataAccessRoleArn\":{}}},\"S1o\":{\"type\":\"structure\",\"required\":[\"RedactionType\",\"RedactionOutput\"],\"members\":{\"RedactionType\":{},\"RedactionOutput\":{}}},\"S1r\":{\"type\":\"list\",\"member\":{}},\"S29\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VocabularyName\":{},\"LanguageCode\":{},\"LastModifiedTime\":{\"type\":\"timestamp\"},\"VocabularyState\":{}}}}}}");

/***/ }),

/***/ 92036:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListLanguageModels\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMedicalTranscriptionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMedicalVocabularies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTranscriptionJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListVocabularies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListVocabularyFilters\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 42419:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-11-05\",\"endpointPrefix\":\"transfer\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"AWS Transfer\",\"serviceFullName\":\"AWS Transfer Family\",\"serviceId\":\"Transfer\",\"signatureVersion\":\"v4\",\"signingName\":\"transfer\",\"targetPrefix\":\"TransferService\",\"uid\":\"transfer-2018-11-05\"},\"operations\":{\"CreateServer\":{\"input\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"Domain\":{},\"EndpointDetails\":{\"shape\":\"S4\"},\"EndpointType\":{},\"HostKey\":{\"shape\":\"Se\"},\"IdentityProviderDetails\":{\"shape\":\"Sf\"},\"IdentityProviderType\":{},\"LoggingRole\":{},\"Protocols\":{\"shape\":\"Sj\"},\"SecurityPolicyName\":{},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"ServerId\":{}}}},\"CreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"Role\",\"ServerId\",\"UserName\"],\"members\":{\"HomeDirectory\":{},\"HomeDirectoryType\":{},\"HomeDirectoryMappings\":{\"shape\":\"Sv\"},\"Policy\":{},\"PosixProfile\":{\"shape\":\"S10\"},\"Role\":{},\"ServerId\":{},\"SshPublicKeyBody\":{},\"Tags\":{\"shape\":\"Sm\"},\"UserName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"UserName\"],\"members\":{\"ServerId\":{},\"UserName\":{}}}},\"DeleteServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"ServerId\":{}}}},\"DeleteSshPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"SshPublicKeyId\",\"UserName\"],\"members\":{\"ServerId\":{},\"SshPublicKeyId\":{},\"UserName\":{}}}},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"UserName\"],\"members\":{\"ServerId\":{},\"UserName\":{}}}},\"DescribeSecurityPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"SecurityPolicyName\"],\"members\":{\"SecurityPolicyName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"SecurityPolicy\"],\"members\":{\"SecurityPolicy\":{\"type\":\"structure\",\"required\":[\"SecurityPolicyName\"],\"members\":{\"Fips\":{\"type\":\"boolean\"},\"SecurityPolicyName\":{},\"SshCiphers\":{\"shape\":\"S1e\"},\"SshKexs\":{\"shape\":\"S1e\"},\"SshMacs\":{\"shape\":\"S1e\"},\"TlsCiphers\":{\"shape\":\"S1e\"}}}}}},\"DescribeServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"ServerId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Server\"],\"members\":{\"Server\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"Certificate\":{},\"Domain\":{},\"EndpointDetails\":{\"shape\":\"S4\"},\"EndpointType\":{},\"HostKeyFingerprint\":{},\"IdentityProviderDetails\":{\"shape\":\"Sf\"},\"IdentityProviderType\":{},\"LoggingRole\":{},\"Protocols\":{\"shape\":\"Sj\"},\"SecurityPolicyName\":{},\"ServerId\":{},\"State\":{},\"Tags\":{\"shape\":\"Sm\"},\"UserCount\":{\"type\":\"integer\"}}}}}},\"DescribeUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"UserName\"],\"members\":{\"ServerId\":{},\"UserName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"User\"],\"members\":{\"ServerId\":{},\"User\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"HomeDirectory\":{},\"HomeDirectoryMappings\":{\"shape\":\"Sv\"},\"HomeDirectoryType\":{},\"Policy\":{},\"PosixProfile\":{\"shape\":\"S10\"},\"Role\":{},\"SshPublicKeys\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DateImported\",\"SshPublicKeyBody\",\"SshPublicKeyId\"],\"members\":{\"DateImported\":{\"type\":\"timestamp\"},\"SshPublicKeyBody\":{},\"SshPublicKeyId\":{}}}},\"Tags\":{\"shape\":\"Sm\"},\"UserName\":{}}}}}},\"ImportSshPublicKey\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"SshPublicKeyBody\",\"UserName\"],\"members\":{\"ServerId\":{},\"SshPublicKeyBody\":{},\"UserName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"SshPublicKeyId\",\"UserName\"],\"members\":{\"ServerId\":{},\"SshPublicKeyId\":{},\"UserName\":{}}}},\"ListSecurityPolicies\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"SecurityPolicyNames\"],\"members\":{\"NextToken\":{},\"SecurityPolicyNames\":{\"type\":\"list\",\"member\":{}}}}},\"ListServers\":{\"input\":{\"type\":\"structure\",\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"Servers\"],\"members\":{\"NextToken\":{},\"Servers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"Domain\":{},\"IdentityProviderType\":{},\"EndpointType\":{},\"LoggingRole\":{},\"ServerId\":{},\"State\":{},\"UserCount\":{\"type\":\"integer\"}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Arn\":{},\"NextToken\":{},\"Tags\":{\"shape\":\"Sm\"}}}},\"ListUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{},\"ServerId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"Users\"],\"members\":{\"NextToken\":{},\"ServerId\":{},\"Users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Arn\"],\"members\":{\"Arn\":{},\"HomeDirectory\":{},\"HomeDirectoryType\":{},\"Role\":{},\"SshPublicKeyCount\":{\"type\":\"integer\"},\"UserName\":{}}}}}}},\"StartServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"ServerId\":{}}}},\"StopServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"ServerId\":{}}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"Tags\"],\"members\":{\"Arn\":{},\"Tags\":{\"shape\":\"Sm\"}}}},\"TestIdentityProvider\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"UserName\"],\"members\":{\"ServerId\":{},\"ServerProtocol\":{},\"SourceIp\":{},\"UserName\":{},\"UserPassword\":{\"type\":\"string\",\"sensitive\":true}}},\"output\":{\"type\":\"structure\",\"required\":[\"StatusCode\",\"Url\"],\"members\":{\"Response\":{},\"StatusCode\":{\"type\":\"integer\"},\"Message\":{},\"Url\":{}}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"Arn\",\"TagKeys\"],\"members\":{\"Arn\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}}},\"UpdateServer\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"Certificate\":{},\"EndpointDetails\":{\"shape\":\"S4\"},\"EndpointType\":{},\"HostKey\":{\"shape\":\"Se\"},\"IdentityProviderDetails\":{\"shape\":\"Sf\"},\"LoggingRole\":{},\"Protocols\":{\"shape\":\"Sj\"},\"SecurityPolicyName\":{},\"ServerId\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\"],\"members\":{\"ServerId\":{}}}},\"UpdateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"UserName\"],\"members\":{\"HomeDirectory\":{},\"HomeDirectoryType\":{},\"HomeDirectoryMappings\":{\"shape\":\"Sv\"},\"Policy\":{},\"PosixProfile\":{\"shape\":\"S10\"},\"Role\":{},\"ServerId\":{},\"UserName\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"ServerId\",\"UserName\"],\"members\":{\"ServerId\":{},\"UserName\":{}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"members\":{\"AddressAllocationIds\":{\"type\":\"list\",\"member\":{}},\"SubnetIds\":{\"type\":\"list\",\"member\":{}},\"VpcEndpointId\":{},\"VpcId\":{},\"SecurityGroupIds\":{\"type\":\"list\",\"member\":{}}}},\"Se\":{\"type\":\"string\",\"sensitive\":true},\"Sf\":{\"type\":\"structure\",\"members\":{\"Url\":{},\"InvocationRole\":{}}},\"Sj\":{\"type\":\"list\",\"member\":{}},\"Sm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"Sv\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Entry\",\"Target\"],\"members\":{\"Entry\":{},\"Target\":{}}}},\"S10\":{\"type\":\"structure\",\"required\":[\"Uid\",\"Gid\"],\"members\":{\"Uid\":{\"type\":\"long\"},\"Gid\":{\"type\":\"long\"},\"SecondaryGids\":{\"type\":\"list\",\"member\":{\"type\":\"long\"}}}},\"S1e\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 70586:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListSecurityPolicies\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListServers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListTagsForResource\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListUsers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 12983:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-07-01\",\"endpointPrefix\":\"translate\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon Translate\",\"serviceId\":\"Translate\",\"signatureVersion\":\"v4\",\"signingName\":\"translate\",\"targetPrefix\":\"AWSShineFrontendService_20170701\",\"uid\":\"translate-2017-07-01\"},\"operations\":{\"CreateParallelData\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ParallelDataConfig\",\"ClientToken\"],\"members\":{\"Name\":{},\"Description\":{},\"ParallelDataConfig\":{\"shape\":\"S4\"},\"EncryptionKey\":{\"shape\":\"S7\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Status\":{}}}},\"DeleteParallelData\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Status\":{}}}},\"DeleteTerminology\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"DescribeTextTranslationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TextTranslationJobProperties\":{\"shape\":\"Sj\"}}}},\"GetParallelData\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ParallelDataProperties\":{\"shape\":\"Sz\"},\"DataLocation\":{\"shape\":\"S13\"},\"AuxiliaryDataLocation\":{\"shape\":\"S13\"},\"LatestUpdateAttemptAuxiliaryDataLocation\":{\"shape\":\"S13\"}}}},\"GetTerminology\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"TerminologyDataFormat\"],\"members\":{\"Name\":{},\"TerminologyDataFormat\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TerminologyProperties\":{\"shape\":\"S18\"},\"TerminologyDataLocation\":{\"type\":\"structure\",\"required\":[\"RepositoryType\",\"Location\"],\"members\":{\"RepositoryType\":{},\"Location\":{}}}}}},\"ImportTerminology\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MergeStrategy\",\"TerminologyData\"],\"members\":{\"Name\":{},\"MergeStrategy\":{},\"Description\":{},\"TerminologyData\":{\"type\":\"structure\",\"required\":[\"File\",\"Format\"],\"members\":{\"File\":{\"type\":\"blob\",\"sensitive\":true},\"Format\":{}}},\"EncryptionKey\":{\"shape\":\"S7\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TerminologyProperties\":{\"shape\":\"S18\"}}}},\"ListParallelData\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ParallelDataPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sz\"}},\"NextToken\":{}}}},\"ListTerminologies\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TerminologyPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\"}},\"NextToken\":{}}}},\"ListTextTranslationJobs\":{\"input\":{\"type\":\"structure\",\"members\":{\"Filter\":{\"type\":\"structure\",\"members\":{\"JobName\":{},\"JobStatus\":{},\"SubmittedBeforeTime\":{\"type\":\"timestamp\"},\"SubmittedAfterTime\":{\"type\":\"timestamp\"}}},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"TextTranslationJobPropertiesList\":{\"type\":\"list\",\"member\":{\"shape\":\"Sj\"}},\"NextToken\":{}}}},\"StartTextTranslationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"InputDataConfig\",\"OutputDataConfig\",\"DataAccessRoleArn\",\"SourceLanguageCode\",\"TargetLanguageCodes\",\"ClientToken\"],\"members\":{\"JobName\":{},\"InputDataConfig\":{\"shape\":\"St\"},\"OutputDataConfig\":{\"shape\":\"Sv\"},\"DataAccessRoleArn\":{},\"SourceLanguageCode\":{},\"TargetLanguageCodes\":{\"shape\":\"Sp\"},\"TerminologyNames\":{\"shape\":\"Sq\"},\"ParallelDataNames\":{\"shape\":\"Sq\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"StopTextTranslationJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\"],\"members\":{\"JobId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobStatus\":{}}}},\"TranslateText\":{\"input\":{\"type\":\"structure\",\"required\":[\"Text\",\"SourceLanguageCode\",\"TargetLanguageCode\"],\"members\":{\"Text\":{},\"TerminologyNames\":{\"shape\":\"Sq\"},\"SourceLanguageCode\":{},\"TargetLanguageCode\":{}}},\"output\":{\"type\":\"structure\",\"required\":[\"TranslatedText\",\"SourceLanguageCode\",\"TargetLanguageCode\"],\"members\":{\"TranslatedText\":{},\"SourceLanguageCode\":{},\"TargetLanguageCode\":{},\"AppliedTerminologies\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Terms\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SourceText\":{},\"TargetText\":{}}}}}}}}}},\"UpdateParallelData\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ParallelDataConfig\",\"ClientToken\"],\"members\":{\"Name\":{},\"Description\":{},\"ParallelDataConfig\":{\"shape\":\"S4\"},\"ClientToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Status\":{},\"LatestUpdateAttemptStatus\":{},\"LatestUpdateAttemptAt\":{\"type\":\"timestamp\"}}}}},\"shapes\":{\"S4\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"Format\"],\"members\":{\"S3Uri\":{},\"Format\":{}}},\"S7\":{\"type\":\"structure\",\"required\":[\"Type\",\"Id\"],\"members\":{\"Type\":{},\"Id\":{}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"JobName\":{},\"JobStatus\":{},\"JobDetails\":{\"type\":\"structure\",\"members\":{\"TranslatedDocumentsCount\":{\"type\":\"integer\"},\"DocumentsWithErrorsCount\":{\"type\":\"integer\"},\"InputDocumentsCount\":{\"type\":\"integer\"}}},\"SourceLanguageCode\":{},\"TargetLanguageCodes\":{\"shape\":\"Sp\"},\"TerminologyNames\":{\"shape\":\"Sq\"},\"ParallelDataNames\":{\"shape\":\"Sq\"},\"Message\":{},\"SubmittedTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"InputDataConfig\":{\"shape\":\"St\"},\"OutputDataConfig\":{\"shape\":\"Sv\"},\"DataAccessRoleArn\":{}}},\"Sp\":{\"type\":\"list\",\"member\":{}},\"Sq\":{\"type\":\"list\",\"member\":{}},\"St\":{\"type\":\"structure\",\"required\":[\"S3Uri\",\"ContentType\"],\"members\":{\"S3Uri\":{},\"ContentType\":{}}},\"Sv\":{\"type\":\"structure\",\"required\":[\"S3Uri\"],\"members\":{\"S3Uri\":{}}},\"Sz\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Arn\":{},\"Description\":{},\"Status\":{},\"SourceLanguageCode\":{},\"TargetLanguageCodes\":{\"shape\":\"S11\"},\"ParallelDataConfig\":{\"shape\":\"S4\"},\"Message\":{},\"ImportedDataSize\":{\"type\":\"long\"},\"ImportedRecordCount\":{\"type\":\"long\"},\"FailedRecordCount\":{\"type\":\"long\"},\"SkippedRecordCount\":{\"type\":\"long\"},\"EncryptionKey\":{\"shape\":\"S7\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"},\"LatestUpdateAttemptStatus\":{},\"LatestUpdateAttemptAt\":{\"type\":\"timestamp\"}}},\"S11\":{\"type\":\"list\",\"member\":{}},\"S13\":{\"type\":\"structure\",\"required\":[\"RepositoryType\",\"Location\"],\"members\":{\"RepositoryType\":{},\"Location\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Description\":{},\"Arn\":{},\"SourceLanguageCode\":{},\"TargetLanguageCodes\":{\"shape\":\"S11\"},\"EncryptionKey\":{\"shape\":\"S7\"},\"SizeBytes\":{\"type\":\"integer\"},\"TermCount\":{\"type\":\"integer\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"LastUpdatedAt\":{\"type\":\"timestamp\"}}}}}");

/***/ }),

/***/ 85886:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListParallelData\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTerminologies\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"ListTextTranslationJobs\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"}}}");

/***/ }),

/***/ 93997:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-08-24\",\"endpointPrefix\":\"waf\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"WAF\",\"serviceFullName\":\"AWS WAF\",\"serviceId\":\"WAF\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSWAF_20150824\",\"uid\":\"waf-2015-08-24\"},\"operations\":{\"CreateByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByteMatchSet\":{\"shape\":\"S5\"},\"ChangeToken\":{}}}},\"CreateGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GeoMatchSet\":{\"shape\":\"Sh\"},\"ChangeToken\":{}}}},\"CreateIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IPSet\":{\"shape\":\"So\"},\"ChangeToken\":{}}}},\"CreateRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"RateKey\",\"RateLimit\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"RateKey\":{},\"RateLimit\":{\"type\":\"long\"},\"ChangeToken\":{},\"Tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S12\"},\"ChangeToken\":{}}}},\"CreateRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexMatchSet\":{\"shape\":\"S19\"},\"ChangeToken\":{}}}},\"CreateRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexPatternSet\":{\"shape\":\"S1e\"},\"ChangeToken\":{}}}},\"CreateRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"ChangeToken\":{},\"Tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S1j\"},\"ChangeToken\":{}}}},\"CreateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"ChangeToken\":{},\"Tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleGroup\":{\"shape\":\"S1m\"},\"ChangeToken\":{}}}},\"CreateSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SizeConstraintSet\":{\"shape\":\"S1p\"},\"ChangeToken\":{}}}},\"CreateSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SqlInjectionMatchSet\":{\"shape\":\"S1w\"},\"ChangeToken\":{}}}},\"CreateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"DefaultAction\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"DefaultAction\":{\"shape\":\"S20\"},\"ChangeToken\":{},\"Tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACL\":{\"shape\":\"S23\"},\"ChangeToken\":{}}}},\"CreateWebACLMigrationStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"S3BucketName\",\"IgnoreUnsupportedType\"],\"members\":{\"WebACLId\":{},\"S3BucketName\":{},\"IgnoreUnsupportedType\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"S3ObjectUrl\"],\"members\":{\"S3ObjectUrl\":{}}}},\"CreateXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"XssMatchSet\":{\"shape\":\"S2k\"},\"ChangeToken\":{}}}},\"DeleteByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"ChangeToken\"],\"members\":{\"ByteMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"ChangeToken\"],\"members\":{\"GeoMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"ChangeToken\"],\"members\":{\"IPSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\",\"ChangeToken\"],\"members\":{\"RegexMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"ChangeToken\"],\"members\":{\"RegexPatternSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"ChangeToken\"],\"members\":{\"RuleGroupId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"ChangeToken\"],\"members\":{\"SizeConstraintSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"ChangeToken\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"ChangeToken\"],\"members\":{\"WebACLId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"ChangeToken\"],\"members\":{\"XssMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"GetByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\"],\"members\":{\"ByteMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByteMatchSet\":{\"shape\":\"S5\"}}}},\"GetChangeToken\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"GetChangeTokenStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ChangeToken\"],\"members\":{\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeTokenStatus\":{}}}},\"GetGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\"],\"members\":{\"GeoMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GeoMatchSet\":{\"shape\":\"Sh\"}}}},\"GetIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"IPSetId\"],\"members\":{\"IPSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IPSet\":{\"shape\":\"So\"}}}},\"GetLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3s\"}}}},\"GetPermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"GetRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S12\"}}}},\"GetRateBasedRuleManagedKeys\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{},\"NextMarker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ManagedKeys\":{\"type\":\"list\",\"member\":{}},\"NextMarker\":{}}}},\"GetRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\"],\"members\":{\"RegexMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexMatchSet\":{\"shape\":\"S19\"}}}},\"GetRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\"],\"members\":{\"RegexPatternSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexPatternSet\":{\"shape\":\"S1e\"}}}},\"GetRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S1j\"}}}},\"GetRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\"],\"members\":{\"RuleGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleGroup\":{\"shape\":\"S1m\"}}}},\"GetSampledRequests\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebAclId\",\"RuleId\",\"TimeWindow\",\"MaxItems\"],\"members\":{\"WebAclId\":{},\"RuleId\":{},\"TimeWindow\":{\"shape\":\"S4e\"},\"MaxItems\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SampledRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Request\",\"Weight\"],\"members\":{\"Request\":{\"type\":\"structure\",\"members\":{\"ClientIP\":{},\"Country\":{},\"URI\":{},\"Method\":{},\"HTTPVersion\":{},\"Headers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}}}},\"Weight\":{\"type\":\"long\"},\"Timestamp\":{\"type\":\"timestamp\"},\"Action\":{},\"RuleWithinRuleGroup\":{}}}},\"PopulationSize\":{\"type\":\"long\"},\"TimeWindow\":{\"shape\":\"S4e\"}}}},\"GetSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\"],\"members\":{\"SizeConstraintSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SizeConstraintSet\":{\"shape\":\"S1p\"}}}},\"GetSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\"],\"members\":{\"SqlInjectionMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SqlInjectionMatchSet\":{\"shape\":\"S1w\"}}}},\"GetWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"WebACLId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACL\":{\"shape\":\"S23\"}}}},\"GetXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\"],\"members\":{\"XssMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"XssMatchSet\":{\"shape\":\"S2k\"}}}},\"ListActivatedRulesInRuleGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"RuleGroupId\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"ActivatedRules\":{\"shape\":\"S24\"}}}},\"ListByteMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"ByteMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"Name\"],\"members\":{\"ByteMatchSetId\":{},\"Name\":{}}}}}}},\"ListGeoMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"GeoMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"Name\"],\"members\":{\"GeoMatchSetId\":{},\"Name\":{}}}}}}},\"ListIPSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"IPSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"Name\"],\"members\":{\"IPSetId\":{},\"Name\":{}}}}}}},\"ListLoggingConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S3s\"}},\"NextMarker\":{}}}},\"ListRateBasedRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Rules\":{\"shape\":\"S5p\"}}}},\"ListRegexMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RegexMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\",\"Name\"],\"members\":{\"RegexMatchSetId\":{},\"Name\":{}}}}}}},\"ListRegexPatternSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RegexPatternSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"Name\"],\"members\":{\"RegexPatternSetId\":{},\"Name\":{}}}}}}},\"ListRuleGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"Name\"],\"members\":{\"RuleGroupId\":{},\"Name\":{}}}}}}},\"ListRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Rules\":{\"shape\":\"S5p\"}}}},\"ListSizeConstraintSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"SizeConstraintSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"Name\"],\"members\":{\"SizeConstraintSetId\":{},\"Name\":{}}}}}}},\"ListSqlInjectionMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"SqlInjectionMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"Name\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"Name\":{}}}}}}},\"ListSubscribedRuleGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"Name\",\"MetricName\"],\"members\":{\"RuleGroupId\":{},\"Name\":{},\"MetricName\":{}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"},\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"TagInfoForResource\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"TagList\":{\"shape\":\"Sx\"}}}}}},\"ListWebACLs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"WebACLs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"Name\"],\"members\":{\"WebACLId\":{},\"Name\":{}}}}}}},\"ListXssMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"XssMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"Name\"],\"members\":{\"XssMatchSetId\":{},\"Name\":{}}}}}}},\"PutLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoggingConfiguration\"],\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3s\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3s\"}}}},\"PutPermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Policy\"],\"members\":{\"ResourceArn\":{},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sx\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"ByteMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"ByteMatchTuple\"],\"members\":{\"Action\":{},\"ByteMatchTuple\":{\"shape\":\"S8\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"GeoMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"GeoMatchConstraint\"],\"members\":{\"Action\":{},\"GeoMatchConstraint\":{\"shape\":\"Sj\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"IPSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"IPSetDescriptor\"],\"members\":{\"Action\":{},\"IPSetDescriptor\":{\"shape\":\"Sq\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\",\"Updates\",\"RateLimit\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{},\"Updates\":{\"shape\":\"S7f\"},\"RateLimit\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\",\"Updates\",\"ChangeToken\"],\"members\":{\"RegexMatchSetId\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"RegexMatchTuple\"],\"members\":{\"Action\":{},\"RegexMatchTuple\":{\"shape\":\"S1b\"}}}},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"Updates\",\"ChangeToken\"],\"members\":{\"RegexPatternSetId\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"RegexPatternString\"],\"members\":{\"Action\":{},\"RegexPatternString\":{}}}},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\",\"Updates\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{},\"Updates\":{\"shape\":\"S7f\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"Updates\",\"ChangeToken\"],\"members\":{\"RuleGroupId\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"ActivatedRule\"],\"members\":{\"Action\":{},\"ActivatedRule\":{\"shape\":\"S25\"}}}},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"SizeConstraintSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"SizeConstraint\"],\"members\":{\"Action\":{},\"SizeConstraint\":{\"shape\":\"S1r\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"SqlInjectionMatchTuple\"],\"members\":{\"Action\":{},\"SqlInjectionMatchTuple\":{\"shape\":\"S1y\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"ChangeToken\"],\"members\":{\"WebACLId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"ActivatedRule\"],\"members\":{\"Action\":{},\"ActivatedRule\":{\"shape\":\"S25\"}}}},\"DefaultAction\":{\"shape\":\"S20\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"XssMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"XssMatchTuple\"],\"members\":{\"Action\":{},\"XssMatchTuple\":{\"shape\":\"S2m\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}}},\"shapes\":{\"S5\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"ByteMatchTuples\"],\"members\":{\"ByteMatchSetId\":{},\"Name\":{},\"ByteMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}}}},\"S8\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TargetString\",\"TextTransformation\",\"PositionalConstraint\"],\"members\":{\"FieldToMatch\":{\"shape\":\"S9\"},\"TargetString\":{\"type\":\"blob\"},\"TextTransformation\":{},\"PositionalConstraint\":{}}},\"S9\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Data\":{}}},\"Sh\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"GeoMatchConstraints\"],\"members\":{\"GeoMatchSetId\":{},\"Name\":{},\"GeoMatchConstraints\":{\"type\":\"list\",\"member\":{\"shape\":\"Sj\"}}}},\"Sj\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{}}},\"So\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"IPSetDescriptors\"],\"members\":{\"IPSetId\":{},\"Name\":{},\"IPSetDescriptors\":{\"type\":\"list\",\"member\":{\"shape\":\"Sq\"}}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{}}},\"Sx\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S12\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"MatchPredicates\",\"RateKey\",\"RateLimit\"],\"members\":{\"RuleId\":{},\"Name\":{},\"MetricName\":{},\"MatchPredicates\":{\"shape\":\"S13\"},\"RateKey\":{},\"RateLimit\":{\"type\":\"long\"}}},\"S13\":{\"type\":\"list\",\"member\":{\"shape\":\"S14\"}},\"S14\":{\"type\":\"structure\",\"required\":[\"Negated\",\"Type\",\"DataId\"],\"members\":{\"Negated\":{\"type\":\"boolean\"},\"Type\":{},\"DataId\":{}}},\"S19\":{\"type\":\"structure\",\"members\":{\"RegexMatchSetId\":{},\"Name\":{},\"RegexMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S1b\"}}}},\"S1b\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\",\"RegexPatternSetId\"],\"members\":{\"FieldToMatch\":{\"shape\":\"S9\"},\"TextTransformation\":{},\"RegexPatternSetId\":{}}},\"S1e\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"RegexPatternStrings\"],\"members\":{\"RegexPatternSetId\":{},\"Name\":{},\"RegexPatternStrings\":{\"type\":\"list\",\"member\":{}}}},\"S1j\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"Predicates\"],\"members\":{\"RuleId\":{},\"Name\":{},\"MetricName\":{},\"Predicates\":{\"shape\":\"S13\"}}},\"S1m\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\"],\"members\":{\"RuleGroupId\":{},\"Name\":{},\"MetricName\":{}}},\"S1p\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"SizeConstraints\"],\"members\":{\"SizeConstraintSetId\":{},\"Name\":{},\"SizeConstraints\":{\"type\":\"list\",\"member\":{\"shape\":\"S1r\"}}}},\"S1r\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\",\"ComparisonOperator\",\"Size\"],\"members\":{\"FieldToMatch\":{\"shape\":\"S9\"},\"TextTransformation\":{},\"ComparisonOperator\":{},\"Size\":{\"type\":\"long\"}}},\"S1w\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"SqlInjectionMatchTuples\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"Name\":{},\"SqlInjectionMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S1y\"}}}},\"S1y\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\"],\"members\":{\"FieldToMatch\":{\"shape\":\"S9\"},\"TextTransformation\":{}}},\"S20\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}},\"S23\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"DefaultAction\",\"Rules\"],\"members\":{\"WebACLId\":{},\"Name\":{},\"MetricName\":{},\"DefaultAction\":{\"shape\":\"S20\"},\"Rules\":{\"shape\":\"S24\"},\"WebACLArn\":{}}},\"S24\":{\"type\":\"list\",\"member\":{\"shape\":\"S25\"}},\"S25\":{\"type\":\"structure\",\"required\":[\"Priority\",\"RuleId\"],\"members\":{\"Priority\":{\"type\":\"integer\"},\"RuleId\":{},\"Action\":{\"shape\":\"S20\"},\"OverrideAction\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}},\"Type\":{},\"ExcludedRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{}}}}}},\"S2k\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"XssMatchTuples\"],\"members\":{\"XssMatchSetId\":{},\"Name\":{},\"XssMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S2m\"}}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\"],\"members\":{\"FieldToMatch\":{\"shape\":\"S9\"},\"TextTransformation\":{}}},\"S3s\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"LogDestinationConfigs\"],\"members\":{\"ResourceArn\":{},\"LogDestinationConfigs\":{\"type\":\"list\",\"member\":{}},\"RedactedFields\":{\"type\":\"list\",\"member\":{\"shape\":\"S9\"}}}},\"S4e\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"S5p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"Name\"],\"members\":{\"RuleId\":{},\"Name\":{}}}},\"S7f\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"Predicate\"],\"members\":{\"Action\":{},\"Predicate\":{\"shape\":\"S14\"}}}}}}");

/***/ }),

/***/ 45770:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 72867:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-11-28\",\"endpointPrefix\":\"waf-regional\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"WAF Regional\",\"serviceFullName\":\"AWS WAF Regional\",\"serviceId\":\"WAF Regional\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSWAF_Regional_20161128\",\"uid\":\"waf-regional-2016-11-28\"},\"operations\":{\"AssociateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"ResourceArn\"],\"members\":{\"WebACLId\":{},\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByteMatchSet\":{\"shape\":\"S9\"},\"ChangeToken\":{}}}},\"CreateGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GeoMatchSet\":{\"shape\":\"Sk\"},\"ChangeToken\":{}}}},\"CreateIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IPSet\":{\"shape\":\"Sr\"},\"ChangeToken\":{}}}},\"CreateRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"RateKey\",\"RateLimit\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"RateKey\":{},\"RateLimit\":{\"type\":\"long\"},\"ChangeToken\":{},\"Tags\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S15\"},\"ChangeToken\":{}}}},\"CreateRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexMatchSet\":{\"shape\":\"S1c\"},\"ChangeToken\":{}}}},\"CreateRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexPatternSet\":{\"shape\":\"S1h\"},\"ChangeToken\":{}}}},\"CreateRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"ChangeToken\":{},\"Tags\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S1m\"},\"ChangeToken\":{}}}},\"CreateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"ChangeToken\":{},\"Tags\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleGroup\":{\"shape\":\"S1p\"},\"ChangeToken\":{}}}},\"CreateSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SizeConstraintSet\":{\"shape\":\"S1s\"},\"ChangeToken\":{}}}},\"CreateSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SqlInjectionMatchSet\":{\"shape\":\"S1z\"},\"ChangeToken\":{}}}},\"CreateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"MetricName\",\"DefaultAction\",\"ChangeToken\"],\"members\":{\"Name\":{},\"MetricName\":{},\"DefaultAction\":{\"shape\":\"S23\"},\"ChangeToken\":{},\"Tags\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACL\":{\"shape\":\"S26\"},\"ChangeToken\":{}}}},\"CreateWebACLMigrationStack\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"S3BucketName\",\"IgnoreUnsupportedType\"],\"members\":{\"WebACLId\":{},\"S3BucketName\":{},\"IgnoreUnsupportedType\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"S3ObjectUrl\"],\"members\":{\"S3ObjectUrl\":{}}}},\"CreateXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"ChangeToken\"],\"members\":{\"Name\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"XssMatchSet\":{\"shape\":\"S2m\"},\"ChangeToken\":{}}}},\"DeleteByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"ChangeToken\"],\"members\":{\"ByteMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"ChangeToken\"],\"members\":{\"GeoMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"ChangeToken\"],\"members\":{\"IPSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\",\"ChangeToken\"],\"members\":{\"RegexMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"ChangeToken\"],\"members\":{\"RegexPatternSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"ChangeToken\"],\"members\":{\"RuleGroupId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"ChangeToken\"],\"members\":{\"SizeConstraintSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"ChangeToken\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"ChangeToken\"],\"members\":{\"WebACLId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DeleteXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"ChangeToken\"],\"members\":{\"XssMatchSetId\":{},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"DisassociateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\"],\"members\":{\"ByteMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ByteMatchSet\":{\"shape\":\"S9\"}}}},\"GetChangeToken\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"GetChangeTokenStatus\":{\"input\":{\"type\":\"structure\",\"required\":[\"ChangeToken\"],\"members\":{\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeTokenStatus\":{}}}},\"GetGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\"],\"members\":{\"GeoMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GeoMatchSet\":{\"shape\":\"Sk\"}}}},\"GetIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"IPSetId\"],\"members\":{\"IPSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IPSet\":{\"shape\":\"Sr\"}}}},\"GetLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3w\"}}}},\"GetPermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"GetRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S15\"}}}},\"GetRateBasedRuleManagedKeys\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{},\"NextMarker\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ManagedKeys\":{\"type\":\"list\",\"member\":{}},\"NextMarker\":{}}}},\"GetRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\"],\"members\":{\"RegexMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexMatchSet\":{\"shape\":\"S1c\"}}}},\"GetRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\"],\"members\":{\"RegexPatternSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexPatternSet\":{\"shape\":\"S1h\"}}}},\"GetRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rule\":{\"shape\":\"S1m\"}}}},\"GetRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\"],\"members\":{\"RuleGroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleGroup\":{\"shape\":\"S1p\"}}}},\"GetSampledRequests\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebAclId\",\"RuleId\",\"TimeWindow\",\"MaxItems\"],\"members\":{\"WebAclId\":{},\"RuleId\":{},\"TimeWindow\":{\"shape\":\"S4i\"},\"MaxItems\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SampledRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Request\",\"Weight\"],\"members\":{\"Request\":{\"type\":\"structure\",\"members\":{\"ClientIP\":{},\"Country\":{},\"URI\":{},\"Method\":{},\"HTTPVersion\":{},\"Headers\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}}}},\"Weight\":{\"type\":\"long\"},\"Timestamp\":{\"type\":\"timestamp\"},\"Action\":{},\"RuleWithinRuleGroup\":{}}}},\"PopulationSize\":{\"type\":\"long\"},\"TimeWindow\":{\"shape\":\"S4i\"}}}},\"GetSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\"],\"members\":{\"SizeConstraintSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SizeConstraintSet\":{\"shape\":\"S1s\"}}}},\"GetSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\"],\"members\":{\"SqlInjectionMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SqlInjectionMatchSet\":{\"shape\":\"S1z\"}}}},\"GetWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"WebACLId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACL\":{\"shape\":\"S26\"}}}},\"GetWebACLForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACLSummary\":{\"shape\":\"S59\"}}}},\"GetXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\"],\"members\":{\"XssMatchSetId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"XssMatchSet\":{\"shape\":\"S2m\"}}}},\"ListActivatedRulesInRuleGroup\":{\"input\":{\"type\":\"structure\",\"members\":{\"RuleGroupId\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"ActivatedRules\":{\"shape\":\"S27\"}}}},\"ListByteMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"ByteMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"Name\"],\"members\":{\"ByteMatchSetId\":{},\"Name\":{}}}}}}},\"ListGeoMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"GeoMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"Name\"],\"members\":{\"GeoMatchSetId\":{},\"Name\":{}}}}}}},\"ListIPSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"IPSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"Name\"],\"members\":{\"IPSetId\":{},\"Name\":{}}}}}}},\"ListLoggingConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S3w\"}},\"NextMarker\":{}}}},\"ListRateBasedRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Rules\":{\"shape\":\"S5w\"}}}},\"ListRegexMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RegexMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\",\"Name\"],\"members\":{\"RegexMatchSetId\":{},\"Name\":{}}}}}}},\"ListRegexPatternSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RegexPatternSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"Name\"],\"members\":{\"RegexPatternSetId\":{},\"Name\":{}}}}}}},\"ListResourcesForWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\"],\"members\":{\"WebACLId\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceArns\":{\"type\":\"list\",\"member\":{}}}}},\"ListRuleGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"Name\"],\"members\":{\"RuleGroupId\":{},\"Name\":{}}}}}}},\"ListRules\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Rules\":{\"shape\":\"S5w\"}}}},\"ListSizeConstraintSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"SizeConstraintSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"Name\"],\"members\":{\"SizeConstraintSetId\":{},\"Name\":{}}}}}}},\"ListSqlInjectionMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"SqlInjectionMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"Name\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"Name\":{}}}}}}},\"ListSubscribedRuleGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"Name\",\"MetricName\"],\"members\":{\"RuleGroupId\":{},\"Name\":{},\"MetricName\":{}}}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"},\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"TagInfoForResource\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"TagList\":{\"shape\":\"S10\"}}}}}},\"ListWebACLs\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"WebACLs\":{\"type\":\"list\",\"member\":{\"shape\":\"S59\"}}}}},\"ListXssMatchSets\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"XssMatchSets\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"Name\"],\"members\":{\"XssMatchSetId\":{},\"Name\":{}}}}}}},\"PutLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoggingConfiguration\"],\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3w\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3w\"}}}},\"PutPermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Policy\"],\"members\":{\"ResourceArn\":{},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S10\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateByteMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"ByteMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"ByteMatchTuple\"],\"members\":{\"Action\":{},\"ByteMatchTuple\":{\"shape\":\"Sb\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateGeoMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"GeoMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"GeoMatchConstraint\"],\"members\":{\"Action\":{},\"GeoMatchConstraint\":{\"shape\":\"Sm\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"IPSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"IPSetDescriptor\"],\"members\":{\"Action\":{},\"IPSetDescriptor\":{\"shape\":\"St\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRateBasedRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\",\"Updates\",\"RateLimit\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{},\"Updates\":{\"shape\":\"S7p\"},\"RateLimit\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRegexMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexMatchSetId\",\"Updates\",\"ChangeToken\"],\"members\":{\"RegexMatchSetId\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"RegexMatchTuple\"],\"members\":{\"Action\":{},\"RegexMatchTuple\":{\"shape\":\"S1e\"}}}},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"Updates\",\"ChangeToken\"],\"members\":{\"RegexPatternSetId\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"RegexPatternString\"],\"members\":{\"Action\":{},\"RegexPatternString\":{}}}},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"ChangeToken\",\"Updates\"],\"members\":{\"RuleId\":{},\"ChangeToken\":{},\"Updates\":{\"shape\":\"S7p\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\",\"Updates\",\"ChangeToken\"],\"members\":{\"RuleGroupId\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"ActivatedRule\"],\"members\":{\"Action\":{},\"ActivatedRule\":{\"shape\":\"S28\"}}}},\"ChangeToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateSizeConstraintSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"SizeConstraintSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"SizeConstraint\"],\"members\":{\"Action\":{},\"SizeConstraint\":{\"shape\":\"S1u\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateSqlInjectionMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"SqlInjectionMatchTuple\"],\"members\":{\"Action\":{},\"SqlInjectionMatchTuple\":{\"shape\":\"S21\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"ChangeToken\"],\"members\":{\"WebACLId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"ActivatedRule\"],\"members\":{\"Action\":{},\"ActivatedRule\":{\"shape\":\"S28\"}}}},\"DefaultAction\":{\"shape\":\"S23\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}},\"UpdateXssMatchSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"ChangeToken\",\"Updates\"],\"members\":{\"XssMatchSetId\":{},\"ChangeToken\":{},\"Updates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"XssMatchTuple\"],\"members\":{\"Action\":{},\"XssMatchTuple\":{\"shape\":\"S2o\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ChangeToken\":{}}}}},\"shapes\":{\"S9\":{\"type\":\"structure\",\"required\":[\"ByteMatchSetId\",\"ByteMatchTuples\"],\"members\":{\"ByteMatchSetId\":{},\"Name\":{},\"ByteMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"Sb\"}}}},\"Sb\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TargetString\",\"TextTransformation\",\"PositionalConstraint\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sc\"},\"TargetString\":{\"type\":\"blob\"},\"TextTransformation\":{},\"PositionalConstraint\":{}}},\"Sc\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{},\"Data\":{}}},\"Sk\":{\"type\":\"structure\",\"required\":[\"GeoMatchSetId\",\"GeoMatchConstraints\"],\"members\":{\"GeoMatchSetId\":{},\"Name\":{},\"GeoMatchConstraints\":{\"type\":\"list\",\"member\":{\"shape\":\"Sm\"}}}},\"Sm\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{}}},\"Sr\":{\"type\":\"structure\",\"required\":[\"IPSetId\",\"IPSetDescriptors\"],\"members\":{\"IPSetId\":{},\"Name\":{},\"IPSetDescriptors\":{\"type\":\"list\",\"member\":{\"shape\":\"St\"}}}},\"St\":{\"type\":\"structure\",\"required\":[\"Type\",\"Value\"],\"members\":{\"Type\":{},\"Value\":{}}},\"S10\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S15\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"MatchPredicates\",\"RateKey\",\"RateLimit\"],\"members\":{\"RuleId\":{},\"Name\":{},\"MetricName\":{},\"MatchPredicates\":{\"shape\":\"S16\"},\"RateKey\":{},\"RateLimit\":{\"type\":\"long\"}}},\"S16\":{\"type\":\"list\",\"member\":{\"shape\":\"S17\"}},\"S17\":{\"type\":\"structure\",\"required\":[\"Negated\",\"Type\",\"DataId\"],\"members\":{\"Negated\":{\"type\":\"boolean\"},\"Type\":{},\"DataId\":{}}},\"S1c\":{\"type\":\"structure\",\"members\":{\"RegexMatchSetId\":{},\"Name\":{},\"RegexMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S1e\"}}}},\"S1e\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\",\"RegexPatternSetId\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sc\"},\"TextTransformation\":{},\"RegexPatternSetId\":{}}},\"S1h\":{\"type\":\"structure\",\"required\":[\"RegexPatternSetId\",\"RegexPatternStrings\"],\"members\":{\"RegexPatternSetId\":{},\"Name\":{},\"RegexPatternStrings\":{\"type\":\"list\",\"member\":{}}}},\"S1m\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"Predicates\"],\"members\":{\"RuleId\":{},\"Name\":{},\"MetricName\":{},\"Predicates\":{\"shape\":\"S16\"}}},\"S1p\":{\"type\":\"structure\",\"required\":[\"RuleGroupId\"],\"members\":{\"RuleGroupId\":{},\"Name\":{},\"MetricName\":{}}},\"S1s\":{\"type\":\"structure\",\"required\":[\"SizeConstraintSetId\",\"SizeConstraints\"],\"members\":{\"SizeConstraintSetId\":{},\"Name\":{},\"SizeConstraints\":{\"type\":\"list\",\"member\":{\"shape\":\"S1u\"}}}},\"S1u\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\",\"ComparisonOperator\",\"Size\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sc\"},\"TextTransformation\":{},\"ComparisonOperator\":{},\"Size\":{\"type\":\"long\"}}},\"S1z\":{\"type\":\"structure\",\"required\":[\"SqlInjectionMatchSetId\",\"SqlInjectionMatchTuples\"],\"members\":{\"SqlInjectionMatchSetId\":{},\"Name\":{},\"SqlInjectionMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S21\"}}}},\"S21\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sc\"},\"TextTransformation\":{}}},\"S23\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}},\"S26\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"DefaultAction\",\"Rules\"],\"members\":{\"WebACLId\":{},\"Name\":{},\"MetricName\":{},\"DefaultAction\":{\"shape\":\"S23\"},\"Rules\":{\"shape\":\"S27\"},\"WebACLArn\":{}}},\"S27\":{\"type\":\"list\",\"member\":{\"shape\":\"S28\"}},\"S28\":{\"type\":\"structure\",\"required\":[\"Priority\",\"RuleId\"],\"members\":{\"Priority\":{\"type\":\"integer\"},\"RuleId\":{},\"Action\":{\"shape\":\"S23\"},\"OverrideAction\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"Type\":{}}},\"Type\":{},\"ExcludedRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleId\"],\"members\":{\"RuleId\":{}}}}}},\"S2m\":{\"type\":\"structure\",\"required\":[\"XssMatchSetId\",\"XssMatchTuples\"],\"members\":{\"XssMatchSetId\":{},\"Name\":{},\"XssMatchTuples\":{\"type\":\"list\",\"member\":{\"shape\":\"S2o\"}}}},\"S2o\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformation\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sc\"},\"TextTransformation\":{}}},\"S3w\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"LogDestinationConfigs\"],\"members\":{\"ResourceArn\":{},\"LogDestinationConfigs\":{\"type\":\"list\",\"member\":{}},\"RedactedFields\":{\"type\":\"list\",\"member\":{\"shape\":\"Sc\"}}}},\"S4i\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"S59\":{\"type\":\"structure\",\"required\":[\"WebACLId\",\"Name\"],\"members\":{\"WebACLId\":{},\"Name\":{}}},\"S5w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleId\",\"Name\"],\"members\":{\"RuleId\":{},\"Name\":{}}}},\"S7p\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Action\",\"Predicate\"],\"members\":{\"Action\":{},\"Predicate\":{\"shape\":\"S17\"}}}}}}");

/***/ }),

/***/ 68917:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 27916:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-07-29\",\"endpointPrefix\":\"wafv2\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceAbbreviation\":\"WAFV2\",\"serviceFullName\":\"AWS WAFV2\",\"serviceId\":\"WAFV2\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"AWSWAF_20190729\",\"uid\":\"wafv2-2019-07-29\"},\"operations\":{\"AssociateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLArn\",\"ResourceArn\"],\"members\":{\"WebACLArn\":{},\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CheckCapacity\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\",\"Rules\"],\"members\":{\"Scope\":{},\"Rules\":{\"shape\":\"S6\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Capacity\":{\"type\":\"long\"}}}},\"CreateIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"IPAddressVersion\",\"Addresses\"],\"members\":{\"Name\":{},\"Scope\":{},\"Description\":{},\"IPAddressVersion\":{},\"Addresses\":{\"shape\":\"S2g\"},\"Tags\":{\"shape\":\"S2i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Summary\":{\"shape\":\"S2n\"}}}},\"CreateRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"RegularExpressionList\"],\"members\":{\"Name\":{},\"Scope\":{},\"Description\":{},\"RegularExpressionList\":{\"shape\":\"S2r\"},\"Tags\":{\"shape\":\"S2i\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Summary\":{\"shape\":\"S2v\"}}}},\"CreateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Capacity\",\"VisibilityConfig\"],\"members\":{\"Name\":{},\"Scope\":{},\"Capacity\":{\"type\":\"long\"},\"Description\":{},\"Rules\":{\"shape\":\"S6\"},\"VisibilityConfig\":{\"shape\":\"S28\"},\"Tags\":{\"shape\":\"S2i\"},\"CustomResponseBodies\":{\"shape\":\"S2y\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Summary\":{\"shape\":\"S33\"}}}},\"CreateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"DefaultAction\",\"VisibilityConfig\"],\"members\":{\"Name\":{},\"Scope\":{},\"DefaultAction\":{\"shape\":\"S35\"},\"Description\":{},\"Rules\":{\"shape\":\"S6\"},\"VisibilityConfig\":{\"shape\":\"S28\"},\"Tags\":{\"shape\":\"S2i\"},\"CustomResponseBodies\":{\"shape\":\"S2y\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Summary\":{\"shape\":\"S37\"}}}},\"DeleteFirewallManagerRuleGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLArn\",\"WebACLLockToken\"],\"members\":{\"WebACLArn\":{},\"WebACLLockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextWebACLLockToken\":{}}}},\"DeleteIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"LockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeletePermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"LockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"LockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"LockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeManagedRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"VendorName\",\"Name\",\"Scope\"],\"members\":{\"VendorName\":{},\"Name\":{},\"Scope\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Capacity\":{\"type\":\"long\"},\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Action\":{\"shape\":\"S1s\"}}}},\"LabelNamespace\":{},\"AvailableLabels\":{\"shape\":\"S3q\"},\"ConsumedLabels\":{\"shape\":\"S3q\"}}}},\"DisassociateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"GetIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IPSet\":{\"type\":\"structure\",\"required\":[\"Name\",\"Id\",\"ARN\",\"IPAddressVersion\",\"Addresses\"],\"members\":{\"Name\":{},\"Id\":{},\"ARN\":{},\"Description\":{},\"IPAddressVersion\":{},\"Addresses\":{\"shape\":\"S2g\"}}},\"LockToken\":{}}}},\"GetLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3z\"}}}},\"GetPermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Policy\":{}}}},\"GetRateBasedStatementManagedKeys\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\",\"WebACLName\",\"WebACLId\",\"RuleName\"],\"members\":{\"Scope\":{},\"WebACLName\":{},\"WebACLId\":{},\"RuleName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ManagedKeysIPV4\":{\"shape\":\"S4h\"},\"ManagedKeysIPV6\":{\"shape\":\"S4h\"}}}},\"GetRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RegexPatternSet\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"ARN\":{},\"Description\":{},\"RegularExpressionList\":{\"shape\":\"S2r\"}}},\"LockToken\":{}}}},\"GetRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RuleGroup\":{\"type\":\"structure\",\"required\":[\"Name\",\"Id\",\"Capacity\",\"ARN\",\"VisibilityConfig\"],\"members\":{\"Name\":{},\"Id\":{},\"Capacity\":{\"type\":\"long\"},\"ARN\":{},\"Description\":{},\"Rules\":{\"shape\":\"S6\"},\"VisibilityConfig\":{\"shape\":\"S28\"},\"LabelNamespace\":{},\"CustomResponseBodies\":{\"shape\":\"S2y\"},\"AvailableLabels\":{\"shape\":\"S3q\"},\"ConsumedLabels\":{\"shape\":\"S3q\"}}},\"LockToken\":{}}}},\"GetSampledRequests\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebAclArn\",\"RuleMetricName\",\"Scope\",\"TimeWindow\",\"MaxItems\"],\"members\":{\"WebAclArn\":{},\"RuleMetricName\":{},\"Scope\":{},\"TimeWindow\":{\"shape\":\"S4p\"},\"MaxItems\":{\"type\":\"long\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SampledRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Request\",\"Weight\"],\"members\":{\"Request\":{\"type\":\"structure\",\"members\":{\"ClientIP\":{},\"Country\":{},\"URI\":{},\"Method\":{},\"HTTPVersion\":{},\"Headers\":{\"shape\":\"S51\"}}},\"Weight\":{\"type\":\"long\"},\"Timestamp\":{\"type\":\"timestamp\"},\"Action\":{},\"RuleNameWithinRuleGroup\":{},\"RequestHeadersInserted\":{\"shape\":\"S51\"},\"ResponseCodeSent\":{\"type\":\"integer\"},\"Labels\":{\"shape\":\"S25\"}}}},\"PopulationSize\":{\"type\":\"long\"},\"TimeWindow\":{\"shape\":\"S4p\"}}}},\"GetWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACL\":{\"shape\":\"S5a\"},\"LockToken\":{}}}},\"GetWebACLForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebACL\":{\"shape\":\"S5a\"}}}},\"ListAvailableManagedRuleGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\"],\"members\":{\"Scope\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"ManagedRuleGroups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"VendorName\":{},\"Name\":{},\"Description\":{}}}}}}},\"ListIPSets\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\"],\"members\":{\"Scope\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"IPSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S2n\"}}}}},\"ListLoggingConfigurations\":{\"input\":{\"type\":\"structure\",\"members\":{\"Scope\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfigurations\":{\"type\":\"list\",\"member\":{\"shape\":\"S3z\"}},\"NextMarker\":{}}}},\"ListRegexPatternSets\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\"],\"members\":{\"Scope\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RegexPatternSets\":{\"type\":\"list\",\"member\":{\"shape\":\"S2v\"}}}}},\"ListResourcesForWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"WebACLArn\"],\"members\":{\"WebACLArn\":{},\"ResourceType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceArns\":{\"type\":\"list\",\"member\":{}}}}},\"ListRuleGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\"],\"members\":{\"Scope\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"RuleGroups\":{\"type\":\"list\",\"member\":{\"shape\":\"S33\"}}}}},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"},\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"TagInfoForResource\":{\"type\":\"structure\",\"members\":{\"ResourceARN\":{},\"TagList\":{\"shape\":\"S2i\"}}}}}},\"ListWebACLs\":{\"input\":{\"type\":\"structure\",\"required\":[\"Scope\"],\"members\":{\"Scope\":{},\"NextMarker\":{},\"Limit\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextMarker\":{},\"WebACLs\":{\"type\":\"list\",\"member\":{\"shape\":\"S37\"}}}}},\"PutLoggingConfiguration\":{\"input\":{\"type\":\"structure\",\"required\":[\"LoggingConfiguration\"],\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3z\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LoggingConfiguration\":{\"shape\":\"S3z\"}}}},\"PutPermissionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Policy\"],\"members\":{\"ResourceArn\":{},\"Policy\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S2i\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateIPSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"Addresses\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"Description\":{},\"Addresses\":{\"shape\":\"S2g\"},\"LockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextLockToken\":{}}}},\"UpdateRegexPatternSet\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"RegularExpressionList\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"Description\":{},\"RegularExpressionList\":{\"shape\":\"S2r\"},\"LockToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextLockToken\":{}}}},\"UpdateRuleGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"VisibilityConfig\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"Description\":{},\"Rules\":{\"shape\":\"S6\"},\"VisibilityConfig\":{\"shape\":\"S28\"},\"LockToken\":{},\"CustomResponseBodies\":{\"shape\":\"S2y\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextLockToken\":{}}}},\"UpdateWebACL\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Scope\",\"Id\",\"DefaultAction\",\"VisibilityConfig\",\"LockToken\"],\"members\":{\"Name\":{},\"Scope\":{},\"Id\":{},\"DefaultAction\":{\"shape\":\"S35\"},\"Description\":{},\"Rules\":{\"shape\":\"S6\"},\"VisibilityConfig\":{\"shape\":\"S28\"},\"LockToken\":{},\"CustomResponseBodies\":{\"shape\":\"S2y\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NextLockToken\":{}}}}},\"shapes\":{\"S6\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Priority\",\"Statement\",\"VisibilityConfig\"],\"members\":{\"Name\":{},\"Priority\":{\"type\":\"integer\"},\"Statement\":{\"shape\":\"Sa\"},\"Action\":{\"shape\":\"S1s\"},\"OverrideAction\":{\"shape\":\"S23\"},\"RuleLabels\":{\"shape\":\"S25\"},\"VisibilityConfig\":{\"shape\":\"S28\"}}}},\"Sa\":{\"type\":\"structure\",\"members\":{\"ByteMatchStatement\":{\"type\":\"structure\",\"required\":[\"SearchString\",\"FieldToMatch\",\"TextTransformations\",\"PositionalConstraint\"],\"members\":{\"SearchString\":{\"type\":\"blob\"},\"FieldToMatch\":{\"shape\":\"Sd\"},\"TextTransformations\":{\"shape\":\"St\"},\"PositionalConstraint\":{}}},\"SqliMatchStatement\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformations\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sd\"},\"TextTransformations\":{\"shape\":\"St\"}}},\"XssMatchStatement\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"TextTransformations\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sd\"},\"TextTransformations\":{\"shape\":\"St\"}}},\"SizeConstraintStatement\":{\"type\":\"structure\",\"required\":[\"FieldToMatch\",\"ComparisonOperator\",\"Size\",\"TextTransformations\"],\"members\":{\"FieldToMatch\":{\"shape\":\"Sd\"},\"ComparisonOperator\":{},\"Size\":{\"type\":\"long\"},\"TextTransformations\":{\"shape\":\"St\"}}},\"GeoMatchStatement\":{\"type\":\"structure\",\"members\":{\"CountryCodes\":{\"type\":\"list\",\"member\":{}},\"ForwardedIPConfig\":{\"shape\":\"S16\"}}},\"RuleGroupReferenceStatement\":{\"shape\":\"S19\"},\"IPSetReferenceStatement\":{\"type\":\"structure\",\"required\":[\"ARN\"],\"members\":{\"ARN\":{},\"IPSetForwardedIPConfig\":{\"type\":\"structure\",\"required\":[\"HeaderName\",\"FallbackBehavior\",\"Position\"],\"members\":{\"HeaderName\":{},\"FallbackBehavior\":{},\"Position\":{}}}}},\"RegexPatternSetReferenceStatement\":{\"type\":\"structure\",\"required\":[\"ARN\",\"FieldToMatch\",\"TextTransformations\"],\"members\":{\"ARN\":{},\"FieldToMatch\":{\"shape\":\"Sd\"},\"TextTransformations\":{\"shape\":\"St\"}}},\"RateBasedStatement\":{\"type\":\"structure\",\"required\":[\"Limit\",\"AggregateKeyType\"],\"members\":{\"Limit\":{\"type\":\"long\"},\"AggregateKeyType\":{},\"ScopeDownStatement\":{\"shape\":\"Sa\"},\"ForwardedIPConfig\":{\"shape\":\"S16\"}}},\"AndStatement\":{\"type\":\"structure\",\"required\":[\"Statements\"],\"members\":{\"Statements\":{\"shape\":\"S1k\"}}},\"OrStatement\":{\"type\":\"structure\",\"required\":[\"Statements\"],\"members\":{\"Statements\":{\"shape\":\"S1k\"}}},\"NotStatement\":{\"type\":\"structure\",\"required\":[\"Statement\"],\"members\":{\"Statement\":{\"shape\":\"Sa\"}}},\"ManagedRuleGroupStatement\":{\"shape\":\"S1n\"},\"LabelMatchStatement\":{\"type\":\"structure\",\"required\":[\"Scope\",\"Key\"],\"members\":{\"Scope\":{},\"Key\":{}}}}},\"Sd\":{\"type\":\"structure\",\"members\":{\"SingleHeader\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"SingleQueryArgument\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}},\"AllQueryArguments\":{\"type\":\"structure\",\"members\":{}},\"UriPath\":{\"type\":\"structure\",\"members\":{}},\"QueryString\":{\"type\":\"structure\",\"members\":{}},\"Body\":{\"type\":\"structure\",\"members\":{}},\"Method\":{\"type\":\"structure\",\"members\":{}},\"JsonBody\":{\"type\":\"structure\",\"required\":[\"MatchPattern\",\"MatchScope\"],\"members\":{\"MatchPattern\":{\"type\":\"structure\",\"members\":{\"All\":{\"type\":\"structure\",\"members\":{}},\"IncludedPaths\":{\"type\":\"list\",\"member\":{}}}},\"MatchScope\":{},\"InvalidFallbackBehavior\":{}}}}},\"St\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Priority\",\"Type\"],\"members\":{\"Priority\":{\"type\":\"integer\"},\"Type\":{}}}},\"S16\":{\"type\":\"structure\",\"required\":[\"HeaderName\",\"FallbackBehavior\"],\"members\":{\"HeaderName\":{},\"FallbackBehavior\":{}}},\"S19\":{\"type\":\"structure\",\"required\":[\"ARN\"],\"members\":{\"ARN\":{},\"ExcludedRules\":{\"shape\":\"S1a\"}}},\"S1a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"S1k\":{\"type\":\"list\",\"member\":{\"shape\":\"Sa\"}},\"S1n\":{\"type\":\"structure\",\"required\":[\"VendorName\",\"Name\"],\"members\":{\"VendorName\":{},\"Name\":{},\"ExcludedRules\":{\"shape\":\"S1a\"},\"ScopeDownStatement\":{\"shape\":\"Sa\"}}},\"S1s\":{\"type\":\"structure\",\"members\":{\"Block\":{\"shape\":\"S1t\"},\"Allow\":{\"shape\":\"S20\"},\"Count\":{\"shape\":\"S22\"}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"CustomResponse\":{\"type\":\"structure\",\"required\":[\"ResponseCode\"],\"members\":{\"ResponseCode\":{\"type\":\"integer\"},\"CustomResponseBodyKey\":{},\"ResponseHeaders\":{\"shape\":\"S1w\"}}}}},\"S1w\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Value\"],\"members\":{\"Name\":{},\"Value\":{}}}},\"S20\":{\"type\":\"structure\",\"members\":{\"CustomRequestHandling\":{\"shape\":\"S21\"}}},\"S21\":{\"type\":\"structure\",\"required\":[\"InsertHeaders\"],\"members\":{\"InsertHeaders\":{\"shape\":\"S1w\"}}},\"S22\":{\"type\":\"structure\",\"members\":{\"CustomRequestHandling\":{\"shape\":\"S21\"}}},\"S23\":{\"type\":\"structure\",\"members\":{\"Count\":{\"shape\":\"S22\"},\"None\":{\"type\":\"structure\",\"members\":{}}}},\"S25\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\"],\"members\":{\"Name\":{}}}},\"S28\":{\"type\":\"structure\",\"required\":[\"SampledRequestsEnabled\",\"CloudWatchMetricsEnabled\",\"MetricName\"],\"members\":{\"SampledRequestsEnabled\":{\"type\":\"boolean\"},\"CloudWatchMetricsEnabled\":{\"type\":\"boolean\"},\"MetricName\":{}}},\"S2g\":{\"type\":\"list\",\"member\":{}},\"S2i\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S2n\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Description\":{},\"LockToken\":{},\"ARN\":{}}},\"S2r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RegexString\":{}}}},\"S2v\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Description\":{},\"LockToken\":{},\"ARN\":{}}},\"S2y\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"structure\",\"required\":[\"ContentType\",\"Content\"],\"members\":{\"ContentType\":{},\"Content\":{}}}},\"S33\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Description\":{},\"LockToken\":{},\"ARN\":{}}},\"S35\":{\"type\":\"structure\",\"members\":{\"Block\":{\"shape\":\"S1t\"},\"Allow\":{\"shape\":\"S20\"}}},\"S37\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Id\":{},\"Description\":{},\"LockToken\":{},\"ARN\":{}}},\"S3q\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"S3z\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"LogDestinationConfigs\"],\"members\":{\"ResourceArn\":{},\"LogDestinationConfigs\":{\"type\":\"list\",\"member\":{}},\"RedactedFields\":{\"type\":\"list\",\"member\":{\"shape\":\"Sd\"}},\"ManagedByFirewallManager\":{\"type\":\"boolean\"},\"LoggingFilter\":{\"type\":\"structure\",\"required\":[\"Filters\",\"DefaultBehavior\"],\"members\":{\"Filters\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Behavior\",\"Requirement\",\"Conditions\"],\"members\":{\"Behavior\":{},\"Requirement\":{},\"Conditions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ActionCondition\":{\"type\":\"structure\",\"required\":[\"Action\"],\"members\":{\"Action\":{}}},\"LabelNameCondition\":{\"type\":\"structure\",\"required\":[\"LabelName\"],\"members\":{\"LabelName\":{}}}}}}}}},\"DefaultBehavior\":{}}}}},\"S4h\":{\"type\":\"structure\",\"members\":{\"IPAddressVersion\":{},\"Addresses\":{\"shape\":\"S2g\"}}},\"S4p\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"S51\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{}}}},\"S5a\":{\"type\":\"structure\",\"required\":[\"Name\",\"Id\",\"ARN\",\"DefaultAction\",\"VisibilityConfig\"],\"members\":{\"Name\":{},\"Id\":{},\"ARN\":{},\"DefaultAction\":{\"shape\":\"S35\"},\"Description\":{},\"Rules\":{\"shape\":\"S6\"},\"VisibilityConfig\":{\"shape\":\"S28\"},\"Capacity\":{\"type\":\"long\"},\"PreProcessFirewallManagerRuleGroups\":{\"shape\":\"S5b\"},\"PostProcessFirewallManagerRuleGroups\":{\"shape\":\"S5b\"},\"ManagedByFirewallManager\":{\"type\":\"boolean\"},\"LabelNamespace\":{},\"CustomResponseBodies\":{\"shape\":\"S2y\"}}},\"S5b\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Priority\",\"FirewallManagerStatement\",\"OverrideAction\",\"VisibilityConfig\"],\"members\":{\"Name\":{},\"Priority\":{\"type\":\"integer\"},\"FirewallManagerStatement\":{\"type\":\"structure\",\"members\":{\"ManagedRuleGroupStatement\":{\"shape\":\"S1n\"},\"RuleGroupReferenceStatement\":{\"shape\":\"S19\"}}},\"OverrideAction\":{\"shape\":\"S23\"},\"VisibilityConfig\":{\"shape\":\"S28\"}}}}}}");

/***/ }),

/***/ 51265:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 5684:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2020-03-31\",\"endpointPrefix\":\"wellarchitected\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"Well-Architected\",\"serviceFullName\":\"AWS Well-Architected Tool\",\"serviceId\":\"WellArchitected\",\"signatureVersion\":\"v4\",\"signingName\":\"wellarchitected\",\"uid\":\"wellarchitected-2020-03-31\"},\"operations\":{\"AssociateLenses\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/workloads/{WorkloadId}/associateLenses\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAliases\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAliases\":{\"shape\":\"S3\"}}}},\"CreateMilestone\":{\"http\":{\"requestUri\":\"/workloads/{WorkloadId}/milestones\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"MilestoneName\",\"ClientRequestToken\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"MilestoneName\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"}}}},\"CreateWorkload\":{\"http\":{\"requestUri\":\"/workloads\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadName\",\"Description\",\"Environment\",\"ReviewOwner\",\"Lenses\",\"ClientRequestToken\"],\"members\":{\"WorkloadName\":{},\"Description\":{},\"Environment\":{},\"AccountIds\":{\"shape\":\"Se\"},\"AwsRegions\":{\"shape\":\"Sg\"},\"NonAwsRegions\":{\"shape\":\"Si\"},\"PillarPriorities\":{\"shape\":\"Sk\"},\"ArchitecturalDesign\":{},\"ReviewOwner\":{},\"IndustryType\":{},\"Industry\":{},\"Lenses\":{\"shape\":\"Sq\"},\"Notes\":{},\"ClientRequestToken\":{\"idempotencyToken\":true},\"Tags\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"WorkloadArn\":{}}}},\"CreateWorkloadShare\":{\"http\":{\"requestUri\":\"/workloads/{WorkloadId}/shares\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"SharedWith\",\"PermissionType\",\"ClientRequestToken\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"SharedWith\":{},\"PermissionType\":{},\"ClientRequestToken\":{\"idempotencyToken\":true}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"ShareId\":{}}}},\"DeleteWorkload\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/workloads/{WorkloadId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"ClientRequestToken\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"ClientRequestToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"ClientRequestToken\"}}}},\"DeleteWorkloadShare\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/workloads/{WorkloadId}/shares/{ShareId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ShareId\",\"WorkloadId\",\"ClientRequestToken\"],\"members\":{\"ShareId\":{\"location\":\"uri\",\"locationName\":\"ShareId\"},\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"ClientRequestToken\":{\"idempotencyToken\":true,\"location\":\"querystring\",\"locationName\":\"ClientRequestToken\"}}}},\"DisassociateLenses\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/workloads/{WorkloadId}/disassociateLenses\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAliases\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAliases\":{\"shape\":\"S3\"}}}},\"GetAnswer\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\",\"QuestionId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"QuestionId\":{\"location\":\"uri\",\"locationName\":\"QuestionId\"},\"MilestoneNumber\":{\"location\":\"querystring\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"},\"LensAlias\":{},\"Answer\":{\"shape\":\"S18\"}}}},\"GetLensReview\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"MilestoneNumber\":{\"location\":\"querystring\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"},\"LensReview\":{\"shape\":\"S1n\"}}}},\"GetLensReviewReport\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}/report\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"MilestoneNumber\":{\"location\":\"querystring\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"},\"LensReviewReport\":{\"type\":\"structure\",\"members\":{\"LensAlias\":{},\"Base64String\":{}}}}}},\"GetLensVersionDifference\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/lenses/{LensAlias}/versionDifference\"},\"input\":{\"type\":\"structure\",\"required\":[\"LensAlias\",\"BaseLensVersion\"],\"members\":{\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"BaseLensVersion\":{\"location\":\"querystring\",\"locationName\":\"BaseLensVersion\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LensAlias\":{},\"BaseLensVersion\":{},\"LatestLensVersion\":{},\"VersionDifferences\":{\"type\":\"structure\",\"members\":{\"PillarDifferences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PillarId\":{},\"DifferenceStatus\":{},\"QuestionDifferences\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"QuestionId\":{},\"QuestionTitle\":{},\"DifferenceStatus\":{}}}}}}}}}}}},\"GetMilestone\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/milestones/{MilestoneNumber}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"MilestoneNumber\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"MilestoneNumber\":{\"location\":\"uri\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"Milestone\":{\"type\":\"structure\",\"members\":{\"MilestoneNumber\":{\"type\":\"integer\"},\"MilestoneName\":{},\"RecordedAt\":{\"type\":\"timestamp\"},\"Workload\":{\"shape\":\"S2d\"}}}}}},\"GetWorkload\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Workload\":{\"shape\":\"S2d\"}}}},\"ListAnswers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"PillarId\":{\"location\":\"querystring\",\"locationName\":\"PillarId\"},\"MilestoneNumber\":{\"location\":\"querystring\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"},\"LensAlias\":{},\"AnswerSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"QuestionId\":{},\"PillarId\":{},\"QuestionTitle\":{},\"Choices\":{\"shape\":\"S1d\"},\"SelectedChoices\":{\"shape\":\"S1i\"},\"IsApplicable\":{\"type\":\"boolean\"},\"Risk\":{}}}},\"NextToken\":{}}}},\"ListLensReviewImprovements\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}/improvements\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"PillarId\":{\"location\":\"querystring\",\"locationName\":\"PillarId\"},\"MilestoneNumber\":{\"location\":\"querystring\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"},\"LensAlias\":{},\"ImprovementSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"QuestionId\":{},\"PillarId\":{},\"QuestionTitle\":{},\"Risk\":{},\"ImprovementPlanUrl\":{}}}},\"NextToken\":{}}}},\"ListLensReviews\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"MilestoneNumber\":{\"location\":\"querystring\",\"locationName\":\"MilestoneNumber\",\"type\":\"integer\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneNumber\":{\"type\":\"integer\"},\"LensReviewSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LensAlias\":{},\"LensVersion\":{},\"LensName\":{},\"LensStatus\":{},\"UpdatedAt\":{\"type\":\"timestamp\"},\"RiskCounts\":{\"shape\":\"S1u\"}}}},\"NextToken\":{}}}},\"ListLenses\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/lenses\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"LensSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"LensAlias\":{},\"LensVersion\":{},\"LensName\":{},\"Description\":{}}}},\"NextToken\":{}}}},\"ListMilestones\":{\"http\":{\"requestUri\":\"/workloads/{WorkloadId}/milestonesSummaries\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"MilestoneSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MilestoneNumber\":{\"type\":\"integer\"},\"MilestoneName\":{},\"RecordedAt\":{\"type\":\"timestamp\"},\"WorkloadSummary\":{\"shape\":\"S37\"}}}},\"NextToken\":{}}}},\"ListNotifications\":{\"http\":{\"requestUri\":\"/notifications\"},\"input\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"NotificationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"LensUpgradeSummary\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"WorkloadName\":{},\"LensAlias\":{},\"CurrentLensVersion\":{},\"LatestLensVersion\":{}}}}}},\"NextToken\":{}}}},\"ListShareInvitations\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/shareInvitations\"},\"input\":{\"type\":\"structure\",\"members\":{\"WorkloadNamePrefix\":{\"location\":\"querystring\",\"locationName\":\"WorkloadNamePrefix\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ShareInvitationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ShareInvitationId\":{},\"SharedBy\":{},\"SharedWith\":{},\"PermissionType\":{},\"WorkloadName\":{},\"WorkloadId\":{}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{WorkloadArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadArn\"],\"members\":{\"WorkloadArn\":{\"location\":\"uri\",\"locationName\":\"WorkloadArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Ss\"}}}},\"ListWorkloadShares\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/workloads/{WorkloadId}/shares\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"SharedWithPrefix\":{\"location\":\"querystring\",\"locationName\":\"SharedWithPrefix\"},\"NextToken\":{\"location\":\"querystring\",\"locationName\":\"NextToken\"},\"MaxResults\":{\"location\":\"querystring\",\"locationName\":\"MaxResults\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"WorkloadShareSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ShareId\":{},\"SharedWith\":{},\"PermissionType\":{},\"Status\":{}}}},\"NextToken\":{}}}},\"ListWorkloads\":{\"http\":{\"requestUri\":\"/workloadsSummaries\"},\"input\":{\"type\":\"structure\",\"members\":{\"WorkloadNamePrefix\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadSummaries\":{\"type\":\"list\",\"member\":{\"shape\":\"S37\"}},\"NextToken\":{}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{WorkloadArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadArn\",\"Tags\"],\"members\":{\"WorkloadArn\":{\"location\":\"uri\",\"locationName\":\"WorkloadArn\"},\"Tags\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{WorkloadArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadArn\",\"TagKeys\"],\"members\":{\"WorkloadArn\":{\"location\":\"uri\",\"locationName\":\"WorkloadArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAnswer\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}/answers/{QuestionId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\",\"QuestionId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"QuestionId\":{\"location\":\"uri\",\"locationName\":\"QuestionId\"},\"SelectedChoices\":{\"shape\":\"S1i\"},\"Notes\":{},\"IsApplicable\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"LensAlias\":{},\"Answer\":{\"shape\":\"S18\"}}}},\"UpdateLensReview\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"LensNotes\":{},\"PillarNotes\":{\"type\":\"map\",\"key\":{},\"value\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"LensReview\":{\"shape\":\"S1n\"}}}},\"UpdateShareInvitation\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/shareInvitations/{ShareInvitationId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ShareInvitationId\",\"ShareInvitationAction\"],\"members\":{\"ShareInvitationId\":{\"location\":\"uri\",\"locationName\":\"ShareInvitationId\"},\"ShareInvitationAction\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ShareInvitation\":{\"type\":\"structure\",\"members\":{\"ShareInvitationId\":{},\"WorkloadId\":{}}}}}},\"UpdateWorkload\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/workloads/{WorkloadId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"WorkloadName\":{},\"Description\":{},\"Environment\":{},\"AccountIds\":{\"shape\":\"Se\"},\"AwsRegions\":{\"shape\":\"Sg\"},\"NonAwsRegions\":{\"shape\":\"Si\"},\"PillarPriorities\":{\"shape\":\"Sk\"},\"ArchitecturalDesign\":{},\"ReviewOwner\":{},\"IsReviewOwnerUpdateAcknowledged\":{\"type\":\"boolean\"},\"IndustryType\":{},\"Industry\":{},\"Notes\":{},\"ImprovementStatus\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Workload\":{\"shape\":\"S2d\"}}}},\"UpdateWorkloadShare\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/workloads/{WorkloadId}/shares/{ShareId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ShareId\",\"WorkloadId\",\"PermissionType\"],\"members\":{\"ShareId\":{\"location\":\"uri\",\"locationName\":\"ShareId\"},\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"PermissionType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"WorkloadShare\":{\"type\":\"structure\",\"members\":{\"ShareId\":{},\"SharedBy\":{},\"SharedWith\":{},\"PermissionType\":{},\"Status\":{},\"WorkloadName\":{},\"WorkloadId\":{}}}}}},\"UpgradeLensReview\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/workloads/{WorkloadId}/lensReviews/{LensAlias}/upgrade\"},\"input\":{\"type\":\"structure\",\"required\":[\"WorkloadId\",\"LensAlias\",\"MilestoneName\"],\"members\":{\"WorkloadId\":{\"location\":\"uri\",\"locationName\":\"WorkloadId\"},\"LensAlias\":{\"location\":\"uri\",\"locationName\":\"LensAlias\"},\"MilestoneName\":{},\"ClientRequestToken\":{}}}}},\"shapes\":{\"S3\":{\"type\":\"list\",\"member\":{}},\"Se\":{\"type\":\"list\",\"member\":{}},\"Sg\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"list\",\"member\":{}},\"Sk\":{\"type\":\"list\",\"member\":{}},\"Sq\":{\"type\":\"list\",\"member\":{}},\"Ss\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S18\":{\"type\":\"structure\",\"members\":{\"QuestionId\":{},\"PillarId\":{},\"QuestionTitle\":{},\"QuestionDescription\":{},\"ImprovementPlanUrl\":{},\"HelpfulResourceUrl\":{},\"Choices\":{\"shape\":\"S1d\"},\"SelectedChoices\":{\"shape\":\"S1i\"},\"IsApplicable\":{\"type\":\"boolean\"},\"Risk\":{},\"Notes\":{}}},\"S1d\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ChoiceId\":{},\"Title\":{},\"Description\":{}}}},\"S1i\":{\"type\":\"list\",\"member\":{}},\"S1n\":{\"type\":\"structure\",\"members\":{\"LensAlias\":{},\"LensVersion\":{},\"LensName\":{},\"LensStatus\":{},\"PillarReviewSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PillarId\":{},\"PillarName\":{},\"Notes\":{},\"RiskCounts\":{\"shape\":\"S1u\"}}}},\"UpdatedAt\":{\"type\":\"timestamp\"},\"Notes\":{},\"RiskCounts\":{\"shape\":\"S1u\"},\"NextToken\":{}}},\"S1u\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"integer\"}},\"S2d\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"WorkloadArn\":{},\"WorkloadName\":{},\"Description\":{},\"Environment\":{},\"UpdatedAt\":{\"type\":\"timestamp\"},\"AccountIds\":{\"shape\":\"Se\"},\"AwsRegions\":{\"shape\":\"Sg\"},\"NonAwsRegions\":{\"shape\":\"Si\"},\"ArchitecturalDesign\":{},\"ReviewOwner\":{},\"ReviewRestrictionDate\":{\"type\":\"timestamp\"},\"IsReviewOwnerUpdateAcknowledged\":{\"type\":\"boolean\"},\"IndustryType\":{},\"Industry\":{},\"Notes\":{},\"ImprovementStatus\":{},\"RiskCounts\":{\"shape\":\"S1u\"},\"PillarPriorities\":{\"shape\":\"Sk\"},\"Lenses\":{\"shape\":\"Sq\"},\"Owner\":{},\"ShareInvitationId\":{},\"Tags\":{\"shape\":\"Ss\"}}},\"S37\":{\"type\":\"structure\",\"members\":{\"WorkloadId\":{},\"WorkloadArn\":{},\"WorkloadName\":{},\"Owner\":{},\"UpdatedAt\":{\"type\":\"timestamp\"},\"Lenses\":{\"shape\":\"Sq\"},\"RiskCounts\":{\"shape\":\"S1u\"},\"ImprovementStatus\":{}}}}}");

/***/ }),

/***/ 47645:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAnswers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLensReviewImprovements\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLensReviews\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListLenses\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMilestones\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListNotifications\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListShareInvitations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWorkloadShares\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWorkloads\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 12789:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-05-01\",\"endpointPrefix\":\"workdocs\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon WorkDocs\",\"serviceId\":\"WorkDocs\",\"signatureVersion\":\"v4\",\"uid\":\"workdocs-2016-05-01\"},\"operations\":{\"AbortDocumentVersionUpload\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/documents/{DocumentId}/versions/{VersionId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\",\"VersionId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"VersionId\":{\"location\":\"uri\",\"locationName\":\"VersionId\"}}}},\"ActivateUser\":{\"http\":{\"requestUri\":\"/api/v1/users/{UserId}/activation\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S8\"}}}},\"AddResourcePermissions\":{\"http\":{\"requestUri\":\"/api/v1/resources/{ResourceId}/permissions\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Principals\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"Principals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"Type\",\"Role\"],\"members\":{\"Id\":{},\"Type\":{},\"Role\":{}}}},\"NotificationOptions\":{\"type\":\"structure\",\"members\":{\"SendEmail\":{\"type\":\"boolean\"},\"EmailMessage\":{\"shape\":\"St\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ShareResults\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"PrincipalId\":{},\"InviteePrincipalId\":{},\"Role\":{},\"Status\":{},\"ShareId\":{},\"StatusMessage\":{\"shape\":\"St\"}}}}}}},\"CreateComment\":{\"http\":{\"requestUri\":\"/api/v1/documents/{DocumentId}/versions/{VersionId}/comment\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\",\"VersionId\",\"Text\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"VersionId\":{\"location\":\"uri\",\"locationName\":\"VersionId\"},\"ParentId\":{},\"ThreadId\":{},\"Text\":{\"shape\":\"S10\"},\"Visibility\":{},\"NotifyCollaborators\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Comment\":{\"shape\":\"S13\"}}}},\"CreateCustomMetadata\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/api/v1/resources/{ResourceId}/customMetadata\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"CustomMetadata\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionid\"},\"CustomMetadata\":{\"shape\":\"S16\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateFolder\":{\"http\":{\"requestUri\":\"/api/v1/folders\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ParentFolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"Name\":{},\"ParentFolderId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S1d\"}}}},\"CreateLabels\":{\"http\":{\"method\":\"PUT\",\"requestUri\":\"/api/v1/resources/{ResourceId}/labels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Labels\"],\"members\":{\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"Labels\":{\"shape\":\"S1g\"},\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateNotificationSubscription\":{\"http\":{\"requestUri\":\"/api/v1/organizations/{OrganizationId}/subscriptions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Endpoint\",\"Protocol\",\"SubscriptionType\"],\"members\":{\"OrganizationId\":{\"location\":\"uri\",\"locationName\":\"OrganizationId\"},\"Endpoint\":{},\"Protocol\":{},\"SubscriptionType\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Subscription\":{\"shape\":\"S1p\"}}}},\"CreateUser\":{\"http\":{\"requestUri\":\"/api/v1/users\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"Username\",\"GivenName\",\"Surname\",\"Password\"],\"members\":{\"OrganizationId\":{},\"Username\":{},\"EmailAddress\":{},\"GivenName\":{},\"Surname\":{},\"Password\":{\"type\":\"string\",\"sensitive\":true},\"TimeZoneId\":{},\"StorageRule\":{\"shape\":\"Sj\"},\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S8\"}}}},\"DeactivateUser\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/users/{UserId}/activation\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"}}}},\"DeleteComment\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/documents/{DocumentId}/versions/{VersionId}/comment/{CommentId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\",\"VersionId\",\"CommentId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"VersionId\":{\"location\":\"uri\",\"locationName\":\"VersionId\"},\"CommentId\":{\"location\":\"uri\",\"locationName\":\"CommentId\"}}}},\"DeleteCustomMetadata\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/resources/{ResourceId}/customMetadata\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"VersionId\":{\"location\":\"querystring\",\"locationName\":\"versionId\"},\"Keys\":{\"location\":\"querystring\",\"locationName\":\"keys\",\"type\":\"list\",\"member\":{}},\"DeleteAll\":{\"location\":\"querystring\",\"locationName\":\"deleteAll\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteDocument\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/documents/{DocumentId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"}}}},\"DeleteFolder\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/folders/{FolderId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"FolderId\":{\"location\":\"uri\",\"locationName\":\"FolderId\"}}}},\"DeleteFolderContents\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/folders/{FolderId}/contents\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"FolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"FolderId\":{\"location\":\"uri\",\"locationName\":\"FolderId\"}}}},\"DeleteLabels\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/resources/{ResourceId}/labels\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"Labels\":{\"shape\":\"S1g\",\"location\":\"querystring\",\"locationName\":\"labels\"},\"DeleteAll\":{\"location\":\"querystring\",\"locationName\":\"deleteAll\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteNotificationSubscription\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/organizations/{OrganizationId}/subscriptions/{SubscriptionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SubscriptionId\",\"OrganizationId\"],\"members\":{\"SubscriptionId\":{\"location\":\"uri\",\"locationName\":\"SubscriptionId\"},\"OrganizationId\":{\"location\":\"uri\",\"locationName\":\"OrganizationId\"}}}},\"DeleteUser\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/users/{UserId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"}}}},\"DescribeActivities\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/activities\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"StartTime\":{\"location\":\"querystring\",\"locationName\":\"startTime\",\"type\":\"timestamp\"},\"EndTime\":{\"location\":\"querystring\",\"locationName\":\"endTime\",\"type\":\"timestamp\"},\"OrganizationId\":{\"location\":\"querystring\",\"locationName\":\"organizationId\"},\"ActivityTypes\":{\"location\":\"querystring\",\"locationName\":\"activityTypes\"},\"ResourceId\":{\"location\":\"querystring\",\"locationName\":\"resourceId\"},\"UserId\":{\"location\":\"querystring\",\"locationName\":\"userId\"},\"IncludeIndirectActivities\":{\"location\":\"querystring\",\"locationName\":\"includeIndirectActivities\",\"type\":\"boolean\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserActivities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"TimeStamp\":{\"type\":\"timestamp\"},\"IsIndirectActivity\":{\"type\":\"boolean\"},\"OrganizationId\":{},\"Initiator\":{\"shape\":\"S2d\"},\"Participants\":{\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"shape\":\"S2d\"}},\"Groups\":{\"shape\":\"S2g\"}}},\"ResourceMetadata\":{\"shape\":\"S2j\"},\"OriginalParent\":{\"shape\":\"S2j\"},\"CommentMetadata\":{\"type\":\"structure\",\"members\":{\"CommentId\":{},\"Contributor\":{\"shape\":\"S8\"},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"CommentStatus\":{},\"RecipientId\":{}}}}}},\"Marker\":{}}}},\"DescribeComments\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/documents/{DocumentId}/versions/{VersionId}/comments\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\",\"VersionId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"VersionId\":{\"location\":\"uri\",\"locationName\":\"VersionId\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Comments\":{\"type\":\"list\",\"member\":{\"shape\":\"S13\"}},\"Marker\":{}}}},\"DescribeDocumentVersions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/documents/{DocumentId}/versions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Include\":{\"location\":\"querystring\",\"locationName\":\"include\"},\"Fields\":{\"location\":\"querystring\",\"locationName\":\"fields\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"DocumentVersions\":{\"type\":\"list\",\"member\":{\"shape\":\"S2u\"}},\"Marker\":{}}}},\"DescribeFolderContents\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/folders/{FolderId}/contents\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"FolderId\":{\"location\":\"uri\",\"locationName\":\"FolderId\"},\"Sort\":{\"location\":\"querystring\",\"locationName\":\"sort\"},\"Order\":{\"location\":\"querystring\",\"locationName\":\"order\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"Type\":{\"location\":\"querystring\",\"locationName\":\"type\"},\"Include\":{\"location\":\"querystring\",\"locationName\":\"include\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Folders\":{\"shape\":\"S37\"},\"Documents\":{\"shape\":\"S38\"},\"Marker\":{}}}},\"DescribeGroups\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/groups\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"SearchQuery\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"SearchQuery\":{\"shape\":\"S3b\",\"location\":\"querystring\",\"locationName\":\"searchQuery\"},\"OrganizationId\":{\"location\":\"querystring\",\"locationName\":\"organizationId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"shape\":\"S2g\"},\"Marker\":{}}}},\"DescribeNotificationSubscriptions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/organizations/{OrganizationId}/subscriptions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{\"location\":\"uri\",\"locationName\":\"OrganizationId\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Subscriptions\":{\"type\":\"list\",\"member\":{\"shape\":\"S1p\"}},\"Marker\":{}}}},\"DescribeResourcePermissions\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/resources/{ResourceId}/permissions\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"PrincipalId\":{\"location\":\"querystring\",\"locationName\":\"principalId\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Principals\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Type\":{},\"Roles\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Role\":{},\"Type\":{}}}}}}},\"Marker\":{}}}},\"DescribeRootFolders\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/me/root\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AuthenticationToken\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Folders\":{\"shape\":\"S37\"},\"Marker\":{}}}},\"DescribeUsers\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/users\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"OrganizationId\":{\"location\":\"querystring\",\"locationName\":\"organizationId\"},\"UserIds\":{\"location\":\"querystring\",\"locationName\":\"userIds\"},\"Query\":{\"shape\":\"S3b\",\"location\":\"querystring\",\"locationName\":\"query\"},\"Include\":{\"location\":\"querystring\",\"locationName\":\"include\"},\"Order\":{\"location\":\"querystring\",\"locationName\":\"order\"},\"Sort\":{\"location\":\"querystring\",\"locationName\":\"sort\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Fields\":{\"location\":\"querystring\",\"locationName\":\"fields\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"shape\":\"S8\"}},\"TotalNumberOfUsers\":{\"deprecated\":true,\"type\":\"long\"},\"Marker\":{}}}},\"GetCurrentUser\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/me\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"AuthenticationToken\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S8\"}}}},\"GetDocument\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/documents/{DocumentId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"IncludeCustomMetadata\":{\"location\":\"querystring\",\"locationName\":\"includeCustomMetadata\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S39\"},\"CustomMetadata\":{\"shape\":\"S16\"}}}},\"GetDocumentPath\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/documents/{DocumentId}/path\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Fields\":{\"location\":\"querystring\",\"locationName\":\"fields\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Path\":{\"shape\":\"S42\"}}}},\"GetDocumentVersion\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/documents/{DocumentId}/versions/{VersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\",\"VersionId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"VersionId\":{\"location\":\"uri\",\"locationName\":\"VersionId\"},\"Fields\":{\"location\":\"querystring\",\"locationName\":\"fields\"},\"IncludeCustomMetadata\":{\"location\":\"querystring\",\"locationName\":\"includeCustomMetadata\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S2u\"},\"CustomMetadata\":{\"shape\":\"S16\"}}}},\"GetFolder\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/folders/{FolderId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"FolderId\":{\"location\":\"uri\",\"locationName\":\"FolderId\"},\"IncludeCustomMetadata\":{\"location\":\"querystring\",\"locationName\":\"includeCustomMetadata\",\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S1d\"},\"CustomMetadata\":{\"shape\":\"S16\"}}}},\"GetFolderPath\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/folders/{FolderId}/path\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"FolderId\":{\"location\":\"uri\",\"locationName\":\"FolderId\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Fields\":{\"location\":\"querystring\",\"locationName\":\"fields\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Path\":{\"shape\":\"S42\"}}}},\"GetResources\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/api/v1/resources\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"UserId\":{\"location\":\"querystring\",\"locationName\":\"userId\"},\"CollectionType\":{\"location\":\"querystring\",\"locationName\":\"collectionType\"},\"Limit\":{\"location\":\"querystring\",\"locationName\":\"limit\",\"type\":\"integer\"},\"Marker\":{\"location\":\"querystring\",\"locationName\":\"marker\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Folders\":{\"shape\":\"S37\"},\"Documents\":{\"shape\":\"S38\"},\"Marker\":{}}}},\"InitiateDocumentVersionUpload\":{\"http\":{\"requestUri\":\"/api/v1/documents\",\"responseCode\":201},\"input\":{\"type\":\"structure\",\"required\":[\"ParentFolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"Id\":{},\"Name\":{},\"ContentCreatedTimestamp\":{\"type\":\"timestamp\"},\"ContentModifiedTimestamp\":{\"type\":\"timestamp\"},\"ContentType\":{},\"DocumentSizeInBytes\":{\"type\":\"long\"},\"ParentFolderId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Metadata\":{\"shape\":\"S39\"},\"UploadMetadata\":{\"type\":\"structure\",\"members\":{\"UploadUrl\":{\"shape\":\"S2z\"},\"SignedHeaders\":{\"type\":\"map\",\"key\":{},\"value\":{}}}}}}},\"RemoveAllResourcePermissions\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/resources/{ResourceId}/permissions\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"}}}},\"RemoveResourcePermission\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/api/v1/resources/{ResourceId}/permissions/{PrincipalId}\",\"responseCode\":204},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"PrincipalId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"ResourceId\":{\"location\":\"uri\",\"locationName\":\"ResourceId\"},\"PrincipalId\":{\"location\":\"uri\",\"locationName\":\"PrincipalId\"},\"PrincipalType\":{\"location\":\"querystring\",\"locationName\":\"type\"}}}},\"UpdateDocument\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/api/v1/documents/{DocumentId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"Name\":{},\"ParentFolderId\":{},\"ResourceState\":{}}}},\"UpdateDocumentVersion\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/api/v1/documents/{DocumentId}/versions/{VersionId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"DocumentId\",\"VersionId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"DocumentId\":{\"location\":\"uri\",\"locationName\":\"DocumentId\"},\"VersionId\":{\"location\":\"uri\",\"locationName\":\"VersionId\"},\"VersionStatus\":{}}}},\"UpdateFolder\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/api/v1/folders/{FolderId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"FolderId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"FolderId\":{\"location\":\"uri\",\"locationName\":\"FolderId\"},\"Name\":{},\"ParentFolderId\":{},\"ResourceState\":{}}}},\"UpdateUser\":{\"http\":{\"method\":\"PATCH\",\"requestUri\":\"/api/v1/users/{UserId}\",\"responseCode\":200},\"input\":{\"type\":\"structure\",\"required\":[\"UserId\"],\"members\":{\"AuthenticationToken\":{\"shape\":\"S2\",\"location\":\"header\",\"locationName\":\"Authentication\"},\"UserId\":{\"location\":\"uri\",\"locationName\":\"UserId\"},\"GivenName\":{},\"Surname\":{},\"Type\":{},\"StorageRule\":{\"shape\":\"Sj\"},\"TimeZoneId\":{},\"Locale\":{},\"GrantPoweruserPrivileges\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"User\":{\"shape\":\"S8\"}}}}},\"shapes\":{\"S2\":{\"type\":\"string\",\"sensitive\":true},\"S8\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Username\":{},\"EmailAddress\":{},\"GivenName\":{},\"Surname\":{},\"OrganizationId\":{},\"RootFolderId\":{},\"RecycleBinFolderId\":{},\"Status\":{},\"Type\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"ModifiedTimestamp\":{\"type\":\"timestamp\"},\"TimeZoneId\":{},\"Locale\":{},\"Storage\":{\"type\":\"structure\",\"members\":{\"StorageUtilizedInBytes\":{\"type\":\"long\"},\"StorageRule\":{\"shape\":\"Sj\"}}}}},\"Sj\":{\"type\":\"structure\",\"members\":{\"StorageAllocatedInBytes\":{\"type\":\"long\"},\"StorageType\":{}}},\"St\":{\"type\":\"string\",\"sensitive\":true},\"S10\":{\"type\":\"string\",\"sensitive\":true},\"S13\":{\"type\":\"structure\",\"required\":[\"CommentId\"],\"members\":{\"CommentId\":{},\"ParentId\":{},\"ThreadId\":{},\"Text\":{\"shape\":\"S10\"},\"Contributor\":{\"shape\":\"S8\"},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"Status\":{},\"Visibility\":{},\"RecipientId\":{}}},\"S16\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S1d\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"CreatorId\":{},\"ParentFolderId\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"ModifiedTimestamp\":{\"type\":\"timestamp\"},\"ResourceState\":{},\"Signature\":{},\"Labels\":{\"shape\":\"S1g\"},\"Size\":{\"type\":\"long\"},\"LatestVersionSize\":{\"type\":\"long\"}}},\"S1g\":{\"type\":\"list\",\"member\":{}},\"S1p\":{\"type\":\"structure\",\"members\":{\"SubscriptionId\":{},\"EndPoint\":{},\"Protocol\":{}}},\"S2d\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Username\":{},\"GivenName\":{},\"Surname\":{},\"EmailAddress\":{}}},\"S2g\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{}}}},\"S2j\":{\"type\":\"structure\",\"members\":{\"Type\":{},\"Name\":{},\"OriginalName\":{},\"Id\":{},\"VersionId\":{},\"Owner\":{\"shape\":\"S2d\"},\"ParentId\":{}}},\"S2u\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"ContentType\":{},\"Size\":{\"type\":\"long\"},\"Signature\":{},\"Status\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"ModifiedTimestamp\":{\"type\":\"timestamp\"},\"ContentCreatedTimestamp\":{\"type\":\"timestamp\"},\"ContentModifiedTimestamp\":{\"type\":\"timestamp\"},\"CreatorId\":{},\"Thumbnail\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S2z\"}},\"Source\":{\"type\":\"map\",\"key\":{},\"value\":{\"shape\":\"S2z\"}}}},\"S2z\":{\"type\":\"string\",\"sensitive\":true},\"S37\":{\"type\":\"list\",\"member\":{\"shape\":\"S1d\"}},\"S38\":{\"type\":\"list\",\"member\":{\"shape\":\"S39\"}},\"S39\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"CreatorId\":{},\"ParentFolderId\":{},\"CreatedTimestamp\":{\"type\":\"timestamp\"},\"ModifiedTimestamp\":{\"type\":\"timestamp\"},\"LatestVersionMetadata\":{\"shape\":\"S2u\"},\"ResourceState\":{},\"Labels\":{\"shape\":\"S1g\"}}},\"S3b\":{\"type\":\"string\",\"sensitive\":true},\"S42\":{\"type\":\"structure\",\"members\":{\"Components\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{}}}}}}}}");

/***/ }),

/***/ 20074:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeDocumentVersions\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"DocumentVersions\"},\"DescribeFolderContents\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":[\"Folders\",\"Documents\"]},\"DescribeUsers\":{\"input_token\":\"Marker\",\"limit_key\":\"Limit\",\"output_token\":\"Marker\",\"result_key\":\"Users\"}}}");

/***/ }),

/***/ 44786:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2018-09-25\",\"endpointPrefix\":\"worklink\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceAbbreviation\":\"WorkLink\",\"serviceFullName\":\"Amazon WorkLink\",\"serviceId\":\"WorkLink\",\"signatureVersion\":\"v4\",\"signingName\":\"worklink\",\"uid\":\"worklink-2018-09-25\"},\"operations\":{\"AssociateDomain\":{\"http\":{\"requestUri\":\"/associateDomain\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DomainName\",\"AcmCertificateArn\"],\"members\":{\"FleetArn\":{},\"DomainName\":{},\"DisplayName\":{},\"AcmCertificateArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AssociateWebsiteAuthorizationProvider\":{\"http\":{\"requestUri\":\"/associateWebsiteAuthorizationProvider\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"AuthorizationProviderType\"],\"members\":{\"FleetArn\":{},\"AuthorizationProviderType\":{},\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuthorizationProviderId\":{}}}},\"AssociateWebsiteCertificateAuthority\":{\"http\":{\"requestUri\":\"/associateWebsiteCertificateAuthority\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"Certificate\"],\"members\":{\"FleetArn\":{},\"Certificate\":{},\"DisplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebsiteCaId\":{}}}},\"CreateFleet\":{\"http\":{\"requestUri\":\"/createFleet\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetName\"],\"members\":{\"FleetName\":{},\"DisplayName\":{},\"OptimizeForEndUserLocation\":{\"type\":\"boolean\"},\"Tags\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetArn\":{}}}},\"DeleteFleet\":{\"http\":{\"requestUri\":\"/deleteFleet\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAuditStreamConfiguration\":{\"http\":{\"requestUri\":\"/describeAuditStreamConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AuditStreamArn\":{}}}},\"DescribeCompanyNetworkConfiguration\":{\"http\":{\"requestUri\":\"/describeCompanyNetworkConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"VpcId\":{},\"SubnetIds\":{\"shape\":\"St\"},\"SecurityGroupIds\":{\"shape\":\"Sv\"}}}},\"DescribeDevice\":{\"http\":{\"requestUri\":\"/describeDevice\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DeviceId\"],\"members\":{\"FleetArn\":{},\"DeviceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Status\":{},\"Model\":{},\"Manufacturer\":{},\"OperatingSystem\":{},\"OperatingSystemVersion\":{},\"PatchLevel\":{},\"FirstAccessedTime\":{\"type\":\"timestamp\"},\"LastAccessedTime\":{\"type\":\"timestamp\"},\"Username\":{}}}},\"DescribeDevicePolicyConfiguration\":{\"http\":{\"requestUri\":\"/describeDevicePolicyConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DeviceCaCertificate\":{}}}},\"DescribeDomain\":{\"http\":{\"requestUri\":\"/describeDomain\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DomainName\"],\"members\":{\"FleetArn\":{},\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"DisplayName\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"DomainStatus\":{},\"AcmCertificateArn\":{}}}},\"DescribeFleetMetadata\":{\"http\":{\"requestUri\":\"/describeFleetMetadata\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"FleetName\":{},\"DisplayName\":{},\"OptimizeForEndUserLocation\":{\"type\":\"boolean\"},\"CompanyCode\":{},\"FleetStatus\":{},\"Tags\":{\"shape\":\"Sh\"}}}},\"DescribeIdentityProviderConfiguration\":{\"http\":{\"requestUri\":\"/describeIdentityProviderConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"IdentityProviderType\":{},\"ServiceProviderSamlMetadata\":{},\"IdentityProviderSamlMetadata\":{}}}},\"DescribeWebsiteCertificateAuthority\":{\"http\":{\"requestUri\":\"/describeWebsiteCertificateAuthority\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"WebsiteCaId\"],\"members\":{\"FleetArn\":{},\"WebsiteCaId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Certificate\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"DisplayName\":{}}}},\"DisassociateDomain\":{\"http\":{\"requestUri\":\"/disassociateDomain\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DomainName\"],\"members\":{\"FleetArn\":{},\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateWebsiteAuthorizationProvider\":{\"http\":{\"requestUri\":\"/disassociateWebsiteAuthorizationProvider\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"AuthorizationProviderId\"],\"members\":{\"FleetArn\":{},\"AuthorizationProviderId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateWebsiteCertificateAuthority\":{\"http\":{\"requestUri\":\"/disassociateWebsiteCertificateAuthority\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"WebsiteCaId\"],\"members\":{\"FleetArn\":{},\"WebsiteCaId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ListDevices\":{\"http\":{\"requestUri\":\"/listDevices\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Devices\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DeviceId\":{},\"DeviceStatus\":{}}}},\"NextToken\":{}}}},\"ListDomains\":{\"http\":{\"requestUri\":\"/listDomains\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Domains\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"DomainName\",\"CreatedTime\",\"DomainStatus\"],\"members\":{\"DomainName\":{},\"DisplayName\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"DomainStatus\":{}}}},\"NextToken\":{}}}},\"ListFleets\":{\"http\":{\"requestUri\":\"/listFleets\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"FleetSummaryList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"FleetArn\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"FleetName\":{},\"DisplayName\":{},\"CompanyCode\":{},\"FleetStatus\":{},\"Tags\":{\"shape\":\"Sh\"}}}},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sh\"}}}},\"ListWebsiteAuthorizationProviders\":{\"http\":{\"requestUri\":\"/listWebsiteAuthorizationProviders\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebsiteAuthorizationProviders\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"AuthorizationProviderType\"],\"members\":{\"AuthorizationProviderId\":{},\"AuthorizationProviderType\":{},\"DomainName\":{},\"CreatedTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"ListWebsiteCertificateAuthorities\":{\"http\":{\"requestUri\":\"/listWebsiteCertificateAuthorities\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WebsiteCertificateAuthorities\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WebsiteCaId\":{},\"CreatedTime\":{\"type\":\"timestamp\"},\"DisplayName\":{}}}},\"NextToken\":{}}}},\"RestoreDomainAccess\":{\"http\":{\"requestUri\":\"/restoreDomainAccess\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DomainName\"],\"members\":{\"FleetArn\":{},\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RevokeDomainAccess\":{\"http\":{\"requestUri\":\"/revokeDomainAccess\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DomainName\"],\"members\":{\"FleetArn\":{},\"DomainName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"SignOutUser\":{\"http\":{\"requestUri\":\"/signOutUser\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"Username\"],\"members\":{\"FleetArn\":{},\"Username\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"TagResource\":{\"http\":{\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"Tags\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"Tags\":{\"shape\":\"Sh\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"method\":\"DELETE\",\"requestUri\":\"/tags/{ResourceArn}\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceArn\",\"TagKeys\"],\"members\":{\"ResourceArn\":{\"location\":\"uri\",\"locationName\":\"ResourceArn\"},\"TagKeys\":{\"location\":\"querystring\",\"locationName\":\"tagKeys\",\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateAuditStreamConfiguration\":{\"http\":{\"requestUri\":\"/updateAuditStreamConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"AuditStreamArn\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateCompanyNetworkConfiguration\":{\"http\":{\"requestUri\":\"/updateCompanyNetworkConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"VpcId\",\"SubnetIds\",\"SecurityGroupIds\"],\"members\":{\"FleetArn\":{},\"VpcId\":{},\"SubnetIds\":{\"shape\":\"St\"},\"SecurityGroupIds\":{\"shape\":\"Sv\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDevicePolicyConfiguration\":{\"http\":{\"requestUri\":\"/updateDevicePolicyConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"DeviceCaCertificate\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateDomainMetadata\":{\"http\":{\"requestUri\":\"/updateDomainMetadata\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"DomainName\"],\"members\":{\"FleetArn\":{},\"DomainName\":{},\"DisplayName\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateFleetMetadata\":{\"http\":{\"requestUri\":\"/UpdateFleetMetadata\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\"],\"members\":{\"FleetArn\":{},\"DisplayName\":{},\"OptimizeForEndUserLocation\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateIdentityProviderConfiguration\":{\"http\":{\"requestUri\":\"/updateIdentityProviderConfiguration\"},\"input\":{\"type\":\"structure\",\"required\":[\"FleetArn\",\"IdentityProviderType\"],\"members\":{\"FleetArn\":{},\"IdentityProviderType\":{},\"IdentityProviderSamlMetadata\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"Sh\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"St\":{\"type\":\"list\",\"member\":{}},\"Sv\":{\"type\":\"list\",\"member\":{}}}}");

/***/ }),

/***/ 88012:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListDevices\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListDomains\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListFleets\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWebsiteAuthorizationProviders\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListWebsiteCertificateAuthorities\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 31611:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2017-10-01\",\"endpointPrefix\":\"workmail\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon WorkMail\",\"serviceId\":\"WorkMail\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"WorkMailService\",\"uid\":\"workmail-2017-10-01\"},\"operations\":{\"AssociateDelegateToResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"ResourceId\",\"EntityId\"],\"members\":{\"OrganizationId\":{},\"ResourceId\":{},\"EntityId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"AssociateMemberToGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"GroupId\",\"MemberId\"],\"members\":{\"OrganizationId\":{},\"GroupId\":{},\"MemberId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"CancelMailboxExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"JobId\",\"OrganizationId\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"JobId\":{},\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"CreateAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\",\"Alias\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"Alias\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"CreateGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Name\"],\"members\":{\"OrganizationId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupId\":{}}},\"idempotent\":true},\"CreateMobileDeviceAccessRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Name\",\"Effect\"],\"members\":{\"OrganizationId\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Name\":{},\"Description\":{},\"Effect\":{},\"DeviceTypes\":{\"shape\":\"Sm\"},\"NotDeviceTypes\":{\"shape\":\"Sm\"},\"DeviceModels\":{\"shape\":\"So\"},\"NotDeviceModels\":{\"shape\":\"So\"},\"DeviceOperatingSystems\":{\"shape\":\"Sq\"},\"NotDeviceOperatingSystems\":{\"shape\":\"Sq\"},\"DeviceUserAgents\":{\"shape\":\"Ss\"},\"NotDeviceUserAgents\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"MobileDeviceAccessRuleId\":{}}}},\"CreateOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"Alias\"],\"members\":{\"DirectoryId\":{},\"Alias\":{},\"ClientToken\":{\"idempotencyToken\":true},\"Domains\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DomainName\":{},\"HostedZoneId\":{}}}},\"KmsKeyArn\":{},\"EnableInteroperability\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationId\":{}}},\"idempotent\":true},\"CreateResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Name\",\"Type\"],\"members\":{\"OrganizationId\":{},\"Name\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{}}},\"idempotent\":true},\"CreateUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Name\",\"DisplayName\",\"Password\"],\"members\":{\"OrganizationId\":{},\"Name\":{},\"DisplayName\":{},\"Password\":{\"shape\":\"S1d\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserId\":{}}},\"idempotent\":true},\"DeleteAccessControlRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Name\"],\"members\":{\"OrganizationId\":{},\"Name\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\",\"Alias\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"Alias\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"GroupId\"],\"members\":{\"OrganizationId\":{},\"GroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteMailboxPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\",\"GranteeId\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"GranteeId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteMobileDeviceAccessRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"MobileDeviceAccessRuleId\"],\"members\":{\"OrganizationId\":{},\"MobileDeviceAccessRuleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"DeleteDirectory\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"OrganizationId\":{},\"DeleteDirectory\":{\"type\":\"boolean\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationId\":{},\"State\":{}}},\"idempotent\":true},\"DeleteResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"ResourceId\"],\"members\":{\"OrganizationId\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteRetentionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Id\"],\"members\":{\"OrganizationId\":{},\"Id\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeleteUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"UserId\"],\"members\":{\"OrganizationId\":{},\"UserId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DeregisterFromWorkMail\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DescribeGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"GroupId\"],\"members\":{\"OrganizationId\":{},\"GroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupId\":{},\"Name\":{},\"Email\":{},\"State\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeMailboxExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"JobId\",\"OrganizationId\"],\"members\":{\"JobId\":{},\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EntityId\":{},\"Description\":{},\"RoleArn\":{},\"KmsKeyArn\":{},\"S3BucketName\":{},\"S3Prefix\":{},\"S3Path\":{},\"EstimatedProgress\":{\"type\":\"integer\"},\"State\":{},\"ErrorInfo\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeOrganization\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationId\":{},\"Alias\":{},\"State\":{},\"DirectoryId\":{},\"DirectoryType\":{},\"DefaultMailDomain\":{},\"CompletedDate\":{\"type\":\"timestamp\"},\"ErrorMessage\":{},\"ARN\":{}}},\"idempotent\":true},\"DescribeResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"ResourceId\"],\"members\":{\"OrganizationId\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"Email\":{},\"Name\":{},\"Type\":{},\"BookingOptions\":{\"shape\":\"S2j\"},\"State\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DescribeUser\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"UserId\"],\"members\":{\"OrganizationId\":{},\"UserId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"UserId\":{},\"Name\":{},\"Email\":{},\"DisplayName\":{},\"State\":{},\"UserRole\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}},\"idempotent\":true},\"DisassociateDelegateFromResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"ResourceId\",\"EntityId\"],\"members\":{\"OrganizationId\":{},\"ResourceId\":{},\"EntityId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"DisassociateMemberFromGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"GroupId\",\"MemberId\"],\"members\":{\"OrganizationId\":{},\"GroupId\":{},\"MemberId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"GetAccessControlEffect\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"IpAddress\",\"Action\",\"UserId\"],\"members\":{\"OrganizationId\":{},\"IpAddress\":{},\"Action\":{},\"UserId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Effect\":{},\"MatchedRules\":{\"type\":\"list\",\"member\":{}}}}},\"GetDefaultRetentionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Description\":{},\"FolderConfigurations\":{\"shape\":\"S2z\"}}},\"idempotent\":true},\"GetMailboxDetails\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"UserId\"],\"members\":{\"OrganizationId\":{},\"UserId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"MailboxQuota\":{\"type\":\"integer\"},\"MailboxSize\":{\"type\":\"double\"}}},\"idempotent\":true},\"GetMobileDeviceAccessEffect\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{},\"DeviceType\":{},\"DeviceModel\":{},\"DeviceOperatingSystem\":{},\"DeviceUserAgent\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Effect\":{},\"MatchedRules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MobileDeviceAccessRuleId\":{},\"Name\":{}}}}}}},\"ListAccessControlRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Effect\":{},\"Description\":{},\"IpRanges\":{\"shape\":\"S3h\"},\"NotIpRanges\":{\"shape\":\"S3h\"},\"Actions\":{\"shape\":\"S3j\"},\"NotActions\":{\"shape\":\"S3j\"},\"UserIds\":{\"shape\":\"S3k\"},\"NotUserIds\":{\"shape\":\"S3k\"},\"DateCreated\":{\"type\":\"timestamp\"},\"DateModified\":{\"type\":\"timestamp\"}}}}}}},\"ListAliases\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Aliases\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}},\"idempotent\":true},\"ListGroupMembers\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"GroupId\"],\"members\":{\"OrganizationId\":{},\"GroupId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Members\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Name\":{},\"Type\":{},\"State\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Email\":{},\"Name\":{},\"State\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListMailboxExportJobs\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Jobs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"JobId\":{},\"EntityId\":{},\"Description\":{},\"S3BucketName\":{},\"S3Path\":{},\"EstimatedProgress\":{\"type\":\"integer\"},\"State\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListMailboxPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Permissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"GranteeId\",\"GranteeType\",\"PermissionValues\"],\"members\":{\"GranteeId\":{},\"GranteeType\":{},\"PermissionValues\":{\"shape\":\"S47\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListMobileDeviceAccessRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Rules\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"MobileDeviceAccessRuleId\":{},\"Name\":{},\"Description\":{},\"Effect\":{},\"DeviceTypes\":{\"shape\":\"Sm\"},\"NotDeviceTypes\":{\"shape\":\"Sm\"},\"DeviceModels\":{\"shape\":\"So\"},\"NotDeviceModels\":{\"shape\":\"So\"},\"DeviceOperatingSystems\":{\"shape\":\"Sq\"},\"NotDeviceOperatingSystems\":{\"shape\":\"Sq\"},\"DeviceUserAgents\":{\"shape\":\"Ss\"},\"NotDeviceUserAgents\":{\"shape\":\"Ss\"},\"DateCreated\":{\"type\":\"timestamp\"},\"DateModified\":{\"type\":\"timestamp\"}}}}}}},\"ListOrganizations\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"OrganizationSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"OrganizationId\":{},\"Alias\":{},\"DefaultMailDomain\":{},\"ErrorMessage\":{},\"State\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListResourceDelegates\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"ResourceId\"],\"members\":{\"OrganizationId\":{},\"ResourceId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Delegates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Id\",\"Type\"],\"members\":{\"Id\":{},\"Type\":{}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListResources\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Resources\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Email\":{},\"Name\":{},\"Type\":{},\"State\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"ListTagsForResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"S4r\"}}}},\"ListUsers\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\"],\"members\":{\"OrganizationId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Email\":{},\"Name\":{},\"DisplayName\":{},\"State\":{},\"UserRole\":{},\"EnabledDate\":{\"type\":\"timestamp\"},\"DisabledDate\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}},\"idempotent\":true},\"PutAccessControlRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"Effect\",\"Description\",\"OrganizationId\"],\"members\":{\"Name\":{},\"Effect\":{},\"Description\":{},\"IpRanges\":{\"shape\":\"S3h\"},\"NotIpRanges\":{\"shape\":\"S3h\"},\"Actions\":{\"shape\":\"S3j\"},\"NotActions\":{\"shape\":\"S3j\"},\"UserIds\":{\"shape\":\"S3k\"},\"NotUserIds\":{\"shape\":\"S3k\"},\"OrganizationId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutMailboxPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\",\"GranteeId\",\"PermissionValues\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"GranteeId\":{},\"PermissionValues\":{\"shape\":\"S47\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"PutRetentionPolicy\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"Name\",\"FolderConfigurations\"],\"members\":{\"OrganizationId\":{},\"Id\":{},\"Name\":{},\"Description\":{\"type\":\"string\",\"sensitive\":true},\"FolderConfigurations\":{\"shape\":\"S2z\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"RegisterToWorkMail\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\",\"Email\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"Email\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"ResetPassword\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"UserId\",\"Password\"],\"members\":{\"OrganizationId\":{},\"UserId\":{},\"Password\":{\"shape\":\"S1d\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"StartMailboxExportJob\":{\"input\":{\"type\":\"structure\",\"required\":[\"ClientToken\",\"OrganizationId\",\"EntityId\",\"RoleArn\",\"KmsKeyArn\",\"S3BucketName\",\"S3Prefix\"],\"members\":{\"ClientToken\":{\"idempotencyToken\":true},\"OrganizationId\":{},\"EntityId\":{},\"Description\":{},\"RoleArn\":{},\"KmsKeyArn\":{},\"S3BucketName\":{},\"S3Prefix\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"JobId\":{}}},\"idempotent\":true},\"TagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"S4r\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateMailboxQuota\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"UserId\",\"MailboxQuota\"],\"members\":{\"OrganizationId\":{},\"UserId\":{},\"MailboxQuota\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateMobileDeviceAccessRule\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"MobileDeviceAccessRuleId\",\"Name\",\"Effect\"],\"members\":{\"OrganizationId\":{},\"MobileDeviceAccessRuleId\":{},\"Name\":{},\"Description\":{},\"Effect\":{},\"DeviceTypes\":{\"shape\":\"Sm\"},\"NotDeviceTypes\":{\"shape\":\"Sm\"},\"DeviceModels\":{\"shape\":\"So\"},\"NotDeviceModels\":{\"shape\":\"So\"},\"DeviceOperatingSystems\":{\"shape\":\"Sq\"},\"NotDeviceOperatingSystems\":{\"shape\":\"Sq\"},\"DeviceUserAgents\":{\"shape\":\"Ss\"},\"NotDeviceUserAgents\":{\"shape\":\"Ss\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdatePrimaryEmailAddress\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"EntityId\",\"Email\"],\"members\":{\"OrganizationId\":{},\"EntityId\":{},\"Email\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true},\"UpdateResource\":{\"input\":{\"type\":\"structure\",\"required\":[\"OrganizationId\",\"ResourceId\"],\"members\":{\"OrganizationId\":{},\"ResourceId\":{},\"Name\":{},\"BookingOptions\":{\"shape\":\"S2j\"}}},\"output\":{\"type\":\"structure\",\"members\":{}},\"idempotent\":true}},\"shapes\":{\"Sm\":{\"type\":\"list\",\"member\":{}},\"So\":{\"type\":\"list\",\"member\":{}},\"Sq\":{\"type\":\"list\",\"member\":{}},\"Ss\":{\"type\":\"list\",\"member\":{}},\"S1d\":{\"type\":\"string\",\"sensitive\":true},\"S2j\":{\"type\":\"structure\",\"members\":{\"AutoAcceptRequests\":{\"type\":\"boolean\"},\"AutoDeclineRecurringRequests\":{\"type\":\"boolean\"},\"AutoDeclineConflictingRequests\":{\"type\":\"boolean\"}}},\"S2z\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Name\",\"Action\"],\"members\":{\"Name\":{},\"Action\":{},\"Period\":{\"type\":\"integer\"}}}},\"S3h\":{\"type\":\"list\",\"member\":{}},\"S3j\":{\"type\":\"list\",\"member\":{}},\"S3k\":{\"type\":\"list\",\"member\":{}},\"S47\":{\"type\":\"list\",\"member\":{}},\"S4r\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}}}}");

/***/ }),

/***/ 64931:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"ListAliases\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListGroupMembers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMailboxExportJobs\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListMailboxPermissions\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListOrganizations\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListResourceDelegates\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListResources\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"},\"ListUsers\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"limit_key\":\"MaxResults\"}}}");

/***/ }),

/***/ 15648:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2019-05-01\",\"endpointPrefix\":\"workmailmessageflow\",\"jsonVersion\":\"1.1\",\"protocol\":\"rest-json\",\"serviceFullName\":\"Amazon WorkMail Message Flow\",\"serviceId\":\"WorkMailMessageFlow\",\"signatureVersion\":\"v4\",\"uid\":\"workmailmessageflow-2019-05-01\"},\"operations\":{\"GetRawMessageContent\":{\"http\":{\"method\":\"GET\",\"requestUri\":\"/messages/{messageId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"messageId\"],\"members\":{\"messageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"}}},\"output\":{\"type\":\"structure\",\"required\":[\"messageContent\"],\"members\":{\"messageContent\":{\"type\":\"blob\",\"streaming\":true}},\"payload\":\"messageContent\"}},\"PutRawMessageContent\":{\"http\":{\"requestUri\":\"/messages/{messageId}\"},\"input\":{\"type\":\"structure\",\"required\":[\"messageId\",\"content\"],\"members\":{\"messageId\":{\"location\":\"uri\",\"locationName\":\"messageId\"},\"content\":{\"type\":\"structure\",\"required\":[\"s3Reference\"],\"members\":{\"s3Reference\":{\"type\":\"structure\",\"required\":[\"bucket\",\"key\"],\"members\":{\"bucket\":{},\"key\":{},\"objectVersion\":{}}}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{}}");

/***/ }),

/***/ 88532:
/***/ ((module) => {

"use strict";
module.exports = {"o":{}};

/***/ }),

/***/ 66372:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2015-04-08\",\"endpointPrefix\":\"workspaces\",\"jsonVersion\":\"1.1\",\"protocol\":\"json\",\"serviceFullName\":\"Amazon WorkSpaces\",\"serviceId\":\"WorkSpaces\",\"signatureVersion\":\"v4\",\"targetPrefix\":\"WorkspacesService\",\"uid\":\"workspaces-2015-04-08\"},\"operations\":{\"AssociateConnectionAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\",\"ResourceId\"],\"members\":{\"AliasId\":{},\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionIdentifier\":{}}}},\"AssociateIpGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"GroupIds\"],\"members\":{\"DirectoryId\":{},\"GroupIds\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"AuthorizeIpRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\",\"UserRules\"],\"members\":{\"GroupId\":{},\"UserRules\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CopyWorkspaceImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"Name\",\"SourceImageId\",\"SourceRegion\"],\"members\":{\"Name\":{},\"Description\":{},\"SourceImageId\":{},\"SourceRegion\":{},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{}}}},\"CreateConnectionAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"ConnectionString\"],\"members\":{\"ConnectionString\":{},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AliasId\":{}}}},\"CreateIpGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{},\"GroupDesc\":{},\"UserRules\":{\"shape\":\"Sc\"},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"GroupId\":{}}}},\"CreateTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"Tags\"],\"members\":{\"ResourceId\":{},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"CreateWorkspaceBundle\":{\"input\":{\"type\":\"structure\",\"required\":[\"BundleName\",\"BundleDescription\",\"ImageId\",\"ComputeType\",\"UserStorage\"],\"members\":{\"BundleName\":{},\"BundleDescription\":{},\"ImageId\":{},\"ComputeType\":{\"shape\":\"S13\"},\"UserStorage\":{\"shape\":\"S15\"},\"RootStorage\":{\"shape\":\"S16\"},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkspaceBundle\":{\"shape\":\"S18\"}}}},\"CreateWorkspaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"Workspaces\"],\"members\":{\"Workspaces\":{\"type\":\"list\",\"member\":{\"shape\":\"S1f\"}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkspaceRequest\":{\"shape\":\"S1f\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"PendingRequests\":{\"shape\":\"S1s\"}}}},\"DeleteConnectionAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteIpGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\"],\"members\":{\"GroupId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"TagKeys\"],\"members\":{\"ResourceId\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWorkspaceBundle\":{\"input\":{\"type\":\"structure\",\"members\":{\"BundleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteWorkspaceImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageId\"],\"members\":{\"ImageId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeregisterWorkspaceDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\"],\"members\":{\"DirectoryId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DescribeAccount\":{\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"DedicatedTenancySupport\":{},\"DedicatedTenancyManagementCidrRange\":{}}}},\"DescribeAccountModifications\":{\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"AccountModifications\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ModificationState\":{},\"DedicatedTenancySupport\":{},\"DedicatedTenancyManagementCidrRange\":{},\"StartTime\":{\"type\":\"timestamp\"},\"ErrorCode\":{},\"ErrorMessage\":{}}}},\"NextToken\":{}}}},\"DescribeClientProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceIds\"],\"members\":{\"ResourceIds\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ClientPropertiesList\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ResourceId\":{},\"ClientProperties\":{\"shape\":\"S2w\"}}}}}}},\"DescribeConnectionAliasPermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"AliasId\":{},\"ConnectionAliasPermissions\":{\"type\":\"list\",\"member\":{\"shape\":\"S32\"}},\"NextToken\":{}}}},\"DescribeConnectionAliases\":{\"input\":{\"type\":\"structure\",\"members\":{\"AliasIds\":{\"type\":\"list\",\"member\":{}},\"ResourceId\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ConnectionAliases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ConnectionString\":{},\"AliasId\":{},\"State\":{},\"OwnerAccountId\":{},\"Associations\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AssociationStatus\":{},\"AssociatedAccountId\":{},\"ResourceId\":{},\"ConnectionIdentifier\":{}}}}}}},\"NextToken\":{}}}},\"DescribeIpGroups\":{\"input\":{\"type\":\"structure\",\"members\":{\"GroupIds\":{\"shape\":\"S8\"},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Result\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"groupId\":{},\"groupName\":{},\"groupDesc\":{},\"userRules\":{\"shape\":\"Sc\"}}}},\"NextToken\":{}}}},\"DescribeTags\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\"],\"members\":{\"ResourceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TagList\":{\"shape\":\"Sm\"}}}},\"DescribeWorkspaceBundles\":{\"input\":{\"type\":\"structure\",\"members\":{\"BundleIds\":{\"type\":\"list\",\"member\":{}},\"Owner\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Bundles\":{\"type\":\"list\",\"member\":{\"shape\":\"S18\"}},\"NextToken\":{}}}},\"DescribeWorkspaceDirectories\":{\"input\":{\"type\":\"structure\",\"members\":{\"DirectoryIds\":{\"type\":\"list\",\"member\":{}},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Directories\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"DirectoryId\":{},\"Alias\":{},\"DirectoryName\":{},\"RegistrationCode\":{},\"SubnetIds\":{\"shape\":\"S3v\"},\"DnsIpAddresses\":{\"type\":\"list\",\"member\":{}},\"CustomerUserName\":{},\"IamRoleId\":{},\"DirectoryType\":{},\"WorkspaceSecurityGroupId\":{},\"State\":{},\"WorkspaceCreationProperties\":{\"type\":\"structure\",\"members\":{\"EnableWorkDocs\":{\"type\":\"boolean\"},\"EnableInternetAccess\":{\"type\":\"boolean\"},\"DefaultOu\":{},\"CustomSecurityGroupId\":{},\"UserEnabledAsLocalAdministrator\":{\"type\":\"boolean\"},\"EnableMaintenanceMode\":{\"type\":\"boolean\"}}},\"ipGroupIds\":{\"shape\":\"S8\"},\"WorkspaceAccessProperties\":{\"shape\":\"S43\"},\"Tenancy\":{},\"SelfservicePermissions\":{\"shape\":\"S46\"}}}},\"NextToken\":{}}}},\"DescribeWorkspaceImagePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageId\"],\"members\":{\"ImageId\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{},\"ImagePermissions\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SharedAccountId\":{}}}},\"NextToken\":{}}}},\"DescribeWorkspaceImages\":{\"input\":{\"type\":\"structure\",\"members\":{\"ImageIds\":{\"type\":\"list\",\"member\":{}},\"ImageType\":{},\"NextToken\":{},\"MaxResults\":{\"type\":\"integer\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Images\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ImageId\":{},\"Name\":{},\"Description\":{},\"OperatingSystem\":{\"type\":\"structure\",\"members\":{\"Type\":{}}},\"State\":{},\"RequiredTenancy\":{},\"ErrorCode\":{},\"ErrorMessage\":{},\"Created\":{\"type\":\"timestamp\"},\"OwnerAccountId\":{}}}},\"NextToken\":{}}}},\"DescribeWorkspaceSnapshots\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\"],\"members\":{\"WorkspaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"RebuildSnapshots\":{\"shape\":\"S4o\"},\"RestoreSnapshots\":{\"shape\":\"S4o\"}}}},\"DescribeWorkspaces\":{\"input\":{\"type\":\"structure\",\"members\":{\"WorkspaceIds\":{\"shape\":\"S4r\"},\"DirectoryId\":{},\"UserName\":{},\"BundleId\":{},\"Limit\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Workspaces\":{\"shape\":\"S1s\"},\"NextToken\":{}}}},\"DescribeWorkspacesConnectionStatus\":{\"input\":{\"type\":\"structure\",\"members\":{\"WorkspaceIds\":{\"shape\":\"S4r\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"WorkspacesConnectionStatus\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkspaceId\":{},\"ConnectionState\":{},\"ConnectionStateCheckTimestamp\":{\"type\":\"timestamp\"},\"LastKnownUserConnectionTimestamp\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"DisassociateConnectionAlias\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\"],\"members\":{\"AliasId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DisassociateIpGroups\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"GroupIds\"],\"members\":{\"DirectoryId\":{},\"GroupIds\":{\"shape\":\"S8\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ImportWorkspaceImage\":{\"input\":{\"type\":\"structure\",\"required\":[\"Ec2ImageId\",\"IngestionProcess\",\"ImageName\",\"ImageDescription\"],\"members\":{\"Ec2ImageId\":{},\"IngestionProcess\":{},\"ImageName\":{},\"ImageDescription\":{},\"Tags\":{\"shape\":\"Sm\"},\"Applications\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"ImageId\":{}}}},\"ListAvailableManagementCidrRanges\":{\"input\":{\"type\":\"structure\",\"required\":[\"ManagementCidrRangeConstraint\"],\"members\":{\"ManagementCidrRangeConstraint\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"ManagementCidrRanges\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"MigrateWorkspace\":{\"input\":{\"type\":\"structure\",\"required\":[\"SourceWorkspaceId\",\"BundleId\"],\"members\":{\"SourceWorkspaceId\":{},\"BundleId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SourceWorkspaceId\":{},\"TargetWorkspaceId\":{}}}},\"ModifyAccount\":{\"input\":{\"type\":\"structure\",\"members\":{\"DedicatedTenancySupport\":{},\"DedicatedTenancyManagementCidrRange\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ModifyClientProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"ClientProperties\"],\"members\":{\"ResourceId\":{},\"ClientProperties\":{\"shape\":\"S2w\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ModifySelfservicePermissions\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"SelfservicePermissions\"],\"members\":{\"ResourceId\":{},\"SelfservicePermissions\":{\"shape\":\"S46\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ModifyWorkspaceAccessProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"WorkspaceAccessProperties\"],\"members\":{\"ResourceId\":{},\"WorkspaceAccessProperties\":{\"shape\":\"S43\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ModifyWorkspaceCreationProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"ResourceId\",\"WorkspaceCreationProperties\"],\"members\":{\"ResourceId\":{},\"WorkspaceCreationProperties\":{\"type\":\"structure\",\"members\":{\"EnableWorkDocs\":{\"type\":\"boolean\"},\"EnableInternetAccess\":{\"type\":\"boolean\"},\"DefaultOu\":{},\"CustomSecurityGroupId\":{},\"UserEnabledAsLocalAdministrator\":{\"type\":\"boolean\"},\"EnableMaintenanceMode\":{\"type\":\"boolean\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ModifyWorkspaceProperties\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\",\"WorkspaceProperties\"],\"members\":{\"WorkspaceId\":{},\"WorkspaceProperties\":{\"shape\":\"S1j\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"ModifyWorkspaceState\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\",\"WorkspaceState\"],\"members\":{\"WorkspaceId\":{},\"WorkspaceState\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RebootWorkspaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"RebootWorkspaceRequests\"],\"members\":{\"RebootWorkspaceRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\"],\"members\":{\"WorkspaceId\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedRequests\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}}}}},\"RebuildWorkspaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"RebuildWorkspaceRequests\"],\"members\":{\"RebuildWorkspaceRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\"],\"members\":{\"WorkspaceId\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedRequests\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}}}}},\"RegisterWorkspaceDirectory\":{\"input\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"EnableWorkDocs\"],\"members\":{\"DirectoryId\":{},\"SubnetIds\":{\"shape\":\"S3v\"},\"EnableWorkDocs\":{\"type\":\"boolean\"},\"EnableSelfService\":{\"type\":\"boolean\"},\"Tenancy\":{},\"Tags\":{\"shape\":\"Sm\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RestoreWorkspace\":{\"input\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\"],\"members\":{\"WorkspaceId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"RevokeIpRules\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\",\"UserRules\"],\"members\":{\"GroupId\":{},\"UserRules\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"StartWorkspaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"StartWorkspaceRequests\"],\"members\":{\"StartWorkspaceRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkspaceId\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedRequests\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}}}}},\"StopWorkspaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"StopWorkspaceRequests\"],\"members\":{\"StopWorkspaceRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkspaceId\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedRequests\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}}}}},\"TerminateWorkspaces\":{\"input\":{\"type\":\"structure\",\"required\":[\"TerminateWorkspaceRequests\"],\"members\":{\"TerminateWorkspaceRequests\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"WorkspaceId\"],\"members\":{\"WorkspaceId\":{}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"FailedRequests\":{\"type\":\"list\",\"member\":{\"shape\":\"S61\"}}}}},\"UpdateConnectionAliasPermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"AliasId\",\"ConnectionAliasPermission\"],\"members\":{\"AliasId\":{},\"ConnectionAliasPermission\":{\"shape\":\"S32\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateRulesOfIpGroup\":{\"input\":{\"type\":\"structure\",\"required\":[\"GroupId\",\"UserRules\"],\"members\":{\"GroupId\":{},\"UserRules\":{\"shape\":\"Sc\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateWorkspaceBundle\":{\"input\":{\"type\":\"structure\",\"members\":{\"BundleId\":{},\"ImageId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateWorkspaceImagePermission\":{\"input\":{\"type\":\"structure\",\"required\":[\"ImageId\",\"AllowCopyImage\",\"SharedAccountId\"],\"members\":{\"ImageId\":{},\"AllowCopyImage\":{\"type\":\"boolean\"},\"SharedAccountId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}}},\"shapes\":{\"S8\":{\"type\":\"list\",\"member\":{}},\"Sc\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ipRule\":{},\"ruleDesc\":{}}}},\"Sm\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"S13\":{\"type\":\"structure\",\"members\":{\"Name\":{}}},\"S15\":{\"type\":\"structure\",\"members\":{\"Capacity\":{}}},\"S16\":{\"type\":\"structure\",\"members\":{\"Capacity\":{}}},\"S18\":{\"type\":\"structure\",\"members\":{\"BundleId\":{},\"Name\":{},\"Owner\":{},\"Description\":{},\"ImageId\":{},\"RootStorage\":{\"shape\":\"S16\"},\"UserStorage\":{\"shape\":\"S15\"},\"ComputeType\":{\"shape\":\"S13\"},\"LastUpdatedTime\":{\"type\":\"timestamp\"},\"CreationTime\":{\"type\":\"timestamp\"}}},\"S1f\":{\"type\":\"structure\",\"required\":[\"DirectoryId\",\"UserName\",\"BundleId\"],\"members\":{\"DirectoryId\":{},\"UserName\":{},\"BundleId\":{},\"VolumeEncryptionKey\":{},\"UserVolumeEncryptionEnabled\":{\"type\":\"boolean\"},\"RootVolumeEncryptionEnabled\":{\"type\":\"boolean\"},\"WorkspaceProperties\":{\"shape\":\"S1j\"},\"Tags\":{\"shape\":\"Sm\"}}},\"S1j\":{\"type\":\"structure\",\"members\":{\"RunningMode\":{},\"RunningModeAutoStopTimeoutInMinutes\":{\"type\":\"integer\"},\"RootVolumeSizeGib\":{\"type\":\"integer\"},\"UserVolumeSizeGib\":{\"type\":\"integer\"},\"ComputeTypeName\":{}}},\"S1s\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"WorkspaceId\":{},\"DirectoryId\":{},\"UserName\":{},\"IpAddress\":{},\"State\":{},\"BundleId\":{},\"SubnetId\":{},\"ErrorMessage\":{},\"ErrorCode\":{},\"ComputerName\":{},\"VolumeEncryptionKey\":{},\"UserVolumeEncryptionEnabled\":{\"type\":\"boolean\"},\"RootVolumeEncryptionEnabled\":{\"type\":\"boolean\"},\"WorkspaceProperties\":{\"shape\":\"S1j\"},\"ModificationStates\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Resource\":{},\"State\":{}}}}}}},\"S2w\":{\"type\":\"structure\",\"members\":{\"ReconnectEnabled\":{}}},\"S32\":{\"type\":\"structure\",\"required\":[\"SharedAccountId\",\"AllowAssociation\"],\"members\":{\"SharedAccountId\":{},\"AllowAssociation\":{\"type\":\"boolean\"}}},\"S3v\":{\"type\":\"list\",\"member\":{}},\"S43\":{\"type\":\"structure\",\"members\":{\"DeviceTypeWindows\":{},\"DeviceTypeOsx\":{},\"DeviceTypeWeb\":{},\"DeviceTypeIos\":{},\"DeviceTypeAndroid\":{},\"DeviceTypeChromeOs\":{},\"DeviceTypeZeroClient\":{}}},\"S46\":{\"type\":\"structure\",\"members\":{\"RestartWorkspace\":{},\"IncreaseVolumeSize\":{},\"ChangeComputeType\":{},\"SwitchRunningMode\":{},\"RebuildWorkspace\":{}}},\"S4o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"SnapshotTime\":{\"type\":\"timestamp\"}}}},\"S4r\":{\"type\":\"list\",\"member\":{}},\"S61\":{\"type\":\"structure\",\"members\":{\"WorkspaceId\":{},\"ErrorCode\":{},\"ErrorMessage\":{}}}}}");

/***/ }),

/***/ 37567:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"DescribeWorkspaceBundles\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Bundles\"},\"DescribeWorkspaceDirectories\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Directories\"},\"DescribeWorkspaces\":{\"input_token\":\"NextToken\",\"limit_key\":\"Limit\",\"output_token\":\"NextToken\",\"result_key\":\"Workspaces\"}}}");

/***/ }),

/***/ 37289:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"version\":\"2.0\",\"metadata\":{\"apiVersion\":\"2016-04-12\",\"endpointPrefix\":\"xray\",\"protocol\":\"rest-json\",\"serviceFullName\":\"AWS X-Ray\",\"serviceId\":\"XRay\",\"signatureVersion\":\"v4\",\"uid\":\"xray-2016-04-12\"},\"operations\":{\"BatchGetTraces\":{\"http\":{\"requestUri\":\"/Traces\"},\"input\":{\"type\":\"structure\",\"required\":[\"TraceIds\"],\"members\":{\"TraceIds\":{\"shape\":\"S2\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Traces\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Duration\":{\"type\":\"double\"},\"LimitExceeded\":{\"type\":\"boolean\"},\"Segments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Document\":{}}}}}}},\"UnprocessedTraceIds\":{\"type\":\"list\",\"member\":{}},\"NextToken\":{}}}},\"CreateGroup\":{\"http\":{\"requestUri\":\"/CreateGroup\"},\"input\":{\"type\":\"structure\",\"required\":[\"GroupName\"],\"members\":{\"GroupName\":{},\"FilterExpression\":{},\"InsightsConfiguration\":{\"shape\":\"Si\"},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"So\"}}}},\"CreateSamplingRule\":{\"http\":{\"requestUri\":\"/CreateSamplingRule\"},\"input\":{\"type\":\"structure\",\"required\":[\"SamplingRule\"],\"members\":{\"SamplingRule\":{\"shape\":\"Sq\"},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"SamplingRuleRecord\":{\"shape\":\"S16\"}}}},\"DeleteGroup\":{\"http\":{\"requestUri\":\"/DeleteGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"DeleteSamplingRule\":{\"http\":{\"requestUri\":\"/DeleteSamplingRule\"},\"input\":{\"type\":\"structure\",\"members\":{\"RuleName\":{},\"RuleARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SamplingRuleRecord\":{\"shape\":\"S16\"}}}},\"GetEncryptionConfig\":{\"http\":{\"requestUri\":\"/EncryptionConfig\"},\"input\":{\"type\":\"structure\",\"members\":{}},\"output\":{\"type\":\"structure\",\"members\":{\"EncryptionConfig\":{\"shape\":\"S1f\"}}}},\"GetGroup\":{\"http\":{\"requestUri\":\"/GetGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"So\"}}}},\"GetGroups\":{\"http\":{\"requestUri\":\"/Groups\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Groups\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupARN\":{},\"FilterExpression\":{},\"InsightsConfiguration\":{\"shape\":\"Si\"}}}},\"NextToken\":{}}}},\"GetInsight\":{\"http\":{\"requestUri\":\"/Insight\"},\"input\":{\"type\":\"structure\",\"required\":[\"InsightId\"],\"members\":{\"InsightId\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Insight\":{\"type\":\"structure\",\"members\":{\"InsightId\":{},\"GroupARN\":{},\"GroupName\":{},\"RootCauseServiceId\":{\"shape\":\"S1t\"},\"Categories\":{\"shape\":\"S1v\"},\"State\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Summary\":{},\"ClientRequestImpactStatistics\":{\"shape\":\"S1z\"},\"RootCauseServiceRequestImpactStatistics\":{\"shape\":\"S1z\"},\"TopAnomalousServices\":{\"shape\":\"S21\"}}}}}},\"GetInsightEvents\":{\"http\":{\"requestUri\":\"/InsightEvents\"},\"input\":{\"type\":\"structure\",\"required\":[\"InsightId\"],\"members\":{\"InsightId\":{},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InsightEvents\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Summary\":{},\"EventTime\":{\"type\":\"timestamp\"},\"ClientRequestImpactStatistics\":{\"shape\":\"S1z\"},\"RootCauseServiceRequestImpactStatistics\":{\"shape\":\"S1z\"},\"TopAnomalousServices\":{\"shape\":\"S21\"}}}},\"NextToken\":{}}}},\"GetInsightImpactGraph\":{\"http\":{\"requestUri\":\"/InsightImpactGraph\"},\"input\":{\"type\":\"structure\",\"required\":[\"InsightId\",\"StartTime\",\"EndTime\"],\"members\":{\"InsightId\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InsightId\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"ServiceGraphStartTime\":{\"type\":\"timestamp\"},\"ServiceGraphEndTime\":{\"type\":\"timestamp\"},\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReferenceId\":{\"type\":\"integer\"},\"Type\":{},\"Name\":{},\"Names\":{\"shape\":\"S1u\"},\"AccountId\":{},\"Edges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReferenceId\":{\"type\":\"integer\"}}}}}}},\"NextToken\":{}}}},\"GetInsightSummaries\":{\"http\":{\"requestUri\":\"/InsightSummaries\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"States\":{\"type\":\"list\",\"member\":{}},\"GroupARN\":{},\"GroupName\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"MaxResults\":{\"type\":\"integer\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"InsightSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"InsightId\":{},\"GroupARN\":{},\"GroupName\":{},\"RootCauseServiceId\":{\"shape\":\"S1t\"},\"Categories\":{\"shape\":\"S1v\"},\"State\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Summary\":{},\"ClientRequestImpactStatistics\":{\"shape\":\"S1z\"},\"RootCauseServiceRequestImpactStatistics\":{\"shape\":\"S1z\"},\"TopAnomalousServices\":{\"shape\":\"S21\"},\"LastUpdateTime\":{\"type\":\"timestamp\"}}}},\"NextToken\":{}}}},\"GetSamplingRules\":{\"http\":{\"requestUri\":\"/GetSamplingRules\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SamplingRuleRecords\":{\"type\":\"list\",\"member\":{\"shape\":\"S16\"}},\"NextToken\":{}}}},\"GetSamplingStatisticSummaries\":{\"http\":{\"requestUri\":\"/SamplingStatisticSummaries\"},\"input\":{\"type\":\"structure\",\"members\":{\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"SamplingStatisticSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleName\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"RequestCount\":{\"type\":\"integer\"},\"BorrowCount\":{\"type\":\"integer\"},\"SampledCount\":{\"type\":\"integer\"}}}},\"NextToken\":{}}}},\"GetSamplingTargets\":{\"http\":{\"requestUri\":\"/SamplingTargets\"},\"input\":{\"type\":\"structure\",\"required\":[\"SamplingStatisticsDocuments\"],\"members\":{\"SamplingStatisticsDocuments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"RuleName\",\"ClientID\",\"Timestamp\",\"RequestCount\",\"SampledCount\"],\"members\":{\"RuleName\":{},\"ClientID\":{},\"Timestamp\":{\"type\":\"timestamp\"},\"RequestCount\":{\"type\":\"integer\"},\"SampledCount\":{\"type\":\"integer\"},\"BorrowCount\":{\"type\":\"integer\"}}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SamplingTargetDocuments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleName\":{},\"FixedRate\":{\"type\":\"double\"},\"ReservoirQuota\":{\"type\":\"integer\"},\"ReservoirQuotaTTL\":{\"type\":\"timestamp\"},\"Interval\":{\"type\":\"integer\"}}}},\"LastRuleModification\":{\"type\":\"timestamp\"},\"UnprocessedStatistics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"RuleName\":{},\"ErrorCode\":{},\"Message\":{}}}}}}},\"GetServiceGraph\":{\"http\":{\"requestUri\":\"/ServiceGraph\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"GroupName\":{},\"GroupARN\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Services\":{\"shape\":\"S3a\"},\"ContainsOldGroupVersions\":{\"type\":\"boolean\"},\"NextToken\":{}}}},\"GetTimeSeriesServiceStatistics\":{\"http\":{\"requestUri\":\"/TimeSeriesServiceStatistics\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"GroupName\":{},\"GroupARN\":{},\"EntitySelectorExpression\":{},\"Period\":{\"type\":\"integer\"},\"ForecastStatistics\":{\"type\":\"boolean\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TimeSeriesServiceStatistics\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"EdgeSummaryStatistics\":{\"shape\":\"S3e\"},\"ServiceSummaryStatistics\":{\"shape\":\"S3m\"},\"ServiceForecastStatistics\":{\"type\":\"structure\",\"members\":{\"FaultCountHigh\":{\"type\":\"long\"},\"FaultCountLow\":{\"type\":\"long\"}}},\"ResponseTimeHistogram\":{\"shape\":\"S3h\"}}}},\"ContainsOldGroupVersions\":{\"type\":\"boolean\"},\"NextToken\":{}}}},\"GetTraceGraph\":{\"http\":{\"requestUri\":\"/TraceGraph\"},\"input\":{\"type\":\"structure\",\"required\":[\"TraceIds\"],\"members\":{\"TraceIds\":{\"shape\":\"S2\"},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Services\":{\"shape\":\"S3a\"},\"NextToken\":{}}}},\"GetTraceSummaries\":{\"http\":{\"requestUri\":\"/TraceSummaries\"},\"input\":{\"type\":\"structure\",\"required\":[\"StartTime\",\"EndTime\"],\"members\":{\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"TimeRangeType\":{},\"Sampling\":{\"type\":\"boolean\"},\"SamplingStrategy\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Value\":{\"type\":\"double\"}}},\"FilterExpression\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"TraceSummaries\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"Duration\":{\"type\":\"double\"},\"ResponseTime\":{\"type\":\"double\"},\"HasFault\":{\"type\":\"boolean\"},\"HasError\":{\"type\":\"boolean\"},\"HasThrottle\":{\"type\":\"boolean\"},\"IsPartial\":{\"type\":\"boolean\"},\"Http\":{\"type\":\"structure\",\"members\":{\"HttpURL\":{},\"HttpStatus\":{\"type\":\"integer\"},\"HttpMethod\":{},\"UserAgent\":{},\"ClientIp\":{}}},\"Annotations\":{\"type\":\"map\",\"key\":{},\"value\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"AnnotationValue\":{\"type\":\"structure\",\"members\":{\"NumberValue\":{\"type\":\"double\"},\"BooleanValue\":{\"type\":\"boolean\"},\"StringValue\":{}}},\"ServiceIds\":{\"shape\":\"S49\"}}}}},\"Users\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"UserName\":{},\"ServiceIds\":{\"shape\":\"S49\"}}}},\"ServiceIds\":{\"shape\":\"S49\"},\"ResourceARNs\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ARN\":{}}}},\"InstanceIds\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{}}}},\"AvailabilityZones\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{}}}},\"EntryPoint\":{\"shape\":\"S1t\"},\"FaultRootCauses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Names\":{\"shape\":\"S1u\"},\"Type\":{},\"AccountId\":{},\"EntityPath\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Exceptions\":{\"shape\":\"S4o\"},\"Remote\":{\"type\":\"boolean\"}}}},\"Inferred\":{\"type\":\"boolean\"}}}},\"ClientImpacting\":{\"type\":\"boolean\"}}}},\"ErrorRootCauses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Names\":{\"shape\":\"S1u\"},\"Type\":{},\"AccountId\":{},\"EntityPath\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Exceptions\":{\"shape\":\"S4o\"},\"Remote\":{\"type\":\"boolean\"}}}},\"Inferred\":{\"type\":\"boolean\"}}}},\"ClientImpacting\":{\"type\":\"boolean\"}}}},\"ResponseTimeRootCauses\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Services\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Names\":{\"shape\":\"S1u\"},\"Type\":{},\"AccountId\":{},\"EntityPath\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Coverage\":{\"type\":\"double\"},\"Remote\":{\"type\":\"boolean\"}}}},\"Inferred\":{\"type\":\"boolean\"}}}},\"ClientImpacting\":{\"type\":\"boolean\"}}}},\"Revision\":{\"type\":\"integer\"},\"MatchedEventTime\":{\"type\":\"timestamp\"}}}},\"ApproximateTime\":{\"type\":\"timestamp\"},\"TracesProcessedCount\":{\"type\":\"long\"},\"NextToken\":{}}}},\"ListTagsForResource\":{\"http\":{\"requestUri\":\"/ListTagsForResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\"],\"members\":{\"ResourceARN\":{},\"NextToken\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"Tags\":{\"shape\":\"Sj\"},\"NextToken\":{}}}},\"PutEncryptionConfig\":{\"http\":{\"requestUri\":\"/PutEncryptionConfig\"},\"input\":{\"type\":\"structure\",\"required\":[\"Type\"],\"members\":{\"KeyId\":{},\"Type\":{}}},\"output\":{\"type\":\"structure\",\"members\":{\"EncryptionConfig\":{\"shape\":\"S1f\"}}}},\"PutTelemetryRecords\":{\"http\":{\"requestUri\":\"/TelemetryRecords\"},\"input\":{\"type\":\"structure\",\"required\":[\"TelemetryRecords\"],\"members\":{\"TelemetryRecords\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Timestamp\"],\"members\":{\"Timestamp\":{\"type\":\"timestamp\"},\"SegmentsReceivedCount\":{\"type\":\"integer\"},\"SegmentsSentCount\":{\"type\":\"integer\"},\"SegmentsSpilloverCount\":{\"type\":\"integer\"},\"SegmentsRejectedCount\":{\"type\":\"integer\"},\"BackendConnectionErrors\":{\"type\":\"structure\",\"members\":{\"TimeoutCount\":{\"type\":\"integer\"},\"ConnectionRefusedCount\":{\"type\":\"integer\"},\"HTTPCode4XXCount\":{\"type\":\"integer\"},\"HTTPCode5XXCount\":{\"type\":\"integer\"},\"UnknownHostCount\":{\"type\":\"integer\"},\"OtherCount\":{\"type\":\"integer\"}}}}}},\"EC2InstanceId\":{},\"Hostname\":{},\"ResourceARN\":{}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"PutTraceSegments\":{\"http\":{\"requestUri\":\"/TraceSegments\"},\"input\":{\"type\":\"structure\",\"required\":[\"TraceSegmentDocuments\"],\"members\":{\"TraceSegmentDocuments\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{\"UnprocessedTraceSegments\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Id\":{},\"ErrorCode\":{},\"Message\":{}}}}}}},\"TagResource\":{\"http\":{\"requestUri\":\"/TagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Tags\"],\"members\":{\"ResourceARN\":{},\"Tags\":{\"shape\":\"Sj\"}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UntagResource\":{\"http\":{\"requestUri\":\"/UntagResource\"},\"input\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"TagKeys\"],\"members\":{\"ResourceARN\":{},\"TagKeys\":{\"type\":\"list\",\"member\":{}}}},\"output\":{\"type\":\"structure\",\"members\":{}}},\"UpdateGroup\":{\"http\":{\"requestUri\":\"/UpdateGroup\"},\"input\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupARN\":{},\"FilterExpression\":{},\"InsightsConfiguration\":{\"shape\":\"Si\"}}},\"output\":{\"type\":\"structure\",\"members\":{\"Group\":{\"shape\":\"So\"}}}},\"UpdateSamplingRule\":{\"http\":{\"requestUri\":\"/UpdateSamplingRule\"},\"input\":{\"type\":\"structure\",\"required\":[\"SamplingRuleUpdate\"],\"members\":{\"SamplingRuleUpdate\":{\"type\":\"structure\",\"members\":{\"RuleName\":{},\"RuleARN\":{},\"ResourceARN\":{},\"Priority\":{\"type\":\"integer\"},\"FixedRate\":{\"type\":\"double\"},\"ReservoirSize\":{\"type\":\"integer\"},\"Host\":{},\"ServiceName\":{},\"ServiceType\":{},\"HTTPMethod\":{},\"URLPath\":{},\"Attributes\":{\"shape\":\"S12\"}}}}},\"output\":{\"type\":\"structure\",\"members\":{\"SamplingRuleRecord\":{\"shape\":\"S16\"}}}}},\"shapes\":{\"S2\":{\"type\":\"list\",\"member\":{}},\"Si\":{\"type\":\"structure\",\"members\":{\"InsightsEnabled\":{\"type\":\"boolean\"},\"NotificationsEnabled\":{\"type\":\"boolean\"}}},\"Sj\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"required\":[\"Key\",\"Value\"],\"members\":{\"Key\":{},\"Value\":{}}}},\"So\":{\"type\":\"structure\",\"members\":{\"GroupName\":{},\"GroupARN\":{},\"FilterExpression\":{},\"InsightsConfiguration\":{\"shape\":\"Si\"}}},\"Sq\":{\"type\":\"structure\",\"required\":[\"ResourceARN\",\"Priority\",\"FixedRate\",\"ReservoirSize\",\"ServiceName\",\"ServiceType\",\"Host\",\"HTTPMethod\",\"URLPath\",\"Version\"],\"members\":{\"RuleName\":{},\"RuleARN\":{},\"ResourceARN\":{},\"Priority\":{\"type\":\"integer\"},\"FixedRate\":{\"type\":\"double\"},\"ReservoirSize\":{\"type\":\"integer\"},\"ServiceName\":{},\"ServiceType\":{},\"Host\":{},\"HTTPMethod\":{},\"URLPath\":{},\"Version\":{\"type\":\"integer\"},\"Attributes\":{\"shape\":\"S12\"}}},\"S12\":{\"type\":\"map\",\"key\":{},\"value\":{}},\"S16\":{\"type\":\"structure\",\"members\":{\"SamplingRule\":{\"shape\":\"Sq\"},\"CreatedAt\":{\"type\":\"timestamp\"},\"ModifiedAt\":{\"type\":\"timestamp\"}}},\"S1f\":{\"type\":\"structure\",\"members\":{\"KeyId\":{},\"Status\":{},\"Type\":{}}},\"S1t\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Names\":{\"shape\":\"S1u\"},\"AccountId\":{},\"Type\":{}}},\"S1u\":{\"type\":\"list\",\"member\":{}},\"S1v\":{\"type\":\"list\",\"member\":{}},\"S1z\":{\"type\":\"structure\",\"members\":{\"FaultCount\":{\"type\":\"long\"},\"OkCount\":{\"type\":\"long\"},\"TotalCount\":{\"type\":\"long\"}}},\"S21\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ServiceId\":{\"shape\":\"S1t\"}}}},\"S3a\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReferenceId\":{\"type\":\"integer\"},\"Name\":{},\"Names\":{\"shape\":\"S1u\"},\"Root\":{\"type\":\"boolean\"},\"AccountId\":{},\"Type\":{},\"State\":{},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"Edges\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"ReferenceId\":{\"type\":\"integer\"},\"StartTime\":{\"type\":\"timestamp\"},\"EndTime\":{\"type\":\"timestamp\"},\"SummaryStatistics\":{\"shape\":\"S3e\"},\"ResponseTimeHistogram\":{\"shape\":\"S3h\"},\"Aliases\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Names\":{\"type\":\"list\",\"member\":{}},\"Type\":{}}}}}}},\"SummaryStatistics\":{\"shape\":\"S3m\"},\"DurationHistogram\":{\"shape\":\"S3h\"},\"ResponseTimeHistogram\":{\"shape\":\"S3h\"}}}},\"S3e\":{\"type\":\"structure\",\"members\":{\"OkCount\":{\"type\":\"long\"},\"ErrorStatistics\":{\"shape\":\"S3f\"},\"FaultStatistics\":{\"shape\":\"S3g\"},\"TotalCount\":{\"type\":\"long\"},\"TotalResponseTime\":{\"type\":\"double\"}}},\"S3f\":{\"type\":\"structure\",\"members\":{\"ThrottleCount\":{\"type\":\"long\"},\"OtherCount\":{\"type\":\"long\"},\"TotalCount\":{\"type\":\"long\"}}},\"S3g\":{\"type\":\"structure\",\"members\":{\"OtherCount\":{\"type\":\"long\"},\"TotalCount\":{\"type\":\"long\"}}},\"S3h\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Value\":{\"type\":\"double\"},\"Count\":{\"type\":\"integer\"}}}},\"S3m\":{\"type\":\"structure\",\"members\":{\"OkCount\":{\"type\":\"long\"},\"ErrorStatistics\":{\"shape\":\"S3f\"},\"FaultStatistics\":{\"shape\":\"S3g\"},\"TotalCount\":{\"type\":\"long\"},\"TotalResponseTime\":{\"type\":\"double\"}}},\"S49\":{\"type\":\"list\",\"member\":{\"shape\":\"S1t\"}},\"S4o\":{\"type\":\"list\",\"member\":{\"type\":\"structure\",\"members\":{\"Name\":{},\"Message\":{}}}}}}");

/***/ }),

/***/ 83127:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"o\":{\"BatchGetTraces\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Traces\"},\"GetGroups\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Groups\"},\"GetInsightEvents\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetInsightSummaries\":{\"input_token\":\"NextToken\",\"limit_key\":\"MaxResults\",\"output_token\":\"NextToken\"},\"GetSamplingRules\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"SamplingRuleRecords\"},\"GetSamplingStatisticSummaries\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"SamplingStatisticSummaries\"},\"GetServiceGraph\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Services\"},\"GetTimeSeriesServiceStatistics\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"TimeSeriesServiceStatistics\"},\"GetTraceGraph\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"Services\"},\"GetTraceSummaries\":{\"input_token\":\"NextToken\",\"output_token\":\"NextToken\",\"result_key\":\"TraceSummaries\"}}}");

/***/ }),

/***/ 51765:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"rules\":{\"*/*\":{\"endpoint\":\"{service}.{region}.amazonaws.com\"},\"cn-*/*\":{\"endpoint\":\"{service}.{region}.amazonaws.com.cn\"},\"us-iso-*/*\":{\"endpoint\":\"{service}.{region}.c2s.ic.gov\"},\"us-isob-*/*\":{\"endpoint\":\"{service}.{region}.sc2s.sgov.gov\"},\"*/budgets\":\"globalSSL\",\"*/cloudfront\":\"globalSSL\",\"*/sts\":\"globalSSL\",\"*/importexport\":{\"endpoint\":\"{service}.amazonaws.com\",\"signatureVersion\":\"v2\",\"globalEndpoint\":true},\"*/route53\":\"globalSSL\",\"cn-*/route53\":{\"endpoint\":\"{service}.amazonaws.com.cn\",\"globalEndpoint\":true,\"signingRegion\":\"cn-northwest-1\"},\"us-gov-*/route53\":\"globalGovCloud\",\"*/waf\":\"globalSSL\",\"*/iam\":\"globalSSL\",\"cn-*/iam\":{\"endpoint\":\"{service}.cn-north-1.amazonaws.com.cn\",\"globalEndpoint\":true,\"signingRegion\":\"cn-north-1\"},\"us-gov-*/iam\":\"globalGovCloud\",\"us-gov-*/sts\":{\"endpoint\":\"{service}.{region}.amazonaws.com\"},\"us-gov-west-1/s3\":\"s3signature\",\"us-west-1/s3\":\"s3signature\",\"us-west-2/s3\":\"s3signature\",\"eu-west-1/s3\":\"s3signature\",\"ap-southeast-1/s3\":\"s3signature\",\"ap-southeast-2/s3\":\"s3signature\",\"ap-northeast-1/s3\":\"s3signature\",\"sa-east-1/s3\":\"s3signature\",\"us-east-1/s3\":{\"endpoint\":\"{service}.amazonaws.com\",\"signatureVersion\":\"s3\"},\"us-east-1/sdb\":{\"endpoint\":\"{service}.amazonaws.com\",\"signatureVersion\":\"v2\"},\"*/sdb\":{\"endpoint\":\"{service}.{region}.amazonaws.com\",\"signatureVersion\":\"v2\"}},\"patterns\":{\"globalSSL\":{\"endpoint\":\"https://{service}.amazonaws.com\",\"globalEndpoint\":true,\"signingRegion\":\"us-east-1\"},\"globalGovCloud\":{\"endpoint\":\"{service}.us-gov.amazonaws.com\",\"globalEndpoint\":true,\"signingRegion\":\"us-gov-west-1\"},\"s3signature\":{\"endpoint\":\"{service}.{region}.amazonaws.com\",\"signatureVersion\":\"s3\"}}}");

/***/ }),

/***/ 9248:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"name\":\"got\",\"version\":\"9.6.0\",\"description\":\"Simplified HTTP requests\",\"license\":\"MIT\",\"repository\":\"sindresorhus/got\",\"main\":\"source\",\"engines\":{\"node\":\">=8.6\"},\"scripts\":{\"test\":\"xo && nyc ava\",\"release\":\"np\"},\"files\":[\"source\"],\"keywords\":[\"http\",\"https\",\"get\",\"got\",\"url\",\"uri\",\"request\",\"util\",\"utility\",\"simple\",\"curl\",\"wget\",\"fetch\",\"net\",\"network\",\"electron\"],\"dependencies\":{\"@sindresorhus/is\":\"^0.14.0\",\"@szmarczak/http-timer\":\"^1.1.2\",\"cacheable-request\":\"^6.0.0\",\"decompress-response\":\"^3.3.0\",\"duplexer3\":\"^0.1.4\",\"get-stream\":\"^4.1.0\",\"lowercase-keys\":\"^1.0.1\",\"mimic-response\":\"^1.0.1\",\"p-cancelable\":\"^1.0.0\",\"to-readable-stream\":\"^1.0.0\",\"url-parse-lax\":\"^3.0.0\"},\"devDependencies\":{\"ava\":\"^1.1.0\",\"coveralls\":\"^3.0.0\",\"delay\":\"^4.1.0\",\"form-data\":\"^2.3.3\",\"get-port\":\"^4.0.0\",\"np\":\"^3.1.0\",\"nyc\":\"^13.1.0\",\"p-event\":\"^2.1.0\",\"pem\":\"^1.13.2\",\"proxyquire\":\"^2.0.1\",\"sinon\":\"^7.2.2\",\"slow-stream\":\"0.0.4\",\"tempfile\":\"^2.0.0\",\"tempy\":\"^0.2.1\",\"tough-cookie\":\"^3.0.0\",\"xo\":\"^0.24.0\"},\"ava\":{\"concurrency\":4},\"browser\":{\"decompress-response\":false,\"electron\":false}}");

/***/ }),

/***/ 24391:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"afterRequest.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"optional\":true,\"required\":[\"lastAccess\",\"eTag\",\"hitCount\"],\"properties\":{\"expires\":{\"type\":\"string\",\"pattern\":\"^(\\\\d{4})(-)?(\\\\d\\\\d)(-)?(\\\\d\\\\d)(T)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(\\\\.\\\\d+)?(Z|([+-])(\\\\d\\\\d)(:)?(\\\\d\\\\d))?\"},\"lastAccess\":{\"type\":\"string\",\"pattern\":\"^(\\\\d{4})(-)?(\\\\d\\\\d)(-)?(\\\\d\\\\d)(T)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(\\\\.\\\\d+)?(Z|([+-])(\\\\d\\\\d)(:)?(\\\\d\\\\d))?\"},\"eTag\":{\"type\":\"string\"},\"hitCount\":{\"type\":\"integer\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 94440:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"beforeRequest.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"optional\":true,\"required\":[\"lastAccess\",\"eTag\",\"hitCount\"],\"properties\":{\"expires\":{\"type\":\"string\",\"pattern\":\"^(\\\\d{4})(-)?(\\\\d\\\\d)(-)?(\\\\d\\\\d)(T)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(\\\\.\\\\d+)?(Z|([+-])(\\\\d\\\\d)(:)?(\\\\d\\\\d))?\"},\"lastAccess\":{\"type\":\"string\",\"pattern\":\"^(\\\\d{4})(-)?(\\\\d\\\\d)(-)?(\\\\d\\\\d)(T)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(\\\\.\\\\d+)?(Z|([+-])(\\\\d\\\\d)(:)?(\\\\d\\\\d))?\"},\"eTag\":{\"type\":\"string\"},\"hitCount\":{\"type\":\"integer\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 99850:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"browser.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"name\",\"version\"],\"properties\":{\"name\":{\"type\":\"string\"},\"version\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 77654:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"cache.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"properties\":{\"beforeRequest\":{\"oneOf\":[{\"type\":\"null\"},{\"$ref\":\"beforeRequest.json#\"}]},\"afterRequest\":{\"oneOf\":[{\"type\":\"null\"},{\"$ref\":\"afterRequest.json#\"}]},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 73656:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"content.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"size\",\"mimeType\"],\"properties\":{\"size\":{\"type\":\"integer\"},\"compression\":{\"type\":\"integer\"},\"mimeType\":{\"type\":\"string\"},\"text\":{\"type\":\"string\"},\"encoding\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 67948:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"cookie.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\"},\"value\":{\"type\":\"string\"},\"path\":{\"type\":\"string\"},\"domain\":{\"type\":\"string\"},\"expires\":{\"type\":[\"string\",\"null\"],\"format\":\"date-time\"},\"httpOnly\":{\"type\":\"boolean\"},\"secure\":{\"type\":\"boolean\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 33412:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"creator.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"name\",\"version\"],\"properties\":{\"name\":{\"type\":\"string\"},\"version\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 32525:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"entry.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"optional\":true,\"required\":[\"startedDateTime\",\"time\",\"request\",\"response\",\"cache\",\"timings\"],\"properties\":{\"pageref\":{\"type\":\"string\"},\"startedDateTime\":{\"type\":\"string\",\"format\":\"date-time\",\"pattern\":\"^(\\\\d{4})(-)?(\\\\d\\\\d)(-)?(\\\\d\\\\d)(T)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(\\\\.\\\\d+)?(Z|([+-])(\\\\d\\\\d)(:)?(\\\\d\\\\d))\"},\"time\":{\"type\":\"number\",\"min\":0},\"request\":{\"$ref\":\"request.json#\"},\"response\":{\"$ref\":\"response.json#\"},\"cache\":{\"$ref\":\"cache.json#\"},\"timings\":{\"$ref\":\"timings.json#\"},\"serverIPAddress\":{\"type\":\"string\",\"oneOf\":[{\"format\":\"ipv4\"},{\"format\":\"ipv6\"}]},\"connection\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 84943:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"har.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"log\"],\"properties\":{\"log\":{\"$ref\":\"log.json#\"}}}");

/***/ }),

/***/ 68344:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"header.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\"},\"value\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 69142:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"log.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"version\",\"creator\",\"entries\"],\"properties\":{\"version\":{\"type\":\"string\"},\"creator\":{\"$ref\":\"creator.json#\"},\"browser\":{\"$ref\":\"browser.json#\"},\"pages\":{\"type\":\"array\",\"items\":{\"$ref\":\"page.json#\"}},\"entries\":{\"type\":\"array\",\"items\":{\"$ref\":\"entry.json#\"}},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 29075:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"page.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"optional\":true,\"required\":[\"startedDateTime\",\"id\",\"title\",\"pageTimings\"],\"properties\":{\"startedDateTime\":{\"type\":\"string\",\"format\":\"date-time\",\"pattern\":\"^(\\\\d{4})(-)?(\\\\d\\\\d)(-)?(\\\\d\\\\d)(T)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(:)?(\\\\d\\\\d)(\\\\.\\\\d+)?(Z|([+-])(\\\\d\\\\d)(:)?(\\\\d\\\\d))\"},\"id\":{\"type\":\"string\",\"unique\":true},\"title\":{\"type\":\"string\"},\"pageTimings\":{\"$ref\":\"pageTimings.json#\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 15096:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"pageTimings.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"properties\":{\"onContentLoad\":{\"type\":\"number\",\"min\":-1},\"onLoad\":{\"type\":\"number\",\"min\":-1},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 73697:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"postData.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"optional\":true,\"required\":[\"mimeType\"],\"properties\":{\"mimeType\":{\"type\":\"string\"},\"text\":{\"type\":\"string\"},\"params\":{\"type\":\"array\",\"required\":[\"name\"],\"properties\":{\"name\":{\"type\":\"string\"},\"value\":{\"type\":\"string\"},\"fileName\":{\"type\":\"string\"},\"contentType\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 70877:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"query.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"name\",\"value\"],\"properties\":{\"name\":{\"type\":\"string\"},\"value\":{\"type\":\"string\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 92084:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"request.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"method\",\"url\",\"httpVersion\",\"cookies\",\"headers\",\"queryString\",\"headersSize\",\"bodySize\"],\"properties\":{\"method\":{\"type\":\"string\"},\"url\":{\"type\":\"string\",\"format\":\"uri\"},\"httpVersion\":{\"type\":\"string\"},\"cookies\":{\"type\":\"array\",\"items\":{\"$ref\":\"cookie.json#\"}},\"headers\":{\"type\":\"array\",\"items\":{\"$ref\":\"header.json#\"}},\"queryString\":{\"type\":\"array\",\"items\":{\"$ref\":\"query.json#\"}},\"postData\":{\"$ref\":\"postData.json#\"},\"headersSize\":{\"type\":\"integer\"},\"bodySize\":{\"type\":\"integer\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 20702:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"response.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"type\":\"object\",\"required\":[\"status\",\"statusText\",\"httpVersion\",\"cookies\",\"headers\",\"content\",\"redirectURL\",\"headersSize\",\"bodySize\"],\"properties\":{\"status\":{\"type\":\"integer\"},\"statusText\":{\"type\":\"string\"},\"httpVersion\":{\"type\":\"string\"},\"cookies\":{\"type\":\"array\",\"items\":{\"$ref\":\"cookie.json#\"}},\"headers\":{\"type\":\"array\",\"items\":{\"$ref\":\"header.json#\"}},\"content\":{\"$ref\":\"content.json#\"},\"redirectURL\":{\"type\":\"string\"},\"headersSize\":{\"type\":\"integer\"},\"bodySize\":{\"type\":\"integer\"},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 36941:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"$id\":\"timings.json#\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"required\":[\"send\",\"wait\",\"receive\"],\"properties\":{\"dns\":{\"type\":\"number\",\"min\":-1},\"connect\":{\"type\":\"number\",\"min\":-1},\"blocked\":{\"type\":\"number\",\"min\":-1},\"send\":{\"type\":\"number\",\"min\":-1},\"wait\":{\"type\":\"number\",\"min\":-1},\"receive\":{\"type\":\"number\",\"min\":-1},\"ssl\":{\"type\":\"number\",\"min\":-1},\"comment\":{\"type\":\"string\"}}}");

/***/ }),

/***/ 73313:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"application/1d-interleaved-parityfec\":{\"source\":\"iana\"},\"application/3gpdash-qoe-report+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/3gpp-ims+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/a2l\":{\"source\":\"iana\"},\"application/activemessage\":{\"source\":\"iana\"},\"application/activity+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-costmap+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-costmapfilter+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-directory+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-endpointcost+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-endpointcostparams+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-endpointprop+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-endpointpropparams+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-error+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-networkmap+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-networkmapfilter+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-updatestreamcontrol+json\":{\"source\":\"iana\",\"compressible\":true},\"application/alto-updatestreamparams+json\":{\"source\":\"iana\",\"compressible\":true},\"application/aml\":{\"source\":\"iana\"},\"application/andrew-inset\":{\"source\":\"iana\",\"extensions\":[\"ez\"]},\"application/applefile\":{\"source\":\"iana\"},\"application/applixware\":{\"source\":\"apache\",\"extensions\":[\"aw\"]},\"application/atf\":{\"source\":\"iana\"},\"application/atfx\":{\"source\":\"iana\"},\"application/atom+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"atom\"]},\"application/atomcat+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"atomcat\"]},\"application/atomdeleted+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"atomdeleted\"]},\"application/atomicmail\":{\"source\":\"iana\"},\"application/atomsvc+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"atomsvc\"]},\"application/atsc-dwd+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"dwd\"]},\"application/atsc-dynamic-event-message\":{\"source\":\"iana\"},\"application/atsc-held+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"held\"]},\"application/atsc-rdt+json\":{\"source\":\"iana\",\"compressible\":true},\"application/atsc-rsat+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rsat\"]},\"application/atxml\":{\"source\":\"iana\"},\"application/auth-policy+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/bacnet-xdd+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/batch-smtp\":{\"source\":\"iana\"},\"application/bdoc\":{\"compressible\":false,\"extensions\":[\"bdoc\"]},\"application/beep+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/calendar+json\":{\"source\":\"iana\",\"compressible\":true},\"application/calendar+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xcs\"]},\"application/call-completion\":{\"source\":\"iana\"},\"application/cals-1840\":{\"source\":\"iana\"},\"application/captive+json\":{\"source\":\"iana\",\"compressible\":true},\"application/cbor\":{\"source\":\"iana\"},\"application/cbor-seq\":{\"source\":\"iana\"},\"application/cccex\":{\"source\":\"iana\"},\"application/ccmp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/ccxml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ccxml\"]},\"application/cdfx+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"cdfx\"]},\"application/cdmi-capability\":{\"source\":\"iana\",\"extensions\":[\"cdmia\"]},\"application/cdmi-container\":{\"source\":\"iana\",\"extensions\":[\"cdmic\"]},\"application/cdmi-domain\":{\"source\":\"iana\",\"extensions\":[\"cdmid\"]},\"application/cdmi-object\":{\"source\":\"iana\",\"extensions\":[\"cdmio\"]},\"application/cdmi-queue\":{\"source\":\"iana\",\"extensions\":[\"cdmiq\"]},\"application/cdni\":{\"source\":\"iana\"},\"application/cea\":{\"source\":\"iana\"},\"application/cea-2018+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/cellml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/cfw\":{\"source\":\"iana\"},\"application/clr\":{\"source\":\"iana\"},\"application/clue+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/clue_info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/cms\":{\"source\":\"iana\"},\"application/cnrp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/coap-group+json\":{\"source\":\"iana\",\"compressible\":true},\"application/coap-payload\":{\"source\":\"iana\"},\"application/commonground\":{\"source\":\"iana\"},\"application/conference-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/cose\":{\"source\":\"iana\"},\"application/cose-key\":{\"source\":\"iana\"},\"application/cose-key-set\":{\"source\":\"iana\"},\"application/cpl+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/csrattrs\":{\"source\":\"iana\"},\"application/csta+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/cstadata+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/csvm+json\":{\"source\":\"iana\",\"compressible\":true},\"application/cu-seeme\":{\"source\":\"apache\",\"extensions\":[\"cu\"]},\"application/cwt\":{\"source\":\"iana\"},\"application/cybercash\":{\"source\":\"iana\"},\"application/dart\":{\"compressible\":true},\"application/dash+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mpd\"]},\"application/dashdelta\":{\"source\":\"iana\"},\"application/davmount+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"davmount\"]},\"application/dca-rft\":{\"source\":\"iana\"},\"application/dcd\":{\"source\":\"iana\"},\"application/dec-dx\":{\"source\":\"iana\"},\"application/dialog-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/dicom\":{\"source\":\"iana\"},\"application/dicom+json\":{\"source\":\"iana\",\"compressible\":true},\"application/dicom+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/dii\":{\"source\":\"iana\"},\"application/dit\":{\"source\":\"iana\"},\"application/dns\":{\"source\":\"iana\"},\"application/dns+json\":{\"source\":\"iana\",\"compressible\":true},\"application/dns-message\":{\"source\":\"iana\"},\"application/docbook+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"dbk\"]},\"application/dots+cbor\":{\"source\":\"iana\"},\"application/dskpp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/dssc+der\":{\"source\":\"iana\",\"extensions\":[\"dssc\"]},\"application/dssc+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xdssc\"]},\"application/dvcs\":{\"source\":\"iana\"},\"application/ecmascript\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"es\",\"ecma\"]},\"application/edi-consent\":{\"source\":\"iana\"},\"application/edi-x12\":{\"source\":\"iana\",\"compressible\":false},\"application/edifact\":{\"source\":\"iana\",\"compressible\":false},\"application/efi\":{\"source\":\"iana\"},\"application/elm+json\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/elm+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.cap+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/emergencycalldata.comment+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.control+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.deviceinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.ecall.msd\":{\"source\":\"iana\"},\"application/emergencycalldata.providerinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.serviceinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.subscriberinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emergencycalldata.veds+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/emma+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"emma\"]},\"application/emotionml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"emotionml\"]},\"application/encaprtp\":{\"source\":\"iana\"},\"application/epp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/epub+zip\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"epub\"]},\"application/eshop\":{\"source\":\"iana\"},\"application/exi\":{\"source\":\"iana\",\"extensions\":[\"exi\"]},\"application/expect-ct-report+json\":{\"source\":\"iana\",\"compressible\":true},\"application/fastinfoset\":{\"source\":\"iana\"},\"application/fastsoap\":{\"source\":\"iana\"},\"application/fdt+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"fdt\"]},\"application/fhir+json\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/fhir+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/fido.trusted-apps+json\":{\"compressible\":true},\"application/fits\":{\"source\":\"iana\"},\"application/flexfec\":{\"source\":\"iana\"},\"application/font-sfnt\":{\"source\":\"iana\"},\"application/font-tdpfr\":{\"source\":\"iana\",\"extensions\":[\"pfr\"]},\"application/font-woff\":{\"source\":\"iana\",\"compressible\":false},\"application/framework-attributes+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/geo+json\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"geojson\"]},\"application/geo+json-seq\":{\"source\":\"iana\"},\"application/geopackage+sqlite3\":{\"source\":\"iana\"},\"application/geoxacml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/gltf-buffer\":{\"source\":\"iana\"},\"application/gml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"gml\"]},\"application/gpx+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"gpx\"]},\"application/gxf\":{\"source\":\"apache\",\"extensions\":[\"gxf\"]},\"application/gzip\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"gz\"]},\"application/h224\":{\"source\":\"iana\"},\"application/held+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/hjson\":{\"extensions\":[\"hjson\"]},\"application/http\":{\"source\":\"iana\"},\"application/hyperstudio\":{\"source\":\"iana\",\"extensions\":[\"stk\"]},\"application/ibe-key-request+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/ibe-pkg-reply+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/ibe-pp-data\":{\"source\":\"iana\"},\"application/iges\":{\"source\":\"iana\"},\"application/im-iscomposing+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/index\":{\"source\":\"iana\"},\"application/index.cmd\":{\"source\":\"iana\"},\"application/index.obj\":{\"source\":\"iana\"},\"application/index.response\":{\"source\":\"iana\"},\"application/index.vnd\":{\"source\":\"iana\"},\"application/inkml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ink\",\"inkml\"]},\"application/iotp\":{\"source\":\"iana\"},\"application/ipfix\":{\"source\":\"iana\",\"extensions\":[\"ipfix\"]},\"application/ipp\":{\"source\":\"iana\"},\"application/isup\":{\"source\":\"iana\"},\"application/its+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"its\"]},\"application/java-archive\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"jar\",\"war\",\"ear\"]},\"application/java-serialized-object\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"ser\"]},\"application/java-vm\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"class\"]},\"application/javascript\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"js\",\"mjs\"]},\"application/jf2feed+json\":{\"source\":\"iana\",\"compressible\":true},\"application/jose\":{\"source\":\"iana\"},\"application/jose+json\":{\"source\":\"iana\",\"compressible\":true},\"application/jrd+json\":{\"source\":\"iana\",\"compressible\":true},\"application/jscalendar+json\":{\"source\":\"iana\",\"compressible\":true},\"application/json\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"json\",\"map\"]},\"application/json-patch+json\":{\"source\":\"iana\",\"compressible\":true},\"application/json-seq\":{\"source\":\"iana\"},\"application/json5\":{\"extensions\":[\"json5\"]},\"application/jsonml+json\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"jsonml\"]},\"application/jwk+json\":{\"source\":\"iana\",\"compressible\":true},\"application/jwk-set+json\":{\"source\":\"iana\",\"compressible\":true},\"application/jwt\":{\"source\":\"iana\"},\"application/kpml-request+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/kpml-response+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/ld+json\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"jsonld\"]},\"application/lgr+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"lgr\"]},\"application/link-format\":{\"source\":\"iana\"},\"application/load-control+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/lost+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"lostxml\"]},\"application/lostsync+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/lpf+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/lxf\":{\"source\":\"iana\"},\"application/mac-binhex40\":{\"source\":\"iana\",\"extensions\":[\"hqx\"]},\"application/mac-compactpro\":{\"source\":\"apache\",\"extensions\":[\"cpt\"]},\"application/macwriteii\":{\"source\":\"iana\"},\"application/mads+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mads\"]},\"application/manifest+json\":{\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"webmanifest\"]},\"application/marc\":{\"source\":\"iana\",\"extensions\":[\"mrc\"]},\"application/marcxml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mrcx\"]},\"application/mathematica\":{\"source\":\"iana\",\"extensions\":[\"ma\",\"nb\",\"mb\"]},\"application/mathml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mathml\"]},\"application/mathml-content+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mathml-presentation+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-associated-procedure-description+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-deregister+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-envelope+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-msk+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-msk-response+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-protection-description+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-reception-report+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-register+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-register-response+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-schedule+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbms-user-service-description+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mbox\":{\"source\":\"iana\",\"extensions\":[\"mbox\"]},\"application/media-policy-dataset+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/media_control+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mediaservercontrol+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mscml\"]},\"application/merge-patch+json\":{\"source\":\"iana\",\"compressible\":true},\"application/metalink+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"metalink\"]},\"application/metalink4+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"meta4\"]},\"application/mets+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mets\"]},\"application/mf4\":{\"source\":\"iana\"},\"application/mikey\":{\"source\":\"iana\"},\"application/mipc\":{\"source\":\"iana\"},\"application/mmt-aei+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"maei\"]},\"application/mmt-usd+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"musd\"]},\"application/mods+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mods\"]},\"application/moss-keys\":{\"source\":\"iana\"},\"application/moss-signature\":{\"source\":\"iana\"},\"application/mosskey-data\":{\"source\":\"iana\"},\"application/mosskey-request\":{\"source\":\"iana\"},\"application/mp21\":{\"source\":\"iana\",\"extensions\":[\"m21\",\"mp21\"]},\"application/mp4\":{\"source\":\"iana\",\"extensions\":[\"mp4s\",\"m4p\"]},\"application/mpeg4-generic\":{\"source\":\"iana\"},\"application/mpeg4-iod\":{\"source\":\"iana\"},\"application/mpeg4-iod-xmt\":{\"source\":\"iana\"},\"application/mrb-consumer+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/mrb-publish+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/msc-ivr+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/msc-mixer+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/msword\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"doc\",\"dot\"]},\"application/mud+json\":{\"source\":\"iana\",\"compressible\":true},\"application/multipart-core\":{\"source\":\"iana\"},\"application/mxf\":{\"source\":\"iana\",\"extensions\":[\"mxf\"]},\"application/n-quads\":{\"source\":\"iana\",\"extensions\":[\"nq\"]},\"application/n-triples\":{\"source\":\"iana\",\"extensions\":[\"nt\"]},\"application/nasdata\":{\"source\":\"iana\"},\"application/news-checkgroups\":{\"source\":\"iana\",\"charset\":\"US-ASCII\"},\"application/news-groupinfo\":{\"source\":\"iana\",\"charset\":\"US-ASCII\"},\"application/news-transmission\":{\"source\":\"iana\"},\"application/nlsml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/node\":{\"source\":\"iana\",\"extensions\":[\"cjs\"]},\"application/nss\":{\"source\":\"iana\"},\"application/ocsp-request\":{\"source\":\"iana\"},\"application/ocsp-response\":{\"source\":\"iana\"},\"application/octet-stream\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"bin\",\"dms\",\"lrf\",\"mar\",\"so\",\"dist\",\"distz\",\"pkg\",\"bpk\",\"dump\",\"elc\",\"deploy\",\"exe\",\"dll\",\"deb\",\"dmg\",\"iso\",\"img\",\"msi\",\"msp\",\"msm\",\"buffer\"]},\"application/oda\":{\"source\":\"iana\",\"extensions\":[\"oda\"]},\"application/odm+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/odx\":{\"source\":\"iana\"},\"application/oebps-package+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"opf\"]},\"application/ogg\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"ogx\"]},\"application/omdoc+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"omdoc\"]},\"application/onenote\":{\"source\":\"apache\",\"extensions\":[\"onetoc\",\"onetoc2\",\"onetmp\",\"onepkg\"]},\"application/opc-nodeset+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/oscore\":{\"source\":\"iana\"},\"application/oxps\":{\"source\":\"iana\",\"extensions\":[\"oxps\"]},\"application/p2p-overlay+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"relo\"]},\"application/parityfec\":{\"source\":\"iana\"},\"application/passport\":{\"source\":\"iana\"},\"application/patch-ops-error+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xer\"]},\"application/pdf\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"pdf\"]},\"application/pdx\":{\"source\":\"iana\"},\"application/pem-certificate-chain\":{\"source\":\"iana\"},\"application/pgp-encrypted\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"pgp\"]},\"application/pgp-keys\":{\"source\":\"iana\"},\"application/pgp-signature\":{\"source\":\"iana\",\"extensions\":[\"asc\",\"sig\"]},\"application/pics-rules\":{\"source\":\"apache\",\"extensions\":[\"prf\"]},\"application/pidf+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/pidf-diff+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/pkcs10\":{\"source\":\"iana\",\"extensions\":[\"p10\"]},\"application/pkcs12\":{\"source\":\"iana\"},\"application/pkcs7-mime\":{\"source\":\"iana\",\"extensions\":[\"p7m\",\"p7c\"]},\"application/pkcs7-signature\":{\"source\":\"iana\",\"extensions\":[\"p7s\"]},\"application/pkcs8\":{\"source\":\"iana\",\"extensions\":[\"p8\"]},\"application/pkcs8-encrypted\":{\"source\":\"iana\"},\"application/pkix-attr-cert\":{\"source\":\"iana\",\"extensions\":[\"ac\"]},\"application/pkix-cert\":{\"source\":\"iana\",\"extensions\":[\"cer\"]},\"application/pkix-crl\":{\"source\":\"iana\",\"extensions\":[\"crl\"]},\"application/pkix-pkipath\":{\"source\":\"iana\",\"extensions\":[\"pkipath\"]},\"application/pkixcmp\":{\"source\":\"iana\",\"extensions\":[\"pki\"]},\"application/pls+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"pls\"]},\"application/poc-settings+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/postscript\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ai\",\"eps\",\"ps\"]},\"application/ppsp-tracker+json\":{\"source\":\"iana\",\"compressible\":true},\"application/problem+json\":{\"source\":\"iana\",\"compressible\":true},\"application/problem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/provenance+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"provx\"]},\"application/prs.alvestrand.titrax-sheet\":{\"source\":\"iana\"},\"application/prs.cww\":{\"source\":\"iana\",\"extensions\":[\"cww\"]},\"application/prs.cyn\":{\"source\":\"iana\",\"charset\":\"7-BIT\"},\"application/prs.hpub+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/prs.nprend\":{\"source\":\"iana\"},\"application/prs.plucker\":{\"source\":\"iana\"},\"application/prs.rdf-xml-crypt\":{\"source\":\"iana\"},\"application/prs.xsf+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/pskc+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"pskcxml\"]},\"application/pvd+json\":{\"source\":\"iana\",\"compressible\":true},\"application/qsig\":{\"source\":\"iana\"},\"application/raml+yaml\":{\"compressible\":true,\"extensions\":[\"raml\"]},\"application/raptorfec\":{\"source\":\"iana\"},\"application/rdap+json\":{\"source\":\"iana\",\"compressible\":true},\"application/rdf+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rdf\",\"owl\"]},\"application/reginfo+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rif\"]},\"application/relax-ng-compact-syntax\":{\"source\":\"iana\",\"extensions\":[\"rnc\"]},\"application/remote-printing\":{\"source\":\"iana\"},\"application/reputon+json\":{\"source\":\"iana\",\"compressible\":true},\"application/resource-lists+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rl\"]},\"application/resource-lists-diff+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rld\"]},\"application/rfc+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/riscos\":{\"source\":\"iana\"},\"application/rlmi+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/rls-services+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rs\"]},\"application/route-apd+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rapd\"]},\"application/route-s-tsid+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"sls\"]},\"application/route-usd+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rusd\"]},\"application/rpki-ghostbusters\":{\"source\":\"iana\",\"extensions\":[\"gbr\"]},\"application/rpki-manifest\":{\"source\":\"iana\",\"extensions\":[\"mft\"]},\"application/rpki-publication\":{\"source\":\"iana\"},\"application/rpki-roa\":{\"source\":\"iana\",\"extensions\":[\"roa\"]},\"application/rpki-updown\":{\"source\":\"iana\"},\"application/rsd+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"rsd\"]},\"application/rss+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"rss\"]},\"application/rtf\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rtf\"]},\"application/rtploopback\":{\"source\":\"iana\"},\"application/rtx\":{\"source\":\"iana\"},\"application/samlassertion+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/samlmetadata+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/sarif+json\":{\"source\":\"iana\",\"compressible\":true},\"application/sbe\":{\"source\":\"iana\"},\"application/sbml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"sbml\"]},\"application/scaip+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/scim+json\":{\"source\":\"iana\",\"compressible\":true},\"application/scvp-cv-request\":{\"source\":\"iana\",\"extensions\":[\"scq\"]},\"application/scvp-cv-response\":{\"source\":\"iana\",\"extensions\":[\"scs\"]},\"application/scvp-vp-request\":{\"source\":\"iana\",\"extensions\":[\"spq\"]},\"application/scvp-vp-response\":{\"source\":\"iana\",\"extensions\":[\"spp\"]},\"application/sdp\":{\"source\":\"iana\",\"extensions\":[\"sdp\"]},\"application/secevent+jwt\":{\"source\":\"iana\"},\"application/senml+cbor\":{\"source\":\"iana\"},\"application/senml+json\":{\"source\":\"iana\",\"compressible\":true},\"application/senml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"senmlx\"]},\"application/senml-etch+cbor\":{\"source\":\"iana\"},\"application/senml-etch+json\":{\"source\":\"iana\",\"compressible\":true},\"application/senml-exi\":{\"source\":\"iana\"},\"application/sensml+cbor\":{\"source\":\"iana\"},\"application/sensml+json\":{\"source\":\"iana\",\"compressible\":true},\"application/sensml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"sensmlx\"]},\"application/sensml-exi\":{\"source\":\"iana\"},\"application/sep+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/sep-exi\":{\"source\":\"iana\"},\"application/session-info\":{\"source\":\"iana\"},\"application/set-payment\":{\"source\":\"iana\"},\"application/set-payment-initiation\":{\"source\":\"iana\",\"extensions\":[\"setpay\"]},\"application/set-registration\":{\"source\":\"iana\"},\"application/set-registration-initiation\":{\"source\":\"iana\",\"extensions\":[\"setreg\"]},\"application/sgml\":{\"source\":\"iana\"},\"application/sgml-open-catalog\":{\"source\":\"iana\"},\"application/shf+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"shf\"]},\"application/sieve\":{\"source\":\"iana\",\"extensions\":[\"siv\",\"sieve\"]},\"application/simple-filter+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/simple-message-summary\":{\"source\":\"iana\"},\"application/simplesymbolcontainer\":{\"source\":\"iana\"},\"application/sipc\":{\"source\":\"iana\"},\"application/slate\":{\"source\":\"iana\"},\"application/smil\":{\"source\":\"iana\"},\"application/smil+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"smi\",\"smil\"]},\"application/smpte336m\":{\"source\":\"iana\"},\"application/soap+fastinfoset\":{\"source\":\"iana\"},\"application/soap+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/sparql-query\":{\"source\":\"iana\",\"extensions\":[\"rq\"]},\"application/sparql-results+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"srx\"]},\"application/spirits-event+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/sql\":{\"source\":\"iana\"},\"application/srgs\":{\"source\":\"iana\",\"extensions\":[\"gram\"]},\"application/srgs+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"grxml\"]},\"application/sru+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"sru\"]},\"application/ssdl+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"ssdl\"]},\"application/ssml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ssml\"]},\"application/stix+json\":{\"source\":\"iana\",\"compressible\":true},\"application/swid+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"swidtag\"]},\"application/tamp-apex-update\":{\"source\":\"iana\"},\"application/tamp-apex-update-confirm\":{\"source\":\"iana\"},\"application/tamp-community-update\":{\"source\":\"iana\"},\"application/tamp-community-update-confirm\":{\"source\":\"iana\"},\"application/tamp-error\":{\"source\":\"iana\"},\"application/tamp-sequence-adjust\":{\"source\":\"iana\"},\"application/tamp-sequence-adjust-confirm\":{\"source\":\"iana\"},\"application/tamp-status-query\":{\"source\":\"iana\"},\"application/tamp-status-response\":{\"source\":\"iana\"},\"application/tamp-update\":{\"source\":\"iana\"},\"application/tamp-update-confirm\":{\"source\":\"iana\"},\"application/tar\":{\"compressible\":true},\"application/taxii+json\":{\"source\":\"iana\",\"compressible\":true},\"application/td+json\":{\"source\":\"iana\",\"compressible\":true},\"application/tei+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"tei\",\"teicorpus\"]},\"application/tetra_isi\":{\"source\":\"iana\"},\"application/thraud+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"tfi\"]},\"application/timestamp-query\":{\"source\":\"iana\"},\"application/timestamp-reply\":{\"source\":\"iana\"},\"application/timestamped-data\":{\"source\":\"iana\",\"extensions\":[\"tsd\"]},\"application/tlsrpt+gzip\":{\"source\":\"iana\"},\"application/tlsrpt+json\":{\"source\":\"iana\",\"compressible\":true},\"application/tnauthlist\":{\"source\":\"iana\"},\"application/toml\":{\"compressible\":true,\"extensions\":[\"toml\"]},\"application/trickle-ice-sdpfrag\":{\"source\":\"iana\"},\"application/trig\":{\"source\":\"iana\"},\"application/ttml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ttml\"]},\"application/tve-trigger\":{\"source\":\"iana\"},\"application/tzif\":{\"source\":\"iana\"},\"application/tzif-leap\":{\"source\":\"iana\"},\"application/ubjson\":{\"compressible\":false,\"extensions\":[\"ubj\"]},\"application/ulpfec\":{\"source\":\"iana\"},\"application/urc-grpsheet+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/urc-ressheet+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rsheet\"]},\"application/urc-targetdesc+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"td\"]},\"application/urc-uisocketdesc+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vcard+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vcard+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vemmi\":{\"source\":\"iana\"},\"application/vividence.scriptfile\":{\"source\":\"apache\"},\"application/vnd.1000minds.decision-model+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"1km\"]},\"application/vnd.3gpp-prose+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp-prose-pc3ch+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp-v2x-local-service-information\":{\"source\":\"iana\"},\"application/vnd.3gpp.access-transfer-events+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.bsf+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.gmop+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.interworking-data\":{\"source\":\"iana\"},\"application/vnd.3gpp.mc-signalling-ear\":{\"source\":\"iana\"},\"application/vnd.3gpp.mcdata-affiliation-command+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcdata-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcdata-payload\":{\"source\":\"iana\"},\"application/vnd.3gpp.mcdata-service-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcdata-signalling\":{\"source\":\"iana\"},\"application/vnd.3gpp.mcdata-ue-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcdata-user-profile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-affiliation-command+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-floor-request+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-location-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-mbms-usage-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-service-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-signed+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-ue-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-ue-init-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcptt-user-profile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-affiliation-command+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-affiliation-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-location-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-mbms-usage-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-service-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-transmission-request+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-ue-config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mcvideo-user-profile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.mid-call+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.pic-bw-large\":{\"source\":\"iana\",\"extensions\":[\"plb\"]},\"application/vnd.3gpp.pic-bw-small\":{\"source\":\"iana\",\"extensions\":[\"psb\"]},\"application/vnd.3gpp.pic-bw-var\":{\"source\":\"iana\",\"extensions\":[\"pvb\"]},\"application/vnd.3gpp.sms\":{\"source\":\"iana\"},\"application/vnd.3gpp.sms+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.srvcc-ext+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.srvcc-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.state-and-event-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp.ussd+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp2.bcmcsinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.3gpp2.sms\":{\"source\":\"iana\"},\"application/vnd.3gpp2.tcap\":{\"source\":\"iana\",\"extensions\":[\"tcap\"]},\"application/vnd.3lightssoftware.imagescal\":{\"source\":\"iana\"},\"application/vnd.3m.post-it-notes\":{\"source\":\"iana\",\"extensions\":[\"pwn\"]},\"application/vnd.accpac.simply.aso\":{\"source\":\"iana\",\"extensions\":[\"aso\"]},\"application/vnd.accpac.simply.imp\":{\"source\":\"iana\",\"extensions\":[\"imp\"]},\"application/vnd.acucobol\":{\"source\":\"iana\",\"extensions\":[\"acu\"]},\"application/vnd.acucorp\":{\"source\":\"iana\",\"extensions\":[\"atc\",\"acutc\"]},\"application/vnd.adobe.air-application-installer-package+zip\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"air\"]},\"application/vnd.adobe.flash.movie\":{\"source\":\"iana\"},\"application/vnd.adobe.formscentral.fcdt\":{\"source\":\"iana\",\"extensions\":[\"fcdt\"]},\"application/vnd.adobe.fxp\":{\"source\":\"iana\",\"extensions\":[\"fxp\",\"fxpl\"]},\"application/vnd.adobe.partial-upload\":{\"source\":\"iana\"},\"application/vnd.adobe.xdp+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xdp\"]},\"application/vnd.adobe.xfdf\":{\"source\":\"iana\",\"extensions\":[\"xfdf\"]},\"application/vnd.aether.imp\":{\"source\":\"iana\"},\"application/vnd.afpc.afplinedata\":{\"source\":\"iana\"},\"application/vnd.afpc.afplinedata-pagedef\":{\"source\":\"iana\"},\"application/vnd.afpc.cmoca-cmresource\":{\"source\":\"iana\"},\"application/vnd.afpc.foca-charset\":{\"source\":\"iana\"},\"application/vnd.afpc.foca-codedfont\":{\"source\":\"iana\"},\"application/vnd.afpc.foca-codepage\":{\"source\":\"iana\"},\"application/vnd.afpc.modca\":{\"source\":\"iana\"},\"application/vnd.afpc.modca-cmtable\":{\"source\":\"iana\"},\"application/vnd.afpc.modca-formdef\":{\"source\":\"iana\"},\"application/vnd.afpc.modca-mediummap\":{\"source\":\"iana\"},\"application/vnd.afpc.modca-objectcontainer\":{\"source\":\"iana\"},\"application/vnd.afpc.modca-overlay\":{\"source\":\"iana\"},\"application/vnd.afpc.modca-pagesegment\":{\"source\":\"iana\"},\"application/vnd.ah-barcode\":{\"source\":\"iana\"},\"application/vnd.ahead.space\":{\"source\":\"iana\",\"extensions\":[\"ahead\"]},\"application/vnd.airzip.filesecure.azf\":{\"source\":\"iana\",\"extensions\":[\"azf\"]},\"application/vnd.airzip.filesecure.azs\":{\"source\":\"iana\",\"extensions\":[\"azs\"]},\"application/vnd.amadeus+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.amazon.ebook\":{\"source\":\"apache\",\"extensions\":[\"azw\"]},\"application/vnd.amazon.mobi8-ebook\":{\"source\":\"iana\"},\"application/vnd.americandynamics.acc\":{\"source\":\"iana\",\"extensions\":[\"acc\"]},\"application/vnd.amiga.ami\":{\"source\":\"iana\",\"extensions\":[\"ami\"]},\"application/vnd.amundsen.maze+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.android.ota\":{\"source\":\"iana\"},\"application/vnd.android.package-archive\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"apk\"]},\"application/vnd.anki\":{\"source\":\"iana\"},\"application/vnd.anser-web-certificate-issue-initiation\":{\"source\":\"iana\",\"extensions\":[\"cii\"]},\"application/vnd.anser-web-funds-transfer-initiation\":{\"source\":\"apache\",\"extensions\":[\"fti\"]},\"application/vnd.antix.game-component\":{\"source\":\"iana\",\"extensions\":[\"atx\"]},\"application/vnd.apache.thrift.binary\":{\"source\":\"iana\"},\"application/vnd.apache.thrift.compact\":{\"source\":\"iana\"},\"application/vnd.apache.thrift.json\":{\"source\":\"iana\"},\"application/vnd.api+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.aplextor.warrp+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.apothekende.reservation+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.apple.installer+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mpkg\"]},\"application/vnd.apple.keynote\":{\"source\":\"iana\",\"extensions\":[\"key\"]},\"application/vnd.apple.mpegurl\":{\"source\":\"iana\",\"extensions\":[\"m3u8\"]},\"application/vnd.apple.numbers\":{\"source\":\"iana\",\"extensions\":[\"numbers\"]},\"application/vnd.apple.pages\":{\"source\":\"iana\",\"extensions\":[\"pages\"]},\"application/vnd.apple.pkpass\":{\"compressible\":false,\"extensions\":[\"pkpass\"]},\"application/vnd.arastra.swi\":{\"source\":\"iana\"},\"application/vnd.aristanetworks.swi\":{\"source\":\"iana\",\"extensions\":[\"swi\"]},\"application/vnd.artisan+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.artsquare\":{\"source\":\"iana\"},\"application/vnd.astraea-software.iota\":{\"source\":\"iana\",\"extensions\":[\"iota\"]},\"application/vnd.audiograph\":{\"source\":\"iana\",\"extensions\":[\"aep\"]},\"application/vnd.autopackage\":{\"source\":\"iana\"},\"application/vnd.avalon+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.avistar+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.balsamiq.bmml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"bmml\"]},\"application/vnd.balsamiq.bmpr\":{\"source\":\"iana\"},\"application/vnd.banana-accounting\":{\"source\":\"iana\"},\"application/vnd.bbf.usp.error\":{\"source\":\"iana\"},\"application/vnd.bbf.usp.msg\":{\"source\":\"iana\"},\"application/vnd.bbf.usp.msg+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.bekitzur-stech+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.bint.med-content\":{\"source\":\"iana\"},\"application/vnd.biopax.rdf+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.blink-idb-value-wrapper\":{\"source\":\"iana\"},\"application/vnd.blueice.multipass\":{\"source\":\"iana\",\"extensions\":[\"mpm\"]},\"application/vnd.bluetooth.ep.oob\":{\"source\":\"iana\"},\"application/vnd.bluetooth.le.oob\":{\"source\":\"iana\"},\"application/vnd.bmi\":{\"source\":\"iana\",\"extensions\":[\"bmi\"]},\"application/vnd.bpf\":{\"source\":\"iana\"},\"application/vnd.bpf3\":{\"source\":\"iana\"},\"application/vnd.businessobjects\":{\"source\":\"iana\",\"extensions\":[\"rep\"]},\"application/vnd.byu.uapi+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.cab-jscript\":{\"source\":\"iana\"},\"application/vnd.canon-cpdl\":{\"source\":\"iana\"},\"application/vnd.canon-lips\":{\"source\":\"iana\"},\"application/vnd.capasystems-pg+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.cendio.thinlinc.clientconf\":{\"source\":\"iana\"},\"application/vnd.century-systems.tcp_stream\":{\"source\":\"iana\"},\"application/vnd.chemdraw+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"cdxml\"]},\"application/vnd.chess-pgn\":{\"source\":\"iana\"},\"application/vnd.chipnuts.karaoke-mmd\":{\"source\":\"iana\",\"extensions\":[\"mmd\"]},\"application/vnd.ciedi\":{\"source\":\"iana\"},\"application/vnd.cinderella\":{\"source\":\"iana\",\"extensions\":[\"cdy\"]},\"application/vnd.cirpack.isdn-ext\":{\"source\":\"iana\"},\"application/vnd.citationstyles.style+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"csl\"]},\"application/vnd.claymore\":{\"source\":\"iana\",\"extensions\":[\"cla\"]},\"application/vnd.cloanto.rp9\":{\"source\":\"iana\",\"extensions\":[\"rp9\"]},\"application/vnd.clonk.c4group\":{\"source\":\"iana\",\"extensions\":[\"c4g\",\"c4d\",\"c4f\",\"c4p\",\"c4u\"]},\"application/vnd.cluetrust.cartomobile-config\":{\"source\":\"iana\",\"extensions\":[\"c11amc\"]},\"application/vnd.cluetrust.cartomobile-config-pkg\":{\"source\":\"iana\",\"extensions\":[\"c11amz\"]},\"application/vnd.coffeescript\":{\"source\":\"iana\"},\"application/vnd.collabio.xodocuments.document\":{\"source\":\"iana\"},\"application/vnd.collabio.xodocuments.document-template\":{\"source\":\"iana\"},\"application/vnd.collabio.xodocuments.presentation\":{\"source\":\"iana\"},\"application/vnd.collabio.xodocuments.presentation-template\":{\"source\":\"iana\"},\"application/vnd.collabio.xodocuments.spreadsheet\":{\"source\":\"iana\"},\"application/vnd.collabio.xodocuments.spreadsheet-template\":{\"source\":\"iana\"},\"application/vnd.collection+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.collection.doc+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.collection.next+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.comicbook+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.comicbook-rar\":{\"source\":\"iana\"},\"application/vnd.commerce-battelle\":{\"source\":\"iana\"},\"application/vnd.commonspace\":{\"source\":\"iana\",\"extensions\":[\"csp\"]},\"application/vnd.contact.cmsg\":{\"source\":\"iana\",\"extensions\":[\"cdbcmsg\"]},\"application/vnd.coreos.ignition+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.cosmocaller\":{\"source\":\"iana\",\"extensions\":[\"cmc\"]},\"application/vnd.crick.clicker\":{\"source\":\"iana\",\"extensions\":[\"clkx\"]},\"application/vnd.crick.clicker.keyboard\":{\"source\":\"iana\",\"extensions\":[\"clkk\"]},\"application/vnd.crick.clicker.palette\":{\"source\":\"iana\",\"extensions\":[\"clkp\"]},\"application/vnd.crick.clicker.template\":{\"source\":\"iana\",\"extensions\":[\"clkt\"]},\"application/vnd.crick.clicker.wordbank\":{\"source\":\"iana\",\"extensions\":[\"clkw\"]},\"application/vnd.criticaltools.wbs+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"wbs\"]},\"application/vnd.cryptii.pipe+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.crypto-shade-file\":{\"source\":\"iana\"},\"application/vnd.cryptomator.encrypted\":{\"source\":\"iana\"},\"application/vnd.ctc-posml\":{\"source\":\"iana\",\"extensions\":[\"pml\"]},\"application/vnd.ctct.ws+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.cups-pdf\":{\"source\":\"iana\"},\"application/vnd.cups-postscript\":{\"source\":\"iana\"},\"application/vnd.cups-ppd\":{\"source\":\"iana\",\"extensions\":[\"ppd\"]},\"application/vnd.cups-raster\":{\"source\":\"iana\"},\"application/vnd.cups-raw\":{\"source\":\"iana\"},\"application/vnd.curl\":{\"source\":\"iana\"},\"application/vnd.curl.car\":{\"source\":\"apache\",\"extensions\":[\"car\"]},\"application/vnd.curl.pcurl\":{\"source\":\"apache\",\"extensions\":[\"pcurl\"]},\"application/vnd.cyan.dean.root+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.cybank\":{\"source\":\"iana\"},\"application/vnd.cyclonedx+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.cyclonedx+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.d2l.coursepackage1p0+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.d3m-dataset\":{\"source\":\"iana\"},\"application/vnd.d3m-problem\":{\"source\":\"iana\"},\"application/vnd.dart\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"dart\"]},\"application/vnd.data-vision.rdz\":{\"source\":\"iana\",\"extensions\":[\"rdz\"]},\"application/vnd.datapackage+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dataresource+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dbf\":{\"source\":\"iana\",\"extensions\":[\"dbf\"]},\"application/vnd.debian.binary-package\":{\"source\":\"iana\"},\"application/vnd.dece.data\":{\"source\":\"iana\",\"extensions\":[\"uvf\",\"uvvf\",\"uvd\",\"uvvd\"]},\"application/vnd.dece.ttml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"uvt\",\"uvvt\"]},\"application/vnd.dece.unspecified\":{\"source\":\"iana\",\"extensions\":[\"uvx\",\"uvvx\"]},\"application/vnd.dece.zip\":{\"source\":\"iana\",\"extensions\":[\"uvz\",\"uvvz\"]},\"application/vnd.denovo.fcselayout-link\":{\"source\":\"iana\",\"extensions\":[\"fe_launch\"]},\"application/vnd.desmume.movie\":{\"source\":\"iana\"},\"application/vnd.dir-bi.plate-dl-nosuffix\":{\"source\":\"iana\"},\"application/vnd.dm.delegation+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dna\":{\"source\":\"iana\",\"extensions\":[\"dna\"]},\"application/vnd.document+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dolby.mlp\":{\"source\":\"apache\",\"extensions\":[\"mlp\"]},\"application/vnd.dolby.mobile.1\":{\"source\":\"iana\"},\"application/vnd.dolby.mobile.2\":{\"source\":\"iana\"},\"application/vnd.doremir.scorecloud-binary-document\":{\"source\":\"iana\"},\"application/vnd.dpgraph\":{\"source\":\"iana\",\"extensions\":[\"dpg\"]},\"application/vnd.dreamfactory\":{\"source\":\"iana\",\"extensions\":[\"dfac\"]},\"application/vnd.drive+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ds-keypoint\":{\"source\":\"apache\",\"extensions\":[\"kpxx\"]},\"application/vnd.dtg.local\":{\"source\":\"iana\"},\"application/vnd.dtg.local.flash\":{\"source\":\"iana\"},\"application/vnd.dtg.local.html\":{\"source\":\"iana\"},\"application/vnd.dvb.ait\":{\"source\":\"iana\",\"extensions\":[\"ait\"]},\"application/vnd.dvb.dvbisl+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.dvbj\":{\"source\":\"iana\"},\"application/vnd.dvb.esgcontainer\":{\"source\":\"iana\"},\"application/vnd.dvb.ipdcdftnotifaccess\":{\"source\":\"iana\"},\"application/vnd.dvb.ipdcesgaccess\":{\"source\":\"iana\"},\"application/vnd.dvb.ipdcesgaccess2\":{\"source\":\"iana\"},\"application/vnd.dvb.ipdcesgpdd\":{\"source\":\"iana\"},\"application/vnd.dvb.ipdcroaming\":{\"source\":\"iana\"},\"application/vnd.dvb.iptv.alfec-base\":{\"source\":\"iana\"},\"application/vnd.dvb.iptv.alfec-enhancement\":{\"source\":\"iana\"},\"application/vnd.dvb.notif-aggregate-root+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.notif-container+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.notif-generic+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.notif-ia-msglist+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.notif-ia-registration-request+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.notif-ia-registration-response+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.notif-init+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.dvb.pfr\":{\"source\":\"iana\"},\"application/vnd.dvb.service\":{\"source\":\"iana\",\"extensions\":[\"svc\"]},\"application/vnd.dxr\":{\"source\":\"iana\"},\"application/vnd.dynageo\":{\"source\":\"iana\",\"extensions\":[\"geo\"]},\"application/vnd.dzr\":{\"source\":\"iana\"},\"application/vnd.easykaraoke.cdgdownload\":{\"source\":\"iana\"},\"application/vnd.ecdis-update\":{\"source\":\"iana\"},\"application/vnd.ecip.rlp\":{\"source\":\"iana\"},\"application/vnd.ecowin.chart\":{\"source\":\"iana\",\"extensions\":[\"mag\"]},\"application/vnd.ecowin.filerequest\":{\"source\":\"iana\"},\"application/vnd.ecowin.fileupdate\":{\"source\":\"iana\"},\"application/vnd.ecowin.series\":{\"source\":\"iana\"},\"application/vnd.ecowin.seriesrequest\":{\"source\":\"iana\"},\"application/vnd.ecowin.seriesupdate\":{\"source\":\"iana\"},\"application/vnd.efi.img\":{\"source\":\"iana\"},\"application/vnd.efi.iso\":{\"source\":\"iana\"},\"application/vnd.emclient.accessrequest+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.enliven\":{\"source\":\"iana\",\"extensions\":[\"nml\"]},\"application/vnd.enphase.envoy\":{\"source\":\"iana\"},\"application/vnd.eprints.data+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.epson.esf\":{\"source\":\"iana\",\"extensions\":[\"esf\"]},\"application/vnd.epson.msf\":{\"source\":\"iana\",\"extensions\":[\"msf\"]},\"application/vnd.epson.quickanime\":{\"source\":\"iana\",\"extensions\":[\"qam\"]},\"application/vnd.epson.salt\":{\"source\":\"iana\",\"extensions\":[\"slt\"]},\"application/vnd.epson.ssf\":{\"source\":\"iana\",\"extensions\":[\"ssf\"]},\"application/vnd.ericsson.quickcall\":{\"source\":\"iana\"},\"application/vnd.espass-espass+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.eszigno3+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"es3\",\"et3\"]},\"application/vnd.etsi.aoc+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.asic-e+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.etsi.asic-s+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.etsi.cug+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvcommand+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvdiscovery+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvprofile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvsad-bc+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvsad-cod+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvsad-npvr+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvservice+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvsync+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.iptvueprofile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.mcid+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.mheg5\":{\"source\":\"iana\"},\"application/vnd.etsi.overload-control-policy-dataset+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.pstn+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.sci+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.simservs+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.timestamp-token\":{\"source\":\"iana\"},\"application/vnd.etsi.tsl+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.etsi.tsl.der\":{\"source\":\"iana\"},\"application/vnd.eudora.data\":{\"source\":\"iana\"},\"application/vnd.evolv.ecig.profile\":{\"source\":\"iana\"},\"application/vnd.evolv.ecig.settings\":{\"source\":\"iana\"},\"application/vnd.evolv.ecig.theme\":{\"source\":\"iana\"},\"application/vnd.exstream-empower+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.exstream-package\":{\"source\":\"iana\"},\"application/vnd.ezpix-album\":{\"source\":\"iana\",\"extensions\":[\"ez2\"]},\"application/vnd.ezpix-package\":{\"source\":\"iana\",\"extensions\":[\"ez3\"]},\"application/vnd.f-secure.mobile\":{\"source\":\"iana\"},\"application/vnd.fastcopy-disk-image\":{\"source\":\"iana\"},\"application/vnd.fdf\":{\"source\":\"iana\",\"extensions\":[\"fdf\"]},\"application/vnd.fdsn.mseed\":{\"source\":\"iana\",\"extensions\":[\"mseed\"]},\"application/vnd.fdsn.seed\":{\"source\":\"iana\",\"extensions\":[\"seed\",\"dataless\"]},\"application/vnd.ffsns\":{\"source\":\"iana\"},\"application/vnd.ficlab.flb+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.filmit.zfc\":{\"source\":\"iana\"},\"application/vnd.fints\":{\"source\":\"iana\"},\"application/vnd.firemonkeys.cloudcell\":{\"source\":\"iana\"},\"application/vnd.flographit\":{\"source\":\"iana\",\"extensions\":[\"gph\"]},\"application/vnd.fluxtime.clip\":{\"source\":\"iana\",\"extensions\":[\"ftc\"]},\"application/vnd.font-fontforge-sfd\":{\"source\":\"iana\"},\"application/vnd.framemaker\":{\"source\":\"iana\",\"extensions\":[\"fm\",\"frame\",\"maker\",\"book\"]},\"application/vnd.frogans.fnc\":{\"source\":\"iana\",\"extensions\":[\"fnc\"]},\"application/vnd.frogans.ltf\":{\"source\":\"iana\",\"extensions\":[\"ltf\"]},\"application/vnd.fsc.weblaunch\":{\"source\":\"iana\",\"extensions\":[\"fsc\"]},\"application/vnd.fujitsu.oasys\":{\"source\":\"iana\",\"extensions\":[\"oas\"]},\"application/vnd.fujitsu.oasys2\":{\"source\":\"iana\",\"extensions\":[\"oa2\"]},\"application/vnd.fujitsu.oasys3\":{\"source\":\"iana\",\"extensions\":[\"oa3\"]},\"application/vnd.fujitsu.oasysgp\":{\"source\":\"iana\",\"extensions\":[\"fg5\"]},\"application/vnd.fujitsu.oasysprs\":{\"source\":\"iana\",\"extensions\":[\"bh2\"]},\"application/vnd.fujixerox.art-ex\":{\"source\":\"iana\"},\"application/vnd.fujixerox.art4\":{\"source\":\"iana\"},\"application/vnd.fujixerox.ddd\":{\"source\":\"iana\",\"extensions\":[\"ddd\"]},\"application/vnd.fujixerox.docuworks\":{\"source\":\"iana\",\"extensions\":[\"xdw\"]},\"application/vnd.fujixerox.docuworks.binder\":{\"source\":\"iana\",\"extensions\":[\"xbd\"]},\"application/vnd.fujixerox.docuworks.container\":{\"source\":\"iana\"},\"application/vnd.fujixerox.hbpl\":{\"source\":\"iana\"},\"application/vnd.fut-misnet\":{\"source\":\"iana\"},\"application/vnd.futoin+cbor\":{\"source\":\"iana\"},\"application/vnd.futoin+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.fuzzysheet\":{\"source\":\"iana\",\"extensions\":[\"fzs\"]},\"application/vnd.genomatix.tuxedo\":{\"source\":\"iana\",\"extensions\":[\"txd\"]},\"application/vnd.gentics.grd+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.geo+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.geocube+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.geogebra.file\":{\"source\":\"iana\",\"extensions\":[\"ggb\"]},\"application/vnd.geogebra.slides\":{\"source\":\"iana\"},\"application/vnd.geogebra.tool\":{\"source\":\"iana\",\"extensions\":[\"ggt\"]},\"application/vnd.geometry-explorer\":{\"source\":\"iana\",\"extensions\":[\"gex\",\"gre\"]},\"application/vnd.geonext\":{\"source\":\"iana\",\"extensions\":[\"gxt\"]},\"application/vnd.geoplan\":{\"source\":\"iana\",\"extensions\":[\"g2w\"]},\"application/vnd.geospace\":{\"source\":\"iana\",\"extensions\":[\"g3w\"]},\"application/vnd.gerber\":{\"source\":\"iana\"},\"application/vnd.globalplatform.card-content-mgt\":{\"source\":\"iana\"},\"application/vnd.globalplatform.card-content-mgt-response\":{\"source\":\"iana\"},\"application/vnd.gmx\":{\"source\":\"iana\",\"extensions\":[\"gmx\"]},\"application/vnd.google-apps.document\":{\"compressible\":false,\"extensions\":[\"gdoc\"]},\"application/vnd.google-apps.presentation\":{\"compressible\":false,\"extensions\":[\"gslides\"]},\"application/vnd.google-apps.spreadsheet\":{\"compressible\":false,\"extensions\":[\"gsheet\"]},\"application/vnd.google-earth.kml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"kml\"]},\"application/vnd.google-earth.kmz\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"kmz\"]},\"application/vnd.gov.sk.e-form+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.gov.sk.e-form+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.gov.sk.xmldatacontainer+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.grafeq\":{\"source\":\"iana\",\"extensions\":[\"gqf\",\"gqs\"]},\"application/vnd.gridmp\":{\"source\":\"iana\"},\"application/vnd.groove-account\":{\"source\":\"iana\",\"extensions\":[\"gac\"]},\"application/vnd.groove-help\":{\"source\":\"iana\",\"extensions\":[\"ghf\"]},\"application/vnd.groove-identity-message\":{\"source\":\"iana\",\"extensions\":[\"gim\"]},\"application/vnd.groove-injector\":{\"source\":\"iana\",\"extensions\":[\"grv\"]},\"application/vnd.groove-tool-message\":{\"source\":\"iana\",\"extensions\":[\"gtm\"]},\"application/vnd.groove-tool-template\":{\"source\":\"iana\",\"extensions\":[\"tpl\"]},\"application/vnd.groove-vcard\":{\"source\":\"iana\",\"extensions\":[\"vcg\"]},\"application/vnd.hal+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.hal+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"hal\"]},\"application/vnd.handheld-entertainment+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"zmm\"]},\"application/vnd.hbci\":{\"source\":\"iana\",\"extensions\":[\"hbci\"]},\"application/vnd.hc+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.hcl-bireports\":{\"source\":\"iana\"},\"application/vnd.hdt\":{\"source\":\"iana\"},\"application/vnd.heroku+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.hhe.lesson-player\":{\"source\":\"iana\",\"extensions\":[\"les\"]},\"application/vnd.hp-hpgl\":{\"source\":\"iana\",\"extensions\":[\"hpgl\"]},\"application/vnd.hp-hpid\":{\"source\":\"iana\",\"extensions\":[\"hpid\"]},\"application/vnd.hp-hps\":{\"source\":\"iana\",\"extensions\":[\"hps\"]},\"application/vnd.hp-jlyt\":{\"source\":\"iana\",\"extensions\":[\"jlt\"]},\"application/vnd.hp-pcl\":{\"source\":\"iana\",\"extensions\":[\"pcl\"]},\"application/vnd.hp-pclxl\":{\"source\":\"iana\",\"extensions\":[\"pclxl\"]},\"application/vnd.httphone\":{\"source\":\"iana\"},\"application/vnd.hydrostatix.sof-data\":{\"source\":\"iana\",\"extensions\":[\"sfd-hdstx\"]},\"application/vnd.hyper+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.hyper-item+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.hyperdrive+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.hzn-3d-crossword\":{\"source\":\"iana\"},\"application/vnd.ibm.afplinedata\":{\"source\":\"iana\"},\"application/vnd.ibm.electronic-media\":{\"source\":\"iana\"},\"application/vnd.ibm.minipay\":{\"source\":\"iana\",\"extensions\":[\"mpy\"]},\"application/vnd.ibm.modcap\":{\"source\":\"iana\",\"extensions\":[\"afp\",\"listafp\",\"list3820\"]},\"application/vnd.ibm.rights-management\":{\"source\":\"iana\",\"extensions\":[\"irm\"]},\"application/vnd.ibm.secure-container\":{\"source\":\"iana\",\"extensions\":[\"sc\"]},\"application/vnd.iccprofile\":{\"source\":\"iana\",\"extensions\":[\"icc\",\"icm\"]},\"application/vnd.ieee.1905\":{\"source\":\"iana\"},\"application/vnd.igloader\":{\"source\":\"iana\",\"extensions\":[\"igl\"]},\"application/vnd.imagemeter.folder+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.imagemeter.image+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.immervision-ivp\":{\"source\":\"iana\",\"extensions\":[\"ivp\"]},\"application/vnd.immervision-ivu\":{\"source\":\"iana\",\"extensions\":[\"ivu\"]},\"application/vnd.ims.imsccv1p1\":{\"source\":\"iana\"},\"application/vnd.ims.imsccv1p2\":{\"source\":\"iana\"},\"application/vnd.ims.imsccv1p3\":{\"source\":\"iana\"},\"application/vnd.ims.lis.v2.result+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ims.lti.v2.toolconsumerprofile+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ims.lti.v2.toolproxy+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ims.lti.v2.toolproxy.id+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ims.lti.v2.toolsettings+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ims.lti.v2.toolsettings.simple+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.informedcontrol.rms+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.informix-visionary\":{\"source\":\"iana\"},\"application/vnd.infotech.project\":{\"source\":\"iana\"},\"application/vnd.infotech.project+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.innopath.wamp.notification\":{\"source\":\"iana\"},\"application/vnd.insors.igm\":{\"source\":\"iana\",\"extensions\":[\"igm\"]},\"application/vnd.intercon.formnet\":{\"source\":\"iana\",\"extensions\":[\"xpw\",\"xpx\"]},\"application/vnd.intergeo\":{\"source\":\"iana\",\"extensions\":[\"i2g\"]},\"application/vnd.intertrust.digibox\":{\"source\":\"iana\"},\"application/vnd.intertrust.nncp\":{\"source\":\"iana\"},\"application/vnd.intu.qbo\":{\"source\":\"iana\",\"extensions\":[\"qbo\"]},\"application/vnd.intu.qfx\":{\"source\":\"iana\",\"extensions\":[\"qfx\"]},\"application/vnd.iptc.g2.catalogitem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.iptc.g2.conceptitem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.iptc.g2.knowledgeitem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.iptc.g2.newsitem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.iptc.g2.newsmessage+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.iptc.g2.packageitem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.iptc.g2.planningitem+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ipunplugged.rcprofile\":{\"source\":\"iana\",\"extensions\":[\"rcprofile\"]},\"application/vnd.irepository.package+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"irp\"]},\"application/vnd.is-xpr\":{\"source\":\"iana\",\"extensions\":[\"xpr\"]},\"application/vnd.isac.fcs\":{\"source\":\"iana\",\"extensions\":[\"fcs\"]},\"application/vnd.iso11783-10+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.jam\":{\"source\":\"iana\",\"extensions\":[\"jam\"]},\"application/vnd.japannet-directory-service\":{\"source\":\"iana\"},\"application/vnd.japannet-jpnstore-wakeup\":{\"source\":\"iana\"},\"application/vnd.japannet-payment-wakeup\":{\"source\":\"iana\"},\"application/vnd.japannet-registration\":{\"source\":\"iana\"},\"application/vnd.japannet-registration-wakeup\":{\"source\":\"iana\"},\"application/vnd.japannet-setstore-wakeup\":{\"source\":\"iana\"},\"application/vnd.japannet-verification\":{\"source\":\"iana\"},\"application/vnd.japannet-verification-wakeup\":{\"source\":\"iana\"},\"application/vnd.jcp.javame.midlet-rms\":{\"source\":\"iana\",\"extensions\":[\"rms\"]},\"application/vnd.jisp\":{\"source\":\"iana\",\"extensions\":[\"jisp\"]},\"application/vnd.joost.joda-archive\":{\"source\":\"iana\",\"extensions\":[\"joda\"]},\"application/vnd.jsk.isdn-ngn\":{\"source\":\"iana\"},\"application/vnd.kahootz\":{\"source\":\"iana\",\"extensions\":[\"ktz\",\"ktr\"]},\"application/vnd.kde.karbon\":{\"source\":\"iana\",\"extensions\":[\"karbon\"]},\"application/vnd.kde.kchart\":{\"source\":\"iana\",\"extensions\":[\"chrt\"]},\"application/vnd.kde.kformula\":{\"source\":\"iana\",\"extensions\":[\"kfo\"]},\"application/vnd.kde.kivio\":{\"source\":\"iana\",\"extensions\":[\"flw\"]},\"application/vnd.kde.kontour\":{\"source\":\"iana\",\"extensions\":[\"kon\"]},\"application/vnd.kde.kpresenter\":{\"source\":\"iana\",\"extensions\":[\"kpr\",\"kpt\"]},\"application/vnd.kde.kspread\":{\"source\":\"iana\",\"extensions\":[\"ksp\"]},\"application/vnd.kde.kword\":{\"source\":\"iana\",\"extensions\":[\"kwd\",\"kwt\"]},\"application/vnd.kenameaapp\":{\"source\":\"iana\",\"extensions\":[\"htke\"]},\"application/vnd.kidspiration\":{\"source\":\"iana\",\"extensions\":[\"kia\"]},\"application/vnd.kinar\":{\"source\":\"iana\",\"extensions\":[\"kne\",\"knp\"]},\"application/vnd.koan\":{\"source\":\"iana\",\"extensions\":[\"skp\",\"skd\",\"skt\",\"skm\"]},\"application/vnd.kodak-descriptor\":{\"source\":\"iana\",\"extensions\":[\"sse\"]},\"application/vnd.las\":{\"source\":\"iana\"},\"application/vnd.las.las+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.las.las+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"lasxml\"]},\"application/vnd.laszip\":{\"source\":\"iana\"},\"application/vnd.leap+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.liberty-request+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.llamagraphics.life-balance.desktop\":{\"source\":\"iana\",\"extensions\":[\"lbd\"]},\"application/vnd.llamagraphics.life-balance.exchange+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"lbe\"]},\"application/vnd.logipipe.circuit+zip\":{\"source\":\"iana\",\"compressible\":false},\"application/vnd.loom\":{\"source\":\"iana\"},\"application/vnd.lotus-1-2-3\":{\"source\":\"iana\",\"extensions\":[\"123\"]},\"application/vnd.lotus-approach\":{\"source\":\"iana\",\"extensions\":[\"apr\"]},\"application/vnd.lotus-freelance\":{\"source\":\"iana\",\"extensions\":[\"pre\"]},\"application/vnd.lotus-notes\":{\"source\":\"iana\",\"extensions\":[\"nsf\"]},\"application/vnd.lotus-organizer\":{\"source\":\"iana\",\"extensions\":[\"org\"]},\"application/vnd.lotus-screencam\":{\"source\":\"iana\",\"extensions\":[\"scm\"]},\"application/vnd.lotus-wordpro\":{\"source\":\"iana\",\"extensions\":[\"lwp\"]},\"application/vnd.macports.portpkg\":{\"source\":\"iana\",\"extensions\":[\"portpkg\"]},\"application/vnd.mapbox-vector-tile\":{\"source\":\"iana\"},\"application/vnd.marlin.drm.actiontoken+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.marlin.drm.conftoken+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.marlin.drm.license+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.marlin.drm.mdcf\":{\"source\":\"iana\"},\"application/vnd.mason+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.maxmind.maxmind-db\":{\"source\":\"iana\"},\"application/vnd.mcd\":{\"source\":\"iana\",\"extensions\":[\"mcd\"]},\"application/vnd.medcalcdata\":{\"source\":\"iana\",\"extensions\":[\"mc1\"]},\"application/vnd.mediastation.cdkey\":{\"source\":\"iana\",\"extensions\":[\"cdkey\"]},\"application/vnd.meridian-slingshot\":{\"source\":\"iana\"},\"application/vnd.mfer\":{\"source\":\"iana\",\"extensions\":[\"mwf\"]},\"application/vnd.mfmp\":{\"source\":\"iana\",\"extensions\":[\"mfm\"]},\"application/vnd.micro+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.micrografx.flo\":{\"source\":\"iana\",\"extensions\":[\"flo\"]},\"application/vnd.micrografx.igx\":{\"source\":\"iana\",\"extensions\":[\"igx\"]},\"application/vnd.microsoft.portable-executable\":{\"source\":\"iana\"},\"application/vnd.microsoft.windows.thumbnail-cache\":{\"source\":\"iana\"},\"application/vnd.miele+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.mif\":{\"source\":\"iana\",\"extensions\":[\"mif\"]},\"application/vnd.minisoft-hp3000-save\":{\"source\":\"iana\"},\"application/vnd.mitsubishi.misty-guard.trustweb\":{\"source\":\"iana\"},\"application/vnd.mobius.daf\":{\"source\":\"iana\",\"extensions\":[\"daf\"]},\"application/vnd.mobius.dis\":{\"source\":\"iana\",\"extensions\":[\"dis\"]},\"application/vnd.mobius.mbk\":{\"source\":\"iana\",\"extensions\":[\"mbk\"]},\"application/vnd.mobius.mqy\":{\"source\":\"iana\",\"extensions\":[\"mqy\"]},\"application/vnd.mobius.msl\":{\"source\":\"iana\",\"extensions\":[\"msl\"]},\"application/vnd.mobius.plc\":{\"source\":\"iana\",\"extensions\":[\"plc\"]},\"application/vnd.mobius.txf\":{\"source\":\"iana\",\"extensions\":[\"txf\"]},\"application/vnd.mophun.application\":{\"source\":\"iana\",\"extensions\":[\"mpn\"]},\"application/vnd.mophun.certificate\":{\"source\":\"iana\",\"extensions\":[\"mpc\"]},\"application/vnd.motorola.flexsuite\":{\"source\":\"iana\"},\"application/vnd.motorola.flexsuite.adsi\":{\"source\":\"iana\"},\"application/vnd.motorola.flexsuite.fis\":{\"source\":\"iana\"},\"application/vnd.motorola.flexsuite.gotap\":{\"source\":\"iana\"},\"application/vnd.motorola.flexsuite.kmr\":{\"source\":\"iana\"},\"application/vnd.motorola.flexsuite.ttc\":{\"source\":\"iana\"},\"application/vnd.motorola.flexsuite.wem\":{\"source\":\"iana\"},\"application/vnd.motorola.iprm\":{\"source\":\"iana\"},\"application/vnd.mozilla.xul+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xul\"]},\"application/vnd.ms-3mfdocument\":{\"source\":\"iana\"},\"application/vnd.ms-artgalry\":{\"source\":\"iana\",\"extensions\":[\"cil\"]},\"application/vnd.ms-asf\":{\"source\":\"iana\"},\"application/vnd.ms-cab-compressed\":{\"source\":\"iana\",\"extensions\":[\"cab\"]},\"application/vnd.ms-color.iccprofile\":{\"source\":\"apache\"},\"application/vnd.ms-excel\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"xls\",\"xlm\",\"xla\",\"xlc\",\"xlt\",\"xlw\"]},\"application/vnd.ms-excel.addin.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"xlam\"]},\"application/vnd.ms-excel.sheet.binary.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"xlsb\"]},\"application/vnd.ms-excel.sheet.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"xlsm\"]},\"application/vnd.ms-excel.template.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"xltm\"]},\"application/vnd.ms-fontobject\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"eot\"]},\"application/vnd.ms-htmlhelp\":{\"source\":\"iana\",\"extensions\":[\"chm\"]},\"application/vnd.ms-ims\":{\"source\":\"iana\",\"extensions\":[\"ims\"]},\"application/vnd.ms-lrm\":{\"source\":\"iana\",\"extensions\":[\"lrm\"]},\"application/vnd.ms-office.activex+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ms-officetheme\":{\"source\":\"iana\",\"extensions\":[\"thmx\"]},\"application/vnd.ms-opentype\":{\"source\":\"apache\",\"compressible\":true},\"application/vnd.ms-outlook\":{\"compressible\":false,\"extensions\":[\"msg\"]},\"application/vnd.ms-package.obfuscated-opentype\":{\"source\":\"apache\"},\"application/vnd.ms-pki.seccat\":{\"source\":\"apache\",\"extensions\":[\"cat\"]},\"application/vnd.ms-pki.stl\":{\"source\":\"apache\",\"extensions\":[\"stl\"]},\"application/vnd.ms-playready.initiator+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ms-powerpoint\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"ppt\",\"pps\",\"pot\"]},\"application/vnd.ms-powerpoint.addin.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"ppam\"]},\"application/vnd.ms-powerpoint.presentation.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"pptm\"]},\"application/vnd.ms-powerpoint.slide.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"sldm\"]},\"application/vnd.ms-powerpoint.slideshow.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"ppsm\"]},\"application/vnd.ms-powerpoint.template.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"potm\"]},\"application/vnd.ms-printdevicecapabilities+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ms-printing.printticket+xml\":{\"source\":\"apache\",\"compressible\":true},\"application/vnd.ms-printschematicket+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.ms-project\":{\"source\":\"iana\",\"extensions\":[\"mpp\",\"mpt\"]},\"application/vnd.ms-tnef\":{\"source\":\"iana\"},\"application/vnd.ms-windows.devicepairing\":{\"source\":\"iana\"},\"application/vnd.ms-windows.nwprinting.oob\":{\"source\":\"iana\"},\"application/vnd.ms-windows.printerpairing\":{\"source\":\"iana\"},\"application/vnd.ms-windows.wsd.oob\":{\"source\":\"iana\"},\"application/vnd.ms-wmdrm.lic-chlg-req\":{\"source\":\"iana\"},\"application/vnd.ms-wmdrm.lic-resp\":{\"source\":\"iana\"},\"application/vnd.ms-wmdrm.meter-chlg-req\":{\"source\":\"iana\"},\"application/vnd.ms-wmdrm.meter-resp\":{\"source\":\"iana\"},\"application/vnd.ms-word.document.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"docm\"]},\"application/vnd.ms-word.template.macroenabled.12\":{\"source\":\"iana\",\"extensions\":[\"dotm\"]},\"application/vnd.ms-works\":{\"source\":\"iana\",\"extensions\":[\"wps\",\"wks\",\"wcm\",\"wdb\"]},\"application/vnd.ms-wpl\":{\"source\":\"iana\",\"extensions\":[\"wpl\"]},\"application/vnd.ms-xpsdocument\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"xps\"]},\"application/vnd.msa-disk-image\":{\"source\":\"iana\"},\"application/vnd.mseq\":{\"source\":\"iana\",\"extensions\":[\"mseq\"]},\"application/vnd.msign\":{\"source\":\"iana\"},\"application/vnd.multiad.creator\":{\"source\":\"iana\"},\"application/vnd.multiad.creator.cif\":{\"source\":\"iana\"},\"application/vnd.music-niff\":{\"source\":\"iana\"},\"application/vnd.musician\":{\"source\":\"iana\",\"extensions\":[\"mus\"]},\"application/vnd.muvee.style\":{\"source\":\"iana\",\"extensions\":[\"msty\"]},\"application/vnd.mynfc\":{\"source\":\"iana\",\"extensions\":[\"taglet\"]},\"application/vnd.ncd.control\":{\"source\":\"iana\"},\"application/vnd.ncd.reference\":{\"source\":\"iana\"},\"application/vnd.nearst.inv+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.nebumind.line\":{\"source\":\"iana\"},\"application/vnd.nervana\":{\"source\":\"iana\"},\"application/vnd.netfpx\":{\"source\":\"iana\"},\"application/vnd.neurolanguage.nlu\":{\"source\":\"iana\",\"extensions\":[\"nlu\"]},\"application/vnd.nimn\":{\"source\":\"iana\"},\"application/vnd.nintendo.nitro.rom\":{\"source\":\"iana\"},\"application/vnd.nintendo.snes.rom\":{\"source\":\"iana\"},\"application/vnd.nitf\":{\"source\":\"iana\",\"extensions\":[\"ntf\",\"nitf\"]},\"application/vnd.noblenet-directory\":{\"source\":\"iana\",\"extensions\":[\"nnd\"]},\"application/vnd.noblenet-sealer\":{\"source\":\"iana\",\"extensions\":[\"nns\"]},\"application/vnd.noblenet-web\":{\"source\":\"iana\",\"extensions\":[\"nnw\"]},\"application/vnd.nokia.catalogs\":{\"source\":\"iana\"},\"application/vnd.nokia.conml+wbxml\":{\"source\":\"iana\"},\"application/vnd.nokia.conml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.nokia.iptv.config+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.nokia.isds-radio-presets\":{\"source\":\"iana\"},\"application/vnd.nokia.landmark+wbxml\":{\"source\":\"iana\"},\"application/vnd.nokia.landmark+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.nokia.landmarkcollection+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.nokia.n-gage.ac+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ac\"]},\"application/vnd.nokia.n-gage.data\":{\"source\":\"iana\",\"extensions\":[\"ngdat\"]},\"application/vnd.nokia.n-gage.symbian.install\":{\"source\":\"iana\",\"extensions\":[\"n-gage\"]},\"application/vnd.nokia.ncd\":{\"source\":\"iana\"},\"application/vnd.nokia.pcd+wbxml\":{\"source\":\"iana\"},\"application/vnd.nokia.pcd+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.nokia.radio-preset\":{\"source\":\"iana\",\"extensions\":[\"rpst\"]},\"application/vnd.nokia.radio-presets\":{\"source\":\"iana\",\"extensions\":[\"rpss\"]},\"application/vnd.novadigm.edm\":{\"source\":\"iana\",\"extensions\":[\"edm\"]},\"application/vnd.novadigm.edx\":{\"source\":\"iana\",\"extensions\":[\"edx\"]},\"application/vnd.novadigm.ext\":{\"source\":\"iana\",\"extensions\":[\"ext\"]},\"application/vnd.ntt-local.content-share\":{\"source\":\"iana\"},\"application/vnd.ntt-local.file-transfer\":{\"source\":\"iana\"},\"application/vnd.ntt-local.ogw_remote-access\":{\"source\":\"iana\"},\"application/vnd.ntt-local.sip-ta_remote\":{\"source\":\"iana\"},\"application/vnd.ntt-local.sip-ta_tcp_stream\":{\"source\":\"iana\"},\"application/vnd.oasis.opendocument.chart\":{\"source\":\"iana\",\"extensions\":[\"odc\"]},\"application/vnd.oasis.opendocument.chart-template\":{\"source\":\"iana\",\"extensions\":[\"otc\"]},\"application/vnd.oasis.opendocument.database\":{\"source\":\"iana\",\"extensions\":[\"odb\"]},\"application/vnd.oasis.opendocument.formula\":{\"source\":\"iana\",\"extensions\":[\"odf\"]},\"application/vnd.oasis.opendocument.formula-template\":{\"source\":\"iana\",\"extensions\":[\"odft\"]},\"application/vnd.oasis.opendocument.graphics\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"odg\"]},\"application/vnd.oasis.opendocument.graphics-template\":{\"source\":\"iana\",\"extensions\":[\"otg\"]},\"application/vnd.oasis.opendocument.image\":{\"source\":\"iana\",\"extensions\":[\"odi\"]},\"application/vnd.oasis.opendocument.image-template\":{\"source\":\"iana\",\"extensions\":[\"oti\"]},\"application/vnd.oasis.opendocument.presentation\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"odp\"]},\"application/vnd.oasis.opendocument.presentation-template\":{\"source\":\"iana\",\"extensions\":[\"otp\"]},\"application/vnd.oasis.opendocument.spreadsheet\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"ods\"]},\"application/vnd.oasis.opendocument.spreadsheet-template\":{\"source\":\"iana\",\"extensions\":[\"ots\"]},\"application/vnd.oasis.opendocument.text\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"odt\"]},\"application/vnd.oasis.opendocument.text-master\":{\"source\":\"iana\",\"extensions\":[\"odm\"]},\"application/vnd.oasis.opendocument.text-template\":{\"source\":\"iana\",\"extensions\":[\"ott\"]},\"application/vnd.oasis.opendocument.text-web\":{\"source\":\"iana\",\"extensions\":[\"oth\"]},\"application/vnd.obn\":{\"source\":\"iana\"},\"application/vnd.ocf+cbor\":{\"source\":\"iana\"},\"application/vnd.oci.image.manifest.v1+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oftn.l10n+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.contentaccessdownload+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.contentaccessstreaming+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.cspg-hexbinary\":{\"source\":\"iana\"},\"application/vnd.oipf.dae.svg+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.dae.xhtml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.mippvcontrolmessage+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.pae.gem\":{\"source\":\"iana\"},\"application/vnd.oipf.spdiscovery+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.spdlist+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.ueprofile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oipf.userprofile+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.olpc-sugar\":{\"source\":\"iana\",\"extensions\":[\"xo\"]},\"application/vnd.oma-scws-config\":{\"source\":\"iana\"},\"application/vnd.oma-scws-http-request\":{\"source\":\"iana\"},\"application/vnd.oma-scws-http-response\":{\"source\":\"iana\"},\"application/vnd.oma.bcast.associated-procedure-parameter+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.drm-trigger+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.imd+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.ltkm\":{\"source\":\"iana\"},\"application/vnd.oma.bcast.notification+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.provisioningtrigger\":{\"source\":\"iana\"},\"application/vnd.oma.bcast.sgboot\":{\"source\":\"iana\"},\"application/vnd.oma.bcast.sgdd+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.sgdu\":{\"source\":\"iana\"},\"application/vnd.oma.bcast.simple-symbol-container\":{\"source\":\"iana\"},\"application/vnd.oma.bcast.smartcard-trigger+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.sprov+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.bcast.stkm\":{\"source\":\"iana\"},\"application/vnd.oma.cab-address-book+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.cab-feature-handler+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.cab-pcc+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.cab-subs-invite+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.cab-user-prefs+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.dcd\":{\"source\":\"iana\"},\"application/vnd.oma.dcdc\":{\"source\":\"iana\"},\"application/vnd.oma.dd2+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"dd2\"]},\"application/vnd.oma.drm.risd+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.group-usage-list+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.lwm2m+cbor\":{\"source\":\"iana\"},\"application/vnd.oma.lwm2m+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.lwm2m+tlv\":{\"source\":\"iana\"},\"application/vnd.oma.pal+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.poc.detailed-progress-report+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.poc.final-report+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.poc.groups+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.poc.invocation-descriptor+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.poc.optimized-progress-report+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.push\":{\"source\":\"iana\"},\"application/vnd.oma.scidm.messages+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oma.xcap-directory+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.omads-email+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/vnd.omads-file+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/vnd.omads-folder+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/vnd.omaloc-supl-init\":{\"source\":\"iana\"},\"application/vnd.onepager\":{\"source\":\"iana\"},\"application/vnd.onepagertamp\":{\"source\":\"iana\"},\"application/vnd.onepagertamx\":{\"source\":\"iana\"},\"application/vnd.onepagertat\":{\"source\":\"iana\"},\"application/vnd.onepagertatp\":{\"source\":\"iana\"},\"application/vnd.onepagertatx\":{\"source\":\"iana\"},\"application/vnd.openblox.game+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"obgx\"]},\"application/vnd.openblox.game-binary\":{\"source\":\"iana\"},\"application/vnd.openeye.oeb\":{\"source\":\"iana\"},\"application/vnd.openofficeorg.extension\":{\"source\":\"apache\",\"extensions\":[\"oxt\"]},\"application/vnd.openstreetmap.data+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"osm\"]},\"application/vnd.openxmlformats-officedocument.custom-properties+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.customxmlproperties+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawing+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawingml.chart+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.extended-properties+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.comments+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.presentation\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"pptx\"]},\"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.slide\":{\"source\":\"iana\",\"extensions\":[\"sldx\"]},\"application/vnd.openxmlformats-officedocument.presentationml.slide+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.slideshow\":{\"source\":\"iana\",\"extensions\":[\"ppsx\"]},\"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.tags+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.template\":{\"source\":\"iana\",\"extensions\":[\"potx\"]},\"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"xlsx\"]},\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.template\":{\"source\":\"iana\",\"extensions\":[\"xltx\"]},\"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.theme+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.themeoverride+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.vmldrawing\":{\"source\":\"iana\"},\"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"docx\"]},\"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.template\":{\"source\":\"iana\",\"extensions\":[\"dotx\"]},\"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-package.core-properties+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.openxmlformats-package.relationships+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oracle.resource+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.orange.indata\":{\"source\":\"iana\"},\"application/vnd.osa.netdeploy\":{\"source\":\"iana\"},\"application/vnd.osgeo.mapguide.package\":{\"source\":\"iana\",\"extensions\":[\"mgp\"]},\"application/vnd.osgi.bundle\":{\"source\":\"iana\"},\"application/vnd.osgi.dp\":{\"source\":\"iana\",\"extensions\":[\"dp\"]},\"application/vnd.osgi.subsystem\":{\"source\":\"iana\",\"extensions\":[\"esa\"]},\"application/vnd.otps.ct-kip+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.oxli.countgraph\":{\"source\":\"iana\"},\"application/vnd.pagerduty+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.palm\":{\"source\":\"iana\",\"extensions\":[\"pdb\",\"pqa\",\"oprc\"]},\"application/vnd.panoply\":{\"source\":\"iana\"},\"application/vnd.paos.xml\":{\"source\":\"iana\"},\"application/vnd.patentdive\":{\"source\":\"iana\"},\"application/vnd.patientecommsdoc\":{\"source\":\"iana\"},\"application/vnd.pawaafile\":{\"source\":\"iana\",\"extensions\":[\"paw\"]},\"application/vnd.pcos\":{\"source\":\"iana\"},\"application/vnd.pg.format\":{\"source\":\"iana\",\"extensions\":[\"str\"]},\"application/vnd.pg.osasli\":{\"source\":\"iana\",\"extensions\":[\"ei6\"]},\"application/vnd.piaccess.application-licence\":{\"source\":\"iana\"},\"application/vnd.picsel\":{\"source\":\"iana\",\"extensions\":[\"efif\"]},\"application/vnd.pmi.widget\":{\"source\":\"iana\",\"extensions\":[\"wg\"]},\"application/vnd.poc.group-advertisement+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.pocketlearn\":{\"source\":\"iana\",\"extensions\":[\"plf\"]},\"application/vnd.powerbuilder6\":{\"source\":\"iana\",\"extensions\":[\"pbd\"]},\"application/vnd.powerbuilder6-s\":{\"source\":\"iana\"},\"application/vnd.powerbuilder7\":{\"source\":\"iana\"},\"application/vnd.powerbuilder7-s\":{\"source\":\"iana\"},\"application/vnd.powerbuilder75\":{\"source\":\"iana\"},\"application/vnd.powerbuilder75-s\":{\"source\":\"iana\"},\"application/vnd.preminet\":{\"source\":\"iana\"},\"application/vnd.previewsystems.box\":{\"source\":\"iana\",\"extensions\":[\"box\"]},\"application/vnd.proteus.magazine\":{\"source\":\"iana\",\"extensions\":[\"mgz\"]},\"application/vnd.psfs\":{\"source\":\"iana\"},\"application/vnd.publishare-delta-tree\":{\"source\":\"iana\",\"extensions\":[\"qps\"]},\"application/vnd.pvi.ptid1\":{\"source\":\"iana\",\"extensions\":[\"ptid\"]},\"application/vnd.pwg-multiplexed\":{\"source\":\"iana\"},\"application/vnd.pwg-xhtml-print+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.qualcomm.brew-app-res\":{\"source\":\"iana\"},\"application/vnd.quarantainenet\":{\"source\":\"iana\"},\"application/vnd.quark.quarkxpress\":{\"source\":\"iana\",\"extensions\":[\"qxd\",\"qxt\",\"qwd\",\"qwt\",\"qxl\",\"qxb\"]},\"application/vnd.quobject-quoxdocument\":{\"source\":\"iana\"},\"application/vnd.radisys.moml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-audit+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-audit-conf+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-audit-conn+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-audit-dialog+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-audit-stream+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-conf+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog-base+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog-fax-detect+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog-fax-sendrecv+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog-group+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog-speech+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.radisys.msml-dialog-transform+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.rainstor.data\":{\"source\":\"iana\"},\"application/vnd.rapid\":{\"source\":\"iana\"},\"application/vnd.rar\":{\"source\":\"iana\",\"extensions\":[\"rar\"]},\"application/vnd.realvnc.bed\":{\"source\":\"iana\",\"extensions\":[\"bed\"]},\"application/vnd.recordare.musicxml\":{\"source\":\"iana\",\"extensions\":[\"mxl\"]},\"application/vnd.recordare.musicxml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"musicxml\"]},\"application/vnd.renlearn.rlprint\":{\"source\":\"iana\"},\"application/vnd.restful+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.rig.cryptonote\":{\"source\":\"iana\",\"extensions\":[\"cryptonote\"]},\"application/vnd.rim.cod\":{\"source\":\"apache\",\"extensions\":[\"cod\"]},\"application/vnd.rn-realmedia\":{\"source\":\"apache\",\"extensions\":[\"rm\"]},\"application/vnd.rn-realmedia-vbr\":{\"source\":\"apache\",\"extensions\":[\"rmvb\"]},\"application/vnd.route66.link66+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"link66\"]},\"application/vnd.rs-274x\":{\"source\":\"iana\"},\"application/vnd.ruckus.download\":{\"source\":\"iana\"},\"application/vnd.s3sms\":{\"source\":\"iana\"},\"application/vnd.sailingtracker.track\":{\"source\":\"iana\",\"extensions\":[\"st\"]},\"application/vnd.sar\":{\"source\":\"iana\"},\"application/vnd.sbm.cid\":{\"source\":\"iana\"},\"application/vnd.sbm.mid2\":{\"source\":\"iana\"},\"application/vnd.scribus\":{\"source\":\"iana\"},\"application/vnd.sealed.3df\":{\"source\":\"iana\"},\"application/vnd.sealed.csf\":{\"source\":\"iana\"},\"application/vnd.sealed.doc\":{\"source\":\"iana\"},\"application/vnd.sealed.eml\":{\"source\":\"iana\"},\"application/vnd.sealed.mht\":{\"source\":\"iana\"},\"application/vnd.sealed.net\":{\"source\":\"iana\"},\"application/vnd.sealed.ppt\":{\"source\":\"iana\"},\"application/vnd.sealed.tiff\":{\"source\":\"iana\"},\"application/vnd.sealed.xls\":{\"source\":\"iana\"},\"application/vnd.sealedmedia.softseal.html\":{\"source\":\"iana\"},\"application/vnd.sealedmedia.softseal.pdf\":{\"source\":\"iana\"},\"application/vnd.seemail\":{\"source\":\"iana\",\"extensions\":[\"see\"]},\"application/vnd.seis+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.sema\":{\"source\":\"iana\",\"extensions\":[\"sema\"]},\"application/vnd.semd\":{\"source\":\"iana\",\"extensions\":[\"semd\"]},\"application/vnd.semf\":{\"source\":\"iana\",\"extensions\":[\"semf\"]},\"application/vnd.shade-save-file\":{\"source\":\"iana\"},\"application/vnd.shana.informed.formdata\":{\"source\":\"iana\",\"extensions\":[\"ifm\"]},\"application/vnd.shana.informed.formtemplate\":{\"source\":\"iana\",\"extensions\":[\"itp\"]},\"application/vnd.shana.informed.interchange\":{\"source\":\"iana\",\"extensions\":[\"iif\"]},\"application/vnd.shana.informed.package\":{\"source\":\"iana\",\"extensions\":[\"ipk\"]},\"application/vnd.shootproof+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.shopkick+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.shp\":{\"source\":\"iana\"},\"application/vnd.shx\":{\"source\":\"iana\"},\"application/vnd.sigrok.session\":{\"source\":\"iana\"},\"application/vnd.simtech-mindmapper\":{\"source\":\"iana\",\"extensions\":[\"twd\",\"twds\"]},\"application/vnd.siren+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.smaf\":{\"source\":\"iana\",\"extensions\":[\"mmf\"]},\"application/vnd.smart.notebook\":{\"source\":\"iana\"},\"application/vnd.smart.teacher\":{\"source\":\"iana\",\"extensions\":[\"teacher\"]},\"application/vnd.snesdev-page-table\":{\"source\":\"iana\"},\"application/vnd.software602.filler.form+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"fo\"]},\"application/vnd.software602.filler.form-xml-zip\":{\"source\":\"iana\"},\"application/vnd.solent.sdkm+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"sdkm\",\"sdkd\"]},\"application/vnd.spotfire.dxp\":{\"source\":\"iana\",\"extensions\":[\"dxp\"]},\"application/vnd.spotfire.sfs\":{\"source\":\"iana\",\"extensions\":[\"sfs\"]},\"application/vnd.sqlite3\":{\"source\":\"iana\"},\"application/vnd.sss-cod\":{\"source\":\"iana\"},\"application/vnd.sss-dtf\":{\"source\":\"iana\"},\"application/vnd.sss-ntf\":{\"source\":\"iana\"},\"application/vnd.stardivision.calc\":{\"source\":\"apache\",\"extensions\":[\"sdc\"]},\"application/vnd.stardivision.draw\":{\"source\":\"apache\",\"extensions\":[\"sda\"]},\"application/vnd.stardivision.impress\":{\"source\":\"apache\",\"extensions\":[\"sdd\"]},\"application/vnd.stardivision.math\":{\"source\":\"apache\",\"extensions\":[\"smf\"]},\"application/vnd.stardivision.writer\":{\"source\":\"apache\",\"extensions\":[\"sdw\",\"vor\"]},\"application/vnd.stardivision.writer-global\":{\"source\":\"apache\",\"extensions\":[\"sgl\"]},\"application/vnd.stepmania.package\":{\"source\":\"iana\",\"extensions\":[\"smzip\"]},\"application/vnd.stepmania.stepchart\":{\"source\":\"iana\",\"extensions\":[\"sm\"]},\"application/vnd.street-stream\":{\"source\":\"iana\"},\"application/vnd.sun.wadl+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"wadl\"]},\"application/vnd.sun.xml.calc\":{\"source\":\"apache\",\"extensions\":[\"sxc\"]},\"application/vnd.sun.xml.calc.template\":{\"source\":\"apache\",\"extensions\":[\"stc\"]},\"application/vnd.sun.xml.draw\":{\"source\":\"apache\",\"extensions\":[\"sxd\"]},\"application/vnd.sun.xml.draw.template\":{\"source\":\"apache\",\"extensions\":[\"std\"]},\"application/vnd.sun.xml.impress\":{\"source\":\"apache\",\"extensions\":[\"sxi\"]},\"application/vnd.sun.xml.impress.template\":{\"source\":\"apache\",\"extensions\":[\"sti\"]},\"application/vnd.sun.xml.math\":{\"source\":\"apache\",\"extensions\":[\"sxm\"]},\"application/vnd.sun.xml.writer\":{\"source\":\"apache\",\"extensions\":[\"sxw\"]},\"application/vnd.sun.xml.writer.global\":{\"source\":\"apache\",\"extensions\":[\"sxg\"]},\"application/vnd.sun.xml.writer.template\":{\"source\":\"apache\",\"extensions\":[\"stw\"]},\"application/vnd.sus-calendar\":{\"source\":\"iana\",\"extensions\":[\"sus\",\"susp\"]},\"application/vnd.svd\":{\"source\":\"iana\",\"extensions\":[\"svd\"]},\"application/vnd.swiftview-ics\":{\"source\":\"iana\"},\"application/vnd.sycle+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.symbian.install\":{\"source\":\"apache\",\"extensions\":[\"sis\",\"sisx\"]},\"application/vnd.syncml+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"xsm\"]},\"application/vnd.syncml.dm+wbxml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"extensions\":[\"bdm\"]},\"application/vnd.syncml.dm+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"xdm\"]},\"application/vnd.syncml.dm.notification\":{\"source\":\"iana\"},\"application/vnd.syncml.dmddf+wbxml\":{\"source\":\"iana\"},\"application/vnd.syncml.dmddf+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"ddf\"]},\"application/vnd.syncml.dmtnds+wbxml\":{\"source\":\"iana\"},\"application/vnd.syncml.dmtnds+xml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true},\"application/vnd.syncml.ds.notification\":{\"source\":\"iana\"},\"application/vnd.tableschema+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.tao.intent-module-archive\":{\"source\":\"iana\",\"extensions\":[\"tao\"]},\"application/vnd.tcpdump.pcap\":{\"source\":\"iana\",\"extensions\":[\"pcap\",\"cap\",\"dmp\"]},\"application/vnd.think-cell.ppttc+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.tmd.mediaflex.api+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.tml\":{\"source\":\"iana\"},\"application/vnd.tmobile-livetv\":{\"source\":\"iana\",\"extensions\":[\"tmo\"]},\"application/vnd.tri.onesource\":{\"source\":\"iana\"},\"application/vnd.trid.tpt\":{\"source\":\"iana\",\"extensions\":[\"tpt\"]},\"application/vnd.triscape.mxs\":{\"source\":\"iana\",\"extensions\":[\"mxs\"]},\"application/vnd.trueapp\":{\"source\":\"iana\",\"extensions\":[\"tra\"]},\"application/vnd.truedoc\":{\"source\":\"iana\"},\"application/vnd.ubisoft.webplayer\":{\"source\":\"iana\"},\"application/vnd.ufdl\":{\"source\":\"iana\",\"extensions\":[\"ufd\",\"ufdl\"]},\"application/vnd.uiq.theme\":{\"source\":\"iana\",\"extensions\":[\"utz\"]},\"application/vnd.umajin\":{\"source\":\"iana\",\"extensions\":[\"umj\"]},\"application/vnd.unity\":{\"source\":\"iana\",\"extensions\":[\"unityweb\"]},\"application/vnd.uoml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"uoml\"]},\"application/vnd.uplanet.alert\":{\"source\":\"iana\"},\"application/vnd.uplanet.alert-wbxml\":{\"source\":\"iana\"},\"application/vnd.uplanet.bearer-choice\":{\"source\":\"iana\"},\"application/vnd.uplanet.bearer-choice-wbxml\":{\"source\":\"iana\"},\"application/vnd.uplanet.cacheop\":{\"source\":\"iana\"},\"application/vnd.uplanet.cacheop-wbxml\":{\"source\":\"iana\"},\"application/vnd.uplanet.channel\":{\"source\":\"iana\"},\"application/vnd.uplanet.channel-wbxml\":{\"source\":\"iana\"},\"application/vnd.uplanet.list\":{\"source\":\"iana\"},\"application/vnd.uplanet.list-wbxml\":{\"source\":\"iana\"},\"application/vnd.uplanet.listcmd\":{\"source\":\"iana\"},\"application/vnd.uplanet.listcmd-wbxml\":{\"source\":\"iana\"},\"application/vnd.uplanet.signal\":{\"source\":\"iana\"},\"application/vnd.uri-map\":{\"source\":\"iana\"},\"application/vnd.valve.source.material\":{\"source\":\"iana\"},\"application/vnd.vcx\":{\"source\":\"iana\",\"extensions\":[\"vcx\"]},\"application/vnd.vd-study\":{\"source\":\"iana\"},\"application/vnd.vectorworks\":{\"source\":\"iana\"},\"application/vnd.vel+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.verimatrix.vcas\":{\"source\":\"iana\"},\"application/vnd.veryant.thin\":{\"source\":\"iana\"},\"application/vnd.ves.encrypted\":{\"source\":\"iana\"},\"application/vnd.vidsoft.vidconference\":{\"source\":\"iana\"},\"application/vnd.visio\":{\"source\":\"iana\",\"extensions\":[\"vsd\",\"vst\",\"vss\",\"vsw\"]},\"application/vnd.visionary\":{\"source\":\"iana\",\"extensions\":[\"vis\"]},\"application/vnd.vividence.scriptfile\":{\"source\":\"iana\"},\"application/vnd.vsf\":{\"source\":\"iana\",\"extensions\":[\"vsf\"]},\"application/vnd.wap.sic\":{\"source\":\"iana\"},\"application/vnd.wap.slc\":{\"source\":\"iana\"},\"application/vnd.wap.wbxml\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"extensions\":[\"wbxml\"]},\"application/vnd.wap.wmlc\":{\"source\":\"iana\",\"extensions\":[\"wmlc\"]},\"application/vnd.wap.wmlscriptc\":{\"source\":\"iana\",\"extensions\":[\"wmlsc\"]},\"application/vnd.webturbo\":{\"source\":\"iana\",\"extensions\":[\"wtb\"]},\"application/vnd.wfa.dpp\":{\"source\":\"iana\"},\"application/vnd.wfa.p2p\":{\"source\":\"iana\"},\"application/vnd.wfa.wsc\":{\"source\":\"iana\"},\"application/vnd.windows.devicepairing\":{\"source\":\"iana\"},\"application/vnd.wmc\":{\"source\":\"iana\"},\"application/vnd.wmf.bootstrap\":{\"source\":\"iana\"},\"application/vnd.wolfram.mathematica\":{\"source\":\"iana\"},\"application/vnd.wolfram.mathematica.package\":{\"source\":\"iana\"},\"application/vnd.wolfram.player\":{\"source\":\"iana\",\"extensions\":[\"nbp\"]},\"application/vnd.wordperfect\":{\"source\":\"iana\",\"extensions\":[\"wpd\"]},\"application/vnd.wqd\":{\"source\":\"iana\",\"extensions\":[\"wqd\"]},\"application/vnd.wrq-hp3000-labelled\":{\"source\":\"iana\"},\"application/vnd.wt.stf\":{\"source\":\"iana\",\"extensions\":[\"stf\"]},\"application/vnd.wv.csp+wbxml\":{\"source\":\"iana\"},\"application/vnd.wv.csp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.wv.ssp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.xacml+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.xara\":{\"source\":\"iana\",\"extensions\":[\"xar\"]},\"application/vnd.xfdl\":{\"source\":\"iana\",\"extensions\":[\"xfdl\"]},\"application/vnd.xfdl.webform\":{\"source\":\"iana\"},\"application/vnd.xmi+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/vnd.xmpie.cpkg\":{\"source\":\"iana\"},\"application/vnd.xmpie.dpkg\":{\"source\":\"iana\"},\"application/vnd.xmpie.plan\":{\"source\":\"iana\"},\"application/vnd.xmpie.ppkg\":{\"source\":\"iana\"},\"application/vnd.xmpie.xlim\":{\"source\":\"iana\"},\"application/vnd.yamaha.hv-dic\":{\"source\":\"iana\",\"extensions\":[\"hvd\"]},\"application/vnd.yamaha.hv-script\":{\"source\":\"iana\",\"extensions\":[\"hvs\"]},\"application/vnd.yamaha.hv-voice\":{\"source\":\"iana\",\"extensions\":[\"hvp\"]},\"application/vnd.yamaha.openscoreformat\":{\"source\":\"iana\",\"extensions\":[\"osf\"]},\"application/vnd.yamaha.openscoreformat.osfpvg+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"osfpvg\"]},\"application/vnd.yamaha.remote-setup\":{\"source\":\"iana\"},\"application/vnd.yamaha.smaf-audio\":{\"source\":\"iana\",\"extensions\":[\"saf\"]},\"application/vnd.yamaha.smaf-phrase\":{\"source\":\"iana\",\"extensions\":[\"spf\"]},\"application/vnd.yamaha.through-ngn\":{\"source\":\"iana\"},\"application/vnd.yamaha.tunnel-udpencap\":{\"source\":\"iana\"},\"application/vnd.yaoweme\":{\"source\":\"iana\"},\"application/vnd.yellowriver-custom-menu\":{\"source\":\"iana\",\"extensions\":[\"cmp\"]},\"application/vnd.youtube.yt\":{\"source\":\"iana\"},\"application/vnd.zul\":{\"source\":\"iana\",\"extensions\":[\"zir\",\"zirz\"]},\"application/vnd.zzazz.deck+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"zaz\"]},\"application/voicexml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"vxml\"]},\"application/voucher-cms+json\":{\"source\":\"iana\",\"compressible\":true},\"application/vq-rtcpxr\":{\"source\":\"iana\"},\"application/wasm\":{\"compressible\":true,\"extensions\":[\"wasm\"]},\"application/watcherinfo+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/webpush-options+json\":{\"source\":\"iana\",\"compressible\":true},\"application/whoispp-query\":{\"source\":\"iana\"},\"application/whoispp-response\":{\"source\":\"iana\"},\"application/widget\":{\"source\":\"iana\",\"extensions\":[\"wgt\"]},\"application/winhlp\":{\"source\":\"apache\",\"extensions\":[\"hlp\"]},\"application/wita\":{\"source\":\"iana\"},\"application/wordperfect5.1\":{\"source\":\"iana\"},\"application/wsdl+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"wsdl\"]},\"application/wspolicy+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"wspolicy\"]},\"application/x-7z-compressed\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"7z\"]},\"application/x-abiword\":{\"source\":\"apache\",\"extensions\":[\"abw\"]},\"application/x-ace-compressed\":{\"source\":\"apache\",\"extensions\":[\"ace\"]},\"application/x-amf\":{\"source\":\"apache\"},\"application/x-apple-diskimage\":{\"source\":\"apache\",\"extensions\":[\"dmg\"]},\"application/x-arj\":{\"compressible\":false,\"extensions\":[\"arj\"]},\"application/x-authorware-bin\":{\"source\":\"apache\",\"extensions\":[\"aab\",\"x32\",\"u32\",\"vox\"]},\"application/x-authorware-map\":{\"source\":\"apache\",\"extensions\":[\"aam\"]},\"application/x-authorware-seg\":{\"source\":\"apache\",\"extensions\":[\"aas\"]},\"application/x-bcpio\":{\"source\":\"apache\",\"extensions\":[\"bcpio\"]},\"application/x-bdoc\":{\"compressible\":false,\"extensions\":[\"bdoc\"]},\"application/x-bittorrent\":{\"source\":\"apache\",\"extensions\":[\"torrent\"]},\"application/x-blorb\":{\"source\":\"apache\",\"extensions\":[\"blb\",\"blorb\"]},\"application/x-bzip\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"bz\"]},\"application/x-bzip2\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"bz2\",\"boz\"]},\"application/x-cbr\":{\"source\":\"apache\",\"extensions\":[\"cbr\",\"cba\",\"cbt\",\"cbz\",\"cb7\"]},\"application/x-cdlink\":{\"source\":\"apache\",\"extensions\":[\"vcd\"]},\"application/x-cfs-compressed\":{\"source\":\"apache\",\"extensions\":[\"cfs\"]},\"application/x-chat\":{\"source\":\"apache\",\"extensions\":[\"chat\"]},\"application/x-chess-pgn\":{\"source\":\"apache\",\"extensions\":[\"pgn\"]},\"application/x-chrome-extension\":{\"extensions\":[\"crx\"]},\"application/x-cocoa\":{\"source\":\"nginx\",\"extensions\":[\"cco\"]},\"application/x-compress\":{\"source\":\"apache\"},\"application/x-conference\":{\"source\":\"apache\",\"extensions\":[\"nsc\"]},\"application/x-cpio\":{\"source\":\"apache\",\"extensions\":[\"cpio\"]},\"application/x-csh\":{\"source\":\"apache\",\"extensions\":[\"csh\"]},\"application/x-deb\":{\"compressible\":false},\"application/x-debian-package\":{\"source\":\"apache\",\"extensions\":[\"deb\",\"udeb\"]},\"application/x-dgc-compressed\":{\"source\":\"apache\",\"extensions\":[\"dgc\"]},\"application/x-director\":{\"source\":\"apache\",\"extensions\":[\"dir\",\"dcr\",\"dxr\",\"cst\",\"cct\",\"cxt\",\"w3d\",\"fgd\",\"swa\"]},\"application/x-doom\":{\"source\":\"apache\",\"extensions\":[\"wad\"]},\"application/x-dtbncx+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"ncx\"]},\"application/x-dtbook+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"dtb\"]},\"application/x-dtbresource+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"res\"]},\"application/x-dvi\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"dvi\"]},\"application/x-envoy\":{\"source\":\"apache\",\"extensions\":[\"evy\"]},\"application/x-eva\":{\"source\":\"apache\",\"extensions\":[\"eva\"]},\"application/x-font-bdf\":{\"source\":\"apache\",\"extensions\":[\"bdf\"]},\"application/x-font-dos\":{\"source\":\"apache\"},\"application/x-font-framemaker\":{\"source\":\"apache\"},\"application/x-font-ghostscript\":{\"source\":\"apache\",\"extensions\":[\"gsf\"]},\"application/x-font-libgrx\":{\"source\":\"apache\"},\"application/x-font-linux-psf\":{\"source\":\"apache\",\"extensions\":[\"psf\"]},\"application/x-font-pcf\":{\"source\":\"apache\",\"extensions\":[\"pcf\"]},\"application/x-font-snf\":{\"source\":\"apache\",\"extensions\":[\"snf\"]},\"application/x-font-speedo\":{\"source\":\"apache\"},\"application/x-font-sunos-news\":{\"source\":\"apache\"},\"application/x-font-type1\":{\"source\":\"apache\",\"extensions\":[\"pfa\",\"pfb\",\"pfm\",\"afm\"]},\"application/x-font-vfont\":{\"source\":\"apache\"},\"application/x-freearc\":{\"source\":\"apache\",\"extensions\":[\"arc\"]},\"application/x-futuresplash\":{\"source\":\"apache\",\"extensions\":[\"spl\"]},\"application/x-gca-compressed\":{\"source\":\"apache\",\"extensions\":[\"gca\"]},\"application/x-glulx\":{\"source\":\"apache\",\"extensions\":[\"ulx\"]},\"application/x-gnumeric\":{\"source\":\"apache\",\"extensions\":[\"gnumeric\"]},\"application/x-gramps-xml\":{\"source\":\"apache\",\"extensions\":[\"gramps\"]},\"application/x-gtar\":{\"source\":\"apache\",\"extensions\":[\"gtar\"]},\"application/x-gzip\":{\"source\":\"apache\"},\"application/x-hdf\":{\"source\":\"apache\",\"extensions\":[\"hdf\"]},\"application/x-httpd-php\":{\"compressible\":true,\"extensions\":[\"php\"]},\"application/x-install-instructions\":{\"source\":\"apache\",\"extensions\":[\"install\"]},\"application/x-iso9660-image\":{\"source\":\"apache\",\"extensions\":[\"iso\"]},\"application/x-java-archive-diff\":{\"source\":\"nginx\",\"extensions\":[\"jardiff\"]},\"application/x-java-jnlp-file\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"jnlp\"]},\"application/x-javascript\":{\"compressible\":true},\"application/x-keepass2\":{\"extensions\":[\"kdbx\"]},\"application/x-latex\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"latex\"]},\"application/x-lua-bytecode\":{\"extensions\":[\"luac\"]},\"application/x-lzh-compressed\":{\"source\":\"apache\",\"extensions\":[\"lzh\",\"lha\"]},\"application/x-makeself\":{\"source\":\"nginx\",\"extensions\":[\"run\"]},\"application/x-mie\":{\"source\":\"apache\",\"extensions\":[\"mie\"]},\"application/x-mobipocket-ebook\":{\"source\":\"apache\",\"extensions\":[\"prc\",\"mobi\"]},\"application/x-mpegurl\":{\"compressible\":false},\"application/x-ms-application\":{\"source\":\"apache\",\"extensions\":[\"application\"]},\"application/x-ms-shortcut\":{\"source\":\"apache\",\"extensions\":[\"lnk\"]},\"application/x-ms-wmd\":{\"source\":\"apache\",\"extensions\":[\"wmd\"]},\"application/x-ms-wmz\":{\"source\":\"apache\",\"extensions\":[\"wmz\"]},\"application/x-ms-xbap\":{\"source\":\"apache\",\"extensions\":[\"xbap\"]},\"application/x-msaccess\":{\"source\":\"apache\",\"extensions\":[\"mdb\"]},\"application/x-msbinder\":{\"source\":\"apache\",\"extensions\":[\"obd\"]},\"application/x-mscardfile\":{\"source\":\"apache\",\"extensions\":[\"crd\"]},\"application/x-msclip\":{\"source\":\"apache\",\"extensions\":[\"clp\"]},\"application/x-msdos-program\":{\"extensions\":[\"exe\"]},\"application/x-msdownload\":{\"source\":\"apache\",\"extensions\":[\"exe\",\"dll\",\"com\",\"bat\",\"msi\"]},\"application/x-msmediaview\":{\"source\":\"apache\",\"extensions\":[\"mvb\",\"m13\",\"m14\"]},\"application/x-msmetafile\":{\"source\":\"apache\",\"extensions\":[\"wmf\",\"wmz\",\"emf\",\"emz\"]},\"application/x-msmoney\":{\"source\":\"apache\",\"extensions\":[\"mny\"]},\"application/x-mspublisher\":{\"source\":\"apache\",\"extensions\":[\"pub\"]},\"application/x-msschedule\":{\"source\":\"apache\",\"extensions\":[\"scd\"]},\"application/x-msterminal\":{\"source\":\"apache\",\"extensions\":[\"trm\"]},\"application/x-mswrite\":{\"source\":\"apache\",\"extensions\":[\"wri\"]},\"application/x-netcdf\":{\"source\":\"apache\",\"extensions\":[\"nc\",\"cdf\"]},\"application/x-ns-proxy-autoconfig\":{\"compressible\":true,\"extensions\":[\"pac\"]},\"application/x-nzb\":{\"source\":\"apache\",\"extensions\":[\"nzb\"]},\"application/x-perl\":{\"source\":\"nginx\",\"extensions\":[\"pl\",\"pm\"]},\"application/x-pilot\":{\"source\":\"nginx\",\"extensions\":[\"prc\",\"pdb\"]},\"application/x-pkcs12\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"p12\",\"pfx\"]},\"application/x-pkcs7-certificates\":{\"source\":\"apache\",\"extensions\":[\"p7b\",\"spc\"]},\"application/x-pkcs7-certreqresp\":{\"source\":\"apache\",\"extensions\":[\"p7r\"]},\"application/x-pki-message\":{\"source\":\"iana\"},\"application/x-rar-compressed\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"rar\"]},\"application/x-redhat-package-manager\":{\"source\":\"nginx\",\"extensions\":[\"rpm\"]},\"application/x-research-info-systems\":{\"source\":\"apache\",\"extensions\":[\"ris\"]},\"application/x-sea\":{\"source\":\"nginx\",\"extensions\":[\"sea\"]},\"application/x-sh\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"sh\"]},\"application/x-shar\":{\"source\":\"apache\",\"extensions\":[\"shar\"]},\"application/x-shockwave-flash\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"swf\"]},\"application/x-silverlight-app\":{\"source\":\"apache\",\"extensions\":[\"xap\"]},\"application/x-sql\":{\"source\":\"apache\",\"extensions\":[\"sql\"]},\"application/x-stuffit\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"sit\"]},\"application/x-stuffitx\":{\"source\":\"apache\",\"extensions\":[\"sitx\"]},\"application/x-subrip\":{\"source\":\"apache\",\"extensions\":[\"srt\"]},\"application/x-sv4cpio\":{\"source\":\"apache\",\"extensions\":[\"sv4cpio\"]},\"application/x-sv4crc\":{\"source\":\"apache\",\"extensions\":[\"sv4crc\"]},\"application/x-t3vm-image\":{\"source\":\"apache\",\"extensions\":[\"t3\"]},\"application/x-tads\":{\"source\":\"apache\",\"extensions\":[\"gam\"]},\"application/x-tar\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"tar\"]},\"application/x-tcl\":{\"source\":\"apache\",\"extensions\":[\"tcl\",\"tk\"]},\"application/x-tex\":{\"source\":\"apache\",\"extensions\":[\"tex\"]},\"application/x-tex-tfm\":{\"source\":\"apache\",\"extensions\":[\"tfm\"]},\"application/x-texinfo\":{\"source\":\"apache\",\"extensions\":[\"texinfo\",\"texi\"]},\"application/x-tgif\":{\"source\":\"apache\",\"extensions\":[\"obj\"]},\"application/x-ustar\":{\"source\":\"apache\",\"extensions\":[\"ustar\"]},\"application/x-virtualbox-hdd\":{\"compressible\":true,\"extensions\":[\"hdd\"]},\"application/x-virtualbox-ova\":{\"compressible\":true,\"extensions\":[\"ova\"]},\"application/x-virtualbox-ovf\":{\"compressible\":true,\"extensions\":[\"ovf\"]},\"application/x-virtualbox-vbox\":{\"compressible\":true,\"extensions\":[\"vbox\"]},\"application/x-virtualbox-vbox-extpack\":{\"compressible\":false,\"extensions\":[\"vbox-extpack\"]},\"application/x-virtualbox-vdi\":{\"compressible\":true,\"extensions\":[\"vdi\"]},\"application/x-virtualbox-vhd\":{\"compressible\":true,\"extensions\":[\"vhd\"]},\"application/x-virtualbox-vmdk\":{\"compressible\":true,\"extensions\":[\"vmdk\"]},\"application/x-wais-source\":{\"source\":\"apache\",\"extensions\":[\"src\"]},\"application/x-web-app-manifest+json\":{\"compressible\":true,\"extensions\":[\"webapp\"]},\"application/x-www-form-urlencoded\":{\"source\":\"iana\",\"compressible\":true},\"application/x-x509-ca-cert\":{\"source\":\"iana\",\"extensions\":[\"der\",\"crt\",\"pem\"]},\"application/x-x509-ca-ra-cert\":{\"source\":\"iana\"},\"application/x-x509-next-ca-cert\":{\"source\":\"iana\"},\"application/x-xfig\":{\"source\":\"apache\",\"extensions\":[\"fig\"]},\"application/x-xliff+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"xlf\"]},\"application/x-xpinstall\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"xpi\"]},\"application/x-xz\":{\"source\":\"apache\",\"extensions\":[\"xz\"]},\"application/x-zmachine\":{\"source\":\"apache\",\"extensions\":[\"z1\",\"z2\",\"z3\",\"z4\",\"z5\",\"z6\",\"z7\",\"z8\"]},\"application/x400-bp\":{\"source\":\"iana\"},\"application/xacml+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/xaml+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"xaml\"]},\"application/xcap-att+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xav\"]},\"application/xcap-caps+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xca\"]},\"application/xcap-diff+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xdf\"]},\"application/xcap-el+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xel\"]},\"application/xcap-error+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/xcap-ns+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xns\"]},\"application/xcon-conference-info+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/xcon-conference-info-diff+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/xenc+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xenc\"]},\"application/xhtml+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xhtml\",\"xht\"]},\"application/xhtml-voice+xml\":{\"source\":\"apache\",\"compressible\":true},\"application/xliff+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xlf\"]},\"application/xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xml\",\"xsl\",\"xsd\",\"rng\"]},\"application/xml-dtd\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"dtd\"]},\"application/xml-external-parsed-entity\":{\"source\":\"iana\"},\"application/xml-patch+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/xmpp+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/xop+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xop\"]},\"application/xproc+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"xpl\"]},\"application/xslt+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xsl\",\"xslt\"]},\"application/xspf+xml\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"xspf\"]},\"application/xv+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"mxml\",\"xhvml\",\"xvml\",\"xvm\"]},\"application/yang\":{\"source\":\"iana\",\"extensions\":[\"yang\"]},\"application/yang-data+json\":{\"source\":\"iana\",\"compressible\":true},\"application/yang-data+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/yang-patch+json\":{\"source\":\"iana\",\"compressible\":true},\"application/yang-patch+xml\":{\"source\":\"iana\",\"compressible\":true},\"application/yin+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"yin\"]},\"application/zip\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"zip\"]},\"application/zlib\":{\"source\":\"iana\"},\"application/zstd\":{\"source\":\"iana\"},\"audio/1d-interleaved-parityfec\":{\"source\":\"iana\"},\"audio/32kadpcm\":{\"source\":\"iana\"},\"audio/3gpp\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"3gpp\"]},\"audio/3gpp2\":{\"source\":\"iana\"},\"audio/aac\":{\"source\":\"iana\"},\"audio/ac3\":{\"source\":\"iana\"},\"audio/adpcm\":{\"source\":\"apache\",\"extensions\":[\"adp\"]},\"audio/amr\":{\"source\":\"iana\",\"extensions\":[\"amr\"]},\"audio/amr-wb\":{\"source\":\"iana\"},\"audio/amr-wb+\":{\"source\":\"iana\"},\"audio/aptx\":{\"source\":\"iana\"},\"audio/asc\":{\"source\":\"iana\"},\"audio/atrac-advanced-lossless\":{\"source\":\"iana\"},\"audio/atrac-x\":{\"source\":\"iana\"},\"audio/atrac3\":{\"source\":\"iana\"},\"audio/basic\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"au\",\"snd\"]},\"audio/bv16\":{\"source\":\"iana\"},\"audio/bv32\":{\"source\":\"iana\"},\"audio/clearmode\":{\"source\":\"iana\"},\"audio/cn\":{\"source\":\"iana\"},\"audio/dat12\":{\"source\":\"iana\"},\"audio/dls\":{\"source\":\"iana\"},\"audio/dsr-es201108\":{\"source\":\"iana\"},\"audio/dsr-es202050\":{\"source\":\"iana\"},\"audio/dsr-es202211\":{\"source\":\"iana\"},\"audio/dsr-es202212\":{\"source\":\"iana\"},\"audio/dv\":{\"source\":\"iana\"},\"audio/dvi4\":{\"source\":\"iana\"},\"audio/eac3\":{\"source\":\"iana\"},\"audio/encaprtp\":{\"source\":\"iana\"},\"audio/evrc\":{\"source\":\"iana\"},\"audio/evrc-qcp\":{\"source\":\"iana\"},\"audio/evrc0\":{\"source\":\"iana\"},\"audio/evrc1\":{\"source\":\"iana\"},\"audio/evrcb\":{\"source\":\"iana\"},\"audio/evrcb0\":{\"source\":\"iana\"},\"audio/evrcb1\":{\"source\":\"iana\"},\"audio/evrcnw\":{\"source\":\"iana\"},\"audio/evrcnw0\":{\"source\":\"iana\"},\"audio/evrcnw1\":{\"source\":\"iana\"},\"audio/evrcwb\":{\"source\":\"iana\"},\"audio/evrcwb0\":{\"source\":\"iana\"},\"audio/evrcwb1\":{\"source\":\"iana\"},\"audio/evs\":{\"source\":\"iana\"},\"audio/flexfec\":{\"source\":\"iana\"},\"audio/fwdred\":{\"source\":\"iana\"},\"audio/g711-0\":{\"source\":\"iana\"},\"audio/g719\":{\"source\":\"iana\"},\"audio/g722\":{\"source\":\"iana\"},\"audio/g7221\":{\"source\":\"iana\"},\"audio/g723\":{\"source\":\"iana\"},\"audio/g726-16\":{\"source\":\"iana\"},\"audio/g726-24\":{\"source\":\"iana\"},\"audio/g726-32\":{\"source\":\"iana\"},\"audio/g726-40\":{\"source\":\"iana\"},\"audio/g728\":{\"source\":\"iana\"},\"audio/g729\":{\"source\":\"iana\"},\"audio/g7291\":{\"source\":\"iana\"},\"audio/g729d\":{\"source\":\"iana\"},\"audio/g729e\":{\"source\":\"iana\"},\"audio/gsm\":{\"source\":\"iana\"},\"audio/gsm-efr\":{\"source\":\"iana\"},\"audio/gsm-hr-08\":{\"source\":\"iana\"},\"audio/ilbc\":{\"source\":\"iana\"},\"audio/ip-mr_v2.5\":{\"source\":\"iana\"},\"audio/isac\":{\"source\":\"apache\"},\"audio/l16\":{\"source\":\"iana\"},\"audio/l20\":{\"source\":\"iana\"},\"audio/l24\":{\"source\":\"iana\",\"compressible\":false},\"audio/l8\":{\"source\":\"iana\"},\"audio/lpc\":{\"source\":\"iana\"},\"audio/melp\":{\"source\":\"iana\"},\"audio/melp1200\":{\"source\":\"iana\"},\"audio/melp2400\":{\"source\":\"iana\"},\"audio/melp600\":{\"source\":\"iana\"},\"audio/mhas\":{\"source\":\"iana\"},\"audio/midi\":{\"source\":\"apache\",\"extensions\":[\"mid\",\"midi\",\"kar\",\"rmi\"]},\"audio/mobile-xmf\":{\"source\":\"iana\",\"extensions\":[\"mxmf\"]},\"audio/mp3\":{\"compressible\":false,\"extensions\":[\"mp3\"]},\"audio/mp4\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"m4a\",\"mp4a\"]},\"audio/mp4a-latm\":{\"source\":\"iana\"},\"audio/mpa\":{\"source\":\"iana\"},\"audio/mpa-robust\":{\"source\":\"iana\"},\"audio/mpeg\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"mpga\",\"mp2\",\"mp2a\",\"mp3\",\"m2a\",\"m3a\"]},\"audio/mpeg4-generic\":{\"source\":\"iana\"},\"audio/musepack\":{\"source\":\"apache\"},\"audio/ogg\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"oga\",\"ogg\",\"spx\",\"opus\"]},\"audio/opus\":{\"source\":\"iana\"},\"audio/parityfec\":{\"source\":\"iana\"},\"audio/pcma\":{\"source\":\"iana\"},\"audio/pcma-wb\":{\"source\":\"iana\"},\"audio/pcmu\":{\"source\":\"iana\"},\"audio/pcmu-wb\":{\"source\":\"iana\"},\"audio/prs.sid\":{\"source\":\"iana\"},\"audio/qcelp\":{\"source\":\"iana\"},\"audio/raptorfec\":{\"source\":\"iana\"},\"audio/red\":{\"source\":\"iana\"},\"audio/rtp-enc-aescm128\":{\"source\":\"iana\"},\"audio/rtp-midi\":{\"source\":\"iana\"},\"audio/rtploopback\":{\"source\":\"iana\"},\"audio/rtx\":{\"source\":\"iana\"},\"audio/s3m\":{\"source\":\"apache\",\"extensions\":[\"s3m\"]},\"audio/scip\":{\"source\":\"iana\"},\"audio/silk\":{\"source\":\"apache\",\"extensions\":[\"sil\"]},\"audio/smv\":{\"source\":\"iana\"},\"audio/smv-qcp\":{\"source\":\"iana\"},\"audio/smv0\":{\"source\":\"iana\"},\"audio/sofa\":{\"source\":\"iana\"},\"audio/sp-midi\":{\"source\":\"iana\"},\"audio/speex\":{\"source\":\"iana\"},\"audio/t140c\":{\"source\":\"iana\"},\"audio/t38\":{\"source\":\"iana\"},\"audio/telephone-event\":{\"source\":\"iana\"},\"audio/tetra_acelp\":{\"source\":\"iana\"},\"audio/tetra_acelp_bb\":{\"source\":\"iana\"},\"audio/tone\":{\"source\":\"iana\"},\"audio/tsvcis\":{\"source\":\"iana\"},\"audio/uemclip\":{\"source\":\"iana\"},\"audio/ulpfec\":{\"source\":\"iana\"},\"audio/usac\":{\"source\":\"iana\"},\"audio/vdvi\":{\"source\":\"iana\"},\"audio/vmr-wb\":{\"source\":\"iana\"},\"audio/vnd.3gpp.iufp\":{\"source\":\"iana\"},\"audio/vnd.4sb\":{\"source\":\"iana\"},\"audio/vnd.audiokoz\":{\"source\":\"iana\"},\"audio/vnd.celp\":{\"source\":\"iana\"},\"audio/vnd.cisco.nse\":{\"source\":\"iana\"},\"audio/vnd.cmles.radio-events\":{\"source\":\"iana\"},\"audio/vnd.cns.anp1\":{\"source\":\"iana\"},\"audio/vnd.cns.inf1\":{\"source\":\"iana\"},\"audio/vnd.dece.audio\":{\"source\":\"iana\",\"extensions\":[\"uva\",\"uvva\"]},\"audio/vnd.digital-winds\":{\"source\":\"iana\",\"extensions\":[\"eol\"]},\"audio/vnd.dlna.adts\":{\"source\":\"iana\"},\"audio/vnd.dolby.heaac.1\":{\"source\":\"iana\"},\"audio/vnd.dolby.heaac.2\":{\"source\":\"iana\"},\"audio/vnd.dolby.mlp\":{\"source\":\"iana\"},\"audio/vnd.dolby.mps\":{\"source\":\"iana\"},\"audio/vnd.dolby.pl2\":{\"source\":\"iana\"},\"audio/vnd.dolby.pl2x\":{\"source\":\"iana\"},\"audio/vnd.dolby.pl2z\":{\"source\":\"iana\"},\"audio/vnd.dolby.pulse.1\":{\"source\":\"iana\"},\"audio/vnd.dra\":{\"source\":\"iana\",\"extensions\":[\"dra\"]},\"audio/vnd.dts\":{\"source\":\"iana\",\"extensions\":[\"dts\"]},\"audio/vnd.dts.hd\":{\"source\":\"iana\",\"extensions\":[\"dtshd\"]},\"audio/vnd.dts.uhd\":{\"source\":\"iana\"},\"audio/vnd.dvb.file\":{\"source\":\"iana\"},\"audio/vnd.everad.plj\":{\"source\":\"iana\"},\"audio/vnd.hns.audio\":{\"source\":\"iana\"},\"audio/vnd.lucent.voice\":{\"source\":\"iana\",\"extensions\":[\"lvp\"]},\"audio/vnd.ms-playready.media.pya\":{\"source\":\"iana\",\"extensions\":[\"pya\"]},\"audio/vnd.nokia.mobile-xmf\":{\"source\":\"iana\"},\"audio/vnd.nortel.vbk\":{\"source\":\"iana\"},\"audio/vnd.nuera.ecelp4800\":{\"source\":\"iana\",\"extensions\":[\"ecelp4800\"]},\"audio/vnd.nuera.ecelp7470\":{\"source\":\"iana\",\"extensions\":[\"ecelp7470\"]},\"audio/vnd.nuera.ecelp9600\":{\"source\":\"iana\",\"extensions\":[\"ecelp9600\"]},\"audio/vnd.octel.sbc\":{\"source\":\"iana\"},\"audio/vnd.presonus.multitrack\":{\"source\":\"iana\"},\"audio/vnd.qcelp\":{\"source\":\"iana\"},\"audio/vnd.rhetorex.32kadpcm\":{\"source\":\"iana\"},\"audio/vnd.rip\":{\"source\":\"iana\",\"extensions\":[\"rip\"]},\"audio/vnd.rn-realaudio\":{\"compressible\":false},\"audio/vnd.sealedmedia.softseal.mpeg\":{\"source\":\"iana\"},\"audio/vnd.vmx.cvsd\":{\"source\":\"iana\"},\"audio/vnd.wave\":{\"compressible\":false},\"audio/vorbis\":{\"source\":\"iana\",\"compressible\":false},\"audio/vorbis-config\":{\"source\":\"iana\"},\"audio/wav\":{\"compressible\":false,\"extensions\":[\"wav\"]},\"audio/wave\":{\"compressible\":false,\"extensions\":[\"wav\"]},\"audio/webm\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"weba\"]},\"audio/x-aac\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"aac\"]},\"audio/x-aiff\":{\"source\":\"apache\",\"extensions\":[\"aif\",\"aiff\",\"aifc\"]},\"audio/x-caf\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"caf\"]},\"audio/x-flac\":{\"source\":\"apache\",\"extensions\":[\"flac\"]},\"audio/x-m4a\":{\"source\":\"nginx\",\"extensions\":[\"m4a\"]},\"audio/x-matroska\":{\"source\":\"apache\",\"extensions\":[\"mka\"]},\"audio/x-mpegurl\":{\"source\":\"apache\",\"extensions\":[\"m3u\"]},\"audio/x-ms-wax\":{\"source\":\"apache\",\"extensions\":[\"wax\"]},\"audio/x-ms-wma\":{\"source\":\"apache\",\"extensions\":[\"wma\"]},\"audio/x-pn-realaudio\":{\"source\":\"apache\",\"extensions\":[\"ram\",\"ra\"]},\"audio/x-pn-realaudio-plugin\":{\"source\":\"apache\",\"extensions\":[\"rmp\"]},\"audio/x-realaudio\":{\"source\":\"nginx\",\"extensions\":[\"ra\"]},\"audio/x-tta\":{\"source\":\"apache\"},\"audio/x-wav\":{\"source\":\"apache\",\"extensions\":[\"wav\"]},\"audio/xm\":{\"source\":\"apache\",\"extensions\":[\"xm\"]},\"chemical/x-cdx\":{\"source\":\"apache\",\"extensions\":[\"cdx\"]},\"chemical/x-cif\":{\"source\":\"apache\",\"extensions\":[\"cif\"]},\"chemical/x-cmdf\":{\"source\":\"apache\",\"extensions\":[\"cmdf\"]},\"chemical/x-cml\":{\"source\":\"apache\",\"extensions\":[\"cml\"]},\"chemical/x-csml\":{\"source\":\"apache\",\"extensions\":[\"csml\"]},\"chemical/x-pdb\":{\"source\":\"apache\"},\"chemical/x-xyz\":{\"source\":\"apache\",\"extensions\":[\"xyz\"]},\"font/collection\":{\"source\":\"iana\",\"extensions\":[\"ttc\"]},\"font/otf\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"otf\"]},\"font/sfnt\":{\"source\":\"iana\"},\"font/ttf\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"ttf\"]},\"font/woff\":{\"source\":\"iana\",\"extensions\":[\"woff\"]},\"font/woff2\":{\"source\":\"iana\",\"extensions\":[\"woff2\"]},\"image/aces\":{\"source\":\"iana\",\"extensions\":[\"exr\"]},\"image/apng\":{\"compressible\":false,\"extensions\":[\"apng\"]},\"image/avci\":{\"source\":\"iana\"},\"image/avcs\":{\"source\":\"iana\"},\"image/avif\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"avif\"]},\"image/bmp\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"bmp\"]},\"image/cgm\":{\"source\":\"iana\",\"extensions\":[\"cgm\"]},\"image/dicom-rle\":{\"source\":\"iana\",\"extensions\":[\"drle\"]},\"image/emf\":{\"source\":\"iana\",\"extensions\":[\"emf\"]},\"image/fits\":{\"source\":\"iana\",\"extensions\":[\"fits\"]},\"image/g3fax\":{\"source\":\"iana\",\"extensions\":[\"g3\"]},\"image/gif\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"gif\"]},\"image/heic\":{\"source\":\"iana\",\"extensions\":[\"heic\"]},\"image/heic-sequence\":{\"source\":\"iana\",\"extensions\":[\"heics\"]},\"image/heif\":{\"source\":\"iana\",\"extensions\":[\"heif\"]},\"image/heif-sequence\":{\"source\":\"iana\",\"extensions\":[\"heifs\"]},\"image/hej2k\":{\"source\":\"iana\",\"extensions\":[\"hej2\"]},\"image/hsj2\":{\"source\":\"iana\",\"extensions\":[\"hsj2\"]},\"image/ief\":{\"source\":\"iana\",\"extensions\":[\"ief\"]},\"image/jls\":{\"source\":\"iana\",\"extensions\":[\"jls\"]},\"image/jp2\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"jp2\",\"jpg2\"]},\"image/jpeg\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"jpeg\",\"jpg\",\"jpe\"]},\"image/jph\":{\"source\":\"iana\",\"extensions\":[\"jph\"]},\"image/jphc\":{\"source\":\"iana\",\"extensions\":[\"jhc\"]},\"image/jpm\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"jpm\"]},\"image/jpx\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"jpx\",\"jpf\"]},\"image/jxr\":{\"source\":\"iana\",\"extensions\":[\"jxr\"]},\"image/jxra\":{\"source\":\"iana\",\"extensions\":[\"jxra\"]},\"image/jxrs\":{\"source\":\"iana\",\"extensions\":[\"jxrs\"]},\"image/jxs\":{\"source\":\"iana\",\"extensions\":[\"jxs\"]},\"image/jxsc\":{\"source\":\"iana\",\"extensions\":[\"jxsc\"]},\"image/jxsi\":{\"source\":\"iana\",\"extensions\":[\"jxsi\"]},\"image/jxss\":{\"source\":\"iana\",\"extensions\":[\"jxss\"]},\"image/ktx\":{\"source\":\"iana\",\"extensions\":[\"ktx\"]},\"image/ktx2\":{\"source\":\"iana\",\"extensions\":[\"ktx2\"]},\"image/naplps\":{\"source\":\"iana\"},\"image/pjpeg\":{\"compressible\":false},\"image/png\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"png\"]},\"image/prs.btif\":{\"source\":\"iana\",\"extensions\":[\"btif\"]},\"image/prs.pti\":{\"source\":\"iana\",\"extensions\":[\"pti\"]},\"image/pwg-raster\":{\"source\":\"iana\"},\"image/sgi\":{\"source\":\"apache\",\"extensions\":[\"sgi\"]},\"image/svg+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"svg\",\"svgz\"]},\"image/t38\":{\"source\":\"iana\",\"extensions\":[\"t38\"]},\"image/tiff\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"tif\",\"tiff\"]},\"image/tiff-fx\":{\"source\":\"iana\",\"extensions\":[\"tfx\"]},\"image/vnd.adobe.photoshop\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"psd\"]},\"image/vnd.airzip.accelerator.azv\":{\"source\":\"iana\",\"extensions\":[\"azv\"]},\"image/vnd.cns.inf2\":{\"source\":\"iana\"},\"image/vnd.dece.graphic\":{\"source\":\"iana\",\"extensions\":[\"uvi\",\"uvvi\",\"uvg\",\"uvvg\"]},\"image/vnd.djvu\":{\"source\":\"iana\",\"extensions\":[\"djvu\",\"djv\"]},\"image/vnd.dvb.subtitle\":{\"source\":\"iana\",\"extensions\":[\"sub\"]},\"image/vnd.dwg\":{\"source\":\"iana\",\"extensions\":[\"dwg\"]},\"image/vnd.dxf\":{\"source\":\"iana\",\"extensions\":[\"dxf\"]},\"image/vnd.fastbidsheet\":{\"source\":\"iana\",\"extensions\":[\"fbs\"]},\"image/vnd.fpx\":{\"source\":\"iana\",\"extensions\":[\"fpx\"]},\"image/vnd.fst\":{\"source\":\"iana\",\"extensions\":[\"fst\"]},\"image/vnd.fujixerox.edmics-mmr\":{\"source\":\"iana\",\"extensions\":[\"mmr\"]},\"image/vnd.fujixerox.edmics-rlc\":{\"source\":\"iana\",\"extensions\":[\"rlc\"]},\"image/vnd.globalgraphics.pgb\":{\"source\":\"iana\"},\"image/vnd.microsoft.icon\":{\"source\":\"iana\",\"extensions\":[\"ico\"]},\"image/vnd.mix\":{\"source\":\"iana\"},\"image/vnd.mozilla.apng\":{\"source\":\"iana\"},\"image/vnd.ms-dds\":{\"extensions\":[\"dds\"]},\"image/vnd.ms-modi\":{\"source\":\"iana\",\"extensions\":[\"mdi\"]},\"image/vnd.ms-photo\":{\"source\":\"apache\",\"extensions\":[\"wdp\"]},\"image/vnd.net-fpx\":{\"source\":\"iana\",\"extensions\":[\"npx\"]},\"image/vnd.pco.b16\":{\"source\":\"iana\",\"extensions\":[\"b16\"]},\"image/vnd.radiance\":{\"source\":\"iana\"},\"image/vnd.sealed.png\":{\"source\":\"iana\"},\"image/vnd.sealedmedia.softseal.gif\":{\"source\":\"iana\"},\"image/vnd.sealedmedia.softseal.jpg\":{\"source\":\"iana\"},\"image/vnd.svf\":{\"source\":\"iana\"},\"image/vnd.tencent.tap\":{\"source\":\"iana\",\"extensions\":[\"tap\"]},\"image/vnd.valve.source.texture\":{\"source\":\"iana\",\"extensions\":[\"vtf\"]},\"image/vnd.wap.wbmp\":{\"source\":\"iana\",\"extensions\":[\"wbmp\"]},\"image/vnd.xiff\":{\"source\":\"iana\",\"extensions\":[\"xif\"]},\"image/vnd.zbrush.pcx\":{\"source\":\"iana\",\"extensions\":[\"pcx\"]},\"image/webp\":{\"source\":\"apache\",\"extensions\":[\"webp\"]},\"image/wmf\":{\"source\":\"iana\",\"extensions\":[\"wmf\"]},\"image/x-3ds\":{\"source\":\"apache\",\"extensions\":[\"3ds\"]},\"image/x-cmu-raster\":{\"source\":\"apache\",\"extensions\":[\"ras\"]},\"image/x-cmx\":{\"source\":\"apache\",\"extensions\":[\"cmx\"]},\"image/x-freehand\":{\"source\":\"apache\",\"extensions\":[\"fh\",\"fhc\",\"fh4\",\"fh5\",\"fh7\"]},\"image/x-icon\":{\"source\":\"apache\",\"compressible\":true,\"extensions\":[\"ico\"]},\"image/x-jng\":{\"source\":\"nginx\",\"extensions\":[\"jng\"]},\"image/x-mrsid-image\":{\"source\":\"apache\",\"extensions\":[\"sid\"]},\"image/x-ms-bmp\":{\"source\":\"nginx\",\"compressible\":true,\"extensions\":[\"bmp\"]},\"image/x-pcx\":{\"source\":\"apache\",\"extensions\":[\"pcx\"]},\"image/x-pict\":{\"source\":\"apache\",\"extensions\":[\"pic\",\"pct\"]},\"image/x-portable-anymap\":{\"source\":\"apache\",\"extensions\":[\"pnm\"]},\"image/x-portable-bitmap\":{\"source\":\"apache\",\"extensions\":[\"pbm\"]},\"image/x-portable-graymap\":{\"source\":\"apache\",\"extensions\":[\"pgm\"]},\"image/x-portable-pixmap\":{\"source\":\"apache\",\"extensions\":[\"ppm\"]},\"image/x-rgb\":{\"source\":\"apache\",\"extensions\":[\"rgb\"]},\"image/x-tga\":{\"source\":\"apache\",\"extensions\":[\"tga\"]},\"image/x-xbitmap\":{\"source\":\"apache\",\"extensions\":[\"xbm\"]},\"image/x-xcf\":{\"compressible\":false},\"image/x-xpixmap\":{\"source\":\"apache\",\"extensions\":[\"xpm\"]},\"image/x-xwindowdump\":{\"source\":\"apache\",\"extensions\":[\"xwd\"]},\"message/cpim\":{\"source\":\"iana\"},\"message/delivery-status\":{\"source\":\"iana\"},\"message/disposition-notification\":{\"source\":\"iana\",\"extensions\":[\"disposition-notification\"]},\"message/external-body\":{\"source\":\"iana\"},\"message/feedback-report\":{\"source\":\"iana\"},\"message/global\":{\"source\":\"iana\",\"extensions\":[\"u8msg\"]},\"message/global-delivery-status\":{\"source\":\"iana\",\"extensions\":[\"u8dsn\"]},\"message/global-disposition-notification\":{\"source\":\"iana\",\"extensions\":[\"u8mdn\"]},\"message/global-headers\":{\"source\":\"iana\",\"extensions\":[\"u8hdr\"]},\"message/http\":{\"source\":\"iana\",\"compressible\":false},\"message/imdn+xml\":{\"source\":\"iana\",\"compressible\":true},\"message/news\":{\"source\":\"iana\"},\"message/partial\":{\"source\":\"iana\",\"compressible\":false},\"message/rfc822\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"eml\",\"mime\"]},\"message/s-http\":{\"source\":\"iana\"},\"message/sip\":{\"source\":\"iana\"},\"message/sipfrag\":{\"source\":\"iana\"},\"message/tracking-status\":{\"source\":\"iana\"},\"message/vnd.si.simp\":{\"source\":\"iana\"},\"message/vnd.wfa.wsc\":{\"source\":\"iana\",\"extensions\":[\"wsc\"]},\"model/3mf\":{\"source\":\"iana\",\"extensions\":[\"3mf\"]},\"model/e57\":{\"source\":\"iana\"},\"model/gltf+json\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"gltf\"]},\"model/gltf-binary\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"glb\"]},\"model/iges\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"igs\",\"iges\"]},\"model/mesh\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"msh\",\"mesh\",\"silo\"]},\"model/mtl\":{\"source\":\"iana\",\"extensions\":[\"mtl\"]},\"model/obj\":{\"source\":\"iana\",\"extensions\":[\"obj\"]},\"model/stl\":{\"source\":\"iana\",\"extensions\":[\"stl\"]},\"model/vnd.collada+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"dae\"]},\"model/vnd.dwf\":{\"source\":\"iana\",\"extensions\":[\"dwf\"]},\"model/vnd.flatland.3dml\":{\"source\":\"iana\"},\"model/vnd.gdl\":{\"source\":\"iana\",\"extensions\":[\"gdl\"]},\"model/vnd.gs-gdl\":{\"source\":\"apache\"},\"model/vnd.gs.gdl\":{\"source\":\"iana\"},\"model/vnd.gtw\":{\"source\":\"iana\",\"extensions\":[\"gtw\"]},\"model/vnd.moml+xml\":{\"source\":\"iana\",\"compressible\":true},\"model/vnd.mts\":{\"source\":\"iana\",\"extensions\":[\"mts\"]},\"model/vnd.opengex\":{\"source\":\"iana\",\"extensions\":[\"ogex\"]},\"model/vnd.parasolid.transmit.binary\":{\"source\":\"iana\",\"extensions\":[\"x_b\"]},\"model/vnd.parasolid.transmit.text\":{\"source\":\"iana\",\"extensions\":[\"x_t\"]},\"model/vnd.rosette.annotated-data-model\":{\"source\":\"iana\"},\"model/vnd.sap.vds\":{\"source\":\"iana\",\"extensions\":[\"vds\"]},\"model/vnd.usdz+zip\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"usdz\"]},\"model/vnd.valve.source.compiled-map\":{\"source\":\"iana\",\"extensions\":[\"bsp\"]},\"model/vnd.vtu\":{\"source\":\"iana\",\"extensions\":[\"vtu\"]},\"model/vrml\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"wrl\",\"vrml\"]},\"model/x3d+binary\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"x3db\",\"x3dbz\"]},\"model/x3d+fastinfoset\":{\"source\":\"iana\",\"extensions\":[\"x3db\"]},\"model/x3d+vrml\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"x3dv\",\"x3dvz\"]},\"model/x3d+xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"x3d\",\"x3dz\"]},\"model/x3d-vrml\":{\"source\":\"iana\",\"extensions\":[\"x3dv\"]},\"multipart/alternative\":{\"source\":\"iana\",\"compressible\":false},\"multipart/appledouble\":{\"source\":\"iana\"},\"multipart/byteranges\":{\"source\":\"iana\"},\"multipart/digest\":{\"source\":\"iana\"},\"multipart/encrypted\":{\"source\":\"iana\",\"compressible\":false},\"multipart/form-data\":{\"source\":\"iana\",\"compressible\":false},\"multipart/header-set\":{\"source\":\"iana\"},\"multipart/mixed\":{\"source\":\"iana\"},\"multipart/multilingual\":{\"source\":\"iana\"},\"multipart/parallel\":{\"source\":\"iana\"},\"multipart/related\":{\"source\":\"iana\",\"compressible\":false},\"multipart/report\":{\"source\":\"iana\"},\"multipart/signed\":{\"source\":\"iana\",\"compressible\":false},\"multipart/vnd.bint.med-plus\":{\"source\":\"iana\"},\"multipart/voice-message\":{\"source\":\"iana\"},\"multipart/x-mixed-replace\":{\"source\":\"iana\"},\"text/1d-interleaved-parityfec\":{\"source\":\"iana\"},\"text/cache-manifest\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"appcache\",\"manifest\"]},\"text/calendar\":{\"source\":\"iana\",\"extensions\":[\"ics\",\"ifb\"]},\"text/calender\":{\"compressible\":true},\"text/cmd\":{\"compressible\":true},\"text/coffeescript\":{\"extensions\":[\"coffee\",\"litcoffee\"]},\"text/cql\":{\"source\":\"iana\"},\"text/cql-expression\":{\"source\":\"iana\"},\"text/cql-identifier\":{\"source\":\"iana\"},\"text/css\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"css\"]},\"text/csv\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"csv\"]},\"text/csv-schema\":{\"source\":\"iana\"},\"text/directory\":{\"source\":\"iana\"},\"text/dns\":{\"source\":\"iana\"},\"text/ecmascript\":{\"source\":\"iana\"},\"text/encaprtp\":{\"source\":\"iana\"},\"text/enriched\":{\"source\":\"iana\"},\"text/fhirpath\":{\"source\":\"iana\"},\"text/flexfec\":{\"source\":\"iana\"},\"text/fwdred\":{\"source\":\"iana\"},\"text/gff3\":{\"source\":\"iana\"},\"text/grammar-ref-list\":{\"source\":\"iana\"},\"text/html\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"html\",\"htm\",\"shtml\"]},\"text/jade\":{\"extensions\":[\"jade\"]},\"text/javascript\":{\"source\":\"iana\",\"compressible\":true},\"text/jcr-cnd\":{\"source\":\"iana\"},\"text/jsx\":{\"compressible\":true,\"extensions\":[\"jsx\"]},\"text/less\":{\"compressible\":true,\"extensions\":[\"less\"]},\"text/markdown\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"markdown\",\"md\"]},\"text/mathml\":{\"source\":\"nginx\",\"extensions\":[\"mml\"]},\"text/mdx\":{\"compressible\":true,\"extensions\":[\"mdx\"]},\"text/mizar\":{\"source\":\"iana\"},\"text/n3\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"n3\"]},\"text/parameters\":{\"source\":\"iana\",\"charset\":\"UTF-8\"},\"text/parityfec\":{\"source\":\"iana\"},\"text/plain\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"txt\",\"text\",\"conf\",\"def\",\"list\",\"log\",\"in\",\"ini\"]},\"text/provenance-notation\":{\"source\":\"iana\",\"charset\":\"UTF-8\"},\"text/prs.fallenstein.rst\":{\"source\":\"iana\"},\"text/prs.lines.tag\":{\"source\":\"iana\",\"extensions\":[\"dsc\"]},\"text/prs.prop.logic\":{\"source\":\"iana\"},\"text/raptorfec\":{\"source\":\"iana\"},\"text/red\":{\"source\":\"iana\"},\"text/rfc822-headers\":{\"source\":\"iana\"},\"text/richtext\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rtx\"]},\"text/rtf\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"rtf\"]},\"text/rtp-enc-aescm128\":{\"source\":\"iana\"},\"text/rtploopback\":{\"source\":\"iana\"},\"text/rtx\":{\"source\":\"iana\"},\"text/sgml\":{\"source\":\"iana\",\"extensions\":[\"sgml\",\"sgm\"]},\"text/shaclc\":{\"source\":\"iana\"},\"text/shex\":{\"extensions\":[\"shex\"]},\"text/slim\":{\"extensions\":[\"slim\",\"slm\"]},\"text/spdx\":{\"source\":\"iana\",\"extensions\":[\"spdx\"]},\"text/strings\":{\"source\":\"iana\"},\"text/stylus\":{\"extensions\":[\"stylus\",\"styl\"]},\"text/t140\":{\"source\":\"iana\"},\"text/tab-separated-values\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"tsv\"]},\"text/troff\":{\"source\":\"iana\",\"extensions\":[\"t\",\"tr\",\"roff\",\"man\",\"me\",\"ms\"]},\"text/turtle\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"extensions\":[\"ttl\"]},\"text/ulpfec\":{\"source\":\"iana\"},\"text/uri-list\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"uri\",\"uris\",\"urls\"]},\"text/vcard\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"vcard\"]},\"text/vnd.a\":{\"source\":\"iana\"},\"text/vnd.abc\":{\"source\":\"iana\"},\"text/vnd.ascii-art\":{\"source\":\"iana\"},\"text/vnd.curl\":{\"source\":\"iana\",\"extensions\":[\"curl\"]},\"text/vnd.curl.dcurl\":{\"source\":\"apache\",\"extensions\":[\"dcurl\"]},\"text/vnd.curl.mcurl\":{\"source\":\"apache\",\"extensions\":[\"mcurl\"]},\"text/vnd.curl.scurl\":{\"source\":\"apache\",\"extensions\":[\"scurl\"]},\"text/vnd.debian.copyright\":{\"source\":\"iana\",\"charset\":\"UTF-8\"},\"text/vnd.dmclientscript\":{\"source\":\"iana\"},\"text/vnd.dvb.subtitle\":{\"source\":\"iana\",\"extensions\":[\"sub\"]},\"text/vnd.esmertec.theme-descriptor\":{\"source\":\"iana\",\"charset\":\"UTF-8\"},\"text/vnd.ficlab.flt\":{\"source\":\"iana\"},\"text/vnd.fly\":{\"source\":\"iana\",\"extensions\":[\"fly\"]},\"text/vnd.fmi.flexstor\":{\"source\":\"iana\",\"extensions\":[\"flx\"]},\"text/vnd.gml\":{\"source\":\"iana\"},\"text/vnd.graphviz\":{\"source\":\"iana\",\"extensions\":[\"gv\"]},\"text/vnd.hans\":{\"source\":\"iana\"},\"text/vnd.hgl\":{\"source\":\"iana\"},\"text/vnd.in3d.3dml\":{\"source\":\"iana\",\"extensions\":[\"3dml\"]},\"text/vnd.in3d.spot\":{\"source\":\"iana\",\"extensions\":[\"spot\"]},\"text/vnd.iptc.newsml\":{\"source\":\"iana\"},\"text/vnd.iptc.nitf\":{\"source\":\"iana\"},\"text/vnd.latex-z\":{\"source\":\"iana\"},\"text/vnd.motorola.reflex\":{\"source\":\"iana\"},\"text/vnd.ms-mediapackage\":{\"source\":\"iana\"},\"text/vnd.net2phone.commcenter.command\":{\"source\":\"iana\"},\"text/vnd.radisys.msml-basic-layout\":{\"source\":\"iana\"},\"text/vnd.senx.warpscript\":{\"source\":\"iana\"},\"text/vnd.si.uricatalogue\":{\"source\":\"iana\"},\"text/vnd.sosi\":{\"source\":\"iana\"},\"text/vnd.sun.j2me.app-descriptor\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"extensions\":[\"jad\"]},\"text/vnd.trolltech.linguist\":{\"source\":\"iana\",\"charset\":\"UTF-8\"},\"text/vnd.wap.si\":{\"source\":\"iana\"},\"text/vnd.wap.sl\":{\"source\":\"iana\"},\"text/vnd.wap.wml\":{\"source\":\"iana\",\"extensions\":[\"wml\"]},\"text/vnd.wap.wmlscript\":{\"source\":\"iana\",\"extensions\":[\"wmls\"]},\"text/vtt\":{\"source\":\"iana\",\"charset\":\"UTF-8\",\"compressible\":true,\"extensions\":[\"vtt\"]},\"text/x-asm\":{\"source\":\"apache\",\"extensions\":[\"s\",\"asm\"]},\"text/x-c\":{\"source\":\"apache\",\"extensions\":[\"c\",\"cc\",\"cxx\",\"cpp\",\"h\",\"hh\",\"dic\"]},\"text/x-component\":{\"source\":\"nginx\",\"extensions\":[\"htc\"]},\"text/x-fortran\":{\"source\":\"apache\",\"extensions\":[\"f\",\"for\",\"f77\",\"f90\"]},\"text/x-gwt-rpc\":{\"compressible\":true},\"text/x-handlebars-template\":{\"extensions\":[\"hbs\"]},\"text/x-java-source\":{\"source\":\"apache\",\"extensions\":[\"java\"]},\"text/x-jquery-tmpl\":{\"compressible\":true},\"text/x-lua\":{\"extensions\":[\"lua\"]},\"text/x-markdown\":{\"compressible\":true,\"extensions\":[\"mkd\"]},\"text/x-nfo\":{\"source\":\"apache\",\"extensions\":[\"nfo\"]},\"text/x-opml\":{\"source\":\"apache\",\"extensions\":[\"opml\"]},\"text/x-org\":{\"compressible\":true,\"extensions\":[\"org\"]},\"text/x-pascal\":{\"source\":\"apache\",\"extensions\":[\"p\",\"pas\"]},\"text/x-processing\":{\"compressible\":true,\"extensions\":[\"pde\"]},\"text/x-sass\":{\"extensions\":[\"sass\"]},\"text/x-scss\":{\"extensions\":[\"scss\"]},\"text/x-setext\":{\"source\":\"apache\",\"extensions\":[\"etx\"]},\"text/x-sfv\":{\"source\":\"apache\",\"extensions\":[\"sfv\"]},\"text/x-suse-ymp\":{\"compressible\":true,\"extensions\":[\"ymp\"]},\"text/x-uuencode\":{\"source\":\"apache\",\"extensions\":[\"uu\"]},\"text/x-vcalendar\":{\"source\":\"apache\",\"extensions\":[\"vcs\"]},\"text/x-vcard\":{\"source\":\"apache\",\"extensions\":[\"vcf\"]},\"text/xml\":{\"source\":\"iana\",\"compressible\":true,\"extensions\":[\"xml\"]},\"text/xml-external-parsed-entity\":{\"source\":\"iana\"},\"text/yaml\":{\"extensions\":[\"yaml\",\"yml\"]},\"video/1d-interleaved-parityfec\":{\"source\":\"iana\"},\"video/3gpp\":{\"source\":\"iana\",\"extensions\":[\"3gp\",\"3gpp\"]},\"video/3gpp-tt\":{\"source\":\"iana\"},\"video/3gpp2\":{\"source\":\"iana\",\"extensions\":[\"3g2\"]},\"video/av1\":{\"source\":\"iana\"},\"video/bmpeg\":{\"source\":\"iana\"},\"video/bt656\":{\"source\":\"iana\"},\"video/celb\":{\"source\":\"iana\"},\"video/dv\":{\"source\":\"iana\"},\"video/encaprtp\":{\"source\":\"iana\"},\"video/ffv1\":{\"source\":\"iana\"},\"video/flexfec\":{\"source\":\"iana\"},\"video/h261\":{\"source\":\"iana\",\"extensions\":[\"h261\"]},\"video/h263\":{\"source\":\"iana\",\"extensions\":[\"h263\"]},\"video/h263-1998\":{\"source\":\"iana\"},\"video/h263-2000\":{\"source\":\"iana\"},\"video/h264\":{\"source\":\"iana\",\"extensions\":[\"h264\"]},\"video/h264-rcdo\":{\"source\":\"iana\"},\"video/h264-svc\":{\"source\":\"iana\"},\"video/h265\":{\"source\":\"iana\"},\"video/iso.segment\":{\"source\":\"iana\",\"extensions\":[\"m4s\"]},\"video/jpeg\":{\"source\":\"iana\",\"extensions\":[\"jpgv\"]},\"video/jpeg2000\":{\"source\":\"iana\"},\"video/jpm\":{\"source\":\"apache\",\"extensions\":[\"jpm\",\"jpgm\"]},\"video/mj2\":{\"source\":\"iana\",\"extensions\":[\"mj2\",\"mjp2\"]},\"video/mp1s\":{\"source\":\"iana\"},\"video/mp2p\":{\"source\":\"iana\"},\"video/mp2t\":{\"source\":\"iana\",\"extensions\":[\"ts\"]},\"video/mp4\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"mp4\",\"mp4v\",\"mpg4\"]},\"video/mp4v-es\":{\"source\":\"iana\"},\"video/mpeg\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"mpeg\",\"mpg\",\"mpe\",\"m1v\",\"m2v\"]},\"video/mpeg4-generic\":{\"source\":\"iana\"},\"video/mpv\":{\"source\":\"iana\"},\"video/nv\":{\"source\":\"iana\"},\"video/ogg\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"ogv\"]},\"video/parityfec\":{\"source\":\"iana\"},\"video/pointer\":{\"source\":\"iana\"},\"video/quicktime\":{\"source\":\"iana\",\"compressible\":false,\"extensions\":[\"qt\",\"mov\"]},\"video/raptorfec\":{\"source\":\"iana\"},\"video/raw\":{\"source\":\"iana\"},\"video/rtp-enc-aescm128\":{\"source\":\"iana\"},\"video/rtploopback\":{\"source\":\"iana\"},\"video/rtx\":{\"source\":\"iana\"},\"video/scip\":{\"source\":\"iana\"},\"video/smpte291\":{\"source\":\"iana\"},\"video/smpte292m\":{\"source\":\"iana\"},\"video/ulpfec\":{\"source\":\"iana\"},\"video/vc1\":{\"source\":\"iana\"},\"video/vc2\":{\"source\":\"iana\"},\"video/vnd.cctv\":{\"source\":\"iana\"},\"video/vnd.dece.hd\":{\"source\":\"iana\",\"extensions\":[\"uvh\",\"uvvh\"]},\"video/vnd.dece.mobile\":{\"source\":\"iana\",\"extensions\":[\"uvm\",\"uvvm\"]},\"video/vnd.dece.mp4\":{\"source\":\"iana\"},\"video/vnd.dece.pd\":{\"source\":\"iana\",\"extensions\":[\"uvp\",\"uvvp\"]},\"video/vnd.dece.sd\":{\"source\":\"iana\",\"extensions\":[\"uvs\",\"uvvs\"]},\"video/vnd.dece.video\":{\"source\":\"iana\",\"extensions\":[\"uvv\",\"uvvv\"]},\"video/vnd.directv.mpeg\":{\"source\":\"iana\"},\"video/vnd.directv.mpeg-tts\":{\"source\":\"iana\"},\"video/vnd.dlna.mpeg-tts\":{\"source\":\"iana\"},\"video/vnd.dvb.file\":{\"source\":\"iana\",\"extensions\":[\"dvb\"]},\"video/vnd.fvt\":{\"source\":\"iana\",\"extensions\":[\"fvt\"]},\"video/vnd.hns.video\":{\"source\":\"iana\"},\"video/vnd.iptvforum.1dparityfec-1010\":{\"source\":\"iana\"},\"video/vnd.iptvforum.1dparityfec-2005\":{\"source\":\"iana\"},\"video/vnd.iptvforum.2dparityfec-1010\":{\"source\":\"iana\"},\"video/vnd.iptvforum.2dparityfec-2005\":{\"source\":\"iana\"},\"video/vnd.iptvforum.ttsavc\":{\"source\":\"iana\"},\"video/vnd.iptvforum.ttsmpeg2\":{\"source\":\"iana\"},\"video/vnd.motorola.video\":{\"source\":\"iana\"},\"video/vnd.motorola.videop\":{\"source\":\"iana\"},\"video/vnd.mpegurl\":{\"source\":\"iana\",\"extensions\":[\"mxu\",\"m4u\"]},\"video/vnd.ms-playready.media.pyv\":{\"source\":\"iana\",\"extensions\":[\"pyv\"]},\"video/vnd.nokia.interleaved-multimedia\":{\"source\":\"iana\"},\"video/vnd.nokia.mp4vr\":{\"source\":\"iana\"},\"video/vnd.nokia.videovoip\":{\"source\":\"iana\"},\"video/vnd.objectvideo\":{\"source\":\"iana\"},\"video/vnd.radgamettools.bink\":{\"source\":\"iana\"},\"video/vnd.radgamettools.smacker\":{\"source\":\"iana\"},\"video/vnd.sealed.mpeg1\":{\"source\":\"iana\"},\"video/vnd.sealed.mpeg4\":{\"source\":\"iana\"},\"video/vnd.sealed.swf\":{\"source\":\"iana\"},\"video/vnd.sealedmedia.softseal.mov\":{\"source\":\"iana\"},\"video/vnd.uvvu.mp4\":{\"source\":\"iana\",\"extensions\":[\"uvu\",\"uvvu\"]},\"video/vnd.vivo\":{\"source\":\"iana\",\"extensions\":[\"viv\"]},\"video/vnd.youtube.yt\":{\"source\":\"iana\"},\"video/vp8\":{\"source\":\"iana\"},\"video/webm\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"webm\"]},\"video/x-f4v\":{\"source\":\"apache\",\"extensions\":[\"f4v\"]},\"video/x-fli\":{\"source\":\"apache\",\"extensions\":[\"fli\"]},\"video/x-flv\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"flv\"]},\"video/x-m4v\":{\"source\":\"apache\",\"extensions\":[\"m4v\"]},\"video/x-matroska\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"mkv\",\"mk3d\",\"mks\"]},\"video/x-mng\":{\"source\":\"apache\",\"extensions\":[\"mng\"]},\"video/x-ms-asf\":{\"source\":\"apache\",\"extensions\":[\"asf\",\"asx\"]},\"video/x-ms-vob\":{\"source\":\"apache\",\"extensions\":[\"vob\"]},\"video/x-ms-wm\":{\"source\":\"apache\",\"extensions\":[\"wm\"]},\"video/x-ms-wmv\":{\"source\":\"apache\",\"compressible\":false,\"extensions\":[\"wmv\"]},\"video/x-ms-wmx\":{\"source\":\"apache\",\"extensions\":[\"wmx\"]},\"video/x-ms-wvx\":{\"source\":\"apache\",\"extensions\":[\"wvx\"]},\"video/x-msvideo\":{\"source\":\"apache\",\"extensions\":[\"avi\"]},\"video/x-sgi-movie\":{\"source\":\"apache\",\"extensions\":[\"movie\"]},\"video/x-smv\":{\"source\":\"apache\",\"extensions\":[\"smv\"]},\"x-conference/x-cooltalk\":{\"source\":\"apache\",\"extensions\":[\"ice\"]},\"x-shader/x-fragment\":{\"compressible\":true},\"x-shader/x-vertex\":{\"compressible\":true}}");

/***/ }),

/***/ 76710:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("{\"name\":\"openid-client\",\"version\":\"3.15.10\",\"description\":\"OpenID Connect Relying Party (RP, Client) implementation for Node.js runtime, supports passportjs\",\"keywords\":[\"auth\",\"authentication\",\"basic\",\"certified\",\"client\",\"connect\",\"dynamic\",\"electron\",\"hybrid\",\"identity\",\"implicit\",\"oauth\",\"oauth2\",\"oidc\",\"openid\",\"passport\",\"relying party\",\"strategy\"],\"homepage\":\"https://github.com/panva/node-openid-client\",\"repository\":\"panva/node-openid-client\",\"license\":\"MIT\",\"author\":\"Filip Skokan <panva.ip@gmail.com>\",\"files\":[\"lib\",\"types/index.d.ts\"],\"funding\":{\"url\":\"https://github.com/sponsors/panva\"},\"main\":\"lib/index.js\",\"types\":\"types/index.d.ts\",\"scripts\":{\"coverage\":\"nyc mocha test/**/*.test.js\",\"lint\":\"eslint lib test\",\"lint-ts\":\"npx typescript@~3.6.0 --build types\",\"lint-fix\":\"eslint lib test --fix\",\"test\":\"mocha test/**/*.test.js\"},\"dependencies\":{\"@types/got\":\"^9.6.9\",\"base64url\":\"^3.0.1\",\"got\":\"^9.6.0\",\"jose\":\"^1.27.1\",\"lru-cache\":\"^6.0.0\",\"make-error\":\"^1.3.6\",\"object-hash\":\"^2.0.1\",\"oidc-token-hash\":\"^5.0.0\",\"p-any\":\"^3.0.0\"},\"devDependencies\":{\"@commitlint/cli\":\"^9.1.1\",\"@commitlint/config-conventional\":\"^9.1.1\",\"@types/passport\":\"^1.0.4\",\"chai\":\"^4.2.0\",\"eslint\":\"^7.4.0\",\"eslint-config-airbnb-base\":\"^14.2.0\",\"eslint-plugin-import\":\"^2.21.2\",\"husky\":\"^4.0.0\",\"mocha\":\"^8.0.1\",\"nock\":\"^13.0.2\",\"nyc\":\"^15.1.0\",\"readable-mock-req\":\"^0.2.2\",\"sinon\":\"^9.0.0\",\"timekeeper\":\"^2.2.0\"},\"engines\":{\"node\":\"^10.13.0 || >=12.0.0\"},\"commitlint\":{\"extends\":[\"@commitlint/config-conventional\"]},\"husky\":{\"hooks\":{\"commit-msg\":\"commitlint -E HUSKY_GIT_PARAMS\"}},\"nyc\":{\"reporter\":[\"lcov\",\"text-summary\"]},\"standard-version\":{\"scripts\":{\"postchangelog\":\"sed -i '' -e 's/### \\\\[/## [/g' CHANGELOG.md\"}}}");

/***/ }),

/***/ 2156:
/***/ ((module) => {

"use strict";
module.exports = JSON.parse("[\"ac\",\"com.ac\",\"edu.ac\",\"gov.ac\",\"net.ac\",\"mil.ac\",\"org.ac\",\"ad\",\"nom.ad\",\"ae\",\"co.ae\",\"net.ae\",\"org.ae\",\"sch.ae\",\"ac.ae\",\"gov.ae\",\"mil.ae\",\"aero\",\"accident-investigation.aero\",\"accident-prevention.aero\",\"aerobatic.aero\",\"aeroclub.aero\",\"aerodrome.aero\",\"agents.aero\",\"aircraft.aero\",\"airline.aero\",\"airport.aero\",\"air-surveillance.aero\",\"airtraffic.aero\",\"air-traffic-control.aero\",\"ambulance.aero\",\"amusement.aero\",\"association.aero\",\"author.aero\",\"ballooning.aero\",\"broker.aero\",\"caa.aero\",\"cargo.aero\",\"catering.aero\",\"certification.aero\",\"championship.aero\",\"charter.aero\",\"civilaviation.aero\",\"club.aero\",\"conference.aero\",\"consultant.aero\",\"consulting.aero\",\"control.aero\",\"council.aero\",\"crew.aero\",\"design.aero\",\"dgca.aero\",\"educator.aero\",\"emergency.aero\",\"engine.aero\",\"engineer.aero\",\"entertainment.aero\",\"equipment.aero\",\"exchange.aero\",\"express.aero\",\"federation.aero\",\"flight.aero\",\"freight.aero\",\"fuel.aero\",\"gliding.aero\",\"government.aero\",\"groundhandling.aero\",\"group.aero\",\"hanggliding.aero\",\"homebuilt.aero\",\"insurance.aero\",\"journal.aero\",\"journalist.aero\",\"leasing.aero\",\"logistics.aero\",\"magazine.aero\",\"maintenance.aero\",\"media.aero\",\"microlight.aero\",\"modelling.aero\",\"navigation.aero\",\"parachuting.aero\",\"paragliding.aero\",\"passenger-association.aero\",\"pilot.aero\",\"press.aero\",\"production.aero\",\"recreation.aero\",\"repbody.aero\",\"res.aero\",\"research.aero\",\"rotorcraft.aero\",\"safety.aero\",\"scientist.aero\",\"services.aero\",\"show.aero\",\"skydiving.aero\",\"software.aero\",\"student.aero\",\"trader.aero\",\"trading.aero\",\"trainer.aero\",\"union.aero\",\"workinggroup.aero\",\"works.aero\",\"af\",\"gov.af\",\"com.af\",\"org.af\",\"net.af\",\"edu.af\",\"ag\",\"com.ag\",\"org.ag\",\"net.ag\",\"co.ag\",\"nom.ag\",\"ai\",\"off.ai\",\"com.ai\",\"net.ai\",\"org.ai\",\"al\",\"com.al\",\"edu.al\",\"gov.al\",\"mil.al\",\"net.al\",\"org.al\",\"am\",\"co.am\",\"com.am\",\"commune.am\",\"net.am\",\"org.am\",\"ao\",\"ed.ao\",\"gv.ao\",\"og.ao\",\"co.ao\",\"pb.ao\",\"it.ao\",\"aq\",\"ar\",\"com.ar\",\"edu.ar\",\"gob.ar\",\"gov.ar\",\"int.ar\",\"mil.ar\",\"musica.ar\",\"net.ar\",\"org.ar\",\"tur.ar\",\"arpa\",\"e164.arpa\",\"in-addr.arpa\",\"ip6.arpa\",\"iris.arpa\",\"uri.arpa\",\"urn.arpa\",\"as\",\"gov.as\",\"asia\",\"at\",\"ac.at\",\"co.at\",\"gv.at\",\"or.at\",\"au\",\"com.au\",\"net.au\",\"org.au\",\"edu.au\",\"gov.au\",\"asn.au\",\"id.au\",\"info.au\",\"conf.au\",\"oz.au\",\"act.au\",\"nsw.au\",\"nt.au\",\"qld.au\",\"sa.au\",\"tas.au\",\"vic.au\",\"wa.au\",\"act.edu.au\",\"catholic.edu.au\",\"nsw.edu.au\",\"nt.edu.au\",\"qld.edu.au\",\"sa.edu.au\",\"tas.edu.au\",\"vic.edu.au\",\"wa.edu.au\",\"qld.gov.au\",\"sa.gov.au\",\"tas.gov.au\",\"vic.gov.au\",\"wa.gov.au\",\"education.tas.edu.au\",\"schools.nsw.edu.au\",\"aw\",\"com.aw\",\"ax\",\"az\",\"com.az\",\"net.az\",\"int.az\",\"gov.az\",\"org.az\",\"edu.az\",\"info.az\",\"pp.az\",\"mil.az\",\"name.az\",\"pro.az\",\"biz.az\",\"ba\",\"com.ba\",\"edu.ba\",\"gov.ba\",\"mil.ba\",\"net.ba\",\"org.ba\",\"bb\",\"biz.bb\",\"co.bb\",\"com.bb\",\"edu.bb\",\"gov.bb\",\"info.bb\",\"net.bb\",\"org.bb\",\"store.bb\",\"tv.bb\",\"*.bd\",\"be\",\"ac.be\",\"bf\",\"gov.bf\",\"bg\",\"a.bg\",\"b.bg\",\"c.bg\",\"d.bg\",\"e.bg\",\"f.bg\",\"g.bg\",\"h.bg\",\"i.bg\",\"j.bg\",\"k.bg\",\"l.bg\",\"m.bg\",\"n.bg\",\"o.bg\",\"p.bg\",\"q.bg\",\"r.bg\",\"s.bg\",\"t.bg\",\"u.bg\",\"v.bg\",\"w.bg\",\"x.bg\",\"y.bg\",\"z.bg\",\"0.bg\",\"1.bg\",\"2.bg\",\"3.bg\",\"4.bg\",\"5.bg\",\"6.bg\",\"7.bg\",\"8.bg\",\"9.bg\",\"bh\",\"com.bh\",\"edu.bh\",\"net.bh\",\"org.bh\",\"gov.bh\",\"bi\",\"co.bi\",\"com.bi\",\"edu.bi\",\"or.bi\",\"org.bi\",\"biz\",\"bj\",\"asso.bj\",\"barreau.bj\",\"gouv.bj\",\"bm\",\"com.bm\",\"edu.bm\",\"gov.bm\",\"net.bm\",\"org.bm\",\"bn\",\"com.bn\",\"edu.bn\",\"gov.bn\",\"net.bn\",\"org.bn\",\"bo\",\"com.bo\",\"edu.bo\",\"gob.bo\",\"int.bo\",\"org.bo\",\"net.bo\",\"mil.bo\",\"tv.bo\",\"web.bo\",\"academia.bo\",\"agro.bo\",\"arte.bo\",\"blog.bo\",\"bolivia.bo\",\"ciencia.bo\",\"cooperativa.bo\",\"democracia.bo\",\"deporte.bo\",\"ecologia.bo\",\"economia.bo\",\"empresa.bo\",\"indigena.bo\",\"industria.bo\",\"info.bo\",\"medicina.bo\",\"movimiento.bo\",\"musica.bo\",\"natural.bo\",\"nombre.bo\",\"noticias.bo\",\"patria.bo\",\"politica.bo\",\"profesional.bo\",\"plurinacional.bo\",\"pueblo.bo\",\"revista.bo\",\"salud.bo\",\"tecnologia.bo\",\"tksat.bo\",\"transporte.bo\",\"wiki.bo\",\"br\",\"9guacu.br\",\"abc.br\",\"adm.br\",\"adv.br\",\"agr.br\",\"aju.br\",\"am.br\",\"anani.br\",\"aparecida.br\",\"arq.br\",\"art.br\",\"ato.br\",\"b.br\",\"barueri.br\",\"belem.br\",\"bhz.br\",\"bio.br\",\"blog.br\",\"bmd.br\",\"boavista.br\",\"bsb.br\",\"campinagrande.br\",\"campinas.br\",\"caxias.br\",\"cim.br\",\"cng.br\",\"cnt.br\",\"com.br\",\"contagem.br\",\"coop.br\",\"cri.br\",\"cuiaba.br\",\"curitiba.br\",\"def.br\",\"ecn.br\",\"eco.br\",\"edu.br\",\"emp.br\",\"eng.br\",\"esp.br\",\"etc.br\",\"eti.br\",\"far.br\",\"feira.br\",\"flog.br\",\"floripa.br\",\"fm.br\",\"fnd.br\",\"fortal.br\",\"fot.br\",\"foz.br\",\"fst.br\",\"g12.br\",\"ggf.br\",\"goiania.br\",\"gov.br\",\"ac.gov.br\",\"al.gov.br\",\"am.gov.br\",\"ap.gov.br\",\"ba.gov.br\",\"ce.gov.br\",\"df.gov.br\",\"es.gov.br\",\"go.gov.br\",\"ma.gov.br\",\"mg.gov.br\",\"ms.gov.br\",\"mt.gov.br\",\"pa.gov.br\",\"pb.gov.br\",\"pe.gov.br\",\"pi.gov.br\",\"pr.gov.br\",\"rj.gov.br\",\"rn.gov.br\",\"ro.gov.br\",\"rr.gov.br\",\"rs.gov.br\",\"sc.gov.br\",\"se.gov.br\",\"sp.gov.br\",\"to.gov.br\",\"gru.br\",\"imb.br\",\"ind.br\",\"inf.br\",\"jab.br\",\"jampa.br\",\"jdf.br\",\"joinville.br\",\"jor.br\",\"jus.br\",\"leg.br\",\"lel.br\",\"londrina.br\",\"macapa.br\",\"maceio.br\",\"manaus.br\",\"maringa.br\",\"mat.br\",\"med.br\",\"mil.br\",\"morena.br\",\"mp.br\",\"mus.br\",\"natal.br\",\"net.br\",\"niteroi.br\",\"*.nom.br\",\"not.br\",\"ntr.br\",\"odo.br\",\"ong.br\",\"org.br\",\"osasco.br\",\"palmas.br\",\"poa.br\",\"ppg.br\",\"pro.br\",\"psc.br\",\"psi.br\",\"pvh.br\",\"qsl.br\",\"radio.br\",\"rec.br\",\"recife.br\",\"ribeirao.br\",\"rio.br\",\"riobranco.br\",\"riopreto.br\",\"salvador.br\",\"sampa.br\",\"santamaria.br\",\"santoandre.br\",\"saobernardo.br\",\"saogonca.br\",\"sjc.br\",\"slg.br\",\"slz.br\",\"sorocaba.br\",\"srv.br\",\"taxi.br\",\"tc.br\",\"teo.br\",\"the.br\",\"tmp.br\",\"trd.br\",\"tur.br\",\"tv.br\",\"udi.br\",\"vet.br\",\"vix.br\",\"vlog.br\",\"wiki.br\",\"zlg.br\",\"bs\",\"com.bs\",\"net.bs\",\"org.bs\",\"edu.bs\",\"gov.bs\",\"bt\",\"com.bt\",\"edu.bt\",\"gov.bt\",\"net.bt\",\"org.bt\",\"bv\",\"bw\",\"co.bw\",\"org.bw\",\"by\",\"gov.by\",\"mil.by\",\"com.by\",\"of.by\",\"bz\",\"com.bz\",\"net.bz\",\"org.bz\",\"edu.bz\",\"gov.bz\",\"ca\",\"ab.ca\",\"bc.ca\",\"mb.ca\",\"nb.ca\",\"nf.ca\",\"nl.ca\",\"ns.ca\",\"nt.ca\",\"nu.ca\",\"on.ca\",\"pe.ca\",\"qc.ca\",\"sk.ca\",\"yk.ca\",\"gc.ca\",\"cat\",\"cc\",\"cd\",\"gov.cd\",\"cf\",\"cg\",\"ch\",\"ci\",\"org.ci\",\"or.ci\",\"com.ci\",\"co.ci\",\"edu.ci\",\"ed.ci\",\"ac.ci\",\"net.ci\",\"go.ci\",\"asso.ci\",\"aéroport.ci\",\"int.ci\",\"presse.ci\",\"md.ci\",\"gouv.ci\",\"*.ck\",\"!www.ck\",\"cl\",\"aprendemas.cl\",\"co.cl\",\"gob.cl\",\"gov.cl\",\"mil.cl\",\"cm\",\"co.cm\",\"com.cm\",\"gov.cm\",\"net.cm\",\"cn\",\"ac.cn\",\"com.cn\",\"edu.cn\",\"gov.cn\",\"net.cn\",\"org.cn\",\"mil.cn\",\"公司.cn\",\"网络.cn\",\"網絡.cn\",\"ah.cn\",\"bj.cn\",\"cq.cn\",\"fj.cn\",\"gd.cn\",\"gs.cn\",\"gz.cn\",\"gx.cn\",\"ha.cn\",\"hb.cn\",\"he.cn\",\"hi.cn\",\"hl.cn\",\"hn.cn\",\"jl.cn\",\"js.cn\",\"jx.cn\",\"ln.cn\",\"nm.cn\",\"nx.cn\",\"qh.cn\",\"sc.cn\",\"sd.cn\",\"sh.cn\",\"sn.cn\",\"sx.cn\",\"tj.cn\",\"xj.cn\",\"xz.cn\",\"yn.cn\",\"zj.cn\",\"hk.cn\",\"mo.cn\",\"tw.cn\",\"co\",\"arts.co\",\"com.co\",\"edu.co\",\"firm.co\",\"gov.co\",\"info.co\",\"int.co\",\"mil.co\",\"net.co\",\"nom.co\",\"org.co\",\"rec.co\",\"web.co\",\"com\",\"coop\",\"cr\",\"ac.cr\",\"co.cr\",\"ed.cr\",\"fi.cr\",\"go.cr\",\"or.cr\",\"sa.cr\",\"cu\",\"com.cu\",\"edu.cu\",\"org.cu\",\"net.cu\",\"gov.cu\",\"inf.cu\",\"cv\",\"cw\",\"com.cw\",\"edu.cw\",\"net.cw\",\"org.cw\",\"cx\",\"gov.cx\",\"cy\",\"ac.cy\",\"biz.cy\",\"com.cy\",\"ekloges.cy\",\"gov.cy\",\"ltd.cy\",\"name.cy\",\"net.cy\",\"org.cy\",\"parliament.cy\",\"press.cy\",\"pro.cy\",\"tm.cy\",\"cz\",\"de\",\"dj\",\"dk\",\"dm\",\"com.dm\",\"net.dm\",\"org.dm\",\"edu.dm\",\"gov.dm\",\"do\",\"art.do\",\"com.do\",\"edu.do\",\"gob.do\",\"gov.do\",\"mil.do\",\"net.do\",\"org.do\",\"sld.do\",\"web.do\",\"dz\",\"com.dz\",\"org.dz\",\"net.dz\",\"gov.dz\",\"edu.dz\",\"asso.dz\",\"pol.dz\",\"art.dz\",\"ec\",\"com.ec\",\"info.ec\",\"net.ec\",\"fin.ec\",\"k12.ec\",\"med.ec\",\"pro.ec\",\"org.ec\",\"edu.ec\",\"gov.ec\",\"gob.ec\",\"mil.ec\",\"edu\",\"ee\",\"edu.ee\",\"gov.ee\",\"riik.ee\",\"lib.ee\",\"med.ee\",\"com.ee\",\"pri.ee\",\"aip.ee\",\"org.ee\",\"fie.ee\",\"eg\",\"com.eg\",\"edu.eg\",\"eun.eg\",\"gov.eg\",\"mil.eg\",\"name.eg\",\"net.eg\",\"org.eg\",\"sci.eg\",\"*.er\",\"es\",\"com.es\",\"nom.es\",\"org.es\",\"gob.es\",\"edu.es\",\"et\",\"com.et\",\"gov.et\",\"org.et\",\"edu.et\",\"biz.et\",\"name.et\",\"info.et\",\"net.et\",\"eu\",\"fi\",\"aland.fi\",\"fj\",\"ac.fj\",\"biz.fj\",\"com.fj\",\"gov.fj\",\"info.fj\",\"mil.fj\",\"name.fj\",\"net.fj\",\"org.fj\",\"pro.fj\",\"*.fk\",\"fm\",\"fo\",\"fr\",\"asso.fr\",\"com.fr\",\"gouv.fr\",\"nom.fr\",\"prd.fr\",\"tm.fr\",\"aeroport.fr\",\"avocat.fr\",\"avoues.fr\",\"cci.fr\",\"chambagri.fr\",\"chirurgiens-dentistes.fr\",\"experts-comptables.fr\",\"geometre-expert.fr\",\"greta.fr\",\"huissier-justice.fr\",\"medecin.fr\",\"notaires.fr\",\"pharmacien.fr\",\"port.fr\",\"veterinaire.fr\",\"ga\",\"gb\",\"gd\",\"ge\",\"com.ge\",\"edu.ge\",\"gov.ge\",\"org.ge\",\"mil.ge\",\"net.ge\",\"pvt.ge\",\"gf\",\"gg\",\"co.gg\",\"net.gg\",\"org.gg\",\"gh\",\"com.gh\",\"edu.gh\",\"gov.gh\",\"org.gh\",\"mil.gh\",\"gi\",\"com.gi\",\"ltd.gi\",\"gov.gi\",\"mod.gi\",\"edu.gi\",\"org.gi\",\"gl\",\"co.gl\",\"com.gl\",\"edu.gl\",\"net.gl\",\"org.gl\",\"gm\",\"gn\",\"ac.gn\",\"com.gn\",\"edu.gn\",\"gov.gn\",\"org.gn\",\"net.gn\",\"gov\",\"gp\",\"com.gp\",\"net.gp\",\"mobi.gp\",\"edu.gp\",\"org.gp\",\"asso.gp\",\"gq\",\"gr\",\"com.gr\",\"edu.gr\",\"net.gr\",\"org.gr\",\"gov.gr\",\"gs\",\"gt\",\"com.gt\",\"edu.gt\",\"gob.gt\",\"ind.gt\",\"mil.gt\",\"net.gt\",\"org.gt\",\"gu\",\"com.gu\",\"edu.gu\",\"gov.gu\",\"guam.gu\",\"info.gu\",\"net.gu\",\"org.gu\",\"web.gu\",\"gw\",\"gy\",\"co.gy\",\"com.gy\",\"edu.gy\",\"gov.gy\",\"net.gy\",\"org.gy\",\"hk\",\"com.hk\",\"edu.hk\",\"gov.hk\",\"idv.hk\",\"net.hk\",\"org.hk\",\"公司.hk\",\"教育.hk\",\"敎育.hk\",\"政府.hk\",\"個人.hk\",\"个人.hk\",\"箇人.hk\",\"網络.hk\",\"网络.hk\",\"组織.hk\",\"網絡.hk\",\"网絡.hk\",\"组织.hk\",\"組織.hk\",\"組织.hk\",\"hm\",\"hn\",\"com.hn\",\"edu.hn\",\"org.hn\",\"net.hn\",\"mil.hn\",\"gob.hn\",\"hr\",\"iz.hr\",\"from.hr\",\"name.hr\",\"com.hr\",\"ht\",\"com.ht\",\"shop.ht\",\"firm.ht\",\"info.ht\",\"adult.ht\",\"net.ht\",\"pro.ht\",\"org.ht\",\"med.ht\",\"art.ht\",\"coop.ht\",\"pol.ht\",\"asso.ht\",\"edu.ht\",\"rel.ht\",\"gouv.ht\",\"perso.ht\",\"hu\",\"co.hu\",\"info.hu\",\"org.hu\",\"priv.hu\",\"sport.hu\",\"tm.hu\",\"2000.hu\",\"agrar.hu\",\"bolt.hu\",\"casino.hu\",\"city.hu\",\"erotica.hu\",\"erotika.hu\",\"film.hu\",\"forum.hu\",\"games.hu\",\"hotel.hu\",\"ingatlan.hu\",\"jogasz.hu\",\"konyvelo.hu\",\"lakas.hu\",\"media.hu\",\"news.hu\",\"reklam.hu\",\"sex.hu\",\"shop.hu\",\"suli.hu\",\"szex.hu\",\"tozsde.hu\",\"utazas.hu\",\"video.hu\",\"id\",\"ac.id\",\"biz.id\",\"co.id\",\"desa.id\",\"go.id\",\"mil.id\",\"my.id\",\"net.id\",\"or.id\",\"ponpes.id\",\"sch.id\",\"web.id\",\"ie\",\"gov.ie\",\"il\",\"ac.il\",\"co.il\",\"gov.il\",\"idf.il\",\"k12.il\",\"muni.il\",\"net.il\",\"org.il\",\"im\",\"ac.im\",\"co.im\",\"com.im\",\"ltd.co.im\",\"net.im\",\"org.im\",\"plc.co.im\",\"tt.im\",\"tv.im\",\"in\",\"co.in\",\"firm.in\",\"net.in\",\"org.in\",\"gen.in\",\"ind.in\",\"nic.in\",\"ac.in\",\"edu.in\",\"res.in\",\"gov.in\",\"mil.in\",\"info\",\"int\",\"eu.int\",\"io\",\"com.io\",\"iq\",\"gov.iq\",\"edu.iq\",\"mil.iq\",\"com.iq\",\"org.iq\",\"net.iq\",\"ir\",\"ac.ir\",\"co.ir\",\"gov.ir\",\"id.ir\",\"net.ir\",\"org.ir\",\"sch.ir\",\"ایران.ir\",\"ايران.ir\",\"is\",\"net.is\",\"com.is\",\"edu.is\",\"gov.is\",\"org.is\",\"int.is\",\"it\",\"gov.it\",\"edu.it\",\"abr.it\",\"abruzzo.it\",\"aosta-valley.it\",\"aostavalley.it\",\"bas.it\",\"basilicata.it\",\"cal.it\",\"calabria.it\",\"cam.it\",\"campania.it\",\"emilia-romagna.it\",\"emiliaromagna.it\",\"emr.it\",\"friuli-v-giulia.it\",\"friuli-ve-giulia.it\",\"friuli-vegiulia.it\",\"friuli-venezia-giulia.it\",\"friuli-veneziagiulia.it\",\"friuli-vgiulia.it\",\"friuliv-giulia.it\",\"friulive-giulia.it\",\"friulivegiulia.it\",\"friulivenezia-giulia.it\",\"friuliveneziagiulia.it\",\"friulivgiulia.it\",\"fvg.it\",\"laz.it\",\"lazio.it\",\"lig.it\",\"liguria.it\",\"lom.it\",\"lombardia.it\",\"lombardy.it\",\"lucania.it\",\"mar.it\",\"marche.it\",\"mol.it\",\"molise.it\",\"piedmont.it\",\"piemonte.it\",\"pmn.it\",\"pug.it\",\"puglia.it\",\"sar.it\",\"sardegna.it\",\"sardinia.it\",\"sic.it\",\"sicilia.it\",\"sicily.it\",\"taa.it\",\"tos.it\",\"toscana.it\",\"trentin-sud-tirol.it\",\"trentin-süd-tirol.it\",\"trentin-sudtirol.it\",\"trentin-südtirol.it\",\"trentin-sued-tirol.it\",\"trentin-suedtirol.it\",\"trentino-a-adige.it\",\"trentino-aadige.it\",\"trentino-alto-adige.it\",\"trentino-altoadige.it\",\"trentino-s-tirol.it\",\"trentino-stirol.it\",\"trentino-sud-tirol.it\",\"trentino-süd-tirol.it\",\"trentino-sudtirol.it\",\"trentino-südtirol.it\",\"trentino-sued-tirol.it\",\"trentino-suedtirol.it\",\"trentino.it\",\"trentinoa-adige.it\",\"trentinoaadige.it\",\"trentinoalto-adige.it\",\"trentinoaltoadige.it\",\"trentinos-tirol.it\",\"trentinostirol.it\",\"trentinosud-tirol.it\",\"trentinosüd-tirol.it\",\"trentinosudtirol.it\",\"trentinosüdtirol.it\",\"trentinosued-tirol.it\",\"trentinosuedtirol.it\",\"trentinsud-tirol.it\",\"trentinsüd-tirol.it\",\"trentinsudtirol.it\",\"trentinsüdtirol.it\",\"trentinsued-tirol.it\",\"trentinsuedtirol.it\",\"tuscany.it\",\"umb.it\",\"umbria.it\",\"val-d-aosta.it\",\"val-daosta.it\",\"vald-aosta.it\",\"valdaosta.it\",\"valle-aosta.it\",\"valle-d-aosta.it\",\"valle-daosta.it\",\"valleaosta.it\",\"valled-aosta.it\",\"valledaosta.it\",\"vallee-aoste.it\",\"vallée-aoste.it\",\"vallee-d-aoste.it\",\"vallée-d-aoste.it\",\"valleeaoste.it\",\"valléeaoste.it\",\"valleedaoste.it\",\"valléedaoste.it\",\"vao.it\",\"vda.it\",\"ven.it\",\"veneto.it\",\"ag.it\",\"agrigento.it\",\"al.it\",\"alessandria.it\",\"alto-adige.it\",\"altoadige.it\",\"an.it\",\"ancona.it\",\"andria-barletta-trani.it\",\"andria-trani-barletta.it\",\"andriabarlettatrani.it\",\"andriatranibarletta.it\",\"ao.it\",\"aosta.it\",\"aoste.it\",\"ap.it\",\"aq.it\",\"aquila.it\",\"ar.it\",\"arezzo.it\",\"ascoli-piceno.it\",\"ascolipiceno.it\",\"asti.it\",\"at.it\",\"av.it\",\"avellino.it\",\"ba.it\",\"balsan-sudtirol.it\",\"balsan-südtirol.it\",\"balsan-suedtirol.it\",\"balsan.it\",\"bari.it\",\"barletta-trani-andria.it\",\"barlettatraniandria.it\",\"belluno.it\",\"benevento.it\",\"bergamo.it\",\"bg.it\",\"bi.it\",\"biella.it\",\"bl.it\",\"bn.it\",\"bo.it\",\"bologna.it\",\"bolzano-altoadige.it\",\"bolzano.it\",\"bozen-sudtirol.it\",\"bozen-südtirol.it\",\"bozen-suedtirol.it\",\"bozen.it\",\"br.it\",\"brescia.it\",\"brindisi.it\",\"bs.it\",\"bt.it\",\"bulsan-sudtirol.it\",\"bulsan-südtirol.it\",\"bulsan-suedtirol.it\",\"bulsan.it\",\"bz.it\",\"ca.it\",\"cagliari.it\",\"caltanissetta.it\",\"campidano-medio.it\",\"campidanomedio.it\",\"campobasso.it\",\"carbonia-iglesias.it\",\"carboniaiglesias.it\",\"carrara-massa.it\",\"carraramassa.it\",\"caserta.it\",\"catania.it\",\"catanzaro.it\",\"cb.it\",\"ce.it\",\"cesena-forli.it\",\"cesena-forlì.it\",\"cesenaforli.it\",\"cesenaforlì.it\",\"ch.it\",\"chieti.it\",\"ci.it\",\"cl.it\",\"cn.it\",\"co.it\",\"como.it\",\"cosenza.it\",\"cr.it\",\"cremona.it\",\"crotone.it\",\"cs.it\",\"ct.it\",\"cuneo.it\",\"cz.it\",\"dell-ogliastra.it\",\"dellogliastra.it\",\"en.it\",\"enna.it\",\"fc.it\",\"fe.it\",\"fermo.it\",\"ferrara.it\",\"fg.it\",\"fi.it\",\"firenze.it\",\"florence.it\",\"fm.it\",\"foggia.it\",\"forli-cesena.it\",\"forlì-cesena.it\",\"forlicesena.it\",\"forlìcesena.it\",\"fr.it\",\"frosinone.it\",\"ge.it\",\"genoa.it\",\"genova.it\",\"go.it\",\"gorizia.it\",\"gr.it\",\"grosseto.it\",\"iglesias-carbonia.it\",\"iglesiascarbonia.it\",\"im.it\",\"imperia.it\",\"is.it\",\"isernia.it\",\"kr.it\",\"la-spezia.it\",\"laquila.it\",\"laspezia.it\",\"latina.it\",\"lc.it\",\"le.it\",\"lecce.it\",\"lecco.it\",\"li.it\",\"livorno.it\",\"lo.it\",\"lodi.it\",\"lt.it\",\"lu.it\",\"lucca.it\",\"macerata.it\",\"mantova.it\",\"massa-carrara.it\",\"massacarrara.it\",\"matera.it\",\"mb.it\",\"mc.it\",\"me.it\",\"medio-campidano.it\",\"mediocampidano.it\",\"messina.it\",\"mi.it\",\"milan.it\",\"milano.it\",\"mn.it\",\"mo.it\",\"modena.it\",\"monza-brianza.it\",\"monza-e-della-brianza.it\",\"monza.it\",\"monzabrianza.it\",\"monzaebrianza.it\",\"monzaedellabrianza.it\",\"ms.it\",\"mt.it\",\"na.it\",\"naples.it\",\"napoli.it\",\"no.it\",\"novara.it\",\"nu.it\",\"nuoro.it\",\"og.it\",\"ogliastra.it\",\"olbia-tempio.it\",\"olbiatempio.it\",\"or.it\",\"oristano.it\",\"ot.it\",\"pa.it\",\"padova.it\",\"padua.it\",\"palermo.it\",\"parma.it\",\"pavia.it\",\"pc.it\",\"pd.it\",\"pe.it\",\"perugia.it\",\"pesaro-urbino.it\",\"pesarourbino.it\",\"pescara.it\",\"pg.it\",\"pi.it\",\"piacenza.it\",\"pisa.it\",\"pistoia.it\",\"pn.it\",\"po.it\",\"pordenone.it\",\"potenza.it\",\"pr.it\",\"prato.it\",\"pt.it\",\"pu.it\",\"pv.it\",\"pz.it\",\"ra.it\",\"ragusa.it\",\"ravenna.it\",\"rc.it\",\"re.it\",\"reggio-calabria.it\",\"reggio-emilia.it\",\"reggiocalabria.it\",\"reggioemilia.it\",\"rg.it\",\"ri.it\",\"rieti.it\",\"rimini.it\",\"rm.it\",\"rn.it\",\"ro.it\",\"roma.it\",\"rome.it\",\"rovigo.it\",\"sa.it\",\"salerno.it\",\"sassari.it\",\"savona.it\",\"si.it\",\"siena.it\",\"siracusa.it\",\"so.it\",\"sondrio.it\",\"sp.it\",\"sr.it\",\"ss.it\",\"suedtirol.it\",\"südtirol.it\",\"sv.it\",\"ta.it\",\"taranto.it\",\"te.it\",\"tempio-olbia.it\",\"tempioolbia.it\",\"teramo.it\",\"terni.it\",\"tn.it\",\"to.it\",\"torino.it\",\"tp.it\",\"tr.it\",\"trani-andria-barletta.it\",\"trani-barletta-andria.it\",\"traniandriabarletta.it\",\"tranibarlettaandria.it\",\"trapani.it\",\"trento.it\",\"treviso.it\",\"trieste.it\",\"ts.it\",\"turin.it\",\"tv.it\",\"ud.it\",\"udine.it\",\"urbino-pesaro.it\",\"urbinopesaro.it\",\"va.it\",\"varese.it\",\"vb.it\",\"vc.it\",\"ve.it\",\"venezia.it\",\"venice.it\",\"verbania.it\",\"vercelli.it\",\"verona.it\",\"vi.it\",\"vibo-valentia.it\",\"vibovalentia.it\",\"vicenza.it\",\"viterbo.it\",\"vr.it\",\"vs.it\",\"vt.it\",\"vv.it\",\"je\",\"co.je\",\"net.je\",\"org.je\",\"*.jm\",\"jo\",\"com.jo\",\"org.jo\",\"net.jo\",\"edu.jo\",\"sch.jo\",\"gov.jo\",\"mil.jo\",\"name.jo\",\"jobs\",\"jp\",\"ac.jp\",\"ad.jp\",\"co.jp\",\"ed.jp\",\"go.jp\",\"gr.jp\",\"lg.jp\",\"ne.jp\",\"or.jp\",\"aichi.jp\",\"akita.jp\",\"aomori.jp\",\"chiba.jp\",\"ehime.jp\",\"fukui.jp\",\"fukuoka.jp\",\"fukushima.jp\",\"gifu.jp\",\"gunma.jp\",\"hiroshima.jp\",\"hokkaido.jp\",\"hyogo.jp\",\"ibaraki.jp\",\"ishikawa.jp\",\"iwate.jp\",\"kagawa.jp\",\"kagoshima.jp\",\"kanagawa.jp\",\"kochi.jp\",\"kumamoto.jp\",\"kyoto.jp\",\"mie.jp\",\"miyagi.jp\",\"miyazaki.jp\",\"nagano.jp\",\"nagasaki.jp\",\"nara.jp\",\"niigata.jp\",\"oita.jp\",\"okayama.jp\",\"okinawa.jp\",\"osaka.jp\",\"saga.jp\",\"saitama.jp\",\"shiga.jp\",\"shimane.jp\",\"shizuoka.jp\",\"tochigi.jp\",\"tokushima.jp\",\"tokyo.jp\",\"tottori.jp\",\"toyama.jp\",\"wakayama.jp\",\"yamagata.jp\",\"yamaguchi.jp\",\"yamanashi.jp\",\"栃木.jp\",\"愛知.jp\",\"愛媛.jp\",\"兵庫.jp\",\"熊本.jp\",\"茨城.jp\",\"北海道.jp\",\"千葉.jp\",\"和歌山.jp\",\"長崎.jp\",\"長野.jp\",\"新潟.jp\",\"青森.jp\",\"静岡.jp\",\"東京.jp\",\"石川.jp\",\"埼玉.jp\",\"三重.jp\",\"京都.jp\",\"佐賀.jp\",\"大分.jp\",\"大阪.jp\",\"奈良.jp\",\"宮城.jp\",\"宮崎.jp\",\"富山.jp\",\"山口.jp\",\"山形.jp\",\"山梨.jp\",\"岩手.jp\",\"岐阜.jp\",\"岡山.jp\",\"島根.jp\",\"広島.jp\",\"徳島.jp\",\"沖縄.jp\",\"滋賀.jp\",\"神奈川.jp\",\"福井.jp\",\"福岡.jp\",\"福島.jp\",\"秋田.jp\",\"群馬.jp\",\"香川.jp\",\"高知.jp\",\"鳥取.jp\",\"鹿児島.jp\",\"*.kawasaki.jp\",\"*.kitakyushu.jp\",\"*.kobe.jp\",\"*.nagoya.jp\",\"*.sapporo.jp\",\"*.sendai.jp\",\"*.yokohama.jp\",\"!city.kawasaki.jp\",\"!city.kitakyushu.jp\",\"!city.kobe.jp\",\"!city.nagoya.jp\",\"!city.sapporo.jp\",\"!city.sendai.jp\",\"!city.yokohama.jp\",\"aisai.aichi.jp\",\"ama.aichi.jp\",\"anjo.aichi.jp\",\"asuke.aichi.jp\",\"chiryu.aichi.jp\",\"chita.aichi.jp\",\"fuso.aichi.jp\",\"gamagori.aichi.jp\",\"handa.aichi.jp\",\"hazu.aichi.jp\",\"hekinan.aichi.jp\",\"higashiura.aichi.jp\",\"ichinomiya.aichi.jp\",\"inazawa.aichi.jp\",\"inuyama.aichi.jp\",\"isshiki.aichi.jp\",\"iwakura.aichi.jp\",\"kanie.aichi.jp\",\"kariya.aichi.jp\",\"kasugai.aichi.jp\",\"kira.aichi.jp\",\"kiyosu.aichi.jp\",\"komaki.aichi.jp\",\"konan.aichi.jp\",\"kota.aichi.jp\",\"mihama.aichi.jp\",\"miyoshi.aichi.jp\",\"nishio.aichi.jp\",\"nisshin.aichi.jp\",\"obu.aichi.jp\",\"oguchi.aichi.jp\",\"oharu.aichi.jp\",\"okazaki.aichi.jp\",\"owariasahi.aichi.jp\",\"seto.aichi.jp\",\"shikatsu.aichi.jp\",\"shinshiro.aichi.jp\",\"shitara.aichi.jp\",\"tahara.aichi.jp\",\"takahama.aichi.jp\",\"tobishima.aichi.jp\",\"toei.aichi.jp\",\"togo.aichi.jp\",\"tokai.aichi.jp\",\"tokoname.aichi.jp\",\"toyoake.aichi.jp\",\"toyohashi.aichi.jp\",\"toyokawa.aichi.jp\",\"toyone.aichi.jp\",\"toyota.aichi.jp\",\"tsushima.aichi.jp\",\"yatomi.aichi.jp\",\"akita.akita.jp\",\"daisen.akita.jp\",\"fujisato.akita.jp\",\"gojome.akita.jp\",\"hachirogata.akita.jp\",\"happou.akita.jp\",\"higashinaruse.akita.jp\",\"honjo.akita.jp\",\"honjyo.akita.jp\",\"ikawa.akita.jp\",\"kamikoani.akita.jp\",\"kamioka.akita.jp\",\"katagami.akita.jp\",\"kazuno.akita.jp\",\"kitaakita.akita.jp\",\"kosaka.akita.jp\",\"kyowa.akita.jp\",\"misato.akita.jp\",\"mitane.akita.jp\",\"moriyoshi.akita.jp\",\"nikaho.akita.jp\",\"noshiro.akita.jp\",\"odate.akita.jp\",\"oga.akita.jp\",\"ogata.akita.jp\",\"semboku.akita.jp\",\"yokote.akita.jp\",\"yurihonjo.akita.jp\",\"aomori.aomori.jp\",\"gonohe.aomori.jp\",\"hachinohe.aomori.jp\",\"hashikami.aomori.jp\",\"hiranai.aomori.jp\",\"hirosaki.aomori.jp\",\"itayanagi.aomori.jp\",\"kuroishi.aomori.jp\",\"misawa.aomori.jp\",\"mutsu.aomori.jp\",\"nakadomari.aomori.jp\",\"noheji.aomori.jp\",\"oirase.aomori.jp\",\"owani.aomori.jp\",\"rokunohe.aomori.jp\",\"sannohe.aomori.jp\",\"shichinohe.aomori.jp\",\"shingo.aomori.jp\",\"takko.aomori.jp\",\"towada.aomori.jp\",\"tsugaru.aomori.jp\",\"tsuruta.aomori.jp\",\"abiko.chiba.jp\",\"asahi.chiba.jp\",\"chonan.chiba.jp\",\"chosei.chiba.jp\",\"choshi.chiba.jp\",\"chuo.chiba.jp\",\"funabashi.chiba.jp\",\"futtsu.chiba.jp\",\"hanamigawa.chiba.jp\",\"ichihara.chiba.jp\",\"ichikawa.chiba.jp\",\"ichinomiya.chiba.jp\",\"inzai.chiba.jp\",\"isumi.chiba.jp\",\"kamagaya.chiba.jp\",\"kamogawa.chiba.jp\",\"kashiwa.chiba.jp\",\"katori.chiba.jp\",\"katsuura.chiba.jp\",\"kimitsu.chiba.jp\",\"kisarazu.chiba.jp\",\"kozaki.chiba.jp\",\"kujukuri.chiba.jp\",\"kyonan.chiba.jp\",\"matsudo.chiba.jp\",\"midori.chiba.jp\",\"mihama.chiba.jp\",\"minamiboso.chiba.jp\",\"mobara.chiba.jp\",\"mutsuzawa.chiba.jp\",\"nagara.chiba.jp\",\"nagareyama.chiba.jp\",\"narashino.chiba.jp\",\"narita.chiba.jp\",\"noda.chiba.jp\",\"oamishirasato.chiba.jp\",\"omigawa.chiba.jp\",\"onjuku.chiba.jp\",\"otaki.chiba.jp\",\"sakae.chiba.jp\",\"sakura.chiba.jp\",\"shimofusa.chiba.jp\",\"shirako.chiba.jp\",\"shiroi.chiba.jp\",\"shisui.chiba.jp\",\"sodegaura.chiba.jp\",\"sosa.chiba.jp\",\"tako.chiba.jp\",\"tateyama.chiba.jp\",\"togane.chiba.jp\",\"tohnosho.chiba.jp\",\"tomisato.chiba.jp\",\"urayasu.chiba.jp\",\"yachimata.chiba.jp\",\"yachiyo.chiba.jp\",\"yokaichiba.chiba.jp\",\"yokoshibahikari.chiba.jp\",\"yotsukaido.chiba.jp\",\"ainan.ehime.jp\",\"honai.ehime.jp\",\"ikata.ehime.jp\",\"imabari.ehime.jp\",\"iyo.ehime.jp\",\"kamijima.ehime.jp\",\"kihoku.ehime.jp\",\"kumakogen.ehime.jp\",\"masaki.ehime.jp\",\"matsuno.ehime.jp\",\"matsuyama.ehime.jp\",\"namikata.ehime.jp\",\"niihama.ehime.jp\",\"ozu.ehime.jp\",\"saijo.ehime.jp\",\"seiyo.ehime.jp\",\"shikokuchuo.ehime.jp\",\"tobe.ehime.jp\",\"toon.ehime.jp\",\"uchiko.ehime.jp\",\"uwajima.ehime.jp\",\"yawatahama.ehime.jp\",\"echizen.fukui.jp\",\"eiheiji.fukui.jp\",\"fukui.fukui.jp\",\"ikeda.fukui.jp\",\"katsuyama.fukui.jp\",\"mihama.fukui.jp\",\"minamiechizen.fukui.jp\",\"obama.fukui.jp\",\"ohi.fukui.jp\",\"ono.fukui.jp\",\"sabae.fukui.jp\",\"sakai.fukui.jp\",\"takahama.fukui.jp\",\"tsuruga.fukui.jp\",\"wakasa.fukui.jp\",\"ashiya.fukuoka.jp\",\"buzen.fukuoka.jp\",\"chikugo.fukuoka.jp\",\"chikuho.fukuoka.jp\",\"chikujo.fukuoka.jp\",\"chikushino.fukuoka.jp\",\"chikuzen.fukuoka.jp\",\"chuo.fukuoka.jp\",\"dazaifu.fukuoka.jp\",\"fukuchi.fukuoka.jp\",\"hakata.fukuoka.jp\",\"higashi.fukuoka.jp\",\"hirokawa.fukuoka.jp\",\"hisayama.fukuoka.jp\",\"iizuka.fukuoka.jp\",\"inatsuki.fukuoka.jp\",\"kaho.fukuoka.jp\",\"kasuga.fukuoka.jp\",\"kasuya.fukuoka.jp\",\"kawara.fukuoka.jp\",\"keisen.fukuoka.jp\",\"koga.fukuoka.jp\",\"kurate.fukuoka.jp\",\"kurogi.fukuoka.jp\",\"kurume.fukuoka.jp\",\"minami.fukuoka.jp\",\"miyako.fukuoka.jp\",\"miyama.fukuoka.jp\",\"miyawaka.fukuoka.jp\",\"mizumaki.fukuoka.jp\",\"munakata.fukuoka.jp\",\"nakagawa.fukuoka.jp\",\"nakama.fukuoka.jp\",\"nishi.fukuoka.jp\",\"nogata.fukuoka.jp\",\"ogori.fukuoka.jp\",\"okagaki.fukuoka.jp\",\"okawa.fukuoka.jp\",\"oki.fukuoka.jp\",\"omuta.fukuoka.jp\",\"onga.fukuoka.jp\",\"onojo.fukuoka.jp\",\"oto.fukuoka.jp\",\"saigawa.fukuoka.jp\",\"sasaguri.fukuoka.jp\",\"shingu.fukuoka.jp\",\"shinyoshitomi.fukuoka.jp\",\"shonai.fukuoka.jp\",\"soeda.fukuoka.jp\",\"sue.fukuoka.jp\",\"tachiarai.fukuoka.jp\",\"tagawa.fukuoka.jp\",\"takata.fukuoka.jp\",\"toho.fukuoka.jp\",\"toyotsu.fukuoka.jp\",\"tsuiki.fukuoka.jp\",\"ukiha.fukuoka.jp\",\"umi.fukuoka.jp\",\"usui.fukuoka.jp\",\"yamada.fukuoka.jp\",\"yame.fukuoka.jp\",\"yanagawa.fukuoka.jp\",\"yukuhashi.fukuoka.jp\",\"aizubange.fukushima.jp\",\"aizumisato.fukushima.jp\",\"aizuwakamatsu.fukushima.jp\",\"asakawa.fukushima.jp\",\"bandai.fukushima.jp\",\"date.fukushima.jp\",\"fukushima.fukushima.jp\",\"furudono.fukushima.jp\",\"futaba.fukushima.jp\",\"hanawa.fukushima.jp\",\"higashi.fukushima.jp\",\"hirata.fukushima.jp\",\"hirono.fukushima.jp\",\"iitate.fukushima.jp\",\"inawashiro.fukushima.jp\",\"ishikawa.fukushima.jp\",\"iwaki.fukushima.jp\",\"izumizaki.fukushima.jp\",\"kagamiishi.fukushima.jp\",\"kaneyama.fukushima.jp\",\"kawamata.fukushima.jp\",\"kitakata.fukushima.jp\",\"kitashiobara.fukushima.jp\",\"koori.fukushima.jp\",\"koriyama.fukushima.jp\",\"kunimi.fukushima.jp\",\"miharu.fukushima.jp\",\"mishima.fukushima.jp\",\"namie.fukushima.jp\",\"nango.fukushima.jp\",\"nishiaizu.fukushima.jp\",\"nishigo.fukushima.jp\",\"okuma.fukushima.jp\",\"omotego.fukushima.jp\",\"ono.fukushima.jp\",\"otama.fukushima.jp\",\"samegawa.fukushima.jp\",\"shimogo.fukushima.jp\",\"shirakawa.fukushima.jp\",\"showa.fukushima.jp\",\"soma.fukushima.jp\",\"sukagawa.fukushima.jp\",\"taishin.fukushima.jp\",\"tamakawa.fukushima.jp\",\"tanagura.fukushima.jp\",\"tenei.fukushima.jp\",\"yabuki.fukushima.jp\",\"yamato.fukushima.jp\",\"yamatsuri.fukushima.jp\",\"yanaizu.fukushima.jp\",\"yugawa.fukushima.jp\",\"anpachi.gifu.jp\",\"ena.gifu.jp\",\"gifu.gifu.jp\",\"ginan.gifu.jp\",\"godo.gifu.jp\",\"gujo.gifu.jp\",\"hashima.gifu.jp\",\"hichiso.gifu.jp\",\"hida.gifu.jp\",\"higashishirakawa.gifu.jp\",\"ibigawa.gifu.jp\",\"ikeda.gifu.jp\",\"kakamigahara.gifu.jp\",\"kani.gifu.jp\",\"kasahara.gifu.jp\",\"kasamatsu.gifu.jp\",\"kawaue.gifu.jp\",\"kitagata.gifu.jp\",\"mino.gifu.jp\",\"minokamo.gifu.jp\",\"mitake.gifu.jp\",\"mizunami.gifu.jp\",\"motosu.gifu.jp\",\"nakatsugawa.gifu.jp\",\"ogaki.gifu.jp\",\"sakahogi.gifu.jp\",\"seki.gifu.jp\",\"sekigahara.gifu.jp\",\"shirakawa.gifu.jp\",\"tajimi.gifu.jp\",\"takayama.gifu.jp\",\"tarui.gifu.jp\",\"toki.gifu.jp\",\"tomika.gifu.jp\",\"wanouchi.gifu.jp\",\"yamagata.gifu.jp\",\"yaotsu.gifu.jp\",\"yoro.gifu.jp\",\"annaka.gunma.jp\",\"chiyoda.gunma.jp\",\"fujioka.gunma.jp\",\"higashiagatsuma.gunma.jp\",\"isesaki.gunma.jp\",\"itakura.gunma.jp\",\"kanna.gunma.jp\",\"kanra.gunma.jp\",\"katashina.gunma.jp\",\"kawaba.gunma.jp\",\"kiryu.gunma.jp\",\"kusatsu.gunma.jp\",\"maebashi.gunma.jp\",\"meiwa.gunma.jp\",\"midori.gunma.jp\",\"minakami.gunma.jp\",\"naganohara.gunma.jp\",\"nakanojo.gunma.jp\",\"nanmoku.gunma.jp\",\"numata.gunma.jp\",\"oizumi.gunma.jp\",\"ora.gunma.jp\",\"ota.gunma.jp\",\"shibukawa.gunma.jp\",\"shimonita.gunma.jp\",\"shinto.gunma.jp\",\"showa.gunma.jp\",\"takasaki.gunma.jp\",\"takayama.gunma.jp\",\"tamamura.gunma.jp\",\"tatebayashi.gunma.jp\",\"tomioka.gunma.jp\",\"tsukiyono.gunma.jp\",\"tsumagoi.gunma.jp\",\"ueno.gunma.jp\",\"yoshioka.gunma.jp\",\"asaminami.hiroshima.jp\",\"daiwa.hiroshima.jp\",\"etajima.hiroshima.jp\",\"fuchu.hiroshima.jp\",\"fukuyama.hiroshima.jp\",\"hatsukaichi.hiroshima.jp\",\"higashihiroshima.hiroshima.jp\",\"hongo.hiroshima.jp\",\"jinsekikogen.hiroshima.jp\",\"kaita.hiroshima.jp\",\"kui.hiroshima.jp\",\"kumano.hiroshima.jp\",\"kure.hiroshima.jp\",\"mihara.hiroshima.jp\",\"miyoshi.hiroshima.jp\",\"naka.hiroshima.jp\",\"onomichi.hiroshima.jp\",\"osakikamijima.hiroshima.jp\",\"otake.hiroshima.jp\",\"saka.hiroshima.jp\",\"sera.hiroshima.jp\",\"seranishi.hiroshima.jp\",\"shinichi.hiroshima.jp\",\"shobara.hiroshima.jp\",\"takehara.hiroshima.jp\",\"abashiri.hokkaido.jp\",\"abira.hokkaido.jp\",\"aibetsu.hokkaido.jp\",\"akabira.hokkaido.jp\",\"akkeshi.hokkaido.jp\",\"asahikawa.hokkaido.jp\",\"ashibetsu.hokkaido.jp\",\"ashoro.hokkaido.jp\",\"assabu.hokkaido.jp\",\"atsuma.hokkaido.jp\",\"bibai.hokkaido.jp\",\"biei.hokkaido.jp\",\"bifuka.hokkaido.jp\",\"bihoro.hokkaido.jp\",\"biratori.hokkaido.jp\",\"chippubetsu.hokkaido.jp\",\"chitose.hokkaido.jp\",\"date.hokkaido.jp\",\"ebetsu.hokkaido.jp\",\"embetsu.hokkaido.jp\",\"eniwa.hokkaido.jp\",\"erimo.hokkaido.jp\",\"esan.hokkaido.jp\",\"esashi.hokkaido.jp\",\"fukagawa.hokkaido.jp\",\"fukushima.hokkaido.jp\",\"furano.hokkaido.jp\",\"furubira.hokkaido.jp\",\"haboro.hokkaido.jp\",\"hakodate.hokkaido.jp\",\"hamatonbetsu.hokkaido.jp\",\"hidaka.hokkaido.jp\",\"higashikagura.hokkaido.jp\",\"higashikawa.hokkaido.jp\",\"hiroo.hokkaido.jp\",\"hokuryu.hokkaido.jp\",\"hokuto.hokkaido.jp\",\"honbetsu.hokkaido.jp\",\"horokanai.hokkaido.jp\",\"horonobe.hokkaido.jp\",\"ikeda.hokkaido.jp\",\"imakane.hokkaido.jp\",\"ishikari.hokkaido.jp\",\"iwamizawa.hokkaido.jp\",\"iwanai.hokkaido.jp\",\"kamifurano.hokkaido.jp\",\"kamikawa.hokkaido.jp\",\"kamishihoro.hokkaido.jp\",\"kamisunagawa.hokkaido.jp\",\"kamoenai.hokkaido.jp\",\"kayabe.hokkaido.jp\",\"kembuchi.hokkaido.jp\",\"kikonai.hokkaido.jp\",\"kimobetsu.hokkaido.jp\",\"kitahiroshima.hokkaido.jp\",\"kitami.hokkaido.jp\",\"kiyosato.hokkaido.jp\",\"koshimizu.hokkaido.jp\",\"kunneppu.hokkaido.jp\",\"kuriyama.hokkaido.jp\",\"kuromatsunai.hokkaido.jp\",\"kushiro.hokkaido.jp\",\"kutchan.hokkaido.jp\",\"kyowa.hokkaido.jp\",\"mashike.hokkaido.jp\",\"matsumae.hokkaido.jp\",\"mikasa.hokkaido.jp\",\"minamifurano.hokkaido.jp\",\"mombetsu.hokkaido.jp\",\"moseushi.hokkaido.jp\",\"mukawa.hokkaido.jp\",\"muroran.hokkaido.jp\",\"naie.hokkaido.jp\",\"nakagawa.hokkaido.jp\",\"nakasatsunai.hokkaido.jp\",\"nakatombetsu.hokkaido.jp\",\"nanae.hokkaido.jp\",\"nanporo.hokkaido.jp\",\"nayoro.hokkaido.jp\",\"nemuro.hokkaido.jp\",\"niikappu.hokkaido.jp\",\"niki.hokkaido.jp\",\"nishiokoppe.hokkaido.jp\",\"noboribetsu.hokkaido.jp\",\"numata.hokkaido.jp\",\"obihiro.hokkaido.jp\",\"obira.hokkaido.jp\",\"oketo.hokkaido.jp\",\"okoppe.hokkaido.jp\",\"otaru.hokkaido.jp\",\"otobe.hokkaido.jp\",\"otofuke.hokkaido.jp\",\"otoineppu.hokkaido.jp\",\"oumu.hokkaido.jp\",\"ozora.hokkaido.jp\",\"pippu.hokkaido.jp\",\"rankoshi.hokkaido.jp\",\"rebun.hokkaido.jp\",\"rikubetsu.hokkaido.jp\",\"rishiri.hokkaido.jp\",\"rishirifuji.hokkaido.jp\",\"saroma.hokkaido.jp\",\"sarufutsu.hokkaido.jp\",\"shakotan.hokkaido.jp\",\"shari.hokkaido.jp\",\"shibecha.hokkaido.jp\",\"shibetsu.hokkaido.jp\",\"shikabe.hokkaido.jp\",\"shikaoi.hokkaido.jp\",\"shimamaki.hokkaido.jp\",\"shimizu.hokkaido.jp\",\"shimokawa.hokkaido.jp\",\"shinshinotsu.hokkaido.jp\",\"shintoku.hokkaido.jp\",\"shiranuka.hokkaido.jp\",\"shiraoi.hokkaido.jp\",\"shiriuchi.hokkaido.jp\",\"sobetsu.hokkaido.jp\",\"sunagawa.hokkaido.jp\",\"taiki.hokkaido.jp\",\"takasu.hokkaido.jp\",\"takikawa.hokkaido.jp\",\"takinoue.hokkaido.jp\",\"teshikaga.hokkaido.jp\",\"tobetsu.hokkaido.jp\",\"tohma.hokkaido.jp\",\"tomakomai.hokkaido.jp\",\"tomari.hokkaido.jp\",\"toya.hokkaido.jp\",\"toyako.hokkaido.jp\",\"toyotomi.hokkaido.jp\",\"toyoura.hokkaido.jp\",\"tsubetsu.hokkaido.jp\",\"tsukigata.hokkaido.jp\",\"urakawa.hokkaido.jp\",\"urausu.hokkaido.jp\",\"uryu.hokkaido.jp\",\"utashinai.hokkaido.jp\",\"wakkanai.hokkaido.jp\",\"wassamu.hokkaido.jp\",\"yakumo.hokkaido.jp\",\"yoichi.hokkaido.jp\",\"aioi.hyogo.jp\",\"akashi.hyogo.jp\",\"ako.hyogo.jp\",\"amagasaki.hyogo.jp\",\"aogaki.hyogo.jp\",\"asago.hyogo.jp\",\"ashiya.hyogo.jp\",\"awaji.hyogo.jp\",\"fukusaki.hyogo.jp\",\"goshiki.hyogo.jp\",\"harima.hyogo.jp\",\"himeji.hyogo.jp\",\"ichikawa.hyogo.jp\",\"inagawa.hyogo.jp\",\"itami.hyogo.jp\",\"kakogawa.hyogo.jp\",\"kamigori.hyogo.jp\",\"kamikawa.hyogo.jp\",\"kasai.hyogo.jp\",\"kasuga.hyogo.jp\",\"kawanishi.hyogo.jp\",\"miki.hyogo.jp\",\"minamiawaji.hyogo.jp\",\"nishinomiya.hyogo.jp\",\"nishiwaki.hyogo.jp\",\"ono.hyogo.jp\",\"sanda.hyogo.jp\",\"sannan.hyogo.jp\",\"sasayama.hyogo.jp\",\"sayo.hyogo.jp\",\"shingu.hyogo.jp\",\"shinonsen.hyogo.jp\",\"shiso.hyogo.jp\",\"sumoto.hyogo.jp\",\"taishi.hyogo.jp\",\"taka.hyogo.jp\",\"takarazuka.hyogo.jp\",\"takasago.hyogo.jp\",\"takino.hyogo.jp\",\"tamba.hyogo.jp\",\"tatsuno.hyogo.jp\",\"toyooka.hyogo.jp\",\"yabu.hyogo.jp\",\"yashiro.hyogo.jp\",\"yoka.hyogo.jp\",\"yokawa.hyogo.jp\",\"ami.ibaraki.jp\",\"asahi.ibaraki.jp\",\"bando.ibaraki.jp\",\"chikusei.ibaraki.jp\",\"daigo.ibaraki.jp\",\"fujishiro.ibaraki.jp\",\"hitachi.ibaraki.jp\",\"hitachinaka.ibaraki.jp\",\"hitachiomiya.ibaraki.jp\",\"hitachiota.ibaraki.jp\",\"ibaraki.ibaraki.jp\",\"ina.ibaraki.jp\",\"inashiki.ibaraki.jp\",\"itako.ibaraki.jp\",\"iwama.ibaraki.jp\",\"joso.ibaraki.jp\",\"kamisu.ibaraki.jp\",\"kasama.ibaraki.jp\",\"kashima.ibaraki.jp\",\"kasumigaura.ibaraki.jp\",\"koga.ibaraki.jp\",\"miho.ibaraki.jp\",\"mito.ibaraki.jp\",\"moriya.ibaraki.jp\",\"naka.ibaraki.jp\",\"namegata.ibaraki.jp\",\"oarai.ibaraki.jp\",\"ogawa.ibaraki.jp\",\"omitama.ibaraki.jp\",\"ryugasaki.ibaraki.jp\",\"sakai.ibaraki.jp\",\"sakuragawa.ibaraki.jp\",\"shimodate.ibaraki.jp\",\"shimotsuma.ibaraki.jp\",\"shirosato.ibaraki.jp\",\"sowa.ibaraki.jp\",\"suifu.ibaraki.jp\",\"takahagi.ibaraki.jp\",\"tamatsukuri.ibaraki.jp\",\"tokai.ibaraki.jp\",\"tomobe.ibaraki.jp\",\"tone.ibaraki.jp\",\"toride.ibaraki.jp\",\"tsuchiura.ibaraki.jp\",\"tsukuba.ibaraki.jp\",\"uchihara.ibaraki.jp\",\"ushiku.ibaraki.jp\",\"yachiyo.ibaraki.jp\",\"yamagata.ibaraki.jp\",\"yawara.ibaraki.jp\",\"yuki.ibaraki.jp\",\"anamizu.ishikawa.jp\",\"hakui.ishikawa.jp\",\"hakusan.ishikawa.jp\",\"kaga.ishikawa.jp\",\"kahoku.ishikawa.jp\",\"kanazawa.ishikawa.jp\",\"kawakita.ishikawa.jp\",\"komatsu.ishikawa.jp\",\"nakanoto.ishikawa.jp\",\"nanao.ishikawa.jp\",\"nomi.ishikawa.jp\",\"nonoichi.ishikawa.jp\",\"noto.ishikawa.jp\",\"shika.ishikawa.jp\",\"suzu.ishikawa.jp\",\"tsubata.ishikawa.jp\",\"tsurugi.ishikawa.jp\",\"uchinada.ishikawa.jp\",\"wajima.ishikawa.jp\",\"fudai.iwate.jp\",\"fujisawa.iwate.jp\",\"hanamaki.iwate.jp\",\"hiraizumi.iwate.jp\",\"hirono.iwate.jp\",\"ichinohe.iwate.jp\",\"ichinoseki.iwate.jp\",\"iwaizumi.iwate.jp\",\"iwate.iwate.jp\",\"joboji.iwate.jp\",\"kamaishi.iwate.jp\",\"kanegasaki.iwate.jp\",\"karumai.iwate.jp\",\"kawai.iwate.jp\",\"kitakami.iwate.jp\",\"kuji.iwate.jp\",\"kunohe.iwate.jp\",\"kuzumaki.iwate.jp\",\"miyako.iwate.jp\",\"mizusawa.iwate.jp\",\"morioka.iwate.jp\",\"ninohe.iwate.jp\",\"noda.iwate.jp\",\"ofunato.iwate.jp\",\"oshu.iwate.jp\",\"otsuchi.iwate.jp\",\"rikuzentakata.iwate.jp\",\"shiwa.iwate.jp\",\"shizukuishi.iwate.jp\",\"sumita.iwate.jp\",\"tanohata.iwate.jp\",\"tono.iwate.jp\",\"yahaba.iwate.jp\",\"yamada.iwate.jp\",\"ayagawa.kagawa.jp\",\"higashikagawa.kagawa.jp\",\"kanonji.kagawa.jp\",\"kotohira.kagawa.jp\",\"manno.kagawa.jp\",\"marugame.kagawa.jp\",\"mitoyo.kagawa.jp\",\"naoshima.kagawa.jp\",\"sanuki.kagawa.jp\",\"tadotsu.kagawa.jp\",\"takamatsu.kagawa.jp\",\"tonosho.kagawa.jp\",\"uchinomi.kagawa.jp\",\"utazu.kagawa.jp\",\"zentsuji.kagawa.jp\",\"akune.kagoshima.jp\",\"amami.kagoshima.jp\",\"hioki.kagoshima.jp\",\"isa.kagoshima.jp\",\"isen.kagoshima.jp\",\"izumi.kagoshima.jp\",\"kagoshima.kagoshima.jp\",\"kanoya.kagoshima.jp\",\"kawanabe.kagoshima.jp\",\"kinko.kagoshima.jp\",\"kouyama.kagoshima.jp\",\"makurazaki.kagoshima.jp\",\"matsumoto.kagoshima.jp\",\"minamitane.kagoshima.jp\",\"nakatane.kagoshima.jp\",\"nishinoomote.kagoshima.jp\",\"satsumasendai.kagoshima.jp\",\"soo.kagoshima.jp\",\"tarumizu.kagoshima.jp\",\"yusui.kagoshima.jp\",\"aikawa.kanagawa.jp\",\"atsugi.kanagawa.jp\",\"ayase.kanagawa.jp\",\"chigasaki.kanagawa.jp\",\"ebina.kanagawa.jp\",\"fujisawa.kanagawa.jp\",\"hadano.kanagawa.jp\",\"hakone.kanagawa.jp\",\"hiratsuka.kanagawa.jp\",\"isehara.kanagawa.jp\",\"kaisei.kanagawa.jp\",\"kamakura.kanagawa.jp\",\"kiyokawa.kanagawa.jp\",\"matsuda.kanagawa.jp\",\"minamiashigara.kanagawa.jp\",\"miura.kanagawa.jp\",\"nakai.kanagawa.jp\",\"ninomiya.kanagawa.jp\",\"odawara.kanagawa.jp\",\"oi.kanagawa.jp\",\"oiso.kanagawa.jp\",\"sagamihara.kanagawa.jp\",\"samukawa.kanagawa.jp\",\"tsukui.kanagawa.jp\",\"yamakita.kanagawa.jp\",\"yamato.kanagawa.jp\",\"yokosuka.kanagawa.jp\",\"yugawara.kanagawa.jp\",\"zama.kanagawa.jp\",\"zushi.kanagawa.jp\",\"aki.kochi.jp\",\"geisei.kochi.jp\",\"hidaka.kochi.jp\",\"higashitsuno.kochi.jp\",\"ino.kochi.jp\",\"kagami.kochi.jp\",\"kami.kochi.jp\",\"kitagawa.kochi.jp\",\"kochi.kochi.jp\",\"mihara.kochi.jp\",\"motoyama.kochi.jp\",\"muroto.kochi.jp\",\"nahari.kochi.jp\",\"nakamura.kochi.jp\",\"nankoku.kochi.jp\",\"nishitosa.kochi.jp\",\"niyodogawa.kochi.jp\",\"ochi.kochi.jp\",\"okawa.kochi.jp\",\"otoyo.kochi.jp\",\"otsuki.kochi.jp\",\"sakawa.kochi.jp\",\"sukumo.kochi.jp\",\"susaki.kochi.jp\",\"tosa.kochi.jp\",\"tosashimizu.kochi.jp\",\"toyo.kochi.jp\",\"tsuno.kochi.jp\",\"umaji.kochi.jp\",\"yasuda.kochi.jp\",\"yusuhara.kochi.jp\",\"amakusa.kumamoto.jp\",\"arao.kumamoto.jp\",\"aso.kumamoto.jp\",\"choyo.kumamoto.jp\",\"gyokuto.kumamoto.jp\",\"kamiamakusa.kumamoto.jp\",\"kikuchi.kumamoto.jp\",\"kumamoto.kumamoto.jp\",\"mashiki.kumamoto.jp\",\"mifune.kumamoto.jp\",\"minamata.kumamoto.jp\",\"minamioguni.kumamoto.jp\",\"nagasu.kumamoto.jp\",\"nishihara.kumamoto.jp\",\"oguni.kumamoto.jp\",\"ozu.kumamoto.jp\",\"sumoto.kumamoto.jp\",\"takamori.kumamoto.jp\",\"uki.kumamoto.jp\",\"uto.kumamoto.jp\",\"yamaga.kumamoto.jp\",\"yamato.kumamoto.jp\",\"yatsushiro.kumamoto.jp\",\"ayabe.kyoto.jp\",\"fukuchiyama.kyoto.jp\",\"higashiyama.kyoto.jp\",\"ide.kyoto.jp\",\"ine.kyoto.jp\",\"joyo.kyoto.jp\",\"kameoka.kyoto.jp\",\"kamo.kyoto.jp\",\"kita.kyoto.jp\",\"kizu.kyoto.jp\",\"kumiyama.kyoto.jp\",\"kyotamba.kyoto.jp\",\"kyotanabe.kyoto.jp\",\"kyotango.kyoto.jp\",\"maizuru.kyoto.jp\",\"minami.kyoto.jp\",\"minamiyamashiro.kyoto.jp\",\"miyazu.kyoto.jp\",\"muko.kyoto.jp\",\"nagaokakyo.kyoto.jp\",\"nakagyo.kyoto.jp\",\"nantan.kyoto.jp\",\"oyamazaki.kyoto.jp\",\"sakyo.kyoto.jp\",\"seika.kyoto.jp\",\"tanabe.kyoto.jp\",\"uji.kyoto.jp\",\"ujitawara.kyoto.jp\",\"wazuka.kyoto.jp\",\"yamashina.kyoto.jp\",\"yawata.kyoto.jp\",\"asahi.mie.jp\",\"inabe.mie.jp\",\"ise.mie.jp\",\"kameyama.mie.jp\",\"kawagoe.mie.jp\",\"kiho.mie.jp\",\"kisosaki.mie.jp\",\"kiwa.mie.jp\",\"komono.mie.jp\",\"kumano.mie.jp\",\"kuwana.mie.jp\",\"matsusaka.mie.jp\",\"meiwa.mie.jp\",\"mihama.mie.jp\",\"minamiise.mie.jp\",\"misugi.mie.jp\",\"miyama.mie.jp\",\"nabari.mie.jp\",\"shima.mie.jp\",\"suzuka.mie.jp\",\"tado.mie.jp\",\"taiki.mie.jp\",\"taki.mie.jp\",\"tamaki.mie.jp\",\"toba.mie.jp\",\"tsu.mie.jp\",\"udono.mie.jp\",\"ureshino.mie.jp\",\"watarai.mie.jp\",\"yokkaichi.mie.jp\",\"furukawa.miyagi.jp\",\"higashimatsushima.miyagi.jp\",\"ishinomaki.miyagi.jp\",\"iwanuma.miyagi.jp\",\"kakuda.miyagi.jp\",\"kami.miyagi.jp\",\"kawasaki.miyagi.jp\",\"marumori.miyagi.jp\",\"matsushima.miyagi.jp\",\"minamisanriku.miyagi.jp\",\"misato.miyagi.jp\",\"murata.miyagi.jp\",\"natori.miyagi.jp\",\"ogawara.miyagi.jp\",\"ohira.miyagi.jp\",\"onagawa.miyagi.jp\",\"osaki.miyagi.jp\",\"rifu.miyagi.jp\",\"semine.miyagi.jp\",\"shibata.miyagi.jp\",\"shichikashuku.miyagi.jp\",\"shikama.miyagi.jp\",\"shiogama.miyagi.jp\",\"shiroishi.miyagi.jp\",\"tagajo.miyagi.jp\",\"taiwa.miyagi.jp\",\"tome.miyagi.jp\",\"tomiya.miyagi.jp\",\"wakuya.miyagi.jp\",\"watari.miyagi.jp\",\"yamamoto.miyagi.jp\",\"zao.miyagi.jp\",\"aya.miyazaki.jp\",\"ebino.miyazaki.jp\",\"gokase.miyazaki.jp\",\"hyuga.miyazaki.jp\",\"kadogawa.miyazaki.jp\",\"kawaminami.miyazaki.jp\",\"kijo.miyazaki.jp\",\"kitagawa.miyazaki.jp\",\"kitakata.miyazaki.jp\",\"kitaura.miyazaki.jp\",\"kobayashi.miyazaki.jp\",\"kunitomi.miyazaki.jp\",\"kushima.miyazaki.jp\",\"mimata.miyazaki.jp\",\"miyakonojo.miyazaki.jp\",\"miyazaki.miyazaki.jp\",\"morotsuka.miyazaki.jp\",\"nichinan.miyazaki.jp\",\"nishimera.miyazaki.jp\",\"nobeoka.miyazaki.jp\",\"saito.miyazaki.jp\",\"shiiba.miyazaki.jp\",\"shintomi.miyazaki.jp\",\"takaharu.miyazaki.jp\",\"takanabe.miyazaki.jp\",\"takazaki.miyazaki.jp\",\"tsuno.miyazaki.jp\",\"achi.nagano.jp\",\"agematsu.nagano.jp\",\"anan.nagano.jp\",\"aoki.nagano.jp\",\"asahi.nagano.jp\",\"azumino.nagano.jp\",\"chikuhoku.nagano.jp\",\"chikuma.nagano.jp\",\"chino.nagano.jp\",\"fujimi.nagano.jp\",\"hakuba.nagano.jp\",\"hara.nagano.jp\",\"hiraya.nagano.jp\",\"iida.nagano.jp\",\"iijima.nagano.jp\",\"iiyama.nagano.jp\",\"iizuna.nagano.jp\",\"ikeda.nagano.jp\",\"ikusaka.nagano.jp\",\"ina.nagano.jp\",\"karuizawa.nagano.jp\",\"kawakami.nagano.jp\",\"kiso.nagano.jp\",\"kisofukushima.nagano.jp\",\"kitaaiki.nagano.jp\",\"komagane.nagano.jp\",\"komoro.nagano.jp\",\"matsukawa.nagano.jp\",\"matsumoto.nagano.jp\",\"miasa.nagano.jp\",\"minamiaiki.nagano.jp\",\"minamimaki.nagano.jp\",\"minamiminowa.nagano.jp\",\"minowa.nagano.jp\",\"miyada.nagano.jp\",\"miyota.nagano.jp\",\"mochizuki.nagano.jp\",\"nagano.nagano.jp\",\"nagawa.nagano.jp\",\"nagiso.nagano.jp\",\"nakagawa.nagano.jp\",\"nakano.nagano.jp\",\"nozawaonsen.nagano.jp\",\"obuse.nagano.jp\",\"ogawa.nagano.jp\",\"okaya.nagano.jp\",\"omachi.nagano.jp\",\"omi.nagano.jp\",\"ookuwa.nagano.jp\",\"ooshika.nagano.jp\",\"otaki.nagano.jp\",\"otari.nagano.jp\",\"sakae.nagano.jp\",\"sakaki.nagano.jp\",\"saku.nagano.jp\",\"sakuho.nagano.jp\",\"shimosuwa.nagano.jp\",\"shinanomachi.nagano.jp\",\"shiojiri.nagano.jp\",\"suwa.nagano.jp\",\"suzaka.nagano.jp\",\"takagi.nagano.jp\",\"takamori.nagano.jp\",\"takayama.nagano.jp\",\"tateshina.nagano.jp\",\"tatsuno.nagano.jp\",\"togakushi.nagano.jp\",\"togura.nagano.jp\",\"tomi.nagano.jp\",\"ueda.nagano.jp\",\"wada.nagano.jp\",\"yamagata.nagano.jp\",\"yamanouchi.nagano.jp\",\"yasaka.nagano.jp\",\"yasuoka.nagano.jp\",\"chijiwa.nagasaki.jp\",\"futsu.nagasaki.jp\",\"goto.nagasaki.jp\",\"hasami.nagasaki.jp\",\"hirado.nagasaki.jp\",\"iki.nagasaki.jp\",\"isahaya.nagasaki.jp\",\"kawatana.nagasaki.jp\",\"kuchinotsu.nagasaki.jp\",\"matsuura.nagasaki.jp\",\"nagasaki.nagasaki.jp\",\"obama.nagasaki.jp\",\"omura.nagasaki.jp\",\"oseto.nagasaki.jp\",\"saikai.nagasaki.jp\",\"sasebo.nagasaki.jp\",\"seihi.nagasaki.jp\",\"shimabara.nagasaki.jp\",\"shinkamigoto.nagasaki.jp\",\"togitsu.nagasaki.jp\",\"tsushima.nagasaki.jp\",\"unzen.nagasaki.jp\",\"ando.nara.jp\",\"gose.nara.jp\",\"heguri.nara.jp\",\"higashiyoshino.nara.jp\",\"ikaruga.nara.jp\",\"ikoma.nara.jp\",\"kamikitayama.nara.jp\",\"kanmaki.nara.jp\",\"kashiba.nara.jp\",\"kashihara.nara.jp\",\"katsuragi.nara.jp\",\"kawai.nara.jp\",\"kawakami.nara.jp\",\"kawanishi.nara.jp\",\"koryo.nara.jp\",\"kurotaki.nara.jp\",\"mitsue.nara.jp\",\"miyake.nara.jp\",\"nara.nara.jp\",\"nosegawa.nara.jp\",\"oji.nara.jp\",\"ouda.nara.jp\",\"oyodo.nara.jp\",\"sakurai.nara.jp\",\"sango.nara.jp\",\"shimoichi.nara.jp\",\"shimokitayama.nara.jp\",\"shinjo.nara.jp\",\"soni.nara.jp\",\"takatori.nara.jp\",\"tawaramoto.nara.jp\",\"tenkawa.nara.jp\",\"tenri.nara.jp\",\"uda.nara.jp\",\"yamatokoriyama.nara.jp\",\"yamatotakada.nara.jp\",\"yamazoe.nara.jp\",\"yoshino.nara.jp\",\"aga.niigata.jp\",\"agano.niigata.jp\",\"gosen.niigata.jp\",\"itoigawa.niigata.jp\",\"izumozaki.niigata.jp\",\"joetsu.niigata.jp\",\"kamo.niigata.jp\",\"kariwa.niigata.jp\",\"kashiwazaki.niigata.jp\",\"minamiuonuma.niigata.jp\",\"mitsuke.niigata.jp\",\"muika.niigata.jp\",\"murakami.niigata.jp\",\"myoko.niigata.jp\",\"nagaoka.niigata.jp\",\"niigata.niigata.jp\",\"ojiya.niigata.jp\",\"omi.niigata.jp\",\"sado.niigata.jp\",\"sanjo.niigata.jp\",\"seiro.niigata.jp\",\"seirou.niigata.jp\",\"sekikawa.niigata.jp\",\"shibata.niigata.jp\",\"tagami.niigata.jp\",\"tainai.niigata.jp\",\"tochio.niigata.jp\",\"tokamachi.niigata.jp\",\"tsubame.niigata.jp\",\"tsunan.niigata.jp\",\"uonuma.niigata.jp\",\"yahiko.niigata.jp\",\"yoita.niigata.jp\",\"yuzawa.niigata.jp\",\"beppu.oita.jp\",\"bungoono.oita.jp\",\"bungotakada.oita.jp\",\"hasama.oita.jp\",\"hiji.oita.jp\",\"himeshima.oita.jp\",\"hita.oita.jp\",\"kamitsue.oita.jp\",\"kokonoe.oita.jp\",\"kuju.oita.jp\",\"kunisaki.oita.jp\",\"kusu.oita.jp\",\"oita.oita.jp\",\"saiki.oita.jp\",\"taketa.oita.jp\",\"tsukumi.oita.jp\",\"usa.oita.jp\",\"usuki.oita.jp\",\"yufu.oita.jp\",\"akaiwa.okayama.jp\",\"asakuchi.okayama.jp\",\"bizen.okayama.jp\",\"hayashima.okayama.jp\",\"ibara.okayama.jp\",\"kagamino.okayama.jp\",\"kasaoka.okayama.jp\",\"kibichuo.okayama.jp\",\"kumenan.okayama.jp\",\"kurashiki.okayama.jp\",\"maniwa.okayama.jp\",\"misaki.okayama.jp\",\"nagi.okayama.jp\",\"niimi.okayama.jp\",\"nishiawakura.okayama.jp\",\"okayama.okayama.jp\",\"satosho.okayama.jp\",\"setouchi.okayama.jp\",\"shinjo.okayama.jp\",\"shoo.okayama.jp\",\"soja.okayama.jp\",\"takahashi.okayama.jp\",\"tamano.okayama.jp\",\"tsuyama.okayama.jp\",\"wake.okayama.jp\",\"yakage.okayama.jp\",\"aguni.okinawa.jp\",\"ginowan.okinawa.jp\",\"ginoza.okinawa.jp\",\"gushikami.okinawa.jp\",\"haebaru.okinawa.jp\",\"higashi.okinawa.jp\",\"hirara.okinawa.jp\",\"iheya.okinawa.jp\",\"ishigaki.okinawa.jp\",\"ishikawa.okinawa.jp\",\"itoman.okinawa.jp\",\"izena.okinawa.jp\",\"kadena.okinawa.jp\",\"kin.okinawa.jp\",\"kitadaito.okinawa.jp\",\"kitanakagusuku.okinawa.jp\",\"kumejima.okinawa.jp\",\"kunigami.okinawa.jp\",\"minamidaito.okinawa.jp\",\"motobu.okinawa.jp\",\"nago.okinawa.jp\",\"naha.okinawa.jp\",\"nakagusuku.okinawa.jp\",\"nakijin.okinawa.jp\",\"nanjo.okinawa.jp\",\"nishihara.okinawa.jp\",\"ogimi.okinawa.jp\",\"okinawa.okinawa.jp\",\"onna.okinawa.jp\",\"shimoji.okinawa.jp\",\"taketomi.okinawa.jp\",\"tarama.okinawa.jp\",\"tokashiki.okinawa.jp\",\"tomigusuku.okinawa.jp\",\"tonaki.okinawa.jp\",\"urasoe.okinawa.jp\",\"uruma.okinawa.jp\",\"yaese.okinawa.jp\",\"yomitan.okinawa.jp\",\"yonabaru.okinawa.jp\",\"yonaguni.okinawa.jp\",\"zamami.okinawa.jp\",\"abeno.osaka.jp\",\"chihayaakasaka.osaka.jp\",\"chuo.osaka.jp\",\"daito.osaka.jp\",\"fujiidera.osaka.jp\",\"habikino.osaka.jp\",\"hannan.osaka.jp\",\"higashiosaka.osaka.jp\",\"higashisumiyoshi.osaka.jp\",\"higashiyodogawa.osaka.jp\",\"hirakata.osaka.jp\",\"ibaraki.osaka.jp\",\"ikeda.osaka.jp\",\"izumi.osaka.jp\",\"izumiotsu.osaka.jp\",\"izumisano.osaka.jp\",\"kadoma.osaka.jp\",\"kaizuka.osaka.jp\",\"kanan.osaka.jp\",\"kashiwara.osaka.jp\",\"katano.osaka.jp\",\"kawachinagano.osaka.jp\",\"kishiwada.osaka.jp\",\"kita.osaka.jp\",\"kumatori.osaka.jp\",\"matsubara.osaka.jp\",\"minato.osaka.jp\",\"minoh.osaka.jp\",\"misaki.osaka.jp\",\"moriguchi.osaka.jp\",\"neyagawa.osaka.jp\",\"nishi.osaka.jp\",\"nose.osaka.jp\",\"osakasayama.osaka.jp\",\"sakai.osaka.jp\",\"sayama.osaka.jp\",\"sennan.osaka.jp\",\"settsu.osaka.jp\",\"shijonawate.osaka.jp\",\"shimamoto.osaka.jp\",\"suita.osaka.jp\",\"tadaoka.osaka.jp\",\"taishi.osaka.jp\",\"tajiri.osaka.jp\",\"takaishi.osaka.jp\",\"takatsuki.osaka.jp\",\"tondabayashi.osaka.jp\",\"toyonaka.osaka.jp\",\"toyono.osaka.jp\",\"yao.osaka.jp\",\"ariake.saga.jp\",\"arita.saga.jp\",\"fukudomi.saga.jp\",\"genkai.saga.jp\",\"hamatama.saga.jp\",\"hizen.saga.jp\",\"imari.saga.jp\",\"kamimine.saga.jp\",\"kanzaki.saga.jp\",\"karatsu.saga.jp\",\"kashima.saga.jp\",\"kitagata.saga.jp\",\"kitahata.saga.jp\",\"kiyama.saga.jp\",\"kouhoku.saga.jp\",\"kyuragi.saga.jp\",\"nishiarita.saga.jp\",\"ogi.saga.jp\",\"omachi.saga.jp\",\"ouchi.saga.jp\",\"saga.saga.jp\",\"shiroishi.saga.jp\",\"taku.saga.jp\",\"tara.saga.jp\",\"tosu.saga.jp\",\"yoshinogari.saga.jp\",\"arakawa.saitama.jp\",\"asaka.saitama.jp\",\"chichibu.saitama.jp\",\"fujimi.saitama.jp\",\"fujimino.saitama.jp\",\"fukaya.saitama.jp\",\"hanno.saitama.jp\",\"hanyu.saitama.jp\",\"hasuda.saitama.jp\",\"hatogaya.saitama.jp\",\"hatoyama.saitama.jp\",\"hidaka.saitama.jp\",\"higashichichibu.saitama.jp\",\"higashimatsuyama.saitama.jp\",\"honjo.saitama.jp\",\"ina.saitama.jp\",\"iruma.saitama.jp\",\"iwatsuki.saitama.jp\",\"kamiizumi.saitama.jp\",\"kamikawa.saitama.jp\",\"kamisato.saitama.jp\",\"kasukabe.saitama.jp\",\"kawagoe.saitama.jp\",\"kawaguchi.saitama.jp\",\"kawajima.saitama.jp\",\"kazo.saitama.jp\",\"kitamoto.saitama.jp\",\"koshigaya.saitama.jp\",\"kounosu.saitama.jp\",\"kuki.saitama.jp\",\"kumagaya.saitama.jp\",\"matsubushi.saitama.jp\",\"minano.saitama.jp\",\"misato.saitama.jp\",\"miyashiro.saitama.jp\",\"miyoshi.saitama.jp\",\"moroyama.saitama.jp\",\"nagatoro.saitama.jp\",\"namegawa.saitama.jp\",\"niiza.saitama.jp\",\"ogano.saitama.jp\",\"ogawa.saitama.jp\",\"ogose.saitama.jp\",\"okegawa.saitama.jp\",\"omiya.saitama.jp\",\"otaki.saitama.jp\",\"ranzan.saitama.jp\",\"ryokami.saitama.jp\",\"saitama.saitama.jp\",\"sakado.saitama.jp\",\"satte.saitama.jp\",\"sayama.saitama.jp\",\"shiki.saitama.jp\",\"shiraoka.saitama.jp\",\"soka.saitama.jp\",\"sugito.saitama.jp\",\"toda.saitama.jp\",\"tokigawa.saitama.jp\",\"tokorozawa.saitama.jp\",\"tsurugashima.saitama.jp\",\"urawa.saitama.jp\",\"warabi.saitama.jp\",\"yashio.saitama.jp\",\"yokoze.saitama.jp\",\"yono.saitama.jp\",\"yorii.saitama.jp\",\"yoshida.saitama.jp\",\"yoshikawa.saitama.jp\",\"yoshimi.saitama.jp\",\"aisho.shiga.jp\",\"gamo.shiga.jp\",\"higashiomi.shiga.jp\",\"hikone.shiga.jp\",\"koka.shiga.jp\",\"konan.shiga.jp\",\"kosei.shiga.jp\",\"koto.shiga.jp\",\"kusatsu.shiga.jp\",\"maibara.shiga.jp\",\"moriyama.shiga.jp\",\"nagahama.shiga.jp\",\"nishiazai.shiga.jp\",\"notogawa.shiga.jp\",\"omihachiman.shiga.jp\",\"otsu.shiga.jp\",\"ritto.shiga.jp\",\"ryuoh.shiga.jp\",\"takashima.shiga.jp\",\"takatsuki.shiga.jp\",\"torahime.shiga.jp\",\"toyosato.shiga.jp\",\"yasu.shiga.jp\",\"akagi.shimane.jp\",\"ama.shimane.jp\",\"gotsu.shimane.jp\",\"hamada.shimane.jp\",\"higashiizumo.shimane.jp\",\"hikawa.shimane.jp\",\"hikimi.shimane.jp\",\"izumo.shimane.jp\",\"kakinoki.shimane.jp\",\"masuda.shimane.jp\",\"matsue.shimane.jp\",\"misato.shimane.jp\",\"nishinoshima.shimane.jp\",\"ohda.shimane.jp\",\"okinoshima.shimane.jp\",\"okuizumo.shimane.jp\",\"shimane.shimane.jp\",\"tamayu.shimane.jp\",\"tsuwano.shimane.jp\",\"unnan.shimane.jp\",\"yakumo.shimane.jp\",\"yasugi.shimane.jp\",\"yatsuka.shimane.jp\",\"arai.shizuoka.jp\",\"atami.shizuoka.jp\",\"fuji.shizuoka.jp\",\"fujieda.shizuoka.jp\",\"fujikawa.shizuoka.jp\",\"fujinomiya.shizuoka.jp\",\"fukuroi.shizuoka.jp\",\"gotemba.shizuoka.jp\",\"haibara.shizuoka.jp\",\"hamamatsu.shizuoka.jp\",\"higashiizu.shizuoka.jp\",\"ito.shizuoka.jp\",\"iwata.shizuoka.jp\",\"izu.shizuoka.jp\",\"izunokuni.shizuoka.jp\",\"kakegawa.shizuoka.jp\",\"kannami.shizuoka.jp\",\"kawanehon.shizuoka.jp\",\"kawazu.shizuoka.jp\",\"kikugawa.shizuoka.jp\",\"kosai.shizuoka.jp\",\"makinohara.shizuoka.jp\",\"matsuzaki.shizuoka.jp\",\"minamiizu.shizuoka.jp\",\"mishima.shizuoka.jp\",\"morimachi.shizuoka.jp\",\"nishiizu.shizuoka.jp\",\"numazu.shizuoka.jp\",\"omaezaki.shizuoka.jp\",\"shimada.shizuoka.jp\",\"shimizu.shizuoka.jp\",\"shimoda.shizuoka.jp\",\"shizuoka.shizuoka.jp\",\"susono.shizuoka.jp\",\"yaizu.shizuoka.jp\",\"yoshida.shizuoka.jp\",\"ashikaga.tochigi.jp\",\"bato.tochigi.jp\",\"haga.tochigi.jp\",\"ichikai.tochigi.jp\",\"iwafune.tochigi.jp\",\"kaminokawa.tochigi.jp\",\"kanuma.tochigi.jp\",\"karasuyama.tochigi.jp\",\"kuroiso.tochigi.jp\",\"mashiko.tochigi.jp\",\"mibu.tochigi.jp\",\"moka.tochigi.jp\",\"motegi.tochigi.jp\",\"nasu.tochigi.jp\",\"nasushiobara.tochigi.jp\",\"nikko.tochigi.jp\",\"nishikata.tochigi.jp\",\"nogi.tochigi.jp\",\"ohira.tochigi.jp\",\"ohtawara.tochigi.jp\",\"oyama.tochigi.jp\",\"sakura.tochigi.jp\",\"sano.tochigi.jp\",\"shimotsuke.tochigi.jp\",\"shioya.tochigi.jp\",\"takanezawa.tochigi.jp\",\"tochigi.tochigi.jp\",\"tsuga.tochigi.jp\",\"ujiie.tochigi.jp\",\"utsunomiya.tochigi.jp\",\"yaita.tochigi.jp\",\"aizumi.tokushima.jp\",\"anan.tokushima.jp\",\"ichiba.tokushima.jp\",\"itano.tokushima.jp\",\"kainan.tokushima.jp\",\"komatsushima.tokushima.jp\",\"matsushige.tokushima.jp\",\"mima.tokushima.jp\",\"minami.tokushima.jp\",\"miyoshi.tokushima.jp\",\"mugi.tokushima.jp\",\"nakagawa.tokushima.jp\",\"naruto.tokushima.jp\",\"sanagochi.tokushima.jp\",\"shishikui.tokushima.jp\",\"tokushima.tokushima.jp\",\"wajiki.tokushima.jp\",\"adachi.tokyo.jp\",\"akiruno.tokyo.jp\",\"akishima.tokyo.jp\",\"aogashima.tokyo.jp\",\"arakawa.tokyo.jp\",\"bunkyo.tokyo.jp\",\"chiyoda.tokyo.jp\",\"chofu.tokyo.jp\",\"chuo.tokyo.jp\",\"edogawa.tokyo.jp\",\"fuchu.tokyo.jp\",\"fussa.tokyo.jp\",\"hachijo.tokyo.jp\",\"hachioji.tokyo.jp\",\"hamura.tokyo.jp\",\"higashikurume.tokyo.jp\",\"higashimurayama.tokyo.jp\",\"higashiyamato.tokyo.jp\",\"hino.tokyo.jp\",\"hinode.tokyo.jp\",\"hinohara.tokyo.jp\",\"inagi.tokyo.jp\",\"itabashi.tokyo.jp\",\"katsushika.tokyo.jp\",\"kita.tokyo.jp\",\"kiyose.tokyo.jp\",\"kodaira.tokyo.jp\",\"koganei.tokyo.jp\",\"kokubunji.tokyo.jp\",\"komae.tokyo.jp\",\"koto.tokyo.jp\",\"kouzushima.tokyo.jp\",\"kunitachi.tokyo.jp\",\"machida.tokyo.jp\",\"meguro.tokyo.jp\",\"minato.tokyo.jp\",\"mitaka.tokyo.jp\",\"mizuho.tokyo.jp\",\"musashimurayama.tokyo.jp\",\"musashino.tokyo.jp\",\"nakano.tokyo.jp\",\"nerima.tokyo.jp\",\"ogasawara.tokyo.jp\",\"okutama.tokyo.jp\",\"ome.tokyo.jp\",\"oshima.tokyo.jp\",\"ota.tokyo.jp\",\"setagaya.tokyo.jp\",\"shibuya.tokyo.jp\",\"shinagawa.tokyo.jp\",\"shinjuku.tokyo.jp\",\"suginami.tokyo.jp\",\"sumida.tokyo.jp\",\"tachikawa.tokyo.jp\",\"taito.tokyo.jp\",\"tama.tokyo.jp\",\"toshima.tokyo.jp\",\"chizu.tottori.jp\",\"hino.tottori.jp\",\"kawahara.tottori.jp\",\"koge.tottori.jp\",\"kotoura.tottori.jp\",\"misasa.tottori.jp\",\"nanbu.tottori.jp\",\"nichinan.tottori.jp\",\"sakaiminato.tottori.jp\",\"tottori.tottori.jp\",\"wakasa.tottori.jp\",\"yazu.tottori.jp\",\"yonago.tottori.jp\",\"asahi.toyama.jp\",\"fuchu.toyama.jp\",\"fukumitsu.toyama.jp\",\"funahashi.toyama.jp\",\"himi.toyama.jp\",\"imizu.toyama.jp\",\"inami.toyama.jp\",\"johana.toyama.jp\",\"kamiichi.toyama.jp\",\"kurobe.toyama.jp\",\"nakaniikawa.toyama.jp\",\"namerikawa.toyama.jp\",\"nanto.toyama.jp\",\"nyuzen.toyama.jp\",\"oyabe.toyama.jp\",\"taira.toyama.jp\",\"takaoka.toyama.jp\",\"tateyama.toyama.jp\",\"toga.toyama.jp\",\"tonami.toyama.jp\",\"toyama.toyama.jp\",\"unazuki.toyama.jp\",\"uozu.toyama.jp\",\"yamada.toyama.jp\",\"arida.wakayama.jp\",\"aridagawa.wakayama.jp\",\"gobo.wakayama.jp\",\"hashimoto.wakayama.jp\",\"hidaka.wakayama.jp\",\"hirogawa.wakayama.jp\",\"inami.wakayama.jp\",\"iwade.wakayama.jp\",\"kainan.wakayama.jp\",\"kamitonda.wakayama.jp\",\"katsuragi.wakayama.jp\",\"kimino.wakayama.jp\",\"kinokawa.wakayama.jp\",\"kitayama.wakayama.jp\",\"koya.wakayama.jp\",\"koza.wakayama.jp\",\"kozagawa.wakayama.jp\",\"kudoyama.wakayama.jp\",\"kushimoto.wakayama.jp\",\"mihama.wakayama.jp\",\"misato.wakayama.jp\",\"nachikatsuura.wakayama.jp\",\"shingu.wakayama.jp\",\"shirahama.wakayama.jp\",\"taiji.wakayama.jp\",\"tanabe.wakayama.jp\",\"wakayama.wakayama.jp\",\"yuasa.wakayama.jp\",\"yura.wakayama.jp\",\"asahi.yamagata.jp\",\"funagata.yamagata.jp\",\"higashine.yamagata.jp\",\"iide.yamagata.jp\",\"kahoku.yamagata.jp\",\"kaminoyama.yamagata.jp\",\"kaneyama.yamagata.jp\",\"kawanishi.yamagata.jp\",\"mamurogawa.yamagata.jp\",\"mikawa.yamagata.jp\",\"murayama.yamagata.jp\",\"nagai.yamagata.jp\",\"nakayama.yamagata.jp\",\"nanyo.yamagata.jp\",\"nishikawa.yamagata.jp\",\"obanazawa.yamagata.jp\",\"oe.yamagata.jp\",\"oguni.yamagata.jp\",\"ohkura.yamagata.jp\",\"oishida.yamagata.jp\",\"sagae.yamagata.jp\",\"sakata.yamagata.jp\",\"sakegawa.yamagata.jp\",\"shinjo.yamagata.jp\",\"shirataka.yamagata.jp\",\"shonai.yamagata.jp\",\"takahata.yamagata.jp\",\"tendo.yamagata.jp\",\"tozawa.yamagata.jp\",\"tsuruoka.yamagata.jp\",\"yamagata.yamagata.jp\",\"yamanobe.yamagata.jp\",\"yonezawa.yamagata.jp\",\"yuza.yamagata.jp\",\"abu.yamaguchi.jp\",\"hagi.yamaguchi.jp\",\"hikari.yamaguchi.jp\",\"hofu.yamaguchi.jp\",\"iwakuni.yamaguchi.jp\",\"kudamatsu.yamaguchi.jp\",\"mitou.yamaguchi.jp\",\"nagato.yamaguchi.jp\",\"oshima.yamaguchi.jp\",\"shimonoseki.yamaguchi.jp\",\"shunan.yamaguchi.jp\",\"tabuse.yamaguchi.jp\",\"tokuyama.yamaguchi.jp\",\"toyota.yamaguchi.jp\",\"ube.yamaguchi.jp\",\"yuu.yamaguchi.jp\",\"chuo.yamanashi.jp\",\"doshi.yamanashi.jp\",\"fuefuki.yamanashi.jp\",\"fujikawa.yamanashi.jp\",\"fujikawaguchiko.yamanashi.jp\",\"fujiyoshida.yamanashi.jp\",\"hayakawa.yamanashi.jp\",\"hokuto.yamanashi.jp\",\"ichikawamisato.yamanashi.jp\",\"kai.yamanashi.jp\",\"kofu.yamanashi.jp\",\"koshu.yamanashi.jp\",\"kosuge.yamanashi.jp\",\"minami-alps.yamanashi.jp\",\"minobu.yamanashi.jp\",\"nakamichi.yamanashi.jp\",\"nanbu.yamanashi.jp\",\"narusawa.yamanashi.jp\",\"nirasaki.yamanashi.jp\",\"nishikatsura.yamanashi.jp\",\"oshino.yamanashi.jp\",\"otsuki.yamanashi.jp\",\"showa.yamanashi.jp\",\"tabayama.yamanashi.jp\",\"tsuru.yamanashi.jp\",\"uenohara.yamanashi.jp\",\"yamanakako.yamanashi.jp\",\"yamanashi.yamanashi.jp\",\"ke\",\"ac.ke\",\"co.ke\",\"go.ke\",\"info.ke\",\"me.ke\",\"mobi.ke\",\"ne.ke\",\"or.ke\",\"sc.ke\",\"kg\",\"org.kg\",\"net.kg\",\"com.kg\",\"edu.kg\",\"gov.kg\",\"mil.kg\",\"*.kh\",\"ki\",\"edu.ki\",\"biz.ki\",\"net.ki\",\"org.ki\",\"gov.ki\",\"info.ki\",\"com.ki\",\"km\",\"org.km\",\"nom.km\",\"gov.km\",\"prd.km\",\"tm.km\",\"edu.km\",\"mil.km\",\"ass.km\",\"com.km\",\"coop.km\",\"asso.km\",\"presse.km\",\"medecin.km\",\"notaires.km\",\"pharmaciens.km\",\"veterinaire.km\",\"gouv.km\",\"kn\",\"net.kn\",\"org.kn\",\"edu.kn\",\"gov.kn\",\"kp\",\"com.kp\",\"edu.kp\",\"gov.kp\",\"org.kp\",\"rep.kp\",\"tra.kp\",\"kr\",\"ac.kr\",\"co.kr\",\"es.kr\",\"go.kr\",\"hs.kr\",\"kg.kr\",\"mil.kr\",\"ms.kr\",\"ne.kr\",\"or.kr\",\"pe.kr\",\"re.kr\",\"sc.kr\",\"busan.kr\",\"chungbuk.kr\",\"chungnam.kr\",\"daegu.kr\",\"daejeon.kr\",\"gangwon.kr\",\"gwangju.kr\",\"gyeongbuk.kr\",\"gyeonggi.kr\",\"gyeongnam.kr\",\"incheon.kr\",\"jeju.kr\",\"jeonbuk.kr\",\"jeonnam.kr\",\"seoul.kr\",\"ulsan.kr\",\"kw\",\"com.kw\",\"edu.kw\",\"emb.kw\",\"gov.kw\",\"ind.kw\",\"net.kw\",\"org.kw\",\"ky\",\"edu.ky\",\"gov.ky\",\"com.ky\",\"org.ky\",\"net.ky\",\"kz\",\"org.kz\",\"edu.kz\",\"net.kz\",\"gov.kz\",\"mil.kz\",\"com.kz\",\"la\",\"int.la\",\"net.la\",\"info.la\",\"edu.la\",\"gov.la\",\"per.la\",\"com.la\",\"org.la\",\"lb\",\"com.lb\",\"edu.lb\",\"gov.lb\",\"net.lb\",\"org.lb\",\"lc\",\"com.lc\",\"net.lc\",\"co.lc\",\"org.lc\",\"edu.lc\",\"gov.lc\",\"li\",\"lk\",\"gov.lk\",\"sch.lk\",\"net.lk\",\"int.lk\",\"com.lk\",\"org.lk\",\"edu.lk\",\"ngo.lk\",\"soc.lk\",\"web.lk\",\"ltd.lk\",\"assn.lk\",\"grp.lk\",\"hotel.lk\",\"ac.lk\",\"lr\",\"com.lr\",\"edu.lr\",\"gov.lr\",\"org.lr\",\"net.lr\",\"ls\",\"ac.ls\",\"biz.ls\",\"co.ls\",\"edu.ls\",\"gov.ls\",\"info.ls\",\"net.ls\",\"org.ls\",\"sc.ls\",\"lt\",\"gov.lt\",\"lu\",\"lv\",\"com.lv\",\"edu.lv\",\"gov.lv\",\"org.lv\",\"mil.lv\",\"id.lv\",\"net.lv\",\"asn.lv\",\"conf.lv\",\"ly\",\"com.ly\",\"net.ly\",\"gov.ly\",\"plc.ly\",\"edu.ly\",\"sch.ly\",\"med.ly\",\"org.ly\",\"id.ly\",\"ma\",\"co.ma\",\"net.ma\",\"gov.ma\",\"org.ma\",\"ac.ma\",\"press.ma\",\"mc\",\"tm.mc\",\"asso.mc\",\"md\",\"me\",\"co.me\",\"net.me\",\"org.me\",\"edu.me\",\"ac.me\",\"gov.me\",\"its.me\",\"priv.me\",\"mg\",\"org.mg\",\"nom.mg\",\"gov.mg\",\"prd.mg\",\"tm.mg\",\"edu.mg\",\"mil.mg\",\"com.mg\",\"co.mg\",\"mh\",\"mil\",\"mk\",\"com.mk\",\"org.mk\",\"net.mk\",\"edu.mk\",\"gov.mk\",\"inf.mk\",\"name.mk\",\"ml\",\"com.ml\",\"edu.ml\",\"gouv.ml\",\"gov.ml\",\"net.ml\",\"org.ml\",\"presse.ml\",\"*.mm\",\"mn\",\"gov.mn\",\"edu.mn\",\"org.mn\",\"mo\",\"com.mo\",\"net.mo\",\"org.mo\",\"edu.mo\",\"gov.mo\",\"mobi\",\"mp\",\"mq\",\"mr\",\"gov.mr\",\"ms\",\"com.ms\",\"edu.ms\",\"gov.ms\",\"net.ms\",\"org.ms\",\"mt\",\"com.mt\",\"edu.mt\",\"net.mt\",\"org.mt\",\"mu\",\"com.mu\",\"net.mu\",\"org.mu\",\"gov.mu\",\"ac.mu\",\"co.mu\",\"or.mu\",\"museum\",\"academy.museum\",\"agriculture.museum\",\"air.museum\",\"airguard.museum\",\"alabama.museum\",\"alaska.museum\",\"amber.museum\",\"ambulance.museum\",\"american.museum\",\"americana.museum\",\"americanantiques.museum\",\"americanart.museum\",\"amsterdam.museum\",\"and.museum\",\"annefrank.museum\",\"anthro.museum\",\"anthropology.museum\",\"antiques.museum\",\"aquarium.museum\",\"arboretum.museum\",\"archaeological.museum\",\"archaeology.museum\",\"architecture.museum\",\"art.museum\",\"artanddesign.museum\",\"artcenter.museum\",\"artdeco.museum\",\"arteducation.museum\",\"artgallery.museum\",\"arts.museum\",\"artsandcrafts.museum\",\"asmatart.museum\",\"assassination.museum\",\"assisi.museum\",\"association.museum\",\"astronomy.museum\",\"atlanta.museum\",\"austin.museum\",\"australia.museum\",\"automotive.museum\",\"aviation.museum\",\"axis.museum\",\"badajoz.museum\",\"baghdad.museum\",\"bahn.museum\",\"bale.museum\",\"baltimore.museum\",\"barcelona.museum\",\"baseball.museum\",\"basel.museum\",\"baths.museum\",\"bauern.museum\",\"beauxarts.museum\",\"beeldengeluid.museum\",\"bellevue.museum\",\"bergbau.museum\",\"berkeley.museum\",\"berlin.museum\",\"bern.museum\",\"bible.museum\",\"bilbao.museum\",\"bill.museum\",\"birdart.museum\",\"birthplace.museum\",\"bonn.museum\",\"boston.museum\",\"botanical.museum\",\"botanicalgarden.museum\",\"botanicgarden.museum\",\"botany.museum\",\"brandywinevalley.museum\",\"brasil.museum\",\"bristol.museum\",\"british.museum\",\"britishcolumbia.museum\",\"broadcast.museum\",\"brunel.museum\",\"brussel.museum\",\"brussels.museum\",\"bruxelles.museum\",\"building.museum\",\"burghof.museum\",\"bus.museum\",\"bushey.museum\",\"cadaques.museum\",\"california.museum\",\"cambridge.museum\",\"can.museum\",\"canada.museum\",\"capebreton.museum\",\"carrier.museum\",\"cartoonart.museum\",\"casadelamoneda.museum\",\"castle.museum\",\"castres.museum\",\"celtic.museum\",\"center.museum\",\"chattanooga.museum\",\"cheltenham.museum\",\"chesapeakebay.museum\",\"chicago.museum\",\"children.museum\",\"childrens.museum\",\"childrensgarden.museum\",\"chiropractic.museum\",\"chocolate.museum\",\"christiansburg.museum\",\"cincinnati.museum\",\"cinema.museum\",\"circus.museum\",\"civilisation.museum\",\"civilization.museum\",\"civilwar.museum\",\"clinton.museum\",\"clock.museum\",\"coal.museum\",\"coastaldefence.museum\",\"cody.museum\",\"coldwar.museum\",\"collection.museum\",\"colonialwilliamsburg.museum\",\"coloradoplateau.museum\",\"columbia.museum\",\"columbus.museum\",\"communication.museum\",\"communications.museum\",\"community.museum\",\"computer.museum\",\"computerhistory.museum\",\"comunicações.museum\",\"contemporary.museum\",\"contemporaryart.museum\",\"convent.museum\",\"copenhagen.museum\",\"corporation.museum\",\"correios-e-telecomunicações.museum\",\"corvette.museum\",\"costume.museum\",\"countryestate.museum\",\"county.museum\",\"crafts.museum\",\"cranbrook.museum\",\"creation.museum\",\"cultural.museum\",\"culturalcenter.museum\",\"culture.museum\",\"cyber.museum\",\"cymru.museum\",\"dali.museum\",\"dallas.museum\",\"database.museum\",\"ddr.museum\",\"decorativearts.museum\",\"delaware.museum\",\"delmenhorst.museum\",\"denmark.museum\",\"depot.museum\",\"design.museum\",\"detroit.museum\",\"dinosaur.museum\",\"discovery.museum\",\"dolls.museum\",\"donostia.museum\",\"durham.museum\",\"eastafrica.museum\",\"eastcoast.museum\",\"education.museum\",\"educational.museum\",\"egyptian.museum\",\"eisenbahn.museum\",\"elburg.museum\",\"elvendrell.museum\",\"embroidery.museum\",\"encyclopedic.museum\",\"england.museum\",\"entomology.museum\",\"environment.museum\",\"environmentalconservation.museum\",\"epilepsy.museum\",\"essex.museum\",\"estate.museum\",\"ethnology.museum\",\"exeter.museum\",\"exhibition.museum\",\"family.museum\",\"farm.museum\",\"farmequipment.museum\",\"farmers.museum\",\"farmstead.museum\",\"field.museum\",\"figueres.museum\",\"filatelia.museum\",\"film.museum\",\"fineart.museum\",\"finearts.museum\",\"finland.museum\",\"flanders.museum\",\"florida.museum\",\"force.museum\",\"fortmissoula.museum\",\"fortworth.museum\",\"foundation.museum\",\"francaise.museum\",\"frankfurt.museum\",\"franziskaner.museum\",\"freemasonry.museum\",\"freiburg.museum\",\"fribourg.museum\",\"frog.museum\",\"fundacio.museum\",\"furniture.museum\",\"gallery.museum\",\"garden.museum\",\"gateway.museum\",\"geelvinck.museum\",\"gemological.museum\",\"geology.museum\",\"georgia.museum\",\"giessen.museum\",\"glas.museum\",\"glass.museum\",\"gorge.museum\",\"grandrapids.museum\",\"graz.museum\",\"guernsey.museum\",\"halloffame.museum\",\"hamburg.museum\",\"handson.museum\",\"harvestcelebration.museum\",\"hawaii.museum\",\"health.museum\",\"heimatunduhren.museum\",\"hellas.museum\",\"helsinki.museum\",\"hembygdsforbund.museum\",\"heritage.museum\",\"histoire.museum\",\"historical.museum\",\"historicalsociety.museum\",\"historichouses.museum\",\"historisch.museum\",\"historisches.museum\",\"history.museum\",\"historyofscience.museum\",\"horology.museum\",\"house.museum\",\"humanities.museum\",\"illustration.museum\",\"imageandsound.museum\",\"indian.museum\",\"indiana.museum\",\"indianapolis.museum\",\"indianmarket.museum\",\"intelligence.museum\",\"interactive.museum\",\"iraq.museum\",\"iron.museum\",\"isleofman.museum\",\"jamison.museum\",\"jefferson.museum\",\"jerusalem.museum\",\"jewelry.museum\",\"jewish.museum\",\"jewishart.museum\",\"jfk.museum\",\"journalism.museum\",\"judaica.museum\",\"judygarland.museum\",\"juedisches.museum\",\"juif.museum\",\"karate.museum\",\"karikatur.museum\",\"kids.museum\",\"koebenhavn.museum\",\"koeln.museum\",\"kunst.museum\",\"kunstsammlung.museum\",\"kunstunddesign.museum\",\"labor.museum\",\"labour.museum\",\"lajolla.museum\",\"lancashire.museum\",\"landes.museum\",\"lans.museum\",\"läns.museum\",\"larsson.museum\",\"lewismiller.museum\",\"lincoln.museum\",\"linz.museum\",\"living.museum\",\"livinghistory.museum\",\"localhistory.museum\",\"london.museum\",\"losangeles.museum\",\"louvre.museum\",\"loyalist.museum\",\"lucerne.museum\",\"luxembourg.museum\",\"luzern.museum\",\"mad.museum\",\"madrid.museum\",\"mallorca.museum\",\"manchester.museum\",\"mansion.museum\",\"mansions.museum\",\"manx.museum\",\"marburg.museum\",\"maritime.museum\",\"maritimo.museum\",\"maryland.museum\",\"marylhurst.museum\",\"media.museum\",\"medical.museum\",\"medizinhistorisches.museum\",\"meeres.museum\",\"memorial.museum\",\"mesaverde.museum\",\"michigan.museum\",\"midatlantic.museum\",\"military.museum\",\"mill.museum\",\"miners.museum\",\"mining.museum\",\"minnesota.museum\",\"missile.museum\",\"missoula.museum\",\"modern.museum\",\"moma.museum\",\"money.museum\",\"monmouth.museum\",\"monticello.museum\",\"montreal.museum\",\"moscow.museum\",\"motorcycle.museum\",\"muenchen.museum\",\"muenster.museum\",\"mulhouse.museum\",\"muncie.museum\",\"museet.museum\",\"museumcenter.museum\",\"museumvereniging.museum\",\"music.museum\",\"national.museum\",\"nationalfirearms.museum\",\"nationalheritage.museum\",\"nativeamerican.museum\",\"naturalhistory.museum\",\"naturalhistorymuseum.museum\",\"naturalsciences.museum\",\"nature.museum\",\"naturhistorisches.museum\",\"natuurwetenschappen.museum\",\"naumburg.museum\",\"naval.museum\",\"nebraska.museum\",\"neues.museum\",\"newhampshire.museum\",\"newjersey.museum\",\"newmexico.museum\",\"newport.museum\",\"newspaper.museum\",\"newyork.museum\",\"niepce.museum\",\"norfolk.museum\",\"north.museum\",\"nrw.museum\",\"nyc.museum\",\"nyny.museum\",\"oceanographic.museum\",\"oceanographique.museum\",\"omaha.museum\",\"online.museum\",\"ontario.museum\",\"openair.museum\",\"oregon.museum\",\"oregontrail.museum\",\"otago.museum\",\"oxford.museum\",\"pacific.museum\",\"paderborn.museum\",\"palace.museum\",\"paleo.museum\",\"palmsprings.museum\",\"panama.museum\",\"paris.museum\",\"pasadena.museum\",\"pharmacy.museum\",\"philadelphia.museum\",\"philadelphiaarea.museum\",\"philately.museum\",\"phoenix.museum\",\"photography.museum\",\"pilots.museum\",\"pittsburgh.museum\",\"planetarium.museum\",\"plantation.museum\",\"plants.museum\",\"plaza.museum\",\"portal.museum\",\"portland.museum\",\"portlligat.museum\",\"posts-and-telecommunications.museum\",\"preservation.museum\",\"presidio.museum\",\"press.museum\",\"project.museum\",\"public.museum\",\"pubol.museum\",\"quebec.museum\",\"railroad.museum\",\"railway.museum\",\"research.museum\",\"resistance.museum\",\"riodejaneiro.museum\",\"rochester.museum\",\"rockart.museum\",\"roma.museum\",\"russia.museum\",\"saintlouis.museum\",\"salem.museum\",\"salvadordali.museum\",\"salzburg.museum\",\"sandiego.museum\",\"sanfrancisco.museum\",\"santabarbara.museum\",\"santacruz.museum\",\"santafe.museum\",\"saskatchewan.museum\",\"satx.museum\",\"savannahga.museum\",\"schlesisches.museum\",\"schoenbrunn.museum\",\"schokoladen.museum\",\"school.museum\",\"schweiz.museum\",\"science.museum\",\"scienceandhistory.museum\",\"scienceandindustry.museum\",\"sciencecenter.museum\",\"sciencecenters.museum\",\"science-fiction.museum\",\"sciencehistory.museum\",\"sciences.museum\",\"sciencesnaturelles.museum\",\"scotland.museum\",\"seaport.museum\",\"settlement.museum\",\"settlers.museum\",\"shell.museum\",\"sherbrooke.museum\",\"sibenik.museum\",\"silk.museum\",\"ski.museum\",\"skole.museum\",\"society.museum\",\"sologne.museum\",\"soundandvision.museum\",\"southcarolina.museum\",\"southwest.museum\",\"space.museum\",\"spy.museum\",\"square.museum\",\"stadt.museum\",\"stalbans.museum\",\"starnberg.museum\",\"state.museum\",\"stateofdelaware.museum\",\"station.museum\",\"steam.museum\",\"steiermark.museum\",\"stjohn.museum\",\"stockholm.museum\",\"stpetersburg.museum\",\"stuttgart.museum\",\"suisse.museum\",\"surgeonshall.museum\",\"surrey.museum\",\"svizzera.museum\",\"sweden.museum\",\"sydney.museum\",\"tank.museum\",\"tcm.museum\",\"technology.museum\",\"telekommunikation.museum\",\"television.museum\",\"texas.museum\",\"textile.museum\",\"theater.museum\",\"time.museum\",\"timekeeping.museum\",\"topology.museum\",\"torino.museum\",\"touch.museum\",\"town.museum\",\"transport.museum\",\"tree.museum\",\"trolley.museum\",\"trust.museum\",\"trustee.museum\",\"uhren.museum\",\"ulm.museum\",\"undersea.museum\",\"university.museum\",\"usa.museum\",\"usantiques.museum\",\"usarts.museum\",\"uscountryestate.museum\",\"usculture.museum\",\"usdecorativearts.museum\",\"usgarden.museum\",\"ushistory.museum\",\"ushuaia.museum\",\"uslivinghistory.museum\",\"utah.museum\",\"uvic.museum\",\"valley.museum\",\"vantaa.museum\",\"versailles.museum\",\"viking.museum\",\"village.museum\",\"virginia.museum\",\"virtual.museum\",\"virtuel.museum\",\"vlaanderen.museum\",\"volkenkunde.museum\",\"wales.museum\",\"wallonie.museum\",\"war.museum\",\"washingtondc.museum\",\"watchandclock.museum\",\"watch-and-clock.museum\",\"western.museum\",\"westfalen.museum\",\"whaling.museum\",\"wildlife.museum\",\"williamsburg.museum\",\"windmill.museum\",\"workshop.museum\",\"york.museum\",\"yorkshire.museum\",\"yosemite.museum\",\"youth.museum\",\"zoological.museum\",\"zoology.museum\",\"ירושלים.museum\",\"иком.museum\",\"mv\",\"aero.mv\",\"biz.mv\",\"com.mv\",\"coop.mv\",\"edu.mv\",\"gov.mv\",\"info.mv\",\"int.mv\",\"mil.mv\",\"museum.mv\",\"name.mv\",\"net.mv\",\"org.mv\",\"pro.mv\",\"mw\",\"ac.mw\",\"biz.mw\",\"co.mw\",\"com.mw\",\"coop.mw\",\"edu.mw\",\"gov.mw\",\"int.mw\",\"museum.mw\",\"net.mw\",\"org.mw\",\"mx\",\"com.mx\",\"org.mx\",\"gob.mx\",\"edu.mx\",\"net.mx\",\"my\",\"com.my\",\"net.my\",\"org.my\",\"gov.my\",\"edu.my\",\"mil.my\",\"name.my\",\"mz\",\"ac.mz\",\"adv.mz\",\"co.mz\",\"edu.mz\",\"gov.mz\",\"mil.mz\",\"net.mz\",\"org.mz\",\"na\",\"info.na\",\"pro.na\",\"name.na\",\"school.na\",\"or.na\",\"dr.na\",\"us.na\",\"mx.na\",\"ca.na\",\"in.na\",\"cc.na\",\"tv.na\",\"ws.na\",\"mobi.na\",\"co.na\",\"com.na\",\"org.na\",\"name\",\"nc\",\"asso.nc\",\"nom.nc\",\"ne\",\"net\",\"nf\",\"com.nf\",\"net.nf\",\"per.nf\",\"rec.nf\",\"web.nf\",\"arts.nf\",\"firm.nf\",\"info.nf\",\"other.nf\",\"store.nf\",\"ng\",\"com.ng\",\"edu.ng\",\"gov.ng\",\"i.ng\",\"mil.ng\",\"mobi.ng\",\"name.ng\",\"net.ng\",\"org.ng\",\"sch.ng\",\"ni\",\"ac.ni\",\"biz.ni\",\"co.ni\",\"com.ni\",\"edu.ni\",\"gob.ni\",\"in.ni\",\"info.ni\",\"int.ni\",\"mil.ni\",\"net.ni\",\"nom.ni\",\"org.ni\",\"web.ni\",\"nl\",\"no\",\"fhs.no\",\"vgs.no\",\"fylkesbibl.no\",\"folkebibl.no\",\"museum.no\",\"idrett.no\",\"priv.no\",\"mil.no\",\"stat.no\",\"dep.no\",\"kommune.no\",\"herad.no\",\"aa.no\",\"ah.no\",\"bu.no\",\"fm.no\",\"hl.no\",\"hm.no\",\"jan-mayen.no\",\"mr.no\",\"nl.no\",\"nt.no\",\"of.no\",\"ol.no\",\"oslo.no\",\"rl.no\",\"sf.no\",\"st.no\",\"svalbard.no\",\"tm.no\",\"tr.no\",\"va.no\",\"vf.no\",\"gs.aa.no\",\"gs.ah.no\",\"gs.bu.no\",\"gs.fm.no\",\"gs.hl.no\",\"gs.hm.no\",\"gs.jan-mayen.no\",\"gs.mr.no\",\"gs.nl.no\",\"gs.nt.no\",\"gs.of.no\",\"gs.ol.no\",\"gs.oslo.no\",\"gs.rl.no\",\"gs.sf.no\",\"gs.st.no\",\"gs.svalbard.no\",\"gs.tm.no\",\"gs.tr.no\",\"gs.va.no\",\"gs.vf.no\",\"akrehamn.no\",\"åkrehamn.no\",\"algard.no\",\"ålgård.no\",\"arna.no\",\"brumunddal.no\",\"bryne.no\",\"bronnoysund.no\",\"brønnøysund.no\",\"drobak.no\",\"drøbak.no\",\"egersund.no\",\"fetsund.no\",\"floro.no\",\"florø.no\",\"fredrikstad.no\",\"hokksund.no\",\"honefoss.no\",\"hønefoss.no\",\"jessheim.no\",\"jorpeland.no\",\"jørpeland.no\",\"kirkenes.no\",\"kopervik.no\",\"krokstadelva.no\",\"langevag.no\",\"langevåg.no\",\"leirvik.no\",\"mjondalen.no\",\"mjøndalen.no\",\"mo-i-rana.no\",\"mosjoen.no\",\"mosjøen.no\",\"nesoddtangen.no\",\"orkanger.no\",\"osoyro.no\",\"osøyro.no\",\"raholt.no\",\"råholt.no\",\"sandnessjoen.no\",\"sandnessjøen.no\",\"skedsmokorset.no\",\"slattum.no\",\"spjelkavik.no\",\"stathelle.no\",\"stavern.no\",\"stjordalshalsen.no\",\"stjørdalshalsen.no\",\"tananger.no\",\"tranby.no\",\"vossevangen.no\",\"afjord.no\",\"åfjord.no\",\"agdenes.no\",\"al.no\",\"ål.no\",\"alesund.no\",\"ålesund.no\",\"alstahaug.no\",\"alta.no\",\"áltá.no\",\"alaheadju.no\",\"álaheadju.no\",\"alvdal.no\",\"amli.no\",\"åmli.no\",\"amot.no\",\"åmot.no\",\"andebu.no\",\"andoy.no\",\"andøy.no\",\"andasuolo.no\",\"ardal.no\",\"årdal.no\",\"aremark.no\",\"arendal.no\",\"ås.no\",\"aseral.no\",\"åseral.no\",\"asker.no\",\"askim.no\",\"askvoll.no\",\"askoy.no\",\"askøy.no\",\"asnes.no\",\"åsnes.no\",\"audnedaln.no\",\"aukra.no\",\"aure.no\",\"aurland.no\",\"aurskog-holand.no\",\"aurskog-høland.no\",\"austevoll.no\",\"austrheim.no\",\"averoy.no\",\"averøy.no\",\"balestrand.no\",\"ballangen.no\",\"balat.no\",\"bálát.no\",\"balsfjord.no\",\"bahccavuotna.no\",\"báhccavuotna.no\",\"bamble.no\",\"bardu.no\",\"beardu.no\",\"beiarn.no\",\"bajddar.no\",\"bájddar.no\",\"baidar.no\",\"báidár.no\",\"berg.no\",\"bergen.no\",\"berlevag.no\",\"berlevåg.no\",\"bearalvahki.no\",\"bearalváhki.no\",\"bindal.no\",\"birkenes.no\",\"bjarkoy.no\",\"bjarkøy.no\",\"bjerkreim.no\",\"bjugn.no\",\"bodo.no\",\"bodø.no\",\"badaddja.no\",\"bådåddjå.no\",\"budejju.no\",\"bokn.no\",\"bremanger.no\",\"bronnoy.no\",\"brønnøy.no\",\"bygland.no\",\"bykle.no\",\"barum.no\",\"bærum.no\",\"bo.telemark.no\",\"bø.telemark.no\",\"bo.nordland.no\",\"bø.nordland.no\",\"bievat.no\",\"bievát.no\",\"bomlo.no\",\"bømlo.no\",\"batsfjord.no\",\"båtsfjord.no\",\"bahcavuotna.no\",\"báhcavuotna.no\",\"dovre.no\",\"drammen.no\",\"drangedal.no\",\"dyroy.no\",\"dyrøy.no\",\"donna.no\",\"dønna.no\",\"eid.no\",\"eidfjord.no\",\"eidsberg.no\",\"eidskog.no\",\"eidsvoll.no\",\"eigersund.no\",\"elverum.no\",\"enebakk.no\",\"engerdal.no\",\"etne.no\",\"etnedal.no\",\"evenes.no\",\"evenassi.no\",\"evenášši.no\",\"evje-og-hornnes.no\",\"farsund.no\",\"fauske.no\",\"fuossko.no\",\"fuoisku.no\",\"fedje.no\",\"fet.no\",\"finnoy.no\",\"finnøy.no\",\"fitjar.no\",\"fjaler.no\",\"fjell.no\",\"flakstad.no\",\"flatanger.no\",\"flekkefjord.no\",\"flesberg.no\",\"flora.no\",\"fla.no\",\"flå.no\",\"folldal.no\",\"forsand.no\",\"fosnes.no\",\"frei.no\",\"frogn.no\",\"froland.no\",\"frosta.no\",\"frana.no\",\"fræna.no\",\"froya.no\",\"frøya.no\",\"fusa.no\",\"fyresdal.no\",\"forde.no\",\"førde.no\",\"gamvik.no\",\"gangaviika.no\",\"gáŋgaviika.no\",\"gaular.no\",\"gausdal.no\",\"gildeskal.no\",\"gildeskål.no\",\"giske.no\",\"gjemnes.no\",\"gjerdrum.no\",\"gjerstad.no\",\"gjesdal.no\",\"gjovik.no\",\"gjøvik.no\",\"gloppen.no\",\"gol.no\",\"gran.no\",\"grane.no\",\"granvin.no\",\"gratangen.no\",\"grimstad.no\",\"grong.no\",\"kraanghke.no\",\"kråanghke.no\",\"grue.no\",\"gulen.no\",\"hadsel.no\",\"halden.no\",\"halsa.no\",\"hamar.no\",\"hamaroy.no\",\"habmer.no\",\"hábmer.no\",\"hapmir.no\",\"hápmir.no\",\"hammerfest.no\",\"hammarfeasta.no\",\"hámmárfeasta.no\",\"haram.no\",\"hareid.no\",\"harstad.no\",\"hasvik.no\",\"aknoluokta.no\",\"ákŋoluokta.no\",\"hattfjelldal.no\",\"aarborte.no\",\"haugesund.no\",\"hemne.no\",\"hemnes.no\",\"hemsedal.no\",\"heroy.more-og-romsdal.no\",\"herøy.møre-og-romsdal.no\",\"heroy.nordland.no\",\"herøy.nordland.no\",\"hitra.no\",\"hjartdal.no\",\"hjelmeland.no\",\"hobol.no\",\"hobøl.no\",\"hof.no\",\"hol.no\",\"hole.no\",\"holmestrand.no\",\"holtalen.no\",\"holtålen.no\",\"hornindal.no\",\"horten.no\",\"hurdal.no\",\"hurum.no\",\"hvaler.no\",\"hyllestad.no\",\"hagebostad.no\",\"hægebostad.no\",\"hoyanger.no\",\"høyanger.no\",\"hoylandet.no\",\"høylandet.no\",\"ha.no\",\"hå.no\",\"ibestad.no\",\"inderoy.no\",\"inderøy.no\",\"iveland.no\",\"jevnaker.no\",\"jondal.no\",\"jolster.no\",\"jølster.no\",\"karasjok.no\",\"karasjohka.no\",\"kárášjohka.no\",\"karlsoy.no\",\"galsa.no\",\"gálsá.no\",\"karmoy.no\",\"karmøy.no\",\"kautokeino.no\",\"guovdageaidnu.no\",\"klepp.no\",\"klabu.no\",\"klæbu.no\",\"kongsberg.no\",\"kongsvinger.no\",\"kragero.no\",\"kragerø.no\",\"kristiansand.no\",\"kristiansund.no\",\"krodsherad.no\",\"krødsherad.no\",\"kvalsund.no\",\"rahkkeravju.no\",\"ráhkkerávju.no\",\"kvam.no\",\"kvinesdal.no\",\"kvinnherad.no\",\"kviteseid.no\",\"kvitsoy.no\",\"kvitsøy.no\",\"kvafjord.no\",\"kvæfjord.no\",\"giehtavuoatna.no\",\"kvanangen.no\",\"kvænangen.no\",\"navuotna.no\",\"návuotna.no\",\"kafjord.no\",\"kåfjord.no\",\"gaivuotna.no\",\"gáivuotna.no\",\"larvik.no\",\"lavangen.no\",\"lavagis.no\",\"loabat.no\",\"loabát.no\",\"lebesby.no\",\"davvesiida.no\",\"leikanger.no\",\"leirfjord.no\",\"leka.no\",\"leksvik.no\",\"lenvik.no\",\"leangaviika.no\",\"leaŋgaviika.no\",\"lesja.no\",\"levanger.no\",\"lier.no\",\"lierne.no\",\"lillehammer.no\",\"lillesand.no\",\"lindesnes.no\",\"lindas.no\",\"lindås.no\",\"lom.no\",\"loppa.no\",\"lahppi.no\",\"láhppi.no\",\"lund.no\",\"lunner.no\",\"luroy.no\",\"lurøy.no\",\"luster.no\",\"lyngdal.no\",\"lyngen.no\",\"ivgu.no\",\"lardal.no\",\"lerdal.no\",\"lærdal.no\",\"lodingen.no\",\"lødingen.no\",\"lorenskog.no\",\"lørenskog.no\",\"loten.no\",\"løten.no\",\"malvik.no\",\"masoy.no\",\"måsøy.no\",\"muosat.no\",\"muosát.no\",\"mandal.no\",\"marker.no\",\"marnardal.no\",\"masfjorden.no\",\"meland.no\",\"meldal.no\",\"melhus.no\",\"meloy.no\",\"meløy.no\",\"meraker.no\",\"meråker.no\",\"moareke.no\",\"moåreke.no\",\"midsund.no\",\"midtre-gauldal.no\",\"modalen.no\",\"modum.no\",\"molde.no\",\"moskenes.no\",\"moss.no\",\"mosvik.no\",\"malselv.no\",\"målselv.no\",\"malatvuopmi.no\",\"málatvuopmi.no\",\"namdalseid.no\",\"aejrie.no\",\"namsos.no\",\"namsskogan.no\",\"naamesjevuemie.no\",\"nååmesjevuemie.no\",\"laakesvuemie.no\",\"nannestad.no\",\"narvik.no\",\"narviika.no\",\"naustdal.no\",\"nedre-eiker.no\",\"nes.akershus.no\",\"nes.buskerud.no\",\"nesna.no\",\"nesodden.no\",\"nesseby.no\",\"unjarga.no\",\"unjárga.no\",\"nesset.no\",\"nissedal.no\",\"nittedal.no\",\"nord-aurdal.no\",\"nord-fron.no\",\"nord-odal.no\",\"norddal.no\",\"nordkapp.no\",\"davvenjarga.no\",\"davvenjárga.no\",\"nordre-land.no\",\"nordreisa.no\",\"raisa.no\",\"ráisa.no\",\"nore-og-uvdal.no\",\"notodden.no\",\"naroy.no\",\"nærøy.no\",\"notteroy.no\",\"nøtterøy.no\",\"odda.no\",\"oksnes.no\",\"øksnes.no\",\"oppdal.no\",\"oppegard.no\",\"oppegård.no\",\"orkdal.no\",\"orland.no\",\"ørland.no\",\"orskog.no\",\"ørskog.no\",\"orsta.no\",\"ørsta.no\",\"os.hedmark.no\",\"os.hordaland.no\",\"osen.no\",\"osteroy.no\",\"osterøy.no\",\"ostre-toten.no\",\"østre-toten.no\",\"overhalla.no\",\"ovre-eiker.no\",\"øvre-eiker.no\",\"oyer.no\",\"øyer.no\",\"oygarden.no\",\"øygarden.no\",\"oystre-slidre.no\",\"øystre-slidre.no\",\"porsanger.no\",\"porsangu.no\",\"porsáŋgu.no\",\"porsgrunn.no\",\"radoy.no\",\"radøy.no\",\"rakkestad.no\",\"rana.no\",\"ruovat.no\",\"randaberg.no\",\"rauma.no\",\"rendalen.no\",\"rennebu.no\",\"rennesoy.no\",\"rennesøy.no\",\"rindal.no\",\"ringebu.no\",\"ringerike.no\",\"ringsaker.no\",\"rissa.no\",\"risor.no\",\"risør.no\",\"roan.no\",\"rollag.no\",\"rygge.no\",\"ralingen.no\",\"rælingen.no\",\"rodoy.no\",\"rødøy.no\",\"romskog.no\",\"rømskog.no\",\"roros.no\",\"røros.no\",\"rost.no\",\"røst.no\",\"royken.no\",\"røyken.no\",\"royrvik.no\",\"røyrvik.no\",\"rade.no\",\"råde.no\",\"salangen.no\",\"siellak.no\",\"saltdal.no\",\"salat.no\",\"sálát.no\",\"sálat.no\",\"samnanger.no\",\"sande.more-og-romsdal.no\",\"sande.møre-og-romsdal.no\",\"sande.vestfold.no\",\"sandefjord.no\",\"sandnes.no\",\"sandoy.no\",\"sandøy.no\",\"sarpsborg.no\",\"sauda.no\",\"sauherad.no\",\"sel.no\",\"selbu.no\",\"selje.no\",\"seljord.no\",\"sigdal.no\",\"siljan.no\",\"sirdal.no\",\"skaun.no\",\"skedsmo.no\",\"ski.no\",\"skien.no\",\"skiptvet.no\",\"skjervoy.no\",\"skjervøy.no\",\"skierva.no\",\"skiervá.no\",\"skjak.no\",\"skjåk.no\",\"skodje.no\",\"skanland.no\",\"skånland.no\",\"skanit.no\",\"skánit.no\",\"smola.no\",\"smøla.no\",\"snillfjord.no\",\"snasa.no\",\"snåsa.no\",\"snoasa.no\",\"snaase.no\",\"snåase.no\",\"sogndal.no\",\"sokndal.no\",\"sola.no\",\"solund.no\",\"songdalen.no\",\"sortland.no\",\"spydeberg.no\",\"stange.no\",\"stavanger.no\",\"steigen.no\",\"steinkjer.no\",\"stjordal.no\",\"stjørdal.no\",\"stokke.no\",\"stor-elvdal.no\",\"stord.no\",\"stordal.no\",\"storfjord.no\",\"omasvuotna.no\",\"strand.no\",\"stranda.no\",\"stryn.no\",\"sula.no\",\"suldal.no\",\"sund.no\",\"sunndal.no\",\"surnadal.no\",\"sveio.no\",\"svelvik.no\",\"sykkylven.no\",\"sogne.no\",\"søgne.no\",\"somna.no\",\"sømna.no\",\"sondre-land.no\",\"søndre-land.no\",\"sor-aurdal.no\",\"sør-aurdal.no\",\"sor-fron.no\",\"sør-fron.no\",\"sor-odal.no\",\"sør-odal.no\",\"sor-varanger.no\",\"sør-varanger.no\",\"matta-varjjat.no\",\"mátta-várjjat.no\",\"sorfold.no\",\"sørfold.no\",\"sorreisa.no\",\"sørreisa.no\",\"sorum.no\",\"sørum.no\",\"tana.no\",\"deatnu.no\",\"time.no\",\"tingvoll.no\",\"tinn.no\",\"tjeldsund.no\",\"dielddanuorri.no\",\"tjome.no\",\"tjøme.no\",\"tokke.no\",\"tolga.no\",\"torsken.no\",\"tranoy.no\",\"tranøy.no\",\"tromso.no\",\"tromsø.no\",\"tromsa.no\",\"romsa.no\",\"trondheim.no\",\"troandin.no\",\"trysil.no\",\"trana.no\",\"træna.no\",\"trogstad.no\",\"trøgstad.no\",\"tvedestrand.no\",\"tydal.no\",\"tynset.no\",\"tysfjord.no\",\"divtasvuodna.no\",\"divttasvuotna.no\",\"tysnes.no\",\"tysvar.no\",\"tysvær.no\",\"tonsberg.no\",\"tønsberg.no\",\"ullensaker.no\",\"ullensvang.no\",\"ulvik.no\",\"utsira.no\",\"vadso.no\",\"vadsø.no\",\"cahcesuolo.no\",\"čáhcesuolo.no\",\"vaksdal.no\",\"valle.no\",\"vang.no\",\"vanylven.no\",\"vardo.no\",\"vardø.no\",\"varggat.no\",\"várggát.no\",\"vefsn.no\",\"vaapste.no\",\"vega.no\",\"vegarshei.no\",\"vegårshei.no\",\"vennesla.no\",\"verdal.no\",\"verran.no\",\"vestby.no\",\"vestnes.no\",\"vestre-slidre.no\",\"vestre-toten.no\",\"vestvagoy.no\",\"vestvågøy.no\",\"vevelstad.no\",\"vik.no\",\"vikna.no\",\"vindafjord.no\",\"volda.no\",\"voss.no\",\"varoy.no\",\"værøy.no\",\"vagan.no\",\"vågan.no\",\"voagat.no\",\"vagsoy.no\",\"vågsøy.no\",\"vaga.no\",\"vågå.no\",\"valer.ostfold.no\",\"våler.østfold.no\",\"valer.hedmark.no\",\"våler.hedmark.no\",\"*.np\",\"nr\",\"biz.nr\",\"info.nr\",\"gov.nr\",\"edu.nr\",\"org.nr\",\"net.nr\",\"com.nr\",\"nu\",\"nz\",\"ac.nz\",\"co.nz\",\"cri.nz\",\"geek.nz\",\"gen.nz\",\"govt.nz\",\"health.nz\",\"iwi.nz\",\"kiwi.nz\",\"maori.nz\",\"mil.nz\",\"māori.nz\",\"net.nz\",\"org.nz\",\"parliament.nz\",\"school.nz\",\"om\",\"co.om\",\"com.om\",\"edu.om\",\"gov.om\",\"med.om\",\"museum.om\",\"net.om\",\"org.om\",\"pro.om\",\"onion\",\"org\",\"pa\",\"ac.pa\",\"gob.pa\",\"com.pa\",\"org.pa\",\"sld.pa\",\"edu.pa\",\"net.pa\",\"ing.pa\",\"abo.pa\",\"med.pa\",\"nom.pa\",\"pe\",\"edu.pe\",\"gob.pe\",\"nom.pe\",\"mil.pe\",\"org.pe\",\"com.pe\",\"net.pe\",\"pf\",\"com.pf\",\"org.pf\",\"edu.pf\",\"*.pg\",\"ph\",\"com.ph\",\"net.ph\",\"org.ph\",\"gov.ph\",\"edu.ph\",\"ngo.ph\",\"mil.ph\",\"i.ph\",\"pk\",\"com.pk\",\"net.pk\",\"edu.pk\",\"org.pk\",\"fam.pk\",\"biz.pk\",\"web.pk\",\"gov.pk\",\"gob.pk\",\"gok.pk\",\"gon.pk\",\"gop.pk\",\"gos.pk\",\"info.pk\",\"pl\",\"com.pl\",\"net.pl\",\"org.pl\",\"aid.pl\",\"agro.pl\",\"atm.pl\",\"auto.pl\",\"biz.pl\",\"edu.pl\",\"gmina.pl\",\"gsm.pl\",\"info.pl\",\"mail.pl\",\"miasta.pl\",\"media.pl\",\"mil.pl\",\"nieruchomosci.pl\",\"nom.pl\",\"pc.pl\",\"powiat.pl\",\"priv.pl\",\"realestate.pl\",\"rel.pl\",\"sex.pl\",\"shop.pl\",\"sklep.pl\",\"sos.pl\",\"szkola.pl\",\"targi.pl\",\"tm.pl\",\"tourism.pl\",\"travel.pl\",\"turystyka.pl\",\"gov.pl\",\"ap.gov.pl\",\"ic.gov.pl\",\"is.gov.pl\",\"us.gov.pl\",\"kmpsp.gov.pl\",\"kppsp.gov.pl\",\"kwpsp.gov.pl\",\"psp.gov.pl\",\"wskr.gov.pl\",\"kwp.gov.pl\",\"mw.gov.pl\",\"ug.gov.pl\",\"um.gov.pl\",\"umig.gov.pl\",\"ugim.gov.pl\",\"upow.gov.pl\",\"uw.gov.pl\",\"starostwo.gov.pl\",\"pa.gov.pl\",\"po.gov.pl\",\"psse.gov.pl\",\"pup.gov.pl\",\"rzgw.gov.pl\",\"sa.gov.pl\",\"so.gov.pl\",\"sr.gov.pl\",\"wsa.gov.pl\",\"sko.gov.pl\",\"uzs.gov.pl\",\"wiih.gov.pl\",\"winb.gov.pl\",\"pinb.gov.pl\",\"wios.gov.pl\",\"witd.gov.pl\",\"wzmiuw.gov.pl\",\"piw.gov.pl\",\"wiw.gov.pl\",\"griw.gov.pl\",\"wif.gov.pl\",\"oum.gov.pl\",\"sdn.gov.pl\",\"zp.gov.pl\",\"uppo.gov.pl\",\"mup.gov.pl\",\"wuoz.gov.pl\",\"konsulat.gov.pl\",\"oirm.gov.pl\",\"augustow.pl\",\"babia-gora.pl\",\"bedzin.pl\",\"beskidy.pl\",\"bialowieza.pl\",\"bialystok.pl\",\"bielawa.pl\",\"bieszczady.pl\",\"boleslawiec.pl\",\"bydgoszcz.pl\",\"bytom.pl\",\"cieszyn.pl\",\"czeladz.pl\",\"czest.pl\",\"dlugoleka.pl\",\"elblag.pl\",\"elk.pl\",\"glogow.pl\",\"gniezno.pl\",\"gorlice.pl\",\"grajewo.pl\",\"ilawa.pl\",\"jaworzno.pl\",\"jelenia-gora.pl\",\"jgora.pl\",\"kalisz.pl\",\"kazimierz-dolny.pl\",\"karpacz.pl\",\"kartuzy.pl\",\"kaszuby.pl\",\"katowice.pl\",\"kepno.pl\",\"ketrzyn.pl\",\"klodzko.pl\",\"kobierzyce.pl\",\"kolobrzeg.pl\",\"konin.pl\",\"konskowola.pl\",\"kutno.pl\",\"lapy.pl\",\"lebork.pl\",\"legnica.pl\",\"lezajsk.pl\",\"limanowa.pl\",\"lomza.pl\",\"lowicz.pl\",\"lubin.pl\",\"lukow.pl\",\"malbork.pl\",\"malopolska.pl\",\"mazowsze.pl\",\"mazury.pl\",\"mielec.pl\",\"mielno.pl\",\"mragowo.pl\",\"naklo.pl\",\"nowaruda.pl\",\"nysa.pl\",\"olawa.pl\",\"olecko.pl\",\"olkusz.pl\",\"olsztyn.pl\",\"opoczno.pl\",\"opole.pl\",\"ostroda.pl\",\"ostroleka.pl\",\"ostrowiec.pl\",\"ostrowwlkp.pl\",\"pila.pl\",\"pisz.pl\",\"podhale.pl\",\"podlasie.pl\",\"polkowice.pl\",\"pomorze.pl\",\"pomorskie.pl\",\"prochowice.pl\",\"pruszkow.pl\",\"przeworsk.pl\",\"pulawy.pl\",\"radom.pl\",\"rawa-maz.pl\",\"rybnik.pl\",\"rzeszow.pl\",\"sanok.pl\",\"sejny.pl\",\"slask.pl\",\"slupsk.pl\",\"sosnowiec.pl\",\"stalowa-wola.pl\",\"skoczow.pl\",\"starachowice.pl\",\"stargard.pl\",\"suwalki.pl\",\"swidnica.pl\",\"swiebodzin.pl\",\"swinoujscie.pl\",\"szczecin.pl\",\"szczytno.pl\",\"tarnobrzeg.pl\",\"tgory.pl\",\"turek.pl\",\"tychy.pl\",\"ustka.pl\",\"walbrzych.pl\",\"warmia.pl\",\"warszawa.pl\",\"waw.pl\",\"wegrow.pl\",\"wielun.pl\",\"wlocl.pl\",\"wloclawek.pl\",\"wodzislaw.pl\",\"wolomin.pl\",\"wroclaw.pl\",\"zachpomor.pl\",\"zagan.pl\",\"zarow.pl\",\"zgora.pl\",\"zgorzelec.pl\",\"pm\",\"pn\",\"gov.pn\",\"co.pn\",\"org.pn\",\"edu.pn\",\"net.pn\",\"post\",\"pr\",\"com.pr\",\"net.pr\",\"org.pr\",\"gov.pr\",\"edu.pr\",\"isla.pr\",\"pro.pr\",\"biz.pr\",\"info.pr\",\"name.pr\",\"est.pr\",\"prof.pr\",\"ac.pr\",\"pro\",\"aaa.pro\",\"aca.pro\",\"acct.pro\",\"avocat.pro\",\"bar.pro\",\"cpa.pro\",\"eng.pro\",\"jur.pro\",\"law.pro\",\"med.pro\",\"recht.pro\",\"ps\",\"edu.ps\",\"gov.ps\",\"sec.ps\",\"plo.ps\",\"com.ps\",\"org.ps\",\"net.ps\",\"pt\",\"net.pt\",\"gov.pt\",\"org.pt\",\"edu.pt\",\"int.pt\",\"publ.pt\",\"com.pt\",\"nome.pt\",\"pw\",\"co.pw\",\"ne.pw\",\"or.pw\",\"ed.pw\",\"go.pw\",\"belau.pw\",\"py\",\"com.py\",\"coop.py\",\"edu.py\",\"gov.py\",\"mil.py\",\"net.py\",\"org.py\",\"qa\",\"com.qa\",\"edu.qa\",\"gov.qa\",\"mil.qa\",\"name.qa\",\"net.qa\",\"org.qa\",\"sch.qa\",\"re\",\"asso.re\",\"com.re\",\"nom.re\",\"ro\",\"arts.ro\",\"com.ro\",\"firm.ro\",\"info.ro\",\"nom.ro\",\"nt.ro\",\"org.ro\",\"rec.ro\",\"store.ro\",\"tm.ro\",\"www.ro\",\"rs\",\"ac.rs\",\"co.rs\",\"edu.rs\",\"gov.rs\",\"in.rs\",\"org.rs\",\"ru\",\"rw\",\"ac.rw\",\"co.rw\",\"coop.rw\",\"gov.rw\",\"mil.rw\",\"net.rw\",\"org.rw\",\"sa\",\"com.sa\",\"net.sa\",\"org.sa\",\"gov.sa\",\"med.sa\",\"pub.sa\",\"edu.sa\",\"sch.sa\",\"sb\",\"com.sb\",\"edu.sb\",\"gov.sb\",\"net.sb\",\"org.sb\",\"sc\",\"com.sc\",\"gov.sc\",\"net.sc\",\"org.sc\",\"edu.sc\",\"sd\",\"com.sd\",\"net.sd\",\"org.sd\",\"edu.sd\",\"med.sd\",\"tv.sd\",\"gov.sd\",\"info.sd\",\"se\",\"a.se\",\"ac.se\",\"b.se\",\"bd.se\",\"brand.se\",\"c.se\",\"d.se\",\"e.se\",\"f.se\",\"fh.se\",\"fhsk.se\",\"fhv.se\",\"g.se\",\"h.se\",\"i.se\",\"k.se\",\"komforb.se\",\"kommunalforbund.se\",\"komvux.se\",\"l.se\",\"lanbib.se\",\"m.se\",\"n.se\",\"naturbruksgymn.se\",\"o.se\",\"org.se\",\"p.se\",\"parti.se\",\"pp.se\",\"press.se\",\"r.se\",\"s.se\",\"t.se\",\"tm.se\",\"u.se\",\"w.se\",\"x.se\",\"y.se\",\"z.se\",\"sg\",\"com.sg\",\"net.sg\",\"org.sg\",\"gov.sg\",\"edu.sg\",\"per.sg\",\"sh\",\"com.sh\",\"net.sh\",\"gov.sh\",\"org.sh\",\"mil.sh\",\"si\",\"sj\",\"sk\",\"sl\",\"com.sl\",\"net.sl\",\"edu.sl\",\"gov.sl\",\"org.sl\",\"sm\",\"sn\",\"art.sn\",\"com.sn\",\"edu.sn\",\"gouv.sn\",\"org.sn\",\"perso.sn\",\"univ.sn\",\"so\",\"com.so\",\"edu.so\",\"gov.so\",\"me.so\",\"net.so\",\"org.so\",\"sr\",\"ss\",\"biz.ss\",\"com.ss\",\"edu.ss\",\"gov.ss\",\"net.ss\",\"org.ss\",\"st\",\"co.st\",\"com.st\",\"consulado.st\",\"edu.st\",\"embaixada.st\",\"gov.st\",\"mil.st\",\"net.st\",\"org.st\",\"principe.st\",\"saotome.st\",\"store.st\",\"su\",\"sv\",\"com.sv\",\"edu.sv\",\"gob.sv\",\"org.sv\",\"red.sv\",\"sx\",\"gov.sx\",\"sy\",\"edu.sy\",\"gov.sy\",\"net.sy\",\"mil.sy\",\"com.sy\",\"org.sy\",\"sz\",\"co.sz\",\"ac.sz\",\"org.sz\",\"tc\",\"td\",\"tel\",\"tf\",\"tg\",\"th\",\"ac.th\",\"co.th\",\"go.th\",\"in.th\",\"mi.th\",\"net.th\",\"or.th\",\"tj\",\"ac.tj\",\"biz.tj\",\"co.tj\",\"com.tj\",\"edu.tj\",\"go.tj\",\"gov.tj\",\"int.tj\",\"mil.tj\",\"name.tj\",\"net.tj\",\"nic.tj\",\"org.tj\",\"test.tj\",\"web.tj\",\"tk\",\"tl\",\"gov.tl\",\"tm\",\"com.tm\",\"co.tm\",\"org.tm\",\"net.tm\",\"nom.tm\",\"gov.tm\",\"mil.tm\",\"edu.tm\",\"tn\",\"com.tn\",\"ens.tn\",\"fin.tn\",\"gov.tn\",\"ind.tn\",\"intl.tn\",\"nat.tn\",\"net.tn\",\"org.tn\",\"info.tn\",\"perso.tn\",\"tourism.tn\",\"edunet.tn\",\"rnrt.tn\",\"rns.tn\",\"rnu.tn\",\"mincom.tn\",\"agrinet.tn\",\"defense.tn\",\"turen.tn\",\"to\",\"com.to\",\"gov.to\",\"net.to\",\"org.to\",\"edu.to\",\"mil.to\",\"tr\",\"av.tr\",\"bbs.tr\",\"bel.tr\",\"biz.tr\",\"com.tr\",\"dr.tr\",\"edu.tr\",\"gen.tr\",\"gov.tr\",\"info.tr\",\"mil.tr\",\"k12.tr\",\"kep.tr\",\"name.tr\",\"net.tr\",\"org.tr\",\"pol.tr\",\"tel.tr\",\"tsk.tr\",\"tv.tr\",\"web.tr\",\"nc.tr\",\"gov.nc.tr\",\"tt\",\"co.tt\",\"com.tt\",\"org.tt\",\"net.tt\",\"biz.tt\",\"info.tt\",\"pro.tt\",\"int.tt\",\"coop.tt\",\"jobs.tt\",\"mobi.tt\",\"travel.tt\",\"museum.tt\",\"aero.tt\",\"name.tt\",\"gov.tt\",\"edu.tt\",\"tv\",\"tw\",\"edu.tw\",\"gov.tw\",\"mil.tw\",\"com.tw\",\"net.tw\",\"org.tw\",\"idv.tw\",\"game.tw\",\"ebiz.tw\",\"club.tw\",\"網路.tw\",\"組織.tw\",\"商業.tw\",\"tz\",\"ac.tz\",\"co.tz\",\"go.tz\",\"hotel.tz\",\"info.tz\",\"me.tz\",\"mil.tz\",\"mobi.tz\",\"ne.tz\",\"or.tz\",\"sc.tz\",\"tv.tz\",\"ua\",\"com.ua\",\"edu.ua\",\"gov.ua\",\"in.ua\",\"net.ua\",\"org.ua\",\"cherkassy.ua\",\"cherkasy.ua\",\"chernigov.ua\",\"chernihiv.ua\",\"chernivtsi.ua\",\"chernovtsy.ua\",\"ck.ua\",\"cn.ua\",\"cr.ua\",\"crimea.ua\",\"cv.ua\",\"dn.ua\",\"dnepropetrovsk.ua\",\"dnipropetrovsk.ua\",\"dominic.ua\",\"donetsk.ua\",\"dp.ua\",\"if.ua\",\"ivano-frankivsk.ua\",\"kh.ua\",\"kharkiv.ua\",\"kharkov.ua\",\"kherson.ua\",\"khmelnitskiy.ua\",\"khmelnytskyi.ua\",\"kiev.ua\",\"kirovograd.ua\",\"km.ua\",\"kr.ua\",\"krym.ua\",\"ks.ua\",\"kv.ua\",\"kyiv.ua\",\"lg.ua\",\"lt.ua\",\"lugansk.ua\",\"lutsk.ua\",\"lv.ua\",\"lviv.ua\",\"mk.ua\",\"mykolaiv.ua\",\"nikolaev.ua\",\"od.ua\",\"odesa.ua\",\"odessa.ua\",\"pl.ua\",\"poltava.ua\",\"rivne.ua\",\"rovno.ua\",\"rv.ua\",\"sb.ua\",\"sebastopol.ua\",\"sevastopol.ua\",\"sm.ua\",\"sumy.ua\",\"te.ua\",\"ternopil.ua\",\"uz.ua\",\"uzhgorod.ua\",\"vinnica.ua\",\"vinnytsia.ua\",\"vn.ua\",\"volyn.ua\",\"yalta.ua\",\"zaporizhzhe.ua\",\"zaporizhzhia.ua\",\"zhitomir.ua\",\"zhytomyr.ua\",\"zp.ua\",\"zt.ua\",\"ug\",\"co.ug\",\"or.ug\",\"ac.ug\",\"sc.ug\",\"go.ug\",\"ne.ug\",\"com.ug\",\"org.ug\",\"uk\",\"ac.uk\",\"co.uk\",\"gov.uk\",\"ltd.uk\",\"me.uk\",\"net.uk\",\"nhs.uk\",\"org.uk\",\"plc.uk\",\"police.uk\",\"*.sch.uk\",\"us\",\"dni.us\",\"fed.us\",\"isa.us\",\"kids.us\",\"nsn.us\",\"ak.us\",\"al.us\",\"ar.us\",\"as.us\",\"az.us\",\"ca.us\",\"co.us\",\"ct.us\",\"dc.us\",\"de.us\",\"fl.us\",\"ga.us\",\"gu.us\",\"hi.us\",\"ia.us\",\"id.us\",\"il.us\",\"in.us\",\"ks.us\",\"ky.us\",\"la.us\",\"ma.us\",\"md.us\",\"me.us\",\"mi.us\",\"mn.us\",\"mo.us\",\"ms.us\",\"mt.us\",\"nc.us\",\"nd.us\",\"ne.us\",\"nh.us\",\"nj.us\",\"nm.us\",\"nv.us\",\"ny.us\",\"oh.us\",\"ok.us\",\"or.us\",\"pa.us\",\"pr.us\",\"ri.us\",\"sc.us\",\"sd.us\",\"tn.us\",\"tx.us\",\"ut.us\",\"vi.us\",\"vt.us\",\"va.us\",\"wa.us\",\"wi.us\",\"wv.us\",\"wy.us\",\"k12.ak.us\",\"k12.al.us\",\"k12.ar.us\",\"k12.as.us\",\"k12.az.us\",\"k12.ca.us\",\"k12.co.us\",\"k12.ct.us\",\"k12.dc.us\",\"k12.de.us\",\"k12.fl.us\",\"k12.ga.us\",\"k12.gu.us\",\"k12.ia.us\",\"k12.id.us\",\"k12.il.us\",\"k12.in.us\",\"k12.ks.us\",\"k12.ky.us\",\"k12.la.us\",\"k12.ma.us\",\"k12.md.us\",\"k12.me.us\",\"k12.mi.us\",\"k12.mn.us\",\"k12.mo.us\",\"k12.ms.us\",\"k12.mt.us\",\"k12.nc.us\",\"k12.ne.us\",\"k12.nh.us\",\"k12.nj.us\",\"k12.nm.us\",\"k12.nv.us\",\"k12.ny.us\",\"k12.oh.us\",\"k12.ok.us\",\"k12.or.us\",\"k12.pa.us\",\"k12.pr.us\",\"k12.ri.us\",\"k12.sc.us\",\"k12.tn.us\",\"k12.tx.us\",\"k12.ut.us\",\"k12.vi.us\",\"k12.vt.us\",\"k12.va.us\",\"k12.wa.us\",\"k12.wi.us\",\"k12.wy.us\",\"cc.ak.us\",\"cc.al.us\",\"cc.ar.us\",\"cc.as.us\",\"cc.az.us\",\"cc.ca.us\",\"cc.co.us\",\"cc.ct.us\",\"cc.dc.us\",\"cc.de.us\",\"cc.fl.us\",\"cc.ga.us\",\"cc.gu.us\",\"cc.hi.us\",\"cc.ia.us\",\"cc.id.us\",\"cc.il.us\",\"cc.in.us\",\"cc.ks.us\",\"cc.ky.us\",\"cc.la.us\",\"cc.ma.us\",\"cc.md.us\",\"cc.me.us\",\"cc.mi.us\",\"cc.mn.us\",\"cc.mo.us\",\"cc.ms.us\",\"cc.mt.us\",\"cc.nc.us\",\"cc.nd.us\",\"cc.ne.us\",\"cc.nh.us\",\"cc.nj.us\",\"cc.nm.us\",\"cc.nv.us\",\"cc.ny.us\",\"cc.oh.us\",\"cc.ok.us\",\"cc.or.us\",\"cc.pa.us\",\"cc.pr.us\",\"cc.ri.us\",\"cc.sc.us\",\"cc.sd.us\",\"cc.tn.us\",\"cc.tx.us\",\"cc.ut.us\",\"cc.vi.us\",\"cc.vt.us\",\"cc.va.us\",\"cc.wa.us\",\"cc.wi.us\",\"cc.wv.us\",\"cc.wy.us\",\"lib.ak.us\",\"lib.al.us\",\"lib.ar.us\",\"lib.as.us\",\"lib.az.us\",\"lib.ca.us\",\"lib.co.us\",\"lib.ct.us\",\"lib.dc.us\",\"lib.fl.us\",\"lib.ga.us\",\"lib.gu.us\",\"lib.hi.us\",\"lib.ia.us\",\"lib.id.us\",\"lib.il.us\",\"lib.in.us\",\"lib.ks.us\",\"lib.ky.us\",\"lib.la.us\",\"lib.ma.us\",\"lib.md.us\",\"lib.me.us\",\"lib.mi.us\",\"lib.mn.us\",\"lib.mo.us\",\"lib.ms.us\",\"lib.mt.us\",\"lib.nc.us\",\"lib.nd.us\",\"lib.ne.us\",\"lib.nh.us\",\"lib.nj.us\",\"lib.nm.us\",\"lib.nv.us\",\"lib.ny.us\",\"lib.oh.us\",\"lib.ok.us\",\"lib.or.us\",\"lib.pa.us\",\"lib.pr.us\",\"lib.ri.us\",\"lib.sc.us\",\"lib.sd.us\",\"lib.tn.us\",\"lib.tx.us\",\"lib.ut.us\",\"lib.vi.us\",\"lib.vt.us\",\"lib.va.us\",\"lib.wa.us\",\"lib.wi.us\",\"lib.wy.us\",\"pvt.k12.ma.us\",\"chtr.k12.ma.us\",\"paroch.k12.ma.us\",\"ann-arbor.mi.us\",\"cog.mi.us\",\"dst.mi.us\",\"eaton.mi.us\",\"gen.mi.us\",\"mus.mi.us\",\"tec.mi.us\",\"washtenaw.mi.us\",\"uy\",\"com.uy\",\"edu.uy\",\"gub.uy\",\"mil.uy\",\"net.uy\",\"org.uy\",\"uz\",\"co.uz\",\"com.uz\",\"net.uz\",\"org.uz\",\"va\",\"vc\",\"com.vc\",\"net.vc\",\"org.vc\",\"gov.vc\",\"mil.vc\",\"edu.vc\",\"ve\",\"arts.ve\",\"co.ve\",\"com.ve\",\"e12.ve\",\"edu.ve\",\"firm.ve\",\"gob.ve\",\"gov.ve\",\"info.ve\",\"int.ve\",\"mil.ve\",\"net.ve\",\"org.ve\",\"rec.ve\",\"store.ve\",\"tec.ve\",\"web.ve\",\"vg\",\"vi\",\"co.vi\",\"com.vi\",\"k12.vi\",\"net.vi\",\"org.vi\",\"vn\",\"com.vn\",\"net.vn\",\"org.vn\",\"edu.vn\",\"gov.vn\",\"int.vn\",\"ac.vn\",\"biz.vn\",\"info.vn\",\"name.vn\",\"pro.vn\",\"health.vn\",\"vu\",\"com.vu\",\"edu.vu\",\"net.vu\",\"org.vu\",\"wf\",\"ws\",\"com.ws\",\"net.ws\",\"org.ws\",\"gov.ws\",\"edu.ws\",\"yt\",\"امارات\",\"հայ\",\"বাংলা\",\"бг\",\"бел\",\"中国\",\"中國\",\"الجزائر\",\"مصر\",\"ею\",\"ευ\",\"موريتانيا\",\"გე\",\"ελ\",\"香港\",\"公司.香港\",\"教育.香港\",\"政府.香港\",\"個人.香港\",\"網絡.香港\",\"組織.香港\",\"ಭಾರತ\",\"ଭାରତ\",\"ভাৰত\",\"भारतम्\",\"भारोत\",\"ڀارت\",\"ഭാരതം\",\"भारत\",\"بارت\",\"بھارت\",\"భారత్\",\"ભારત\",\"ਭਾਰਤ\",\"ভারত\",\"இந்தியா\",\"ایران\",\"ايران\",\"عراق\",\"الاردن\",\"한국\",\"қаз\",\"ලංකා\",\"இலங்கை\",\"المغرب\",\"мкд\",\"мон\",\"澳門\",\"澳门\",\"مليسيا\",\"عمان\",\"پاکستان\",\"پاكستان\",\"فلسطين\",\"срб\",\"пр.срб\",\"орг.срб\",\"обр.срб\",\"од.срб\",\"упр.срб\",\"ак.срб\",\"рф\",\"قطر\",\"السعودية\",\"السعودیة\",\"السعودیۃ\",\"السعوديه\",\"سودان\",\"新加坡\",\"சிங்கப்பூர்\",\"سورية\",\"سوريا\",\"ไทย\",\"ศึกษา.ไทย\",\"ธุรกิจ.ไทย\",\"รัฐบาล.ไทย\",\"ทหาร.ไทย\",\"เน็ต.ไทย\",\"องค์กร.ไทย\",\"تونس\",\"台灣\",\"台湾\",\"臺灣\",\"укр\",\"اليمن\",\"xxx\",\"*.ye\",\"ac.za\",\"agric.za\",\"alt.za\",\"co.za\",\"edu.za\",\"gov.za\",\"grondar.za\",\"law.za\",\"mil.za\",\"net.za\",\"ngo.za\",\"nic.za\",\"nis.za\",\"nom.za\",\"org.za\",\"school.za\",\"tm.za\",\"web.za\",\"zm\",\"ac.zm\",\"biz.zm\",\"co.zm\",\"com.zm\",\"edu.zm\",\"gov.zm\",\"info.zm\",\"mil.zm\",\"net.zm\",\"org.zm\",\"sch.zm\",\"zw\",\"ac.zw\",\"co.zw\",\"gov.zw\",\"mil.zw\",\"org.zw\",\"aaa\",\"aarp\",\"abarth\",\"abb\",\"abbott\",\"abbvie\",\"abc\",\"able\",\"abogado\",\"abudhabi\",\"academy\",\"accenture\",\"accountant\",\"accountants\",\"aco\",\"actor\",\"adac\",\"ads\",\"adult\",\"aeg\",\"aetna\",\"afamilycompany\",\"afl\",\"africa\",\"agakhan\",\"agency\",\"aig\",\"aigo\",\"airbus\",\"airforce\",\"airtel\",\"akdn\",\"alfaromeo\",\"alibaba\",\"alipay\",\"allfinanz\",\"allstate\",\"ally\",\"alsace\",\"alstom\",\"amazon\",\"americanexpress\",\"americanfamily\",\"amex\",\"amfam\",\"amica\",\"amsterdam\",\"analytics\",\"android\",\"anquan\",\"anz\",\"aol\",\"apartments\",\"app\",\"apple\",\"aquarelle\",\"arab\",\"aramco\",\"archi\",\"army\",\"art\",\"arte\",\"asda\",\"associates\",\"athleta\",\"attorney\",\"auction\",\"audi\",\"audible\",\"audio\",\"auspost\",\"author\",\"auto\",\"autos\",\"avianca\",\"aws\",\"axa\",\"azure\",\"baby\",\"baidu\",\"banamex\",\"bananarepublic\",\"band\",\"bank\",\"bar\",\"barcelona\",\"barclaycard\",\"barclays\",\"barefoot\",\"bargains\",\"baseball\",\"basketball\",\"bauhaus\",\"bayern\",\"bbc\",\"bbt\",\"bbva\",\"bcg\",\"bcn\",\"beats\",\"beauty\",\"beer\",\"bentley\",\"berlin\",\"best\",\"bestbuy\",\"bet\",\"bharti\",\"bible\",\"bid\",\"bike\",\"bing\",\"bingo\",\"bio\",\"black\",\"blackfriday\",\"blockbuster\",\"blog\",\"bloomberg\",\"blue\",\"bms\",\"bmw\",\"bnpparibas\",\"boats\",\"boehringer\",\"bofa\",\"bom\",\"bond\",\"boo\",\"book\",\"booking\",\"bosch\",\"bostik\",\"boston\",\"bot\",\"boutique\",\"box\",\"bradesco\",\"bridgestone\",\"broadway\",\"broker\",\"brother\",\"brussels\",\"budapest\",\"bugatti\",\"build\",\"builders\",\"business\",\"buy\",\"buzz\",\"bzh\",\"cab\",\"cafe\",\"cal\",\"call\",\"calvinklein\",\"cam\",\"camera\",\"camp\",\"cancerresearch\",\"canon\",\"capetown\",\"capital\",\"capitalone\",\"car\",\"caravan\",\"cards\",\"care\",\"career\",\"careers\",\"cars\",\"casa\",\"case\",\"caseih\",\"cash\",\"casino\",\"catering\",\"catholic\",\"cba\",\"cbn\",\"cbre\",\"cbs\",\"ceb\",\"center\",\"ceo\",\"cern\",\"cfa\",\"cfd\",\"chanel\",\"channel\",\"charity\",\"chase\",\"chat\",\"cheap\",\"chintai\",\"christmas\",\"chrome\",\"church\",\"cipriani\",\"circle\",\"cisco\",\"citadel\",\"citi\",\"citic\",\"city\",\"cityeats\",\"claims\",\"cleaning\",\"click\",\"clinic\",\"clinique\",\"clothing\",\"cloud\",\"club\",\"clubmed\",\"coach\",\"codes\",\"coffee\",\"college\",\"cologne\",\"comcast\",\"commbank\",\"community\",\"company\",\"compare\",\"computer\",\"comsec\",\"condos\",\"construction\",\"consulting\",\"contact\",\"contractors\",\"cooking\",\"cookingchannel\",\"cool\",\"corsica\",\"country\",\"coupon\",\"coupons\",\"courses\",\"cpa\",\"credit\",\"creditcard\",\"creditunion\",\"cricket\",\"crown\",\"crs\",\"cruise\",\"cruises\",\"csc\",\"cuisinella\",\"cymru\",\"cyou\",\"dabur\",\"dad\",\"dance\",\"data\",\"date\",\"dating\",\"datsun\",\"day\",\"dclk\",\"dds\",\"deal\",\"dealer\",\"deals\",\"degree\",\"delivery\",\"dell\",\"deloitte\",\"delta\",\"democrat\",\"dental\",\"dentist\",\"desi\",\"design\",\"dev\",\"dhl\",\"diamonds\",\"diet\",\"digital\",\"direct\",\"directory\",\"discount\",\"discover\",\"dish\",\"diy\",\"dnp\",\"docs\",\"doctor\",\"dog\",\"domains\",\"dot\",\"download\",\"drive\",\"dtv\",\"dubai\",\"duck\",\"dunlop\",\"dupont\",\"durban\",\"dvag\",\"dvr\",\"earth\",\"eat\",\"eco\",\"edeka\",\"education\",\"email\",\"emerck\",\"energy\",\"engineer\",\"engineering\",\"enterprises\",\"epson\",\"equipment\",\"ericsson\",\"erni\",\"esq\",\"estate\",\"esurance\",\"etisalat\",\"eurovision\",\"eus\",\"events\",\"exchange\",\"expert\",\"exposed\",\"express\",\"extraspace\",\"fage\",\"fail\",\"fairwinds\",\"faith\",\"family\",\"fan\",\"fans\",\"farm\",\"farmers\",\"fashion\",\"fast\",\"fedex\",\"feedback\",\"ferrari\",\"ferrero\",\"fiat\",\"fidelity\",\"fido\",\"film\",\"final\",\"finance\",\"financial\",\"fire\",\"firestone\",\"firmdale\",\"fish\",\"fishing\",\"fit\",\"fitness\",\"flickr\",\"flights\",\"flir\",\"florist\",\"flowers\",\"fly\",\"foo\",\"food\",\"foodnetwork\",\"football\",\"ford\",\"forex\",\"forsale\",\"forum\",\"foundation\",\"fox\",\"free\",\"fresenius\",\"frl\",\"frogans\",\"frontdoor\",\"frontier\",\"ftr\",\"fujitsu\",\"fujixerox\",\"fun\",\"fund\",\"furniture\",\"futbol\",\"fyi\",\"gal\",\"gallery\",\"gallo\",\"gallup\",\"game\",\"games\",\"gap\",\"garden\",\"gay\",\"gbiz\",\"gdn\",\"gea\",\"gent\",\"genting\",\"george\",\"ggee\",\"gift\",\"gifts\",\"gives\",\"giving\",\"glade\",\"glass\",\"gle\",\"global\",\"globo\",\"gmail\",\"gmbh\",\"gmo\",\"gmx\",\"godaddy\",\"gold\",\"goldpoint\",\"golf\",\"goo\",\"goodyear\",\"goog\",\"google\",\"gop\",\"got\",\"grainger\",\"graphics\",\"gratis\",\"green\",\"gripe\",\"grocery\",\"group\",\"guardian\",\"gucci\",\"guge\",\"guide\",\"guitars\",\"guru\",\"hair\",\"hamburg\",\"hangout\",\"haus\",\"hbo\",\"hdfc\",\"hdfcbank\",\"health\",\"healthcare\",\"help\",\"helsinki\",\"here\",\"hermes\",\"hgtv\",\"hiphop\",\"hisamitsu\",\"hitachi\",\"hiv\",\"hkt\",\"hockey\",\"holdings\",\"holiday\",\"homedepot\",\"homegoods\",\"homes\",\"homesense\",\"honda\",\"horse\",\"hospital\",\"host\",\"hosting\",\"hot\",\"hoteles\",\"hotels\",\"hotmail\",\"house\",\"how\",\"hsbc\",\"hughes\",\"hyatt\",\"hyundai\",\"ibm\",\"icbc\",\"ice\",\"icu\",\"ieee\",\"ifm\",\"ikano\",\"imamat\",\"imdb\",\"immo\",\"immobilien\",\"inc\",\"industries\",\"infiniti\",\"ing\",\"ink\",\"institute\",\"insurance\",\"insure\",\"intel\",\"international\",\"intuit\",\"investments\",\"ipiranga\",\"irish\",\"ismaili\",\"ist\",\"istanbul\",\"itau\",\"itv\",\"iveco\",\"jaguar\",\"java\",\"jcb\",\"jcp\",\"jeep\",\"jetzt\",\"jewelry\",\"jio\",\"jll\",\"jmp\",\"jnj\",\"joburg\",\"jot\",\"joy\",\"jpmorgan\",\"jprs\",\"juegos\",\"juniper\",\"kaufen\",\"kddi\",\"kerryhotels\",\"kerrylogistics\",\"kerryproperties\",\"kfh\",\"kia\",\"kim\",\"kinder\",\"kindle\",\"kitchen\",\"kiwi\",\"koeln\",\"komatsu\",\"kosher\",\"kpmg\",\"kpn\",\"krd\",\"kred\",\"kuokgroup\",\"kyoto\",\"lacaixa\",\"lamborghini\",\"lamer\",\"lancaster\",\"lancia\",\"land\",\"landrover\",\"lanxess\",\"lasalle\",\"lat\",\"latino\",\"latrobe\",\"law\",\"lawyer\",\"lds\",\"lease\",\"leclerc\",\"lefrak\",\"legal\",\"lego\",\"lexus\",\"lgbt\",\"lidl\",\"life\",\"lifeinsurance\",\"lifestyle\",\"lighting\",\"like\",\"lilly\",\"limited\",\"limo\",\"lincoln\",\"linde\",\"link\",\"lipsy\",\"live\",\"living\",\"lixil\",\"llc\",\"llp\",\"loan\",\"loans\",\"locker\",\"locus\",\"loft\",\"lol\",\"london\",\"lotte\",\"lotto\",\"love\",\"lpl\",\"lplfinancial\",\"ltd\",\"ltda\",\"lundbeck\",\"lupin\",\"luxe\",\"luxury\",\"macys\",\"madrid\",\"maif\",\"maison\",\"makeup\",\"man\",\"management\",\"mango\",\"map\",\"market\",\"marketing\",\"markets\",\"marriott\",\"marshalls\",\"maserati\",\"mattel\",\"mba\",\"mckinsey\",\"med\",\"media\",\"meet\",\"melbourne\",\"meme\",\"memorial\",\"men\",\"menu\",\"merckmsd\",\"metlife\",\"miami\",\"microsoft\",\"mini\",\"mint\",\"mit\",\"mitsubishi\",\"mlb\",\"mls\",\"mma\",\"mobile\",\"moda\",\"moe\",\"moi\",\"mom\",\"monash\",\"money\",\"monster\",\"mormon\",\"mortgage\",\"moscow\",\"moto\",\"motorcycles\",\"mov\",\"movie\",\"msd\",\"mtn\",\"mtr\",\"mutual\",\"nab\",\"nadex\",\"nagoya\",\"nationwide\",\"natura\",\"navy\",\"nba\",\"nec\",\"netbank\",\"netflix\",\"network\",\"neustar\",\"new\",\"newholland\",\"news\",\"next\",\"nextdirect\",\"nexus\",\"nfl\",\"ngo\",\"nhk\",\"nico\",\"nike\",\"nikon\",\"ninja\",\"nissan\",\"nissay\",\"nokia\",\"northwesternmutual\",\"norton\",\"now\",\"nowruz\",\"nowtv\",\"nra\",\"nrw\",\"ntt\",\"nyc\",\"obi\",\"observer\",\"off\",\"office\",\"okinawa\",\"olayan\",\"olayangroup\",\"oldnavy\",\"ollo\",\"omega\",\"one\",\"ong\",\"onl\",\"online\",\"onyourside\",\"ooo\",\"open\",\"oracle\",\"orange\",\"organic\",\"origins\",\"osaka\",\"otsuka\",\"ott\",\"ovh\",\"page\",\"panasonic\",\"paris\",\"pars\",\"partners\",\"parts\",\"party\",\"passagens\",\"pay\",\"pccw\",\"pet\",\"pfizer\",\"pharmacy\",\"phd\",\"philips\",\"phone\",\"photo\",\"photography\",\"photos\",\"physio\",\"pics\",\"pictet\",\"pictures\",\"pid\",\"pin\",\"ping\",\"pink\",\"pioneer\",\"pizza\",\"place\",\"play\",\"playstation\",\"plumbing\",\"plus\",\"pnc\",\"pohl\",\"poker\",\"politie\",\"porn\",\"pramerica\",\"praxi\",\"press\",\"prime\",\"prod\",\"productions\",\"prof\",\"progressive\",\"promo\",\"properties\",\"property\",\"protection\",\"pru\",\"prudential\",\"pub\",\"pwc\",\"qpon\",\"quebec\",\"quest\",\"qvc\",\"racing\",\"radio\",\"raid\",\"read\",\"realestate\",\"realtor\",\"realty\",\"recipes\",\"red\",\"redstone\",\"redumbrella\",\"rehab\",\"reise\",\"reisen\",\"reit\",\"reliance\",\"ren\",\"rent\",\"rentals\",\"repair\",\"report\",\"republican\",\"rest\",\"restaurant\",\"review\",\"reviews\",\"rexroth\",\"rich\",\"richardli\",\"ricoh\",\"rightathome\",\"ril\",\"rio\",\"rip\",\"rmit\",\"rocher\",\"rocks\",\"rodeo\",\"rogers\",\"room\",\"rsvp\",\"rugby\",\"ruhr\",\"run\",\"rwe\",\"ryukyu\",\"saarland\",\"safe\",\"safety\",\"sakura\",\"sale\",\"salon\",\"samsclub\",\"samsung\",\"sandvik\",\"sandvikcoromant\",\"sanofi\",\"sap\",\"sarl\",\"sas\",\"save\",\"saxo\",\"sbi\",\"sbs\",\"sca\",\"scb\",\"schaeffler\",\"schmidt\",\"scholarships\",\"school\",\"schule\",\"schwarz\",\"science\",\"scjohnson\",\"scor\",\"scot\",\"search\",\"seat\",\"secure\",\"security\",\"seek\",\"select\",\"sener\",\"services\",\"ses\",\"seven\",\"sew\",\"sex\",\"sexy\",\"sfr\",\"shangrila\",\"sharp\",\"shaw\",\"shell\",\"shia\",\"shiksha\",\"shoes\",\"shop\",\"shopping\",\"shouji\",\"show\",\"showtime\",\"shriram\",\"silk\",\"sina\",\"singles\",\"site\",\"ski\",\"skin\",\"sky\",\"skype\",\"sling\",\"smart\",\"smile\",\"sncf\",\"soccer\",\"social\",\"softbank\",\"software\",\"sohu\",\"solar\",\"solutions\",\"song\",\"sony\",\"soy\",\"spa\",\"space\",\"sport\",\"spot\",\"spreadbetting\",\"srl\",\"stada\",\"staples\",\"star\",\"statebank\",\"statefarm\",\"stc\",\"stcgroup\",\"stockholm\",\"storage\",\"store\",\"stream\",\"studio\",\"study\",\"style\",\"sucks\",\"supplies\",\"supply\",\"support\",\"surf\",\"surgery\",\"suzuki\",\"swatch\",\"swiftcover\",\"swiss\",\"sydney\",\"symantec\",\"systems\",\"tab\",\"taipei\",\"talk\",\"taobao\",\"target\",\"tatamotors\",\"tatar\",\"tattoo\",\"tax\",\"taxi\",\"tci\",\"tdk\",\"team\",\"tech\",\"technology\",\"temasek\",\"tennis\",\"teva\",\"thd\",\"theater\",\"theatre\",\"tiaa\",\"tickets\",\"tienda\",\"tiffany\",\"tips\",\"tires\",\"tirol\",\"tjmaxx\",\"tjx\",\"tkmaxx\",\"tmall\",\"today\",\"tokyo\",\"tools\",\"top\",\"toray\",\"toshiba\",\"total\",\"tours\",\"town\",\"toyota\",\"toys\",\"trade\",\"trading\",\"training\",\"travel\",\"travelchannel\",\"travelers\",\"travelersinsurance\",\"trust\",\"trv\",\"tube\",\"tui\",\"tunes\",\"tushu\",\"tvs\",\"ubank\",\"ubs\",\"unicom\",\"university\",\"uno\",\"uol\",\"ups\",\"vacations\",\"vana\",\"vanguard\",\"vegas\",\"ventures\",\"verisign\",\"versicherung\",\"vet\",\"viajes\",\"video\",\"vig\",\"viking\",\"villas\",\"vin\",\"vip\",\"virgin\",\"visa\",\"vision\",\"viva\",\"vivo\",\"vlaanderen\",\"vodka\",\"volkswagen\",\"volvo\",\"vote\",\"voting\",\"voto\",\"voyage\",\"vuelos\",\"wales\",\"walmart\",\"walter\",\"wang\",\"wanggou\",\"watch\",\"watches\",\"weather\",\"weatherchannel\",\"webcam\",\"weber\",\"website\",\"wed\",\"wedding\",\"weibo\",\"weir\",\"whoswho\",\"wien\",\"wiki\",\"williamhill\",\"win\",\"windows\",\"wine\",\"winners\",\"wme\",\"wolterskluwer\",\"woodside\",\"work\",\"works\",\"world\",\"wow\",\"wtc\",\"wtf\",\"xbox\",\"xerox\",\"xfinity\",\"xihuan\",\"xin\",\"कॉम\",\"セール\",\"佛山\",\"慈善\",\"集团\",\"在线\",\"大众汽车\",\"点看\",\"คอม\",\"八卦\",\"موقع\",\"公益\",\"公司\",\"香格里拉\",\"网站\",\"移动\",\"我爱你\",\"москва\",\"католик\",\"онлайн\",\"сайт\",\"联通\",\"קום\",\"时尚\",\"微博\",\"淡马锡\",\"ファッション\",\"орг\",\"नेट\",\"ストア\",\"アマゾン\",\"삼성\",\"商标\",\"商店\",\"商城\",\"дети\",\"ポイント\",\"新闻\",\"工行\",\"家電\",\"كوم\",\"中文网\",\"中信\",\"娱乐\",\"谷歌\",\"電訊盈科\",\"购物\",\"クラウド\",\"通販\",\"网店\",\"संगठन\",\"餐厅\",\"网络\",\"ком\",\"亚马逊\",\"诺基亚\",\"食品\",\"飞利浦\",\"手表\",\"手机\",\"ارامكو\",\"العليان\",\"اتصالات\",\"بازار\",\"ابوظبي\",\"كاثوليك\",\"همراه\",\"닷컴\",\"政府\",\"شبكة\",\"بيتك\",\"عرب\",\"机构\",\"组织机构\",\"健康\",\"招聘\",\"рус\",\"珠宝\",\"大拿\",\"みんな\",\"グーグル\",\"世界\",\"書籍\",\"网址\",\"닷넷\",\"コム\",\"天主教\",\"游戏\",\"vermögensberater\",\"vermögensberatung\",\"企业\",\"信息\",\"嘉里大酒店\",\"嘉里\",\"广东\",\"政务\",\"xyz\",\"yachts\",\"yahoo\",\"yamaxun\",\"yandex\",\"yodobashi\",\"yoga\",\"yokohama\",\"you\",\"youtube\",\"yun\",\"zappos\",\"zara\",\"zero\",\"zip\",\"zone\",\"zuerich\",\"cc.ua\",\"inf.ua\",\"ltd.ua\",\"adobeaemcloud.com\",\"adobeaemcloud.net\",\"*.dev.adobeaemcloud.com\",\"beep.pl\",\"barsy.ca\",\"*.compute.estate\",\"*.alces.network\",\"altervista.org\",\"alwaysdata.net\",\"cloudfront.net\",\"*.compute.amazonaws.com\",\"*.compute-1.amazonaws.com\",\"*.compute.amazonaws.com.cn\",\"us-east-1.amazonaws.com\",\"cn-north-1.eb.amazonaws.com.cn\",\"cn-northwest-1.eb.amazonaws.com.cn\",\"elasticbeanstalk.com\",\"ap-northeast-1.elasticbeanstalk.com\",\"ap-northeast-2.elasticbeanstalk.com\",\"ap-northeast-3.elasticbeanstalk.com\",\"ap-south-1.elasticbeanstalk.com\",\"ap-southeast-1.elasticbeanstalk.com\",\"ap-southeast-2.elasticbeanstalk.com\",\"ca-central-1.elasticbeanstalk.com\",\"eu-central-1.elasticbeanstalk.com\",\"eu-west-1.elasticbeanstalk.com\",\"eu-west-2.elasticbeanstalk.com\",\"eu-west-3.elasticbeanstalk.com\",\"sa-east-1.elasticbeanstalk.com\",\"us-east-1.elasticbeanstalk.com\",\"us-east-2.elasticbeanstalk.com\",\"us-gov-west-1.elasticbeanstalk.com\",\"us-west-1.elasticbeanstalk.com\",\"us-west-2.elasticbeanstalk.com\",\"*.elb.amazonaws.com\",\"*.elb.amazonaws.com.cn\",\"s3.amazonaws.com\",\"s3-ap-northeast-1.amazonaws.com\",\"s3-ap-northeast-2.amazonaws.com\",\"s3-ap-south-1.amazonaws.com\",\"s3-ap-southeast-1.amazonaws.com\",\"s3-ap-southeast-2.amazonaws.com\",\"s3-ca-central-1.amazonaws.com\",\"s3-eu-central-1.amazonaws.com\",\"s3-eu-west-1.amazonaws.com\",\"s3-eu-west-2.amazonaws.com\",\"s3-eu-west-3.amazonaws.com\",\"s3-external-1.amazonaws.com\",\"s3-fips-us-gov-west-1.amazonaws.com\",\"s3-sa-east-1.amazonaws.com\",\"s3-us-gov-west-1.amazonaws.com\",\"s3-us-east-2.amazonaws.com\",\"s3-us-west-1.amazonaws.com\",\"s3-us-west-2.amazonaws.com\",\"s3.ap-northeast-2.amazonaws.com\",\"s3.ap-south-1.amazonaws.com\",\"s3.cn-north-1.amazonaws.com.cn\",\"s3.ca-central-1.amazonaws.com\",\"s3.eu-central-1.amazonaws.com\",\"s3.eu-west-2.amazonaws.com\",\"s3.eu-west-3.amazonaws.com\",\"s3.us-east-2.amazonaws.com\",\"s3.dualstack.ap-northeast-1.amazonaws.com\",\"s3.dualstack.ap-northeast-2.amazonaws.com\",\"s3.dualstack.ap-south-1.amazonaws.com\",\"s3.dualstack.ap-southeast-1.amazonaws.com\",\"s3.dualstack.ap-southeast-2.amazonaws.com\",\"s3.dualstack.ca-central-1.amazonaws.com\",\"s3.dualstack.eu-central-1.amazonaws.com\",\"s3.dualstack.eu-west-1.amazonaws.com\",\"s3.dualstack.eu-west-2.amazonaws.com\",\"s3.dualstack.eu-west-3.amazonaws.com\",\"s3.dualstack.sa-east-1.amazonaws.com\",\"s3.dualstack.us-east-1.amazonaws.com\",\"s3.dualstack.us-east-2.amazonaws.com\",\"s3-website-us-east-1.amazonaws.com\",\"s3-website-us-west-1.amazonaws.com\",\"s3-website-us-west-2.amazonaws.com\",\"s3-website-ap-northeast-1.amazonaws.com\",\"s3-website-ap-southeast-1.amazonaws.com\",\"s3-website-ap-southeast-2.amazonaws.com\",\"s3-website-eu-west-1.amazonaws.com\",\"s3-website-sa-east-1.amazonaws.com\",\"s3-website.ap-northeast-2.amazonaws.com\",\"s3-website.ap-south-1.amazonaws.com\",\"s3-website.ca-central-1.amazonaws.com\",\"s3-website.eu-central-1.amazonaws.com\",\"s3-website.eu-west-2.amazonaws.com\",\"s3-website.eu-west-3.amazonaws.com\",\"s3-website.us-east-2.amazonaws.com\",\"amsw.nl\",\"t3l3p0rt.net\",\"tele.amune.org\",\"apigee.io\",\"on-aptible.com\",\"user.aseinet.ne.jp\",\"gv.vc\",\"d.gv.vc\",\"user.party.eus\",\"pimienta.org\",\"poivron.org\",\"potager.org\",\"sweetpepper.org\",\"myasustor.com\",\"myfritz.net\",\"*.awdev.ca\",\"*.advisor.ws\",\"b-data.io\",\"backplaneapp.io\",\"balena-devices.com\",\"app.banzaicloud.io\",\"betainabox.com\",\"bnr.la\",\"blackbaudcdn.net\",\"boomla.net\",\"boxfuse.io\",\"square7.ch\",\"bplaced.com\",\"bplaced.de\",\"square7.de\",\"bplaced.net\",\"square7.net\",\"browsersafetymark.io\",\"uk0.bigv.io\",\"dh.bytemark.co.uk\",\"vm.bytemark.co.uk\",\"mycd.eu\",\"carrd.co\",\"crd.co\",\"uwu.ai\",\"ae.org\",\"ar.com\",\"br.com\",\"cn.com\",\"com.de\",\"com.se\",\"de.com\",\"eu.com\",\"gb.com\",\"gb.net\",\"hu.com\",\"hu.net\",\"jp.net\",\"jpn.com\",\"kr.com\",\"mex.com\",\"no.com\",\"qc.com\",\"ru.com\",\"sa.com\",\"se.net\",\"uk.com\",\"uk.net\",\"us.com\",\"uy.com\",\"za.bz\",\"za.com\",\"africa.com\",\"gr.com\",\"in.net\",\"us.org\",\"co.com\",\"c.la\",\"certmgr.org\",\"xenapponazure.com\",\"discourse.group\",\"discourse.team\",\"virtueeldomein.nl\",\"cleverapps.io\",\"*.lcl.dev\",\"*.stg.dev\",\"c66.me\",\"cloud66.ws\",\"cloud66.zone\",\"jdevcloud.com\",\"wpdevcloud.com\",\"cloudaccess.host\",\"freesite.host\",\"cloudaccess.net\",\"cloudcontrolled.com\",\"cloudcontrolapp.com\",\"cloudera.site\",\"trycloudflare.com\",\"workers.dev\",\"wnext.app\",\"co.ca\",\"*.otap.co\",\"co.cz\",\"c.cdn77.org\",\"cdn77-ssl.net\",\"r.cdn77.net\",\"rsc.cdn77.org\",\"ssl.origin.cdn77-secure.org\",\"cloudns.asia\",\"cloudns.biz\",\"cloudns.club\",\"cloudns.cc\",\"cloudns.eu\",\"cloudns.in\",\"cloudns.info\",\"cloudns.org\",\"cloudns.pro\",\"cloudns.pw\",\"cloudns.us\",\"cloudeity.net\",\"cnpy.gdn\",\"co.nl\",\"co.no\",\"webhosting.be\",\"hosting-cluster.nl\",\"ac.ru\",\"edu.ru\",\"gov.ru\",\"int.ru\",\"mil.ru\",\"test.ru\",\"dyn.cosidns.de\",\"dynamisches-dns.de\",\"dnsupdater.de\",\"internet-dns.de\",\"l-o-g-i-n.de\",\"dynamic-dns.info\",\"feste-ip.net\",\"knx-server.net\",\"static-access.net\",\"realm.cz\",\"*.cryptonomic.net\",\"cupcake.is\",\"*.customer-oci.com\",\"*.oci.customer-oci.com\",\"*.ocp.customer-oci.com\",\"*.ocs.customer-oci.com\",\"cyon.link\",\"cyon.site\",\"daplie.me\",\"localhost.daplie.me\",\"dattolocal.com\",\"dattorelay.com\",\"dattoweb.com\",\"mydatto.com\",\"dattolocal.net\",\"mydatto.net\",\"biz.dk\",\"co.dk\",\"firm.dk\",\"reg.dk\",\"store.dk\",\"*.dapps.earth\",\"*.bzz.dapps.earth\",\"builtwithdark.com\",\"edgestack.me\",\"debian.net\",\"dedyn.io\",\"dnshome.de\",\"online.th\",\"shop.th\",\"drayddns.com\",\"dreamhosters.com\",\"mydrobo.com\",\"drud.io\",\"drud.us\",\"duckdns.org\",\"dy.fi\",\"tunk.org\",\"dyndns-at-home.com\",\"dyndns-at-work.com\",\"dyndns-blog.com\",\"dyndns-free.com\",\"dyndns-home.com\",\"dyndns-ip.com\",\"dyndns-mail.com\",\"dyndns-office.com\",\"dyndns-pics.com\",\"dyndns-remote.com\",\"dyndns-server.com\",\"dyndns-web.com\",\"dyndns-wiki.com\",\"dyndns-work.com\",\"dyndns.biz\",\"dyndns.info\",\"dyndns.org\",\"dyndns.tv\",\"at-band-camp.net\",\"ath.cx\",\"barrel-of-knowledge.info\",\"barrell-of-knowledge.info\",\"better-than.tv\",\"blogdns.com\",\"blogdns.net\",\"blogdns.org\",\"blogsite.org\",\"boldlygoingnowhere.org\",\"broke-it.net\",\"buyshouses.net\",\"cechire.com\",\"dnsalias.com\",\"dnsalias.net\",\"dnsalias.org\",\"dnsdojo.com\",\"dnsdojo.net\",\"dnsdojo.org\",\"does-it.net\",\"doesntexist.com\",\"doesntexist.org\",\"dontexist.com\",\"dontexist.net\",\"dontexist.org\",\"doomdns.com\",\"doomdns.org\",\"dvrdns.org\",\"dyn-o-saur.com\",\"dynalias.com\",\"dynalias.net\",\"dynalias.org\",\"dynathome.net\",\"dyndns.ws\",\"endofinternet.net\",\"endofinternet.org\",\"endoftheinternet.org\",\"est-a-la-maison.com\",\"est-a-la-masion.com\",\"est-le-patron.com\",\"est-mon-blogueur.com\",\"for-better.biz\",\"for-more.biz\",\"for-our.info\",\"for-some.biz\",\"for-the.biz\",\"forgot.her.name\",\"forgot.his.name\",\"from-ak.com\",\"from-al.com\",\"from-ar.com\",\"from-az.net\",\"from-ca.com\",\"from-co.net\",\"from-ct.com\",\"from-dc.com\",\"from-de.com\",\"from-fl.com\",\"from-ga.com\",\"from-hi.com\",\"from-ia.com\",\"from-id.com\",\"from-il.com\",\"from-in.com\",\"from-ks.com\",\"from-ky.com\",\"from-la.net\",\"from-ma.com\",\"from-md.com\",\"from-me.org\",\"from-mi.com\",\"from-mn.com\",\"from-mo.com\",\"from-ms.com\",\"from-mt.com\",\"from-nc.com\",\"from-nd.com\",\"from-ne.com\",\"from-nh.com\",\"from-nj.com\",\"from-nm.com\",\"from-nv.com\",\"from-ny.net\",\"from-oh.com\",\"from-ok.com\",\"from-or.com\",\"from-pa.com\",\"from-pr.com\",\"from-ri.com\",\"from-sc.com\",\"from-sd.com\",\"from-tn.com\",\"from-tx.com\",\"from-ut.com\",\"from-va.com\",\"from-vt.com\",\"from-wa.com\",\"from-wi.com\",\"from-wv.com\",\"from-wy.com\",\"ftpaccess.cc\",\"fuettertdasnetz.de\",\"game-host.org\",\"game-server.cc\",\"getmyip.com\",\"gets-it.net\",\"go.dyndns.org\",\"gotdns.com\",\"gotdns.org\",\"groks-the.info\",\"groks-this.info\",\"ham-radio-op.net\",\"here-for-more.info\",\"hobby-site.com\",\"hobby-site.org\",\"home.dyndns.org\",\"homedns.org\",\"homeftp.net\",\"homeftp.org\",\"homeip.net\",\"homelinux.com\",\"homelinux.net\",\"homelinux.org\",\"homeunix.com\",\"homeunix.net\",\"homeunix.org\",\"iamallama.com\",\"in-the-band.net\",\"is-a-anarchist.com\",\"is-a-blogger.com\",\"is-a-bookkeeper.com\",\"is-a-bruinsfan.org\",\"is-a-bulls-fan.com\",\"is-a-candidate.org\",\"is-a-caterer.com\",\"is-a-celticsfan.org\",\"is-a-chef.com\",\"is-a-chef.net\",\"is-a-chef.org\",\"is-a-conservative.com\",\"is-a-cpa.com\",\"is-a-cubicle-slave.com\",\"is-a-democrat.com\",\"is-a-designer.com\",\"is-a-doctor.com\",\"is-a-financialadvisor.com\",\"is-a-geek.com\",\"is-a-geek.net\",\"is-a-geek.org\",\"is-a-green.com\",\"is-a-guru.com\",\"is-a-hard-worker.com\",\"is-a-hunter.com\",\"is-a-knight.org\",\"is-a-landscaper.com\",\"is-a-lawyer.com\",\"is-a-liberal.com\",\"is-a-libertarian.com\",\"is-a-linux-user.org\",\"is-a-llama.com\",\"is-a-musician.com\",\"is-a-nascarfan.com\",\"is-a-nurse.com\",\"is-a-painter.com\",\"is-a-patsfan.org\",\"is-a-personaltrainer.com\",\"is-a-photographer.com\",\"is-a-player.com\",\"is-a-republican.com\",\"is-a-rockstar.com\",\"is-a-socialist.com\",\"is-a-soxfan.org\",\"is-a-student.com\",\"is-a-teacher.com\",\"is-a-techie.com\",\"is-a-therapist.com\",\"is-an-accountant.com\",\"is-an-actor.com\",\"is-an-actress.com\",\"is-an-anarchist.com\",\"is-an-artist.com\",\"is-an-engineer.com\",\"is-an-entertainer.com\",\"is-by.us\",\"is-certified.com\",\"is-found.org\",\"is-gone.com\",\"is-into-anime.com\",\"is-into-cars.com\",\"is-into-cartoons.com\",\"is-into-games.com\",\"is-leet.com\",\"is-lost.org\",\"is-not-certified.com\",\"is-saved.org\",\"is-slick.com\",\"is-uberleet.com\",\"is-very-bad.org\",\"is-very-evil.org\",\"is-very-good.org\",\"is-very-nice.org\",\"is-very-sweet.org\",\"is-with-theband.com\",\"isa-geek.com\",\"isa-geek.net\",\"isa-geek.org\",\"isa-hockeynut.com\",\"issmarterthanyou.com\",\"isteingeek.de\",\"istmein.de\",\"kicks-ass.net\",\"kicks-ass.org\",\"knowsitall.info\",\"land-4-sale.us\",\"lebtimnetz.de\",\"leitungsen.de\",\"likes-pie.com\",\"likescandy.com\",\"merseine.nu\",\"mine.nu\",\"misconfused.org\",\"mypets.ws\",\"myphotos.cc\",\"neat-url.com\",\"office-on-the.net\",\"on-the-web.tv\",\"podzone.net\",\"podzone.org\",\"readmyblog.org\",\"saves-the-whales.com\",\"scrapper-site.net\",\"scrapping.cc\",\"selfip.biz\",\"selfip.com\",\"selfip.info\",\"selfip.net\",\"selfip.org\",\"sells-for-less.com\",\"sells-for-u.com\",\"sells-it.net\",\"sellsyourhome.org\",\"servebbs.com\",\"servebbs.net\",\"servebbs.org\",\"serveftp.net\",\"serveftp.org\",\"servegame.org\",\"shacknet.nu\",\"simple-url.com\",\"space-to-rent.com\",\"stuff-4-sale.org\",\"stuff-4-sale.us\",\"teaches-yoga.com\",\"thruhere.net\",\"traeumtgerade.de\",\"webhop.biz\",\"webhop.info\",\"webhop.net\",\"webhop.org\",\"worse-than.tv\",\"writesthisblog.com\",\"ddnss.de\",\"dyn.ddnss.de\",\"dyndns.ddnss.de\",\"dyndns1.de\",\"dyn-ip24.de\",\"home-webserver.de\",\"dyn.home-webserver.de\",\"myhome-server.de\",\"ddnss.org\",\"definima.net\",\"definima.io\",\"bci.dnstrace.pro\",\"ddnsfree.com\",\"ddnsgeek.com\",\"giize.com\",\"gleeze.com\",\"kozow.com\",\"loseyourip.com\",\"ooguy.com\",\"theworkpc.com\",\"casacam.net\",\"dynu.net\",\"accesscam.org\",\"camdvr.org\",\"freeddns.org\",\"mywire.org\",\"webredirect.org\",\"myddns.rocks\",\"blogsite.xyz\",\"dynv6.net\",\"e4.cz\",\"en-root.fr\",\"mytuleap.com\",\"onred.one\",\"staging.onred.one\",\"enonic.io\",\"customer.enonic.io\",\"eu.org\",\"al.eu.org\",\"asso.eu.org\",\"at.eu.org\",\"au.eu.org\",\"be.eu.org\",\"bg.eu.org\",\"ca.eu.org\",\"cd.eu.org\",\"ch.eu.org\",\"cn.eu.org\",\"cy.eu.org\",\"cz.eu.org\",\"de.eu.org\",\"dk.eu.org\",\"edu.eu.org\",\"ee.eu.org\",\"es.eu.org\",\"fi.eu.org\",\"fr.eu.org\",\"gr.eu.org\",\"hr.eu.org\",\"hu.eu.org\",\"ie.eu.org\",\"il.eu.org\",\"in.eu.org\",\"int.eu.org\",\"is.eu.org\",\"it.eu.org\",\"jp.eu.org\",\"kr.eu.org\",\"lt.eu.org\",\"lu.eu.org\",\"lv.eu.org\",\"mc.eu.org\",\"me.eu.org\",\"mk.eu.org\",\"mt.eu.org\",\"my.eu.org\",\"net.eu.org\",\"ng.eu.org\",\"nl.eu.org\",\"no.eu.org\",\"nz.eu.org\",\"paris.eu.org\",\"pl.eu.org\",\"pt.eu.org\",\"q-a.eu.org\",\"ro.eu.org\",\"ru.eu.org\",\"se.eu.org\",\"si.eu.org\",\"sk.eu.org\",\"tr.eu.org\",\"uk.eu.org\",\"us.eu.org\",\"eu-1.evennode.com\",\"eu-2.evennode.com\",\"eu-3.evennode.com\",\"eu-4.evennode.com\",\"us-1.evennode.com\",\"us-2.evennode.com\",\"us-3.evennode.com\",\"us-4.evennode.com\",\"twmail.cc\",\"twmail.net\",\"twmail.org\",\"mymailer.com.tw\",\"url.tw\",\"apps.fbsbx.com\",\"ru.net\",\"adygeya.ru\",\"bashkiria.ru\",\"bir.ru\",\"cbg.ru\",\"com.ru\",\"dagestan.ru\",\"grozny.ru\",\"kalmykia.ru\",\"kustanai.ru\",\"marine.ru\",\"mordovia.ru\",\"msk.ru\",\"mytis.ru\",\"nalchik.ru\",\"nov.ru\",\"pyatigorsk.ru\",\"spb.ru\",\"vladikavkaz.ru\",\"vladimir.ru\",\"abkhazia.su\",\"adygeya.su\",\"aktyubinsk.su\",\"arkhangelsk.su\",\"armenia.su\",\"ashgabad.su\",\"azerbaijan.su\",\"balashov.su\",\"bashkiria.su\",\"bryansk.su\",\"bukhara.su\",\"chimkent.su\",\"dagestan.su\",\"east-kazakhstan.su\",\"exnet.su\",\"georgia.su\",\"grozny.su\",\"ivanovo.su\",\"jambyl.su\",\"kalmykia.su\",\"kaluga.su\",\"karacol.su\",\"karaganda.su\",\"karelia.su\",\"khakassia.su\",\"krasnodar.su\",\"kurgan.su\",\"kustanai.su\",\"lenug.su\",\"mangyshlak.su\",\"mordovia.su\",\"msk.su\",\"murmansk.su\",\"nalchik.su\",\"navoi.su\",\"north-kazakhstan.su\",\"nov.su\",\"obninsk.su\",\"penza.su\",\"pokrovsk.su\",\"sochi.su\",\"spb.su\",\"tashkent.su\",\"termez.su\",\"togliatti.su\",\"troitsk.su\",\"tselinograd.su\",\"tula.su\",\"tuva.su\",\"vladikavkaz.su\",\"vladimir.su\",\"vologda.su\",\"channelsdvr.net\",\"u.channelsdvr.net\",\"fastly-terrarium.com\",\"fastlylb.net\",\"map.fastlylb.net\",\"freetls.fastly.net\",\"map.fastly.net\",\"a.prod.fastly.net\",\"global.prod.fastly.net\",\"a.ssl.fastly.net\",\"b.ssl.fastly.net\",\"global.ssl.fastly.net\",\"fastpanel.direct\",\"fastvps-server.com\",\"fhapp.xyz\",\"fedorainfracloud.org\",\"fedorapeople.org\",\"cloud.fedoraproject.org\",\"app.os.fedoraproject.org\",\"app.os.stg.fedoraproject.org\",\"mydobiss.com\",\"filegear.me\",\"filegear-au.me\",\"filegear-de.me\",\"filegear-gb.me\",\"filegear-ie.me\",\"filegear-jp.me\",\"filegear-sg.me\",\"firebaseapp.com\",\"flynnhub.com\",\"flynnhosting.net\",\"0e.vc\",\"freebox-os.com\",\"freeboxos.com\",\"fbx-os.fr\",\"fbxos.fr\",\"freebox-os.fr\",\"freeboxos.fr\",\"freedesktop.org\",\"*.futurecms.at\",\"*.ex.futurecms.at\",\"*.in.futurecms.at\",\"futurehosting.at\",\"futuremailing.at\",\"*.ex.ortsinfo.at\",\"*.kunden.ortsinfo.at\",\"*.statics.cloud\",\"service.gov.uk\",\"gehirn.ne.jp\",\"usercontent.jp\",\"gentapps.com\",\"lab.ms\",\"github.io\",\"githubusercontent.com\",\"gitlab.io\",\"glitch.me\",\"lolipop.io\",\"cloudapps.digital\",\"london.cloudapps.digital\",\"homeoffice.gov.uk\",\"ro.im\",\"shop.ro\",\"goip.de\",\"run.app\",\"a.run.app\",\"web.app\",\"*.0emm.com\",\"appspot.com\",\"*.r.appspot.com\",\"blogspot.ae\",\"blogspot.al\",\"blogspot.am\",\"blogspot.ba\",\"blogspot.be\",\"blogspot.bg\",\"blogspot.bj\",\"blogspot.ca\",\"blogspot.cf\",\"blogspot.ch\",\"blogspot.cl\",\"blogspot.co.at\",\"blogspot.co.id\",\"blogspot.co.il\",\"blogspot.co.ke\",\"blogspot.co.nz\",\"blogspot.co.uk\",\"blogspot.co.za\",\"blogspot.com\",\"blogspot.com.ar\",\"blogspot.com.au\",\"blogspot.com.br\",\"blogspot.com.by\",\"blogspot.com.co\",\"blogspot.com.cy\",\"blogspot.com.ee\",\"blogspot.com.eg\",\"blogspot.com.es\",\"blogspot.com.mt\",\"blogspot.com.ng\",\"blogspot.com.tr\",\"blogspot.com.uy\",\"blogspot.cv\",\"blogspot.cz\",\"blogspot.de\",\"blogspot.dk\",\"blogspot.fi\",\"blogspot.fr\",\"blogspot.gr\",\"blogspot.hk\",\"blogspot.hr\",\"blogspot.hu\",\"blogspot.ie\",\"blogspot.in\",\"blogspot.is\",\"blogspot.it\",\"blogspot.jp\",\"blogspot.kr\",\"blogspot.li\",\"blogspot.lt\",\"blogspot.lu\",\"blogspot.md\",\"blogspot.mk\",\"blogspot.mr\",\"blogspot.mx\",\"blogspot.my\",\"blogspot.nl\",\"blogspot.no\",\"blogspot.pe\",\"blogspot.pt\",\"blogspot.qa\",\"blogspot.re\",\"blogspot.ro\",\"blogspot.rs\",\"blogspot.ru\",\"blogspot.se\",\"blogspot.sg\",\"blogspot.si\",\"blogspot.sk\",\"blogspot.sn\",\"blogspot.td\",\"blogspot.tw\",\"blogspot.ug\",\"blogspot.vn\",\"cloudfunctions.net\",\"cloud.goog\",\"codespot.com\",\"googleapis.com\",\"googlecode.com\",\"pagespeedmobilizer.com\",\"publishproxy.com\",\"withgoogle.com\",\"withyoutube.com\",\"awsmppl.com\",\"fin.ci\",\"free.hr\",\"caa.li\",\"ua.rs\",\"conf.se\",\"hs.zone\",\"hs.run\",\"hashbang.sh\",\"hasura.app\",\"hasura-app.io\",\"hepforge.org\",\"herokuapp.com\",\"herokussl.com\",\"myravendb.com\",\"ravendb.community\",\"ravendb.me\",\"development.run\",\"ravendb.run\",\"bpl.biz\",\"orx.biz\",\"ng.city\",\"biz.gl\",\"ng.ink\",\"col.ng\",\"firm.ng\",\"gen.ng\",\"ltd.ng\",\"ngo.ng\",\"ng.school\",\"sch.so\",\"häkkinen.fi\",\"*.moonscale.io\",\"moonscale.net\",\"iki.fi\",\"dyn-berlin.de\",\"in-berlin.de\",\"in-brb.de\",\"in-butter.de\",\"in-dsl.de\",\"in-dsl.net\",\"in-dsl.org\",\"in-vpn.de\",\"in-vpn.net\",\"in-vpn.org\",\"biz.at\",\"info.at\",\"info.cx\",\"ac.leg.br\",\"al.leg.br\",\"am.leg.br\",\"ap.leg.br\",\"ba.leg.br\",\"ce.leg.br\",\"df.leg.br\",\"es.leg.br\",\"go.leg.br\",\"ma.leg.br\",\"mg.leg.br\",\"ms.leg.br\",\"mt.leg.br\",\"pa.leg.br\",\"pb.leg.br\",\"pe.leg.br\",\"pi.leg.br\",\"pr.leg.br\",\"rj.leg.br\",\"rn.leg.br\",\"ro.leg.br\",\"rr.leg.br\",\"rs.leg.br\",\"sc.leg.br\",\"se.leg.br\",\"sp.leg.br\",\"to.leg.br\",\"pixolino.com\",\"ipifony.net\",\"mein-iserv.de\",\"test-iserv.de\",\"iserv.dev\",\"iobb.net\",\"myjino.ru\",\"*.hosting.myjino.ru\",\"*.landing.myjino.ru\",\"*.spectrum.myjino.ru\",\"*.vps.myjino.ru\",\"*.triton.zone\",\"*.cns.joyent.com\",\"js.org\",\"kaas.gg\",\"khplay.nl\",\"keymachine.de\",\"kinghost.net\",\"uni5.net\",\"knightpoint.systems\",\"oya.to\",\"co.krd\",\"edu.krd\",\"git-repos.de\",\"lcube-server.de\",\"svn-repos.de\",\"leadpages.co\",\"lpages.co\",\"lpusercontent.com\",\"lelux.site\",\"co.business\",\"co.education\",\"co.events\",\"co.financial\",\"co.network\",\"co.place\",\"co.technology\",\"app.lmpm.com\",\"linkitools.space\",\"linkyard.cloud\",\"linkyard-cloud.ch\",\"members.linode.com\",\"nodebalancer.linode.com\",\"we.bs\",\"loginline.app\",\"loginline.dev\",\"loginline.io\",\"loginline.services\",\"loginline.site\",\"krasnik.pl\",\"leczna.pl\",\"lubartow.pl\",\"lublin.pl\",\"poniatowa.pl\",\"swidnik.pl\",\"uklugs.org\",\"glug.org.uk\",\"lug.org.uk\",\"lugs.org.uk\",\"barsy.bg\",\"barsy.co.uk\",\"barsyonline.co.uk\",\"barsycenter.com\",\"barsyonline.com\",\"barsy.club\",\"barsy.de\",\"barsy.eu\",\"barsy.in\",\"barsy.info\",\"barsy.io\",\"barsy.me\",\"barsy.menu\",\"barsy.mobi\",\"barsy.net\",\"barsy.online\",\"barsy.org\",\"barsy.pro\",\"barsy.pub\",\"barsy.shop\",\"barsy.site\",\"barsy.support\",\"barsy.uk\",\"*.magentosite.cloud\",\"mayfirst.info\",\"mayfirst.org\",\"hb.cldmail.ru\",\"miniserver.com\",\"memset.net\",\"cloud.metacentrum.cz\",\"custom.metacentrum.cz\",\"flt.cloud.muni.cz\",\"usr.cloud.muni.cz\",\"meteorapp.com\",\"eu.meteorapp.com\",\"co.pl\",\"azurecontainer.io\",\"azurewebsites.net\",\"azure-mobile.net\",\"cloudapp.net\",\"mozilla-iot.org\",\"bmoattachments.org\",\"net.ru\",\"org.ru\",\"pp.ru\",\"ui.nabu.casa\",\"pony.club\",\"of.fashion\",\"on.fashion\",\"of.football\",\"in.london\",\"of.london\",\"for.men\",\"and.mom\",\"for.mom\",\"for.one\",\"for.sale\",\"of.work\",\"to.work\",\"nctu.me\",\"bitballoon.com\",\"netlify.com\",\"4u.com\",\"ngrok.io\",\"nh-serv.co.uk\",\"nfshost.com\",\"dnsking.ch\",\"mypi.co\",\"n4t.co\",\"001www.com\",\"ddnslive.com\",\"myiphost.com\",\"forumz.info\",\"16-b.it\",\"32-b.it\",\"64-b.it\",\"soundcast.me\",\"tcp4.me\",\"dnsup.net\",\"hicam.net\",\"now-dns.net\",\"ownip.net\",\"vpndns.net\",\"dynserv.org\",\"now-dns.org\",\"x443.pw\",\"now-dns.top\",\"ntdll.top\",\"freeddns.us\",\"crafting.xyz\",\"zapto.xyz\",\"nsupdate.info\",\"nerdpol.ovh\",\"blogsyte.com\",\"brasilia.me\",\"cable-modem.org\",\"ciscofreak.com\",\"collegefan.org\",\"couchpotatofries.org\",\"damnserver.com\",\"ddns.me\",\"ditchyourip.com\",\"dnsfor.me\",\"dnsiskinky.com\",\"dvrcam.info\",\"dynns.com\",\"eating-organic.net\",\"fantasyleague.cc\",\"geekgalaxy.com\",\"golffan.us\",\"health-carereform.com\",\"homesecuritymac.com\",\"homesecuritypc.com\",\"hopto.me\",\"ilovecollege.info\",\"loginto.me\",\"mlbfan.org\",\"mmafan.biz\",\"myactivedirectory.com\",\"mydissent.net\",\"myeffect.net\",\"mymediapc.net\",\"mypsx.net\",\"mysecuritycamera.com\",\"mysecuritycamera.net\",\"mysecuritycamera.org\",\"net-freaks.com\",\"nflfan.org\",\"nhlfan.net\",\"no-ip.ca\",\"no-ip.co.uk\",\"no-ip.net\",\"noip.us\",\"onthewifi.com\",\"pgafan.net\",\"point2this.com\",\"pointto.us\",\"privatizehealthinsurance.net\",\"quicksytes.com\",\"read-books.org\",\"securitytactics.com\",\"serveexchange.com\",\"servehumour.com\",\"servep2p.com\",\"servesarcasm.com\",\"stufftoread.com\",\"ufcfan.org\",\"unusualperson.com\",\"workisboring.com\",\"3utilities.com\",\"bounceme.net\",\"ddns.net\",\"ddnsking.com\",\"gotdns.ch\",\"hopto.org\",\"myftp.biz\",\"myftp.org\",\"myvnc.com\",\"no-ip.biz\",\"no-ip.info\",\"no-ip.org\",\"noip.me\",\"redirectme.net\",\"servebeer.com\",\"serveblog.net\",\"servecounterstrike.com\",\"serveftp.com\",\"servegame.com\",\"servehalflife.com\",\"servehttp.com\",\"serveirc.com\",\"serveminecraft.net\",\"servemp3.com\",\"servepics.com\",\"servequake.com\",\"sytes.net\",\"webhop.me\",\"zapto.org\",\"stage.nodeart.io\",\"nodum.co\",\"nodum.io\",\"pcloud.host\",\"nyc.mn\",\"nom.ae\",\"nom.af\",\"nom.ai\",\"nom.al\",\"nym.by\",\"nom.bz\",\"nym.bz\",\"nom.cl\",\"nym.ec\",\"nom.gd\",\"nom.ge\",\"nom.gl\",\"nym.gr\",\"nom.gt\",\"nym.gy\",\"nym.hk\",\"nom.hn\",\"nym.ie\",\"nom.im\",\"nom.ke\",\"nym.kz\",\"nym.la\",\"nym.lc\",\"nom.li\",\"nym.li\",\"nym.lt\",\"nym.lu\",\"nom.lv\",\"nym.me\",\"nom.mk\",\"nym.mn\",\"nym.mx\",\"nom.nu\",\"nym.nz\",\"nym.pe\",\"nym.pt\",\"nom.pw\",\"nom.qa\",\"nym.ro\",\"nom.rs\",\"nom.si\",\"nym.sk\",\"nom.st\",\"nym.su\",\"nym.sx\",\"nom.tj\",\"nym.tw\",\"nom.ug\",\"nom.uy\",\"nom.vc\",\"nom.vg\",\"static.observableusercontent.com\",\"cya.gg\",\"cloudycluster.net\",\"nid.io\",\"opencraft.hosting\",\"operaunite.com\",\"skygearapp.com\",\"outsystemscloud.com\",\"ownprovider.com\",\"own.pm\",\"ox.rs\",\"oy.lc\",\"pgfog.com\",\"pagefrontapp.com\",\"art.pl\",\"gliwice.pl\",\"krakow.pl\",\"poznan.pl\",\"wroc.pl\",\"zakopane.pl\",\"pantheonsite.io\",\"gotpantheon.com\",\"mypep.link\",\"perspecta.cloud\",\"on-web.fr\",\"*.platform.sh\",\"*.platformsh.site\",\"dyn53.io\",\"co.bn\",\"xen.prgmr.com\",\"priv.at\",\"prvcy.page\",\"*.dweb.link\",\"protonet.io\",\"chirurgiens-dentistes-en-france.fr\",\"byen.site\",\"pubtls.org\",\"qualifioapp.com\",\"qbuser.com\",\"instantcloud.cn\",\"ras.ru\",\"qa2.com\",\"qcx.io\",\"*.sys.qcx.io\",\"dev-myqnapcloud.com\",\"alpha-myqnapcloud.com\",\"myqnapcloud.com\",\"*.quipelements.com\",\"vapor.cloud\",\"vaporcloud.io\",\"rackmaze.com\",\"rackmaze.net\",\"*.on-k3s.io\",\"*.on-rancher.cloud\",\"*.on-rio.io\",\"readthedocs.io\",\"rhcloud.com\",\"app.render.com\",\"onrender.com\",\"repl.co\",\"repl.run\",\"resindevice.io\",\"devices.resinstaging.io\",\"hzc.io\",\"wellbeingzone.eu\",\"ptplus.fit\",\"wellbeingzone.co.uk\",\"git-pages.rit.edu\",\"sandcats.io\",\"logoip.de\",\"logoip.com\",\"schokokeks.net\",\"gov.scot\",\"scrysec.com\",\"firewall-gateway.com\",\"firewall-gateway.de\",\"my-gateway.de\",\"my-router.de\",\"spdns.de\",\"spdns.eu\",\"firewall-gateway.net\",\"my-firewall.org\",\"myfirewall.org\",\"spdns.org\",\"senseering.net\",\"biz.ua\",\"co.ua\",\"pp.ua\",\"shiftedit.io\",\"myshopblocks.com\",\"shopitsite.com\",\"mo-siemens.io\",\"1kapp.com\",\"appchizi.com\",\"applinzi.com\",\"sinaapp.com\",\"vipsinaapp.com\",\"siteleaf.net\",\"bounty-full.com\",\"alpha.bounty-full.com\",\"beta.bounty-full.com\",\"stackhero-network.com\",\"static.land\",\"dev.static.land\",\"sites.static.land\",\"apps.lair.io\",\"*.stolos.io\",\"spacekit.io\",\"customer.speedpartner.de\",\"api.stdlib.com\",\"storj.farm\",\"utwente.io\",\"soc.srcf.net\",\"user.srcf.net\",\"temp-dns.com\",\"applicationcloud.io\",\"scapp.io\",\"*.s5y.io\",\"*.sensiosite.cloud\",\"syncloud.it\",\"diskstation.me\",\"dscloud.biz\",\"dscloud.me\",\"dscloud.mobi\",\"dsmynas.com\",\"dsmynas.net\",\"dsmynas.org\",\"familyds.com\",\"familyds.net\",\"familyds.org\",\"i234.me\",\"myds.me\",\"synology.me\",\"vpnplus.to\",\"direct.quickconnect.to\",\"taifun-dns.de\",\"gda.pl\",\"gdansk.pl\",\"gdynia.pl\",\"med.pl\",\"sopot.pl\",\"edugit.org\",\"telebit.app\",\"telebit.io\",\"*.telebit.xyz\",\"gwiddle.co.uk\",\"thingdustdata.com\",\"cust.dev.thingdust.io\",\"cust.disrec.thingdust.io\",\"cust.prod.thingdust.io\",\"cust.testing.thingdust.io\",\"arvo.network\",\"azimuth.network\",\"bloxcms.com\",\"townnews-staging.com\",\"12hp.at\",\"2ix.at\",\"4lima.at\",\"lima-city.at\",\"12hp.ch\",\"2ix.ch\",\"4lima.ch\",\"lima-city.ch\",\"trafficplex.cloud\",\"de.cool\",\"12hp.de\",\"2ix.de\",\"4lima.de\",\"lima-city.de\",\"1337.pictures\",\"clan.rip\",\"lima-city.rocks\",\"webspace.rocks\",\"lima.zone\",\"*.transurl.be\",\"*.transurl.eu\",\"*.transurl.nl\",\"tuxfamily.org\",\"dd-dns.de\",\"diskstation.eu\",\"diskstation.org\",\"dray-dns.de\",\"draydns.de\",\"dyn-vpn.de\",\"dynvpn.de\",\"mein-vigor.de\",\"my-vigor.de\",\"my-wan.de\",\"syno-ds.de\",\"synology-diskstation.de\",\"synology-ds.de\",\"uber.space\",\"*.uberspace.de\",\"hk.com\",\"hk.org\",\"ltd.hk\",\"inc.hk\",\"virtualuser.de\",\"virtual-user.de\",\"urown.cloud\",\"dnsupdate.info\",\"lib.de.us\",\"2038.io\",\"router.management\",\"v-info.info\",\"voorloper.cloud\",\"v.ua\",\"wafflecell.com\",\"*.webhare.dev\",\"wedeploy.io\",\"wedeploy.me\",\"wedeploy.sh\",\"remotewd.com\",\"wmflabs.org\",\"myforum.community\",\"community-pro.de\",\"diskussionsbereich.de\",\"community-pro.net\",\"meinforum.net\",\"half.host\",\"xnbay.com\",\"u2.xnbay.com\",\"u2-local.xnbay.com\",\"cistron.nl\",\"demon.nl\",\"xs4all.space\",\"yandexcloud.net\",\"storage.yandexcloud.net\",\"website.yandexcloud.net\",\"official.academy\",\"yolasite.com\",\"ybo.faith\",\"yombo.me\",\"homelink.one\",\"ybo.party\",\"ybo.review\",\"ybo.science\",\"ybo.trade\",\"nohost.me\",\"noho.st\",\"za.net\",\"za.org\",\"now.sh\",\"bss.design\",\"basicserver.io\",\"virtualserver.io\",\"enterprisecloud.nu\"]");

/***/ }),

/***/ 42357:
/***/ ((module) => {

"use strict";
module.exports = require("assert");;

/***/ }),

/***/ 64293:
/***/ ((module) => {

"use strict";
module.exports = require("buffer");;

/***/ }),

/***/ 63129:
/***/ ((module) => {

"use strict";
module.exports = require("child_process");;

/***/ }),

/***/ 33373:
/***/ ((module) => {

"use strict";
module.exports = require("crypto");;

/***/ }),

/***/ 76200:
/***/ ((module) => {

"use strict";
module.exports = require("dgram");;

/***/ }),

/***/ 85229:
/***/ ((module) => {

"use strict";
module.exports = require("domain");;

/***/ }),

/***/ 28614:
/***/ ((module) => {

"use strict";
module.exports = require("events");;

/***/ }),

/***/ 35747:
/***/ ((module) => {

"use strict";
module.exports = require("fs");;

/***/ }),

/***/ 98605:
/***/ ((module) => {

"use strict";
module.exports = require("http");;

/***/ }),

/***/ 57211:
/***/ ((module) => {

"use strict";
module.exports = require("https");;

/***/ }),

/***/ 11631:
/***/ ((module) => {

"use strict";
module.exports = require("net");;

/***/ }),

/***/ 12087:
/***/ ((module) => {

"use strict";
module.exports = require("os");;

/***/ }),

/***/ 85622:
/***/ ((module) => {

"use strict";
module.exports = require("path");;

/***/ }),

/***/ 94213:
/***/ ((module) => {

"use strict";
module.exports = require("punycode");;

/***/ }),

/***/ 71191:
/***/ ((module) => {

"use strict";
module.exports = require("querystring");;

/***/ }),

/***/ 92413:
/***/ ((module) => {

"use strict";
module.exports = require("stream");;

/***/ }),

/***/ 24304:
/***/ ((module) => {

"use strict";
module.exports = require("string_decoder");;

/***/ }),

/***/ 78213:
/***/ ((module) => {

"use strict";
module.exports = require("timers");;

/***/ }),

/***/ 4016:
/***/ ((module) => {

"use strict";
module.exports = require("tls");;

/***/ }),

/***/ 78835:
/***/ ((module) => {

"use strict";
module.exports = require("url");;

/***/ }),

/***/ 31669:
/***/ ((module) => {

"use strict";
module.exports = require("util");;

/***/ }),

/***/ 92184:
/***/ ((module) => {

"use strict";
module.exports = require("vm");;

/***/ }),

/***/ 78761:
/***/ ((module) => {

"use strict";
module.exports = require("zlib");;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		if(__webpack_module_cache__[moduleId]) {
/******/ 			return __webpack_module_cache__[moduleId].exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			id: moduleId,
/******/ 			loaded: false,
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		var threw = true;
/******/ 		try {
/******/ 			__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ 			threw = false;
/******/ 		} finally {
/******/ 			if(threw) delete __webpack_module_cache__[moduleId];
/******/ 		}
/******/ 	
/******/ 		// Flag the module as loaded
/******/ 		module.loaded = true;
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop)
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/node module decorator */
/******/ 	(() => {
/******/ 		__webpack_require__.nmd = (module) => {
/******/ 			module.paths = [];
/******/ 			if (!module.children) module.children = [];
/******/ 			return module;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/compat */
/******/ 	
/******/ 	__webpack_require__.ab = __dirname + "/";/************************************************************************/
/******/ 	// module exports must be returned from runtime so entry inlining is disabled
/******/ 	// startup
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(94822);
/******/ })()
;
//# sourceMappingURL=index.js.map